TCP IP協議棧 乙太網 VLAN

2022-09-22 05:03:08 字數 2968 閱讀 2157

1.tcp/ip分層和tcp/ip協議棧

osi七層模型注重的是模型本身,這個模型對討論和研究計算機網路是非常有益的。但是,大家更喜歡用tcp/ip協議來分層,它注重的是協議。

tcp/ip分層後,將各種協議對應到這些分層,那麼就稱tcp/ip協議棧。

osi七層協議、tcp/ip分層和tcp/ip協議棧的對應關係如下圖。

在tcp/ip分層中,osi的應用層、表示層、會話層全都統一為應用層,而底層的物理層和鏈路層又統一為介面層。每個tcp/ip分層都對應一些協議,這些協議組成了tcp/ip協議棧。

最頂層的是應用層協議,比如http協議、dns協議、ftp協議、pop3協議等。

傳輸層包含兩個協議,tcp協議和udp協議,在這一層將指定通訊埠。

網路層包括arp協議、ip協議、icmp協議、igmp協議等等,網路層的協議有些並不完全屬於網路層,有可能向下跨到鏈路層,但總的來說,將它們都歸類到網路層協議。

網路介面層的協議包含了點對點的ppp協議,乙太網還有幀中繼以及其他一些協議。

有了tcp/ip協議棧之後,可以將目光集中在各種協議上,通過分析各個協議,就能比較清晰的理解各層的責任、功能等等特性。

但是tcp/ip分層模型的缺點也是很大的,它將原本的osi七層粗魯的歸納成四層,帶來的是丟棄了很多細節,在通用性上也要差得多,比如tcp/ip分層顯然不適合描述藍芽。但僅對於網路分析來說,tcp/ip的分層顯然要巨集觀且方便的多。

2.區域網:乙太網

乙太網(ethernet)是鏈路層的一種,它是區域網技術。除了乙太網鏈路,還有廣域網的鏈路,包括點對點的ppp協議、幀中繼等。

1)封裝成幀和解封幀

2)差錯校驗和糾正

這裡只介紹一些關於區域網相關的知識。

區域網目前所使用的技術都是乙太網技術。在以前,還有各種各樣的區域網技術,比如令牌環、fddi、atm等,但隨著乙太網硬體(比如集線器、交換機、網絡卡等)**不斷降低,且隨著發展,乙太網的區域網的速率也不必其他區域網技術差,所以目前乙太網統領了區域網市場。

當使用乙太網時,鏈路層封裝的資料幀時乙太網幀,乙太網幀是乙太網的最小傳輸單位。

每個乙太網幀最小64位元組,乙太網幀的格式如下圖所示。

注意,上圖中只有鏈路層部分才是乙太網幀的資料,所以7位元組的前同步碼(preamble)、1位元組的幀起始定界符、12位元組的幀間距不屬於乙太網幀,它們屬於物理層。其中,幀間距的存在,說明每個幀之間是間隔傳輸的,並不是完全連續傳輸。

主要看乙太網幀格式。首先是6位元組的目標mac位址和6位元組的源mac位址,然後是可選的tag標記,一般當它不存在,之後是表示型別的2個位元組,接著便是資料報部分,尾部是乙個4位元組的crc的幀校驗碼。

目標mac欄位記錄了目標的mac位址,當某網絡卡或介面卡接收到了乙個乙太網幀,如果它的mac位址正好是幀中記錄的目標位址,則將該幀解封後的資料報傳遞給網路層。此外,如果收到的是廣播幀(目標mac位址為ff-ff-ff-ff-ff-ff),則也將其傳遞給網路層,但如果收到目標mac位址不是本介面位址的任何資料幀,都將直接丟棄。

源mac位址字段記錄的是該幀的出口mac位址。

型別字段(2位元組)允許乙太網復用網路層的協議,從而可以將其與網路層協議結合起來。它可以識別上層使用的是什麼協議,以便接收到幀之後,將資料報指定給網路層的指定協議。事實上,所以協議格式中的型別字元的作用都是為了將該協議與上一層的協議結合起來。

