支持多租户的网络传输的方法和设备与流程

文档序号:13142147阅读:188来源:国知局
本申请涉及计算机领域,尤其涉及一种支持多租户的网络传输的技术。
背景技术
::随着云计算广泛应用,在共用的数据中心内如何以单一系统架构与服务提供多数客户端相同甚至可定制化的服务,并且仍然可以保障客户的数据隔离,让多租户技术成为云计算技术下的显学。多租户技术(multi-tenancytechnology)或称多重租赁技术,是一种软件架构技术,它是在探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。在多租户技术中,租户(tenant)是指使用系统或计算机运算资源的客户,但在多租户技术中,租户包含在系统中可识别为指定用户的一切数据,举凡账户与统计信息(accountingdata),用户在系统中建置的各式数据,以及用户本身的客制化应用程序环境等,都属于租户的范围,而租户所使用的则是基于供应商所开发或建置的应用系统或运算资源等,供应商所设计的应用系统会容纳数个以上的用户在同一个环境下使用,为了要让多个用户的环境能力同一个应用程序与运算环境上使用,则应用程序与运算环境必须要特别设计,除了可以让系统平台可以允许同时让多份相同的应用程序运行外,保护租户数据的隐私与安全也是多租户技术的关键之一。多租户技术可以通过许多不同的方式来切割用户的应用程序环境或数据。多租户技术的实现重点,在于不同租户间应用程序环境的隔离(applicationcontextisolation)以及数据的隔离(dataisolation),以维持不同租户间应用程序不会相互干扰,同时数据的保密性也够强。因此支持多租户,需要满足:1)每个租户的配置个性化,根据每个租户的网络按需创建,2)支持多种网络设备,3)支持多种网络互联,比如二层网络设备互通;三层网络设备互通;物理网络和虚拟网络互通;以及虚拟网络和虚拟网络互通。vpc(virtualprivatecloud)是基于云计算构建出的一个隔离的网络环境,用户可以完全掌控自己的虚拟网络,包括选择自有ip地址范围、划分网段、配置路由表和网关等。在当前的vpc(虚拟私有云)实现中,有三个重要组件:1、vswitch:虚拟网络接入交换机,虚拟机通过vswitch接入虚拟网络;2、gateway:虚拟网络的边界路由器,有以下几种类型:虚拟网络到公网的边界路由器;虚拟网络到服务商网络服务的边界路由器;虚拟网络的核心路由器,包含虚拟网络的所有路由;虚拟网络到用户专网的边界路由器;用户可以通过专线或者vpn接入虚拟网络;3、controller:控制器,配置管理vswitch和gateway。在上述三个组件中,gateway是基于netframe(网络开发框架)实现的专用转发设备,由于每种gateway的功能不尽相同,因此每种gateway都实现了自己独特的逻辑,并且运行时的镜像和配置也不相同。这样就需要运维管理多种不同的gateway。因此目前,多租户网络可以用虚拟机实现,但虚拟机实现有以下缺点:1)如果每个租户一个虚拟机,虚拟机的数量会非常大,不能大规模实施;2)虚拟机的网络功能使用的是操作系统网络协议栈,网络性能比较差;3)虚拟机不能实现某些功能,比如物理网络和虚拟网络互通。技术实现要素:本申请的目的是提供一种支持多租户的网络传输的方法和设备,以解决现有技术中,多租户网络规模大、网络性能差、无法实现物理网络和虚拟网络互通的问题。根据本申请的一个方面提供了一种支持多租户的网络传输的方法,其中,所述方法包括:创建主级网间传输容器,并基于租户需求创建至少一个从级网间传输容器;所述主级网间传输容器接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理;所述从级网间传输容器基于所具有的接口设备类型,将处理后的所述网络报文发出。根据本申请的另一个方面,提供了一种支持多租户的网络传输的设备,其中,所述设备包括:创建主级网间传输容器,并基于租户需求创建至少一个从级网间传输容器;主级网间传输容器,用于接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理;从级网间传输容器,用于基于所具有的接口设备类型,将处理后的所述网络报文发出。本申请还提供了一种支持多租户的网络传输的设备,所述设备包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:创建主级网间传输容器,并基于租户需求创建至少一个从级网间传输容器;所述主级网间传输容器接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理;所述从级网间传输容器基于所具有的接口设备类型,将处理后的所述网络报文发出。与现有技术相比,根据本申请的实施例所述的一种支持多租户的网络传输的方法和设备,通过基于netframe(一种网络开发框架)实现创建所述主级网间传输容器与至少一个所述从级网间传输容器,将不同的虚拟网络的边界路由设备的功能融合抽象成一个统一的实现,进而减少运维管理的工作量,并减少后续开发测试的工作量。并且,基于租户需求进行具体不同的配置,将用于转发的设备虚拟化为多种具有不同功能的虚拟化设备,通过只对网络功能的虚拟化,仅负责网络包的转发,对转发协议栈进行优化,无需配置类似于虚拟机的cpu,内存,硬盘等虚拟功能,因此在性能和容量上具有优势。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1示出根据本申请一方面提供的一种支持多租户的网络传输的设备的示意图;图2示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的创建装置的示意图;图3示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的主级网间传输容器的示意图;图4示出根据本申请另一优选实施例提供的一种支持多租户的网络传输的设备中的主级网间传输容器的示意图;图5示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的从级网间传输容器的示意图;图6示出根据本申请又一优选实施例提供的一种支持多租户的网络传输的设备中的从级网间传输容器的示意图;图7示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的示意图;图8示出根据本申请一个方面提供的一种支持多租户的网络传输的方法的流程示意图;图9示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法中步骤s11的流程示意图;图10示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法中步骤s12的流程示意图;图11示出根据本申请另一优选实施例提供的一种支持多租户的网络传输的方法中步骤s12的流程示意图图12示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法中步骤s13的流程示意图;图13示出根据本申请另一优选实施例提供的一种支持多租户的网络传输的方法中步骤s13的流程示意图;图14示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法的流程示意图;图15示出根据本申请一具体场景实施例提供的主级网间传输容器的构架示意图;图16示出根据本申请一具体场景实施例提供的主级网间传输容器及若干从级网间传输容器之间的配合示意图;图17示出根据本申请一具体场景实施例提供的主级网间传输容器及若干从级网间传输容器之间的传输示意图;图18示出根据本申请一具体场景实施例提供的主级网间传输容器或从级网间传输容器中的配置示意图。附图中相同或相似的附图标记代表相同或相似的部件。具体实施方式下面结合附图对本申请作进一步详细描述。图1示出根据本申请一方面提供的一种支持多租户的网络传输的设备的示意图,其中,所述设备1包括:创建装置11、主级网间传输容器12和至少一个从级网间传输容器13。其中,所述创建装置11创建主级网间传输容器12,并基于租户需求创建至少一个从级网间传输容器13,所述主级网间传输容器12接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器13进行报文处理,所述从级网间传输容器13基于所具有的接口设备类型,将处理后的所述网络报文发出。在此,所述设备1包括但不限于网络设备通过网络相集成所构成的设备。所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(asic)、可编程门阵列(fpga)、数字处理器(dsp)、嵌入式设备等。所述网络包括但不限于互联网、广域网、城域网、局域网、vpn网络、无线自组织网络(adhoc网络)等。优选地,所述元数据客户接入设备1还可以是运行于所述用户设备与网络设备通过网络相集成所构成的设备上的脚本程序。当然,本领域技术人员应能理解上述设备1仅为举例,其他现有的或今后可能出现的所述设备1如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。上述各装置之间可以是配合持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地或者按照设定的或实时调整的工作模式要求。例如,所述主级网间传输容器12持续并实时地接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器13进行报文处理,所述从级网间传输容器13基于所具有的接口设备类型,将处理后的所述网络报文发出。具体地,所述创建装置11创建主级网间传输容器12,并基于租户需求创建至少一个从级网间传输容器13。在优选的实施例中,一个设备1具有一个主级网间传输容器12,其在设备1创建之初即创建好,所述主级网间传输容器12具有完整的网络协议栈,根据所述设备1所要实现的功能,可以配置为以下一种或几种转发设备:1)一个二层交换机,实现同一vlan的二层网络互通;2)一个三层路由器;3)一个三层交换机;4)物理网络和虚拟网络互通的网关等。优选地,所述主级网间传输容器12的创建基于netframe(网络开发框架,一个基于dpdk的网络产品开发框架)实现,均包含二层和三层网络协议,所述主级网间传输容器12可实现的功能是统一的,在没有创建主级网间传输容器12之前,相关的接口都在缺省内容里面,根据需求进行不同的配置及所加入的网络设备,所述主级网间传输容器12可具体实现的不同功能,从而基于租户需求随时更新,灵活性高。图15示出根据本申请一具体场景实施例提供的主级网间传输容器的构架示意图,如图15所示,所述主级网间传输容器(container-0)包括netframeforward(网络开发框架前端)和dpdk(一种软件开发包),并与dpdk的lib_uio(接口库)通信,所述netframeforward(网络开发框架前端)由kernelspace(内核空间)的netframekernel(网络开发框架内核)提供支持,netframekernel(网络开发框架内核)与netframe的mgmttools(一种服务工具)进行通讯,从而主级网间传输容器(container-0)实现的功能基于netframe(网络开发框架)实现,可以包含二层和三层网络协议,开发便捷,灵活性高。其中,所述创建装置11在设备1创建之初,即根据所述设备1所要实现的功能创建所述主级网间传输容器12并配置参数。根据所述主级网间传输容器12的功能实现可以配置以下一种或任几种参数的组合:独立的cam表(交换机在二层转发数据要查找的表)、两层介质访问控制地址学习表、地址解析协议表、路由表、访问控制列表、会话列表等。并且,所述创建装置11通过配置将相关网络设备加入所述主级网间传输容器12;优选地,通常接入所述设备1的物理设备均需要加入到所述主级网间传输容器12。此外,接入所述主级网间传输容器12的网络设备还可以包括:虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre设备)、协议安全设备(ipsec设备)、虚拟接口(vc,virtualconnetction)等。其中,所述创建装置11为所述主级网间传输容器12配置能够支持ipinip封装和macinip封装的vxlan接口,配置能够在不同vxlan接口间转发数据包的虚拟可扩展网络路由接口路由(vxlanrouting),配置支持vlan接口和vxlan接口之间桥连的虚拟可扩展网络路由桥连(vxlanbridging);以及配置支持多种策略路由选择路由表的多路由表,通过上述配置和融合为统一的实现,支持多种转发功能,以减少运维管理的工作量,并减少后续开发测试的工作量。图18示出根据本申请一具体场景实施例提供的主级网间传输容器(container)中的配置示意图。创建后的所述主级网间传输容器(container)包括:会话列表(session)、路由表(routetable)、cam表(camtable)、arp表(arptable)、访问控制列表(acl)、ip地址列表(ipaddress),以及各网络设备(dev),所述网络设备包括虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre)。优选地,所述创建装置11还为所述主级网间传输容器12配置分类表,所述分类表用于记录所述主级网间传输容器12的分类策略,发送至所述设备1的网络报文需先通过所述主级网间传输容器12,再由所述主级网间传输容器12基于所述配置分类表进行分类。图2示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的创建装置的示意图,进一步地,所述创建装置11还基于租户需求创建至少一个从级网间传输容器13。所述创建装置11包括:配置单元111、生成单元112和更新单元113。其中,所述配置单元111基于租户需求获取待配置参数,基于所述待配置参数创建至少一个从级网间传输容器13,并将相关网络设备加入所述从级网间传输容器;所述生成单元112基于所述从级网间传输容器及相关所述网络设备,生成所述从级网间传输容器的分类信息;所述更新单元113基于所述从级网间传输容器的分类信息更新所述主级网间传输容器的分类表。在优选的实施例中,一个设备1具有一个或多个从级网间传输容器13,其在所述配置单元111创建设备1之初或在创建好后随时根据租户的需求创建。优选地,所述主级网间传输容器12的创建基于netframe(网络开发框架)实现,均包含二层和三层网络协议,所述从级网间传输容器13与所述主级网间传输容器12可实现的功能是统一的,在没有创建从级网间传输容器13之前,相关的接口都在缺省内容里面,根据需求进行不同的配置及所加入的网络设备,所述从级网间传输容器13可具体实现的不同功能,从而基于租户需求随时更新,灵活性高。所述配置单元111所创建的所述从级网间传输容器13同样具有完整的网络协议栈,根据所述设备1所要实现的功能以及租户的需求,可以配置为以下一种或几种转发设备:1)一个二层交换机,实现同一vlan的二层网络互通;2)一个三层路由器;3)一个三层交换机;4)物理网络和虚拟网络互通的网关等。具体地,所述配置单元111包括第一子单元(未示出)、第二子单元(未示出)和第三子单元(未示出),其中,所述第一子单元基于租户需求获取的待配置参数包括至少以下任一项:所述从级网间传输容器13的识别信息(名称或id);互通类型;两层介质访问控制地址(mac地址)学习表的大小;地址解析协议表(arp表)的大小;路由表的大小等;访问控制列表(acl)的条目数;会话列表(session)的大小等,第二子单元基于所述待配置参数配置相关配置信息和互联网协议地址(ipaddress)信息,其中,所述相关配置信息包括至少以下任一项:两层介质访问控制地址学习表、地址解析协议表、路由表、访问控制列表、会话列表等。并且,所述配置单元111通过配置将相关网络设备加入相应所述从级网间传输容器13;所接入的所述从级网间传输容器13的网络设备可以包括:相应的物理设备、虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre设备)、协议安全设备(ipsec设备)虚拟接口(vc,virtualconnetction)等。其中,基于租户需求,所述配置单元111的第三子单元为所述从级网间传输容器13配置能够支持ipinip封装和macinip封装的vxlan接口,配置能够在不同vxlan接口间转发数据包的虚拟可扩展网络路由接口路由(vxlanrouting),配置支持vlan接口和vxlan接口之间桥连的虚拟可扩展网络路由桥连(vxlanbridging);以及配置支持多种策略路由选择路由表的多路由表,通过上述配置和融合为统一的实现,支持多种转发功能,以减少运维管理的工作量,并减少后续开发测试的工作量。接着,所述生成单元112基于所述从级网间传输容器及相关所述网络设备,生成所述从级网间传输容器的分类信息,在此,所述分类信息可以包括所述从级网间传输容器13的地址,例如ip地址或网络地址,还可以包括相关所述网络设备的识别信息,其中,所述网络设备包括接口设备。二者可以选择使用或配合交叉使用。在具体的实施例中,我们理解,所述主级网间传输容器12与每一所述从级网间传输容器13均可以是一种支持多租户网络传输的多个网络容器(container)。图16示出根据本申请一具体场景实施例提供的主级网间传输容器及若干从级网间传输容器之间的配合示意图,所述主级网间传输容器(container-0)和若干从级网间传输容器(container-1,container-2,container-3),所述主级网间传输容器(container-0)和若干从级网间传输容器(container-1,container-2,container-3)分别具有虚拟接口(vc1、vc2、vc3和vc4),所述主级网间传输容器(container-0)和若干从级网间传输容器(container-1,container-2,container-3)之间通过虚拟接口传输报文。图17示出根据本申请一具体场景实施例提供的主级网间传输容器及若干从级网间传输容器之间的传输示意图,主级网间传输容器container-0收发报文,所述从级网间传输容器container-2仅有虚拟接口,其收发网络报文都通过主级网间传输容器container-0,所述从级网间传输容器container-3具有虚拟接口和物理接口,其从主级网间传输容器container-0接受所述网络报文,并通过自身的物理接口发处理后的网络报文,此外,从级网间传输容器container-3和从级网间传输容器container-4通过接口vc传输网络报文,此外,对于从级网间传输容器container-1仅具有物理接口,其可以通过自身物理接口直接收发报文。一个网络容器包含多种元素,这些元素都可以在创建时指定,其中最重要的是网络容器的分类规则对应于所述主级网间传输容器(container-0)的分类表。其中,网络容器可以通过两种元素生成所述分类表:1)网络设备:包括物理设备和虚拟设备。其中,虚拟设备包括虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre设备)、协议安全设备(ipsec设备)、虚拟接口(vc,virtualconnetction);在所述主级网间传输容器12中,当能够识别某个从级网间传输容器13的网络设备时,就能够确定这个网络报文是否应该送到相应所述从级网间传输容器13中处理,如果不能识别,则应当在主级网间传输容器12(container-0)中处理。当网络报文在网络容器(主级网间传输容器12与从级网间传输容器13之间,或多个从级网间传输容器13之间)之间传递时,都会带上源网络容器和目的网络容器的标示。2)网络地址:可以是ip地址或者网络地址。在所述主级网间传输容器12(container-0)中,如果所述网络报文匹配某个目的地址,则可以把这个网络报文送到相应所述从级网间传输容器13。如果不能,就应当在所述主级网间传输容器12中处理。此后,所述更新单元113基于所述从级网间传输容器13的分类信息更新所述主级网间传输容器12的分类表。以便所述主级网间传输容器12在收到网络报文是,根据所述分类表进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理。在本申请的实施例中,所述主级网间传输容器12与所述从级网间传输容器13都基于netframe(网络开发框架)实现,均包含二层和三层网络协议,并配置所述主级网间传输容器12和至少一个从级网间传输容器13,使其配合传输和处理网络报文,从而将不同的虚拟网络的边界路由设备的功能融合抽象成一个统一的实现,进而减少运维管理的工作量,并减少后续开发测试的工作量。在创建后,所述主级网间传输容器12接收网络报文,并基于所述分类表进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理。根据所述从级网间传输容器的分类信息的不同,主级网间传输容器12在收到网络报文后,分类方式不同。所述分类信息包括:所述从级网间传输容器的地址。所述主级网间传输容器12基于所述网络报文的目的地址,查找所述分类表中对应所述从级网间传输容器13的地址,当查找到,则所述主级网间传输容器将所述网络报文发给相应所述从级网间传输容器进行报文处理。图3示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的主级网间传输容器的示意图,具体地,所述主级网间传输容器12包括:第一接收单元121、第一查找单元122和第一发送单元123。所述第一接收单元121接收所述网络报文;所述第一查找单元122基于所述网络报文的目的地址,查找所述分类表中对应所述从级网间传输容器的地址;当查找到,则所述第一发送单元123将所述网络报文发给相应所述从级网间传输容器进行报文处理。再例如,所述分类信息包括:相关所述网络设备的识别信息,其中,所述网络设备包括接口设备。所述主级网间传输容器12基于所述网络报文的目的接口设备,查找所述分类表中对应所述接口设备及其所在的所述从级网间传输容器13;当查找到,则所述主级网间传输容器12将所述网络报文发给相应所述从级网间传输容器13进行报文处理。图4示出根据本申请另一优选实施例提供的一种支持多租户的网络传输的设备中的主级网间传输容器的示意图,具体地,所述主级网间传输容器12包括:第二接收单元124、第二查找单元125和第二发送单元126。所述第二接收单元124接收所述网络报文;所述第二查找单元125基于所述网络报文的目的接口设备,查找所述分类表中对应所述接口设备及其所在的所述从级网间传输容器;当查找到,则所述第二发送单元126将所述网络报文发给相应所述从级网间传输容器进行报文处理。当所述主级网间传输容器12未查找所述分类表中对应所述从级网间传输容器13的地址或所述分类表中对应所述接口设备及其所在的所述从级网间传输容器,则所述主级网间传输容器12自己对所述网络报文进行报文处理。所述从级网间传输容器13获取到所述网络报文时,对网络报文进行报文处理。图5示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的从级网间传输容器的示意图。所述从级网间传输容器13包括:检查单元134、路由匹配单元135、封装单元136,其中,检查单元134对所述网络报文进行访问控制和安全检查,路由匹配单元135对所述网络报文进行路由匹配,封装单元136对所述网络报文进行虚拟可扩展封装。所述从级网间传输容器13需要发网络报文时,会基于所具有的接口设备类型,选择发送报文的方式。若所述从级网间传输容器13不包括物理接口设备类型,则交由所述主级网间传输容器12发送网络,若具有物理接口设备类型,可直接经物理接口设备发送至物理网络图6示出根据本申请又一优选实施例提供的一种支持多租户的网络传输的设备中的从级网间传输容器的示意图。具体地,所述从级网间传输容器13包括:确定单元131、转发单元132、直发单元132。所述确定单元131确定所述从级网间传输容器所包括的接口设备类型;若所述从级网间传输容器不包括物理接口设备类型,则转发单元132将处理后的所述网络报文交由所述主级网间传输容器发送至所述物理网络;若所述从级网间传输容器包括物理接口设备类型,则所述直发单元133直接将处理后的所述网络报文发送至物理网络。此外,所述主级网间传输容器12与各所述从级网间传输容器13均具有用于互通的虚拟接口(vc,virtualconnetction),实现主级网间传输容器12与各所述从级网间传输容器13的互通,以及从级网间传输容器13之间的互通。图7示出根据本申请一优选实施例提供的一种支持多租户的网络传输的设备中的示意图,在优选的实施例中,在图1所示的设备基础上,所述设备1还包括:配置装置14,所述配置装置14可以通过相应的linux网络的namespace(命名空间)实现,为所述主级网间传输容器和所述从级网间传输容器相应配置动态路由协议和七层协议的网络协议栈,进而提高所述设备1的转发的灵活性。此外,本申请实施例还提供了一种支持多租户的网络传输的设备,所述设备包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:创建主级网间传输容器,并基于租户需求创建至少一个从级网间传输容器;所述主级网间传输容器接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理;所述从级网间传输容器基于所具有的接口设备类型,将处理后的所述网络报文发出。与现有技术相比,在本申请的实施例中,支持多租户的网络传输的设备通过基于netframe(网络开发框架)实现创建所述主级网间传输容器12与至少一个所述从级网间传输容器13,将不同的虚拟网络的边界路由设备的功能融合抽象成一个统一的实现,进而减少运维管理的工作量,并减少后续开发测试的工作量。并且,基于租户需求进行具体不同的配置,将用于转发的设备虚拟化为多种具有不同功能的虚拟化设备,通过只对网络功能的虚拟化,仅负责网络包的转发,对转发协议栈进行优化,无需配置类似于虚拟机的cpu,内存,硬盘等虚拟功能,因此在性能和容量上具有优势。图8示出根据本申请一个方面提供的一种支持多租户的网络传输的方法的流程示意图,其中,所述方法包括:步骤s11、步骤s12和步骤s13。在所述步骤s11中,创建主级网间传输容器,并基于租户需求创建至少一个从级网间传输容器;在所述步骤s12中,所述主级网间传输容器接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理;在所述步骤s13中,基于所具有的接口设备类型,所述从级网间传输容器将处理后的所述网络报文发出。在此,所述方法由设备1执行,其中,所述设备1包括但不限于网络设备通过网络相集成所构成的设备。所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(asic)、可编程门阵列(fpga)、数字处理器(dsp)、嵌入式设备等。所述网络包括但不限于互联网、广域网、城域网、局域网、vpn网络、无线自组织网络(adhoc网络)等。优选地,所述元数据客户接入设备1还可以是运行于所述用户设备与网络设备通过网络相集成所构成的设备上的脚本程序。当然,本领域技术人员应能理解上述设备1仅为举例,其他现有的或今后可能出现的所述设备1如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。上述各步骤之间可以是配合持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地或者按照设定的或实时调整的工作模式要求。例如,在所述步骤s12中,持续并实时地接收网络报文并进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理,在所述步骤s13中,基于所具有的接口设备类型,将处理后的所述网络报文发出。具体地,在所述步骤s11中,创建主级网间传输容器,并基于租户需求创建至少一个从级网间传输容器。在优选的实施例中,一个设备1具有一个主级网间传输容器,其在设备1创建之初即创建好,所述主级网间传输容器具有完整的网络协议栈,根据所述设备1所要实现的功能,可以配置为以下一种或几种转发设备:1)一个二层交换机,实现同一vlan的二层网络互通;2)一个三层路由器;3)一个三层交换机;4)物理网络和虚拟网络互通的网关等。优选地,所述主级网间传输容器的创建基于netframe(网络开发框架)实现,均包含二层和三层网络协议,所述主级网间传输容器可实现的功能是统一的,在没有创建主级网间传输容器之前,相关的接口都在缺省内容里面,根据需求进行不同的配置及所加入的网络设备,所述主级网间传输容器12可具体实现的不同功能,从而基于租户需求随时更新,灵活性高。图15示出根据本申请一具体场景实施例提供的主级网间传输容器的构架示意图,如图15所示,所述主级网间传输容器(container-0)包括netframeforward(网络开发框架前端)和dpdk(一种软件开发包),并与dpdk的lib_uio(接口库)通信,所述netframeforward(网络开发框架前端)由kernelspace(内核空间)的netframekernel(网络开发框架内核)提供支持,netframekernel(网络开发框架内核)与netframe的mgmttools(一种服务工具)进行通讯,从而主级网间传输容器(container-0)实现的功能基于netframe(网络开发框架)实现,可以包含二层和三层网络协议,开发便捷,灵活性高。其中,在所述步骤s11中,在设备1创建之初,即根据所述设备1所要实现的功能创建所述主级网间传输容器并配置参数。根据所述主级网间传输容器的功能实现可以配置以下一种或任几种参数的组合:独立的cam表(交换机在二层转发数据要查找的表)、两层介质访问控制地址学习表、地址解析协议表、路由表、访问控制列表、会话列表等。并且,在所述步骤s11中,通过配置将相关网络设备加入所述主级网间传输容器;优选地,通常接入所述设备1的物理设备均需要加入到所述主级网间传输容器。此外,接入所述主级网间传输容器的网络设备还可以包括:虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre设备)、协议安全设备(ipsec设备)、虚拟接口(vc,virtualconnetction)等。其中,所述设备1为所述主级网间传输容器12配置能够支持ipinip封装和macinip封装的vxlan接口,配置能够在不同vxlan接口间转发数据包的虚拟可扩展网络路由接口路由(vxlanrouting),配置支持vlan接口和vxlan接口之间桥连的虚拟可扩展网络路由桥连(vxlanbridging);以及配置支持多种策略路由选择路由表的多路由表,通过上述配置和融合为统一的实现,支持多种转发功能,以减少运维管理的工作量,并减少后续开发测试的工作量。图18示出根据本申请一具体场景实施例提供的主级网间传输容器(container)中的配置示意图。创建后的所述主级网间传输容器(container)包括:会话列表(session)、路由表(routetable)、cam表(camtable)、arp表(arptable)、访问控制列表(acl)、ip地址列表(ipaddress),以及各网络设备(dev),所述网络设备包括虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre)。优选地,在所述步骤s11中,为所述主级网间传输容器配置分类表,所述分类表用于记录所述主级网间传输容器的分类策略,发送至所述设备1的网络报文需先通过所述主级网间传输容器,再由所述主级网间传输容器12基于所述配置分类表进行分类。图9示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法中步骤s11的流程示意图,进一步地,在所述步骤s11中,还基于租户需求创建至少一个从级网间传输容器13。所述步骤s11包括:步骤s111、步骤s112和步骤s113。其中,在所述步骤s111中,基于租户需求获取待配置参数,基于所述待配置参数创建至少一个从级网间传输容器,并将相关网络设备加入所述从级网间传输容器;在所述步骤s112中,基于所述从级网间传输容器及相关所述网络设备,生成所述从级网间传输容器的分类信息;在所述步骤s113中,基于所述从级网间传输容器的分类信息更新所述主级网间传输容器的分类表。在优选的实施例中,一个设备1具有一个或多个从级网间传输容器,其创建设备1之初或在创建好后随时根据租户的需求创建。优选地,所述主级网间传输容器的创建基于netframe(网络开发框架)实现,均包含二层和三层网络协议,所述从级网间传输容器13与所述主级网间传输容器12可实现的功能是统一的,在没有创建从级网间传输容器13之前,相关的接口都在缺省内容里面,根据需求进行不同的配置及所加入的网络设备,所述从级网间传输容器可具体实现的不同功能,从而基于租户需求随时更新,灵活性高。在所述步骤s111中,所创建的所述从级网间传输容器同样具有完整的网络协议栈,根据所述设备1所要实现的功能以及租户的需求,可以配置为以下一种或几种转发设备:1)一个二层交换机,实现同一vlan的二层网络互通;2)一个三层路由器;3)一个三层交换机;4)物理网络和虚拟网络互通的网关等。具体地,在所述步骤s111中,包括:基于租户需求获取的待配置参数包括至少以下任一项:所述从级网间传输容器的识别信息(名称或id);互通类型;两层介质访问控制地址(mac地址)学习表的大小;地址解析协议表(arp表)的大小;路由表的大小等;访问控制列表(acl)的条目数;会话列表(session)的大小等,基于所述待配置参数配置相关配置信息和互联网协议地址(ipaddress)信息,其中,所述相关配置信息包括至少以下任一项:两层介质访问控制地址学习表、地址解析协议表、路由表、访问控制列表、会话列表等。并且,在所述步骤s111中,通过配置将相关网络设备加入相应所述从级网间传输容器;所接入的所述从级网间传输容器的网络设备可以包括:相应的物理设备、虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre设备)、协议安全设备(ipsec设备)虚拟接口(vc,virtualconnetction)等。其中,基于租户需求,在所述步骤s111中,的第三子单元为所述从级网间传输容器配置能够支持ipinip封装和macinip封装的vxlan接口,配置能够在不同vxlan接口间转发数据包的虚拟可扩展网络路由接口路由(vxlanrouting),配置支持vlan接口和vxlan接口之间桥连的虚拟可扩展网络路由桥连(vxlanbridging);以及配置支持多种策略路由选择路由表的多路由表,通过上述配置和融合为统一的实现,支持多种转发功能,以减少运维管理的工作量,并减少后续开发测试的工作量。接着,在所述步骤s112中,基于所述从级网间传输容器及相关所述网络设备,生成所述从级网间传输容器的分类信息,在此,所述分类信息可以包括所述从级网间传输容器的地址,例如ip地址或网络地址,还可以包括相关所述网络设备的识别信息,其中,所述网络设备包括接口设备。二者可以选择使用或配合交叉使用。在具体的实施例中,我们理解,所述主级网间传输容器与每一所述从级网间传输容器均可以是一种支持多租户网络传输的多个网络容器(container)。图16示出根据本申请一具体场景实施例提供的主级网间传输容器及若干从级网间传输容器之间的配合示意图,所述主级网间传输容器(container-0)和若干从级网间传输容器(container-1,container-2,container-3),所述主级网间传输容器(container-0)和若干从级网间传输容器(container-1,container-2,container-3)分别具有虚拟接口(vc1、vc2、vc3和vc4),所述主级网间传输容器(container-0)和若干从级网间传输容器(container-1,container-2,container-3,container-4)之间通过虚拟接口传输报文。图17示出根据本申请一具体场景实施例提供的主级网间传输容器及若干从级网间传输容器之间的传输示意图,主级网间传输容器container-0收发报文,所述从级网间传输容器container-2仅有虚拟接口,其收发网络报文都通过主级网间传输容器container-0,所述从级网间传输容器container-3具有虚拟接口和物理接口,其从主级网间传输容器container-0接受所述网络报文,并通过自身的物理接口发处理后的网络报文,此外,从级网间传输容器container-3和从级网间传输容器container-4通过接口vc传输网络报文,此外,对于从级网间传输容器container-1仅具有物理接口,其可以通过自身物理接口直接收发报文。一个网络容器包含多种元素,这些元素都可以在创建时指定,其中最重要的是网络容器的分类规则对应于所述主级网间传输容器(container-0)的分类表。其中,网络容器可以通过两种元素生成所述分类表:1)网络设备:包括物理设备和虚拟设备。其中,虚拟设备包括虚拟网络接口设备(vlan)、虚拟可扩展网络接口设备(vxlan)、通用路由封装设备(gre设备)、协议安全设备(ipsec设备)、虚拟接口(vc,virtualconnetction);在所述主级网间传输容器中,当能够识别某个从级网间传输容器的网络设备时,就能够确定这个网络报文是否应该送到相应所述从级网间传输容器中处理,如果不能识别,则应当在主级网间传输容器(container-0)中处理。当网络报文在网络容器(主级网间传输容器与从级网间传输容器之间,或多个从级网间传输容器之间)之间传递时,都会带上源网络容器和目的网络容器的标示。2)网络地址:可以是ip地址或者网络地址。在所述主级网间传输容器(container-0)中,如果所述网络报文匹配某个目的地址,则可以把这个网络报文送到相应所述从级网间传输容器13。如果不能,就应当在所述主级网间传输容器12中处理。此后,在所述步骤s113中,基于所述从级网间传输容器的分类信息更新所述主级网间传输容器的分类表。以便所述主级网间传输容器在收到网络报文是,根据所述分类表进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理。在本申请的实施例中,所述主级网间传输容器与所述从级网间传输容器都基于netframe(网络开发框架)实现,均包含二层和三层网络协议,并配置所述主级网间传输容器和至少一个从级网间传输容器,使其配合传输和处理网络报文,从而将不同的虚拟网络的边界路由设备的功能融合抽象成一个统一的实现,进而减少运维管理的工作量,并减少后续开发测试的工作量。在创建后,所述主级网间传输容器接收网络报文,并基于所述分类表进行分类,将符合分类处理的所述网络报文发给相应所述从级网间传输容器进行报文处理。根据所述从级网间传输容器的分类信息的不同,主级网间传输容器在收到网络报文后,分类方式不同。所述分类信息包括:所述从级网间传输容器的地址。所述主级网间传输容器基于所述网络报文的目的地址,查找所述分类表中对应所述从级网间传输容器的地址,当查找到,则所述主级网间传输容器将所述网络报文发给相应所述从级网间传输容器进行报文处理。图10示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法中步骤s12的流程示意图。具体地,所述在所述步骤s12包括:步骤s121、步骤s122和步骤s123。在步骤s121中,所述从级网间传输容器接收所述网络报文;在步骤s122,所述主级网间传输容器基于所述网络报文的目的地址,查找所述分类表中对应所述从级网间传输容器的地址;在所述步骤s122,当查找到,则所述主级网间传输容器将所述网络报文发给相应所述从级网间传输容器进行报文处理。再例如,所述分类信息包括:相关所述网络设备的识别信息,其中,所述网络设备包括接口设备。所述主级网间传输容器基于所述网络报文的目的接口设备,查找所述分类表中对应所述接口设备及其所在的所述从级网间传输容器;当查找到,则所述主级网间传输容器将所述网络报文发给相应所述从级网间传输容器进行报文处理。图11示出根据本申请另一优选实施例提供的一种支持多租户的网络传输的方法中步骤s12的流程示意图。具体地,所述步骤s12包括:步骤s124、步骤s125和步骤s126。所述步骤s124中,所述主级网间传输容器接收所述网络报文;所述步骤s125中,所述主级网间传输容器基于所述网络报文的目的接口设备,查找所述分类表中对应所述接口设备及其所在的所述从级网间传输容器;步骤s126中,当查找到,则所述主级网间传输容器将所述网络报文发给相应所述从级网间传输容器进行报文处理。当所述主级网间传输容器未查找所述分类表中对应所述从级网间传输容器的地址或所述分类表中对应所述接口设备及其所在的所述从级网间传输容器,则所述主级网间传输容器自己对所述网络报文进行报文处理。在所述步骤s13中,所述从级网间传输容器获取到所述网络报文时,对网络报文进行报文处理。图12示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法中步骤s13的流程示意图,所述步骤s13包括:步骤s134、步骤s135、步骤s136,其中,在所述步骤s134中所述从级网间传输容器对所述网络报文进行访问控制和安全检查,在所述步骤s135中,所述从级网间传输容器对所述网络报文进行路由匹配,在所述步骤s136中,所述从级网间传输容器对所述网络报文进行虚拟可扩展封装。所述从级网间传输容器需要发网络报文时,会基于所具有的接口设备类型,选择发送报文的方式。若所述从级网间传输容器不包括物理接口设备类型,则交由所述主级网间传输容器发送网络,若具有物理接口设备类型,可直接经物理接口设备发送至物理网络图13示出根据本申请另一优选实施例提供的一种支持多租户的网络传输的方法中步骤s13的流程示意图,具体地,在所述步骤s13包括:步骤s131、步骤s132、步骤s133。所述确定单元131确定所述从级网间传输容器所包括的接口设备类型;在步骤s132中,若所述从级网间传输容器不包括物理接口设备类型,则所述从级网间传输容器将处理后的所述网络报文交由所述主级网间传输容器发送至所述物理网络;在所述步骤s133中,若所述从级网间传输容器包括物理接口设备类型,则所述从级网间传输容器直接将处理后的所述网络报文发送至物理网络。此外,所述主级网间传输容器与各所述从级网间传输容器均具有用于互通的虚拟接口(vc,virtualconnetction),实现主级网间传输容器与各所述从级网间传输容器的互通,以及从级网间传输容器之间的互通。与现有技术相比,在本申请的实施例中,支持多租户的网络传输的设备通过基于netframe(网络开发框架)实现创建所述主级网间传输容器与至少一个所述从级网间传输容器,将不同的虚拟网络的边界路由设备的功能融合抽象成一个统一的实现,进而减少运维管理的工作量,并减少后续开发测试的工作量。并且,基于租户需求进行具体不同的配置,将用于转发的设备虚拟化为多种具有不同功能的虚拟化设备,通过只对网络功能的虚拟化,仅负责网络包的转发,对转发协议栈进行优化,无需配置类似于虚拟机的cpu,内存,硬盘等虚拟功能,因此在性能和容量上具有优势。图14示出根据本申请一优选实施例提供的一种支持多租户的网络传输的方法的流程示意图,在优选的实施例中,在图8所示的方法基础上,所述方法还包括:步骤s14,在所述步骤s14中,可以通过相应的linux网络的namespace(命名空间)实现,为所述主级网间传输容器和所述从级网间传输容器相应配置动态路由协议和七层协议的网络协议栈,进而提高所述设备1的转发的灵活性。与现有技术相比,在本申请的实施例中,支持多租户的网络传输的设备通过基于netframe(网络开发框架)实现创建所述主级网间传输容器12与至少一个所述从级网间传输容器13,将不同的虚拟网络的边界路由设备的功能融合抽象成一个统一的实现,进而减少运维管理的工作量,并减少后续开发测试的工作量。并且,基于租户需求进行具体不同的配置,将用于转发的设备虚拟化为多种具有不同功能的虚拟化设备,通过只对网络功能的虚拟化,仅负责网络包的转发,对转发协议栈进行优化,无需配置类似于虚拟机的cpu,内存,硬盘等虚拟功能,因此在性能和容量上具有优势。需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(asic)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,ram存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1