发明名称 基于代价优化的P2P流媒体覆盖网拓扑构造调整方法
摘要 本发明提供了一种基于代价优化的P2P流媒体覆盖网拓扑构造调整方法,该方法充分考虑节点的动态性和异构性,利用节点的拓扑信息、节点间链路的延迟以及节点可用上行带宽,通过计算节点间链路的权值和备选节点的能力值,贪婪的从备选的节点中选出能力高的节点作为服务节点。同时,通过周期性将带宽高且生存时间长的节点不断调整靠近视频源的自适应拓扑调整方法,网络中的节点可以渐进的学网络的状况,不断优化系统性能。通过本发明构建的覆盖网拓扑,不仅加快数据扩散速度,而且在保证了流分发的稳定性和连续性的同时,有效降低跨运营商之间的流量。
申请公布号 CN101997922A 申请公布日期 2011.03.30
申请号 CN201010552464.5 申请日期 2010.11.19
申请人 武汉大学 发明人 胡瑞敏;杨红云;陈旭辉;陈军
分类号 H04L29/08(2006.01)I;H04L29/06(2006.01)I 主分类号 H04L29/08(2006.01)I
代理机构 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 代理人 张火春
主权项 一种基于代价优化的P2P流媒体覆盖网拓扑构造调整方法,P2P流媒体网络中包括有索引服务器和视频源服务器,其特征在于:基于代价优化实现覆盖网拓扑构造,构造后提供邻居节点动态自适应调整,所述覆盖网拓扑构造,实现时采用的步骤S1包括以下子步骤,S1‑1、请求节点向索引服务器发送注册消息报文以加入P2P流媒体网络,各请求节点发送的注册消息报文包括该请求节点的节点IP地址、节点请求的播放位置、节点上行带宽及节点下行带宽;S1‑2、索引服务器收到某请求节点的注册消息报文后,根据节点请求的播放位置,将该注册消息报文所提供请求节点信息保存在全局节点列表中,并选择已在线的N个播放位置与请求节点邻近的备选节点,组成备选节点列表连同请求节点的自治系统号一起发送给请求节点,备选节点列表中信息包括各备选节点的节点IP地址、节点所属的自治系统号、该备选节点与请求节点之间自治系统跳数、节点上行带宽、节点已在线时间及节点当前的播放位置;S1‑3、请求节点向N个备选节点分别发送连接探测报文;连接探测报文包括请求节点IP地址;S1‑4、备选节点在收到请求节点发送的连接探测报文后,如果当前存在可用上行带宽,则发送连接响应报文给请求节点;否则丢弃连接探测报文;连接响应报文包括该备选节点的节点当前剩余上行带宽、节点IP地址、节点与视频源服务器之间的链路延迟及节点的当前播放位置;S1‑5、如果在设定的超时时间内,请求节点收到大于或等于Kp个备选节点发来的连接响应报文,请求节点根据连接响应报文计算节点间链路的代价,从中选择出满足速率要求的一个或者以上备选节点建立父子连接关系,完成请求节点的加入过程;如果在设定的超时时间内,请求节点收到h个备选节点发来的连接响应报文,h小于Kp,则执行步骤S1‑6;所述Kp是预设的请求节点的度;并且,当请求节点在设定的超时时间内没有收到备选节点列表中某个备选节点发来的连接响应报文时,则将该未做响应的备选节点从备选节点列表中删除,并将该备选节点的节点IP地址存入请求节点的节点内待删除节点列表; S1‑6、请求节点向索引服务器发送获取在线节点列表请求报文,该获取在线节点列表请求报文包括该请求节点的节点IP地址、节点内待删除节点列表及节点的当前播放位置;S1‑7、索引服务器在接收到请求节点发出的获取在线节点列表请求报文后,重新选出与请求节点播放位置邻近的不同于待删除节点列表中的(Kp‑h)个新的备选节点发送给请求节点;S1‑8、请求节点向(Kp‑h)个新的备选节点发送连接探测报文,继续从步骤S1‑4开始执行;直到执行步骤S1‑5时,在设定的超时时间内,请求节点收到大于或等于Kp个备选节点发来的连接响应报文;所述邻居节点动态自适应调整方法,实现时采用的步骤S2包括以下子步骤,S2‑1、已加入P2P流媒体网络并参与P2P流媒体分发的会话节点周期性地向其所有父亲节点发送探测消息报文,探测消息报文包括该探测消息报文的生存时间TTL、会话节点的上行带宽、会话节点已在线时间和会话节点的IP地址;S2‑2、会话节点的父亲节点收到探测消息报文后,执行TTL减1操作,操作后如果TTL等于0,则执行步骤S2‑3,否则,执行步骤S2‑4;S2‑3、会话节点的父亲节点比较自身上行带宽与会话节点上行带宽大小,以及自身已在线时间与会话节点已在线时间大小;如果会话节点上行带宽大于父亲节点的上行带宽且会话节点已在线时间大于父亲节点的已在线时间,则丢弃探测消息报文,并发送grant消息报文给会话节点;如果会话节点上行带宽大于父亲节点的上行带宽但会话节点已在线时间小于父亲节点的已在线时间,则执行步骤S2‑5;否则,丢弃探测消息报文,不再做处理;所述grant消息报文包括父亲节点的IP地址、父亲节点自身所有父亲节点的IP地址,及父亲节点的已在线时间;S2‑4、会话节点的父亲节点继续向该父亲节点自身的所有父亲节点转发该探测消息报文,循环执行步骤S2‑2;S2‑5、计算会话节点上行带宽与父亲节点的上行带宽的差值和会话节点已在线时间与父亲节点的已在线时间的差值,如果上行带宽的差值大于带宽差阈值Bthreshold 且已在线时间的差值小于在线时间差阈值Tthreshold , 则发送grant消息报文给会话节点;否则,丢弃探测消息报文;S2‑6、在预先设定的超时时间内,会话节点从所有发来grant消息报文的节点中,找到从视频源服务器到该会话节点延迟最小的节点执行邻居节点的更新;所述邻居节点的更新,实现时包括以下子步骤,S2‑6‑1、会话节点向所述延迟最小的节点的所有父亲节点发送会话节点连接探测报文,;S2‑6‑2、接收到会话节点连接探测报文的父亲节点,如果有剩余上行带宽,则返回连接响应报文,该会话节点连接响应报文包括父亲节点的节点IP地址,并接受该会话节点为孩子节点;否则,执行步骤S2‑6‑3;S2‑6‑3、接收到会话节点连接探测报文的父亲节点,比较自身所有孩子节点上行带宽与该会话节点上行带宽大小,从带宽小于该会话节点的所有孩子节点中选出一个被替换概率小于某预设确定值的节点,称为被选中孩子节点,执行步骤S2‑6‑4;S2‑6‑4、所述父亲节点向所述被选中孩子节点发送服务中断消息,向所述请求节点发送连接响应报文,建立父亲节点与该会话节点之间的连接;S2‑6‑5、所述被选中孩子节点接收到服务中断消息,如果该孩子节点还存在其它父亲节点,则继续按照步骤S2进行邻居节点动态自适应调整,如果该孩子节点没有其它父亲节点存在,则作为请求节点返回继续执行步骤S1,重新向索引服务器发送注册消息报文。
地址 430072 湖北省武汉市武昌区珞珈山