评论

收藏

[其他] 计算机通信之数据链路层

网络安全 网络安全 发布于:2021-07-17 10:42 | 阅读数:551 | 评论:0

数据链路层在不可靠的物理介质上提供可靠的传输,对应的连接设备:网桥、交换机。
职责:链路管理,封装成帧,流量控制,差错控制,透明传输,寻址。
数据链路层概述
数据链路层为网络层提供服务:
  无确认的无连接服务
  有确认的无连接服务
  有确认的面向连接服务

基本服务:
  将一个节点的网络层接收来的数据帧,无比特差错地传输到相邻节点的网络层。
信道类型
点对点信道:
这种信道使用一对一的点对点通信方式,在点对点的专线上通信,不会产生冲突。
广播信道:
这种信道使用一对多的广播通信方式。
广播信道上连接的主机很多,会产生冲突,因此必须使用共享信道协议来协调这些主机的数据发送。
链路与数据链路
链路:
是一条点到点的物理线路段,中间没有任何其他的交换结点。一条链路只是一条通路的一个组成部分。

数据链路:
除了物理线路外,还必须有通信协议来控制这些数据的传输。
若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。

现今最常用的方法是使用适配器(即网卡)来作为实现这些协议的硬件和软件:
一般的适配器都包括了数据链路层和物理层这两层的功能。
数据链路层传输的是帧
封装成帧的目的:
能从物理层收到的比特流中识别各帧的开始和结束。
数据链路层就像一个数字管道,而在这条数字管道上传输的数据单位就是帧。
DSC0000.png

数据链路层帧格式
DSC0001.jpeg

以太网MAC层的MAC帧格式
FCS:帧校验
DSC0002.png

从层次上看数据的流动
DSC0003.png

仅从数据链路层观察帧的流动
DSC0004.png

数据链路层解决的基本问题
封装成帧:
将网络层传下来的分组添加首部和尾部,用于标记帧的开始和结束。
透明传输:
帧中有首部和尾部,如果帧的数据部分含有和首部尾部相同的内容,那么帧的开始和结束位置就会被错误的判定。
需要在数据中出现首部尾部相同的内容前面插入转义字符。
如果需要传输的内容正好就是转义字符,那么就在转义字符前面再加个转义字符,在接收端进行处理之后可以还原出原始数据。
这个过程透明传输的内容是转义字符,用户察觉不到转义字符的存在。
差错控制:
使用了循环冗余检验(CRC)来检查比特差错。
透明传输
DSC0005.png

DSC0006.png



关注下面的标签,发现更多相似文章