首页 > 解决方案 > 如果套接字连接到其主机的IP地址,linux内核是否会优化包传输?

问题描述

案例1:进程使用IP地址(“127.0.0.1”或“10.xx.xx.xx”与自己的主机相同)与自己的主机建立套接字连接。

案例 2:一个进程建立一个到另一个主机的套接字连接

Linux内核针对案例1做了哪些优化?IMO,对于案例 1,不需要执行 TCP/IP 协议代码。

标签: linuxsocketsloopback

解决方案


此类通信没有优化,TCP/IP 数据包仍然必须通过整个 TCP 堆栈。即使是环回,也必须对流量应用连接握手、跟踪和过滤。这就是为什么在性能受限的场景中使用本地 UNIX 套接字的原因。


推荐阅读