您好,登錄后才能下訂單哦!
一、數據鏈路層的定義與其主要完成的功能
1、為什么要設計數據鏈路層?
有了物理層進行二進制位流的透明傳輸,為什么還要設計數據鏈路層呢?在物理層進行二進制傳輸 時,有些問題是其難以解決的。比如,在傳輸過程中由于信號干擾,必然會導致二進制位流出現差錯 (有一定的誤碼率)。物理層也沒有辦法恢復這些差錯,所以,需要一個機制來加強物理層的功能, 來保證物理層可以向上層呈現一條無差錯的、滿足一定服務要求的點到點傳輸,為接下來的層次提供 更可靠的保證。對于上層(比如網絡層來說),數據鏈路層可以解決點到點傳輸的諸多問題,比如差 錯檢測、尋址、對物理鏈路的訪問控制問題(在廣播式通訊中,如何解決信道使用權的問題)。
簡單來說,數據鏈路層是為了發現并解決物理層中數據差錯的問題,在有差錯的鏈路上保證 無差 錯的傳輸。
2、數據鏈路層如何保證數據能夠無差錯的傳輸?
數據鏈路層為了保證數據能夠無差錯的傳輸,其基本工作就是增加額外的信息(協議控制信息)
3、數據鏈路層協議制定的內容是什么?
為了無差錯的傳輸而制定的控制方式的本質就是數據鏈路層的協議(在早期,其也叫做數據鏈路控 制規程)。
協議提供的最基本的功能為:
(1)數據在數據鏈路上的正常傳輸(建立、維護和釋放)
(2)尋址:一個節點要知道數據是否發送給自己。
(3)流量控制:發送方按照接受方的處理能力來發送數據
(4)幀定界(幀同步)
(5)差錯控制
由于前兩個問題在不同的數據鏈路層中其實現方式不同,所以不做重點介紹。
4、實際網絡傳輸的數據流向(通信節點轉發數據的過程)
對于任何一個路由器來說,每一個端口都對應的時物理層與數據鏈路層.
通信節點轉發數據的過程:
(1) A端口接收到一組二進制位流
(2)將二進制位流送到數據鏈路層的實體(軟件的進程或者物理的硬件單元)
(3)幀的同步(劃分幀的邊界,以幀為單位處理。劃分了幀就知道了,目的地址,決定是發 送這個幀還是丟棄這個幀)
(4) 差錯檢測(出錯則丟棄,沒出錯則繼續傳輸)
(5) 從幀中提取有效數據(分組)并送到網絡層的進程
(6)根據分組所攜帶的ip地址進行路由選擇(確定數據的出口)
5、數據鏈路層給高層提供的服務
任何一層給其高層提供的服務有面向連接的和無連接的兩種服務方式。
·無連接服務:
(1)無確認無連接服務:在數據發送之前不需要建立連接,且發送方發送數據后,接收方不需要回應。這種方式由于不需應答,其傳輸效率高,但是可靠性差。適用于誤碼率比較低、實時性高的場合,如大部分有線局域網。
(2)有確認無連接服務:在數據發送之前不需要建立連接,但是發送方發送數據后,接收方需要確認數據已經正確接收并回應,在接收方確認數據正確接收之前,這個過程不會停止。其傳輸效率較低,適用于可靠性不高的網絡環境,比如無線局域網
·面向連接服務:
在發送前需要建立連接,保證數據能夠正常傳輸(依然需要確認),適用于對連接質量要求高的 場合,如廣域網。
6、確認(應答)機制是如何工作的?
在有確認無連接服務和面向連接的服務中,數據的接收都需要確認,他們是如何實現的呢?在 數據發送的過程中,會出現數據正確到達、數據錯誤到達,數據沒有到達三種情況,對于發送方 而言,一旦確認數據正確送達,則數據發送過程停止,若數據沒有正確送達, 則需要重發數據。數據的應答方式有三種:
正向應答:只應答正確的信息
負向應答:只應答錯誤的信息(郵件系統收到退信)
雙向應答:正確錯誤的信息都應答
思考:在數據鏈路層中,最常采用的是哪種應答方式?
小知識:
Iso(開放系統互聯參考模型)關于數據鏈路層的定義:數據鏈路層的目的是為了提供功能上和 規程上的方法,以便建立、維護和釋放網絡實體之間的數據鏈路。
數據鏈路:從數據發送點到數據接受點(點到點point to point)所經過的傳輸途徑。
參考資料: [1]韓立剛,計算機網絡原理創新教程[M],水利水電出版社,2017.1
[2]陳妍,計算機網絡原理[M].西安交通大學,2012.6
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。