差錯控制一個實(shí)用的通信系統(tǒng)必須具備發(fā)現(xiàn)(即檢測)這種差錯的能力,并采取某種措施糾正之,使差錯被控制在所能允許的盡可能小的范圍內(nèi),這就是差錯控制過程,也是數(shù)據(jù)鏈路層的主要功能之一。對差錯編碼(如奇偶校驗(yàn)碼,檢查和或CRC)的檢查,可以判定一幀在傳輸過程中是否發(fā)生了錯誤。一旦發(fā)現(xiàn)錯誤,一般可以采用反饋重發(fā)的方法來糾正。這就要求接收方收完一幀后,向發(fā)送方反饋一個接收是否正確的信息,使發(fā)送方所在此作出是不需要重新發(fā)送的決定,也即發(fā)送方僅當(dāng)收到接收方已正確接收的反饋信號后才能認(rèn)為該幀已經(jīng)正確發(fā)送完畢,否則需要重新發(fā)送直至正確為止。物理信道的突發(fā)噪聲可能完全“淹沒”一幀,即使得整個數(shù)據(jù)幀或反饋信息幀丟失,這將導(dǎo)致發(fā)送方永遠(yuǎn)收不到接收方發(fā)來的反饋信息,從而使傳輸過程停滯.為了避免出現(xiàn)這種情況,通常引入計(jì)時器(Timer)來限定接收方發(fā)回反饋信息的時間間隔,當(dāng)發(fā)送方發(fā)送一幀的同時也啟動計(jì)時器,若在限定時間間隔內(nèi)未能收到接收方的反饋信息,即計(jì)時器超時(Timeout),則可認(rèn)為傳的幀已出錯或丟失,繼而要重新發(fā)送。由于同一幀數(shù)據(jù)可能被重復(fù)發(fā)送多次。為了防止發(fā)生這種危險(xiǎn),可以采用對發(fā)送的幀編號的方法,即賦予每幀一個信號,從而使接收方能從該序號來區(qū)分是新發(fā)送來的幀還是已經(jīng)接收但又重新發(fā)送來的幀,以此來確定要不要將接收到的幀遞交給網(wǎng)絡(luò)層。數(shù)據(jù)鏈路層通過使用計(jì)數(shù)器和序號來保證每幀最終都被正確地遞交給目標(biāo)網(wǎng)絡(luò)層一次。
流量控制流量控制并不是數(shù)據(jù)鏈路層所特有的功能,許多高層協(xié)議中也提供流時控功能,只不過流量控制的對象不同而已。比如,對于數(shù)據(jù)鏈路層來說,控制的是相鄰兩節(jié)點(diǎn)之間數(shù)據(jù)鏈路上的流量,而對于傳輸層來說,控制的則是從源到最終目的之間端的流量。由于收發(fā)雙方各自使用的設(shè)備工作速率和緩沖存儲的空間的差異,可能出現(xiàn)發(fā)送方發(fā)送能力大于接收方接收能力的現(xiàn)象,如若此時不對發(fā)送方的發(fā)送速率(也即鏈路上的信息流量)作適當(dāng)?shù)南拗?,前面來不及接收的幀將被后面不斷發(fā)送來的幀“淹沒”,從而造成幀的丟失而出錯。由此可見,流量控制實(shí)際上是對發(fā)送方數(shù)據(jù)流量的控制,使其發(fā)送率不致超過接收方所能承受的能力。這個過程需要通過某種反饋機(jī)制使發(fā)送方知道接收方是否能跟上發(fā)送方,也即需要有一些規(guī)則使得發(fā)送方知道在什么情況下可以接著發(fā)送下一幀,而在什么情況下必須暫停發(fā)送,以等待收到某種反饋信息后繼續(xù)發(fā)送。
鏈路管理功能主要用于面向連接的服務(wù)。當(dāng)鏈路兩端的節(jié)點(diǎn)要進(jìn)行通信前,必須首先確認(rèn)對方已處于就緒狀態(tài),并交換一些必要的信息以對幀序號初始化,然后才能建立連接,在傳輸過程中則要能維持該連接。如果出現(xiàn)差錯,需要重新初始化,重新自動建立連接。傳輸完畢后則要釋放連接。數(shù)據(jù)連路層連接的建立維持和釋放就稱作鏈路管理。在多個站點(diǎn)共享同一物理信道的情況下(例如在LAN中)如何在要求通信的站點(diǎn)間分配和管理信道也屬于數(shù)據(jù)鏈路層管理的范疇。
異步協(xié)議以字符為獨(dú)立的信息傳輸單位,在每個字符的起始處開始對字符內(nèi)的比特實(shí)現(xiàn)同步,但字符與字符之間的間隔時間是不固定的(即字符之間是異步的)。由于發(fā)送器和接收器中近似于同 一頻率的兩個約定時鐘,能夠在一段較短的時間內(nèi)保持同步,所以可以用字符起始處同步的時鐘來采樣該字符中的各比特,而不需要每個比特再用其它方法同步。異步協(xié)議中因?yàn)槊總€傳輸字符都要添加諸如起始位、校驗(yàn)位及停止位等冗余位,故信道利用率很低,一般用于數(shù)據(jù)速率較低的場合。
同步協(xié)議同步協(xié)議是以許多字符或許多比特組織成的數(shù)據(jù)塊——幀為傳輸單位,在幀的起始處同步,使幀內(nèi)維持固定的時鐘。實(shí)際上該固定時鐘是發(fā)送端通過某種技術(shù)將其混合在數(shù)據(jù)中一并發(fā)送出去的,供接收端從輸入數(shù)據(jù)中分離出時鐘來,實(shí)現(xiàn)起來比較復(fù)雜,這個功能通常是由解調(diào)器來完成。由于采用幀為傳輸單位,所以同步協(xié)議能更有效地利用信道,也便于實(shí)現(xiàn)差錯控制、流量控制等功能。同步協(xié)議又可分為面向字符的同步協(xié)議、面向比特的同步協(xié)議及面向字節(jié)計(jì)數(shù)的同步協(xié)議三種類型。