CN108432192B - 流量转移方法和系统以及计算机可读存储介质 - Google Patents

流量转移方法和系统以及计算机可读存储介质 Download PDF

Info

Publication number
CN108432192B
CN108432192B CN201680076010.0A CN201680076010A CN108432192B CN 108432192 B CN108432192 B CN 108432192B CN 201680076010 A CN201680076010 A CN 201680076010A CN 108432192 B CN108432192 B CN 108432192B
Authority
CN
China
Prior art keywords
network
network device
information
traffic
neighbor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680076010.0A
Other languages
English (en)
Other versions
CN108432192A (zh
Inventor
迪亚尼斯·利苏斯基
迈克尔·齐格蒙特·扎维尔斯基
罗伯特·肯尼迪
卡尔·安德烈·麦凯布
保罗·A·斯坦克
马修·迪安·雷德尔
布莱恩·朗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of CN108432192A publication Critical patent/CN108432192A/zh
Application granted granted Critical
Publication of CN108432192B publication Critical patent/CN108432192B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • H04L41/0873Checking configuration conflicts between network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及流量转移方法和系统以及计算机可读存储介质,所述流量转移系统将流量从一个或多个网络设备或接口移走。所述系统确保流量在转移发生之前可以从网络设备中安全移出。方法被描述为分成若干阶段,诸如发现阶段、预检查阶段、转移阶段以及转移后阶段。在转移发生之前,使用所述发现阶段来获取网络拓扑和配置信息。在所述预检查阶段中,询问所述信息,使得可以在不对网络产生负面影响的情况下执行转移。如果所述预检查阶段已通过,则所述网络转移可以通过调整与用于将流量转移的任何设备上的接口相关联的配置参数(诸如成本参数)来发生。最后,在转移后阶段中,执行检查以确保流量正在从所述网络设备移走。

Description

流量转移方法和系统以及计算机可读存储介质
技术领域
本申请涉及计算机领域,具体地,涉及流量转移方法和系统以及计算机可读存储介质。
背景技术
在过去十年间,互联网上的流量急剧增长,并且持续增长。路由器在维持该增长方面起到关键作用。存在各种协议以供路由器一起通信。通常,协议允许路由器识别相邻者以及与将数据包路由到这些相邻者相关联的成本。这类信息允许路由器构建拓扑图并选择用于转发网络数据包的最佳路线。开放式最短路径优先(OSPF)是用于互联网协议网络的路由协议的一个示例。
在一些情况下,出于维护或其它原因,有必要将流量从路由器或一组路由器移走。在没有建立配套技术的情况下,这种流量转移通常以手动方式完成。需要的是更有效的流量转移选项。
发明内容
根据本申请的一个方面,提供了一种流量转移方法,将流量从网络上的网络设备移走,所述方法包括:接收所述网络设备的标识信息;执行发现阶段,其中针对配置信息和网络拓扑信息查询所述网络设备;确定所述网络拓扑信息和所述配置信息在所述网络设备与相邻者网络设备之间是否一致;确定所述网络是否具有足够的容量以用于在不使用所述网络设备的情况下路由流量;通过改变存储在所述网络设备上的路由配置信息将网络流量从所述网络设备移走;以及在经过一段时间之后,检查所述网络设备上的所述网络流量已经降低到预定阈值以下。
进一步地,所述确定所述网络是否具有足够的容量包括确定当前网络流量并确定所述网络中的替代网络设备和相关链路是否具有足够的带宽以用于处理所述当前网络流量。
根据本发明的另一方面,提供了一种计算机可读存储介质,包括指令,所述指令在执行时使计算机系统:接收网络流量将从其移走的网络设备的标识信息,所述网络设备在网络中;执行预检查,其中确定所述网络设备是否可以从所述网络移除;以及通过修改存储在所述网络设备中的路由配置信息来配置所述网络设备,以将流量从所述网络设备移走。
进一步地,所述执行所述预检查包括:确定所述网络设备的网络拓扑信息;以及确定所述网络拓扑信息和所述配置信息在所述网络设备与相邻者网络设备之间是一致的。
进一步地,所述确定所述物流信息是一致的包括检查所述网络设备识别所述相邻者网络设备以及所述相邻者网络设备识别所述网络设备。
进一步地,所述执行所述预检查包括:确定一旦所述网络流量从所述网络设备移走,网络容量是足够的。
进一步地,所述执行所述预检查包括:确定所述网络设备上的接口,所述接口用于连接到相邻者网络设备并包括在路由协议中。
进一步地,所述修改所述路由配置信息包括修改所述网络设备上的路由策略或者增加所述网络设备上的成本参数。
进一步地,所述指令在执行时还使所述计算机系统:在配置之后并且在预定时间段之后,检查所述网络设备上的网络流量是否已经下降到阈值水平以下。
进一步地,其还包括指令,所述指令还使所述计算机系统:针对当前成本设置查询所述网络设备,并且确定关于相邻者设备的成本设置是否等于所述当前成本设置。
进一步地,还包括指令,所述指令在执行时使所述计算机系统:执行发现阶段,其中从所述网络设备获取配置信息。
进一步地,所述修改所述路由配置信息包括改变所述网络设备上与外部边界网关协议(BGP)对等体或对等组相关联的路由策略信息。
进一步地,所述指令在执行时还使所述计算机系统:在所述配置之后并且在预定时间段之后,检查协议状态信息以确保所述路由配置信息已经被更新。
根据本申请的另一方面,提供了一种流量转移系统,其包括:数据中心内的第一网络设备;一组网络设备,其中所述第一网络设备和所述一组网络设备在其间具有用于在网络中建立网络连接的通信路径;服务器计算机,所述服务器计算机执行以下项:针对第一相邻者息查询所述第一网络设备;针对第二相邻者信息查询所述一组网络设备;检查所述第一相邻者信息和所述第二相邻者信息是否一致;以及将路由配置信息写入到所述第一网络设备,以将网络流量从所述第一网络设备移走。
进一步地,所述路由配置信息包括策略信息或成本信息。
附图简要说明
图1是用于将流量从网络中的一个或多个网络设备转移的方法的流程图。
图2示出具有被划分到不同区域中的多个路由器的路由器网络,其中流量被从路由器中的一个移走。
图3示出具有在数据中心之间通信的多组路由器的多个数据中心,其中流量被从所述多组路由器移走。
图4示出具有配置和网络拓扑存储装置的路由器架构的实施方案。
图5示出数据中心中的多个路由器的示例,其中路由器可以通过流量转移服务使流量转移。
图6示出根据一个实施方案的用于将流量从多个网络设备移走的详细流程图。
图7示出根据另一个实施方案的用于将流量从多个网络设备移走的流程图。
图8示出根据又一实施方案的用于将流量从多个网络设备移走的流程图。
图9描绘其中可以实现所描述的本创新的合适计算环境的通用示例。
具体实施方式
本文所描述的实施方案涉及将流量从一个或多个网络设备移走。在一些情况下,为了维护、更新、更换等目的,需要从网络移除一个或多个网络设备(例如,路由器、交换机、网桥、集线器等)。通常,修改网络设备的路由配置信息(例如,增加成本参数或者改变路由策略信息)使其看起来像是对其它网络设备无吸引力的替代方案。然而,单独调整路由配置信息而没有进一步检查可能导致严重的网络问题。例如,如果网络没有足够的资源来承受失去网络设备,则调整成本参数可能对整体网络功能不利。
因此,所述系统确保流量在转移发生之前可以从网络设备中安全移出。为了简单起见,将所述方法描述为分成若干阶段,诸如发现阶段、预检查阶段、转移阶段以及转移后阶段。可以添加其它阶段(诸如标识阶段),或者可以删除多个阶段(诸如转移后阶段或发现阶段)。替代地,本文所描述的阶段中的一些可以合并。在转移发生之前,使用发现阶段来获取网络拓扑和配置信息。在预检查阶段中,询问所述信息以确保可以在不对网络产生负面影响的情况下执行转移。如果预检查阶段已通过,则网络转移可以通过调整与用于将流量转移的任何设备上的接口相关联的路由配置信息来发生。最后,在转移后阶段中,执行检查以确保流量正从网络设备移走。
图1依次示出所述阶段中的每一个。图1的进程框可以由服务器计算机执行,诸如服务提供商环境(例如,云环境)内的服务器计算机。进程框110示出标识阶段,其中识别一个或多个网络设备。在单个网络设备的情况下,可以使用单一标识(诸如全局唯一标识符(GUID))或地址。在多个网络设备的情况下,可以使用多个标识符。可以将标识符以文本文件、API形式或者用其它方式传递到执行流量转移的服务。替代地,可以向服务发送识别两个或更多个端点的请求。例如,可以识别两个数据中心,并请求移除用于建立耦接在两个数据中心之间的链路的所有网络接口。在这种情况下,需要确定与这些数据中心相关联的网络设备。有多种技术可用于获取这类信息。例如,可以向服务提供列表(例如,电子文本文件),其中列表包括连接在两个端点之间的所有相关网络设备。替代地,服务可以从服务提供商请求与端点相关联的网络设备的列表。无论如何,在标识阶段结束时,可获取一个或多个网络设备的列表。
在进程框120中,执行发现阶段,其中获取一个或多个网络设备的本地拓扑信息和/或配置信息。例如,服务可以针对拓扑信息或配置信息查询每个识别的设备。替代地,服务还可以从服务提供商中的其它服务获取这类信息。拓扑信息可以包括相邻者网络设备的标识符、相邻路由器特性、正在使用的网络协议、通过分段接合的网络设备、边界路由器信息等。额外的拓扑信息可以包括每个设备上的活跃网络接口(例如正在使用的端口信道)、在这些端口信道上使用的网络协议等。配置信息可以包括与如何配置网络设备有关的任何存储参数。对于开放式最短路径优先(OSPF)协议,例如,配置参数可能与成本、重传间隔、传输延迟、认证等有关。成本参数允许其它网络设备判断网络路径的可行性。例如,路由器通常确定到目的地的多个候选路由。存储在路由器配置中的成本参数允许相邻者路由器确定哪条路由最优。在其它协议(诸如边界网关协议(BGP))中,路由配置可以包括权重参数、本地偏好参数、AS路径参数等。在发现阶段期间,可以将一些识别的设备从流量待转移的设备列表移除。例如,如果两个连接的设备之间的相邻者信息不一致,则可以将这些设备上的设备或接口中的一个或多个从列表移除。在一些情况下,可以完全绕过发现阶段,并且可以在网络设备被识别出之后发起预检查阶段。
在进程框130中,执行预检查以检测任何可能的错误状况。例如,可以使用在发现阶段期间获取的信息来检测错误状况。可以执行各种各样的预检查。例如,可以检查网络拓扑信息以确保它在各个设备之间是一致的。网络拓扑信息可以包括交叉检查网络接口以确定它们是否将另一个识别为相邻者。例如,如果路由器A上的网络接口1识别路由器B上的网络接口2,则确定检查以确保网络接口2还将网络接口1识别为相邻者。如果匹配,则预检查被认为是通过,而如果失败,则可以回滚流量转移,使其不发生。在这种情况下,可以将错误消息传输给用户,使得技术人员可以调查错误。在两个端点被识别出的情况下,通过将一个端点处的网络接口数量与另一个端点处的网络接口数量进行比较,可以执行进一步的网络拓扑检查。每个端点处的接口数量应该匹配。
另一个预检查是确保所有成本参数在正被转移的路由器之间是一致的。例如,OSPF协议具有被称为等价多路径(ECMP)的负载均衡选项,其中所有路由器都具有相等的成本参数。因此,可以对所有设备的成本参数进行交叉检查以确保它们相等,并且如果不相同,则可以生成错误状况。其它预检查包括检查可以识别不同的网络设备或不是从网络中取出的不同端点的黑名单。这种黑名单可以由用户或管理员提供,并且可供流量转移服务访问。在再一预检查中,可以检查网络的容量以确保如果网络设备或一组网络设备从网络移除,则网络仍然可以运行。例如,如果确定路由器对网络的可持续性至关重要,则可以终止流量转移。如此,可以发起错误状况,指示流量转移之后的剩余网络设备具有不足以维持当前网络流量的带宽。在再一预检查中,确定所有端口信道是否具有相同的大小(即,相同数量的接口)并且端口信道是否处于相同的操作状态。为了负载均衡的目的,需要网络设备以类似的方式操作以使流量从设备中的一些移出。并非所有的预检查都需要从网络设备本身获取信息。例如,可以在没有任何来自网络设备的信息从网络移除的情况下执行检查网络容量。因此,可以在没有发现阶段的情况下执行预检查中的一些。然而,发现阶段确实提供了更稳健的选项列表。
在进程框140中,假设所有的预检查都已通过,则可以执行网络流量的转移。例如,网络流量可以从在数据中心之间耦接的链路移走。从发现阶段和预检查阶段开始,可以使用网络设备、网络接口或链路的最终列表将网络流量转移。为了转移网络流量,网络设备或一组网络设备可以使其路由配置改变(诸如在网络接口的基础上)以确保高成本参数(例如,最大值)与网络设备相关联或者策略被改变。在任一种情况下,网络接口对相邻者而言似乎是不需要的路由数据包的选项。在一个示例中,服务器计算机可以生成并行进程,一个并行进程给每个网络设备,使得所有网络设备可以并行(基本上同时)写入以用于修改配置信息。例如,如果在一个端点处有20个路由器,则服务器计算机可以并行地发起20个并行执行的进程,用于将成本配置信息并行地并且基本上同时写入到路由器。在其中移除单个网络设备的另一个示例中,该网络设备上的所有接口可以具有改变的路由配置信息(例如,成本或策略参数)。继续该示例,通过将配置信息同时写入到20个路由器,在其配置信息发生改变之前,网络流量不会开始转移到其它20个路由器中的任何一个。一旦成本参数或策略参数被写入,就可以通过读取从设备中退出的成本参数或策略参数并交叉检查读回的期望值来对其进行检查。如果成本参数或策略参数中的任何一个与写入的值不相等,则可以产生警告管理员或用户的错误状况。在一些情况下,如果有两个端点,则可以依次写入每个端点,使得第一端点在第二端点之前被重新配置。
在进程框150中,可以执行后检查以确认网络流量已经从一个或多个网络设备转移。流量不需要马上归零。相反,随着新的成本参数传播到相邻者设备,可以逐渐转移流量。后检查可以包括以多个预定时间间隔进行检查,以确保一定量的流量达到所需降低阈值。在一个示例中,可以每30秒进行检查,直到流量已经低于阈值水平,诸如零或接近零。在另一个示例中,可以检查协议状态信息以确保路由配置信息已经被更新。例如,可以检查成本参数以确保读回内容与写入内容匹配。
尽管使用OSPF路由协议来描述上述实施方案,但是也可以使用其它路由协议。例如,可以使用任何内部网关协议(IGP)或外部网关协议(例如,BGP)。其它示例性协议包括OSPF、路由信息协议(RIP)、中间系统到中间系统(IS-IS)、标签分发协议(LDP)以及资源预留协议(RSVP)。网络设备最通常包括路由器。如本文所描述的路由器包括通信地互连网络上的其它设备(例如,其它网络元件、终端站)的硬件和软件。一些路由器对多个联网功能(例如路由、桥接、交换、二层汇聚、会话边界控制等)提供支持,和/或对多个应用服务(例如数据、语音和视频)提供支持。路由器通常包括控制平面和数据平面(有时称为转发平面)。控制平面确定数据(例如,数据包)如何路由(例如,数据的下一跳和该数据的输出端口),并且数据平面转发数据。控制平面可以包括一个或多个路由协议,所述一个或多个路由协议与其它路由器通信以交换路由并且基于一个或多个路由度量选择那些路由。
实现OSPF的路由器运行链路状态路由协议,所述协议维护描述其所驻留的自治系统(AS)的拓扑结构的相同链路状态数据库(LSDB)。LSDB中的每条记录都列出特定网络单元的可用接口和可达相邻者、邻接关系或在区域或AS外部的路由。相邻路由器是具有到公共网络的接口的两个路由器,其中接口是路由器与它所连接的网络之一之间的连接。此外,邻接关系是为了交换路由信息和提取网络拓扑的目的而在所选择的相邻路由器之间形成的关系。一个或多个路由器邻接可以通过接口建立。通过使用“Hello”协议而在OSPF中建立并维护邻接。Hello协议通过定期将Hello数据包从所有网络单元接口发送出去来确保相邻者之间的通信是双向的。当路由器发现自己被列在相邻者的Hello数据包中时,指示双向通信。
图2示出其中通过流量转移将单个网络设备(在这种情况下是路由器)从网络移除(为了路由流量的目的)的示例。在此示例中,以210示出的数据中心A包括以212示出的多个路由器。值得关注的特定路由器是路由器214,其用虚线示出以指示它将从网络移除。以220示出的数据中心B也包括多个路由器,所述多个路由器包括通过链路226耦接到路由器214的路由器222。所述链路可以包括物理电缆(例如,光纤)以及建立通信信道所需的任何支持软件。在这种情况下,路由器214的移除将路由器214内的所有接口从网络移除,包括支持链路226的网络接口。流量转移服务230接收要求将路由器214从网络移除的应用程序编程接口(API)请求240。在此示例中,一旦路由器214被移除,网络流量仍然可以在以250示出的其它链路上自由流动,从而将数据中心210、220耦接在一起。然而,可以进行检查以确定一旦路由器214被移除,链路250是否具有足够的带宽来处理网络流量。
为了移除,可以将路由器214识别为在API请求240中使用路由器的标识符(例如,地址)移除的路由器。然后,可以诸如通过可以执行流量转移的主机服务器计算机230来针对网络拓扑信息查询路由器214。示出具有打开并且耦接到路由器222的接口的路由器214。可以交叉检查此信息以确保路由器222具有指示其耦接到路由器214的网络拓扑信息。可以执行其它预检查,如以上已经描述的,例如所有路由器具有相似的成本参数、具有相似数量的接口等。
一旦预检查已通过,主机服务器计算机230就可以将诸如成本参数(例如,最大允许成本参数)或策略参数等新路由配置信息写入到路由器214。然后,其它路由器将停止使用路由器214,并且路由器214可以从网络安全移除。
图3示出其中流量转移应用于两个端点,诸如在两个数据中心310、312之间的示例。每个数据中心可以包括一组一个或多个路由器。例如,第一组路由器以320示出,而第二组路由器以330示出,其中链路332将两者耦接在一起。链路332可以包括专用电缆或光纤并且用虚线示出以指示流量将从这些链路移走。路由器320被示出为具有用来建立将数据中心310耦接到其它数据中心的链路334的其它接口。可以向流量转移服务350发送其中识别出两个端点的API请求340。识别可以是数字、城市或任何其它所需的标识。在发现阶段之前,流量转移服务350可以使用端点向路由器标识服务360发送在端点处传输路由器列表的API请求。替代地,可以用其它方式将路由器列表传递给流量转移服务,例如直接从用户接收列表。列表可以包括用于服务的地址或其它标识符。如以上所描述,流量转移服务350可以与数据中心310、320通信以获取关于列表中的路由器的路由器拓扑或配置信息。在发现阶段期间,流量转移服务350可以识别路由器320上用来建立链路332的特定接口。因此,在发现阶段期间,流量转移服务350检查相邻者信息和网络接口以确保两者在端点之间是一致的。例如,端点310处的路由器370应该具有被识别为耦接到路由器372的网络接口。同样地,路由器372应该具有被识别为耦接到路由器370的网络接口。这种交叉检查网络拓扑信息的一致性有助于确保流量在发生转移之前将被安全转移。一旦这种预检查(其包括图1中讨论的任何预检查)完成后,流量转移可以由流量转移服务350通过在并行处理中将路由配置信息(例如,成本参数、策略参数等)写入到路由器320来发生,使得路由器320基本上同时被写入。应该对路由配置信息进行修改,使得相邻者路由器将要选择替代路径。例如,成本参数应该足够高,使得相邻者路由器将选择替代路径。一旦路由配置信息写入到数据中心A中的路由器,流量转移服务350就并行地将路由配置信息写入到数据中心B中的路由器,使得它们基本上同时被写入。然后,后检查可以由流量转移服务350执行以确保流量被转移。路由器(诸如路由器320)可以使仅支持链路332的接口移除,而其它接口(诸如支持链路334的接口)保持操作。
图4示出路由器架构的更多细节。路由器400包括控制器(诸如控制器卡410)、路由器背板420以及一个或多个接口(诸如接口卡430)。CPU 440位于控制器卡410上并且通常执行诸如路由器表维护、路径计算以及可达性传播等功能。接口卡430包括用于执行入站和出站数据包转发的适配器。路由器背板420负责在控制器卡与接口卡之间传送数据包。路由器400的基本功能可以包括路由处理和数据包转发。路由表450允许路由器创建网络拓扑的视图,所述网络拓扑描述网络中的路由器关系等。例如,路由器400耦接到其它路由器的网络,诸如以460、462示出(通常包括许多其它路由器,但为了简单起见,未示出)。
数据包转发通常包括IP数据包验证,其中路由器在处理数据包之前检查数据包是否正确形成。然后,路由器可以执行表查找以确定数据包引导到其上的输出端口以及数据包发送到其的下一个目的地。路由器还可以调整生存时间参数以防止太旧的数据包流通。最后,路由器可以执行IP标头校验和。
路由器表450中的路由器表查找通常由CPU 440使用数据包的IP目的地址作为密钥来执行。查表返回最匹配的路由表条目,所述路由表条目对数据包的下一跳提供接口和IP地址。下一跳地址可以高速缓存在前端路由表(未示出)中,所述前端路由表可以组织为散列表。
控制器卡410还可以包括用于路由器配置和网络拓扑470的存储装置(例如,存储器、硬盘驱动器等)。路由器配置独立于路由表450并且不识别采取通过路由器网络的最佳路由。因此,路由器配置独立于路由拓扑信息。相反,路由器配置可能与接口设置或路由器的其它特性或性能(也称为环境参数)有关。示例配置设置包括速度(例如,每秒10兆比特、每秒100兆比特、自动模式等)、最大传输单位(MTU)(最大数据包大小)、传输模式(例如,全双工、半双工等)、封装类型、接口类型、负载间隔(用来计算接口的平均负载的时间长度)、重定向消息设置(在强制重新发送数据包的情况下)、设置相邻者、邻接关系、路由协议的配置等。值得关注的特定配置是成本参数472。成本参数可以是例如随后与相邻者路由器共享的OSPF成本,以指示路由器400的容量。另一个配置可以是策略信息,诸如以473示出的。策略信息可以包括一个或多个参数,诸如影响相邻者设备如何路由流量的基于路由的策略信息。示例策略参数可以与外部BGP对等体或对等组相关联。修改这类基于BGP的参数可能影响路由决策。
存储在存储装置470中的路由器拓扑信息以474示出并可以被单独接收,并且可以包括关于路由器400是其一部分的路由器网络环境的信息。网络拓扑信息可以包括同一区域中的其它路由器的标识符、当前通过分段(邻接)接合的路由器、汇总所连接到的区域的边界路由器、路由器接口信息等。在一些协议(诸如OSPF协议)中,网络拓扑信息可以是链路状态数据库(LSDB)。在示例性实施方案中,网络拓扑信息474还可以包括相邻路由器特性和网络协议信息。相邻路由器特性可以提供关于通信地耦接到路由器400的一个或多个路由器的信息,诸如硬件特性、路由器的类型、用于传出或传入通信的端口等等。网络协议信息可以指示由路由器400和/或通信地耦接到路由器400的任何其它路由器使用的网络通信协议(或网络流量的类型,诸如级别2、级别3等)。
如先前所描述,流量转移服务480可以读取拓扑信息474和存储在存储装置470中的任何配置信息。服务480还可以修改成本参数472或策略信息473,使得其它路由器(例如路由器460、462)将流量重定向通过其它路径。
图5示出路由器的网络可以在其中使用的环境500。在此示例中,环境500包括多个数据中心,所述多个数据中心包括通过路由器(总体以520示出)耦接在一起的数据中心510。可以使用不同级别的路由器。例如,核心路由器530可以耦接到服务提供商环境内的其它数据中心中的其它核心路由器。路由器530读取所接收数据包中的地址信息并确定数据包的目的地。如果路由器决定不同的数据中心包括主机服务器计算机,则将数据包转发到该数据中心。如果数据包被寻址到数据中心510中的主机,则将它传递给将数据包的公用IP地址转换成专用IP地址的网络地址转换器(NAT)(未示出)。NAT还将专用地址转换成绑定在数据中心510外部的公用地址。额外的聚合路由器540可以耦接到NAT以将数据包路由到主机服务器计算机550的一个或多个机架。每个机架550可以包括耦接到多个主机服务器计算机的架顶式(TOR)开关560。尽管示出一个核心路由器530和两个聚合路由器540,但是在真实数据中心中可以有更多的路由器,并且可以如本文所描述地将路由器分组到区域中。流量转移服务570可以耦接到数据中心510以便与数据中心内的任何路由器或交换机通信。因此,路由器或交换机中的任何一个可以耦接到其它数据中心,并且可以使用流量转移服务570使流量转移。
图6是用于将其中设置有至少两个端点的网络设备中的流量转移的方法的流程图。在进程框610中,接收第一端点和第二端点的标识信息。端点可以是数据中心或单独的网络设备。然而,通过设置两个端点,至少有两个网络设备在每个端点处具有一个网络设备。请求可以是对流量转移服务的API请求。在进程框620中,可以检索与第一端点和第二端点相关联的目标路由器(或其它网络设备)的列表。所述列表可以由维持这种列表的服务提供商的服务提供。替代地,列表可以提供有流量转移服务的原始请求。有多种技术可以供流量转移服务使用,以便获取第一端点处和第二端点处的路由器的地址信息,并且可以使用任何这种技术。
在进程框630中,对目标路由器发起发现阶段。发现阶段可以包括针对配置信息和网络拓扑信息查询识别的路由器的目标转移服务。示例性信息可以包括成本参数、策略参数、所使用的协议、相邻者信息、接口信息等。例如,为了传输网络流量的目的,可以使用接口信息来确定将端点连接在一起的链路。因此,在发现阶段期间,目标转移服务可以询问路由器以从路由器检索存储的状态和数据信息。在进程框640中,基于发现阶段,目标转移服务可以过滤目标路由器列表中的一些以减少列表。例如,可以将未通过预定检查的目标路由器中的任何一个从将发生流量转移的一组路由器移除。在进程框650中,可以使用发现信息来执行预检查。示例性预检查可以包括检查端点之间的网络跨度是否在黑名单上,使得网络跨度不可移动。网络跨度是网络设备上的接口之间的至少一个专用路径(例如,光纤电缆)。跨度可以在数据中心之间或数据中心内。在一个示例中,可以根据存储的列表检查两个端点,并且如果端点与列表上的跨度匹配,则可以发起错误状况。其它预检查包括网络容量检查,其中目标转移服务检查网络是否可以在没有网络跨度的情况下维持其当前带宽。更进一步地,可以检查基于网络接口的信息。例如,目标转移服务可以交叉检查相邻者网络接口以确保它们一致(不冲突)。又进一步地,目标转移服务可以针对这些末端之间的跨度检查在第一端和第二端的每一个上的多个接口的数量是否相等。进一步的检查可以基于当前配置参数,诸如确定成本参数是否相等。
在预检查之后,获取发生流量转移的路由器的最终列表。在进程框660中,发生流量转移。如以670所指示的,并行写入可以用于将成本配置信息大致同时地写入到每个网络设备。替代地,写入可以按其它期望的顺序发生,诸如串联、或者一些并联设备和一些串联的组合。设备的并行写入确保整个网络跨度在相似的时间段内变慢。在进程框680中,执行后检查,其中流量转移服务可以查询网络设备以确保流量的确正在减慢。可以将流量与预定级别进行比较,并且如果流量仍然持续,则可以传输错误消息。否则,网络设备可以从网络安全移除。
图7是根据另一个实施方案的用于流量转移的流程图。在进程框710中,可以接收用于将网络设备从网络移除的标识信息。如以上所描述,网络设备可以是路由器、交换机、网桥、集线器等。标识信息可以是地址或标识符,诸如GUID。标识信息可以接收在可以在一个或多个服务器计算机上执行的流量转移服务中。在进程框720中,执行发现阶段,其中针对配置信息和网络拓扑信息查询识别的网络设备。配置信息和网络拓扑信息通常是存储的关于每个网络设备的信息。然而,配置信息和网络拓扑信息还可以通过查询其它服务来确定。在进程框730中,确定配置信息和网络拓扑信息是否一致。因此,检查相邻者设备是否具有与在被移除的网络设备上获取的信息相同(或不冲突)的信息。在一个示例中,成本参数应该在所有设备之间是相同的,如果成本不相同,则存在错误状况。在另一个示例中,交叉检查网络拓扑信息以查看每个设备是否将对应的设备引用为相邻者,区别于一个设备将设备识别为相邻者,而相邻者设备则不这样。在进程框740中,可以确定是否有足够的网络容量以用于将设备从网络移除。这种确定可以包括对网络设备的相邻者的容量检查。在进程框750中,网络流量从网络设备转移。这种转移通过增加关于设备中的每个接口的成本参数来发生。其它技术也可以用于转移网络流量,诸如改变影响路由决策的策略信息中的任何一个。网络流量的转移可以针对整个网络设备(所有接口),使得网络设备可以从网络物理地移除。
图8示出根据另一个实施方案的用于将网络流量转移的方法的流程图。在进程框810中,接收网络设备的以使流量从网络设备移走的标识信息。标识信息可以各种形式形成,诸如GUID或地址。在进程框820中,可以进行一个或多个预检查。可以基于从网络设备本身获取的信息来进行这类预检查,或者可以基于独立于存储在网络设备上的信息而获取的信息来进行预检查。因此,预检查不需要发现阶段。通常选择预检查以确保网络设备可以从网络安全移除。在一个示例中,预检查可以包括确定网络流量可以通过网络上的其它网络设备来路由,并且一旦网络设备被移除,这类网络设备具有足够的容量以用于处理网络流量的增加。其它预检查可以包括检查网络设备是否在设备的不应被移除的黑名单上。更进一步地,如果执行发现阶段,则可以根据相邻者设备来检查配置参数(诸如成本参数),以确保配置参数在设备之间是一致的。如果在预检查阶段发生任何错误,则可能产生错误状况并终止网络流量的转移。在进程框830中,可以将网络设备配置成使得路由配置参数被修改以使将数据包路由到网络设备不合需要。在一个示例中,修改成本参数并将成本参数传播到相邻者设备,其结果是流量从成本高的网络设备移走。在其它示例中,可以修改策略信息以使路由到网络设备不是则合乎需要。策略信息的示例可以包括权重参数、本地偏好参数、AS路径参数等。路由配置信息的修改可以基于每个接口,并且可以用相同的方式修改所有接口,以减少网络设备上的流量。除此之外,还可以执行后检查以确保流量已经下降到低于阈值。
图9描绘其中可以实现所描述的本创新的合适计算环境900的通用示例。计算环境900并非旨在对使用范围或功能提出任何限制,因为本创新可以在不同的通用计算系统或专用计算系统中实现。例如,计算环境900可以是各种计算设备中的任何一种,并且可以用作流量转移服务。
参考图9,计算环境900包括一个或多个处理单元910、915和存储器920、925。在图9中,此基本配置930被包括在虚线内。处理单元910、915执行计算机可执行指令。处理单元可以是通用中央处理单元(CPU)、专用集成电路(ASIC)中的处理器或任何其它类型的处理器。在多处理系统中,多个处理单元执行计算机可执行指令以提高处理能力。例如,图9示出中央处理单元910以及图形处理单元或协处理单元915。有形存储器920、925可以是可由处理单元访问的易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPROM、闪速存储器等)或两者的一些组合。存储器920、925以适合于由处理单元执行的计算机可执行指令的形式存储实现本文所描述的一个或多个创新的软件980。
计算系统可以具有额外的特征。例如,计算环境900包括存储装置940、一个或多个输入设备950、一个或多个输出设备960以及一个或多个通信连接970。诸如总线、控制器或网络等互连机制(未示出)互连计算环境900的部件。通常,操作系统软件(未示出)对在计算环境900中执行的其它软件提供操作环境,并且协调计算环境900的部件的活动。
有形存储装置940可以是可移除的或不可移除的,并且包括磁盘、磁带或磁带盒、CD-ROM、DVD或可以用来以非暂时性方式存储信息并且可以在计算环境900内访问的任何其它介质。存储装置940存储用于实现本文所描述的一个或多个创新的软件980的指令。
输入设备950可以是触摸输入设备(诸如键盘、鼠标、笔或轨迹球)、语音输入设备、扫描设备或向计算环境900提供输入的另一个设备。输出设备960可以是显示器、打印机、扬声器、CD刻录机或从计算环境900提供输出的另一个设备。
通信连接970使得能够通过通信介质与另一个计算实体进行通信。通信介质传达信息(诸如计算机可执行指令、音频或视频输入或输出等)或调制数据信号中的其它数据。调制的数据信号是具有以对信号中的信息进行编码的方式设置或改变其特性中的一个或多个的信号。作为示例而非限制,通信介质可以使用电、光、RF或其它载体。
本公开的实施方案可以根据以下条款进行描述:
1.一种将流量从网络上的网络设备移走的方法,所述方法包括:
接收所述网络设备的标识信息;
执行发现阶段,其中针对配置信息和网络拓扑信息查询所述网络设备;
确定所述网络拓扑信息和所述配置信息在所述网络设备与相邻者网络设备之间是否一致;
确定所述网络是否具有足够的容量以用于在不使用所述网络设备的情况下路由流量;
通过改变存储在所述网络设备上的路由配置信息将网络流量从所述网络设备移走;以及
在经过一段时间之后,检查所述网络设备上的所述网络流量已经降低到预定阈值以下。
2.根据条款1所述的方法,其中所述网络拓扑信息包括连接到所述查询的网络设备的相邻者网络设备的标识。
3.根据条款2所述的方法,其中确定所述网络拓扑信息是否一致包括检查关于所述相邻者网络设备的网络拓扑信息与关于所述查询的网络设备的网络拓扑信息不冲突。
4.根据前述条款中任一项所述的方法,其中所述改变所述路由配置信息包括改变与所述网络设备上的每个接口相关联的成本参数或者改变所述网络设备上与外部边界网关协议(BGP)对等体或对等组相关联的路由策略信息。
5.根据前述条款中任一项所述的方法,其中所述确定所述网络是否具有足够的容量包括确定当前网络流量并确定所述网络中的替代网络设备和相关链路是否具有足够的带宽以用于处理所述当前网络流量。
6.一种包括指令的计算机可读存储介质,所述指令在执行时使计算机系统:
接收网络流量将从其移走的网络设备的标识信息,所述网络设备在网络中;
执行预检查,其中确定所述网络设备是否可以从所述网络移除;以及
通过修改存储在所述网络设备中的路由配置信息来配置所述网络设备,以将流量从所述网络设备移走。
7.根据条款6所述的计算机可读存储介质,其中所述执行所述预检查包括:
确定所述网络设备的网络拓扑信息;以及
确定所述网络拓扑信息和所述配置信息在所述网络设备与相邻者网络设备之间是一致的。
8.根据条款7所述的计算机可读存储介质,其中所述确定所述物流信息是一致的包括检查所述网络设备识别所述相邻者网络设备以及所述相邻者网络设备识别所述网络设备。
9.根据条款6或7所述的计算机可读存储介质,其中所述执行所述预检查包括:
确定一旦所述网络流量从所述网络设备移走,网络容量是足够的。
10.根据条款6-9中任一项所述的计算机可读存储介质,其中所述执行所述预检查包括:
确定所述网络设备上的接口,所述接口用于连接到相邻者网络设备并包括在路由协议中。
11.根据条款6-10中任一项所述的计算机可读存储介质,其中所述修改所述路由配置信息包括修改所述网络设备上的路由策略或者增加所述网络设备上的成本参数。
12.根据条款6-11中任一项所述的计算机可读存储介质,其中所述指令在执行时还使所述计算机系统:
在配置之后并且在预定时间段之后,检查所述网络设备上的网络流量是否已经下降到阈值水平以下。
13.根据条款6-12中任一项所述的计算机可读存储介质,其还包括指令,所述指令还使所述计算机系统:
针对当前成本设置查询所述网络设备,并且确定关于相邻者设备的成本设置是否等于所述当前成本设置。
14.根据条款6-13中任一项所述的计算机可读存储介质,其中接收所述标识信息包括接收所述网络设备的地址。
15.根据条款6-14中任一项所述的计算机可读存储介质,其还包括指令,所述指令在执行时使所述计算机系统:
执行发现阶段,其中从所述网络设备获取配置信息。
16.根据条款6-15中任一项所述的计算机可读存储介质,其中所述修改所述路由配置信息包括改变所述网络设备上与外部边界网关协议(BGP)对等体或对等组相关联的路由策略信息。
17.根据条款6-16中任一项所述的计算机可读存储介质,其中所述指令在执行时还使所述计算机系统:
在配置之后并且在预定时间段之后,检查协议状态信息以确保所述路由配置信息已经被更新。
18.一种系统,其包括:
数据中心内的第一网络设备;
一组网络设备,其中所述第一网络设备和所述一组网络设备在其间具有用于在网络中建立网络连接的通信路径;
服务器计算机,所述服务器计算机执行以下项:
针对第一相邻者信息查询所述第一网络设备;
针对第二相邻者信息查询所述一组网络设备;
检查所述第一相邻者信息和所述第二相邻者信息是否一致;以及
将路由配置信息写入到所述第一网络设备,以将网络流量从所述第一网络设备移走。
19.根据条款18所述的系统,其中所述路由配置信息包括策略信息或成本信息。
20.根据条款18或19所述的系统,其中所述服务器计算机还可操作以:
如果所述第一网络设备从所述网络移除,则确定网络容量是否足够以维持网络流量。
21.根据条款18-20中任一项所述的系统,其中所述服务器计算机还可操作以执行对所述第一网络设备和所述一组网络设备的当前成本参数的查询,以确保所述成本参数在所述第一网络设备与所述一组网络设备之间匹配。
22.根据条款18-21中任一项所述的系统,其中所述第一网络设备是路由器,并且其中所述服务器计算机还可操作以执行以下项:
在将路由配置信息写入之后并且在预定时间段之后,检查所述网络设备上的网络流量以确保所述网络流量已经下降到阈值水平以下。
23.根据条款18-22中任一项所述的系统,其中所述一组网络设备在所述数据中心或其它数据中心内。
尽管为了便于表达而以特定的先后顺序描述了所公开的方法中的一些的操作,但是应理解,这种描述方式涵盖重新排列,除非下面所阐述的特定语言要求特定顺序。例如,按顺序描述的操作在一些情况下可以重新排列或同时执行。此外,为了简单起见,附图可能未示出所公开的方法可以与其它方法结合使用的各种方式。
所公开的方法中的任何一个可以实现为计算机可执行指令,所述计算机可执行指令存储在一个或多个计算机可读存储介质(例如,一个或多个光学介质盘、易失性存储器部件(诸如DRAM或SRAM)或非易失性存储器部件(诸如快闪存储器或硬盘驱动器))并且在计算机(例如,任何市售计算机,包括智能手机或包括计算硬件的其它移动设备)上执行。术语计算机可读存储介质不包括通信连接,诸如信号和载波。用于实现所公开的技术的计算机可执行指令中的任何一个以及在实现所公开的实施方案期间创建和使用的任何数据可以存储在一个或多个计算机可读存储介质上。计算机可执行指令可以是例如通过web浏览器或其它软件应用程序(诸如远程计算应用程序)访问或下载的专用软件应用程序或软件应用程序的一部分。这种软件可以在例如单个本地计算机(例如,任何合适的市售计算机)上或者在网络环境(例如,通过互联网、广域网、局域网、客户端-服务器网络(诸如云计算网络)或其它这种网络)中使用一个或多个网络计算机来执行。
为了清楚起见,仅描述了基于软件的实现方式的某些选定方面。省略了本领域众所周知的其它细节。例如,应理解,所公开的技术不限于任何特定的计算机语言或程序。例如,所公开的技术可以通过用C++、Java、Perl、JavaScript、Adobe Flash或任何其它合适的编程语言编写的软件来实现。同样地,所公开的技术不限于任何特定的计算机或硬件类型。合适的计算机和硬件的某些细节是众所周知的,并且不需要在本公开中详细阐述。
还应理解,本文所描述的任何功能可以至少部分地由一个或多个硬件逻辑部件,而不是软件来执行。例如但不限于,可以使用的说明性类型的硬件逻辑部件包括现场可编程门阵列(FPGA)、程序专用集成电路(ASIC)、程序专用标准产品(ASSP)、芯片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。
此外,可以通过合适的通信手段来上载、下载或远程访问任何基于软件的实施方案(包括例如用于使计算机执行所公开的方法中的任何一个的计算机可执行指令)。这类合适的通信手段包括例如互联网、万维网、内联网、软件应用程序、电缆(包括光缆)、磁通信、电磁通信(包括RF、微波和红外通信)、电子通信或其它这类通信手段。
更进一步地,被描述为“耦接”在一起的部件包括直接连接或间接连接的部件,诸如当其间插入有一个或多个中间部件时。
所公开的方法、装置和系统不应被解释为以任何方式进行限制。相反,本公开针对单独和彼此以各种组合及子组合的各种公开实施方案的所有新颖和非显而易见的特征和方面。所公开的方法、装置和系统不限于任何特定方面或特征或其组合,所公开的实施方案也不要求存在任何一个或多个特定优点或解决问题。
鉴于所公开的发明的原理可以适用的许多可能的实施方案,应认识到,所示出的实施方案仅是本发明的优选示例,并且不应被视为限制本发明的范围。相反,本发明的范围由所附权利要求书限定。因此,我们要求所有在这些权利要求范围内的都作为我们的发明。

