为什么我们使用Linux内核的(网络)协议栈?
Posted llc_no1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么我们使用Linux内核的(网络)协议栈?相关的知识,希望对你有一定的参考价值。
1,内核态协议栈可以为多个网络应用服务,用户态协议栈就不行。比如DPDK,它会将网卡从内核unbind,然后自己独占。
2,内核态协议栈提供了丰富的协议支持/调试手段,稳定性也经过时间的检验。反观用户态协议栈处于起步阶段,对网络协议的支持有限,
大都是适配应用场景的二次开发。
如果是小型设备,通用需求,请使用内核协议栈
如果是大型设备/数据中心,需求固定,请使用DPDK等用户态协议栈,结合网络虚拟化技术,会获得最适合的性能。
以上是关于为什么我们使用Linux内核的(网络)协议栈?的主要内容,如果未能解决你的问题,请参考以下文章
[架构之路-44]:目标系统 - 系统软件 - Linux下的网络通信-4-Linux内核网络协议栈网络配置命令网络服务启动