linux系统收发网络数据

  • 接收



  • 屏蔽网卡的中断:目的是避免CPU被频繁中断而无法处理其他任务,屏蔽中断是告诉网卡已经知道内存中有数据了,下次再收到数据包直接写内存就可以了,不要再通知 CPU 了。

  • DMA:直接内存访问,而无需经过cpu干预,不依赖cpu搬运数据

  • Ringbuffer:环形缓冲区 : 高速数据接受,直接写不需要分配独立的地址空间;高效内存管理;环形,防止数据过多

  • sk_buffer : 丰富数据管理,可以存储数据包和其他元数据;sk_buffer是内核协议接口的标准数据格式

  • 发送


    b4c50f17be8af80016b47416c602372.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容