考研408 | 【計算機網絡】 數據鏈路層

導圖:

  • ?數據鏈路層概念:

結點:主機、路由器

鏈路:網絡中兩個結點之間的物理通道,鏈路的傳輸介質主要有雙絞線、光纖和微波。分為有線鏈路、無線鏈路。

數據鏈路:網絡中兩個結點之間的邏輯通道,把實現控制數據傳輸協議的硬件和軟件加到鏈路上就構成數據鏈路。

幀:鏈路層的協議數據單元,封裝網絡層數據報。

  • 數據鏈路層功能:

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

  • ?封裝成幀:

封裝成幀就是在一段數據的前后部分添加首部和尾部,這樣就構成了一個幀。接收端在收到物理層上交的比特流后,就能根據首部和尾部的標記,從收到的比特流中識別幀的開始和結束。

  • ?透明傳輸:

是指不管所傳數據是什么樣的比特組合,都應當能夠在鏈路上傳送。因此,鏈路層就“看不見”有什么妨礙數據傳輸的東西。

當所傳數據中的比特組合恰巧與某一個控制信息完全一樣時,就必須采取適當的措施,使接收方不會將這樣的數據誤認為是某種控制信息。這樣才能保證數據鏈路層的傳輸是透明的。

1.字符計數法

2.字符填充法

?

?3.零比特填充法

?4.違規編碼法

?

  • ?差錯控制

差錯從何而來?

傳輸中的差錯都是由于噪聲引起的

?數據鏈路層和物理層的編碼的區別:

?冗余編碼

  • 檢錯編碼--奇偶效驗碼?

題目:

  • ?檢查編碼--CRC循環冗余碼

?

題目:

?

  • ?糾錯編碼--海明碼

?

?海明距離:

兩個合法編碼(碼字)的對應比特取值不同的比特數稱為這兩個碼字的海明距離(碼距),一個有效編碼集中,任意兩個合法編碼(碼字)的海明距離的最小值稱為該編碼集的海明距離(碼距)。

1.確定校驗碼位數r

?2.確定校驗碼和數據的位置

3.求出校驗碼的值

?

4.檢錯并糾錯

?

?

?

?總結:

  • 流量控制:

較高的發送速度和較低的接收能力的不匹配,會造成傳輸出錯,因此流量控制也是數據鏈路層的一項重要工作。

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

數據鏈路層流量控制手段:接收方收不下就不回復確認。

傳輸層流量控制手段:接收端給發送端一個窗口公告。

方法:

可靠傳輸:發送端發啥,接收端收啥。

流量控制:控制發送速率,使接收方有足夠的緩沖空間來接收每一個幀。

  • ?停止-等待協議:

why有停止-等待協議?

除了比特出差錯,底層信道還會出現丟包問題。為了實現流量控制。

?

1.無差錯情況

2.有差錯情況?

?

?

?性能分析:

?信道利用率

?題目:

  • ?后退N幀協議(GBN):

GBN發送方必須響應的3件事:

1.上層的調用

?2.收到了一個ACK

?3.超時事件

?GBN接收方要做的事:

運行中的GBN:

?

?滑動窗口長度:

性能分析:

?GBN協議重點總結

題目:

?

  • 選擇重傳協議(SR):

滑動窗口:

?SR發送方必須響應的三件事:

1.上層的調用

2.收到了一個ACK

3.超時?事件

?SR接收方要做的事:

?運行中的SR:?

滑動窗口長度

?SR協議重點總結:

題目:

?

  • ?信道劃分介質訪問控制

傳輸數據使用的兩種鏈路:

介質訪問控制:

采取一定的措施,使得兩對節點之間的通信不會發送互相干擾的情況。

?

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

靜態劃分:

頻分多路復用FDM:

?時分多路復用TDM:

?統計時分復用STDM(改進的時分復用):

波分多路復用WDM:

?

?碼分多路復用CDM:

動態分配信道:?

  • 純ALOHA協議:

  • ?時隙ALOHA協議:

  • ?CSMA協議:

?

?

  • ?CSMA/CD協議:

?傳播時延對載波監聽的影響:

?確定碰撞后的重傳時機:

?題目:

最小幀長:

?

  • ?CSMA/CA協議:

?CSMA/CA協議工作原理:

?CSMA/CD和CSMA/CA的異同:

介質訪問控制

