計算機網路【2】數據鏈路層

結點:主機、路由器
鏈路:兩個節點的物理通道
數據鏈路:邏輯通道,把實現 控制數據傳輸協議的硬件和軟件加到鏈路上就構成數據鏈路
幀:鏈路層的協議數據單元,封裝網絡層數據報

數據鏈路層在物理層提供服務的基礎上向網絡層提供服務,其最基本的功能是將源自網絡層來的數據可靠地傳輸到相鄰節點的目標機網絡層,其主要作用是加強物理層傳輸原始比特流的功能,將物理層提供的可能出錯的物理連接改造稱邏輯上無差錯的數據鏈路,使之對網絡層變現為一條無差錯的鏈路。

功能:

  • 為網絡層提供服務。無確認無連接服務,有確認無連接服務,有確認有面向連接服務。有連接一定有確認
  • 鏈路管理,即連接的建立、維持、釋放(用于面向連接的服務)
  • 組幀
  • 流量控制
  • 差錯控制(幀錯/位錯)

封裝成幀和透明傳輸

封裝成幀:在首部和尾部添加幀定界符,確定幀的界限
幀同步:接收方能從接收的二進制比特流中區分出幀的起始和終止

最大傳送單元MTU:數據部分不能超過MTU
組幀的四種方法:

  1. 字符計數法
  2. 字符(節)填充法
  3. 零比特填充法
  4. 違規編碼法

透明傳輸:不管數據是什么樣的比特組合都應當能夠在鏈路上傳送。

字符計數法

幀首部使用一個計數字段(第一個字節,八位)來標明幀內字符數
在這里插入圖片描述
缺點:如果計數字段發生錯誤,那么全部都會出錯

字符填充法

在這里插入圖片描述在這里插入圖片描述

零比特填充法

在這里插入圖片描述

違規編碼法

在這里插入圖片描述

差錯控制

在這里插入圖片描述在這里插入圖片描述

奇偶校驗碼

在這里插入圖片描述

CRC循環冗余碼

在這里插入圖片描述在這里插入圖片描述
使用循環冗余碼保證(幾乎)無比特差錯接收,不能實現可靠傳輸
可靠傳輸:保證發送的數據都能夠被接收到

海明碼

發現雙比特錯,糾正單比特錯

在這里插入圖片描述

  1. 確定校驗碼位數r
    海明不等式:2k?k+r+12^k \geqslant k+r+12k?k+r+1,其中r是冗余碼位數,k是信息位數
  2. 確定校驗碼和數據的位置
    在這里插入圖片描述
  3. 確定校驗碼的值
    在這里插入圖片描述
  4. 檢錯并糾錯
    在這里插入圖片描述

流量控制、可靠傳輸機制

流量控制:較高的發送速度和較低的接受能力的不匹配會造成傳輸出錯,因此需要進行控制。

鏈路層的流量控制是點對點的,而傳輸層的流量控制是端到端的。

數據鏈鏈路層流量控制的手段:接收方收不下就不回復確認幀。
傳輸層流量控制手段:接收端發送一個窗口公告,告訴發送方應該發送的窗口的大小

流量控制的方法:

  • 停止-等待協議:每發送一個幀就停止發送,等待對方的確認,收到確認之后再發送下一個幀。
  • 滑動窗口協議:后退N幀協議(GBN)、選擇重傳協議(SR)

停止-等待協議是一種特殊的滑動窗口協議

在這里插入圖片描述
窗口大小都是固定的,在傳輸層的窗口大小是變化的。

可靠傳輸:發送端發啥,接收端收啥
流量控制:控制發送速率,使接收方有足夠的緩沖空間來接收每一個幀

在這里插入圖片描述

停止-等待協議

在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述
信道利用率:發送方在一個發送周期內,有效地發送數據所需要時間占 整個發送周期的比率。

在這里插入圖片描述
如果沒有說明確認幀的發送時延就忽略不計。
浪費資源
在這里插入圖片描述

后退N幀(GBN)協議

在這里插入圖片描述
GBN協議中,對n號幀的確認采用累積確認的方式,標明接收方已經收到n號幀和它之前的全部幀。

發送方:

在這里插入圖片描述
如果超時會重發所有已經發送但是沒有確定的幀。

接收方

在這里插入圖片描述在這里插入圖片描述

滑動窗口長度

