乙太網數據包

乙太網是目前套用最為廣泛的網路傳輸方式,已經得到企業和用戶的普遍認可,成為寬頻接入的首選技術。計算機網路在傳輸數據時,為了保證所有共享網路資源的計算機都能公平、迅速地使用網路,通常把數據分割成若干小塊作為傳輸單位進行傳送,這樣的傳輸單位我們通常稱之為包,也叫“數據包”。乙太網數據包就是在乙太網中傳輸的數據包。

介紹

計算機網路在傳輸數據時,為了保證所有共享網路資源的計算機都能公平、迅速地使用網路,通常把數據分割成若干小塊作為傳輸單位進行傳送,這樣的傳輸單位我們通常稱之為包,也叫“數據包”。乙太網數據包有四種分類,接下來一一介紹。

1.Ethernet II協定簡介:乙太網是當今現有區域網路採用的最通用的通信協定標準。該標準定義了在區域網路中採用的電纜類型和信號處理方法。EthernetII由DEC,Intel和Xerox在1982年公布其標準,Etherent II協定主要更改了EthernetI的電氣特性和物理接口,在幀格式上並無變化。Etherent II採用CSMA/CD的媒體接入和廣播機制 。

2.Ethernet 802.2協定簡介:Ethernet 802.2協定是IEEE正式的802.3標準,它由Ethernet II發展而來。實質是Ethernet802.2將EthernetII幀頭的協定類型欄位替換為幀長度欄位,並加入了LLC-802.2頭,用以標記上層協定。LLC頭包含目的服務訪問點(DSAP)、源服務訪問點(SSAP)和控制(Control)欄位 。

3.Ethernet 802.3協定簡介:Ethernet802.3是1983年Novell發布其Netware/86網路套件時採用的私有乙太網幀格式,該格式以當時尚未正式發布的 IEEE802.3標準為基礎;但是當兩年以後IEEE正式發布802.3標準時情況發生了變化(IEEE在802.3幀頭中又加入了802.2LLC 頭),這使得Novell的Ethernet 802.3協定與正式的IEEE 802.3標準互不兼容;Ethernet802.3隻支持IPX/SPX協定,是目前所用的最普通的一種幀格式,在802.2之前是IPX網路事實上的標準幀類型 。

4.Ethernet SNAP協定簡介:Ethernet SNAP協定是IEEE為保證在802.2LLC上支持更多的上層協定的同時更好地支持IP協定而發布的標準,與802.3/802.2 LLC一樣802.3/802.2SNAP也帶有LLC頭,但是擴展了LLC屬性,新添加了一個2位元組的協定類型域(同時將SAP的值置為AA),從而使其可以標識更多的上層協定類型;另外添加了一個3位元組的廠商代碼欄位用於標記不同的組織。RFC 1042定義了IP報文在802.2網路中的封裝方法和ARP協定在802.2SANP中的實現方法 。

傳輸方式

近年來,乙太網承載的信息量成倍增長,對傳輸頻寬的需求更加迫切。早期通信運營商對通信基礎設施上進行了很大的投入,大量採用了 SDH 和 PDH 等通信設備,這些設備提供了豐富的 E1 線路資源,但是由於當時技術的限制,很多沒有提供乙太網線路接口。如果能利用這些現有電信 E1 通信資源來有效地傳輸乙太網業務, 就能節約通信基礎設施建設成本,加快網路組建進度,增加用戶覆蓋範圍。 目前採用的技術有 Ethernet over SDH 和 Ethernet over PDH,直接將乙太網數據映射進 SDH 或 PDH 設備內的虛容器中,特點是傳輸開銷少、實現簡單,但設備複雜,實現成本較高,難以普及,不便用於廣大普通用戶的接入。還有一種簡單的解決方案是乙太網網橋,優點是技術簡單,成本低廉,利用一路 E1 電路提供乙太網接入,但是隨著寬頻業務的飛速發展,需要傳輸的乙太網的數據量越來越大, 傳統的單路 E1 乙太網網橋很難滿足廣大用戶的需求。 這裡提出了一種乙太網數據包分段傳輸技術來解決這種問題 。

技術原理

乙太網數據包分段傳輸技術系統主要由乙太網物理層、E1 線路接口單元以及FPGA三部分實現。 乙太網物理層採用的是 100M/10M 自適應物理層晶片,主要功能是把乙太網物理層信號轉換為 MAC 層的MII 信號送給 FPGA, 並把 FPGA 產生的乙太網MAC信號轉換為物理層信號傳送出去。E1 線路接口分為接收端和傳送端, 接收端的主要功能是從 E1 線路中恢復時鐘,進行時鐘抖動衰減處理,提取數據,然後對數據進行 HDB3 解碼;傳送端的主要功能是對傳送數據進行 HDB3 編碼,脈衝成型以及線路驅動。 FPGA 承擔了技術最主要的處理和轉換功能,分成 2 個模組,第一個模組是乙太網數據包分段模組,第二個模組是乙太網數據包恢復模組。