fcs欄位的目的是使得接收到幀時,能夠檢測出幀中是否出了差錯,並且糾正差錯。

最後是中間的資料部分,它的大小範圍為46-1500位元組,最小46位元組是因為資料幀的最小位元組數為64位元組,最大1500位元組是因為資料報的最大大小為1500位元組。

如果發現資料部分小於46位元組,在封裝幀的時候自動填充到46位元組。這要求上層協議必須能夠識別出填充的這部分並正確的去除掉這部分。

上圖顯示了乙太網幀和上層資料報之間的關係。

最後,還需要明確的是封裝幀和解封幀現在都是網絡卡來完成的,作業系統不會參與,所以不會占用cpu資源。

3.虛擬區域網:vlan

交換機的每乙個埠都是乙個衝突域,它能夠隔離衝突域,但是交換機無法隔離廣播域。只要有廣播幀(即目標mac為ff-ff-ff-ff-ff-ff的幀),交換機會將其廣播給所有介面上的主機。如果有某個主機不斷的傳送arp請求(該協議的請求會導致一次廣播),比如中了arp病毒,或者程式設計不慎等等原因都有可能,這將導致這個廣播域內發生廣播風暴,造成網路堵塞,嚴重時甚至整個廣播域內誰也無法互聯。

另一方面,公司網路規劃時,按照物理為位置劃分網段並不一定方便管理,比如可能更合理的是按照部門進行劃分網段。

這時就可以使用vlan(virtual local area network)技術,它是一種虛擬區域網技術,主要是為了解決交換機無法隔離廣播的問題。vlan可以將乙個lan劃分成多個邏輯的lan,即vlan,使得每乙個vlan都是乙個隔離的廣播域。各vlan之間不能直接通訊,但vlan內的主機間通訊和原來的lan內通訊是一樣的,這使得廣播幀只會在乙個vlan內擴散,從而有效減小了廣播域,也因此將廣播風暴的影響限制在乙個vlan內。

因為vlan可以將lan劃分成多個vlan,它可以在一定程度上無視地理位置劃分多個網段帶來的不便。通過vlan可以使得區域網的組織變得非常靈活。

例如,假設公司有四層辦公樓,每一樓層都有接入層交換機,它們匯聚到機房,而且每一層都有市場部、財務部、研發部等,使用vlan可以輕鬆地將分布在不同樓層的同一部門組織在同乙個網段內,所有層的市場部在vlan1,所有層的財務部在vlan2,所有層的研發部在vlan3中。

另一方面,每個vlan是乙個隔離的廣播域,同乙個vlan中的計算機在同乙個網段中。這使得vlan之間無法直接通訊,vlan之間想要通訊,需要經過路由,所以vlan技術需要額外配合路由裝置來實現,當然,三層交換機也可以。

TCP IP(一) 乙太網幀協議

乙太網幀說明 乙太網幀大小必須在64 1518位元組 不包含前導碼和定界符 即包括目的位址 6b 源位址 6b 型別 2b 資料 fcs 4b 在內,其中資料段大小在46 1500位元組之間。乙太網幀結構 乙太網由前導碼 7b 定界符 1b 目的位址 6b 源位址 6b 型別 2b 資料 fcs 4...

乙太網協議

乙太網協議 用於10mbps的乙太網,作者以下所說的乙太網均指10m乙太網,而不是100m,1000m的乙太網 乙太網協議有兩種,一種是ieee802.2 ieee802.3,還有一種是乙太網的封裝格式。現代的作業系統均能同時支援這兩種型別的協議格式。因此對我們來說只需要了解其中的一種就夠了,特別是...

乙太網幀識別VLAN

乙太網幀識別vlan是幀的格式 二層資料 格式 目的mac 源mac 型別 長度 資料 fcs 新增幀標識後格式 目的mac 源mac 標籤 型別 長度 資料 fcs 標籤的格式 型別 0x8100 pn cfi vid 注意 pn 使用者優先順序,cfi規範格式識別符號 0代表幀vlan正確,1代...