當前位置:外匯行情大全網 - 外匯開戶 - 數據鏈路層的鏈路控制過程

數據鏈路層的鏈路控制過程

數據鏈路控制協議也叫鏈路通信協議,是OSI參考模型中的數據鏈路層協議。鏈路控制協議可以分為異步協議和同步協議。

數據鏈路層的主要協議有:

(1)點對點協議;

(2)以太網;

(3)高級數據鏈路協議;

(4)幀中繼;

(5)異步傳輸模式;面向字符的同步協議是最早的同步協議,其典型代表是IBM的二進制同步通信(BISYNC或BSC)協議,通常也稱為基本協議。隨後,ANSI和ISO都提出了類似的相應標準。ISO標準稱為數據通信系統基本模式控制程序,即ISO 1745標準。任何鏈路層協議都可以由三部分組成:鏈路建立、數據傳輸和鏈路刪除。為了實現鏈路管理和同步等各種功能,如建鏈和斷鏈,除了數據塊和消息的正常傳輸外,還需要壹些控制字符。BSC協議使用ASC2或EBCDIC字符集定義的傳輸控制(TC)字符來實現相應的功能。這些傳輸控制字符的標記、名稱、ASC2代碼值和EBCDIC代碼值見表3.1。每個傳輸控制字符的功能如下:

SOH(頭的開始):前言或頭開始,用來表示壹個消息(塊)的頭信息或頭的開始。

STX(文本開始):文本的開始,它標誌著報頭信息的結束和消息(塊)文本的開始。

ETX(文本結束):文本結束,標誌著消息(塊)文本的結束。

EOT(傳輸結束):交付後,用於表示壹個或多個文本塊的結束,並拆除鏈接。

ENQ(詢問):詢問,用於請求遠程站給出響應,該響應可能包括該站的身份或狀態。

ACK(Acknowledge):確認,其中接收方發送壹個肯定的確認,作為對正確接收來自發送方的消息(塊)的響應。

DLE(數據鏈轉義):轉義,用於修改緊隨其後的有限數量的字符的含義。用於在BSC中實現透明的數據傳輸,或者在10傳輸控制字符不夠用時提供新的轉義傳輸控制字符。

NAK(否定確認):拒絕,接收方發送的否定確認,作為對發送方錯誤接收的回應。

SYN(Synchronous):諧音,用於同步協議中,實現節點之間的字符同步,或者在列數據傳輸過程中保持同步。

ETB(傳輸塊結束):塊或組的結束,當消息被分成多個數據塊時,表示壹個數據塊的結束。

BSC協議將鏈路上傳輸的信息分為數據報文和監控報文,也分為正向監控和反向監控。每個報文至少包含壹個傳輸控制字符,用於確定報文中信息的性質或實現某種控制功能。

數據消息和文本。文本是要傳遞的有用的數據信息,而消息與文本傳遞有關。

有時,不需要報頭來處理相關的輔助信息,對於不超過長度限制的消息,僅壹個數據塊可以用作傳輸單元。接收方必須對收到的每個數據塊進行確認,發送方只有在收到返回的確認後才能發送下壹個數據塊。數據塊格式的BSC協議有五種,如圖3.5所示。

在BSC協議中,所有傳輸的數據都遵循至少兩個SYT字符,以便接收方可以實現字符同步。報頭字段用於描述數據包標識符(序列號)和數據文本段的地址。所有數據塊在塊尾限定符(ETX或ETB)後沒有塊校驗字符BCC(塊校驗字符)。BCC可以是垂直奇偶校驗或16位CRC,校驗範圍從STX開始,到ETX或ETB結束。

當發送的消息是二進制數據而不是字符串時,二進制數據中與傳輸控制字符相似的位串會導致傳輸混亂。為了在二進制數據中允許與傳輸控制字符相同的數據(即數據的透明性),可以在每壹幀中真正的傳輸控制字符(SYN除外)之前添加DLE轉義字符。發送時,如果文本中出現了具有相同DLE字符的二進制位串,可以插入壹個額外的DLE字符進行標記。在接收端,執行相同的檢測。如果發現單個DLE字符,則知道後續的DLE是數據,並且在進壹步處理之前刪除其中的壹個。

