主权项 |
1、跨平台的端到端RTP协议栈设计方法,其特征在于:1)、采用简洁的接口技术,降低程序运行复杂度;本RTP协议栈包括三个模块:一、数据包模块,二、控制信息包模块,三、成员模块;这三个模块由一个调度器来统一处理,使其协作执行;2)、通过对RTP包头格式进行修改:用相对时间戳代替绝对时间戳来实现同步,对RTP包的包头进行压缩,减少网络开销;3)、适应无线网络传输环境,对RTCP协议进行裁减和扩展;(1)对RTCP包的SR包做了简化;(2)对RTCP包长更新算法提出改进,使之能更灵活准确反馈某时刻的网络环境;(3)为了适应无线传输环境,把大量的RTP应用的参数设置为默认值,降低算法的复杂度,减少网络开销;(4)对丢包率计算的算法提出改进:当组成员数小于N时,取所有成员中最高丢包率作为向应用层反馈的丢包率;当成员数大于N时,只考虑最近t时间内发送RTP包最多的m位成员的算术平均丢包率作为向应用层反馈的丢包率;4)、成员模块的设置;(1)对成员模块和同步源进行改进和结合,设置成员的五个不同的状态:初始化、查找检测、加入检测、激活、离开五个状态;(2)修改RTCP包的发送间隔计算,包长计算算法和丢保率算法的改进的重要原因和目的就是改进发送间隔时间的算法,并根据成员的增减和状态的变化,动态计算RTCP包的发送间隔;(3)删除同步源链表、建立基于分层的成员链表,使成员模块和同步源有机结合,从而对RTP的各个算法实现提供有效支持,保证传输的实时性和必要的可靠性;(4)利用成员模块链表,改进成员冲突检测,对本地成员链表无论是查找操作还是插入、删除操作都变得更加容易;(5)改进back-off机制,设置上溢阈值和下溢阈值来防止同时有很多成员加入和离开导致的网络抖动。 |