coap 返回版本信息_CoAP协议学习笔记

CoAP是一种应用层协议,运行于UDP协议之上,非常小巧,最小的数据包仅4字节。

CoAP协议定义

CoAP协议的交互模型与HTTP的客户端/服务端模型类似。然而,在M2M的交互场景中,CoAP的目标是设计一个通用的网络协议,满足受限环境的特殊需求,特别考虑了能源、楼宇自动化和其他M2M应用。

需要注意的是CoAP并不能代替HTTP协议,但是对于那些小设备(例如CPU为8bit的单片机,内存32Kb,Flash 256Kb)而言CoAP的确是一个更好的解决方案。

CoAP协议特点

满足受限环境下M2M的需求的协议

CoAP协议基于UDP

异步消息交换

轻量级的头部,且解析复杂度低。

支持URI和Content-Type

能实现简单的缓存和数据代理

无状态的HTTP映射,可以构建代理服务器,使CoAP资源可以用HTTP协议访问,也可以使HTTP接口实现于CoAP协议之上

支持DTLS

协议模型

逻辑上分为Messages和Requset/Respones两层,R/R通过Messages承载,从封包上不体现这种层次结构

DTLS可选,由于基于UDP,支持组播。

特征

基于UDP的类似HTTP的Client/Server交互模型

Client发送Request(携带不同method)请求对资源(通过URI表示)的操作,Server返回Response(携带资源的representation)和状态码

在M2M应用场景,Endpoint实际同时是Server和Client

协议定义了以下几个角色:

Endpoint:CoAP协议的参与方

Sender(发送方):发出Messages的Endpoint

Recipient(接收方):相当于接收Message的Endpoint

Client(客户端):发出Request的Endpoint,Response的destination Endpoint

Server(服务端):Request的destination,Response的source Endpoint

Origin Server(源服务端):resource所在的ServerElective(存储或者创建一个给定资源的服务端)

Intermediary(媒介):既作为Server又作为Origin Server的Client的Endpoint。可以理解为Proxy的统称

Proxy:一种Intermediary,完成Request前转,Respone中继,执行缓存,namespace转换,协议转换等功能的Endpoint,基于前转请求架构中的位置,协议定义了forward-proxy和reverse-proxy两种代理

Forward-Proxy(正向代理):被Client用于代表Client执行Request,并完成任何必要的转换。

Reverse-Proxy(反向代理):代表一个或多个其他服务器并代表它们满足请求,执行任何必要的翻译的端点。 与转发代理不同,客户端可能不知道它正在与反向代理通信; 反向代理接收请求,就像它是目标资源的源服务器一样。

CoAP-to-CoAP Proxy:映射CoAP request到CoAP request

Cross-Proxy:跨协议代理,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值