幀定界檢視原始碼討論檢視歷史
幀定界就是標識幀的開始與結束,目的是讓接收方能從接收到的二進制比特流中區分出幀的起始與終止。 異步通信中以幀作為發送單位,接收端必須隨時做好接收幀的準備。這時,幀的首部必須設有一些特殊的比特組合,使得接收端能夠找出一幀的開始,這種方式稱為幀定界,也稱為「幀同步」。協議不同,幀的長短和結構也有差別,但無論如何必須對幀進行定界。
- 中文名:幀定界
- 特 點:字節計數法
- 類 型:以幀作為發送單位
簡介
幀定界還包含確定幀的結束位置。有兩種方法。一種是在幀的尾部設有某種特殊的比特組合來標誌幀的結束。或者在幀首部中設有幀長度的字段。需要注意的是,在異步發送幀時,並不是說發送端對幀中的每一個字符都必須加上開始位和停止位後再發送出去,而是指,發送端可以在任意時間發送一個幀,而幀與幀之間的時間間隔也可以是任意的。在一幀中的所有比特是連續發送的。發送端不需要在發送一幀之前和接收端進行協調(不需要先進行比特同步)。每個幀開始發送的時間可以是任意的以字符為單位發送以幀為單位發送幀開始幀結束。
常用的幀同步方法有:使用字符填充的首尾定界符法、使用比特填充的首尾標誌法、違法編碼法和字節計數法。下面我們介紹四種方法:
1)字節計數法
這種方法首先用一個特殊字段來表示一幀的開始,然後使用一個字段來標明本幀內的字節數。當接收端的數據鏈路層讀到字節計數值時,就知道了後面跟隨的字節數,從而可確定幀結束的位置。在字節計數法中,「字節計數」字段是十分重要的,必須採取措施來保證它不會出錯。因為它一旦出錯,就會失去幀尾的位置,特別是其錯誤值變大時不但會影響本幀,而且會影響隨後的幀,造成災難性的後果。
2)使用字符填充的首尾定界符方法
這種方法用一些特定的字符來定界一幀的開始和結束。為了不將信息位中出現的特殊字符被誤碼判為幀的首尾定界符,可以在前面填充一個轉義符來區分[1] 。
3)使用比特填充的首尾標誌方法
這種方法用一組特定的比特模式(如,01111110)來標誌一幀的開頭和結束。為了不使信息位中出現的該特定模式被誤判為幀的首尾標誌,可以採用比特填充的方法來解決。
4)違例編碼法
這在物理層採用特定的比特編碼方法時採用。比如說,採用曼徹斯特編碼方法時,將數據比特1編碼成高、低電平對,而將數據比特0編碼成低、高電平對。高——高或低——低電平對在數據比特的編碼中都是違例的,可以借用這些違例編碼的序列來定界幀的開始和結束。
視頻
華為認證-不同的鏈路封裝成不同的幀