文章目录
概述
- 数据流动
主机H1将待发送的数据逐层封装,通过物理层将构成数据包的各比特装换为电信号发送到传输媒体。数据包进入路由器后,由下往上逐层解封到网络层。路由器根据数据包的目的网络地址和自身转发表确定数据包的转发端口。然后从网络层向下逐层封装数据包并通过物理层将数据包发送到传输媒体。数据包最终达到主机H2时,还要由下往上逐层解封,最终解封出主机H1所发送的数据。
从数据链路层上来看,从主机H1到主机H2可以看成是在4段不同的链路上的通信组成的。
- 链路
就是从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点。
要在链路上传输数据,仅需链路还不够,还需要一些通信协议来控制这些数据的传输
- 数据链路
是指把实现通信协议的硬件和软件加到链路上,就构成了数据链路。
数据链路上传输的数据包称为“帧”。数据链路层以帧为单位传输和处理数据。
数据链路层的三个重要问题“
- 封装成帧
- 差错检测
- 可靠传输
封装成帧
两台主机通过一段链路互联,两台主机都会对所发送或接收的数据包进行五个层次的封装或解封。
- 具体过程
发送方将发送的数据通过应用层封装称为应用协议数据单元,然后交付给运输层,运输层为其添加运输层协议首部,使之成为运输层协议数据单元,然后交付给网络层。网络层为其添加网络层协议首部,使之称为网络层协议数据单元,然后交付给数据链路层,数据链路层给网路曾协议数据单元添加一个数据链路层协议首部,简称为帧头。还要给其添加一个帧尾,我们将数据链路层给网络层交付的协议数据单元,添加帧头和帧尾的操作称为封装成帧。,添加帧头和帧尾的目的都是为了在链路上以帧为单元来传送数据。
差错检测
发送方将封装好的帧通过物理层发送到传输媒体。帧在传输过程中遭遇干扰后可能出现误码。
也就是比特0可能变成了比特1,反之亦然。
- 接收方主机如何判断是否出现误码?
这可以通过检错码来发现。
发送方在发送帧之前,基于带发送的数据和检测苏纳法计算出检错码,并将其封装在帧尾。接收方主机接受到帧后,通过检错码和检错算法,就可以判断出帧在传输过程中是否出现了误码。
可靠传输
接收方主机在接收到由误码的帧后,是不会接收该帧的会将其丢弃
- 如果数据链路层向其上层提供的是不可靠服务,丢弃就是丢弃,不会再有更多措施。
- 如果数据链路层向其上层提供的是可靠服务,需要其他措施确保接收方主机重新收到被丢弃的帧的正确副本。
封装成帧,差错检测、可靠传输这三个问题使用的是点对点信道的数据链路层
广播信道(共享式局域网)
不止包含封装成帧,差错检测、可靠传输这三个问题,还有其他需要解决的问题。
编址问题
主机A、B、C、D、E通过一根总线互联。主机A要给主机C发送帧,即帧的信号会通过总线传输到总线上的其他各主机。
主机B、D、E是如何知道所收到的帧不是发送给他们的,同样主机C如何知道所接收到的帧是传送给它的?
编址,将帧的目的地址添加到帧中一起传输。
当总线上多台主机同时使用总线进行传输帧时,传输信号就会发生碰撞。这是采用广播信道的共享式局域网不可避免的。
以太网采用方式 CSMA/CD:载波监听多点接入/碰撞检测
交换式局域网
无线局域网
使用共享信道技术
例如 802.11局域网采用的媒体接入控制协议CSMA/CA:载波监听多点接入/碰撞避免
- 重点问题总结
后续篇幅会逐一介绍
一、封装成帧
- 封装成帧</