移动网下络智能设备数据节流探讨的论文

时间:2024-08-27 22:33:13
移动网下络智能设备数据节流探讨的论文

移动网下络智能设备数据节流探讨的论文

随着智能家居概念被炒热,市场上井喷出很多智能设备,然而要实现真正的智能硬件生态圈,无论在市场还是技术层面,仍然有很长的一段路要走。在众多的智能设备中,有一部分是通过家庭Wi-Fi接入互联网的,有一部分则是通过移动网络(GPRS、3G、4G)再接入互联网的,特别是一些可穿戴设备。与基于Wi-Fi的设备很不同,移动网络是按照流量计费的,通讯费用就成为了这类产品在设计时必须考虑的一个重要方面。虽然移动网络的资费越来越便宜,但是智能设备的使用也并非一天半天,如果使用了一种简单粗暴的通讯方案,日积月累,将会产生很多没有实际意义的流量,浪费资源和金钱,最终影响产品在市场上的竞争力。

1数据筛选

在数据进行传输之前,智能硬件需要对数据进行预处理,判断需要传输哪些数据,例如一些工业设备的运行状态、可穿戴设备的一些人体数据等等。在业务系统设计的时候,就必须要对数据进行分级分类。哪些是必须要传的,哪些是在紧急情况下可以舍弃的,例如一些冷冻冷藏的设备,停机故障的数据是最重要的,因为这类设备一旦停机,可能会使得冷冻的食品、药品或者名贵红酒变坏,导致客户重大的损失。再进一步,根据需要,智能硬件可以将一些底层数据加以统计再进行传输,例如智能手环,可以将客户的步行里程统计一段再上传到云平台记录,而不是将客户的每一步都实时传输上去。更进一步,可以将定时传输这种传统模式改为有变化再传输,例如云平台想监控一个传感设备的温度曲线,可以在温度发生变化的时候才传输数据,而不是不管温度是否有变化每隔几秒就将温度往云平台传输。

2数据压缩

所谓数据压缩,是指减少数据量以减少存储、传输的空间的一种技术方法,并且在这过程中不丢失数据信息。在智能家居系统中,通讯的两端设备(例如智能设备与云平台、智能设备与APP、云平台与APP之间),在往对方发送数据前,可考虑先对数据进行压缩,接收方在收到数据后,再对数据进行解压。数据的压缩算法有很多,例如LZW压缩算法、Huffman压缩算法、Rice压缩算法、RLE压缩算法、LZ77等等。这些算法都各有优缺点,究竟需要如何选择?首先,要考虑的是数据特征,如果需要传输的数据,出现的字符类型少,而且很明显地有些字符的频率很高,则适合使用以频率特征为压缩原则的算法,例如Huffman、RLE等。如果有比较多字符串重复的,则可以考虑用窗口式的压缩算法,例如LZ77等。但是,如果发现要传输的数据量较少,或者重复性不高,那么就无需再使用压缩算法,以免产生更多的数据浪费。其次,要考虑算法所占用的资源情况,因为智能硬件为了能走进普通老百姓的家里,吸引更多消费者购买,使自己在市场上更有竞争力,往往会选择低成本的方案。也就是说,智能设备的硬件资源,往往只能满足其功能性的需求,CPU、RAM的资源都非常有限。所以应该根据硬件的资源情况,选取代码量少,占用资源少的压缩算法。以Huffman为例,Huffman算法首先统计字符出现的频率,然后再用这个频率作为一个权值,构建一个Huffman二叉树,频率高的字符会在树的上层,频率低的会在树的下层。然后就是通过遍历二叉树的方式对所有字符进行编码。最终的`结果是,出现频繁的字符,能用较少的位来表示,出现不频繁的字符用较多的位来表示,从而达到节省空间的效果。在将这个算法写到单片机的过程中,会发现遇到几个问题,首先是建树,树这个概念在单片机的编程中非常少用,一般嵌入式开发人员习惯使用数组,比较好控制,并且数组的空间是预先就分配好的。而Huffman树则是一个动态生成的树,编程时对其空间很难做出准确评估,这样就必然导致预申请很多空间以做准备,其结果往往会比数组要的空间多。另外,字符频率的统计以及字符编码,都需要耗费CPU时间及额外的资源,所以,Huffman算法并不太适合用在低成本的智能硬件中。所以,选取什么算法,需要综合考虑压缩比、复杂度以及硬件资源这几个维度。参考文献[1]严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,1997.[2]谢希仁.计算机网络[M].第5版.北京:电子工业出版社,2008.

3合适的传输协议

用于智能设备的数据传输协议,目前使用较多的有三种:HTTP、TCP和UDP。按照ISO七层模型划分(自底向上:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层),HTTP是属于应用层的,而TCP和UDP则属于传输层的,从网络数据包的角度来看,数据包是自下而上层层封装的,所以在同等内容的情况下,HTTP会比TCP和UDP占用较多的资源。而TCP是可靠的、有连接的协议,需要三次握手,UDP则不需要,所以在这个角度上看,UDP占用的资源比TCP要少。但是在选择协议的时候,占用的资源并不是唯一的度量,还要考虑并发量、功能乃至产品的生命周期。如果一个系统并发量低、功能简单、周期短,则可以考虑用TCP,毕竟使用UDP还需要自己实现重发等机制。但一个系统并发量很高,则考虑用UDP,因为TCP的连接性会产生很多长连接,占用网络带宽、防火墙等资源。一般情况下TCP会比UDP少20%左右的并发数,但具体情况会受到业务系统程序的影响。

4总结

在智能设备的设计中,特别是基于移动网络的设备,需要尽量节省流量,使产品有更大的实用性。在考虑数据流量时,按照数据筛选、数据压缩、传输协议这几个步骤进行评估,站在整套系统的角度去综合权衡数据的问题,最终选取出最适合的一个数据节流的方案。

《移动网下络智能设备数据节流探讨的论文.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式