关于如何理解TCP/ITCP协议栈栈的工作模式

韩国高校的一个科研项目在DPDK的2016姩的技术开发者大会上有讲,所以intel将这个也放到了官方上所以一般搜索DPDK的用户态的协议栈的时候就能够搜索到了这个;

有准确的测试数據,我们本地也测试了其性能:在EP的单核上可以达到4W connect/sec 然后因为内存限制,连接数当时是60W连接占用了18G的内存;

1有准确的性能测试数据

2。囿一定的关注度有开源社区;

通过分析代码与其实现:

1。代码简洁代码实现逻辑简单,没有太多复杂的信息实现原理与内核一致;

2。代码量较少总共TCP的代码连注释就在4K行左右~公司私有维护可以hold住。

4兼容性好~设计的api接口基本与原来的socket接口一致,便于迁移;

5通过代碼优化可以做到网卡到用户态0 copy,提升效率;

6内存占用小~测试过1W连接不足1M的内存占用。

1有些查找算法需要优化~;例如查找流表;

2。也不支持DPDK(目前已经修改好DPDK对接的demo)

3不支持多线程的协议栈(数据结构的设计的时候没有考虑线程安全)

4。只支持阻塞模型的socket不支持epoll和非阻塞的socket调用(目前已经有设计思路移植epoll)

5。作者已经不维护性能还没有测试过。

代码简单便于自己维护,优化开发~但是因为没有开源社区的支持,需要自己熟悉代码测试过程中没有出现异常挂掉的情况,但需要自己移植epoll上去才可以实现多路IO复用;

}

TCP是传输层协议 提供端到端可靠传輸

你对这个回答的评价是

}

湖南大学 硕士学位论文 TCP/ITCP协议栈栈原理及其在ARM上的具体实现 姓名:刘炽 申请学位级别:硕士 专业:软件工程 指导教师:徐向阳;依鸿洲 工程硕士学位论文 摘 要 随着 Internet的发展和后 PC時代的到来嵌入式系统成为当前 IT产业的焦点之一, 具有巨大的市场需求同时嵌入式设备的 Internet网络化成为目前网络发展的一个重要 方向和必然结果。 本文对在嵌入式系统上实现 TCP/ITCP协议栈进行了讨论和研究介绍了嵌入式 TCP/IP 的特点﹑发展动态和国外的一些比较成熟的技术,然后对 TCP/ITCP協议栈栈的原理进行了 全面分析在此基础上讨论了在 ARM硬件开发平台上实现 TCP/ITCP协议栈网络组件的若干 问题,提出了设计方案并对该协议进荇了网络传输的测试。依据测试结果对在 ARM 上实现的嵌入式 TCP/ITCP协议栈提出了今后的改进。主要取得以下的成果: 1.本方案的硬件开发平台是基於三星 ARM44B0X其核心是 ARM7DMI,这是一 种 32位的 RISC处理器而以太网接口控制芯片是 RTL8019AS。由于没有操作系统的支 持一些工作就变得十分繁重,无操作系统支持的嵌入式软件主要包括系统引导外围 驱动程序,存储管理系统中断处理等。主要完成了以太网接口芯片的驱动和 ARM启 动的引导程序采用 C和汇编来编程,并且给出了相关的硬件电路设计图 2.在遵从 TCP/ITCP协议栈标准的前提下,根据嵌入式系统的实时性、灵活性和简单性 的特點实现了 TCP/ITCP协议栈簇的一些协议如 ARP、IP、ICMP、UDP、TCP和 HTTP。 本文对传统的 TCP/ITCP协议栈进行了剪裁一些算法也进行了取舍和修改,着重体现了这 些协议的實时性通过网卡配置表动态地将其接入嵌入式系统中,从而达到灵活性的要 求选择不同功能模块,以最高效的方式组成系统从而满足嵌入式系统的简单性的应 用。 总之在电子词典、机顶盒、移动电话和 MP3等嵌入式系统设备中,这种嵌入了 TCP/ITCP协议栈的系统板既提高了数據传输的速度,又保证数据传输的正确性同时也扩

}

我要回帖

更多关于 TCP协议栈 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信