OSI 参考模型 是 ISO 公司提出的理论知识;并不具备实际应用。
在真实使用中真正得到认可的是 TCP/IP 协议;学习的时候会把【网络接口层】还原成【数据链路层】和【物理层】;因为这两层关乎通信原理;非常重要。
物理层定义了接口标准、线缆标准、传输速率、传输方式等;比如说网线。数据传输有两种方式;分别是模拟信号和数字信号。
而网线的传输距离最多不可超过100米;局域网通信可以只使用数字信号;因为距离短;而广域网中通信就需要数字信号;模拟信号组合使用。
另外;一条传输介质上;比如网线;上可以有多条信道;信息传输的通道;;大致分为三类;单工通信、半双工通信、全双工通信。
单工通信;信号只能往一个方向传输;任何时候都不能改变信号的传输方向;比如无线电广播。
半双工通信;信号可以双向传输;但必须是交替进行;同一时间只能往一个方向传输;比如对讲机
全双工通信;信号可以双向传输;比如手机。
链路表示从1个节点到相邻节点的一段物理线路;有线或无线;;中间没有其他交换节点;如交换机等;。比如下图中框住的部分就分别表示一条链路;集线器可看作网线;不算作交换节点;。
另外;数据链路层还有三个问题;封装成帧、透明传输和差错检测。
IP数据包来自网络层;MTU表示最大传输单元;以太网的MTU为1500字节。从网络层到数据链路层;会给数据左右两侧加上首部尾部组成帧。
当SOH、EOT分别作为帧开始符和结束符时;如果数据部分出现了 EOT;可能截取错误;所以需要对其进行转义。
那么如何检验传递过程中数据是否正确呢?
存在一个 FCS 的数据;是根据帧的数据部分和数据链路层首部计算得出;当接收数据时;网卡会对其进行校验。
在一条链路上传输数据时;需要有对应的通信协议来控制数据的传输;不同类型的数据链路;所用的通信协议可能是不同的;主要有两种。
具有载波侦听、多路访问、冲突检测的功能;使用了 CSMA/CD的网络为以太网;Ethernet;;传输以太网帧。
交换机支持全双工通信;具备上面的功能;所以用交换机组件的网络;不需要使用CSMA/CD协议;但它传输的帧依然是以太网帧;所以可以叫做以太网。
以太网帧使用得最多的是 Ethernet V2标准
以太网帧由首部;目标MAC地址、源MAC地址、网络类型; ; 数据 ; FCS 组成;而为了检测发送的数据是否有冲突;以太网帧的最小长度为64字节;而MTU为1500字节;所以计算得到数据长度范围为 46 ~ 1500 字节;如果数据长度小于 46 字节;数据链路层会自动填充一些数据;接收端再剔除。
路由器之间不使用CSMA/CD协议;而是 PPP 协议。
当IP数据报中存在与帧开始符、帧结束符冲突的数据会进行替换。
以上就是 物理层和数据链路层的相关知识; 更多有关 前端、网络协议的内容可以参考我其它的博文;持续更新中~