随着虚拟化技术快速发展,越来越多的产品从本地转移到云上运行,而这些产品都是通过网络对外提供服务的。为了能更好地应用网络通信技术,我们有必要了解虚拟化网络背后的运作机制,理解各网络组件的工作原理及其特性,并将理论知识应用到产品开发中,进而提升产品质量。
本章以内核代码为基础,讲解Linux操作系统收发报文的完整流程,包括如下主要内容。
➢ 接收报文流程: 从硬件接收报文开始,到内核协议栈,再到应用程序,清楚地看到用户应用程序接收报文的完整流程。
➢ 发送报文流程: 与接收报文流程相反,从用户应用程序发出报文开始,再到内核协议栈,最后从硬件设备发出报文。
鉴于篇幅,本章只介绍内核收发报文的主体脉络,若读者对内核实现细节有兴趣,则可以自行阅读相关资料。