滑動窗口長度不能過大,如果采用n個比特對幀編號(即窗口中最多有2n2^n2n個幀),則發送窗口的尺寸W應該1?W?2n?11\leqslant W \leqslant 2^n-11?W?2n?1。因為發送窗口尺寸過大會導致接收方無法區別新幀和舊幀。無法確定是因為舊幀的ACK丟失導致發送方又發送了一遍舊幀還是發送方正常收到了ACK正常發送新幀。

重點:

  • 累計確認(偶爾捎帶確認,如果接收方也發送數據的話可以將確認幀放在需要發送的數據中)
  • 接收方只按順序接收幀,不按序無情丟棄。(如果接收的幀不是想要的那個就扔掉)
  • 確認序列號最大的、按序到達的幀
  • 發送窗口最大為2n?12^n-12n?1,接收窗口為1.是固定的(和傳輸層的不同)

性能分析

優點:因連續發送數據幀而提高了信道利用率
缺點:在重傳時必須把原來已經正確傳送的數據幀重傳,降低傳送效率

選擇重傳(SR)協議

在這里插入圖片描述

發送方

在這里插入圖片描述

接收方

在這里插入圖片描述在這里插入圖片描述

滑動窗口長度

在這里插入圖片描述
發送窗口最好等于接收窗口,最大為2n?12^{n-1}2n?1

重點:

  • 對數據幀逐一確認,接收一個確認一個
  • 只重傳出錯幀
  • 接收方有緩存

介質訪問控制

  • 點對點鏈路:兩個相鄰節點通過一個鏈路相連,沒有第三者。應用:PPP協議,常用于廣域網
  • 廣播式鏈路:所有主機共享通信介質。應用:早期的總線以太網、無線局域網
    典型拓撲結構:總線型、星型(邏輯總線型)
    介質訪問控制:采取一定的措施,使得兩對節點之間的通信不會相互干擾
    在這里插入圖片描述

信道劃分介質訪問控制(靜態劃分信道)

將使用介質的每個設備與來自同一信道上的其他設備的通信隔離開,把時域和頻域資源合理地分配給網絡上的設備

多路復用技術:把多個信號組合再一條物理信道上進行傳輸,使得多個計算機或中斷共享信道資源,實際就是把廣播信道轉變成點對點通信。

在這里插入圖片描述

頻分多路復用FDM

在這里插入圖片描述

時分多路復用TDM

在這里插入圖片描述
改進的時分復用:統計時分復用STDM
在這里插入圖片描述

波分多路復用WDM

就是光的頻分多路復用

碼分多路復用CDM

碼分多址(CDMA)是碼分多路復用的一種方式
每一個站點被指定一個唯一的m位芯片序列,就是1代表的序列,0是1的反碼。
為了避免沖突,要求各個站點的芯片序列的規格化內積為0.
發送數據的時候將各個站點的數據線性相加
等發送到目的站點以后,再求相加后的向量和對應站點的芯片序列的規格化內積。1表示1,-1表示0

動態分配信道(動態媒體接入控制/多點接入)

特點:信道并非在用戶通信時固定分配給用戶

隨機訪問介質訪問控制

所有用戶可隨機發送信息,發送信息時占用全部帶寬

ALOHA協議
  • 純ALOHA協議:不監聽信道,不按時間槽發送,隨機重發。
    T0=發送時間+傳輸時間
    在這里插入圖片描述
  • 時隙ALOHA協議
    在這里插入圖片描述
    吞吐量:單位時間內發送成功的幀數
  • 純ALOHA協議比時隙ALOHA協議吞吐量更低,效率更低
  • 純ALOHA協議想發就發,時隙ALOHA協議只有在時間片開始才能發送
CSMA協議(載波監聽多路訪問協議)

在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述主要的問題就是沒法立即檢測到是否沖突,需要根據是否收到ACK判斷是否發生了沖突

在這里插入圖片描述

CSMA/CD(載波監聽多點接入/碰撞檢測)協議

發送數據前以及發送數據時都要檢測一下總線上是否有其他計算機在發送數據。

應用于半雙工網絡

在這里插入圖片描述
單程端到端傳播時延τ\tauτ

可能會產生監聽失誤,從而產生沖突

在這里插入圖片描述
最多經過兩倍的端到端傳播時延2τ2\tau2τ發現沖突

重傳時機

在這里插入圖片描述

最小幀長

