本帖最后由 ztbf 于 2018-7-19 13:48 编辑
主机A向主机B发送一个数据包,后者收到了,回复一个数据包,从而实现两台主机之间的通信。数据在转发的过程中会进行一系列的封装和解封装,
一 主机A需要知道主机B的MAC地址和IP地址才会发送数据。
1 首先主机A数据包要进行TCP封装
2 然主机A完成传输层封装后,进行网络层数据封装,在使用IP进行封装时
3 主机A首先会查询ARP缓存表,如果有直接将数据包要封装成数据帧,如果没有查找到网关的MAC地址表项,主机A会通过发送ARP请求来获取网关的MAC地址。
4 主机B收到后将解封装,首先将以太网帧剥离,然后IP报文头被处理完并剥离后,数据段会被发送到传输层进行,TCP处理完头部信息后会将此数据段头部进行剥离,然后将剩下的应用数据交给程序处理。 附 :有很多主机连接交换机互相通信,这是交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的映射,并将其写入MAC地址表中。交换机将数据帧中的目的MAC地址同已建立的MAC地址表进行比较,以决定由哪个端口进行转发。
|