CN109327513B - 交互方法、装置及计算机可读存储介质 - Google Patents
交互方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109327513B CN109327513B CN201811109680.5A CN201811109680A CN109327513B CN 109327513 B CN109327513 B CN 109327513B CN 201811109680 A CN201811109680 A CN 201811109680A CN 109327513 B CN109327513 B CN 109327513B
- Authority
- CN
- China
- Prior art keywords
- client
- network
- data
- protocol
- network address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2521—Translation architectures other than single NAT servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2514—Translation of Internet protocol [IP] addresses between local and global IP addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请实施例提供了一种交互方法、装置及计算机可读存储介质,该方法包括:调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给云端侧网络转发服务;调用云端侧网络转发服务根据第一网络地址所映射的第二网络地址,将第一数据转发给第一客户端;调用第一客户端将第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送,使得终端设备调用第二客户端将第一数据转发至订阅第一数据所属主题的终端应用进行处理。本申请实施例提供的交互方法在不需要增加硬件设备情况下,实现了不同网段设备之间的交互。
Description
技术领域
本申请涉及物联网技术领域,具体而言,本发明涉及一种交互方法、装置及计算机可读存储介质。
背景技术
早期物联网***,服务器端与终端设备运行在同一内网环境中,服务器端通过网络访问运行终端设备上部署的应用服务,将终端设备添加到服务器***中来进行管理和监控,这种添加方式使得终端设备部署、管理相对简单。
目前,随着物联网设备使用场景的变化,终端设备分布越来越广泛,服务器与终端设备不一定在同一内网中运行。现有技术中,在原有的物联网***软件框架的结构上,需要添加更多网络设备来实现服务器对终端设备的接入与管理,然而硬件成本较高且管理更加复杂化,造成运营成本增加和管理效率低下的问题。
总之,现有技术存在需要增加硬件设备才能实现不同网段设备之间进行交互的缺陷。
发明内容
本申请的目的旨在解决上述的技术中需要增加硬件设备才能实现不同网段设备之间进行交互的缺陷。
第一方面,本申请实施例提供了云端侧一种交互方法,包括:
调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给云端侧网络转发服务;
调用云端侧网络转发服务根据第一网络地址所映射的第二网络地址,将第一数据转发给第一客户端;
调用第一客户端将第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送,使得终端设备调用第二客户端将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
第二方面,本申请实施例提供了终端侧一种交互方法,包括:
调用第二客户端通过基于消息队列遥测传输协议的网络隧道,接收源自云端***的第一客户端的第一数据;将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
第三方面,本申请实施例提供了云端侧一种交互装置,包括:
第一网络传输模块,用于调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给云端侧网络转发服务;
网址转换和数据传输模块,用于调用云端侧网络转发服务根据第一网络地址所映射的第二网络地址,将第一数据转发给第一客户端;
第二网络传输模块,用于调用第一客户端将第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送,使得终端设备调用第二客户端将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
第四方面,本申请实施例提供了终端侧一种交互装置,包括:
接收模块,用于接收发送模块,用于调用第二客户端通过基于消息队列遥测传输协议的网络隧道,接收源自云端***的第一客户端的第一数据;
转发模块,用于将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
第五方面,本申请实施例提供了云端侧一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例第一方面提供的交互方法。
第六方面,本申请实施例提供了终端侧一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例第二方面提供的交互方法。
本申请实施例提供的技术方案带来的有益效果包括:云端侧网络转发服务将位于第二网络的终端设备伪装成位于第一网络的虚拟终端设备;使得云端设备中的物联网服务中心与云端侧网络转发服务之间可以基于第一网络地址进行交互;经过云端侧网络转发服务将第一网络地址转换为第二网络地址后,云端侧网络转发服务一直至终端设备之间都可以第二网络地址进行交互;而且,云端侧的第一客户端与终端设备通过基于消息队列遥测传输协议的网络隧道的交互;从而在不需要增加硬件设备情况下,实现了不同网段设备之间的交互。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种物联网交互***的框架结构示意图;
图2为本申请实施例提供的云端侧一种交互方法的流程示意图;
图3为本申请实施例提供的终端侧一种交互方法的流程示意图;
图4为本申请实施例提供的网段映射和网络隧道建立方法的流程示意图;
图5a为本申请实施例提供的基于网段映射和网络隧道的一种交互方法的流程示意图;
图5b为本申请实施例提供的基于网段映射和网络隧道的另一种交互方法的流程示意图
图6为本申请实施例提供的一种交互方法的信令图;
图7为本申请实施例提供的云端侧一种交互装置的结构示意图;
图8为本申请实施例提供的云端侧另一种交互装置的结构示意图;
图9为本申请实施例提供的终端侧一种交互装置的结构示意图;
图10为本申请实施例提供的终端侧另一种交互装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本发明的限制。
首先对本申请涉及的几个名词进行介绍和解释:
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。
MQTT传输的消息分为:主题(Topic)和负载(payload)两部分:
(1)Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload);
(2)payload,可以理解为消息的内容,是指订阅者具体要使用的内容。
目前,在一种物联网交互框架结构中,终端设备部署比较集中,终端设备通常与服务器端部署在同一网络环境中,终端设备与服务器端的物联网服务中心可以直接连通进行交互,或者通过网关设备连通进行交互。同时,服务器端的物联网服务中心可以通过同一网络搜寻并添加新的终端设备,实现对终端设备的管理、收集和监控的功能。
然而,随着物联网设备使用场景的变化,终端设备分布越来越广泛,终端设备与服务器端不一定在同一网络中运行。现有技术中,需要添加额外的网络设备来实现服务器端对终端设备的接入与管理,然而硬件成本较高且管理更加复杂化,造成运营成本增加和管理效率低下的问题。
总之,现有技术存在需要增加硬件设备才能实现不同网段设备之间进行交互的缺陷。
本申请提供的交互方法、装置及计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
实施例一
本申请实施例提供了一种物联网交互***的框架结构示意图,如图1所示,该物联网交互***包括:云端***和终端设备。互联网可以作为第一网络,云端***运行于互联网环境中具有第一网络地址,内网可以作为第二网络,终端设备运行于内网环境中具有第二网络地址。云端***包括:物联网服务中心、设备映射配置管理服务、网络转发服务、第一客户端和协议代理;云端***中各部分之间通过数据连接。终端设备包括:第二客户端和终端应用;终端设备中各部分之间通过数据连接。由于云端***和终端设备运行于不同的网络环境中,不能直接进行数据交互,在本申请实施例中云端***通过协议代理根据基于MQTT协议的隧道与终端设备进行数据交互。云端***与终端设备之间的交互方法在后续的实施例中进行详述。
实施例二
图2为本申请实施例提供了云端侧一种交互方法的流程示意图,如图2所示,该方法包括下述步骤:
S201,云端***调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给云端侧网络转发服务。
S202,云端***调用云端侧网络转发服务根据第一网络地址所映射的第二网络地址,将第一数据转发给第一客户端。
可选地,确定出云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址所映射的终端设备的第二网络地址。
根据第二网络地址,将第一数据转发给第一客户端。
S203,云端***调用第一客户端将第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送。
使得终端设备调用第二客户端将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
可选地,调用第一客户端将第一数据封装到符合消息队列遥测传输协议的第一主题的内容中之后,根据第二网络地址发送至协议代理;使得协议代理将第一主题的内容,向订阅第一主题的终端设备的第二客户端进行发送,并使得第二客户端接收到第一主题的内容后,将第一主题的内容中的第一数据转发至终端设备中订阅第一主题的终端应用进行处理。
图3为本申请实施例提供了终端侧一种交互方法的流程示意图,如图3所示,该方法包括下述步骤:
S301,终端设备调用第二客户端通过基于消息队列遥测传输协议的网络隧道,接收源自云端***的第一客户端的第一数据。
S302,终端设备将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
需要说明的是,在S201中,云端侧运行的网络转发服务伪装成虚拟终端设备。并且,网络转发服务伪装成的虚拟终端设备具有第一网络地址,接收来自云端侧物联网服务中心连接管理设备的请求,并与物联网服务中心建立连接。物联网服务中心将第一数据发送给网络转发服务。
需要说明的是,在S202中,由于云端侧的物联网服务中心与终端设备不在同一网络中运行,物联网服务中心的网络地址为第一网络地址,终端设备的网络地址为第二网络地址,物联网服务中心根据云端侧的物联网服务中心的第一网络地址与终端侧终端设备的第二网络地址构造成映射关系,第一网络地址对应一个或多个第二网络地址,具有映射关系的两个地址之间可以进行交互。
需要说明的是,在S203中,云端侧的第一客户端通过基于消息队列遥测传输协议的网络隧道向终端侧的第二客户端发送第一数据。网络隧道的打通,在不需要添加新的硬件设备的情况下,实现了云端侧与终端侧的数据交互。
需要说明的是,在S301中,终端侧的第二客户端通过基于消息队列遥测传输协议的网络隧道接收云端侧的第一客户端发送的第一数据,第二客户端接收到第一数据后,将接收到第一数据的响应通过协议代理反馈给云端侧的第一客户端。
需要说明的是,在S302中,终端设备中的第二客户端将接收到的第一数据转发至第一数据所属主题的终端应用进行处理。
本申请实施例提供的技术方案,云端侧网络转发服务将位于第二网络的终端设备伪装成位于第一网络的虚拟终端设备;使得云端设备中的物联网服务中心与云端侧网络转发服务之间可以基于第一网络地址进行交互;经过云端侧网络转发服务将第一网络地址转换为第二网络地址后,云端侧网络转发服务一直至终端设备之间都可以第二网络地址进行交互;而且,云端侧的第一客户端与终端设备通过基于消息队列遥测传输协议的网络隧道的交互;从而在不需要增加硬件设备情况下,实现了不同网段设备之间的交互。
实施例三
基于本申请实施例二提供的交互方法,本申请实施例三提供另一种扩展的交互方法,该方法包括:网段映射和网络隧道建立方法、以及基于网段映射和网络隧道的交互方法。
本申请实施例中,网段映射和网络隧道建立方法的流程示意图如图4所示,包括下述步骤:
S401,调用设备映射配置管理服务为第二网络中的每个终端设备配置相映射的第一网络中的虚拟终端设备,并为每个终端设备的第二网络地址配置相映射的虚拟终端设备的第一网络地址。
S402,建立基于消息队列遥测传输协议的网络隧道。
云端***调用第一客户端根据消息队列遥测传输协议,将第一主题的发布消息通过协议代理向各终端设备中的第二客户端发送;使得第二客户端根据消息队列遥测传输协议,向代理协议反馈第一主题的订阅消息。
以及,云端***调用第一客户端通过协议代理接收到源自第二客户端的第二主题的提供信息后,调用第一客户端向协议代理反馈第二主题的订阅消息。
终端设备调用第二客户端通过协议代理接收到源自第一客户端的第一主题的提供信息后,转发至各终端应用;通过第二客户端接收终端应用针对第一主题的订阅消息后,向协议代理反馈第一主题的订阅消息。
以及,终端设备通过第二客户端接收终端应用的第二主题的发布信息后,调用第二客户端根据消息队列遥测传输协议,将第二主题的发布消息通过协议代理向云端***中的第一客户端发送;使得第一客户端根据消息队列遥测传输协议,向代理协议反馈第二主题的订阅消息。
需要说明的是,在S401中,在云端侧进行数据传输之前,设备映射配置管理服务配置管理多个第二网络地址和第一网络地址的映射对应关系,并为每个终端设备的第二网络地址配置相映射的虚拟终端设备的第一网络地址,根据配置动态通知网络转发服务启动或停止伪装为虚拟终端设备执行云端侧设备与终端侧设备之间的通信,同时,设备映射配置管理服务监控网络转发服务的运行状态。
在一个具体的例子中,云端侧网络服务中心的第一网络IP地址为3X.1XX.7X.1X,终端侧的某一终端设备AP1启动的终端应用为TCP(Transmission Control Protocol,传输控制协议)服务,监听端口PORT为7800,第二网络IP地址为192.168.0.5,由于云端侧与终端侧位于不同的网络中,不能实现网络交互,此时,云端侧本地启动TCP服务监听端口PORT为6001。当云端侧物联网服务中心需要添加终端侧的终端设备AP1时,云端侧运行的网络转发服务伪装为虚拟终端设备,如表1所示,将对应的第二网络IP地址及端口PORT192.168.0.5:7800伪装为第一网络IP地址及端口PORT 3X.1XX.7X.1X:6001。物联网服务中心与第二网络地址为3X.1XX.7X.1X:6001的终端设备的网络转发服务建立连接,物联网服务中心将第一数据发送给网络转发服务,网络转发服务将第一数据转发给云端侧的第一客户端。云端侧的第一客户端与终端侧的第二客户端通过基于消息队列遥测传输协议的网络隧道将第一数据进行传输。
终端设备AP1 | IP | PORT |
终端侧第二网络地址 | 192.168.0.5 | 7800 |
云端侧第一网络地址 | 3X.1XX.7X.1X | 6001 |
表1
需要说明的是,基于上述S402,在一种可能的实现方式中,云端侧的第一客户端作为发布者,终端侧的第二客户端作为订阅者,第二客户端订阅第一客户端包含第一主题的消息,第一客户端根据消息队列遥测传输协议将包含第一主题的消息通过协议代理向第二客户端发送,第二客户端接收到包含第一主题的订阅消息后,根据消息队列遥测传输协议,向代理协议反馈第一主题的订阅消息,以完成第一客户端向第二客户端发送订阅消息。
需要说明的是,在上述实现方式中,云端侧的第一客户端的数量可以为一个,终端侧的第二客户端的数量可以为一个或多个,云端侧的第一客户端可以同时向一个或多个终端侧的第二客户端发送第一主题的订阅消息,便于云端侧的第一客户端管理与监控一个或多个终端侧的第二客户端。
在另一种可能的实现方式中,终端侧的第二客户端作为发布者,云端侧的第一客户端作为订阅者,第一客户端订阅第二客户端包含第二主题的消息,第二客户端根据消息队列遥测传输协议将包含第二主题的消息通过协议代理向第一客户端发送,第一客户端接收到包含第二主题的订阅消息后,根据消息队列遥测传输协议,向代理协议反馈第二主题的订阅消息,以完成第二客户端向第一客户端发送订阅消息。
需要说明的是,在上述实现方式中,与第一客户端向第二客户端发送订阅消息的方式类似,不同在于,终端侧的第二客户端的数量可以为一个,云端侧的第一客户端的数量可以为一个,第二客户端向第一客户端发送订阅消息为一对一的方式,便于终端侧的第二客户端及时准确的搜索和添加到云端侧的第一客户端,并建立连接进行数据的传输。
本申请实施例中,基于网段映射和网络隧道的一种交互方法的流程示意图如图5a所示,包括下述步骤:
S501,云端***调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给云端侧网络转发服务。
S502,云端***确定出云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址所映射的终端设备的第二网络地址。
S503,云端***根据第二网络地址,将第一数据转发给第一客户端。
S504,云端***调用第一客户端将第一数据封装到符合消息队列遥测传输协议的第一主题的内容中之后,根据第二网络地址发送至协议代理。
S505,终端设备调用第二客户端通过基于消息队列遥测传输协议的网络隧道,接收源自云端***的第一客户端的第一数据。
S506,终端设备将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
可选地,本申请实施例中,基于网段映射和网络隧道的另一种交互方法的流程示意图如图5b所示,在上述步骤S501-S506的基础上,还包括下述步骤:
S507,终端设备调用第二客户端将源自终端应用的第二数据封装到符合消息队列遥测传输协议的第二主题的内容中之后,根据所属终端设备的第二网络地址向协议代理发送。
S508,云端***调用第一客户端通过协议代理,接收基于第二网络地址的符合消息队列遥测传输协议的第二主题的内容。
S509,云端***调用第一客户端将第二主题的内容中的第二数据发送至云端侧网络转发服务。
S510,云端***调用云端侧网络转发服务根据终端设备的第二网络地址所映射的第一网络地址,将第二数据发送至物联网服务中心。
在一个具体的例子中,图6为本申请实施例提供的一种交互方法的信令图,如图6所示,云端侧的物联网服务中心与网络转发服务建立连接,根据网络转发服务伪装成的虚拟终端设备的第一网络地址,发送第一数据给网络转发服务。网络转发服务伪装成的虚拟终端设备的第一网络地址与终端设备的第二网络地址具有预设的映射关系。云端侧的网络转发服务根据第二网络地址将第一数据转发给第一客户端。
云端侧的第一客户端与终端侧的第二客户端通过基于MQTT协议建立的网络隧道进行连接,第一客户端发布具有第一主题的订阅信息至协议代理,第二客户端向协议代理订阅具有第一主题的信息,第一客户端与第二客户端基于MQTT协议形成发布/订阅关系。
第一客户端将包括第一主题的第一数据根据第一网络地址发送给协议代理,第二客户端接收通过协议代理转发的第一数据,通过第二客户端与终端应用建立的连接,将接收的第一数据转发至终端设备中的终端应用。
与上述方法对应的,如图6所示,终端侧的第二客户端可以将包含有第二主题的第二数据,根据第二网络地址向协议代理发送。云端侧的第一客户端通过协议代理接收具有第二主题的第二数据。第一客户端将接收的第二主题的第二数据发送至云端侧的网络转发服务。网络转发服务根据第二网络地址与第一网络地址之间的映射关系,将第二数据转发至互联网服务中心。同时,第一客户端将接收到第二数据的响应反馈给第二客户端。
实施例四
基于同一发明构思,本申请实施例提供了云端侧一种交互装置,如图7所示,该装置700包括:第一网络传输模块701、网址转换和数据传输模块702和第二网络传输模块703。
第一网络传输模块701,用于调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给云端侧网络转发服务。
网址转换和数据传输模块702,用于调用云端侧网络转发服务根据第一网络地址所映射的第二网络地址,将第一网络传输模块701发送的第一数据转发给第一客户端。
第二网络传输模块703,用于调用第一客户端将网址转换和数据传输模块702转发的第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送,使得终端设备调用第二客户端将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
可选地,如图8所示,本申请实施例提供的交互装置700还包括:映射管理模块704。
映射管理模块704,用于调用设备映射配置管理服务为第二网络中的每个终端设备配置相映射的第一网络中的虚拟终端设备,并为每个终端设备的第二网络地址配置相映射的虚拟终端设备的第一网络地址。
可选地,如图8所示,本申请实施例提供的交互装置700还包括:云端侧网络隧道建立模块705。
云端侧网络隧道建立模块705,用于调用第一客户端根据消息队列遥测传输协议,将第一主题的发布消息通过协议代理向各终端设备中的第二客户端发送;使得第二客户端根据消息队列遥测传输协议,向代理协议反馈第一主题的订阅消息。
以及,调用第一客户端通过协议代理接收到源自第二客户端的第二主题的提供信息后,调用第一客户端向协议代理反馈第二主题的订阅消息。
本实施例提供的云端侧一种交互装置可执行本申请实施例二提供的交互方法中的S201-S203的方法,或者,可执行本申请实施例三提供的交互方法中的S401、S402中云端侧建立基于消息队列遥测传输协议的网络隧道方法、S501-S504和S508-S510所示的方法,其实现原理相类似,此处不再赘述。
实施例五
基于同一发明构思,本申请实施例提供了终端侧一种交互装置,如图9所示,该交互装置900包括:接收模块901和转发模块902。
接收模块901,用于调用第二客户端通过基于消息队列遥测传输协议的网络隧道,接收源自云端***的第一客户端的第一数据。
转发模块902,用于将第一数据转发至订阅第一数据所属主题的终端应用进行处理。
可选地,如图10所示,本申请实施例提供的交互装置900还包括:终端侧网络隧道建立模块903。
终端侧网络隧道建立模块903,用于调用第二客户端通过协议代理接收到源自第一客户端的第一主题的提供信息后,转发至各终端应用;通过第二客户端接收终端应用针对第一主题的订阅消息后,向协议代理反馈第一主题的订阅消息;以及,通过第二客户端接收终端应用的第二主题的发布信息后,调用第二客户端根据消息队列遥测传输协议,将第二主题的发布消息通过协议代理向云端***中的第一客户端发送;使得第一客户端根据消息队列遥测传输协议,向代理协议反馈第二主题的订阅消息。
本实施例提供的终端侧一种交互装置可执行本申请实施例二提供的交互方法中的S301-S302的方法,或者可执行本申请实施例三提供的交互方法中的S402中终端侧建立基于消息队列遥测传输协议的网络隧道方法和S505-S507所示的方法,其实现原理相类似,此处不再赘述。
实施例六
基于同一发明构思,本申请实施例提供了云端侧一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请实施例二提供的交互方法中的S201-S203的方法,或者实现实施例三提供的交互方法中的S401、S402中云端侧建立基于消息队列遥测传输协议的网络隧道方法、S501-S504和S508-S510所示的方法,其实现原理相类似,此处不再赘述。
实施例七
基于同一发明构思,本申请实施例提供了终端侧一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请实施例二提供的交互方法中的S301-S302的方法,或者实现实施例三提供的交互方法中的S402中终端侧建立基于消息队列遥测传输协议的网络隧道方法和S505-S507所示的方法,其实现原理相类似,此处不再赘述。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (12)
1.一种交互方法,其特征在于,包括:
调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给所述云端侧网络转发服务;
调用所述云端侧网络转发服务根据所述第一网络地址所映射的第二网络地址,将所述第一数据转发给第一客户端;
调用所述第一客户端将所述第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送,使得所述终端设备调用第二客户端将所述第一数据转发至订阅所述第一数据所属主题的终端应用进行处理;基于消息队列遥测传输协议的网络隧道,是通过下述方法预先建立的:调用所述第一客户端根据所述消息队列遥测传输协议,将第一主题的发布消息通过所述协议代理向各终端设备中的第二客户端发送;使得所述第二客户端根据所述消息队列遥测传输协议,向所述代理协议反馈第一主题的订阅消息;以及,调用所述第一客户端通过所述协议代理接收到源自所述第二客户端的第二主题的提供信息后,调用所述第一客户端向所述协议代理反馈第二主题的订阅消息。
2.根据权利要求1所述的方法,其特征在于,所述调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给所述云端侧网络转发服务之前,还包括:
调用设备映射配置管理服务为第二网络中的每个终端设备配置相映射的第一网络中的虚拟终端设备,并为每个所述终端设备的第二网络地址配置相映射的虚拟终端设备的第一网络地址。
3.根据权利要求2所述的方法,其特征在于,所述调用所述云端侧网络转发服务根据所述第一网络地址所映射的第二网络地址,将所述第一数据转发给第一客户端,具体包括:
确定出所述云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址所映射的终端设备的第二网络地址;
根据所述第二网络地址,将所述第一数据转发给第一客户端。
4.根据权利要求1所述的方法,其特征在于,所述调用所述第一客户端将所述第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送,具体包括:
调用所述第一客户端将所述第一数据封装到符合所述消息队列遥测传输协议的第一主题的内容中之后,根据所述第二网络地址发送至协议代理;
使得所述协议代理将所述第一主题的内容,向订阅所述第一主题的终端设备的第二客户端进行发送,并使得所述第二客户端接收到第一主题的内容后,将所述第一主题的内容中的所述第一数据转发至所述终端设备中订阅所述第一主题的终端应用进行处理。
5.根据权利要求1所述的方法,其特征在于,还包括:
调用所述第一客户端通过所述协议代理,接收基于所述第二网络地址的符合所述消息队列遥测传输协议的第二主题的内容;
调用所述第一客户端将所述第二主题的内容中的第二数据发送至所述云端侧网络转发服务;
调用所述云端侧网络转发服务根据所述终端设备的第二网络地址所映射的第一网络地址,将所述第二数据发送至所述物联网服务中心。
6.一种交互方法,其特征在于,包括:
调用第二客户端通过基于消息队列遥测传输协议的网络隧道,接收源自云端***的第一客户端的第一数据;所述第一客户端的第一数据采用如下方式得到:调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给所述云端侧网络转发服务;
调用所述云端侧网络转发服务根据所述第一网络地址所映射的第二网络地址,将所述第一数据转发给第一客户端;基于消息队列遥测传输协议的网络隧道,是通过下述方法预先建立的:调用所述第二客户端通过所述协议代理接收到源自所述第一客户端的第一主题的提供信息后,转发至各终端应用;通过所述第二客户端接收终端应用针对所述第一主题的订阅消息后,向所述协议代理反馈第一主题的订阅消息;以及,通过所述第二客户端接收终端应用的第二主题的发布信息后,调用所述第二客户端根据所述消息队列遥测传输协议,将所述第二主题的发布消息通过所述协议代理向所述云端***中的第一客户端发送;使得所述第一客户端根据所述消息队列遥测传输协议,向所述代理协议反馈第二主题的订阅消息;
将所述第一数据转发至订阅所述第一数据所属主题的终端应用进行处理。
7.根据权利要求6所述的方法,其特征在于,还包括:
调用所述第二客户端将源自所述终端应用的第二数据封装到符合所述消息队列遥测传输协议的第二主题的内容中之后,根据所属终端设备的第二网络地址向所述协议代理发送;
使得所述协议代理将所述第二主题的内容,向所述第一客户端发送,使得所述第一客户端将所述第二主题的内容中的第二数据发送至所述云端侧网络转发服务,使得所述云端侧网络转发服务根据所述终端设备的第二网络地址所映射的第一网络地址,将所述第二数据发送至所述物联网服务中心。
8.一种交互装置,其特征在于,包括:
第一网络传输模块,用于调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给所述云端侧网络转发服务;
网址转换和数据传输模块,用于调用所述云端侧网络转发服务根据所述第一网络地址所映射的第二网络地址,将所述第一数据转发给第一客户端;
第二网络传输模块,用于调用所述第一客户端将所述第一数据,通过基于消息队列遥测传输协议的网络隧道,向位于第二网络中的终端设备进行发送,使得所述终端设备调用第二客户端将所述第一数据转发至订阅所述第一数据所属主题的终端应用进行处理;
云端侧网络隧道建立模块,用于调用所述第一客户端根据所述消息队列遥测传输协议,将第一主题的发布消息通过所述协议代理向各终端设备中的第二客户端发送;使得所述第二客户端根据所述消息队列遥测传输协议,向所述代理协议反馈第一主题的订阅消息;以及,调用所述第一客户端通过所述协议代理接收到源自所述第二客户端的第二主题的提供信息后,调用所述第一客户端向所述协议代理反馈第二主题的订阅消息。
9.根据权利要求8所述的交互装置,其特征在于,还包括:
映射管理模块,用于调用设备映射配置管理服务为第二网络中的每个终端设备配置相映射的第一网络中的虚拟终端设备,并为每个所述终端设备的第二网络地址配置相映射的虚拟终端设备的第一网络地址。
10.一种交互装置,其特征在于,包括:
接收模块,用于调用第二客户端通过基于消息队列遥测传输协议的网络隧道,接收源自云端***的第一客户端的第一数据;所述第一客户端的第一数据采用如下方式得到:调用物联网服务中心根据云端侧网络转发服务伪装成的虚拟终端设备的第一网络地址,将第一数据发送给所述云端侧网络转发服务;调用所述云端侧网络转发服务根据所述第一网络地址所映射的第二网络地址,将所述第一数据转发给第一客户端;
转发模块,用于将所述第一数据转发至订阅所述第一数据所属主题的终端应用进行处理;
终端侧网络隧道建立模块,用于调用所述第二客户端通过所述协议代理接收到源自所述第一客户端的第一主题的提供信息后,转发至各终端应用;通过所述第二客户端接收终端应用针对所述第一主题的订阅消息后,向所述协议代理反馈第一主题的订阅消息;以及,通过所述第二客户端接收终端应用的第二主题的发布信息后,调用所述第二客户端根据所述消息队列遥测传输协议,将所述第二主题的发布消息通过所述协议代理向所述云端***中的第一客户端发送;使得所述第一客户端根据所述消息队列遥测传输协议,向所述代理协议反馈第二主题的订阅消息。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5任一项所述的交互方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求6-7任一项所述的交互方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811109680.5A CN109327513B (zh) | 2018-09-21 | 2018-09-21 | 交互方法、装置及计算机可读存储介质 |
US16/392,495 US11356522B2 (en) | 2018-09-21 | 2019-04-23 | Data transmission method, network device, terminal device, and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811109680.5A CN109327513B (zh) | 2018-09-21 | 2018-09-21 | 交互方法、装置及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109327513A CN109327513A (zh) | 2019-02-12 |
CN109327513B true CN109327513B (zh) | 2021-12-17 |
Family
ID=65265646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811109680.5A Active CN109327513B (zh) | 2018-09-21 | 2018-09-21 | 交互方法、装置及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11356522B2 (zh) |
CN (1) | CN109327513B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109919266A (zh) * | 2019-02-25 | 2019-06-21 | 京东方科技集团股份有限公司 | 一种电子标签、电子拣货***、方法和计算机可读介质 |
US11032226B1 (en) * | 2019-12-04 | 2021-06-08 | Caastle, Inc. | Systems and methods for rapid electronic messaging testing and positional impact assessment in a prospect electronic messaging series |
CN112333115B (zh) * | 2020-08-19 | 2024-02-09 | 深圳Tcl新技术有限公司 | 数据传输方法、终端设备、服务器及存储介质 |
EP3965387A1 (en) * | 2020-09-04 | 2022-03-09 | Siemens Aktiengesellschaft | Method and system for communication between clients in a distributed industrial environment |
CN114765627A (zh) * | 2021-01-14 | 2022-07-19 | 京东科技控股股份有限公司 | 数据传输方法、设备、存储介质及计算机程序产品 |
TWI767821B (zh) * | 2021-08-13 | 2022-06-11 | 大陸商美律電子(深圳)有限公司 | 物聯網系統 |
CN117834161A (zh) * | 2022-09-29 | 2024-04-05 | 武汉联影医疗科技有限公司 | 设备数据传输方法、客户端、虚拟设备和物联网设备 |
CN118264723A (zh) * | 2022-12-28 | 2024-06-28 | 四零四科技股份有限公司 | 通讯方法及通讯*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101175029A (zh) * | 2006-10-31 | 2008-05-07 | 中兴通讯股份有限公司 | 对多个同构子网实现代理的装置 |
CN102984068A (zh) * | 2012-11-23 | 2013-03-20 | 汉柏科技有限公司 | 实现报文穿越网络地址转换设备的方法 |
CN104601665A (zh) * | 2014-12-22 | 2015-05-06 | 西安电子科技大学 | 一种对物联网感知设备进行云端实时仿真的***和方法 |
CN105656847A (zh) * | 2014-11-13 | 2016-06-08 | 中国科学院沈阳计算技术研究所有限公司 | 面向移动设备的sip/mqtt协议转换网关***及其控制方法 |
CN107623613A (zh) * | 2017-09-13 | 2018-01-23 | 微赫智能科技(上海)有限公司 | 智慧家庭*** |
WO2018157916A1 (en) * | 2017-02-28 | 2018-09-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Publish-subscribe messaging systems, methods, apparatuses, computer programs and computer program products |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102377629B (zh) * | 2010-08-20 | 2014-08-20 | 华为技术有限公司 | 终端穿越私网与ims核心网中服务器通信的方法、装置及网络*** |
EP3320671B1 (en) * | 2015-07-06 | 2020-09-02 | Convida Wireless, LLC | Wide area service discovery for internet of things |
KR102471665B1 (ko) * | 2015-08-27 | 2022-11-25 | 포그혼 시스템스 인코포레이티드 | 에지 인텔리전스 플랫폼 및 사물 인터넷 센서 스트림 시스템 |
CN106953891B (zh) * | 2017-02-09 | 2020-03-24 | 浙江百倍云信息科技有限公司 | 一种广告屏远程控制方法及*** |
CN106657394B (zh) * | 2017-02-10 | 2020-06-05 | 浪潮软件科技有限公司 | 一种基于物联网大数据的设备信息采集***及方法 |
US10432535B2 (en) * | 2017-02-28 | 2019-10-01 | Hewlett Packard Enterprise Development Lp | Performing a specific action on a network packet identified as a message queuing telemetry transport (MQTT) packet |
US10965640B2 (en) * | 2017-04-13 | 2021-03-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Configuration of an M2M device |
US10447822B2 (en) * | 2017-06-19 | 2019-10-15 | Silicon Laboratories, Inc. | DotDot gateway |
US11012250B2 (en) * | 2018-09-13 | 2021-05-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Method of and devices for supporting selective forwarding of messages in a network of communicatively coupled communication devices |
-
2018
- 2018-09-21 CN CN201811109680.5A patent/CN109327513B/zh active Active
-
2019
- 2019-04-23 US US16/392,495 patent/US11356522B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101175029A (zh) * | 2006-10-31 | 2008-05-07 | 中兴通讯股份有限公司 | 对多个同构子网实现代理的装置 |
CN102984068A (zh) * | 2012-11-23 | 2013-03-20 | 汉柏科技有限公司 | 实现报文穿越网络地址转换设备的方法 |
CN105656847A (zh) * | 2014-11-13 | 2016-06-08 | 中国科学院沈阳计算技术研究所有限公司 | 面向移动设备的sip/mqtt协议转换网关***及其控制方法 |
CN104601665A (zh) * | 2014-12-22 | 2015-05-06 | 西安电子科技大学 | 一种对物联网感知设备进行云端实时仿真的***和方法 |
WO2018157916A1 (en) * | 2017-02-28 | 2018-09-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Publish-subscribe messaging systems, methods, apparatuses, computer programs and computer program products |
CN107623613A (zh) * | 2017-09-13 | 2018-01-23 | 微赫智能科技(上海)有限公司 | 智慧家庭*** |
Also Published As
Publication number | Publication date |
---|---|
US20200099761A1 (en) | 2020-03-26 |
CN109327513A (zh) | 2019-02-12 |
US11356522B2 (en) | 2022-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109327513B (zh) | 交互方法、装置及计算机可读存储介质 | |
WO2019205907A1 (zh) | 一种基于mqtt消息协议的智能设备通讯平台 | |
CN104836723B (zh) | 基于mqtt主题订阅机制的通信方法以及接入网关 | |
US10148565B2 (en) | OPENFLOW communication method and system, controller, and service gateway | |
CN110661871B (zh) | 一种数据传输方法及mqtt服务器 | |
CN104363291A (zh) | 一种网络通信中间件实现方法 | |
WO2013097401A1 (zh) | 浏览器客户端与后端服务器直通的方法、网关和通信*** | |
CN111092802B (zh) | 一种消息交互方法、发送设备及接收设备 | |
CN112968965B (zh) | Nfv网络节点的元数据服务方法、服务器及存储介质 | |
CN108683653A (zh) | 一种基于WebSocket的主动式消息推送*** | |
CN101631127A (zh) | 文件传输方法及客户端 | |
CN102857403B (zh) | 即时通信客户端数据共享方法和*** | |
WO2022100211A1 (zh) | 数据处理方法、装置、存储介质、终端及网络接入点设备 | |
WO2013159492A1 (zh) | 信息上报与下载的方法及*** | |
CN110912942B (zh) | 一种降低udp报文发送时延的方法 | |
CN110417875B (zh) | 一种云服务器之间的对接方法、***、设备及存储介质 | |
EP2396937A1 (en) | Method and system for aggregating communications | |
CN116800787A (zh) | 一种基于以太网通讯协议的车载通信方法及*** | |
CN106302399A (zh) | 控制组播接入的方法及***、云桌面、云终端 | |
WO2010009642A1 (zh) | 多企业间的短信实现方法、***和设备 | |
CN109379443B (zh) | 一种面向物联网的分布式消息队列的实现方法 | |
CN113037803A (zh) | 地质灾害监测方法及***、电子设备及存储介质 | |
KR20070092392A (ko) | 멀티캐스트 방식의 분산 서버 제어 방법 및 그 시스템 | |
CN110474781A (zh) | 一种组播数据转发的方法及装置 | |
CN110557728A (zh) | 一种短信发送方法、装置及网络设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |