CN101416455A - 用于无连接网络中的改进的路由的方法和设备 - Google Patents

用于无连接网络中的改进的路由的方法和设备 Download PDF

Info

Publication number
CN101416455A
CN101416455A CNA2007800119413A CN200780011941A CN101416455A CN 101416455 A CN101416455 A CN 101416455A CN A2007800119413 A CNA2007800119413 A CN A2007800119413A CN 200780011941 A CN200780011941 A CN 200780011941A CN 101416455 A CN101416455 A CN 101416455A
Authority
CN
China
Prior art keywords
node
link
category
flexible
nodes
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.)
Pending
Application number
CNA2007800119413A
Other languages
English (en)
Inventor
S·阿加瓦尔
M·S·科迪亚拉姆
T·V·拉克什曼
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.)
Nokia of America Corp
Original Assignee
Lucent 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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of CN101416455A publication Critical patent/CN101416455A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/03Topology update or discovery by updating link state protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing

Abstract

本发明包括用于确定在网络中使用的路由表的方法和设备,该网络包括多个1类节点和多个2类节点,所述2类节点使用相应的2类路由表,所述2类路由表具有与网络的多个目的地节点中的每一个相关联的一个下一跳节点。本方法包括:从1类节点和2类节点获得与网络的多个链路中的每一个相关联的链路状态信息,从1类节点和2类节点获得业务测量信息,以及使用链路状态和业务测量信息确定用于相应的1类节点的1类路由表。以基本上协同的方式在整体上确定1类路由表,并且每个1类路由表包括与目的地节点中的每一个相关联的多个下一跳节点。

Description