?

  • 輪詢協議:?

  • 令牌傳遞協議:?

?

?局域網

?簡稱LAN,是指在某一區域內由多臺計算機互聯成的計算機組,使用廣播信道。

局域網拓撲結構:

?

?

?

局域網的傳輸介質

?局域網介質訪問控制方法

局域網分類:

?IEEE 802標準

?

?

?

?

?MAC子層和LLC子層:

?以太網

?

?以太網傳輸介質與拓撲結構的發展:

?10BASE-T以太網

?適配器與MAC地址

?以太網MAC幀

高速以太網

?無線局域網

?IEEE802.11

?802.11的MAC幀頭格式:

?

?無線局域網分類:

1.有固定基礎設施無線局域網

?2.無固定基礎設施無線局域網的自組織網絡

?傳統局域網的局限

?虛擬局域網VLAN

?VLAN實現

?

?

題目:

?

?廣域網

?

?PPP協議的特點

?PPP協議應滿足的要求

?PPP協議無需滿足的要求

?PPP協議的三個組成部分

PPP協議的狀態圖

?PPP協議的幀格式

HDLC協議

HDLC的站?

?HDLC的幀格式

PPP協議和HDLC協議的異同

鏈路層設備?

物理層擴展以太網

鏈路層擴展以太網

?網橋分類

1.透明網橋

?

2.源路由網橋

?多接口網橋--以太網交換機

以太網交換機的兩種交換方式

?網橋的自學習功能

?沖突域和廣播域

?題目:

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

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

相關文章

河道水位自動監測預警 yolov5

河道水位自動監測預警系統基于yolov5網絡模型AI視頻智能水尺讀數技術,河道水位自動監測預警系統通過在河道周邊布設監控攝像頭,實時監測水位的變化,一旦水位超過預設閾值,將自動發出預警信號,并提示相關人員采取相應的…

Three.js 實現材質邊緣通道發光效果

