• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于DSCP值的多SSID流分類設(shè)計(jì)

      2015-01-16 05:26:58陶智勇
      電子設(shè)計(jì)工程 2015年11期
      關(guān)鍵詞:應(yīng)用層字段路由器

      蔡 超,陶智勇

      (1.武漢郵電科學(xué)研究院 湖北 武漢 430074;2.光纖通信技術(shù)和網(wǎng)絡(luò)國家重點(diǎn)實(shí)驗(yàn)室 湖北 武漢 430074)

      QoS(服務(wù)質(zhì)量)是保護(hù)網(wǎng)絡(luò)的一種安全機(jī)制,是用來解決網(wǎng)絡(luò)阻塞、延遲和掉包等問題的一種通用技術(shù)手段。當(dāng)網(wǎng)絡(luò)過載甚至擁塞時(shí),QoS能夠?qū)χ匾臉I(yè)務(wù)進(jìn)行保護(hù),避免延遲或者丟棄,同時(shí)保證網(wǎng)絡(luò)的健康、穩(wěn)定運(yùn)行。要實(shí)現(xiàn)QoS,首先就得對數(shù)據(jù)進(jìn)行分類,將不同的數(shù)據(jù)打上不同的標(biāo)簽,然后根據(jù)標(biāo)簽將這些數(shù)據(jù)進(jìn)行處理,根據(jù)標(biāo)簽的不同進(jìn)行隊(duì)列調(diào)度、擁塞管理、流量控制等,以達(dá)到QoS的目的[1]。報(bào)文上面的分類信息通常被網(wǎng)絡(luò)上的主機(jī)、路由器、交換機(jī)等設(shè)備賦予,可以按照不同的應(yīng)用策略或者按照報(bào)文內(nèi)容的不同為報(bào)文打上類別信息的印記。路由器、交換機(jī)或CMTS則會根據(jù)報(bào)文所攜帶的類別信息,可以對各種交通流進(jìn)行不同優(yōu)先級別的傳輸,或者對特定的交通流進(jìn)行帶寬預(yù)留,或者適當(dāng)性的放棄某些報(bào)文、或者進(jìn)行不同的路徑選擇、或者采取針對性的操作等等。

      很多路由器都能開啟多個(gè)SSID,用戶可以設(shè)置不同的SSID支持不同的業(yè)務(wù),從而避免之間的相互干擾,這就是一個(gè)QoS的例子。本文則主要介紹了一種利用IP頭部的DSCP值來區(qū)分不同SSID的流分類方法,該實(shí)驗(yàn)是在帶WiFi的Cable Modem和CMTS的環(huán)境下實(shí)現(xiàn)的,并采用MIB工具進(jìn)行測試和驗(yàn)證。

      1 DSCP值簡介

      DSCP差分服務(wù)代碼點(diǎn) (Differentiated Services Code Point),是 IETF于 1998年 12月發(fā)布了 Diff-Serv的 QoS分類標(biāo)準(zhǔn)。它在每個(gè)數(shù)據(jù)包IP頭部的服務(wù)類別TOS標(biāo)識字節(jié)中,通過TOS不同的編碼值,在遵循DiffServ體系的網(wǎng)絡(luò)中,對包含不同分類信息的報(bào)文采取不同的傳輸服務(wù)策略,以達(dá)到更好的QoS目的。在RFC2474中重新定義了IPv4的 TOS字段,但大小任然是8位,如圖1所示。

      圖1 TOS字段Fig.1 TOS field

      DSCP字段使用了前6比特,后2比特不使用,因此DSCP的值可以為0~63,可以定義64個(gè)不同的優(yōu)先級[2]。由于DSCP占據(jù)了TOS字段的高6位,而TOS字段任然是8位,所以它們的關(guān)系為TOS=DSCP<<2。TOS字段在Ipv4的數(shù)據(jù)包里默認(rèn)值都為0,在SSID的數(shù)據(jù)包中默認(rèn)值也都為0,因此可以利用DSCP值來區(qū)分不同的SSID。但本次設(shè)計(jì)并沒有利用到DSCP中不同的優(yōu)先級分類標(biāo)準(zhǔn),而是通過手動設(shè)置不同的DSCP數(shù)值,讓CMTS直接根據(jù)數(shù)值的不同區(qū)分SSID數(shù)據(jù)流。

      2 SSID的流分類設(shè)計(jì)

      2.1 多SSID

      家庭網(wǎng)關(guān)組網(wǎng)方式有多種,可以利用無線傳輸?shù)姆绞竭M(jìn)行家庭內(nèi)部的組網(wǎng),通過SSID技術(shù),一個(gè)無線局域網(wǎng)能夠分成幾個(gè)需要不同身份進(jìn)行驗(yàn)證的子網(wǎng)絡(luò),任何子網(wǎng)絡(luò)都需要獨(dú)立的、相應(yīng)的身份進(jìn)行驗(yàn)證,某些沒有被授權(quán)的用戶侵入本網(wǎng)絡(luò);采用多SSID技術(shù)的另外一個(gè)好處是可以實(shí)現(xiàn)虛擬AP功能??梢詫Σ煌腟SID分配不同的認(rèn)證方式、訪問權(quán)限或者其他驗(yàn)證,例如將局域網(wǎng)映射成為不同VLAN,達(dá)到對公共熱點(diǎn)和家庭內(nèi)部網(wǎng)絡(luò)進(jìn)行隔離的目的。本次試驗(yàn)中,已將帶wifi的Cable Modem AP虛擬為了8個(gè)SSID,且8個(gè)端口名稱為ra0到ra7。實(shí)現(xiàn)目的就是能夠在上層設(shè)置他們的DSCP值,給不同的SSID IP數(shù)據(jù)包做上不同的標(biāo)簽,達(dá)到流分類的效果。

      2.2 修改DSCP值

      要想在上層修改DSCP值,就得有一個(gè)WEB前端,本次試驗(yàn)采用了JavaScript語言寫了一個(gè)簡單窗口,使之能夠在頁面輸入DSCP值,如圖2所示。然后將輸入的DSCP值從應(yīng)用層傳入驅(qū)動層,進(jìn)行數(shù)據(jù)包的處理。

      圖2 DSCP輸入窗口Fig.2 DSCP entry window

      為了能夠在應(yīng)用層和驅(qū)動層建立一個(gè)聯(lián)系,讓修改的值傳入驅(qū)動層。于是首先建立了一個(gè)名為smc_proc_wifitos的PROC文件。應(yīng)用層要做的就是將WEB寫入的值放入內(nèi)核已經(jīng)建立的文件,在應(yīng)用層代碼中是用簡單的echo ra%d_dscp=%d>/proc/smc_proc_wifitos實(shí)現(xiàn)的。然后在驅(qū)動層里面檢測smc_proc_wifitos文件的狀態(tài),一旦有文件寫入時(shí),則說明DSCP值被應(yīng)用層修改了。此時(shí)就可以讀取存入的存在/proc/smc_proc_wifitos里面的DSCP值,可以先將其存放在一個(gè)數(shù)組內(nèi)[3]。

      在Wifi的驅(qū)動層所要做的是過濾出所有SSID的IPv4數(shù)據(jù)包,然后根據(jù) switch (skb->dev->name[3])這條語句使數(shù)組內(nèi)取到的DSCP值與不同SSID數(shù)據(jù)包對應(yīng),再用函數(shù)ipv4_change_dsfield(iph,0, tmptos)將 DSCP 值寫入 Ipv4數(shù)據(jù)包,如果取到的DSCP值為零,則不處理對應(yīng)的IPv4數(shù)據(jù)包。這樣通過wifi的每個(gè)SSID的數(shù)據(jù)包內(nèi)就攜帶了自己獨(dú)有的DSCP值[4]。部分代碼如下:

      if(skb->protocol==htons(ETH_P_IP)) //檢測 Ipv4 數(shù)據(jù)包

      {

      struct iphdr*iph=(struct iphdr*)(skb->data);

      if(iph!=NULL)

      {

      if(strlen(skb->dev->name)==4)

      {

      switch (skb ->dev ->name [3]) //將DSCP值存入對應(yīng)的接口

      {

      case'0':

      tmptos=smc_ssidtos[0];

      break;

      …………

      3 結(jié)果的驗(yàn)證

      3.1 CMTS的配置

      CMTS 是線纜調(diào)制解調(diào)器終端系統(tǒng)的英文縮寫,是一個(gè)位于有線電視網(wǎng)前端的系統(tǒng)設(shè)備。為有線電視用戶提供數(shù)據(jù)接入服務(wù)。同時(shí)可以完成對IP數(shù)據(jù)包和數(shù)據(jù)信號的調(diào)制、解調(diào)、轉(zhuǎn)換和路由功能,又被稱為是有線路由器。本實(shí)驗(yàn)則使用了CMTS的路由過濾功能,通過配置CMTS的config文件,能夠使不同DSCP的數(shù)據(jù)包在CMTS內(nèi)走不同的路徑[5]。

      使用configfileEditor工具對相應(yīng)的config文件進(jìn)行配置。首先,在原有的good.cfg上再配置兩條UsServiceFlow[24],使上行的UsServiceFlow達(dá)到三條,然后配置相應(yīng)的上行過濾范圍 UsPacketClassifier[22],使每條 UsServiceFlow[24]具有不同的TOS值范圍,進(jìn)而使每條不同的UsServiceFlow[24]根據(jù)對應(yīng)的范圍走不同的路徑。本次試驗(yàn)3條UsServiceFlow和2條DsServiceFlow,一共5條路徑,配置后的cfg文件如圖3。

      圖3 配置后的configure文件Fig.3 Configure file after configuration

      3.2 MIB的配置

      MIB是Management Information Base的英文縮寫,中文翻譯為“管理信息庫”,它也是網(wǎng)絡(luò)管理數(shù)據(jù)的一個(gè)標(biāo)準(zhǔn),該標(biāo)準(zhǔn)規(guī)定了網(wǎng)絡(luò)代理設(shè)備一定需要保存的數(shù)據(jù)類型、數(shù)據(jù)項(xiàng)目、還有每個(gè)數(shù)據(jù)項(xiàng)目中允許的操作。當(dāng)對這些數(shù)據(jù)項(xiàng)目進(jìn)行存取訪問時(shí),就可以獲取該網(wǎng)關(guān)的全部統(tǒng)計(jì)內(nèi)容。然后對多個(gè)網(wǎng)關(guān)統(tǒng)計(jì)內(nèi)容進(jìn)行綜合分析即可實(shí)現(xiàn)初步的網(wǎng)絡(luò)管理。MIB主要利用于SMNP對代理MIB中的相應(yīng)對象進(jìn)行查詢,獲取其值,實(shí)現(xiàn)對對網(wǎng)絡(luò)設(shè)備狀態(tài)的監(jiān)視[6]。本次實(shí)驗(yàn)則用MIB工具進(jìn)行檢測,首先安裝MIB工具,然后安裝qos3.mib,在找到節(jié)點(diǎn)docsQosServiceFlowPkt,對其Walk一下,如圖4所示。

      在圖中可以看到五條路徑,即我們配置的兩條DsServiceFlow和三條UsServiceFlow路徑,這5條路徑正是在CMTS里面配置的5條路徑。這說明CMTS和MIB的配置都成功。

      圖4 MIB的測試結(jié)果Fig.4 MIB test results

      3.3 MIB測試

      通過在WEB網(wǎng)頁上修改DSCP值,然后在利用MIB工具,會看到UsServiceFlow走不同的路徑。例如:

      set DSCP=0x2a則 TOS值就為0xa8,上行數(shù)據(jù)會走第4條路徑,我們會看到第4條路徑的數(shù)值往上遞增;

      set DSCP=0x01則TOS值就為 0x04,上行數(shù)據(jù)就會走第3條路徑,我們會看到第3條路徑后的數(shù)據(jù)往上遞增。

      通過這些測試就說明了能夠成功的修改每個(gè)SSID的DSCP值,并且CMTS能夠識別DSCP值,讓其走不同的路徑。

      3.4 抓包測試

      通過在WEB上修改DSCP值即可修改相應(yīng)SSID的數(shù)據(jù)包,因此也可以采用 Wireshark抓包軟件進(jìn)行抓包測試,通過抓到的包來看是否與修改的DSCP值相對應(yīng)。例如:在WEB網(wǎng)頁上設(shè)置某個(gè)SSID的DSCP值為0x2a,然后利用Wireshark在WAN側(cè)進(jìn)行抓包,找到對應(yīng)的包打開,就可以看這個(gè)數(shù)據(jù)包的TOS值。如圖5所示,可以看到TOS值為0xa8,而 TOS=DSCP<<2,

      0xa8=0xa2<<2.所以就可以證明修改的DSCP值生效了。

      圖5 抓包結(jié)果Fig.5 Packet capture results

      4 結(jié) 論

      通過本次試驗(yàn),證明在路由器[7]的WEB頁面上,也能改變通過每個(gè)SSID數(shù)據(jù)包的DSCP值,且CMTS能夠成功區(qū)分不同的SSID數(shù)據(jù)包。這符合本次試驗(yàn)的設(shè)計(jì)初衷,說明這種流分類方式在多SSID路徑中是可以實(shí)現(xiàn)的,并且這種設(shè)計(jì)使得流分類的方式很方便簡單,利用IP頭部的DSCP值也使得后面的流量控制、隊(duì)列調(diào)度、擁塞管理變得容易處理。

      [1]方麗,任秀麗,張炎.支持QoS的流分類在多層交換中的實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2003(8):145-147.FANG Li,REN Xiu-li,ZHANG Yan.Achieved the support QoS flow classification in multilayer switching[J].Application Research of Computers,2003(8):145-147.

      [2]謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)[M].5版.北京:電子工業(yè)出版社,2008.

      [3]王永綱,石江濤,戴雪龍,等.網(wǎng)絡(luò)包分類算法仿真測試與比較研究[J].中國科學(xué)技術(shù)大學(xué)學(xué)報(bào),2004,34(4):400-409.WANG Yong-gang,SHI Jiang-tao,DAI Xue-long,et al.Network packet classification test and simulation of algorithm Comparative Study.[J].University of Science and Technology of China Journal,2004,34(4):400-409.

      [4]Stachell S.T,Clifford H.B.J.著,劉隆國 譯.Linux IP協(xié)議棧源碼分析[M].北京:機(jī)械工業(yè)出版社,2000.

      [5]黨柱國,劉捷.淺議有線電視CMTS和Cable Modem[J].西部廣播電視,2002(09):46-48.DANG Zhu-guo,LIU Jie.Discussion on cable CMTS and cable modem[J].Western Radio and Television,2002(9):46-48.

      [6]區(qū)海平,壽國礎(chǔ).基于MIB定義的SNMP分析系統(tǒng)及實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2009(1):38-41.QU Hai-ping,SHOU Guo-chu.SNMP analysis system and implementation based on MIB definition[J].Computer Applications,2009(1):38-41.

      [7]李忠武,陳麗清.計(jì)算機(jī)網(wǎng)絡(luò)路由器的應(yīng)用研究[J].現(xiàn)代電子技術(shù),2014(8):113-115.LI Zhong-wu,CHEN Li-qing.Application research of computer network router[J].Modern Electronics Technique,2014(8):113-115.

      猜你喜歡
      應(yīng)用層字段路由器
      圖書館中文圖書編目外包數(shù)據(jù)質(zhì)量控制分析
      買千兆路由器看接口參數(shù)
      基于分級保護(hù)的OA系統(tǒng)應(yīng)用層訪問控制研究
      新一代雙向互動電力線通信技術(shù)的應(yīng)用層協(xié)議研究
      你所不知道的WIFI路由器使用方法?
      物聯(lián)網(wǎng)技術(shù)在信息機(jī)房制冷系統(tǒng)中的應(yīng)用
      CNMARC304字段和314字段責(zé)任附注方式解析
      無正題名文獻(xiàn)著錄方法評述
      關(guān)于CNMARC的3--字段改革的必要性與可行性研究
      Current advances in neurotrauma research: diagnosis, neuroprotection, and neurorepair
      稷山县| 新民市| 林芝县| 疏附县| 治多县| 郸城县| 禹城市| 井陉县| 青神县| 朝阳市| 临澧县| 新宾| 桐城市| 兴安盟| 横峰县| 新龙县| 特克斯县| 建昌县| 灵璧县| 金堂县| 澄城县| 东乡| 屯留县| 扶余县| 额尔古纳市| 蒙自县| 罗平县| 赫章县| 合川市| 常宁市| 高要市| 南乐县| 邵武市| 卢湾区| 赞皇县| 门源| 乃东县| 河源市| 潜山县| 故城县| 永胜县|