用于具有时变容量的信道的自动重新发射请求协议的制作方法

文档序号:7871126阅读:180来源:国知局
专利名称:用于具有时变容量的信道的自动重新发射请求协议的制作方法
背景技术
本发明通常涉及一种用于从无线电发射机向接收机传输数据的方法和系统。更特定地,本发明涉及一种用于在站之间(诸如无线本地环路系统中的无线电基站和用户站等等)可靠地传输数据的方法和系统,其中数据传输被分组为协议单元,其有效负载部分随数据承载容量变化。
背景技术
在2001年4月30日提交的并转让至本申请的受让人的加拿大专利申请No.2,345,507公开了一种用于在站之间(诸如无线本地环路系统中的无线电基站和用户站等等)传输数据的方法和系统,其中数据传输以具有固定持续时间的帧的形式发送,该申请的整体内容在此处引入作为参考。每个用户站间歇地向基站报告由基站发射的信号的接收质量。每个传输块包括相同的预定数目的业务码元,并且包括报头部分和有效负载部分。每个块的报头部分被分组用于以稳健性的方式传输,增强了每个用户站能够将其恢复的概率,并且报头部分包括所需用于恢复该有效负载部分的信息。根据由预计的接收用户站报告的接收质量,对有效负载部分进行分组用以有效地利用传输资源,同时确保预计的接收用户站能够恢复该有效负载的合理概率。报头部分可以包括用于对有效负载进行分组的调制、前向纠错和重复的指示,并且可以指示有效负载的长度。结果是,由于用户站处的接收质量的变化,可用于向用户站发射数据的数据承载容量可以从帧到帧发生变化。
数据传输错误将不可避免地出现在无线数据传输系统中。一种用于纠错的方法通常被称作“自动重复请求”或者“ARQ”。在该方法中,当以协议单元的形式发射数据时,如果接收的协议单元被接收机确定为不可靠的,则其不能由接收机接受。该接收机以显式方式或者隐含方式请求重新发射该可疑的协议单元。如果呈现出该协议单元已丢失,则也可以请求重新发射。
诸如加拿大专利申请No.2,345,507中公开的系统中的ARQ实现不如其中协议单元的数据承载容量是固定的系统中的ARQ实现来得直接。重新发射应优选地在发射机接收到重新发射请求时尽快发生,但是如果帧的数据承载容量发生变化,则可能出现由于协议单元过大以致不适合下一帧或者可能甚至不适合多个连续的帧,因此丢失的或者受损的协议单元的重新发射是不可行的。在要求低的等待时间的情况中,这是不能够被接受的。一种用于处理该情况的方法是,限制协议单元的有效负载部分的大小,由此即使在可利用的数据承载容量减小时,也可以重新发射协议单元。然而,由于发送相同数量的数据需要更多的协议单元,由此需要更多的报头,因此这样做增加了开销,降低了数据通过量。需要一种方法和系统,用于在其中帧的数据承载容量发生变化的系统中提供ARQ,但是其保持低的开销和高的通过量。
发明概述根据本发明的一个方面,提供了一种用于在数据链路上以帧的形式向接收机发射有序数据的系统和方法,该帧的数据承载容量可以从帧到帧发生变化。该数据以在至少一个块序列中发射的以隐含方式顺序编号的块中发射,每个序列具有至少一个块。该块具有确定的长度,使得接收机可以使用每个块序列的第一块的序列编号,通过序列编号来识别该块,并且可以独立地请求重新发射丢失或者受损的块。优选地,序列中顺序编号的块的每一个均具有固定的长度,但序列的最末块除外,或者仅具有一个块的序列的唯一的块除外,其可以是较短的。可用于为块编号的序列编号的总数目可以是预先选择的,使得理想条件下的数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果不大于最低的数据承载容量,该最低的数据承载容量是在数据链路的正常操作过程中用于在数据链路上发射块序列的帧中很有可能是可利用的最低数据承载容量。该固定的长度在开始时可被设置为大于数据链路正常操作过程中的数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目,并且小于最大的数据承载容量,该最大的数据承载容量是在数据链路的正常操作过程中用于在数据链路上发射块序列的帧中很有可能是可利用的最大数据承载容量。如果数据链路的带宽延迟积发生变化,则该固定长度可被重置,使得该固定长度处于数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果的预定容差内,或者处于用于在数据链路上发射块序列的帧中可利用的最大数据承载容量内。每个块序列优选地连同报头一起封装在协议单元中,该报头包括块序列的第一块的序列编号。
根据本发明的另一方面,当使得帧中的数据承载容量是可利用的时候,在一个或者多个协议单元中发射数据。每个离散的协议单元具有数据有效负载部分,其以隐含方式分为顺序编号的块,该每个块具有相同的固定长度,但序列的最末块除外,或者,如果协议单元仅具有一个块,则该唯一的块除外,如果数据有效负载部分不是该固定长度的整数倍,则该块是较短的。每个协议单元还具有报头部分,其包括其数据有效负载部分中的第一块的序列编号。选择该序列编号,使得在数据链路上发射的所有块可被接收机通过序列编号进行识别。如果接收机确定其确实未接收到先前发射的协议单元的未受损复本,如果在下一可利用的帧中存在足够的数据承载容量,则发射机在待发射的下一可利用的帧中重新发射该先前发射的协议单元。如果在下一可利用的帧中不存在足够的数据承载容量,则发射机由该先前发射的协议单元的块形成新的协议单元,其开始于先前发射的协议单元的第一块,且贯穿先前发射的协议单元顺序地进行,将块添加到新形成的协议单元中,直至下一可利用的帧的数据承载容量被使用或者遇到了不具有该固定长度或者大于剩余的可利用的数据承载容量的块。如果(1)存在剩余的可利用的数据承载容量,(2)先前发射的协议单元的最末块具有该固定长度,且(3)待重新发射的下一个先前发射的协议单元与该先前发射的协议单元相连续,则添加来自下一个先前发射的协议单元的连续的块,直至(1)待添加的最末块不具有该固定长度,(2)待添加的下一块大于剩余的可利用的数据承载容量,或者(3)已添加了该下一个先前发射的协议单元的所有的块。如果仍然存在剩余的可利用的数据承载容量,则重复该过程。然后,在数据链路上,在下一可利用的帧中发射新形成的协议单元。而且,直到必须被重新发射的所有先前发射的协议单元的所有块均被成功重新发射之前,每当帧中的数据承载容量是可利用的时,就以相同的方式形成并发射新的协议单元。每个新形成的协议单元具有报头,其包括其数据有效负载部分中的第一块的序列编号。如果在重新发射的先前发射的块中有任何帧的数据承载容量未被充分利用,则任何剩余的数据承载容量被填补有由先前未被发射的数据形成的新的协议单元。
根据本发明的另一方面,提供了一种用于在数据链路上发射数据的系统,包括接收机和发射机。该接收机具有微处理器、调制解调器、无线电装置和天线,并且能够接收在数据链路上发射的帧。该帧的数据承载容量可以随时间变化。该发射机包括微处理器、调制解调器、无线电装置和天线,并且可操作用于在数据链路上向接收机发射帧。该帧包括一个或者多个协议单元。每个离散的协议单元具有数据有效负载部分,其以隐含方式分为顺序编号的块,该每个块具有固定的长度,如果该有效负载部分中承载的字节数目不是该固定长度的整数倍,则最末块除外(或者,如果该有效负载部分中的字节数目小于该固定长度,则该唯一的块除外),该最末块或该唯一块短于该固定长度。该协议单元还具有报头部分,其包括数据有效负载部分中的第一块的序列编号。选择序列编号使得可以通过序列编号识别在数据链路上发射的所有块。如果确定接收机未接收到先前发射的协议单元的未受损复本,则,如果在下一可利用的帧中存在足够的数据承载容量,则发射机在待发射的下一可利用的帧中重新发射该先前发射的协议单元。然而,如果在下一可利用的帧中存在不足够的数据承载容量,则发射机由该先前发射的协议单元的块形成新的协议单元,其开始于该先前发射的协议单元的第一块,并且贯穿该先前发射的协议单元顺序进行,将块添加到新形成的协议单元中,直至下一可利用的帧的数据承载容量被使用。然后,在数据链路上发射该新形成的协议单元。如果在新的协议单元中未能发射先前发射的协议单元的所有的块,则直到先前发射的协议单元的所有块均被成功重新发射之前,每当帧中的数据承载容量是可利用的时,就形成并发射另外的新的协议单元。每个新形成的协议单元具有报头,其包括其数据有效负载部分中的第一块的序列编号。
根据本发明的另一方面,提供了一种用于在数据链路上以帧的形式向接收机发射数据的协议单元,该帧的数据承载容量可以从帧到帧发生变化。该协议单元包括数据有效负载部分,其以隐含方式分为顺序编号的块,该每个块具有固定的长度,如果该有效负载部分中承载的字节数目不是该固定长度的整数倍,则该最末块除外(或者,如果该有效负载部分中的字节数目小于该固定长度,则该唯一的块除外),该最末块或该唯一块短于该固定长度。该协议单元还具有报头部分,其包括数据有效负载部分中的第一块的序列编号。选择序列编号使得接收机可以通过序列编号识别在数据链路上发射的所有块。
附图简述现在,通过参考附图,将仅借助于示例描述本发明的实施例,在附图中

