06.物理层_数据链路层

不同的路由器效果是不一样的,路由器端口不需要设IP的,可以支持同网段通信。

不同网段之间第一个数据包会丢失的原因:

因为不同网段之间第一次发送ICMP的时候,不知道对方的MAC地址,所以要发送ARP请求,当获取到自己网关的MAC地址时,才会发送ICMP。但是路由器另一个端口却不知道目标IP的MAC地址,一边要处理ICMP,一边还要发送ARP询问目标MAC地址,实在是忙不过来,它就会把ICMP丢掉,先去处理ARP请求,学习并且记录目标的MAC地址,这就是第一个数据包会丢失的原因。

网络互连模型

客户端到服务器的过程是层层封装,层层解封装

网络分层

在这里插入图片描述

物理层( Physical

◼ 物理层定义了接口标准、线缆标准、传输速率、传输方式等

集线器工作在物理层,因为它不会去判断MAC地址

数字信号、模拟信号

◼ 模拟信号(Analog Signal)

连续的信号,适合长距离传输

抗干扰能力差,受到干扰时波形变形很难纠正

◼ 数字信号(Digital Signal)

在这里插入图片描述

离散的信号,不适合长距离传输,一会在上面,一会在下面,用0和1来标识

抗干扰能力强,受到干扰时波形失真可以修复

数据通信模型

◼ 局域网通信模型

在这里插入图片描述

注意:网线不能超过100米,超过100米就不能通信了,如果距离真的超过100米,只能在加一台交换机

广域网通信模型

在这里插入图片描述

注意:为了解决远距离传输,引入电话线/光纤,通过调制解调器/光电转换器来进行信号转换

信道(Channel)

◼ 信道:信息传输的通道,一条传输介质上(比如网线)上可以有多条信道

在这里插入图片描述

◼ 单工通信

信号只能往一个方向传输,任何时候都不能改变信号的传输方向

比如无线电广播、有线电视广播

◼ 半双工通信

信号可以双向传输,但必须是交替进行,同一时间只能往一个方向传输

比如对讲机

◼ 全双工通信

信号可以同时双向传输

比如手机(打电话,听说同时进行)

数据链路层( Data Link

◼ 链路:从1个节点到相邻节点的一段物理线路(有线或无线),中间没有其他交换节点

在这里插入图片描述

集线器没有智商,所以计算机0到路由器0算一条链路,不同的链路因为MAC地址不一样,所以其数据包是不一样的

交换机是二层设备(物理层、数据链路层),因为它会处理MAC地址

◼ 数据链路:在一条链路上传输数据时,需要有对应的通信协议来控制数据的传输

不同类型的数据链路,所用的通信协议可能是不同的

✓ 广播信道:CSMA/CD协议(比如同轴电缆、集线器、交换机等组成的网络)

✓ 点对点信道:PPP协议(比如2个路由器之间的信道)

◼ 数据链路层的3个基本问题

封装成帧

透明传输

差错检验

数据链路层 —封装成帧

在这里插入图片描述

注:帧的首部和尾部,谁前谁后无所谓。

◼ 帧(Frame)的数据部分

就是网络层传递下来的数据包(IP数据包,Packet)

◼ 最大传输单元MTU(Maximum Transfer Unit)

每一种数据链路层协议都规定了所能够传送的帧的数据长度上限

以太网(暂时理解为CSMA/CD协议)的MTU为1500个字节

数据链路层—透明传输

使用SOH(Start Of Header)作为帧开始符,使用EOT(End Of Transmission)作为帧结束符,当数据部分当中出现EOT时,接收端会误认为帧结束,从而导致数据传输出现问题。为了解决这个问题,我们采用数据部分一旦出现了SOH、EOT、ESC,就用ESC进行转义。

在这里插入图片描述

因为接收端感觉不到我们对他进行了转义,所以理解为是透明传输

数据链路层 —差错检验

FCS是根据数据部分 + 首部计算得出的

数据在信道传输过程中受到干扰,信号有可能会失真,接收端在接收到数据时会根据数据部分 + 首部进行计算,与FCS进行比较,一样就接收,不一样就丢弃

在这里插入图片描述

CSMA/CD协议

◼ CSMA/CD(Carrier Sense Multiple Access with Collision Detectio)

载波侦听多路访问/冲突检测(主要是交换机之前使用的)

◼ 使用了CSMA/CD的网络可以称为是以太网(Ethernet),它传输的是以太网帧

以太网帧的格式有:Ethernet V2标准、IEEE的802.3标准

使用最多的是:Ethernet V2标准

◼ 为了能够检测正在发送的帧是否产生了冲突,以太网的帧至少要64字节

因为只有这样才可以保证发送的数据帧,过去遇到冲突回来的时候仍然在发送,这样子PC才会知道到底是对方发送回来的数据还是遇到了冲突

◼ 用交换机组建的网络,已经支持全双工通信,不需要再使用CSMA/CD,但它传输的帧依然是以太网帧,所以,用交换机组建的网络,依然可以叫做以太网

局域网技术又叫以太网技术。用的是同一种技术,所以协议也应该是一样的

Ethernet V2帧的格式

◼ 首部:目标MAC +源MAC + 网络类型

◼ 以太网帧:首部 + 数据 + FCS

◼ 数据的长度至少是:64 – 6 – 6 – 2 – 4 = 46字节

在这里插入图片描述

以太网使用曼彻斯特编码,接收端接收过程只要发现没有信号跳变,就认为帧结束,以太网帧使用了该编码后,就不需要开始符和结束符。当帧到达物理层时就会加入帧开始定界符、前同步码,前同步码可以获取时钟同步。

因为走的是广播信道,要确认到底谁可以收,谁不可以收,所以要标注MAC地址。

Ethrenet V2标准

◼ 当数据部分的长度小于46字节时,数据链路层会在数据的后面加入一些字节填充,接收端会将添加的字节去掉。

◼ 长度总结

以太网帧的数据长度:46~1500字节

以太网帧的长度:64~1518字节(目标MAC +源MAC + 网络类型 + 数据 + FCS)

PPP协议(Point to Point Protocol)

◼ Address字段:图中的值是0xFF,形同虚设,点到点信道不需要源MAC、目标MAC地址

因为传输道路上只有我和你

◼ Control字段:图中的值是0x03,目前没有什么作用

◼ Protocol字段:内部用到的协议类型

◼ 帧开始符、帧结束符:0x7E

不同协议传输的数据是不一样的,但是大家封装的网络层的数据是一样的

传输的协议发生了变化,代表着帧的首部和尾部发生了变化

在这里插入图片描述

PPP协议—字节填充

◼ 将0x7E替换成0x7D5E

◼ 将0x7D替换成0x7D5D

在这里插入图片描述

网卡(工作在物理层、数据链路层)

◼ 网卡接收到一个帧,首先会进行差错校验,如果校验通过则接收,否则丢弃

◼ Wireshark抓到的帧没有FCS ,因为它抓到的是差错校验通过的帧(帧尾的FCS会被硬件去掉,因为已经没用了。)

Wireshark抓不到差错校验失败的帧

猜你喜欢

转载自blog.csdn.net/m0_53008479/article/details/120603037