【技术实现步骤摘要】
一种MQTT协议仿真方法及仿真设备
本专利技术涉及仿真
,尤其涉及一种MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输)协议仿真方法及仿真设备。
技术介绍
目前测试MQTT服务端(Broker,也称代理)主要有两种方式,一种是使用真实的MQTT客户端(Client)与服务端对接;另一种是使用MQTT服务端配套的MQTT客户端与MQTT服务端仿真对接测试。其中采用第一种方式时,由于需要使用大量的IoT(TheInternetofThings,物联网)实体设备接入网络,造成组网复杂、成本高;而采用第二种方式时,由于仿真客户端基于操作系统的协议栈实现的,在仿真过程中需要读取内核空间中的协议栈,由此会给CPU带来额外时间消耗,降低了仿真客户端的数据吞吐能力。
技术实现思路
本专利技术提供了一种MQTT协议仿真方法及仿真设备,可以提高仿真效率,降低仿真成本。第一方面,本专利技术提供了一种MQTT协议仿真方法,仿真设备设有用户空间和网络适配器;所述方法包括:所述仿真设备获取仿真测试的序列化命令,并为多个MQTT客户端实例配置所述序列化命令;所述仿真设备控制所述多个MQTT客户端实例使用所述用户空间的仿真协议栈对所述序列化命令进行打包,得到仿真报文;所述仿真设备控制所述多个MQTT客户端实例将所述仿真报文传输给所述网络适配器,并由所述网络适配器发送给MQTT服务端进行仿真测试。上述技术方案中,仿真设备在进行仿真测试 ...
【技术保护点】
1.一种消息队列遥测传输MQTT协议仿真方法,其特征在于,仿真设备设有用户空间和网络适配器;所述方法包括:/n所述仿真设备获取仿真测试的序列化命令,并为多个MQTT客户端实例配置所述序列化命令;/n所述仿真设备控制所述多个MQTT客户端实例使用所述用户空间的仿真协议栈对所述序列化命令进行打包,得到仿真报文;/n所述仿真设备控制所述多个MQTT客户端实例将所述仿真报文传输给所述网络适配器,并由所述网络适配器发送给MQTT服务端进行仿真测试。/n
【技术特征摘要】
1.一种消息队列遥测传输MQTT协议仿真方法,其特征在于,仿真设备设有用户空间和网络适配器;所述方法包括:
所述仿真设备获取仿真测试的序列化命令,并为多个MQTT客户端实例配置所述序列化命令;
所述仿真设备控制所述多个MQTT客户端实例使用所述用户空间的仿真协议栈对所述序列化命令进行打包,得到仿真报文;
所述仿真设备控制所述多个MQTT客户端实例将所述仿真报文传输给所述网络适配器,并由所述网络适配器发送给MQTT服务端进行仿真测试。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述仿真设备控制所述网络适配器接收所述MQTT服务端发送的MQTT报文;所述MQTT报文包括MQTT客户端实例ID;
所述仿真设备控制所述网络适配器根据所述MQTT客户端实例ID将所述MQTT报文传输至所述MQTT客户端实例ID对应的MQTT客户端实例;
所述仿真设备控制所述MQTT客户端实例ID对应的MQTT客户端实例使用所述用户空间的仿真协议栈对所述MQTT报文进行解析得到测试响应数据。
3.如权利要求1所述的方法,其特征在于,所述仿真设备控制所述多个MQTT客户端实例将所述仿真报文传输给所述网络适配器,包括:
所述仿真设备控制所述多个MQTT客户端实例使用直接存储器访问DMA技术将所述仿真报文传输给所述网络适配器;
所述仿真设备控制所述网络适配器根据所述MQTT客户端实例ID将所述MQTT报文传输至所述MQTT客户端实例ID对应的MQTT客户端实例,包括:
所述仿真设备控制所述网络适配器根据所述MQTT客户端实例ID使用所述DMA技术将所述MQTT报文传输至所述MQTT客户端实例ID对应的MQTT客户端实例。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述仿真设备获取仿真流量模型;
所述仿真设备根据所述仿真流量模型为所述多个MQTT客户端实例配置仿真测试的仿真指标;所述仿真指标包括单位时间内MQTT客户端实例发起的新建连接速率、断开连接速率以及仿真周期内的连接并发量。
5.如权利要求1至4任一项所述的方法,其特征在于,所述序列化命令包括但不限于以下仿真行为:
客户端上线、客户端发布主题、客户端发起订阅、客户端保持在线、客户端取消订阅、客户端下线。
6.如权利要求5所述的方法,其特征在于,所述多个MQTT客户端实例中的任一MQTT客户端实例包括仿真发布者和仿真订阅者;
所述MQTT客户端实例为仿真发布者时,所述序列化命令包括客户端上线、客户端发布主题、客户端保持在线、客户端下线;
所述MQTT客户端实例为仿真订阅者时,所述序列化命令包括客户端上线、客户端发起订阅、客户端保持在线、客户端取消订阅、客户端下线。
7.一种仿真设备,其特征在于,仿真设备设有...
【专利技术属性】
技术研发人员:袁航,祖立军,刘国宝,傅峻,薛智杰,
申请(专利权)人:中国银联股份有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。