使用针对选择性重传的滑动窗口协议进行数据通信的系统和方法

文档序号:7764429阅读:368来源:国知局
专利名称:使用针对选择性重传的滑动窗口协议进行数据通信的系统和方法
技术领域
本发明的实施例总体涉及数据通信系统和方法,更具体地,涉及使用针对选择性 重传的滑动窗口协议进行数据通信的系统和方法。
背景技术
滑动窗口协议可以用在移动设备中,以允许多个数据帧在通信设备之间的同时传 输。在滑动窗口协议中,可以再次传输(即,“重传”)在传输期间丢失或破坏的先前传输的 数据帧。然而,传统通信设备中的滑动窗口缺少与重传的帧有关的信息,这可以导致吞吐量 效率低。

发明内容
一种用于进行数据通信的系统和方法,包括使用滑动接收窗口协议,在接收机中 接收数据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口信息来标识;以 及使用所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。通过使用所述滑动 接收窗口信息确定所接收的数据帧是否是重传的数据帧,所述用于进行数据通信的系统和 方法能够提高滑动接收窗口协议的效率。一种用于进行数据通信的方法,包括使用滑动接收窗口协议,在接收机中接收数 据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口信息来标识;以及使用 所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。一种用于进行数据通信的方法,包括使用滑动发送窗口协议,从发射机发送数据 帧的集合,其中,所述滑动发送窗口协议的滑动发送窗口由滑动发送窗口信息来标识,所述 滑动发送窗口信息与当前允许从发射机发送而无需等待应答信号的数据帧有关,其中,所 述集合中数据帧的数目小于所述滑动发送窗口中数据帧的数目;以及确定是否要在发射机 已发送所述滑动发送窗口中的所有数据帧之前重传所述集合中的数据帧之一。一种通信设备,包括接收机和帧重传标识单元。所述接收机被配置为使用滑动接 收窗口协议来接收数据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口 信息来标识。所述帧重传标识单元被配置为使用所述滑动接收窗口信息,确定所述数据帧 是否是重传的数据帧。


