发明名称 基于时间驱动滑动窗口协议的流媒体实时转发方法
摘要 本发明基于时间驱动滑动窗口协议的流媒体实时转发方法,对传统滑动窗口算法进行了改进,提出了时间驱动滑动窗口协议,滑动窗口的大小是以时间为单位,丢失列表的生成和发送取决于时间窗口是否超时,为此给每个数据包加上了一个时间戳。本发明大大提高了音视频数据的传输实时性、保证了音视频的高质量传输和转发;同时,通过边界乱序消隐窗口的技术,有效避免了已到达数据包被重发、大量无效重传列表占用额外带宽等负面效应,大大提高了流媒体服务器的实际性能。本发明使得流媒体服务器对网络抖动、网络速率及流媒体码率均具有良好的适应性和鲁棒性。
申请公布号 CN101944982A 申请公布日期 2011.01.12
申请号 CN201010250923.4 申请日期 2010.08.11
申请人 南昌市恒鑫电子技术有限公司 发明人 麦金香;杨智勇
分类号 H04L1/18(2006.01)I;H04L1/16(2006.01)I;H04L29/06(2006.01)I 主分类号 H04L1/18(2006.01)I
代理机构 江西省专利事务所 36100 代理人 李卫东
主权项 一种基于时间驱动滑动窗口协议的流媒体实时转发方法,其特征在于:设发送端到服务器、服务器到接收端的相应窗口大小及步长相同,发送端和流媒体服务器作为发送端各设一个发送时间窗口Ts,流媒体服务器和接收端作为接收端各设一个接收时间窗口Tr及边界乱序消隐窗口Tw,丢失重传队列长度为Δtr,设t0至t9为相关事件发生的相应时刻,具体步骤如下:第一步,t0时刻:发送端采集音视频数据,经过编码后以UDP数据包的形式发送到流媒体服务器;第二步,t1时刻:发送端所发送的UDP数据到达流媒体服务器,流媒体服务器根据立即转发策略将所接收到的数据发送往接收端;因发送端发送的UDP包可能在传输过程中丢失,因此流媒体服务器在数据到达的同时开始进行UDP数据包丢失检测;第三步,t2时刻:流媒体服务器对UDP数据包丢失的检测结束,依据检测结果生成丢失列表,为保证数据的重传,该丢失列表以TCP形式发送回发送端;第四步,t3时刻:流媒体服务器立即转发出来的UDP数据到达接收端;同样,UDP数据可能在传输过程中丢失,因此接收端在数据开始到达时启动丢失检测过程。与此同时,流媒体服务器生成并发回给发送端的UDP数据包丢失列表开始到达发送端;第五步,t4时刻:流媒体服务器发出的丢失列表完全到达发送端,发送端依据该列表开始重传上次发送时被丢失的UDP数据包;同时,接收端的数据包丢失检测结束,并生成数据包丢失列表以TCP形式发送回流媒体服务器;第六步,t5时刻:发送端重发的UDP数据包到达流媒体服务器,流媒体服务器立即转发这些数据包,并启动乱序消隐过程,将所有接收到的UDP数据包按序存入转发缓冲区中;同时,接收端生成并发送的丢失列表开始到达流媒体服务器;第七步,t6时刻:发送端重发完所有丢失的数据包,且这些数据包到达流媒体服务器,流媒体服务器通过乱序消隐处理将其放入转发缓冲区中,并依据接收端发来的数据包丢失列表重传丢失数据包到对应的数据接收端;第八步,t7时刻:流媒体服务器重传的UDP数据开始到达接收端,为保证数据的正确性,接收端同时启动乱序消隐过程;第九步,t8时刻:所有流媒体服务器重发出来的UDP数据到达接收端,接收端启动解码过程;第十步,t9时刻:接收端解码结束,开始播放音频/视频。
地址 330096 江西省南昌市高新开发区金庐软件园310号