socket简单理解
Zigbee网络
在智能家居系统中,WIFI可以用于大数据量通信,适合用于摄像头。尽管WIFI在通信速率上本可以做为所有节点间的通信手段,但考虑到WIFI用于TCP/IP的通信,而使用这样复杂的协议栈对于处理器要求比较高,另外加上功耗比较高,所以在慢速无线通信的时候,可以采用其他相对简单的无线通信。除了ISM频段,其他频段需要许可证,用于专用的通信,所以只可以在ISM频段下选择非WIFI的另外一种通信方式。
目前最常用的无线通信方式除了WIFI外主要有Zigbee/蓝牙等。Zigbee和蓝牙尽管都适合低速率传输,但Zigbee有更加强大的网络拓扑功能,而蓝牙目前最主要用来一对一的通信。
Zigbee简介
Zigbee(IEEE802.15.4)技术是2000年以来建立起的一种采用跳频技术和扩频技术来实现的无线通信技术,采用2.4G频段,该频段属于ISM。
IEEE802.15.4标准只是规定了物理层(PHY)和媒体接入控制层(MAC),但设计PHY和MAC的时候考虑到了之后协议扩展的需要,而zigbee在此基础上再加入了上层协议,包括网络层和应用层。
Zigbee网络
除了最简单的一对一通信之外,zigbee实现了各种网络结构,所有的zigbee网络中,都有唯一的一个核心,称之为协调器。除了协调器之外,还有一些其他的成员,根据网络中其他成员与协调器之间关系,可以分为星型网络,以及树型网络,还有最复杂的网格网络。
星型网络:所有的非协调器网络成员只与协调器之间直接通信,成员之间的通信通过协调器转发。
树型网络:整个网络拓扑是一个树型,网络中两个网络成员之间通信可能需要别的成员进行数据转发。因为为树型,任何两个非协调器成员之间的通信路径单一。
网格网络:网络拓扑是一个连通图,但可能不是树型,于是可能存在两个点的通信路径不唯一。
对于树型网络和网格网络,称参与通信数据转发的非协调器成员叫路由器,而不参与通信数据转发的成员叫节点。
Zigbee的优点以及缺点
Zigbee的优点主要有如下几点:
低功耗:引入休眠和唤醒机制。
低成本:Zigbee协议栈实现简单,无专利费的门槛。
网络容量大:当采用网格网络组网的时候,整个网络最大的规模可以到60000以上。一个区域内可以同时存在最多可达100个不同的Zigbee网络
安全性:采用AES 128位对称加密算法保障用户通信安全,非对称加密计算复杂度底,使用单片机完全可以完成。
通信可靠:动态组网,网络拓扑结构可能随时自动调整。
当然Zigbee也有缺点,缺点主要有如下几点:
传输距离小:Zigbee网络有效传输距离一般10米~75米,这个距离使得覆盖面积较小。用功率放大器可以扩大覆盖范围。
数据传输速率低:链路层上的速率只有200Kb/s,在此基础上,还有帧头、应答、重传以及信道竞争等等,所以实际的速率是很低的。
为何采用Zigbee
Zigbee的通信实现简单,协议栈可以在一个主频只有50MHz,RAM只有8k的处理器上运行,对硬件的要求很低。Zigbee动态组网,随时可以加入新的节点到网络,组网方便。Zigbee对于普通不带路由功能的节点通信采用休眠/唤醒机制,大多数情况下硬件可以处于休眠状态,功耗可以很低,两节5号电池可以使用半年之久。
考虑到智能家居系统之中,一些节点可能需要电池去供电,功耗是一个很重要的参考因素。大多数的通信在于节点状态汇报,网关发出控制指令等,而这些通信数据量都很低。从而,设计智能家居系统的时候,可以考虑使用zigbee作为智能网关与各个节点之间通信的手段,采用网格网络比星型网络更有优势。在Zigbee网格网络中,路由器因为随时需要通信转发,所以无法休眠,耗电量相对较大,设计时可以考虑使用在一些外部供电的节点上,例如电表抄表、智能插座;而不带路由功能的普通节点可以使用在一些电池供电的手持设备,例如家电控制模块。整个Zigbee网格网络的协调器由智能网关担当。
socket简单理解的更多相关文章
- php socket 简单理解
以下内容转自:https://www.cnblogs.com/loveyoume/p/6076101.html 和 https://www.cnblogs.com/WuNaiHuaLuo/p/6107 ...
- TCP/IP、Http、Socket 简单理解
转自:http://blog.csdn.net/guyan0319 https://blog.csdn.net/guyan0319/article/details/79404216 一. 什么是TCP ...
- http、tcp和socket简单理解
1.Http属于应用层,主要解决如何包装数据. 2.Tcp属于传输层,主要解决数据如何在网络上传输. 3.Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API) ...
- [转]简单理解Socket
简单理解Socket 转自 http://www.cnblogs.com/dolphinX/p/3460545.html 题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公 ...
- 简单理解php的socket连接
socket建立套接的过程图: 首先了解socket 几个主要函数: socket的关键函数1: socket_create($net参数1,$stream参数2,$protocol参数3) 作用:创 ...
- linux中socket的理解
对linux中socket的理解 一.socket 一般来说socket有一个别名也叫做套接字. socket起源于Unix,都可以用“打开open –> 读写write/read –> ...
- Socket 的理解及实例
Socket 的理解及实例Socket 的理解TCP/IP要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Intern ...
- .NET 跨平台RPC框架DotNettyRPC Web后台快速开发框架(.NET Core) EasyWcf------无需配置,无需引用,动态绑定,轻松使用 C# .NET 0配置使用Wcf(半成品) C# .NET Socket 简单实用框架 C# .NET 0命令行安装Windows服务程序
.NET 跨平台RPC框架DotNettyRPC DotNettyRPC 1.简介 DotNettyRPC是一个基于DotNetty的跨平台RPC框架,支持.NET45以及.NET Standar ...
- python socket 的理解(1)
前言 socket的用法简单,但里面的概念有点模糊,记录自己本人的一点理解. socket层结构图 注意,从此图中看出socket处于tcp和应用层之间.那么它代表啥意思呢?简明的说,数据的传输都是底 ...
随机推荐
- MySQL性能优化之max_connections配置
MySQL的最大连接数,增加该值增加mysqld 要求的文件描述符的数量.如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接数量,当然这建立在机器能支撑的情况下,因为如果连接数越多,介于M ...
- js 类似于移动端购物车删除,左移动删除
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- bat2exe 就是这么简单 白研究半天VC++了
bat2exe 就是这么简单 白研究半天VC++了 结果:bat2exe编译的执行文件会被杀毒软件查杀.
- velocity(vm)模板引擎基本语法
for循环 #foreach($acc in $!{param.tools}) #set($count = $count + 1) <li custom-data="$!{acc.or ...
- java自动机器人自动生成修姓名工具类
public class GenerateName { public static String getName() { Random random = new Random(); String[] ...
- SQLServer:查询所有外键关联表信息
--从左到右分别是: 外键约束名,子表名,外键列名,父表名 --use demodtcms--外键信息select fk.name fkname , ftable.name ftablename, ...
- JAVA基础——设计模式之观察者模式
观察者模式是对象的行为模式,又叫发布-订阅(Publish/Subscribe)模式.模型-视图(Model/View)模式.源-监听器(Source/Listener)模式或从属者(Dependen ...
- jq进度条
<!doctype html><html><head><meta charset="utf-8"><title>JQue ...
- CF919F A Game With Numbers
题目:(luogu翻译错的很多) Alice和Bob玩游戏,每人有8张牌,牌的值为0~4.每一轮当前玩家选择自己的牌A和对手的牌B,然后将A的值变为( A + B )%5,其中A和B都不是0. 当一个 ...
- Java权限管理(授权与认证)
CRM权限管理 有兴趣的同学也可以阅读我最近分享的:Shiro框架原理分析 (PS : 这篇博客里面介绍了使用Shiro框架的方式实现权限管理) https://www.cnblogs.com/y ...