在竞争式数据链路上进行等时数据报传输的方法和装置转让专利

申请号 : CN200580007151.9

文献号 : CN1981495B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 托尼·J·克莱因杰夫·斯顿

申请人 : 耐克斯特奈特无线公司

摘要 :

一个竞争式数据链路将一个接收站和多个发送站相耦合。第一个发送站已经和接收站建立了通信会话。若第二个发送站请求建立一个通话,以进行更高优先级的低时延传输,接收站发送轮询到第二个发送站。轮询使第一个发送站暂时地停止传输,并允许第二个发送站传输实时模式(RTP)数据报。第二个发送站的传输结束之后,第一个发送站被暂停的传输将以透明的方式被恢复。接收站通过以一定的间隔发送轮询请求的方法控制传输速率,该间隔由发送站发送的数据值决定。在发送站内,输出队列中的数据报被监控,轮询速率在变化,使输出队列中的数据报值维持在最佳的水平上。

权利要求 :

1.一种在具有基站和多个发送站的竞争式无线通信系统之内传输等时数据报的方法,包括:为多个发送站的每一个预定发送时间,其特征在于,该多个发送站的每一个与该多个发送站中的其它发送站竞争发送时间;

将预定的发送时间传给该多个发送站之第一个发送站,该预定的发送时间预留供该多个发送站的该第一个发送站发送数据;

从该多个发送站之第二个发送站处接收发送基本上等时的数据报的请求,该请求具有比该多个发送站的该第一个发送站更高的优先权;

响应于对该请求的接收,轮询该多个发送站之第二个发送站;

该多个发送站的该第一个发送站基于轮询确定该多个发送站之第一个发送站正被抢占;

拦截预留给该多个发送站的该第一个发送站用以发送数据的预定发送时间;

响应于轮询并在拦截期间,该多个发送站的该第二个发送站向基站发送基本上等时的数据报;

向该多个发送站的该第一个发送站恢复预留给该多个发送站的该第一个发送站发送数据但被拦截的预定发送时间;以及恢复该多个发送站中被拦截的该第一个发送站的数据发送,而无需额外的通话建立处理。

2.如权利要求1所述的方法,进一步包括该多个发送站的该第二个发送站向基站发送轮询速率值,该基站使用轮询速率值建立轮询速率,该基站将按该速率轮询该多个发送站的该第二个发送站,以发送基本上等时的数据到该基站。

3.如权利要求2所述的方法,进一步包括,根据从该多个发送站的该第二个发送站发送到基站的多个等待发送的数据报,调整从该多个发送站的该第二个发送站发送到基站的轮询速率值。

4.如权利要求2所述的方法,其特征在于,轮询速率值作为基本上等时的数据的一部分从该多个发送站的该第二个发送站发送到该基站。

5.如权利要求2所述的方法,进一步包括动态地调整从该多个发送站的该第二个发送站发送到该基站的轮询速率值。

6.如权利要求5所述的方法,其特征在于,轮询速率值指示多个延迟帧,直至该基站轮询该多个发送站的该第二个发送站,以发送基本上等时的数据到该基站。

7.如权利要求1所述的方法,其特征在于,该多个发送站的该第二个发送站利用一个正交频分复用(OFDM)通信系统发送数据。

8.如权利要求1所述的方法,其特征在于,该基站和该多个发送站的该第二个发送站的位置安排使得该基站和该多个发送站的该第二个发送站之间不可能存在视距通信,且该多个发送站的该第二个发送站利用的是一个正交频分复用(OFDM)非视距(NLOS)通信系统。

9.如权利要求1所述的方法,其特征在于,预定发送时间、传送预定的发送时间、从该多个发送站的该第二个发送站接收请求以及拦截预定的传输时间是由媒体接入控制(MAC)层通信协议进行控制。

10.一种在一个具有接收站和多个发送站的竞争式通信系统之内传输等时数据报的方法,包括:为多个发送站的每一个预定发送时间,其特征是,该多个发送站的每一个与该多个发送站中的其它发送站竞争发送时间;

将预定的发送时间传给该多个发送站之第一个发送站,该预定的发送时间预留供该多个发送站的该第一个发送站发送数据;

从该多个发送站之第二个发送站处接收发送基本上等时的数据报的请求,来自该多个发送站的该第二个发送站的该请求具有比该多个发送站的该第一个发送站更高的优先权;

响应于对该请求的接收,轮询该多个发送站的该第二个发送站;

基于轮询,拦截预留给该多个发送站的该第一个发送站用以发送数据的预定发送时间;

在拦截期间并响应于轮询,接收从该多个发送站的该第二个发送站发送到接收站的基本上等时的数据报;

向该多个发送站的该第一个发送站恢复预留给该多个发送站的该第一个发送站发送数据但被拦截的预定发送时间;以及恢复接收从该多个发送站中被拦截的该第一个发送站发送的数据,而无需额外的通话建立处理。

11.如权利要求10所述的方法,进一步包括:

接收从该多个发送站的该第二个发送站发送到该接收站的轮询速率值;以及使用轮询速率值建立轮询速率,该接收站将按该速率轮询该多个发送站的该第二个发送站,以发送基本上等时的数据到该接收站。

