其实在网络传输中,分为不同的层次,然后不同的层分类了不同的协议,我们来简单看一下协议的分类图:
今天我来讲解一下APR协议:
- 什么是ARP协议:
对于APR协议,我们首先需要了解网络IP的概念,在网络层中,IP是网络层的唯一标识,但是对于我们寻找到网络局域后进行通信的具体主机是哪一台,也就是确定具体的接收方主机,我们需要确定双方的MAC帧,也就是物理地址,物理地址才能够真正确定双方的具体对象,IP是针对于网络层而言的唯一性。所以为了避免发送端不知道接收端的MAC地址,所以就出现了ARP协议。
ARP协议就是根据目的主机的IP地址,广播通知,然后收取目的主机所应答的MAC地址。然后在进行数据的传输。
RARP是MAC地址到IP地址的转换,但是现在已经不怎么使用了。
ARP协议是使用在数据链路层的。
ARP请求数据格式:
2.ARP的数据报格式:
假设传送方为
0000: ff ff ff ff ff ff 00 05 5d 61 58 a8 08 06
ARP帧(28字节)
0000: 00 01
0010: 08 00 06 04 00 01 00 05 5d 61 58 a8 c0 a8 00 37
0020: 00 00 00 00 00 00 c0 a8 00 02
填充位(18字节)
0020: 00 77 31 d2 50 10
0030: fd 78 41 d3 00 00 00 00 00 00 00 00
图片:
应方通过广播后产生相应,应答数据:
以太网首部 (14字节)
0000: 00 05 5d 61 58 a8 00 05 5d a1 b8 40 08 06
ARP帧(28字节)
0000: 00 01
0010: 08 00 06 04 00 02 00 05 5d a1 b8 40 c0 a8 00 02
0020: 00 05 5d 61 58 a8 c0 a8 00 37
填充位 (18字节)
0020: 00 77 31 d2 50 10
0030: fd 78 41 d3 00 00 00 00 00 00 00 00
图片:
所以对于应答方来说,传输过去的目的地址,源地址已经进行交换。