数据链路层

数据链路层是TCP/IP体系结构中的关键层次,负责将数据封装成帧、透明传输和差错检测。本文详细介绍了帧的封装、透明传输的实现、CRC差错检测方法以及适配器、MAC地址的概念。此外,还讨论了老数据链路层中的网桥和现代数据链路层中交换机的工作原理,包括交换机的两种转发方式和帧结构。通过对集线器、中继器、交换机、网桥等设备的对比,加深了对数据链路层的理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言 

一、基本内容

1.数据链路

2.三个基本问题

1.封装成帧

2.透明传输

3.差错检测

3.适配器

4.MAC地址

二、老数据链路层:

三、现代数据链路层:

1.网桥

网桥的内部结构

工作原理

2.交换机

1.多接口网桥-以太网交换机

2.交换机的两种转发方式

3.帧结构

补充:

1.集线器,中继器,交换机,网桥,交换集线器的区别:

2.四种网络拓扑图类型:


前言 

   数据链路层是介于物理层和网络层中间的一层(根据TCP/IP体系结构划分),主要功能是将数据封装成帧、传输以及控制。

                         就比如这样:

                        比如封装:

      emmmm,开玩笑,是这样:TCP/IP体系结构

一、基本内容

1.数据链路

   数据链路:传输数据除了需要物理线路之外,还需要一些相应的通信协议来控制数据的传输。所以说,物理线路+实现协议的硬软件=数据链路

2.三个基本问题

   不过我个人觉得叫做三个问题的解决办法似乎更容易理解=-=

1.封装成帧

   封装成帧其实就是在一段数据的前后分别加上首部和尾部。我们知道(我知道你们知道):所有因特网上传送的数据都是以分组(数据报)为单元进行传输的,帧就是数据链路层上的数据报。有了首部和尾部,我们就能识别出帧的开始和结束,也就更方便对数据进行控制(比如下文的透明传输和差错检测)。

2.透明传输

   在帧的首部或尾部一般会包含定界符,来区分不同的帧。透明传输主要关注的是,如何判断定位符、分辨这些定位符和帧的数据中和定位符相同的部分,以此对帧进行正确的处理。举一个简单的例子,如图:

   图中的SOH和EOT等控制字符用于传输层,常用在Xmodem、Ymodem、Zmodem等文件传输协议中。同样,帧内部也有定界符,后文将帧结构时会讲到(感兴趣可以点击链接看看,反正我是还没看=-=)。

   另外,当在数据传输过程中出现错误时,定界符的作用更加明显。比如发送端在没发送完一个帧的时候出现了故障,接收端在接收数据时发现不是一个完整的帧(没有EOT),所以舍弃。.

   还有一个问题,如果帧的数据部分中有EOT(或SOH)呢?为了解决这种问题,我们可以在这个EOT/SOH的前面填充一些字节,如果数据部分中有ESC也一样,在ESC前面加一个ESC,对字符进行转义,如图(ESC就相当于我们常用的转义字符 '\'):

   当进行帧检测时,就会发生以下情景(目前普遍由交换机负责对帧的控制):

3.差错检测

   因为现实中的通信并不是理想的,不可能没有错误。为了保证传输信息的可靠性,就需要采用各种差错检测方式。目前在数据链路层使用最广泛的是循环冗余校验CRC方法(简称CRC循环校验)。具体过程如下:

   1.信息发送方和接收方事先选定一个CRC版本,即使用同一个多项式P(X)作为除数;

   2.发送方通过'模2运算'计算出一个冗余码(FCS),添加到帧的数据部分之后,组成一个传输帧,发送出去;

   3.接收方将收到的数据同样进行‘模2运算’,检查余数是否为0,不是则舍弃。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值