乙太網數據包分段模組的主要功能是把乙太網數據包分成數據包段落,並為每個數據包段落添加段落開銷, 組成乙太網數據包段落 (Ethernet Package Paragraph,EPP)然後進行 HDLC 封裝,通過 E1 線路接口傳送出去。模組在 FPGA 內部實現,分為 4 個部分,分別是數據包接收存儲單元、數據包分段及開銷插入單元、E1 線路接口檢測單元、HDLC 封裝單元。

乙太網數據包恢復模組的功能是從 E1 數據流中將 HDLC 封裝的 EPP 提取出來,然後根據 EPP 中的段落開銷將 EPP 恢復成乙太網數據包,通過乙太網物理層傳送出去。 模組在 FPGA 內部實現,分為 4 部分,即HDLC 檢測單元、EPP 調度單元、數據包恢復單元和數據包排隊傳送單元 。

技術特點

總體來說,這項技術具有以下特點:

①靈活: 不需要改變乙太網和 E1 線路的現有結構,只需在用戶終端加入一個轉換設備。 技術可以根據現有的 E1 線路資源將乙太網數據包分段成一定長度、一定數量的 EPP,並且每個 EPP 的長度可以不相同,這樣可以充分利用現有的 E1 通信線路資源。

②可靠:不改變原來的乙太網協定和乙太網包的內容,只是對乙太網數據包進行了分段以及封裝。 接收時可以從接收到任意的 EPP 開始恢復乙太網數據包。技術對EPP中的開銷採用了CCITT 標準的CRC16 校驗,並且對恢復出來的完整乙太網數據包進行 CRC32 校驗,確保恢復出來乙太網數據包的正確性。

③高效:對每個 EPP 添加7個位元組的 EPP開銷,選擇適當的分段長度分割乙太網數據包,可以使開銷所占的比例很小 。

捕獲技術

介紹

目前有兩種方法可以從網路中捕獲數據包,一種是採用專用硬體,另一種是利用普通計算機與網路連線的通用硬體——網路適配器,即網卡,由軟體來完成數據包的捕獲。雖然由軟體來捕獲數據包的方法在性能上比不上專用硬體,但其實現成本相對更低,且易於修改和更新。基於以上原因,採用軟體的捕獲方法得到了廣泛的使用和認同。

從網路捕獲數據包是所有網路安全產品實現中非常重要的一環,它是安全產品其它功能的基礎,而實現網路捕包的一個最重要的條件就是要能夠接收網路上所有的數據包。要滿足此條件就必須了解數據包在網路上的傳輸方式。計算機網路從傳輸方式的角度分為兩類:採用點到點連線的網路和採用廣播方式的網路。廣域網中一般採用點到點連線方式,而幾乎所有的區域網路都以廣播方式作為通信的基礎,網上的站點共享信道,一個站點發出的數據包,其他站點均能收到,也就是說,任一台計算機都可以接收到網路中同一個共享域的所有的數據通訊 。

實現原理

在乙太網上通訊的每張網卡上都擁有一個全球唯一的物理地址,也叫 MAC 地址。該地址是一個 48 比特的二進制數。在乙太網卡中內建有一個數據包過濾器。該數據包過濾器的作用是保留以本身網卡的 MAC 地址為通訊目的的數據包和廣播數據包,丟棄所有其它無關的數據包,以免 CPU 對無關的數據報作無謂的處理。這是乙太網卡在一般情況下的工作方式。因此在正常情況下,一個合法的網路接口應該只回響這樣的兩種數據包(幀):

①幀的目標地址具有和本地網路接口相匹配的硬體地址。

②幀的目標地址是“廣播地址”(代表所有的接口地址),格式為“FF- FF- FF- FF- FF- FF”。

在接收到上面兩種情況的數據幀時,網卡通過 CPU 產生中斷,作業系統進行中斷處理後將幀中包含的數據傳送給上層系統進行進一步處理。在其他情況下數據幀將被丟棄而不作處理。

要想捕獲到流經網卡的不屬於本主機的數據,必須繞過系統正常工作的處理機制,直接訪問網路底層。我們可以把網卡的狀態設為“混雜”(promis cuous)模式,當網卡工作在這種“混雜”模式時,該網卡就具備了“廣播地址”,它對所接收到的每一個幀都產生一個硬體中斷以提醒作業系統處理流經該網卡上的每一個報文包。作業系統通過直接訪問鏈路層,截獲相關數據,由應用程式而非上層協定(如IP 層、TCP 層)對數據過濾處理,這樣就可以捕獲到流經網卡的所有數據。

數據包常規的傳輸路徑依次為網卡、設備驅動層、數據鏈路層、網路層、傳輸層、最後到達應用程式。而包捕獲機制是在數據鏈路層增加一個旁路處理,對傳送和接收到的數據包做過濾、緩衝等相關處理,最後直接傳遞到應用程式 。

相關詞條

熱門詞條

聯絡我們