2

这是一个基本的疑问,但我想知道如果在相同的两台机器之间建立两个 TCP 连接,两个连接中的数据包是否会遵循相同的路径(相同的链接和节点)。我之所以问这个问题是因为我想测量两台机器之间 IPv4 和 IPv6 TCP 连接的带宽,并且我想确保这两个连接都遵循相同的路径。

4

3 回答 3

6

除非您可以控制两台主机之间的网络和路由,否则您永远不应该做出这样的假设。对于 IPv4 与 IPv6 来说尤其如此,因为目前还没有太多的本地 IPv6 网络,并且隧道可能遵循与“直接”IPv4 截然不同的路线。

更糟糕的是,IIRC 没有什么能阻止一些中间网络通过一个链接路由一半数据包,而另一半通过其他链接路由数据包,因此您不能真正假设一个连接中的每个 TCP 数据包都将遵循相同的路径。

于 2010-07-17T19:33:28.200 回答
2

理论上,不一定,但实际上,这取决于两台机器的位置。如果两台机器之间只有一组路由器,那么你的问题的答案是肯定的。

于 2010-07-17T19:29:45.807 回答
1

2 个 TCPv4 连接可能遵循不同的路径,尽管这并不常见。TCPv4 和 TCPv6 可能使用不同的路径来实现不完整的 TCPv6。[ 通常有 IPv6 岛将 IPv4 节点与隧道连接起来。]。

对于 Internet,BGPv6 路由肯定与 BGPv4 完全不同。

于 2010-07-17T19:43:43.213 回答