用于提高无线网络中的重传的传输设备和接收设备以及由它们执行的相应方法_3

文档序号:8548365阅读:来源:国知局
0064] 在一个示例中,无线传输设备确定如下的矩阵,其中该矩阵的行表示个体无线接 收设备并且列表示先前广播的分组。稍后将在示例中更详细解释这点。
[0065] 该方法可以进一步包括基于所存储的针对每个分组的ACK信息或NACK信息,确定 450要被重传的后续分组集合,其中后续集合包括已经由接收设备中的多个接收设备成功 接收的分组;将后续分组集合组合455到一个后续分组中;以及向接收设备传输435第一 分组。
[0066] 应当指出的是,图4b图示了步骤450发生在接收到ACK和/或NACK之后,但是 这仅仅是一个示例,无线传输设备可以在确定第一集合之后直接基于所存储的针对每个分 组的ACK信息或NACK信息来确定要被重传的后续分组集合。后续集合优选地包括未被包 括在第一集合中的至少一个先前被否定确认的分组。在无线传输设备从传输第一分组起直 至确定要被组合和被传输为后续重传分组的后续分组集合都没有接收到任何ACK和/或 NACK的情况下(其中第一分组是包括第一分组集合的第一重传分组),所存储的ACK信息 或NACK信息对于第一分组集合和后续分组集合是相同的。然而,无线传输设备可能已经接 收到一个或多个ACK和/或NACK并且因此可能已经更新ACK信息或NACK信息。如此的话, 可以基于针对每个分组和针对每个无线接收设备的经更新的ACK信息或NACK信息来确定 后续分组集合。
[0067] 如以上所描述的,该方法可以进一步包括从接收设备接收440至少与包括要被重 传的第一分组集合的所传输的第一分组有关的ACK消息和/或NACK消息;以及关于接收设 备更新445针对每个分组的所存储的ACK信息或NACK信息。该方法可以进一步包括基于 针对每个分组的ACK信息或NACK信息,确定450要被重传的后续分组集合,其中后续集合 包括已经由接收设备中的多个接收设备成功接收的分组;将后续分组集合组合455到一个 后续分组中;以及向接收设备传输460后续分组。
[0068] 换而言之,无线传输设备可以确定要被重传的若干分组集合,这些分组集合包括 在未接收到ACK和/或NACK的情况下的至少一个先前被否定确认的分组。然而,一旦无线 传输设备接收到ACK或NACK,那么无线传输设备就关于接收设备更新针对每个分组的所存 储的ACK信息或NACK信息。无论何时无线传输设备确定要被重传的分组集合,它就基于关 于接收设备的针对每个分组的所存储的ACK信息或NACK信息来这么做。
[0069] 根据一个实施例,基于关于接收设备的针对每个分组的ACK信息或NACK信息而要 被重传的分组集合是基于贪婪算法而被确定的。
[0070] 贪婪算法是用于解决问题的步进式方法,并且有时被称为专一(single-minded) 算法。它通常一次又一次地执行单个过程,直至它不再能够完成并且确定了它将产生哪种 结果。贪婪算法努力在每个阶段寻找最优。因此,无线传输设备处理或者检查所存储的ACK 和NACK信息,以确定要被重传的分组集合,其中该集合包括先前已经被否定确认的至少一 个分组,从而该分组集合将有希望使得尽可能多的无线设备能够接收和成功解码所传输的 分组,以便成功接收在该分组集合中所包括的被否定确认的分组。
[0071] 将分组组合430、455到要被重传的一个分组可以进一步包括对要被重传的集合 中的所有分组执行异或XOR。
[0072] -般地,如果两个变量不同,那么这两个变量的XOR运算输出1(也被称为"真"), 否则的话,输出〇(也被称为"假")。因此,1XOR 1等于0,0X0R 0等于0,1XOR 0和0X0R 1 均等于1。使用XOR运算的优势在于不需要使用任何其他运算来解码重传分组,并且计算相 比于RLNC而言简单得多。
[0073] 部分解码的分组被存储在其中的存储装置可以是多个接收方之中的一个接收方 中的高速缓存(cache)存储装置。当分组在广播或多播系统中被重传时,该分组可以由一 个接收方解码。然而,该分组还可以由另一个接收方部分地解码并且被存储在该接收方的 高速缓存存储装置、也被称为高速缓存中。在其中该分组被存储的情况下,该分组可以在通 过后续重传中接收到的分组满足了解码要求时被解码。
[0074] 图2图示了可能的实施例中的一个实施例的框图。该框图示出了多个接收方22A、 22B和22C以及经由网络信道20向接收方传输分组的发送方21 (或发射方),其中一些分组 在传输期间被弄丢了。发送方21包括网络传送模块25、分组矩阵26、编码逻辑27和要被 传送的分组28。每个接收方22A、22B和22C包括网络传送模块23、解码逻辑24、用于存储 解码分组的级别1(L1)高速缓存和用于存储部分解码分组的级别2 (L2)高速缓存。然而, 在具有这两个存储时不存在限制,并且其他解决方案也是可能的。例如,解码分组和部分解 码分组可以被存储在单个存储装置中。然而,该存储可以被执行从而不同的分组彼此独立 和/或彼此分离。以下描述使用分组高速缓存的新的编码和解码算法。
[0075] 针对单个重传的编解码算法被划分为三个步骤:
[0076] 1.选择轮1:这个选择可以基于一种算法、例如贪婪算法的使用,以便构建分组集 合G,因此尽可能多的接收方可以在G中找到有价值的分组。然而,没有接收方能够一次找 到多于一个的有价值的分组,并且不能够在G中找到任何有价值的分组的这些接收方被称 为剩余接收方。
[0077] 2.选择轮2 :这个选择可以基于例如贪婪算法或类似算法的使用,以便构建分组 集合H,因此尽可能多的剩余接收方在H中得到有价值的分组。此外,这些接收方中没有接 收方找到多于一个的有价值分组。
[0078] 3.重传生成:通过对G和H中的所有分组进行XOR来构造重传分组R。
[0079] 如以上所描述的,引入了有价值的分组G和H。在这种情况下,如果分组对于由接 收方先前接收的所有分组是线性独立的,则该分组对于该接收方是有价值的。为了最小化 总的重传数目,在每次重传中,贪婪算法被用于构成分组R,以便最大化如下接收方的数目, R对这些接收方而言是有价值的。
[0080]在图3中,示出了根据一个实施例的方法,其中多个接收方之中的接收方32A在传 输阶段从发射方21接收分组335。在步骤336中,针对成功接收的分组的ACK消息和针对 丢失分组的NACK消息被发送至发射方,从而这些丢失分组可以被重传。在步骤337中,接 收方将接收到的和经解码的分组存储在L1高速缓存中。下一个步骤338,接收方接收经编 码的重传分组并且在步骤339中开始通过使用存储在L1高速缓存和L2高速缓存中的分组 来解码这些分组。在步骤340中,不能够被完全解码的分组被存储在L2高速缓存中,并且 那些解码分组被存储341在L1高速缓存中。步骤342涉及针对重传分组的ACK/NACK消息 的发送。重传阶段的过程被重复直至所有重传分组被解码。
[0081]在图4中,描述了发射方中的方法。在传输阶段435,发射方41向多个接收方广播 分组。在步骤436中,接收用于确定传输分组的到达或丢失的ACK/NACK。在步骤437,基于 来自所有接收方的NACK消息来执行分组矩阵的更新。在438中,向编码逻辑发送分组矩阵 的状态,从而可以开始分组的选择和编码。在步骤439中的选择之后,进行分组矩阵的新的 更新440,并且经编码的数据分组441被发送至接收方。根据这些分组是否被接收442, ACK 消息或NACK消息被发送。在步骤443中,基于与重传有关的信息来再次更新分组矩阵。
[0082]由以上提及的实施例执行的整个过程在以下信令图中描述。所有传输和响应是实 时完成的。
[0083] 如图5的信令图所示,接收方52可以仅具有在先前传输尝试中被传输的所有分 组中的一部分分组被存储在L1高速缓存中。接收方52向发射方51中的分组矩阵56发 送1:基于先前收集到的数据的分组矩阵更新。该更新可以涉及在分组被成功接收时发送 确认(ACK)消息或在分组被丢失且需要重传时发送否定确认(NACK)消息。在这种情况下, 假设在传输阶段分组已经被丢失。在任何重传分组在重传阶段期间未被接收到的情况中, 重传过程然后可以重复,直至所有分组被存储在L1高速缓存中或者L2高速缓存中。在2: 中,从分组矩阵56向编码逻辑57发送分组矩阵状态,以便3:选择要被编码和重传至接收 方52的分组集合。该选择基于如下的算法,该算法使得尽可能多的接收方在所选择的集合 中找到有价值的和遗失的分组。然而,每个接收方将不能够在该集合中找到多于一个的有 价值分组,并且这些接收方中的一些接收方可能甚至在这个阶段不能找到任何有价值的分 组。在选择和编码之后,分组矩阵56基于选择结果5:而被更新4 :,并且6:所选择的编码 分组的集合被重传至传送模块53,以便由解码逻辑54解码,该解码逻辑54首先通过使用 在L1高速缓存中存储的解码分组来7:解码该分组集合。如果没有从该解码中获得新的信 息,那么这些分组应当被丢弃。然而,如果分组仅被部分解码,那么该分组应当被存储在L1 高速缓存中,而如果该分组被完全解码,那么该分组应当被用于解码存储在L2高速缓存中 的所有相关分组。此外,如果在这次尝试期间解码了其他新的分组,那么这些新的分组被用 于解码存储在L2高速缓存中的其他剩余分组。这些步骤可以重复,直至处理了所有尝试。
[0084] 8:换而言之,重传的分组集合可以具有存储在L2高速缓存中的部分解码的分组, 并且9:剩余的完全解码的分组被存储在L1高速缓存中。10:针对成功传输的ACK消息和 针对丢失分组的NACK消息被发送至发射方51中的传送模块55。在这个阶段,11:根据哪 些分组被重传和哪些分组被成功接收来执行分组矩阵56的更新。在12:中,针对接下来的 重传分组,该过程重复。
[0085] 在图5中描述的信令图的具体示例在图6中被示出。在传输阶段,1:发送方或发 射方61向位于接收方62 (在此被称为Ul、U2、U3等)中的多个传送模块63同时发送具有 五个分组Pl、P2、P3、P4、P5的广播数据。在这个图中,为了更好的理解,将仅考虑接收方 U2。在这种情况下,分组P1和P3丢失并且P2、P4和P5被解码并且2:被存储在L1高速缓 存中。3:具有针对成功接收的分组P2、P4和P5的ACK和针对丢失分组P1和P3的NACK的 消息从接收方62A中的传送模块63被发送至发射方61。
[0086] 在重传阶段中,接收方61、71中的分组矩阵66、76示出了针对每个分组和接收方 的三种不同传输状态。在图7中,可以看出,在分组矩阵76的第一状态中,针对U2,P1和P3 是遗失的(标记为" 1"并且用三角形标注)。针对其他接收方,如U5,分组P3和P5是遗失 的。在作为图7中的第二个矩阵的第二状态中,可以注意到,例如P1现在由U1-U3接收,P2 由U4接收,并且P3
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1