Claims (14)

1.一种流量转移方法,将流量从网络上的网络设备移走,所述方法包括:
接收所述网络设备的标识信息;
执行发现阶段,其中针对配置信息和网络拓扑信息查询所述网络设备;
通过根据相邻者网络设备上的所述配置信息检查所述网络设备上的所述配置信息来确定所述网络拓扑信息和所述配置信息在所述网络设备与所述相邻者网络设备之间是否一致,包括交叉检查网络接口以确定所述网络设备与所述相邻者网络设备是否将彼此识别为相邻者,其中,如果所述网络拓扑信息和所述配置信息不一致,则将所述网络设备从待转移的可用设备移除;
确定所述网络是否具有足够的容量以用于在不使用所述网络设备的情况下路由流量;
通过改变存储在所述网络设备上的所述配置信息将网络流量从所述网络设备移走;以及
在从所述转移开始经过一段时间之后,检查所述网络设备上的所述网络流量已经降低到预定阈值以下。
2.根据权利要求1所述的流量转移方法,其中所述确定所述网络是否具有足够的容量包括确定当前网络流量并确定所述网络中的替代网络设备和相关链路是否具有足够的带宽以用于处理所述当前网络流量。
3.一种计算机可读存储介质,包括指令,所述指令在执行时使计算机系统:
接收网络流量将从其移走的网络设备的标识信息,所述网络设备在网络中;
执行预检查,其中确定所述网络设备是否可以从所述网络移除;以及
通过修改存储在所述网络设备中的配置信息来配置所述网络设备,以将流量从所述网络设备移走;
其中所述执行所述预检查包括:
确定所述网络设备的网络拓扑信息;以及
通过根据相邻者网络设备上的所述配置信息检查所述网络设备上的配置信息来确定网络拓扑信息和配置信息在所述网络设备与所述相邻者网络设备之间是否一致,包括交叉检查网络接口以确定所述网络设备与所述相邻者网络设备是否将彼此识别为相邻者,其中,如果所述网络拓扑信息和所述配置信息不一致,则将所述网络设备从待转移的可用设备移除。
4.根据权利要求3所述的计算机可读存储介质,其中所述确定网络信息是一致的包括检查所述网络设备识别所述相邻者网络设备以及所述相邻者网络设备识别所述网络设备。
5.根据权利要求3或4所述的计算机可读存储介质,其中所述执行所述预检查包括:
确定一旦所述网络流量从所述网络设备移走,网络容量是足够的。
6.根据权利要求3或4所述的计算机可读存储介质,其中所述执行所述预检查包括:
确定所述网络设备上的接口,所述接口用于连接到相邻者网络设备并包括在路由协议中。
7.根据权利要求3或4所述的计算机可读存储介质,其中所述修改所述配置信息包括修改所述网络设备上的路由策略或者增加所述网络设备上的成本参数。
8.根据权利要求3或4所述的计算机可读存储介质,其中所述指令在执行时还使所述计算机系统:
在配置之后并且在预定时间段之后,检查所述网络设备上的网络流量是否已经下降到阈值水平以下。
9.根据权利要求3或4所述的计算机可读存储介质,其还包括指令,所述指令还使所述计算机系统:
针对当前成本设置查询所述网络设备,并且确定关于相邻者设备的成本设置是否等于所述当前成本设置。
10.根据权利要求3或4所述的计算机可读存储介质,其还包括指令,所述指令在执行时使所述计算机系统:
执行发现阶段,其中从所述网络设备获取配置信息。
11.根据权利要求3或4所述的计算机可读存储介质,其中所述修改所述配置信息包括改变所述网络设备上与外部边界网关协议(BGP)对等体或对等组相关联的路由策略信息。
12.根据权利要求3或4所述的计算机可读存储介质,其中所述指令在执行时还使所述计算机系统:
在所述配置之后并且在预定时间段之后,检查协议状态信息以确保所述配置信息已经被更新。
13.一种流量转移系统,其包括:
数据中心内的第一网络设备;
一组网络设备,其中所述第一网络设备和所述一组网络设备在其间具有用于在网络中建立网络连接的通信路径;
服务器计算机,所述服务器计算机执行以下项:
针对第一相邻者信息查询所述第一网络设备;
针对第二相邻者信息查询所述一组网络设备;
通过根据所述一组网络设备上的所述第二相邻者信息检查所述第一网络设备上的所述第一相邻者信息来检查所述第一相邻者信息和所述第二相邻者信息是否一致,包括交叉检查网络接口以确定所述第一网络设备与所述一组网络设备是否将彼此识别为相邻者;以及
将配置信息写入到所述第一网络设备,以将网络流量从所述第一网络设备移走,其中,如果所述第一相邻者信息和所述第二相邻者信息不一致,则将所述第一网络设备从待转移的可用设备移除。
14.根据权利要求13所述的流量转移系统,其中所述配置信息包括策略信息或成本信息。
CN201680076010.0A 2015-12-22 2016-12-19 流量转移方法和系统以及计算机可读存储介质 Active CN108432192B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/979,356 2015-12-22
US14/979,356 US10164836B2 (en) 2015-12-22 2015-12-22 Shifting network traffic from a network device
PCT/US2016/067591 WO2017112600A1 (en) 2015-12-22 2016-12-19 Shifting network traffic from a network device