12.如权利要求11所述的方法,进一步包括:

接收从该多个发送站的该第二个发送站发送到该接收站的已变更的轮询速率值;以及对已变更的轮询速率值作出响应,调整轮询速率。

13.如权利要求11所述的方法,其特征在于,轮询速率值作为基本上等时的数据的一部分从该多个发送站的该第二个发送站处接收。

14.如权利要求11所述的方法,进一步包括,对从该多个发送站的该第二个发送站处接收的轮询速率值作出响应,动态地调整轮询速率。

15.如权利要求14所述的方法,其特征在于,轮询速率指示多个数据帧,直至该接收站轮询该多个发送站的该第二个发送站,以向该接收站发送基本上等时的数据。

16.如权利要求10所述的方法,其特征在于,接收由该多个发送站的该第二个发送站发送的数据是利用一个正交频分复用(OFDM)通信系统。

17.如权利要求10所述的方法,其特征在于,该接收站和该多个发送站的该第二个发送站是无线通信系统的一部分,且该接收站和该多个发送站的该第二个发送站的位置安排使得该接收站和该多个发送站的该第二个发送站之间不可能存在视距通信,且该多个发送站的该第二个发送站利用一个正交频分复用(OFDM)非视距(NLOS)通信,以发送基本上等时的数据到该接收站。

18.如权利要求10所述的方法,其特征在于,预定发送时间、传送预定的发送时间、从该多个发送站的该第二个发送站接收请求以及拦截预定的发送时间是由媒体接入控制(MAC)层通信协议进行控制。

19.一种在一个具有多个发送站且每个发送站均有通信控制设备的竞争式通信系统之内传输等时数据报的系统,包含:一个具有能够与该多个发送站通信的通信控制设备的接收站;及

一个接收站调度器,其被配置,以为该多个发送站的一个第一个发送站预定发送时间;

其中,该接收站通信控制设备被配置,以接收由该多个发送站的一个第二个发送站发出的发送基本上等时的数据报的请求,响应于对该请求的接收来轮询该多个发送站的该第二个发送站,其中,该接收站调度器被进一步配置,以基于轮询来拦截预留给该多个发送站的该第一个发送站发送数据的预定发送时间,其中,该接收站通信控制设备被配置,以在拦截期间接收由该多个发送站的该第二个发送站发送到该接收站的基本上等时的数据报,其中,该接收站调度器被配置,以向该多个发送站的该第一个发送站恢复预留给该多个发送站的该第一个发送站发送数据但被拦截的预定发送时间,以及其中,该接收站通信控制设备被配置,以恢复接收该多个发送站中被拦截的该第一个发送站所发送的数据,而无需额外的通话建立处理。

20.如权利要求19所述的方法,其特征在于,该接收站通信控制设备被进一步配置,以从该多个发送站的该第二个发送站处接收轮询速率值,该接收站调度器被配置成利用轮询速率值建立轮询速率,该接收站将按该速率轮询该多个发送站的该第二个发送站,以发送基本上等时的数据到该接收站。

21.如权利要求20所述的方法,其特征在于,轮询速率值作为等时数据的一部分从该多个发送站的该第二个发送站发送到该接收站,该接收站通信控制设备提取轮询速率值。

22.如权利要求19所述的系统,其特征在于,该接收站是有线通信系统的一部分,且该接收站通信控制设备是网络接口适配器。

23.如权利要求19所述的系统,其特征在于,该接收站是无线通信系统的一部分,且该接收站通信控制设备包含一个发送机电路和一个接收机电路。

24.如权利要求19所述的系统,其特征在于,该接收站通信控制设备被配置,以接收由该多个发送站的该第二个发送站发送的正交频分复用(OFDM)数据。

25.如权利要求19所述的系统,其特征在于,该接收站和该多个发送站的该第二个发送站是无线通信系统的一部分,该接收站和该多个发送站的该第二个发送站的位置安排使得该接收站和该多个发送站的该第二个发送站之间不可能存在视距通信,该接收站包含一个接收机电路,其被配置以通过非视距(NLOS)通信接收基本上等时的数据。

26.一种在一个其接收站具有通信控制设备的竞争式通信系统之内传输等时数据报的系统,包含:多个发送站,其中每一个发送站具有一个能够与该接收站通信的通信控制设备;

该多个发送站的一个第一个发送站,其具有预定发送时间供发送数据到该接收站之用;及多个发送站的一个第二个发送站,其被配置,以发送要求向该接收站发送基本上等时的数据报的请求;

其中,该多个发送站的该第二个发送站被配置,以响应于对该请求的发送而接收来自该接收站的轮询,并在预定给该多个发送站的该第一个发送站的发送时间内,通过发送基本上等时的数据报到该接收站来对轮询进行响应;

其中,该多个发送站的该第一个发送站被配置,以通过拦截预留给该多个发送站的该第一个发送站用以发送数据的预定发送时间来对轮询进行响应;

其中,该多个发送站的该第一个发送站被配置,以在预留给该多个发送站的该第一个发送站用以发送数据的预定发送时间恢复发送被拦截的数据,而无需额外的通话建立处理;以及其特征在于,该多个发送站的该第一个发送站进一步被配置,以在拦截之后恢复预留给该多个发送站的该第一个发送站发送数据但被拦截的预定发送时间。

