传输层(TCP 和 UDP)是否读取/检查 IP 标头(源 IP、目标 IP 等)?

发布于 2025-01-06 08:15:17 字数 177 浏览 0 评论 0原文

我们都知道 TCP 套接字由四元组条目标识: 源IP, 目标IP, 源端口 目标端口

TCP 执行多路复用和多路分解来自/到主机上运行的不同进程的数据的工作。

在解复用的情况下,目标 IP 信息仅存在于 IP 标头中。为什么目标 IP 会被传输层 (TCP) 读取?

请解释一下我很困惑吗?

We all know that a TCP socket is identified by a four tuple entry:
src ip,
dest ip,
src port
dest port

TCP does the job of Multiplexing and Demultiplexing the Data from/to differnt processes running on the host.

In case of Demultiplexing, Destination IP information is there only in IP Headers. How come Dest IP is read by Transport Layer (TCP)?

Plz explain I m very much confused?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

作妖 2025-01-13 08:15:17

在这种情况下所谓的 TCP 实际上是 TCP/IP,就像 TCP over IP 一样(UDP/IP 是同一件事)。事实上,[TC|UD]P 和 IP 在当前所有主要套接字实现中都在代码上极度交织。

套接字本身从 IP 层向上工作,因此它具有目标 IP 信息,只有套接字协议处理程序将其专门用于 TCP。因此,通过调用

socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)

(或其他语言中的等效项),您将创建一个使用 TCP(第三个参数)的 IP 套接字(第一个参数)。这意味着套接字具有 IP 信息和 TCP 信息,

What is called TCP in this context, is in reallity TCP/IP as in TCP over IP (UDP/IP is the same thing). In fact, [TC|UD]P and IP are extremly interwoven codewise in all major current socket implementations.

The socket itself works from the IP layer upward, thus it has the Destination IP info, only the socket protocol handler specialises this to TCP. So by calling

socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)

(Or its equivalents in other languages) you will create an IP socket (first parameter), that uses TCP (3rd parameter). This implies, that the socket has the IP information as well as the TCP info,

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文