TCP/IP 學習筆記-1

 

一、網絡分層

以上爲TCP/IP協議的四個分層

每層大概功能:

鏈路層 : 又叫數據鏈路層或網絡接口層,通常包括設備驅動和網絡接口,處理物理接口數據。包含:

  1. ARP協議,地址解析協議
  2. RARP協議,逆地址解析協議

網絡層:有時候又叫着互聯網層,處理網絡中的活動。包括:

  1. IP協議(網際協議),主要被TCP/IP使用
  2. ICMP協議(網絡控制報文協議),IP層用其與其他主機或路由器交換錯誤信息和其他重要信息
  3. IGMP協議(網絡組管理協議),它用來把一個 UDP 數據報多播到多個主機

運輸層: 主要爲兩臺主機上的應用程序提供端到端的通信服務。 主要包含

  1. TCP協議,提供高可靠性的通信傳輸。
  2. UDP協議,提供一種簡單的傳輸協議,不保證數據傳輸的準確性

應用層:負責處理特定的應用。包括:

  1. Telnet原程登陸服務, 對應端口:23
  2. FTP文件傳輸協議,對應端口:69
  3. SMTP,簡單郵件傳送協議
  4. SNMP,簡單網絡管理協議

二、數據報文

以太網數據幀的物理特性是其長度必須在 4 6 ~ 1 5 0 0 字節之間。

爲什麼呢?

  1. 8 0 2 . 3 規 定 數 據 部 分 必 須 至 少 爲 3 8字節,而對於以太網,則要求最少要有 4 6 字 節。
  2. 檢查衝突檢查時間要求不能大於了1500個字節。MTU默認值是1500,不過現在可以通過設置最大改爲9000了,得雙方兩端口都得設置爲9000,如果一方9000一方1500,那麼9000向1500發送數據就會出現丟包現象 。

這裏問題來了,什麼是MTU?

MTU :最大傳輸單元:

以太網和802.3 對數據幀的長度都有一個限制 ,其最大值分別是1500 和 1492字節

從上圖可以看出:以太網最大幀長度爲: 6(目的) + 6(源)  +2 (類型)+ 1500 + 4(校驗) = 1518 字節

三、SLIP (SerialLineIP)

串行線路IP。其規則如下:

  1. 數據報以一個稱作END(0xC0)的特殊字符作爲結束,很多實現,也會傳這個字符
  2. 如果報文中存在0xC0這個字符,就連續傳 0xDB和0X=xDD來取代它,這兩個特殊字符又被叫做SPLIT和ESC字符(和ASCII中字符不想幹)
  3. 如果這個報文中有SPLIT和ESC字符,就連續傳兩個相同字節來替換它

存在的問題: 

  1. 沒有CRC校驗
  2. 無法將自己的ip傳輸出去。
  3. 數據幀中沒有類型字段

改進協議:

CSLIP: 壓縮SLIP 將IP和TCP首部壓縮到3-5個字節 (細節去其他文獻查找)

PPP點對點協議:

每一幀都以標誌字符 0 x 7 e 開始和結束。緊接着是一個地址字節,值始終是 0 x ff ,然後是一 個值爲 0 x 0 3 的控制字節。

1) 當遇到字符 0 x 7 e 時,需連續傳送兩個字符: 0 x 7 d 和 0 x 5 e ,以實現標誌字符的轉義。
2) 當遇到轉義字符 0 x 7 d 時,需連續傳送兩個字符: 0 x 7 d 和 0 x 5 d ,以實現轉義字符的轉義。 3 ) 默 認 情 況 下 , 如 果 字 符 的 值 小 於 0 x 2 0 ( 比 如 , 一 個 A S C I I 控 制 字 符 ), 一 般 都 要 進 行 轉義。例如,遇到字符 0 x 0 1 時需連續傳送 0 x 7 d 和 0 x 2 1 兩個字符(這時,第 6 個比特取補碼後變爲 1,而前面兩種情況均把它變爲 0)。

 

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