計算機網路之鏈路層

2021-09-19 19:06:45 字數 2585 閱讀 8760

主機之間資料的傳輸:

基本概念

鏈路:一條點到點的物理線路段,中間沒有任何其他的交換結點。 一條鏈路只是一條通路地乙個組成部分。

資料鏈路:除了物理線路外,還必須有通訊協議來控制這些資料的傳輸。把實現這些協議的硬體和軟體加到鏈路上,就構成了資料鏈路。

介面卡:也就是網絡卡,用來實現資料鏈路上的一些協議。

幀:資料鏈路層上傳送的就是幀。

(1) 封裝成幀

所謂封裝成幀,就是在ip資料報的前後分別新增乙個首部和乙個尾部,用來標記幀的開始和結束。

圖示如下:

(2) 透明傳輸

這裡" 透明 " 是指:乙個實際存在的事物好像不存在似的。

原因:幀使用首部和尾部進行定界,若幀的資料部分包含有首部和尾部的相同的內容,就會造成誤判。

措施:如果在資料出現和首部、尾部相同的內容前面加入轉移字元esc。 如果出現和轉義字元一樣的內容,就在該字元前面再新增乙個轉義字元。 這就是所謂的透明傳輸。

圖示:

而在資料的接收端,會將接收到的資料中的所有轉義字元esc刪除,如果碰到兩個轉義字元,則刪除第乙個。這樣,在接收端就接收到了傳送端透明傳輸之前的原始資料。

(3) 差錯檢測

目前資料鏈路層廣泛使用了迴圈冗餘檢測(crc)來檢查位元差錯。

問題:在資料的傳輸過程中可能會產生位元差,如0變成1,1變成0。在一段時間內,傳輸錯誤的位元佔所傳輸位元總數的比率稱為誤位元速率 ber。

解決:使用crc迴圈冗餘檢測。

迴圈冗餘檢驗(crc):

在傳送端,先把資料劃分為祖,假定每組k個位元。現假定待傳送的資料m = 101001(k=6)。crc運算就是在資料m後面新增提供差錯檢測的n位冗餘碼,然後構成乙個幀傳送出去,一共傳送(k+n )位。在所要傳送的資料後新增冗餘碼,顯然增大了資料傳輸的開銷,但卻可以進行差錯檢測。當傳輸可能出現差錯時,付出的代價往往是很值得的。

n位冗餘碼計算:

用二進位制的模2運算進行2^n乘m的運算,這相當於在m後面新增n個0 ,得到的(k+n )位的數除於收發雙方實現商定的長度為(n + 1)位的除數p,得出的商是q而餘數是r(n位,比p少一位)。

除數p:

用生成多項式p(x)表示上面的除數(假定n+1位),p(x) = x^3 + x^2 + 1則p = 1101。

即p(x) = x^n+ x^(n-2) + ….+ x^2 +1 , p = 101…101。

檢測:

在接收端把收到的資料以幀為單位進行crc檢測:把收到的每乙個幀除於同樣的除數(模2運算),然後檢查得到的餘數r,如果傳輸過程無差錯,經過crc檢測得到的餘數肯定是0 。

(1) 點對點通道

一種一對一的通訊,不發生碰撞,使用ppp協議 ( point to point protocol )

現在全世界使用的最多的資料鏈路層協議就是點對點協議ppp(point to point protocol),我們大多數使用者使用的撥號**線接入網際網路時,一般使用的就是ppp協議。

(2) 廣播通道

1. 關於乙太網和區域網

乙太網:乙太網是通訊協議標準,是一種星型拓撲結構的區域網。

區域網:在較小範圍內組建的網路,如一棟樓,校園等。

區域網中採用廣播通道,一台pc機傳送資料給另一台pc機,同一區域網中的計算機都能接收到該資料。

即一對多通訊,乙個節點傳送的資料能被廣播通道上所有的節點接收到。

所有節點都在同乙個廣播通道上傳送資料,因此需要有專門的控制方法進行協調,避免發生衝突(也叫碰撞)。

主要有兩種控制方法進行協調,乙個是使用通道復用技術,乙個是使用csma/cd協議。

carrier sense(載波監聽) : 每個主機都不停地監聽通道。在傳送前,若監聽到通道正在使用,則必須等待。

collision detection(碰撞檢測) :傳送過程中,採用邊傳送,邊檢測策略。若檢測到通道上已有其他主機正在傳送資料,就表示發生了碰撞。

發生碰撞後:停止傳送,並採用截斷二進位制指數退避演算法來確定等待時間。

計算機網路鏈路層

來自 tcp ip詳解 學習筆記 第2章 鏈路層 資料鏈路層有三個目的 1 為ip模組傳送和 接收ip資料報。2 為arp模組傳送arp請求和接收arp應答。3 為rarp傳送rarp請 求和接收rarp應答 arp叫做位址解析協議,是用ip位址轉mac位址的一種協議。rarp則叫做逆位址解析協議,...

計算機網路6 鏈路層

喜歡這篇文章嗎?喜歡的話去看博主的置頂部落格,即可依據分類找到此文章的原版得到更好的體驗,title 計算機網路6 鏈路層 mathjax true date 2020 03 19 20 03 11 categories 計算機網路 tags 計算機網路 keywords 計算機網路 就是一串數字 ...

《計算機網路》之資料鏈路層

前面說過,資料鏈路層的任務是 在兩個相鄰節點之間傳送資料時,資料鏈路層將網路層交下來的ip資料報組裝成幀 frame 在兩個相鄰節點間的鏈路上 透明 地傳送幀中的資料。資料鏈路層協議的三個基本問題是 封裝成幀 透明傳輸和差錯檢測。差錯檢測廣泛使用迴圈冗餘檢驗crc cyclic redundancy...