用于无连接网络中的改进的路由的方法和设备
技术领域
本发明涉及通信网络领域,更为具体地涉及无连接(connectionless)网络中的路由。
背景技术
从因特网的普遍存在和快速发展中,可以明显看到无连接网络的可伸缩性(scalability)和弹性。尽管无连接网络很成功,但是很多服务提供商使用面向连接的网络来实现诸如网络业务(traffic)工程的全局目标。这主要是由于以下事实:面向连接的网络中的业务管理在操作上比无连接网络中的业务管理更为简单。特别地,服务提供商经常使用第二层面向连接的网络来实现第一层无连接网络的全局目标。一个实例是使用多协议标签交换(MPLS)来承载网际协议(IP)业务。
在面向连接的网络中,通常沿预定路径将业务从源路由至目的地。因为这些预定路径可以被单独地建立和操纵,所以调整预定路径以适应网络中变化的业务状况(traffic condition)是可能的。这种对变化的业务状况的适应对于向与预定路径相关联的业务提供服务质量保证而言是很重要的。不利的是,面向连接的网络需要路径建立以支持始发于网络中的业务流,这使得面向连接的网络的伸缩难以进行。此外,网络中的故障需要明确建立恢复路径,从而降低了无连接网络的操作简易性。
尽管无连接网络易于部署和伸缩,但是由于以下事实而使用面向连接的网络:无连接网络通常使用最短路径、逐跳路由。使用最短路径、逐跳路由特别适于保持尽力而为(best effort)连通性(connectivity)(例如,如使用广泛部署的诸如OSPF之类的路由协议所完成的那样),然而,保持连通性并不是服务提供商的唯一目标。除了保持连通性,服务提供商还寻求高效的业务管理、有效的容量使用(例如,避免一些链路上发生拥塞而其他链路却仍未尽其用(underutilized))等目标。不利的是,尽管利用面向连接的网络比利用当前在无连接网络中所采用的路由更容易达到这样的网络范围的目标,但是面向连接的网络不像无连接网络那样能够伸缩。
发明内容
通过本发明的方法和设备解决了现有技术中的多个缺陷,本发明中的方法和设备用于确定在网络中使用的路由表,该网络包含多个1类(type-one)节点和多个2类(type-two)节点,其中2类节点使用相应的(respective)2类路由表,所述2类路由表具有与网络的多个目的地节点中的每一个相关联的一个下一跳(next-hop)节点。所述方法包括:从1类节点和2类节点获得与网络的多个链路中的每一个相关联的链路状态信息,从1类节点和2类节点获得业务测量信息,以及使用链路状态和业务测量信息来确定用于相应的1类节点的1类路由表。以基本上协同的(coordinated)方式在整体上(as a group)确定1类路由表,并且每个1类路由表包括与目的地节点中的每一个相关联的多个下一跳节点。
附图说明
通过结合附图考虑下文中的详细描述,可以很容易理解本发明的教导,其中:
图1描绘了通信网络的高层次(high level)框图。
图2描绘了根据本发明的一个实施例的方法。
图3描绘了图1的通信网络的最短路径树的高层次框图。
图4描绘了图1的通信网络的灵活(flexible)节点处的能被单独路由的业务的高层次框图。
图5描绘了根据本发明的一个实施例的方法。
图6描绘了根据本发明的一个实施例的方法。
图7描绘了根据本发明的一个实施例的方法。
图8描绘了适于在执行在此所描述的功能中使用的通用计算机的高层次框图。
为了便于理解,尽可能地用相同的附图标记来指代附图中共有的相同元素。
具体实施方式
本发明使得通常在面向连接的网络中实现的业务管理功能得以在无连接网络中实现。本发明用灵活节点(例如灵活路由器)替代了网络中的一部分标准节点(例如标准路由器)。标准路由器包括标准业务路由能力(即最短路径路由)。标准节点使用由相应的标准节点在本地确定的路由表来针对给定目的地节点选择下一跳节点。灵活节点包括增强的业务路由能力(例如,在从多于一个下一跳节点中选择以用于将业务路由到目的地节点的过程中的附加灵活性)。灵活节点使用相应的路由表针对给定目的地节点选择多个下一跳节点之一,所述路由表由控制器通过使用从标准节点和灵活节点获得的信息在中心(centrally)确定。
在本发明中,与相应的灵活节点相关联的路由表由控制器确定。控制器从标准节点和灵活节点获得链路状态信息(例如通过使用一个或多个协议)。标准节点和灵活节点执行业务测量并向控制器提供业务测量信息。控制器使用链路状态和业务测量信息来为相应的灵活节点确定路由表。控制器以基本上协同的方式在整体上确定用于灵活节点的路由表。控制器将路由表分发至相应的灵活节点以用于对业务进行路由,从而通过跨越(across)相应灵活节点的组群的路由表实施协同的路由表改变而使控制器能够操纵网络内的业务。
本发明使网络能够处理意外的业务模式且同时保持无连接联网(networking)的伸缩性。换句话说,本发明保留了无连接网络的伸缩性和弹性,且同时通过适应性且动态地改变网络中的路由来适应不同的业务模式从而提供了管理业务的能力。在一个实施例中,以这样的方式来实施本发明以使得不需要对无连接网络中所使用的现有协议进行修改。在一个实施例中,以这样的方式来实施本发明以使得灵活节点与标准节点无缝互操作(interoperate)(即,增强的灵活节点向后兼容现有的标准节点)。
图1描绘了通信网络的高层次框图。特别地,图1的通信网络100包括网络110和控制器120。如图1中所描绘的那样,网络110包括多个标准路由器(SR),112S1、112S3-112S8、112S10-112S13和112S15(共同称为SR112S),以及多个灵活路由器(FR)112F2、112F9和112F14(共同称为FR112F)。SR112S和FR112F可以被共同表示为路由器112。SR112S和FR112F通常可以被分别称为2类节点和1类节点。路由器112操作为源节点、中间节点和目的地节点,用于在网络110内传输的业务。为了清楚起见,可以使用整数来标识每个路由器112(例如112S1、112S3-112S8、112S10-112S13和112S15被分别表示为节点1、3-8、10-13和15,而112F2、112F9和112F14被分别表示为2、9和14)。
如图1中所描绘的那样,路由器112使用多个通信链路(CL)114(共同称为CL114)来进行通信。在一个实施例中,每个CL114都是双向通信链路。在一个实施例中,CL114具有至少一个相关联的链路参数(例如链路权重、链路容量、链路带宽等以及它们的各种组合)。在一个实施例中,为了清楚起见,可以做出这样的假设:每个CL114都具有等于1的相关联链路权重。如图1中所描绘的那样,FR 112F使用多个管理链路(ML)122(共同称为ML122)来与控制器120进行通信。尽管如此,为了清楚起见,控制器120未被描绘为与SR112S进行通信,控制器120可以使用一个或多个链路与SR 112S直接通信、可以经由FR112F和相关联的CL114等间接通信等等,以及它们的各种组合。
SR 112S包括标准路由器(并且在此可被称为标准节点、非灵活路由器或非灵活节点),所述标准路由器可操作来利用标准逐跳分组转发机制。SR112S利用支持针对给定目的地节点的单个下一跳节点的路由表(通常被称为非灵活节点路由表或2类路由表)。在一个实施例中,例如,可以在标准开放最短路径优先(OSPF)网络中计算下一跳节点。在一个实施例中,SR 112S在网络110内广播网络信息(例如拓扑信息、链路状态信息、可用的链路带宽信息等等,以及它们的各种组合)。在一个实施例中,例如,SR 112S使用OSPF-链路状态通告(OSPF-LSA)和OSPF-业务工程(OSPF-TE)消息来广播网络信息。在一个这样的实施例中,SR 112S所广播的网络信息的至少一部分由控制器120所接收。
FR 112F包括增强路由器(并且在此被称为增强节点、灵活路由器或者灵活节点),所述增强路由器能够利用增强的分组转发机制进行操作。FR 112F利用支持针对给定目的地节点的多个下一跳节点的增强路由表(通常被称为灵活节点、灵活路由表或1类路由表)。FR112F所利用的增强路由表可以由控制器120计算。在一个实施例中,FR112F执行业务测量以产生业务测量信息。在一个这样的实施例中,业务测量信息可以包括注入(injected)业务信息、不可控业务信息等等,以及它们的各种组合。在一个实施例中,FR 112F向控制器120提供这样的业务测量信息。在一个实施例中,SR 112S不知道FR 112F的存在。
在一个实施例中,如果就给定目的地节点而言存在着多个下一跳,则FR 112F可以采用预先指定的(prespecified)方式将去往目的地节点的业务拆分到多个下一跳节点。存在若干种用于将去往目的地节点的业务拆分到多个下一跳节点的方法。在一个实施例中,可以采用以下方式将去往目的地节点的业务拆分到多个下一跳节点以确保不将给定业务流拆分到多个下一跳节点。在一个这样的实施例中,需要至少一个额外的业务测量以用于采用以下方式将去往目的地节点的业务拆分到多个下一跳节点以确保不将给定业务流拆分到多个下一跳节点。
如图1中所描绘的那样,控制器120为FR 112F确定路由表。在一个实施例中,控制器120利用来自于SR 112S和FR 112F的链路状态信息和来自于FR 112F的业务测量信息来为FR 112F确定路由表。在一个实施例中,为FR 112F确定路由表包括:动态修改FR 112F的现有的路由表。对与FR 112F相关联的现有路由表的动态修改使控制器120能够使FR 112F适应网络110中变化的业务状况。在一个实施例中,控制器120处理FR 112F的路由表以修改FR 112F的路由表中的至少一部分,以跨越FR 112F实现协同的业务路由改变,由此能够响应于网络110中变化的业务状况而实现有效的业务路由管理(例如,低延迟、低分组丢失等等)。
尽管本发明被描绘为包括特定配置、包括特定数目的SR 112S和FR112F,但是本发明可以被用于具有SR 112S和FR 112F的多种其他配置的通信网络。尽管被描绘为管理系统,在一个实施例中,控制器120可以被实施为路由器的一部分。在一个实施例中,控制器120可以被实施为SR 112S之一或FR 112F之一的一部分,或者可替换地,可以将控制器120的部分功能拆分到SR 112S或FR 112F各种组合。在一个实施例中,控制器120可以被实施为网络110内的路由器(未绘出)。在一个这样的实施例中,路由器可以被配置为仅接收用于计算灵活节点路由表的状态消息(即,路由器不对网络110内的业务进行路由)。
图2描绘了根据本发明的一个实施例的方法。特别地,图2中的方法200包括用于确定与相应的灵活节点相关联的路由表的方法。尽管是针对为多个灵活节点确定路由表来描述的,但是方法200可以被用于确定具有一个灵活节点的网络的路由表。尽管在此将其描述和描绘为连续执行,但是本领域技术人员将会意识到方法200中的至少一部分步骤可以被同时执行,或者以与图2中所示出的次序不同的次序执行。方法200开始于步骤202并继续至步骤204。
在步骤204,从非灵活节点和灵活节点接收链路状态信息。在一个实施例中,链路状态信息包括与通信链路相关联的链路权重。在一个这样的实施例中,可以使用OSPF-链路状态通告(OSPF-LSA)消息来接收链路权重。在一个实施例中,链路状态信息包括与通信链路相关联的链路容量(和/或可用的链路带宽)。在一个这样的实施例中,可以使用OSPF-业务工程(OSPF-TE)消息来接收链路容量。在一个实施例中,链路状态信息由中央控制器接收(说明性地,控制器120),所述中央控制器适于为灵活节点确定路由表。
在步骤206,从非灵活节点和灵活节点接收业务测量信息。在一个实施例中,业务测量信息包括链路利用信息。在一个实施例中,链路利用信息包括对网络中至少一部分链路中的每一个的利用的度量(measure)。在一个实施例中,每个灵活节点和非灵活节点测量与该节点直接连接的链路中的每一个的链路利用。在一个实施例中,链路利用可以被表示为相关联的链路的总链路容量的百分比。在一个实施例中,业务测量信息包括注入业务信息和不可控业务信息。
在一个实施例中,注入业务信息和不可控业务信息由相应的灵活节点确定。本说明书针对图3、图4、图5和图6描述和描绘了一种用于确定注入业务信息的示例性方法。本说明书针对图3、图4、图5和图7描述和描绘了一种用于确定不可控业务信息的示例性方法。在一个实施例中,中央控制器(说明性地,控制器120)接收业务测量信息,所述中央处理器适于为灵活节点确定路由表。
在步骤208,使用链路状态信息和业务测量信息来确定与相应的灵活节点相关联的路由表。在一个实施例中,与相应的灵活节点相关联的路由表可以在整体上被一起确定(即,在考虑与用于灵活节点组群中的每个其他灵活节点的每个其他路由表相关联的相应的至少一个特征的情况下,确定用于灵活节点组群中的每个灵活节点的每个路由表)。在一个实施例中,所述至少一个特征可以包括先前为相应的灵活节点计算的路由表、用于确定该组群中的每个其他灵活节点的每个其他路由表的当前处理和类似特征、参数和信息以及它们的各种组合等等。
在一个实施例中,灵活节点可以与灵活节点组群相关联。在一个实施例中,灵活节点可以与多个灵活节点组群相关联。在一个实施例中,中央控制器(说明性地,控制器120)保存灵活节点组群成员信息,该信息指示哪些灵活节点与哪个(哪些)灵活节点组群相关联。在一个这样的实施例中,可以采用协同的方式来确定与灵活节点组群中相应的灵活节点相关联的路由表,以使得通过确定和设置灵活节点的路由表,控制器因此能够操纵网络内的业务。
在一个实施例中,灵活节点路由表包括每个可能的目的地节点(包括非灵活节点和灵活节点)与多个下一跳节点的关联,这些下一跳节点可以由灵活节点选择以用于将与该目的地节点相关联的业务路由至该目的地节点。在一个实施例中,灵活节点路由表可以包括与针对每个目的地节点的每个下一跳节点相关联的关联业务拆分部分(例如,用于将目的地为给定目的地节点的业务流拆分到多个路径)。
在步骤210,路由表被传送至相应的灵活节点。在步骤212,由灵活节点和非灵活节点通过网络对业务进行路由。非灵活节点使用在本地确定的路由表来对业务进行路由,所述路由表为给定目的地节点识别一个下一跳节点。灵活节点使用在中心确定的路由表来对业务进行路由,所述路由表为给定目的地节点识别多个下一跳节点。在步骤214,方法200结束。
为了清楚起见,在描述对用于灵活节点的路由表的确定中,考虑以下表述。假设网络(说明性地,网络110)包括一组节点N(说明性地,路由器112),它们由一组直接链路E(说明性地,通信链路114)互相连接。假设网络包括n个节点和m个链路。定义这样的符号,其中:C
Figure A200780011941D0011160455QIETU
N表示灵活节点集合(说明性地,FR 112F),并且D=N\C表示非灵活节点集合(说明性地,SR 112S)。定义这样的符号,其中:w(e)表示链路e∈E的链路权重(例如OSPF链路权重),并且c(e)表示链路e∈E的链路容量(例如OSPF链路容量)。定义这样的符号,其中:f(e)表示链路e∈E上的业务流。所有链路e∈E上的业务流f(e)根据网络信息分配协议(例如OSPF-LSA、OSPF-TE等)对于控制器(说明性地,控制器120)而言是可用的。
定义这样的符号,其中:Tsd表示从源节点s∈N到目的地节点d∈N的业务速率。定义这样的符号,其中:节点u可以是非灵活节点u∈D或灵活节点u∈C。定义这样的符号,其中:Wud表示始发于灵活节点u∈C或者通过灵活节点u∈C的去往目的地节点d∈N的总业务量。注意,一般而言,Wud≥Tud。在一个实施例中,灵活节点u可操作来为每个目的地节点d测量总业务量Wud。在一个这样的实施例中,灵活节点u可操作来通过使用多种已知方法中的至少一种来测量总业务量Wud。在一个实施例中,用于所有源-目的地节点对(s,d)的业务速率Tsd不为控制器所知。
在一个实施例中,网络中的每个节点n计算去往网络中每个其他节点的最短路径。在一个这样的实施例中,节点u∈N处的路由表包括去往网络中的每个节点的最短路径上的下一跳。在该实施例中,定义这样的符号,其中:NH(u,d)表示节点u处针对目的地节点d而言的下一跳节点。换句话说,在该实施例中,NH(u,d)表示从节点u到目的地节点d的最短路径上的第一节点。为了清楚起见,假设对于所有非灵活节点u∈D而言,下一跳节点是唯一的,即,NH(u,d)对于每个非灵活节点u∈D而言,仅具有一个元素。
尽管在此主要针对其中对于每个非灵活节点u∈D而言下一跳节点是唯一的实施例进行描述,即,NH(u,d)对于每个非灵活节点u∈D而言仅具有一个元素,但是在各种其他实施例中,对于每个非灵活节点u而言可获得多个下一跳节点,即NH(u,d)对于每个非灵活节点u∈D而言具有一个或多个元素。换句话说,在一个实施例中,本发明可扩展至其中在节点之间存在可替换的最短路径的网络。在该实施例中,可以在可替换的最短路径之间拆分业务。在一个这样的实施例中,可以使用成本相等的多个路径来在可替换的最短路径之间拆分业务。此外,尽管NH(u,d)在此主要被描述为是根据所有非灵活节点u∈D的最短路径而计算的,但是只要没有路由环,就可以为每个灵活节点u∈C任意设置NH(u,d)。
图3描绘了图1的通信网络的最短路径树的高层次框图。特别地,图3描绘了图1的通信网络100的去往节点13的最短路径树300的高层次框图。如图3中所描绘的那样,被描绘为实线的多个链路310(共同称为链路310)表示去往节点13的最短路径树300。应当注意,最短路径树300包括这样的最短路径树:如果灵活节点如非灵活节点那样工作(即,如果灵活节点利用标准最短路径计算而不是增强的最短路径计算),则会出现这样的最短路径树。如图3中所描绘的那样,被描绘为虚线的多个可替换链路320(共同称为可替换链路320)表示与灵活节点相关联的可替换链路。为了清楚起见,假设链路310和可替换链路320具有等于1的相关联链路权重。
如图3中所描绘的那样,每个非灵活节点u∈D的下一跳节点NH(u,d)包括:NH(1,13)=2,NH(3,13)=2,NH(4,13)=9,NH(5,13)=12,NH(6,13)=10,NH(7,13)=10,NH(8,13)=9,NH(10,13)=13,NH(11,13)=13,NH(12,13)=13和NH(15,13)=14。如图3中所描绘的那样,灵活节点2∈C的下一跳节点NH(u,d)包括NH(2,13)=5(可替换路径)和NH(2,13)=11(最短路径);灵活节点9∈C的下一跳节点NH(u,d)包括NH(9,13)=7(可替换路径)和NH(9,13)=10(最短路径);而灵活节点14∈C的下一跳节点NH(u,d)包括NH(14,13)=10(可替换路径)和NH(14,13)=13(最短路径)。换句话说,灵活节点2可以将去往节点13的业务拆分到两个不同的下一跳节点5和11,灵活节点9可以将去往节点13的业务拆分到两个不同的下一跳节点7和10,而灵活节点14可以将去往节点13的业务拆分到两个不同的下一跳节点10和13。
为了清楚起见,在描述本发明中做出第一定义,其中:给定灵活节点集合C,如果对于j=1,2,...,k,(uj-1,uj)∈E,则从源节点s到目的地节点d的路径s=u0,u1,u2,...uk=d将被称作可行路径并且如果uj-1∈D,则uj=NH(uj-1,d)。其中u1,u2,...uk不同的可行路径被表示为可采纳(admissible)路径。源节点s和目的地节点d之间的可采纳路径集合被表示为Psd。根据此定义,如果就所有非灵活节点而言针对给定目的地的下一跳节点是由最短路径算法给出的,则路径是可行的,并且仅当其是非闭合的(loopless)时,可行路径才是可采纳路径。因而,源节点s与目标结点d之间的所有业务都必须在p∈Psd上被路由。
例如,如图3中所描绘的那样,路径3-2-5-12-13是从源节点3到目标结点13的可采纳路径。但是,该可采纳路径不是从源节点3到目的地节点13的最短路径。更确切地说,从源节点3到目的地节点13的最短路径是3-2-11-13,从源节点3到目的地节点13该最短路径仅需要3跳。尽管路径3-6-11-13从源节点3到目的地节点13仅需要3跳,但是其不是可采纳的,原因在于非灵活节点3的下一跳必须是最短路径上的下一跳,所述下一跳为节点2。
为了清楚起见,在描述本发明中,做出第二定义,其中:给定非灵活节点处的最短路径路由,从源节点行进到目的地节点而不经过(traverse)灵活节点的业务被称为不可控业务,而始发于灵活节点(即灵活节点是业务的源节点)上或在到达目的地节点之前经过至少一个灵活节点的业务被称为可控业务。换句话说,可控业务包括经过至少一个灵活节点的分组。因而,在灵活节点处存在至少一个操纵可控业务的路径的机会。
例如,从节点6到13的业务是沿着路径(6-10-13)路由的(可选地,通过OSPF),然而,因为节点6和节点10都不是灵活节点,所以从节点6到节点13的业务是不可控业务。类似地,从节点5(始发于节点5)到节点13的业务沿路径5-12-13路由,然而,因为节点5和节点12都不是灵活节点,所以从节点5到节点13的业务是不可控业务。与之对照,因为从节点8到13的业务通过灵活节点9,所以从节点8到13的业务是可控业务。与之相似,因为从节点15到13的业务通过灵活节点14,所以从节点15到13的业务是可控业务。
为了清楚起见,在描述本发明中做出第三定义,其中:如果(1)灵活节点u在用于分组的路由路径上(例如OSPF路由路径)并且(2)分组在经过任何其他灵活节点之前经过灵活节点u,则该分组被认为由灵活节点u∈C注入。由灵活节点u∈C注入的去往某一目的地节点d∈N的业务被表示为Iud。换句话说,对于所有的可控业务而言,存在着唯一的注入可控业务的灵活节点。向网络中注入业务的灵活节点可以是或者可以不是所注入的业务的源节点。在此将针对图4进一步描述该第三定义的细节。
图4描绘了图1的通信网络的灵活节点处的可独立路由的业务的高层次框图。总的来说,图4描绘了图3的最短路径树300的各部分的高层次框图。特别地,图4描绘了图3的链路310中的每一个,除了从每个灵活节点到目的地节点13的链路310(即,除从灵活节点2到节点11的链路、从灵活节点9到节点10的链路、从灵活节点14到13的链路之外)。如图4中所描绘的那样,每个节点旁边的数字表示始发于该节点去往目的地节点13的业务速率(或者,可替换地,业务量)。如图4中所描绘的那样,每个链路旁边的数字表示该链路上的业务速率(即,与最短路径树中指向节点13的每个下游节点相关联的业务速率的组合)。
如在此所描述的,定义如下符号,其中:Tsd表示从源节点s∈N到目的地节点d∈N的业务速率。如图4中所描绘的那样,节点1的业务速率为3(即(T1,13=3)),节点3的业务速率为4(即(T3,13=4)),节点4的业务速率为6(即(T4,13=6)),节点5的业务速率为1(即(T5,13=1)),节点6的业务速率为1(即(T6,13=1)),节点7的业务速率为6(即(T7,13=6)),节点8的业务速率为4(即(T8,13=4)),节点10的业务速率为4(即(T10,13=4)),节点11的业务速率为2(即(T11,13=2)),节点12的业务速率为3(即(T12,13=3)),节点14的业务速率为2(即(T14,13=2)),并且节点15的业务速率为3(即(T15,13=3)),
如在此所描述的,做出了第三定义,其中:如果(1)灵活节点u在用于分组的路由路径上并且(2)分组在经过任何其他灵活节点之前经过灵活节点u,则该分组被认为由灵活节点u∈C注入。由灵活节点u∈C注入的去往目的地节点d∈N的业务被表示为Iud。如图4所描绘的那样,从节点1和3到节点13的业务是由灵活节点2注入的(即I2,13=9,原因在于节点1提供的业务速率为3,节点3提供的业务速率为4,节点2提供的业务速率为2)。如图4中所描绘的那样,从节点4和8到节点13的业务是由灵活节点9注入的(即I9,13=13,原因在于节点4提供的业务速率为6,节点8提供的业务速率为4,节点9提供的业务速率为3)。如图4中所描绘的那样,从节点15到节点13的业务是由灵活节点14注入的(即I14,13=5,原因在于节点15提供的业务速率为3,节点14提供的业务速率为2)。
换句话说,如在此所描述的,如果Tsd的值对于所有源-目的地节点对(s,d)而言是已知的,则Iud的值可以被计算出。特别地,如果Tsd的值对于所有源-目的地节点对(s,d)而言是已知的,则可通过去除灵活节点的外出(egress)链路并且让路由协议(例如OSPF)对所有的要求进行路由直到到达灵活节点或目的地节点为止来计算Iud的值。在灵活节点处积聚的业务是由灵活节点注入的业务。如图4中所描绘的那样,I2,13=9,I9,13=13,并且I14,13=5。然而,控制器(说明性地,控制器120)不知道Tsd的值,更确切地说,在一个实施例中,控制器处唯一可得的测量值是Wud值(即通过节点u∈C去往目的地d的业务)。
如在此所描述的,因为可以被操纵的唯一业务是经过灵活节点的业务,在一个实施例中,可控业务和不可控业务之间产生了区别。如在此所描述的,Iud表示由灵活节点u∈C注入的去往目的地节点d∈N的业务,并且由灵活节点u所注入的业务仅沿着可采纳路径p∈Psd之一到达目的地节点d。定义这样的符号,其中:g(e)表示链路e∈E上的不可控业务流。尽管如果事先不知道源-目标业务速率值Tsd则可计算g(e),如在此所描述的,事先并不知道源-目的地业务速率值Tsd
如在此所描述的,在一个实施例中,控制器的目标是对可控业务进行路由,以使得链路处的分组丢失和分组延迟被最小化。在一个实施例中,因为链路处的分组丢失和分组延迟是链路利用的增函数,所以链路利用可用作链路处的分组丢失和分组延迟的替代(surrogate)。在一个这样的实施例中,控制器的目标是使网络中的链路的最大利用最小。在一个这样的公式表示中,可以求解为任意期望级别的准确度的变量可以是与路径P相关联的路径流。在一个这样的公式表示中,与路径P相关联的路径流可以被表示为x(P)。在一个这样的实施例中,控制器求解以下最优化问题,其中控制器尝试使最大链路利用(表示为Θ)最小:
Figure A200780011941D00161
                      方程1
