云数据中心互联方法及装置与流程

文档序号:11279160阅读:209来源:国知局
云数据中心互联方法及装置与流程
本发明涉及网络通信领域,尤其涉及一种云数据中心互联方法及装置。
背景技术
:sdn(softwaredefinednetwork,软件定义网络)是一种新型网络架构,它倡导业务、控制与转发三层分离。sdn是网络虚拟化的一种实现方式,它支持网络抽象,实现网络智能控制、业务灵活调度,加速网络能力开放,是运营商向“互联网+”时代转型的重要支持技术。其核心技术openflow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能。随着云计算的迅速崛起,用户越来越多地期望能够实现sdn控制器管理域内的多个dc(datacenter,数据中心)的互联,形成互联多个数据中心的网络,即dci(datacenterinternet,数据中心互联网)。dci可以整合用户各个dc中丰富的数据资源优势,为云业务提供高带宽、低时延的业务保障,给用户带来高质量的业务体验。在dc互联的过程中,dci控制器根据pcep(pathcomputationelementcommunicationprotocol,路径计算元件通信协议)、is-is(intermediatesystemtointermediatesystem,中间系统到中间系统协议)、bgp(bordergatewayprotocol,边界网关协议)、netconf实现dci网络的集中算路、流量的智能调度以及带宽的按需即时发放不调整等。但这个过程需要上层编排器通过多种接口下发信息,若两个需要互联的dc使用的设备属于同一厂家生产,规格相同,即两个dc的接口匹配,那这两个dc的互联自然不存在问题,但是现有的dc使用的设备大多属于不同厂家,这些设备的接口也并不是标准统一的, 因此,在这种情况下依照现有的互联方式就会存在障碍,也就是说,现有的互联方式不适合异厂家生产的dc设备。这种情况下,两个dc之间要进行互联就只能通过私有协议进行,而私有协议总是有很大的局限性,例如使用私有协议互联通用性低,应用范围窄。技术实现要素:本发明要解决的主要技术问题是:解决现有技术中使用不同规格设备的云数据中心只能通过私有协议进行互联的技术问题。为解决上述技术问题,本发明提供一种云数据中心互联方法,包括:与待通信云数据中心建立bgp邻居通道,所述待通信云数据中心为本端云数据中心需要进行通信的云数据中心;利用所述bgp邻居通道获取所述待通信云数据中心的mac信息;根据获取的所述mac信息建立所述本端云数据中心网关设备与所述待通信云数据中心网关设备间的隧道;学习获取的所述mac信息并获取与所述待通信云数据中心通信所用的所述本端云数据中心的端口信息,整合所述mac信息与所述端口信息生成转发表;将所述转发表发送给所述本端云数据中心网关设备,使所述网关设备根据所述转发表利用所述隧道与所述待通信云数据中心进行通信。在本发明的一种实施例中,利用所述bgp邻居通道获取所述待通信云数据中心的mac信息包括:根据以太网虚拟专用网络协议获取所述待通信云数据中心的mac信息。在本发明的一种实施例中,所述获取与所述待通信云数据中心通信所用的所述本端云数据中心的端口信息包括:根据bgp邻居信息获取与所述待通信云 数据中心通信所用的所述本端云数据中心的端口信息。在本发明的一种实施例中,当所述待通信云数据中心与所述本端云数据中心处于同一网段,获取的所述mac信息包括:所述待通信云数据中心的ip地址、mac地址、vni号以及隧道端点ip;当所述待通信云数据中心与所述本端云数据中心处于不同网段,获取的所述mac信息包括:所述待通信云数据中心的ip地址、mac地址、vni号、隧道端点ip以及数据包下一站要到达的mac地址。在本发明的一种实施例中,所述根据获取的所述mac信息建立隧道包括以下四种中的任意一种:根据获取的所述mac信息建立vxlan隧道;根据获取的所述mac信息建立gre隧道;根据获取的所述mac信息建立pbb隧道;根据获取的所述mac信息建立mpls隧道。在本发明的一种实施例中,当所述本端云数据中心内部设备属于不同规格,则将所述转发表发送给网关设备包括:扩展openflow协议,扩展后的openflow协议用于操作隧道封装;根据扩展后的openflow协议将所述转发表发送给所述网关设备。在本发明的一种实施例中,当所述本端云数据中心网关设备与所述待通信云数据中心网关设备间的隧道为vxlan隧道时,扩展openflow协议包括:在ip头前插入一个新的vxlan头,弹出最外层的vxlan头;设置隧道id,设置最外层vxlan头中的vxlan网络标识;插入vxlan隧道的外层ip头,弹出vxlan隧道的外层ip头;插入vxlan隧道的外层mac头,弹出vxlan隧道的外层mac头。本发明还提供一种云数据中心互联装置,包括:bgp邻居建立模块,用于与待通信云数据中心建立bgp邻居通道,所述待通信云数据中心为本端云数据中心需要进行通信的云数据中心;mac信息获取模块,用于利用所述bgp邻居通道获取所述待通信云数据中心的mac信息;隧道建立模块,用于根据获取的所述mac信息建立所述本端云数据中心网关设备与所述待通信云数据中心网关设备间的隧道;转发表生成模块,用于学习获取的所述mac信息并获取与所述待通信云数据中心通信所用的所述本端云数据中心的端口信息,整合所述mac信息与所述端口信息生成转发表;转发表传递模块,用于将所述转发表发送给所述本端云数据中心网关设备,使所述网关设备根据所述转发表利用所述隧道与所述待通信云数据中心进行通信。在本发明的一种实施例中,所述mac信息获取模块根据以太网虚拟专用网络协议获取待通信云数据中心的mac信息。在本发明的一种实施例中,所述转发表生成模块根据bgp邻居信息获取与所述待通信云数据中心通信所用的所述本端云数据中心的端口信息。在本发明的一种实施例中,所述mac信息获取模块包括:第一获取子模块,用于当所述待通信云数据中心与所述本端云数据中心处于同一网段,获取的所述mac信息包括:所述待通信云数据中心的ip地址、mac地址、vni号以及隧道端点ip;第二获取子模块,用于当所述待通信云数据中心与所述本端云数据中心处于不同网段,获取的所述mac信息包括:所述待通信云数据中心的ip地址、mac 地址、vni号、隧道端点ip以及数据包下一站要到达的mac地址。在本发明的一种实施例中,所述隧道建立模块包括以下四种中的至少一种:vxlan隧道建立子模块,用于根据获取的所述mac信息建立vxlan隧道;gre隧道建立子模块,用于根据获取的所述mac信息建立gre隧道;pbb隧道建立子模块,用于根据获取的所述mac信息建立pbb隧道;mpls隧道建立子模块,用于根据获取的所述mac信息建立mpls隧道。在本发明的一种实施例中,当所述本端云数据中心内部设备属于不同规格时,所述转发表传递模块包括:协议扩展模块,用于扩展openflow协议,扩展后的openflow协议用于操作隧道封装;传递模块,用于根据扩展后的openflow协议将所述转发表发送给所述网关设备。在本发明的一种实施例中,当所述隧道建立模块包括vxlan隧道建立子模块时,协议扩展模块包括:第一扩展子模块,用于在ip头前插入一个新的vxlan头,弹出最外层的vxlan头;第二扩展子模块,用于设置隧道id设置最外层vxlan头中的vxlan网络标识;第三扩展子模块,用于插入vxlan隧道的外层ip头,弹出vxlan隧道的外层ip头;第四扩展子模块,用于插入vxlan隧道的外层mac头,弹出vxlan隧道的外层mac头。本发明的有益效果是:通过让本端云数据中心与待通信云数据中心建立bgp邻居通道,获取待通信云数据中心的mac信息建立隧道,并对获取到的mac信息进行学习,获得与待通信云数据中心间通信时,本端云数据中心所用的端口信息,整合mac信息与端口信息生成供本端云数据中心内网关设备与待通信云数据中心网关设备进行通信的转发表,最后将转发表传递给本端云数据中心网关设备,使本端云数据中心网关设备与待通信云数据中心网关设备根据建立的隧道以及获得的转发表进行通信。本发明提出的云数据中心互联方法不仅到达了云数据中心间设备松耦合或无耦合的效果,而且在建立互联的过程中并未使用任何私有协议就让使用不同规格设备的云数据中心实现了互联,提高了云数据中心互联方式的通用性。附图说明图1为本发明实施例一提供的云数据中心互联方法的一种流程图;图2为本发明实施例二提供的云数据中心互联装置的一种示意图;图3为图2中mac信息获取模块的一种示意图;图4为图2中隧道建立模块的一种示意图;图5为图2中转发表传递模块的一种示意图;图6为图5中协议扩展模块的一种示意图;图7为本发明实施例三提供的云数据中心互联方法的一种流程图;图8为本发明实施例四提供的云数据中心互联方法的一种流程图。具体实施方式为了是本发明的优点和细节更加清楚,下面通过具体实施方式结合附图对 本发明作进一步详细说明。本发明的构思是:通过获取待通信云数据中心的mac信息建立隧道,并对获取到的mac信息进行学习,整合bgp邻居信息生成供本端云数据中心内网关设备与待通信云数据中心网关设备进行通信的转发表,最后将转发表传递给本端云数据中心网关设备,使本端云数据中心网关设备与待通信云数据中心网关设备根据建立的隧道以及获得的转发表进行通信,到达云数据中心间设备松耦合或无耦合的效果,让使用不同规格设备的云数据中心实现互联。实施例一:本实施例提供一种云数据中心互联方法,请参考图1:s101、与待通信云数据中心建立bgp邻居通道。这里所指的待通信云数据中心指的是需要与本端云数据中心进行互联的云数据中心。s102、利用bgp邻居通道获取待通信云数据中心的mac信息。在本实施例中,获取待通信云数据中心的mac信息时,根据evpn(以太网虚拟专用网络)协议进行,evpn协议是标准的协议。evpn集成的服务、更高的网络效率、更好的设计灵活性、更强的控制能力这些关键优势使得运营商能够以单一的vpn技术满足其网络中不断出现的新需求,例如:集成的l2和l3服务、简化拓扑的叠加技术,在ip架构上以隧道方式提供业务、云和虚拟化服务以及数据中心互联。在获取待通信云数据中心的mac信息时,需要分不同情况进行考虑,如果待通信云数据中心与本端云数据中心处于同一网段,二者仅需要进行二层互联,这时,获取的mac信息包括待通信云数据中心的ip地址、mac地址、vni号、隧道端点ip。当待通信云数据中心与本端云数据中心处于不同网段,二者需要 进行三层互联时,获取的mac信息一般包括待通信云数据中心的ip地址、mac地址、vni号、隧道端点ip以及数据包下一站要到达的mac地址。还有一种情况是,待通信云数据中心与本端云数据中心有部分网段重叠,即部分处于同一网段,则这时候,待通信云数据中心与本端云数据中心既需要建立二层互联又要建立三层互联,这时候,获取的mac信息也是包括待通信云数据中心的ip地址、mac地址、vni号、隧道端点ip以及数据包下一站要到达的mac地址。s103、根据获取的mac信息建立本端云数据中心网关设备与待通信云数据中心网关设备间的隧道。由于evpn了分离控制面和数据面,其在控制面扩展mp-bgp协议实现了evpn技术,让数据面支持mpls、pbb及vxlan等多种隧道,因此,在本实施例中,根据获取的mac信息建立隧道的时候可以有多种选择:可以建立vxlan隧道、gre隧道、pbb隧道以及mpls隧道。其中因为mpls技术比较成熟,已经形成了rfc标准,所以应用最为广泛。虽然vxlan目前仍为草案,但是由于其具有支持大量的租户、易于维护等优点,因此,vxlan技术也可能成为未来的主流趋势,所以,在本实施例中,建立的隧道属于vxlan隧道。s104、学习获取的mac信息并获取与待通信云数据中心通信所用的本端云数据中心的端口信息,整合mac信息与端口信息生成转发表。生成转发表不仅需要根据获取的mac信息,还要从bgp邻居信息中获取到本端云数据中心的端口信息,以便在两个云数据中心进行通信的时候知道应该从本端云数据中心的哪个端口进行数据包的接收与发送。本领域技术人员应该理解的是,根据获取的mac信息建立隧道的过程与学习获取的mac信息并获取与待通信云数据中心通信所用的本端云数据中心的端口信息,整合mac信息与端口信息生成转发表的过程并没有严格的时序限定, 可以先建立隧道,也可以先生成转发表。s105、将转发表发送给本端云数据中心网关设备,使网关设备根据转发表利用隧道与待通信云数据中心进行通信。在将生成的转发表发送给本端云数据中心的网关设备时,需要考虑本端云数据中心内部设备是否属于同一规格:当本端云数据中心内的控制器与交换机属于同一规格时,可以直接按照现有的方式发送。当本端云数据中心内的控制器与交换机属于不同规格时,可以先对openflow协议进行扩展,使扩展后的openflow协议用于操作隧道封装,然后根据扩展的openflow协议将转发表发送给网关设备。之所以选择对openflow进行扩展,是由于openflow本身就是一种支持扩展的协议,在本实施例中,为了实现转发表在不同规格设备之间进行转发,且由于建立的隧道为vxlan隧道,所以对openflow协议进行以下扩展:在ip头前插入一个新的vxlan头,弹出最外层的vxlan头;设置隧道id,设置最外层vxlan头中的vxlan网络标识;插入vxlan隧道的外层ip头,弹出vxlan隧道的外层ip头;插入vxlan隧道的外层mac头,弹出vxlan隧道的外层mac头。待通信云数据中心也需要获取本端云数据中心的mac信息,并对获取的mac信息进行学习,然后结合bgp邻居信息生成其与本端云数据中心进行通信的转发表,并将转发表发送到其网关设备上,但由于待通信云数据中心内部的设备可能出自同一厂家,也能出自不同厂家,因此,其内部设备的接口可能匹配,也可能不匹配。所以毫无疑义的是,在本实施例中,待通信云数据中心内部进行转发表的发送过程并不需要与本端云数据中心进行的一致。在建立互联之后,两个dc间可以进行正常通信,本端云数据中心内的租户 将数据包发送至网关设备上,网关设备根据转发表,利用与待通信云数据中心间的隧道,例如vxlan隧道将数据包传送至待通信云数据中心的网关设备上。待通信云数据中心的网关设备再将数据包传输给对应租户。实施例二:本实施例提供一种云数据中心互联装置,如图2所示,云数据中心互联装置20包括bgp邻居建立模块201、mac信息获取模块202、隧道建立模块203、转发表生成模块204以及转发表传递模块205。bgp邻居建立模块201用于与待通信云数据中心建立bgp邻居通道。这里所指的待通信云数据中心指的是需要与本端云数据中心进行互联的云数据中心。mac信息获取模块202用于利用bgp邻居通道获取待通信云数据中心的mac信息,这里所指的待通信云数据中心指的是需要与本端云数据中心进行互联的云数据中心。在本实施例中,mac信息获取模块202获取待通信云数据中心的mac信息时,根据evpn(以太网虚拟专用网络)协议进行,evpn协议是标准的协议。evpn集成的服务、更高的网络效率、更好的设计灵活性、更强的控制能力这些关键优势使得运营商能够以单一的vpn技术满足其网络中不断出现的新需求,例如:集成的l2和l3服务、简化拓扑的叠加技术,在ip架构上以隧道方式提供业务、云和虚拟化服务以及数据中心互联。请结合图3,mac信息获取模块202包括第一获取子模块2021和第二获取子模块2022,因为在获取待通信云数据中心的mac信息时,需要分不同情况进行考虑,如果待通信云数据中心与本端云数据中心处于同一网段,二者仅需要进行二层互联,这时,由第一获取子模块2021获取包括待通信云数据中心的ip地址、mac地址、vni号、隧道端点ip等mac信息。当待通信云数据中心与本 端云数据中心处于不同网段,二者需要进行三层互联时,则由第二获取子模块2022去获取待通信云数据中心的mac信息,二获取子模块2022获取的mac信息一般包括待通信云数据中心的ip地址、mac地址、vni号、隧道端点ip以及数据包下一站要到达的mac地址。还有一种情况是,待通信云数据中心与本端云数据中心有部分网段重叠,即部分处于同一网段,则待通信云数据中心与本端云数据中心既需要建立二层互联又要建立三层互联,这时候,也同样由第二获取子模块2022获取待通信云数据中心的mac信息,与建立三层互联时获取的mac信息一样,也是获取待通信云数据中心的ip地址、mac地址、vni号、隧道端点ip以及数据包下一站要到达的mac地址。隧道建立模块203根据获取的mac信息建立隧道。由于evpn了分离控制面和数据面,其在控制面扩展mp-bgp协议实现了evpn技术,让数据面支持mpls、pbb及vxlan等多种隧道,因此,在本实施例中,隧道建立模块203可以包括以下四种中的至少一种,请结合图4:vxlan隧道建立子模块2031,用于根据获取的mac信息建立vxlan隧道;gre隧道建立子模块2032,用于根据获取的mac信息建立gre隧道;pbb隧道建立子模块2033,用于根据获取的mac信息建立pbb隧道;mpls隧道建立子模块2034,用于根据获取的mac信息建立mpls隧道。其中因为mpls技术比较成熟,已经形成了rfc标准,所以mpls隧道建立子模块2034的应用最为广泛。虽然vxlan目前仍为草案,但是由于其具有支持大量的租户、易于维护等优点,因此,vxlan技术也可能成为未来的主流趋势,所以,在本实施例中,隧道建立模块203包括vxlan隧道建立子模块2031,用于建立vxlan类型的隧道。转发表生成模块204用于学习获取的mac信息并获取bgp邻居信息,整合生成转发表。转发表生成模块204生成转发表不仅需要根据获取的mac信息,还要结合bgp邻居信息,即从bgp邻居信息中获取到本端云数据中心的端口信息,以便在两个云数据中心进行通信的时候知道应该从本端云数据中心的哪个端口进行数据包的接收与发送。本领域技术人员应该理解的是,隧道建立模块203根据获取的mac信息建立隧道的过程与转发表生成模块204学习获取的mac信息并获取bgp邻居信息,整合生成转发表这两个过程并没有严格的时序限制,可以先建立隧道,也可以先生成转发表。转发表传递模块205将转发表发送给本端云数据中心的网关设备,使本端网关设备根据转发表和隧道与待通信云数据中心进行通信。在转发表传递模块205将生成的转发表发送给本端云数据中心的网关设备时,需要考虑本端云数据中心内部设备是否属于同一规格:当本端云数据中心内的控制器与交换机属于同一规格时,转发表传递模块205可以直接按照现有的方式发送。当本端云数据中心内的控制器与交换机属于不同规格时,可以先对openflow协议进行扩展,使扩展后的openflow协议用于操作隧道封装,然后根据扩展的openflow协议将转发表发送给网关设备。请参考图5,转发表传递模块205包括用于扩展openflow协议的协议扩展模块2051,以及用于根据扩展后的openflow协议将转发表发送给网关设备的传递模块2052。协议扩展模块2051之所以选择对openflow进行扩展,是由于openflow本身就是一种支持扩展的协议,在本实施例中,为了实现转发表在不同规格设备之间进行转发,协议扩展模块2051包括第一扩展子模块20511、第二扩展子模块20512、第三扩展子模块20513、第四扩展子模块20514,如图6所示:第一扩展子模块20511在ip头前插入一个新的vxlan头,弹出最外层的 vxlan头;第二扩展子模块20512设置隧道id,设置最外层vxlan头中的vxlan网络标识;第三扩展子模块20513则插入vxlan隧道的外层ip头,弹出vxlan隧道的外层ip头;第四扩展子模块20514用于插入vxlan隧道的外层mac头,弹出vxlan隧道的外层mac头。待通信云数据中心也需要获取本端云数据中心的mac信息,并对获取的mac信息进行学习,然后结合bgp邻居信息生成其与本端云数据中心进行通信的转发表,并将转发表发送到其网关设备上,但由于待通信云数据中心内部的设备可能出自同一厂家,也能出自不同厂家,因此,其内部设备的接口可能匹配,也可能不匹配。所以毫无疑义的是,在本实施例中,待通信云数据中心内部进行转发表的发送过程并不需要与本端云数据中心进行的一致。在建立互联之后,两个dc间可以进行正常通信,本端云数据中心内的租户将数据包发送至网关设备上,网关设备根据转发表,利用与待通信云数据中心间的隧道,例如vxlan隧道将数据包传送至待通信云数据中心的网关设备上。待通信云数据中心的网关设备再将数据包传输给对应租户。实施例三:本实施例对两个处于同一网段的云数据中心的互联情况做进一步说明。请结合图7:用户为两个需要互联的云数据中心搭建处于同一网段的网络环境:用户创建192.168.2.0/24网段,并分为两个资源池,两个资源池分别在数据中心dc2和dc1中,例如:192.168.2.1~192.168.2.127在dc2中,192.168.2.128~192.168.2.254在dc1中。编排器将资源池的地址范围通知给dc2和dc1的控制器。用户创建两个ip地址分别为192.168.2.2和192.168.2.203的虚拟机 host21和host31,这两个虚拟机分别落在dc2和dc1中。因此,dc2和dc1中的这两个虚拟机有二层互联需求。由于本发明提供的云数据中心互联方法与装置使dc间达到了设备松耦合或无耦合的效果,因此,本实施例仅以dc2为例来进行说明,本领域技术人员应当明白的是,在dc1内进行的过程dc2内的大致相似:在dc2内,由控制器2配置网关gw2上用于和gw1互联的物理端口信息port23、网关gw2的vtep-ip地址(隧道端点ip地址)。编排器通知控制器2在创建网关gw2上创建二层互联虚拟端口:由控制器提供的restful接口包含如下信息:全局租户id(tenant-id)、租户对应的rd、网段信息(suid或subnet/mask);控制器2为子网段分配vni号,即vxlan隧道号;控制器2在vxlangw2的端口port21上创建subtunnel类型的二层虚拟端口,端口类型标识为外部互联端口。s701、dc2与dc1建立bgp邻居,协商支持evpn。s702、dc2的控制器2获取dc1的mac信息,并将其自己的mac信息发送给dc1。dc2的控制器2发送的mac信息如表1所示:表1ipmacvnivetpip192.168.2.2mac21vni22vtep-ip2dc2的控制器2接收到dc1的mac信息如表2所示:表2ipmacvnivetpip192.168.2.203mac12vni22vtep-ip1s703、dc2的控制器2将获取的bgp邻居信息中本端的端口信息与学习到的 dc1的mac信息加以整合,得到的整合信息如表3所示:表3ipmacvnivetpipport192.168.2.203mac12vni22vtep-ip1port21host11和host21通讯时,host21请求获取host11的mac信息,交换机vswitch1收到arp请求,并将arp请求发送给控制器2,控制器2根据学习到的mac信息查到host11的mac信息,控制器2响应host21的arp响应。s704、dc2的控制器2根据bgp邻居信息与dc1的mac信息生成转发表。在本实施例中,由于转发表通过openflow协议下发到网关gw2上,因此,形成的转发表实质为openflow流表形式。控制器2通过交换机vswtich1给网关gw2下发流表,匹配目的mac是mac12走二层交换,引流到gw2;在gw2上出接口是port21,封装vxlan。s705、dc2的控制器2将openflow流表发送给网关gw2。流表通过扩展openflow协议下发,在本实施例中,openflow协议的扩展规则如下:扩展支持optionalaction:push-tag/pop-tag:action——pushvxlanheader(在ip头前插入一个新的vxlan头)、popvxlanheader(弹出最外层的vxlan头)。扩展支持optionalaction:set-field:settunnelid的动作,用来设置最外层vxlan头中的vxlan网络标识。扩展支持optionalaction:push-tag/pop-tag:action——pushvtep-ipheader(插入vxlan隧道的外层ip头)、popvtep-ipheader(弹出vxlan隧道的外层ip头)。扩展支持optionalaction:push-tag/pop-tag:action——pushvtep-macheader(插入vxlan隧道的外层mac头)、popvtep-macheader(弹出vxlan隧道的外层mac头)。实施例四:本实施例对两个处于不同网段的云数据中心的互联情况做进一步说明。请结合图8:用户为两个需要互联的云数据中心搭建处于不同网段的网络环境。用户创建192.168.1.0/24网段,该网段部分地址在dc1的资源池中,地址范围为192.168.2.128~192.168.2.254。用户再创建192.168.3.0/24网段,该网段地址全部在dc2的资源池中,下面将描述dc1中ip地址为192.168.1.203的host11和dc2中ip地址为192.168.3.2的host21的三层互联。同实施例三一样,在本实施例中,也仅以dc2为例来进行说明,本领域技术人员应当明白的是,在dc1内进行的过程dc2内的大致相似:dc2和dc1中这两个虚拟机有三层互联需求,控制器2搜集网关gw2上用于和gw1互联的物理端口信息(port21),网关gw2的vtep-ip地址,控制器1类似。编排器通知控制器2在创建网关gw2上创建三层互联虚拟端口:控制器2提供的restful接口包含如下信息:全局租户id(tenant-id),租户对应的rd,三层互联接口ip。控制器2为该用户分配vni号,即vxlan隧道号;控制器2在vxlangw2的端口port21上创建tunnel类型三层虚端口,ip地址为l3ip2。s801、dc2与dc1建立bgp邻居,协商支持evpn。s802、dc2的控制器2获取dc1的mac信息,并将其自己的mac信息发送给dc1。dc2的控制器2发送的mac信息如表4所示:表4ipmacvnivetpip192.168.2.2mac21vni22vtep-ip2l3ip2sysmac2vni322vtep-ip2控制器2发送的路由信息如表5所示:表5prefixgwipnexthop192.168.3.0/24l3ip2vtep-ip2dc2的控制器2接收到dc1的mac信息如表6所示:表6ipmacvnivetpip192.168.2.203mac12vni22vtep-ip1l3ip1sysmac1vni322vtep-ip1dc2的控制器2接收到dc1的路由信息如表7所示:表7prefixgwipvetpip192.168.1.203/32l3ip1vtep-ip1s803、dc2的控制器2将获取的bgp邻居信息与学习到的dc1的mac信息加以整合,得到的整合信息如表8所示:表8ipmacvnivetpipportl3ip1sysmac1vni322vtep-ip1port12s804、dc2的控制器2将获取的bgp邻居信息与学习到的dc1的路由信息加 以整合,得到的整合信息如表9所示:表9ipnexthop-macvnivetpipport192.168.1.203/32sysmac1vni322vtep-ip1port21host12和host22通讯时,host22请求获取网关mac信息,交换机vswitch1收到arp请求,并将arp请求发送给控制器2,控制器2根据学习到的mac信息查到网关mac信息为sysmac2,控制器2响应host21的arp响应。s805、dc2的控制器2根据bgp邻居信息与dc1的mac信息生成转发表。在本实施例中,由于转发表通过openflow协议下发到网关gw2上,因此,形成的转发表实质为openflow流表形式。控制器2通过交换机vswtich1给网关gw2下发流表,匹配目的mac是mac12走二层交换,引流到gw2;在gw2上出接口是port21,封装vxlan。s806、dc2的控制器2将openflow流表发送给网关gw2。流表通过扩展openflow协议下发,openflow协议的扩展规则如实施例三所示。显然,本领域的技术人员应该明白,上述本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储介质(rom/ram、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属
技术领域
的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1