亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Linux的HGU設(shè)備接入公網(wǎng)用戶數(shù)量限制的內(nèi)核實(shí)現(xiàn)新方法

        2019-04-01 15:06:00彭求明
        科技創(chuàng)新導(dǎo)報(bào) 2019年28期

        彭求明

        摘? ?要:HGU用戶側(cè)接口(LAN、WLAN)可以連接很多用戶終端,并在同一時(shí)間接入公網(wǎng),出于安全管理和上網(wǎng)質(zhì)量的考慮,在國(guó)內(nèi)三大運(yùn)營(yíng)商電信、移動(dòng)、聯(lián)通技術(shù)規(guī)范中,均有對(duì)接入公網(wǎng)用戶數(shù)量限制功能的需求,本文分析了現(xiàn)有的實(shí)現(xiàn)方法,研究了Linux內(nèi)核Netfilter網(wǎng)絡(luò)層的實(shí)現(xiàn)機(jī)制,通過(guò)在Netfilter的NF_IP_FORWARD Hook點(diǎn)注冊(cè)鉤子處理函數(shù),在內(nèi)核態(tài)實(shí)現(xiàn)了一種接入公網(wǎng)用戶數(shù)量限制的新方法。

        關(guān)鍵詞:HGU/家庭網(wǎng)關(guān)? Netfilter? Hook點(diǎn)? 接入公網(wǎng)用戶數(shù)量限制? Linux內(nèi)核

        中圖分類號(hào):TP31? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A? ? ? ? ? ? ? ? ? ? ? ? 文章編號(hào):1674-098X(2019)10(a)-0147-02

        1? HGU應(yīng)用場(chǎng)景

        HGU(Home Gateway Unit家庭網(wǎng)關(guān)單元)是連接家庭網(wǎng)絡(luò)和Internet的網(wǎng)關(guān)單元,可通過(guò)各種網(wǎng)絡(luò)側(cè)接口(PON接入、xDSL接入、以太網(wǎng)接入等)與接入網(wǎng)/接入點(diǎn)相連最終連到Internet,并通過(guò)用戶側(cè)接口(LAN、WLAN)與各種用戶終端相連,用戶終端通常有個(gè)人計(jì)算機(jī)PC、筆記本、手機(jī)、平板電腦、機(jī)頂盒等,基本都是通過(guò)路由模式接入Internet,機(jī)頂盒會(huì)用到橋接模式,固定配置一個(gè)LAN口為橋接模式,其他LAN口和WLAN連接的各種用戶終端都是通過(guò)路由模式訪問(wèn)Internet上網(wǎng)。出于安全管理和上網(wǎng)質(zhì)量的考慮,在國(guó)內(nèi)三大運(yùn)營(yíng)商電信、移動(dòng)、聯(lián)通規(guī)范中,均有對(duì)用戶上網(wǎng)數(shù)量限制的功能:路由模式下,HGU/家庭網(wǎng)關(guān)應(yīng)支持對(duì)同一時(shí)間接入公網(wǎng)用戶數(shù)量進(jìn)行限制,配置接入公網(wǎng)最大用戶數(shù)為N時(shí),第N+1個(gè)用戶開(kāi)始無(wú)法正常上網(wǎng)。

        2? 接入公網(wǎng)用戶數(shù)量限制的現(xiàn)有實(shí)現(xiàn)方法

        接入公網(wǎng)用戶數(shù)量限制,目前的實(shí)現(xiàn)方法是:在HGU上開(kāi)啟DHCP Server功能,用戶側(cè)終端通過(guò)DHCP自動(dòng)獲取IP地址,配置DHCP Server對(duì)分配IP地址數(shù)量限制,來(lái)實(shí)現(xiàn)用戶上網(wǎng)數(shù)量限制功能,但如果對(duì)用戶終端配置了靜態(tài)IP地址,就無(wú)法限制。

        本文研究了Linux內(nèi)核Netfilter網(wǎng)絡(luò)層的實(shí)現(xiàn)機(jī)制,通過(guò)在Netfilter的NF_IP_FORWARD Hook點(diǎn)注冊(cè)鉤子處理函數(shù),在內(nèi)核態(tài)實(shí)現(xiàn)了一種接入公網(wǎng)用戶數(shù)量限制的新方法,用戶側(cè)終端不管是通過(guò)DHCP自動(dòng)獲取IP地址,還是配置靜態(tài)IP地址,都能進(jìn)行接入公網(wǎng)用戶數(shù)量的限制。

        3? 在內(nèi)核態(tài)實(shí)現(xiàn)接入公網(wǎng)用戶數(shù)量限制

        3.1 用戶數(shù)量限制在Netfilter中Hook點(diǎn)選擇

        Netfilter是Linux 2.4.x引入的一個(gè)子系統(tǒng),它作為一個(gè)通用的、抽象的框架,提供一整套的hook函數(shù)的管理機(jī)制,使得諸如數(shù)據(jù)包過(guò)濾、網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)和基于協(xié)議類型的連接跟蹤成為了可能。Netfilter架構(gòu)就是在整個(gè)網(wǎng)絡(luò)流程的若干位置放置了一些檢測(cè)點(diǎn)(Hook),而在每個(gè)檢測(cè)點(diǎn)上登記了一些處理函數(shù)進(jìn)行處理。網(wǎng)絡(luò)層(IP)五個(gè)Hook點(diǎn)的位置如圖1所示。

        NP_IP_PRE_ROUTING:剛剛進(jìn)入網(wǎng)絡(luò)層的數(shù)據(jù)包通過(guò)此點(diǎn)(剛剛進(jìn)行完版本號(hào),校驗(yàn)和等檢測(cè)),目的地址轉(zhuǎn)換在此點(diǎn)進(jìn)行;

        NF_IP_LOCAL_IN:經(jīng)路由查找后,送往本機(jī)的通過(guò)此檢查點(diǎn),INPUT包過(guò)濾在此點(diǎn)進(jìn)行;NF_IP_FORWARD:要轉(zhuǎn)發(fā)的包通過(guò)此檢測(cè)點(diǎn),F(xiàn)ORWARD包過(guò)濾在此點(diǎn)進(jìn)行;

        NF_IP_LOCAL_OUT:本機(jī)進(jìn)程發(fā)出的包通過(guò)此檢測(cè)點(diǎn),OUTPUT包過(guò)濾在此點(diǎn)進(jìn)行;

        NF_IP_POST_ROUTING:所有馬上便要通過(guò)網(wǎng)絡(luò)設(shè)備出去的包通過(guò)此檢測(cè)點(diǎn),內(nèi)置的源地址轉(zhuǎn)換功能(包括地址偽裝)在此點(diǎn)進(jìn)行。

        HGU下掛的各種用戶終端上網(wǎng)時(shí),HGU收到的每個(gè)數(shù)據(jù)包,首先都是進(jìn)入第一個(gè)Hook點(diǎn)NP_IP_PRE_ROUTING進(jìn)行處理;然后經(jīng)過(guò)路由判決,決定該數(shù)據(jù)包是需要轉(zhuǎn)發(fā)還是發(fā)給本機(jī),用戶終端上網(wǎng)的數(shù)據(jù)包的目的地不是本機(jī),需要轉(zhuǎn)發(fā),進(jìn)入Hook點(diǎn)NF_IP_FORWARD處理,經(jīng)過(guò)轉(zhuǎn)發(fā)的數(shù)據(jù)包經(jīng)過(guò)最后一個(gè)Hook點(diǎn)NF_IP_POST_ROUTING處理以后,再傳輸?shù)骄W(wǎng)絡(luò)上,之后進(jìn)入Internet。因此用戶終端上網(wǎng)的數(shù)據(jù)包肯定會(huì)進(jìn)入Hook點(diǎn)NF_IP_FORWARD處理,所以選擇在此Hook點(diǎn)注冊(cè)用戶數(shù)量限制鉤子處理函數(shù)。

        3.2 接入公網(wǎng)用戶數(shù)量限制的內(nèi)核實(shí)現(xiàn)

        接入公網(wǎng)用戶數(shù)量限制內(nèi)核實(shí)現(xiàn)是以u(píng)ser_num_limit.ko形式提供,分為兩個(gè)子模塊:初始化模塊、用戶數(shù)量限制實(shí)現(xiàn)模塊。

        (1)初始化模塊:用戶數(shù)量限制內(nèi)核組件user_num_limit.ko初始化,是向Netfilter在網(wǎng)絡(luò)層的NF_IP_FORWARD點(diǎn)注冊(cè)用戶數(shù)量限制的鉤子處理函數(shù),分兩步,首先定義一個(gè)struct nf_hook_ops結(jié)構(gòu)體變量user_num_limit,并且對(duì)每個(gè)成員進(jìn)行賦值:

        首先判斷輸入?yún)?shù),如果skb或skb->mac_header或輸入設(shè)備指針或輸出設(shè)備指針任一為NULL,就接受此報(bào)文,不做用戶數(shù)限制,繼續(xù)向下處理;判斷輸入網(wǎng)絡(luò)設(shè)備和輸出網(wǎng)絡(luò)設(shè)備名的首字母,輸入設(shè)備名的首字母必須為'b',表示輸入設(shè)備名是brxxx,輸出設(shè)備名的首字母可以為'p'或'w',表示輸出設(shè)備名是pon.xxx或wan.xxxx,這些都要進(jìn)行用戶數(shù)限制處理,其他情況都接受允許繼續(xù)向下處理,不做用戶數(shù)限制。

        然后是用戶數(shù)限制處理,整個(gè)處理過(guò)程要加軟中斷自旋鎖保護(hù),因?yàn)椴僮髁巳肿兞坑脩翩湵?、最大用戶?shù)、當(dāng)前用戶數(shù)、用戶超時(shí)時(shí)間。遍歷用戶鏈表中每一個(gè)用戶節(jié)點(diǎn),分三種情況:用戶鏈表中的用戶mac地址與此報(bào)文中mac地址一樣、用戶鏈表中的mac地址與此報(bào)文中的mac地址不一樣、用戶鏈表遍歷完后還找不到此報(bào)文的mac地址。如果用戶鏈表中的用戶mac地址與此報(bào)文中mac地址一樣,就更新此用戶的接入時(shí)間為當(dāng)前jiffies,break跳出遍歷,接受此報(bào)文,該用戶就能上網(wǎng);如果用戶鏈表中的mac地址與此報(bào)文中的mac地址不一樣,就判斷超時(shí)時(shí)間是否已到,如果已經(jīng)超時(shí)了,就從用戶鏈表中把此用戶刪掉,并把當(dāng)前用戶數(shù)減1,如果還沒(méi)超時(shí),就不做處理,都是繼續(xù)遍歷;如果用戶鏈表遍歷完后還找不到此報(bào)文的mac地址,先判斷當(dāng)前用戶數(shù)是否小于最大用戶數(shù),如果是,就把此新用戶節(jié)點(diǎn)添加到用戶鏈表中,并把當(dāng)前用戶數(shù)加1,用戶節(jié)點(diǎn)信息包括mac地址和接入時(shí)間,并接受此報(bào)文,該用戶就能上網(wǎng),此情況也包括了最開(kāi)始用戶鏈表為空;如果當(dāng)前用戶數(shù)大于或等于最大用戶數(shù)就丟棄此報(bào)文,該用戶就不能上網(wǎng)。

        4? 結(jié)語(yǔ)

        本文提出的接入公網(wǎng)用戶數(shù)量限制實(shí)現(xiàn)的新方法,與現(xiàn)有方法相比,用戶側(cè)終端不管是通過(guò)DHCP自動(dòng)獲取IP地址,還是配置靜態(tài)IP地址,都能進(jìn)行用戶上網(wǎng)數(shù)量的限制,而且本方法都是在Linux內(nèi)核態(tài)運(yùn)行,所以執(zhí)行效率高。

        參考文獻(xiàn)

        [1] 楊曉勇,于曉翠.IP家庭網(wǎng)關(guān)作為智能家居服務(wù)的通用多用途啟動(dòng)器[J]. 機(jī)電工程技術(shù),2019(4):33-36.

        [2] 陳偉豪,代康.基于家庭網(wǎng)關(guān)構(gòu)建物聯(lián)網(wǎng)家庭應(yīng)用系統(tǒng)的研究[J].產(chǎn)業(yè)與科技論壇,2019(5):73-74.

        [3] 余飛,楊波.Linux下基于Netfilter/Iptables防火墻的研究與應(yīng)用[J]. 齊齊哈爾大學(xué)學(xué)報(bào):自然科學(xué)版,2015(3):53-58.

        [4] 王繼魁. 基于Linux的netfilter/iptables防火墻的實(shí)現(xiàn)[J].通化師范學(xué)院學(xué)報(bào),2010(2):55-56.

        久久精品国产亚洲av豆腐| 久青草久青草视频在线观看| 国产日产高清欧美一区| japanese色国产在线看视频| 看国产亚洲美女黄色一级片 | 在线观看视频免费播放| 精品亚洲成a人无码成a在线观看| 国产亚洲av手机在线观看| 高清国产亚洲va精品| 精品少妇一区二区三区入口| 精品国品一二三产品区别在线观看| 亚洲av无码片在线观看| 97久久综合区小说区图片专区| 开心五月激情五月天天五月五月天| 国产中文三级全黄| 醉酒后少妇被疯狂内射视频 | 欧美日韩国产在线成人网| 久久国产精品亚洲我射av大全| 欧美伦费免费全部午夜最新| 熟妇人妻av无码一区二区三区| 久久久久久岛国免费网站| 亚洲精品中文字幕乱码| 成人免费无遮挡在线播放| 亚洲一区中文字幕在线电影网| 亚洲一区二区观看网站| 成人国产精品一区二区八戒网| 丰满人妻熟妇乱又伦精品软件 | 色老汉亚洲av影院天天精品| 国产流白浆视频在线观看| 97精品一区二区视频在线观看| 97色噜噜| 中文字幕亚洲中文第一| 亚洲精品一区二区国产精华液| 久久人人爽人人爽人人av东京热| 亚洲一区不卡在线导航| 久久精品国产亚洲av性瑜伽| 国精产品推荐视频| 超碰日韩AV在线| 亚洲av网一区二区三区成人| 乱中年女人伦av三区| 国产黄色片在线观看|