TCP 重置 (RST) 标志

TCP 重置 (RST) 标志

我正在尝试在两个主机之间传输视频,我也在尝试模拟更改 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 协议进行流式传输。此外,我安装了以下步骤来修改交换机 1 和 2 上的客户端 IP:

 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

ha(主机 A)IP 为 192.168.2.2(客户端主机)
hb(主机 B)旧 IP 为 192.168.2.3,新 IP 为 192.168.2.5(服务器主机)

当流停止时,我检查了 Wireshark 并发现有 TCP RST,但我不知道为什么?有人可以查看 Wireshark 文件并告诉我原因吗?

我附上了两台主机的 Wireshark 输出 https://drive.google.com/open?id=1rcVlNT2cwnvNL4-4j061xGpKJohSdU9z

答案1

根据 TCP 规范,TCP 连接的身份由以下四个因素的组合决定:

  • 终端A的IP地址
  • 端点 A 的 TCP 端口号
  • 端点B的IP地址
  • 端点 B 的 TCP 端口号

如果这四个因素中的任何一个发生变化,那么根据基本的 TCP 协议定义这不再是同一个连接

当您的主机 B 从旧 IP 切换到新 IP 时,所有现有连接及其相关状态都与旧 IP 地址绑定。操作系统非常聪明,知道一旦接口的 IP 地址发生变化,任何现有 TCP 连接都无法继续,因为旧 IP 地址不再可用。

显然,就主机 B 而言,IP 地址的更改相当突然:在拆除旧 IP 地址之前,没有 DHCPRELEASE,也没有尝试有序终止现有连接。

因此,在主机 B 的网络接口上,随着旧 IP 地址被拆除,与旧 IP 关联的任何 TCP 连接也将被拆除。

您的软件定义网络显然负责将来自主机 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 的新数据包与旧连接完全无关。)

当 RST 响应返回到主机 A 时,SDN 会将其源地址转换为 192.168.2.3,因此主机 A 会将其识别为属于其现有连接。因此主机 A 将收到流已终止的消息。

相关内容