Σ P ∈ P ud x ( P ) ≥ I ud ∀ u ∈ C d ∈ N                 方程2
x ( P ) ≥ 0 ∀ P                         方程3
第一组不等式(方程1)确保链路上的总流(total flow)(链路上的不可控流(表示为g(e)))与链路上的可控流(表示为∑x(P))之和)小于或等于最大链路利用(表示为Θ)与链路容量(表示为c(e))之积。第二组不等式(方程2)确保与灵活节点相关联的总注入业务是在网络中被路由的(即,确保用于每个灵活节点u∈C和目的地节点d之间的可采纳路径Pud的集合中的每个可采纳路径的链路上的可控业务之和(表示为∑x(P))大于或等于由灵活节点u∈C注入的去往目的地节点d∈N的业务(表示为Iud)。
在该最小-最大利用公式中,最大链路利用Θ的最优值是任何链路的最大利用,并且控制器尝试以使最大链路利用Θ最小的方式来求解该公式。在这个公式中,如果最大链路利用的最优值小于1(Θ<1),则没有链路被过度利用。在一个实施例中,由控制器来求解最小-最大利用公式。在一个实施例中,在求解该最优化问题之后,控制器为每个灵活节点确定与该灵活节点相关联的每个下一跳节点,并且为每个目的地节点确定与每个下一跳节点相关联的每个相关联的业务部分。
在一个实施例中,控制器使用每个灵活节点上的注入业务值Iud和每个链路上的不可控流g(e)来为相应的灵活节点确定路由表。在一个实施例中,控制器确定每个灵活节点上的注入业务值Iud和每个链路上的不可控流g(e)。在一个实施例中,可以使用网络信息(例如,网络拓扑信息、链路状态信息等等)和业务测量信息(例如,由灵活节点做出的并被从灵活节点传送到控制器的测量)确定每个灵活节点上的注入业务值Iud和每个链路上的不可控业务g(e)。
图5描绘了根据本实施例的一种方法。特别地,图5中的方法500包括用于确定与相应的灵活节点相关联的路由表的方法。尽管在此针对在适于为相应的灵活节点确定路由表的控制器上执行的操作进行描述,但是在一个实施例中,方法500的至少一部分步骤可以由相应的灵活节点执行。尽管被描述和描绘为连续执行,但是本领域技术人员将会意识到方法500的至少一部分步骤可被同时执行,或者以与图5中所示的次序不同的次序执行。方法500开始于步骤502,并继续至步骤504。
在步骤504,获得拓扑信息。在一个实施例中,拓扑信息是从与控制器相关联的至少一个数据库获得的。在一个实施例中,从非灵活节点和灵活节点接收拓扑信息。在步骤506,从非灵活节点和灵活节点接收链路状态消息。在一个实施例中,链路状态消息包括OSPF-LSA消息。在步骤508,为网络中的每个链路(即为每个链路e∈E)确定当前的链路权重。在步骤510,从非灵活节点和灵活节点接收链路业务工程消息。在一个实施例中,链路业务工程消息包括OSPF-TE消息。在步骤512,为网络中的每个链路(即为每个链路e∈E)确定当前的链路容量(即可用带宽)。
在步骤514,使用拓扑信息、当前链路权重和当前链路容量来确定由每个非灵活节点执行的当前路由。尽管没有绘出,但是在一个实施例中,可以通过获得相应的非灵活节点所利用的路由表来确定由每个非灵活节点执行的当前路由。在步骤516,确定每个灵活节点的当前路由。在一个实施例中,使用与每个相应的灵活节点相关联的先前确定的路由表来确定每个灵活节点的当前路由(例如,与灵活节点相关联的所确定的路由表可以由控制器存储)。
在步骤518,为网络中的每个链路确定总业务流f(e)。在一个实施例中,使用每个非灵活和每个灵活节点的当前路由来确定网络中每个链路的总业务流f(e)。在一个实施例中,给定当前的链路权重(例如OSPF-LSA链路权重)和当前链路容量(例如OSPF-TE链路容量),控制器可以为所有非灵活节点确定当前路由。在一个实施例中,因为控制器为相应的灵活节点计算了路由表,所以控制器知道用于所有灵活节点的当前路由(即,对于每个灵活节点而言,多个下一跳节点中的每一个,以及可选地,对于每个目的地节点而言,相关联的业务部分)。
在步骤520,针对网络中的每个目的地节点d(即针对每个目的地节点d∈N)并且针对网络中每个灵活节点u(即针对每个灵活节点u∈C)确定注入业务值Iud。在一个实施例中,注入业务值Iud可以由每个灵活节点确定,并且被作为处理后的业务测量信息的一部分传送至控制器。在一个实施例中,注入业务值Iud可以由控制器通过使用从每个灵活节点传送至控制器的原始业务测量信息来确定。在此针对图6描绘和描述用于确定注入业务值Iud的示例性方法。
在步骤522,为网络中的每个链路确定不可控业务g(e)。在一个实施例中,不可控业务流g(e)可以由每个灵活节点确定,并且被作为处理后的业务测量信息的一部分传送至控制器。在一个实施例中,不可控业务流g(e)可以由控制器通过使用从每个灵活节点传送至控制器的原始业务测量信息来确定。在此针对图7描绘和描述用于确定不可控业务g(e)的示例性方法。
在步骤524,为网络中的每个灵活节点确定路由表。在一个实施例中,使用每个非灵活和每个灵活节点的当前路由来确定每个路由表。在一个实施例中,使用总业务流f(e)、注入业务信息(Iud)和不可控业务信息(g(e))来确定每个路由表。在一个实施例中,以协同的方式在整体上为相应灵活节点中的每一个确定每个路由表。在该实施例中,对一个灵活节点的路由表的确定至少部分基于对多个其他灵活节点(例如,网络中的所有其他灵活节点,与相同灵活节点组相关联的其他灵活节点,跨越多个灵活节点组群的其他灵活节点等等,以及它们的各种组合)中的每个节点的路由表的确定。在步骤526,方法500结束。
图6描绘了根据本发明的一个实施例的方法。特别地,图6的方法600包括用于确定适于在为相应的灵活节点确定路由表的过程中使用的注入业务值的方法。尽管在此是针对在灵活节点上执行的操作进行描述的,但是在一个实施例中,方法600中的至少一部分步骤可以由适于为相应的灵活节点确定路由表的控制器来执行。尽管在此将其描述和描绘为连续执行,但是本领域技术人员将会意识到方法600中的至少一部分步骤可以被同时执行,或者以与图6中所示的次序不同的次序执行。方法600开始于步骤602并进行至步骤604。
在步骤604,选择灵活节点u∈C。在步骤606,选择目的地节点d∈N。在步骤608,灵活节点u测量经过节点u的去往目的地节点d(表示为经过业务值(traversed traffic value))的业务量Wud。经过业务值Wud指示经过灵活节点u的目的地为目的地节点d的业务量。在步骤610,为目的地节点d确定灵活节点次序以使得没有业务从灵活节点次序中靠后(later)的灵活节点流向灵活节点次序中的靠前(earlier)的灵活节点。在一个实施例中,使用灵活节点次序以便防止对于流向目的地节点d的业务形成路由环路。
在步骤612,将业务流单元从灵活节点u路由至目的地节点d。业务流单元可以包括任意业务量(例如,分组)。在步骤614,为灵活节点次序中的每个灵活节点w确定从灵活节点u到目的地节点d的单元流部分βw(u,d)。在步骤616,为灵活节点u和目的地节点d确定注入业务值Iud。在一个实施例中,注入业务值Iud被计算为以下二者之间的差:(1)经过业务值Wud和(2)在灵活节点次序中出现在灵活节点u之前的所有灵活节点w上的βw(u,d)Iud之和。
在一个实施例中,可以定义符号,其中:u<v表示以下事实:灵活节点u∈C在灵活节点次序中的位置在灵活节点v∈C之前。对于灵活节点次序中的第一灵活节点u∈C,去往目的地节点d的注入业务量等于始发于或经过灵活节点u∈C的去往目的地节点d∈N的总业务量(即Iud=Wud)。对于灵活节点次序中的第二灵活节点v∈C,将一个业务单元从灵活节点u路由至目的地节点d,并确定经过灵活节点v∈C的从灵活节点u∈C到目的地节点d的该业务单元的业务单元部分(表示为βv(u,d))。
对于该第二灵活节点v,去往目的地节点d的注入业务量等于以下二者之差:始发于或经过灵活节点v∈C的去往目的地节点d∈N的总业务量;下列的(1)与(2)之积:(1)经过灵活节点v∈C的从灵活节点u∈C到目的地节点d的业务单元的业务单元部分,和(2)由灵活节点u∈C所注入的去往目的地节点d的注入业务量(即Ivd=Wudv(u,d)Iud)。一般来说,可重复该过程以使得对于灵活节点次序中的灵活节点w∈C而言,由灵活节点w∈C所注入的去往目的地节点d的注入业务量Iwd可由下式给出:
Figure A200780011941D00201
方程4
在步骤618,确定是否已经考虑了最后的目的地节点(以用于计算Iud值)。如果尚未考虑最后的目的地节点,则方法600进行至620。在步骤620,选择另一目的地节点d(即不是先前为当前选择的灵活节点u所处理的目的地节点)。如果考虑了最后的目的地节点,则方法600进行至622。在步骤622,确定是否已经考虑了最后的灵活节点(以用于计算Iud值)。如果尚未考虑最后的灵活节点,则方法600进行至624。在步骤624,选择另一个灵活节点u(即不是先前所处理的灵活节点)。从步骤620到步骤624,方法600返回到步骤608。如果考虑了最后的灵活节点,则方法600进行至步骤626,其中方法600结束。
图7描绘了根据本发明的一个实施例的方法。特别地,图7的方法700包括用于确定适于在为相应的灵活节点确定路由表的过程中使用的不可控业务值的方法。尽管在此是针对在灵活节点上执行的操作进行描述的,但是在一个实施例中,方法700中的至少一部分步骤可以由适于为相应的灵活节点确定路由表的控制器来执行。尽管在此将其描述和描绘为连续执行,但是本领域技术人员将会意识到方法700中的至少一部分步骤可以被同时执行,或者以与图7中所示的次序不同的次序执行。方法700开始于步骤702并进行至步骤704。
在步骤704,针对每个目的地节点d∈N针对每个灵活节点u∈C确定注入业务值Iud。在一个实施例中,可以使用针对图6所描述和描绘的方法600来确定注入业务值Iud。在步骤706,为网络中的每个链路(即为每个e∈E)确定总业务流f(e)。在一个实施例中,可以使用网络中的每个非灵活节点的当前路由和每个灵活节点的当前路由来确定网络中的每个链路的总业务流f(e),如在此针对图5的方法500所描述和描绘的那样。
在步骤708,针对每个目的地节点d∈N在每个灵活节点u∈C处注入业务流单元。在步骤710,针对每个目的地节点d∈N针对每个灵活节点u∈C确定在链路e上路由的注入业务流单元的单元流部分αe(u,d)。单元流部分表示在链路e上路由的业务流单元的部分。在步骤712,为网络中的每个链路e确定不可控业务流g(e)。在一个实施例中,可以使用注入业务值Iud、总业务流f(e)和单元流部分αe(u,d)来确定不可控业务流值g(e)。在一个这样的实施例中,不可控业务流值g(e)可被计算为下列二者之差:(1)总业务流f(e)和(2)所有灵活节点u和所有目的地节点上的[αe(u,d)·Iud]之和(如方程5所示)。在步骤714,方法700结束。
g ( e ) = f ( e ) - &Sigma; u &Element; C &Sigma; d &alpha; e ( u , d ) I ud &ForAll; e &Element; E         方程5
尽管在此主要针对用于确定灵活节点路由表的业务控制问题的特定公式(即上文中所描述的最小-最大利用公式)而进行描述和描绘,其中控制器对业务进行路由以使网络中每个通信链路的最大链路利用Θ最小,但是在一个实施例中,可以针对灵活节点路由表的确定来开发各种其他业务控制问题的公式。在一个这样的实施例中,业务控制问题的基本类似的公式涉及保持与通信链路相关联的链路容量基本固定且同时以使注入业务与固定的链路容量相匹配的方式对注入业务进行缩放(scale)。
在一个该缩放公式的实施例中,控制器的目标是使网络吞吐量(用λ表示)最大。在该缩放公式的一个实施例中,可以求解为任意期望级别准确度(例如使用原始对偶算法)的变量包括与路径P相关联的路径业务(用x(P)表示)。在该缩放公式中,如果网络吞吐量λ的最优值大于1(λ>1),则可以在灵活节点处对当前业务进行路由,而所有的链路利用都小于1。换句话说,该缩放公式的最优解是最小-最大利用公式的最优解的倒数(inverse)。在一个实施例中,控制器对以下的最优化问题进行求解以尝试使网络吞吐量λ最大:
Figure A200780011941D00212
                     方程6
&Sigma; P &Element; P ud x ( P ) &GreaterEqual; &lambda;I ud &ForAll; u &Element; C d &Element; N                 方程7
x ( P ) &GreaterEqual; 0 &ForAll; P                       方程8
在一个实施例中,该缩放公式由控制器来求解。在一个实施例中,控制器计算每个灵活节点上的注入业务值Iud和每个链路上的不可控业务g(e)。在一个实施例中,可以使用网络信息(例如网络拓扑信息、链路权重信息、链路容量信息和控制器从灵活节点和非灵活节点中每一个接收的类似信息)和灵活节点信息(例如由灵活节点测量并被从灵活节点传送到控制器的业务测量信息)来计算每个链路上的不可控流g(e)和每个灵活节点上的注入业务值Iud
尽管在此所描述的先前实施例中,网络内的灵活节点的相应数目和位置都是固定的,但是在一个实施例中,可以选择网络内的灵活节点的相应数目和位置。在一个这样的实施例中,给定非灵活节点的网络,可以选择一部分非灵活节点以使其由灵活节点替代(即,确定要替代的非灵活节点的数目以及确定要替代哪些非灵活节点)。在确定网络中的灵活节点的数目和位置之后,控制器可以求解动态路由问题,以根据网络中的业务模式来确定灵活节点处的业务路由(即,确定与灵活节点相关联的灵活节点路由表)。
如在此所描述的,利用灵活节点的网络的性能优于无灵活节点的网络。实际上,通过用灵活节点来替代网络中的一部分非灵活节点所获得的网络性能改善取决于网络内灵活节点的数目和位置。一般来说,对灵活节点位置的最优选择取决于网络业务矩阵(事先不能准确知道)。在一个实施例中,可以独立于网络业务矩阵来选择灵活节点位置。在另一实施例中,可以根据对网络业务矩阵的估计来选择灵活节点位置。
如在此所描述的,在一个实施例中,可以根据对网络业务矩阵的估计来选择灵活节点位置。在一个这样的实施例中,可以做出各种假设以简化对灵活节点位置的选择。在一个实施例中,假设灵活节点的数目(用h表示)是已知的。在一个实施例中,假设已知试验性(tentative)业务矩阵(用T表示,其中Tsd表示用于源节点s∈N与目的地节点d∈N之间的业务的试验性业务矩阵)。一般而言,网络中的实际业务偏离试验性业务矩阵T。在一个实施例中,试验性业务矩阵T可以被用于确定网络内h个灵活节点的布置(即,确定灵活节点位置)。
在一个公式中,灵活节点集合C上的业务矩阵T的吞吐量被定义为最大标量λ以使得能够沿容许(permissible)路径在网络中对λT进行路由。在该公式中,吞吐量可被表示为λ(T,C)。在一个这样的实施例中,其中C=0对应于网络中没有节点是灵活节点的情况;而C=N对应于网络中的每个节点都是灵活节点的情况,λ(T,0)≤λ(T,C)≤λ(T,N)。在一个实施例中,可以通过求解网络上的最大并发(concurrent)流问题来计算λ(T,N)。在一个实施例中,给定业务矩阵T和灵活节点的数目h,目标是确定(针对C:|C|=h)确定最大吞吐量λ(T,C)。
在一个实施例中,递增贪婪(incremental greedy)算法可用于求解该吞吐量最大化公式。在一个这样的实施例中,算法限定了灵活节点的集合(最初是空集),并且在该算法的每个步骤中,提供最大的吞吐量增加的灵活节点被添加到该灵活节点的集合中,直到该灵活节点的集合包括了h个灵活节点。在一个实施例中,可以使用组合的完全多项式时间近似方案(FPTAS)来求解该吞吐量最大化公式,以便为任何预先指定的ε值在(1+ε)的最优解内确定解。
在一个实施例中,其中的目标是确定λ的最大值以使得可以在网络中对λT进行路由,吞吐量最大化公式类似于缩放公式(在上文中描述),其中对于所有e∈E而言g(e)=0(对于方程5),并且Isd由Tsd替代(对于方程6)。在一个这样的实施例中,链路权重I(e)可以与链路e∈E相关联,并且目标是在所有源-目的地节点对之间的加权最短的容许路径的总和大于1的限制下使得∑ec(e)I(e)最小。
图8描绘了适于用于执行在此所描述的功能的通用计算机的高层次框图。如图8中所描绘的那样,系统800包括处理器部件802(例如CPU)、存储器804(例如随机存取存储器(RAM)和/或只读存储器(ROM)、路由表控制模块805以及各种输入/输出设备806(例如存储设备,包括但不限于磁带驱动器(tape drive)、软盘驱动器、硬盘驱动器或光盘驱动器、接收机、发射机、扬声器、显示器、输出端口和用户输入设备(例如键盘、小键盘、鼠标等等))。
应当注意,可以采用软件和/或软件和硬件的组合来实施本发明,例如,使用专用集成电路(ASIC)、通用计算机或任意其他硬件等价物。在一个实施例中,本路由表控制模块或过程805可被加载到存储器804中并且由处理器802执行以实施上述功能。同样,本发明的路由表控制过程805(包括相关联的数据结构)能够被存储在计算机可读介质或载体上,例如RAM存储器、磁性或光学驱动器或磁盘等等。
尽管在此主要针对其中为相应的多个灵活节点确定多个路由表的网络来进行描述,其中每个灵活节点属于一个灵活节点组群,但是在一个实施例中,可以为属于相应的多个不同的灵活节点组群的相应多个灵活节点确定路由表。在一个实施例中,尽管可以采用协同的方式在相应的灵活节点组群中的每一个之内执行为每个灵活节点组群中的灵活节点确定路由表,但是可以不采用协同的方式跨越相应的灵活节点组群执行为每个灵活节点组群中的灵活节点确定路由表。
在一个实施例中,其中采用协同的方式在相应的灵活节点组群中每一个之内执行为每个灵活节点组群中的灵活节点确定路由表,还可以采用协同的方式跨越至少一部分灵活节点组群、跨越灵活节点组群的多种组合等等、以及跨越它们的各种组合执行为每个灵活节点组群中的灵活节点确定路由表。因而,本发明并非意在限于:灵活节点分组群、为灵活节点组群内的各种灵活节点确定路由表、跨越灵活节点组群的各种组合为各种灵活节点确定路由表等等、以及它们的各种组合。
尽管在此主要针对标准路由器(在此也被称为非灵活路由器)和增强路由器(在此也被称为灵活路由器)来进行描述,但是本发明可用于为各种其他网络部件确定路由表。因而灵活路由器在此也被称为1类路由器(或可替换地,1类节点),而非灵活节点在此也被称为2类路由器(或可替换地,2类节点)。同样,本发明并不意在限于特定类型的可以跨越网络对业务进行路由的网络部件。
尽管在此主要针对特定网络配置进行描述,但是本发明可以被用在具有各种其他网络配置的网络中。尽管在此主要针对基于MPLS/IP的网络进行描述,但是本发明可以被用于采用各种其他协议组合的通信网络中。尽管在此主要针对路由器进行描述,但是本发明可以被用在包括各种其他节点类型的通信网络中。同样,本发明并不意在限于网络配置、网络协议、网络节点类型以及类似的可配置的网络参数以及它们的各种组合。
尽管在此详细展示和描述了结合了本发明的教导的多种实施例,但是本领域技术人员可以很容易设计出许多其他结合了这些教导的不同实施例。

Claims (10)

1.一种用于确定在网络中使用的路由表的方法,所述网络包括多个1类节点和多个2类节点,所述2类节点使用相应的2类路由表,所述2类路由表包括与多个目的地节点中的每一个相关联的一个下一跳节点,所述方法包括:
从1类节点和2类节点获得与网络的多个链路中的每一个相关联的链路状态信息;
从1类节点和2类节点获得业务测量信息;以及
使用链路状态和业务测量信息确定用于相应的1类节点的多个1类路由表,以基本上协同的方式在整体上确定用于1类节点的1类路由表,每个1类路由表包括与目的地节点中的每一个相关联的多个下一跳节点。
2.根据权利要求1所述的方法,其中链路状态信息包括链路权重信息和链路容量信息。
3.根据权利要求1所述的方法,其中业务测量信息包括可控业务信息或不可控业务信息之一、链路利用信息和注入业务信息。
4.根据权利要求1所述的方法,其中确定1类路由表中的每一个包括:
为1类节点和来自于所述多个2类节点的至少一个目的地节点的每个组合确定包括由1类节点注入的业务量的注入业务值;
为耦合至1类节点的至少一个链路中的每一个确定不可控业务值;
使用注入业务值和不可控业务值来确定1类路由表。
5.根据权利要求4所述的方法,其中为1类节点和至少一个目的地节点的每个组合确定注入业务值包括:
为1类节点和至少一个目的地节点的每个组合确定经过业务值,每个经过业务值包括经过1类节点的、目的地为至少一个目的地节点的业务量;以及
使用经过业务值确定注入业务值。
6.根据权利要求4所述的方法,其中为1类节点和至少一个目的地节点的每个组合确定注入业务值包括:
为1类节点和至少一个目的地节点的每个组合确定经过业务值;
确定第一单元流部分,所述第一单元流部分包括从1类节点经过中间节点到至少一个目的地节点的单元流的部分;以及
使用经过业务值和第一单元流部分来确定注入业务值。
7.根据权利要求4所述的方法,其中为耦合至1类节点的至少一个链路中的每一个确定不可控业务值包括:
为所述至少一个链路中的每一个确定总流;
为所述至少一个链路中的每一个确定第二单元流部分;以及
使用总流、第二单元流部分和注入业务值来确定不可控业务值。
8.根据权利要求7所述的方法,其中为至少一个链路中的每一个确定总流包含:
从多个节点中的每一个获得拓扑信息;
获得与所述至少一个链路中的每一个相关联的链路权重信息;
使用拓扑信息和与所述至少一个链路中的每一个相关联的链路权重信息来为至少一个链路中的每一个确定总流。
9.一种用于确定在网络中使用的路由表的设备,所述网络包括多个1类节点和多个2类节点,所述2类节点使用相应的2类路由表,所述2类路由表包括与多个目的地节点中的每一个相关联的一个下一跳节点,所述设备包括:
用于从1类节点和2类节点获得与网络的多个链路中的每一个相关联的链路状态信息的装置;
用于从1类节点和2类节点获得业务测量信息的装置;以及
用于使用链路状态和业务测量信息确定用于相应的1类节点的多个1类路由表的装置,其中以基本上协同的方式在整体上确定用于1类节点的1类路由表,每个1类路由表包括与目的地节点中的每一个相关联的多个下一跳节点。
10.一种用于在网络中的多个1类节点之一处对业务进行路由的方法,所述网络包括多个1类节点和多个2类节点,所述2类节点使用相应的2类路由表,所述2类路由表包括与多个目的地节点中的每一个相关联的一个下一跳节点,所述方法包括:
使用相关联的1类路由表在1类节点之一处对业务进行路由,所述1类路由表包括与目的地节点相关联中的每一个相关联的多个下一跳节点;
其中使用来自于1类节点和2类节点的链路状态信息和业务测量信息来确定包括与1类节点之一相关联的1类路由表的多个1类路由表,以基本上协同的方式在整体上确定用于1类节点的1类路由表。
CNA2007800119413A 2006-03-30 2007-03-19 用于无连接网络中的改进的路由的方法和设备 Pending CN101416455A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/394,356 US7398438B2 (en) 2006-03-30 2006-03-30 Method and apparatus for improved routing in connectionless networks
US11/394,356 2006-03-30

Publications (1)

Publication Number Publication Date
CN101416455A true CN101416455A (zh) 2009-04-22

Family

ID=38655976

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007800119413A Pending CN101416455A (zh) 2006-03-30 2007-03-19 用于无连接网络中的改进的路由的方法和设备

Country Status (5)

Country Link
US (1) US7398438B2 (zh)
JP (1) JP2009532941A (zh)
KR (1) KR20080114774A (zh)
CN (1) CN101416455A (zh)
WO (1) WO2007126616A2 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102959908A (zh) * 2010-11-22 2013-03-06 日本电气株式会社 用于控制分组流的转发路径的通信系统、通信设备、控制器和方法以及程序
CN103139068A (zh) * 2011-11-28 2013-06-05 华为技术有限公司 转发报文的方法、路由器和系统
CN104509045A (zh) * 2012-07-26 2015-04-08 日本电气株式会社 控制装置、通信系统、通信方法和程序
CN106470160A (zh) * 2015-08-19 2017-03-01 华为技术有限公司 一种信息传输的方法及网络节点
US10764161B2 (en) 2016-02-05 2020-09-01 Huawei Technologies Co., Ltd. Method for traffic engineering in communications network and controller
CN114884861A (zh) * 2022-07-11 2022-08-09 军事科学院系统工程研究院网络信息研究所 一种基于网内计算的信息传输方法和系统

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398438B2 (en) 2006-03-30 2008-07-08 Lucent Technologies Inc. Method and apparatus for improved routing in connectionless networks
US7787381B2 (en) * 2006-12-13 2010-08-31 At&T Intellectual Property I, L.P. Methods and apparatus to manage network transport paths in accordance with network policies
US7830834B2 (en) * 2007-03-22 2010-11-09 Eaton Corporation Wireless communication network including network coordinator assigning time slots and channels to nodes to provide collision-free schedules and data aggregation method for the same
US7898985B1 (en) * 2008-04-23 2011-03-01 Juniper Networks, Inc. Composite next hops for forwarding data in a network switching device
EP2277289A1 (en) * 2008-05-12 2011-01-26 Telefonaktiebolaget L M Ericsson (PUBL) Re-routing traffic in a communications network
US8014317B1 (en) 2008-08-21 2011-09-06 Juniper Networks, Inc. Next hop chaining for forwarding data in a network switching device
US8400945B2 (en) * 2008-09-10 2013-03-19 Cisco Technology, Inc. Transit prevention in hub-and-spoke topologies using link state protocols
US8630185B1 (en) * 2011-09-15 2014-01-14 Google Inc. Optimizing traffic in a data network
US8699350B1 (en) 2011-09-15 2014-04-15 Google Inc. Optimizing traffic in a data network
CN104969655B (zh) * 2013-02-14 2019-04-12 三菱电机株式会社 数据发布系统、发布装置、终端装置、数据发布方法
US20150382278A1 (en) * 2014-06-25 2015-12-31 Michael F. Fallon Techniques for Generating a Routing Table for a Mesh Network Having Ad Hoc Connections
US9807019B2 (en) 2015-03-30 2017-10-31 Alcatel Lucent Offline optimization for traffic engineering with segment routing
GB201706475D0 (en) * 2017-04-24 2017-06-07 Microsoft Technology Licensing Llc Communications network node
US11405284B1 (en) * 2020-06-23 2022-08-02 Amazon Technologies, Inc. Generating network link utilization targets using a packet-loss-versus-link utilization model

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5377262A (en) * 1991-12-30 1994-12-27 At&T Corp. Telecommunication switching system having adaptive routing switching nodes
DE4209906C1 (de) * 1992-03-26 1993-10-21 Siemens Ag Verfahren zur Leitweglenkung von Fernmeldeverbindungen in einem vermaschten Netz
US5430729A (en) * 1994-04-04 1995-07-04 Motorola, Inc. Method and apparatus for adaptive directed route randomization and distribution in a richly connected communication network
US5805593A (en) * 1995-09-26 1998-09-08 At&T Corp Routing method for setting up a service between an origination node and a destination node in a connection-communications network
JP3001410B2 (ja) * 1996-03-28 2000-01-24 日本電気テレコムシステム株式会社 自動迂回ルーティング方式
US5987011A (en) * 1996-08-30 1999-11-16 Chai-Keong Toh Routing method for Ad-Hoc mobile networks
US6304556B1 (en) * 1998-08-24 2001-10-16 Cornell Research Foundation, Inc. Routing and mobility management protocols for ad-hoc networks
US6980537B1 (en) * 1999-11-12 2005-12-27 Itt Manufacturing Enterprises, Inc. Method and apparatus for communication network cluster formation and transmission of node link status messages with reduced protocol overhead traffic
US20020174246A1 (en) 2000-09-13 2002-11-21 Amos Tanay Centralized system for routing signals over an internet protocol network
KR100411251B1 (ko) 2001-11-28 2003-12-18 한국전자통신연구원 제한조건을 만족하는 다중 경로 배정방법
US20040049595A1 (en) 2001-12-04 2004-03-11 Mingzhou Sun System for proactive management of network routing
US6744740B2 (en) * 2001-12-21 2004-06-01 Motorola, Inc. Network protocol for wireless devices utilizing location information
US7376121B2 (en) 2003-06-06 2008-05-20 Microsoft Corporation Method and system for global routing and bandwidth sharing
US7398438B2 (en) 2006-03-30 2008-07-08 Lucent Technologies Inc. Method and apparatus for improved routing in connectionless networks

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9497118B2 (en) 2010-11-22 2016-11-15 Nec Corporation Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
US9203754B2 (en) 2010-11-22 2015-12-01 Nec Corporation Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
US9231868B2 (en) 2010-11-22 2016-01-05 Nec Corporation Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
CN102959908A (zh) * 2010-11-22 2013-03-06 日本电气株式会社 用于控制分组流的转发路径的通信系统、通信设备、控制器和方法以及程序
US10541920B2 (en) 2010-11-22 2020-01-21 Nec Corporation Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
US11134012B2 (en) 2010-11-22 2021-09-28 Nec Corporation Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
CN103139068A (zh) * 2011-11-28 2013-06-05 华为技术有限公司 转发报文的方法、路由器和系统
CN103139068B (zh) * 2011-11-28 2015-12-09 华为技术有限公司 转发报文的方法、路由器和系统
CN104509045A (zh) * 2012-07-26 2015-04-08 日本电气株式会社 控制装置、通信系统、通信方法和程序
CN106470160A (zh) * 2015-08-19 2017-03-01 华为技术有限公司 一种信息传输的方法及网络节点
US10764161B2 (en) 2016-02-05 2020-09-01 Huawei Technologies Co., Ltd. Method for traffic engineering in communications network and controller
CN114884861A (zh) * 2022-07-11 2022-08-09 军事科学院系统工程研究院网络信息研究所 一种基于网内计算的信息传输方法和系统
CN114884861B (zh) * 2022-07-11 2022-09-30 军事科学院系统工程研究院网络信息研究所 一种基于网内计算的信息传输方法和系统

Also Published As

Publication number Publication date
KR20080114774A (ko) 2008-12-31
JP2009532941A (ja) 2009-09-10
US20070263592A1 (en) 2007-11-15
WO2007126616A3 (en) 2008-03-06
WO2007126616A2 (en) 2007-11-08
US7398438B2 (en) 2008-07-08

Similar Documents

Publication Publication Date Title
CN101416455A (zh) 用于无连接网络中的改进的路由的方法和设备
US11627094B2 (en) Scalable network slice based queuing using segment routing flexible algorithm
Bera et al. FlowStat: Adaptive flow-rule placement for per-flow statistics in SDN
RU2541940C2 (ru) Способ применения экземпляра службы к сети mpls (варианты) и сеть mpls
US9379971B2 (en) Method and apparatus for determining paths between source/destination pairs
Vissicchio et al. On the co-existence of distributed and centralized routing control-planes
Mérindol et al. An efficient algorithm to enable path diversity in link state routing networks
US9166903B2 (en) System, method and apparatus to resolve RPF-vector attribute conflicts
CN104871490A (zh) 能够改进能量使用效率的多径通信装置及其用于改进能量使用效率的业务分配方法
US10560367B2 (en) Bidirectional constrained path search
CN107342939A (zh) 传输数据的方法和装置
CN104601473A (zh) 一种带约束的多目标路径的路由生成方法及系统
Song et al. FCNR: Fast and consistent network reconfiguration with low latency for SDN
JP4589978B2 (ja) 経路設定方法および経路設定装置
CN114866454A (zh) 基于约束网络拓扑切片的服务区分
Wang et al. A design method to select optimal routes and balance load in wireless communication networks
Chamania et al. A comparative performance analysis of IP traffic offloading schemes over dynamic circuits
Zhao et al. QoS multi-path routing scheme based on ACR algorithm in industrial ethernet
US20230068443A1 (en) Dynamic packet routing using prioritized groups
Xu et al. Software defined mobile multicast
WO2023160124A1 (zh) 确定路径的方法和装置
Akram¹ et al. Routing via MST K-Algorithm in Access Mesh Networks for IPTV Reliability
CN115208809A (zh) 确定路径的方法和装置
Nagy Novel Network Optimization and Data Compression Methods
EP4111670A1 (en) Distributed load balancing in a multi-domain network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication