发明名称 基于喷泉码的多径传输控制方法
摘要 基于喷泉码的多径传输控制方法,属于互联网传输控制技术领域,依次含有以下步骤:当发送方需要发送数据时,首先将数据按块存储在缓存区,然后数据块由编码模块编译为喷泉码符号;数据分配模块根据子流请求及路径评估得到的各子路径质量参数EAT向数据块请求数据,并采用虚拟的数据分配算法,将编码后得到的喷泉码符号分配到各子路径进行传输;本发明可以有效降低采用多径传输控制协议(MPTCP)在传输质量各异的子路径传输数据时的重传概率,减弱低质量路径的瓶颈效应,使得各个子路径传输的数据包尽可能的按序到达接收方,缓解接收方接收缓存大小的限制,提高网络的吞吐量。
申请公布号 CN102404077B 申请公布日期 2013.11.27
申请号 CN201110389050.X 申请日期 2011.11.30
申请人 清华大学 发明人 崔勇;王弘毅;汪一宁;潘广进;徐鑫
分类号 H04L1/00(2006.01)I 主分类号 H04L1/00(2006.01)I
代理机构 西安智大知识产权代理事务所 61215 代理人 贾玉健
主权项 1.基于喷泉码的多径传输控制方法,其特征在于,所述方法是在互联网中按以下步骤实现:步骤(1),通信双方通过多径传输控制协议(MPTCP)握手协议建立MPTCP连接;步骤(2),数据发送方将需要发送的字节流发送到数据缓存区,然后根据喷泉码编码特性将数据B划分为适合的数据块b<sub>1</sub>,b<sub>2</sub>,...,b<sub>n</sub>;步骤(3),将待传输的数据块b<sub>i</sub>编码为喷泉码符号;步骤(4),存在传输机会的子流产生一个数据传输请求,存在传输机会是指发送窗口不为0;步骤(5),路径参数评估模块评估各子流的路径传输质量参数EAT,EAT表示数据通过该路径传输并被接收方成功接收需要花费的时间的期望值;步骤(6),数据分配模块采用虚拟数据分配算法,向数据缓存区请求数据,并将各数据块编码后的符号分配给各子流,具体步骤如下:步骤(6a),找出MPTCP所有子流中EAT最小的子流f,初始化该子流的传输参数,使得数据块指示变量i=0,分配给它的数据包的大小s=0,包描述向量V<sub>f</sub>={v<sub>1</sub>,v<sub>2</sub>,...,v<sub>n</sub>}置零;步骤(6b),判断i是否小于等待传输的数据块数目n,且数据包的大小s小于等于最大分段(MSS),如果是,则i增加1,并继续执行下面步骤,否则,转入步骤(6f);步骤(6c),根据以下公式评估接收方错误译码概率<img file="FDA0000372170420000011.GIF" wi="93" he="89" /><img file="FDA0000372170420000012.GIF" wi="580" he="195" />其中,<img file="FDA0000372170420000013.GIF" wi="76" he="115" />为数据块b<sub>i</sub>编码后单个符号包含的比特数,<img file="FDA0000372170420000014.GIF" wi="76" he="96" />为已接收的数据比特数;判断评估到的接收方错误译码概率<img file="FDA0000372170420000021.GIF" wi="54" he="89" />是否大于等于预先设置的接收方可接受的最大错误码概率δ,如果是,继续执行下面步骤,否则转入步骤(6b);步骤(6d),判断数据包的大小s是否小于等于最大分段(MSS),如果是,继续执行下面步骤,否则转入步骤(6f);步骤(6e),将包描述向量更新为v<sub>i</sub>←v<sub>i</sub>+1,同时为数据包分配一个数据块b<sub>i</sub>的喷泉码符号,即数据包的大小s更新为<img file="FDA0000372170420000022.GIF" wi="253" he="92" />返回步骤(6c),<img file="FDA0000372170420000023.GIF" wi="72" he="118" />为数据块b<sub>i</sub>编码后单个符号包含的比特数;步骤(6f),更新子流f的路径传输质量参数EAT<sub>f</sub>←EDT<sub>f</sub>+RT<sub>f</sub>-τ<sub>f</sub>,具体方法是:当发送窗口为0时,EAT=EDT+RT-τ表示EAT等于等待发送窗口由0增大到不为0的时间(RT-τ)与发送窗口不为0后数据包被接收方成功接收所需时间期望值EDT之和,其中RT指响应时间,它有可能出现两种情况,当前一个数据包成功被接收时RT=RTT,否则RT=RTO,EDT指发送数据包后,数据包被接收方成功接收需时间的期望值,τ指第一个未收到回复包发送时的时间到当前时间的时间间隔;当发送窗口大于0时,即子流存在传输机会,数据包不需要等待发送窗口变大,EAT=EDT;步骤(6g),判断通过上述方法获得数据分配的子流是否为请求传输数据的子流,如果是,则返回包描述向量V<sub>f</sub>,否则转入步骤(6a)继续执行数据分配;步骤(7),根据包描述向量V<sub>f</sub>,为请求数据传输的子流封装数据并发送。
地址 100084 北京市海淀区100084信箱82分箱清华大学专利办公室