相關API的使用: 1. EffectComposer(渲染后處理的通用框架,用于將多個渲染通道(pass)組合在一起創建特定的視覺效果) 2. RenderPass(是用于渲染場景的通道。它將場景和相機作為輸入,使用Three.…

使用script標簽解決跨域問題,但是只能使用get請求,且不需要獲取get請求的數據,例如埋點,只需要觸發后發送get請求,而不需要獲取返回的參數

在項目中,使用埋點的時候,因為使用的是外部提供的接口,所以直接請求的時候,前端會報跨域的問題,本著不麻煩后端的想法,怎怎么前端實現跨域而完全不需要后段的配合,這時候就想到了通過script標簽…

【簡單認識zookeeper+kafka分布式消息隊列集群的部署】

文章目錄 一、zookeeper1、定義2、工作機制3、Zookeeper 特點4、Zookeeper 數據結構5、Zookeeper 應用場景6、Zookeeper 選舉機制(1)第一次啟動選舉機制(2)非第一次啟動選舉機制 7、部署zookeeper群集 二、消息隊列概述1、為什么需…

百度云盤發展歷程與影響

摘要: 百度云盤作為中國領先的云存儲與共享服務提供商,自其創立至今經歷了多個階段的發展與變革。本論文通過對百度云盤的歷史回顧與分析,探討了其在技術、商業模式、用戶體驗以及對社會的影響等方面的演變。同時,還分析了在競爭激…

使用luarocks安裝cjson并使用cjson

1.luarocks安裝 wget https://luarocks.org/releases/luarocks-3.3.1.tar.gz --no-check-certificatels -lrthtar -xvf luarocks-3.3.1.tar.gz mv luarocks-3.3.1 /usr/local/cd /usr/local/luarocks-3.3.1/./configure --prefix/usr/local/luarocks-3.3.1 vim /etc/profilePAT…

Mac下??Git如何下載/上傳遠程倉庫

使用終端檢查電腦是否安裝Git git --version 通過此文章安裝Git ?? ???????傳送門🌐 方式1??使用終端操作 1.下載——克隆遠程倉庫到本地 git clone [遠程地址] 例:git clone https://gitee.com/lcannal/movie.git? 2.編…

Windows - UWP - 為UWP應用創建桌面快捷方式

Windows - UWP - 為UWP應用創建桌面快捷方式 前言 這是一個較為簡單的方式,不需要過多的命令行。 How 首先Win R -> shell:AppsFolder -> 回車, 這將顯示電腦上的已安裝應用(Win32 & UWP): 找到想要創建…

【Nginx】Nginx負載均衡

負載均衡:通過反向代理來實現 Nginx的七層代理和四層代理: 七層是最常用的反向代理方式,只能配置在nginx配置文件的http模塊當中 ;配置的方法名稱為:upstream模塊,不能寫在server中也不能寫在location中&a…

ZABBIX 6.4的完全安裝步驟

此安裝文檔是我一步一步的驗證過的,按步驟來可以順暢的安成ZABBIX6.4的部署。 Zabbix 主要有以下幾個組件組成: Zabbix Server6.4:Zabbix 服務端,是 Zabbix 的核心組件。它負責接收監控數據并觸發告警,還負責將監控數…

Leetcode

持續更新中。。。。。。。。。。。。。。 day 20230811 /*** 給你一個正方形矩陣 mat&#xff0c;請你返回矩陣對角線元素的和。* <p>* 請你返回在矩陣主對角線上的元素和副對角線上且不在主對角線上元素的和* <p>* 不包括 相交的元素只計算一次* <p>* 輸入&…

(2023Arxiv)Meta-Transformer: A Unified Framework for Multimodal Learning

論文鏈接&#xff1a;https://arxiv.org/abs/2307.10802 代碼鏈接&#xff1a;https://github.com/invictus717/MetaTransformer 項目主頁&#xff1a;https://kxgong.github.io/meta_transformer/ 【注】&#xff1a;根據實驗結果來看&#xff0c;每次輸入一種數據源進行處…

Java項目初始化ES、MYSQL表結構及表數據

一、初始化MYSQL數據 public boolean initMysql() throws Exception {log.info("initMysql.start");//獲取所連接的數據庫名稱String database systemMapper.getDatabase();if (StringUtils.isBlank(database)) {throw new BusinessException("連接數據庫失敗,…

微信小程序時鐘

微信小程序自定義時鐘&#xff0c;模擬翻牌時鐘。1、頁面布局 <view class"date-time-box"><view class"date-box">{{nowDate}}</view><view class"time-box"><view><image class"pic01 {{move[0]?move…

代碼隨想錄算法訓練營第45天|動態規劃part07

8.11 周五 70. 爬樓梯 &#xff08;進階&#xff09; 322. 零錢兌換 279.完全平方數 詳細布置 70. 爬樓梯 &#xff08;進階&#xff09; 題目&#xff1a;一次可爬1或2個臺階&#xff0c;問n個臺階有多少種方式 題解&#xff1a; 1、轉換為完全背包問題&#xff0c;nums[1…

Ajax-AJAX請求的不同發送方式

&#x1f954;&#xff1a;你一定能成為想要成為的人 發送AJAX請求不同方式 發送AJAX請求不同方式1、jQuery發送AJAX請求2、axios發送AJAX請求&#xff08;重點&#xff09;3、fetch發送AJAX請求 發送AJAX請求不同方式 1、jQuery發送AJAX請求 首先需要jquery的js文件&#xf…

Vc - Qt - QToolButton

QToolButton 是 Qt 框架中的一個類&#xff0c;是 QPushButton 的子類。它可以顯示一個可單擊的按鈕&#xff0c;并且可以與彈出菜單、圖標和文本等進行關聯。 QToolButton的一些常見特性和用法包括&#xff1a; 設置文本&#xff1a;使用 setText() 函數設置按鈕上的文本。設置…

webpack 熱更新的實現原理

webpack 的熱更新?稱熱替換&#xff08;Hot Module Replacement&#xff09;&#xff0c;縮寫為HMR。這個機制可以做到不?刷新瀏覽器?將新變更的模塊替換掉舊的模塊。 原理&#xff1a; ?先要知道 server 端和 client 端都做了處理?作&#xff1a; 在 webpack 的 watch…

uniapp點擊輸入框時鍵盤不上推頁面

adjust-position設置為false&#xff0c;然后監聽鍵盤的高度賦值給輸入框bottom 這里還一個非常重要的地方&#xff0c;在根元素設置touchmove.stop.prevent&#xff0c;這樣在ios上頁面就不會滾動&#xff0c;不影響其他組件內部滾動 onReady() {// 監聽鍵盤高度變化&#x…