通信协义android
1、IP:网络层协议。
2、 转输层协议:
2.一、TCP:(TCP,Transmission Control Protocol )是一种面向链接的、可靠的、基于字节流的传输层通讯协议,由IETF的RFC 793定义
2.二、UDP: (UDP,User Datagram Protocol) 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无链接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。浏览器
3、应用层协议:
3.一、HTTP:应用层协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为普遍的一种网络协议。全部的WWW文件都必须遵照这个标准。缓存
3.二、MQTT:MQTT(Message Queuing Telemetry Transport)协议是为大量计算能力有限,且工做在低带宽、不可靠的网络的远程传感器和控制设备通信而设计的协议,它具备如下主要的几项特性:
1)、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合;
2)、对负载内容屏蔽的消息传输;
3)、使用 TCP/IP 提供网络链接;
4)、有三种消息发布服务质量:
“至多一次”,消息发布彻底依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于以下状况,环境传感器数据,丢失一次读记录无所谓,由于不久后还会有第二次发送。
“至少一次”,确保消息到达,但消息重复可能会发生。
“只有一次”,确保消息到达一次。这一级别可用于以下状况,在计费系统中,消息重复或丢失会致使不正确的结果。
5)、小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以下降网络流量;
6)、使用 Last Will 和 Testament 特性通知有关各方客户端异常中断的机制;RSMB是一个简单的MQTT代理;一样由IBM提供,其查看地址是:http://www.alphaworks.ibm.com/tech/rsmb安全
3.三、XMPP:可扩展通信和表示协议 (XMPP) 可用于服务类实时通信、表示和需求响应服务中的XML数据元流式传输。XMPP以Jabber协议为基础,而Jabber是即时通信中经常使用的开放式协议。 (在android客户端使用Push推送时,应该使用AlarmManager来实现心跳功能,使其真正实现长链接)。服务器
3.四、WEBSOKET:WebSocket协议支持(在受控环境中运行不受信任的代码的)客户端与(选择加入该代码的通讯的)远程主机之间进行全双工通讯。用于此的安全模型是Web浏览器经常使用的基于原始的安全模式。 协议包括一个开放的握手以及随后的TCP层上的消息帧。 该技术的目标是为基于浏览器的、须要和服务器进行双向通讯的(服务器不能依赖于打开多个HTTP链接(例如,使用XMLHttpRequest或<iframe>和长轮询))应用程序提供一种通讯机制。网络
3.五、CoAP:CoAP是受限制的应用协议(Constrained Application Protocol)的代名词。在最近几年的时间中,专家们预测会有更多的设备相互链接,而这些设备的数量将远超人类的数量。在这种大背景下,物联网和M2M技术应运而生。虽然对人而言,链接入互联网显得方便容易,可是对于那些微型设备而言接入互联网很是困难。在当前由PC机组成的世界,信息交换是经过TCP和应用层协议HTTP实现的。可是对于小型设备而言,实现TCP和HTTP协议显然是一个过度的要求。为了让小设备能够接入互联网,CoAP协议被设计出来。CoAP是一种应用层协议,它运行于UDP协议之上而不是像HTTP那样运行于TCP之上。CoAP协议很是的小巧,最小的数据包仅为4字节。
3.六、RESTful HTTP:REST 指的是一组 架构约束条件和原则。知足这些约束条件和原则的应用程序或设计就是 RESTful。Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每一个请求都必须包含理解请求所必需的信息。若是服务器在请求之间的任什么时候间点重启,客户端不会获得通知。此外,无状态请求能够由任何可用服务器回答,这十分适合 云计算之类的环境。客户端能够缓存数据以改进性能。架构
认证协议框架
一、OAuth2.0:OAuth2.0是OAuth协议的下一版本,但不向后兼容OAuth 1.0即彻底废止了OAuth1.0。 OAuth 2.0关注客户端开发者的简易性。要么经过组织在资源拥有者和HTTP服务商之间的被批准的交互动做表明用户,要么容许第三方应用表明用户得到访问的权限。同时为Web应用,桌面应用和手机,和起居室设备提供专门的认证流程。2012年10月,OAuth 2.0协议正式发布为RFC 6749。性能
二、RADIUS:RADIUS:Remote Authentication Dial In User Service,远程用户拨号认证系统由RFC2865,RFC2866定义,是目前应用最普遍的AAA协议。AAA是一种管理框架,所以,它能够用多种协议来实现。在实践中,人们最常使用远程访问拨号用户服务(Remote Authentication Dial In User Service,RADIUS)来实现AAA。RADIUS是一种C/S结构的协议,它的客户端最初就是NAS(Net Access Server)服务器,任何运行RADIUS客户端软件的计算机均可以成为RADIUS的客户端。RADIUS协议认证机制灵活,能够采用PAP、CHAP或者Unix登陆认证等多种方式。RADIUS是一种可扩展的协议,它进行的所有工做都是基于Attribute-Length-Value的向量进行的。RADIUS也支持厂商扩充厂家专有属性。
ui