在兩個(gè)網(wǎng)絡(luò)實(shí)體之間提供數(shù)據(jù)鏈路連接的創(chuàng)建、維持和釋放管理。構(gòu)成數(shù)據(jù)鏈路數(shù)據(jù)單元(frame:數(shù)據(jù)幀或訊框),并對(duì)幀定界、同步、收發(fā)順序的控制。傳輸過(guò)程中的流量控制,差錯(cuò)檢測(cè)和差錯(cuò)控制等方面。 只提供導(dǎo)線的一端到另一端的數(shù)據(jù)傳輸。
數(shù)據(jù)鏈路層會(huì)在 frame 尾端置放檢查碼(parity,sum,CRC)以檢查實(shí)質(zhì)內(nèi)容,將物理層提供的可能出錯(cuò)的物理連接改造成邏輯上無(wú)差錯(cuò)的數(shù)據(jù)鏈路,并對(duì)物理層的原始數(shù)據(jù)進(jìn)行數(shù)據(jù)封裝。
數(shù)據(jù)鏈路層中的數(shù)據(jù)封裝是指:封裝的數(shù)據(jù)信息中,包含了地址段和數(shù)據(jù)段等。地址段含有點(diǎn)對(duì)點(diǎn)發(fā)送節(jié)點(diǎn)和接收節(jié)點(diǎn)的地址(如MAC),控制段用來(lái)表示數(shù)格連接幀的類型,數(shù)據(jù)段包含實(shí)際要傳輸?shù)臄?shù)據(jù)。
1.幀同步功能
為了使傳輸中發(fā)生差錯(cuò)后只將出錯(cuò)的有限數(shù)據(jù)進(jìn)行重發(fā),數(shù)據(jù)鏈路層將比特流組織成以幀為單位傳送。幀的組織結(jié)構(gòu)必須設(shè)計(jì)成使接收方法能夠明確的從物理層收到比特流中對(duì)其進(jìn)行識(shí)別,也即能從比特流中區(qū)分出幀的起始與終止,這就是幀同步要解決的問(wèn)題。由于網(wǎng)絡(luò)傳輸中很難保證計(jì)時(shí)的正確和一致,所以不能采用依靠時(shí)間間隔關(guān)系來(lái)確定一幀的起始與終止的方法。
2.差錯(cuò)控制功能
通信系統(tǒng)必須具備發(fā)現(xiàn)(即檢測(cè))差錯(cuò)的能力,并采取措施糾正之,使差錯(cuò)控制在所能允許的盡可能小的范圍內(nèi),這就是差錯(cuò)控制過(guò)程,也是數(shù)據(jù)鏈路層的主要功能之一。
接收方通過(guò)對(duì)差錯(cuò)編碼(奇偶校驗(yàn)碼或CRC碼)的檢查,可以判定一幀在傳輸過(guò)程中是否發(fā)生了差錯(cuò)。一旦發(fā)現(xiàn)差錯(cuò),一般可以采用反饋重發(fā)的方法來(lái)糾正。這就要求接受方收完一幀后,向發(fā)送方反柜一個(gè)接收是否正確的信息,使發(fā)送方據(jù)此做出是否需要重新發(fā)送的決定。發(fā)送方僅當(dāng)收到接收方以正確接收的反饋信號(hào)后才能認(rèn)為該幀已經(jīng)正確發(fā)送完畢,否則需要重發(fā)直至正確為止。
物理信道的突發(fā)噪聲可能完全“淹沒(méi)”一幀,即使得整個(gè)數(shù)據(jù)幀或反饋信息幀丟失,這將導(dǎo)致發(fā)送方永遠(yuǎn)收不到接受方發(fā)來(lái)的信息,從而使傳輸過(guò)程停滯。為了避免出現(xiàn)這種情況,通常引入計(jì)時(shí)器(Timer)來(lái)限定接收方發(fā)回方反柜消息的時(shí)間間隔,當(dāng)發(fā)送方發(fā)送一幀的同時(shí)也啟動(dòng)計(jì)時(shí)器,若在限定時(shí)間間隔內(nèi)未能收到接收方的反柜信息,即計(jì)時(shí)器超時(shí)(Timeout),則可認(rèn)為傳出的幀以出錯(cuò)或丟失,就要重新發(fā)送。
由于同一幀數(shù)據(jù)可能被重復(fù)發(fā)送多次,就可能引起接收方多次收到同一幀并將其遞交給網(wǎng)絡(luò)層的危險(xiǎn)。為了防止防止發(fā)生這種危險(xiǎn),可以采用對(duì)發(fā)送的幀編號(hào)的方法,即賦予每幀一個(gè)序號(hào),從而使接收方能從該序號(hào)來(lái)區(qū)分是新發(fā)送來(lái)的幀還是已經(jīng)接受但又重發(fā)來(lái)的幀,以此來(lái)確定要不要將接收到的幀遞交給網(wǎng)絡(luò)層。數(shù)據(jù)鏈路層通過(guò)使用計(jì)數(shù)器和序號(hào)來(lái)保證每幀最終都能被正確地遞交給目標(biāo)網(wǎng)絡(luò)層一次。
3、流量控制功能