发明名称 一种基于P2SP的flash视频调度方法
摘要 本发明涉及一种基于P2SP的flash视频调度方法,发起播放请求的客户端Peer通过向P2P服务器P2P Server发送视频ID请求播放与该视频ID对应的视频,由P2P Server进行调度,决定由哪些资源向发起播放请求的Peer传送视频分片文件;发起播放请求的Peer将当前播放视频的统计信息发送给P2P Server;P2P Server进行调度基于通信健康度H,每次调度选出一组通信健康度H的值为正值的资源,提供给发起播放请求的客户端Peer,如果找不到任何满足条件的资源,则直接选择CDN作为资源。本发明所述的基于P2SP的flash视频调度方法,减少CDN的带宽消耗,降低成本,对各个客户端Peer较为公平,不会在客户端关闭播放行为后依然占用客户端Peer宝贵的网络带宽。
申请公布号 CN102510395B 申请公布日期 2014.11.12
申请号 CN201110321564.1 申请日期 2011.10.21
申请人 合一网络技术(北京)有限公司 发明人 白鹏;姚健;邱丹;吴昊宇;潘柏宇;卢述奇
分类号 H04L29/08(2006.01)I 主分类号 H04L29/08(2006.01)I
代理机构 代理人
主权项 一种基于P2SP的flash视频调度方法,其特征在于:发起播放请求的客户端Peer通过向P2P服务器P2P Server发送视频ID请求播放与该视频ID对应的视频,P2P Server负有协调调度的职能,由P2P Server进行调度找到哪些资源中有所需视频的视频分片文件,并决定实际由哪些资源向发起播放请求的Peer传送视频分片文件;发起播放请求的客户端Peer根据从P2P Server收到的调度信息,从其他客户端peer获取所需视频的视频分片文件,或从内容分发网络CDN获取所需视频的视频分片文件,所述P2P Server向发起播放请求的客户端Peer发送的调度信息为JSON格式的字符串,至少包括:请求目标地址,视频ID,分片ID,分片总长度,所述请求目标地址为其他客户端Peer的地址或为CDN;发起播放请求的客户端Peer在播放视频的同时,将当前播放视频的统计信息发送给P2P Server,P2P Server根据接收到的当前播放视频的统计信息形成并更新调度信息;所述发起播放请求的客户端Peer向P2P Server发送的统计信息为JSON格式的字符串,至少包括:Peer的ip地址,当前播放视频的ID,该视频的分片数组,当前分片的ID,当前分片总的字节数,当前分片已经下载的字节数;P2P Server进行调度的具体过程如下:P2P Server将统计信息抽象成一个Hash表Hash&lt;key,value〉,其关键字key为视频ID,取值value为能给该视频ID对应的视频提供下载服务的资源列表,所述资源列表就是一组资源的集合,P2P Server进行调度基于通信健康度H,每次调度选出一组通信健康度H的值为正值的资源,提供给发起播放请求的客户端Peer,如果找不到任何满足H的值为正值这一条件的资源,则直接选择CDN作为资源,提供给发起播放请求的客户端Peer,所述通信健康度H的计算公式为:通信健康度H=[播放完所用时间t1‑下载完所用时间t2]/视频总时长T,如果H<0,则预期播放过程会阻塞;在通信健康度H的计算公式中:播放完所用时间t1=(total_b‑play_b)/play_v;下载完所用时间t2=(total_b‑loaded_b)/loading_v;视频总时长T=(total_b)/play_v;<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>H</mi><mo>=</mo><mfrac><mrow><mi>total</mi><mo>_</mo><mi>b</mi><mo>-</mo><mi>play</mi><mo>_</mo><mi>b</mi><mo>-</mo><mrow><mo>(</mo><mi>total</mi><mo>_</mo><mi>b</mi><mo>-</mo><mi>loaded</mi><mo>_</mo><mi>b</mi><mo>)</mo></mrow><mi>play</mi><mo>_</mo><mi>v</mi><mo>/</mo><mi>loading</mi><mo>_</mo><mi>v</mi></mrow><mrow><mi>total</mi><mo>_</mo><mi>b</mi></mrow></mfrac></mrow>]]></math><img file="FSB0000125878640000021.GIF" wi="1620" he="139" /></maths>公式中:play_v为播放速度,play_b为当前播放位置到开头的字节数,loaded_b为当前分片已下载的字节数,total_b为当前分片的总字节数,loading_v为当前分片的P2P下载速度。
地址 100080 北京市海淀区海淀大街8号中钢国际广场A座5层A、C区