27.如权利要求26所述的系统,其特征在于,该多个发送站的该第一个发送站被配置,以响应该接收站发送到该第一个发送站的通信控制设备的轮询,在拦截期间,暂停向该接收站发送数据。

28.如权利要求26所述的系统,其特征在于,该多个发送站的该第二个发送站的通信控制设备被进一步配置,以发送轮询速率值到该接收站,从而建立一个轮询速率,该接收站将按该轮询速率轮询该多个发送站的该第二个发送站,以发送基本上等时的数据到该接收站。

29.如权利要求28所述的系统,其特征在于,该多个发送站的该第二个发送站被进一步配置,以调整轮询速率值,该多个发送站的该第二个发送站的通信控制设备发送已调整的轮询速率值到该接收站。

30.如权利要求28所述的系统,其特征在于,该多个发送站的该第二个发送站的通信控制设备将轮询速率值作为基本上等时的数据的一部分发送到该接收站。

31.如权利要求26所述的系统,其特征在于,该多个发送站的该第二个发送站是有线通信系统的一部分,该多个发送站的该第二个发送站的通信控制设备是网络接口适配器。

32.如权利要求26所述的系统,其特征在于,该多个发送站的该第二个发送站是无线通信系统的一部分,该多个发送站的该第二个发送站的通信控制设备包括一个发送机电路和一个接收机电路。

33.如权利要求26所述的系统,其特征在于,该多个发送站的该第二个发送站的通信控制设备被配置,以发送正交频分复用(OFDM)数据到该接收站。

34.如权利要求26所述的系统,其特征在于,该接收站和该多个发送站的该第二个发送站是无线通信系统的一部分,该接收站和该多个发送站的该第二个发送站的位置安排使得该接收站和该多个发送站的该第二个发送站之间不可能存在视距通信,该多个发送站的该第二个发送站包含一个发送机电路,其被配置以通过非视距(NLOS)通信发送基本上等时的数据。

说明书 :

在竞争式数据链路上进行等时数据报传输的方法和装置

[0001] 发明背景发明领域
[0002] 本发明一般而言,是关于通信系统,更具体而言,是关于一种在竞争式数据通信系统内进行等时数据报传输方法的装置。
[0003] 相关技术的描述
[0004] 分组数据通信系统在本技术领域是众所周知的。互联网就是一个基于数据包的通信系统的例子。数据信息被分成多个数据包,与传输地址数据和分组编号数据一起在通信系统上传输。多个数据包(可简称为数据报)可以通过一个或多个通信路径被传送到终端,终端由与每个数据报相关联的终端地址表示。数据报重新组合并传输到终端地址。
[0005] 一些应用,例如电子邮件,一般对时间的要求不是很高。这些应用允许较长的时延。即,在传输各个数据报时的延迟不会对总体服务质量(QoS)造成不利影响。
[0006] 其它应用,例如网络电话(VoIP)或流媒体,则要求较短的时间延迟。也就是说,这些应用在传输各个数据包时对时间比较敏感,总体QoS可能会受到时延的不利影响。传输低时延话务,例如通过多路访问媒体(例如以太网)的VoIP,需在注入多路访问媒体之前,先由传送节点对业务流进行先后顺序排列。基本原理是,在传送节点之内,将VoIP话务放在其它业务之前。这些技术一般不保证高优先,低时延的话务流会成功地接入传输信道。
[0007] 美国埃施朗公司(Echelon)开发了带预测的P-顽强型载波监听多路访问(CSMA),通过接入优先方案达到低时间拖延。资料中也提到了一些其它例子。
[0008] 在无线网络应用中,一个单独的射频(RF)信道通常作为一个完全独立的数据链路,被用于传送VoIP数据。这种方法基本上消除了RF信道被争用的可能。
[0009] 一种常见的替代方法是,提供足够的容量开销,使低时间拖延话务流能够足够快地在现有媒体访问控制(MAC)模式的范围内流动。虽然这些应用达到了较理想的低时间拖延和QoS,但总体系统架构导致在总体信道利用率方面效率较低。
[0010] 由此可见,现在很需要一种通过竞争式数据链路进行低时间拖延数据传输的系统和方法。当前发明能够提供这种系统和方法以及其它一些优点,这从下列的详细说明和附图可以显然看出。

附图说明

[0011] 图1是一个无线通信系统的功能简图。
[0012] 图2是一个有线通信系统的功能简图。
[0013] 图3是图1所示系统的无线发送站的功能简图。
[0014] 图4是图1所示系统的无线接收站的功能简图。
[0015] 图5是等时会话模式的示例图。
[0016] 图6是发送站等时会话模式状态的示例图。
[0017] 图7是接收站等时会话模式状态的示例图。
[0018] 图8是表示图1所示系统的工作流程图。
[0019] 图9是表示调整传输速度的系统工作流程图。
[0020] 图10表示多个数据流在单个等时会话中的结合
[0021] 图11表示多个数据流的多个等时会话使用。

具体实施方式

