应用层创建一个 Socket 在内核层发生了什么?
- 应用层创建 Socket 连接,进入阻塞状态
- 进入传输控制层,传输控制层准备三次握手中的第一个握手包,进入阻塞状态
- 进入网络层,通过网卡寻找 NEXT JUMP(下一跳) IP 地址,进入阻塞状态
- 进入链路层,通过下一跳 IP 地址翻译为 MAC 地址,存在直接取到,不存在进行 ARP 广播查找
- 进入物理层发送实际请求
应用层、传输控制层、网络层、链路层、物理层它们的关系层层解耦又层层依赖,它们的关系如下图:
扩展:
https://www.bilibili.com/video/BV1ai4y1s7sG
https://blog.csdn.net/weixin_42085428/article/details/107754229