假设您有一台现代计算机,它有一个 1 Gpbs 以太网端口,运行标准 Linux 操作系统。系统在以太网端口上接收到一个网络数据包。接下来会发生什么?数据包如何处理?它如何传输到 OSI 模型的上层?最终导致数据包离开以太网端口。
我并不是想寻求深层次的技术解释,而只是希望了解“计算机内部网络数据包的生命周期”的概述。涉及哪些组件?处理器、DMA、缓冲区、中断、内核、用户空间等。如果您想为您的回复做出一些假设,请随意这样做。
这是一个起点...当数据包到达以太网端口的接收队列时,以太网芯片会产生一个中断来向处理器发出有关该数据包的信号...
答案1
好问题,明天我会尽力回答。会有很多图片。+ 20h。