[0022] 正如将在本文中予以详细论述,本文披露的技术可用于为低时间拖延应用提供传输能力,这些应用有时被称为实时模式(RTP)数据报。在本文中,“等时数据报传输”是指以基本上一致的时间间隔传输数据。为了方便起见,数据可以描述为数据报或数据包。本技术领域的熟练技术人员知道,在标准(例如国际标准组织开放系统互连(ISO/OS)模型)对多通信层的定义中,数据或数据报可以是在数据链路层上传输的数据帧的一部分。数据链路层的较低部分一般被称为媒体访问控制(MAC)。本技术领域的熟练技术人员应用本文所载的说明,可以轻易地完成具体的MAC实施以及一般的数据链路层实施。
[0023] 在本文中,“竞争式数据链路”是指多个用户竞争接入的通信链路。以太网就是竞争式网络的一个例子。无线通信系统是竞争式网络的另外一个例子。本技术领域的熟练技术人员显然可见,本文所述的技术适用于无线或有线竞争式网络。
[0024] 本发明的一个具体实施例是系统100,如图1所示,该系统在根据本发明原理构建的无线通信网络102中实现。无线通信网络102包含一个耦合到天线系统106的基站104。天线系统106根据已知的原理而实现,本文不再赘述。尽管基站104的一般运行已众所周知,但下文仍将对实现系统100时所使用的附加特征进行详细说明。
[0025] 无线通信网络102还包括多个客户端设备(CPE)108-112,这些设备通过无线通信链路114-118分别与基站通信。如图1所示,通信链路114-118将基站104分别耦合到各个CPE 108-112。但是,本技术领域的熟练技术人员会发现,当CPE 108-112在单个频率信道上与基站104通信时,无线通信链路114-118可以看作是单个竞争式通信链路120。
[0026] 在图1所示的无线通信网络102的简化具体实施例中,可以通过提供足够数量的频率信道,使CPE 108-112可以和基站104通信,从而解决争用通信链路的情况。但是,本技术领域的熟练技术人员会发现,一个典型的实现可能包括单个基站和100个或更多个CPE。与特定的基站通信的CPE数量一般会超过可用于与基站104通信的频率信道的数量。因此,图1中的简图只意在说明经由单一信道与基站104通信的CPE 108-112,该单一信道在图1中显示为竞争式链路120。
[0027] 图2显示了实现作为有线网络124的系统100的另一个具体实施例。此实现在客户机到服务器的架构中进行描述,在此种实现中,多个客户端设备128-132彼此通信并通过竞争式链路134与服务器通信。如上所述,以太网是这种有线竞争式网络的一个例子。
[0028] 在低时间拖延应用中,例如VoIP、多媒体、流媒体和其它类似应用,一台计算设备向另一台计算设备发送数据。在图1所示的例子中,基站104可以向一台或多台CPE发送低时间拖延数据,或从CPE接收低时间拖延数据。类似的,在图2的有线网络实施中,客户端计算机(例如客户端计算机128)可以向服务器126或另一台客户计算机发送低时间拖延数据。反之,服务器126可以向一台客户端计算设备发送低时间拖延数据。在本文中,发送低时间拖延数据的计算设备是“发送站”或单位,接收低时间拖延数据的计算设备则是“接收站”或单位。
[0029] 图3是无线发送站140的功能简图。如上所述,发送站140可以是基站104或图1所示CPE 108-112中之任一个。发送站140包括发送机142和接收机144。本领域的熟练技术人员会发现,发送机142和接收机144的部分可以组合而构成收发信机146。发送机
142和接收机144的具体实现取决于特定的通信模式。例如,发送机142和接收机144可以配置为利用正交频分复用(OFDM)进行运行。这些组件的运行已为本技术领域所知,本文不再赘述。
[0030] 发送机142和接收机144耦合到天线148上。发送站上的天线(如图1中的CPE108)可以安装在客户端。CEP 108也可以在另一种配置中实现,即天线148为内部天线。此种实现可以有利地允许非视距(NLOS)运行。
[0031] 使用带有客户端内部天线的OFDM NLOS CPE进行无线运行的例子见于申请日期为2000年10月23日、申请号为09/694,766、标题为《利用带理由内部天线的CPE的固定OFDM无线MAN》的美国专利申请。这项专利申请已经转让给本发明的受让人,通过引用全部纳入本文。
[0032] 在一个典型实施例中,发送站140还包括一个中央处理器(CPU)150和存储器152。CPU 150可以采用传统的微处理器、微控制器、数字信号处理器、可编程门阵列或类似的装置得到满意的实现。本发明不受CPU 150的具体实现的限制。同样地,存储器152可以包括一个或多个传统的数据存储组件,例如随机接入存储器、只读存储器、闪速存储器或诸如此类,并且可以包括这些元件的组合。一般而言,CPU 150执行储存在储存器152中的指令。
[0033] 发送站140还可以包括多个不同的输入/输出装置154,例如键盘、显示光标控制装置、大容量存储装置及类似装置。为了简便起见,将这些不同的组件称为I/O装置154,其运行已众所周知。发送站140的各种组件由总线系统156耦合在一起。总线系统156可包含一条地址总线、一条数据总线、一条控制总线、一条电源总线以及诸如此类。为了方便起见,各种总线在图3中标示为总线系统156。
[0034] 在运行中,发送站140有一份数据文件要发送到接收站。数据文件在竞争式数据链路上发送,一般需要先打包,这已为本技术领域所知。打包好的数据,有时称为数据报,包括数据部分和报头部分。本领域的熟练技术人员会理解,报头部分可以包括源地址、终端地址、错误纠正数据、优先级数据及类似信息。本领域的熟练技术人员能够利用本文教授的内容,轻易地确定本发明中使用的数据包的具体实现。
[0035] 以VoIP应用为例,用户的语音输入可以通过麦克风或预储存于大容量的存储设备里,I/O设备154,传输到发送站140。语音数据暂时储存于存储器152中,并由CPU 150处理成数据报。然后,数据报被放在输出队列160中,等待传送到接收站。
[0036] 发送站140还包括轮询速率指示器处理器162。尽管在图3功能简图中轮询速率指示器处理器162显示为一个独立块,但是,该存储器实际上可以利用存储器152内由CPU150执行的计算机指令进行实现。然而,图3将轮询速率指示器处理器162显示为一个独立块,因为它执行一项独特的功能。
[0037] 轮询速率指示器处理器162决定轮询输率数据的值,以指示接收站应以相应的速率轮询发送站140接收数据,这将在下文中详述。轮询速率数据值被发送到接收站,从而允许接收站调整轮询速率(即,接收站轮询发送站接收数据报所使用的速率)。在一个具体实施例中,轮询速率指示器处理器162监控在输出队列160内的数据报值。在理想的情况下,若轮询速率调整得当,输出队列160应只包含单个数据报。若输出队列160包含多个数据报,轮询速率指示器处理器162可以改变发送到接收站的轮询速率数据,以指示接收站应提高其轮询速率。反过来,若输出队列160中没有数据报,轮询速率指示器处理器162可以调整发送到接收站的轮询速率数据值,以允许接收站降低其轮询速率。轮询速率指示器处理器162的运行将在下文中详细说明。
[0038] 发送站140还有一个预期下一个轮询(NPE)变量164,以指示预期接收站将在何时进行下一个轮询。作为发送算法的一部分,NPE间隔变量164在发送站140之内使用。轮询速率指示器处理器162根据输出队列160中数据报的数量调整此变量。
[0039] 图4是无线接收站170的功能简图。接收站170的许多组件在运行上与发送站140的相应组件是相同的,并且编号也一样。即,接收站170也有发送机142和接收机144,可以组合而构成收发信机146。发送机142和接收机144耦合到天线148上。接收站170也包括CPU 150、存储器152以及I/O设备154。接收站170的各组件由总线系统156耦合在一起。
[0040] 除了上述组件外,接收站170还包括调度器172。调度器172接收由轮询速率指示器处理器162生成的轮询速率数据(见图3)并根据接收到的数据决定适当的轮询速率。尽管发送站140发送的数据指示适当的轮询速率,但实际控制从发送站接收数据报的速率的是接收站170。即,调度器172利用从发送站140接收到的数据,生成一个轮询速率。接收站170中的发送机142对该轮询速率作出响应,向发送站140发送一个轮询请求,请求发送一个在输出队列160中等待发送的数据报。
[0041] 现在将使用图1中的无线系统对系统100的运行进行详细的说明。。此过程也同样适用于图2的有线系统。此处描述的轮询技术是一种基于预约、需求自适应的受控接入模式,是在竞争式多路接入控制模式之内并行地运行,同时使用最少的计算资源。在一个具体实施例中,系统100在一个明确的预约系统(例如预约Aloha模式)之内同时地运行。预约模式被修改,以包括一个抢先信号,该信号透明地拦截一个先前预约的发送站,让更高优先级的发送站发送等时数据报。等时数据报发送之后,抢先过程终止,被拦截的发送站重新发送其负责的数据。
[0042] 较理想的低时延可以通过由接收站170在数据信道上使用明确的预约(见图4)而达成,该接收站允许发送站140(见图3)避免在信道获取过程中发生时间拖延。接收站170的明确预约过程通过接收站使用轮询以拦截一个已经建立的通信链路而实现。通过动态自适应轮询速率,匹配发送数据速率,从而消除信道容量的浪费,可以提高效率。动态自适应将在下文详细说明。只需注意发送站140在输出队列160中的深度(见图3),便可实现动态自适应。本领域的熟练技术人员会发现,这种简单的监控过程所需的计算资源最少。
[0043] 数据链路模式除了包含传统的数据报信息外,还包含两个数据元。这包括接收站170向接收站140发送的“抢先”信号。另外,数据链路模式还包含发送站140返回给接收站170的“下一轮询间隔”以及等时数据报。
[0044] 图5例示了等时会话模式176的一个具体实施例。发送站140发送到接收站170的通话建立请求178显示需要发送一个实时模式(RTP)数据报。接收站170对通话建立请求178作出响应,发送轮询180。发送站140对轮询作出响应,发送数据报182到接收站170。作为数据报传输的一部分,发送站140还发送下一个轮询间隔(NPI)数据值,以指示接收站应在何时发送其下一个轮询。接收站170发送轮询180到发送站140的过程以及数据报和NPI数据值182的发送一直继续,直至完整的数据文件被传送到接收站。
[0045] 在最后一个RTP数据报从发送站140到接收站170时,发送站发送一个通话终184,指示接收站,抢占过程已经结束,无需再向发送站140发送轮询。本领域的技术人员会发现,发送站140和接收站170二者都可以另包括超时模式。例如,若发送站140在预定的时间段内没有收到轮询180,发送站可以终止轮询过程及/或试图与接收站170建立新的通话178。类似地,接收站170也可以有一个超时模式,在某个预定的时间段内没有收到对轮询180的响应时,终止轮询过程。
[0046] 图5的等时会话模式提供系统100的一个具体实施例。然而,本领域的熟练技术人员会发现,有多种实现可以与系统100配用。例如,图5例示了轮询180和数据报NPI182之间的1∶1对应。然而,若分配的时隙足够长,在单个轮询上,发送站140可以发送多个数据报。因此,图5中的例子并不意在要求轮询和数据报之间为1∶1对应关系。
[0047] 类似地,图5显示的模式表示与各数据报一起发送的NPI数据值的发送情况。然而,本领域的熟练技术人员会发现,此种发送情况有变化也是可能的。例如,可以只需在发送站140希望调整先前发送的数据值时,才发送NPI数据值。例如,若先前的NPI数据值是5而发送站140不需要调整此值,NPI数据值则不需要和数据报一起发送。在这个具体实施例中,接收站会把缺少NPI数据值的情况解释为指示轮询速率保持为先前值。
[0048] 发送站140通过向接收站170发送通话建立请求178,发起等时会话。然后,接收站170发送轮询信号,轮询发送站140接收等时数据。尽管轮询信号的明确地址是等时发送站(即,图3中的发送站140),但它也是由具有先前信道预约的发送站进行解释。先前的发送站,在注意到轮询信号是发送给另一个发送站时,将轮询解释为对其自身工作的“抢先”信号。先前的发送站对此抢先信号作出响应,暂停发送自己负责的数据,直至抢先信号被移除为止。等时发送站140接收到轮询时,将作出响应,发送RTP数据报182连同其当前NPI数据值。因此,轮询信号被发送站140转化为发送RTP数据报的指令,而先前的发送站则将该数据字段转化为抢先信号。
[0049] 接收站170处理入局RTP数据报时,NPI数据值被用于判定必须在何时生成下一个轮询。例如,发送站可能需要较高的吞吐速率,并要求在每个数据帧中具有与之相同的时隙。在这种情况下,先前发送站的抢先将无限期地继续。在另一个应用例子中,可能需要发送站每几个帧发送数据报,例如,每4帧。在3个干预帧期间,接收站170有效地移除抢先信号,允许先前预约的站恢复发送数据或第三个发送站发送数据。使用抢先信号允许在预约Aloha模式之内透明地插入等时轮询。
[0050] 图6和图7是发送站(图3所示的发送站140)和接收站(例如,图4所示的接收站170)的简化状态图。应当注意,这些简化图未显示所有的过渡。在图6中,发送站140处于闲置状态184,直到发送通话建立178(见图5)以发起等时数据传输会话为止。在等时数据会话开始时,发送站140进入等待轮询状态186。发送站140对来自接收站170的轮询作出响应,进入WaitForData状态188。数据报从发送站140发送到接收站170是状态从WaitForData状态188变为WaitForPoll状态186。在理想的情况下,轮询速率应与数据传输速率匹配。在这种情况下,发送站140只在WaitForPoll状态186和WaitForData状态188之间转换。
[0051] 若轮询速率太慢,数据报将开始在发送站内堆积。发送站140对收到额外的数据报作出响应,状态从WaitForPoll状态186变为ExtraData状态190。这说明接收站170的轮询太慢。发送站140对来自接收站170的轮询作出响应,状态从ExtraData状态190变为WaitForData状态188。正如在下文中将详述的,发送站140也会向接收站170发送数据,指示轮询速率应当提高。这迫使接收站继续在WaitForPoll状态186和WaitForData状态188之间转换。
[0052] 若接收站170的轮询频率太高,轮询可能在尚无数据报可供发送之前到达。若发送站140处于WaitForData状态188(由先前接收到的轮询而致)而又收到了另一个轮询,发送站140将变为ExtraPolls状态192。这说明轮询速率太快。当有数据报时,将使状态从ExtraPolls状态192转变为WaitForPoll状态186。此外,数据报还可包括发给接收站170指令,以提高轮询速率。因此,图6所示的状态图往往迫使发送站在WaitForPoll状态
186和WaitForData状态188之间运行。随着条件的变化,发送站140会向接收站发送指令,要求调整轮询速率(降低或提高轮询速率),以避免在ExtraData状态190或ExtraPolls状态192下运行。
[0053] 在图7中,接收站170最初处于闲置状态194,直至收到通话建立178(见图5)。通话建178迫使接收站170进入WaitForPoll状态196。在WaitForPoll状态196下,接收站170等待选定的帧及在该帧之内选定的时隙。在适当的时间,接收站发送轮询给目标发送站140(从而抢占任何先前的发送机)并变为WaitForPollResponse状态198。从发送站140接收到数据报时,接收站170从WaitForPollResponse状态198转换回到WaitForPoll状态196。此过程将一直继续,直至收到发送站140发送的通话终止184为止。接收站170有一个通话拆分状态,在图7中未示出。
[0054] 图8的流程图显示了系统100的一个具体实施例的总体运行。在开始200处,接收站(例如图4所示的接收站170)通过竞争式数据链路从一个或多个发送站接收数据。在步骤202中,接收站170从发送站(例如图3所示的发送站140)收到建立一个等时会话请求,以便让发送站140发送一个或多个RTP数据报。在步骤204中,接收站170向RTP数据报发送站140发送一个轮询。如上所述,其它发送站将此轮询解释为抢先请求。在步骤
206中,非RTP发送站在抢先期间暂停发送数据。如上所述,这种抢先在预约Aloha系统中透明地发生。
[0055] 在步骤208中,作为对步骤206中的轮询的响应,发送站140发送RTP数据报,包括数据和NPI数据值。在决定210中,系统100确定RTP发送是否表示请求终止等时会话。若发送站140请求结束等时会话,那么,决定210的结果为“是”。在这种情况下,系统100会终止等时会话并在212上结束这一过程。若被拦截的(即,非RTP)发送站仍有等待发送的数据,已暂停的发送将重新透明地恢复发送,无需再进行任何额外的通话建立处理,以使暂停的发送恢复发送。
[0056] 若等时会话没有结束,则决定210的结果为“否”。如果是这样,接收站170将调整步骤214中的轮询速率,并且,在决定216中,接收站170将判定现在是否是向发送站140发送下一个轮询RTP的正确时间。如上所述,发送站140将向接收站170发送NPI数据值,指示轮询应以怎样的频率发生。虽然RTP数据报传输速率可以足够高,使每个数据帧都有数据从发送站140发出,更典型的实现可能要求每几个数据帧发送一个或多个RTP数据报。在干预数据帧中,其它站可以自由地利用时隙发送各自负责的数据。这包括非RTP发送站的已暂停的发送。
[0057] 若为向RTP数据报发送站140发送轮询的时间,则决定216的结果为“是”。在这种情况下,系统返回到步骤204,接收站170向RTP发送站140发送轮询。
[0058] 若不是向RTP发送站140发送下一个轮询时间,则决定216的结果为“否”。在这种情况下,非RTP发送站可以在步骤218中重新恢复已暂停的发送。如上所述,若暂停的发送已经结束,则其它站也可以利用干预数据帧中的该预约时隙。即,在接收站170发送轮询给RTP发送站140之前,任一发送站均可利用该时隙。因此,预留给低优先级发送站的时隙是供发送RTP数据报的高优先级发送站抢占使用。在等时会话运行期间,轮询速率进行动态调整,使传输速率基本上等于接收速率。RTP数据报传输结束之后,如果在向发送站140发送下一个轮询之前有一个或多个数据帧可以利用,则可以使暂停的低优先级传输进行重新恢复。此过程允许RTP数据报传输透明地运行,并通过抢占已预留的时隙,最大限度地减少信道接入时间。此外,计算效率高的轮询速率调整算法使数据报的传输效率较高。
[0059] 系统100动态地调整轮询速率的工作原理如图9流程图所示,在开始240时,适当的通话建立过程已经完成,在步骤242中,轮询速率指示器处理器162(见图3)测量输出队列160中的数据报值。在决定244中,轮询速率指示器处理器162确定输出队列160中的数据报值是否大于3。若队列160中的数据报值大于3,决定244的结果为“是”,在步骤246中,轮询速率指示器处理器162将生成数据,请求大幅度提高NPE变量164的值。
[0060] 若在队列160中的数据报值小于3(见图3),决定244的结果则为“否”。在这种情况下,过程转到决定248,以确定队列160中的数据报值是否大于1。若在队列160中的数据报值大于1,决定248的结果则为“是”。在步骤250中,轮询速率指示器处理器162将生成数据,以提高NPE变量164的值。
[0061] 若输出队列160(见图3)不含有1个以上的数据报,则决定248的结果为“否”。在这种情况下,在决定252中,系统100判定输出队列160中的数据报值是否小于1。若小于1,决定252的结果为“是”。在步骤254中,轮询速率指示器处理器162将降低NPE变量
164的值。
[0062] 若输出队列160没有少于1个数据报,则决定252的结果为“否”。在这种情况下或在步骤246、250或254中更改NPE变量160之后,发送站140在步骤256中将轮询速率数据值NPI发送给接收站(如图4所示的接收站170)。在步骤256中发送轮询速率数据值之后,系统100返回到步骤242,以测量输出队列160中数据报的数量。
[0063] 发送站140将NPI数据值作为RTP数据报的一部分发送到接收站170。在一个具体实施例中,NPI数据值可以设置为等于NPE变量164。发送站140也可以发送不同于NPE变量164的数据值。例如,由于在输出队列160中备份RTP数据报,NPE变量164可能会增加。但是,发送站140可以不强制接收站170的轮询速率进行快速变化,而是发送一个不同于的NPE变量164的数据值,这样便可以按比NPE变量可能指示的速率更缓慢地调整接收站170的轮询速率。根据具体的实现细节而定,从发送站140向接收站170发送的NPI值可以大于或小于NPE变量164。
[0064] 以上描述的下一个轮询间隔变量调整过程是只是一个实施例子。其中,NPE变量164被调整,以将队列160中的数据报值保持在一个数据报的水平上。本领域的熟练技术人员会发现,在实现发送站140时可以使用不同的阈值。即,一项实现可能希望在输出队列
160中有两个数据报,以便发送站140优化数据处理。同样地,在下一个轮询预期变量164大幅增加之前,可以要求在队列160中有三个以上RTP数据报的阈值。显然,当前发明不受输出队列160中上述各阈值内RTP数据报具体值的限制。
[0065] 如上所述,发送站140向接收站170发送的轮询间隔数据指示了在接收站发出下一个轮询请求之前的延时。根据特定的实现,这个值可以使用多种不同的单位。例如,轮询间隔数据可以是时间相关的单位,例如时隙、符号时间、帧时间或类似时间。轮询间隔也可以简单地使用时间单位,例如分数秒。在一个具体实施例中,发送站140向接收站170发送的NPI值表示下一个轮询之前的延迟帧的数量。例如,若NPI为5,则调度器174(见图4)安排下一个轮询在5个延迟帧之后发生。即,调度器174将在5帧之后再次轮询发送站140。
[0066] 以上介绍的是无线通信系统的实现过程。另外,本领域的熟练技术人员会发现,有线线路实现也可以依照本说明有利地进行。也就是说,有线线路,例如以太网,也可以在竞争式数据链路上运行。在这项实现中,如图2所示,发送站可以是客户端设备128-132或服务126。同样地,接收站可以在其它客户端设备或服务器中实现。发送机142和接收机144等组件可以用网卡(NIC)等网络组件代替。NIC的运行已为本技术领域所熟知,本文不再赘述。
[0067] 在上述具体实施例中,发送站(如图3所示的发送站140)和接收站(如图4所示的接收站170)之间建立了单个等时会话。在这个具体实施例中,有必要在通过链路发送之前先对信号进行多路复用处理。如图10所示,在数据发送到发送站之前,多个数据流在发送站140之中或由应用软件过程进行了多路复用处理。接收站170在该单个等时会话中向发送站140发送一个轮询。复用数据通过链路发送并由接收复用数据的接收站170或应用程序进行去复用处理。
[0068] 如图11所示,在另外一个具体实施例中,单个发送站(如图3所示的发送站140)和单个接收站(如图4所示的接收站170)之间可以建立多个等时数据会话。图11所示的具体实施例,其运行方式与上述的单个等时数据会话基本上相同,但其将模式扩展,以包括一个“会话标识符”,使发送站140和接收站170可以辨别多个等时会话。例如,当接收站170向发送站140发送带抢先信号的轮询时,它不单需要指定发送站的地址,还要识别等时会话的实例。这可以通过加到轮询上的会话标识符数据元轻易地达成。图11例示了两个同时进行的等时会话。但是,本领域的熟练技术人员会发现,这个原理可以扩展到额外的并行等时会话。
[0069] 前述的实施例描述了不同组件包含在其它不同的组件之中或者与其它不同的组件相连接。可以理解,所描述的这些结构仅仅是举例,实际上有多种其它结构可以实现相同的功能。从概念上看,任何可实现相同功能的组件安排都是有效地“相关”,使所要的功能得以实现。因此,任何两个组件进行组合以实现特定的功能可看作是彼此“相关的”,使所要的功能得以实现,而与结构或者中间组件无关。同样地,任何如此相关的两个组件也可以看作彼此“可操作地连接”或者“可操作地耦合”,以实现所要的功能。
[0070] 虽然本文描述了本发明的特定实施例,但是,本领域的熟练技术人员显然可以根据本文教授的内容,在不脱离本发明及其大方向的情况下,进行改动和修改。因此,后附的权利要求范围应包括属于本发明的真正精神和范围的所有此类改动和修改。另外,应当理解,本发明唯一地由所附的权利要求进行定义。本领域的技术人员会理解,一般情况下,本文中使用的术语,尤其是在随附的权利要求中使用的术语(例如,随附权利要求的正文部分),一般都是“开放性”术语(例如,“包括”应该理解为“包括但不限于”,术语“具有”应该理解为“至少具有”,等等)。例如,为了便于理解,随附的权利要求可能包含引导性短语“至少一个”和“一个或多个”来介绍权利要求列举。然而,使用这样的短语不得解释为具有下列暗示,即,使用不定冠词“一”来介绍一项权利要求列举是将任何包含如此介绍的权利要求列举的特定权利要求限制在包含仅一项该权利要求列举的发明之内,即使是在同一项权利要求包含引导性短语“一个或多个”或者“至少一个”以及诸如“一”的不定冠词(例如,“一”通常应该理解为意指“至少一个”或者“一个或多个”)时也是如此;对于使用定冠词来介绍权利要求列举,也同样如此。此外,即使明确地列举特定数量的介绍性权利要求,本领域的技术人员会认识到,该列举通常应该理解为意指至少为列举的数量(例如,没有其它修饰成分的仅“两项列举”通常意指“至少两项”或者“两项或多项”列举)。