您的位置  > 互联网

数据包是什么-介绍具体运用及应用实例

含有产品的包装盒必须放入邮局指定的专用纸箱中,以便可以邮寄。 这里,产品包装盒相当于数据包,里面的产品相当于可用数据,而专用纸盒相当于框架,一个框架中只有一个数据包。 “包”听起来很抽象,那么它是不是看不见呢? 通过一定的技术手段,可以感知数据包的存在。 比如2000年,把鼠标移到任务栏右下角的网卡图标上(网卡需要接双绞线,并连接网络),可以看到“发送,XX包裹,收到,XX包裹”提示。 通过数据包捕获软件,还可以捕获数据包并进行分析。 这是使用抓包软件Iris抓包数据包的界面图。 在这里,您可以清楚地看到捕获的数据包的MAC地址、IP地址、协议类型、端口号等详细信息。 通过分析这些数据,网络管理员可以了解网络中活跃的数据包类型。 简单来说,当你上网打开一个网页时,这个简单的动作就是你首先向网站发送一个数据包。 它收到后,会根据你发送的数据包的IP地址,将数据包返回到你的网页,也就是说,浏览网页实际上是数据包的交换。 1、数据链路层对数据帧的长度有限制,即链路层可以承载的最大数据长度。 该值称为最大传输单元或MTU。

以以太网为例,该值通常为1500字节。 2.对于IP数据包来说,还有一个长度。 在IP报头中,16位用于描述IP数据包的长度。 IP 数据包最大可达 65535 字节。 3.结合以上两个概念,第一个重要结论就出来了。 如果IP数据包的大小超过了MTU值,则需要进行分片,即将一个IP数据包分成多个。 这个概念很简单。 要明白,如果一辆载重5吨的卡车要拉10吨的货物,当然要拉几次。 应用示例5.当涉及到传输层时,也会有一个最大限制。 当然,只发送数据,不关心其他任何事情的UDP,不包括在我们的讨论范围内。 我们这里所说的是TCP协议。 说到大小,人们可能会想到TCP著名的滑动窗口的窗口大小,它与发送端和接收端的缓存有关。 这里讨论的是传输的最大数据包大小,因此不包括在讨论中。 在TCP的选项字段中,有一个最大分段长度(MSS),它表示TCP向另一端传输的数据的最大长度。 当一个连接建立时,连接双方都必须公布各自的MSS,也就是说,它与TCP的SYN标志一起。 当然,对于传输来说,我们总是希望MSS越大越好。 现在过载这么严重了,谁不想多买点货……不过,MSS总是有一个限制的,那就是它的值=MTU-IP头长度-TCP头长度,对于以太网来说通常是1500 -20-20=1460,虽然总是希望它可以很大(比如1460),但是在大多数BSD实现中,它是512的倍数,比如1024…… 6.回到分片。 例如执行下面的命令,“ping 192.168.0.1 -l 1473。根据我刚才说的,1473+20(ip )+8(icmp )=1501,比1500好,就会是分片,但是我们关心的是这个数据包会如何分片呢?可以猜测第一个数据包是以太网头+IP头+ICMP头+1472的数据;那么第二个分片数据包呢?它可以是,以太网报头+IP报头+ICMP报头+1字节数据或者,以太网报头+IP报头+1字节数据。” (引号里的内容这里可以不详细说明吗,不是很清楚1473的数据是怎么分成1472和1 2010.01.15 13,50的)那就是省略ICMP头的封装。 当然,IP头不能省略,不然怎么传输……事实上,TCP/IP协议采用的是后一种封装方式,这样一次就节省了8个字节的空间。

在 IP 标头中,使用三个标志来描述分段数据包。 1. 碎片标志。 如果数据包被分片,则除最后一个分片外,分片标志字段设置为 1; - 这样,对于接收端来说,该标志位可以作为重组的重要依据之一; 2. 碎片偏移标志。 仅仅有一个标志位来指示“是否是分片包”是不够的。 偏移标志位描述了该片段在原始数据报中的位置。 显然,一旦这两个标志组合起来,就很容易重新组装碎片包。 3. 不允许使用分片标志。 如果数据包强行设置了这个标志,那么什么时候应该分片,……呃,就像我刚才说的。 【什么是数据包-介绍&具体应用及应用实例】