ATM是一种用在电信系统(如蜂窝电话系统)中传送异步通信数据
的标准协议。这种协议的基础是用称之为ATM信元的固定大小的信元
传送数据。每个ATM信元包含一个48字节(octet)的有效载荷和一
个5字节的信元头。总的来说,ATM在相关领域是公知的。
ATM能用于大多数低比特速率的应用(如蜂窝话音通信)中。但是,
当被用于低比特速率的应用时,ATM没有有效地利用带宽,而带宽是很
昂贵的。举例说,从各个通信信道来的话音数据被压缩进数据包。然
后每个数据包被存入一个ATM信元的有效载荷中而该信元被从发送源
(如一个基站)传送到接收实体(如一个移动交换中心)。尽管每个
数据包的长度可从几个字节到近20个字节,但ATM信元有效载荷的长
度,正如上面所述,则为48个字节。由于每个ATM信元只携带一个数
据包,ATM信元有效载荷的一大部分在传送中一直是空的,其效率是非
常低的。
为提高ATM带宽的利用率引入了ATM适配层100(AALm),如附图
1所示。AALm 100有两个主要的子层:封装和解封装子层102(AAD)
和复用和解复用子层103(MAD)。AALm100作用如下。AAD子层102
在一个电信系统发送实体(如一个基站)处将从每个信道来的话音数
据(以及其它类型的相关数据)压缩进所谓的微信元的相对较小的数
据包。MAD子层103再在发送实体发送ATM信元之前将尽可能多的微信
元复用到每个ATM信元的有效载荷中。在接收实体处,MAD子层103解
复用(即分离)微信元并由AAD子层102从微信元中提取话音数据。
由于每个ATM信元现在可以同时传送一个以上的数据包(即一个以上
的微信元),从而提高了带宽利用率。
附图2说明了一种先有的使用具有上述AALm 100的ATM来传送蜂
窝数据如话音数据的方法和设备。在发送源200,应用层104将从通信
信道1..n(图中未示)来的话音数据提交给AAD子层102。在AAD子
层102,对每个信道1..n都有一个对应的封装功能2011到201n,从2011
到201n的每个封装功能都表示一个独立的并行进程,其中每个信道1..n
发出的话音数据(和其它类型的相关数据)被压缩进微信元。然后这
些已封装的微信元被提交给MAD子层103,其中由复用器203接收每个
微信元并背对背连接它们,形成了ATM信元的有效载荷。如果由于某
种原因AAD子层102拖延了向MAD子层103提交微信元,复用器203
自动用一填充微信元来填补当前ATM信元有效载荷中的剩余部分。这
个填充微信元不包含任何有用的数据,而仅仅是用来占用ATM信元有
效载荷的空余部分。一旦该ATM信元有效载荷被填满,它就被提交给ATM
层101。ATM层101再产生一个ATM信元头,将信元头附加到ATM信元
有效载荷上,然后通过通信链路207将ATM信元,(包括信元头和有
效载荷)传送给通信系统接收实体220。
如果向MAD子层103提交微信元的延时较大,就象在非高峰时经
常发生的那样,ATM层101中的ATM信元发生器205将产生一个未被指
配的ATM信元(即,一个有效载荷中不含微信元的信元)。未被指配
的ATM信元被复用器206复用进ATM信元流并经通信链路207发送给
接收实体220以保持ATM信元流。
在接收实体220,每个ATM信元均被提交给ATM层101,由解复用
器208来区分未被指配的ATM信元和携带微信元的ATM信元。未被指
配的ATM信元被图示的“垃圾箱”209丢弃。如果ATM信元携带了微信
元,ATM层101除去ATM信元的信元头并将ATM信元的有效载荷部分提
交给MAD子层103,由解复用器211区分填充ATM信元和携带数据的ATM
信元。填充ATM信元被丢弃(图中未示),而携带数据的微信元被从
信道中分离出来并被提交给AAD子层102中相应的从2131到213n的解
封装功能。解封装功能2131至213n从每个微信元中提取话音数据并将
其提交给应用层104。
附图3显示有关微信元301的一个已知的协议。象ATM信元一样,
一个微信元301被分为一个头302和一个有效载荷303。头一般被分为
下列域:电路(信道)识别(CID)码304、长度码305、和头完整性
校检(HIC)码306。CID码304提供将每个微信元与其相应的信道联
系起来所需的信息。长度码305提供判定每个微信元的首末字节的位
置所需的信息。CID码304和长度码305一起使得一个ATM信元可以携
带多个微信元,每个对应于一个不同的信道。CID码304和长度码305
也提供了足够在接收实体220的AAD子层102解复用(即分离)微信
元的手段,只要微信元是连续的背对背连接,如上所述。
附图4描述了一个ATM信元流,它按照附图2中的方法和/或设备
来构造,它是一个时间的函数。在附图4中,时间按照箭头401方向
前进。微信元403,404,405和407在不同的时间点到达MAD子层103。
每个ATM信元415到419由一个信元头和一个有效载荷部分组成,例
如,ATM信元头420和ATM信元有效载荷421对应于ATM信元418。
一开始,微信元403被MAD子层103复用进ATM信元416的有效
载荷。由于在微信元403和微信元404分别到达MAD子层103的中间
有延时,MAD子层103必须在微信元403后插入一个填充微信元409以
填满ATM信元416有效载荷的剩余部分。尽管微信元404和微信元405
在ATM信元416被ATM子层101发送出去之前就已到达MAD子层103,
但微信元404和405还是被复用进下一个可用ATM信元417的有效载
荷。由于微信元405和微信元407在可供使用的时间有延时,MAD子层
103必须在微信元405后插入一个填充微信元410以填满ATM信元417
有效载荷的剩余部分。更进一步,当MAD子层103开始构造ATM信元418
的有效载荷时微信元407还不是完全可用;因此,MAD子层103必须等
到它开始构造ATM信元419的有效载荷时才能插入微信元407。
附图4显示了在ATM中采用AALm100子层在低比特速率应用中可
以提高ATM带宽利用率。例如,ATM信元417的有效载荷携带了3个独
立的微信元;因此,浪费的有效载荷较少。但是,附图4也显示了即
使是采用了AALm100子层的ATM还是浪费了可观的一部分带宽,象图
示ATM信元中被填充微信元409和填充微信元410所填充的部分。为
了说明即使采用了上述AALm100的ATM在带宽利用率方面效率如何低,
举个例子,一个未携带数据的53字节的ATM信元(即,一个未被指配
的ATM信元),ATM信元418,表示了相当于6-7毫秒的被浪费的带宽。
每个填充微信元都表示一定额外数量的被浪费的带宽。
如果把采用AALm100的ATM用于低比特速率应用,如蜂窝话音通
信,就需要通过减小ATM信元有效载荷的不用部分的大小来减少带宽
的无效使用,尤其是在有数据时。
发明详述
附图5是描述本发明的一个示例实施方案的流程图。总的来说,这
一实施方案提供了一种使用带改进了的AALm子层的ATM协议来有效地
准备和发送蜂窝电信数据(如蜂窝话音数据)的方法。这种方法在下
面将做更详细的描述。
首先,用户数据脉冲串(包括话音数据),从每个活动的呼入通信
信道到达发送源(如一电信基站),如块505所示。第二,位于发送
源的AAD子层102在用户数据的每个脉冲串可用时通过将数据压缩进
指配微信元的有效载荷部分来封装它,如块510所示。这些微信元被
称为指配微信元,这是因为AAD子层102将对应于一个特定的通信信
道的一个用户数据脉冲串“指配”给这些微信元中的每一个。第三,AAD
子102在指配微信元被封装后立即将它们送给MAD子层,如块515所
示。
MAD子层103准备着连续地接收从AAD子层102来的指配微信元。
只要指配微信元以一个不间断的流的形式到达MAD子层103,MAD子层
103就背对背地连接它们以形成当前ATM信元的有效载荷。只要AAD子
层102不断地发送指配微信元直到当前ATM信元的有效载荷已满,MAD
子层103就不断地链接指配微信元。以上所述由方框520,525和530
结合起来表示。但是,只要任意两个指配微信元到达MAD子层103的
时间之间有一点延时,MAD子层103就将产生一个或多个解耦合微信元。
解耦合微信元不同于其他微信元,如指配微信元和填充微信元。解耦
合微信元不含头或有效载荷。实际上,它们是具有一定预定长度和比
特模式的数据结构,在下面将详细说明。MAD子层103再接着使用这些
解耦合微信元而不是指配微信元(因为当前没有可用的)来建立当前ATM
信元的有效载荷直至当前ATM信元的有效载荷满或从AAD子层102来
了一个或更多的可用的指配微信元。以上所述由方框520,535,525
和530结合起来表示。
一旦当前ATM信元被填满,MAD子层103将有效载荷交给ATM层
101,如方框540所示。ATM层101将一个ATM信元头附在有效载荷上,
然后发送源发送该ATM信元(包括信元头和有效载荷)给接收实体(例
如,一个电信移动交换中心),如方框545所示。由于根据ATM协议
必须保持一个持续的ATM信元流,上述方法将不断重复,如方框550
所示。
在一优选实施方案中,每个解耦合微信元在长度上是一个字节,如
上所述。为使检测器930能从指配微信元中区别出解耦合微信元,必
须建立一个特别的解耦合码。例如,可使用255(二进制为11111111)
的解耦合码,如附图10所示。当然,如果设置了255的解耦合码来从
指配微信元中区别出解耦合微信元,本领域的技术人员就容易知道,
为保持微信元的对准,指配微信元的第一个字节就绝不能设为值255。
在发生单个比特差错时,可通过定义一个基本解耦合码和一个辅助
解耦合码的集合来进一步保护微信元的对准,其中在基本解耦合码值
和每个辅助解耦合码值之间保持一个汉明间距。例如,如果基本解耦
合码值的十进制值为255(即二进制的11111111),辅助解耦合码的
集合应由下列十进制值组成:254,253,251,247,239,223,191
和127(即分别是二进制的11111110,11111101,11111011,11110111,
11101111,11011111,10111111,和01111111)。更进一步,接收实
体的解码器应能解码和识别基本解耦合码和每个辅助解耦合码为解耦
合微信元。同样,本领域的技术人员应容易理解,任一指配的第一字
节不能被设置为任何基本或辅助解耦合码的值以保持微信元的对准。
如上所述,在优选实施方案中每个解耦合微信元的长度可能是一个
字节。通过减少解耦合微信元的长度,本发明由于减少了在一段延时
后才有指配微信元可用时将指配微信元插入ATM信元的有效载荷中所
需的时间而提高了带宽利用率。换句话说,如果目前有指配微信元,MAD
子层103就不再需要像采用填充微信元的先有方法一样等到下一个ATM
信元来插入指配微信元。
上述示例实施方案提供了一种有效地准备和传送蜂窝电信数据的方
法,附图6则描述了一种用同样的ATM协议和改进的AALm子层接收蜂
窝电信数据的方法。下面详细介绍该方法。
首先,ATM信元从一个传送源到达接收实体(如一个电信移动交换
中心),如图示方框605。其次,ATM子层101除去ATM信元头并将ATM
信元有效载荷送给MAD子层103,如方框610所示。MAD子层103再从
ATM信元有效载荷中逐个分离微信元,并判断每个微信元是解耦合微信
元还是指配微信元。MAD子层103通过检查与解耦合微信元相联系的上
述预定义的比特模式来做出这种判断。这一步由方框615和620的结
合来说明。如果下一个微信元是解耦合微信元,该微信元被丢弃,如
方框625所示。如果判断方框637判断还有微信元,MAD子层103分离
下一个微信元,并判断它是解耦合微信元还是指配微信元。如果下一
个微信元是指配微信元,根据方框630,MAD子层103将该指配微信元
发送给AAD子层102。AAD子层于是对各个指派微信元进行解封装,并
将其中包含的用户数据分配给相应的电信信道,如方框635所示。由
于ATM信元被按照ATM协议源源不断地发送给接收实体,上述方法本
身不断地重复,如方框640所示。
附图7A和7B(下面统称为附图7)是一描述本发明的另一实施方
案的流程图。这一实施方案也提供了一种有效准备和发送蜂窝电信数
据的方法。这一实施方案很像附图5中描述的示例实施方案。实际上,
对应于方框705到745的该实施方案的方法步骤与对应于方框505到
545的方法步骤相同。两种实施方案的差别在于,根据此替代方案,将
首先判断是否有从各个通信信道来的数据,如方框701所示。如果有
用户数据,替代实施方案的方法以和上面描述的方框505至547同样
的方式按照方框705至747继续进行。如果当前没有用户数据,再判
断当前是否有活动的通信信道,如方框702所示。如果有活动的通信
信道,替代方案的方法也将按照方框705至747继续。但是,如果没
有活动的通信信道,ATM层101将产生并发送一个未指配ATM信元,如
方框746和747所示。一个未指配的ATM信元不包含任何有用的数据,
也不包含任何微信元。相反,未指配ATM信元只是占据ATM信元流的
空间以保持ATM信元流的定时和对准。
这一替代实施方案的原因是在某些通信系统中,存在着一些在用户
数据的脉冲串之间(即在指配微信元之间)会有显著的延时的期间。
例如,如果应用是蜂窝电话系统,在深夜或清晨的时间里的用户数据
脉冲串之间可能有显著的延时。实际上,也有一些在所有的通信信道
上都没有通信活动的期间。如果情况是这样,发送一个或多个未指派
的ATM信元而不是一个或多个其中各含有48个解耦合微信元的指配ATM
信元将更有效率。不管采用哪个实施方案,ATM信元流必须保持。该替
代实施方案只提供了是通过发送一系列未指配ATM信元还是通过发送
一系列填充了解耦合微信元的ATM信元来这么做的选择。
在另一个与附图7说明的方法类似的替代实施方案中,未指配ATM
信元的产生是由经过了一段其间没有用户数据的时间来触发的。
作为与附图7相对应,附图8描述了一种用于接收在用户数据脉冲
串之间有显著延时和/或没有活动的通信信道时已经准备了的电信数据
的方法的替代实施方案。这种用于在用户数据脉冲串之间有显著延时
的时候接收电信数据的方法非常类似于附图6中描述的示例实施方案。
实际上,对应于方框805,810至835的替代实施方案的用于接收电信
数据的步骤和对应于方框605和610至635的步骤相同。这两个接收
通信数据的实施方案的不同之处在于当接收实体(方框805)收到ATM
信元后,替代实施方案的ATM层101首先判断ATM信元是未指配的还
是已指配的。方框845表示了这一判断。如果该ATM信元是未指配的,
ATM层101丢弃该信元,如方框850所示。如果该ATM信元是已指配的,
此方法按照与前一实施方案类似的方式继续从方框810直至840。
附图9描述可用来实现上述准备、发送和接收电信数据的各种方法
的设备。典型情况下,蜂窝电信系统的每个小区都至少包括一个基站。
每个基站依次维护一个或多个用于接收从运行在该小区的不同通信信
道来的用户数据(包括话音数据和其它类型的相关数据)的接收器。
一般来说,基站是为该领域的技术人员所熟知的。
在附图9中,基站905将从各个通信信道1..n来的用户数据导入
独立的封装单元9101到910n。每个封装单元9101到910n根据已知的技
术(未示)将来自对应通信信道1..n的用户数据压缩进各个微信元的
有效载荷中。这些微信元在上面被称之为指配微信元。然后封装单元
9101到910n将这些微信元发送到复用器915。复用器915再将这些指
配微信元背对背连接起来构造当前ATM信元的有效载荷(图中未画)。
复用器915继续连接指配微信元直到当前ATM信元有效载荷完成或在
从封装单元9101到910n接收的指配微信元中有延时为止。
如果在从封装单元9101到910n接收指配微信元中有延时,复用器
915将代之以使用由微信元发生器902产生的解耦合微信元来构造当前
ATM信元的有效载荷。复用器915将继续复用解耦合微信元进当前ATM
信元直到有效载荷装完或有从封装单元9101到910n来的指配微信元。
一旦ATM信元有效载荷被填满,一个ATM信元头就被附加上(未示)
且ATM信元(包括信元头和有效载荷)就通过传输链路925被发送给
接收实体920。发生器950和复用器955的作用在下面详细介绍。
在接收实体920,ATM信元头按照已知的技术(未示)被去除并有
一个检测器930判断每个微信元是指配微信元还是解耦合微信元。如
果检测器930判断一个微信元是解耦合微信元,检测器930就通知解
复用器935丢弃该微信元,如“垃圾箱”940所示。如果检测器930判
断一个微信元是指配微信元,解复用器935就将该微信元送至解封装
单元9451到945n中适当的一个。解封装单元9451到945n再从微信元
中取出用户数据并将用户数据送至相应的通信信道(未示)。检测器
960、解复用器965和“垃圾箱”970的作用在下面详细介绍。
根据上述替代方案中的方法,在所有通信信道上均可能有扩展的时
间区间,在该时间区间内没有或只有很少的业务。当这种情况发生时,
发送一个或更多的未指配ATM信元就比发送一个或多个各含48个解耦
合微信元的指配ATM信元要好。为实现这一替代实施方案,一位于基
站905的发生器950在所有通信信道上均无业务(即没有活动的通信
信道)时产生未指配ATM信元。复用器955再将未指配ATM信元和任
何指配ATM信元一起插入ATM信元流。
同样,接收实体的检测器960判断呼入的ATM信元是否未指配的ATM
信元。如果它是一个未指配的ATM信元,解复用器965就被告知丢弃
该信元,如“垃圾箱”970所示。如果ATM信元是一个已指配的ATM信
元,ATM信元头就被去除(图中未示),解复用器965将有效载荷发送
给检测器930和解复用器935。然后,从ATM信元有效载荷分离微信元
和判别指配微信元和解耦合微信元的步骤和前面描述的一样进行。
最后,附图11显示一个作为时间的函数的ATM信元流,其中采用
了带有本发明改进的AALm子层980的ATM。为更好地理解采用了本发
明改进的AALm子层980的好处,将附图11描述的ATM信元流与使用
附图4描述的先有方法产生的ATM信元流做一比较是有帮助的。
现在参见附图4和11,直线1101就像直线401一样代表时间的经
过。类似地,指配微信元1103,1104,1105和1107分别与微信元403,
404,405和407相比较,而ATM信元1115至1119则分别与ATM信元
415至419相比较。同样在附图11中,较细的垂直线(如直线1108)
代表着解耦合微信元;而这在附图4中没有可比项。
当MAD子层985开始构造ATM信元1116的有效载荷时,在封装指
配微信元1103后由于缺乏用户数据而没有指配微信元。当采用本发明
改进的AALm层980时,MAD子层985开始用解耦合微信元构造ATM信
元1116的有效载荷,如微信元1108和1109所示。MAD子层985用解
耦合微信元继续构造ATM信元1116的有效载荷直到有可用的指配微信
元1104。当确实有可用的指配微信元1104时,MAD子层985将其紧接
着前面的解耦合信元插入到ATM信元1116的有效载荷中。指配微信元
1105也被紧接着指配微信元1104插入到ATM信元1116的有效载荷中,
因为它也是立即可用的。
相反,微信元403和404之间的延时迫使先有技术的MAD子层103
在ATM信元416的载荷的剩余部分中插入一个填充微信元,如上所述。
同样,然后先有技术的MAD子层103必须等到下一个ATM信元1117开
始以便再插入微信元404和405。
通过比较使用先有技术时由发送ATM信元417中的微信元404和405
造成的延时和使用本发明时由发送ATM信元1116中的微信元1104和
1105造成的延时,本发明的一个优点就变得非常明显。使用本发明改
进的AALm层980向接收实体发送微信元1104和1105的延时将会大大
地小于使用先有技术发送微信元404和405的延时。
通过比较微信元407的传输延时和指配微信元1107的传输延时就
能明显看出数据传输延时的减少。在附图11中,指配微信元1107在MAD
子层985开始为ATM信元1118构造有效载荷时就已可用。当根据本发
明采用改进的AALm层980时,MAD子层985可在ATM信元1118的有
效载荷的开头插入就指配微信元1107。而使用先有方法时,微信元407
的插入要延迟整个ATM信元418的时长。在一个64Kbps的通信系统中,
一个53字节的ATM信元(424比特)需要大约7毫秒的时间发送。如
果像微信元407那样,插入一个微信元要推后(push back)将近一个
ATM信元的时长,该微信元的最终传输延时是大约7毫秒。相反,如果
插入一个微信元只推后一个字节的解耦合微信元(8比特)的时长,则
最终传输延时就被缩短到大约0.1毫秒。这表示了对先有方法的一个
重大改进以及当在低比特速率应用中采用ATM时在带宽利用率上的显
著提高。
除减少数据传输延时外,本发明改进的AALm层980也提高了带宽
利用率。这也可参见附图4和11来解释。在附图4中,ATM信元417
必须携带微信元404和405,即使这些微信元在前一ATM信元416被传
送给接收实体前就已可用。相反,附图11中的ATM信元1116携带了
可与之相比的指配微信元1104和1105。这使ATM信元1117的有效载
荷可完全用来携带从另外的微信元信道或ATM信道来的数据,从而提
高了带宽利用率。在先有技术方法中,从另外的通信信道来的额外用
户数据只会导致比附图4描述的更大的传输延时。
前面引用几个示例实施方案描述了本发明。但是,很显然对该领域
的技术人员来说可以用不同于上述示例实施方案的某种形式来应用本
发明。这样做也没有脱离本发明的精神。这些示例实施方案仅仅是说
明性的,而不应被看做任何形式的限制。本发明的范围不是由前面的
描述而是由所附的权利要求给出,任何在权利要求范围内的变动和变
化都被包括在内。