当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要:延迟问题是数据在传输过程中常见的现象,尤其是远距离传输和大数据传输时更为明显,再加上传输的数据格式各不相同,如果采用相同的处理方法,则延迟问题会比较严重。随着广播物联网化进程的加快,包括内容和控制信号等数据量的不断增长,只有解决好延迟问题,才能够保证广播系统的物联网化和流畅运行。

0 引 言

广播是常见的传播方式,也是 20 世纪 20 年代初流行的媒体之一。随着技术的演进,广播从最初的模拟广播到数字广播,再到现在的网络广播,已经经历了三代变革。随着互联网、移动互联网、云计算、大数据和物联网的发展,物联网广播将成为第四代广播系统。在物联网广播系统中,会有大量各类型的数据需要交换,这就对传输提出了较高的要求,要尽量减少延迟时间。

1 物联网广播中的三种延迟现象

在物联网广播系统中,主要存在三种延迟现象,即模数转换延迟、数据传输延迟和数模转换延迟。

(1)模数转换延迟主要包括模拟信号的采样、量化、编码、压缩延迟。

(2)数据传输延迟主要是传输数据的延迟,数据主要分为内容(content)和控制信号两部分。内容有多种格式,且数据量各不相同,为非结构化数据,控制信号一般是结构化数据。

(3)数模转换延迟主要包括解压、解码、后处理、播放等延迟。

在这三类延迟中,模数与数模转换与硬件及其性能相关,可优化的项目并不多。其中传输延迟更容易发生,一旦发生传输延迟,就会表现出卡顿现象或者跳动现象(画面显示出马赛克就是跳动现象之一)。物联网广播系统延迟产生的多个阶段如图 1 所示,内容见表 1 所列。


浅析物联网广播系统中延迟问题的解决

浅析物联网广播系统中延迟问题的解决

2 多管齐下,解决物联网广播内容传输延迟问题针对物联网广播中的内容传输延迟问题,可采用多种方法进行优化或解决。

2.1 UDP 协议+ 校验函数,减少网络资源占用,确保数据完整、一致

互联网主要使用传输层协议实现高质量实时数据连接与传输。根据 OSI 网络标准定义,网络由物理层、数据链路层、网络层、传输层、会话层、表示层和应用层组成。网络结构可简化为链路层、网络层、传输层和应用层用户接口,结构如图 2 所示。


浅析物联网广播系统中延迟问题的解决

TCP 和 UDP 均属于传输层,在进行内容传输时,可以采用 TCP 方案或 UDP 方案,项目中选用 UDP 协议 + 校验函数,可减少网络资源占用并保证数据完整与一致。

采用该解决方案的原因在于 UDP 相比 TCP 具有较好的实时性,工作效率高,适用于对高速传输和实时性有较高要求的通信或广播通信。且 UDP 可以实现一对多传输(每一条TCP 连接只能点到点,UDP 支持一对一、一对多、多对一和多对多的交互通信),减少了三次握手和确认,占用资源更少。UDP 的原则是尽最大努力交付,不保证可靠交付,其可靠性较 TCP 稍差。由于 UDP 可能会出现丢包和传输错误的现象,因此采用校验函数消除内容传输的错误。


UDP 与 TCP 相比,也容易出现丢包现象,但由于当下网络环境一般比较稳定且网速快(基本可达 100 Mbps),因此这一问题可忽略。若出现丢包,可采用校验函数解决。

针对 UDP 包容易丢包和出错的问题,采用校对函数保证传输内容的完整与一致。

设 UDP 包长度为 n B,共有 8n 位,即从0 位至(8n-1)位,采用如下函数对这 8n 位数据求值 :

浅析物联网广播系统中延迟问题的解决

只有传播端传输的 UDP 和终端接收的 UDP 包数据函数值完全相同,才表示在传输过程中没有产生丢包和错误(误码)。

如果传播端和接收端传输数据函数值计算结果不一致,则向传播端发起请求,重新传输并校验。

2.2 优化传输包大小 + 缓冲,实现延迟最小化

UDP 包在传输层不超过 4 kB,而在 Internet 中传输,不应大于 1 400 B。现实场景中进行了多次模拟实验,可以得到优化后的传输包。

横坐标是包的大小,分别为64 B,128 B,512 B,1 024 B等,纵坐标是在相应包大小情况下内容传输的延迟时间,单位为毫秒(ms)。笔者发现,当包较小时,延迟时间较大,当包较小时需要传输的内容会被分为多个包,而将传输内容封装成多个包会消耗较多时间,进行多次处理,且内容传输的次数更多,单片机处理速度低,造成延时负担 ;包较大时,延迟时间也较大,虽然传输过程占用时间不多,但发送和传输内容时会占用多种资源,导致占用更多时间,延迟较大。因此必须采用适合当前网络传输延迟时间的包的大小。包的大小在不同的网络环境中不一样,可由用户自行定义,以保证延迟最小。UDP 包大小与延时时长的关系见表 2 所列,其关系如图 3所示。



