宽带交换网络的制作方法

文档序号:7570677阅读:214来源:国知局

专利名称::宽带交换网络的制作方法
技术领域
:本发明涉及用于异步传送数据信元交换的宽带交换网络,以及交换异步传送数据信元的方法。用于交换异步传送单元的宽带交换网络已众所周知,其中预定级别的带宽分配给连接第一用户至第二用户的传输信道。在一些这样的众知系统中,在租用线路类型的有效时间期间提供通信信道,并且进行人工测量以便建立这样的连接或根据特殊终端与传送的业务级别修改连接。结果,用户通常招致是整个连接费用一部分的固定比例费用,而不管此连接是否使用都要付费。可供选择的系统已被建议或可获得。特别地,有可能在拨号的基础上建立连接,要求终端设备装备有通过发出信令命令并响应网络发出的类似命令建立连接的设施。支持专用通信网络的永久电路的使用是普遍的。这样的电路需求预期将增长至包括2Mbit/s以上的宽带速率,这些电路携有来自是固有地突发(bursty)信源的多路复用业务,可能一起携有以恒定比特率发送的并且是延迟敏感的诸如话音传输与恒定比特率的视频的业务。异步传送模式(ATM)信元都具有能携带用户业务或用户始发的控制信息(信令)的四十八个八比特组的固定信息字段。这两类数据传输通过设置信头中的虚路径(VP)和虚通路(VC)值进行区分,在ATM信头中提供的另一字段称为信元丢弃优先级,它能使低优先级信元与高优先级信元区分开来。在出现拥塞的情况中,首先可能抛弃低优先级信元。对于在基于ATM的网络内的专用电路,利用网络管理规程建立希望的路由、要求的带宽和服务质量(QOS)。由于没有实际物理电路,而只有VP/VC值或与存储在交换机中的信息有关的“标号(Label)”来确定路由并保存带宽和QOS要求,所以专用电路称为永久虚通路(PVC)跟在同一通用路由之后的几个PVC可以组合为一条虚路径(VP)。所有已知的永久电路的缺点是即使用户没有什么要发送时,仍保留分配给此电路的带宽。这意味着用户可能不得不比如果只在需要时带宽才可以利用时付更高的费用。本文假定收费与预留的带宽有关,并且从公用网络操作者可能选择虚通路的收费方式的角度看这未必是正确的。但是,预期根据预留带宽收费将在未来成为一个有效因素。通用实践是建立一个永久的虚通路,使得只在一天的某些小时或一星期的某些天期间此电路是可用的。这个解决方案的困难在于不允许用户快速地改变使用模式,并可能只粗略地反映用户所要求的使用。第二建议是给用户提供至网络管理平台的一个独立通信信道,从而允许重构固定虚通路。这个解决方案的困难在于在用户能开始使用虚通路之前,将出现一些时延。第三建议是在识别快速资源管理信元的网络中的每个交换点上引入设备,表示带宽现在应分配给电路。此解决方案的困难在于没有由各个制造商生产的交换设备都识别的带宽请求信元的国际统一标准。根据本发明的第一方面,一种宽带交换系统具有至少一个连到各自信号源的入口与至少一个连到所选的信号接收系统的出口,此交换系统具有至少一个交换机,用于从入口发送携有信息的异步传送数据信元到出口;系统控制装置,用于经所述交换机在入口与出口之间以预定基本带宽接受和建立虚连接;以及带宽控制装置,设计为检测在入口上接收的信元,以便确定所检测信元的带宽要求并自动地响应这样的信元检测与带宽确定,以使系统控制装置选择地分配除基本带宽之外的所要求的附加带宽用于至出口的信元传输。以这种方式在仍提供诸如话音与视频信息的延迟敏感数据的保证最小带宽连接的同时,有可能响应检测的使用级别动态地改变系统中可用于给定路径的信元的总带宽。附加带宽根据要求进行分配并避免用户在使用附加带宽之前发出带宽请求信号的需要。期望用户在使用系统之前已经登记他的基本(例如,最小)带宽要求和连接目的地。用户也可以登记最大带宽要求。为方便起见,系统控制装置可以包括一个存储表,用于将预定的带宽与各自的信号源联系起来。系统控制装置最好接受并建立永久虚连接,术语“永久”这里意思是在预定基本带宽上的连接从它建立时间起维持到交换系统接收到用户不再要求此连接的指示为止一直保持。带宽控制装置最好包括反馈装置,设计为将最大信元速率值发送给入口以便传输给信号源,将信元提供给入口的最大允许速率指示给信号源。带宽控制器也可以设计为可检测信号源何时待用,并发送最大信元速率值给待用的信号源,表示比从那个信号源中分配给信元的带宽更高的带宽。优先地,一般根据正发射的信号源应分配与系统上已指明路由的可用带宽一样多的附加带宽(或多达预登记最大数量)来从系统控制装置中请求附加带宽。这样的带宽将根据在使系统控制装置分配带宽的时刻系统中的业务级别进行分配。但是,在本发明的优选实施例中,监视从给定信号源提供信元给入口的速率,并且如果分配的带宽大于以所监视速率发送信元所要求的带宽,由带宽控制装置使系统控制装置分配少些的带宽给这些信元,例如,在预定时间间隔之后分配少些带宽,从而使带宽可用于其他用户。带宽控制装置可以包括信元速率估算装置,用于估算从信号源提供给入口的信元速率,并在估算装置进行估算之后,带宽控制装置可以设计为使系统控制装置给来自信号源的信元分配附加带宽,使得总的带宽分配等于所估算的信元速率并且带宽控制装置可以使反馈装置发送最大信元速率标志给信号源,表示所估算速率为提供给入口的信元的最大允许速率。优选地,带宽控制器设计为周期性地进行信元速率的估算和因此由系统控制装置重新分配带宽并根据所估算的信元速率重新传输最大信元速率。可以(经反馈装置)给定信号源一个信元速率标志,该标志允许它以对应预先登记的最大带宽的速率发送。当信号源开始以要求大于预定带宽的速率发送时,它只简单地发送一个信元速率标志信号,指示它将信元速率减至对应预定带宽的速率。这允许带宽控制装置从系统控制装置获得增加的带宽分配时间,以便提供附加带宽。在这种情形下,在带宽控制装置中装备缓冲以便在分配附加带宽的同时缓冲信元。这样的缓冲可以在信号源正在给定时间上以比系统所接受的速率更高的速率发射时的情形中使用。实际上,缓冲器最好具有检测何时达到预定门限级别的装置,这时反馈装置响应此缓冲器使单元速率标志信号重新传输给连到入口的信号源。优先地,缓冲器达到预定门限级别的检测使得一个减少的信元速率标志信号发送给信号源,然后此信号源具有设施来减少其信元速率以避免缓冲器溢出和由此而致的数据丢失。缓冲器中的特定VP/VC的信元数(与达到门限级别相比)也可以用于确定用户是否正在以比系统接受信元的速率更快的速率提供输入信元。通过周期性地评估这个数,带宽控制装置能够确定信号源是要求更多还是更少带宽。另外,通过有意地允许信号源以比信元被系统接受的速率更快的速率发送,有可能通过监视缓冲器中的信元数的变化来确定信号源是否利用其最大允许带宽。减少的数表示信元正以比信号源提供它们的速率更快的速率被接受,即信号源没有使用最大带宽。在这种情形中,剩余的带宽可以重新进行分配。优选实施例的带宽控制装置设计为为从许多信号源接收的信元自动进行附加带宽分配,并可以包括一个活动检测器和一个控制器,此活动检测器用于检测输入信元并识别正发送检测信元的信号源,而控制器用于响应所述检测和标识来发送一个带宽请求消息给系统控制装置以便特别地分配附加带宽给由那个识别的信号源所发送的信元。带宽控制装置可以包括一个信元计数器,用于计数从连到带宽控制装置的各个信号源中接收的信元,从而生成用户帐单和其他用途的收费信号。这个计数器可以是与带宽控制装置中的控制器有关的活动检测器的一部分,活动检测器可用于检测输入信元并识别发送所检测信元的信号源,而控制器可用于响应检测与识别来发送一个带宽请求消息给系统控制装置,以便特别地分配带宽给由识别的信号源所发送的信元。根据本发明的第二方面,用于宽带交换系统的一种动态带宽控制器,此系统是用于经至少一个交换机从此系统入口发送携带信息的异步传送数据信元给系统出口,其中此控制器包括用于在入口与出口之间以预定基本带宽建立永久虚连接的装置;用于检测在入口上接收的所述信元的装置;用于确定所检测信元的带宽要求的装置;以及用于响应这样的信元检测与带宽确定自动地发出一个带宽请求信号的装置,以便在系统中除基本带宽之外分配附加带宽用于至出口的信元传输。众所周知,提供使用控制装置或所谓的使用参数控制(UPC)来根据优先级标志降低信元的优先级或抛弃信元作为控制从信号源到系统的业务流量应用的方法。一旦出现这样的使用控制装置,带宽控制装置可以通过增加此使用控制装置降低所发送的信元优先级的第一预定门限级别来响应带宽分配提供用于使用控制装置的信号。在本发明的优选实施例中,当终端系统没有实际使用网络而导致初始单元降低到低优先级时,使用控制装置的第一预定级别设置为零。实际上,在带宽控制装置的超时周期已超过而特定终端系统没有发送数据信元后,分配给那个终端系统的带宽减至零。优选地,带宽控制装置通过发送消息给系统控制装置(系统控制装置又发送一个消息给使用控制装置)来调整由使用控制装置设置的第一预定级别。根据本发明的第三方面,提供操作宽带交换系统的一种方法,此系统是用于经过至少一个交换机从系统入口发送携带信息的异步传送数据信元到系统出口,此方法包括在入口与出口之间以预定最小带宽维持虚连接、检测所述连接的信元提供给入口的速率、以及自动地响应超过能由最小带宽接纳的信元提供速率的检测,分配附加带宽给此连接。优选方法的特征在于附加带宽限制为最大值;生成一个反馈信号并反馈到入口,用于根据系统中可用于连接的附加带宽级别限制所述连接的信元提供给入口的速率;以及响应比能由最小带宽与分配的附加带宽之和接纳的信元提供速率小一个预定数量的信元提供速率的检测,重新分配附加带宽。现在通过示例结合附图更详细地描述本发明,其中图1是根据本发明的宽带交换系统的框图;图2是根据本发明的另一宽带交换系统的框图;图3是表示一个单个带宽控制器如何能由几个终端系统共享的宽带交换系统的部分框图;图4是在图1与2的系统中使用的带宽控制器的方框图;图5是图4所示的活动检测器模块的规范描述语言(SDL)框图;图6-1和6-2是用于图4的控制器模块的SDL;图7是资源管理(RM)数据信元的框图;图8是图4的反馈模块的SDL;图9是用于图4的带宽控制器的缓冲器的框图;图10是缓冲器的SDL;图11是整形器/多路复用器模块及其连接到图6的缓冲器的方框图12-1、12-2和12-3是整形器/多路复用器模块的SDL。在其优选形式中,本发明涉及宽带交换系统,此系统可以形成部分公用交换网或可以构成公用交换网,用于在终端系统之间的异步传送数据信元的传输。参见图1,公用网10具有多个可以异步传送模式(ATM)操作的交换机。在这个简单的示例中,交换机包括两个本地交换机12和与本地交换机12互连的一个转接交换机16,每个本地交换机具有连到各自端系统14的端口。与交换机有关的是用于控制通过本地交换机12之一进入网络的业务的连接允许控制功能(CAC)18和动态带宽控制器(DBC)20。这个交换机12也包括用于动态地改变在网络的输入端口24上从终端系统14接收的数据信元优先级的使用参数控制设备22。应理解实际上,网络10将包括互相连接的许多本地与转接交换机12、16和几个DBC20以便形成具有用于连接(诸如终端系统14)几个终端系统的(诸如端口24)多个端口的网络。利用DBC20,公用网络10能提供可用的比特率(ABR)业务,DBC检测提供给输入端口24的输入信元,并动态地响应这个检测来使CAC18分配带宽给向目标终端系统传输的信元。一般地,分配要求ABR业务的终端系统14到固定DBC20。可能有多于一个的DBC20用于每个本地ATM交换机12。在出现故障的情况中,终端系统能重新建立路由至备用DBC(未示意出)。数据以异步传送模式(ATM)信元的形式发送,每个信元除了五个八比特的信头外还具有48个八比特组的一个信息字段,其中信头包括方便经网络自身传输的信息。因此,在逐个信元的基础上控制路由的建立,并且对于任何特定链路,可以采用多个传输路径和时间多路复用时隙,所以,ATM信元如同由信头信息所定义的一样经虚路径与虚通路进行发送。虚路径与虚通路由五个八比特组信头中的虚路径识别符(VPI)与虚信道识别符(VCI)进行识别,此信头有效地定义终端系统之间的连接,使得形成通用消息一部分的信元将通过相同连接进行发送。通过根据其VPI与VCI偏路信元ABR业务通过DBC20进入公用网并随后外出到外部路由,如图1所示。从DBC20开始,在每个虚路径与虚信道上的业务限制为由CAC18所确定的信元速率(下面将简称为“CR”)。一个选择的示例性设计表示在图2中,在这种情况中,终端系统14A受多于一个的DBC的控制。实际上,两个终端系统14A、14B之间的连接通过两个公用网10-1与10-2建立路由。每个网络10-1、10-2有其自己的DBC20-1、20-2,负责根据它自己的连接允许控制功能(CAC)18-1、18-2所分配的带宽限制进入网络的业务。每个DBC20-1、20-2也负责向终端系统14A建议当前可应用的CR。在图1与图2的系统中,在终端系统14之间固定分配保证最小带宽,和DBC20、20-1、20-2在需要时从各自的CAC18、18-1、18-2中请求附加带宽,同时缓冲任何不能立即发送给各自交换机12、16的输入数据信元。然后,CAC18、18-1、18-2分配多达预登记最大带宽的附加带宽给信元,此预登记最大带宽与终端系统间的连接有关并对应由相关信元的VPI和VCI标识的路径中的最窄带电路。这个分配随后指示给DBC20、20-1、20-2,DBC20、20-1、20-2将最大CR通知给发送终端系统14,此最大CR可以不等于由CAC18、18-1、18-2所指示的带宽,如下所述。结果,得到印象是即使在用户没有要求使用可用带宽时,网络也永久地构造为使带宽可用于数据传输。但是,从下面将变得显而易见的是用户只在实际使用网络时才需要付费,最好根据在终端系统之间经逻辑链路所发送的信元数量进行收费。因此,在被假定用户A请求的传输之前,网络可以实际上不分配任何形式的附加带宽用于相关终端系统间的传输。而且,用户A不必为了要分配附加带宽而进行任何具体的控制活动。在需要时,一定级别的附加带宽将分配给用户A。有可能由几个终端系统或信号源共享一单个动态带宽控制器(DBC)。例如,参见图3,DBC20-3表示连到形成网络10部分的宽带ATM交换机12-3,三个源14C的业务流量利用输出缓冲器28进行处理。能由DBC20-3处理的源数由链路速率L确定(即,不必有如此多的源,总是链路速率L是确定可用速率的限制因素)。来自源14C的ABR业务的集合信元速率必须不超过L。这意味着如果来自每个源的业务流量都是猝发状的,可能有输出缓冲器28拥塞的时候。这可以通过给反馈到终端系统14C的信元速率(CR)提供普通流量控制(GFC)信号来避免,其中GFC信号用于立即停止来自每个源的所有传输。每当在图1、2或3的装置中采用动态带宽控制器(DBC)时,其主要功能如下。首先,它提供输入数据信元的缓冲,在任意给定时间上的缓冲程度根据包含信元的传输进行确定,此传输由上述的VPI与VCI信息进行标识。DBC还控制或“整形”馈送给网络10的业务,使之等于可适用于那个特定传输的当前CR,CR取决于所分配的带宽。由CAC18(见图1)在确定传输所要经过的路由并根据有效传输的已知数量分配路由上的可用容量的公平分享的基础上确定任何给定传输的分配带宽以及因此导出的CR。当传输开始时,在DBC中检测到,立即发送对应预登记的固定分配的最小带宽的低缺省CR给相关的终端系统14(见图1)。在此之前,终端系统将已收到对应预登记最大带宽的CR,以致当它不发送时,此最大带宽看来似乎是可利用的。减至低减省CR保证在CAC18能为那个传输分配带宽和导出CR之前,新的活动发送源不引起系统10中的过载。这样的过载一般将引起那个传输的信元丢失。与离开DBC20的那个传输有关的业务被整形为对应缺省CR。这里DBC的第二主要功能部分,即为了控制终端系统的信元速率的目的,发送一个反馈信号给此终端系统。事实上,每次CAC18导出一个传输的新CR,CR建议信号就反馈给终端系统。DBC的预传输缓冲用于允许协作的终端系统有足够时间来调整其输出至最新CR反馈建议。这暗示在DBC中有充足的缓冲来允许多余信元在至少等于DBC与终端系统之间往返路程延迟的一段时间内进入。如果信元继续以大于建议的反馈CR的速率从终端系统14到达(例如,由于CR在途中丢失或由于终端系统故障),多余信元将由于缓冲器的溢出在DBC中被丢弃。但是,如下所述,有时希望故意使建议的反馈CR比离开DBC20的信元所整形至的CR更快,以便确定特定终端系统是否正充分利用其带宽分配。在优选DBC中,也有可能利用缓冲器门限来包括故障容限。当与给定传输有关的存储的信元达到门限时,CR建议反馈重新发送给终端系统。这个特征作为控制终端系统以阻止或是由于终端故障或是由于故意的与约定的传输规则不一致而导致的带宽的不良使用的机构也是有用的。以这种方式,阻止与为其他的一致的终端系统所提供的服务质量的干扰。实际上,DBC定义与网络10的ABR业务契约。现将结合图4更详细地描述DBC20的模块。图4所示的DBC20是具有用于接收异步传送数据信元的输入端口30和用于馈送数据信元给形成交换网络10部分的交换机12或16(见图1与2)的输出口的分立部件,此部件也具有用于接收从交换机12或16返回的消息的另一输入口34和用于发送反馈消息给终端系统14(图1所示)的反馈输出端口14。虽然DBC20表示为分立部件,但将意识到图4能被认为是表示较大数据处理部件的子集系统的功能框图,其中大部分可以软件功能实施。在输入30上的输入信元作为首先馈送给活动检测器36的用户信元流到达。活动检测器的目的是提供有关每个接收的传输的状态信息给控制器模块38,每个传输由包含在信头中的它的VPI与VCI进行标识。如果一个传输以前是寂静的并且观察到具有适当VPI与VCI值的一个信元要从终端系统发送到输入30,则此传输由活动检测器36标为有效的,活动检测器36与信头开始的同步可以利用包含在信头中的检错字段完成。检错字段如其名所提示的提供冗余度,利用此冗余度可以对信头信息进行检错。因此,提供信头检错字段的主要原因是保证信头是正确的,从而保证信元不被发送到错误地址。如果一个传输以前是活动的并且在时间t的周期内没有检测到具有适当VPI与VCI的信元,则认为此传输是处于静止状态。活动检测器36为每个VPI/VCI值对保持一个计时器和状态表。优选地,t设置为几秒,使得涉及几个毫秒级的任何给定VPI/VCI值对的活动-静止-活动转换保持不被检测,以致在这些条件下传输表示为仍处于活动状态中。这具有以降低网络利用率为代价减少由DBC20发送给CAC18的消息频率的效果。活动检测器36的另一功能是计数控制器38请求的“开始信元计数”与“停止信元计数”之间的间隔期间的传输(即,用于在特定VP上传输)的信元。例如,此信息可用于收费目的并也可由控制器38用于获取所接收传输的实际信元速率。用于活动检测器的伪码列在下面并且相应的SDL表示在图5中。<prelisting-type="program-listing"><![CDATA[BEGIN{cellarrival}  cellarrivalfromend-system  readVC  resetVCinactivitytimer  IFVC-isnewlyactiveTHEN  updatestatetable  adviseCONTROLLERofnewlyactiveVC  ELSEIFcountmg.cells(VPI/VCI)THEN  incrementcell.count(VPI/VCI)  ELSE  donothingENDBEGIN{VCtimerexpires}  VCinactivitytimerexpiresindicatingquietVC  updatestatetable  adviseCONTROLLERofquietVC  counting.cells=FALSEENDBEGIN{receiveastart.cell.countsignal}  receiveastart.cell.count(VPI/VCI)signalfromCONTROLLER  cell.count(VPI/VCI)=0  counring.cells=TRUEENDBEGIN{cell.counttimerexpires}  cell.counttimerexpires  sendcell.count(VPI/VCI)toCONTROLLER  restartcell.counttimer  END]]></pre>将看到就输入的用户信元之流而言,活动检测器36读出到达信元流的每个信头中的VPI/VCI值,并且这个信息用于更新它为每个VPI/VCI值对所保持的状态表。就与控制器38的通信而言,检测器36将任何VPI/VCI值对的状态变化通知控制器,控制器能将要使用的计时器值t通知活动检测器。优选地,同一t值用于所有的VPI/VCI值对。信元计数信息可由控制器38通过“开始信元计数”消息从活动检测器36中获得。当活动检测器接收到此消息时,它启动计时器并计数每个信元到达。在每个周期t期满时,活动检测器发送信元计数值给控制器。到达输入30上的用户信元流的信元立即发送给缓冲器模块40,在缓冲器模块40中将信元存储在先入先出(FIFO)缓冲器队列中,每个队列包括具有给定VPI/VCI值对的信元。检测器36对于信元类型不是特定的。因此,任何数据信元的到达将被检测并可能影响与VPI/VCI值对有关的活动状态,不管控制或管理信元是否存在。缓冲的信元在经输出32馈送到ATM交换机之前从缓冲器40馈送到整形器/多路复用器模块42。下面将更详细描述缓冲器与整形器/多路复用器模块40、42的操作。现在,可以肯定说当任何缓冲器队列已达到预定缓冲器满门限时,缓冲器模块能发信令给控制器38。整形器/多路复用器模块42负责从缓冲器模块40中移去信元并将信元向前发送给目的地。它包括多路复用器功能和整形器为每个VPI/VCI值对存储一个CR值,使得从输出馈送的信元序列被整形以保证(如同由分配的带宽所确定的)用于每个传输的通过网络的各自路径的容量不被超过。控制器38也控制反馈模块44用于在输入34上从网络和从控制器38自身接收反馈消息,以便经输出35向前传输给终端系统14。下面将更详细描述缓冲器、整形器/多路复用器与反馈模块40、42与44的功能。首先将考虑控制器38。控制器38的目的是将由任何给定VPI/VCI值对识别的ABR类型传输应在网络中具有分配或重新商定的带宽的信号发送给CAC18。在本发明的这个实施例中,带宽重新商定信号由控制器发送给CAC18,使得当活动检测器36指示具有特定VPI/VCI值对的传输是寂静时,设置那个传输的带宽参数为预定最小带宽值。对于新活动的传输,带宽必须与CAC重新商定并且由CAC18(图1)解释为请求(在预定最大带宽的约束内的)所有可用带宽,在这种情况中CAC根据它自己的控制参数释放带宽给此传输。每当有效检测器38指示所讨论的传输的状态变化时,控制器38发出重新商定信号,这标志估算周期开始。在这点上,终端系统仍期望能以对应最大带宽的CR发送,与此同时CAC18仍只维持(从DBC20输出的信元被整形至的)固定最小分配。在估算周期结束时(当估算计时器到期时),控制器38请求来自缓冲器模块40的缓冲的信元计数值。如果在估算周期结束时的缓冲的信元计数值大于零(即,终端系统正以大于最小值的速率发送),则命令反馈模块44经输出35发出最小CR给终端系统。如果缓冲器信元计数值是零(即,终端系统正以小于或等于最小值的速率发送),那么终端系统14不要求比最小带宽更多的带宽(因为如果它要求的话,缓冲器已开始在估算周期期间填满)。控制器38建议CAC18为服务连接所要求的带宽数量,并启动标记监视终端系统活动开始的监视计时器,监视计时器设置为在此连接的使用期限期间的频繁间隔上超时,这使终端系统使用其CR分配的使用情况的重新评价有可能。终端系统有可能在整个连接期间增加,降低或保留其当前CR。CAC18在更多带宽变为可利用时周期性地将更多带宽提供给控制器。当从CAC18中收到一个新CR时,用信号通知反馈模块将此新CR发送给终端系统并且此值存储为更新的CR。下面描述的监视环路用于确定终端系统是否能利用所提供的带宽。在监视计时器的每个超时上,控制器38请求来自缓冲器模块40的一个新的的缓冲信元计数值并将此与上次监视期间存储的多余信元计数值进行比较。如果当前缓冲计数值小于多余信元计数值,则能假定在监视周期期间用户信元速率小于为输出而整形信元的速率并且终端系统没有充分利用其所分配的带宽。因此,能通过设置CR为等于监视的用户速率和将此新CR建议给CAC18,以及通过将此新CR传送给整形器模块42和通过命令反馈模块40将此新CR传送给末端系统来重新分配多余带宽。然后重新启动监视计时器。如果当前缓冲信元计数值大于多余信元计数值,即用户信元速率大于整形器速率,则终端系统正利用由此新CR值提供的附加带宽(即因为来自CAC的更新的CR已允许终端系统增加其发送速率,所以此末端系统增加其发送速率。从上面将注意到因为整形器模块42还没有被建议由CAC18所提供的最新CR,CAC18已经分配不能被DBC20使用的附加带宽。因此在这种情况中,通过将存储的CR设置变为等于更新的CR来增加存储的CR并且这个CR发送给整形器模块42,当前缓冲信元计数值存储为一个新的多余信元计数值,然后重新启动监视计时器。第三种可能性是当前信元计数值等于多余信元计数值。这表示尽管经新CR值建议信号提供了增加的带宽,终端系统尚未改变其传输速率。在这种情况中,控制器38将终端系统的实际速率传送给CAC18,使得CAC知道多少带宽被使用并随后能重新分配任何未使用的带宽。整形器模块和终端系统不被通知,因此,整形器模块42具有对应CAC18所知道的CR值以及终端系统具有等于由CAC18原始分配的CR的CR值。控制器38随后重新启动监视计时器。当活动检测器36指出所讨论的传输已停止时,控制器发出一个寂静信号给CAC18,使CAC18只分配预定最小带宽。使反馈模块40发出等于最大带宽的CR值并且使整形器模块以等于最小带宽的CR发信。对于终端系统来说,当它不发送时,看来它已增到最大带宽。缓冲信元计数值的定期监视极大地避免了单元由于缓冲器溢出而丢失的可能性。因此控制器38具有三种状态寂静、估算与监视。防止带宽在不需要时被分配的一个可选策略如下。控制器38发送开始信元计数请求给活动有效检测器36,这又启动可能具有t超时周期的监视计时器。在此周期结束时,活动检测器36发送信元计数值给控制器38,此处理信息以估算等效于用户实际发送速率的系统容量。如果此容量实际上小于当前分配的容量,它可能暗示用户正尝试仅通过发送相对慢的信元流给输入30以保持相关传输的活动检测器状态在有效状态中来保持大容量。明显地,这种情形导致网络的非有效使用,当在所分配的与当前使用的容量之间有大量失配时,由控制器38执行下列步骤。首先,整形器42立即被复位以便降落到相关VPI/VCI值对的实际CR。接下来,命令反馈模块44经输出35发出实际CR给用户。最后,控制器38发送一个带宽重新商定的信号给CAC,此信号包括设置为等于正被用户使用的当前等效容量的带宽值,然后此信号由CAC解释为释放其他用户容量的一个选择。作为替换方案,可以通过分配给整形器与反馈模块42、44一个缺省CR而不是实际CR来处理失配。如上所述,控制器38也设计为在用于填充给定VPI/VCI值对的缓冲器已达到给定门限时,从缓冲器模块40中接收信号,此信号使控制器38命令反馈模块44发送所谓资源管理(RM)信元,这将在下面详细进行描述。控制器38也可以接收每个建立的(由新的VPI/VCI值对识别的)新传输的DBC标识(identity)值,这个DBC标识值是从CAC中接收的。可替换地,如果没有提供标识值,DBC可以使用一个缺省身份值。控制器的伪码如下<prelisting-type="program-listing"><![CDATA[BEGIN{ReceiveaVPI/VCIacuvesignal}  receiveaVPI/VCIactivesignalfromACTIVITYDETECTOR  startestimatetimerEND{ReceiveaVPI/VCIacuvesignal}BEGIN{Estimatetimerexpires}  estimatetimerexpires  excess.cells=buffer.count(VPI/VCI)IFexcess.cells>0THEN  sendminimumCRtofeedbackmodule  ELSE  donothing  requestrequiredamountofbandwidthfromCAC  startmonitor_timerEND{Estimatetimerexpires}BEGIN{monitorVPI/VCIrate}  receiveanewCRfromCAC  sendnewCRtofeedback  updatedCR=newCREND{monitorVPI/VCIrate}BEGIN{monitortimerexpires}  monitortimerexpires  IFuserCR<shaperTHEN{vpnotusingfullallocation}  CR=userCR  sendCRtoCAC.Shaperandfeedback  ELSE  IFuserCR>shaperCRTHEN{vphasincreasedrate}  CR=updatedCR  sendCRtoShaper  excess.cells=buffer.count(VPI/VCI)  ELSE{vphassrayedthesame}  CR=userCR  sendCRtoCAC  updatedCR=CR  ENDIF  restartmonitorumerEND{momtortimerexpires}BEGIN{ReceivequietVPfromACTIVITYDETECTOR}  receiveaquietVPI/VCIsignalfromACTIVITYDETECTOR  sendquietVPI/VCIsignaltoCAC  sendmaxtumumCRtofeedback  sendminimumCRtosnaperEND{ReceivequietVPfromACTIVITYDETECTOR}BEGIN{ReceiveaVPI/VCIbufferthresholdsignal} receiveaVPI/VCIbuffer-thresholdsignalfromVPI/VCI-buffer adviseFEEDBACKtoretransitCRtoend-systemEND{ReceiveaVPI/VCIbufferthresholdstgnal}]]></pre>控制器的SDL表示在图6-1与6-2中。控制器38可以设计为将DBC、VPI/VCI标识值对写入反馈模块44中,也可以设计为指示反馈模块44发出特定VPI/VCI值对的资源管理命令,这个指示也可以包含适当的CR对T、I(T是平均信元到达间时间和I是猝发容限)。应注意每当CAC更新CR值时,只为每个新的VPI/VCI值对发送一个在RM信元中指定的值的变化(如果明显没有收到第一个,则可以发送一个或多个重复RM信元)。一般地,在公用网络中这可以是每30秒或更多秒发送一次,这取决于DBC20中的活动检测器的敏感性设置,其结果是所要求的反馈控制带宽能是相对小的。从伪码中可以看出每当具有特定VPI/VCI值对的信元达到缓冲器填满门限时,控制器38就从缓冲器模块40中接收信号。已描述了与活动检测器36的接口。现将简单描述反馈模块44的用途。如上所述,反馈模块44经输出35发送(如同由控制器38所发信的一样的)当前CR值给终端系统。如图7所示利用资源管理信元发送CR。可选择地,这个信元的一个字段是用于使终端系统14(见图1)区分在终端系统至终端系统的路径上的来自不同DBC(例如,如图2所示的DBC20-1与20-2)的CR建议。这个DBC标识字段表示为图7中的字段50,CR放置在字段52中。这个RM信元类似其他信元具有包括指出此信元是资源管理(RM)信元的PT字段54的一个五个八位字节信头。建议如果使用DBC标识值,DBC标识值不固定,但在建立给定VPI/VCI值对的通过网络的传输路径的时刻进行选择。这暗示CAC18为每个VPI/VCI值对分配一个DBC标识值,并且反馈模块44保持(DBC、VPI/VCI)标识对表。例如,在图2中,公用网络10-1设计为选择给定VPI/VCI对的DBC值并将此信息向前发送,使得公用网络10-2不选择同样的值(例如,公用网络10-1分配标识号1,公用网络10-2分配标识号2等等)此DBC标识值存储在由反馈模块44保持的表中。在RM信元(见图7)中的CR字段52包含来自CAC的CR建议,这是由平均信元到达间时间T加上猝发容限i所提供的。(a)当由CAC18建议一个新CR时和(b)当对应任一VPI/VCI值对的缓冲器模块40中的缓冲器填满级别上升超过缓冲器填满门限时,由控制器38触发反馈模块44的操作。然后发送RM信元给终端系统。反馈模块44的伪码如下和相应的SDL表示在图8中。<prelisting-type="program-listing"><![CDATA[  BEGIN{ReceiveaCR}  receiveaCRforaVPI/VCIfromController  defaultCR=CR  END{ReceiveanCR}  BEGIN{RM.celltimerexpires}  RM.celltimerexpires  CreateRM.cell  writedefault.CRintoRM.cell  sendRM.celltoend-system  restartRM.celltimer  END{cellarrivalfromnetwork}]]></pre>下面将考虑缓冲器模块40。缓冲器模块更详细地表示在图9中,其用意是根据包含在信元中的VPI/VCI值对存储输入的数据信元。缓冲信元允许终端系统14(图1)具有响应来自模块44的反馈信号的时间。缓冲器模块40的另一功能是在达到缓冲器填满门限时发送一个信号给控制器38,表示终端系统不在响应反馈信号(这又使得控制器38重新发送一个CR给终端系统,如上所述)。缓冲器模块40在超过给定VPI/VCI值对的最大缓冲分配时也抛弃所接收的信元,这通过缓冲器溢出来完成。例如,如果DBC20具有一个来自所有150Mbit/s信源的组合输入速率,那么,如果至终端系统的往返行程延迟是100us,则每当改变CR值时,将有少于35信元在行程中。共享存储区域56的大小主要是为迎合猝发容限中的变化需要,因为这个速率的变化仅导致仅有小量的多余信元到达(例如,大约35个信元)。分配给各自VPI/VCI值对的固定信元位置由图9中的标号58表示。在这些位置中的信元代表多个队列的前面信元,每个队列有它自己的VPI/VCI值对。换句话说,能将队列具体化为前面的信元都在右手边以同一起跑线赛跑(图9)。到达缓冲器模块40的信元以先入先出(FIFO)顺序放置在队列中。当从整形器/多路复用器模块42的整形器部分收到一个适当信号时,从缓冲器模块40中移去信元,如由下面的缓冲器模块伪码所定义的<prelisting-type="program-listing"><![CDATA[  BEGIN{Receiveacell}  receiveacell  IFthereisroominthebufferTHEN  putcellinbuffer  incrementbuffer-filllevel  IFbuffer-filllevel=ThresholdTHEN  transmitbuffer-fullsignaltoCONTROLLER  ELSE  donothing  END{Receiveacell}  BEGIN{Receiveafetch}  receiveaVPI/VCIfetchsignalfromtheSHAPER/MUX  passcellfrombuffertotheSHAPER/MUX  decrementbuffer-filllevel  END{Receiveafetch}]]></pre>相应的SDL显示在图10中。现结合图11参见图4,整形器/多路复用器模块42用于从缓冲器模块40中移去信元并将它们经网络交换机向前发送给它们的目的地。模块42具有两部分,一部分是多路复用器60,一部分是整形器62。对于每个VPI/VCI值对,整形器62保持一个持久不变的信元速率(CR)值和一个计时器。送到输出32的信元流由整形器进行整形,使得不大于猝发容限τ的脉冲串通过而没有被整形器62延迟。但是,如果几个由不同VPI/VCI值对表示的传输同时猝发,则多路复用功能可以延迟一个信元。在这种情况中,多路复用器60给每个活动VPI/VCI值对分配DBC输出带宽的合理部分,它通过以循环方式轮询活动VPI/VCI值对来完成这个。等待时间等于或大于速率间隔T的信元用较高优先级“信元必须走”值标记。多路复用器首先拾起这些信元(见图1)。如果长于猝发容限标准值的猝发到达,则整形器功能迫使信元等待。整形器/多路复用器模块42的详细操作将从下列伪码中变为显而易见1.<prelisting-type="program-listing"><![CDATA[  BEGIN{STATE=ACTIVE}  receiveacell.waiting[VPI/VCI]signalfrombuffer  IFburstcreditokTHEN  cell.can.go=TRUE  STATE=WAITformultiplexerELSE{burstcreditnotok}  STATE=WAITforcredittimertoexpire  END]]></pre>2.<prelisting-type="program-listing"><![CDATA[BEGIN{STATE=WAITforcredittimertoexpire}  credittimerexpires  incrementbursttoierancecreditcounter  cell.can.go=TRUE  cell.must.go=TRUE  STATE=WATTformultiplexer  END]]></pre>3.<prelisting-type="program-listing"><![CDATA[BEGIN{STATE=WATTformultiplexer}  receiveafetch.cell[VPI/VCI]frommultiplexer  decrementcreditcounter  cell.can.go=FALSE  cell.must.go=FALSE  STATE=ACTIVE  END]]></pre>4.<prelisting-type="program-listing"><![CDATA[BEGIN{STATE=WAITformultiplexer}  credittimerexptres  IFcreditcounter<τTHEN  incrementcreditcounter  ELSE  donothing  cell.must.go=TRUE  END]]></pre>5.<prelisting-type="program-listing"><![CDATA[BEGIN{STATE=SHAPERACTIVE}  credittimerexptres  IFcreditcounter<τTHEN  uncrementcreditcounter  ELSE  donothing  cell.must.go=TRUE  END]]></pre>6.<prelisting-type="program-listing"><![CDATA[BEGIN{STATE=SHAPER.CRACTIVE}  newCRadvised(T.τ)  nextT=T  nextcredit=τ  END]]></pre>7.<prelisting-type="program-listing"><![CDATA[BEGIN{STATE=SHAPERTIMERACTIVE}  umerexpires  resettimer(nexT)  END]]></pre>8.<prelisting-type="program-listing"><![CDATA[BEGIN{STATE=MULTIPLEXERACTIVE}  outputcelltimerexpires  index=pointer  REPEAT{lstloopofsearchingforcell.must.go}  incrementindex  IFcell.must.go[index]THEN  pointer=indexfetchcell[index]frombuffer  sendferchcellsignaltoSHAPER  STATE=MUX.ACTIVE  ELSE  IFindex=max.buffer.sizeTHEN  index=0UNTILindex=pointerREPEAT{2ndloopofsearchingforcell.can.go}  incrementindex  IFcell.can.go{index}THEN  pointer=index  fetchcell[index]frombuffer  sendfetchcellsignaltoSHAPER  STATE=MUX.ACTIVE  ELSE  IFindex=max.buffer.sizeTHEN  index=0UNTILindex=pointersendno.cell.waiting.signalEND]]></pre>将理解当DBC20请求分配给特定传输的带宽流量的变化时,CAC必须控制网络中的其他业务流量,使得网络容量得到最有效地使用。下面的描述讨论用于克服业务流量重新分配问题的连接允许控制方法。现将描述两个连接允许控制方法,两个都解决重新分配业务流量问题。换句话说,当传输变为寂静或新近活动,则需要确定必需为其他传输生成多少其他控制消息,目的是使这个控制消息数量尽可能小。第一方法采用相对简单的连接允许控制方法,此方法不进行任何实际的重新分配。在这种方法中,给定新近活动的传输(VPI/VCI值对)一单个信元速率(CR),保持此CR直到此传输再次进入寂静。只在随后重新启动此传输时,此传输才得到一个不同的CR。这意味着涉及一个VPI/VCI值对的寂静信号将不为与它共享容量的其他VPI/VCI值对产生任何控制信号。这与填充方法相结合,其中填充方法采用(i)给定第一新近活动连接是总的可用容量一半的有效容量;(ii)给定下一个新近活动的连接是剩余容量一半的有效容量;(iii)给定下一个新近活动的连接是还剩余容量一半的有效容量;等等。此方法在由VPI/VCI值对识别的整个路径中一条链路一条链路地进行实施,并且无论哪个产生最低有效容量即是反馈到DBC20的CR的决定因素。接下来是具有一个VPI/VCI值对的一个新近活动信号不产生正分享容量的其他VPI/VCI值对的控制信号。因为设计DBC20使得用户能只保持网络上的大有效容量与VPI/VCI值对保持在活动检测器36(图4)的活动状态中一样长的时间,并且由客户产生的信元速率靠近有效带宽值(参阅上述的活动检测器的信元计数功能),所以用户能只在他们准备为他们所承受的比例上较大负载付费时保持到大有效带宽上。此方法在下面的意义上对用户是公平的在足够长的周期期间,没有用户被故意地分配较差的容量。但是,在某些情况中希望增加能保证相对大带宽分配的用户数量,并且这能通过下面的第二修改方法实现。在这种情况中,基本原则是如果一个活动信号引起其他VPI/VCI值对的控制信号,则让此信号限制于每条链路仅一个,即最富有(最大容量)VPI/VCI值对。这能描述为限制的重新分配方法或“仅取自最富有的”(RobinHood)方法。这能利用示例填充方法来最好地进行说明(i)给第一新近活动VPI/VCI值对分配等于总的可用容量一半的有效容量;(ii)给下一个新近有活动的连接分配剩余容量的一半加上第一VPI/VCI值对(即当前最富有的)的有效容量的五分之一;(iii)给下一个新近活动的连接分配剩余容量的一半加上当前最富有的容量的五分之一;等等为了说明这个过程,可以设想有具有100Mbit/s容量的一单条链路。那么,上面的步骤导致下列示例性步骤(i)第一新近活动的VPI/VCI值对得到50Mbit/s并且有50Mbit/s剩余;(ii)下一个VPI/VCI值对得到剩余容量的一半(这得到25Mbit/s)加上来自第一个的五分之一,这表示现在第一个VPI/VCI值对现在具有40Mbit/s,而第二个值对具有35Mbit/s;(iii)下一个VPI/VCI值对得到12.5Mbit/s的剩余一半加上来自第一个值对的五分之一,使得第一个VPI/VCI值对现在具有32Mbit/s、第二个VPI/VCI值对仍有35Mbit/s、第三个VPI/VCI值对具有20.5Mbit/s、等等。注意大多数用户都在获得大容量,但只有一个多余控制消息要在链路上发送。因此,具有限制的重新分配或“RobinHood”策略。为了将此方法扩展到具有许多链路的路由上,上述过程逐条链路进行重复。产生最低有效容量的那条链路就是发回给动态带宽控制器(DBC)的CR值的决定因素。现在,利用这个有效容量值,CAC通过获取那条链路上的剩余容量的一半将它逐条链路进行分配,并且所需的其余部分取自那条链路上的最富有的VPI/VCI值对。结果,这对于发送给网络的每个VPI/VCI有效信号至多每条链路产生一个附加CR控制消息。寂静信号仍不产生附加控制消息。这个方法也使用户不可能在其他用户变为活动时保持在非常大的容量上。另外,在保持业务重新分配的复杂性至最低的同时,尽可能多的用户得到合理的大容量。概括说来,在用于异步传送数据信元的宽带交换系统中,动态带宽控制器(DBC)控制系统输入口上的数据信元应用,这些数据信元是由许多发送终端站所提供的DBC检测输入信元、识别信元源、为信元提供缓冲并根据分配给来自相应源的信元的当前信元速率(CR)控制至系统交换机的信元输出。此系统也包括确定系统中可用带宽的连接允许(CAC)模块。DBC与CAC协作以便维持通过系统的预定最小带宽的永久虚路径并根据需要分配多达最大值的附加带宽。分配给此路径的附加带宽如果它没有被源使用,它能自动地除去或减少。能提供至源的反馈来防止以将由于系统中此路径可用的带宽限制而导致显著信元丢失的速率提供信元。权利要求1.具有至少一个连接至相应信号源的入口和至少一个连接到所选择的信号接收系统的出口的一种宽带交换系统,此交换系统具有至少一个交换机,用于从此入口发送携有信息的异步传送数据信元至此出口;系统控制装置,用于在此入口与此出口之间经过所述交换机以预定基本带宽接受和建立一个虚连接;以及带宽控制装置,设计为检测在此入口上接收的信元以确定所检测信元的带宽要求并自动地响应这样的信元检测与带宽确定来使系统控制装置有选择地分配除基本带宽之外的所要求的附加带宽用于至出口的信元传输。2.根据权利要求1的系统,其中系统控制装置包括一个存储表,用于将预定带宽与相应的信号源联系起来。3.根据权利要求1或2的系统,其中带宽控制装置包括反馈装置,设计为将最大信元速率值发送给入口,以便传输给信号源来将至此入口的最大允许的信元提供速率指示给此信号源。4.根据权利要求3的系统,其中带宽控制装置设计为检测一个信号源何时静止并发送一个最大信元速率值给静止的信号源,表示此信号源应在静止周期之后立即发送信元的最大速率。5.根据权利要求3或4的系统,其特征在于带宽控制装置包括信元速率估算装置,用于估算从信号源至入口的信元提供速率,其中由估算装置进行下列估算,带宽控制装置设计为使系统控制装置为来自信号源的信元分配附加带宽,并且带宽控制装置使反馈装置发送最大信元速率标记给信号源,表示所分配的速率为提供至入口的信元最大允许速率。6.根据权利要求5的系统,其特征在于带宽控制装置设计为周期地进行信元提供速率估算,并且为响应此,由系统控制装置进行所述附加带宽的重新分配和根据所估算的信元速率重新传输最大信元速率值。7.根据权利要求6的系统,其特征在于此重新分配包括所述附加带宽的减少。8.用于宽带交换系统的一种动态带宽控制器,其中系统是用于将携带信息的异步传送数据信元从此系统入口经至少一个交换机发送到系统出口,其中此控制器包括用于在入口与出口之间以预定基本带宽建立虚连接的装置,用于检测在入口上所接收的所述信元的装置、用于通过信元速率估算确定所检测信元带宽要求的装置以及自动地响应这样的信元检测与带宽确定发出带宽请求信号的装置,使得除基本带宽之外的附加带宽在系统中分配用于信元至出口的传输。9.操作用于将携有信息的异步传送数据信元经至少一个交换机从系统入口发送到系统出口的宽带交换系统的一种方法,此方法包括在入口与出口之间维持具有预定最小带宽的虚连接、检测所述连接的信元提供给入口的速率、以及自动地响应超过最小带宽所能接受的信元提供速率的检测,分配附加带宽给此连接。10.根据权利要求9的方法,其特征在于附加带宽限制于最大值,生成一个反馈信号并反馈至入口,用于根据系统中可用于连接的附加带宽的级别限制所述连接的信元提供至入口的速率;以及响应比能由最小带宽与所分配附加带宽之和进行调节的速率小于一个预定量的信元提供速率的检测,重新分配此附加带宽。全文摘要在用于异步传送数据信元交换的宽带交换系统中,动态带宽控制器(DBC)控制在系统输入口上的数据信元的应用,此数据信元是由许多发送终端站提供的。DBC检测输入信元、识别信元源、为信元提供缓冲并根据分配给来自各自源的信元的当前信元速率(CR)控制信元至系统的输出。此系统也包括确定系统中可用带宽的连接允许(CAC)模块。DBC与CAC协作保持通过系统的预定最小带宽的永久虚路径并根据需求分配多达最大值的附加带宽。分配给此路径的附加带宽如果它没有被源使用能自动地除去或减少。能提供至源的反馈来防止以由于系统中路径可用的带宽限制将导致显著的信元丢失的速率提供信元。文档编号H04L12/54GK1183191SQ96193598公开日1998年5月27日申请日期1996年3月8日优先权日1995年3月8日发明者A·J·史密斯,J·L·阿达姆斯申请人:牛津布鲁克斯大学,英国电讯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1