高级架构之用户态网络协议栈TCP/IP设计

 目录 

  • 一、背景

  • 二、NtyTcp的微内核网络协议栈方案

    • 1. 网络协议栈

    • 2. NtyTCP架构图

    • 3. TCP传输

  • 二、用户态网络协议栈

    • 1. 什么是用户态网络协议栈

    • 2. TCP状态迁移图

  • 四、系列推荐

一、背景

      现在的服务器支撑上百万个并发 TCP 连接已经不是新闻,实现 C1000k 的常规做法是调整内核参数,提高文件数,降低每个连接的内存消耗。在用户态运行 TCP/IP 协议栈意味着并发 TCP 连接不再占用系统文件数,只占内存,解决了 C1000k 的一大瓶颈,内核只要提供一个收发网络 packet 的接口就行。内核的网络协议栈强调通用性,主要是为吞吐量优化(性能指标通常是 MB/s 或 packets per second),顺带兼顾大量并发连接。为支持 C10k,要调整内核参数让每个连接少占资源,这与内核代码的设计初衷是违背的。用户态协议栈,可以根据应用的特点来剪裁协议栈功能。优化也更直接,不再是调黑盒参数组合,而是直接上 profiling,根据结果修改应用程序和协议栈的代码。用户态协议栈的吞吐量比不上内核,不过对 C1000k 的应用场合(例如 comet)应该不成问题。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值