提供计算机网络中的两部分度量的制作方法

文档序号:7816017阅读:298来源:国知局
提供计算机网络中的两部分度量的制作方法
【专利摘要】本发明的各实施方式总体上涉及提供计算机网络中的两部分度量。具体地,描述了用于利用具有计算机网络的链路状态路由协议的两个部分度量的技术。例如,由路由器通信的链路状态公告传送表示针对路由器向网络发送网络流量的出站成本的出站成本度量,以及表示从网络接收网络流量的入站成本的入站成本度量。所述技术针对包括广播或非广播多路访问网络的共享访问网络尤其有用。
【专利说明】提供计算机网络中的两部分度量
[0001]相关申请的交叉引用
[0002]本申请要求于2013年9月30日递交的美国专利申请N0.14/042,644的权益,其全部内容通过引用并入于此。

【技术领域】
[0003]本公开的技术涉及计算机网络,并且更具体地涉及提供计算机网络中的路由信肩、O

【背景技术】
[0004]计算机网络是交换数据并共享资源的互连计算设备的集合。在基于分组的网络(诸如,因特网)中,计算设备通过将数据划分成被称作分组的小块来通信数据,所述分组跨网络从源设备被单独路由至目的地设备。目的地设备从分组提取数据并且将数据组装成其原始形式。网络中被称为路由器的某些设备使用路由协议来交换并积累描述网络的拓扑信息。这允许路由器构建其自己的网络路由拓扑图。在接收传入的数据分组之后,路由器检查分组中的键控信息并且根据所积累的拓扑信息转发分组。
[0005]许多路由协议使用基于洪的分发机制来向网络中的路由器宣布拓扑信息。这些路由协议通常依赖于要求每个路由器具有同步的路由拓扑信息的路由算法。例如,开放式最短路径优先(OSPF)和中间系统到中间系统(IS-1S)路由协议是使用消息传送链路状态表示来确保其路由拓扑针对于网络链路相关联的可用接口、度量和其他变量同步的链路状态协议。例如,OSPF利用链路状态公告(LSA),而IS-1S使用链路状态协议数据单元(TOU)来交换信息。诸如用于根据链路状态协议传送链路状态表示的消息在这里通常被称为链路状态公告(LSA),并且OSFP LSA和IS-1S LS PDU是这种LSA的示例。
[0006]无需根据链路状态协议的路由器操作通常通过网络洪传输链路状态公告,使得每个其他路由器接收该链路状态公告。在其中路由器通过点对点连接进行连接的网络拓扑中,每个路由器向每个接口上可达到的邻近路由器洪传输链路状态公告。在使用多访问媒体的网络(诸如,以太网网络)中,网络中的路由器向所有其他路由器洪传输链路状态公告。在任何一种情况下,接收路由器使用经由链路状态公告接收的信息来构建并维护其自己的网络拓扑。这些链路状态公告可以包括标识与该链路相关联的成本度量的信息,以及通常被采用于根据链路状态协议选择通过网络的路径的任意其他约束。
[0007]作为一个示例,某些类型的链路状态公告由于需要指定从公告路由器到网络中其他路由器的每个路由器的链路度量可以在大小上相当大。在其中条件快速改变(诸如,无线电、卫星、基于无线的网络的任意其他形式可能受制于电子干扰)的网络中,路由器可以生成并发送大量链路状态公告,从而通过非常频繁地更新各种链路度量来公告条件的改变。当生成、处理和发送/接收这些网络中的链路状态公告时,这些链路状态公告的数目可能潜在地消耗显著的网络带宽,同时还可能消耗显著的路由器的处理资源。


【发明内容】

[0008]总体上描述了其中链路状态路由协议利用计算机网络中的两个部分度量的技术。例如,由路由器通信的链路状态公告根据这里所述的技术传送表示针对路由器向网络发送网络流量的出站成本的出站成本度量,以及表示从网络接收网络流量的入站成本的入站成本度量。在某些示例中,针对路由器的入站成本度量和出站成本度量可以在单个链路状态消息中作为两个部分度量进行通信。所述技术针对包括广播或非广播多路访问网络(NBMA)的共享访问网络尤其有用。
[0009]与利用传统度量(其在本公开中可以被称为“一个部分”度量)的链路状态公告相比,此两个部分度量可以减少需要发送的链路状态公告的数目。如这里所述,当路由器用于向网络发送流量的出站成本或用于从网络接收流量的成本变化时,路由器可以仅需要发送链路状态公告,从而更新变化的特定成本。这反过来减少了对待计算的其他路由器的任意影响,并且通过LSA宣布相应更新的成本。因此,两个部分度量可以在生成链路状态公告同时还简化这些链路度量的公告方面有效地减少链路状态公告的大小(并由此减少网络带宽消耗)和开支(在存储器和处理资源方面),尤其在网络条件方面可能遇到快速频繁变化的网络中。
[0010]在一个示例中,一种方法,包括:根据链路状态协议在耦合至共享访问网络的多个路由器之间通信链路状态公告,其中所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集,以及基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径。
[0011]在另一示例中,一种系统,包括:多个路由器,每个路由器包括一个或多个处理器,所述处理器被配置为根据链路状态协议在所述多个路由器之间通信链路状态公告。所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集。所述路由器被配置为基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径
[0012]在另一示例中,一种其上已经存储有指令的非瞬态计算机可读存储介质,当所述指令被执行时,使得多个路由器的一个或多个处理器根据链路状态协议在所述多个路由器之间通信链路状态公告,其中所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集,以及基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径。
[0013]本发明的一个或多个实施方式的细节在下面的附图及说明中进行阐述。根据以下说明和附图以及权利要求书将容易理解本发明的其他特征、对象和优势。

【专利附图】

【附图说明】
[0014]图1是图示了根据本公开中描述的技术的各方面使用两部分成本度量操作的示例网络的框图。
[0015]图2是图示了实现本公开中描述的技术的示例性路由器的框图。
[0016]图3A和图3B是图示了在实现本公开中描述的技术中网络设备的示例操作的流程图。
[0017]图4是图示了根据本公开中描述的技术指定两部分成本度量的示例性链路状态公告(LSA)的框图。
[0018]图5是图示了根据本公开中描述的技术的各方面用两部分成本度量操作的另一示例网络的框图。

