【计算机网络】第三章·数据链路层 超硬核复习好物,考前必看!!!

本文主要是介绍【计算机网络】第三章·数据链路层 超硬核复习好物,考前必看!!!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

🥰欢迎阅读,来和 小哇 一起进步!

🌈感谢大家的阅读、点赞、收藏和关注💕


👑第三章 数据链路层

目录

1、主要信道

2、数据链路层三个基本问题:

1.封装成帧:

2.透明传输:

3.差错检测:

3、两个协议:

点对点协议PPP:

应满足的需求:

PPP帧格式:

透明传输

CSMA/CD协议

   三个要点:

争用期(又叫碰撞窗口):

最短有效帧长:

截断二进制指数退避算法:

4、局域网

5、以太网


1、主要信道

数据链路层使用的主要信道:

点对点信道(使用一对一的点对点通信方式)    

广播信道(使用一对多的广播通信方式,过程较复杂,必须使用专用的共享信道协议来协调该信道上连接的主机的数据发送)

2、数据链路层三个基本问题

1.封装成帧:

      (首部/尾部,定界) 就是在一段数据的前后分别添加首部和尾部,构成一个帧。首部、尾部的一个重要作用就是进行帧定界(即确定帧的界限);

网络层的IP数据报传到数据链路层成为帧的数据部分,在帧的数据部分前后加上首部和尾部构成完整的帧(数据链路层的数据传输单元)

       帧的数据部分<=最大传送单元MTU(数据部分长度上限)

当数据是由可打印的ASCII码组成的文本文件时,帧定界可以使用特殊的帧定界符SOH表示帧的首部开始、EOT表示帧的结束)。

接收端收到不完整的帧(只有首部开始符SOH,没有传输结束符EOT)就丢弃,完整的才收下。

2.透明传输:

表示无论什么样的比特组合的数据,都能够按照原样没有差错地通过这个数据链路层。

所传输的帧数据部分不允许出现和 用作帧定界的 控制字符的比特编码一样,否则会出现帧定界的错误。

       传送的帧是文本文件组成时,不管从键盘上输入什么字符都可以传输过去,此传输为透明传输

       但当数据部分是ASCII码的文本文件时,若数据中某字节的二进制代码和SOH或EOT这种控制字符一样,数据链路层会错误地“找到帧的边界”,收下部分帧,丢下剩下的数据,此传输不是透明传输。

       采用字节填充(或字符填充)的方法可解决透明传输问题:发送端数据链路层在数据出现控制符SOH或EOT前插入一个转义字符“ESC”,接收端数据链路层在把数据送往网络层之前删除这个转义字符。如果转义字符也在数据中,同理在其前面插入一个转义字符。

3.差错检测

比特差错:比特在传输过程中产生差错,1-->0,0-->1

误码率BER:一段时间内,传输错误的比特占所传输比特总数的比率。信噪比提高,误码率减小。

差错检验措施:

