通过分布式弹性中间盒提供模块化网络服务制造技术

技术编号:37710318 阅读:9 留言:0更新日期:2023-06-02 00:02
提供分布式平台,用于开发和部署复杂的、弹性的、高度可用的多租户网络服务。所述网络服务系统包括网络内键/值存储器,所述存储器实现分布式流表(distributed flow table,DFT),所述DFT包括组织为链的节点。链中的每个节点包括模块化中间盒,所述模块化中间盒链接到所述链中的至少一个其它模块化中间盒,以基于规格表实现数据报文的网络服务功能,以生成流表项。所述DFT水平扩展并在副本之间保持一致的连接状态。无状态转发层为已建立的连接执行数据报文转发决策,并反弹数据报文进行传输。管理节点将以声明式编程语言描述的网络服务转换为所述规格表,以便分发到所述DFT的节点中的所述模块化中间盒。点中的所述模块化中间盒。点中的所述模块化中间盒。

【技术实现步骤摘要】
【国外来华专利技术】通过分布式弹性中间盒提供模块化网络服务
[0001]相关申请的交叉引用
[0002]本申请要求于2020年6月10日提交的专利技术名称为“通过分布式弹性中间盒提供模块化网络服务(Modular Network Services Via Distributed Elastic Middleboxes)”的第63/037,479号美国临时专利申请的优先权。该申请的内容通过引用并入本文。


[0003]本申请涉及用于开发和部署多租户网络服务的分布式平台,具体涉及用于跨多租户网络服务和网关共享云资源同时创建和维护分布式共享状态的系统和方法。

技术介绍

[0004]中间盒是一种计算机网络设备,用于除报文转发外的数据流量转换、检查、过滤和操作的目的。中间盒的示例包括防火墙、网络地址转换器(network address translator,NAT)、负载均衡器和深度报文检查(deep packet inspection,DPI)盒。现有的基于软件的中间盒或虚拟交换机保持本地共享连接状态,但没有共享状态信息的机制,这些基于软件的中间盒或虚拟交换机例如:ClickOS,如Martins等人在“ClickOS和网络功能虚拟化的艺术(ClickOS and the art of network function virtualization)”,第11届USENIX网络系统设计和实现研讨会(NSDI.}14),第459

473页,2014年中所描述;Open vSwitch(OVS),如Pfaff等人在“Open vSwitch的设计和实现(The design and implementation of open vSwitch)”第12届USENIX网络系统设计和实现研讨会(NSDI 15),第117

130页,2015年中所描述。在故障恢复期间或横向扩展或横向收缩期间,如果没有在多个中间盒之间保持一致的状态,添加或删除中间盒,则会导致连接丢失和报文转发决策不一致。
[0005]基于硬件的中间盒价格昂贵、不可扩展,而且在云环境中难以操作和扩展。另一方面,在虚拟机或容器中部署现有的基于软件的中间盒以取代硬件网关,会导致资源利用率不足和成本效率低下,以及在多个租户和不同网络功能之间缺乏资源共享。此外,ClickOS和OVS等模型对服务可用性和扩展性的限制太大。

技术实现思路