最小幀長 = 總線傳播時延 ?*? 數據傳輸速率 ?*? 2 = 數據傳輸速率 ?2τ* 2\tau?2τ
在這里插入圖片描述

CSMA/CA(載波監聽多點接入/碰撞避免)協議

應用于無線局域網

不使用CSMA/CD協議的原因
在這里插入圖片描述

在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述

輪詢訪問MAC協議

輪詢協議

在這里插入圖片描述

令牌傳遞協議

在這里插入圖片描述

局域網基本結構

在這里插入圖片描述在這里插入圖片描述
常用的時總線型拓撲

在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述

以太網

在這里插入圖片描述
以太網提供無連接、不可靠的服務
在這里插入圖片描述
在這里插入圖片描述

10Base-T以太網

在這里插入圖片描述

適配器與MAC地址

在這里插入圖片描述
在這里插入圖片描述在這里插入圖片描述
在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述

廣域網

在這里插入圖片描述

PPP協議

點對點協議PPP協議是目前使用最廣泛的數據鏈路層協議,用戶使用撥號電話接入因特網時一般都是用PPP協議
只支持全雙工鏈路
在這里插入圖片描述
不支持:糾錯、流量控制、序號、多點線路
在這里插入圖片描述
在這里插入圖片描述在這里插入圖片描述

PPP協議面向字節,使用全雙工通信方式

HDLC協議

在這里插入圖片描述在這里插入圖片描述
在這里插入圖片描述在這里插入圖片描述

鏈路層設備

在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/383623.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/383623.shtml
英文地址,請注明出處:http://en.pswp.cn/news/383623.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

計算機網絡【5】應用層