循环冗余检验CRC:一种检错技术、方法(书P76~77

   原理:

     在发送端,把数据进行分组,每组k个比特,待传送的数据为M(有k位),CRC就是在数据M后添加n位冗余码,一共发送(k+n)位给接收端。

        n位冗余码:在M后添加n个0,得到的(k+n)位数除以(n+1)位的除数p,得到有n位的余数R,R就是冗余码(又叫帧检验序列FCS。(除数p事先规定好的)

    在接收端,把收到的每个帧都除以同样的除数p,然后检查余数R(在数据M后加上n位冗余码的后除以p)。若余数R=0,则这个帧没有差错,接收;若R!=0,这个帧有错,就丢弃

   可用生成多项式表示除数p,比如p为1101,生成多项式为P(X)=X^3+X^2+X^0

3、两个协议

对于点对点链路:

点对点协议PPP

应满足的需求:

(1)简单  是首要的需求  使互操作性提高了

 (2)封装成帧   必须规定特殊字符作为帧定界符

(3)透明性        必须保证数据传输的透明性

  ……

(6)差错检测   对接收端收到的帧进行差错检测,丢弃有错的帧

  ····

PPP帧格式:

           各字段的意义:PPP帧首部四个字段,尾部两个字段,中间是信息部分(不超过1500字节)。首部第一个、尾部第二个字段都是标志字段F 规定为0x7E(标志字段是PPP帧的定界符)。连续两帧间,只需一个标志字段。

透明传输

 字节填充:PPP使用异步传输(逐个字符地填充)时,填充方法:

        将信息字段中出现的每个 0x7E 字节转变成为 2 字节序列(0x7D, 0x5E)

        若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列(0x7D, 0x5D)

        若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。例如: 0x03-->0x7D,0x23

在接受端进行与发送端字节填充相反的变换,来恢复原来的数据。

 零比特填充:(连续5个1添加一个0)PPP 协议用在 SONET/SDH 链路时,是使用同步传输(一 连串的比特连续传送。)这时需要采用零比特填充来实现透明传输。

           发送端只要发现有连续5个1就填入一个0;接收端收到帧后先找到标志字段F来确定一个帧的边界,再删除每五个1后的一个0

CSMA/CD协议

   三个要点:

载波监听 多点接入 碰撞检测

多点接入:说明这是总线型网络,许多计算机以多点接入的方式连在一根总线上。

载波监听:边发送边监听。不管在想要发送数据之前,还是发送数据中,每个站都必须不停检测信道。

碰撞检测也叫冲突检测。

  • 使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。
  • 每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
  • 这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率

争用期(又叫碰撞窗口):

2传播时延(以太网的端到端往返时间2τ)。经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。

凡是长度小于小于64字节的帧都是由于冲突而异常中止的无效帧,应立即丢弃。

最短有效帧长

争用期2τ*发送速率V

截断二进制指数退避算法

用来确定碰撞后的重传时机。

规定:

(1)基本退避时间为争用期2τ

(2)从离散的整数集合[0,1,……,(2^k - 1)]中随机抽出一个数,记为r。重传应推后的时间是r倍的争用期。

当重传次数不超过10时,k为重传次数。重传次数超过10,k一直为10。

(3)重传16次仍未成功,丢弃该帧,向高层报告。

帧间最小间隔为9.6us,相当于96比特时间。

4、局域网

特点:网络为一个单位所拥有,且地理范围和站点数目均有限。

局域网具有如下的一些主要优点:

1具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。

2便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。

             3提高了系统的可靠性、可用性和生存性

共享信道在技术上两种方法:

1、静态划分信道:如频分复用、时分复用、码分复用、波分复用

2、动态媒体介入控制(又称为多点接入):随机接入(主要采用)、受控接入(使用少)

5、以太网

服务:

尽最大努力的交付即不可靠的交付。当目的站收到有差错的帧就立即丢弃,对有差错帧是否需要重传由高层来决定。

曼彻斯特编码:(具体再第二章网络层讲了)

拓扑结构:集线器连接的星型拓扑

集线器特点:   

1、使用集线器的以太网在逻辑上仍是一个总线网,各站共享逻辑上的总线,使用的还是CSMA/CD协议。(各站中的适配器执行CSMA/CD协议)。

2、一个集线器有多个端口,因此像一个多端口的转发器。

3、集线器工作在物理层,每个端口仅仅简单地转发比特,不进行碰撞检测。

10base-T双绞线以太网:“10”代表10Mbit/s,BASE表示连接线上的信号是基带信号,“T”代表双绞线。

是局域网发展史上的一个重要里程碑,从此以太网的拓扑从总线型变为更方便的星形网络。

使用CSMA/CD协议。

以太网信道利用率:

        发送帧所需时间To = 帧长(bit)/发送速率(10Mbit/s)

        成功发送一个帧需要占用信道的时间是To+τ(帧的发送时间+单程端到端时延)。

        要提高以太网信道利用率,a的值要尽可能小:

        a = τ/To

以太网MAC层:

        MAC地址又叫硬件地址或物理地址。

        适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址.如果是发往本站的帧则收下,否则就将此帧丢弃。

        “发往本站的帧”包括以下三种帧:

                单播(unicast)帧(一对一)

                广播(broadcast)帧(一对全体)

                多播(multicast)帧(一对多)

        MAC帧:封装(首部+尾部=18字节)

         无效的MAC帧(检查出就丢弃):

                帧的长度不是整数个字节;

                用收到的帧检验序列 FCS 查出有差错;

                收到的帧数据字段的长度不在 46 ~ 1500 字节之间。有效的 MAC 帧长度(数据字段+首尾部)为 64 ~ 1518 字节之间。

MTU1500字节,最短有效帧长64字节

MAC地址:48位的标识

扩展以太网

物理层:集线器(hub)   共享式以太网

数据链路层:交换机(switch)别称 交换式集线器或以太网交换机

MAC地址表:自学习、查表转发

高速以太网

无线局域网(教材第九章)

CSMA/CA  载波监听 多点接入/碰撞避免

帧格式


本次计算机网络内容就到这里咯!

下次见~~

这篇关于【计算机网络】第三章·数据链路层 超硬核复习好物,考前必看!!!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1034549

相关文章

MySQL快速复制一张表的四种核心方法(包括表结构和数据)

《MySQL快速复制一张表的四种核心方法(包括表结构和数据)》本文详细介绍了四种复制MySQL表(结构+数据)的方法,并对每种方法进行了对比分析,适用于不同场景和数据量的复制需求,特别是针对超大表(1... 目录一、mysql 复制表(结构+数据)的 4 种核心方法(面试结构化回答)方法 1:CREATE

详解C++ 存储二进制数据容器的几种方法

《详解C++存储二进制数据容器的几种方法》本文主要介绍了详解C++存储二进制数据容器,包括std::vector、std::array、std::string、std::bitset和std::ve... 目录1.std::vector<uint8_t>(最常用)特点:适用场景:示例:2.std::arra

MySQL中的DELETE删除数据及注意事项

《MySQL中的DELETE删除数据及注意事项》MySQL的DELETE语句是数据库操作中不可或缺的一部分,通过合理使用索引、批量删除、避免全表删除、使用TRUNCATE、使用ORDERBY和LIMI... 目录1. 基本语法单表删除2. 高级用法使用子查询删除删除多表3. 性能优化策略使用索引批量删除避免

MySQL 数据库进阶之SQL 数据操作与子查询操作大全

《MySQL数据库进阶之SQL数据操作与子查询操作大全》本文详细介绍了SQL中的子查询、数据添加(INSERT)、数据修改(UPDATE)和数据删除(DELETE、TRUNCATE、DROP)操作... 目录一、子查询:嵌套在查询中的查询1.1 子查询的基本语法1.2 子查询的实战示例二、数据添加:INSE

Linux服务器数据盘移除并重新挂载的全过程

《Linux服务器数据盘移除并重新挂载的全过程》:本文主要介绍在Linux服务器上移除并重新挂载数据盘的整个过程,分为三大步:卸载文件系统、分离磁盘和重新挂载,每一步都有详细的步骤和注意事项,确保... 目录引言第一步:卸载文件系统第二步:分离磁盘第三步:重新挂载引言在 linux 服务器上移除并重新挂p

使用MyBatis TypeHandler实现数据加密与解密的具体方案

《使用MyBatisTypeHandler实现数据加密与解密的具体方案》在我们日常的开发工作中,经常会遇到一些敏感数据需要存储,比如用户的手机号、身份证号、银行卡号等,为了保障数据安全,我们通常会对... 目录1. 核心概念:什么是 TypeHandler?2. 实战场景3. 代码实现步骤步骤 1:定义 E

使用C#导出Excel数据并保存多种格式的完整示例

《使用C#导出Excel数据并保存多种格式的完整示例》在现代企业信息化管理中,Excel已经成为最常用的数据存储和分析工具,从员工信息表、销售数据报表到财务分析表,几乎所有部门都离不开Excel,本文... 目录引言1. 安装 Spire.XLS2. 创建工作簿和填充数据3. 保存为不同格式4. 效果展示5

Python多任务爬虫实现爬取图片和GDP数据

《Python多任务爬虫实现爬取图片和GDP数据》本文主要介绍了基于FastAPI开发Web站点的方法,包括搭建Web服务器、处理图片资源、实现多任务爬虫和数据可视化,同时,还简要介绍了Python爬... 目录一. 基于FastAPI之Web站点开发1. 基于FastAPI搭建Web服务器2. Web服务

MySQL 批量插入的原理和实战方法(快速提升大数据导入效率)

《MySQL批量插入的原理和实战方法(快速提升大数据导入效率)》在日常开发中,我们经常需要将大量数据批量插入到MySQL数据库中,本文将介绍批量插入的原理、实现方法,并结合Python和PyMySQ... 目录一、批量插入的优势二、mysql 表的创建示例三、python 实现批量插入1. 安装 PyMyS

关于MySQL将表中数据删除后多久空间会被释放出来

《关于MySQL将表中数据删除后多久空间会被释放出来》MySQL删除数据后,空间不会立即释放给操作系统,而是会被标记为“可重用”,以供未来插入新数据时使用,只有满足特定条件时,空间才可能真正返还给操作... 目录一、mysql数据删除与空间管理1.1 理解MySQL数据删除原理1.3 执行SQL1.3 使用