网卡至OS层的数据传输:
- 网卡将收到的光信号或电信号转换成数字信息
- 网卡检查如果数据包是发给自己的,就将数字信息保存到网卡内部的缓存中(此时CPU没有参与)
- 网卡将数据包到达的事件通知给CPU(通知内核),接着CPU开始使用网卡驱动来干活//【内核决定一个程序在什么时候对某部分硬件操作多长时间】
- 网卡驱动程序将数据从硬件缓冲区复制到操作系统的内核中。
- 从缓冲区读取到接受到的数据,网卡驱动会对该数据包进行拆解和分析。
- 拆解后的数据包会被传递给操作系统的网络协议栈,进行更高层次的处理。网络协议栈会根据数据包的类型和目的,将其传递给相应的传输层协议(如TCP或UDP)