The invention discloses a programmable data plane virtual layer construction method and the programmable data layer. The method of constructing the programmable data plane virtual layer includes building a plane virtual layer including multiple virtualization matching action tables and multiple virtualization control logic, in which the virtualization control logic and the virtualization matching action table can be rooted. According to the first preset mode, it is configured as multiple network functions, and multiple network functions can be configured into multiple virtualized programmable data planes according to the second preset mode. This invention can run multiple programs at the same time with the existing hardware resources, without the reprogramming and importing process, the dynamic update of network function and the modification of network function processing order can be realized, the flexibility and resource utilization of the programmable data plane can be improved, and the network data packet processing is more and more complex. Miscellaneous environmental requirements.
【技术实现步骤摘要】
可编程数据平面虚拟层构建方法及存储介质
本专利技术属于网络
,具体涉及一种可编程数据平面虚拟层构建方法及内部存储有可编程数据平面虚拟层的存储介质。
技术介绍
可编程数据平面架构是一种协议无关的可重配置的数据平面架构,现有的网络设备制造商和网络管理员基于可编程数据平面架构可对网络设备芯片进行编程,定制实现多种多样功能的网络协议以及数据包处理功能,以适应不同的网络环境需求。但随着网络的不断发展,协议无关的数据包处理器编程语言实现的网络功能不断复杂化,从而使得现有的可编程数据平面存在如下问题:1、一旦将程序编译并载入可编程路由交换设备后,就无法动态地修改该设备的数据包处理功能,因此使得该设备的网络功能无法被动态更新;2、程序无法动态地根据实时的策略调整网络功能的处理顺序,若需修改网络功能的处理顺序,必须重新修改程序并加载到网络设备中;3、网络硬件设备有限,无法在有限的硬件资源下运行多个程序。现在亟须一种可动态更新网络功能以及网络功能的排列顺序、并可实现在有限的网络硬件设备运行多个程序的可编程数据“平面”。
技术实现思路
本专利技术所要解决的技术问题是现有的可编程数据平面无法动态更新网络功能和网络功能的排列顺序、且无法在在有限的网络硬件设备上运行多个程序。为了解决上述技术问题,本专利技术提供了一种可编程数据平面虚拟层构建方法,包括:构建包括多个虚拟化匹配动作表和多个虚拟化控制逻辑的平面虚拟层;其中,所述虚拟化控制逻辑和虚拟化匹配动作表可根据第一预设方式被配置为多个网络功能,多个所述网络功能可根据第二预设方式被配置为多个虚拟化可编程数据平面。优选地,每个所述虚拟化 ...
【技术保护点】
1.一种可编程数据平面虚拟层构建方法,其特征为,包括:构建包括多个虚拟化匹配动作表和多个虚拟化控制逻辑的平面虚拟层;其中,所述虚拟化控制逻辑和虚拟化匹配动作表可根据第一预设方式被配置为多个网络功能,多个所述网络功能可根据第二预设方式被配置为多个虚拟化可编程数据平面。
【技术特征摘要】
1.一种可编程数据平面虚拟层构建方法,其特征为,包括:构建包括多个虚拟化匹配动作表和多个虚拟化控制逻辑的平面虚拟层;其中,所述虚拟化控制逻辑和虚拟化匹配动作表可根据第一预设方式被配置为多个网络功能,多个所述网络功能可根据第二预设方式被配置为多个虚拟化可编程数据平面。2.根据权利要求1所述的方法,其特征为,每个所述虚拟化可编程数据平面内部的所述网络功能不同或所述网络功能的排列顺序不同。3.根据权利要求1所述的方法,其特征为,还包括:在所述平面虚拟层中构建虚拟化快速解析器,以用于对数据包进行解析并将解析后的数据包传送给对应的所述虚拟化可编程数据平面。4.根据权利要求3所述的方法,其特征为,所述虚拟化快速解析器对所述数据包的解析及发送步骤包括:对所述数据包的描述头信息进行解析,以得到虚拟化可编程数据平面序列号以及数据包头长度信息;根据所述数据包头长度信息获取所述数据包的数据包头,并将所述数据包头发送给与所述虚拟化可编程数据平面序列号对应的虚拟化可编程数据平面。5.根据权利要求4所述的方法,其特征为,所述网络功能的配置步骤包括:获取与待配置网络功能对应的所述虚拟化控制逻辑和所述虚拟化匹配动作表;根据第一预设方式将所述虚拟化控制逻辑和所述虚拟化匹配动作表配置为网络功能。6.根据权利要求5述的方法,其特征为,根据第一预设方式将所述虚拟化控制逻辑和所述虚拟化匹配动作表配置为网络功能的具体步骤...
【专利技术属性】
技术研发人员:毕军,张程,陈雅正,周禹,马子俊,
申请(专利权)人:清华大学,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。