【具体实施方式】
[0019]图1是图示了根据本公开中描述的技术的各方面使用两部分成本度量操作的示例网络10的框图。在图1的示例中,网络10包括若干子网络,诸如由路由器16A-16D(“路由器16”)互连的子网络12和子网络14A-14C( “子网络14”)。在图1的示例中,子网络12表示共享媒体访问网络。此外,子网络14C通过路由器16C和16D通信地耦合至子网络12,因此可以经由路由器16C和16D从子网络12接收流量。
[0020]在此示例中,网络10的路由器16实现链路状态路由协议以在网络中的端点设备之间交换路由信息并促进分组或其他数据单元的转发。虽然只有子网络12被示为共享媒体访问网络,但是子网络14的每个子网络都可以包括共享媒体访问网络或任意其他类型的子网络。通常,共享访问子网络12可以是任意形式的共享访问网络,诸如广播或非广播多路访问网络(NBMA)。作为一个示例,共享访问子网络12可以是耦合路由器16的以太网网络。
[0021]每个路由器16根据链路状态协议操作以交换承载有路由信息的链路状态公告。例如,路由器16可以执行开放式最短路径优先(OSPF)路由协议或中间系统到中间系统(IS-1S)路由协议,其中每个路由协议是使用链路状态公告来传送与网络链路相关联的可用接口、度量和其他变量的示例。例如,OSPF利用链路状态公告(LSA),而IS-1S使用链路状态协议数据单元(rou)来交换信息。
[0022]通常,由路由器16输出的链路状态公告指定去往网络10中其他路由器的网络链路以及相关联的成本度量。基于通信的链路状态公告,路由器16以反映网络10的拓扑的方式构建图或其他数据结构。例如,路由器16可以形成图数据结构,其中图的每个节点表示不同的路由器16或者共享访问网络并且互连图的两个节点的每个边表示对应的两个路由器16之间或者路由器与共享访问网络之间不同的链路。图的每个边可以与针对每个相关联的链路反映经由LSA公告的成本的成本或其他边值相关联。通过常规链路状态路由协议,两个路由器节点之间的边具有在两个方向(即,从节点I到节点2以及从节点2到节点I)上的(可能不同)成本,但是路由器节点与共享访问网络节点之间的边通常只具有用于路由器节点到网络节点方向的成本。路由器16继而可以实现路径选择算法来针对数据分组的每个源和目的地确定通过网络的路径。例如,路由器16可以实现约束最短路径优先(CSPF)路径选择算法来找到从每个节点到每个其他节点的最低成本路径。
[0023]在执行路径选择之后,路由器16根据选定的路径转发分组。随着网络条件改变(诸如,当一个路由器16变得不可操作时,链路下降或者变得过度消耗变慢时),一个或多个路由器16可以检测网络条件的变化,计算新的成本度量以及输出链路状态公告以向其他路由器16通信该改变。路由器16处理链路状态公告以更新其相应的链路状态数据库,并且基于更新的图数据结构执行路径选择以选择通过网络10的新的路径。
[0024]根据本公开中描述的技术,路由器16根据传送用于共享访问网络的两个部分度量的链路状态路由协议进行操作。例如,由路由器16通信的链路状态公告根据这里描述的技术传送表示该路由器用于向网络发送网络流量的出站成本20(例如,用于将流量注入子网络12的成本)的出站成本度量,以及表示用于从网络接收网络流量的入站成本21的入站成本度量。在某些示例中,针对给定路由器公告的出站成本度量和入站成本度量可以在单个链路状态消息中作为两部分度量进行通信。此外,出站成本20和入站成本21可以是针对给定路由器16的相同成本或不同成本,并且可以是针对不同路由器的相同成本或不同成本。
[0025]如这里所述,路由器16可以使用将跨共享访问网络的路由器16之间的常规链路状态成本度量划分成两个部分的两个部分成本度量来传送成本信息,而不是提供针对链路的一个部分、总成本度量,其中两个部分中的一个部分表达给定路由器用于向网络发送流量的出站成本,而另一部分表达所述路由器用于从网络接收流量的入站成本。换言之,根据本公开所述的技术提出的成本度量被表示为“两个部分度量”,这是因为经由共享访问网络在两个路由器之间传送链路成本的传统一个部分度量被划分成两个部分,其中每个部分与流量的不同方向相关联。
[0026]当路由器(诸如,路由器16A)对共享访问网络(诸如,子网络12)上的不同路由器16具有不同成本度量时,该技术可以尤其有用。不通过使用该技术,路由器16A可能需要在其LSA中列出对共享访问网络12上的不同路由器16的单独成本度量。通过该技术,每个路由器16可能仅需要列出其自己的入站/出站成本度量。例如,为了使用此两个部分度量来计算通过子网络12达到任意给定路由器16的成本,每个路由器16可以将其入站成本(即,用于向子网络12发送流量的成本)与用于从子网络12向路由器发送流量的出站成本求和,从而有效地计算传统一个方面度量。
[0027]因此,所述技术可以提供针对减少链路状态公告数目的优势,并且在成本度量变化时减少网络10中洪传输的量。例如,当路由器16A的出站或入站成本20A变化时,该路由器可能需要仅通知更新成本的其他路由器16,从而生成具有经改变成本的路由器LSA。路由器16A因此可以不需要在其LSA中单独指定去往路由器16B、16C和16D的不同度量,其反过来也不需要在其路由器LSA中单独指定去往路由器16A的度量,这是因为其去往和来自网络的相应出站成本20和入站成本21没有改变,由此可以大幅度减少需要洪传输通过网络10的LSA数目。因此,路由器16将接收较少的LSA,由此进一步减少处理要求。通过此方式,两个部分度量的使用可以在生成LSA方面有效地减少LSA的大小(并且由此减少网络带宽消耗)和开支(在存储器和处理资源方面),同时还简化了这些链路度量的公告。这可以尤其用于可以遇到在网络成本方面快速频繁变化的共享访问网络,诸如其中至少某些通信由卫星或其他移动网络设施承载的网络。
[0028]在操作中,路由器16中的一个路由器(诸如,路由器16A)可以通过任意数目的方式确定出站成本度量20A。作为一个示例,路由器16A可以使用用于成本计算的参考带宽,从而通过测量的接口带宽来划分此参考带宽。该参考带宽可以被配置或确定,或者预先定义。共同参考带宽可以例如是每秒100兆比特(Mbps)。类似地,路由器16A可以确定标识由从网络接收的去往路由器16A的流量引发的成本的入站成本度量20B,并且可以公告出站成本20A和入站成本20B,从而在某些情况下将成本20A和成本20B的每个成本指定为路由器LSA的单独类型程度值(TLV)字段中的单独成本。
[0029]从链路状态公告承载的度量,每个路由器16可以确定从每个路由器16到子网络12的每个出站成本20以及从子网络12到每个路由器16的每个入站成本21。当执行路径选择时,每个路由器16可以计算路由器16的任意配对之间的总成本度量。为了说明,路由器16A可以根据从路由器16A到子网络12的出站成本度量20A和从子网络12到路由器16C的入站成本度量21C来计算从路由器16A到路由器16C的总成本度量。类似地,路由器16A可以根据从路由器16A到子网络12的出站成本度量20A和从子网络12到路由器16D的入站成本度量21D来计算从路由器16A到路由器16D的总成本度量。作为一个示例,路由器16A可以将出站成本度量20A和入站成本度量2IC求和以导出从路由器16A到路由器16C的总成本度量。虽然被描述为第一成本度量与第二成本度量的相加,但是该技术可以针对更多涉及的数学计算执行以导出总成本度量。
[0030]在此路径选择过程期间,路由器16A可以至少部分基于从路由器16A到路由器16C路径的总成本度量以及从路由器16A到路由器16D路径的总成本度量来选择路径以达到子网络14C。为了说明起见,假设从路由器16A到路由器16C的路径比从路由器16A到路由器16D的路径具有更大的总成本度量,路由器16A可以执行路径选择以选择从路由器16A到路由器16D的路径,这是因为该路径具有更低的成本。在选择路径之后,路由器16可以将所述路径(以被称作“转发信息”的形式)编程或者提供到路由器16的接口,使得所述接口可以使用被选定的路径路由分组。
[0031]通过此方式,链路状态公告可以指定表示针对多个路由器的每个路由器用于向共享访问网络通信网络流量的相应出站成本的出站成本度量集,以及表示针对多个路由器的每个路由器用于从共享访问网络接收网络流量的相应入站成本的入站成本度量集。即,每个路由器16可以生成单独LSA,用于指定针对路由器16中相应路由器的对应出站成本度量和/或针对路由器16中相应路由器的入站成本度量。在某些示例中,每个路由器16可以生成单个LSA,用于指定针对路由器16中相应路由器的对应出站成本度量和针对路由器16中相应路由器的入站成本度量。为了说明,路由器16A可以生成指定出站成本度量20A和入站成本度量21A的LSA。路由器16B可以生成指定出站成本度量20B和入站成本度量21B的LSA。路由器16C可以生成指定出站成本度量20C和入站成本度量21C的LSA。路由器16D可以生成指定出站成本度量20D和入站成本度量21D的LSA。虽然上文描述为在单个LSA中指定成本20和成本21两者,但是每个路由器16可以生成指定针对路由器16中相应路由器的对应出站成本度量的第一 LSA,然后生成针对路由器16中相应路由器的入站成本度量的第二不同LSA。
[0032]路由器16继而可以基于出站成本度量集20A-20D和入站成本度量集21A-21D来执行路径选择以选择子网络的路由器之间的路径。即,每个路由器16可以计算通过网络去往每个其他路由器16的每个路径的总成本度量。路由器16A例如可以通过将出站成本度量20A与入站成本度量21B相加来计算去往路由器16B的总成本度量。路由器16A还可以通过将出站成本度量20A与入站成本度量21C相加来计算去往路由器16C的总成本度量。路由器16A还可以通过将出站成本度量20A与入站成本度量21D相加来计算去往路由器16D的总成本度量。为了达到子网络14C,路由器16A可以选择去往路由器16C的路径或者去往路由器16D的路径,从而选择具有最低总成本度量的路径。
[0033]虽然为了便于说明针对OSPF描述了本公开的各部分,但是所述技术还可以在IS-1S或任意其他链路状态协议的上下文中执行。
[0034]图2是图示了执行本公开中所述技术的各方面的示例性路由器30的框图。路由器30可以表示图1示例中所示路由器16中的一个路由器。虽然针对路由器30进行描述,但是所述技术可以由能够实现链路状态协议(诸如,IS-1S路由协议或OSPF路由协议)的任意其他类型的网络设备实现。因此,虽然针对路由器30进行描述,但是所述技术应当不限于针对图2示例所述的示例性路由器30。
[0035]在图2的示例中,路由器30包括接口卡32A_32N( “IFC 32”),所述接口卡分别经由网络链路34A-34N和36A-36N接收和发送数据单元(诸如,分组流)。路由器30可以包括具有用于接收卡集(包括IFC 32)的若干插槽的机架(未示出)。每个卡可以被插入机架的对应插槽,用于经由高速交换机40和内部数据路径42A-42N( “内部数据路径42”)将所述卡电耦合至路由引擎38。
[0036]交换机40还提供每个IFC 32之间的互连路径。交换机40可以包括例如交换结构、交换装置、可配置的网络交换机或集线器、或者其他高速交换机制。内部数据路径42可以包括任意形式的通信路径,诸如集成电路中的电路径、外部数据总线、光链路、网络连接、无线连接或其他通信路径。IFC 32可以经由若干物理接口端口(未示出)被耦合至网络链路34A-34N和36A-36N。通常,IFC 32可以各自表示一个或多个网络接口,通过所述网络接口,路由器30可以与网络的链路(诸如,图1示例中所示子网络12的链路)对接。
[0037]通常,路由引擎38作为路由器30的控制单元进行操作。路由引擎38可以包括处理器、可编程处理器、通用处理器、集成电路、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或能够实现这里所述技术的任意类型的硬件单元的一个或多个。路由引擎38可以进一步包括非瞬态计算机可读介质或其他计算机可读存储设备,其可以包括动态存储器(例如,随机访问存储器或RAM、动态RAM或DRAM和高速缓存)和/或静态存储器(例如,静态RAM或SRAM、只读存储器或ROM和闪存),以及存储设备,诸如压缩盘ROM或CDR0M、硬驱动、RAM驱动和数字视频盘(DVD)驱动。在某些实例中,计算机可读存储介质可以包括或者存储当被执行时使得可编程处理器执行这里所述技术的指令。这些指令可以形成计算机程序,其可以包括软件或其他可执行文件。
[0038]路由引擎38可以进一步包括用户接口(UI)模块44( “Π模块44”)和一个或多个链路状态协议模块46A-46N( “链路状态协议模块46”)。UI模块44可以表示呈现用户接口的模块,通过该用户接口,管理员或其他用户(诸如管理员39( “管理员39”))可以交互以总体上配置一个或多个链路状态协议模块46以及路由引擎38。如图2示例中所示,链路状态协议模块46可以包括OSPF模块46A、IS-1S模块46N和任意其他链路状态协议。OSPF模块46A表示根据以下文献中的一个或多个来实现OSPF路由协议的模块,所述文献是由J.Moy在1998年4月出版的名称为“OSPF Vers1n 2”的RFC 2328,由R.Coltun等人在2008年7月出版的名称为“OSPF for IPv6”的RFC 5340,由N.Sheth等人在2013年I月出版的名称为“OSPF Hybrid Broadcast and Point-to-Multipoint Interface Type”的RFC6845,以及由 A.Lindem 等人在 2013 年 7 月出版的名称为“0SPFv3 LSA Extendibility^^针对网络工作组的因特网草案,其中每个文献通过引用将其整体并入于此。IS-1S模块46N根据以下文献来实现IS-1S路由协议,所述文献是由D.0ran在1990年出版的名称为“0SIIS-1S Intra-domain Routing Protocol”的 IS-1S RFC 1142,其通过引用将其整体并入于此。
[0039]路由引擎38可以进一步包括并维护链路状态数据库50,该链路状态数据库50存储LSA以及用于标识或者确定网络拓扑的任意其他信息或数据。链路状态协议模块46可以更新链路状态数据库50或者存储指定网络链路的数据,包括关于这些链路的特性,诸如各种成本及其他度量。路由引擎38可以通过一个或多个表、数据库、链接列表、基数树、数据库、平面文件、图或任意其他数据结构的形式维护链路状态数据库50。基于链路状态数据库50,路由引擎38生成针对IFC 32的转发信息52A_52N( “转发信息52”)。
[0040]每个IFC 32包括根据路由引擎38生成的转发信息52转发分组的转发组件(未示出)。具体地,IFC 32的转发组件基于转发信息52确定针对每个入站IP分组(其可以与MPLS分组区分,因为这些IP分组不包括标签栈)的下一跳,标识IFC 32中与该下一跳相关联的对应IFC 32,以及经由交换机40和对应的数据路径42将分组中继到适当的IFC32。虽然上文描述为分立模块44-48,但是所述模块可以被组合以形成单个模块或单元或者可以单独实现为不同的硬件或软件单元。对单独模块的引用并不意味着反映真实分立实现并且不仅仅是一个模块可以由相同硬件或硬件或软件的组合实现。
[0041]最初,管理员39可以与由Π模块44呈现的用户接口(诸如命令行接口(CLI)或图形用户接口(GUI))对接以配置一个或多个链路状态协议模块46。例如,管理员39可以与用户接口对接以指示OSPF模块46A使用根据本公开所述技术的各方面提供的两个部分度量。在配置一个或多个协议46之后,管理员39还可以与用户接口对接以输入将一个或多个链路与成本或度量相关联的链路数据。在某些示例中,当被称作非对称成本度量(意味着从路由器到网络的成本度量不同于从网络到路由器的成本度量)需要或优选时,管理员36可以与用户接口对接以指定这两种成本度量。Π模块44可以将此链路数据存储到链路状态数据库50作为新的条目,或者可以基于该输入链路数据来更新链路状态数据库50以向对应链路反映由此链路数据定义的新的度量或成本。
[0042]在通过此方式配置路由引擎38之后,管理员39继而可以激活或者使得路由器30能够开始处理分组,诸如根据转发信息52转发的标准IP分组。在接收这些分组之前,一个或多个模块46可以生成LSA 56,该LSA 56包括类似于OSPF上下文中链路类型2的链路。新的类型指示子网络12正使用根据本公开所述技术的各方面定义的两个部分度量。此外,正如常规链路状态协议LSA 56可以包括更多的链路。
[0043]例如,OSPF模块46A可以生成LSA 56以包括用于从路由器30向子网络12发送流量的出站成本以及用于从子网络12接收流量的入站成本两者。在某些实例中,LSA 56可以仅指定从路由器30到子网络12的成本,其中从子网络12到路由器30的成本被假设与从路由器30到子网络12的成本相同。在这些及其他示例中,子网络12被配置为广播网络或NBMA网络而不是使用上文并入RFC 6845中阐述的混合接口类型,其中路由器30及更具体地OSPF 46A可以不再列出去往路由器LSA中指定的每个邻居的单独度量。在此示例中,路由器LSA可以利用本公开中所述的技术指定去往子网络12的单个链路。相反,当将接口作为混合接口类型对待时,没有实现本公开中所述的技术的路由器通常列出去往每个其他路由器16的成本度量。
[0044]根据本公开的技术,OSPF 46A可以生成LSA 56,该LSA 56不再列出去往每个其他路由器16的每个连接的成本度量,但是可以仅指定具有度量的链路,该度量表示从路由器30到子网络12/从子网络12的对称出站度量,或者在非对称度量的情况下,表示从路由器30到子网络12的链路出站度量20A和从子网络20A到路由器30的入站链路度量20B。在0SPFv3中,路由器LSA 56可以在附加类型长度值(TLV)字段中指定来自网络的非对称入站度量,同时使用普通成本度量字段来指定从路由器30到子网络12的出站成本。针对0SPFv2,服务类型(TOS)度量字段可以用于指定从子网络12到路由器30的成本(并且普通成本度量字段可以用于指定从路由器30到子网络12的成本)。虽然在TOS度量字段的上下文中描述,但是所述技术可以针对包括被称作多拓扑(MT)度量的其他类型的字段进行执行。
[0045]路由器30还可以经由IFC 32从其他路由器16接收LSA。IFC 32可以被配置为经由交换机40向路由引擎38转发路由协议分组或控制分组(诸如这些接收的LSA)。链路状态协议模块46继而可以处理这些LSA,其中这些LSA中的一个或多个LSA可以包括两个部分成本度量。链路状态协议模块46之一继而存储公告的链路,包括其去往链路状态数据库50的成本和其他信息。
[0046]响应于更新链路状态数据库50,链路状态协议模块46之一可以调用SPF模块58,该SPF模块58分解其链路状态数据库50中的对应部分以生成转发信息52。链路状态协议模块46之一继而可以通过新分解的转发信息配置或者更新IFC 32。IFC 32可以根据转发信息52继续接收并转发IP分组。
[0047]在转发分组时,一个或多个IFC 32可以调用或者执行接口监测模块54。接口监测模块54可以表示如下模块,该模块监测IFC 32A的接口以经由每个链路(通常通过测量带宽)来标识通信容量的变化。当变化超出阈值时,作为一个示例,接口监测模块54可以与一个或多个链路状态协议模块46对接以指示或者指定特定链路具有超出阈值降级的通信降级。一个或多个链路状态协议模块46继而可以生成路由器LSA 56,该路由器LSA 56指示从子网络12到路由器30的成本度量已经针对标识链路改变(并且可能指示从路由器30到子网络12的成本度量已经改变)。
[0048]同样地,路由器30可以接收具有这两个部分度量的LSA 56,调用SPF模块58以分解链路状态数据库50。作为SPF处理的一部分,SPF模块58可以计算向一个路由器16发送LSA 56的总成本度量,更新链路状态数据库50以包括此新计算的总成本度量,生成更新的转发信息52并且将此转发信息52安装在IFC 32中。路由器30继而可以根据此新安装的转发信息52开始路由分组。路由器30可以继续监测一个或多个IFC 32被耦合到的链路,从而生成LSA 56并且接收与LSA 56类似的LSA。
[0049]图3A和图3B是图示了在实现本公开中描述的技术中网络设备(诸如图2示例中所示的路由器30)的示例操作的流程图。最初,首先参考图3A中所示的示例操作,路由器30的UI模块44呈现管理员39与之对接的用户接口以输入两个部分成本度量,该两个部分成本度量可以包括从路由器30到子网络12的成本和/或从子网络12到路由器30的成本(70)。Π模块44接收此两个部分度量(72)。
[0050]作为响应,链路状态协议模块可以生成并传输LSA 56,在此示例中,该LSA 56公告由两个部分度量更新的链路(76、78)。
[0051]在操作中,路由器30可以从具有链路状态信息的其他路由器16接收路由器LSA(80)。在接收路由器LSA( “是”80)之后,路由器30的路由引擎38可以调用适当的链路状态协议模块46,该链路状态协议模块46解析所接收的路由LSA以标识公告的链路以及与该公告的链路相关联的任意其他成本或度量(包括两个部分度量)(82)。当解析此接收的路由器LSA时,链路状态协议模块46可以解析该两个部分度量并且基于该解析的两个部分度量来计算相关联链路的总成本度量(82、84)。参考图3B,链路状态协议模块46继而可以更新链路状态数据库50中的链路以基于经计算的总成本度量来更新相关联链路的成本度量(90)。
[0052]响应于更新链路状态数据库50 (或者在某些实例中周期性地),链路状态协议模块46之一可以调用SPF 58来分解链路状态数据库50以确定经更新的转发信息52并且通过经更新的转发信息52来更新IFC 32 (92,94) 0 IFC 32继而可以根据经更新的转发信息52来接收并转发分组。
[0053]在某些实例中,链路状态协议模块46之一可以不接收LSA( “否”86),因此该链路状态协议模块46之一可以调用SPF模块58来分解链路状态数据库50并且由此确定转发信息52 (假设链路状态数据库50由链路数据更新)(92)。SPF模块58继而可以通过此更新的转发信息52来更新IFC 32,因此IFC 32根据更新的转发信息来接收并转发分组(94、96)。当转发分组时,IFC 32可以调用链路监测模块54,该链路监测模块54可以监测路由器30与之耦合的链路(98)。响应于检测链路中的变化(“是”100),链路监测模块54可以与一个或多个链路状态协议模块46对接以通知这些一个或多个链路状态协议模块46的变化。该一个或多个链路状态协议模块46继而可以确定对应链路的两个部分度量(102),生成路由器LSA56以向该链路宣布此更新(例如,两个部分度量中的变化)(76),以及传输此路由器 LSA 56(78)。
[0054]路由器30可以继续通过此方式操作,通过向更新的链路状态数据库50传输并接收LSA,执行路径选择以生成用于控制转发分组的转发信息52。
[0055]图4是图示了根据本公开中描述的技术包括两部分度量的示例性链路状态公告(LSA) 110的框图。此外,如图4示例中所示,LSAllO可以遵守OSPF协议,因为其按照由OSPF协议指定的四字节宽度限制。即,LSA 110包括四字节行集合,如图4中由在LSA 110顶部所示针对每个行的0-31比特范围所反映。不透明的OSPF LSA的格式的更多细节可以在通过引用并入于此的RCE 5250,因特网工程任务组(IETF)2008年7月找到。虽然针对OSPF路由协议描述,但是所述技术可以针对任意其他链路状态协议(诸如IS-1S路由协议)类似地实现。
[0056]如图4中所示,LSA 110包括LSA报头112。LSA报头112包括LSA年龄字段114A( “LSA年龄114A”)、选项字段114B( “选项114B”)、LS类型字段114C( “LS类型114C”)、链路状态标识符字段114D( “链路状态ID 114D”)、公告路由器字段114F( “公告路由器114F”)、链路状态序列号字段114G(“LS序列号114G”)、链路状态校验和字段114H(“LS校验和114H”)和长度字段1141 ( “长度1141”)。虽然显示为包括字段114A-114I ( “字段114”),但是LSA报头112可以包括与图4所示字段更多或更少的字段114。
[0057]LS年龄字段114A通常以秒指定LSA 110的年龄,并且用于在其相应LS序列号字段114F中指定相同LSA序列号的两个LSA之间进行区分。选项字段114B可以指定哪些可选容量与LSA 110相关联。LS类型字段114C指示LSA 110的格式和功能,S卩,LSA的类型。LSA类型字段114C可以指定值I用于指示此为路由器LSA。链路状态ID字段114D通常标识路由域中正被LSA 110描述的一部分。公告路由器字段114E可以指定LSA 110的发起者的OSPF路由器标识符。LS序列号字段114F可以包括OSPF模块用于检测旧的并且复制的LSA的带符号的32位整数。LS校验和字段114G可以指示LSA伴随LSA报头112是否包含误差,该误差可以被采用于丢弃可能错误的LSA 110。长度字段114H指示LSA 110的长度。关于通用OSPF和OSPF LSA的报头的更多信息可以在名称为“Traffic Engineering(TE)Extens1ns to OSPF Vers1n 2”的RFC 3630中找到,其全部内容通过引用并入于此。
[0058]针对路由器LSA 110,报头112还可以包括比特选项字段114J和链路数目字段114K。比特选项字段114J可以指定用于指示该路由器是否为具有所述区域为“运输”区域的一个或多个全面邻近虚拟链路的终端,公告路由器是自治系统边界路由器以及/或者路由器是区域边界路由器的一个或多个比特。链路数目字段114K可以指定在此LSA中描述的路由器链路数目(其通常是去往区域的路由器链路(在某些实例中意味着接口)的总集合)。
[0059]LSA 110还包括附加字段集118。字段集118表示链路或接口字段。字段集118包括链路标识符(ID)字段120A、链路数据字段120B、类型字段120C、服务类型(TOS)数目字段120D、度量字段120E、TOS (逆向度量)字段120F和另一度量120G。
[0060]链路ID字段120A标识此路由器链路与之连接的对象,其中该值取决于链路的类型(例如在TLV 118的对应类型字段120C中指定)。链路数据字段120B可以表示指定取决于链路类型字段的值的字段。作为一个示例,链路数据字段120B可以指定路由器接口的IP地址。数目TOS字段120D可以指定给予此链路的不同TOS度量的数目,而不计算所需的链路度量。如果没有给出附加TOS度量,则此字段120D被设置为O。当指定逆向度量时(意味着表示从网络到公告路由器的成本的度量),数目TOS字段120D可以指定值I或者能够存储到数目TOS字段120D的任意其他值。度量字段120E表示存储使用此路由器链路的成本的字段。如上文所述,当此数目TOS字段120D被设置为非零的任意值时,TOS字段120F可以指定指示在对应度量字段120G中指定的值。在此示例中,TOS字段120F可以指定值用于指示度量字段120G存储以“逆向”方向使用此路由器链路的成本,在此示例中可以指的是从网络到公告路由器的成本。度量字段120G继而可以指定此逆向方向成本。
[0061]虽然上文针对OSPF LSA 110进行描述,但是IS-1S格式的链路状态协议数据单元(rou)(其可以被缩写为LSP)可以在结构上类似于OSPF LSA 110,除了定义用于流量工程度量TLV和接口输入成本度量TLV的类型的不同值。IS-1S TLV的格式和通用结构可以在由 T.Li 等人在 2008 年 10 月出版的名称为“ IS-1S Extens1ns for Traffic Engineering”的RFC 5305以及由K.Kompella等人在2008年10月出版的名称为“IS-1S Extens1ns inSupport of Generalized Mult1-Protocol Label Switching(GMPLS) ” 的 RFC 5307,其全部内容通过引用并入于此。
[0062]图5是图示了可以实现本公开中描述的技术的各方面的另一网络130的框图。网络130包括操作为共享多路访问网络的子网络132,其包括路由器134A-134N( “路由器134”)经由卫星碟设备138A-138N(“卫星碟138”)的相应卫星碟设备与其耦合的卫星136。路由器134可以实质上类似于图1和图2示例中所示的路由器16和30。每个卫星碟138能够(可能同时)与子网络132的卫星136通信。
[0063]这里所述技术可以尤其适用于减少网络130中洪传输的LSA的数目,这是由于与经由卫星136转发流量相关联的成本变化。具有用于转发流量的基于卫星的基础设施的网络(诸如网络130)可以遇到单独传输链路中的显著变化,尤其在路由器134可以是移动的,并且因此在建筑物或其他障碍物(诸如山脉)之后移动或者移动通过其他地理障碍(诸如山谷)的情况下,这可以降级通常需要用于与卫星通信的视线信号。因此,路由器134可以遇到与卫星136的变化通信容量,通常导致路由器134与卫星136之间通信容量的快速几何恒定的变化。通过利用这里所述的技术,每个路由器134可以发出仅宣布变化的入站成本143A-143N( “入站成本度量143”)或出站成本度量142A_142N( “出站成本度量142”)的链路状态公告以经由子网络132通信,其可以反过来减少子网络132(并且更通用的网络130)中洪传输的全部LSA和更新的数目。
[0064]在此共享的多路访问子网络环境中,路由器134可以根据上文所述技术使用两个部分度量以潜在地大幅度减少LSA数目和每个LSA的大小。S卩,路由器134可以各自公告针对向子网132发送流量的出站成本度量142和针对从子网132接收流量的入站成本度量143。路由器134A可以经由此示例中的上行链路对接以与子网络132通信,因此可以通过LSA的方式公告出站成本度量142A和入站成本度量143A。路由器134A继而可以生成与图4示例中所示路由器LSA 110类似的路由器LSA,并且将此路由器LSA洪传输至每个其他路由器134。在此基于卫星的共享访问网络配置中,所示技术可以减少需要发送的LSA的数目和大小,尤其在一个或多个路由器134正被移动或者遇到链路容量的(在带宽方面)快速变化的情况下。
[0065]如上文针对图1所述,路由器134A可以标识去往子网络140A的两个路径,其中一个路径通过路由器134M而另一个路径通过路由器134N。路由器134A可以基于出站成本142A和去往路由器134M的入站成本143M来计算通过路由器134M的路径的第一总成本度量。路由器134A还可以基于来自路由器134A的出站成本142A和入站成本143N计算通过路由器134N的路径的第二总成本度量。路由器134A继而可以基于第一总成本度量和第二总成本度量来选择这些路径中的一个路径。响应于对路由器134A的出站成本142A的变化,路由器134A可以生成路由器LSA以向其他路由器134通知此成本变化并且重新计算用于这些路径中的每个路径的总成本度量。通过此方式,所述技术可以响应于成本度量的变化来减少可能需要发送的路由器LSA的数目和大小。
[0066]本公开中描述的技术可以至少部分以硬件、软件、固件或其任意组合实现。例如,所述技术的各方面可以在一个或多个处理器中实现,包括一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者任意其他等价集成或分立逻辑电路,以及此类组件的任意组合。术语“处理器”或“处理单元”通常可以指任意上述逻辑电路,单独或与其他逻辑电路组合,或者任意其他等价电路。包括硬件的控制单元还可以执行本公开的一个或多个技术。
[0067]此类硬件、软件和固件可以在相同设备或者分离设备中实现,用于支持本公开中描述的各种操作和功能。另外,任意所述单元、模块或组件可以作为分立但彼此协作的逻辑设备一起或单独实现。将不同特征描绘为模块或单元旨在突出显示不同的功能方面,并不意味着此类模块或单元必须由单独的硬件或软件组件来实现。当然,与一个或多个模块或单元相关联的功能可以由单独的硬件或软件组件执行,或者集成在共同或单独的硬件或软件组件中。
[0068]本公开中描述的技术还可以体现或编码在包含指令的计算机可读介质中,诸如计算机可读存储介质。计算机可读介质中体现或编码的指令可以使得可编程处理器或其他处理器例如在执行指令时执行所述方法。计算机可读介质可以包括非瞬态计算机可读存储介质以及瞬态通信介质。作为有形非瞬态的计算机可读存储介质可以包括随机访问存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、硬盘、⑶-ROM、软盘、卡带、磁介质、光介质或其他计算机可读存储介质。应当理解,术语“计算机可读存储介质”是指物理存储介质,而不是信号、载波或其他瞬态介质。
[0069]除了上述内容之外或备选地,对以下示例进行描述。在以下任意示例中所描述的特征可以结合本文所描述的任意其他示例利用。
[0070]示例I。一种方法,包括根据链路状态协议在耦合至共享访问网络的多个路由器之间通信链路状态公告,其中所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集,以及基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径。
[0071]示例2。根据示例I所述的方法,其中所述多个路由器的每个路由器在单个LSA中通信所述出站成本度量集中的其相应出站成本度量以及所述入站成本度量集中的其相应入站成本度量。
[0072]示例3。根据示例I所述的方法,其中执行路径选择包括通过所述多个路由器的至少第一路由器基于针对所述多个路由器的所述第一路由器的所述出站成本度量中的一个出站成本度量以及针对所述多个路由器的第二路由器的所述入站成本度量中的一个入站成本度量来计算从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的总成本度量,以及通过所述多个路由器的所述第一路由器基于所计算的总成本度量来选择从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的路径。
[0073]示例4。根据示例I所述的方法,其中通信所述链路状态公告包括通过所述多个路由器的第一路由器传输所述链路状态公告中的一个链路状态公告,其使用所述链路状态公告中的所述一个链路状态公告的单个字段来指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量以及表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
[0074]示例5。根据示例I所述的方法,其中所述链路状态公告的所述一个链路状态公告的所述单个字段存储所述出站成本度量的第一出站成本度量而不存储所述入站成本度量的对应第一入站成本度量,其中所述出站成本度量指定所述出站成本度量的所述第一出站成本度量以及所述入站成本度量的所述对应第一入站成本度量。
[0075]示例6。根据示例I所述的方法,其中通信所述链路状态公告包括通过所述多个路由器的第一路由器传输所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
[0076]示例7。根据示例I所述的方法,其中通信所述链路状态公告包括通过所述多个路由器的第一路由器接收所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的第二路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第二路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
[0077]示例8。根据示例I所述的方法,进一步包括公告所述共享访问网络通过公告所述第一成本度量和所述第二成本度量进行操作或者所述共享访问网络通过公告所述总成本度量进行操作。
[0078]示例9。根据示例I所述的方法,其中所述共享访问网络包括广播网络或者非广播多路访问网络。
[0079]示例10。根据示例I所述的方法,其中所述链路状态路由协议包括开放式最短路径优先(OSPF)路由协议或中间系统到中间系统(IS-1S)路由协议。
[0080]示例11。一种系统,包括多个路由器,其中每个路由器包括一个或多个处理器,所述处理器被配置为根据链路状态协议在所述多个路由器之间通信链路状态公告,其中所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集,以及其中所述路由器被配置为基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径。
[0081]示例12。根据示例11所述的系统,其中所述多个路由器的每个路由器在单个LSA中通信所述出站成本度量集中的其相应出站成本度量以及所述入站成本度量集中的其相应入站成本度量。
[0082]示例13。根据示例11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当执行路径选择时基于针对所述多个路由器的所述第一路由器的所述出站成本度量中的一个出站成本度量以及针对所述多个路由器的第二路由器的所述入站成本度量中的一个入站成本度量来计算从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的总成本度量,以及基于所计算的总成本度量来选择从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的路径。
[0083]示例14。根据示例11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当通信所述链路状态公告时传输所述链路状态公告中的一个链路状态公告,其使用所述链路状态公告中的所述一个链路状态公告的单个字段来指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量以及表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
[0084]示例15。根据示例11所述的系统,其中所述链路状态公告的所述一个链路状态公告的所述单个字段存储所述出站成本度量的第一出站成本度量而不存储所述入站成本度量的对应第一入站成本度量,其中所述出站成本度量指定所述出站成本度量的所述第一出站成本度量以及所述入站成本度量的所述对应第一入站成本度量。
[0085]示例16。根据示例11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当通信所述链路状态公告时传输所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
[0086]示例17。根据示例11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当通信所述链路状态公告时接收所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的第二路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第二路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
[0087]示例18。根据示例11所述的系统,其中所述多个路由器的至少一个路由器被进一步配置为公告所述共享访问网络通过公告所述第一成本度量和所述第二成本度量进行操作或者所述共享访问网络通过公告所述总成本度量进行操作。
[0088]示例19。根据示例11所述的系统,其中所述共享访问网络包括广播网络或者非广播多路访问网络。
[0089]示例20。根据示例11所述的系统,其中所述链路状态路由协议包括开放式最短路径优先(OSPF)路由协议或中间系统到中间系统(IS-1S)路由协议。
[0090]示例21。一种其上已经存储有指令的非瞬态计算机可读存储介质,当所述指令被执行时,使得多个路由器的一个或多个处理器根据链路状态协议在所述多个路由器之间通信链路状态公告,其中所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集,以及基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径。
[0091]此外,以上所描述的任意示例中所给出的任意具体特征可以被结合到所描述技术的有利示例之中。也就是说,任意具体特征一般都可应用于所有示例。已经对各个示例进行了描述。
[0092]已经描述了本发明的各种实施方式。这些实施方式及其他实施方式在以下权利要求书的范围内。
【权利要求】
1.一种方法,包括: 根据链路状态协议在耦合至共享访问网络的多个路由器之间通信链路状态公告,其中所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集,以及 基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径。
2.根据权利要求1所述的方法,其中所述多个路由器的每个路由器在单个LSA中通信所述出站成本度量集中的其相应出站成本度量以及所述入站成本度量集中的其相应入站成本度量。
3.根据权利要求1所述的方法,其中执行路径选择包括利用所述多个路由器的至少第一路由器基于针对所述多个路由器的所述第一路由器的所述出站成本度量中的一个出站成本度量以及针对所述多个路由器的第二路由器的所述入站成本度量中的一个入站成本度量来计算从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的总成本度量,以及通过所述多个路由器的所述第一路由器基于所计算的总成本度量来选择从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的路径。
4.根据权利要求1所述的方法,其中通信所述链路状态公告包括利用所述多个路由器的第一路由器传输所述链路状态公告中的一个链路状态公告,其使用所述链路状态公告中的所述一个链路状态公告的单个字段来指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量、以及表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量二者。
5.根据权利要求1所述的方法,其中所述链路状态公告的所述一个链路状态公告的所述单个字段存储所述出站成本度量的第一出站成本度量,而不存储所述入站成本度量的对应第一入站成本度量,其中所述出站成本度量指定所述出站成本度量的所述第一出站成本度量以及所述入站成本度量的所述对应第一入站成本度量二者。
6.根据权利要求1所述的方法,其中通信所述链路状态公告包括通过所述多个路由器的第一路由器传输所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量、以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
7.根据权利要求1所述的方法,其中通信所述链路状态公告包括通过所述多个路由器的第一路由器接收所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的第二路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量、以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第二路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
8.根据权利要求1所述的方法,进一步包括公告所述共享访问网络通过公告所述第一成本度量和所述第二成本度量进行操作,或者所述共享访问网络通过公告所述总成本度量进行操作。
9.根据权利要求1所述的方法,其中所述共享访问网络包括广播网络或者非广播多路访问网络。
10.根据权利要求1所述的方法,其中所述链路状态路由协议包括开放式最短路径优先(OSPF)路由协议或中间系统到中间系统(IS-1S)路由协议。
11.一种系统,包括: 多个路由器,每个路由器包括一个或多个处理器,所述处理器被配置为根据链路状态协议在所述多个路由器之间通信链路状态公告, 其中所述链路状态公告指定表示针对所述多个路由器的每个路由器向所述共享访问网络发送网络流量的相应出站成本的出站成本度量集,以及表示针对所述多个路由器的每个路由器从所述共享访问网络接收网络流量的相应入站成本的入站成本度量集,以及 其中所述路由器被配置为基于所述出站成本度量集和所述入站成本度量集执行路径选择以选择通过所述共享访问网络的所述路由器的路径。
12.根据权利要求11所述的系统,其中所述多个路由器的每个路由器在单个LSA中通信所述出站成本度量集中的其相应出站成本度量以及所述入站成本度量集中的其相应入站成本度量。
13.根据权利要求11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当执行路径选择时基于针对所述多个路由器的所述第一路由器的所述出站成本度量中的一个出站成本度量以及针对所述多个路由器的第二路由器的所述入站成本度量中的一个入站成本度量来计算从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的总成本度量,以及基于所计算的总成本度量来选择从所述多个路由器的所述第一路由器通过所述多个路由器的所述第二路由器的路径。
14.根据权利要求11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当通信所述链路状态公告时传输所述链路状态公告中的一个链路状态公告,其使用所述链路状态公告中的所述一个链路状态公告的单个字段来指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量、以及表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量二者。
15.根据权利要求11所述的系统,其中所述链路状态公告的所述一个链路状态公告的所述单个字段存储所述出站成本度量的第一出站成本度量,而不存储所述入站成本度量的对应第一入站成本度量,其中所述出站成本度量指定所述出站成本度量的所述第一出站成本度量以及所述入站成本度量的所述对应第一入站成本度量二者。
16.根据权利要求11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当通信所述链路状态公告时传输所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量、以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第一路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
17.根据权利要求11所述的系统,所述多个路由器的至少一个路由器被进一步配置为当通信所述链路状态公告时接收所述链路状态公告中的一个链路状态公告,其在所述链路状态公告中的所述一个链路状态公告的第一字段中指定表示从所述多个路由器的第二路由器到所述共享访问网络的所述出站成本的一个出站成本的所述出站成本度量的一个出站成本度量、以及在不同于所述第一字段的所述链路状态公告中的所述一个链路状态公告的第二字段中表示从所述多个路由器的所述第二路由器到所述共享访问网络的所述入站成本的一个入站成本的所述入站成本度量的一个入站成本度量。
18.根据权利要求11所述的系统,其中所述多个路由器的至少一个路由器被进一步配置为公告所述共享访问网络通过公告所述第一成本度量和所述第二成本度量进行操作,或者所述共享访问网络通过公告所述总成本度量进行操作。
19.根据权利要求11所述的系统,其中所述共享访问网络包括广播网络或者非广播多路访问网络。
20.根据权利要求11所述的系统,其中所述链路状态路由协议包括开放式最短路径优先(OSPF)路由协议或中间系统到中间系统(IS-1S)路由协议。
【文档编号】H04L12/751GK104518962SQ201410514565
【公开日】2015年4月15日 申请日期:2014年9月29日 优先权日:2013年9月30日
【发明者】张朝晖, 王立莉 申请人:瞻博网络公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1