在 TCP/IP 堆栈中放置实际负载的位置
Where in the TCP/IP stack the actual payload is placed
我是这个领域的初学者,在阅读有关 tcp/ip 堆栈的文章后,我发现每一层都有自己的有效负载字段。
如果我们假设栈组件的结构如下:
Aplication
Transport
Network
Data Link
Physical Link
而且我们知道上述每一层都有自己的有效负载层,出现以下问题:
在哪一层放置实际传输的有效负载数据?
如果答案(例如)是将数据放入应用程序层,那么其他层有效负载中有什么?
他们是空的吗?
对不起,英语不是我的母语!
应用层的负载包含您正在传输的数据。例如,包含您正在访问的网页的 HTML 的 HTTP 响应。
所有应用层的字节都放在传输层的有效载荷中。您的 HTTP 数据包现在是 TCP 数据包的负载,TCP 数据包包含 link 控制信息。
TCP 数据包现在放置在网络层的有效负载中。继续该示例,您的 TCP 数据包现在放置在一个 IP 数据包中,该数据包包含源计算机和目标计算机的 IP 地址。
这个概念叫做封装。您可以在 Wikipedia.
上阅读更多内容
这是维基百科文章中的一张图片来说明它:
我是这个领域的初学者,在阅读有关 tcp/ip 堆栈的文章后,我发现每一层都有自己的有效负载字段。 如果我们假设栈组件的结构如下:
Aplication
Transport
Network
Data Link
Physical Link
而且我们知道上述每一层都有自己的有效负载层,出现以下问题: 在哪一层放置实际传输的有效负载数据? 如果答案(例如)是将数据放入应用程序层,那么其他层有效负载中有什么? 他们是空的吗? 对不起,英语不是我的母语!
应用层的负载包含您正在传输的数据。例如,包含您正在访问的网页的 HTML 的 HTTP 响应。
所有应用层的字节都放在传输层的有效载荷中。您的 HTTP 数据包现在是 TCP 数据包的负载,TCP 数据包包含 link 控制信息。
TCP 数据包现在放置在网络层的有效负载中。继续该示例,您的 TCP 数据包现在放置在一个 IP 数据包中,该数据包包含源计算机和目标计算机的 IP 地址。
这个概念叫做封装。您可以在 Wikipedia.
上阅读更多内容这是维基百科文章中的一张图片来说明它: