物联网网络编程、Web编程综述
导读: 本文是基于嵌入式物联网研发工程师的视觉对网络编程和web编程进行阐述,网络编程和web编程对于绝大部分嵌入式物联网工程师来说是一块真空领域。
本文是基于嵌入式物联网研发工程师的视觉对网络编程和web编程进行阐述。对于专注J2EE后端服务开发的童鞋们来说,这篇文章可能稍显简单。但是网络编程和web编程对于绝大部分嵌入式物联网工程师来说是一块真空领域。
的确,物联网研发应该以团队协作分工的方式进行,所以有嵌入式设备端、网关、web前端、APP、后端开发等专属岗位。作为系统架构师,自然需要掌握各种岗位的关键技术。作为嵌入式工程师,掌握网络编程、web编程,能够极大地拓展自己的视野和架构思维,能够主动地对系统的各种协议和应用场景提出优化的见解,而不仅仅是接受任务摊派。至少,能够在不需要依赖后端工程师的情况,能够快速搭建一个物联网demo系统。因此,掌握一些基本的网络编程、web编程技能,对于提升物联网研发工程师的开发能力是非常重要的。
本文可以视为嵌入式企鹅圈发布微信Wifi 接入解决方案的首篇原创技术分享。微信Wifi接入方案系列技术分享将于2016年春节后陆续公开,敬请关注。本篇文章对物联网涉及的知识进行概述,之后的文章再进行详细的指导开发。
一、 OSI七层模型和TCP/IP四层模型
OSI七层模型是网络协议的理论研究模型,或者可以称为理想的模型,而TCP/IP四层模型才是事实标准,是已经被广泛使用的模型。两者之间的关联图示如下:
对于两种模型的解读,我想说的是作为开发人员不必强行去理解各层的含义,例如会话层负责什么,表示层负责什么。当你在开发过程中没有涉及到这些层次所解决的问题的时候,你想理解并记住是比较困难的。但是,当你遇到问题并需要去解决的时候,这时你一定会对这些层次的职责非常清晰。
衡量一个物联网平台或者协议是否实用的非常关键的因素是它提供的消息触达能力,其直接影响物联网应用开发。所以,我们从消息触达能力去分析TCP/IP这个事实标准模型。我们设想以下场景,并进行分析。
1.网络接口层。路由器1和wifi音箱、空调、热水器组成一个家庭局域网,其使用wifi(802.11)协议进行通信。该协议定义了物理信号、数据帧格式、丢包重发机制、流量控制等等。这些都是网络接口层的任务。还有,多个设备共享信道,同时发数据会产生冲突,它是怎么解决的,这也是网络接口层的内容。其实,物联网工程师不必在意这些内容。因为wifi物理信号方面的内容是由wifi芯片厂商负责,而wifi单芯片(wifi+SOC)则会提供SDK包并提供SOCKET编程接口了。所以,我们职责的重点是关注网络层以上的编程开发知识。
2.网络层,即IP协议,最基础的认识是每个IP对应一个物联设备、手机或者一个后方服务器。原则上一个网卡对应一个IP,如图中wifi音箱、wifi热水器均有一个独立的IP。网络之间的通信都是基于IP进行的,网络包会通过路由器最终送到目标IP所对应的设备上。
Wifi音箱等家庭设备加入家庭局域网,其实是各获得一个局域网IP,192.168.*.*,包括路由器1也有一个局域网地址,但是路由器1还有一个互联网IP。只有路由器的互联网IP才能被外界所获知,外界是不能主动获知局域网IP具体对应哪个设备的,只有路由器1才知道,因此所有对外发送的数据包的源IP都是路由器1的互联网IP,外界发送给设备的数据包的目标IP也是路由器的互联网IP。
- 物联网抵御网络威胁如何实施? 2018-04-03
- 网络犯罪多元化爆发,物联网、共享经济成黑色产业重灾区 2018-01-25
- 哪些编程语言和操作系统更适合物联网? 2017-05-25
- 如何为你的物联网项目选择编程语言? 2017-05-08
- 物联网时代软件将“吃掉”SIM卡 软银开发可远程编程eSIM平台 2017-04-01
图片新闻
- 即日-5.15 【有奖问答】 NI半导体测试应用有奖问答 立即参加>>
- 5月8日 Dialog GreenPAk混合信号技术研讨会 参会有礼>>
- 5月17日 2018消费电子自动化测试研讨会昆山站 参会有礼 >>
- 5月30日 OFweek2018中国高科技产业投融资论坛暨项目路演会 立即报名>>
- 8.30-9.1 OFweek(第二届)中国人工智能产业大会 抢免费票>>
- 8.30-9.1 OFweek 2018中国(上海)国际人工智能展览会 预登记 索免费门票>>
- 物联网
- 猎头职位
- 视觉工程师广东省/深圳市
- 技术研发总监广东省/深圳市
- 高级电气工程师广东省/深圳市
- 封装工程师北京市/海淀区
- 光模块结构工程师(无锡)江苏省/无锡市
- 光模块光学工程师 (无锡)江苏省/无锡市
- 光器件物理工程师北京市/海淀区
- 销售总监(光器件)北京市/海淀区
- 电路设计工程师(金华市)浙江省/金华市
- 结构工程师(金华市)浙江省/金华市
我来说两句
请输入评论
请输入评论/评论长度6~500个字
暂无评论
暂无评论