专利名称::流量转发方法和系统的制作方法
技术领域:
:本发明涉及网络
技术领域:
,尤其涉及一种流量转发方法和系统。
背景技术:
:现有的数据中心典型组网结构如图1所示,UI(UserInterface,用户界面)服务器维持与所有后端服务器的TCP(TransmissionControlProtocol,传输控制协议)长连接,当收到来自用户的搜索请求后,以单播的形式向后端发送搜索请求。后端服务器在收到请求后搜索本地数据库并向UI服务器发送响应。UI服务器对接收到的响应进行进一步处理后返回给用户。UI服务器通常直接挂接在核心交换机上,后端服务器桂接在中端交换机上。为了可靠性方面的考虑,中端交换机均采用双上行,分别接入到两台核心交换机上;两个核心交换机也都接入到运营商网络。且后端服务器和UI服务器均设置核心交换机为网关,中端交换机仅进行二层透传。现有的方案大多采用MSTP(MultipleSpanningTreeProtocol,多生成树协议)+VRRP(VirtualRouterRedundancyProtocol,虛拟路由冗余协议)的方式进行组网。为了减轻维护工作量,所有的后端服务器均配置VRRP虚地址为网关地址,中端设备上使能MSTP。当核心交换机出现故障时,MSTP和VRRP发生切换,将流量切换到备用核心交换机上,增加了可靠性。现有技术中存在的问题在于由于采用了MSTP技术,中端设备的双上行链路一条处于备份状态,不能用于转发数据,链路资源不能被充分的使用。备用设备上几乎没有流量。另外由于MSTP协议的特点,当链路或者设备发生故障时,MSTP需进行拓朴重算,当规模比较大时,MSTP的切换时间太长。
发明内容本发明提供一种流量转发系统,用于提高现有的数据中心典型组网结构中链路资源的利用效率,缩短故障发生时的切换时间。为了达到上述目的,本发明提供了一种流量转发方法,应用于包括多台核心交换设备、多台中端交换设备的网络中,将中端交换设备与每一台核心交换设备连接的链路配置为跨设备聚合组;所述方法包括所述中端交换设备接收到来自后端服务器的上行流量时,将所述上行流量通过所述跨设备聚合组中的一条链路向对应的核心交换设备发送,由所述核心交换设备对所述上行流量进行转发。其中,所述多台核心交换设备互为地址解析协议ARP对等体,所述多台核心交换设备上与各所述中端交换设备连接的下行接口为ARP对等体接口,各ARP对等体接口中的ARP地址保持同步。其中,所述各ARP对等体接口中的ARP地址保持同步包括所述各ARP对等体定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送,各ARP对等体根据接收到的ARP地址对本地各ARP对等体接口中的ARP地址进行更新;其中,所述各ARP对等体接口中的ARP地址保持同步包括各ARP对等体对于本地学习到的ARP地址,当发生ARP地址老化时,通知其他ARP对等体将所述老化的ARP地址删除;所述各ARP对等体根据第一周期定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送;接收到其他ARP对等体定时发送的ARP地址时,存储接收到的ARP地址并设置同步标记位为1;#4居第二周期定时对其他ARP对等体发送的ARP地址进行扫描,对于同步标记位为1的ARP地址,修改其同步标记位为O;对于同步标记位为0的ARP地址,进行删除操作;所述第一周期与第二周期的时长相同。其中,还包括中端交换设备接收到来自一台核心交换设备的下行流量时,将所述下行流量向后端服务器发送,向所述中端交换设备发送下行流量的核心交换设备与所述转发上行流量的核心交换设备相同或者不同。其中,当所述中端交换设备和一台核心交换设备间存在多条链路时,还包括在所述核心交换设备中将所述多条链路配置为聚合组。其中,所述多台核心交换设备上与各所述中端交换设备连接的下行接口具有相同的因特网协议ip地址和々某体接入控制mac地址。本发明还提供一种流量转发系统,包括多台核心交换设备和多台中端交换设备,所述中端交换设备中,与每一台核心交换设备连接的链路配置为跨设备聚合组;所述中端交换设备接收到来自后端服务器的上行流量时,将所述上行流量通过所述跨设备聚合组中的一条链路向对应的核心交换设备发送,由所述核心交换设备对所述上行流量进行转发。其中,所述多台核心交换设备互为地址解析协议arp对等体,所述多台核心交换设备上与各所述中端交换设备连接的下行接口为arp对等体接口。其中,所述各核心交换设备中包括arp地址同步模块,用于实现各arp对等体接口中的arp地址保持同步,具体的,所述arp地址同步模块用于定时将本地所有arp对等体接口中的arp地址向其他arp对等体发送,或对于本地学习到的arp地址,当发生arp地址老化时,通知其他arp对等体将所述老化的arp地址删除;并根据第一周期定时将本地所有arp对等体接口中的arp地址向其他arp对等体发送;接收到其他arp对等体定时发送的arp地址时,存储接收到的arp地址并设置同步标记位为1;根据第二周期定时对其他arp对等体发送的arp地址进行扫描,对于同步标记位为1的arp地址,修改其同步标记位为0;对于同步标记位为0的arp地址,进行删除操作;所述第一周期与第二周期的时长相同。其中,所述中端交换设备,还用于接收到来自一台核心交换设备的下行流量时,将所述下行流量向后端服务器发送,向所述中端交换设备发送下行流量的核心交换设备与所述转发上行流量的核心交换设备相同或者不同。其中,当所述中端交换设备和一台核心交换设备间存在多条链路时,在所述核心交换设备中将所述多条链路配置为聚合组。其中,所述多台核心交换设备上与各所述中端交换设备连接的下行接口具有相同的因特网协议IP地址和媒体接入控制MAC地址。与现有技术相比,本发明具有以下优点通过将中端交换设备与每一台核心交换设备连接的链路配置为跨设备聚合组,使得流量可以通过每一台核心交换设备进行转发,与现有的通过MSTP+VRRP方式实现的数据中心典型组网结构相比,有效地提高了数据中心典型组网结构中链路资源的利用效率,缩短了故障发生时的切换时间,同时可以通过扩展核心交换设备使得数据中心的可靠性、扩展性和维护性得到有效提高。为了更清楚地"i兌明本发明实施例或现有技术中的4支术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是现有技术中数据中心的典型组网结构示意图2是本发明中提供的流量转发方法的流程图3是本发明中在中端交换机上配置5^殳备聚合组的组网场景示意图4是本发明中在核心交换机上配置聚合组的组网场景示意图5是本发明中核心交换机下行接口配置的一組网示意图6是本发明中提供的流量转发系统的结构示意图。具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明提供了一种流量转发方法,如图2所示,应用于包括多台核心交换设备、多台中端交换设备的网络中,所述方法包括步骤s201、将中端交换设备与每一台核心交换设备连接的链路配置为跨设备聚合组;步骤s202、中端交换设备接收到来自后端服务器的上行流量时,将该上行流量通过跨设备聚合组中的一条链路向对应的核心交换设备发送,由该核心交换设备对该上行流量进行转发。本发明提供的流量转发方法中,应用的数据中心组网结构与现有技术中的数据中心组网结构相似,如图1所示。与现有技术中采用的MSTP+VRRP的组网方式相比,本发明中将中端交换机与不同核心交换机之间的上行链路配置为跨设备聚合组,链路可以是两条、三条甚至是任意条。每个中端交换机可以通过一条或者多条链路连接到一个核心交换才几。以图3所示的组网链路为例,中端交换机通过3条链路与核心交换机1连接,通过1条链路与核心交换机2连接。则在中端交换机上配置跨设备聚合组,将核心交换机1上与本设备建立链路所使用的3个端口、以及核心交换机2上与本设备建立链路所使用的1个端口,配置为一个聚合端口,即在中端交换机上将上述4条链路配置为一条聚合链路。这样即使某些端口或者某些端口所在的核心交换机出现故障,也不会导致聚合链路完全失效,其它正常工作的核心交换;fe^会继续管理和维护仍在正常工作的聚合端口。另外,中端交换机的上行流量将均匀分布在聚合链路上,当某一条链路失效时,中端交换机能够自动将流量重新分布到聚合链路中的其他正常工作的链路中,以实现链路的备份并提高了网络可靠性。对于中端交换机,其配置了跨设备聚合组后,无需感知与多少台核心交换^L连接,在进行流量转发时只需将待转发的流量通过跨设备聚合组中的一条聚合链路发送即可。本发明应用的组网场景中,如果一中端交换机通过多条链路连接到同一个核心交换机,则需要在核心交换机一側配置链路的聚合组。以图4所示的组网链路为例,中端交换机通过3条链路连接到核心交换机1,则在核心交换机1上将与中端交换机连接的3条链路配置为一条聚合链路,可以比较好的进行流量的负载分担和冗余备份。另外,由于核心交换设备的数量可以根据需要随时进行添加,因此组网非常灵活,数据中心的规模可以任意增加,便于后期扩容和升级。由于采用了聚合技术,因此切换时间也变得比较快,并且与网络规模无关。本发明中,由于后端服务器配置的网关地址为核心交换机的接口地址,而且中端交换机采用聚合链路上行,因此后端服务器的上行数据流将被分发到不同的核心交换机上。为了实现流量顺利转发和负载分担,各核心交换机的下行接口必须配置为具有相同的IP地址,并且需要为各核心交换机的下行接口配置相同的MAC地址。如果核心交换机不支持配置接口的MAC地址,则可以使用VRRP虚MAC的方式实现。以图5所示的组网场景为例,核心交换机1通过Portl、Port2和Port3与中端交换机连才妄,核心交换机2通过Portl与中端交换机连接,核心交换机1上作为下行接口的PortlPort3、以及核心交换机2上作为下行接口的Portl,具有相同的IP地址和虚MAC地址。一旦各核心交换机的下行接口釆用相同的IP地址和虚接口地址,服务器将不会感知到多个核心交换机的存在,当某个核心交换机故障或者中端交换机的上行链路发生故障,则聚合技术将会把流量分担到其他核心交换机上。例如如图3所示的网络场景,当核心交换机2发生故障时,由于在中端交换机上配置了上行链路的跨设备聚合组,因此将自动将原来通过核心交换机2转发的上行流量切换到核心交换机1上进行转发。对于后端服务器来说,该过程完全透明,因此业务不会中断。当核心交换机的负荷太大,现有的核心交换机不能满足需求时,可以增加核心交换机。增加核心交换机时,需要为新加入核心交换机的下行接口配置相同的接口IP地址和MAC地址,将链路接入到中端交换机上,并在中端交换机上对配置的跨设备聚合组进行更新。由于中端交换机的上行链路采用聚合链路,因此一台核心交换机向后端服务器发送ARP报文时,后端服务器响应的ARP应答报文可能被分担到其他核心交换机上,导致部分核心交换机学习不到后端服务器的ARP地址,造成流量转发中断。为了解决该问题,可以在每台核心交换机上配置关于后端服务器的静态ARP地址,但是由于后端服务器规模非常庞大,采用静态配置的方式时工作量将非常繁重,后期维护和升级也非常不方^L为了解决这个问题,本发明中引入了ARP对等体的概念。将各核心交换机上配置为ARP对等体,将各核心交换机上与各中端交换设备连接的下行接口为对等体接口,所有ARP对等体的对等体接口保持学习到的ARP地址一致。各ARP对等体与一对IP地址和接口地址绑定,并且为每台作为ARP对等体的核心交换机指定一个或者多个远端对等体(RemotePeer)。对于设置了ARP对等体的一核心交换^/L,ARP对等体的配置可以4吏用下表1描述表l.ARP对等体的配置<table>tableseeoriginaldocumentpage11</column></row><table>所有的对等体之间一一建立远程连接,可以使用UDP、TCP等实现远程连接。为了使得对等体之间相互独立,对等体之间不区分角色,所有的对等体相互平等。以上述表1所示的ARP对等体配置为例,各构成ARP对等体的核心交换机的IP地址相同,均为10.0.0.1,不同接口的VLAN可以不同。对于设置了ARP对等体的该核心交换机,其与其他3台核心交换机互为ARP对等体,且其它3台核心交换机的IP地址分别为l丄l.l、2.2.2.2以及3,3丄3。通过本地配置的远端对等体的IP地址,各ARP对等体之间可以进行ARP地址的同步。本发明中,各ARP对等体的对等建立流程包括所有的ARP对等体根据本地配置的远端对等体的IP地址,逐一的与其他ARP对等体建立远程连接,远程连接建立好之后,ARP对等体之间相互批量同步对等体接口上学习到的或者静态配置的所有ARP地址(只需同步IP地址和MAC地址)。每个ARP对等体接收到对端同步过来的ARP地址后,将该ARP地址学习到本端的对等体接口下,如同从本端学习到的一样。各ARP对等体建立完远程连接之后,各个ARP对等体在对等体接口上学习到的ARP地址需定时向所有的ARP对等体成员同步,对等体成员在接收到该ARP地址后需更新或者学习该ARP地址到本端的对等体接口下,使得所有ARP对等体的对等体接口下保持ARP地址一致。当某个ARP对等体出现故障时,其他ARP对等体检测到故障发生时,无需对学习到的ARP地址做任何处理。只需实时的检测该发生故障的ARP对等体,一旦该对等体故障恢复,则再次与该对等体建立远程连接,并同步ARP地址给该对等体。对于各ARP对等体上ARP地址的同步方式和老化方式,本发明提供了以下两种处理方法(1)不区分本端学习的ARP地址和远端同步的ARP地址。ARP地址相同的处理方式。即不区分本端学习的ARP地址和远端同步的ARP地址。为了防止其他对等体上将本端学习的ARP地址老化,需要实现定期的批量同步。即每隔一个固定时间周期(该周期需小于ARP老化时间,最好为二分之一老化时间),本端将所有的对等体接口下的ARP地址向其他对等体批量同步,其他对等体在接收到本端同步的ARP地址后,更新ARP地址或者学习没有的ARP地址。由于有固定的同步周期,因此所有的ARP对等体需配置相同的老化时间。该老化时间可以在对等体建立时协商,也可以手工配置。(2)不区分本端学习的ARP地址和远端同步的ARP地址。具体的,对等体上,将本端学习的ARP地址和远端同步的ARP地址区别对待。本端学习的ARP地址采用正常的老化方式,当本端学习的ARP地址老化时,需通知其他对等体将该ARP地址删除。各ARP对等体定时的将本端学习的ARP地址批量同步给其他ARP对等体,该同步周期在所有的对等体上一致,同步周期可以在ARP对等体建立时协商,也可以手工指定。远端同步的ARP地址需增加一个同步标记位,当从其他ARP对等体接收到ARP地址时,对同步过来的所有ARP地址刷新同步标记位为1。另外,在各ARP对等体上再增加一个清理定时器,清理定时器的周期与批量同步的周期相同,当清理定时器超时时,ARP对等体扫描所有远端同步过来的ARP地址,如果ARP地址对应的同步标记位为1,则修改为0,如果同步标记位为0,则清除该ARP:^址。通过使用本发明提供的方法,将中端交换设备与每一台核心交换设备连接的链路配置为跨设备聚合组,使得流量可以通过每一台核心交换设备进行转发,与现有的通过MSTP+VRRP方式实现的数据中心典型组网结构相比,有效地提高了数据中心典型组网结构中链路资源的利用效率,缩短了故障发生时的切换时间,同时可以通过扩展核心交换设备使得数据中心的可靠性、扩展性和维护性得到有效提高。本发明还提供了一种流量转发系统,如图6所示,包括多台核心交换设备20和多台中端交换设备10,中端交换设备10中,与每一台核心交换设备20连接的链路配置为跨设备聚合组;中端交换设备10接收到来自后端服务器的上行流量时,将上行流量通过跨设备聚合组中的一条链路向对应的核心交换设备20发送,由核心交换设备20对上行流量进行转发。具体的,多台核心交换设备20互为地址解析协议ARP对等体,多台核心交换设备上与各中端交换设备连接的下行接口为ARP对等体接口。所有ARP对等体的对等体接口保持学习到的ARP地址一致。各核心交换设备20中包括ARP地址同步模块,用于实现各ARP对等体接口中的ARP地址保持同步,具体的,ARP地址同步模块用于定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送,并根据接收到的ARP地址对本地各ARP对等体接口中的ARP地址进行更新;或对于本地学习到的ARP地址,当发生ARP地址老化时,通知其他ARP对等体将老化的ARP地址删除;并根据第一周期定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送;接收到其他ARP对等体定时发送的ARP地址时,存储接收到的ARP地址并设置同步标记位为1;根据第二周期定时对其他ARP对等体发送的ARP地址进行扫描,对于同步标记位为1的ARP地址,修改其同步标记位为0;对于同步标记位为0的ARP地址,进行删除操作;第一周期与第二周期的时长相同。中端交换设备10,还用于接收到来自一台核心交换设备20的下行流量时,将下行流量向后端服务器发送,向中端交换设备IO发送下行流量的核心交换设备20与转发上行流量的核心交换设备相同或者不同。当中端交换设备10和一台核心交换设备20间存在多条链路时,在核心交换设备20中将多条链路配置为聚合组。多台核心交换设备20上与各中端交换设备10连接的下行接口具有相同的因特网协议IP地址和Jf某体接入控制MAC地址。通过使用本发明提供的系统和设备,将中端交换i殳备与每一台核心交换设备连接的链路配置为跨设备聚合组,使得流量可以通过每一台核心交换设备进行转发,与现有的通过MSTP+VRRP方式实现的数据中心典型组网结构相比,有效地提高了数据中心典型组网结构中链路资源的利用效率,缩短了故障发生时的切换时间,同时可以通过扩展核心交换设备使得数据中心的可靠性、扩展性和维护性得到有效提高。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的单元或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施例中的装置中的单元可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的单元可以合并为一个单元,也可以进一步拆分成多个子单元。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。权利要求1、一种流量转发方法,其特征在于,应用于包括多台核心交换设备、多台中端交换设备的网络中,将中端交换设备与每一台核心交换设备连接的链路配置为跨设备聚合组;所述方法包括所述中端交换设备接收到来自后端服务器的上行流量时,将所述上行流量通过所述跨设备聚合组中的一条链路向对应的核心交换设备发送,由所述核心交换设备对所述上行流量进行转发。2、如权利要求l所述的方法,其特征在于,所述多台核心交换设备互为地址解析协议ARP对等体,所述多台核心交换设备上与各所述中端交换设备连接的下行接口为ARP对等体接口,各ARP对等体接口中的ARP地址保持同步。3、如权利要求2所述的方法,其特征在于,所述各ARP对等体接口中的ARP地址保持同步包括所述各ARP对等体定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送,各ARP对等体根据接收到的ARP地址对本地各ARP对等体接口中的ARP地址进行更新;4、如权利要求2所述的方法,其特征在于,所述各ARP对等体接口中的ARP地址保持同步包括各ARP对等体对于本地学习到的ARP地址,当发生ARP地址老化时,通知其他ARP对等体将所述老化的ARP地址删除;所述各ARP对等体根据第一周期定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送;接收到其他ARP对等体定时发送的ARP地址时,存储接收到的ARP地址并设置同步标记位为1;根据第二周期定时对其他ARP对等体发送的ARP地址进行扫描,对于同步标记位为1的ARP地址,修改其同步标记位为O;对于同步标记位为0的ARP地址,进行删除操作;所述第一周期与第二周期的时长相同。5、如权利要求2所述的方法,其特征在于,还包括中端交换设备接收到来自一台核心交换设备的下行流量时,将所述下行流量向后端服务器发送,向所述中端交换设备发送下行流量的核心交换设备与所述转发上行流量的核心交换设备相同或者不同。6、如权利要求2所述的方法,其特征在于,当所述中端交换设备和一台核心交换设备间存在多条链路时,还包括在所述核心交换设备中将所述多条链路配置为聚合组。7、如权利要求l、2、5或6所述的方法,其特征在于,所述多台核心交址和媒体接入控制MAC地址。8、一种流量转发系统,其特征在于,包括多台核心交换i殳备和多台中端交换设备,所述中端交换设备中,与每一台核心交换设备连接的链路配置为跨设备聚合组;所述中端交换设备接收到来自后端服务器的上行流量时,将所述上行流量通过所述跨设备聚合组中的一条链路向对应的核心交换设备发送,由所述核心交换设备对所述上行流量进行转发。9、如权利要求8所述的系统,其特征在于,所述多台核心交换设备互为地址解析协议ARP对等体,所迷多台核心交换设备上与各所述中端交换设备连接的下行接口为ARP对等体接口。10、如权利要求9所述的系统,其特征在于,所述各核心交换设备中包括ARP地址同步模块,用于实现各ARP对等体接口中的ARP地址保持同步,具体的,所述ARP地址同步模块用于定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送,并根据接收到的ARP地址对本地各ARP对等体接口中的ARP地址进行更新;或对于本地学习到的ARP地址,当发生ARP地址老化时,通知其他ARP对等体将所述老化的ARP地址删除;并根据第一周期定时将本地所有ARP对等体接口中的ARP地址向其他ARP对等体发送;接收到其他ARP对等体定时发送的ARP地址时,存储接收到的ARP地址并设置同步标记位为1;根据第二周期定时对其他ARP对等体发送的ARP地址进行扫描,对于同步标记位为1的ARP地址,修改其同步标记位为0;对于同步标记位为0的ARP地址,进行删除操作;所迷第一周期与第二周期的时长相同。11、如权利要求9所述的系统,其特征在于,所述中端交换设备,还用于接收到来自一台核心交换设备的下行流量时,将所述下行流量向后端服务器发送,向所迷中端交换设备发送下行流量的核心交换设备与所述转发上行流量的核心交换设备相同或者不同。12、如权利要求9所述的系统,其特征在于,当所述中端交换设备和一台核心交换设备间存在多条链路时,在所迷核心交换设备中将所述多条链路配置为聚合组。13、如权利要求8、9、11或12所述的系统,其特征在于,所述多台核IP地址和媒体接入控制MAC地址。全文摘要本发明公开了一种流量转发方法和系统。该方法应用于包括多台核心交换设备、多台中端交换设备的网络中,将中端交换设备与每一台核心交换设备连接的链路配置为跨设备聚合组;所述方法包括所述中端交换设备接收到来自后端服务器的上行流量时,将所述上行流量通过所述跨设备聚合组中的一条链路向对应的核心交换设备发送,由所述核心交换设备对所述上行流量进行转发。通过使用本发明,提高了现有的数据中心典型组网结构中链路资源的利用效率,缩短了故障发生时的切换时间。文档编号H04L12/56GK101599907SQ20091015748公开日2009年12月9日申请日期2009年7月31日优先权日2009年7月31日发明者杨碧辉申请人:杭州华三通信技术有限公司