浅析物联网广播系统中延迟问题的解决

尽管 UDP 协议延时较小,但在不可靠网络条件下,这仍然是影响传输的重要因素。在这种情况下,通常在终端设置一个缓冲区减小网络的延时。接收到的数据包先存入缓冲区,当缓冲区中达到预定数量的包后,开始解压、解码播放。缓冲区的大小应随网络的变化而改变。所选缓冲区的大小至关重要,若缓冲区过小,一些最终能到达甚至即将到达的数据包可能会被认为丢包而遗弃,增大丢包的可能性 ;若缓冲区设定过大,将存在更大延时,将有可能超过人耳能够感觉的阈值。

浅析物联网广播系统中延迟问题的解决

2.3 针对 VBR音频文件实时重编码,减小传输延迟问题

音频文件比特率是指每秒传送的比特(bit)数,单位为bps,比特率越高,单位时间内传送的数据越多,音频、视频的质量就越好,编码后的文件就越大 ;如果比特率越低,则情况相反。

比特率分为固定比特率(Constant Bit Rate,CBR)和动态比特率或可变比特率(Variable Bit Rate,VBR)。动态比特率可减小文件容量,减轻传输压力。

在传输 CBR 音频文件时,未发现任何卡、顿、抖动(jitter)现象,但在传输 VBR 音频文件时却发现了上述现象。为此,项目采用前端重新编码(recoding)方法。

MP3文件由四部分组成,即 ID3V2+音频数据 +ID3V1+补充信息。其中,最为关键的是音频数据部分,音频数据部分以帧(Frame)的形式存在。MP3 文件结构见表 3 所列。



浅析物联网广播系统中延迟问题的解决

VBR 格式是 XING 公司推出的算法,若选 VBR 格式,那么 MP3 第一个有效帧的数据区中会出现 XING 标志,或INFO,VBRI 标志,表示此 MP3 是 VBR 文件。

在 VBR 格式的 MP3 第一帧中存放 MP3 文件的帧的总个数,比较容易获得播放总时间与 100 B 存放播放总时间。假 设 MP3 歌曲为 10 min,即 600 s,将其分为 n 段,则每两个相邻索引(index)的时间差为(600/n)s,通过该相邻索引即可将所有帧的数据读取并转为 PCM :


浅析物联网广播系统中延迟问题的解决

式中 :i 从0 开始计算,表示第一帧,直至 n-1,共 n 帧 ;bi 表示第 i 帧的比特率 ;ti 表示第 i 帧的时长(部分 MP3 这一值恒定不变)。

在前端重新编码,将其实时重新编码为 PCM 数据,再通过 UDP 包发送,发现卡、顿、抖动等现象消失了,很好地解决了 VBR 格式 MP3 的播放问题。

此外,笔者还尝试了另一种解决方案,即将 VBR 格式的MP3 通过 UDP 包发送到终端,由终端进行解码播放,发现延时较长,与终端的硬件性能和计算能力相关,因此建议将重新编码的工作放在前端进行,效果较好。

3 终端 CDN+人工智能识别,解决远程传输延迟问题

随着物联网广播的发展,其传输的内容越来越多,数据量也越来越大。尽管硬件的处理速度和带宽传输速度已较快,但是根据比尔· 安迪定理可知,硬件性能的提升总会被内容或软件消耗。同时,在网络中还有其他众多内容和信号需要传输,再加之电磁干扰,尤其在通过 2.4G WiFi 进行无线传输时,干扰更为强烈,传输速度远达不到标称量,造成内容传输的延迟。

项目中采用终端 CDN+人工智能识别方案解决这一问题 :将传输的内容分为结构化内容和非结构化内容,其中结构化内容即为背景音乐、国歌、体操音乐、眼保键操音乐、英语听力文件等“程序化的内容”,这些内容往往会重复播放,并已形成文件,一般不通过麦克风输入 ;非结构化内容则是仅播放一次的内容,比如校领导或班主任的晨会内容、平时的通知内容,这些内容一般通过麦克风输入。待终端接收到结构化内容后,在解压、解码、播放的同时将其保存在相应的文件中。

MWCS2018上 SD 协会公布了 SD 7.0 标准内容,包括 SD EXⅠ(SD Express)的全新标识,最高容量已提升到 128 TB,理论最高传输速度将达到 985 MB/s,已超过普通 SATA SSD。项目中采用了 SDXC 标准的 MicroSD 卡(即 TF 卡),其支持最高 2 TB 容量,目前理论上支持 3 种标准(UHS- Ⅲ卡未面世),UHS-Ⅰ的写入速度最高为 95 MB/s,读取速度最高为104 MB/s,保证最低传输速度为 10 MB/s ;UHS-Ⅱ的写入速度最高为 280 MB/s,读取速度最高为 312 MB/s,保证最低传输速度为 30 MB/s。在目前的网络环境情况下,该速度足够写入和读取。

