数据包是什么? 为你全面解读

数据包是什么?相信很多的朋友们听到了这个词语都非常的好奇,既然大家都想要获得进一步的了解的话,那就需要跟随着一起来好好的研究下下面的内容 。

数据包是什么? 为你全面解读

文章插图
数据包是什么? 为你全面解读
1、数据包是什么
包(Packet)是TCP/IP协议通信传输中的数据单位,一般也称"数据包" 。
TCP/IP协议是工作在OSI模型第三层(网络层)、第四层(传输层)上的,帧工作在第二层(数据链路层) 。上一层的内容由下一层的内容来传输,所以在局域网中,"包"是包含在"帧"里的 。
【数据包是什么? 为你全面解读】2、路由器转发数据包的封装过程
1、当一个高层的数据包到达传输层,由于telnet使用TCP协议,传输层将上层传过来的数据不变在封装TCP的包头以便目标主机可以正确解包,继续向下层(网络层)传递 。
2、网络层同样不会改变之前的数据包,当然也包括之前封装的任何包头,首先主机A要对目标主机作判断,他会用自己的IP地址和自己的子网掩码进行与运算结果是172.16.12.0,然后在拿自己的掩码和主机B的IP地址作与运算,假若结果是172.16.12.0,这个时候他知道他们在同一网段内,这时他会封装自己的IP及目标的IP地址,同上层传下来的数据一下向下传 。假若是61.152.251.0,发现不在同一个网段,注意:这时也是用自己IP和目标IP进行封装,然后向下层传递 。在数据链路层这时就不会封装目的的MAC地址,他也不知道MAC地址是什么,这时他会封装网关的MAC地址,而让网关将数据转发出去 。同时在网关收到数据时候,他会查看目标IP地址,当然不是他自己的IP地址了,所以他知道这个数据包是要由他路由出去的,然后路由器查找自己的路由表,若存在到该网络的路由便按路由表从对应接口发出去,若路由表中没有到该网络的路由则检查是否存在默认路由,如果没有则丢弃数据包,并向源主机发送网络不可达icmp消息 。若一切正常,路由器会把数据包发给了他的邻居或网络运营商的路由器上去,重复以上动作,在TTL值为0之前将数据传递给某X官方网站,数据传递成功!

数据包是什么? 为你全面解读

文章插图
数据包是什么? 为你全面解读
3、数据链路层其实包括两个子层,一是LLC子层另一个是MAC子层 。我们知道在以太网中通信是物理寻址的,在这层中会封装自己的MAC地址及对方的MAC地址 。当然用户是没有通知他MAC地址是多少的,这时主机会查自己的缓存表,看有没有主机B的MAC地址,如果有就封装,否则他会发一个ARP的地址解析广播包,该包虽然可以向所有处在同一广播域中的主机发送,,但只会传递到不同网络的主机的数据链路层,更确切的说传递到了不同一网络的主机的数据链路层的高层后就被丢弃了 。
4、接着该数据会从我们的网线等传输介质传出去,主机B当收到数据的时候进行相同的工作但是作相反的操作 。
分享的内容如上文所述,大家都读完了吗?我们还在上文为大家讲解了路由器转发数据包的封装过程,希望大家会喜欢 。