Publications (2)

Publication Number Publication Date
CN108432192A CN108432192A (zh) 2018-08-21
CN108432192B true CN108432192B (zh) 2021-03-19

Family

ID=57755487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680076010.0A Active CN108432192B (zh) 2015-12-22 2016-12-19 流量转移方法和系统以及计算机可读存储介质

Country Status (5)

Country Link
US (2) US10164836B2 (zh)
EP (1) EP3395020B1 (zh)
JP (1) JP6862451B2 (zh)
CN (1) CN108432192B (zh)
WO (1) WO2017112600A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10498606B1 (en) * 2016-06-07 2019-12-03 Cisco Technology Inc. Methods and systems for neighbor-acknowledged graceful insertion/removal protocol
CN106301962B (zh) * 2016-10-20 2019-09-10 北京小米移动软件有限公司 路由器信息修改方法及装置
US11102285B2 (en) * 2017-01-05 2021-08-24 Bank Of America Corporation Network routing tool
US20190036814A1 (en) * 2017-07-31 2019-01-31 Cisco Technology, Inc. Traffic steering with path ordering
US20190036842A1 (en) * 2017-07-31 2019-01-31 Cisco Technology, Inc. Traffic steering in fastpath
US10932130B2 (en) * 2018-05-31 2021-02-23 Roku, Inc. System and method for configuring an extender device
US11395371B2 (en) 2018-05-31 2022-07-19 Roku, Inc. Real-time assessment of multimedia service in a particular environment
US10944633B2 (en) 2018-06-15 2021-03-09 Vmware, Inc. Methods and apparatus to configure virtual and physical networks for hosts in a physical rack
JP7231867B2 (ja) * 2019-07-01 2023-03-02 日本電信電話株式会社 交換管理装置、交換管理方法及びプログラム
WO2021121574A1 (en) * 2019-12-18 2021-06-24 Huawei Technologies Co., Ltd. Executing security negotiation for network configuration
CN111614557B (zh) 2020-04-02 2021-09-24 深圳创维-Rgb电子有限公司 Mesh网络的数据传输方法、装置、网关及存储介质
CN116112417A (zh) * 2021-11-11 2023-05-12 华为技术有限公司 一种数据处理的方法及相关装置
CN116781159B (zh) * 2023-06-25 2024-04-26 江西省通信产业服务有限公司上饶分公司 智慧机房光纤业务确认方法、系统以及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7277393B1 (en) * 2002-03-13 2007-10-02 Packet Design, Inc. System and method for identifying cost metrics for a network
CN103354989A (zh) * 2010-08-12 2013-10-16 思杰系统有限公司 用于中间装置中的多级服务质量分类的系统和方法
CN103927266A (zh) * 2013-01-15 2014-07-16 想象力科技有限公司 预取流量的改进控制
CN104704781A (zh) * 2012-09-25 2015-06-10 谷歌公司 网络设备
CN105007225A (zh) * 2015-07-31 2015-10-28 东北大学 一种网络动态拓扑控制系统及方法

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140211604A1 (en) 2013-01-31 2014-07-31 Rockstar Consortium Us Lp Method and Apparatus for the Fast Detection of Connectivity Loss Between Devices in a Network
US6957251B2 (en) * 2001-05-07 2005-10-18 Genworth Financial, Inc. System and method for providing network services using redundant resources
JP2003218917A (ja) * 2002-01-28 2003-07-31 Nec Commun Syst Ltd Ospfコストを用いたトラフィック分散方式及びトラフィック分散方法
US7334047B1 (en) * 2002-03-18 2008-02-19 Cisco Technology, Inc. Method and system for selective link state advertisement blocking over a data network area
US7792991B2 (en) * 2002-12-17 2010-09-07 Cisco Technology, Inc. Method and apparatus for advertising a link cost in a data communications network
US7817583B2 (en) 2003-04-28 2010-10-19 Hewlett-Packard Development Company, L.P. Method for verifying a storage area network configuration
US7860392B2 (en) * 2003-06-06 2010-12-28 Dynamic Method Enterprises Limited Optical network topology databases based on a set of connectivity constraints
US7570594B2 (en) * 2003-10-01 2009-08-04 Santera Systems, Llc Methods, systems, and computer program products for multi-path shortest-path-first computations and distance-based interface selection for VoIP traffic
JP2005175659A (ja) * 2003-12-09 2005-06-30 Fujitsu Access Ltd Adsl回線収容調整システム及びその方法
US8422500B2 (en) * 2004-07-02 2013-04-16 Rockstar Consortium Us Lp VLAN support of differentiated services
US7649834B2 (en) * 2004-09-15 2010-01-19 At&T Intellectual Property Ii, L.P. Method and apparatus for determining neighboring routing elements and rerouting traffic in a computer network
US9306831B2 (en) * 2005-02-14 2016-04-05 Cisco Technology, Inc. Technique for efficient load balancing of TE-LSPs
US7769886B2 (en) * 2005-02-25 2010-08-03 Cisco Technology, Inc. Application based active-active data center network using route health injection and IGP
DE102006014378B4 (de) * 2006-03-27 2008-07-10 Nokia Siemens Networks Gmbh & Co.Kg Verfahren und Netzsteuerungseinheit zum Deaktivieren einer Netzwerkkomponente
US20080192651A1 (en) 2007-02-09 2008-08-14 Level 3 Communications, Llc Network check using routing database
JP2010041385A (ja) * 2008-08-05 2010-02-18 Nec Corp ルータ及び輻輳制御方法
US8171111B1 (en) * 2008-08-07 2012-05-01 United Services Automobile Association (Usaa) Systems and methods for non-specific address routing
US7933212B2 (en) * 2008-10-08 2011-04-26 At&T Intellectual Property I, L.P. Methods and apparatus to diagnose enhanced interior gateway routing protocol problems in networks
US8874774B2 (en) * 2008-10-15 2014-10-28 Aster Risk Management Llc Fault tolerance in a distributed streaming system
JP5166227B2 (ja) * 2008-12-22 2013-03-21 アラクサラネットワークス株式会社 パケット転送方法、パケット転送装置及びパケット転送システム
US8291036B2 (en) * 2009-03-16 2012-10-16 Microsoft Corporation Datacenter synchronization
US8422365B2 (en) * 2009-09-21 2013-04-16 Cisco Technology, Inc. Energy efficient scaling of network appliance service performance
EP2540035A1 (en) 2010-02-23 2013-01-02 Telefonaktiebolaget LM Ericsson (publ) Summarisation in a multi-domain network
US8756424B2 (en) * 2010-11-30 2014-06-17 Marvell Israel (M.I.S.L) Ltd. Load balancing hash computation for network switches
US8467294B2 (en) * 2011-02-11 2013-06-18 Cisco Technology, Inc. Dynamic load balancing for port groups
WO2013033457A1 (en) * 2011-08-30 2013-03-07 Qualcomm Atheros, Inc. Topology discovery in a hybrid network
US8972602B2 (en) * 2012-06-15 2015-03-03 Citrix Systems, Inc. Systems and methods for using ECMP routes for traffic distribution
US9729449B2 (en) * 2012-06-26 2017-08-08 Brocade Communications Systems, Inc. Method and apparatus for enhanced routing within a shortest path based routed network containing local and long distance links
US20140115135A1 (en) * 2012-10-22 2014-04-24 Telefonaktiebolaget L M Ericsson (Publ) Method and system of frame based identifier locator network protocol (ilnp) load balancing and routing
US9178769B2 (en) * 2013-01-08 2015-11-03 Comcast Cable Communication, Llc Generation and management of network connectivity information
US9014007B2 (en) * 2013-05-31 2015-04-21 Dell Products L.P. VXLAN based multicasting systems having improved load distribution
US9444721B2 (en) * 2013-09-30 2016-09-13 Juniper Networks, Inc. Two-part metric for link state routing protocols
US9215164B2 (en) * 2013-11-08 2015-12-15 Alcatel Lucent Multi-source correlation of network topology metrics
US9455920B2 (en) * 2014-08-11 2016-09-27 Dell Products Lp Avoiding traffic loss due to route failures
US9642040B2 (en) * 2014-09-19 2017-05-02 Qualcomm Incorporated Load balancing in a wireless network with multiple access points
US10020880B2 (en) * 2014-11-06 2018-07-10 The Research Foundation For The State University Ofnew York Reconfigurable wireless data center network using free-space optics
WO2016142774A1 (en) * 2015-03-06 2016-09-15 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for load balancing in network switches
US10536357B2 (en) * 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US20170099210A1 (en) * 2015-10-05 2017-04-06 Cisco Technology, Inc. Systems and Methods for Energy-Aware IP/MPLS Routing
US10291513B2 (en) * 2015-11-30 2019-05-14 At&T Intellectual Property I, L.P. Topology aware load balancing engine
US10863558B2 (en) * 2016-03-30 2020-12-08 Schweitzer Engineering Laboratories, Inc. Communication device for implementing trusted relationships in a software defined network
US10887183B1 (en) * 2019-09-18 2021-01-05 Virtustream Ip Holding Company Llc System and method for topological redundancy

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7277393B1 (en) * 2002-03-13 2007-10-02 Packet Design, Inc. System and method for identifying cost metrics for a network
CN103354989A (zh) * 2010-08-12 2013-10-16 思杰系统有限公司 用于中间装置中的多级服务质量分类的系统和方法
CN104704781A (zh) * 2012-09-25 2015-06-10 谷歌公司 网络设备
CN103927266A (zh) * 2013-01-15 2014-07-16 想象力科技有限公司 预取流量的改进控制
CN105007225A (zh) * 2015-07-31 2015-10-28 东北大学 一种网络动态拓扑控制系统及方法

