发明名称 基于分层网络拓扑实现分布式的近似理想LT编码的方法
摘要 本发明公开一种基于分层网络拓扑实现分布式的近似理想LT编码的方法:(1)源端把k个数据包广播给各基站;(2)各基站随机选取一个数据包向各第一层中继节点进行广播;(3)各第一层中继节点随机选取一个接收到的数据包:若其已接收过此新数据包或其缓存已满,则丢弃,否则将此新数据包存于缓存中;(4)当各第一层中继节点的缓存中有≥R个数据包时,各第一层中继节点随机选择其中d个数据包异或,并向各第二层中继节点广播异或后的数据包,同时在缓存中删除这d个数据包;(5)各第二层中继节点随机选择两个数据包异或或选取其中一个向接收端发送;(6)接收端对接收到的数据包解码。若成功解码,则结束编码;否则,返回执行步骤(2)。
申请公布号 CN102142934B 申请公布日期 2013.11.13
申请号 CN201110076697.7 申请日期 2011.03.29
申请人 浙江大学 发明人 杨杰;赵志峰;吕思达;张宏刚
分类号 H04L1/00(2006.01)I 主分类号 H04L1/00(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 陈昱彤
主权项 1.一种基于分层网络拓扑实现分布式的近似理想LT编码的方法,其特征是:所述分层网络拓扑包括一个源端,一个以上基站、一个以上第一层中继节点、一个以上第二层中继节点和一个接收端;对所述分层网络进行分布式的近似理想LT码编码包括如下步骤:(1)源端把需要发送的k个大小相同的数据包广播给各个基站,其中k&gt;0;(2)各基站把收到的k个数据包进行编号,然后各基站从k个数据包中随机选择一个数据包向各第一层中继节点进行广播;(3)各第一层中继节点判断缓存中是否存在已接收数据包,若不存在,则从接收到的新数据包中随机选择由其中一个基站所发送的新数据包存到缓存中;若存在,则将接收到的新数据包与缓存中的所述已接收数据包进行比对,若第一层中继节点已接收过此新数据包或者其缓存已被占满,则丢弃此新数据包;否则,将此新数据包存储于其缓存中;(4)当每一个第一层中继节点的缓存中所存储的数据包的个数≥R时,则以概率p选择弱化度分布Ω(d)或以概率1‐p选择弱化度分布u’(d),各第一层中继节点再从各自的缓存中随机选择d个数据包进行异或,并且,根据所选择的弱化度分布是Ω(d)还是u’(d),在异或后的数据包头部中置相应的标志位进行相应标示;然后各第一层中继节点向各第二层中继节点广播异或后的数据包,同时在缓存中删除这d个数据包;其中,<maths num="0001"><![CDATA[<math><mrow><mi>R</mi><mo>=</mo><mfrac><mi>k</mi><mrow><mi>c</mi><mo>&CenterDot;</mo><mi>ln</mi><mrow><mo>(</mo><mi>k</mi><mo>/</mo><mi>&delta;</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><msqrt><mi>k</mi></msqrt></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow></math>]]></maths><img file="FDA00003203746300021.GIF" wi="1649" he="419" /><maths num="0002"><![CDATA[<math><mrow><mi>u</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close='' separators=''><mtable><mtr><mtd><mn>0</mn><mo>,</mo></mtd><mtd><mi>d</mi><mo>=</mo><mn>1</mn></mtd></mtr><mtr><mtd><mfrac><mrow><mi>&rho;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>+</mo><mi>&tau;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow></mrow><msup><mi>&beta;</mi><mo>'</mo></msup></mfrac><mo>,</mo></mtd><mtd><mn>2</mn><mo>&le;</mo><mi>d</mi><mo>&le;</mo><mi>R</mi><mo>-</mo><mn>1</mn></mtd></mtr><mtr><mtd><mfrac><mrow><mi>&rho;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow></mrow><msup><mi>&beta;</mi><mo>'</mo></msup></mfrac><mo>,</mo></mtd><mtd><mi>R</mi><mo>&le;</mo><mi>d</mi><mo>&le;</mo><mi>k</mi></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mfenced></mrow></math>]]></maths><img file="FDA00003203746300023.GIF" wi="1414" he="469" /><maths num="0003"><![CDATA[<math><mrow><mi>&rho;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mn>1</mn><mo>/</mo><mi>k</mi><mo>,</mo></mtd><mtd><mi>d</mi><mo>=</mo><mn>1</mn></mtd></mtr><mtr><mtd><mn>1</mn><mo>/</mo><mrow><mo>(</mo><mi>d</mi><mrow><mo>(</mo><mi>d</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>)</mo></mrow><mo>,</mo></mtd><mtd><mn>2</mn><mo>&le;</mo><mi>d</mi><mo>&le;</mo><mi>k</mi></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow></math>]]></maths><img file="FDA00003203746300025.GIF" wi="1414" he="486" /><maths num="0004"><![CDATA[<math><mrow><mi>&beta;</mi><mo>=</mo><mo></mo><msubsup><mi>&Sigma;</mi><mrow><mi>d</mi><mo>=</mo><mn>1</mn></mrow><mi>k</mi></msubsup><mrow><mo>(</mo><mi>&rho;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>+</mo><mi>&tau;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0005"><![CDATA[<math><mrow><msup><mi>&beta;</mi><mo>'</mo></msup><mo>=</mo><msubsup><mi>&Sigma;</mi><mrow><mi>d</mi><mo>=</mo><mn>2</mn></mrow><mi>k</mi></msubsup><mi>&rho;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>+</mo><msubsup><mi>&Sigma;</mi><mrow><mi>d</mi><mo>=</mo><mn>2</mn></mrow><mrow><mi>R</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mi>&tau;</mi><mrow><mo>(</mo><mi>d</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0006"><![CDATA[<math><mrow><mi>p</mi><mo>=</mo><msqrt><mfrac><msup><mi>&beta;</mi><mo>'</mo></msup><mi>&beta;</mi></mfrac></msqrt><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow></math>]]></maths>以上各式中,δ是预设当接收端收到<img file="FDA00003203746300033.GIF" wi="498" he="84" />个数据包后解码失败的概率,δ≤1,c是大于0的常数,d表示度数,0&lt;d≤k;(5)各第二层中继节点在接收到的数据包中随机选择两个数据包,若所选择的两个数据包的弱化度分布都是Ω(d),则将该两个数据包进行异或后再向接收端发送;若所选择的两个数据包中的其中一个的弱化度分布是Ω(d),另一个的弱化度分布是u’(d),则选择弱化度分布是u’(d)的数据包向接收端发送;若所选择的两个数据包的弱化度分布都是u’(d),则随机选择其中一个数据包向接收端发送;(6)接收端将从第二层中继节点接收到的数据包进行解码,若成功解码,则通知源端结束编码过程;否则,返回执行步骤(2)。
地址 310027 浙江省杭州市西湖区浙大路38号