Основы TCP-соединения - PullRequest
2 голосов
/ 17 июля 2010

Это основное сомнение, но я хотел знать, что если установить два TCP-соединения между одними и теми же двумя компьютерами, будут ли пакеты в обоих соединениях идти по одному и тому же пути (один и тот же канал и узлы). Причина, по которой я спрашиваю об этом, заключается в том, что я хочу измерить полосу пропускания между двумя компьютерами для TCP-соединений как IPv4, так и Ipv6, и хочу убедиться, что оба эти соединения следуют по одному и тому же пути.

Ответы [ 3 ]

6 голосов
/ 17 июля 2010

Если у вас нет контроля над сетью и маршрутизацией между двумя хостами, вы никогда не должны делать это предположение.Это особенно верно для IPv4 против IPv6, так как собственных сетей IPv6 пока не так много, и туннели могут следовать по совершенно другим маршрутам, чем «прямой» IPv4.

Что еще хуже, IIRC не останавливает ничегонекоторые промежуточные сети перенаправляют половину ваших пакетов по одной ссылке, а другую половину - по другой, так что вы не можете предположить, что каждый TCP-пакет в одном соединении также будет следовать по одному и тому же пути.

2 голосов
/ 17 июля 2010

Теоретически, не обязательно, но на практике это зависит от того, где расположены две машины. Если между двумя компьютерами есть только один набор маршрутизаторов, то ответ на ваш вопрос - да.

1 голос
/ 17 июля 2010

2 Соединения TCPv4 могут проходить по разным путям, хотя это не обычно.TCPv4 и TCPv6, вероятно, используют разные пути для не полной реализации TCPv6.[Обычно остров IPv6 соединяет узлы IPv4 с туннелями.].

Для Интернета, конечно, маршруты BGPv6 сильно отличаются от BGPv4.

...