在通信系统中保留资源的装置、方法和计算机程序的制作方法

文档序号:7852970阅读:191来源:国知局
专利名称:在通信系统中保留资源的装置、方法和计算机程序的制作方法
技术领域
总的来说,本发明涉及通信系统,特别涉及在所述通信系统内的资源保留(resource reservation)。
背景技术
传统通信系统或网络包括通过互连介质耦接的多个节点。通过被称为“源节点”的一个节点向被称为“目的地节点”的另一个节点发送数据来进行通信。为了保持特定的服务质量(QoS),所述目的地节点必须保留足够的资源以处理数据而不会有不该有的延迟。事实上,不仅目的地节点必须保留足够的资源,而且数据在到达其目的地之前必须遍历的任何中间节点也必须保留足够的资源,以保证在这些中间节点内及时处理数据。例如,所述节点必须具有足够的存储空间以在处理之前缓冲数据。如果不能获得足够的缓冲,则所述节点可能不得不丢弃数据。在这个示例中,存储器是一种资源。但是,一般来说,资源可以是用于接收和处理数据所需要的任何东西。因此,资源可以包括存储空间、处理器周期、链路、带宽等。
现有技术提供了用于管理通信网络内的数据流的几种流控制建议。资源管理是所述流控制方法的组成部分。所述现有技术的流控制建议包括Braden等人的Resource Reservation Protocol(RSVP),IETF RFC 2205,September 1997(资源保留协议,因特网工程任务组请求注解2205,1997年9月)。RSVP提供了对于资源保留的接收器启动设置。换句话说,所述目的地节点根据由源节点发送的消息来保留资源。RSVP协议可以被主机用来从网络请求带宽以用于数据流。RSVP通常被路由器用来向沿着流的一个路径或多个路径的所有节点递送带宽请求。发布RSVP的节点也可以请求确认以保证请求已经被安装在网络中。缺点之一是RSVP协议保留仅仅用于较简单的流的资源。换句话说,RSVP在仅仅一个方向上请求资源。为此,RSVP将一个发送者(源)当作在逻辑上是与接收者(目的地)不同的,即使同一应用处理过程可以同时作为发送者和接收者也是如此。
在被称为“基于基础(rate base)”的另一种流控制方案中,经由从目的地到源的反馈信号来控制数据被允许从源递送到目的地的速率。如果资源在目的地可用,则源可以无限制地发送数据。如果在目的地的资源缺少或不可用,则发送速率被完全限制到截止点(point of cut off)。一种这样的速率基础技术被描述在第94-0735号ATM文档中,其标题为“Enhanced Proportional RateControl Algorithm(增强的比例速率控制算法)”,作者为Larry Roberts,1994年8月。
在被称为“基于信用控制(credit base control)”的另一种流控制方案中,目的地节点产生并向源节点转发“信用”,所述源节点只有当数据具有显著的信用时才可能转移它。所述信用反映了目的地节点处理数据的能力。一种这样的信用基础控制系统在第94-0632号ATM论坛文档中得到说明,其标题为“Credit-Based Proposal for ATM Traffic Management(用于ATM通信量管理的基于信用的建议)”,作者为Hunt等,1994年7月。
现有技术讨论了在两个节点之间的关系以及目的地节点供源节点使用的资源分配,但是未提供将此扩展到遍及多个互连节点的保留资源的方式。

发明内容
本发明提供了按照权利要求1中所述的方法。
优选的是,本发明的资源保留系统包括权标产生单元,用于产生被称为“分隙权标(SLT)”的特殊消息,所述SLT被发送到网络中的所有节点。SLT包括多个子字段,每个子字段与网络中的一个节点相关联。每个子字段承载用于节点中的每个输入端口的一个标识和用于指示在端口可用的资源的一个值。
优选的是,向每个节点提供一个资源控制单元(RCU),用于监控节点中的输入端口和经由SLT向其他节点传递用于每个输入端口的可用资源。RCU也在所述RCU可能希望向其发送数据的其他节点中保留资源。SLT可以在专用于发送SLT的路径中或在在节点之间传送数据的互连的路径中传播。在其第一次通过时,每个节点中的RCU在关于输入端口的SLT中保留的空间中输入(写入)关于那个输入端口的可用资源。在写入关于其所有输入端口的信息时,SLT被转发到进行相同操作的另一个节点。处理继续直到网络中的所有节点成为SLT中的记录项(entry)。在SLT第一次或后续通过时,每个RCU通过从记录在与特定端口相关联的空间中的值减去资源来保留所需要的所述特定输入端口中保留的资源。
因此,本发明提供了多个节点之间的协调,因为一个消息用于在所有节点之间传送关于资源可用性的信息,并且节点能够通过调整关于所述消息中的资源可用性的信息来保留资源。


现在通过仅仅参照下列附图的示例,来详细说明本发明的优选实施例图1示出了按照本发明的教导的分散式带外资源保留系统的方框图;图2示出了按照本发明的教导的分隙权标(SLT)格式的图示;图3示出了关于权标产生单元(TGU)中的逻辑的流程图;图4是关于资源控制单元(RCU)中的逻辑的流程图;图5示出了按照本发明的教导的分散式带内资源保留单元的方框图。
为了简化说明,在附图中,相同的元件被以相同的名称、数字或其他符号识别。
具体实施例方式
图1示出了按照本发明的教导的资源保留通信系统的方框图。所述资源保留通信系统包括通信子系统和资源保留子系统。所述通信子系统包括节点Node:0,Node:1,...,Node:(N-1)。所述节点通过互连介质12耦接在一起。所述通信子系统可以采用多种不同的形式。例如,所述通信子系统可以是诸如路由器之类的盒子,每个节点是路由器中的一个刀片(blade)。
在这样的一个实施例中,所述互连介质12可以是路由器中的底板,承载用于在各自刀片之间发送数据的总线或光通道。同样,所述通信子系统可以是多个盒子,每个盒子表示一个节点,所述多个箱子通过诸如局域网(LAN)之类的互连介质12或诸如因特网之类的其他类型的通信干线等互连。换句话说,所述通信子系统可以是数据需要从其中的一个单元转移到另一个单元的任何网络。
参考图1和5,在通信子系统中的每个节点具有一个或多个输入端口和一个或多个输出端口。具体地说,Node:0具有被标为InP:0的输入端口和被标为OP:0和OP:1的输出端口。以类似的方式,Node:1和Node:(N-1)具有被标为如图所示的适当的输入和输出端口。作为一般原则,通过箭头示出资源保留通信系统10中的数据流的方向。沿着互连介质12来传送诸如Node:0和Node:(N-1)之类的节点之间的数据传输。每个输入端口和输出端口配备一个在附图中被示为3边形符号的缓冲器。所述3边形符号中的水平线表示被放置在缓冲器中的数据栈或队列。也可以使用其他类型的符号来表示所述缓冲。
仍然参考图1和5,所述资源保留子系统包括被嵌入在每个节点中的资源控制单元和通过通信媒体14(图1)或互连介质12(图5)互连的权标产生单元。通信媒体14可以是在其上传输由权标产生单元产生的、被称为“分隙权标(Slotted Token)”的消息(后述)的任何传输介质。应当注意,在图1中,在诸如通信媒体14之类的专用传输路径上传输分隙权标,而在图5中,在也传输数据的互连介质12上传输分隙权标。由资源控制单元(RCU)执行的功能包括监控这样的节点中的输入端口,在所述节点中,嵌入RCU并且RCU向其他节点传递关于其输入端口的可用资源。RCU也负责在需要向其发送用于处理的数据的其他节点中保留资源。RCU通过从在关于特定节点的分隙权标(SLT)中承载的值减去期望的量来在另一个节点中保留资源。所述权标产生单元(TGU)产生被称为“分隙权标”的特殊消息,所述特殊消息继而被发送到在系统内的所有资源控制单元。即使权标产生单元在图1和5中被示出为独立的单元,TGU的功能也可以与节点RCU集成,从而消除对独立TGU的需要。
现在参考图1、2和5,分隙权标16包括多个子字段,每个子字段承载与系统中的一个节点相关的信息。现在转向图2,被标为Node:0 info的第一子字段承载与Node:0相关的信息。同样,被标为Node:1 Info的子字段承载关于Node:1的信息,依此类推。所述子字段中的信息包括表示与那个节点相关联的输入端口的标识(i.d.)的标记和在那个输入端口可用的资源。具体参考图2,关于Node:0的第一子字段具有用于承载那个端口的标识的、被标为InP:0的分区,以及用于承载在那个输入端口可用的资源的、被标为AvResInP0的分区,。同样,对于Node1,存在被标为InP:1、InP:2、InP:3的三个输入端口,关于每个输入端口的可用资源记录在与输入端口标识相邻的空间中。利用正在传播的这个分隙权标消息,资源控制单元可以在为那个端口分配的空间中输入端口号和相关联的资源。同样,所述资源控制单元可以通过下列方式来在其他端口中保留资源调整可用资源以指示节点要另一个节点保留的资源,以便处理来自请求节点的数据。Node:(N-1)的分区类似于其他节点,不再进一步说明。
图3示出了用于图解权标产生单元的操作的流程图。方框18是所述流程图的进入点。在方框18中,程序进入处理过程,并且下降到方框20中,在此查看是否需要执行初始化。如果要执行初始化,则处理进入方框22,在此产生具有在图2中给出的格式的分隙权标(SLT)。然后,处理下降到方框24,在此将每个子字段中的输入端口的标识设置为初始值。然后,程序下降到方框26中,在此,将为写入输入端口的可用资源而保留的空间初始化为0。然后,处理进入方框28,在此,转发SLT并且将程序循环回方框20。如果在方框20中成功地完成了初始化处理,则程序下降到方框30中,在此它测试SLT的到达。如果SLT已经到达,则程序随后下降到方框28中。如果SLT还未到达,则处理沿着“否”路径退出方框30而进入方框20。
在这种操作中,权标产生单元(TGU)产生分隙权标,只要系统运行(up)则所述分隙权标始终传播。假定环(ring)提供了可靠的传送机制以便分隙权标不丢失或破坏。如上所述,分隙权标中的每个时隙与单个输入端口相关联,并且指示关于所述输入端口的可用资源。因此,对于InP:i,在分隙权标中资源被示出为AvResInP:i。起初,当TGU产生SLT的时候,TGU将用于每个InP:i的AvResInP:i设置到0。还假定关于输入端口的可用资源的量可以利用大于或等于0的标量值或由设计者选择的任何其他量化表达表示。当一个节点的资源控制单元接收分隙权标时,该资源控制单元更新每个InP:i具有的AvResInP:i。例如,假定Node:1(图1)已经为InP:1分配了150(资源单位)、为InP:2分配了100以及为InP:3分配了200。当关于节点1的RCU第一次接收到SLT时,它将AvResInP:1设置为150,将AvResInP:2设置为100,并且将AvResInP:3设置为200。
当一个节点的RCU接收到SLT的时候,它也将SLT用来在需要向其中发送用于处理的数据的其他节点中保留资源。例如,假定Node:0(图1)现在或将来需要向InP:(K-2)或Node:(N-1)发送数据。因此,当关于Node:0的RCU接收到SLT的时候,它通过从AvResInP:2扣除它需要的量来保留在InP:(K-2)中保留的资源。例如,如果用于Node0的RCU要在InP:(K-2)中保留10个单位,则它在转发SLT之前从AvResInP:(K-2)扣除10。应当明白,资源保留量限于在分隙权标消息中指示为可用的内容。
图4示出了关于资源控制单元的操作的流程图。所述资源控制单元可以被实现为状态机(state machine)、程序处理器组合逻辑或类似的器件。图4中的流程图可以用于产生说明书中给出的资源控制单元。
图4示出了图解资源控制单元(RCU)的操作的流程图。所述流程图可以被本领域内普通技术人员用来设计资源控制单元。在方框28中,程序进入处理并且下降到方框30,在此查看分隙权标(SLT)是否到达。如果SLT还未到达,则处理沿着“否”路径退到方框52中,在此处理查看是否已经处理了在输入端口(InP)接收到的任何数据。如果答案是“否”,则处理循环回到方框30中。如果响应为“是”,则程序进入方框50,在此,作为处理在端口接收到的帧的结果而释放的资源被添加到那个特定端口可用的资源上。然后,处理从方框50循环到方框30。
仍然参考图4,如果在方框30答案为“是”,则程序进入方框32,在此它查看是否SLT已经第一次到达。如果来自方框32的响应是“否”,则处理下降到方框36中。在方框36。自从上次接收到SLT以来释放的、与输入端口InP:i相关联的资源(ReResInP:i)的总量被添加到输入端口InP:i的可用资源量上。
程序从方框36进入方框38。在方框38中,自从上一次接收到SLT以来释放的、与输入端口InP:i相关联的资源(ReResInP:i)的总量被重置为0。
对于方框32,如果在RCU中第一次接收到SLT,则程序进入方框34,在此,RCU插入关于在其每个端口可用的资源的值,并且下降到方框38。
仍然参考图4,程序从方框38下降到方框40中,在此,RCU查看是否需要取消一个保留资源。如果响应为“是”,则程序沿着“是”路径退出方框40而进入方框42,在此,对于要取消的每个端口的保留资源,所述量被加到对于那个特定端口可用的资源上。程序从方框42下降到方框44中。对于方框40,如果RCU不期望取消保留的资源,则程序下降到方框44中。在方框44中,RCU确定是否需要保留资源。如果回答为“是”,则程序下降到方框46中,在此,资源控制单元从每个输入端口扣除它从在特定输入端口可用的资源中需要的量,并且进入方框48。在方框48中,转发SLT并且将程序循环回方框30以重复所述的处理。
因此,一个节点不能使用另一个节点的资源,除非它执行在此所述的明显资源保留。一个节点不应当使用另一个节点的、在其已经保留的之外的资源。当一个节点“消耗”了其保留资源时,如果需要更多的资源,则它需要进行新的保留。在随后接收到SLT(即,在第一次后)时,RCU按照下面的方案来更新关于它具有的每个InP:i的SLT中的AvResInP:i值设ResInP:i是自从上次接收到SLT以来释放的、与InP:i相关联的资源的总量。对于每个InP:i,RCU在转发SLT之前向在SLT中的AvResInP:i添加ResInP:i。
例如,如果作为处理在InP:(K-2)接收的数据的结果,Node:1释放5个单位的资源,则它将5加到ResInP:(K-2),它将在下一次关于Node:(N-1)的RCU接收到SLT时被加到AvResInP:(K-2)。
一个节点可以取消对于它已经在其他节点中保留的资源的保留。当一个节点的RCU接收到一个SLT的时候,它也使用其来取消它可能不需要的、在其他节点中的任何保留资源。例如,假定Node0(图1)已经在InP:(K-2)中保留了10个单位并且要取消四个单位。当用于Node:0的RCU接收到所述SLT的时候,它将4加到AvResInP:(K-2)的值。
一种分散式“基于广告”的方案被提供接收者广告它们的资源,而发送者以分布式方式取得它们需要的内容。
本发明支持利用一个保留消息关于下列的动态资源保留·一个发送者,一个接收者·一个发送者,多个接收者·许多接收者,一个发送者,以及·许多发送者,许多接收者。
接收者当进行资源保留时不必知道发送者是谁。可以在带内或带外工作。
权利要求
1.一种用于在通信系统中保留资源的方法,包括步骤(a)在一个节点中接收一个消息,所述消息具有至少一个子字段来承载用于至少一个端口的识别标记,并且具有用于承载与在所述至少一个端口可用的资源相关联的信息的相关联空间;(b)使用资源控制单元来检查所述消息;(c)如果所述子字段承载了与在所述节点中的输入端口的标识匹配的识别标记,则在所述相关联的空间中写入在所述至少一个端口可用的资源,如果所述识别标记匹配所述节点希望通信的一个端口的端口标识,则调整在所述空间中记录的资源信息以反映由所述节点保留的资源。
2.按照权利要求1的方法,还包括步骤发送所述消息。
3.按照权利要求1的方法,其中调整步骤包括从在所述空间中承载的值减去一个标量值。
4.一种节点,用在执行任何前述的权利要求的方法的通信网络中。
5.一种系统,包括多个节点,包括权利要求4的节点;互连介质,可操作地互连所述多个节点。
6.一个计算机程序产品,包括存储在计算机可读介质上的计算机程序代码,所述程序代码当在数据处理系统上被执行时指令所述数据处理系统执行任何在前的方法权利要求的方法。
全文摘要
一种资源保留系统包括权标产生单元(TGU),用于产生和在通信系统的多个节点之间传播一个分隙权标(SLT)消息,所述分隙权标消息具有子字段,用于承载在一个节点中的每个输入端口的标识和对于每个输入端口可用的资源。在接收到所述消息时,在每个节点中的资源控制单元(RCU)可以写入端口标识、在所述SLT消息的适当子字段中的可用资源,并且通过调整在与其他节点相关联的子字段中的信息来在其他节点中保留资源。
文档编号H04L12/56GK1653762SQ03811108
公开日2005年8月10日 申请日期2003年5月16日 优先权日2002年5月23日
发明者莫哈马德·佩拉维安, 马克·A·里纳尔迪, 迈克尔·S·西格尔, 拉文德·K·萨比基 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1