正向和反向監控消息有四種格式。

(1)積極確認和選擇性響應:

同步|同步|確認

(2)否定確認和選擇性反應:

同步|同步|無

(3)輪詢/選擇請求:

SYN | SYN | P/S前綴|車站地址| ENQ

(4)拆卸鏈條:

合成|合成| EOT

監控消息通常由單個傳輸控制字符或由幾個其他字符引導的單個傳輸控制字符組成。前導字符統稱為前綴,包含標識符(序列號)、地址信息、狀態信息和其他必需的信息。ACK和NAK監控消息的功能首先是作為對先前發送的數據塊是否被正確接收的響應,因此它包含標識符(序列號);其次,作為對所選擇的監控信息的響應,ACK指示所選擇的站可以接收數據塊,而NAK指示它不能。ENQ用於輪詢和選擇監控消息。在多結構中,投票站或選擇站的地址在ENQ字符之前。EOT監控消息用於標記消息的結束,並劃分兩個站之間的邏輯鏈路。

面向字符的同步協議最大的缺點是與特定的字符編碼集聯系過於緊密,不利於兼容。為了實現數據的透明性,字符填充方法實現起來比較麻煩,並且還依賴於所采用的字符編碼集。另外,由於BSC是半雙工協議,其鏈路傳輸效率很低,即使物理鏈路支持全雙工傳輸,BSC也無法使用。然而,BSC協議仍然廣泛應用於面向終端的網絡系統,因為它需要最小的緩沖存儲容量。20世紀70年代初,IBM率先提出了面向比特的同步數據鏈路控制協議SDLC。隨後,ANSI和ISO都采用並發展了SDLC,並提出了各自的標準:ANSI的ADCCP(高級數據控制規程)和ISO的HDLC(高級數據鏈路控制規程)。鏈路控制協議側重於被分割成物理塊或分組的數據的邏輯傳輸,這些物理塊或分組由開始標誌引導並由結束標誌結束,也稱為幀。幀是每個控制、每個響應的工具,也是協議傳輸所有信息的媒介。所有面向比特的數據鏈路控制協議都采用統壹的幀格式,數據和單獨的控制信息都以幀的形式傳輸。

每幀前後都有壹個標誌代碼01111110,用來表示幀的開始和結束,並使幀同步。標誌代碼不允許出現在框架內部,以免造成不正常的含義。為了保證標識碼的唯壹性,同時兼顧幀內數據的透明性,可以采用“0位插入法”來解決這個問題。這種方法監控發送端除標識碼以外的所有字段。當發現連續出現五個“1”時。

,在其後面插入壹個“0”,然後繼續發送後續的比特流。在接收端,除了開始標誌代碼之外的所有字段也被監控。當連續出現5個“1”時,如果出現下壹位“0”,將自動刪除,恢復原始比特流。如果發現連續六個“1”,可能是插入的“0”被誤改成了“1”,也可能是收到了幀終止標誌碼。後兩種情況可以通過幀中的幀校驗序列來進壹步區分。“0位插入法”原理簡單,非常適合硬件實現。在面向比特協議的幀格式中,有壹個8比特的控制字段,可以用來定義編碼方式下豐富的控制命令和響應,相當於BSC協議中傳輸許多控制字符和轉義序列的功能。作為典型的面向比特的數據鏈路控制協議,HDLC具有以下特點:協議不依賴於任何字符編碼集;數據報文可以透明傳輸,用於實現透明傳輸的“0位插入法”易於硬件實現;全雙工通信,無需等待確認即可連續發送數據,數據鏈路傳輸效率高;對所有幀進行CRC校驗,對信息幀進行編號,可以杜絕遺漏或重復,傳輸可靠性高;傳輸控制功能與處理功能分離,靈活性大,控制功能完善。由於上述特點,HDLC被廣泛用作網絡設計中的數據鏈路控制協議。

HDLC的運作模式

HDLC是壹種通用數據鏈路控制協議。建立數據鏈路時,允許選擇特定的操作模式。所謂的鏈接操作模式,通俗地說,是指壹個站點以主模式或從模式或兩者兼有的模式操作。鏈路上用於控制的目的站稱為主站,由主站控制的其他站稱為從站。主站負責組織數據流並恢復鏈路上的錯誤。主站發送給從站的幀稱為命令幀,而從站返回給主站的幀稱為響應幀。具有多個站的鏈路通常使用輪詢技術。輪詢其他站的站稱為主站,每個站都可以是點到點鏈路中的主站。主站比從站需要更多的邏輯功能,所以當終端連接到主站時,主站總是主站。當壹個站連接到多個鏈路時,它可能是某些鏈路的主站,也可能是其他鏈路的從站。有些可以同時具備主站和從站的功能。這個站叫做聯合站。組合站之間用於信息傳輸的協議是對稱的,即主站和從站在鏈路上具有相同的傳輸控制功能。這也叫平衡運行,是計算機網絡中壹個非常重要的概念。相比之下,那種操作分為主站和從站,功能不同,稱為不平衡操作。

HDLC常用的操作模式有三種:(1)正常響應模式NRM是壹種不平衡數據鏈路操作模式,有時也稱為不平衡正常響應模式。這種操作模式適用於面向終端的點對點或點對多點鏈路。在這種操作模式下,傳輸過程由主站啟動,從站只能在收到主站的命令幀後向主站發送信息作為響應。響應信息可以由壹個或多個幀組成。如果信息由多幀組成,應指出哪壹幀是最後壹幀。主站負責管理整個鏈路,有權輪詢、選擇從站和向從站發送命令,還負責控制超時、重傳和各種恢復操作。NRM的運行模式如圖3.7(a)所示。(2)異步響應模式ARM,也是壹種不平衡數據鏈運行模式。與NRM不同,ARM的傳輸過程是由從站啟動的。從站發送給主站的壹個幀或壹組幀可以包含信息,或者它可以是僅為控制目的而發送的幀。在這種工作模式下,從站控制超時和重發。此模式對於采用輪詢模式的多站蓮花路至關重要。ARM的工作模式如圖3.7(b)所示。(3)異步平衡模式ABM,這是壹種允許任何節點開始傳輸的操作模式。為了提高鏈路傳輸效率,節點需要更高的雙向信息傳輸。在這種操作模式下,任何站都可以在任何時候開始傳輸操作,每個站都可以既是主站又是從站,每個站都是組合站。每個站都有相同的協議集,任何站都可以發送或接收命令並給出響應,每個站對錯誤恢復過程都有相同的責任。

HDLC的幀格式

在HDLC,數據和控制消息以標準的幀格式傳輸。HDLC中的幀類似於BSC的字符塊,但BSC協議中的數據報文和控制報文是獨立傳輸的,HDLC中的命令要以統壹的格式傳輸。壹個完整的HDLC幀由標誌字段(F)、地址字段(A)、控制字段(C)、信息字段(I)、幀校驗序列字段(FCS)等組成。其格式見圖3.8。

(1)標誌字段(F):標誌字段是0111110的位模式,以標記壹幀的開始和前壹幀的結束。標誌字段也可以用作幀之間的填充字符。通常,在沒有執行幀傳輸的時刻,信道仍然處於活動狀態。在這種狀態下,發送方壹直發送標誌字段,可以認為開始了新的幀傳輸。采用“0位插入法”可以實現0數據的透明傳輸。

(2)地址字段(a):地址字段的內容取決於所采用的操作模式。在操作模式中,有主站、從站和聯合站。每個從站和組合站被分配壹個唯壹的地址。命令幀中的地址字段攜帶其它站的地址,而響應幀中的地址字段攜帶自己站的地址。壹個地址也可以分配給壹個以上的站,稱為組地址。通過使用組地址發送的幀可以被該組中擁有該組的所有站接收。但是當壹個站或組合站發送響應時,它仍然應該使用其唯壹的地址。所有“1”地址也可以用來表示包含所有站點的地址,稱為廣播地址,包含廣播地址的幀被傳輸到鏈路上的所有站點。此外,還規定所有“0”地址為無站地址,不分配給任何站,僅用於測試。

(3)控制字段(c):控制字段用於形成各種命令和響應,以監視和控制鏈路。發送方的主站或組合站使用控制字段通知被尋址的從站或組合站執行約定的操作;相反,從站使用該字段作為對命令的響應,以報告完成的操作或狀態的變化。這片土地是HDLC的關鍵。控制字段中的第壹比特或第壹和第二比特指示傳輸幀的類型。HDLC有三種不同類型的幀:信息幀(I幀)、監控幀(S幀)和無編號幀(U幀)。控制字段的第五位是P/F位,即輪詢/最終位。

(4)信息字段(I):信息字段可以是任何二進制位串。比特串的長度不受限制,其上限由FCS字段或通信站的緩沖容量決定,國際上普遍采用1000~2000比特;而下限可以是0,即沒有信息字段。但是,監控幀(S幀)規定不能有信息字段。(5)幀校驗序列字段(FCS):幀校驗序列字段可以使用16 CRC來校驗兩個標誌字段之間整個幀的內容。FCS的生成多項式CCITT V4.1建議為x 16+x 12+x 5+1。

HDLC的框架類型

HDLC有三種不同類型的幀:信息幀(I幀)、監控幀(S幀)和無編號幀(U幀)。各幀中控制字段的格式和位定義見圖3.9。

(1)信息幀(I幀):信息幀用於傳輸有效信息或數據,通常簡稱為I幀。I幀用控制字的第壹位“0”來標記。信息幀的控制字段中的N(S)用於存儲發送幀的序列號,使得發送方可以連續發送多個幀,而無需等待確認。N(R)用於存儲接收機預期接收到的下壹幀的序列號,N(R)=5,表示接收機將在下壹幀接收到5號幀,換句話說,接收到5號幀之前的幀。N(S)和N(R)都是3位二進制碼,可以取0到7的值。

(2)監控幀(S幀):監控幀用於差錯控制和流量控制,通常稱為S幀。S幀用控制字段的第壹位和第二位標記為“10”。帶有信息字段的s幀,只有6字節或48位。S幀的控制字段的第三和第四位是S幀類型碼,* * *有四種不同的碼,分別代表:

00—— RR,由主站或從站發送。主站可以使用RR型S幀輪詢從站,即我要從站發送編號為N(R)的I幀,如果有這樣的幀,就發送;從站也可以用RR型S幀來響應,指示從站想要從主站接收的下壹個I幀的編號是N(R)。

01-拒絕(REJ),由主站或從站發送,用於請求發送方重新發送編號為N(R)的幀和所有後續幀,這也意味著N(R)之前的I幀已經被正確接收。

10——接收未就緒(RNR),表示已經接收到編號小於N(R)的I幀,但處於忙碌狀態,不準備接收編號為N(R)的I幀,可用於控制鏈路流量。11-選擇性拒絕(SREJ),要求發送方發送壹個編號為N(R)的單個I幀,並暗示其編號的所有I幀都已確認。

可以看出,接收到的RR型S幀和接收到的RNR型S幀主要有兩個作用:第壹,這兩種類型的S幀用於指示從站是否準備好接收信息;其次,確認所有接收到的數量小於N(R)的I幀。拒絕REJ和選擇性地拒絕SREJ-type S幀用於向另壹個站指示已經發生了錯誤。REJ幀在GO-back-N策略中用於請求在N(R)被重傳之前的幀已經被確認。當接收到N(S)等於REJ類型S幀的N(R)的I幀時,可以清除REJ狀態。SREJ幀用於選擇重傳策略。當接收到N(R)的I幀時,應該消除SREJ狀態。

(3)無編號幀(U-frame):無編號幀因其控制字段不含編號N(S)和N(R)而得名,簡稱U-frame。U-frame用於提供鏈路建立、拆除和各種控制功能,由5 m位定義(M1,M2,M3,M4,M5,也稱為校正位)。五個M位可以定義32個附加命令功能或32個響應功能,但其中許多是空的。

  • 上一篇:室外陽臺花園的設計
  • 下一篇:上外金融系畢業去向
  • copyright 2024外匯行情大全網