亚洲免费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久久激情亚洲精品| 亚洲熟妇中文字幕日产无码| 国产一区二区熟女精品免费| 吃奶摸下高潮60分钟免费视频| 亚洲人成色777777老人头| 亚洲精品日韩自慰喷水白浆| 久久这里只精品国产2| 蜜桃人妻午夜精品一区二区三区| 国产一区二区av在线免费观看| 免费的日本一区二区三区视频 | 国精品无码一区二区三区在线蜜臀| 国产偷v国产偷v亚洲偷v| 蜜臀aⅴ永久无码一区二区| 国产91极品身材白皙| 后入到高潮免费观看| 四虎国产精品永久在线无码| 国产精品一区二区三区不卡| 日韩一级黄色片一区二区三区| 色欲av蜜桃一区二区三| 五月婷婷六月激情| 一区二区三区人妻在线| 日本真人添下面视频免费| 中文字幕人妻少妇引诱隔壁| ā片在线观看| 天堂av无码大芭蕉伊人av孕妇黑人| 一区二区视频在线国产| 久久久久久国产精品免费免费| 亚洲一区二区在线| 日本一区二区啪啪视频 | 国产在线一91区免费国产91| 日韩精品极品在线观看视频| 中文字日产幕码三区的做法大全| 啪啪无码人妻丰满熟妇| 国产亚洲欧美日韩综合一区在线观看|