【问题标题】:Why do I need source port on UDP为什么我需要 UDP 上的源端口
【发布时间】:2016-02-09 04:53:54
【问题描述】:

当我使用 TCP 时,我需要目标端口(以便能够与其他主机上的其他进程“对话”)和源端口(因为 TCP 是面向连接的,所以我会将数据发送回源,如 ack、seq 和更多的)。 另一方面,无连接的UDP也需要源端口。

为什么会这样? (我不需要发回数据)

【问题讨论】:

    标签: tcp udp port


    【解决方案1】:

    您不需要,但仍有可能发回响应(这实际上非常有用),但正如 RCF 768 中所述

    Source Port 是一个可选字段,当有意义时,它表示端口 的发送过程,并且可以假定为端口 应在没有任何其他信息的情况下作出答复。如果 未使用,插入零值。

    https://www.rfc-editor.org/rfc/rfc768

    【讨论】:

      【解决方案2】:

      可能有两个原因。

      首先,接收者通常需要回复,为此提供标准工具很有用。

      其次,您可能有多个接口(网卡)并使用源地址,您决定必须使用其中的哪个来发送数据包。

      【讨论】:

        【解决方案3】:

        我想在这里添加答案。除了简单地知道要回复什么之外,源端口还可以属于list of well-known port numbers。这些端口指定UDP(或TCP!)数据包中封装的数据类型。

        例如,源端口530表示包中包含Remote Procedure Call,520表示包中包含Routing Information Protocol

        【讨论】:

          猜你喜欢
          • 2023-03-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-03-16
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多