链路层
以太网协议,ARP协议;
链路层负责了相邻数据之间的数据转发;
以太网协议:
用于描述相邻设备通信;
协议格式:
48位对端&源端MAC地址:描述了相邻的亮哥指定物理硬件设备;
16位上层协议:描述的是以太网帧中数据所使用的协议,用于数据分用时协议选择;
数据;
32位数据帧位:包含了校验和;
MAC地址:是物理硬件地址,是每一块网卡在出场时设定的地址,早期是固定不可修改的;
ARP协议:
介于链路层和网络层之间的协议,可以通过IP地址获取指定设备的MAC地址;
获取方式:
①广播ARP请求,将目的端IP地址设置为全1(广播地址),包含了自己的IP与MAC地址,以及指定设备的IP地址;
②收到ARP请求的主机,会验证目标IP地址是否与自己一致,不一致则丢弃,一致则组织ARP响应填充自己的MAC地址进行回复;
ARP欺骗
而已主机不断大量发送arp响应给局域网中的所有主机,伪装自己是网关设备;
MTU
链路层限制的最大传输单元,以太网默认位1500;
对上层协议的影响:
TCP:
在三次握手阶段双方会协商MSS(最大数据段大小),取小的一方作为实际传输最大大小;
MSS—最大数据段大小,是根据MTU进行计算;
MSS = MTU - 最小IP报头大小 - 最小TCP报头大小;
UDP:
没有MSS协商,只要数据封装报头后大小小于64K即可发送,但是若在网络层封装IP报头后大于MTU就会分片;
但是传输过程中若出现分片丢失会导致重组失败,整个报文都会被丢弃,存在较大风险;
因此TCP通信安全性较高,UDP通信时候如果数据过大则需要在应用层做好分包工作,减少分片;