應用層對應用程序的通信提供服務 應用層協議定義: 應用層的功能: 文件傳輸、訪問和管理電子郵件虛擬終端查詢服務和遠程作業登錄 重要協議:FTP、SMTP、POP3、HTTP、DNS 網絡應用模型 客戶/服務器模型(Client/Server&#x…

操作系統【八】文件管理

文件:一組有意義的信息/數據集合 文件的屬性: 文件名:由創建文件的用戶決定文件名,主要是為了方便用戶找到文件。同一個目錄下不允許有重名文件標識符:一個系統內的個文件標識符唯一,對用戶來說毫無可讀性…

數據庫原理及應用【六】數據庫設計

數據依賴 函數依賴FD:一個屬性或者一組屬性的值可以決定另一個屬性的值 多值依賴MVD:一個屬性或者一組屬性的值可以決定另一個屬性的值的集合。FD是MVD的特例 符號表示:Name->->Course,課程多值依賴于姓名 連接依賴&#x…

數據可視化【一】JavaScript學習

本博客是我學習Curran Kelleher老師數據可視化課程的筆記,感興趣的小伙伴可以點擊這里學習。 three cores of data visualization: analysisdesignconstruction 推薦書籍《visualization analysis & design》 使用https://vizhub.com/進行編程學習&#xff…

數據庫原理及應用【二】數據模型

層次模型 tree Record and fieldParent-Child relationship(PCR) 每個記錄類型只有一個父節點 無法表達多對多信息 采用虛記錄解決多對多 網狀數據模型 系:主記錄->屬記錄 主記錄和屬記錄都可以有好多個 關系模型 表:table/relation 擁有更高的…

數據可視化【二】HTML+CSS+SVG+D3

HTML、CSS和SVG學習實現代碼&#xff1a;https://vizhub.com/Edward-Elric233/89185eb96bc64a9d81777873a0ccd0b9 index.html <!DOCTYPE html> <html><head><title>Shapes with SVG and CSS</title><link rel"stylesheet" href&qu…

數據可視化【三】基本概念

Visualization is suitable when there is a need to augment human capabilities rather than replace people with computational decision-making methods. 當可以信賴的智能化的解決方案存在的時候&#xff0c;可視化是不必要的。 當不知道需要分析的問題是什么的時候&…

數據可視化【四】Bar Chart

Make a Bar Chart Representing a data table in JavaScriptCreating rectangles for each rowUsing linear and band scalesThe margin conventionAdding axes 以下學習內容參考博客&#xff1a;傳送門 select()選擇所有指定元素的第一個 selectAll()選擇指定元素的全部 上…

數據庫原理及應用【三】DBMS+SQL

DBMS Query LanguagesInterface and maintaining tools(GUI)APIsClass Library QL 不是圖靈完備的&#xff0c;不是一種編程語言。 QL SQL是一種非過程化的查詢語言。 DDL數據定義語言&#xff1a;表&#xff0c;視圖QL 查詢語言DML 數據操縱語言DCL 數據控制語言 Base t…

數據可視化【五】 Scatter Plot

Scatter Plot vizhub上實現的代碼&#xff1a; https://vizhub.com/Edward-Elric233/53807a1b35d94329b3689081cd2ea945 https://vizhub.com/Edward-Elric233/b9647d50899a4a0e8e917f913cd0a53a https://vizhub.com/Edward-Elric233/8c6b50cd81a04f048f490f48e4fe6264 由前…

數據可視化【六】Line Chart Area Chart

Line Chart vizhub代碼&#xff1a; https://vizhub.com/Edward-Elric233/094396fc7a164c828a4a8c2e13045308 實現效果&#xff1a; 這里先使用d3.line()設置每個點的x坐標和y坐標&#xff0c;然后再用這個東西設置path的d屬性&#xff0c;就可以得到曲線。 const lineGen…

數據可視化【七】 更新模式

Enter 以下面這個簡單的代碼進行分析 const svg d3.select(svg); // svg.style(background-color, red); testconst height svg.attr(height); // equals paresFloat() const width svg.attr(width);const makeFruit type >( {type} ); //這種寫法好像能夠直接得到一個…

數據可視化【八】根據數據類型選擇可視化方式

Marks:Rows PointsLinesAreas Channels:Columns PositionColorShape

數據可視化【九】單向數據流交互

我們使用一下上上篇博客的代碼。 例如我們想要當鼠標點擊水果的時候會出現黑色的框&#xff0c;再點擊一下黑色的框就會消失。 首先&#xff0c;我們應該給組件添加點擊事件&#xff1a; fruitBowl.js gruopAll.on(click, d > onClick(d.id));這個on函數第一個參數是事件…

數據庫原理及應用【四】數據庫管理系統

查詢優化 數據庫管理系統中非常重要的一部分。 代數優化 按照一定的規則將語句變化成關系代數以后進行優化 操作優化 對代數優化后的查詢樹使用比較好的方法進行查詢。 主要是對連接運算進行優化 嵌套循環歸并掃描索引優化哈希連接 恢復機制 備份&#xff08;完整備份差…

數據庫原理及應用【五】安全性和完整性約束

數據庫一致性被破壞&#xff1a; 系統故障許多用戶的并發訪問人為破壞事務本身不正確 保護數據庫一致性的方法&#xff1a; 視圖/查詢修改訪問控制 普通用戶擁有資源特權的用戶DBA 數據庫的安全問題 身份驗證 口令物理設備 GRANT CONNECT TO John IDENTIFIED BY 123456…

遞歸式復雜度求解

代換法 猜測復雜度驗證是否滿足遞歸式&#xff08;使用歸納法&#xff09;找到常數應該滿足的條件針對基本情況&#xff0c;常數足夠大時總是成立的 需要注意的是&#xff0c;我們猜測的復雜度有可能不滿足遞歸式&#xff0c;這個時候就要通過減去一些低階項來使得歸納成立。…

斐波那契數列計算

定義 斐波那契數列&#xff1a; F[n]{0,n01,n1F[n?1]F[n?2],elseF[n] \begin{cases} 0,n0 \\ 1,n1\\ F[n-1]F[n-2],else \end{cases} F[n]??????0,n01,n1F[n?1]F[n?2],else? 樸素計算法 根據遞歸式F[n]F[n?1]F[n?2]F[n]F[n-1]F[n-2]F[n]F[n?1]F[n?2]進行計算…

P、NP、NP完全問題、NP難問題

可以在多項式時間內求解的問題稱為易解的&#xff0c;而不能在多項式時間內求解的問題稱為難解的。 P類問題&#xff1a;多項式類型&#xff0c;是一類能夠用&#xff08;確定性的&#xff09;算法在多項式的時間內求解的判定問題。 只有判定問題才屬于P 不可判定問題&#…

數據可視化【十】繪制地圖

Loading and parsing TOPOJSON 導入Topojson d3文件 地址&#xff1a;https://unpkg.com/topojson3.0.2/dist/topojson.min.js 想要找d3文件的話去unpkg.com好像大部分都能找到的樣子 Rendering geographic features 尋找合適的地圖數據&#xff1a;谷歌搜索world-atlas npm…