Also Published As

Publication number Publication date
US11563641B1 (en) 2023-01-24
CN108432192A (zh) 2018-08-21
EP3395020A1 (en) 2018-10-31
JP6862451B2 (ja) 2021-04-21
WO2017112600A1 (en) 2017-06-29
US20170180210A1 (en) 2017-06-22
JP2019503611A (ja) 2019-02-07
US10164836B2 (en) 2018-12-25
EP3395020B1 (en) 2020-11-11

Similar Documents

Publication Publication Date Title
CN108432192B (zh) 流量转移方法和系统以及计算机可读存储介质
US7957306B2 (en) Providing reachability information in a routing domain of an external destination address in a data communications network
US9667524B2 (en) Method to check health of automatically discovered controllers in software defined networks (SDNs)
US7602796B2 (en) Method and apparatus for border gateway protocol route management and routing policy modeling
JP5722455B2 (ja) ネットワークにおけるメッセージおよび計算オーバーヘッドの軽減
US20220272032A1 (en) Malleable routing for data packets
US8934490B2 (en) Accelerated MAC address resolution for IPv6 traffic with IS-IS protocol
US9548930B1 (en) Method for improving link selection at the borders of SDN and traditional networks
RU2612599C1 (ru) Устройство управления, система связи, способ управления коммутаторами и программа
WO2014054281A1 (en) Control apparatus, control method thereof, and program
US8396988B2 (en) Method and system for survival of data plane through a total control plane failure
WO2022062568A1 (zh) 一种交换机的配置方法及相关设备
US10419282B1 (en) Self-configuring network devices
US11936557B2 (en) Discovering a reverse path for initiating bidirectional forwarding detection (BFD)
US11296980B2 (en) Multicast transmissions management
US10091056B1 (en) Distribution of modular router configuration
US10129089B1 (en) Shifting network traffic
JPWO2015093478A1 (ja) ネットワークシステム、制御装置、制御方法およびプログラム
US11627069B2 (en) Device and a system for OSPF cost metrics mirroring
US12009911B2 (en) Optimizing routes across an optical network based on traffic stream bandwidth utilization
US11936559B2 (en) Fast receive re-convergence of multi-pod multi-destination traffic in response to local disruptions

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant