The invention relates to the field of communication technology, and discloses a DPDK-based resource scheduling method, device, terminal device and readable storage medium. In the invention, the resource scheduling method includes: Based on the mapping relationship between the processor and the DPDK packet processing thread, it determines the DPDK packet processing thread that needs to be fixed on the processor; based on the DPDK, the control DPDK packet processing thread receives and receives data from the network card driven mode in a polling way; if it is determined to satisfy the release place The conditions of resource management, control DPDK packet processing thread stop polling network card driver model. The resource scheduling method provided by the invention effectively reduces the occupancy rate of CPU and improves the efficiency of CPU utilization.
【技术实现步骤摘要】
基于DPDK的资源调度方法、装置、终端设备及可读存储介质
本专利技术涉及通信
,特别涉及一种基于DPDK的资源调度方法、装置、终端设备及可读存储介质。
技术介绍
随着互联网的高速发展,云产业快速崛起,为了支持多样化的网络功能,基础架构网络逐渐偏向基于通用计算平台或模块化计算平台的架构融合,传统的PC设备在分布式计算平台上的优势更为明显。目前,PC设备在获取数据包时,一般是通过驱动PC设备上的以太网驱动程序,进而使得中央处理器(CentralProcessingUnit,CPU)能够控制NativeLinux(本地Linux)从网络接口控制器(NetworkInterfaceController,NIC)接收中断,并在接收到中断后调度软中断,对所得的中断进行上下文切换,同时唤醒系统调用网卡接收数据包。然而,采用上述方式获取数据包的过程中,CPU不仅无法实现不断地接收数据包,同时也无法避免软中断、上下文切换和唤醒系统调用等操作。因而,在针对海量数据处理或海量用户的服务场景中,高性能编程显得尤为重要。数据平面开发套件(DataPlaneDevelopmentKit,DPDK)主要是基于Linux系统运行,是用于快速数据包处理的函数库与驱动集合,可以极大的提高数据处理性能、吞吐量以及数据平面应用程序的工作效率。相比于以太网驱动程序的方式,DPDK采用了优化的轮询模式驱动(PollModeDriver,PMD),在收到数据包时,经DPDK重载的网卡驱动会直接将数据包存入内存,交付应用层软件通过DPDK提供的接口来直接处理,这样节省了大量的CPU中断时间和内存拷 ...
【技术保护点】
1.一种基于DPDK的资源调度方法,其特征在于,包括:基于处理器与DPDK数据包处理线程之间的映射关系,确定需要固定在所述处理器上的所述DPDK数据包处理线程;基于所述DPDK,控制所述DPDK数据包处理线程以轮询的方式从网卡驱动模型中收发数据;若确定满足释放所述处理器资源的条件,控制所述DPDK数据包处理线程停止轮询所述网卡驱动模型。
【技术特征摘要】
1.一种基于DPDK的资源调度方法,其特征在于,包括:基于处理器与DPDK数据包处理线程之间的映射关系,确定需要固定在所述处理器上的所述DPDK数据包处理线程;基于所述DPDK,控制所述DPDK数据包处理线程以轮询的方式从网卡驱动模型中收发数据;若确定满足释放所述处理器资源的条件,控制所述DPDK数据包处理线程停止轮询所述网卡驱动模型。2.根据权利要求1所述的基于DPDK的资源调度方法,其特征在于,所述控制所述DPDK数据包处理线程停止轮询所述网卡驱动模型,具体包括:启动数据收发中断,控制所述DPDK数据包处理线程进入休眠状态,停止轮询所述网卡驱动模型。3.根据权利要求2所述的基于DPDK的资源调度方法,其特征在于,在启动数据收发中断,控制所述DPDK数据包处理线程进入休眠状态,停止轮询所述网卡驱动模型之后,所述基于DPDK的资源调度方法还包括:若监测到数据,唤醒所述DPDK数据包处理线程,关闭所述数据收发中断;控制所述DPDK数据包处理线程以轮询的方式从所述网卡驱动模型中收发数据。4.根据权利要求1至3任意一项所述的基于DPDK的资源调度方法,其特征在于,在基于处理器与DPDK数据包处理线程之间的映射关系,确定需要固定在所述处理器上的所述DPDK数据包处理线程之前,所述基于DPDK的资源调度方法还包括:对所述网卡驱动模型进行初始化,并建立所述处理器与所述网卡驱动模型的对应关系。5.根据权利要求1至3任意一项所述的基于DPDK的资源调度方法,其特征在于,所述确定满足释放所述处理器资源的条件,具体包括:累计未轮询到数据的连续次数,若所述未轮询到数据的连续次数不小于第一阈值,确定满足释放所述处理器资源的条件;和/或,累计未轮询到数据的连续时长,若所述未轮询到数据的连续时长不小于第二阈值,确定满足释放所述处理器资源的条件。6.根据权利要求1至3任意一项所述的基于DPDK...
【专利技术属性】
技术研发人员:沈静,夏正勋,严欢,
申请(专利权)人:中兴飞流信息科技有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。