專利名稱:通過對(duì)ip數(shù)據(jù)包“免疫封裝”進(jìn)行標(biāo)識(shí)核驗(yàn)的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)通信領(lǐng)域,具體涉及一種利用“免疫封裝”對(duì)IP報(bào)文進(jìn)行重新封裝,以此進(jìn)行相應(yīng)數(shù)據(jù)源以及傳輸數(shù)據(jù)包協(xié)議身份的標(biāo)識(shí)區(qū)分。
背景技術(shù):
IP是英文Internet Protocol ( 網(wǎng)際協(xié)議)的縮寫,也就是為計(jì)算機(jī)網(wǎng)絡(luò)相互連接進(jìn)行通信而設(shè)計(jì)的協(xié)議。在因特網(wǎng)中,它是能使連接到網(wǎng)上的所有計(jì)算機(jī)網(wǎng)絡(luò)實(shí)現(xiàn)相互通信的一套規(guī)則,規(guī)定了計(jì)算機(jī)在因特網(wǎng)上進(jìn)行通信時(shí)應(yīng)當(dāng)遵守的規(guī)則。任何廠家生產(chǎn)的計(jì)算機(jī)系統(tǒng),只要遵守IP協(xié)議就可以與因特網(wǎng)互連互通。IP協(xié)議屬TCP/IP協(xié)議族,是TCP/IP協(xié)議族中最為核心的協(xié)議,所有的TCP、UDP、 ICMP、及 IGMP 數(shù)據(jù)都以 IP 數(shù)據(jù)報(bào)格式傳輸。TCP/IP (Transmission Control Protocol/ Internet Protocol)的簡寫,中文譯名為傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議,又叫網(wǎng)絡(luò)通訊協(xié)議,這個(gè)協(xié)議是Internet最基本的協(xié)議、Internet國際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ),TCP/IP協(xié)議分為四層,依次是鏈路層、網(wǎng)絡(luò)層、傳輸層、應(yīng)用層,IP協(xié)議屬于網(wǎng)絡(luò)層。數(shù)據(jù)包中,類型標(biāo)識(shí)位于以太網(wǎng)首部,IP協(xié)議為0x0080,如圖3所示。IP協(xié)議報(bào)文如附圖1所示的部分組成,普通的I P首部長為20個(gè)字節(jié),除非含有選項(xiàng)字段。在附圖1所示的首部中,最高位在左邊,記為Obit ;最低位在右邊,記為31bit。4個(gè)字節(jié)的32bit值以下面的次序傳輸首先是0 7bit,其次8 15bit,然后 16 23bit,最后是24 31bit。由于TCP/IP首部中所有的二進(jìn)制整數(shù)在網(wǎng)絡(luò)中傳輸時(shí)都要求以這種次序,因此它又稱作網(wǎng)絡(luò)字節(jié)序。以其他形式存儲(chǔ)二進(jìn)制整數(shù)的機(jī)器,則必須在傳輸數(shù)據(jù)之前把首部轉(zhuǎn)換成網(wǎng)絡(luò)字節(jié)序。目前的協(xié)議版本號(hào)是4,因此當(dāng)前普遍使用的IP協(xié)議也稱作IPv4。IPv4是當(dāng)前普遍使用的網(wǎng)絡(luò)地址協(xié)議,首部長度指的是首部占32bit字的數(shù)目,包括任何選項(xiàng)。由于它是一個(gè)4比特字段,因此首部最長為60個(gè)字節(jié)。服務(wù)類型(TOS)字段包括一個(gè)3bit的優(yōu)先權(quán)子字段(預(yù)留字段),4bit的TOS子字段和Ibit未用位,Ibit未用位必須置0。4bit的TOS分別代表最小時(shí)延、最大吞吐量、 最高可靠性和最小費(fèi)用。4bit中只能置其中l(wèi)bit。如果所有4bit均為0,那么就意味著是
一般服務(wù)。圖2列出了對(duì)不同應(yīng)用建議的4bitT0S值。在最后一列中給出的是十六進(jìn)制值, 對(duì)應(yīng)相應(yīng)TOS值的十六進(jìn)制數(shù)據(jù)位填充值。以上對(duì)8位服務(wù)類型(TOS)進(jìn)行了描述,4bitT0S和Ibit未用位均有說明,而對(duì)其中高三位的使用并未規(guī)定,屬預(yù)留位,本發(fā)明正是利用此三位進(jìn)行網(wǎng)絡(luò)傳輸協(xié)議數(shù)據(jù)身份標(biāo)識(shí)和識(shí)別,進(jìn)行相關(guān)意義表達(dá)。在本發(fā)明涉及的數(shù)據(jù)源以及其所發(fā)出的數(shù)據(jù)包標(biāo)識(shí)以及識(shí)別控制方面,目前現(xiàn)有的對(duì)網(wǎng)絡(luò)終端數(shù)據(jù)源或傳輸?shù)臄?shù)據(jù)包身份識(shí)別和控制的方式主要有以下幾種第一種是通過IP、MAC地址進(jìn)行身份識(shí)別。這種識(shí)別方式是目前最為普通,也是最為廣泛、最簡單的身份識(shí)別方式,很多路由器、交換機(jī)和軟件產(chǎn)品的安全和管理均是通過對(duì)數(shù)據(jù)包中得IP和MAC地址進(jìn)行讀取,通過IP、MAC匹配的方式進(jìn)行身份識(shí)別、確定,然后進(jìn)行相應(yīng)的管理策略和數(shù)據(jù)處理。MAC(Medium/MediaAccess Control,介質(zhì)訪問控制)MAC地址是燒錄在(網(wǎng)卡, NIC)里的。MAC地址,也叫硬件地址,是由48比特/bit長(6字節(jié)/byte,lbyte = 8bits),16 進(jìn)制的數(shù)字組成.0-23位叫做組織唯一標(biāo)志符(organizationally unique,是識(shí)別LAN(局域網(wǎng))節(jié)點(diǎn)的標(biāo)識(shí).24-47位是由廠家自己分配。其中第40位是組播地址標(biāo)志位。網(wǎng)卡的物理地址通常是由網(wǎng)卡生產(chǎn)廠家燒入網(wǎng)卡的EPROM(—種閃存芯片,通??梢酝ㄟ^程序擦寫),它存儲(chǔ)的是傳輸數(shù)據(jù)時(shí)真正賴以標(biāo)識(shí)發(fā)出數(shù)據(jù)的電腦和接收數(shù)據(jù)的主機(jī)的地址。也就是說,在網(wǎng)絡(luò)底層的物理傳輸過程中,是通過物理地址來識(shí)別主機(jī)和傳輸數(shù)據(jù)的,其中MAC是全球唯一的。比如以太網(wǎng)卡,其物理地址是48bit (比特位)的整數(shù),如 44-45-53-54-00-00,以機(jī)器可讀的方式存入主機(jī)接口中。以太網(wǎng)地址管理機(jī)構(gòu)(除了管這個(gè)外還管別的)(IEEE) (IEEE 電氣和電子工程師協(xié)會(huì))將以太網(wǎng)地址,也就是48比特的不同組合,分為若干獨(dú)立的連續(xù)地址組,生產(chǎn)以太網(wǎng)網(wǎng)卡的廠家就購買其中一組,具體生產(chǎn)時(shí),逐個(gè)將唯一地址賦予以太網(wǎng)卡。形象的說,MAC地址就如同我們身份證上的身份證號(hào)碼, 具有全球唯一性。在正常的情況下,由相應(yīng)MAC地址的網(wǎng)卡發(fā)布出來的數(shù)據(jù)包其源MAC填充位是該網(wǎng)卡的物理MAC,這樣通過分析數(shù)據(jù)包中源MAC地址可以確定數(shù)據(jù)來源的準(zhǔn)確身份。但在實(shí)際中由于數(shù)據(jù)包可以由基于網(wǎng)卡驅(qū)動(dòng)的上層應(yīng)用程序構(gòu)造發(fā)出,這樣數(shù)據(jù)包中的源MAC填充位的內(nèi)容并不是只有網(wǎng)卡可以操作,其它應(yīng)用程序和軟件可以隨意填充。這就導(dǎo)致了通過數(shù)據(jù)包源MAC進(jìn)行身份識(shí)別具有很大的不確定性、準(zhǔn)確性差。另外,由于所有協(xié)議和類型的數(shù)據(jù)包的源MAC均相同,這就給依據(jù)不同協(xié)議、報(bào)文進(jìn)行區(qū)隔處理造成了障礙。第二種是通過802. Ix協(xié)議進(jìn)行數(shù)據(jù)封裝、身份認(rèn)證和識(shí)別。802. Ix協(xié)議是基于 Client/Server的訪問控制和認(rèn)證協(xié)議。它可以限制未經(jīng)授權(quán)的用戶/設(shè)備通過接入端口 (access port)訪問LAN/WLAN。在獲得交換機(jī)或LAN提供的各種業(yè)務(wù)之前,802. Ix對(duì)連接到交換機(jī)端口上的用戶/設(shè)備進(jìn)行認(rèn)證。在認(rèn)證通過之前,802. Ix只允許EAPoL(基于局域網(wǎng)的擴(kuò)展認(rèn)證協(xié)議)數(shù)據(jù)通過設(shè)備連接的交換機(jī)端口 ;認(rèn)證通過以后,正常的數(shù)據(jù)可以順利地通過以太網(wǎng)端口。網(wǎng)絡(luò)訪問技術(shù)的核心部分是PAE (端口訪問實(shí)體)。在訪問控制流程中,端口訪問實(shí)體包含3部分認(rèn)證者一對(duì)接入的用戶/設(shè)備進(jìn)行認(rèn)證的端口 ;請(qǐng)求者一被認(rèn)證的用戶/設(shè)備;認(rèn)證服務(wù)器一根據(jù)認(rèn)證者的信息,對(duì)請(qǐng)求訪問網(wǎng)絡(luò)資源的用戶/設(shè)備進(jìn)行實(shí)際認(rèn)證功能的設(shè)備,如圖4的802. IX認(rèn)證工作過程為(1)當(dāng)用戶有上網(wǎng)需求時(shí)打開802. IX客戶端程序,輸入已經(jīng)申請(qǐng)、登記過的用戶名和口令。(2)客戶端發(fā)起連接請(qǐng)求,此時(shí),客戶端程序?qū)l(fā)出請(qǐng)求認(rèn)證的報(bào)文給交換機(jī),開始啟動(dòng)一次認(rèn)證過程。(3)交換機(jī)收到請(qǐng)求認(rèn)證的數(shù)據(jù)幀后,將發(fā)出一個(gè)請(qǐng)求幀要求用戶的客戶端程序?qū)⑤斎氲挠脩裘蜕蟻怼?br>
(4)客戶端程序響應(yīng)交換機(jī)發(fā)出的請(qǐng)求,將用戶名信息通過數(shù)據(jù)幀送給交換機(jī)。(5)交換機(jī)將客戶端送上來的數(shù)據(jù)幀經(jīng)過封包處理后送給認(rèn)證服務(wù)器進(jìn)行處理。(6)認(rèn)證服務(wù)器收到交換機(jī)轉(zhuǎn)發(fā)上來的用戶名信息后,將該信息與數(shù)據(jù)庫中的用戶名表相比對(duì),找到該用戶名對(duì)應(yīng)的口令信息。(7)認(rèn)證服務(wù)器用隨機(jī)生成的一個(gè)加密字對(duì)它進(jìn)行加密處理。(8)認(rèn)證服務(wù)器將此加密字傳送給交換機(jī)。(9)由交換機(jī)將加密字傳給客戶端程序。
(10)客戶端程序收到由交換機(jī)傳來的加密字后,用該加密字對(duì)口令部分進(jìn)行加密處理(此種加密算法通常是不可逆的)。(11)客戶端將加密后口令送至交換機(jī)。(12)加密口令通過交換機(jī)傳給認(rèn)證服務(wù)器。(13)認(rèn)證服務(wù)器將送上來的加密后的口令信息和其自己經(jīng)過加密運(yùn)算后的口令信息進(jìn)行對(duì)比,如果相同,則認(rèn)為該用戶為合法用戶,反饋認(rèn)證通過的消息,并向交換機(jī)發(fā)出打開端口的指令,允許用戶的業(yè)務(wù)流通過端口訪問網(wǎng)絡(luò)。否則,反饋認(rèn)證失敗的消息,并保持交換機(jī)端口的關(guān)閉狀態(tài),只允許認(rèn)證信息數(shù)據(jù)通過而不允許業(yè)務(wù)數(shù)據(jù)通過。從以上可以過程看出,此種識(shí)別方式的缺點(diǎn)在于需要專門的交換機(jī)設(shè)備執(zhí)行,進(jìn)行認(rèn)證的是相應(yīng)請(qǐng)求者的密碼,而不是請(qǐng)求者的身份,更不是所要進(jìn)行收發(fā)的每一個(gè)數(shù)據(jù)包,存在的問題是偽造符合相應(yīng)密碼的請(qǐng)求者IP、MAC身份即可獲的認(rèn)證,即便是真實(shí)請(qǐng)求者本身,也不能實(shí)現(xiàn)對(duì)每一個(gè)數(shù)據(jù)包進(jìn)行標(biāo)識(shí)、核驗(yàn)。另外,此種認(rèn)證方式多局限于認(rèn)證服務(wù)器和認(rèn)證者在同一個(gè)子網(wǎng)內(nèi),且控制方式為交換機(jī)端口控制,限制了認(rèn)證細(xì)分到具體協(xié)議、具體數(shù)據(jù)包的能力。第三種是利用特定數(shù)據(jù)協(xié)議通過維持心跳進(jìn)行識(shí)別。如圖5,所謂心跳即是維持正常通信的基礎(chǔ)通信數(shù)據(jù),它采用特定格式,間隔一定時(shí)間發(fā)出。通過特定的協(xié)議進(jìn)行確認(rèn)的數(shù)據(jù)包間隔一定時(shí)間發(fā)送出來,接收方通過該時(shí)間內(nèi)是否接收到該心跳數(shù)據(jù)(同時(shí)檢查該心跳數(shù)據(jù)包是否合規(guī))作為后續(xù)對(duì)該來源數(shù)據(jù)的處理依據(jù)。此種處理方式是通過特定協(xié)議數(shù)據(jù)心跳是否存在作為對(duì)其它數(shù)據(jù)的處理依據(jù)。首先,此種方式的缺點(diǎn)在于通過部分?jǐn)?shù)據(jù)以偏蓋全的代表了其它所有數(shù)據(jù)的身份檢查,這樣并不能代表被處理數(shù)據(jù)的可靠。其次,此種方式同樣以IP、MAC為基準(zhǔn)確定相應(yīng)的數(shù)據(jù)來源,準(zhǔn)確性差。另外,此種方式需要采用特定協(xié)議重新組包封裝,拆包檢查,比較復(fù)雜。第四種是通過在數(shù)據(jù)包data部分進(jìn)行內(nèi)容填充,通過內(nèi)容讀取進(jìn)行識(shí)別。接收方按照一定規(guī)則將數(shù)據(jù)包中的信息提取,按照其中的指令進(jìn)行處理。這種方式解決了以偏蓋全的缺點(diǎn),對(duì)每一個(gè)數(shù)據(jù)包都進(jìn)行data部分的指令添加,安全性高。問題在于由于對(duì)每一個(gè)數(shù)據(jù)包都進(jìn)行了 data部分的指令添加,導(dǎo)致傳輸?shù)臄?shù)據(jù)量大幅增加。另外,由于修改了數(shù)據(jù)包的data部分,導(dǎo)致其他應(yīng)用程序和軟件工具不能獨(dú)自識(shí)別被封裝了 data的數(shù)據(jù)包, 產(chǎn)生了兼容性隱患。
發(fā)明內(nèi)容
為了解決上述現(xiàn)有技術(shù)實(shí)現(xiàn)上的缺點(diǎn),本發(fā)明的目的是通過對(duì)以太網(wǎng)數(shù)據(jù)包IP 首部TOS高三位的填充,實(shí)現(xiàn)一種能夠兼?zhèn)涿堪r?yàn)、效率高、操作簡單、兼容性好的數(shù)據(jù)身份檢查和處理方式。所述技術(shù)方案如下一種通過網(wǎng)絡(luò)IP數(shù)據(jù)包“免疫封裝”用以進(jìn)行協(xié)議數(shù)據(jù)身份核驗(yàn)的方法,其特征在于通過以太網(wǎng)IP數(shù)據(jù)包IP首部的TOS字段高三位進(jìn)行填充,實(shí)現(xiàn)簡單、高效、準(zhǔn)確到每一個(gè)數(shù)據(jù)包進(jìn)行標(biāo)記。對(duì)數(shù)據(jù)包進(jìn)行“免疫封裝”是由支持本封裝方式的軟件或模塊進(jìn)行, 數(shù)據(jù)源如網(wǎng)絡(luò)終端設(shè)備、數(shù)據(jù)處理端如交換設(shè)備和路由轉(zhuǎn)發(fā)均可進(jìn)行“免疫封裝”。數(shù)據(jù)源也就是數(shù)據(jù)生成發(fā)起方的“免疫封裝”過程為數(shù)據(jù)源端的“免疫封裝”首先要檢查相應(yīng)數(shù)據(jù)是否具被封裝要求,例如數(shù)據(jù)發(fā)起方的設(shè)備物理MAC是否正確,IP和MAC 的對(duì)應(yīng)關(guān)系等。如果滿足相關(guān)要求,即表示該數(shù)據(jù)源端符合“免疫封裝”要求,進(jìn)入準(zhǔn)備標(biāo)記流程。如果不滿足要求,即表示該數(shù)據(jù)源端不符合免疫標(biāo)記要求,則采取不進(jìn)行“免疫封裝”發(fā)出,甚至采取丟棄該數(shù)據(jù)的動(dòng)作。滿足免疫標(biāo)記要求的數(shù)據(jù)進(jìn)入“免疫封裝”過程。 標(biāo)記流程即按照設(shè)定的標(biāo)記位規(guī)則,填充標(biāo)記位,計(jì)算新的正確的校驗(yàn)和填入,并發(fā)出。數(shù)據(jù)源端“免疫封裝”完畢,發(fā)出的經(jīng)過“免疫封裝”的數(shù)據(jù)包,會(huì)被下一階段的交換轉(zhuǎn)發(fā)設(shè)備處理,進(jìn)入數(shù)據(jù)處理端“免疫封裝”流程。數(shù)據(jù)交換、數(shù)據(jù)轉(zhuǎn)發(fā)等數(shù)據(jù)處理端接收到數(shù)據(jù)包后,由其數(shù)據(jù)處理單元進(jìn)行分析, 提取所接收數(shù)據(jù)的IP首部TOS高三位,判斷是否已經(jīng)在相應(yīng)位置進(jìn)行了填充,如果是則進(jìn)行符合性處理,即該數(shù)據(jù)符合標(biāo)記封裝要求后,進(jìn)行轉(zhuǎn)發(fā)、取消標(biāo)記等后續(xù)處理。如果否則進(jìn)行不符合性處理,即該數(shù)據(jù)不合格標(biāo)記封裝要求,進(jìn)行丟棄、不符合標(biāo)記處理等操作?!懊庖叻庋b”的過程中,涉及到TOS高三位填充標(biāo)記位修改時(shí),均需要進(jìn)行重新計(jì)算校驗(yàn)和,以保證符合IP報(bào)文的標(biāo)準(zhǔn)。本發(fā)明的技術(shù)方案帶來的有益效果是采用數(shù)據(jù)包IP首部TOS高三位預(yù)留位進(jìn)行標(biāo)記填充用以進(jìn)行身份檢驗(yàn)的方法做到了 1、由于每一個(gè)數(shù)據(jù)包都進(jìn)行了標(biāo)記位填充,使得每一個(gè)數(shù)據(jù)包可以進(jìn)行相應(yīng)含義表達(dá)的位填充,傳輸中的每一個(gè)數(shù)據(jù)包都能做到了身份識(shí)別,細(xì)致到每一個(gè)數(shù)據(jù)包;2、由于使用了 TOS預(yù)留位進(jìn)行標(biāo)記,使得處理后的數(shù)據(jù)經(jīng)由現(xiàn)有的應(yīng)用程序、協(xié)議或設(shè)備處理時(shí)互不影響,兼容性好;3、所使用的標(biāo)記位共3位,可以實(shí)現(xiàn)一定范圍的指令差異控制,控制類別達(dá)到8種,可進(jìn)行8中含義表達(dá),8中含義標(biāo)記區(qū)分如圖6所示;4、此種封裝方式既實(shí)現(xiàn)了對(duì)每一個(gè)數(shù)據(jù)包都處理,做到了對(duì)原有數(shù)據(jù)包修改最小,影響最低,效果較高;5、由于填充的數(shù)據(jù)位經(jīng)過多級(jí)路由轉(zhuǎn)發(fā)也不會(huì)受到影響,所以此種方式的應(yīng)用范圍并不局限于同一局域網(wǎng),同時(shí)可以實(shí)現(xiàn)跨網(wǎng)段。
圖1是IP數(shù)據(jù)報(bào)格式及首部中的各字段圖2是服務(wù)類型字段值規(guī)范的對(duì)應(yīng)意義圖3是以太網(wǎng)首部IP協(xié)議類型圖4是802. Ix協(xié)議過程圖5是心跳方式維持身份處理的過程圖6是本發(fā)明使用的TOS位的種類圖7是本發(fā)明處理方法和步驟過程圖
具體實(shí)施例方式下面 結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明,但不作為對(duì)本發(fā)明的限定。本發(fā)明采用以下技術(shù)方案網(wǎng)絡(luò)轉(zhuǎn)發(fā)設(shè)備、交換設(shè)備或終端網(wǎng)卡等連接到網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)發(fā)起或轉(zhuǎn)發(fā)的設(shè)備通過免疫模塊對(duì)將要發(fā)出或已經(jīng)接收的數(shù)據(jù)包進(jìn)行分析,檢查數(shù)據(jù)包格式是否正確、IP首部TOS中高三位優(yōu)先級(jí)字段相應(yīng)位置是否存在標(biāo)記,并進(jìn)行相應(yīng)“免疫封裝”操作。對(duì)于轉(zhuǎn)發(fā)端如果已存在免疫標(biāo)記,根據(jù)相應(yīng)標(biāo)記位預(yù)先約定的含義、 要求進(jìn)行相應(yīng)處理。對(duì)數(shù)據(jù)包的識(shí)別和封裝均是通過IP首部TOS中高三位進(jìn)行。這樣處理主要是由于傳統(tǒng)的數(shù)據(jù)包身份識(shí)別方式存在不能兼顧對(duì)原數(shù)據(jù)包修改最小、每一包單獨(dú)標(biāo)記、效率和準(zhǔn)確性高、兼容性好的要求。本發(fā)明使得網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)包身份核驗(yàn)、標(biāo)識(shí)有了一種簡易、改動(dòng)小、效率高、使用方便的方式?!懊庖叻庋b”指的是對(duì)用于網(wǎng)絡(luò)傳輸?shù)膮f(xié)議數(shù)據(jù)包進(jìn)行拆包重新封裝,對(duì)其中的某些特定數(shù)據(jù)位進(jìn)行修改,封裝可以在網(wǎng)絡(luò)終端設(shè)備、交換設(shè)備或路由轉(zhuǎn)發(fā)設(shè)備上進(jìn)行。也就是說,連接到網(wǎng)絡(luò)中的設(shè)備及接口、涉及到數(shù)據(jù)包收發(fā)的網(wǎng)絡(luò)接口都可以通過“免疫封裝” 的方法實(shí)現(xiàn)數(shù)據(jù)身份核查的目的?!懊庖叻庋b”由位于網(wǎng)絡(luò)終端設(shè)備或網(wǎng)絡(luò)交換轉(zhuǎn)發(fā)設(shè)備上的按照本發(fā)明方法進(jìn)行的安全模塊(或軟件)完成。進(jìn)行“免疫封裝”的具體過程為對(duì)于有權(quán)限發(fā)出網(wǎng)絡(luò)訪問數(shù)據(jù)的網(wǎng)絡(luò)接口,要對(duì)其發(fā)出數(shù)據(jù)包的IP首部TOS高三位優(yōu)先級(jí)字段進(jìn)行填充,在進(jìn)行“免疫封裝”之前,此三位在以太網(wǎng)數(shù)據(jù)包中均為“0”,而“免疫封裝”的過程正是按照一定規(guī)則在其至少一位進(jìn)行“ 1,,填充,不同的填充位置,就使得被“免疫封裝”后的數(shù)據(jù)包具備相應(yīng)的網(wǎng)絡(luò)傳輸“含義”。下面針對(duì)以上步驟進(jìn)行詳細(xì)說明。如圖7中所示,數(shù)據(jù)源及數(shù)據(jù)包發(fā)起源端的具體“免疫封裝”過程為1、數(shù)據(jù)源設(shè)備的系統(tǒng)應(yīng)用程序?qū)⒁偷膮f(xié)議數(shù)據(jù)發(fā)送到協(xié)議棧;2、協(xié)議棧將數(shù)據(jù)送往網(wǎng)卡驅(qū)動(dòng),而“免疫封裝”模塊則位于協(xié)議棧和網(wǎng)卡驅(qū)動(dòng)之間,此時(shí)免疫驅(qū)動(dòng)將進(jìn)行網(wǎng)絡(luò)協(xié)議檢查。3、如果是IP協(xié)議,且符合協(xié)議標(biāo)準(zhǔn)規(guī)則,則進(jìn)行IP首部TOS高三位優(yōu)先字段的位填充,按照設(shè)定規(guī)則在其至少一位上填充“1”,并重算校驗(yàn)和,填入IP首部校驗(yàn)和位置;如果是非IP協(xié)議,直接將數(shù)據(jù)轉(zhuǎn)給網(wǎng)卡驅(qū)動(dòng),不做任何處理;4、然后將數(shù)據(jù)轉(zhuǎn)給網(wǎng)卡驅(qū)動(dòng),就完成了 “免疫封裝”。數(shù)據(jù)交換、轉(zhuǎn)發(fā)等處理端的“免疫封裝”是數(shù)據(jù)接受、交換轉(zhuǎn)發(fā)方進(jìn)行的相關(guān)TOS 高三位的封裝過程,包含以下步驟步驟A 數(shù)據(jù)接收方接受到數(shù)據(jù)包。步驟B 判斷數(shù)據(jù)包是否符合以太網(wǎng)協(xié)議規(guī)則,如校驗(yàn)和是否正確,格式是否匹配,是否為IP協(xié)議包等。步驟C : 如果數(shù)據(jù)包格式不規(guī)范,則進(jìn)行丟棄或不“免疫封裝”轉(zhuǎn)發(fā)。如果數(shù)據(jù)包格式規(guī)范,則取數(shù)據(jù)包IP首部TOS高三位,查看是否在正確位進(jìn)行了標(biāo)記,也就是說標(biāo)記位的選擇是相關(guān)參與 “免疫封裝”的各方設(shè)定好的,以便形成統(tǒng)一。有了標(biāo)記,但標(biāo)記位錯(cuò)誤也是不合格的。步驟 D 采取相應(yīng)動(dòng)作,如果標(biāo)記位不存在或標(biāo)記位置錯(cuò)誤,說明此數(shù)據(jù)包不符合標(biāo)記規(guī)則,需要進(jìn)行不合規(guī)處理,如丟棄、返回提示信息給數(shù)據(jù)源等。如果標(biāo)記位存在且位置正確,說明此數(shù)據(jù)包符合標(biāo)記規(guī)則,需要進(jìn)行合規(guī)處理,如予以轉(zhuǎn)發(fā)或進(jìn)行標(biāo)記位修改使其滿足轉(zhuǎn)發(fā)后的下一端點(diǎn)標(biāo)記規(guī)則等。
這里需要特別說明的是,進(jìn)行IP首部TOS填充的具體方式并非僅限于在網(wǎng)卡驅(qū)動(dòng)和協(xié)議棧之間進(jìn)行,凡是通過IP首部TOS字段填充用以標(biāo)記數(shù)據(jù)包類別、身份、安全度、來源意義的實(shí)現(xiàn)均為本發(fā)明涉及的范圍。
“免疫封裝”還包括進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)后是否進(jìn)行還原動(dòng)作,也就是位于網(wǎng)絡(luò)中的三層設(shè)備在進(jìn)行跨網(wǎng)段轉(zhuǎn)發(fā)時(shí),依據(jù)相應(yīng)策略方式進(jìn)行。三種策略處理方式一種是不進(jìn)行“免疫封裝”的任何操作,直接轉(zhuǎn)發(fā);一種是變更標(biāo)記為,表明此數(shù)據(jù)是經(jīng)由合法的轉(zhuǎn)發(fā)設(shè)備轉(zhuǎn)發(fā)過來的;第三種是還原標(biāo)記位即將IP首部TOS中3位優(yōu)先級(jí)字段歸“0”,恢復(fù)其原始的以太網(wǎng)數(shù)據(jù)預(yù)留填充狀態(tài)。可見“免疫封裝”是在特定網(wǎng)絡(luò)范圍內(nèi)的網(wǎng)絡(luò)數(shù)據(jù)標(biāo)記和網(wǎng)絡(luò)行為檢查規(guī)范,是利用TCP/IP協(xié)議IP首部預(yù)留位進(jìn)行的。這個(gè)特定網(wǎng)絡(luò)范圍可以不斷擴(kuò)大,使得更大規(guī)模網(wǎng)絡(luò)采用此種方式進(jìn)行安全身份的簡易高效處理。本發(fā)明主要是改進(jìn)了通過在數(shù)據(jù)包data部分進(jìn)行內(nèi)容填充、增加協(xié)議輔助驗(yàn)證識(shí)別數(shù)據(jù)報(bào)身份的方式,采用通過不新增數(shù)據(jù)格式,不改變數(shù)據(jù)包大小,直接使用原有預(yù)留位的方式,保證了被“免疫封裝”數(shù)據(jù)包在網(wǎng)絡(luò)中傳輸?shù)募嫒菪浴⑻岣吡司W(wǎng)絡(luò)數(shù)據(jù)報(bào)封裝和解封裝的效率、減少了網(wǎng)絡(luò)流量負(fù)荷。以上便是“免疫封裝”技術(shù)方案的處理流程,對(duì)于本方案的關(guān)鍵部分,進(jìn)行IP首部 TOS高三位的填充最重要,是本發(fā)明的核心所在。數(shù)據(jù)發(fā)起端和數(shù)據(jù)處理端的“免疫封裝” 方式主要是利用了以太網(wǎng)協(xié)議原有數(shù)據(jù)預(yù)留位這樣就使得此種封裝方式具備以下優(yōu)點(diǎn)1、利用原有數(shù)據(jù)協(xié)議位進(jìn)行封裝,沒有增加數(shù)據(jù)負(fù)載,通信效率高;2、由于使用的數(shù)據(jù)位為預(yù)留位,所以數(shù)據(jù)對(duì)現(xiàn)有網(wǎng)絡(luò)完全兼容,不存在非專有設(shè)備不能識(shí)別而導(dǎo)致的數(shù)據(jù)處理問題;3、“免疫封裝”操作簡易、效率高,處理過程更加迅速高效,整個(gè)封裝過程的處理速度快;4、“免疫封裝”針對(duì)每一個(gè)獨(dú)立的數(shù)據(jù)包進(jìn)行,細(xì)致到每一個(gè)數(shù)據(jù)包,更加精準(zhǔn);5、“免疫封裝”對(duì)IP協(xié)議數(shù)據(jù)進(jìn)行,可以實(shí)現(xiàn)跨網(wǎng)段傳輸管理,適用范圍廣。以上所述的實(shí)施舉例,只是本發(fā)明較優(yōu)選的具體實(shí)施方式
,本領(lǐng)域的技術(shù)人員在本發(fā)明技術(shù)方案范圍內(nèi)進(jìn)行的通常變化和替換都應(yīng)包含在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種通過對(duì)IP數(shù)據(jù)包“免疫封裝”進(jìn)行標(biāo)識(shí)核驗(yàn)的方法,其特征在于采用數(shù)據(jù)包中 20字節(jié)長度的IP首部中第二字節(jié)的8位服務(wù)類型(TOQ的高三位進(jìn)行位填充,重新計(jì)算校驗(yàn)和,而不涉及IP數(shù)據(jù)包其它位的改變,所述“免疫封裝”方法涉及數(shù)據(jù)源端和數(shù)據(jù)交換、 轉(zhuǎn)發(fā)端兩種網(wǎng)絡(luò)位置上進(jìn)行,包含以下步驟數(shù)據(jù)源及數(shù)據(jù)包發(fā)起源端的具體“免疫封裝”步驟為 步驟A 數(shù)據(jù)源設(shè)備的系統(tǒng)應(yīng)用程序?qū)⒁l(fā)送的協(xié)議數(shù)據(jù)發(fā)送到協(xié)議棧; 步驟B 協(xié)議棧將數(shù)據(jù)送往網(wǎng)卡驅(qū)動(dòng),而“免疫封裝”模塊則位于協(xié)議棧和網(wǎng)卡驅(qū)動(dòng)之間,此時(shí)免疫驅(qū)動(dòng)將進(jìn)行網(wǎng)絡(luò)協(xié)議檢查。步驟C 如果是IP協(xié)議,且符合協(xié)議標(biāo)準(zhǔn)規(guī)則,則進(jìn)行IP首部TOS高三位優(yōu)先字段的位填充,按照設(shè)定規(guī)則在其至少一位上填充“1”,并重算校驗(yàn)和,填入IP首部校驗(yàn)和位置; 如果不是IP協(xié)議,直接將數(shù)據(jù)轉(zhuǎn)給網(wǎng)卡驅(qū)動(dòng),不做任何處理;步驟D 然后將步驟C的數(shù)據(jù)轉(zhuǎn)給網(wǎng)卡驅(qū)動(dòng),就完成了 “免疫封裝”; 數(shù)據(jù)交換、數(shù)據(jù)轉(zhuǎn)發(fā)等數(shù)據(jù)處理端接收到數(shù)據(jù)包后,進(jìn)行“免疫封裝”步驟為 步驟A 由其數(shù)據(jù)處理單元進(jìn)行分析,判斷其是否是合規(guī)的IP協(xié)議數(shù)據(jù)包; 步驟B 如果是則提取所接收數(shù)據(jù)的IP首部TOS高三位,判斷是否已經(jīng)在相應(yīng)位置進(jìn)行了填充,如果存在標(biāo)記且標(biāo)記位正確則進(jìn)行符合性處理,即該數(shù)據(jù)符合標(biāo)記封裝要求后, 可以進(jìn)行下一步的轉(zhuǎn)發(fā)、取消標(biāo)記等后續(xù)處理,如果否則進(jìn)行不符合處理,即該數(shù)據(jù)不符合標(biāo)記封裝要求,進(jìn)行下一步的丟棄、提示安裝“免疫封裝”組件等不符合標(biāo)記要求的處理操作。
2.如權(quán)利要求1所述的“免疫封裝”的方法,其特征在于對(duì)IP首部8位服務(wù)類型(TOS) 的位填充主要用于數(shù)據(jù)包來源和數(shù)據(jù)包本身的可信身份確認(rèn),用以進(jìn)行數(shù)據(jù)來源和數(shù)據(jù)包的是否符合要求的標(biāo)記。
3.如權(quán)利要求1所述的“免疫封裝”的方法,其特征在于IP數(shù)據(jù)包在數(shù)據(jù)源和數(shù)據(jù)交換、轉(zhuǎn)發(fā)、接收端均進(jìn)行?!懊庖叻庋b”包括對(duì)1中所述的TOS高三位的初始標(biāo)記、標(biāo)記修改、 標(biāo)記清除。以便更好的利用“免疫封裝”進(jìn)行不同階段數(shù)據(jù)傳輸過程中相關(guān)身份檢查和管理。
全文摘要
本發(fā)明涉及一種通過對(duì)IP數(shù)據(jù)包“免疫封裝”進(jìn)行標(biāo)識(shí)核驗(yàn)的方法,該種方法采用對(duì)數(shù)據(jù)包中20字節(jié)長度的IP首部中第二字節(jié)的8位服務(wù)類型(TOS)的高三位,以相應(yīng)標(biāo)記填充的方式實(shí)現(xiàn)標(biāo)識(shí)該數(shù)據(jù)包身份類型的目的。本發(fā)明屬于網(wǎng)絡(luò)通信領(lǐng)域,避免了傳統(tǒng)網(wǎng)絡(luò)數(shù)據(jù)身份檢驗(yàn)方式通訊效率低、不能準(zhǔn)確到每一個(gè)數(shù)據(jù)包、無法跨網(wǎng)段和實(shí)施部署成本高的缺點(diǎn)。網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)接口、網(wǎng)絡(luò)驅(qū)動(dòng)、網(wǎng)絡(luò)系統(tǒng)和組件等通過支持“免疫封裝”可以做到對(duì)網(wǎng)絡(luò)中每一個(gè)數(shù)據(jù)包都標(biāo)記、對(duì)原有網(wǎng)絡(luò)負(fù)荷小、執(zhí)行效率高、同時(shí)經(jīng)過“免疫封裝”的數(shù)據(jù)可在原網(wǎng)絡(luò)中正常傳輸,無論其設(shè)備是否支持“免疫封裝”。
文檔編號(hào)H04L29/06GK102299851SQ20111025620
公開日2011年12月28日 申請(qǐng)日期2011年9月1日 優(yōu)先權(quán)日2011年9月1日
發(fā)明者潘薇 申請(qǐng)人:潘薇