【技术实现步骤摘要】
一种基于IntelDPDK的地址转换方法
本申请涉及计算机软件开发
,特别涉及一种基于IntelDPDK的地址转换方法。
技术介绍
DPDK(DataPlaneDevelopmentKit,数据面开发套件)是Intel公司提出的一种高速网络数据包的软件开发套件,现已开源。前期主要支持采用IntelCPU及网卡的系统,现已支持IBMPower、Cavium等其他CPU,以及部分非Intel的网卡。DPDK通过旁路Linux系统网络协议栈,直接对网卡进行读写,结合对多核CPU中不同内核的绑定,创造一个没有线程调度、没有系统调用、没有网卡中断的环境,能够实现10Gbit网络小包流量下的线速收发。DPDK模型示意图如图1所示。DPDK程序都是运行在用户面下的,DPDK直接从PCIE(PeripheralComponentInterconnectExpress,高速外部设备互连)网口轮询接收网络包,然后送给linux操作系统内核协议栈,即从用户面向内核空间递交网络数据包。这需要从用户空间到内核空间的地址转换才能在内核看到数据包。反过来从linux内核协议栈向DPDK网 ...
【技术保护点】
1.一种基于Intel数据面开发套件DPDK的地址转换方法,其特征在于:在初始化时,对内核配置DPDK各个内存区zone的内核地址和用户地址的差值;对每个从操作系统内核协议栈通过DPDK网口向外发送的或通过DPDK网口接收进内核协议栈的包,通过该包的地址利用所述配置的差值计算对应的内核地址。
【技术特征摘要】
1.一种基于Intel数据面开发套件DPDK的地址转换方法,其特征在于:在初始化时,对内核配置DPDK各个内存区zone的内核地址和用户地址的差值;对每个从操作系统内核协议栈通过DPDK网口向外发送的或通过DPDK网口接收进内核协议栈的包,通过该包的地址利用所述配置的差值计算对应的内核地址。2.根据权利要求1所述的方法,其特征在于:所述配置DPDK各个zone的内核地址和用户地址的差值的方式包括:在内核空间建立两级表,其中,第一级表为查找表,用于存储zone地址,第二级表为索引表,用于存储各个zone的物理地址和用户地址的差值。3.根据权利要求2所述的方法,其特征在于:所述通过该包的地址利用所述配置的差值计算对应的内核地址包括:通过该包的用户地址查找第一级表找到对应的zone,再根据所述zone查找第二级表,得到所述zone的物理地址和用户地址的差值,以用户地址减所述差值得到物理地址,物理地址再加上一个固定偏移得到对应的内核地址。4.根据权利要求1所述的方法,其特征在于:所述配置DPDK各个zone的内核地址和用户地址的差...
【专利技术属性】
技术研发人员:陈晓科,李曙光,
申请(专利权)人:普天信息技术有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。