[0006]现在描述各种示例,以简化形式引入一些概念,在具体实施方式中会进一步描述这些概念。
技术实现思路
并非旨在确定请求保护的主题的关键或必要特征,也并非旨在用于限制请求保护的主题的范围。
[0007]在示例性实施例中,为将网络服务扩展、编程、维护、升级、配置和故障域与数据中心网络解耦的平台提供了架构。该平台实现跨多租户网络服务和网关共享云资源,所述云资源包括计算和网络资源。该平台还提供了创建和维护分布式共享状态的技术,包括但不限于公共配置、流状态和端口分配。
[0008]根据本专利技术的第一方面,提供了一种网络服务系统,所述网络服务系统包括连接状态跟踪层、无状态转发层和转换网络服务的节点。所述连接状态跟踪层包括被组织为至
少一个链的第一节点,链中的每个第一节点包括模块化中间盒,所述模块化中间盒链接到所述链中的至少一个其它模块化中间盒,以实现数据报文的网络服务功能。所述连接状态跟踪层实现包括所述至少一个第一节点链的分布式流表(distributed flow table,DFT)。所述模块化中间盒包括至少一个规格表,所述规格表确定实现所述数据报文的所述网络服务功能的动作序列。所述无状态转发层包括第二节点,所述第二节点包括至少一个第二节点,所述至少一个第二节点接收所述数据报文,在可用时,从所述DFT中选择所述流表项,根据所述流表项重写所述数据报文的报头,并基于所述流表项将所述数据报文发送到第一目的地。至少一个第三节点将以声明式编程语言描述的网络服务转换为所述至少一个规格表,并将所述至少一个规格表分发到所述DFT的所述至少一个第一节点链中的至少一个所述模块化中间盒。
[0009]根据本专利技术的第二方面,提供了一种实现网络服务的方法。所述方法包括:将以声明式编程语言描述的网络服务转换为至少一个规格表;将所述至少一个规格表分发到连接状态跟踪层的节点中的模块化中间盒,所述连接状态跟踪层包括组织为至少一个链的第一节点,所述模块化中间盒链接到至少一个其它模块化中间盒,以实现数据报文的网络服务功能,所述连接状态跟踪层实现包括所述至少一个第一节点链的分布式流表(distributed flow table,DFT);根据所述至少一个规格表中指定的动作序列对所述数据报文进行处理,以实现所述数据报文的所述网络服务功能,以生成流表项;基于所述流表项将所述数据报文发送到目的地。
[0010]在上述任一方面的第一种实现方式中,所述DFT在键/值存储器中实现。
[0011]在上述任一方面的第二种实现方式中,所述模块化中间盒包括本地数据结构中的多个快速数据路径(express data path,XDP)程序和共享数据结构配置,用于处理数据报文,以实现所述网络服务功能。
[0012]在上述任一方面的第三种实现方式中,所述至少一个链中的每个第一节点执行链复制协议,所述链复制协议复制状态和数据报文流表项,以在所述至少一个链中的所有第一节点上保持一致的流状态。
[0013]在上述任一方面的第四种实现方式中,所述至少一个第三节点提供扩展端点运算符,所述扩展端点运算符从以所述声明式编程语言编写的扩展端点配置生成所述规格表,所述扩展端点运算符还将所述网络服务功能的所述规格表传播到所述DFT的所述至少一个第一节点链的中间盒,以实现所述网络服务功能。
[0014]在上述任一方面的第五种实现方式中,提供了扩展端点,所述扩展端点跨越所述无状态转发层的多个第二节点,并根据数据报文流量需求自动扩展。
[0015]在上述任一方面的第六种实现方式中,提供了选择器,所述选择器将所述扩展端点映射到所述无状态转发层的至少一个第二节点。
[0016]在上述任一方面的第七种实现方式中,所述选择器包括路由器、软件交换机、扩展伯克利报文过滤器(extended Berkeley packet filter,eBPF)程序或Maglev哈希表中的至少一个,所述选择器为所述扩展端点选择所述无状态转发层的所述至少一个第二节点。
[0017]在上述任一方面的第八种实现方式中,所述扩展端点提供负载均衡器、网络地址转换器(network address translator,NAT)、深度报文检查器(deep packet inspector,DPI)、服务质量(quality of service,QoS)、隧道、防火墙、协议转换器IPv6/IPv4、访问控
制列表(access control list,ACL)或其组合中的至少一个。
[0018]在上述任一方面的第九种实现方式中,所述连接状态跟踪层和所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种网络服务系统,其特征在于,包括:连接状态跟踪层,包括被组织为至少一个链的第一节点,链中的每个第一节点包括模块化中间盒,所述模块化中间盒链接到所述链中的至少一个其它模块化中间盒,以实现数据报文的网络服务功能,所述模块化中间盒包括至少一个规格表,所述至少一个规格表确定实现所述数据报文的所述网络服务功能的动作序列,所述连接状态跟踪层实现包括所述至少一个第一节点链的分布式流表(distributed flow table,DFT);无状态转发层,包括第二节点,所述第二节点包括至少一个第二节点,所述至少一个第二节点接收所述数据报文,当流表项可用时,从所述DFT中选择所述流表项,根据所述流表项重写所述数据报文的报头,并基于所述流表项将所述数据报文发送到第一目的地;至少一个第三节点,将以声明式编程语言描述的网络服务转换为所述至少一个规格表,并将所述至少一个规格表分发到所述DFT的所述至少一个第一节点链中的至少一个所述模块化中间盒。2.根据权利要求1所述的网络服务系统,其特征在于,所述DFT在键/值存储器中实现。3.根据权利要求1所述的网络服务系统,其特征在于,所述模块化中间盒包括本地数据结构中的多个快速数据路径(express data path,XDP)程序和共享数据结构配置,用于处理数据报文,以实现所述网络服务功能。4.根据权利要求3所述的网络服务系统,其特征在于,所述至少一个链中的每个第一节点执行链复制协议,所述链复制协议复制状态和数据报文流表项,以在所述至少一个链中的所有第一节点上保持一致的流状态。5.根据权利要求1所述的网络服务系统,其特征在于,所述至少一个第三节点提供扩展端点运算符,所述扩展端点运算符从以所述声明式编程语言编写的扩展端点配置生成所述规格表,所述扩展端点运算符还将所述网络服务功能的所述规格表传播到所述DFT的所述至少一个第一节点链的中间盒,以实现所述网络服务功能。6.根据权利要求5所述的网络服务系统,其特征在于,还包括扩展端点,所述扩展端点跨越所述无状态转发层的多个第二节点,并根据数据报文流量需求自动扩展。7.根据权利要求6所述的网络服务系统,其特征在于,还包括选择器,所述选择器将所述扩展端点映射到所述无状态转发层的至少一个第二节点。8.根据权利要求7所述的网络服务系统,其特征在于,所述选择器包括路由器、软件交换机、扩展伯克利报文过滤器(extended Berkeley packet filter,eBPF)程序或Maglev哈希表中的至少一个,所述选择器为所述扩展端点选择所述无状态转发层的所述至少一个第二节点。9.根据权利要求6所述的网络服务系统,其特征在于,所述扩展端点提供负载均衡器、网络地址转换器(network address translator,NAT)、深度报文检查器(deep packet inspector,DPI)、服务质量(quality of service,QoS)、隧道、防火墙、协议转换器IPv6/IPv4、访问控制列表(access control list,ACL)或其组合中的至少一个。10.根据权利要求1所述的网络服务系统,其特征在于,所述连接状态跟踪层和所述无状态转发层用于彼此独立地扩展并在发生故障时互不影响。11.根据权利要求1所述的网络服务系统,其特征在于,所述DFT包括Maglev哈希表,所述Maglev哈希表将所述DFT的每个第一节点链映射到所述DFT的至少一个其它第一节点链。
12.根...

【专利技术属性】
技术研发人员:谢里夫
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1