通过结合以本发明的原理的示例示出的附图进行的以下详细描述,本发明的实施 例的其他方面和优点将变得显而易见。图1是根据本发明实施例的用于进行数据通信的系统的示意框图。图2示出了示例滑动发送窗口和示例滑动接收窗口。图3是根据本发明实施例的通信设备的示意框图。
4
图4示出了与数据帧的序列相关的滑动接收窗口。图5示意了图3所示的通信设备的示例操作。图6是根据本发明实施例的另一通信设备的示意框图。图7示出了与数据帧的序列相关的滑动发送窗口。图8示意了图6所示的通信设备的示例操作。图9是根据本发明另一实施例的用于进行数据通信的系统的示意框图。图10示出了可由图9的系统使用的时分多址(TDMA)方案以及TDMA方案的示例 逻辑信道。图11和12示出了可在图9的系统中发送的示例数据帧。图13示出了图9的系统在频率复用方案下的示例操作。图14A、14B、14C和14D示意了图9的第一通信设备的示例操作。图15A和15B示意了图9的系统的示例滑动窗口更新操作。图16是根据本发明实施例的用于进行数据通信的方法的处理流程图。在整个说明书中,类似的参考标记可以用于标识类似的元件。
具体实施例方式图1是根据本发明实施例的用于进行数据通信的系统100的示意框图。如图1所 示,系统包括第一通信设备102和第二通信设备104。系统可以是无线通信系统或有线通信 系统。在图1的实施例中,第一通信设备102包括发射机106。发射机被配置为使用滑动 发送窗口协议向第二通信设备发送至少一个数据帧,其中,滑动发送窗口协议的滑动发送 窗口由滑动发送窗口信息来标识。滑动发送窗口信息包含与当前允许使用发射机发送而无 需等待应答信号的数据帧有关。在实施例中,滑动发送窗口信息标识当前允许发送的每个 数据帧的帧序列号。例如,滑动发送窗口信息标识了当前允许发送数据帧“0”- “15”的序 列中的数据帧“0”- “4”。滑动发送窗口信息可以存储在发射机中的计算机可读介质(未 示出)中。在实施例中,发射机在不同的前向频率信道中发送数据帧的突发。与在单个频 率信道中发送数据帧相比,在多个不同频率信道中发送数据帧可以增大发送吞吐量。在另 一实施例中,发射机使用TDMA方案来发送至少一个数据帧。第二通信设备104包括接收机108。接收机被配置为使用滑动接收窗口协议从第 一通信设备102接收数据帧,其中,滑动接收窗口协议的滑动接收窗口由滑动接收窗口信 息来标识。滑动接收窗口信息包含用于指示所接收的数据帧是否是已从第一通信设备重传 的数据帧的信息。滑动接收窗口信息还包含与接收机当前正在从第一通信设备接受的、滑 动接收窗口中的数据帧有关的信息。在实施例中,与滑动接收窗口中的数据帧有关的信息 包括滑动接收窗口中的数据帧的帧序列号。例如,滑动接收窗口信息标识了接收机当前正 在接受数据帧“0”- “15”的序列中的数据帧“5”- “8”。滑动接收窗口信息可以存储在接 收机中的计算机可读介质(未示出)中。在实施例中,滑动接收窗口中数据帧的数目大于 总的可用帧序列号的一半。尽管第一通信设备包括发射机106并且第二通信设备包括图 1中的接收机,但是在其他实施例中,第一和第二通信设备中的每一个都可以既包括发射机 又包括接收机。
在实施例中,第一通信设备102中的发射机106在前向频率信道中发送单个数据 帧,第二通信设备104中的接收机108在与前向频率信道不同的反向频率信道中以对数据 帧进行应答的响应数据帧作出回应。在另一实施例中,第一通信设备中的发射机在不同的 前向频率信道中向第二通信设备中的接收机发送数据帧的突发,第二通信设备中的接收机 在反向频率信道中以对数据帧的突发进行应答的至少一个响应数据帧作出回应,其中,不 同的前向频率信道中的每一个都与反向频率信道不同。在一些实施例中,响应数据帧不承 载任何有效载荷数据。例如,响应数据帧仅承载针对成功接收的一个或多个数据帧的一个 或多个应答信号,例如,应答比特。在实施例中,针对特定帧序列号,滑动发送窗口信息包含用于指示是否已发送了 承载该特定帧序列号的数据帧和/或是否已接收到针对承载该特定帧序列号的数据帧的 应答的信息。在实施例中,针对特定帧序列号,滑动接收窗口信息包含用于指示是否已接收 到承载该帧序列号的数据帧和/或承载该帧序列号的数据帧是否是重传的数据帧的信息。图2示出了示例滑动发送窗口 200和示例滑动接收窗口 202。图2的滑动发送窗 口由滑动发送窗口信息来标识,该滑动发送窗口信息包括与当前允许发送而无需等待应答 信号的5个数据帧有关的信息。滑动发送窗口中5个数据帧的帧序列号是“0”、“1”、“2”、 “3”和“4”。滑动发送窗口中数据帧的数目还被称为滑动发送窗口的大小。图2的滑动接 收窗口由滑动接收窗口信息来标识,该滑动接收窗口信息包括与接收机当前正在接受的5 个数据帧有关的信息。滑动接收窗口中数据帧的数目还被称为滑动接收窗口的大小。滑动 接收窗口中5个数据帧的帧序列号是“0”、“1”、“2”、“3”和“4”,其为与滑动发送窗口中5 个数据帧的帧序列号相同的帧序列号。然而,在其他实施例中,滑动发送窗口和滑动接收窗 口可以具有不同的大小。在实施例中,图2的滑动发送窗口 200由第一通信设备102的发射机106使用,图 2的滑动接收窗口 202由第二通信设备104的接收机108使用。可以从第二通信设备的发 射机(未示出)向第一通信设备的接收机(未示出)发送应答信号,以对5个所接收的数 据帧进行应答。图3是根据本发明实施例的通信设备300的示意框图。如图3所示,通信设备包 括接收机302、帧重传标识单元304、帧确定单元306、滑动接收窗口更新单元308和发射机 310。通信设备使用滑动接收窗口协议来接收数据帧,其中,滑动接收窗口协议的滑动接收 窗口由滑动接收窗口信息312来标识。尽管在图3中将接收机示作与帧确定单元、滑动接 收窗口更新单元和帧重传标识单元分离,但在其他实施例中,可以将接收机与帧确定单元、 滑动接收窗口更新单元或帧重传标识单元集成。仅保证了发送数据帧的发射机知道所发送的数据帧是否是重传,而仅保证了接收 数据帧的接收机知道所接收的数据帧是否是先前接收到的。在实施例中,滑动接收窗口信 息312包括用于指示所接收的数据帧是否是重传的数据帧的信息。使用重传信息(即,指 示所接收的数据帧是否是重传的数据帧的信息),滑动接收窗口协议可以提高协议效率,如 以下参照图4所述。如图4所示,示例滑动接收窗口 400包括可发送至通信设备300的16 个数据帧中的10个数据帧。接收机302中使用的处于“0”与“15”之间的帧序列号可以在 4个比特中表示。滑动接收窗口中10个数据帧的帧序列号是“0”- “9”,其中,最近接收的 数据帧的帧序列号是“9”。帧序列号处于“ 10”与“ 15”之间的数据帧不位于滑动接收窗口之内,并且尚未被接收机接收。首先,通信设备接收数据帧“0”- “9”并将滑动接收窗口从
更新至[10-3]。然后,出于某种原因,将数据帧“0”重传至通信设备。如果滑动接收 窗口信息不包括重传信息,则通信设备将会错误地将重传的数据帧“0”解释为新的数据帧, 并由此顺序颠倒地设置所接收的数据帧。然而,通过将重传信息包括在滑动接收窗口信息 中,通信设备可以将重传的数据帧“0”正确地标识为重传的数据帧,并将所接收的数据帧保 持为正确的顺序。在图3的实施例中,接收机302包括计算机可读介质314和接收机缓存器316。计 算机可读介质被配置为存储滑动接收窗口信息312。接收机缓存器被配置为临时存储至少 一个所接收的数据帧。帧重传标识单元304被配置为使用滑动接收窗口信息312来确定数据帧是否是重 传的数据帧。如果确定了该数据帧是重传的数据帧,则通信设备300可以忽略该数据帧,并 使用发射机310来发送对该数据帧进行应答的响应数据帧。如果确定了该数据帧不是重传 的数据帧,则接收机302可以将该数据帧缓存在接收机缓存器316中,并使用发射机来对该 数据帧进行应答。对成功接收的所有数据帧进行应答。帧确定单元306被配置为确定所接收的数据帧是否是接收机302当前正在接受的 数据帧之一。在实施例中,滑动接收窗口信息312包含与接收机当前正在接受的数据帧有 关的信息,帧确定单元使用滑动接收窗口信息来确定该数据帧是否是滑动接收窗口中的数 据帧之一。例如,与滑动接收窗口中的数据帧有关的信息包括处于滑动接收窗口中的数据 帧的帧序列号,帧确定单元确定所接收的数据帧的帧序列号是否是滑动接收窗口中数据帧 的帧序列号之一。在实施例中,滑动接收窗口中数据帧的数目大于接收机302中使用的帧序列号的 总数的一半。例如,如图4所示,接收机中使用的总的帧序列号是16,滑动接收窗口 400中 数据帧的数目是10。将滑动接收窗口信息312扩大为接受更多数据帧可以增大滑动接收窗 口协议的吞吐量。在传统的滑动窗口协议中,滑动窗口中数据帧的数目至多是所使用的帧 序列号的总数的一半。通过将多于总数一半的帧序列号包括在滑动接收窗口中,滑动接收 窗口协议可以比传统滑动窗口协议接受更多的数据帧。滑动接收窗口更新单元308被配置为响应于所接收的数据帧,更新存储在计算机 可读介质314中的滑动接收窗口信息312。如果通信设备300接收到新数据帧(S卩,通信设 备先前未接收到的数据帧),则滑动接收窗口更新对滑动接收窗口进行更新。该新数据帧可 以是处于滑动接收窗口中的数据帧或处于滑动接收窗口外的数据帧(即,其不是处于滑动 接收窗口中的数据帧之一)。在实施例中,使用所接收的数据帧来更新滑动接收窗口,使得 滑动接收窗口的结尾处指向所接收的数据帧当中具有最高序列号的数据帧,而不论数据帧 是处于滑动接收窗口内还是处于滑动接收窗口外。因此,与忽略处于滑动窗口之外的接收 数据帧且不响应于接收数据帧更新滑动窗口的传统滑动窗口协议相比,该滑动接收窗口协 议可以提高协议效率。图5示意了图3所示的通信设备300的示例操作。如图5所示,通信设备接收数 据帧并处理该数据帧。在步骤502,帧确定单元306确定该数据帧是否是滑动接收窗口中的 数据帧之一。在步骤504,如果确定了该数据帧不是滑动接收窗口中的数据帧之一,则滑动 接收窗口更新单元308将滑动接收窗口信息312更新为包含与该数据帧有关的信息,并且
7接收机302将该数据帧缓存在接收机缓存器316中,并发送对该数据帧进行应答的响应数 据帧。在步骤506,如果确定了该数据帧是滑动接收窗口中的数据帧之一,则帧重传标识单 元304使用滑动接收窗口信息,确定该数据帧是否是重传的数据帧。在步骤508,如果确定 了该数据帧是重传的数据帧,则接收机忽略该数据帧并发送对该数据帧进行应答的响应数 据帧。在步骤510,如果确定了该数据帧不是重传的数据帧,则接收机将该数据帧缓存在接 收机缓存器中并发送对该数据帧进行应答的响应数据帧。图3的通信设备300的另一示例操作描述如下。在通信设备的接收机302中接收 数据帧。利用滑动接收窗口中的数据帧的帧序列号来检查该数据帧的序列号。如果该数据 帧的序列号处于滑动接收窗口中的数据帧的帧序列号的范围内,则将使用滑动接收窗口信 息312来检查数据帧的帧序列号,以确定该数据帧是否是先前已接收到的。将对先前已接 收到的数据帧进行应答,并将忽略来自先前已接收到的数据帧的数据。将来自未接收到的 数据帧的数据添加至接收机缓存器316。如果该数据帧的序列号处于滑动接收窗口中的帧 序列号的范围外,则滑动接收窗口将被更新为将滑动接收窗口的结尾处移位至指向新接收 到的帧序列号,并且来自该数据帧的数据将被添加至接收机缓存器并将被应答。对成功接 收的所有数据帧进行应答。在实施例中,使用滑动发送窗口协议来按发送由图3所示的通信设备接收到的数 据帧,以下参照图6-8来描述该滑动发送窗口协议。图6是根据本发明实施例的另一通信设备600的示意框图。如图6所示,通信设 备包括发射机602、帧序列号指派单元604、发送确定单元606、帧重传单元608、滑动发送窗 口更新单元610和接收机612。通信设备使用滑动发送窗口协议来发送数据帧,其中,滑动 发送窗口协议的滑动发送窗口由滑动发送窗口信息614来标识。尽管在图6中将发射机示 作与帧序列号指派单元、发送确定单元、帧重传单元和滑动发送窗口更新单元分离,但在其 他实施例中,可以将发射机与帧序列号指派单元、发送确定单元、帧重传单元和滑动发送窗 口更新单元集成。在图6的实施例中,发射机602包括计算机可读介质616和发射机缓存器618。计 算机可读介质被配置为存储滑动发送窗口信息614。滑动发送窗口信息包含与当前允许使 用发射机发送而无需等待应答信号的数据帧有关的信息,其是接收机612来接收的。发射 机缓存器被配置为临时存储发射机要发送的至少一个数据帧。在实施例中,当前允许由发射机602发送的数据帧的数目大于发射机中使用的帧 序列号的总数的一半,如以下参照图7所述。如图7所示,示例滑动发送窗口 700包括可从 发射机发送的16个数据帧中的10个数据帧。发射机中使用的处于“0”与“15”之间的总 的帧序列号是16,并可以在4个比特中表示。滑动发送窗口中的10个数据帧的帧序列号是 “0”- “9”。尚未被应答的最老数据帧具有帧序列号“0”。帧序列号处于“10”与“15”之间 的的数据帧不位于滑动发送窗口之内,并且当前不允许被发送。在传统滑动窗口协议中,滑 动窗口中数据帧的数目至多是所使用的帧序列号的总数的一半,这可能导致在发射机等待 接收针对滑动窗口中的所有先前发送的帧的应答时发生传输空闲。与传统滑动窗口协议相 比,将多于总数一半的帧序列号包括在滑动发送窗口中可以减少传输空闲的发生。因此,与 传统滑动窗口协议相比,这里描述的滑动发送窗口协议减小了传输空闲的可能性并节省了 带宽资源。
帧序列号指派单元604被配置为将相应的帧序列号指派给发射机602要发送的数 据帧中的每一个。在实施例中,帧序列号指派单元以数据帧到达发射机的顺序将帧序列号 指派给数据帧,并且发射机以数据帧的帧序列号的顺序发送数据帧。发送确定单元606被配置为确定是否要使用滑动发送窗口协议来发送数据帧的 集合。在实施例中,滑动发送窗口协议的滑动发送窗口由滑动发送窗口信息614来标识,滑 动发送窗口信息614包括与当前允许从发射机602发送而无需等待应答信号的数据帧有关 的信息。例如,滑动发送窗口信息包含处于滑动发送窗口中的数据帧的帧序列号,并且,发 送确定单元确定数据帧的集合的帧序列号是否处于滑动发送窗口中的帧序列号的范围内。 在实施例中,集合中数据帧的数目小于滑动发送窗口中数据帧的数目。例如,在10个数据 帧的滑动发送窗口中,可以将5个数据帧作为集合进行发送。帧重传单元608被配置为确定是否要重传该集合中的数据帧中的至少一个。例 如,帧重传单元确定是否要响应于否定应答信号而重传数据帧。否定应答信号可以由接收 设备(未示出)产生。例如,否定应答信号是由接收设备显式设置为否定的响应数据帧中 的应答比特。否定应答信号还可以由帧重传单元自身在数据帧或者承载肯定应答信号的对 应响应数据帧丢失或破坏时产生。在这种情况下,否定应答信号可以是由帧重传单元在等 待时段到期之后产生的警报信号。在实施例中,帧重传单元608确定是否要在首次发送了滑动发送窗口中的所有数 据帧之前重传集合中的数据帧中的至少一个。如果需要重传集合中的数据帧,则发射机602 可以在首次发送了滑动发送窗口中的所有数据帧之前重传该数据帧。由于帧重传单元可以 确定是否需要在首次发送了滑动发送窗口中的所有数据帧之前重传数据帧,并且由于在首 次发送了滑动发送窗口中的所有数据帧之前可以重传数据帧,因此可以更新滑动发送窗口 和对应的滑动接收窗口,而无需等待直到发送滑动发送窗口中的所有数据帧为止。与直到 滑动窗口的结尾处之前不评估否定应答的传统滑动窗口协议相反,该滑动发送窗口协议具 有更频繁的滑动发送窗口更新的优点,这可以增大通信设备600的通信吞吐量。例如,在直 到滑动窗口的结尾处之前不评估否定应答的传统滑动窗口协议中,由于等待更新滑动窗口 直到首次发送了滑动窗口中的所有数据帧之后,因此可能发生传输空闲。如果发生传输空 闲,则通信设备停止其数据传输并等待先前发送的数据的应答,由此,可能浪费通信带宽。 通过在滑动发送窗口的结尾处之前评估否定应答,图6所示的通信设备所使用的滑动发送 窗口协议可以减少传输空闲的发生。因此,与传统滑动窗口协议相比,图6所示的通信设备 所使用的滑动发送窗口协议可以减小可能的带宽浪费并节省带宽资源。滑动发送窗口更新单元610被配置为更新存储在计算机可读介质616中的滑动发 送窗口信息614。例如,滑动发送窗口更新单元响应于至少一个先前发送的数据帧的应答信 号对滑动发送窗口信息进行更新,使得滑动发送窗口的起始处指向尚未被应答的最老数据 帧。图8示意了图6所示的通信设备600的示例操作。如图8所示,通信设备发送数 据帧的集合并处理集合中的一个或多个数据帧的可能重传。在步骤802,发送确定单元606 确定发射机602中的数据帧的集合是否是滑动发送窗口中的数据帧。在步骤804,如果确定 了数据帧的集合是处于滑动发送窗口中,则发射机发送数据帧的集合。在步骤806,帧重传 单元608确定发射机是否在首次发送了滑动发送窗口中的所有数据帧之前接收到集合中的数据帧的否定应答信号。在步骤808,如果接收到集合中的数据帧的否定应答信号,则发 射机在首次发送了滑动发送窗口中的所有数据帧之前重传该数据帧。图6的通信设备600的另一示例操作描述如下。以数据帧到达发射机的顺序给到 达发射机602的数据帧指派帧序列号。将被指派了帧序列号的数据帧临时存储在发射机缓 存器618中。对于存储在发射机缓存器中的数据帧,利用滑动发送窗口中数据帧的帧序列 号来检查该数据帧的帧序列号。如果该数据帧的序列号处于滑动发送窗口中的帧序列号的 范围内,则发射机发送该数据帧。如果发射机接收到该数据帧的否定应答信号,则发射机在 首次发送了滑动发送窗口中的所有数据帧之前重传该数据帧。分别对尚未发送的新数据帧 以及已发送且需要重传的老数据帧进行调度以在发射机中发送。根据顺序(例如数据帧到 达发射机的顺序)来对老数据帧进行调度以在发射机中发送。在发射机已发送滑动发送窗 口中的所有数据帧之前以突发的方式发送所调度的新老数据帧。由数据通信系统中使用滑动接收窗口协议的通信设备接收到的数据帧可以从使 用滑动发送窗口协议的另一通信设备发送。换言之,数据通信系统可以使用对数据帧的发 送和接收进行处理的滑动窗口协议。以下参照图9-15B来描述示例滑动窗口协议。图9是根据本发明另一实施例的用于进行数据通信的系统900的示意框图。如图 9所示,系统包括如分别参照图6和3所述的第一通信设备600和第二通信设备300。系统 使用滑动窗口协议在第一和第二通信设备之间进行通信。在一些传统滑动窗口协议中,实 现了握手阶段,在该握手阶段期间,接收机向发射机发送其滑动窗口以对滑动窗口进行同 步,数据传送仅在成功的握手阶段之后才开始。然而,在图9的实施例中,不需要显式的握 手阶段来对发送和接收滑动窗口进行同步。取而代之,可以实现连接重置机制。承载有效 数据的数据帧还可以包含连接重置信号,其指示第二通信设备无条件地接受具有数据帧序 列号“0”的数据帧,以丢弃可能仍在接收机缓存器中等待的任何先前发送的数据帧,并重置 滑动接收窗口。由于不需要显式的握手阶段并且有效数据帧承载了有效数据,因此提供了 更多时间和更大传输带宽以进行实际数据传送。图10示出了图9的系统100可使用的示例TDMA方案和TDMA方案的示例逻辑信 道。第一通信设备在流传输信道(SCH) 1-5中进行发送并在SCH 6中进行接收。第二通信 设备在SCH 1-5中进行接收并在SCH 6中进行发送。在TDMA方案中,超帧是TDMA调度的 主要时分。超帧包括6个称为子帧的TDMA时隙。根据超帧中的位置,使用SCH 1-6之一来 发送子帧。根据使用SCH 1-6发送的子帧来构造两个逻辑信道信道1和信道2。信道1使 用SCH 1-5,信道2使用SCH 6。面向连接的逻辑信道支持高带宽控制数据。在实施例中, 信道1用于从第一通信设备600发送至第二通信设备300,信道2用于从第二通信设备发送 至第一通信设备。例如,SCH 1-5用于将5个数据帧从第一通信设备发送至第二通信设备, SCH 6用于将针对这5个数据帧的应答信号从第二通信设备发送至第一通信设备。图11示出了从第一通信设备600发送至第二通信设备300的示例数据帧。从第 一通信设备发送至第二通信设备的数据帧还被称为前向帧。如图11所示,前向数据帧包含 数据比特和尾比特。尾比特包括处于“0”- “15”的范围之间的4比特序列号“SN”,并与第 一通信设备600和第二通信设备300之间的通信连接具有相同的生存期。图12示出了从第二通信设备300发送至第一通信设备600的示例数据帧。从第 二通信设备发送至第一通信设备的数据帧还被称作反向帧。如图12所示,反向数据帧包含数据比特和尾比特。尾比特包括针对前向数据帧的5个应答比特“AO”- “A4”。图13示出了图9的系统900在频率复用方案下的示例操作。如图13所示,5个频 率信道“Fl”_ “F5”用于将多个前向数据帧从第一通信设备600同时发送至第二通信设备 300。如图13所示,一个频率信道“F6”用于将反向数据帧从第二通信设备600发送至第二 通信设备300,以对成功发送的前向数据帧进行应答。通过增大滑动发送窗口和对应的滑动接收窗口的大小,可以增大图9的系统900 的网络吞吐量。假定第一通信设备600和第二通信设备300中使用的总的帧序列号都是16 并处于“0”与“15”之间。在图13的左侧,滑动发送窗口的大小和滑动接收窗口的大小都 是10个数据帧,而在图13的右侧,滑动发送窗口的大小和滑动接收窗口的大小都是8个数 据帧。在图13的左侧,在一个时隙中在5个频率信道中发送5个数据帧,并在下一时隙中 对这5个数据帧进行应答。由此,在图13的左侧,系统的网络吞吐量是单个频率信道的容 量的5倍。在图13的右侧,在一个时隙中在4个频率信道中发送4个数据帧,并在下一时 隙中对这4个数据帧进行应答。由此,在图13的右侧,系统的网络吞吐量是单个频率信道 的容量的仅4倍。因此,将滑动发送窗口和对应的滑动接收窗口的大小从8个数据帧增大 至10个数据帧,系统的网络吞吐量从单个频率信道的容量的4倍增大至单个频率信道的容 量的5倍。图14A、14B、14C和14D示意了图9的第一通信设备600的示例操作。在示例操作 中,第一通信设备使用每个超帧的4个子帧来发送前向数据帧。将帧序列号附着至每个前 向数字,以指示预期的数据帧排序并标识前向数据帧。第一通信设备接收包含5个应答比 特在内的响应数据帧以对5个前向数据帧进行应答。对所有前向数据帧进行应答。如果反 向数据帧丢失或破坏,则不对对应的前向数据帧进行应答并将重传对应的前向数据帧。使 用了 4比特序列号并且使用了 16个帧序列号,处于0与15之间的范围内。发送窗口的大 小被固定为10,发送窗口的起始处指示最老的未被应答的数据帧的帧序列号。第一通信设备600以对每个新帧增加序列号的顺序对帧进行调度。在良好的情形 下,对所有发送的帧进行应答并且不需要重试。如果没有帧可用于发送,则发送伪(dummy) 帧直到在第一通信设备中有新的帧变为可用为止。如图14A所示,数据帧“0”- “4”由第一 通信设备发送,对数据帧“0”- “4”进行应答的反向数据帧由第一通信设备接收。然后,数 据帧“5”- “9”由第一通信设备发送,对数据帧“5”- “9”进行应答的反向数据帧由第一通 信设备接收。如果应答信号指示数据帧丢失或破坏,则在下次机会重传数据帧。在处理应答信 号之后,第一通信设备600对接下来的5个帧进行调度直到处理了下一应答信号为止。第 一通信设备首先对可能的数据帧重传进行调度,然后以帧序列号增加的顺序对新帧进行调 度。如果无法利用重传帧和/或新帧填满5个可用时隙,则利用要重试的最老帧的附加重 试填充剩余时隙。如果没有剩下新的数据帧或待决定重传的数据帧,则发送伪帧。如果应答帧丢失,则不对前向数据帧进行应答,并以先前发送前向数据帧的顺序 重传所有前向数据帧。如图14C所示,数据帧“0”- “4”由第一通信设备600发送,对数据 帧“0”- “4”进行应答的反向数据帧丢失或破坏。然后,新数据帧“5”和老数据帧“0”- “3” 由第一通信设备发送,对数据帧“5”和“0”- “3”进行应答的反向数据帧由第一通信设备接 收。然后,老数据帧“4”和新数据帧“6”和“7”由第一通信设备发送。
11
如果接收到应答信号,则第一通信设备600对滑动发送窗口进行移位。如图14D所 示,数据帧“0”- “4”由第一通信设备发送,指示需要重传数据帧“0”的应答信号由第一通 信设备接收。然后,新数据帧“5”和“6”- “8”以及数据帧“0”被发送,对数据帧“5”、“0” 和“6”- “8”进行应答的反向数据帧由第一通信设备接收。然后,滑动发送窗口由第一通信 设备更新,数据帧“9”- “15”以及下一帧序列中的新数据帧“0”被发送。图15A和15B示意了图9的系统900的示例操作。在示例操作中,使用了 4比特 序列号并且使用了 16个帧序列号,处于0与15之间的范围内。第二通信设备300中的滑 动接收窗口和第一通信设备600的滑动发送窗口的大小是相同的并被固定为10。将滑动发 送窗口初始化为
并将滑动接收窗口初始化为[6,15]。在示例操作中,滑动接收窗口 固定至或滞后于滑动发送窗口,并考虑了从第二通信设备至第一通信设备丢失应答。如图15A所示,第一通信设备600向第二通信设备300发送数据帧“0”-“4”。第二 通信设备接收数据帧“0”- “4”,将滑动接收窗口更新为[11,4],并向第一通信设备发送对 数据帧“0”- “4”进行应答的反向数据帧。第一通信设备接收反向帧,将滑动发送窗口更新 为[5,14],并向第二通信设备发送数据帧“5”- “9”。第二通信设备接收数据帧“5”- “9”, 将滑动接收窗口更新为W,9],并向第一通信设备发送对数据帧“5”- “9”进行应答的反向 数据帧。第一通信设备接收反向帧,将滑动发送窗口更新为[10,3],并向第二通信设备发送 数据帧“10”- “14”。第二通信设备注意到数据帧“10”- “14”破坏,并向第一通信设备发 送包括针对数据帧“10”- “14”的5个否定应答比特在内的反向数据帧。第一通信设备接 收反向帧,并向第二通信设备发送新数据帧“15”以及老数据帧“10”- “14”(未示出)中 的一些。如图15B所示,第一通信设备600向第二通信设备300发送数据帧“0”- “4”。第 二通信设备接收数据帧“0”- “4”,将滑动接收窗口更新为[11,4],注意到数据帧“0”破坏, 并向第一通信设备发送对数据帧“1”_ “4”进行应答的反向数据帧。第一通信设备接收反 向帧,并向第二通信设备发送新数据帧“5”_ “8”和老数据帧“0”。第二通信设备接收数据 帧“0”和“5”- “8”,将滑动接收窗口更新为[15,8],并向第一通信设备发送对数据帧“0” 和“5”- “8”进行应答的反向数据帧。第一通信设备接收反向帧,将滑动发送窗口更新为 [9,2],并向第二通信设备发送数据帧“9”- “13”。第二通信设备接收数据帧“9”- “13”, 将滑动接收窗口更新为[4,13],并向第一通信设备发送对数据帧“9”- “13”进行应答的反 向数据帧。第一通信设备接收反向帧,将滑动发送窗口更新为[14,7],并向第二通信设备发 送数据帧“14”。第二通信设备接收数据帧“14”并将滑动接收窗口更新为[5,14]。图16是根据本发明实施例的用于进行数据通信的方法的处理流程图。在框1602, 使用滑动接收窗口协议,在接收机中接收数据帧,其中,滑动接收窗口协议的滑动接收窗口 由滑动接收窗口信息来标识。在框1604,使用滑动接收窗口信息,确定该数据帧是否是重传 的数据帧。应当注意,这里描述的方法的操作中的至少一些可以使用存储在计算机可用存储 介质上以供计算机执行的软件指令来实现。作为示例,计算机程序产品的实施例包括存储 计算机可读程序的计算机可用存储介质,该计算机可读程序在计算机上执行时使计算机执 行如这里描述的操作。还应当注意,这里描述的方法的操作中的至少一些可以使用硬件来 实现。
此外,本发明的至少部分的实施例可以采用可从用于提供由计算机或任何指令执 行系统使用或与其结合使用的程序代码的计算机可用或计算机可读介质访问的计算机程 序产品的形式。出于本说明书的目的,计算机可用或计算机可读介质可以是可包含、存储、 通信、传播或传输由指令执行系统、装置或设备使用或与其结合使用的程序的任何装置。计算机可用或计算机可读介质可以是电子、磁、光、电磁、红外或半导体系统(或 装置或设备)或者传播介质。计算机可读介质的示例包括半导体或固态存储器、磁带、可移 除计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘和光盘。光盘的当前示例 包括具有只读存储器(CD-ROM)的紧致盘、具有读/写的紧致盘(CD-R/W)和数字视频光盘 (DVD)。此外,已描述或示出的实施例的各个组件或单元可以在处理器中实现,该处理器 包括多功能处理器和/或专用处理器。处理器的示例包括IBM的PowerPC 处理器族和 Intel的x86处理器族。尽管按照具体顺序示出和描述了这里的方法的操作,但是可以改变方法的操作的 顺序,从而可以以相反的顺序执行特定操作,或者可以与其他操作至少部分同时执行特定 操作。在另一实施例中,可以以间断和/或交替的方式实现不同操作的指令或子操作。尽管已描述或示出的本发明具体实施例包括这里描述或示出的多个组件,但是本 发明的其他实施例可以包括用于实现更少或更多功能的更少或更多组件。尽管已经描述和示出了本发明的具体实施例,但是本发明不限于由此描述和示出 的部分的具体形式或配置。本发明的范围应由所附权利要求及其等价物来限定。
权利要求
1.一种用于进行数据通信的方法,所述方法包括使用滑动接收窗口协议,在接收机中接收数据帧,其中,所述滑动接收窗口协议的滑动 接收窗口由滑动接收窗口信息来标识;以及使用所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。
2.根据权利要求1所述的方法,还包括如果确定了所述数据帧是重传的数据帧,则忽略所述数据帧;以及发送对所述数据帧进行应答的响应数据帧。
3.根据权利要求2所述的方法,还包括如果确定了所述数据帧不是重传的数据帧,则将所述数据帧缓存在接收机缓冲器中;以及发送对所述数据帧进行应答的响应数据帧。
4.根据权利要求3所述的方法,其中,所述滑动接收窗口信息包括与滑动接收窗口中 接收机当前正在接受的数据帧有关的信息,其中,与滑动接收窗口中的数据帧有关的信息 包括滑动接收窗口中的数据帧的帧序列号,并且,所述方法还包括确定所述数据帧是否是 滑动接收窗口中的数据帧之一。
5.根据权利要求4所述的方法,还包括如果确定了所述数据帧不是滑动接收窗口中的数据帧之一,则将所述滑动接收窗口信息更新为包含所述数据帧的帧序列号;将所述数据帧缓存在接收机缓存器中;以及发送对所述数据帧进行应答的响应数据帧。
6.根据权利要求4所述的方法,其中,滑动接收窗口中的数据帧的数目大于接收机中 使用的帧序列号的一半。
7.根据权利要求4所述的方法,其中,接收数据帧的步骤包括使用所述滑动接收窗口 协议,在接收机中接收数据帧的突发;并且,确定所述数据帧是否是重传的数据帧的步骤包 括使用所述滑动接收窗口信息,分别确定数据帧的突发的每一个数据帧是否是重传的数 据帧。
8.根据权利要求7所述的方法,还包括在不同的频率信道中接收数据帧的突发。
9.一种用于进行数据通信的方法,所述方法包括使用滑动发送窗口协议,从发射机发送数据帧的集合,其中,所述滑动发送窗口协议的 滑动发送窗口由滑动发送窗口信息来标识,所述滑动发送窗口信息与当前允许从发射机发 送而无需等待应答信号的数据帧有关,其中,所述集合中的数据帧的数目小于所述滑动发 送窗口中的数据帧的数目;以及确定是否在发射机已发送所述滑动发送窗口中的所有数据帧之前重传所述集合中的 数据帧中的一个数据帧。
10.根据权利要求9所述的方法,还包括如果确定了要重传所述集合中的数据帧中的所述一个数据帧,则在发射机已发送滑动 发送窗口中的所有数据帧之前发送所述集合中的数据帧中的所述一个数据帧。
11.根据权利要求10所述的方法,其中,确定是否重传所述集合中的数据帧中的一个 数据帧的步骤包括确定发射机接收到所述集合中的数据帧中的所述一个数据帧的否定应答信号。
12.根据权利要求10所述的方法,还包括以数据帧到达发射机的顺序将相应的帧序列号指派给数据帧中的每一个;以及发送所述数据帧。
13.根据权利要求10所述的方法,其中,发送数据帧的集合的步骤包括使用时分多址 (TDMA)方案来发送数据帧的集合。
14.根据权利要求10所述的方法,其中,发送数据帧的集合的步骤包括在不同的频率 信道中发送数据帧的集合。
15.一种通信设备,所述通信设备包括接收机,被配置为使用滑动接收窗口协议来接收数据帧,其中,所述滑动接收窗口协议 的滑动接收窗口由滑动接收窗口信息来标识;以及帧重传标识单元,被配置为使用所述滑动接收窗口信息,确定所述数据帧是否是重传 的数据帧。
16.根据权利要求15所述的通信设备,其中,如果确定了所述数据帧是重传的数据帧, 则接收机忽略所述数据帧并发送对所述数据帧进行应答的响应数据帧。
17.根据权利要求16所述的通信设备,还包括接收机缓存器,被配置为在确定了所述 数据帧不是重传的数据帧的情况下,缓存所述数据帧。
18.根据权利要求17所述的通信设备,其中,所述滑动接收窗口信息包括与接收机当 前正在接受的滑动接收窗口中的数据帧有关的信息,其中,所述与滑动接收窗口中的数据 帧有关的信息包括滑动接收窗口中的数据帧的帧序列号,并且,滑动接收窗口中的数据帧 中的数据帧数目大于接收机中使用的帧序列号的一半。
19.根据权利要求18所述的通信设备,还包括帧确定单元,被配置为确定所述数据帧 是否是滑动接收窗口中的数据帧之一。
20.根据权利要求19所述的通信设备,还包括滑动接收窗口更新单元,被配置为在确 定了所述数据帧不是滑动接收窗口中的数据帧之一的情况下,将所述滑动接收窗口信息更 新为包含与是数据帧有关的信息。
全文摘要
本发明涉及使用针对选择性重传的滑动窗口协议进行数据通信的系统和方法。一种用于进行数据通信的系统和方法,包括使用滑动接收窗口协议,在接收机中接收数据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口信息来标识;以及使用所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。
文档编号H04L1/18GK102082649SQ20101053434
公开日2011年6月1日 申请日期2010年11月2日 优先权日2009年11月3日
发明者拉杜·勒那尔特斯, 科恩·德洛姆 申请人:Nxp股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1