专利名称:用于改进的链路层切换的方法和装置的制作方法
技术领域:
本发明通常涉及通信系统,具体地,涉及无线通信系统中改进的链路层切换(handoff)。
背景技术:
分组交换的无线接入网络包含AN(接入网络)元件。通常,AR经由AN而服务MN(移动节点),所述AN当前服务该MN。通常,AR执行移动代理(agent)的功能以支持MN的网络层移动。在相同无线技术内或不同无线技术之间的MN的AR间切换的情况下,MN的移动代理从源AR切换到目标AR。这引起在MN和新AR之间建立新的链路层连接。
与目标AR的新链路层链接的重新建立导致源AR和MN的链路层(例如ARQ层)刷新(flush)它们的未完成的发送和重新发送队列。刷新未完成的无线电帧可导致所影响的端到端应用的可察觉的性能影响,特别是基于VoIP(因特网协议上的语音)和基于PTT(一键通)应用。这种分组丢失还可导致TCP(传输控制协议)发送者通过调用缓慢开始步骤而开始拥挤控制。这将反过来影响基于TCP的应用的端到端性能。
因此,存在对于通过处理当前现存的分组丢失问题而改进链路层切换的装置和方法。
图1是根据本发明的多个实施例的无线通信系统的框图说明。
图2是根据本发明的多个实施例的在由MN从源AN到目标AN的链路层切换期间,在MN(移动节点)、源AN(接入网络)和目标AN中使用的基于开放系统互连(OSI)的通信接口的框图说明。
图3是根据本发明的多个实施例的基于IEEE(电子与电气工程师协会)802.XX的接入网络的协议堆栈的框图说明。
图4是根据本发明的多个实施例的基于3GPP2(第三代合作项目2)的接入网络的协议堆栈的框图说明。
图5是根据本发明的多个实施例的由IBML(中间缓存管理层)执行的功能的逻辑流图。
参照图1至5在下面公开了本发明的某些实施例。草拟了说明和示例,旨在增强理解。例如,相对于其它元件,夸大了某些图例元件的尺寸,对于商业地成功的实现来说有益的甚至必须的公知元件没有被描述,使得可以得到实施例的较少阻碍和更加清楚的表达。追求在示例和说明中的简单性和清楚性以有效地使得本领域技术人员考虑到本领域公知技术而能够做出、使用和最佳实践本发明。本领域技术人员将理解,可以对下面说明的特定实施例做出各种改进和变化,而不背离本发明的精神和范围。因此,说明书和附图应理解为是说明性和示例性的,而不是限制性的和全部包括的,对下面说明的特定实施例的所有这些改进都意在包括在本发明的范围之内。
具体实施例方式
说明了各种实施例以表明对于通过处理当前存在的分组丢失问题改进链路层切换的装置和方法的需要。在基于OSI的通信接口的层3下面引入中间缓存管理层(IBML)。IBML缓存经由接口的下部层发送的OSI层3的复件,并使用IBML从一个或多个下部层接收的指示来管理缓存器内容。当IBML接收正在进行链路层硬切换的指示时,IBML将当前所缓存的分组传送到在目标通信接口中的相应IBML。该子层3缓存器使得目标通信接口能够减少与硬切换相关的分组丢失。
参照图1至5可以更全面地理解所公开的实施例。图1是根据本发明的多个实施例的无线通信系统100的框图说明。当前,标准机构例如OMA(开放移动联盟)、3GPP(第三代合作项目)、3GPP2(第三代合作项目2)以及IEEE(电子与电气工程师协会)802在开发无线通信系统的标准规范(可以分别通过http//www.openmobilealliance.com、http//www.3gpp.org/、http//www.3gpp2.com和http//www.ieee802.org联系这些组织)。通信系统100表示具有基于不同无线技术的接入网络的系统。例如,下面的说明将假定AN121是基于IEEE.802.XX的而AN122是基于3GPP2的。因此,AN121使用例如IEEE802.11、802.16或802.20的无线技术,而AN122使用例如CDMA2000或HRPD(也称为1xEV-DO或IS-856)的无线技术,AN121和122都适合地修改为实现本发明。本发明的替换实施例可在使用其它或额外技术的通信系统中实现,所述其它或额外技术例如但不限制于在3GPP规范中描述的那些(例如,GSM、GPRS、EDGE、W-CDMA、UTRAN、FOMA、UMTS、HSDPA和HSUPA)、在IS-136(TDMA第三代无线标准)规范中描述的那些、在IS-95(CDMA)规范中描述的那些、1xEV-DV技术、以及集成的分发增强网络技术。
更具体,通信系统100包括移动节点(MN)101、接入网络(AN)121和122、接入路由器(AR)141和142、以及分组网络151。本领域技术人员将理解图1没有说明系统100操作所必须的所有网络设备,而是对于在此说明的实施例特别相关的那些系统化元件和逻辑实体。例如,已知AN包括例如WLAN(无线局域网络)站(其包括接入点(AP)、AP控制器/交换机、和/或WLAN交换机)、基收发器站(BTS)、基站点控制器(BSC)(其包括选择和分发单元(SDU))、分组控制功能(PCF)、分组控制单元(PCU)、和/或无线电网络控制器(RNC)的设备。然而,图1没有具体示出任何这些设备。
相反,在图1中将AN121和122说明为包括处理单元125和126、网络接口127和128、以及收发器123和124。通常,例如处理单元、网络接口、和收发器的元件是公知的。例如,AN处理单元公知为包括例如但不限于微处理器、微控制器、存储器件、应用特定的集成电路(ASIC)和/或逻辑电路的基本元件。这些元件通常适于实现由高级设计语言或描述表达的、使用计算机指令表达的、使用消息流图表达的、和/或使用逻辑流图表达的算法和/或协议。
因此,给定算法、逻辑流、消息流、和/或协议规范,本领域技术人员明白有许多设计和开发技术来实现执行给定逻辑的AN处理单元。因此,AN121和122表示根据在此的说明的用来实现本发明的多个实施例的已知AN。此外,本领域技术人员将理解可以以或者通过各种物理元件来实现本发明的方面,该物理元件不必要限制于单个的平台实现。例如,可以以上述所列或在这些元件中分布的任何AN设备实现本发明的AN方面。
AN121和122使用无线接口111和112来与MN101通信。由于,为了说明的目的,AN121是基于IEEE802.XX的而AN122是基于3GPP2的,无线接口111和112分别对应于IEEE802.XX空中接口和3GPP2空中接口。
已知MN平台指代各种消费电子平台,例如但不限制于移动台(MS)、接入终端(AT)、终端设备、游戏设备、个人计算机、以及个人数字助理(PDA)。具体地,MN101包括处理单元102、收发器103、键盘(未示出)、扬声器(未示出)、麦克风(未示出)、以及显示器(未示出)。在MN中使用的处理单元、收发器、键盘、扬声器、麦克风以及显示器是公知的。
例如,已知MN处理单元包括基本元件,例如但不限制于微处理器、数字信号处理器(DSP)、微控制器、存储器件、应用特定的集成电路(ASIC)和/或逻辑电路。这种MS元件通常适于实现使用高级设计语言或描述表达的、使用计算机指令表达的、使用消息流图表达的、和/或使用逻辑流图表达的算法和/或协议。因此,给定算法、逻辑流、消息/信令流、呼叫流、和/或协议规范,本领域技术人员明白有许多设计和开发技术来实现执行给定逻辑的用户设备。因此,MN101表示根据在此的说明适于实现本发明的实施例的已知MN。
根据本发明的各种实施例的操作基本按照下述发生。相关操作从AN121、MN101、或AN121和MN101两者经由使用基于开放系统互连(OSI)的通信接口的无线接口111彼此发送消息开始。具体地,由处理单元125和102使用基于OSI的通信接口,经由各个收发器123和103分别将消息发送到MN101和AN121。当发送和接收消息时,发生从服务或源AN121到目标AN122的硬切换。
图2是根据本发明的多个实施例,在MN101从源AN121链路层切换到目标AN122期间,在MN101、源AN121和目标AN122中使用的基于OSI的通信接口的框图说明。将基于OSI的通信接口说明为由源AN处理单元125、目标AN处理单元126、和MN处理单元102实现。将MN处理单元102说明为实现使用不同无线信令技术的每个AN,AN121和AN122的基于OSI的通信接口。每个通信接口包括基于OSI分层模型的处理层。在图2中,使用在每个通信接口中的框203、204、213和214说明层3,而用框205、206、215和216说明下部层(层3之下的层)。本发明的实施例还包括额外的层,中间缓存管理层(IBML),由框201、202、211和212表示。
图3和4说明由MN101、源AN121和目标AN122的某些实施例实现的部分基于OSI的通信接口。图3是基于IEEE802.XX的接入网络的协议堆栈300的框图说明。因此,作为实例,协议堆栈300说明层201、203和205以及层211、213和215实现的协议堆栈。在协议堆栈300的情况下,下部层205和215每个包括逻辑链路控制(LLC)层、MAC层管理实体(MLME)、物理层管理实体(PLME)、媒体访问(MAC)层、以及物理层。
相似地,图4是基于3GPP2接入网络的协议堆栈400的框图说明。因此,作为实例,协议堆栈400说明层202、204和206(见SDU层)以及层212、214和216(见MS层)实现的协议堆栈层。在协议堆栈400的情况下,下部层206和216每个包括其他层中的无线电链路协议(RLP)层。
协议堆栈300和400包括层3和层3之下的链路层ARQ功能之间的中间缓存管理层。源AN125在IBML201中缓存OSI层3分组的复件。这些是经由下部层205发送到MN101的OSI层3分组。相同地,MN处理器102在IBML211中缓存OSI层3分组的复件。这些是经由下部层215发送到AN121的OSI层3分组。
然后下部层205和215操作为确定是否成功发送所发送分组的全部部分。例如,下部层205和215的自动重发请求(ARQ)层可使用隐含的/外在的ACK/NAK以及映射表来确定是否已经接收到属于层3分组的全部分段(segment),该映射表将上部层分组ID(例如,IP id)映射到属于相应ARQ帧的分段的顺序号。
当下部层205或215确定已成功发送分组时,将指示发送到各个IBML201或211。通常,这些指示采用触发、事件或某些形式的消息的形式。例如,在某些实施例中,已将所缓存的分组成功发送的指示包括LLC图元(primitive)。如图3所示,由IBML201和211用来发送和接收数据的LLC_SAP(LLC服务接入点),还可用来传达指示成功的分组传输的LLC图元(例如,TX-SUCCESS-IND)。当IBML201或211接收到成功传输指示时,从IBML缓存器中除去成功发送的分组。
在上述实施例中,下部层205和215使用链路层特定的装置来检测是否通过无线链路成功地发送分组。如果下部层205和215不能检测分组被它们各自的同级(peer)实体所接收,IBML201和211可以使用基于定时器的方法决定何时刷新它们各自缓存器的内容。具体,IBML201和211可以使用中断(blackout)定时器来决定在没有成功(或失败)的传输指示的情况下,要缓存层3分组多久。当IBML201和211检测与所缓存的分组相关的定时器的定时器超时,IBML201和211将所缓存的分组从它们各自的缓存器中除去。可将这些中断定时器的超时值设置为等于特定链路层切换中断时间。
下部层205和215还操作为确定是否成功发送所发送的分组。例如,下部层205和215的ARQ层检测何时放弃所缓存分组的一个或多个分段。这是MAC(媒体访问)层放弃的结果,或者在基于3GPP2通信接口的情况下,是H-ARQ(混合自动重传请求)放弃、RLC(无线电链路控制)放弃、或RLP(无线电链路协议)放弃的结果。
当下部层205或215确定分组的传输尝试失败时,将指示发送到各个IBML201或211。再次,这些指示通常采取触发、事件、或某些形式的消息的形式。例如,在某些实施例中,所缓存的分组在传输中失败的这些指示包括MAC层管理实体(MLME)图元。如图3所说明,MLME SAP(MLME服务接入点)可用于传达指示失败的分组传输的MLME图元(例如,TX-FAIL-IND)。当IBML201和211接收这些指示时,IBML201和211尝试经由各个下部层205和215重传失败的分组。
下部层205和215还操作为确定正在进行从源AN121到目标AN122的链路层硬切换(即,即将到来或正在进行)。当下部层205或215确定正在进行这种切换时,将指示发送到各个IBML201或211。再次,这些指示通常可以使用从操作切换控制器启动的触发、事件、或某些形式的消息的形式。例如,在某些实施例中,正在进行切换的这些指示包括MLME或PLME(物理层管理实体)图元。如图3所说明,MLME_SAP或PLME_SAP(PLME服务接入点)可用于传达指示正在进行链路层硬切换的适宜的MLME/PLME图元(例如,L2-HO-INIT-IND)。
当IBML201接收到切换进行指示时,IBML201将在IBML201中当前缓存的分组传输到目标AN122的目标IBML202中。通过在切换指示中包括与目标IBML202相关的地址信息来启动该传输,所述地址信息例如IBML202本身的网络地址或其中可以找到IBML202的WLAN站/AP/BSC/SDU的地址。利用该信息,可建立隧道来支持AN间的传输。
略微不同的是,当IBML211接收切换进行指示时,IBML211将在IBML211当前缓存的分组传输到在MN101的基于OSI的目标通信接口中的目标IBML212。在这种情况下,从IBML211到IBML212的传输从源通信接口到目标通信接口在MN101中内部地进行。通过在切换指示中包括基于OSI的目标通信接口的标识符,启动该传输。
目标IBML202和212接收先前在各个源IBML201和211缓存的分组。当切换结束时,IBML202和212能够经由各个下部层206和216重传这些缓存的分组。因此,当检测到链路层硬切换时,这些所缓存的分组的缓存和随后的传输可以减少在上行链路和下行链路上的这些切换期间的分组丢失数。
如上所述,下部层205和215操作为确定是否成功地发送所发送的分组。当下部层205或215确定分组的传输尝试失败时,将指示发送到各个IBML201或211,然后该IBML201或211尝试经由各个下部层205或215重传失败的分组。在某些实施例中,各个IBML201或211还可以通知例如TCP的传输层无线电链路是弱的。例如,如果SDU-TX-FAIL-IND的频率达到阀值,那么各个IBML201或211可通知本地TCP停止将额外的分组发送到它的同级。然后本地TCP将TCPACK发送到它的同级,将它的窗口域设置为零并由此请求它的同级停止发送数据。临时端到端流控制(TCP持续模式)的调用用于防止在切换期间在无线电链路上丢弃额外的分组。这还防止由于在切换期间的分组丢失触发TCP拥挤控制和缓慢开始。
当切换结束时,各个目标IBML202或212接收切换已经结束的指示,然后能够通知TCP数据传输可以重新开始。反过来,TCP可以通过将具有非零窗口大小的TCP ACK发送到其同级而重新开始数据传输。在该实例中,触发TCP持续模式通过避免在切换之后的TCP拥挤控制/缓慢开始步骤而增强基于TCP的应用的性能。
图5是根据本发明的多个实施例的由IBML执行的功能的逻辑流图。逻辑流500开始(501)于IBML缓存(503)经由基于OSI的通信接口的一个或多个下部层(即,层3之下)发送的层3分组的复件。当IBML继续缓存新的层3分组的复件时,它作用于各种所接收的指示。当IBML接收到所缓存的分组之一被成功发送或所缓存的分组的定时器超时的指示时(505),IBML将该分组从它的缓存器中除去(507)。当IBML接收所缓存分组之一的传输尝试失败的指示时(509),IBML经由一个或多个下部层重传(511)失败的分组。最后,当IBML接收正在进行链路层硬切换的指示时(513),IBML将其当前缓存的分组传输到在基于OSI的目标通信接口中的目标IBML(515),并且逻辑流500结束(517)。
还可以按照改变到现有的通信标准,例如IEEE802.XX和3GPP2,来表达本发明的各个实施例。尽管有许多改进这些和其它标准来实施本发明的方法,在下面提供几个特定实例。
可以将IEEE802.XX协议堆栈修改为包括IBML和各种指示。所述改进可包括在L3和LLC层之间集成IBML、加入SDU-TX-SUCCESS-IND LLC图元来向IBML指示IP分组通过无线电链路成功传输、加入L2-HO-INIT-IND MLME或PLME图元来向IBML指示链路层切换是即将来临的(作为部分该触发,MLME或PLME还将提供移动台正在切换到的目标AP的地址)、使LLC通过LLC_SAP发送SDU-TX-SUCCES-IND触发、使PLME或MLME分别通过PLME或MLME SAP发送L2-HO-INIT-IND触发、使IBML使用LLC_SAP来发送/接收数据以及接收链路层触发。
通过这些改变,IBML在将更高层分组发送到在下LLC层之前可以缓存更高层分组,直到LLC使用SDU-TX-SUCCESS-IND通知IBML已经通过无线电链路成功地将分组发送到同级LLC实体。MLME或PLME层将触发信息发送到IBML,一旦它检测到链路层切换是即将到来的或是完成的。使用扩展的IAPP或某些其它隧道机制的基础设施IBML将所缓存的IBML分组从源AP发送到目标AP。移动台使用该触发来将所缓存的分组从源接口发送到目标接口。
可将3GPP2协议堆栈修改为包括IBML和各种指示。该修改可包括以下的某些或全部在基础设施中的SDU的GRE和RLP子层之间集成IBML、在移动节点的PPP和RLP层之间集成IBML、修改RLP实现以使得其(使用SDU-TX-SUCCESS-IND图元)当检测到成功地将PPP帧的全部分段成功地发送到其同级实体时对IBML指示(RLP发射机可使用L_V(N)同级顺序号更新以及例如IP id到RLP帧的顺序号的映射的信息,其对给定IP分组而生成,来决定IP分组是否成功地被其同级实体接收(在RLP填充帧交换期间接收L_V(N)_peer信息))、修改H-ARQ以对IBML指示(使用SDU-TX-SUCCESS-IND图元),一旦MAC-sub层的H-ARQ层接收与IP分组的全部分段相关的ACK(H-ARQ实现应保持例如包含IP标识符与H-ARQ PDU的映射的表的额外信息)。
参照本发明的特定实施例描述了优点、其它优势及对问题的解决方法。然而,优点、其它优势、对问题的解决方法,以及将导致会引起这种优点、优势及解决方法或者或使得这种优点、优势或解决方法更加显著的任何单元不被解释为任何或所有权利要求的决定性的、需要的或重要的特定或单元。如在此和在所附权利要求中所使用,术语“包括”、“包含”或其任何其他变形旨在指代非排外的包括,以使得包括一系列单元的过程、方法、制造的物品或装置不仅仅包括在该列表中的这些单元,而是可以包括没有明确列出或这些过程、方法、制造的物品或装置所固有的其他单元。
在此使用的术语“a”或“an”,定义为一个或多于一个。在此使用的术语“多个”,定义为两个或多于两个。在此使用的术语“另一个”,定义为至少第二或更多。在此使用的术语“包括”和或“具有”,定义为包括(即,开放的语言)。在此使用的术语“连接”,定义为相连,尽管不必是直接地,也不必是机械地。在此使用的术语“程序”、“计算机程序”和“计算机指令”,定义为设计用于计算机系统上的执行的指令序列。该指令序列可包括但不限制于子程序、函数、过程、目标方法、目标实现、可执行应用、小应用程序、小服务程序、共享的库/动态加载库、源代码、目标代码和/或汇编代码。
权利要求
1.一种用于改进的链路层切换的方法,包括通过在基于开放系统互连(OSI)的源通信接口中的中间缓存管理层(IBML)缓存分组的复件,以产生一组缓存的分组,其中所述分组是经由基于OSI的源通信接口的至少一个下部层发送的OSI层3分组,下部层在OSI层3之下;由IBML从至少一个下部层的下部层接收正在进行链路层硬切换的指示;由IBML响应于该链路层硬切换指示,将所述缓存的分组的组传输到在基于OSI的目标通信接口中的目标IBML。
2.如权利要求1的方法,其中基于OSI的源通信接口中的至少一个下部层包括来自包括媒体访问(MAC)层、逻辑链路控制(LLC)层、MAC层管理实体(MLME)、物理层管理实体(PLME)、无线电链路协议(RLP)层、无线电链路控制(RLC)层、自动重传请求(ARQ)层、以及混合自动重传请求(H-ARQ)层的组的至少一个协议层。
3.如权利要求1的方法,还包括由IBML从至少一个下部层的下部层接收已经成功发送缓存的分组的组中的分组的指示;由IBML响应于该成功发送指示,在传送缓存的分组的组之前从缓存的分组的组中除去成功发送的分组。
4.如权利要求3的方法,还包括由至少一个下部层的下部层确定成功地发送了成功发送的分组的所有部分。
5.如权利要求1的方法,还包括由IBML检测在缓存的分组的组中的分组的定时器超时;由IBML响应于该定时器超时,在传送缓存的分组的组之前从缓存的分组的组中除去该分组。
6.如权利要求1的方法,还包括由IBML从至少一个下部层的下部层接收缓存的分组的组中的分组传输尝试失败的指示;由IBML响应于该失败的传输指示,经由基于OSI的源通信接口的至少一个下部层重传失败的分组。
7.如权利要求1的方法,还包括由IBML从至少一个下部层的下部层接收缓存的分组的组中的分组传输尝试失败的指示;由IBML响应于该失败的传输指示,通知传输层无线电链路是弱的。
8.如权利要求7的方法,还包括由目标IBML接收链路层硬切换结束的指示;由目标IBML响应于该硬切换结束指示,通知传输层可以重新开始数据传输。
9.一种接入网络(AN),包括收发器;网络接口;处理单元,通信地连接到收发器和网络接口,适于经由收发器,使用包括中间缓存管理层(IBML)的基于开放系统互连(OSI)的源通信接口来发送和接收消息,适于缓存IBML中的分组的复件以产生缓存的分组,其中该分组是经由基于OSI的源通信接口的至少一个下部层发送的OSI层3分组,下部层在OSI层3之下,适于确定正在进行到目标AN的链路层硬切换,适于响应于该切换确定,经由网络接口将所缓存的分组传送到目标AN的基于OSI的目标通信接口的目标IBML。
10.一种移动节点(MN),包括收发器;处理单元,通信地连接到收发器,适于经由收发器,使用包括中间缓存管理层(IBML)的基于开放系统互连(OSI)的源通信接口来发送和接收消息,适于缓存IBML中的分组的复件以产生缓存的分组,其中该分组是经由基于OSI的源通信接口的至少一个下部层发送的OSI层3分组,下部层在OSI层3之下,适于确定正在进行到目标AN的链路层硬切换,适于响应于该切换确定,将所缓存的分组传送到MN的基于OSI的目标通信接口的目标IBML。
全文摘要
说明了各种实施例来表明对通过处理当前存在的分组丢失而改进链路层硬切换的装置和方法的需要。在基于OSI的通信接口的层3之下引入中间缓存管理层(IBML)(201、211)。IBML缓存经由接口的下部层(205、215)而发送的OSI层3分组的复件,并使用IBML从一个或多个下部层接收的指示管理缓存器内容。当IBML接收正在进行链路层硬切换的指示时,IBML将当前缓存的分组传送到目标通信接口中的响应IBML(202、212)。该子层3使得目标通信接口能够减少与硬切换相关的分组丢失。
文档编号H04L29/08GK1838637SQ20061005979
公开日2006年9月27日 申请日期2006年3月7日 优先权日2005年3月7日
发明者阿乔伊·K·辛格, 尤格什·B·巴特 申请人:摩托罗拉公司