在传输内容前,先计算播放文件的大小,然后在终端的SD 中寻找与播放文件大小相同的文件,接着对比文件六分之一处 8 个字节部分、四分之一处 8 个字节部分、二分之一处8 个字节部分。若完全相同,则取得传输端播放时间,并在播放时间到达时,播放终端 SD 卡中的文件,以减小延迟 ;如果有多个大小相同的文件,则找到第一个“完全相同”的文件,并播放该文件 ;如果找不到相同大小的文件或找不到“完全相同”的文件,则从播放端接收传输内容,并当终端接收到这些内容后,在解压、解码、播放的同时将其保存在相应的文件中。


计算方法如下:

(1)取得文件的长度 l,然后将此文件的长度 l 除以 8,若不能整除,则舍去余数,取模 L1=[l/8] ;

(2)从 L1*7 处取 8 个字节,记为 L1-8,将其转为 10 进制数,并对其取常用对数 lg,记为 lg(L1-8);

(3)从 L1*5 处取 8 个字节,记为 L1-6,将其转为 10 进制数,并对其取常用对数 lg,记为 lg(L1-6);

(4)从 L1*3 处取 8 个字节,记为 L1-4,将其转为 10 进制数,并对其取常用对数 lg,记为 lg(L1-4);

(5)从 L1 处取 8 个字节,记为 L1-2,将其转为 10 进制数,并对其取常用对数 lg,记为 lg(L1-2)。将 lg(L1-8),lg(L1-6),lg(L1-4)和 lg(L1-2)相加:lg(L1- 8)+lg(L1-6)+lg(L1-4)+lg(L1-2),得出数值进行比较,仅在得出数值相等时才表明文件“完全相同”。

4 结 语

通过本文所述方法,较好地解决了物联网广播中的内容传输延迟问题,希望能够为同行提供参考。





本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

随着科技的飞速发展,电子设备间的连接与数据传输变得越来越重要。Type-C转接头作为连接各种设备的桥梁,其性能与标准也不断升级。本文将详细探讨Type-C转接头2.0与3.1之间的区别,帮助读者更好地理解和选择适合自己的...

关键字: 电子设备 数据传输 Type-C

随着科技的不断进步,移动通信技术也迎来了飞速的发展。从最初的2G时代到如今的5G时代,每一次技术的升级都为我们带来了更快捷、更便利的通信体验。作为最新一代的移动通信技术,5G以其超高速率、低时延和大连接数的特点,正逐步改...

关键字: 移动通信 数据传输 5G

随着信息技术的飞速发展,数据通信作为连接世界的桥梁,其重要性日益凸显。为了确保数据通信的高效、稳定和可靠,我们需要关注一系列关键的技术指标。本文将深入解析数据通信的主要技术指标,并探讨其前沿发展。

关键字: 数据通信 数据传输

船载通信系统是现代船舶中不可或缺的重要组成部分,它为船舶提供了与外界通信和数据传输的渠道。船载通信系统行业设计方案涵盖了多个方面,包括系统架构、硬件设备、软件系统、通信协议等。本文将详细介绍船载通信系统的行业设计方案。

关键字: 船载通信 数据传输 通信协议

12月22日,由广州日报主办的2023年高质量发展年度峰会在广州举行。OPPO凭借持续创新和技术积累,入选2023年广东创新TOP100榜10强,展现出在科技创新领域的领先实力。

关键字: 智能手机 数据传输

短距离无线通信技术是一种利用无线电波进行数据传输的技术,适用于距离较短、对传输速率要求不高的场景。近年来,随着物联网、智能家居等技术的不断发展,短距离无线通信技术也得到了广泛应用。本文将对常见的短距离无线通信技术进行介绍...

关键字: 无线通信 数据传输 物联网

数字通信是指以数字信号作为载体来传输消息,或用数字信号对载波进行数字调制后再传输的通信方式。它可传输电报、数字数据等数字信号,也可传输经过数字化处理的语声和图像等模拟信号。在数字通信中,信号通常是经过抽样、量化和编码后形...

关键字: 数字通信 数据传输

通信模块的作用是实现数据传输和通信。通信模块可以将数据从一台设备传输到另一台设备,或者在一个设备内部的不同部件之间进行传输。通信模块的应用非常广泛,包括工业自动化、电力系统、安防监控、智能家居、医疗设备、交通工具等领域。

关键字: 通信模块 数据传输

串口通信,也称为串行通信,是一种数据传输方式,它按照二进制位(bit)顺序进行数据传输。在串口通信中,数据从一个设备(发送器)的串口发送到另一个设备(接收器)的串口,这两个设备通过共享的通信通道进行通信。

关键字: 串口通信 数据传输

日前,智慧芽发布《2023年度中国科创力坐标报告》和《2023年度全球科创力坐标》,OPPO凭借持续创新和技术积累,入选2023年全球科创领袖TOP100、中国科创领袖TOP100榜单,展现出在科技创新领域的领先实力。

关键字: OPPO 数据传输 中国科创领袖TOP100
关闭
关闭