Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 传输层(TCP和UDP)是否读取/检查IP头(源IP、目标IP等)?_Sockets_Tcp_Header_Ip - Fatal编程技术网

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

Sockets 传输层(TCP和UDP)是否读取/检查IP头(源IP、目标IP等)?,sockets,tcp,header,ip,Sockets,Tcp,Header,Ip,我们都知道TCP套接字由四元组条目标识: src ip, 目的地ip, src端口 目的港 TCP负责将数据从主机上运行的不同进程进行多路复用和解多路复用 在解复用的情况下,目标IP信息仅存在于IP报头中。如何通过传输层(TCP)读取目的地IP 请解释一下,我非常困惑?在本文中,所谓的TCP实际上是TCP/IP和TCP over IP(UDP/IP是同一回事)。事实上,[TC | UD]P和IP在当前所有主要的套接字实现中都是以代码方式交织在一起的 套接字本身从IP层向上工作,因此它具有目标IP

我们都知道TCP套接字由四元组条目标识: src ip, 目的地ip, src端口 目的港

TCP负责将数据从主机上运行的不同进程进行多路复用和解多路复用

在解复用的情况下,目标IP信息仅存在于IP报头中。如何通过传输层(TCP)读取目的地IP


请解释一下,我非常困惑?

在本文中,所谓的
TCP
实际上是
TCP/IP
和TCP over IP(
UDP/IP
是同一回事)。事实上,[TC | UD]P和IP在当前所有主要的套接字实现中都是以代码方式交织在一起的

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

socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)

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

感谢Eugen的回复。。所以你的意思是说TCP over IP是一个使用的特定协议,并且“独立TCP”的实现不存在..我知道没有TCP/xx实现,其中xx不在(IPv4,IPv6)