传输层(TCP 和 UDP)是否读取/检查 IP 标头(源 IP、目标 IP 等)?
我们都知道 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在这种情况下所谓的 TCP 实际上是 TCP/IP,就像 TCP over IP 一样(UDP/IP 是同一件事)。事实上,[TC|UD]P 和 IP 在当前所有主要套接字实现中都在代码上极度交织。
套接字本身从 IP 层向上工作,因此它具有目标 IP 信息,只有套接字协议处理程序将其专门用于 TCP。因此,通过调用
(或其他语言中的等效项),您将创建一个使用 TCP(第三个参数)的 IP 套接字(第一个参数)。这意味着套接字具有 IP 信息和 TCP 信息,
What is called
TCP
in this context, is in reallityTCP/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
(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,