TCP段中的端口号不是多余的吗?

网络工程 tcp
2022-03-01 07:08:17

为什么 TCP 段包含源和目标端口号,而此信息已经存在于网络层数据报 (IP) 中?

我们不能利用后者来获取端口号吗?

1个回答

嗯?我假设您的“网络层数据报”应该是 IP 数据包 - IP 数据包只携带传输层的协议号,没有其他特定于传输层的。

包含 0x06 的标头协议号字段表示数据包的有效负载是 TCP 段。

TCP 段有自己的标头,指示源端口号和目标端口号。

您可以自己查看标题中的内容:

IPv4:https ://en.wikipedia.org/wiki/IPv4#Header

IPv6:https ://en.wikipedia.org/wiki/IPv6_packet#Fixed_header

TCP:https ://en.wikipedia.org/wiki/Transmission_Control_Protocol#TCP_segment_structure