详细说明
在下述详细说明中,众多具体细节被阐明,以为了提供对本发明
实施例的彻底理解。然而,本领域中那些普通技术人员将要理解到:
没有这些具体细节本发明的那些实施例也可被加以实践。在其它情况
下,没有详细地说明众所周知的方法、程序、部件及电路,以便于不
遮掩本发明的上述实施例。
本发明的实施例可改善通信网络,如包交换网络的性能。本发明
的一个实施例通过改善对包分段的管理而改善包交换网络的性能。在
上下文中包分段是指将信息包分解成典型地小于原始包的一序列包片
段。
更具体而言,本发明实施例根据变化的条件,如变化的优先权级、
连接速度等自动地管理包分段。因此,这可改善网络的总体容量和性
能。因而,用户可从网络应用和服务的更快速响应时间中受益。
包交换仍旧是语音和数据通信的有效技术。在上下文中包交换可
指在网络内以相对短的包的形式进行信息通信。在上下文中包是指有
限长度的信息集,其长度典型地以位或字节的形式来表示。包长度的
实例可为1000字节。典型地网络包括众多由通信介质互连的节点。
所述节点能够利用一个或多个协议在通信介质内向其它节点进行信息
通信。在上下文中节点可包括能够进行信息通信的任何设备,如计算
机、服务器、开关、路由选择器、桥接器、网关等。通信介质可是能
够携带信息信号的任何介质,如双绞线、同轴线缆、光纤、射频等。
协议可包括一指令集,借此指令集信息信号在通信介质内进行通信。
例如,协议可是包交换协议,如于1981年9月采用的由Internet
Engineering Task Force(IETF)standard 7,Request For Comment
(RFC)793所定义的Transmission Control Protocol(TCP)、以及
于1981年9月采用的由IETF standard 5,RFC 791所定义的Internet
Protocol(IP),这两个协议均从“
www.ietf.org”(“TCP/IP规范”)
中可得到。
包交换网络可包括源节点、目的地节点以众多中间节点。源节点
可包括起源于要传送到目的地节点的信息集的节点。信息可包括能够
被表示为信号,如电信号、光信号、声信号等的任何数据。在上下文
中信息的实例可包括来自语音对话、视频会议、流式视频(streaming
video)、电子邮件(“email”)消息、语音邮件消息、图表、图像、
视频、文本等的数据。目的地节点可包括接收信息的节点。中间节点
可包括从源节点将信息通信到目的地节点的节点。
在操作中,源节点可通过一个或多个中间节点以包的形式将信息
发送到目的地节点。源节点将一信息集分解成一序列包。每个包可包
含信息的一部分外加一些控制信息。控制信息可协助网络中的中间节
点来选择每个包到达目的地节点的路线。源节点在网络内发送包,其
中中间节点接收包、主要地将其存储并将它们传递到下一中间节点。
这将继续发生,直至目的地节点最终接收到整个序列包并利用它们再
现来自源节点的信息。
然而,如果包具有与其相联系的较高优先权,则通过中间节点传
输包就变得更加复杂。信息可被分配不同的优先权级。当具有较高优
先权级的信息通过网络时,其可被赋与优先处理。较高优先权信息的
实例可包括时间敏感信息,如来自语音消息的信息。如果携带语音信
息的包在网络中被延迟,则接收方可察觉到例如超出正常电话交谈的
自然停顿和节奏的寂静时间。另一方面,网络中可对时间延迟较不敏
感的信息,如电子邮件消息或语音消息典型地具有较低的优先权。如
果携带邮件消息的包被延迟,除非过多的话,否则所述延迟经常地不
被预期的接收者所注意。因此,中间节点经常能够确定包的优先权级
且相应地对此加以处理。传输较低优先权的包可相对地直接了当,因
为这些包并不需要任何优先处理。然而,传输较高优先权的包可采用
附加技术,以降低网络中的延迟。包分段是用于降低较高优先权包的
网络延迟的一项技术。
在本发明的一个实施例中,包分段可指将信息包分解成一序列包
片段。每个包片段典型地具有小于原始包的长度。在上下文中长度是
指包括包或包片段的信息的位或字节数。例如,原始包可具有1500
字节的长度,而包片段可具有100字节的长度。每个包片段可包含来
自原始包的信息的一部分外加片段的头部(header)。在上下文中片
段头部包括一个或多个表示控制信息的位,所述控制信息可协助另一
节点将包片段重新集合成原始包。
包分段是一项用于降低较高优先权包的网络延迟的技术。更具体
而言,包片段的使用允许中间节点将具有较高优先权的包片段在较低
优先权的包片段之间进行通信。例如,中间节点可接收第一和第二包,
所述第一包具有比所述第二包低的优先权。第一包可包括例如来自邮
件消息的信息。第二包可包括例如来自语音对话的信息。中间节点可
在传输队列中存储所述第一和第二包。在上下文中传输队列可指在准
备好由网络设备进行传输之前用来存储包的存储器。传输队列可被组
织成先进先出(FIFO)的结构。在上下文中FIFO是指将包按照最新
近存储到最不新近存储进行排序的存储器结构,并且其中每个包按照
从最不新近存储的包到最新近存储的包的顺序从存储器中被检索到。
例如,食品杂货店中的排队典型地以FIFO来操作,其中排队中的第
一个人是在寄存器处即将被服务的下一个人。因此,如果在中间节点
处第一包在第二包之前被接收,则中间节点可在传输队列中将第二包
存储在第一包后面。这意味着直至第一包被完全传输以后才将传输第
二包。然而,第一包的传输可引入第二包不能容许的延迟水平。换句
话说,第一包的传输可占用这样长的时间,以致于在可接受的时间范
围内第二包将不能到达其目的地节点。通过使用包分段,中间节点能
够在传输队列中将来自第二包的包片段插入到来自第一包的包片段之
间,从而将由第一包所建立的等待时间降低到可接受的水平。
通过实例方法,上面所说明的传输队列问题可得到更好的示例。
假设第一包的长度是1500字节。此外,假设网络设备可在约为64千
位/秒(kbps)连接速度下操作的连接内内传输第一包。第一包的传
输将占用约200毫秒(ms),或约.13ms/字节。假设第二包包括可容
许直至4ms延迟的来自语音对话的信息。如果第二包在传输队列中
位于第一包后面,则在整个第一包被传输的同时,第二包将被延迟200
ms,这远远超出第二包的4ms的延迟容限。结果是,第二包将迟于
到达目的地节点。然而,如果中间节点采用专利分段,则第一包可被
分解成具有长度小于1500字节的包片段。例如,第一包可被分解成
每个为30字节的包片段。来自第一包的30字节包片段的传输时间将
占用约3.99ms。因此,在第一包的包片段已经完全被传输之后,中
间节点可中断第一包的传输,由此将第二包的传输延迟降低到4ms
以下。
然而,由于众多原因,包分段的传统实施不令人满意。例如,包
分段引入由于分段头部形式的附加系统开销所导致的系统中的附加延
迟。这一延迟可被接受,以便于当网络设备正在传送具有较高优先权
的包时降低上述说明的传输队列延迟问题。然而,如果网络设备正在
传送具有较低优先权的包,则这个附加延迟可能不必要地发生。在另
一实例中,包片段的大小典型地取决于包的优先权级和连接速度。然
而,如果连接速度或优先权级发生变化,则考虑到变化,包片段的大
小可不再适合。正如下面所更加详细说明的那样,通过根据变化的条
件,例如优先权级、连接速度等来动态地管理包分段,本发明的实施
例可减少这些问题。
例如,本发明的一个实施例可自动地根据操作参数的变化来调节
包分段的操作状态。在此所使用的术语“操作状态”是指在中间节点
中包分段功能性的操作状态。状态的实例可包括激活的(active)或
解除激活的(de-active),其可指将包分段功能性分别开启或关闭。
在此所使用的术语“操作参数”是指在中间节点中包分段功能性的操
作条件。操作参数的实例可为信息的优先权级、连接速度、被通信的
包的数量等。应当理解所给出的操作状态和操作参数实例在性质上为
示例性的,且并不意味着在此局限本发明的范围。
包分段的传统实施的一个问题可是:用户通过用户接口手动地设
置包分段的状态。在上下文中用户接口是指在中间节点的操作系统
(OS)和用户之间进行用户命令通信的软件程序。在上下文中OS是
指管理计算机平台的基本功能,如文件管理、存储器管理、输入/输
出(I/O)管理等的软件。如果用户想要改变包分段的操作状态,如
从激活改变到解除激活,则用户手动地访问用户接口且将状态变化命
令传达到OS。
通过对照方式,本发明的一个实施例可监视网络的一个或多个预
先设定参数的某些变化,并且由此自动地改变包分段的操作状态。例
如,如果中间节点探测到在某一时间周期内仅有较低优先权的包已经
被接收,则本发明的这个实施例可自动地将包分段的状态从激活改变
到解除激活。如果中间节点探测到较高优先权的包,则本发明的这个
实施例可自动地将包分段的状态从解除激活改变到激活。在此使用术
语“自动地”来指采取动作而不需要用户干涉。
包分段传统实施的另一问题是:用户还基于有关操作参数的一组
假设来手动地设置包片段的大小。操作参数的一个实例可包括连接速
度。典型地,连接速度越快,进行包的通信占用的时间越少。例如,
1500字节的包在64kbps连接下比32kbps连接下被传输得更快。
进行包的通信占用的时间越少,则每个包片段的大小可更大,以避免
或至少减少上面所说明的传输队列延迟问题。可影响包片段大小的另
一操作参数是包的优等权水平。例如,当较低优等权的包进行通信时,
由于较低优先权的包可容许较长的延迟时间,故较长的包片段长度可
是适合的。然而,当较高优先权的包进行通信时,由于较高优先权的
包可容许较短的延迟时间,故较短的包片段长度可是适合的。因此,
适合的包片段大小可取决于不同的操作参数,如例如被通信的信息的
优先权级及连接速度。
然而,操作参数可随时间变化。例如,取决于某些条件,如被通
信的包的数量、通信介质变化的物理特征等,连接速度可变化。因而,
如果根据给定的连接速度和/或所通信的信息类型来选择包片段大
小,并且一个或两者均发生变化,则包片段大小可能不提供所需的系
统性能。
本发明的一个实施例可监视网络的操作参数的某些变化,并且相
应地修改包片段的大小。例如,本发明的这个实施例可监视连接速度
和优等权级,且自动地相应改变包片段的大小以改善系统的性能。随
操作参数的改变对包片段大小做适当的修改可确保由于包分段所引入
的延迟得到减少,且由此可实现包分段的优点。
值得注意地是:在本技术说明中对“一个实施例”或“实施例”
的任何提及在上下文中意味着:与所述实施例相联系所说明的特定特
性、结构或特征可被包括在本发明的至少一个实施例中。在本技术说
明各处出现的短语“在一个实施例中”并没有必要全部指相同的实
施例。
现在详细参考附图,其中贯穿始终类似的部件被指定类似的参数
数字,在图1中示例出适合于实践本发明一个实施例的系统。图1是
系统100的方框图,所述系统100包括经由网络106被连接到目的地
节点110上的源节点102。源节点102通过连接104被连接到网络106
上。目的地节点110通过连接108被连接到网络106上。虽然图1仅
示出一个源节点和一个目的地节点,但是应当理解在系统100中可使
用任何数量的源和目的地节点,且这仍然属于本发明的范围。此外,
术语“连接”和“互连”以及其变化在上下文中可指物理连接和/或
逻辑连接。
图2是根据本发明一个实施例的网络方框图。图2示例出可表示
网络106的网络200。网络200包括通过连接204被连接到中间节点
206上的中间节点202。中间节点202可例如接收来自源节点,如源
节点102的信号。中间节点206可向目的地节点,如目的地节点110
发送信号。虽然在图2中仅示出两个中间节点,但应当理解在网络200
中可使用任何数量的中间节点,且这仍然属于本发明的范围。
图3是根据本发明一个实施例的节点方框图。图3示例出可表示
中间节点,如中间节点202和206的节点300。节点300可包括计算
机平台,如个人计算机或服务器。在本发明的这个实施例中,节点300
包括处理器302、输入/输出(I/O)适配器304、操作员接口306、存
储器310、监视模块318及调度(scheduling)模块320。存储器310
可存储计算机程序指令和数据。处理器302可执行程序指令、并且处
理数据、存储在存储器310中。I/O适配器304通过连接324可与其
它设备通信且将数据转移进入及离开中间节点300。操作员接口306
可提供用户和OS 316之间的接口。操作员接口306可在用户和OS 316
之间进行命令通信,并且向用户提供状态信息。时序安排模块320可
被配置成维持目前的时间和日期。所有这些元件通过总线308被互连,
总线308允许数据在元件之间进行相互通信。I/O适配器304可表示
一个或多个可以连接到局域或宽域网,如例如网络200的网络接口或
I/O适配器。因此,连接324可表示到网络的连接或到其它设备的直
接连接。应当理解节点300可具有任何数量的I/O适配器和连接,如
I/O适配器和连接324,且仍然属于本发明的范围。
处理器302可以是为实施本发明实施例能够提供所需的速度和功
能性的任何类型处理器。例如,处理器302可是来自由Intel
Corporation,Motorola,Compaq,AMD Corporation及Sun
Microsystems所制造的处理器系列中的处理器。在本发明的一个实施
例中,处理器302可是网络处理器,如由Intel Corporation所制造
的1960网络处理器。
存储器310可包括能够存储适合于由处理器所执行的指令的任何
介质。这种介质的一些实例包括,但不局限于:只读存储器(ROM)、
随机存取存储器(RAM)、可编程ROM、可擦除可编程ROM、电子可擦
除可编程ROM、动态RAM、磁盘(例如,软盘和硬盘驱动器)、光盘(例
如CD-ROM)及可以存储数据信息的任何其它设备或信号。在一个实施
例中,指令可以以被压缩及/或加密格式被存储在介质中。正如此处
所使用的那样,术语“适合于由处理器来执行”意味着包括以被压缩
和/或加密格式而存储的指令,以及在由处理器执行之前可被安装者
编译或安装的指令。此外,节点300可包含通过其它I/O控制器的机
器可读取存储设备的各种组合,其由处理器302所存取,且其能够存
储计算机程序指令和数据的组合。
在本发明的一个实施例中,存储器310包括操作系统316、程序
分区312、和数据分区314。程序分区312可存储用来实施在此所说
明的每个相应节点,如源节点102、目的地节点110、中间节点202
及中间节点206的功能的程序指令,并且允许由处理器302执行此程
序指令。数据分区314可存储在执行程序指令期间即将使用的数据。
I/O适配器可以是网络接口,其可包括通过使用所需的通信协议
集、服务及操作程序用于控制在网络设备之间的通信信号的任何适合
技术。在本发明的一个实施例中,I/O适配器304根据TCP/IP规范进
行操作。在本发明的另一实施例中,I/O适配器304根据由IETF
Standard 51,RFC 1661所定义、于1994年7月所采用并从
“
www.ietf.org”可获得的Point-To-Point Protocol(PPP)来操
作。在本发明的另一实施例中,I/O适配器304可根据各种帧延迟标
准,如由Frame Relay Forum(FRF)Standard II所定义、于1997
年5月所采用、于1999年3月所附加并增添且从“
www.frforum.com”
(“FRF.11规范”)可获得的“Voice Over Frame Relay Implementation
Agreement”来操作。在本发明的另一实施例中,I/O适配器304可根
据各种VOIP标准,如由International Telecommunications Union
Telecommunications(ITU-T)Recommendation H.323所定义、于1998
年2月所采用、从“
www.itu.int”(“H.323规范”)可获得的“Packet
Based Multimedia Communications Systems”来操作。在本发明的
另一实施例中,I/O适配器304可根据由IETF提议的标准,RFC 1889
所定义、于1996年1月出版、且从“
www.ietf.org”(“RTP规范”)
可获得的“Real Time Protocol(RTP):A Transport Protocol For Real
Time Application”来操作。在本发明的另一实施例中,I/O适配器
304可根据由IETF提议的标准,RFC 2543所定义、于1999年3月出
版、且从“
www.ietf.org”(“SIP规范”)可获得的“SIP:Session
Initiation Protocol”来操作。这些仅是实例且在可供选择的实施
例中可采用许多其它协议。
I/O适配器304还包括用于将I/O适配器304与适合的通信介质
相连接的连接器。本领域中那些普通技术人员将理解到I/O适配器304
可通过任何适合的通讯介质,如双绞线、同轴线缆、光纤、射频等接
收信息信号。
监视模块318可包括任何硬件、固件或软件模块或其组合,以监
视节点300所需的操作参数。在本发明的一个实施例中,监视模块318
可从包检索到操作参数标识符。在上下文中操作参数标识符可包括来
自包的明确的优先权信息。在上下文中术语“明确的”可指具体地识
别一给定包或序列包的优先权级的位或字节。监视模块318的实例可
是协议分析器。协议分析器可被设计成将信息信号转换成由节点300
可读取的形式。被转换的信息可被加以分析,以确定所接收包的控制
信息。控制信息可被用来确定所接收包的优先权级。例如,如果所接
收的包包括IP包,则通过根据TCP/IP规范检查所述包的IP头部中
的差别服务代码点(Differential Services Code Point(DSCP)),
监视模块319可确定包的优先权级。如果所接收的包包括RPT包,则
监视模块318可根据RPT规范检查所述包的RTP头部中的优先权级标
识符。如果包包括一个Voice Over IP(VOIP)包,则监视模块318可
根据H.323规范和SIP规范检查VOIP包中的控制信息,以确定优先
权级。如果包包括帧延迟包,则监视模块318可根据FRF.11规范检
查帧延迟包中的控制信息,以确定优先权级。这些仅是实例,且在可
供选择的实施例中可采用来自许多其它协议的其它标识符。
作为选择地,监视模块318可确定一个或多个包的隐含的优先权
级。在上下文中术语“隐含的”可指通过使用一组规则或启发式来标
识一个包或序列包的优先权级。一个规则或启发法可例如基于包的长
度。如果包长度相对短的话,如例如500字节,则可建立规则。在这
种情形下,存在这样合理的可能性,即包正在携带时间敏感信息且应
该被分配高的优先权级。另一规则或启发法可基于包内的信息,如电
话号码。如果监视模块318探测到在包内的电话号码,则可建立一规
则,可存在这样合理的可能性,即所述包或随后的包可能正在携带语
音信息且应该被分配高的优先权级。
在本发明的另一实施例中,监视模块318可包括一个测量连接324
的连接速度的模块。连接速度可例如由每秒千位(kbps)来表示。
虽然监视模块318作为用来检索到来自包的优先权信息和连接速
度的模块已经被加以示例,但是应该理解:还可使用被配置成检索到
任何数量的所需操作参数的任何类型监视模块,且这仍然属于本发明
的范围。
图4是根据本发明一个实施例的程序分区的方框图。图4示例出
可表示程序分区312的程序分区400。在这个实施例中,程序分区400
包含用来管理中间节点,如中间节点202和206的包分段的程序指令。
更具体而言,本发明的这个实施例利用四个程序指令集,所述四个程
序指令集在此被共同地分别称为包分段管理器模块(PFMM)402、包
分段存取模块(PFAM)404、包片段大小模块(PFSM)406和包分段模
块(PFM)408。当然,本发明的范围并不局限于这个特定的指令集。
在这个实施例中,PFMM 402总体上被操作用来管理包分段。PFMM
402接收通过连接324从监视模块318所接收的一个或多个包的操作
参数信息。在此所使用的术语“操作参数信息”可包括有关操作参数
的任何所需的信息。PFMM 402选择操作参数信息到PFAM 404和/或PFSM
406的路由。PFMM 402还被操作用来与OS,如OS 316及操作员接口,
如操作员接口306对接,以协调操作状态、操作参数的配置,或PFAM
404、PFSM 406和PFM 408所需的任何其它配置信息。在本发明的另
一实施例中,参照PFMM 402所说明的功能性可作为一特定系统所需
的PFAM 404、PFSM 406、PFM 408或其它程序模块的一部分而被实施。
PFM 408被操作用来执行节点300的包分段。本发明的一个实施
例根据于1999年9月出版、从
www.ietf.org(“MCML规范”)可得到
的IETF提议的标准,题为“The Multi-Class Extension To Multi-Link
PPP,”RFC 2686执行包分段。本发明的另一实施例根据由FRF Standard
12所定义、于1997年12月所采用、从
www.frforum.com(“FRF.12规
范”)可得到的“Frame Relay Fragmentation Implementation
Agreement”执行包分段。虽然本发明的实施例可使用MCML规范或
FRF.12规范中所定义的包分段协议,但是应该理解PFM 408可使用
任何包分段协议,且这仍然属于本发明的范围。
参考图5和6及所附的实例,可进一步说明系统100、PFMM 402、
PFAM 404、PFSM 406和PFM 408的操作。虽然在此所呈现的图5和6
可包括一特定的处理逻辑,但是应该理解:处理逻辑仅仅提供在此所
说明的通用功能性可以如何被实施的一个实例。此外,除非另外加以
指示,否则在给定处理逻辑内的每个操作并没有必要按照所呈现的顺
序被执行。
图5是由根据本发明一个实施例的包分段存取模块(PFAM)所执
行的处理逻辑的方框流程图。在块502上可确定至少一个包的操作参
数。在块504上可确定操作参数的操作状态。在块506上可基本上根
据操作状态来执行包分段。
在本发明的一个实施例中,操作参数可是由优先权方案所定义的
优先权级。在上下文中术语“优先权方案”可指用于将信息分成不同
信息类别、且根据一个或多个标准为每个类别进行分级的任何技术。
一些标准的实例可是服务类别、服务质量(QoS)、对时间延迟的灵敏
度、服务成本、源节点、目的地节点、信息类型等。在上下文中术语
“信息类型”可指来自语音对话、视频会议、流式视频、电子邮件消
息、语音邮件消息、图表、图像、视频、文本等的数据。在上下文中
术语“优先权级”是指可指示其等级的每个类别的标识符。优先权级
的实例可是高优先权级、中等优先权级、低优先权级等。优先权方案
可具有任何数量的优先权级,且可通过使用任何数量或类型的标准来
定义每个优先权级。
在本发明的一个实例中,使用根据时间敏感信息和非时间敏感信
息来将信息分类的优先权方案。在上下文中时间敏感性可指其中在某
一时间周期内期望被递交到目的地节点的任何信息。时间敏感信息的
实例可包括来自语音对话、视频会议及流式视频的信息。在上下文中
非时间敏感信息可指任何其它类型的信息。在本发明的一个实施例
中,时间敏感信息可被分配一高的优先权级,且非时间敏感信息可被
分配一低的优先权级,虽然这仅仅是一个实例。
虽然在本发明的一个或多个实施例中已经说明了特定的优先权方
案和优先权级,但是应该理解可以使用任何数量的优先权方案和优先
权级,且这仍然属于本发明的范围。
在本发明的一个实施例中,操作状态可是激活的或解除激活中两
者之一。如果优先权级为高,则在块504上可确定操作状态是激活的。
如果优先权级为低,可在块504上确定操作状态是解除激活的。在此
所使用的术语“激活的”可指启动或开启包分段的功能性。在此所使
用的术语“解除激活的”可指停用或关闭包分段的功能性。
在本发明的一个实施例中,通过估算在有限时间周期内是否操作
参数已经被加以确定,操作状态可被加以确定。根据所述估算确定操
作状态。在本发明的一个实施例中,操作参数可被确定为高的优先权
级。如果在有限时间周期内未确定高的优先权级,则操作状态可被确
定为解除激活的。
在本发明的一个实施例中,通过使用操作参数来搜索存储器,可
确定操作状态。例如存储器可包括存储器310。通过使用与存储器中
操作参数相联系的操作状态,操作状态可被加以确定。
在本发明的一个实施例中,通过接收一个具有操作参数标识符的
包,可确定操作参数。如果不存在操作参数标识符,则通过使用上述
所讨论的一个或多个规则或启发法可推断出操作参数。操作参数标识
符可从包中被检索到。在本发明的一个实施例中,操作参数标识符可
表示优先权级。更具体而言,操作参数标识符可为包括DSCP、RTP标
识符、VOIP标识符和语音信息标识符一组中之一。在此所使用的术语
“语音信息标识符”可指包可携带语音和/或视频信息的任何明确的
标识。
通过实例方式,可更好地理解参考图5所说明的系统100和处理
逻辑的操作。然而,应当理解在下面所给出的实例中,优先权级、优
先权级的定义、操作参数、操作状态、时间周期、假设和其它值或参
数在性质上可是示例性的,且在此并不旨在局限本发明的范围。
在这个实施例中,PFAM 404管理系统100的包分段。PFAM 404
至少部分地基于一个或多个操作参数可自动地改变包分段的操作状
态。在本发明的一个实施例中,PFAM 404可接收一个或多个被接收包
的优先权级形式的操作参数信息。PFAM 404管理PFM 408的操作状态。
PFAM 404具有对数据分区,如数据分区314的入口。数据分区可包括
这样的表格,其具有与给定优先权方案的每个优先权级相联系的操作
状态。操作状态例如可是激活的或解除激活的。根据本发明一个实施
例可使用的表格实例在下面被示为表格1。应当理解在此所使用的任
何表格仅用于示例性目的,且本发明的实施例可并不以与如下所给出
的正好相同的形式来存储相关信息。
表1
优先权级
时间周期
操作状态
高优先权级
0秒
激活的
低优先权级
30秒
解除激活的
如表1所示,两个优先权级被加以定义:高和低。高优先权级可
包括可容许例如每中间节点4ms延迟的任何信息。高优先权级信息的
实例可包括来自语音对话、视频会议和来自视频或图像文件的实时流
式视频的信息。低优先权级可包括非高优先权级信息的任何其它类型
的信息,如语音消息或电子邮件消息。然而,应该理解可利用任何类
型的所需的优先权方案,且其仍然属于本发明的范围。
每个优先权级可被分配一时间周期值,其可表示其中给定优先权
级的包在改变操作状态之前可被接收的时间周期。所述时间周期可用
于确保PFM 408并不经常地没有必要地将操作状态从“激活的”切换
到“解除激活的”。例如,在这个实例中低优先权包的时间周期被设
置为30秒。这可有利于确保PFM 408并没有不必要地响应于例如在
高优先权级包流内插入低优先权级包,而改变其目前的操作状态。换
句话说,用于接收低优先权级包的时间周期有助于改善这一可能性,
即PFM 408可将其操作状态改变到“解除激活的”而并没有丢失高的
优先权级包。如果PFM 408的操作状态目前是激活的,且在大于给定
的30秒时间周期中,一系列低优先权级包而没有任何高优先权级包
被接收,则PFAM 404可检索到在这个实例中为“解除激活的”相联
系的操作状态。PFAM 404可向PFM 408发送信息,指示PFM 408可将
其目前的操作状态改变到新的“解除激活的”操作状态。阐明另一种
方法,如果PFM 408目前的操作状态为激活的,且在30秒内没有高
的优先权级包被接收,则PFAM 404可检索到低优先权级相联系的操
作状态“解除激活的”。PFAM 404可向PFM 408发送信号,指示PFM 408
可将其目前的操作状态改变到“解除激活的”的新操作状态。
在另一实例中,高优先权级的时间周期被设置到0秒。这意味着
节点300的PFAM 404可并没有等待给定的时间周期,以在改变操作
状态之前接收高优先权级的包。而是在一旦接收到任何高的优先权级
包时,PFAM 404可将PFM 408的操作状态从“解除激活的”改变到“激
活的”。这是所需的,以为了确保一旦高优先权级包被节点300接收,
则PFM 408可将其操作状态改变到“激活的”操作状态,以减小延迟
任何高级包的可能性。如果PFM 408的操作状态目前为“解除激活的”,
且如果任何高优先权级的包被接收,则PFAM 404可检索到高优先权
级的相联系的操作状态“激活的”。PFAM 404向PFM 408发送信号,
指示PFM 408应该将其目前的操作状态改变到“激活的”新操作状态。
在本发明的另一实施例中,PFAM 404可根据一个或多个时序安排
参数(schedule parameter)管理包分段。在上下文中术语“时序安
排参数”可指例如时间、时期或时间和日期。数据分区,如数据分区
314可包括这样的表格,其具有与一个或多个时序安排参数相联系的
操作状态。操作状态可例如为激活的或解除激活的。根据本发明的一
个实施例可被使用的表格实例被如下示为表2。
表2
日期
时间
操作状态
2000年12月1日
8:00am
激活的
2000年12月1日
8:00pm
解除激活的
2000年12月2日
8:00am
激活的
在本发明的这个实施例中,表2可包括例如由时间和日期组成的
时序安排参数,以及与时间和日期相联系的操作状态。操作状态可包
括例如激活的和解除激活的。在本发明的这个实施例中,通过根据已
经排定的时间和日期改变PFAM 406的操作状态,PFAM 404可管理包
分段。在上述实例中,PFAM 404可访问表2,以检索到连同相联系的
操作状态一起的一个或多个已经排定的时间和日期。PFAM 404可接收
来自被设计用来维持目前日期和时间的模块,如时序安排模块320的
信号。PFAM 404将所接收的信号与所检索到的时间和日期进行比较。
如果比较结果导致匹配,则PFAM 404向PFM 406发送一具有新操作
状态的信号。例如,PFAM 404可分别检索到8:00am和2000年12
月1日这样的时间和日期,以及相联系的“激活的”操作状态。PFAM 404
从时序安排模块320接收信号。一旦PFAM 404接收到表示2000年12
月1日8:00am的信号,则PFAM 404向PFM 406发送信号,以将其
操作状态改变状态到“激活的”。这种相同的或类似的过程可继续到
下行直至所有行被处理。如果要求的话,PFAM 404可被配置成从表2
的第一行开始,直至到达表2的最后行。PFAM 404还可被配置成基于
循环而重复某些行。
例如当中间节点或系统可假设某一类型的信息可在不同的时间或
日期被接收时,本发明的这个实施例是理想的。例如,系统管理员可
预计在每日的8:00am至8:00pm之间接收高优先权信息,且在每晚
8:00pm至8:00am之间接收低优先权信息。例如,因为当系统或中
间节点被较不频繁地利用时,在晚间来自电子邮件和语音信箱的所有
信息被加以处理且一起被大量通信,所以这可发生。这个时序安排可
以表2的形式被加以实施,且PFAM 404可使用表2来相应地改变操
作状态。
应该理解表2可使用任何数量的时间或日期,且其仍然属于本发
明的范围内。此外,应该理解表2和PFAM 404可利用时间、日期或
时间和日期,且仍然属于本发明的范围内。
图6是根据本发明一个实施例的包分段大小模块(PFSM)的处理
逻辑的方框流程图。在块6 02可确定至少一个操作参数。在块604通
过使用至少一个操作参数可确定包分段的大小。在块606根据块604
的确确定可基本上修改包片段的大小。
在本发明的一个实施例中,操作参数可包括连接速度。在本发明
的这个实施例中,包片段的大小可随着连接速度的增加而增加。相反
地,包片段的大小可随着连接速度的减小而减小。
在本发明的一个实施例中,操作参数可包括优先权级。在本发明
的这个实施例中,包片段大小可随着优先权级的增加而减小。相反地,
包片段的大小可随着优先权级的减小而增加。
在本发明的一个实施例中,在块604中的确定可按如下被执行。
在一时间周期内操作参数是否已经被确定被加以估算。包片段的大小
根据所述估算可被基本上确定。在本发明的一个实施例中,操作参数
可是一个高的优先权级,且如果在所说时间周期内此高的优先权级未
被加以确定,则一新的包片段大小可被加以确定且被用来修改包分
段。在本发明的一个实施例中,操作参数为一低的优先权级,且如果
在时间周期内此低的优先权级被加以确定,则一新的包片段大小可被
加以确定且被用来修改包分段。
在本发明的一个实施例中,所述至少一个操作参数包括连接速度
和优先权级。在本发明的这个实施例中,在优先权级内随着连接速度
的增加包的片段大小在增加。相反地,在优先权级内,随着连接速度
的减少包片段大小在减少。相对于在一时间周期内所确定的优先权
级,上述在块604中的确定还可被使用在本发明的这个实施例中。
在本发明的一个实施例中,在块606中的所述确定可按如下被执
行。使用至少一个操作参数来搜索存储器。与至少一个操作参数相联
系的包片段大小被检索到。
通过实例,参考图6所说明的系统100和处理逻辑的操作可被更
好地加以理解。然而,在下述给出的实例中应该理解:优先权级、优
先权级的定义、操作参数、操作状态及时间周期在性质上为示例性的
且在此并不意味着局限本发明的范围。
PFSM 406被用来基于一个或多个操作参数自动地修改包片段的大
小。在本发明的一个实施例中,PFSM 406接收一个或多个被接收包的
优先权级及以连接如连接324的连接速度形式的操作参数信息。PFSM
406管理PFM 408的包片段大小。PFSM 406具有到数据分区,如数据
分区314的入口。所述数据分区可包括这样的表格,其具有与一给定
优先权方案的每个优先权级及每个连接速度级相联系的包片段大小
值。根据本发明的一个实施例可被使用的一个表格实例被如下示为表
3。
表3
优先权级
时间周期
连接速度
包片段大小
高优先权级
0秒
64kbps
32字节
高优先权级
0秒
128kbps
64字节
高优先权级
0秒
2mbps
1000字节
低优先权级
30秒
64kbps
64字节
低优先权级
30秒
128kbps
128字节
低优先权级
30秒
2mbps
2000字节
如表3所示,PFSM 406可接收如优先权级和连接速度等输入信息。
PFSM 406可使用所述输入信息来搜索表3并检索到时间周期值以确定
是否检索到PFM 408的合适操作状态。通过使用参考表1所述的优先
权定义,高的优先权级可包括可容许例如每中间节点5ms延迟的任
何信息。在这个实例中,高优先权级包的包片段大小将根据连接速度
而变化。对于给定的约5ms的延迟边界,例如64kbps的连接速度
可设置32字节的包片段大小。在64kbps下32字节的包片段的传输
时间将占用大约4.25ms,这是对所述给定优先权级可容许的。随着
连接速度在增加,通过使用较大的包片段大小可导致相同的5ms延
迟。例如,128kbps的连接速度可设置64字节的包片段大小。在128
kbps下64字节的包片段的传输时间将占用大约4.25ms,对给定的
优先权级这也是容许的。
由定义,低优先权级包可容许较长的延迟周期。因此,PFM 408
的操作状态可按照从前的本发明实施例被设置成“解除激活的”。然
而,可存在这样可出现的条件,其要求执行较低优先权级包的包分段。
例如,优先权方案可通过时间边界来确定低优先权级的包,如携带可
容许9 ms或更小延迟的信息的包。在这种情况下,理想地可是将PFM
408的操作状态维持成“激活的”,但是却增加包片段的大小以利用较
快的连接速度。因此,如果PFSM 406要对给定的30秒时间周期及64
kbps的连接速度下将低的优先权级作为输入信息来接收,则PFM 408
的包片段大小可被设置成64字节。在64kbps下64字节包片段的传
输时间将约为8.5ms,这对于给定的优先权级是可容许的。随着连接
速度在增加,通过使用较大的包片段大小,可导致相同的9ms延迟。
例如,128kbps的连接速度可设置128字节的包片段大小。在128kbps
下128字节包片段的传输时间将占用约8.5ms,这还可以为给定的优
先权级所容许。因此,一PFSM 406接收到一个或多个被接收包的
优先权级及连接324的连接速度,则它检索到合适的包片段的大小值。
于是,PFSM 406向PFM 408发送信号,指示PFM 408应该用新的包片
段大小值更换其当前的包片段大小值。
在本发明的另一实施例中,单操作参数如连接速度可被用来确定
包的片段大小。根据本发明这个实施例可使用的表格实例被如下示为
表4。
表4
连接速度
包片段的大小
64kbps
32字节
128kbps
64字节
2mbps
1000字节
如表4所示,包片段大小与给定的连接速度相联系。PFSM 406仅
可将连接速度作为输入信息接收,以确定PFM 408的包片段大小。一
旦连接速度已经被加以确定或被接收,则PFSM 406搜索表3以寻找
合适的包片段大小。例如,如果PFSM 406要将64kbps的连接速度
作为输入而接收,则PFSM 406将利用值64kbps来搜索表3。一旦在
表3中寻找到合适的连接速度,则PFSM 406可检索到与此连接速度
相联系的包片段大小值,在这个实例中其可为32字节。
在假设所有被接收信息具有时间延迟上边界且使用那个上边界对
给定连接速度来确定合适包片段大小的那些系统中,本发明的这个实
施例是理想的。例如,表4对于预计仅携带语音信息的中间节点可能
是合适的,且因此对于由所述中间节点所通信的任何包仅可容许4ms
延迟。给定这一上边界,利用在任何给定连接速度下包片段大小不可
导致大于4ms的延迟这一假设,PFSM 406可利用表4来改变包片段
的大小。
在本发明的另一实施例中,单操作参数如优先权级可被用来确定
包片段的大小。根据本发明这个实施例可被使用的表实例被如下示为
表5。
表5
优先权级
时间周期
包片段的大小
高优先权级
0秒
32字节
低优先权级
30秒
64字节
如表5所示,包片段大小与给定的优先权级相联系。PFSM 406可
仅将优先权级作为输入信息来接收,以确定PFM 408的包片段大小。
一旦优先权级已经被加以确定或被接收,则PFSM 406搜索表5以寻
找合适的包片段大小。例如,如果PFSM 406要将高优先权级作为输
入而接收,则PFSM 406将搜索表5中的高优先权级。一旦在表5中
寻找到适合的优先权级,则PFSM 406可检索到与所述优先权级相联
系的包片段大小值,在这个实例中其可为32字节。
在可具有合理可靠的恒定或平均的连接速度、且可使用那个平均
的连接速度对给定优先权级来确定适合包片段大小的那些系统中,本
发明的这个实施例是理想的。例如,表5对于这样的中间节点可是适
合的,所述中间节点预计64kbps的平均连接速度、且将高优先权级
定义为携带可容许4ms或更小延迟的信息的任何包,且将低优先权
级定义为携带可容许大于4ms延迟的信息的任何包。给定这个平均
的连接速度和优先权级定义,则若平均连接速度正如所假设的那样,
利用在任何给定优先权级下的包片段大小将满足优先权级定义这一假
设,PFSM 406可利用表5来改变包片段的大小。
图7为根据本发明另一实施例的中间节点的方框图。图7示例出
可表示中间节点202和206的中间节点700。中间节点700包括通过
连接704被连接到包分段模块(PFM)706的监视模块702。PFM 706
可接收来自连接704和输入端口708的输入信号,并将通过连接701
发送表示包信号的输出信号。监视模块702可通过连接714接收表示
包输入信号的输入信号、来自输入端口716的输入信号,并通过连接
712发送表示包信号的输出信号。
中间节点700为所接收的包建立了两个潜在的处理路径。第一个
处理路径绕过包分段且当它准备将包传递到下一个节点时继续中间节
点的传统处理操作。第二个处理路径可执行包的分段,随后取决于
PFM,如PFM 706的配置将包或包片段转移以便于传统的处理操作。
监视模块702类似于参考图3所说明的监视模块318。监视模块
702还可被加以配置以将某些输入包信号发送到到PFM 706,以用于
包分段,而同时通过连接712发送其它输入包信号由此绕过PFM 706。
在本发明的一个实施例中,根据从输入716所接收的信号,监视模块
702确定哪些输入包信号通过连接704发送到到PFM 706,以及哪些
输入包信号通过连接712发送。从输入端口716所接收的信号可例如
是来自PFMM、PFAM或PFSM,如分别来自PFMM 402、PFAM 404及PFSM
406。例如,PFMM 402可发送信号到监视模块702,以通过连接712
发送所有高优先权包,以及通过连接704发送所有低优先权包到PFM
706。例如当高优先权包表示时间敏感信息,如来自语音对话、视频
会议或流式视频的信息时,这可是理想的。时间敏感信息典型地通过
较短长度的包来通信,以减少网络中潜在的延迟。因此,理想地是避
免或降低对高优先权包进行分段的发生,因为包分段典型地引入以包
片段头部形式的额外总开销。结果是,监视模块702可被加以配置以
确定包的优先权级,且通过连接712发送高优先权包,以绕开由PFM 706
所执行的包分段。
另一方面,通过使用上述的本发明的一个或多个实施例,可能理
想地是发送表示较低优先权包的输入包信号到PFM 706,以降低较高
优先权包的延迟。在这种情况下,监视模块702可被加以配置以确定
包的优先权级,并通过连接704发送低优先权包到PFM 706。PFM 706
可类似于参考图4所说明的PFM 408。PFM 706可接收来自输入端口708
的输入信号。来自输入端口708的输入信号可是来自例如PFMM、PFAM
或PFSM,例如分别是PFMM 402、PFAM 404及PFSM 406的信号。例如,
PFM 706可接收来自PFAM 404的输入信号,以根据图5及所附实例所
述的处理逻辑改变PFM 706在激活的及解除激活之间的操作状态。在
另一实例中,PFM 706可接收来自PFSM 406的输入信号,以根据参考
图6及所附实例所说明的处理逻辑来改变包片段大小。
在本发明的另一实施例中,监视模块702可经由来自输入端口716
的信号被加以配置,以通过连接712发送低优先权包,以绕过PFM 706。
这可降低在PFM 706处经由来自输入端口708的输入来管理包分段的
需求。
虽然本发明实施例的某些特点已经如此所述被加以示例,但是目
前对于本领域的普通技术人员将想到许多修改、替代、变化及等同物。
因此,要理解为所附的权利要求旨在覆盖所有这样属于本发明实施例
的真实实质内的修改和变化。