正在加载图片...
·136· 工程科学学报,第37卷,第1期 得到: M,[nln-1]H [n] 6;[nln] 6 [nin-1] +H.[n]M,EnIn -1]Hi [n] rtt,Cnln]rt,Cnln-1] 是一个2×1维列矢量.假设 M,[nIn -1]H:[n] [m nIn-1]m12 [nin-1]1 &+H,M,nln-]H万xn)- M,[nIn-1] m2.1nln-1]m2.2ln-1]' 2500 1- (26,ln-]+tn-可) 从上式可以推导出基于当前时刻观测值的带宽与往返 (21) 时间的预测值与基于过去时刻观测值的带宽与往返时 式(21)中,等号右边和式第二项前面的部分 间的估计值两者之间的关系为 x(m)-(26,nln-]+ 2500 、1-风 b;[nln]=b;[nIn-1]+ rtt nln-l叮/ (1-√P: +H [n]M,[nIn -1]H [n] in-了x -X- (26,ln-+tm-可) 25001-E ×(2m.1nln-1]rt[nln-1]-2500m1,2nln-1]): (22) 250011-m rtt,[nln]=rtl [nIn-1] ,(m)-(26,ln-+,n-可 (1-p) +H [n]M,[nln -1]H [n] nln-万× (26,1n-】+200)×(2 ma.oln-l1nln-】-2500man1n-1]. 容易看出,带宽的预测值b:nln]不仅与它自己 对拥塞控制窗口以及快速重传的影响.事实上,对于 的估计值b:nln-]有关,还与往返时间RTT的估计时延敏感的场景而言,式中第二项要比第一项大,因此 值tnln-1]有关.同理,往返时间的预测值rt,nlT:=O,/b,]+rt,]2;而对于时延和带宽都敏感的 n不仅与其估计值rtl Enin-l]相关,也与带宽的估 场景而言,恰好相反,第一项的值大于第二项的值,此 计值b:nln-1]有关,这正体现了联合预测的思想. 时T=(D+0,)/b,].根据式(23)计算的结果,数 算法通过对带宽与往返时间同时进行预测,不仅能够 据D将选择具有最小T:值的路径进行传输.借鉴文 更全面准确地反映路径状态,而且能够加速算法迭代 献4]中路径选择算法的思想,我们提出了如下 收敛,这将在后面的仿真中予以证明. SCTP一CMT中路径选择算法: 算法推导过程中,8和8均为扩展矢量卡尔 For each data packet to be sent 曼滤波算法的参数,且两者相互独立.其中,和6 for all path i within one SCTP association do 反映了系统模型的准确程度,8刻画了观测过程的准 calculate T according to Equation (23) 确程度.在实际应用过程中,这三个参数通常是未知 sort the destinations of paths with T,increasing 的或者只是近似已知.通常,与8在滤波迭代开始 end for 时进行估计,而对8的估计相对比较困难。事实上, select path i with the smallest value T for transmis- sion 当观测方差取值较小时,将导致较大的估计方差: while (Outstanding packets>CWND size)for path j 而⑧?取值较大时,估计方差将变小,但算法的收敛速 do 度将变慢.在下面的仿真过程中,6与8均取0.001, select pathj=j→next 8取值为1. end while 3 SCTP-CMT路径选择算法 send the data packet to the destination through path j 到达时间T:同时兼顾了带宽、往返时间以及发送 基于联合预测的带宽与往返时间,我们可以计算 端未被确认的数据三者对传输性能的影响,能够较好 出待传数据包经第i条路径到达接收端的时间为 地反映待传数据包到达接收端所需的时间.从式(23) D+0:0,t:n]1 T,=max(6,',而+2 (23) 可以看出,更宽的带宽b:[n]、更短的往返时间rt,[n] 以及更及时的数据确认将带来更好的数据传输性能 式中,D表示数据包大小,O,是路径i未经接收端确认 因此,本文提出的算法能够保证选择性能最好的路径 的数据块(outstanding chunk)的大小,b:n]与rt[n] 进行数据传输.由于路径选择算法只对协议的发送端 分别表示当前时刻估计路径i的带宽与往返时间.在 进行修改,接收端的接收缓存对所有路径而言是共用 式(23)中引入0,主要是为了考虑发送缓存占用情况 的,因此丢包引起的重传数据也将采用该算法进行路工程科学学报,第 37 卷,第 1 期 得到: b^ i [n | n] rtt ( i [n | n]) = b^ i [n | n - 1] rtt ( i [n | n - 1]) + Mi [n | n - 1]HT i[n] δ 2 w + Hi [n]Mi [n | n - 1]HT i[n][ xi ( n) ( - 2b^ i [n | n - 1]+ 2500 rtti [n | n - 1]) ( 1 -槡pi ] ) . ( 21) 式( 21) 中,等号右边和式第二项前面的部分 Mi [n | n - 1]HT i[n] δ 2 w + Hi [n]Mi [n | n - 1]HT i[n] 是一个 2 × 1 维列矢量. 假设 Mi [n | n - 1]= m1,1[n | n - 1] m1,2[n | n - 1] [ m2,1[n | n - 1] m2,2[n | n - 1]], 从上式可以推导出基于当前时刻观测值的带宽与往返 时间的预测值与基于过去时刻观测值的带宽与往返时 间的估计值两者之间的关系为 bi [n | n]= bi [n | n - 1]+ xi ( n) ( - 2b^ i [n | n - 1]+ 2500 rtti [n | n - 1]) ( 1 -槡pi ) δ 2 w + Hi [n]Mi [n | n - 1]HT i[n] × ( 1 - 槡pi ) rtt2 i [n | n - 1]× ( 2b^ i [n | n - 1]+ 2500 rtti [n | n - 1]) -槡pi × ( 2·m1,1[n | n - 1]rtt2 i [n | n - 1]- 2500·m1,2[n | n - 1]) ; rtti [n | n]= rtti [n | n - 1]+ xi ( n) ( - 2b^ i [n | n - 1]+ 2500 rtti [n | n - 1]) ( 1 -槡pi ) δ 2 w + Hi [n]Mi [n | n - 1]HT i[n] × ( 1 - 槡pi ) rtt2 i [n | n - 1]× ( 2b^ i [n | n - 1]+ 2500 rtti [n | n - 1]) -槡pi × ( 2·m2,1[n | n - 1]rtt2 i [n | n - 1]- 2500·m2,2[n | n - 1])              . ( 22) 容易看出,带宽的预测值 bi [n | n]不仅与它自己 的估计值 bi [n | n - 1]有关,还与往返时间 RTT 的估计 值 rtti [n | n - 1]有关. 同理,往返时间的预测值 rtti [n | n]不仅与其估计值 rtti [n | n - 1]相关,也与带宽的估 计值 bi [n | n - 1]有关,这正体现了联合预测的思想. 算法通过对带宽与往返时间同时进行预测,不仅能够 更全面准确地反映路径状态,而且能够加速算法迭代 收敛,这将在后面的仿真中予以证明. 算法推导过程中,δ 2 b、δ 2 t 和 δ 2 w 均为扩展矢量卡尔 曼滤波算法的参数,且两者相互独立. 其中,δ 2 b 和 δ 2 t 反映了系统模型的准确程度,δ 2 w 刻画了观测过程的准 确程度. 在实际应用过程中,这三个参数通常是未知 的或者只是近似已知. 通常,δ 2 b 与 δ 2 t 在滤波迭代开始 时进行估计,而对 δ 2 w 的估计相对比较困难. 事实上, 当观测方差 δ 2 w 取值较小时,将导致较大的估计方差; 而 δ 2 w 取值较大时,估计方差将变小,但算法的收敛速 度将变慢. 在下面的仿真过程中,δ 2 b 与 δ 2 t 均取 0. 001, δ 2 w 取值为 1. 3 SCTP--CMT 路径选择算法 基于联合预测的带宽与往返时间,我们可以计算 出待传数据包经第 i 条路径到达接收端的时间为 Ti ( = max D + Oi bi [n], Oi bi [n]+ rtti [n] ) 2 . ( 23) 式中,D 表示数据包大小,Oi 是路径 i 未经接收端确认 的数据块( outstanding chunk) 的大小,bi [n]与 rtti [n] 分别表示当前时刻估计路径 i 的带宽与往返时间. 在 式( 23) 中引入 Oi,主要是为了考虑发送缓存占用情况 对拥塞控制窗口以及快速重传的影响. 事实上,对于 时延敏感的场景而言,式中第二项要比第一项大,因此 Ti = Oi / bi [n]+ rtti [n]/2; 而对于时延和带宽都敏感的 场景而言,恰好相反,第一项的值大于第二项的值,此 时 Ti = ( D + Oi ) / bi [n]. 根据式( 23) 计算的结果,数 据 D 将选择具有最小 Ti 值的路径进行传输. 借鉴文 献[14]中路径选择算法的思想,我 们 提 出 了 如 下 SCTP--CMT 中路径选择算法: For each data packet to be sent for all path i within one SCTP association do calculate Ti according to Equation ( 23) sort the destinations of paths with Ti increasing end for select path j with the smallest value Ti for transmis￾sion while ( Outstanding packets≥CWND size) for path j do select path j = j→next end while send the data packet to the destination through path j 到达时间 Ti 同时兼顾了带宽、往返时间以及发送 端未被确认的数据三者对传输性能的影响,能够较好 地反映待传数据包到达接收端所需的时间. 从式( 23) 可以看出,更宽的带宽 bi [n]、更短的往返时间 rtti [n] 以及更及时的数据确认将带来更好的数据传输性能. 因此,本文提出的算法能够保证选择性能最好的路径 进行数据传输. 由于路径选择算法只对协议的发送端 进行修改,接收端的接收缓存对所有路径而言是共用 的,因此丢包引起的重传数据也将采用该算法进行路 · 631 ·
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有