10.3969/j.issn.1002-137X.2006.02.007
隧道模式下Linux路由器内存优化的研究
在网络通信中,为了满足应用的需要,常常在数据包中添加特定的协议头部.例如,为了实现从IPv4数据包到IPv6数据包的转换,可以在原IPv4报头前封装上相应的IPv6报头;在以太网中,为了保证应用的QoS需要,可以在数据链路层报头之后封装上MPLS标记.这种在数据报头的固定位置封装固定长度协议头的方式,称为隧道模式.传统的隧道封装方式需要重新在内存中申请skb空间,需要重新拷贝整个数据包,这样的重复内存拷贝降低了系统的性能,并不是必要的.本文在内核代码的层次,分析了数据包的网络处理流程,并修改了Linux的系统调用,通过预留内存资源的方式,提出了一种避免隧道模式下额外内存拷贝的方法,并给出了代码实现.
隧道模式、Linux路由器、预留内存、sk-buff
33
TN91
2006-04-06(万方平台首次上网日期,不代表论文的发表时间)
共2页
33-34