将域特定语言与通用语言组合以用于无服务器网络功能的制作方法

文档序号:34547281发布日期:2023-06-27 21:39阅读:20来源:国知局
将域特定语言与通用语言组合以用于无服务器网络功能的制作方法


背景技术:

1、计算机网络通常是一组计算机或其它设备,它们通信连接并使用一个或多个通信协议来交换数据,例如通过使用分组交换。例如,计算机联网可以指连接的计算设备(如笔记本电脑、台式机、服务器、智能手机和平板电脑)以及不断扩展的物联网(iot)设备(如相机、门锁、门铃、冰箱、音频/视频系统、恒温器和各种传感器),这些设备相互通信。现代网络提供各种类型的网络架构,例如位于诸如建筑物之类的一个物理位置中的局域网(lan)、扩展到较大地理区域以连接个人用户或lan的广域网(wan)、为大型组织构建的企业网络、运营wan以向个人用户或企业提供连接的互联网服务提供商(isp)网络,等等。

2、这些网络通常包括专门的网络设备,用于在设备之间传送表示各种数据的分组,例如在交换机、路由器、服务器、接入点等之间传送。这些设备中的每个设备都被设计和配置为执行不同的网络功能。例如,交换机充当允许网络中的设备相互通信的控制器。路由器将多个网络连接在一起,并且还将这些网络上的计算机连接到互联网,方式是通过分析通过网络发送的数据并选择用于数据传输的最佳路径来充当网络中的分配器。接入点就像网络的放大器一样,并且用于扩展路由器提供的带宽,以便网络可以支持彼此距离较远的许多设备。

3、计算网络已持续变得更复杂,例如随着软件定义网络(sdn)的引入而变得更复杂。在sdn中,对网络的管理集中在控制器处,使得控制平面从离散联网设备中的数据转发功能中抽取出来。sdn控制器是sdn架构的核心元素,并且使能跨物理和虚拟网络环境的集中管理和控制、自动化和策略实施。已经为sdn架构开发了各种标准或协议,例如openflow、独立于编程协议的分组处理器(p4)、开放虚拟交换机数据库(ovsdb)、python等。这些sdn协议允许sdn控制器使用例如各种应用编程接口(api)直接与网络设备(例如交换机和路由器)的转发平面交互。

4、传统上,sdn控制器会使用这些sdn协议来对网络设备进行编程或将变化下推到交换机/路由器流表,从而允许sdn控制器划分业务、控制流以获得最佳性能、测试新配置和应用、和/或以其它方式控制或引导数据平面业务。为了执行各种操作,网络设备传统上直接在网络设备的硬件(例如,裸机实现)上运行不同类型的网络功能(例如,分组丢弃功能、分组复制功能、分组转发功能等)。然而,在同一网络设备上运行各种类型的网络功能可能是低效的、不安全的或以其它方式是不利的。例如,由于网络设备需要执行不同类型的网络功能,有效运行这些网络功能所需的硬件的规模、多样性和成本大大增加。此外,随着网络需求的变化,可能需要更新网络中运行的软件,这可能需要更换或更新网络中的硬件(例如,更换整个网络设备或设备中的组件)。

5、鉴于直接在网络设备的硬件上运行网络功能的各种低效和缺点,网络功能虚拟化(nfv)技术应运而生,以将网络功能与底层硬件分离,以创建可在商品硬件上运行的虚拟化网络,从而允许网络更加灵活和更具成本效益。nfv技术使用处理特定网络功能的虚拟网络功能(vnf),例如防火墙功能、负载平衡功能、分组路由功能等。因此,网络已经发生了转变,从使用多个硬件,每个硬件执行单一功能,到在单个硬件中拥有多个虚拟机(vm),其中每个vm执行一个或多个vnf的操作。更进一步,最近的进展包括使用容器进行网络功能虚拟化。也就是说,容器不是简单地使用充当硬件虚拟化的多个vm,而是充当操作系统(os)虚拟化。容器能够共享vm的相同主机操作系统,但可能能够以隔离的方式运行单独的vnf,以便每个vm可以支持多个容器化vnf。但是,在vm和容器中运行vnf时仍然存在各种低效和缺点。


技术实现思路



技术特征:

1.一种用于使用域特定语言(dsl)和通用语言(gpl)生成无服务器网络功能的方法,该方法包括:

2.如权利要求1所述的方法,其中,所述gpl包括以下项中的至少一者:

3.如权利要求1或2所述的方法,其中:

4.如权利要求1或2所述的方法,其中:

5.如权利要求1或2所述的方法,其中:

6.如权利要求1至5中任一项所述的方法,其中,所述无服务器网络功能包括以下项中的至少一者:

7.如权利要求1至6中任一项所述的方法,其中,生成所述目标代码包括以下项中的至少一者:

8.如权利要求1至7中任一项所述的方法,还包括:

9.一种计算设备,包括:

10.如权利要求9所述的计算设备,其中,所述gpl包括以下项中的至少一者:

11.如权利要求9或10所述的计算设备,其中:

12.如权利要求9或10所述的计算设备,其中:

13.如权利要求9或10所述的计算设备,其中:

14.如权利要求9至13中任一项所述的计算设备,其中,所述无服务器网络功能包括以下项中的至少一者:

15.如权利要求9至14中任一项所述的计算设备,其中,生成所述目标代码包括以下项中的至少一者:

16.如权利要求9至15中任一项所述的计算设备,所述操作还包括:

17.一种系统,包括:

18.如权利要求17所述的系统,其中,所述gpl包括以下项中的至少一者:

19.如权利要求17或18所述的系统,其中:

20.如权利要求17或18所述的系统,其中:

21.一种用于使用域特定语言(dsl)和通用语言(gpl)生成无服务器网络功能的设备,该设备包括:

22.如权利要求21所述的设备,还包括用于实施如权利要求2至8中任一项所述的方法的装置。

23.一种包括指令的计算机程序、计算机程序产品或计算机可读介质,所述指令在由计算机执行时使所述计算机执行如权利要求1至8中任一项所述的方法的步骤。


技术总结
本公开描述了使用域特定语言(DSL)来表达和编译无服务器网络功能以及优化无服务器网络功能在网络设备上的部署位置的技术和机制。在一些示例中,无服务器网络功能可以完全以DSL表达(例如,通过基于文本的编辑器、基于图形的编辑器等),其中DSL是专门用于特定域(例如网络功能域)的计算机语言。在附加示例中,可以使用DSL结合通用语言(GSL)来表达和编译无服务器网络功能。一旦表达和/或编译了无服务器网络功能,本公开的技术还包括确定将在其上执行无服务器网络功能的优化网络组件,以及将无服务器功能部署到该优化网络组件。

技术研发人员:凯尔·安德鲁·唐纳德·迈斯特利,伊恩·詹姆斯·威尔斯,格热戈兹·博古斯瓦夫·杜拉杰
受保护的技术使用者:思科技术公司
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1