首页> 中国专利> 使用针对选择性重传的滑动窗口协议进行数据通信的系统和方法

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

摘要

本发明涉及使用针对选择性重传的滑动窗口协议进行数据通信的系统和方法。一种用于进行数据通信的系统和方法,包括:使用滑动接收窗口协议,在接收机中接收数据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口信息来标识;以及使用所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。

著录项

  • 公开/公告号CN102082649A

    专利类型发明专利

  • 公开/公告日2011-06-01

    原文格式PDF

  • 申请/专利权人 NXP股份有限公司;

    申请/专利号CN201010534344.2

  • 发明设计人 科恩·德洛姆;拉杜·勒那尔特斯;

    申请日2010-11-02

  • 分类号H04L1/18;

  • 代理机构中科专利商标代理有限责任公司;

  • 代理人朱进桂

  • 地址 荷兰艾恩德霍芬

  • 入库时间 2023-12-18 02:43:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-06-25

    授权

    授权

  • 2011-07-20

    实质审查的生效 IPC(主分类):H04L1/18 申请日:20101102

    实质审查的生效

  • 2011-06-01

    公开

    公开

说明书

技术领域

本发明的实施例总体涉及数据通信系统和方法,更具体地,涉及使用针对选择性重传的滑动窗口协议进行数据通信的系统和方法。

背景技术

滑动窗口协议可以用在移动设备中,以允许多个数据帧在通信设备之间的同时传输。在滑动窗口协议中,可以再次传输(即,“重传”)在传输期间丢失或破坏的先前传输的数据帧。然而,传统通信设备中的滑动窗口缺少与重传的帧有关的信息,这可以导致吞吐量效率低。

发明内容

一种用于进行数据通信的系统和方法,包括:使用滑动接收窗口协议,在接收机中接收数据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口信息来标识;以及使用所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。通过使用所述滑动接收窗口信息确定所接收的数据帧是否是重传的数据帧,所述用于进行数据通信的系统和方法能够提高滑动接收窗口协议的效率。

一种用于进行数据通信的方法,包括:使用滑动接收窗口协议,在接收机中接收数据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口信息来标识;以及使用所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。

一种用于进行数据通信的方法,包括:使用滑动发送窗口协议,从发射机发送数据帧的集合,其中,所述滑动发送窗口协议的滑动发送窗口由滑动发送窗口信息来标识,所述滑动发送窗口信息与当前允许从发射机发送而无需等待应答信号的数据帧有关,其中,所述集合中数据帧的数目小于所述滑动发送窗口中数据帧的数目;以及确定是否要在发射机已发送所述滑动发送窗口中的所有数据帧之前重传所述集合中的数据帧之一。

一种通信设备,包括接收机和帧重传标识单元。所述接收机被配置为使用滑动接收窗口协议来接收数据帧,其中,所述滑动接收窗口协议的滑动接收窗口由滑动接收窗口信息来标识。所述帧重传标识单元被配置为使用所述滑动接收窗口信息,确定所述数据帧是否是重传的数据帧。

附图说明

通过结合以本发明的原理的示例示出的附图进行的以下详细描述,本发明的实施例的其他方面和优点将变得显而易见。

图1是根据本发明实施例的用于进行数据通信的系统的示意框图。

图2示出了示例滑动发送窗口和示例滑动接收窗口。

图3是根据本发明实施例的通信设备的示意框图。

图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”并将滑动接收窗口从[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接收到新数据帧(即,通信设备先前未接收到的数据帧),则滑动接收窗口更新对滑动接收窗口进行更新。该新数据帧可以是处于滑动接收窗口中的数据帧或处于滑动接收窗口外的数据帧(即,其不是处于滑动接收窗口中的数据帧之一)。在实施例中,使用所接收的数据帧来更新滑动接收窗口,使得滑动接收窗口的结尾处指向所接收的数据帧当中具有最高序列号的数据帧,而不论数据帧是处于滑动接收窗口内还是处于滑动接收窗口外。因此,与忽略处于滑动窗口之外的接收数据帧且不响应于接收数据帧更新滑动窗口的传统滑动窗口协议相比,该滑动接收窗口协议可以提高协议效率。

图5示意了图3所示的通信设备300的示例操作。如图5所示,通信设备接收数据帧并处理该数据帧。在步骤502,帧确定单元306确定该数据帧是否是滑动接收窗口中的数据帧之一。在步骤504,如果确定了该数据帧不是滑动接收窗口中的数据帧之一,则滑动接收窗口更新单元308将滑动接收窗口信息312更新为包含与该数据帧有关的信息,并且接收机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个应答比特“A0”-“A4”。

图13示出了图9的系统900在频率复用方案下的示例操作。如图13所示,5个频率信道“F1”-“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”由第一通信设备发送。

如果接收到应答信号,则第一通信设备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。将滑动发送窗口初始化为[0,9]并将滑动接收窗口初始化为[6,15]。在示例操作中,滑动接收窗口固定至或滞后于滑动发送窗口,并考虑了从第二通信设备至第一通信设备丢失应答。

如图15A所示,第一通信设备600向第二通信设备300发送数据帧“0”-“4”。第二通信设备接收数据帧“0”-“4”,将滑动接收窗口更新为[11,4],并向第一通信设备发送对数据帧“0”-“4”进行应答的反向数据帧。第一通信设备接收反向帧,将滑动发送窗口更新为[5,14],并向第二通信设备发送数据帧“5”-“9”。第二通信设备接收数据帧“5”-“9”,将滑动接收窗口更新为[0,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的PowerPCTM处理器族和Intel的x86处理器族。

尽管按照具体顺序示出和描述了这里的方法的操作,但是可以改变方法的操作的顺序,从而可以以相反的顺序执行特定操作,或者可以与其他操作至少部分同时执行特定操作。在另一实施例中,可以以间断和/或交替的方式实现不同操作的指令或子操作。

尽管已描述或示出的本发明具体实施例包括这里描述或示出的多个组件,但是本发明的其他实施例可以包括用于实现更少或更多功能的更少或更多组件。

尽管已经描述和示出了本发明的具体实施例,但是本发明不限于由此描述和示出的部分的具体形式或配置。本发明的范围应由所附权利要求及其等价物来限定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号