網絡層----數據平面

前言:

最緊要記得自己爲咩上臺—《激戰》

網絡層基本概括:

網絡層主要功能爲

  • 轉發(將數據從路由器輸入接口轉移到合適的輸出接口) (數據平面)
  • 路由選擇(端到端的路徑選擇),每臺路由器都有一張轉發表,用最長前綴匹配規則來轉發。(控制平面)
    網絡層提供單一的服務:盡力而爲的服務,無帶寬保證,無丟包保證,無順序保證,不定時,無擁塞指示。也即差不多根本無服務。

這篇博客我們主要講的是數據平面的東西。-----轉發

路由器工作原理:

  • 輸入端口:執行終結入物理鏈路的物理層功能,執行查找功能(查詢轉發表決定輸出的端口)
  • 交換結構:將輸入端口連接到輸出端口
  • 輸出端口:存儲從交換結構接收的分組,執行必要的鏈路層和物理層的功能,在輸出鏈路上傳輸這些分組。
  • 路由選擇處理器:執行控制平面的功能,執行路由選擇協議,併爲路由器計算轉發表,在sdn路由器中,路由選擇器負責與遠程控制器通信,接收由其計算的轉發表項,並在輸入端口安裝好。

輸入端口處理:前綴匹配法,使用最長前綴匹配規則

交換

三種交換技術。
1.經內存交換。 (cpu控制)
2.經總線交換。 (一根共享總線將分組直接傳送到輸出接口)
3.經互聯網絡交換。

輸入輸出端口排隊

  • 輸入排隊:到達分組加入輸入端口隊列中,以等待通過交換結構傳輸到輸出端口
  • 輸出排隊:當n個分組將到達同一個輸出端口的時候,發生排隊,路由器會將其緩存起來,若耗盡可用內存則會選擇 棄尾、棄多個或者一個正在排隊的,在緩衝滿之前丟棄一個。

IPV4

IPV4的數據報格式

  • 版本: ip協議版本號
  • 首部長度:用於確認ip數據報中載荷實際開始的地方
  • 服務類型:使用不同類型的ip數據報能夠相互區分
  • 數據報長度:ip數據報的總長度
  • 16bit標識、標誌、13bit片偏移:與ip分片有關,生成一個數據報時,發送主機在爲改數據報設置源和目的地址的同時貼上標示號。發送的每個表示號+1。標誌則是在ip數據報分片後的最後一片的標誌爲0.其他爲1。偏移字段制定該片應放在初始ip數據報的哪個位置。
  • 壽命:用於確保數據報不會在網絡中循環。
  • 上層協議:到達目的地址的時候纔有用,16爲tcp 17爲udp
  • 首部檢驗和:比特誤差
  • 源和目的ip地址:
  • 選項:允許ip地址首部被擴展
  • 數據(有效載荷)
    在這裏插入圖片描述

ip4數據報爲什麼會分片?

原因其實是因爲鏈路層有最大傳輸單元 通常爲1500,而如果數據報大於1500,則該IP數據報需要分片傳輸。在目的主機處重組這些片段。根據(標誌、標識、片偏移字段)。

獲取主機地址:動態主機配置協議(DHCP)

某組織一旦獲取一塊地址,可爲本組織的主機與路由器接口逐個分配ip地址,系統管理員通常手動分配路由器中的ip地址,而主機地址雖然也可以手動分配,但主要採用動態主機配置協議,DHCP允許主機自動獲取ip地址、子網掩碼、默認網關、本地服務器等。

那麼是DHCP是如何交互的呢?

1、DHCP服務器發現:新到達的主機使用DHCP發現報文,向67端口發送udp分組,此時主機不知道所連接網絡的ip地址,使用廣播地址255.255.255.255並使用願地址0.0.0.0。DHCP將該ip數據報傳遞到鏈路層,鏈路層將該幀廣播到所有子網連接的節點。
2、DHCP服務器提供:DHCP服務器收到一個DHCP發現報文,用DHCP提供報文向客戶作出響應。該報文仍然採用廣播地址,提供給客戶報文的事務id、ip地址、網絡掩碼、以及ip地址的租期。
3、DHCP請求:客戶從一個或者多個dhcp服務器中選擇一個,並向選中的服務器用dhcp請求報文進行響應
4、dhcp ack:服務器用DHCP ACK報文對於DHCO請求報文進行響應
至此,交互完成,客戶能使用所分配的地址。

網絡地址轉換(NAT)

通常家用路由器都含有NAT,NAT路由器對外界如同一個單一ip地址的單一設備。NAT通過isp的dhcp服務器得到自己的ip地址。
而NAT路由器下的家庭網絡則由NAT路由器中的DHCP服務器提供虛擬的ip地址,NAT路由器將NAT轉換表,在表項中包含端口號以及其ip地址。

一個用戶訪問公網中某個資源的過程:

NAT路由器收到該數據報,將其源地址改爲從nat路由器的地址,端口號修改,並且存儲到NAT轉發表中然後轉發到公網中,隨後收到響應後從NAT轉發表中找到該記錄,然後修改目的地址和端口號,轉發給用戶。
NATS其實就是用端口來區分不同的用戶主機的報文

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章