在排队延迟期间,TCP、IP 和数据链路头是否充当一个数据包或 3 个不同的数据包?

在排队延迟期间,TCP、IP 和数据链路头是否充当一个数据包或 3 个不同的数据包?

根据维基百科的定义,我发现处理延迟是路由器处理数据包头所导致的延迟。我只是想知道 TCP、IP 和数据链路头是否都封装在同一个数据包中,还是 3 个单独的数据包中?

答案1

这取决于你查看的是哪个层级。例如,如果你查看以太网上封装了 TCP 数据包的数据包,你会发现以太网数据包内有 TCP 报头。当它到达 IP 层时,以太网数据包报头已被删除。

答案2

它们都是同一个协议数据单元. 数据链路框架在其数据区域中保存 IP,它本身拥有一个 TCP部分维基百科的文章似乎确实提到了“packet”,但链接的定义描述第 2 层的通用协议数据单元,而不是 ISO 的 IP 数据包OSI 模型或者DARPA ARPANET 堆栈定义它。这可能是您感到困惑的部分原因。

它还可以帮助您了解路由器和交换机在缓冲和转发出站帧方面有几种不同的模式(直通对比存储转发),包括他们是否等待整个帧进入并计算其帧校验序列,然后再对帧及其内部协议数据做出任何实际决定。这可能会极大地影响您询问的处理延迟。

相关内容