背景技术
媒体访问控制(mediaaccesscontrol,MAC)层的主要功能是提供公平机制来控制对共享的通信媒体的访问。但是,在诸如IEEE802.11WLAN的无线通信媒体中,MAC层必须在发送数据帧之前获得对网络的访问。可以通过两种不同的访问机制来完成:基于竞争的机制和中央控制访问机制。基于竞争的机制被称作分布协调功能(distributedcoordinationfunction,DCF)。中央控制访问机制被称作点协调功能(pointcoordinationfunction,PCF)。
PCF模式允许实现服务质量(qualityofservice,QoS)机制,但是其是可选的,并且需要额外的交互来协商移动终端和接入点(accesspoint,AP)之间的QoS。通常做为默认模式使用的DCF模式不提供任何QoS机制。因此,在一个无线局域网(wirelesslocalareanetwork,WLAN)中,包括基站AP在内的所有站台(station)都有相同的概率来获得对媒体的访问以及通过媒体发送数据。这类服务被称为“最大努力(besteffort)”。
3种帧间间隔(inter-framespace,IFS)的间隔(interval)推迟了IEEE802.11站台对于媒体的访问,以及提供了多种优先级别。每一种间隔(interval)定义了上一帧的最后一个符号的结束和下一帧的第一个符号的开始之间的时间。短帧间间隔(shortinter-framespace,SIFS)通过允许一些帧可以在其它帧之前访问媒体来提供最高的优先级别,例如,ACK帧,清除发送(clear-to-send,CTS)帧,或者上一个数据帧的片段。
因为在任何一个时间段中只能发送一个传输流,所以多个无线站台同时试图发送数据会导致下行通信媒体和上行通信媒体中的冲突。这个问题在业务量大的时候尤其明显,并且可能使得协议不稳定。为了能够同时发送和接收数据,IEEE802.11MAC层没有使用冲突检测,而是使用了冲突避免。为了解决冲突问题,使用二进制指数退避(binaryexponentialbackoff)来使得后续的发送尝试在时间上随机交错。DCF使用物理和虚拟的载波监听机制(带有冲突避免的载波监听多路访问,carriersensemultipleaccesswithcollisionavoidance,CSMA/CA)以及二进制指数退避,从而允许在监听信道活跃后进行访问尝试。
用于IEEE802.11标准家族的退避过程(backoffprocedure)最初被DCF模式引入,用做冲突避免的基本解决方案。后来则被IEEE802.11e用于解决增强分布式信道访问功能(enhanceddistributedchannelaccessfunction,EDCAF)中的内部冲突问题。正在制定之中的IEEE802.11n标准仍然把退避过程做为用于支持移动站间的分布式访问的基本方法来使用。现在,IEEE802.11系列的几乎所有的商业无线产品把DCF/EDCAF做为媒体访问的解决方案来使用,因此,很大程度上依赖退避机制来避免冲突。在本文中,“/”表示相同或相似组件或结构的别名。即,“/”和“或”在本文中的意思相同。
指数随机退避过程的原理和操作在这两个标准中类似。为了介绍本发明的背景技术,下面描述了IEEE802.11中的退避过程。在发送每一个数据帧之前,移动站(包括AP)使用物理或者虚拟载波监听来确定无线媒体的状态。如果繁忙,移动站选择均匀分布在0和竞争窗口(contentionwindow,CW)之间的一个随机数,把它做为用于退避的时隙计数(slotcount)的初始值。如果确定媒体在DCF帧间间隔(DCFinter-framespace,DIFS)加时隙计数的随机数之后空闲(其中每过一个时隙时间(slottime)移动站就把时隙计数减一),那么移动站发送数据。如果在退避的任何时候检测到媒体繁忙,那么暂停该过程。每一次发送尝试不成功,指数级增加竞争窗口。竞争窗口开始于最小值CWmin,可以增加到最大值CWmax。包括时隙时间,DIFS,CWmin,CWmax在内的所有与退避过程相关的参数都要为物理层指定。
图1示例性的表示了上述的随机退避过程。在该场景中,无线局域网(WLAN)包括一个接入点和三个关联的移动站。在本文中,接入点包括桥接器、路由器、桥接路由器以及其它任何被站点用于访问网络的设备。并且,接入点还做为无线电网络(无线网络)和有线局域网之间的连络点。图1显示了两轮媒体竞争。接入点(AP)首先发送了一个数据帧。媒体在发送结束后变为空闲(idle)。当判断媒体在等于DIFS的时间内连续的空闲,包括AP在内的所有站点运行指数随机退避过程来对媒体进行竞争。此时,每一个站台都维持一个用于退避的时隙计数。对于赢得上一轮竞争的AP,在竞争窗口[0,CW]中随机选取它的时隙计数。而其它的站台仍然保持各自在上一轮竞争中的时隙计数。时隙计数被站点用来确定它在发送数据之前,需要等待多久时间才能对媒体是否繁忙进行判定。如图1所示,在第一轮竞争中,用于AP的时隙计数的随机数是7。站点1的时隙计数是8。站点2的时隙计数是5。站点3的时隙计数是3。如果在一个时隙时间内媒体空闲,那么每过一个该时隙时间,所有站点都分别把各自的时隙计数减1。因为站点3有最小的退避时隙计数(3),所以在媒体空闲了3个时隙时间之后站点3赢得了竞争,并且站点3在第4个时隙时间里开始新帧的发送。请注意,在站点3开始发送的时候,其它站点已经把它们的时隙计数减3。当站点3完成发送,则开始第二轮竞争,并且站点3在竞争窗口[0,CW]中随机选取8做为它的时隙计数。在第一轮中,其它站点使用它们剩余的用于退避的时隙计数。现在,AP的时隙计数是4。站点1的时隙计数是5。站点2的时隙计数是2。站点3的时隙计数是8。在这一轮竞争中,站点2有最小的时隙计数,因此它在DIFS加上两个时隙时间之后赢得了竞争并发送数据帧。以上过程在网络的存续期间内重复执行。
随机退避过程存在的主要缺陷是:时隙计数的随机选取数值可能削弱媒体的利用率,从而降低载波监听多路访问(CSMA)技术的性能。两种因素可能会引起利用率的削弱。第一种因素是,标准中规定具有最小的退避时间(时隙计数)的站台赢得对媒体的访问。因此,在下一次数据发送之前存在一段媒体空闲的时期。在连续的数据帧发送之间存在的这种空闲会对退避过程的效率造成不利影响。第二种因素是多个站台之间存在冲突的概率。虽然在退避时隙的选择上使用随机过程能够大幅度的减轻冲突,但是仍然不能忽视其在网络性能上的不利影响,尤其是竞争站台数目较大的时候。
随机退避过程的另一个缺陷是在站台间缺少公平。一旦未成功发送则把竞争窗口扩大一倍的方法会在下一个竞争期间/竞争周期中把站台置于不利的地位,这是因为站台倾向于选择大于其它站台的时隙计数。这种二进制指数双倍退避过程严重地推迟了对媒体的访问,在某些情况下可能会造成带宽缺乏。经验数据表明同一网络的站点间的吞吐量之差平均可以达到30%。
许多退避方案被提出来用于解决这些问题。一个现有退避方案引入乘性递增线性递减(multiplicativeincreaseandlineardecrease,MILD)来适当地调整退避竞争窗口,从而提高公平性。另一个现有方案为了实现站台间的公平性,基于估计的分配给每一个站台公平的份额,动态地调整竞争窗口。另一个现有方案使用一种机制来把给定的公平模型转换为对应的竞争解决方案。通过使用竞争解决方案来获得能够实现相称公平(proportionalfairness)的退避算法。另一个现有方案考虑时隙选择的概率分布,并且采用了指数随机游动退避算法,其中,基于预先确定的概率对退避时隙计数进行递减。在另一个媒体访问方案中,时隙被分配到每一个站台,其中时隙的个数至少和网络中站台的数量一样多。该方案实质上是使用时分多址(timedivisionmultipleaccess)方案,即时隙被分配到每一个站台,来代替基于竞争的频分方案,如CSMA。虽然在退避算法领域有很多研究,但是公平性和服务质量的问题仍然未被解决。
因此,最好有一种方案能够解决IEEE802.11标准中随机退避过程的公平性和服务质量问题。
具体实施方式
现有的随机退避机制及其后续的变形在每一轮竞争中选择初始退避时隙计数(以下简称为初始计数)的时候都依赖于随机过程。由于每一个站台都独立地选择各自的初始计数,两个或多个站台同时拥有相同时隙计数的概率就很低。实际的数值可能依据竞争站的数量、使用的竞争窗口(CW)以及初始计数的分布函数。大多数情况下,CW要远大于竞争站的数量。因此,对于每一个发送尝试来说,潜在冲突的概率很低。随机退避机制是基于冲突的低概率的。
本发明使用了一种完全不同的方法来解决网络冲突的问题。我们注意到多个站台使用相同的时隙计数是导致冲突的主要原因,因此,本发明的方法以预测的方式或者确定性的方式来选择初始计数。本发明的方法使用每一个站台的唯一信息来获得它们的初始计数,并且本发明保证在任何一个时隙时间内每一个站台拥有一个网络中唯一的时隙计数。因此可以保证每一次访问尝试都具有唯一的媒体访问。由于本发明的方法以确定性的方式来选择初始计数,所以它也就被命名为确定性退避(deterministicbackoff)。
在本发明的确定性退避方法中,每当监听到媒体空闲了DIFS时间,每一个站台就减少其时隙计数。例如,当时隙计数到达0的时候,站台开始在无线网络中发送数据。这些操作和传统的随机退避机制中的操作类似。当由于完成帧交换或者发送失败移动站需要选择退避的初始计数时,两者存在着不同。本发明的确定性退避方法基于网络的全局唯一信息,如站台的数量,来选择初始计数,从而避免与其它的站台的时隙计数重合。使用本发明的循环服务(roundrobinservice)方法来代替传统随机退避使用的当冲突或者失败的时候把竞争窗口两倍化的方法。在本发明的循环服务方法中,时隙计数在固定区间[0,N]之间循环,其中N等于网络中站台的数量(包括AP)。在整个服务期间都使用本发明的循环服务。一旦时隙计数到达0,站台则获得机会开始帧交换序列。然后,时隙计数重新从N开始。在站台第一次尝试访问媒体时设置时隙计数的初始值,并且随着网络变化而适应性调整时隙计数。此外,考虑到多个站台之间存在着时隙时间在时间上不同步以及无干扰信道评估(clearchannelassessment,CCA)错误的可能性,本发明应用了时隙计数校准过程(slotcountcalibrationprocedure)。
图2示例性示出了本发明的确定性退避机制。在本例中,无线局域网包括一个AP和三个移动站。如图所示,每一个站台都维持一个从0到4循环的时隙计数,并且,当时隙计数到达0的时候,开始数据帧的发送,然后把时隙计数再设置为4。对于每一轮的退避,总有一个站台会在DIFS和一个时隙时间之后被服务。因此,如同令牌环网络一样,获得对无线媒体访问的机会以预定的顺序在这些站台之间循环。图2的例子中,服务顺序为AP→站台1→站台2→站台3→AP,并且在连续服务机会之间的中间时间间隔(intermediatetimespace)是DIFS加上一个时隙时间。相对于传统的随机退避方法,已经是很短的时间了。
如图2所示,AP在发送数据帧之后把时隙计数重设为4,该值等于本例中站台的最大数量(N)。在下一轮竞争开始时,包括AP在内的所有站台在监听到媒体空闲DIFS这么长时间后把各自的时隙计数减1。因为站台1具有最小的时隙计数(1),所以它在过了一个时隙时间并且时隙计数达到0之后赢得了竞争,从而获得了机会来发送数据帧。在站台1发送数据的期间其它站台暂停减少它们的时隙计数。一旦站台1结束了发送,它把时隙计数重设为4,并且开始新的一轮退避。这种数据发送方式在网络的存续期间一直持续着,并且每一个站台都以一定的顺序获得机会发送数据。如果有一个新的站台要关联到网络上,AP把时隙计数增加1,并且该时隙计数可以通过管理帧的数据域或者夹带(piggypack)在关联响应中分发到当前每一个关联的站台以及这个新的站台。请注意,应该在关联过程结束之后的SIFS期间内马上执行时隙计数分发过程,从而避免其它站台在两个过程中减少它们的时隙计数。
对于单个的站台来说,可以使用两个参数来描述确定性退避的整个过程。即站台第一次加入网络时的初始时隙计数,记作C0,以及用于站台开始新的一轮退避的时隙计数,记作C1。在关联过程结束后把时隙计数立刻设置为C0,把其做为站台访问媒体的开始点。C0在此后不会再被站台使用。为了避免站台间的时隙计数重叠,应该小心地选择C0的数值。在站台在网络中存续的期间,参数C1被用来重设循环服务的时隙计数。同一个网络的所有站台之间共享同一个C1的值。应该在一个新的站台的关联过程中确定C0和C1,并且随着网络的变化来调整C1。
AP和站台在本发明的确定性退避过程中起的作用不同。AP的职责为C0和C1选择适当的数值,并且把它的选择分发到网络。其中,每一个站台都是执行者,用于使用由AP选择的参数设置来执行本发明的确定性退避过程。因此,AP在本发明的确定性退避过程中做为调度者和协调者,然后所有站台都做为发送者。此外,也能够通过和站台协商调整它们的时隙计数来解决网络冲突。
在本发明的方法中,C1的数值被设置为存在于网络中的包括新关联的站台和AP在内的站台的数量(N)。
C1=N(1)
C0的数值被设置为一个当前没有被网络中任何一个站台使用的数值。本发明的方法保证网络中使用的所有的时隙计数的总体是一个集合,该集合从1开始一直到站台的总数。在这种情况下,在发送成功关联的通告消息(例如带有成功状态的关联相应,或者如图3所示的新的管理帧)之前,其它所有站台都维持站台的数量为(N-1),并且各自的时隙计数应该为1和(N-1)之间的一个整数。因此,对于新的加入站台来说,一个用于初始时隙计数C0的合理选择是使用更新的站台数目N,从而能够避免和当前使用的时隙计数重叠,并且还能够保持已经分配的时隙计数的连续性。即,
C0=N(2)
其中N是包括新关联到网络的客户机的所有站台(AP和客户机)的数量。等式(1)和(2)用于设置新加入网络的站台的初始计数。很显然,参数C0和C1可以通过发送一个数值来设置,即网络中站台的数量。包括站台数量的消息可以被夹带在关联相应中,或者被携带在如图3所示的管理帧的数据域中。
虽然在等式(1)中把C1的数值设置为网络中站台的数量,但是它仍然可以是大于网络中站台数量的任何数值,相应地,其可能减少一些管理开销。在这种情况下,平均退避时间相应于C1大约成线性关系增加。但是,在本发明的另一个实施例中,其被用来在站台间提供具有优先级的服务。例如,可以实现一个简单的优先级方案,其中可以在比N大的地址队列中多次插入具有高优先级的站台。例如,一个站台的优先级是3,意味着该站台的地址能够被插入地址队列3次。因此,该站台能够在任何一轮退避周期中有3次机会发送数据。另一个站台的优先级可能是2,意味着这个站台的地址被插入到地址队列中2次。因此,这个站台在任何一轮退避周期中有2次机会发送数据。这个实施例在一定程度上降低了整体的公平性,但是对于某些类型的业务/数据或者重要的业务/数据来说可能是必须的或是有益的。
注意到在一些情况下,虽然网络中站台的数量很大但是仅仅是它们之中的一小部分站台需要发送数据,因此,按照等式(1)和(2)把C0和C1的数值设置为站台的数量可能不是很有效率的方法。例如,一个无线局域网具有一个AP和30个关联的移动站。AP很有可能在大部分时间里是发送者。在这种情况下,AP每一次都需要等待30个连续的时隙才能够访问信道,相对于传统的指数随机退避方法,这种方法降低了AP和网络的性能。因此,在另一个实施例中,C0和C1的数值被调整为小于网络中站点数量的数值。这可以通过使得至少一个具有较少上行业务的站台共享同一个时隙计数来实现。每当发送机会到来的时候(即,时隙计数到达0),这些站点的每一个都依据如下的任意一个规则来采取行动:
1)站台以预定的冲突概率p来发送数据帧。
2)站台采用和传统的指数随机退避方法类似的机制来确定是否利用这个机会发送数据。即,站台初始化一个计数器,并且每当发送机会属于它的时候就减少计数器的数值。如果计数器达到0,则站台决定发送数据,否则,则放弃发送机会。
3)在每1/Nss个时隙给予共享一个时隙的站台确定性的机会用于开始数据帧发送,其中Nss是共享一个特定时隙的站台的数量。理论上来说,利用这种方法不会造成冲突,但是会推迟共享时隙的站点的发送机会。
在采用上述规则1和2的实施例中,共享同一个时隙计数的站台之间存在着冲突的可能性。但是好处是如果恰当使用则可以提高信道的利用率。我们注意到这个实施例需要改变地址队列。此外,AP需要通过向那些共享时隙计数的站台传输管理帧或把信息夹带在数据或控制帧中来显性地通知那些共享时隙计数的站台。
在本发明的确定性退避方法中,站台需要在开始确定性退避过程之前把自己向AP注册并获得C0和C1的数值。换句话来说,站台在成功关联之前不能够使用本发明的确定性退避方法来访问媒体。实际上,未关联的移动站如果采用不恰当的方法,例如传统的随机退避,可能会破坏正在进行的确定性退避过程。这是因为随意选择的时隙计数可能会与其它站台的时隙计数重合,并因此导致冲突。
上面这个问题可以通过如下方法解决:通过使未关联的站台在加入的过程中选择一个静态延时,如DIFS,来访问媒体。我们注意到,等式(2)保证了那些关联的站台在获取媒体的控制之前需要等待至少DIFS加上一个时隙时间的周期/时间间隔。由于DIFS比那些关联的站台使用的延迟时间要短,因此,把未关联的移动站设置成为推迟一个DIFS,从而保证了未关联的移动站的数据发送不会在正在进行的退避过程中引起冲突。
但是,多个未关联的站台同时访问媒体会产生新的问题,引起它们之间的冲突。为了解决这个问题,每一个未关联站台在尝试发送加入请求之前被允许从[0,JoinTimeOut]区间内选择一个随机数做为它的退避时间。一旦过了这段时间,站台会在监听到媒体空闲DIFS的时长之后尝试访问媒体。在实际应用中,两个或多个站台同时加入网络的概率非常低。大部分站台都可以在它们第一尝试中就成功访问媒体。
应当注意,在这里不使用点帧间间隔(pointinter-framespace,PIFS)。这是因为它被保留给AP用于执行点协调功能(pointcoordinationfunction,PCF)操作/混合协调功能控制信道访问(HCFcontrolledchannelaccess,HCCA)或者用于其它紧急情况。
随着无线网络的动态变化需要对时隙计数进行调整。在无线网络的存续期间,一些移动站在一定的时间加入网络,而另一些则在别的时间离开网络。在这种情况下,关联移动站的数量随着时间变化着。根据本发明的原理,退避时隙计数的设置(重设)是基于网络的全局信息,即站台的数量。因此需要根据网络的动态变化来适应性调整该设置。
每一个站台都应该维持用于在无线网络动态变化过程中调整时隙计数的信息。首先,每一个站台中的变量Ni具有表示网络中站台数量的数值。通过使用它的数值以及等式(1)和(2)来获得C0/C1的数值。当一个站台加入或离开网络,通过探听关联/去关联消息或者接收由AP广播的如图3所示的管理帧来让每一个站台更新各自变量的数值。一旦更新之后,所有的站台的Ni的数值都应该相同。其次,站台应该维持用于记录循环服务顺序的地址序列。每一个地址都对应一个站台。并且序列中地址的相对位置指示了这些站台的服务顺序。其对应地址在序列中相邻的站台应该被连续的服务,连续服务之间的时间间隔/时间段为一个DIFS加上一个时隙时间。通过按照地址序列设置这些时隙计数来实现序列服务机制。在上面描述的包括简单优先级方案的实施例中,Ni大于站台的数量,并且一些站台(具有高优先级)会在地址队列中出现超过一次。在优先级方案中,每一个站台都被赋予一个优先级(站台优先级方案),或者依据站台需要或想要发送的数据/业务的优先级来赋予优先级从而能够随着时间动态地改变站台的优先级(业务优先级方案)。在业务优先级方案中,地址队列需要随着业务优先级的改变而改变。
包括AP在内的每一个站台在网络的生存期间中共享这两条信息(站台的数量和站台的地址序列)。很多方法可以实现这个目的。例如,可以通过一直监测无线媒体和其它站台的网络活动来收集。这种被动监听技术虽然简单容易,但是缺乏可靠性。根据本发明的原理,AP通过广播在管理帧的该信息来直接把这些信息提供给网络。每当发生移动站加入或离开网络的这样的事件时,AP在关联交换(去关联交换)之后的短帧间间隔(SIFS)时间段/时间期间内发送包含该需要的信息的额外的数据帧。即,这个新数据帧可以被视为关联交换(去关联交换)序列的最后一个数据帧。
图3示出了示例性的管理帧,其中,帧体(framebody)包括站台数量和地址序列。此外应当记得,上述的包含简单优先级方案的实施例具有多于实际站台数量的站台数量(Ni),并且在地址序列中包括同一个站台多次。
因此,关联过程(去关联过程)如下所示。每当AP收到一个关联(去关联)请求帧时,AP首先使用关联帧(去关联帧)响应。然后,在收到ACK后的SIFS时间段/时间间隔,AP向网络广播一个新的管理帧,该管理帧包括如下信息:1)网络中站台的数量;和2)地址序列。移动站收到该管理帧之后应该更新它们存储的信息。
一些站台可能没有正确的接收该通知消息,因此会导致站台间维持的信息不一致。在这种情况下,AP可以1)通过建立可靠的单播会话来显性地通知每一个站台;或者2)在信标消息(beaconmessage)中周期性地通告该信息。此外,也可以应用其它能够提供可靠的信息传送的方法。
在移动站可以在空中捕获数据帧的情况下,地址序列可以做为移动站校准时隙计数的基础。例如,当站台j结束了它的发送,站台i捕获这次传输的至少一个数据帧,那么站台i可以使用如下等式和地址序列来重新计算它的时隙计数slot(i):
slot(i)=(seq(i)–seq(j))mod(C1)(3)
其中,seq(i)和seq(j)分别表示站台i和站台j在地址序列中地址的相对位置(即序列号)。因为AP总是存在于网络中,所以它的地址在第一位并且地址序列号是1。
通过使用等式(3),站台可以在每一次帧交换结束后校准它的时隙计数。共享无线媒体的固有特性便于校准过程,这是因为空中的数据帧可以被共享该媒体的所有接口监听到。此外,校准过程能够用于解决由控制信道访问(controlledchannelaccess,CCA)错误或者废弃网络分配矢量(networkallocationvector,NAV)更新引起的冲突。例如,如果两个移动站的数据帧在某个时隙时间内冲突,那么两个站台可以在它们的下一轮服务之前使用校准过程重新计算它们的时隙计数,从而避免以后的冲突。
在监听和确定媒体空闲了DIFS时间段/时间间隔后每一个站台都减少各自的时隙计数。即使在站台没有数据发送的情况下也是如此。时隙计数在站台的存续期间内不停地在C1到0间循环。每当时隙计数到达0,站台或者开始一个新的帧交换序列或者不做任何事情,然后接着新的一轮时隙计数。这一机制用于在网络运行的过程中保持这些分布式时隙计数之间的相互关系。
图4a和4b的流程图示出了本发明的确定性退避方法的操作。一个未关联的站台应该首先使用预留的DIFS时间间隔执行关联过程来加入网络。AP在这次交换中把确定性退避方法的使用以及初始时隙计数通知给该新的站台。在这点上,站台判断它是否希望成为使用该退避方法的网络的一员。该站台可能是一个不能够支持本发明确定性退避方法的旧版本的站台。一旦站台成为了该网络的一员(加入了网络或者与网络进行了关联),站台就在N到0间循环它的时隙计数,其中N至少是网络中站台的数量。一般来说,N等于网络中站台的数量,但是如上文中所述,对于上文描述的一个实施例,把N设置为大于网络中站台的数量是有利的。每当时隙计数到达0,站台就获得了开始数据帧发送的机会。此外,存在于网络中的整个存续期间中,站台会在等待了一定的时间之后基于站台的服务次序信息对自己的时隙计数进行调整。
图4a的流程图示出了接入点侧本发明的确定性退避方法的操作。在步骤405,AP收到来自站台的要成为网络一员(加入网络或者与网络关联)的请求。在步骤410,AP检查该站台是否已经与网络关联(已经是网络的一员)。如果该加入站台不是网络的一员,那么在步骤420中,AP向加入站台发送初始时隙计数、网络中使用的通信媒体访问方法、网络中站台的数量和地址队列。AP然后等待接收来自加入站台的确认或者去关联消息。例如,当要加入站台是无法支持本发明的通信媒体访问方法的旧版本站台时,去关联消息会被发送。如果加入站台已经与网络关联,那么在步骤450AP等待预定的时间段。步骤425对时隙计数进行了调整。在一个示例性实施例中,时隙计数被减少了1。另外,也能够使用增加的调整。步骤430把时隙计数和预定的数值进行比较。图4a的示例性实施例把调整后的(减少的)时隙计数和0进行比较。如果时隙计数到达了预定的数值,那么在步骤435中,AP判断AP是否有数据帧要发送。如果AP有数据帧要进行发送,那么在步骤440中开始数据帧发送。如果AP没有要发送的数据帧,那么AP跳过它的这次机会并且在步骤445中选择一个新的时隙计数。一旦开始了数据帧发送,那么在步骤445,AP会选择一个新的时隙计数。如果在步骤430中时隙计数没有达到预定的数值,那么AP在步骤450中等待预定的时间段。当然,如果AP没有收到新的加入网络的请求,那么步骤405、410、415、420和450都会被跳过/不执行。
图4b的流程图示出了站台侧本发明的确定性退避方法的操作。在步骤460,加入站台向AP发送加入网络的请求。然后在步骤465中加入站台进行等待,一直等到来自AP的通信媒体访问(确定性退避)方法,以及时隙计数、网络中站台的数量和地址队列。在步骤470中,加入站台对是否支持网络使用的通信媒体访问(确定性退避)方法进行确定。如果加入站台确定支持通信媒体访问方法,则在步骤480中保存时隙计数、地址队列和网络中站台的数量。根据本发明的原理,站台按照上述方法执行从而获得对通信媒体的访问。如果加入站台确定其不支持本发明的通信媒体访问方法,则在步骤475中向AP发送去关联消息。显然地,如果加入站台已经是网络的一员(或已与网络关联),则可以跳过或不执行步骤460、465、470、475和480。
图5a的示意图/块图示出了根据本发明原理的获取竞争网络中通信媒体访问的AP的操作。关联模块505接收站台的任何加入请求消息、确认消息或者去关联消息。关联模块执行任何与站台加入网络(成为网络的一员)相关的操作,以及通过传输模块510发出任何与站台加入网络相关的消息。传输模块510负责传输任何与站台加入网络相关联的消息,以及在AP获得通信媒体访问之后AP必须发送的数据。传输模块还负责编码、加密和调制。数据模块515负责准备AP想要或需要通过传输模块发送的数据。以上的描述是本发明的一个示例性实施例,并且在实际应用中,上述模块能够被合并为一个模块或者进一步细分为其它模块,例如编码、加密和调制模块。
图5b的示意图/块图示出了根据本发明原理的获取竞争网络中通信媒体访问的站台的操作。关联模块520发送加入网络的请求和从AP接收通信媒体访问方法的指示、时隙计数、网络中站台的数量和地址队列。关联模块进一步确定如果站台支持该通信媒体访问方法,则向AP发送确认消息。如果加入站台不支持通信媒体访问方法,则向AP发送去关联消息,从而和网络去关联。也就是说,关联模块执行任何与站台加入网络(成为网络的一员)相关的操作,以及通过传输模块525发出任何与站台加入网络相关的消息。传输模块525负责传输任何与站台加入网络相关的消息,以及在站台获得通信媒体访问之后站台必须发送的数据。传输模块还负责编码、加密和调制。数据模块515负责准备站台想要或者需要通过传输模块发送的数据。以上的描述是本发明的一个示例性实施例,并且在实际应用中,上举模块能够被合并为一个模块或者进一步细分为其它模块,例如编码、加密和调制模块。
应当注意,数据的接收没有被示出或描述,这是因为其不被本发明的方法影响。显然地,数据被AP和身为网络成员的站台接收和处理,但是本发明致力于用于在竞争网络中为了开始帧传输而获取通信媒体访问的方法和设备。
本发明的确定性退避方法使用了不同于传统CSMA/CA的方法来处理媒体访问问题。CSMA/CA使用随机退避方法来避免冲突,但本发明的方法通过确定地为时隙计数赋值来减少或消除冲突。两种解决方案是不兼容的。一个使用随机退避方法的站台是无法在使用确定性退避方法做为其媒体访问方法的网络中工作的。
AP把网络使用的媒体访问算法通知潜在的新加入者。仅仅支持随机退避方法的旧版本的站台在确定网络正在使用的是确定性退避方法之后,应该撤消它的关联请求。在这种情况下,AP仅仅接受那些支持确定性退避方法的站台的请求。
两种算法之间的关系类似于TDMA(timedivisionmultipleaccess,时分多路复用)和CSMA(carriersensemultipleaccess,载波监听多路复用)之间的关系。它们都是排他的,并且在一个网络中只能存在它们之中的一个。但是应该注意到,本发明的方法仍然属于CSMA的范畴,因为1)它的操作是基于处于低层的物理层提供的载波监听机制;并且2)AP不像TDMA那样控制时间分配。实际上,本发明的方法中没有时间分配,每一个站台通过循环服务的方式获取传输的机会。
确定性退避方法提供的循环服务保证了站台对媒体访问的公平性。在每一轮服务周期中每一个站台只有一次机会来完成数据帧的发送。此外,如果对每一次发送机会的时长增加一个时间限制(记为TxopLimit),则服务间隔为((m-1)·(TxopLimit+DIFS)+DIFS)。其中,m是网络中站台的数量。因此,通过仔细地选择TxopLimit和对网络大小的适当控制,本发明能够对网络应用提供有保证的QoS。
上述的一个替代的实施例提供了一种简单的优先级方案,该方案通过增加站台的数量和把具有高优先级业务/数据的站台多次插入地址队列来实现。虽然这种方案影响了本发明的确定性退避方法的整体公平性,但是在某些情况下还是有利的。
网络冲突对于基于CSMA的无线通信来说是一件令人头疼的问题,因为冲突严重地降低了网络性能,尤其是在吞吐量和网络效率方面。但是,本发明的确定性退避方法能够消除(或很大程度上降低)冲突。当站台的时隙计数到达0的时候它可以唯一地控制无线媒体。在这点上,本发明的确定性退避方法比传统的随机退避方法表现出色。
本发明的确定性退避方法的另一个优点是当每一个站台在获得信道的控制时都有数据要发送的时候网络效率高。在这种情况下,在两个连续的发送机会之间的时间间隔仅仅是一个DIFS时间段/时间间隔加上一个时隙时间,对于IEEE802.11b来说大约有70μs,对于IEEE802.11a和IEEE802.11g来说时间就更短。因此,空闲时段和繁忙时段的比率低,并且网络效率高。在如此饱和的网络,网络的工作状态和TDMA网络类似。
应当了解本发明能够以硬件(例如ASIC芯片)、软件、固件、特殊用途的处理器或者它们的组合的形式在服务器中、中间设备中(例如无线接入点或者无线路由器)或者移动设备中实现。优选地,本发明以硬件和软件的组合的形式来实现。此外,软件优选地被实现为存储于程序存储设备之上的应用程序。该应用程序能够被包含合适的架构的机器载入和执行。优选地,该机器被实现在包括诸如至少一个中央处理单元(centralprocessingunits,CPU)、随机存储器(randomaccessmemory,RAM)和输入/输出(input/output,I/O)接口之类硬件的计算机平台上。计算机平台也包括操作系统和微指令码。本发明中描述的不同的方法和功能可以是通过操作系统执行的微指令码的部分或者应用程序的部分(或者两者结合的部分)。另外,计算机平台可以连接其它的外设设备,例如另外的数据存储设备和打印设备。
应当进一步了解,因为附图中描述的一些方法步骤和系统组件优选地实现在软件中,所以系统组件(或者方法步骤)的实际连接会依据本发明被实现的方式的不同而不同。本领域普通技术人员基于本发明给出的教导能够了解本发明给出的及其类似的实现或配置。