Флаг сброса TCP (RST)

Я пытаюсь транслировать видео между 2 хостами и я пытаюсь имитировать изменение сценария IP, клиент начал слушать сервер, то я переехал клиент на новый коммутатор и он получил 192.168.2.5, я использую Mininet и Ryu контроллер. моя топология выглядит следующим образом:

ha-eth0<->s1-eth1 (OK OK)
hb-eth0<->s2-eth12 (OK OK)
hc-eth0<->s1-eth3 (OK OK)
s2-eth1<->s1-eth4 (OK OK)
s2-eth2<->s3-eth1 (OK OK)

Я использую VLC-wraper и протокол HTTP для streaminh. кроме того, я установил потоки folwing для изменения IP-адреса clint на коммутаторах 1 и 2:

 cookie=0x0, duration=1012.669s, table=0, n_packets=2, n_bytes=1894, idle_age=1004, priority=3,ip,nw_src=192.168.2.2,nw_dst=192.168.2.3 actions=output:4

 cookie=0x0, duration=1012.668s, table=0, n_packets=1, n_bytes=54, idle_age=1004, priority=3,ip,nw_src=192.168.2.3,nw_dst=192.168.2.2 actions=output:1

 cookie=0x0, duration=1059.340s, table=0, n_packets=1, n_bytes=947, idle_age=1051, priority=3,ip,nw_src=192.168.2.2,nw_dst=192.168.2.3 actions=mod_nw_dst:192.168.2.5,output:12

 cookie=0x0, duration=1059.340s, table=0, n_packets=1, n_bytes=54, idle_age=1051, priority=3,ip,nw_src=192.168.2.5,nw_dst=192.168.2.2 actions=mod_nw_src:192.168.2.3,output:1

ха(хозяина) ИС 192.168.2.2 (хост-клиент)


НВ(узел Б) это старый IP 192.168.2.3 и новый IP-это 192.168.2.5 (хост-сервере)

когда поток остановился, я проверил Wireshark и заметил, что сначала был TCP, но я не знаю почему? может кто-нибудь взглянуть на файлы Wireshark и рассказать мне причины.

Я подключил вывод Wireshark для обоих хостов
https://drive.google.com/open?id=1rcVlNT2cwnvNL4-4j061xGpKJohSdU9z

5
задан Salem Masoud
13.03.2023 21:05 Количество просмотров материала 2576
Распечатать страницу

1 ответ

в соответствии со спецификациями TCP, идентификация TCP соединения определяется комбинацией этих четырех вещей:

  • IP-адрес конечной точки A
  • номер порта TCP конечной точки A
  • IP-адрес конечной точки B
  • номер порта TCP конечной точки B

Если любая из этих четырех вещей изменяется, то базовым определением протокола TCP это уже не та же связь.

когда ваш Хост B переключился со своего старого IP на Новый, все существующие соединения и связанное с ними состояние были привязаны к старому IP адресу. Операционная система достаточно умна, чтобы знать, что как только IP-адрес интерфейса изменяется, любые существующие TCP-соединения не могут быть продолжены, поскольку старый IP-адрес больше не может использоваться.

по-видимому, изменение IP-адреса было довольно резким, что касается Хоста B: нет DHCPRELEASE, ни какой-либо попытки упорядочить завершение существующих подключений перед удалением старого IP-адреса.

в результате на сетевом интерфейсе хоста B, как старый IP-адрес сорван, так и любые TCP-соединения, которые были связаны со старым IP.

ваша программно-определяемая сеть, по-видимому, заботится о переводе адресов назначения пакетов, поступающих с хоста A на новый IP-адрес , но операционная система хоста B этого не знает, и поэтому она не имеет понятия, что в этом в конкретном случае можно было бы сохранить состояние соединения и продолжать использовать его даже с новым IP-адресом.

Итак, как только хост B получает один из повторно переданных пакетов от хоста A, он видит, что он адресован от 192.168.2.2, порт 1234 до 192.168.2.5, порт 37186. Нет никакой записи о существующем TCP-соединении с теми точными параметрами-таким образом, операционная система может только передать TCP RST как ответ.

(даже если старая информация, связь держали, у этого была сторона хоста B в IP-адресе как 192.168.2.3, насколько хост B знает, этот новый пакет к 192.168.2.5 не имеет абсолютно никакого отношения к тому старому соединению.)

когда первый ответ возвращается на хост A, SDN преобразует его исходный адрес в 192.168.2.3, поэтому хост A распознает его как принадлежащее существующему соединению. И поэтому хост A получит сообщение о том, что поток мертв.

1
отвечен telcoM 2023-03-15 04:53

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх