我了解 ISO 模型的一般意义,但我的理解是来自应用程序层的通常很大的数据会分成许多 TCP 数据包。同样的事情也会发生在数据链路层上,它将来自第 3 层的 IP 数据包分成帧。看看这张图片。
我的问题是第 3 层网络和第 5 层数据 (TCP/IP) 如何知道它们何时拥有来自较低层的所有数据。
如果不清楚我的意思是我是否有 HTTP 请求;这将被分成许多 TCP(第 4 层)数据包。某处某台计算机会收到这些 TCP 数据包,但我怎么知道这些数据包是否足以让我查看整个 HTTP 请求。第 4 层是否只是连续附加数据包,而第 5 层可以查看它拥有的数据并确定这是否是一个完整的 HTTP 请求。HTTP 请求中是否有信息表明这是 HTTP 请求的结束。
这也适用于第 3 层。因为 IP 数据包被分成帧;网络层(3)是否有办法在接收到一些以太网帧后确定它有一个完整的 TCP 数据包。
我试图了解第 3 层(较低层)帧本身是否有一种说法,这是一个完整 IP 数据包的结束,或者以太网帧是否只是不断附加,这取决于第 3 层(较高层)说这是一个完整的 IP 数据包,与第 4 层和第 5 层相同。