1.一种流媒体数据的路由转发控制方法,其特征在于,该方法包括:
在网络中的各路由器节点按设定的优先级规则对接收到的流媒体数据进行分类,并放入各类对应的缓存队列;
为每个缓存队列设置令牌桶和溢出桶,根据缓存队列的优先级设置令牌桶可装入令牌的上限值和令牌注入速率,将从令牌桶溢出的令牌注入溢出桶,并在前一个溢出桶注满后生成空的溢出桶继续注入令牌;
在预设的时段内统计路由器节点中各级流媒体数据溢出桶的计数,将各级计数值随待转发的本地路由表数据向外广播;
利用距离向量的路由路径算法在对本地路由表更新过程中,对于由不同邻居节点发来的、具有相同目的地址和最短距离的路由表项,选择各级溢出桶计数值最高的邻居节点作为对应优先级的强连接节点,并将强连接节点发送的路由表项更新到本地;
按更新后的路由表项指定的路径转发对应级别的流媒体数据。
2.根据权利要求1所述的流媒体数据的路由转发控制方法,其特征在于,所述的优先级规则采用支持QoS的IP优先级或DSCP分类策略,以IP报文首部中区分服务字段标记的编号划分流媒体数据的优先级类别。
3.根据权利要求1所述的流媒体数据的路由转发控制方法,其特征在于,所述各级流媒体数据溢出桶的计数规则具体为:设置由n个时间单元格组成的观察窗,每个时间单元格为时长t,观察窗每隔时长t向前移动一个时间单元格,tx=ax/rx
其中,a表示令牌桶可装入令牌的上限值,r表示令牌桶注入速率,x表示流媒体数据所对应的优先级的级数,溢出桶可装入令牌的上限值与其对应优先级种类的令牌桶相同;
实时统计观察窗内每个时间单元格产生的溢出桶计数,并将所有计数值求和:
其中,ctoken_i表示第i个时间单元格所在时段内令牌的溢出量,Cbucket表示观察窗内所有时间单元格产生的溢出桶计数之和,将计数值Cbucket作为x级流媒体数据溢出桶的计数结果。
4.根据权利要求3所述的流媒体数据的路由转发控制方法,其特征在于,在各级流媒体数据溢出桶的计数规则中还包括流量折损过程:统计第i个时间单元格所在时段内本地路由器节点转发的x级流媒体数据的流量fx_i;
将流量fx_i与数值ax进行比较,如果fx_i≤ax,则将计算值 作为第i个时间单元格的流量折损,通过以下公式计算获得观察窗的折损差值:如果Dbucket为负值,则返回零值作为x级流媒体数据溢出桶的计数结果,否则直接返回差值Dbucket作为x级流媒体数据溢出桶的计数结果;
如果fx_i>ax,则将计算值 作为第i个时间单元格的流量折损,通过以下公式计算获得观察窗的折损差值:其中,k表示fx_i>ax情况在第i个时间单元格之前连续出现的次数,k≥1,如果Dbucket为负值,则返回零值作为x级流媒体数据溢出桶的计数结果,否则直接返回差值Dbucket作为x级流媒体数据溢出桶的计数结果。
5.根据权利要求1所述的流媒体数据的路由转发控制方法,其特征在于,利用各级强连接节点完成对应优先级的本地路由表更新的具体操作过程为:接收邻居节点X发来的路由表,对于由邻居节点X到目的地址D的距离值为d1的路由表项,如果本地路由表中不存在目的地址D,则将该路由表项添加到本地路由表中;
否则,判断邻居节点X与本地路由表中记录的到目的地址D的下一跳节点Y是否相同,如果相同,则将邻居节点X的路由表项更新到本地;
如果不同,将距离值d1与本地路由表中记录的到目的地址D的距离值d2进行比较,如果d1+1<d2,则将邻居节点X的路由表项更新到本地;
否则,如果d1+1=d2,提取本地路由表中记录的到目的地址D的下一跳节点Y,比较邻居节点X与下一跳节点Y的优先级,如果邻居节点X的优先级大于下一跳节点Y的优先级,则将邻居节点X的路由表项更新到本地,如果邻居节点X的优先级不大于下一跳节点Y的优先级,则不对本地路由表项更新;
否则,如果d1+1>d2,则不对本地路由表项更新;
其中,普通路由器节点优先级<强连接节点优先级。
6.根据权利要求3或4所述的流媒体数据的路由转发控制方法,其特征在于,还包括流媒体数据优先级动态调整过程:当第m级流媒体数据观察窗内溢出桶计数低于设定阈值αm,且最后一个时间单元格产生的溢出桶计数为零时,进一步判断第m‑1级流媒体数据观察窗内溢出桶计数如果高于设定阈值αm‑1,且最后一个时间单元格产生的溢出桶计数不为零时,则将第m级流媒体数据缓存队列跃迁至第m‑1级流媒体数据缓存队列,并每间隔时长t重复监测满足该跃迁的条件是否还成立,如果成立,保持第m级流媒体数据缓存队列跃迁状态,否则将第m级流媒体数据缓存队列复原,其中m表示流媒体数据的级数标识,m≥2,级数越高对应的流媒体数据优先级越低。
7.一种流媒体数据的路由转发控制系统,其特征在于,该系统包括分布式部署在网络中的若干个路由器节点;所述的路由器节点支持RIP路由选择协议,包括:分类器、高速缓存器、权标控制器、溢出桶计量器、调度器、路由选择模块、路由数据转发模块;
分类器:采用支持QoS的IP优先级或DSCP分类规则对接收到的流媒体数据进行分类;
高速缓存器:临时存储待转发的流媒体数据,为不同优先级类别的流媒体数据分配独立的缓存空间,形成各类对应的缓存队列;
权标控制器:为每个缓存队列设置令牌桶和溢出桶,根据缓存队列的优先级设置令牌桶可装入令牌的上限值和令牌注入速率,并按设定的令牌注入速率同步生成令牌,将从令牌桶溢出的令牌注入溢出桶,并在当前溢出桶注满后重新生成空的溢出桶;
溢出桶计量器:在预设的时段内统计路由器节点中各级流媒体数据溢出桶的计数,将各级计数值随待转发的本地路由表数据向外广播;
调度器:对已获得令牌的流媒体数据按获取时间的先后顺序进行排序,并将排序队列指向对应的输出端口;
路由选择模块:利用距离向量的路由路径算法在对本地路由表更新过程中,对于由不同邻居节点发来的、具有相同目的地址和最短距离的路由表项,选择各级溢出桶计数值最高的邻居节点作为对应优先级的强连接节点,并将强连接节点发送的路由表项更新到本地;
路由数据转发模块:按更新后的路由表项指定的路径转发对应级别的流媒体数据。
8.根据权利要求7所述的流媒体数据的路由转发控制系统,其特征在于,还包括时钟控制器,用于对各优先级类别所属的权标控制器执行时钟同步。
9.根据权利要求7所述的流媒体数据的路由转发控制系统,其特征在于,还包括优先级调整模块,根据设定的跃迁条件,执行低级流媒体数据缓存队列向高级流媒体数据缓存队列跃迁操作,完成流媒体数据优先级的动态调整。