图1是示例性网络的示意图,其中可以提供用于提供根据本发明的实施例的ARQ的系统和方法;图2是图1所示的基站的示意图;图3是图1所示的一个用户站的示意图;图4a、4b和4c是使用三个不同的扩频因子在图1所示的网络上用于传输的具有数据块的帧的示意图;图5是图4a的帧中的块的示意图6是构建图5的块的方法的流程图;图7是流程图,示出了如果发射的帧的数据承载容量发生变化,如何在图1所示的网络中提供ARQ。
发明详述现在参考图1,用于传输数据的示例性无线网络系统通常由参考数字20表示。下文详细描述了系统20,由此读者可以理解随后描述的关于本发明的实施例的内容。然而,下面的系统20的描述不应被理解为限制了本发明的范围,其在广泛的电信网络的范围中是有利的,其中所需的是,以协议单元发射数据,该协议单元的数据承载容量可以随时间变化。
网络20包括无线电基站24和多个用户站28a,28b…28n。无线电基站24通过适当的网关以及一个或多个回程(未示出),诸如T1、T3、E1、E3、OC3或其他适当的陆线链路,或者可以是卫星或其他的无线电或微波信道链路,或者如本领域的技术人员所想到的任何其他的适合作为回程进行操作的链路,连接到至少一个数据电信网络(未示出),诸如基于陆线的数据交换网络、分组网络等。
基站24同用户站28进行通信,该用户站28安装在用户住宅附近,如无线本地环路系统中常见的。由基站24服务的用户站数目“n”可以取决于可利用的无线电带宽量和/或用户站28的配置和要求而变化。
通过无线电装置在基站24和每个用户站28之间建立数据信道32。数据信道32依据需要承载用于从基站24传输到各自用户站28a,28b…28n的信息。可以通过使用多种多路接入技术的网络实现数据信道32,该多路接入技术包括TDMA、FDMA、CDMA或者诸如GSM的混合系统等。在示例性系统20中,在数据信道32上发射的数据以封装在帧中的分组的形式进行发射,其细节将在下文中得到更加详细的讨论。
用户站28适当地接收向其发射的信号的能力,其在下文中被称为信号的“接收质量”,可以取决于多种因素。可以根据所使用的用于发射信号的多路接入技术,以不同的方式确定接收质量的测量。例如,在TDMA或者FDMA系统中,接收信号强度是最常用的测定。在CDMA系统中,接收比特功率与接收参考功率的比(通常表达为Es/No,其中Es是每个码元的容量,而No是接收的干扰容量)是相关的测定。在任何情况下,每个用户站28处的信道32的接收质量可以取决于多种因素而发生变化,包括多径干扰(由于附近建筑物的存在,等等)、无线电噪声源(包括由其他用户或者无线电噪声源进行的传输)、地理特征、用户站28离开基站24的距离、用户站28处的接收机的质量、等等,如本领域的技术人员所熟知的。典型地,信号随着距离而衰减为1/rN,其中r是用户站28和基站24之间的距离,且N>1。例如,在IS-95 CDMA系统中,N典型地是处于3<N<5的范围中。
如图1所说明的,用户站28相对于基站24的地理分布不需要是对称的,而且由于多种因素,物理上位置彼此接近的用户站将不必经历相同或者相似的接收质量,这些因素包括地理环境(存在或缺乏可以反射或者屏蔽信号的建筑物)、无线电环境(存在或者缺乏无线电噪声源)等。因此,在大部分情况中,由基站24服务的用户站28可具有显著不同的接收质量,并且这些接收质量可随时间变化。
在图1中,在某一时间,用户站28a和28f可以经历非常好的接收质量,而用户站28b和28g经历中等的接收质量,且用户站28c、28d和28e可以经历低的接收质量。在随后的时间,用户站28a、28d和28e可以具有非常好的接收质量,用户站28c、28e和28f可以经历中等的接收质量,而用户站28b可以经历低的接收质量,等等。
每个用户站28以适当的时间间隔或者在预定的事件处,向基站24报告其当前的接收质量。基站24进行操作用于保持具有最近的报告接收质量的数据库,并对有待在数据信道32上发射到每个用户站28的数据进行适当地分组。
如此处使用的,术语“分组”、“被分组的”和“分组的”指分组数据传输的整个布置,用于在预计的目标接收机处该分组数据的接收。数据的分组可以包括,但不限于,应用不同等级的前向纠错(FEC)码(从未编码到高级编码和/或不同的编码方法),使用多种等级的码元重复,使用不同的调制方案(4-QAM、16-QAM、64-QAM等)以及用于布置数据传输的任何其他技术和方法,其选择适合该传输的所需的无线电(或者其他物理层)资源量、数据速率和传输错误的概率。例如,数据可以通过速率1/4 FEC编码(每一个数据比特在4比特信息中传输)和16-QAM调制进行分组,用以传输到第一预计接收机,并且通过速率1/2 FEC编码和64-QAM调制进行分组,用以传输到第二预计接收机,其具有比第一预定接收机更好的接收质量。
图2更加详细地示出了基站24的示例。基站24包括天线40,或者多个天线,用于在通信信道32上接收和发射无线电通信。接下来,天线40连接到无线电装置44和调制解调器48。调制解调器48连接到微处理器-路由器组件52,诸如由SUN Microsystem制造的SPARC处理器系统。应当理解,组件52按照需要可以包括多个微处理器,并且/或者,如果需要,可以将路由器作为分立的单元提供。微处理器-路由器组件52中的路由器以任何适当的方式连接到回程56,其接下来将基站24连接到数据网络(未示出)。
现在参考图3,更加详细地示出了用户站28的示例。用户站28包括天线60,或者多个天线,用于在通信信道32上接收和发射无线电通信。天线60接下来连接到无线电装置64和调制解调器68,其接下来连接到微处理器组件72。
微处理器组件72可以包括,例如,由Intel制造的StrongARM处理器,其执行多种功能,包括实现A/D-D/A转换、滤波器、编码器、解码器、数据压缩器、解压缩器和/或分组分解。如图3中所示,微处理器组件72使调制解调器68同数据端口76互连,用于将用户站28连接到数据客户端设备(未示出),诸如个人电脑,个人数字助理等等,其可操作用于使用在通信信道32上接收的数据。因此,微处理器组件72可操作用于处理数据端口76和调制解调器68之间的数据。
现在参考图4a至4c,用于在信道32上传输的帧通常在100处标出。数据在信道32上在帧100中传输需要10毫秒的传输时间,尽管如果需要,还可以选择关于帧100的更长或者更短的传输时间。
如本领域的技术人员所理解的,帧100可以依据持续时间进行测量。接下来,该持续时间可以承载给定数目的用于传输的码元。接下来,这些码元可以表示数据,由码元所表示的实际的数据量取决于如何将数据分组到码元中。在CDMA实施例中,可以使用CDMA扩频因子、调制、重复和编码的组合对码元进行分组。因此,应当认识到,尽管帧100的持续时间保持恒定,但是在帧中传输的有效数据量将取决于数据的分组。下文将更加详细地讨论这些概念针对示例性系统的应用。
在示例性系统中,配置帧100用以发送多个数据块B1至Bi,其中每个块Bi承载固定数目的业务码元,并且因此帧100中的块数目取决于CDMA扩频因子、码片速率和帧的传输持续时间、以及前向纠错编码量和调制类型。在示例性系统中,使用了具有3,840,000码片每秒(3.84Mcps)的码片速率的CDMA系统,并且使用了具有1200个业务码元的块Bi。
图4a示出了所使用的具有CDMA扩频因子为4的帧100,由此在帧100中包括8个块(B1至B8),并且因此帧100包括9600个业务码元。在图4b中,使用的CDMA扩频因子为8,因此帧100包括4个块(B1至B4)和4800个业务码元,且在图4c中,使用的CDMA扩频因子为16,因此帧100包括2个块(B1和B2),用于2400个业务码元。通过使块B中的业务码元的数目维持恒定并使帧的持续时间维持恒定,可以避免调制解调器68处的不需要的复杂性,尽管可以预见到,如果需要,可以使用具有不同数目的业务码元的帧结构。
每个块Bi具有图5所示的结构,包括报头104和有效负载108。预计报头104可由具有至少预定最小接收质量的系统20中的全部用户站28接收。因此,报头104以稳健性的方式进行分组,用以增加用户站28将能够接收它的概率(即,用于用户站接收和理解报头的帧误码率或者FER小于系统20的运营商所选择的等级)。在示例性系统20中,报头104包括10个报头信息比特,其最终以这样的方法分组为120个业务码元对用于前向纠错(FEC)的信息比特进行编码以产生30个编码比特(速率1/3 FEC码);使用为8的重复因子使结果比特重复8次以获得240个比特;然后使用QPSK调制对这些比特进行调制以产生报头104的120个业务码元。尽管当前该分组对于报头104而言是优选的,但是可以预见,对于报头104,可以使用广泛的其他分组,如本领域的技术人员将认识到的。
当前,使用报头104的10个信息比特中的5个比特表示“长度”(Length)值,而剩余的5个比特用于表示“块格式”(Block Format)。
在示例性系统20中,当对报头104进行分组用以使其可由所有的用户站28接收时,当在向预计接收用户站28发送信息时,对有效负载108进行分组以提供对无线电信道32的有效使用。因此,有效负载108的调制、FEC编码、码元重复等将取决于预计接收用户站28及其接收质量而从块B到块B发生变化。
在示例性系统20中,可以使用的码元重复因子为4、3、2或1;可以使用的调制方案为64-QAM;16-QAM;4-QAM;并且可以使用8个不同的FEC删余掩码(puncturing mask)(用以获得1/3至4/5的码速率)。而且,对于接收机而言,要求可以获得长度乘数,由此其可以正确地解释有效负载108的内容,并且在示例性系统20中,可以使用乘数值8、16、32、64和128。这样,可以由2个比特的信息表示特定的调制方案(从4个可能的调制中选择);由2个比特表示码元重复因子(从4个可能的重复速率中选择);由3个比特表示FEC删余掩码(从8个可能的删余掩码中选择);由3个比特表示长度乘数(从5个可能的乘数值中选择)。然而,如本领域的技术人员将认识到的,这些参数的许多组合是冗余的、矛盾的或者在系统20中不太可能用到的。例如,在系统20中,不太可能需要以64-QAM调制的、不具有码元重复的、和具有低等级的FEC编码的传输。
因此,为了减少所需用于发射有效负载108的开销(报头104),选择了调制、FEC删余掩码、长度乘数和码元重复因子的、被认为是最有用的32种选择组合,并且将这些组合定义为查找表中的条目,其对基站24和用户站28而言是已知的,并且该查找表的条目可以通过包括“块格式”的5比特的信息进行访问。所选择的用于包含在查找表中的因素的实际组合没有特定地限制,并且可以预见,将由基站24和用户站28的制造商根据系统20的操作条件的预期范围来选择它们。
报头104的剩余的5个信息比特表示“长度”参数,其表示有待与来自“块格式”的长度乘数相乘的值,用以确定有效负载108中的信息比特的数目,因为该数目是接收机在尝试解释有效负载108之前所必须知道的。实际上,使用“长度”和长度乘数参数确定有效负载108是否小于全部是有效比特的情况(该情况取决于用于发射的FEC编码、调制和重复等级以及待发送的数据量而出现)。由于块B总是具有相同数目的业务码元,因此,如果需要,向有效负载108添加填充码元(pad symbol),用以将其填补并且用以节约计算复杂度,这些填充比特是在针对有效负载码元执行FEC编码、重复和交织之后添加的(如下文所述)。因此,接收机需要有关有效负载108的实际长度的信息,用以允许针对有效负载108正确地执行解交织、FEC解码等等。
图6示出了构建用于传输的块B的过程的流程图。如所示出的,报头信息的10个信息比特首先在200处进行FEC编码,用以产生关于速率1/3 FEC码的30个编码比特。在示例性系统20中,使用了二阶Reed-Muller编码器,尽管本领域的技术人员还将想到其他的适当的编码器,该二阶Reed-Muller编码器还执行8阶码元重复,用以获得240个编码比特。下一步,在204处,该编码比特被映射到用于传输的适当的码元并且使用QPSK调制,由此该240个编码比特映射到用于传输的120个业务码元。
尽管可以在完成报头比特的处理之后执行有效负载比特的处理,但是为了减小处理等待时间,有效负载比特的处理与报头比特的处理并行执行。
如图中所示,在208处首先针对有效负载信息比特计算循环冗余校验(CRC)值,并且该值连同有效负载信息比特一起被包括作为待发送的比特的一部分。在示例性系统20中,通过由产生16比特CRC码的gCRC16(D)函数产生的系统码来确定该CRC值,尽管其他的适当的CRC函数也为本领域的技术人员所了解。
下一步,在212处对信息比特和CRC比特进行FEC编码,在示例性系统20中,这是通过具有后继码删余的Turbo编码器实现的。如上文所提及的,根据正在构建的块B的预计接收者的接收质量,选择对该结果码进行删余的程度。在216处,在示例性系统20中使用Relative Prime交织器对该结果比特进行交织。
在进行此编码和交织之后,在224处,根据所选择的M-ary调制方案,将比特映射到码元,其中M可以是4、16或者64(即,4-QAM、16-QAM、64-QAM)。此外,根据正在构建的块B的预计接收者的接收质量,选择所使用的调制方案。如果待映射的比特数目不能由log2(M)除尽,则在220处,添加码元速率填充比特,用以在224处进行码元映射之前填补可利用的比特空间。
下一步,在228处,以所需的重复速率(如果存在)执行码元重复。在示例性系统20中,逐个码元地执行该重复,例如,给出了比特序列s1、s2、s3、s4且重复速率是2,则结果序列将是s1、s1、s2、s2、s3、s3、s4、s4。
此刻,如果待发送的码元数目小于有效负载108可利用的业务码元的数目,其在示例性系统20中是1080个业务码元,则在232处,将DTx填充码元附加到信道码元。最后,在236处,使用Relative Prime交织器对信道码元和DTx填充码元(如果存在)进行交织,并且在240处,将结果业务码元置于块B中在报头比特(其未进行交织,即,报头总是出现在块B的起点)后面。然后,可以由用于传输的物理信道处理来处理结果块B。
在操作中,每个用户站28向基站24报告其接收质量。在示例性系统20中,用户站24向基站40报告其接收信道32的帧100处的信噪比和/或帧误码率。由于在报告频率、最后报告信息的关联性/准确性、以及用户站28和基站24之间的用于报告该信息的传输资源的使用之间存在平衡,因此可以按照由系统20的运营商选择的适当的时间间隔执行该报告。
如本领域的技术人员所将认识到的,块B在用户站处的接收采用了相反的操作集合。应当注意,业务码元的解交织可以与报头比特的解码并行执行,用以减小接收机处的整体等待时间。
如上文所提及的,在信道32上发送帧100时,报头104总是以稳健性的方式被分组为块B,用以提供由所有用户站28a,28b…28n进行恢复的相对高等级的把握。该稳健性分组的目的在于,允许每个由基站24服务的用户站28恢复报头104。即使有效负载108被分组成使得接收用户站28通常不能将其恢复,但每个用户站28仍尝试对其接收的每个块B进行解码。在该情况中,在208处包含在有效负载108中的CRC码将是不正确的,并且该用户站28将丢弃该块B。如果该块B是预计用于该用户站的,则系统20中使用的协议栈的更高层面将负责在后继的块B中向该用户站28重新发射该有效负载108的数据,如下文所详细讲述的。
块B的有效负载108可以是在基站24处接收的任何类型的数据。例如,有效负载108可以是一个或者多个传输控制协议/互联网协议(“TCP/IP”)分组(下文称为“IP分组”),或者可以是分段分组的一部分,其中所需的是向用户站28发射IP分组。有效负载108可以特定地寻址至特定的用户站28a,28b…28n,该每个用户站都具有其唯一的地址,并且/或者,可以为具有相似的接收质量的用户站定义一个或者多个广播地址。可替换地,可以针对关于所有预计接收机的预期最差接收质量来对广播分组进行分组。有效负载108中的数据可以按照需要组合或者分段,用以适合块B中的有效负载上的大小限制。
当基站24接收到用于传输到一个或者多个用户站28的数据时,该数据被缓冲直至接收到足够的数据量以填补一个帧100,或者直至超出了预定的最大等待时间。如目前本领域的技术人员所认识的,足够用于填补一个帧100的数据量取决于所选择的用于构建帧100中的每个块Bi的“块格式”。可以预见,由于帧100中的不同的块Bi预计用于不同的接收机,因此它们通常将具有不同的“块格式”。这样,假设最佳的(即最大的数据速率效率)编码和调制操作来完成对足够的数据量的接收的确认,或者,在自最早数据的接收开始已超出了预定的最大等待时间时,使用该后一参数,用以确保在超出了预先选择的最大等待时间周期之前帧100被汇编和发射。由于“块格式”具有较小的数据速率效率而不能置于汇编帧100中的任何接收数据被缓冲,并且在适当的时候汇编到下一待汇编的帧100中。
当接收到足够的数据量以填补帧100时,该帧100包括自先前帧100缓冲的任何数据,使用每个预计接收机最近报告的接收质量选择关于每个块B的适当“块格式”,然后该块B汇编并插入到帧100中。
目前汇编的帧100在信道32上发射到用户站28a,28b…28n。该发射可以以常见的方式,使用已知的技术进行。
可以预见,如果需要,系统20可以包括多于一个信道32。在该情况中,每个信道32可以具有相同的扩频因子,或者针对不同的信道32使用不同的扩频因子。例如,一个信道32可以具有为4的扩频因子,用以针对给定的发射功率电平增强在具有差的接收质量的用户站处的接收,而其他的信道32可以具有8、16的扩频因子等,用于为具有较好的接收质量的用户站提供有效的数据传输。
上文对示例性系统20的描述解释了,在下行链路信道的情况中,可变数据量可以在数据链路上以帧的形式发送的理由。如下文将变得显而易见的,本发明同样适用于经历了大小调整的上行链路信道。在其中实现了本发明的网络中,根据用户站28要求的上行链路数据和阻塞管理算法,重新调整用于该用户站28的上行链路信道的大小。
系统20已经在协议栈的链路层的最低层面处得到了描述。在链路层中的较高的层面处提供ARQ。上文提及的帧100中的块Bi是切换到协议栈的物理层的用于传输的传输块。在本发明的当前的优选实施例中,每个块Bi具有如上文所述的报头,并且承载一个或者多个作为有效负载的媒体接入控制(“MAC”)协议数据单元(“PDU”)。接下来,每个MAC PDU具有MAC报头(其描述超出了本申请的范围),并且承载作为有效负载的无线链路控制(“RLC”)PDU,或者MAC服务数据单元(“SDU”)。接下来,每个RLC PDU具有RLC报头和有效负载,其在下文被称为RLC SDU。每个RLC SDU(其可能被压缩)是由物理层提供给链路层的用于传输的互联网协议(“IP”)分组的分段。
广义地说,在本发明的当前的优选实施例中,通过以隐含方式将每个RLC SDU中的数据分为序列编号块并且以隐含方式为这些块编号,提供了ARQ。提供了对被报告为丢失的或者受损的RLC SDU的序列编号块的重新发射。为了确定序列编号块是丢失的或者受损的,接收用户站(在下文和权利要求中被称为“接收机”)寻找其所接收的未受损的序列编号块的序列编号中的空隙,并且向基站(在下文和权利要求中被称为“发射机”)提供丢失的序列编号。发射机将需要重新发射的序列编号块的记录为概念重新发射队列。处理待重新发射数据的细节对于本领域的技术人员而言是熟知的,并且可以通过多种方法实现。必要的是,发射机能够记录在序列编号块中发送的数据。每当发射机在用于数据的帧中具有空间时,由待重新发射的序列编号块队列和由先前仍未发送的数据队列中的出队的数据形成RLC PDU。
图7示出了在本发明的当前的优选实施例中如何提供ARQ的细节。在图7中以及在下面的说明和权利要求中,RLC PDU被简单地称作“协议单元”,RLC报头被简单地称作“报头部分”,而RLC SDU被简单地称作“有效负载部分”。而且,由于不在本发明的范围内,因此忽略了将RLC PDU封装在MAC PDU中的细节以及将MAC PDU封装在帧的块中的细节。假设一旦形成了帧,则其切换到协议栈中的较低的层面(不在本发明的范围内),并且发射到在接收机上运行的协议栈的较低的层面。然后,确定是否应重新发射协议单元,如果是,则将命令发送回发射机以重新发射该协议单元。
每个离散的协议单元,不论是由初次发射的数据形成还是由重新发射的数据形成,均具有数据有效负载部分,其以隐含方式被分为一个或者多个顺序编号的块(“序列编号块”),该每个块具有相同的固定的长度,可能每个协议单元第一个或者最末的序列编号块除外,其可能是较短的。如果第一序列编号块是唯一的序列编号块(事实上,其也是最末的序列编号块),则其可能是较短的。如果待发射帧中协议单元可利用的数据承载容量或者待发送的剩余数据不是该固定长度的整数倍,则初次发射的协议单元的最末序列编号块将是较短的。如果结束于短的序列编号块的协议单元在一个或者多个新的协议块中重新发射,如下文将详细讨论的,则新的协议块的最末一个(或者,如果仅存在一个,则是第一个)将结束于该短的序列编号块。事实上,序列编号块是用于重新发射的“原子”单位;其是可以单独重新发射的最小的数据量,并且可以从一个字节到高达最大的序列编号块大小的范围内变化。一旦数据被分配到序列编号块,则其保持分配到该序列编号块,即使是在重新发射的时候。其结果是,如将在下文中看到的,如果对于数据队列中的下一个序列编号块,在帧中没有剩余足够的空间用于重新发射,则可利用的空间被用于发射先前未被发射的数据,并且下一序列编号块必须等待具有足够空间的帧。
每个离散的协议单元还具有报头部分,其包括该协议单元的数据有效负载部分中的第一个块的序列编号。该报头具有固定的长度。选择序列编号,使得接收机可以在接收时有效地识别和排序在任何时间在数据链路上传输的所有的序列编号块。在本发明的当前实施例中,向序列编号块分配整数序列编号,其范围是从0至2M-1,包括0和2M-1,其中M是11。(当系统使用重置程序启动时)序列编号以从0开始的升序进行分配,并且在序列编号到达2M-1循环返回0。由于每个协议单元包括报头部分,该报头部分包括该协议单元的有效负载部分中的第一序列编号块的序列编号,并且有效负载部分由具有已知长度的序列编号块形成,因此接收机可以确定丢失或者受损的一个或者多个连续协议单元的每个串的开始序列编号和结束序列编号。然后,可以将这些开始序列编号报告回发射机,并且以下文所述的方式将其重新发射。
在图7的框400中,在帧中使L字节的数据承载容量(所有“字节”均指8比特的字节)的可利用的。(例如,L是可用于承载IP分组的数据承载容量。)然后,在框402中,确定重新发射队列中是否存在任何序列编号块。如果不存在,则在框404中确定在先前未发射的数据队列(下文称为“新数据队列”)中是否存在数据。如果存在,则在图7的框406中,L字节或者当前正在发射的IP分组的剩余字节数目中的较小者被出列,并且从L中减去该出列的字节数目。可选地,可以忽略当前正在发射的IP分组的边界,但这是以使用扩展报头为代价的,由此接收机可以确定IP分组何时被全部发射以及何时可以将其提供给协议栈的较高层。然后在框408中,计算关于待添加到帧中的协议单元的序列编号。如果这是自启动以来在该链路上被发射的第一个协议单元,则选择0。否则,关于待添加到帧中的协议单元的序列编号是所形成的最末协议单元的序列编号加上所形成的最末协议单元中字节数目除以固定序列块长度所得结果的升限函数。然后,在框410中,形成待添加到帧中的协议单元,在其报头部分中包括刚才确定的序列编号且在其有效负载部分中包括出列数据,并且将其添加到帧。然后,在框412中,测试L并且如果L大于0,则在框402中再次检查重新发射队列以确保其仍为空。如果其为空,则在框404中再次检查新的数据队列。如果新的数据队列不为空(由于我们偶然遇到IP分组的边界L或者其间有新的数据添加到队列中),则如上文所述,控制继续进行到框406,并且在框410中形成来自该新的数据队列的具有更多字节的另一协议单元。如上文所述,在框412中,测试L并且如果L大于0,则在框402中再次检查重新发射队列。重复该过程直至L到达0,并停止该处理直至在帧中再次出现可利用的空间。应当注意,在新的数据队列达到IP分组的边界时结束协议单元是可选的,并且本发明不限于这样操作。这样做的唯一原因是减小所需报头的长度,这是因为,如果协议单元跨越IP分组的边界,则报头将不得不将该信息传递到接收机,以使得正确地形成IP分组。
在前面章节中描述的处理中,如果在某一时间,在框402中发现重新发射队列为非空,则在框414中确定重新发射队列中的第一序列编号块中的字节数目,并且在框416中针对L进行测试。如果重新发射队列中的第一序列编号块中的字节数目大于L,则在框404中继续前面章节中描述的处理,其中检查新的数据队列以确定在新的数据队列中是否存在任何数据。如前文所述,当L达到0或者在新的数据队列中未余留数据并且不存在待重新发射的数据或者下一个序列编号块大于L时,该处理结束,直至在另一帧中再次出现可利用的空间。
在上文描述的处理中,如果在某一时间,在框402中发现重新发射队列为非空,并且在框416中重新发射队列中的第一序列编号块的长度小于或者等于L,则在图7的框418中确定是否部分地形成了协议单元。如果情况不是这样,则在框420中,发射队列中的第一序列编号块出列,L减少了出列的字节数目,并且通过报头部分中的出列序列编号块的序列编号和新的协议单元的有效负载部分中的出列数据,部分地形成新的协议单元。然后在框422中检查重新发射队列,用以确定其是否为空。如果重新发射队列为空,则在框424中,完成新的协议单元并将其添加到帧中,并且控制返回在框402中的该处理的起始点。如果重新发射队列不为空,则该控制返回框414,在该框中确定当前作为重新发射队列的第一块的序列编号块的长度,然后在框416中将其同L进行比较。如果该序列编号块的长度不大于L,则控制前进至框418,其中如上文所述,确定是否部分地形成了协议单元。如果没有部分地形成协议单元时所发生的处理在上文中已得到论述。如果部分地形成了协议单元,则在框426中,确定重新发射队列头部的序列编号块的序列编号与添加到部分形成的协议单元的最末块是否是连续的,以及添加到部分形成的协议单元的最末块是否具有固定的序列块长度。如果这两个条件均为真,则在框428中,重新发射队列头部的序列编号块出列并附加到部分形成的协议单元的尾部,并且L减少了出列的字节数目。如果这两个条件均不为真,则在框424中,完成该部分形成的协议单元并将其添加到帧中,并且控制返回在框402中的该处理的起始点。
随着关于接收机的信道容量由于接收机经历的接收质量的变化或其他因素而改变,对于发送到接收机的数据,可以改变关于固定序列块长度的最需要的值。然而,在相同的系统中,优选的是,对于从接收机发送的数据,使用在所有环境下均保持恒定的固定序列块长度。下文的讨论可以仅应用于该情况中的发射到接收机的数据。
如果用于向接收机传输数据的信道容量发生变化,则(1)中止数据传输直至链路中不存在未传递的帧,(2)通知接收机关于固定序列块长度的新的值,并且(3)如果接收机确认接收到关于固定序列块长度的新的值,则重新开始传输。目前,本发明的发明人建议,当传输块的容量(在一个帧中可以发送到接收机的最大的数据量)下降到低于某一阈值时,即被确定为“充分接近”固定序列块长度时,或者当传输块容量增加使得可以使用新的固定序列块长度时,选择关于固定序列块长度的新的值。例如,如果传输块容量变为如下情况,则可以计算新的固定序列块长度(1)大于计算当前固定序列块长度时的传输块容量;或者(2)小于计算当前的固定序列块长度时的传输块容量和当前的固定序列块长度的加权平均,其中当前固定序列块长度的加权被给定为计算当前的固定序列块长度时的传输块容量的加权的两倍。
可替换地,如果传输块容量变得大于当前固定序列块长度的(1+β)倍,或者小于当前固定序列块长度的[1/(1-α)],则可以计算新的固定序列块长度,其中α被配置为0.33并且可以在0.1至0.5的范围中变化,而β被配置为1.0并且可以在1.0至2.0的范围中变化。
可以通过下面的方式确定新的固定序列块长度。显然,固定序列块长度不能大于传输块容量。除此之外,一个约束条件是,(对于给定的序列编号空间)仅存在有限数目的可以分配给序列编号块的序列编号。如果用尽了序列编号,则另外的传输必须等待直至序列编号可以重新使用。这由本领域的技术人员称为“确认钟控(ack-clocked)”,意味着传输速率受到接收自发射机返回的确认的速率的限制。对于给定的序列编号空间,发射机是否被确认钟控的取决于带宽延迟积,其是发射机和接收机之间的空中的数据总量。如果带宽延迟积是X个字节,并且存在Y个可能的序列编号,则序列编号块应不小于X/Y,或者将不存在足够序列编号来避免确认钟控。因此,X/Y是关于给定的序列编号空间的最小固定序列块长度。
由于较大的序列编号空间在协议单元报头中需要更多的空间用于第一序列编号块的序列编号,因此,通过使序列编号空间保持尽可能地小并且增加固定序列块长度,但应满足该固定序列块长度不会变得大于传输块容量,协议单元有效负载部分中承载的数据可以被发射的峰值速率(被称为数据传输速率)可以增加。然而,必须考虑在操作过程中带宽延迟积发生变化的可能性。
如果数据传输速率是最大化的,则首先考虑固定序列块长度的绝对最优选择。如果可以假设带宽延迟积是恒定的,则这可以实现。这样,固定序列块长度可被配置为等于传输块容量,并且基于带宽延迟积除以固定序列块长度的所得结果设置序列编号空间。该固定序列块长度和序列编号空间的选择将是不可取的,这是因为,带宽延迟积的下降将使得部分序列编号块被发射,增加了所需的序列编号空间,并且引起了确认钟控。甚至更糟的情况是,如果在带宽延迟积下降时,在重新发射队列中存在具有固定序列块长度的序列编号块,则重新发射队列将被阻塞,实际上阻塞了信道上的所有传输,直至重置该固定序列块长度。所有这些对数据传输速率有不利的影响。另一方面,将固定序列块长度设置为最小值也会降低数据传输速率,这是因为序列编号空间以及因此导致的报头必须比所需要的更大。某些大于最小值但是小于传输块容量的固定序列块长度将是所需的。
针对上文所述的两难问题的一种解决方案是,考虑在正常条件下,带宽延迟积中可能出现多大的变化。设想将固定序列块长度设置为正常条件下可以预期的处于最低带宽延迟积的传输块容量,并且基于假设该固定序列块长度的正常条件下可以预期的带宽延迟积的最优情况来计算序列编号空间。其结果将是,该固定序列块长度大于所需用于最优情况的最小值,但是序列编号空间对于处理最高的可能带宽延迟积是足够大的。
在本发明的当前实施例中,考虑到上文所讨论的因素以及其他因素(诸如具有终止于8位字节边界的报头和对于多种可能情况中的上行链路和下行链路传输是足够大的该序列编号空间)序列编号空间在最初时是固定的。一旦固定了序列编号空间,则基于正常条件下可以预期的最低带宽延迟积来设置固定序列块长度,并且检查该序列编号空间以确保在正常条件下可以预期的最高带宽延迟积处,不会出现确认钟控。如果需要,重新调节序列编号空间。一旦选择了序列编号空间,则其保持固定;如果传输块容量改变则仅调节固定序列块长度。如上文所讨论的,本发明的当前实施例中的序列编号空间是0至2M-1,包括0和2M-1,其中M是11。
上文所述的本发明的实施例的目的是成为本发明的示例。在不偏离由附属权利要求唯一限定的本发明的范围的前提下,本领域的技术人员可以对其进行变化和修改。
权利要求
1.一种用于在数据链路上以帧的形式向接收机传输数据的方法,该帧的数据承载容量可以从帧到帧发生变化,该方法包括该数据以在至少一个块序列中发射的以隐含方式顺序编号的块中发射,该每个序列具有至少一个块,该块具有确定的长度,使得接收机可以使用每个块序列的第一块的序列编号,通过序列编号来识别该块,并且可以独立地请求重新发射丢失或者受损的块。
2.权利要求1的方法,其中序列中顺序编号的块的每一个均具有固定的长度,但序列的最末块除外,或者仅具有一个块的序列的唯一的块除外,其可以是较短的。
3.权利要求2的方法,其中可用于为块编号的序列编号的总数目是预先选择的,使得理想条件下的数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果不大于最低的数据承载容量,该最低的数据承载容量是在数据链路的正常操作过程中用于在数据链路上发射块序列的帧中很有可能是可利用的最低数据承载容量。
4.权利要求3的方法,其中该固定的长度在开始时可被设置为大于数据链路正常操作过程中的数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果,并且小于最大的数据承载容量,该最大的数据承载容量是在数据链路的正常操作过程中用于在数据链路上发射块序列的帧中很有可能是可利用的最大数据承载容量,并且如果数据链路的带宽延迟积发生变化,则该固定长度被重置,使得该固定长度处于数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果的预定容差内,或者处于用于在数据链路上发射块序列的帧中可利用的最大数据承载容量内。
5.权利要求2至4的任何一个权利要求的方法,其中块序列优选地连同报头一起被封装在协议单元中,该报头包括块序列的第一块的序列编号。
6.一种用于在数据链路上以帧的形式向接收机发射数据的方法,该帧的数据承载容量可以从帧到帧发生变化,该方法包括当使得帧中的数据承载容量是可利用的时候,在一个或者多个协议单元中发射数据,每个离散的协议单元具有数据有效负载部分,其以隐含方式分为顺序编号的块,该每个块具有固定长度,但最末块除外,或者如果协议单元仅具有一个块,则该唯一的块除外,如果数据有效负载部分不是该固定长度的整数倍,则该块是较短的;以及报头部分,其包括数据有效负载部分中的第一块的序列编号,其中选择该序列编号,使得在数据链路上发射的所有块可被接收机通过序列编号进行识别。
7.权利要求6的方法,其中可用于为块编号的序列编号的总数目是预先选择的,使得理想条件下的数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果不大于最低的数据承载容量,该最低的数据承载容量是在数据链路的正常操作过程中用于在数据链路上发射仅具有一个块的协议单元的帧中很有可能是可利用的最低数据承载容量。
8.权利要求7的方法,其中该固定的长度在开始时可被设置为大于数据链路正常操作过程中的数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果,并且小于最大的数据承载容量,该最大的数据承载容量是在数据链路的正常操作过程中用于在数据链路上发射仅具有一个块的协议单元的帧中很有可能是可利用的最大数据承载容量,并且如果数据链路的带宽延迟积发生变化,则该固定长度被重置,使得该固定长度处于数据链路的带宽延迟积除以可用于为块编号的序列编号的总数目的所得结果的预定容差内,或者处于用于在数据链路上发射仅具有一个块的协议单元的帧中可利用的最大数据承载容量内。
9.权利要求6至8的任何一个权利要求的方法,其中如果确定接收机未接收到先前发射的协议单元的未受损复本并且在待发射的下一可利用帧中存在足够的数据承载容量,则在发射先前未被发射的数据之前,在下一可利用的帧中重新发射该先前发射的协议单元。
10.权利要求6至8的任何一个权利要求的方法,其中如果确定接收机未接收到先前发射的协议单元的未受损复本,并且在下一可利用的待发射的帧中存在足够的数据承载容量,则通过先前发射的协议单元以及待重新发射的所有连续先前发射协议单元的连续块,形成新的协议单元,其开始于先前发射的协议单元的第一块,并且贯穿先前发射的协议单元或多个单元顺序地进行,将块添加到新形成的协议单元中,直至下一可利用的帧的数据承载容量被使用或者遇到了不具有该固定长度或者大于剩余的可利用的数据承载容量的块,在数据链路上,在下一可利用的帧中发射新形成的协议单元,并且直到先前发射的协议单元或多个单元的所有块均被成功重新发射之前,每当帧中的数据承载容量是可利用的时,就以相同的方式形成并发射另外的新的协议单元,每个新形成的协议单元具有报头,其包括其数据有效负载部分中的第一块的序列编号。
11.一种用于在数据链路上以帧的形式向接收机发射分段为协议单元的IP分组的方法,该帧的数据承载容量可以从帧到帧发生变化,该方法包括,当在帧中使得具有L字节的数据承载容量是可利用的时候,待发射的IP分组处于发射队列中,并且任何待重新发射的协议单元处于重新发射队列中,重复下列操作直至L为0(P)确定重新发射队列是否为空(框402),并且如果重新发射队列为空,则(Q)确定发射队列是否为空(框404),并且如果发射队列不为空,则使L字节或者来自发射队列的IP分组的剩余字节中的较小者出列,并且使L递减该出列的字节数目(框406),计算下一个序列编号(框408),并且形成协议单元,其具有报头中的下一序列编号和有效负载中的出列数据,该出列数据以隐含方式分为顺序编号的序列编号块,其开始于当前的序列编号,并且将该协议单元添加到待发射的帧中,每个序列编号块具有固定的长度,如果出列字节的数目不是该固定长度的整数倍,则最末的块除外,或者如果出列字节的数目小于该固定长度,则该唯一的块除外,该最末块或该唯一块短于该固定长度(框410),但是,如果重新发射队列不为空,则(R)确定重新发射队列头部的序列编号块的长度是否大于L(框414、416)并且如果重新发射队列头部的序列编号块的长度大于L,则前进至上文标注为Q的步骤,但是,如果重新发射队列的头部的序列编号块的长度不大于L,则确定是否部分地形成了新的协议单元(框418),并且如果没有部分形成的新协议单元,则使重新发射队列头部的序列编号块出列,使L递减该出列的字节数目,开始形成新的协议单元,其具有报头中的当前序列编号和作为有效负载的出列序列编号块(420),并且(S)确定重新发射队列是否为空(框422),并且如果重新发射队列为空,则(T)完成新的协议单元并将其添加到待发射的帧(框424),并且前进至上文标注为P的步骤,并且如果重新发射队列不为空,则前进至上文标注为R的步骤,如果部分地形成了新的协议单元,则如果(i)重新发射队列头部的序列编号块具有与部分形成的协议单元尾部的序列编号块相连续的序列编号,并且(ii)部分形成的协议单元的尾部块的序列编号块是固定长度(框426),则使重新发射队列头部的序列编号块出列,将该出列的序列编号块附加到部分形成的新协议单元的尾部,并且使L递减该出列的字节数目(框428),并且前进至上文标注为S的步骤,但是,否则,前进至上文标注为T的步骤。
12.一种用于在数据链路上传输数据的系统,包括(a)接收机,包括微处理器、调制解调器、无线电装置和天线,其能够接收在数据链路上发射的帧,该帧的数据承载容量随时间变化;和(b)发射机,包括微处理器、调制解调器、无线电装置和天线,其可操作用于在数据链路上向接收机发射帧,该帧包括一个或者多个协议单元,每个离散的协议单元具有数据有效负载部分,其以隐含方式分为顺序编号的块,该每个块具有固定的长度,如果该有效负载部分中承载的字节数目不是该固定长度的整数倍,则最末块除外,或者如果该有效负载部分中的字节数目小于该固定长度,则该唯一的块除外,该最末块或该唯一块短于该固定长度;和报头部分,其包括数据有效负载部分中的第一块的序列编号,其中选择该序列编号使得可以通过序列编号识别在数据链路上发射的所有块,由此,如果确定接收机未接收到先前发射的协议单元的未受损复本,则,如果在下一可利用的帧中存在足够的数据承载容量,则发射机在待发射的下一可利用的帧中重新发射该先前发射的协议单元,但是,否则,则发射机由该先前发射的协议单元的块形成新的协议单元,其开始于该先前发射的协议单元的第一块,并且贯穿该先前发射的协议单元顺序地进行,将块添加到新形成的协议单元中,直至下一可利用的帧的数据承载容量被使用,在数据链路上发射该新形成的协议单元,并且直到先前发射的协议单元的所有块均被成功重新发射之前,每当帧中的数据承载容量是可利用的时,就形成并发射另外的新的协议单元,每个新形成的协议单元具有报头,其包括其数据有效负载部分中的第一块的序列编号。
13.一种用于在数据链路上以帧的形式向接收机发射数据的协议单元,该帧的数据承载容量可以从帧到帧发生变化,该协议单元包括数据有效负载部分,其以隐含方式分为顺序编号的块,该每个块具有固定的长度,如果该有效负载部分中承载的字节数目不是该固定长度的整数倍,则该最末块除外,或者如果该有效负载部分中的字节数目小于该固定长度,则该唯一的块除外,该最末块或该唯一块短于该固定长度;和报头部分,其包括该数据有效负载部分中的第一块的序列编号,其中选择序列编号使得接收机可以通过序列编号识别在数据链路上发射的所有块。
全文摘要
一种用于在数据链路上以帧的形式向接收机传输数据的方法和系统,该帧的数据承载容量可以从帧到帧发生变化。当使得帧中的数据承载容量是可利用的时候,在一个或者多个协议单元中发送数据,每个离散的协议单元具有数据有效负载部分,其以隐含方式分为顺序编号的块,该每个块具有相同的固定长度,如果该有效负载部分中承载的字节数目不是该固定长度的整数倍,则最末块除外,或者如果该有效负载部分中的字节数目小于该固定长度,则该唯一的块除外,该最末块或该唯一块短于该固定长度;和报头部分,其包括数据有效负载部分中的第一块的序列编号。如果确定接收机未接收到先前发射的协议单元的未受损复本并且在下一可利用的待发送的帧中存在足够的数据承载容量,则在由先前发射的协议单元的块形成的两个或者更多的新协议单元中发射先前发射的协议单元。
文档编号H04L1/16GK1685652SQ03823486
公开日2005年10月19日 申请日期2003年7月31日 优先权日2002年7月31日
发明者安托尼·N·格克斯 申请人:索马网络公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1