在(三)中,我们分析了,host与单从机slave的通信
本文将介绍一主多从的情况
先由本菜鸡脑补一下人物:女王大人和七个葫芦娃的故事。
所以,女王大人就是host
七个葫芦娃就是7个slave
女王大人的工作就是询问七个葫芦娃的工作情况
大娃的工作:衣(slave)
二娃的工作:食(slave)
三娃的工作:住(slave)
四娃的工作:行(slave)
五娃的工作:给女王大人讲笑话(slave)
六娃的工作:在小黑板上写大娃到五娃的工作状态(display显示)
七娃的工作:给本菜鸡通风报信,报告女王大人和七个葫芦娃的状态(网络上传)
女王大人把葫芦娃召集起来,给他们分配的任务
女王大人:“大娃衣服做好没有?”大娃:“搞定,女王大人”
女王大人:“二娃吃的做好没有?”二娃:“搞定,女王大人”
女王大人:“三娃房子修好没有?”三娃:“搞定,女王大人”
女王大人:“四娃车能出行吗?”四娃:“搞定,女王大人”
女王大人:“五娃讲个笑话?”五娃:“搞定,女王大人”
女王大人:“六娃小黑板写好没有?”六娃:“搞定,女王大人”
女王大人:“七娃给菜鸡报告我们今天的情况没有?”七娃:“搞定,女王大人”
就这样,每天女王大人询问一次七个葫芦娃工作情况。
上述就是最简单的单host与多slave的相互通信
可是有一天,女王大人询问大娃:“大娃衣服做好没有?”大娃:“搞定,大王”
“不要叫我大王,要叫我女王大人”
当大娃发送了非协议的数据给女王大人,该数据将会失效
在工业环境中,各种电磁干扰会导致数据在传输过程中发生异常
此时需要丢掉该数据,由host重新发送询问请求,
萌新可以参考阿里物联网套件sdk
该sdk有智能硬件与服务器通信的源码
当智能硬件没能与服务器连接上时,也会有重发机制
女王大人与葫芦娃之间的通信
也必须要有校验机制
否则,女王大人也无法判定大娃发来的数据是否正确
常见的校验有:求和校验,crc,md5等。
有一天,隔壁老王来到屋外
偷听女王大人和葫芦娃之间的通信
女王大人发现后决定做一个加密处理
得知隔壁老王不懂英语,于是通信使用英文
女王大人:“big gourd,how is clothes?”大娃:“clothes is ok,your grace”
于是隔壁老王一脸懵逼了
常见的加密方法有:aes,rsa
因此:当设计485网络架构的时候
要考虑:数据校验,数据重发,数据加密等因素
本系统涉及
数据传输求和校验
数据三次重发
数据解析处理