[发明专利]一种基于DPDK的收包二级缓存方法及系统有效

专利信息
申请号: 201810378716.3 申请日: 2018-04-25
公开(公告)号: CN108632166B 公开(公告)日: 2021-11-09
发明(设计)人: 陈荣;闫礼飞 申请(专利权)人: 湖北锐世数字医学影像科技有限公司
主分类号: H04L12/861 分类号: H04L12/861
代理公司: 暂无信息 代理人: 暂无信息
地址: 436000 湖北省鄂州市梧桐*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 dpdk 二级缓存 方法 系统
【说明书】:

发明公开了一种基于DPDK的收包二级缓存方法,包括以下步骤:自定义mbulk结构以及二级缓存结构,mbulk存储mbuf指针且大小相同,收包一级队列的队列存储mbuf指针,收包二级队列存储mbulk指针;(2)初始化DPDK;收包缓存收包处理线程1用于缓存portmbuf指针至收包一级队列中;(3‑2)收包处理线程2用于从mbulk_pool内存池取出mbulk,并从对应的收包一级队列取出mbuf指针并放入mbulk,任意mbulk放满后,收包处理线程2将mbulk指针放入收包二级队列,接着从mbulk_pool取出下一个mbulk,进行下一次操作;公共工作者线程从收包二级队列取出mbulk指针并处理。该方法通过为后端提供一个稳定的、数据量适中出队操作,使得后端处理更为稳定,以实现实时稳定收包和处理,降低丢包概率。

技术领域

本发明涉及大数据采集技术领域,具体是一种基于DPDK的收包缓存方法,此方法通过新增二级流水线的方式使得数据处理更加稳定,减少丢包率。

背景技术

在PET等大数据应用中,需要对多个网络出口的流量数据包进行采集分析,随着应用所需要的精度越来越高,对应的数据流量也会越来越大,一般应用的速率都会达到10Gbps,如何实时稳定收包和处理,降低丢包概率,这对数据包的采集来说是个挑战。

目前基于Linux的数据的采集,如果使用传统的Socket抓包,程序需要在用户态和内核态频繁的切换,导致性能削弱,无法满足大数据的要求。另外一种方案是使用DPDK(Data Plane Development Kit)。DPDK是Intel公司开发的基于数据面的数据包处理框架,它的抓包驱动工作在用户态,为用户态应用程序提供快速收发包接口,可以实现数据包的快速抓取。

传统的DPDK应用都是直接获取自身缓存的数据包(mbuf)并进行处理,但是当需要处理持续大流量(如10Gbps)的数据时,采用该方法进行数据缓存,dpdk自带api接口中ring队列的出队操作(rte_ring_mc_dequeue_bulk),每次出队个数大小不一,如果每次出队少量数据的话,效率不高,而且频繁小数据量的出队操作也是耗时的,这样会导致后续数据处理出现波动或者严重丢包,比如最简单的速率显示就会出现跳变等不稳定的现象。

申请号201510801278.3公开了一种基于DPDK的抓包及镜像流量转发方法,其使用DPDK 的收发包接口从入口网卡端口收到数据包后,将DPDK数据包mbuf拷贝到自定义格式的 packets buffer中,然后归还mbuf给DPDK;当packets buffer即将超过其内存空间大小时,将该packets buffer放入一个buffer队列中,此时完成一个packets buffer的提交;用户从buffer队列中取出packets buffer,每个buffer队列的packets buffer由一个用户线程去读取,用户线程读取到一个packets buffer对象后,对数据包进行分析处理,处理完之后,将packets buffer归还。使得数据包在系统中存留很长时间也不会因为mbuf缓存不足而导致丢包影响性能的问题。但是当需要处理持续大流量(如10Gbps)的数据时,采用该方法进行数据缓存,由于数据量过大,仍然存在导致丢包的问题。

发明内容

本发明公开了一种基于DPDK的收包二级缓存方法,在PET等大数据(如持续大流量(10Gbps))应用时,通过为后端提供一个稳定的、数据量适中出队操作,使得后端处理更为稳定,以实现实时稳定收包和处理,降低丢包概率。

为达到上述目的,本发明的解决方案是:

其中一实施例中,本发明公开了一种基于DPDK的收包二级缓存方法,包括以下步骤:

(1)自定义mbulk结构以及二级缓存结构,同时自定义mbulk_pool变量:

所述mbulk用于存储mbuf指针,每个所述mbulk大小相同,存储相同数量的mbuf指针;所述mbulk_pool为自定义DPDK内存池,存储元素为mbulk;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖北锐世数字医学影像科技有限公司,未经湖北锐世数字医学影像科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810378716.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top