Transport层如何从数据报包中检索源IP地址?

时间:2011-12-06 03:59:39

标签: protocols

传输层如何从数据报包中检索源IP地址? 根据我的理解,IPaddress位于网络层标头中,传输层标头仅包含源端口和目标端口。如果我遗漏了某些内容,请告诉我

1 个答案:

答案 0 :(得分:0)

简单的答案是传输层不从数据报包中检索IP地址。

当数据报从源发送到目的地时,以下是数据报传输时IP如何工作的简单步骤:

  • 上层应用程序将数据包发送到网络层。
  • 数据计算以及校验和。
  • 构建的IP标头和数据报。
  • 通过网关路由。
  • 每个网关的IP层执行校验和。如果校验和不匹配, 数据报将被删除,并将返回错误消息 发送机器。一路上,如果TTL递减到0,则相同 结果会发生。并且,目标地址路由路径将是 当数据报传递时,确定每一站 网络
  • 数据报到达目标网络层。
  • 执行校验和计算。
  • 取出IP标头。
  • 消息传递给上层应用程序。

修改

应用程序将套接字绑定到其数据传输端点,该端点是IP地址和服务端口的组合。然后使用此绑定来确定应用程序层上的哪个应用程序需要访问。

例如,应用程序A在某个端口X上提供UDP服务。然后,当应用程序A启动时,它将尝试绑定到端口X.如果由于端口正在使用而无法绑定到它,则操作系统将引发应用程序必须处理的错误。同样在OSI体系结构中,每个层依赖于其下面的层来实际传输数据,为其自己的预期目的添加或提供特定功能。

根据RFC

  

概念上以UDP头为前缀的伪头包含   源地址,目的地址,协议和UDP   长度。此信息可防止错误路由的数据报。   此校验和过程与TCP中使用的过程相同。

有关详细信息的详细信息,请查看RFC User Datagram Protocol