发送一条微信,对方可以收到,看似很简单的一步,其实中间经过了很复杂的过程,今天我们就来讲其中的一小部分,数据封装和数据帧的传递。
在OSI参考模型中,下层没问题上层才能运作。就好比寄信,首先要有公路,物理层我们就可以理解为公路,比如网线和无线信号,只有最基础的物理连接没问题,才能传输数据。 在物理连接没问题的前提下,发送数据这个过程,我们可以看作从南京发快递去上海。而这个快递,我们需要封装三次。 1. 先封装四层报头提供源目端口号,可以看作是把数据放在一个信封里,写下我们的姓名,用来区分公司中不同的小伙伴。
2. 然后封装三层报头提供IP地址,可以看作把信封放在箱子里,写下公司的具体位置,用来标识数据的最终目的地。
3. 最后封装二层报头和二层帧尾,提供MAC地址和FCS校验和,可以看作是把打包好的箱子,放在快递车里,车头贴上中转站位置,可以一步步指引数据去往目的地址。为了防止数据在运输的过程中损坏,我们还需要在车尾贴一张保价单用来确保数据的完整性
这样一个数据帧就封装好啦,接下来我们来看看数据发送的过程。 首先将数据发送给距离我们最近的数据集散中心,也就是路由器,路由器查看二层报头之后,发现目的MAC地址是它的1号入口,再查看FCS对比快递内容,确认快递完整,可以接收。把盒子从快递车里拿出来,这一步会拆掉二层封装。
查看三层报头的目的IP,发现快递要发到上海分部,查看路由表,发现需要先把快递通过二号口发往上海集散中心。然后查看ARP映射表,发现需要发往上海集散中心一号口,所以把盒子重新装车,在车头贴上新的MAC地址,重新计算保价单贴在车尾,然后从南京集散中心二号口发出
快递车在到达上海集散中心一号口之后,再次被接收,拆包,查表,重新封装,转发到太阁上海分部
上海分部收到之后,根据二层封装接收拆包,查看三层封装。发现数据的目的IP也是自己,所以继续拆包查看四层端口号。发现数据是苏苏的,所以拆掉四层封装,将数据交给苏苏,苏苏就看到信息啦。
大家可以看到,数据帧传输其实就是不断地更换报头。网工很多理论知识,都是围绕着报头一点一点展开的,大家还知道什么有趣的报头吗?评论区讨论哦~
最后 添加太阁老师个人微信领取:太阁免费视频资料、NA综合实验配置文件拓扑图及模拟器、太阁独家实验手册、网工必读书籍等
|