數據鏈路層協議之點對點協議 PPP

點對點協議 PPP

對於點對點的鏈路,目前使用得最廣泛的數據鏈路層協議是點對點協議 PPP (Point-to-Point Protocol)。在這裏插入圖片描述
用戶使用撥號電話線接入互聯網時, 用戶計算機和 ISP 進行通信時所使用的數據鏈路層協議就是 PPP 協議。
PPP 協議在1994年就已成爲互聯網的正式標準。

1.PPP 協議應滿足的需求

簡單 —— 這是首要的要求。
封裝成幀 —— 必須規定特殊的字符作爲幀定界符。
透明性 —— 必須保證數據傳輸的透明性。
多種網絡層協議 —— 能夠在同一條物理鏈路上同時支持多種網絡層協議。
多種類型鏈路 —— 能夠在多種類型的鏈路上運行。
差錯檢測 —— 能夠對接收端收到的幀進行檢測,並立即丟棄有差錯的幀。
檢測連接狀態 —— 能夠及時自動檢測出鏈路是否處於正常工作狀態。
最大傳送單元 —— 必須對每一種類型的點對點鏈路設置最大傳送單元 MTU 的標準默認值,促進各種實現之間的互操作性。
網絡層地址協商 —— 必須提供一種機制使通信的兩個網絡層實體能夠通過協商知道或能夠配置彼此的網絡層地址。
數據壓縮協商 —— 必須提供一種方法來協商使用數據壓縮算法。

2.PPP 協議不需要的功能

糾錯
流量控制
序號
多點線路
半雙工或單工鏈路

3.PPP 協議的組成

PPP 協議有三個組成部分:

(1) 一個將 IP 數據報封裝到串行鏈路的方法。
(2) 鏈路控制協議 LCP (Link Control Protocol)。
(3) 網絡控制協議 NCP (Network Control Protocol)。

4.PPP 協議的幀格式

在這裏插入圖片描述
PPP 幀的首部和尾部分別爲 4 個字段和 2 個字段。
標誌字段 F = 0x7E (符號“0x”表示後面的字符是用十六進制表示。十六進制的 7E 的二進制表示是 01111110)。
地址字段 A 只置爲 0xFF。地址字段實際上並不起作用。
控制字段 C 通常置爲 0x03。
PPP 是面向字節的,所有的 PPP 幀的長度都是整數字節。

5.透明傳輸問題

當 PPP 用在同步傳輸鏈路時,協議規定採用硬件來完成比特填充(和 HDLC 的做法一樣)。
當 PPP 用在異步傳輸時,就使用一種特殊的字符填充法。

零比特填充

PPP 協議用在 SONET/SDH 鏈路時,使用同步傳輸(一連串的比特連續傳送)。這時 PPP 協議採用零比特填充方法來實現透明傳輸。
在發送端,只要發現有 5 個連續 1,則立即填入一個 0。
接收端對幀中的比特流進行掃描。每當發現 5 個連續1時,就把這 5 個連續 1 後的一個 0 刪除。在這裏插入圖片描述

字符填充

將信息字段中出現的每一個 0x7E 字節轉變成爲 2 字節序列 (0x7D, 0x5E)。
若信息字段中出現一個 0x7D 的字節, 則將其轉變成爲 2 字節序列 (0x7D, 0x5D)。
若信息字段中出現 ASCII 碼的控制字符(即數值小於 0x20 的字符),則在該字符前面要加入一個 0x7D 字節,同時將該字符的編碼加以改變。 在這裏插入圖片描述

不提供使用序號和確認的可靠傳輸

PPP 協議之所以不使用序號和確認機制是出於以下的考慮:
在數據鏈路層出現差錯的概率不大時,使用比較簡單的 PPP 協議較爲合理。
在因特網環境下,PPP 的信息字段放入的數據是 IP 數據報。數據鏈路層的可靠傳輸並不能夠保證網絡層的傳輸也是可靠的。
幀檢驗序列 FCS 字段可保證無差錯接受。

6.PPP 協議的工作狀態

在這裏插入圖片描述
當用戶撥號接入 ISP 時,路由器的調制解調器對撥號做出確認,並建立一條物理連接。
PC 機向路由器發送一系列的 LCP 分組(封裝成多個 PPP 幀)。
這些分組及其響應選擇一些 PPP 參數,並進行網絡層配置,NCP 給新接入的 PC 機分配一個臨時的 IP 地址,使 PC 機成爲因特網上的一個主機。
通信完畢時,NCP 釋放網絡層連接,收回原來分配出去的 IP 地址。接着,LCP 釋放數據鏈路層連接。最後釋放的是物理層的連接。
可見,PPP 協議已不是純粹的數據鏈路層的協議,它還包含了物理層和網絡層的內容。

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