CN103166974A - 一种基于tcp/udp混合协议的流媒体无线传输方法 - Google Patents

一种基于tcp/udp混合协议的流媒体无线传输方法 Download PDF

Info

Publication number
CN103166974A
CN103166974A CN2013101040001A CN201310104000A CN103166974A CN 103166974 A CN103166974 A CN 103166974A CN 2013101040001 A CN2013101040001 A CN 2013101040001A CN 201310104000 A CN201310104000 A CN 201310104000A CN 103166974 A CN103166974 A CN 103166974A
Authority
CN
China
Prior art keywords
packet
control information
receiving terminal
data
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013101040001A
Other languages
English (en)
Other versions
CN103166974B (zh
Inventor
张华熊
何利力
朱海峰
林翔宇
马汉杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University of Technology ZJUT
Original Assignee
Zhejiang University of Technology ZJUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University of Technology ZJUT filed Critical Zhejiang University of Technology ZJUT
Priority to CN201310104000.1A priority Critical patent/CN103166974B/zh
Publication of CN103166974A publication Critical patent/CN103166974A/zh
Application granted granted Critical
Publication of CN103166974B publication Critical patent/CN103166974B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

本发明公开了一种基于TCP/UDP混合协议的流媒体无线传输方法,该方法把UDP协议传输开销小、速度快、效率高但传输不可靠的特点与TCP协议传输开销大、效率低但传输可靠的特点相结合,采用UDP协议把视音频数据用固定长度的数据包头进行封装,同时通过自适应的数据发送速度进行视音频数据包发送,小数据量的数据重传、心跳等控制信息则通过TCP协议传输,从而解决了现有技术中只是利用TCP或UDP单一协议进行数据传输的传输效率与传输可靠无法兼顾的问题,很好地实现了基于无线网络的视音频数据的高质量传输。

Description

一种基于TCP/UDP混合协议的流媒体无线传输方法
技术领域
本发明属于音视频数据传输技术领域,具体涉及一种基于TCP/UDP混合协议的流媒体无线传输方法。
背景技术
在目前的各种应急通信***方案中,应急视音频通信终端与指挥中心的视音频数据传输主要基于3G等无线网络实施,在这种应用场合下,网络环境的复杂性要远远超过传统的有线网络,比如无线网络的低带宽、高误码等特点使得传统的基于有线网络设计的视音频通信终端效果总是不尽人意,表现为延时、抖动、花屏,甚至出现视音频传输中断等,而这在应急通信中是无法令人接受的。因此如何基于各类无线网络,尤其是电信、移动等公司的3G无线网络进行视音频数据的高质量传输是急需解决的一个现实问题。
目前应急通信采用的无线传输网络主要有两种:电信、联通的3G网络和移动的4G网络等公用无线宽带网络,或者专用无线电台。由于3G/4G等公用无线宽带网络无论是在网络覆盖面、无线网络应用成本等各个方面都存在非常明显的经济优势,这种网络也成为无线多媒体传输***的主要网络。基于终端的标准化和应急通信***的兼容性考虑,几乎所有应急通信平台均采用IP传输技术,因此目前的基于无线网络的多媒体通信传输技术也几乎全部是基于TCP/IP协议的,主要有以下两种:
(1)基于UDP协议。
UDP协议的特点是面向无连接的不可靠传输,也即UDP协议对分组的超时或丢弃不敏感。在有线网络中,由于网络的低误码率、高吞吐量,以及接收终端的强计算能力和纠错能力,因而在有线网络中,基于UDP协议的多媒体传输可以得到较好的效果。然而,相对于有线网络,无线网络中存在大量计算能力受限的弱终端,它们的纠错能力和缓存能力都较弱,所以对于分组的缺失非常敏感。更为严重的是,传统的单纯基于UDP协议的流媒体传输方式由于没有拥塞控制机制,所以在网络发生拥塞时仍然会向网络中注入大量数据包,导致发生拥塞的路由将分组丢弃,进而造成终端恢复视频质量的急剧下降,严重时将导致接收终端(解码器)崩溃。
(2)基于TCP协议。
最近的研究表明,越来越多的流式媒体采用TCP而非UDP作为传输协议。但是,目前TCP协议的实现(如TCP-Reno、TCP-NewReno、TCP-SACK)都把数据包的丢失作为网络拥塞的指示,进而将拥塞窗口减半,造成发送速率呈现较大的抖动性,影响了接收端的显示效果。尤其在无线高误码率网络下,丢包在很大程度上是由于链路错误而非拥塞,盲目进入拥塞控制,会导致网络利用率降低,影响接收效果。
发明内容
针对现有技术所存在的上述技术问题,本发明提供了一种基于TCP/UDP混合协议的流媒体无线传输方法,该方法兼顾了数据传输效率以及传输可靠性,较好地实现了音视频数据基于无线网络的高质量传输。
一种基于TCP/UDP混合协议的流媒体无线传输方法,包括如下步骤:
(1)对待传输视频流中的I帧、P帧和B帧以及与视频流同步的音频流均进行数据分割,得到多个数据分片;
(2)对于任一数据分片,对其封装数据包头后形成数据包;依此遍历每个数据分片;
(3)采用UDP协议将所有数据包以初始传输速率v0依次从发送端传输至接收端;当接收端接收到第一个数据包后,接收端通过TCP协议主动与发送端建立控制信道;
(4)接收端根据接收情况通过所述的控制信道向发送端发送控制信息包,发送端根据所述的控制信息包以重传数据包或调节传输速率。
所述的数据包头内依次包含:帧类型、帧尾标记、数据压缩格式、序列号、时间戳和分片长度。
所述的控制信息包内包含命令号、控制信息数据及其数据长度。
所述的步骤(4)中,接收端通过对接收到的数据包进行解析,当t秒时间内接收端接收到的多个数据包连续完整,则接收端通过控制信道向发送端发送控制信息包K1。
所述的步骤(4)中,接收端每接收到x个数据包后,通过对数据包进行解析判断这x个数据包是否连续;若否,则接收端根据缺失数据包的序列号构建控制信息包K2,并通过控制信道向发送端发送控制信息包K2;发送端接收到控制信息包K2后通过对其进行解析,将对应缺失的数据包重传给接收端。
所述的接收端发送完一个控制信息包K2后,若m毫秒时间内还未收到控制信息包K2对应缺失的数据包,则接收端再次通过控制信道向发送端发送控制信息包K2。
所述的接收端向发送端发送n个关于同一缺失数据包的控制信息包K2后,仍未收到该缺失的数据包,则接收端通过控制信道向发送端发送控制信息包K3;若发送端正在发送关于视频流的数据包且接收到控制信息包K3,则发送端停止发送视频流当前帧的数据包,并从当前帧的下一I帧的第一个数据包开始依次向接收端发送数据包。
所述的发送端每接收到一个控制信息包K1后,通过加速以传输速率va向接收端发送数据包,va=(1+k)vi,vi为加速前的传输速率,k为给定的调节系数。
所述的发送端每接收到一个控制信息包K3后,通过减速以传输速率vb向接收端发送数据包,vb=(1-k)vj,vj为减速前的传输速率,k为给定的调节系数。
t、n、m、x均为大于0的自然数。
本发明把UDP协议传输开销小、速度快、效率高但传输不可靠的特点与TCP协议传输开销大、效率低但传输可靠的特点相结合,采用UDP协议把视音频数据用固定长度的数据包头进行封装,同时通过自适应的数据发送速度进行视音频数据包发送,小数据量的数据重传、心跳等控制信息则通过TCP协议传输,从而解决了现有技术中只是利用TCP或UDP单一协议进行数据传输的传输效率与传输可靠无法兼顾的问题,很好地实现了基于无线网络的视音频数据的高质量传输。
附图说明
图1为接收端的工作流程示意图。
图2为发送端的工作流程示意图。
具体实施方式
为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。
如图1和图2所示,一种基于TCP/UDP混合协议的流媒体无线传输方法,包括如下步骤:
(1)对待传输视频流中的I帧、P帧和B帧以及与视频流同步的音频流均进行数据分割,得到多个数据分片;每个数据分片以600个字节为单位,I帧、P帧、B帧或音频流的最后一个数据分片,可以为不足600个字节的数据分片。
I帧表示视频流中的关键帧,P帧表示当前帧与前一帧的差别,B帧表示当前帧与前后两帧的差别。
(2)对于任一数据分片,对其封装数据包头后形成数据包;依此遍历每个数据分片;
数据包的结构如表1所示;数据包头内依次包含帧类型、帧尾标记、数据压缩格式、序列号、时间戳和分片长度,其结构如表2所示:
表1
数据包头 数据分片
表2
Figure BDA00002976179600041
本实施方式中,关于帧类型:若数据分片属于I帧,则帧类型为00;若数据分片属于P帧,则帧类型为01;若数据分片属于B帧,则帧类型为10;若数据分片属于音频流,则帧类型为11。
关于帧尾标记:若数据分片是I帧、P帧、B帧或音频流的最后一个数据分片,则帧尾标记为1;若否,则帧尾标记为0。
关于数据压缩格式:若数据分片属于的视频流或音频流的压缩算法为G711标准,则数据压缩格式为1;2表示G726标准,3表示GSM标准,4表示AMR标准,16表示MPEG4标准,17表示H264标准。
关于序列号:依次将序列号0~65535赋予每个数据包,超出65535的再从0~65535开始赋值。
关于时间戳:为每一个数据包赋予一个时间戳,则当前数据包的时间戳Ci=(ti-t0)T+C0;ti为当前数据包对应的时刻,t0为视频流或音频流的第一个数据包对应的时刻,C0为视频流或音频流的第一个数据包的时间戳,T为比例系数;其中,C0为随机初始化的值,对于视频流T=90000,对于音频流T=8000。
关于分片长度:用于表示数据分片的大小。
(3)采用UDP协议将所有数据包以初始传输速率v0依次从发送端传输至接收端;当接收端接收到第一个数据包后,接收端通过TCP协议主动与发送端建立一可靠且长连接的控制信道,该信道用于传输发送端与接收端通信所需的控制信息。本实施方式中,v0=16384字节/秒。
(4)接收端根据接收情况通过控制信道向发送端发送控制信息包,发送端根据控制信息包以重传数据包或调节传输速率。
控制信息包内包含命令号、控制信息数据及其数据长度,其结构如表3所示:
表3
Figure BDA00002976179600051
本实施方式中,接收端通过对接收到的数据包进行解析,当t秒时间内接收端接收到的多个数据包连续完整,则接收端通过控制信道向发送端发送控制信息包K1(命令号为11,数据长度为0,控制信息数据为null);t设置为1s。
发送端每接收到一个控制信息包K1后,通过加速以传输速率va向接收端发送数据包,va=(1+k)vi,vi为加速前的传输速率,k为给定的调节系数;k设置为0.1。
接收端每接收到x个数据包后,通过对数据包进行解析判断这x个数据包是否连续;若否,则接收端根据缺失数据包的序列号构建控制信息包K2(命令号为21,控制信息数据为缺失数据包的序列号,数据长度为序列号的长度),并通过控制信道向发送端发送控制信息包K2;发送端接收到控制信息包K2后通过对其进行解析,将对应缺失的数据包重传给接收端;x设置为5。
接收端发送完一个控制信息包K2后,若m毫秒时间内还未收到控制信息包K2对应缺失的数据包,则接收端再次通过控制信道向发送端发送控制信息包K2;m设置为100。
接收端向发送端发送n个关于同一缺失数据包的控制信息包K2后,仍未收到该缺失的数据包,则接收端通过控制信道向发送端发送控制信息包K3(命令号为31,数据长度为0,控制信息数据为null);若发送端正在发送关于视频流的数据包且接收到控制信息包K3,则发送端停止发送视频流当前帧的数据包,并从当前帧的下一I帧的第一个数据包开始依次向接收端发送数据包;n设置为3。
发送端每接收到一个控制信息包K3后,通过减速以传输速率vb向接收端发送数据包,vb=(1-k)vj,vj为减速前的传输速率。

Claims (9)

1.一种基于TCP/UDP混合协议的流媒体无线传输方法,包括如下步骤:
(1)对待传输视频流中的I帧、P帧和B帧以及与视频流同步的音频流均进行数据分割,得到多个数据分片;
(2)对于任一数据分片,对其封装数据包头后形成数据包;依此遍历每个数据分片;
(3)采用UDP协议将所有数据包以初始传输速率v0依次从发送端传输至接收端;当接收端接收到第一个数据包后,接收端通过TCP协议主动与发送端建立控制信道;
(4)接收端根据接收情况通过所述的控制信道向发送端发送控制信息包,发送端根据所述的控制信息包以重传数据包或调节传输速率。
2.根据权利要求1所述的流媒体无线传输方法,其特征在于:所述的数据包头内依次包含:帧类型、帧尾标记、数据压缩格式、序列号、时间戳和分片长度。
3.根据权利要求1所述的流媒体无线传输方法,其特征在于:所述的控制信息包内包含命令号、控制信息数据及其数据长度。
4.根据权利要求1所述的流媒体无线传输方法,其特征在于:所述的步骤(4)中,接收端通过对接收到的数据包进行解析,当t秒时间内接收端接收到的多个数据包连续完整,则接收端通过控制信道向发送端发送控制信息包K1,t为大于0的自然数。
5.根据权利要求1所述的流媒体无线传输方法,其特征在于:所述的步骤(4)中,接收端每接收到x个数据包后,通过对数据包进行解析判断这x个数据包是否连续;若否,则接收端根据缺失数据包的序列号构建控制信息包K2,并通过控制信道向发送端发送控制信息包K2;发送端接收到控制信息包K2后通过对其进行解析,将对应缺失的数据包重传给接收端,x为大于0的自然数。
6.根据权利要求5所述的流媒体无线传输方法,其特征在于:所述的接收端发送完一个控制信息包K2后,若m毫秒时间内还未收到控制信息包K2对应缺失的数据包,则接收端再次通过控制信道向发送端发送控制信息包K2,m为大于0的自然数。
7.根据权利要求6所述的流媒体无线传输方法,其特征在于:接收端向发送端发送n个关于同一缺失数据包的控制信息包K2后,仍未收到该缺失的数据包,则接收端通过控制信道向发送端发送控制信息包K3;若发送端正在发送关于视频流的数据包且接收到控制信息包K3,则发送端停止发送视频流当前帧的数据包,并从当前帧的下一I帧的第一个数据包开始依次向接收端发送数据包,n为大于0的自然数。
8.根据权利要求4所述的流媒体无线传输方法,其特征在于:所述的发送端每接收到一个控制信息包K1后,通过加速以传输速率va向接收端发送数据包,va=(1+k)vi,vi为加速前的传输速率,k为给定的调节系数。
9.根据权利要求7所述的流媒体无线传输方法,其特征在于:所述的发送端每接收到一个控制信息包K3后,通过减速以传输速率vb向接收端发送数据包,vb=(1-k)vj,vj为减速前的传输速率,k为给定的调节系数。
CN201310104000.1A 2013-03-28 2013-03-28 一种基于tcp/udp混合协议的流媒体无线传输方法 Active CN103166974B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310104000.1A CN103166974B (zh) 2013-03-28 2013-03-28 一种基于tcp/udp混合协议的流媒体无线传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310104000.1A CN103166974B (zh) 2013-03-28 2013-03-28 一种基于tcp/udp混合协议的流媒体无线传输方法

Publications (2)

Publication Number Publication Date
CN103166974A true CN103166974A (zh) 2013-06-19
CN103166974B CN103166974B (zh) 2015-08-26

Family

ID=48589713

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310104000.1A Active CN103166974B (zh) 2013-03-28 2013-03-28 一种基于tcp/udp混合协议的流媒体无线传输方法

Country Status (1)

Country Link
CN (1) CN103166974B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104618337A (zh) * 2014-12-31 2015-05-13 浙江理工大学 一种基于tcp/udp混合协议的流媒体无线自适应传输方法
CN105049915A (zh) * 2015-06-30 2015-11-11 株洲南车时代电气股份有限公司 一种机车视频数据完整性自动检测方法
CN105119968A (zh) * 2015-07-15 2015-12-02 天脉聚源(北京)教育科技有限公司 一种图片传输方法及装置
CN105391718A (zh) * 2015-11-19 2016-03-09 小红象医疗科技有限公司 一种红外医学影像无线传输的实现方法
CN107707933A (zh) * 2017-10-18 2018-02-16 中国联合网络通信集团有限公司 发送、接收视频流的方法及装置
CN107888865A (zh) * 2017-11-28 2018-04-06 福建星海通信科技有限公司 一种音视频的通信方法、***及装置
CN109450908A (zh) * 2018-11-23 2019-03-08 工业互联网创新中心(上海)有限公司 基于分布式消息的通信方法
CN109861797A (zh) * 2017-12-28 2019-06-07 北京新岸线移动通信技术有限公司 一种数据传输方法和***
CN110602448A (zh) * 2019-08-30 2019-12-20 湖南正申科技有限公司 一种实时多视角音视频传输方法
CN111107398A (zh) * 2019-12-27 2020-05-05 深圳市小溪流科技有限公司 一种流媒体数据的传输方法及接收方法、电子设备
US10959125B2 (en) 2018-12-19 2021-03-23 Industrial Technology Research Institute Collaborative transmission method and transmission device based on UDP and TCP connections
CN112565430A (zh) * 2020-12-08 2021-03-26 上证所信息网络有限公司 一种多市场行情数据在广域网的低时延可靠传输方法
CN115065733A (zh) * 2022-04-14 2022-09-16 中国银行股份有限公司 数据发布与订阅***、数据发布方法、数据订阅方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1578314A (zh) * 2003-07-11 2005-02-09 三星电子株式会社 构建异类终端的多跳网络的装置及方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1578314A (zh) * 2003-07-11 2005-02-09 三星电子株式会社 构建异类终端的多跳网络的装置及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘佳等: "基于TCP和UDP混合协议的远程控制软件的设计与实现", 《计算机应用与软件》, vol. 27, no. 3, 31 March 2010 (2010-03-31), pages 127 - 130 *
张维勇等: "基于UDP协议的视频图像可靠传输的研究和实现", 《合肥工业大学学报(自然科学版)》, vol. 31, no. 5, 31 May 2008 (2008-05-31), pages 699 - 786 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104618337B (zh) * 2014-12-31 2018-01-02 浙江理工大学 一种基于tcp/udp混合协议的流媒体无线自适应传输方法
CN104618337A (zh) * 2014-12-31 2015-05-13 浙江理工大学 一种基于tcp/udp混合协议的流媒体无线自适应传输方法
CN105049915A (zh) * 2015-06-30 2015-11-11 株洲南车时代电气股份有限公司 一种机车视频数据完整性自动检测方法
CN105049915B (zh) * 2015-06-30 2019-01-22 株洲南车时代电气股份有限公司 一种机车视频数据完整性自动检测方法
CN105119968A (zh) * 2015-07-15 2015-12-02 天脉聚源(北京)教育科技有限公司 一种图片传输方法及装置
CN105391718A (zh) * 2015-11-19 2016-03-09 小红象医疗科技有限公司 一种红外医学影像无线传输的实现方法
CN107707933A (zh) * 2017-10-18 2018-02-16 中国联合网络通信集团有限公司 发送、接收视频流的方法及装置
CN107888865A (zh) * 2017-11-28 2018-04-06 福建星海通信科技有限公司 一种音视频的通信方法、***及装置
CN109861797B (zh) * 2017-12-28 2022-07-15 北京新岸线移动通信技术有限公司 一种数据传输方法和***
CN109861797A (zh) * 2017-12-28 2019-06-07 北京新岸线移动通信技术有限公司 一种数据传输方法和***
CN109450908A (zh) * 2018-11-23 2019-03-08 工业互联网创新中心(上海)有限公司 基于分布式消息的通信方法
US10959125B2 (en) 2018-12-19 2021-03-23 Industrial Technology Research Institute Collaborative transmission method and transmission device based on UDP and TCP connections
CN110602448B (zh) * 2019-08-30 2021-10-22 湖南正申科技有限公司 一种实时多视角音视频传输方法
CN110602448A (zh) * 2019-08-30 2019-12-20 湖南正申科技有限公司 一种实时多视角音视频传输方法
CN111107398A (zh) * 2019-12-27 2020-05-05 深圳市小溪流科技有限公司 一种流媒体数据的传输方法及接收方法、电子设备
CN112565430A (zh) * 2020-12-08 2021-03-26 上证所信息网络有限公司 一种多市场行情数据在广域网的低时延可靠传输方法
CN115065733A (zh) * 2022-04-14 2022-09-16 中国银行股份有限公司 数据发布与订阅***、数据发布方法、数据订阅方法
CN115065733B (zh) * 2022-04-14 2024-04-16 中国银行股份有限公司 数据发布与订阅***、数据发布方法、数据订阅方法

Also Published As

Publication number Publication date
CN103166974B (zh) 2015-08-26

Similar Documents

Publication Publication Date Title
CN103166974B (zh) 一种基于tcp/udp混合协议的流媒体无线传输方法
CN104618337B (zh) 一种基于tcp/udp混合协议的流媒体无线自适应传输方法
CN101552660B (zh) 对流媒体数据进行重传、播放的方法、装置及通信***
JP3799326B2 (ja) パケット送信方式及びパケット受信方式
CN105357592A (zh) 一种流媒体自适应传输选择性丢帧方法
CN101179362B (zh) 适宜移动流媒体应用的自动重传请求机制
CN106341738A (zh) 流媒体网络传输的带宽计算方法、服务器端和***
CN103929681B (zh) 一种提升低速网络中rtp视频流处理效率的方法
US20130003579A1 (en) Method and apparatus for parsing a network abstraction-layer for reliable data communication
US20120300663A1 (en) Method and apparatus for retransmission decision making
CN104135486A (zh) 一种基于tcp协议的流媒体无线自适应传输方法
US9781488B2 (en) Controlled adaptive rate switching system and method for media streaming over IP networks
KR20040091688A (ko) 미디어 스트리밍 분배 시스템
CN101656747A (zh) 流媒体数据的传输方法及***
CN101184052A (zh) 一种实现可靠udp传输的拥塞控制方法
CN101909208A (zh) 一种适用于cdma2000的视频无线传输控制方法
CN103414956A (zh) 基于传输控制协议的实时数据传输方法及其***
CN110312147A (zh) 业务数据传输的方法、***与存储介质
CN103607665A (zh) 一种多链路的无线实时视频传输方法及***
CN101826937B (zh) 适用于下一代移动互联网的链路层差错控制***及其方法
CN103354615B (zh) 基于信号强度的直播视频数据传输差错控制方法
EP3547690B1 (en) Real-time video transmission method of multipath network
CN104486690A (zh) 一种基于tcp协议的移动视频传输优化方法
CN104754339A (zh) I帧调整方法、装置及***
CN103428531A (zh) 一种多媒体数据的arq控制方法及***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant