CN111698289B - 一种通信连接的控制方法、客户端设备及服务器 - Google Patents

一种通信连接的控制方法、客户端设备及服务器 Download PDF

Info

Publication number
CN111698289B
CN111698289B CN202010405658.6A CN202010405658A CN111698289B CN 111698289 B CN111698289 B CN 111698289B CN 202010405658 A CN202010405658 A CN 202010405658A CN 111698289 B CN111698289 B CN 111698289B
Authority
CN
China
Prior art keywords
server
client equipment
subscription
push
push channel
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
Application number
CN202010405658.6A
Other languages
English (en)
Other versions
CN111698289A (zh
Inventor
胡正才
何龙
邵涟
谭维鹏
洪程朗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zero Hole Technology Co ltd
Original Assignee
Guangdong Aciga Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Aciga Technology Co ltd filed Critical Guangdong Aciga Technology Co ltd
Priority to CN202010405658.6A priority Critical patent/CN111698289B/zh
Publication of CN111698289A publication Critical patent/CN111698289A/zh
Application granted granted Critical
Publication of CN111698289B publication Critical patent/CN111698289B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及通信技术领域,具体涉及一种通信连接的控制方法、客户端设备及服务器,首先服务器获取推送通道的描述信息,根据所述描述信息生成客户端设备有权订阅的推送通道列表,在获取到客户端设备发送的HTTP请求后,查询该客户端设备有权订阅的推送通道列表,并生成该客户端设备的订阅令牌;在获取到客户端设备选择的推送通道后,对客户端设备的订阅令牌进行鉴权,在鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;服务器通过MQTT推送链路向客户端设备推送下行数据,客户端设备通过HTTP协议向服务器发送上行数据,本发明能够提高下行数据的下发时效性,降低服务器下发数据的设计复杂度,减少对服务器资源的占用消耗。

Description

一种通信连接的控制方法、客户端设备及服务器
技术领域
本发明涉及通信技术领域,具体涉及一种通信连接的控制方法、客户端设备及服务器。
背景技术
服务器与客户端设备之间的数据通讯一般会存在以下几种形式:
1.从服务器到客户端设备的下行广播或者组播数据;
2.从服务器到客户端设备的下行单播数据;
3.从客户端设备到服务器的上行数据。
现有的通信连接技术中,当客户端设备数量庞大时,会导致发送数据的时效性差,且服务器的资源消耗比较多,同时增加服务器的设计复杂度和运算压力。
发明内容
本发明目的在于提供一种通信连接的控制方法、客户端设备及服务器,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
为了实现上述目的,本发明提供以下技术方案:
一种通信连接的控制方法,应用于服务器,包括:
获取推送通道的描述信息,根据所述描述信息生成客户端设备有权订阅的推送通道列表,所述推送通道为采用MQTT协议的MQTT推送链路;
获取客户端设备发送的HTTP请求,所述HTTP请求携带有客户端设备的身份识别信息,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;
根据客户端设备提交的身份识别信息查询该客户端设备有权订阅的推送通道列表,根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌;
将客户端设备有权订阅的推送通道列表和订阅令牌下发给该客户端设备;
接收客户端设备发送的订阅请求,获取客户端设备从所述有权订阅的推送通道列表中选择的推送通道,所述订阅请求包含订阅令牌;
对订阅请求中的订阅令牌进行鉴权,在鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
通过所述服务器到客户端设备的MQTT推送链路向对应的客户端设备推送下行数据,接收客户端设备通过HTTP协议发送的上行数据。
在一个改进的实施例中,所述根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌,包括:
对客户端设备提交的身份识别信息进行授权;
将授权后的身份识别信息和令牌有效期进行拼凑,形成一个字符串;
对所述字符串进行AES加密,生成一个密码串;
对所述密码串进行Base64编码,生成具有有效期限的订阅令牌。
在一个改进的实施例中,所述对订阅请求中的订阅令牌进行鉴权,包括:
对订阅令牌依次进行Base64解码、AES解密,得到令牌字符串;
从所述令牌字符串中获取身份识别信息和令牌有效期;
当身份识别信息已授权,且令牌在有效期内时,则判定订阅请求鉴权通过。
在一个改进的实施例中,在通过所述MQTT推送链路向对应的客户端设备推送下行数据之前,还包括:
对所述下行数据采用密钥进行数据对称加密。
一种服务器,包括:
推送通道列表生成模块,用于获取推送通道的描述信息,根据所述描述信息生成客户端设备有权订阅的推送通道列表,所述推送通道为采用MQTT协议的MQTT推送链路;
HTTP请求获取模块,用于获取客户端设备发送的HTTP请求,所述HTTP请求携带有客户端设备的身份识别信息,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;
推送通道列表获取模块,用于根据客户端设备提交的身份识别信息查询该客户端设备有权订阅的推送通道列表,根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌;
信息下发模块,用于将客户端设备有权订阅的推送通道列表和订阅令牌下发给该客户端设备;
推送通道获取模块,用于接收客户端设备发送的订阅请求,获取客户端设备从所述有权订阅的推送通道列表中选择的推送通道,所述订阅请求包含订阅令牌;
链路鉴权模块,用于对订阅请求中的订阅令牌进行鉴权,在鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
链路选择模块,用于通过所述服务器到客户端设备的MQTT推送链路向对应的客户端设备推送下行数据,接收客户端设备通过HTTP协议发送的上行数据。
一种通信连接的控制方法,应用于客户端设备,包括:
向服务器发送HTTP请求,所述HTTP请求携带有客户端设备的身份识别信息,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;
从服务器接收有权订阅的推送通道列表和订阅令牌;有权订阅的推送通道列表由服务器根据客户端设备提交的身份识别信息获取,订阅令牌由服务器根据客户端设备提交的身份识别信息生成;
向服务器发送订阅请求,上报从所述有权订阅的推送通道列表中选择订阅的推送通道,所述订阅请求包含订阅令牌;
在服务器对订阅请求中的订阅令牌鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
通过HTTP协议向服务器发送上行数据,接收服务器通过所述MQTT推送链路推送的下行数据。
在一个改进的实施例中,在通过HTTP协议向服务器发送上行数据之前,还包括:
对所述上行数据采用SSL加密链路加密,或者采用密钥进行数据对称加密。
一种客户端设备,包括:
HTTP请求发送模块,用于向服务器发送HTTP请求,所述HTTP请求携带有客户端设备的身份识别信息;
信息接收模块,用于从服务器接收有权订阅的推送通道列表和订阅令牌;有权订阅的推送通道列表由服务器根据客户端设备提交的身份识别信息获取,订阅令牌由服务器根据客户端设备提交的身份识别信息生成;
推送通道上报模块,用于向服务器发送订阅请求,上报从所述有权订阅的推送通道列表中选择订阅的推送通道,所述订阅请求包含订阅令牌;
链路鉴权模块,用于在服务器对订阅请求中的订阅令牌鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
链路选择模块,用于通过HTTP协议向服务器发送上行数据,接收服务器通过所述MQTT推送链路推送的下行数据。
一种服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述应用于服务器的通信连接的控制方法中的各个步骤。
一种客户端设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述应用于客户端设备的通信连接的控制方法中的各个步骤。
本发明的有益效果是:本发明公开一种通信连接的控制方法、客户端设备及服务器,将MQTT协议和HTTP协议相结合,采用MQTT协议作为服务器到客户端设备的下行数据发送的链路协议。当服务器需要发送数据(包括广播、组播和单播三种数据)到客户端设备时,通过MQTT协议作为链路协议进行下发,以此来提高下行数据的下发时效性,并降低服务器下发数据的设计复杂度;采用HTTP协议作为从客户端设备到服务器的上行数据发送的链路协议,当客户端设备需要发送数据到服务器时,通过HTTP协议作为链路协议进行发送,即客户端设备发送HTTP请求到服务器,获取到响应报文后即断开HTTP链路,这样不会长期占用HTTP链路,减少对服务器资源的占用消耗,降低服务器运算压力;同时,服务器对订阅请求中的订阅令牌进行鉴权,只有具备权限的客户端设备才能订阅相应的MQTT推送通道,将不具备权限的订阅请求进行阻挡,进一步保障了服务器资源的合理利用,减少对服务器资源的占用消耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种通信连接的控制方法的流程示意图;
图2是本发明实施例提供的一种服务器的结构框图;
图3是本发明另一实施例提供的一种通信连接的控制方法的流程示意图;
图4是本发明实施例提供的一种客户端设备的结构框图;
图5是本发明实施例提供的服务器和客户端设备实现数据传输的示意图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
参考图1,如图1所示为本发明实施例提供的一种通信连接的控制方法,应用于服务器,包括以下步骤:
步骤S110、获取推送通道的描述信息,根据所述描述信息生成客户端设备有权订阅的推送通道列表;
其中,所述获取推送通道的描述信息的方式包括:通过读取配置文件获取和/或通过读取数据库表获取,所述描述信息包括通道标识符和/或通道功能描述,所述推送通道为采用MQTT协议的MQTT推送链路;
步骤S120、获取客户端设备发送的HTTP请求,所述HTTP请求携带有客户端设备的身份识别信息;
其中,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;所述客户端设备信息包括客户端设备ID和客户端设备密码,所述使用该客户端设备的用户信息包括用户账户和用户密码;
步骤S130、根据客户端设备提交的身份识别信息查询该客户端设备有权订阅的推送通道列表,根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌;
步骤S140、将客户端设备有权订阅的推送通道列表和订阅令牌下发给该客户端设备;
步骤S150、接收客户端设备发送的订阅请求,获取客户端设备从所述有权订阅的推送通道列表中选择的推送通道,所述订阅请求包含订阅令牌;
步骤S160、对订阅请求中的订阅令牌进行鉴权,在鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
步骤S170、通过所述服务器到客户端设备的MQTT推送链路向对应的客户端设备推送下行数据,接收客户端设备通过HTTP协议发送的上行数据。
本技术领域中,MQTT协议是一个基于消息发布-订阅的传输链路协议。采用MQTT协议作为链路协议,数据发送方首先建立推送通道,接收方需要订阅推送通道;当需要发送数据时,发送方在推送通道上发布数据,接收方即可监听并接收到数据。这种机制下,接收方只需要订阅推送通道即可接收数据,对接收方来说简单、易于实现;同时MQTT协议的有效载荷占比比较高,数据传输效率比较高。
MQTT协议非常适合背景技术中第1种和第2种数据发送形式。如果将MQTT协议的消息发布-订阅机制应用于从服务器到客户端设备的下行单播消息,以及从客户端设备到服务器的上行消息的发送,服务器需要针对每个客户端设备建立一个专属的推送通道,并为每个通道建立心跳功能以维护通道状态,这样就会导致推送通道长期占用服务器资源,由于推送通道数量与客户端设备数量成正比,当客户端设备数量庞大时,推送通道的数量也会比较庞大,这样不仅会造成服务器的资源消耗比较多,同时增加服务器的设计复杂度。
HTTP协议是一种面向无状态的请求-响应协议,使用HTTP协议作为客户端设备与服务器之间的链路协议,通常是由客户端设备主动发起建立传输链路,发送请求消息到服务器,获取服务器返回的响应消息。由于HTTP协议是无状态的协议,客户端设备获取到响应消息以后就断开链路,服务器即可释放链路相关的资源,因此客户端设备不会长期占用服务器的资源,从而可以提高服务器的响应能力。HTTP协议具有简单、易于管理等特点,也是广泛应用于客户端设备与服务器之间的链路协议。
使用HTTP协议作为客户端设备与服务器之间的链路协议,非常适合从客户端设备主动发送数据到服务器的应用场景,即背景技术中第3种数据发送形式。但是对于下行数据发送的情形,则需要采用由客户端设备主动发送HTTP请求到服务器定期轮询的方式,或者以HTTP协议的长连接方式来获取下行的数据,这两种方式分别存在以下缺点:
定期轮询的方式将会发送大量无数据返回的请求(即服务器接收到轮询请求的时候可能并不需要向客户端设备返回数据),大大增加请求量,增加服务器的资源消耗和压力;同时由于是定期轮询,客户端设备获取的数据的最长时延是轮询间隔,如果要提高数据的实时性,则需要缩短轮询间隔,这样会进一步加大服务器的压力;
对于HTTP的长连接方式(即服务器接收到客户端设备的请求后,一直保持链路,直到有数据下发时才发送响应消息),客户端设备发起的链路会存在长期占用服务器端的链路资源,并且由于HTTP协议本身的协议开销比较大,同样会增加服务器的资源消耗和压力。
本申请的发明人通过分析上述MQTT协议和HTTP协议的利弊,针对现有技术中的缺陷,将MQTT协议和HTTP协议相结合,采用MQTT协议作为服务器到客户端设备的下行数据发送的链路协议。当服务器需要发送数据(包括广播、组播和单播三种数据)到客户端设备时,通过MQTT协议作为链路协议进行下发,以此来提高下行数据的下发时效性,并降低服务器下发数据的设计复杂度;采用HTTP协议作为从客户端设备到服务器的上行数据发送的链路协议,当客户端设备需要发送数据到服务器时,通过HTTP协议作为链路协议进行发送,即客户端设备发送HTTP请求到服务器,获取到响应报文后即断开HTTP链路,这样不会长期占用HTTP链路,减少对服务器资源的占用消耗,降低服务器运算压力。
同时,服务器对订阅请求中的订阅令牌进行鉴权,只有具备权限的客户端设备才能订阅相应的MQTT推送通道,将不具备权限的订阅请求进行阻挡,进一步保障了服务器资源的合理利用,减少对服务器资源的占用消耗。
在一个改进的实施例中,所述根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌,包括:
对客户端设备提交的身份识别信息进行授权;
将授权后的身份识别信息和令牌有效期进行拼凑,形成一个字符串;
对所述字符串进行AES加密,生成一个密码串;
对所述密码串进行Base64编码,生成具有有效期限的订阅令牌。
在一个改进的实施例中,所述对订阅请求中的订阅令牌进行鉴权,包括:
对订阅令牌依次进行Base64解码、AES解密,得到令牌字符串;
从所述令牌字符串中获取身份识别信息和令牌有效期;
当身份识别信息已授权,且令牌在有效期内时,则判定订阅请求鉴权通过。
为了保障链路上的数据传输安全,在一个改进的实施例中,在通过所述MQTT推送链路向对应的客户端设备推送下行数据之前,还包括:
对所述下行数据采用密钥进行数据对称加密。
参考图2,本发明实施例还提供一种服务器,包括:
推送通道列表生成模块110,用于获取推送通道的描述信息,根据所述描述信息生成客户端设备有权订阅的推送通道列表;
其中,所述获取推送通道的描述信息的方式包括:通过读取配置文件获取和/或通过读取数据库表获取,所述描述信息包括通道标识符和/或通道功能描述,所述推送通道为采用MQTT协议的MQTT推送链路;
HTTP请求获取模块120,用于获取客户端设备发送的HTTP请求,所述HTTP请求携带有客户端设备的身份识别信息;
其中,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;所述客户端设备信息包括客户端设备ID和客户端设备密码,所述使用该客户端设备的用户信息包括用户账户和用户密码;
推送通道列表获取模块130,用于根据客户端设备提交的身份识别信息查询该客户端设备有权订阅的推送通道列表,根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌;
信息下发模块140,用于将客户端设备有权订阅的推送通道列表和订阅令牌下发给该客户端设备;
推送通道获取模块150,用于接收客户端设备发送的订阅请求,获取客户端设备从所述有权订阅的推送通道列表中选择的推送通道,所述订阅请求包含订阅令牌;
链路鉴权模块160,用于对订阅请求中的订阅令牌进行鉴权,在鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
链路选择模块170,用于通过所述服务器到客户端设备的MQTT推送链路向对应的客户端设备推送下行数据,接收客户端设备通过HTTP协议发送的上行数据。
参考图3,本发明实施例还提供另一种通信连接的控制方法,应用于客户端设备,包括:
步骤S210、向服务器发送HTTP请求,所述HTTP请求携带有客户端设备的身份识别信息;
其中,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;所述客户端设备信息包括客户端设备ID和客户端设备密码,所述使用该客户端设备的用户信息包括用户账户和用户密码;
步骤S220、从服务器接收有权订阅的推送通道列表和订阅令牌;
其中,有权订阅的推送通道列表由服务器根据客户端设备提交的身份识别信息获取,订阅令牌由服务器根据客户端设备提交的身份识别信息生成;
步骤S230、向服务器发送订阅请求,上报从所述有权订阅的推送通道列表中选择订阅的推送通道,所述订阅请求包含订阅令牌;
步骤S240、在服务器对订阅请求中的订阅令牌鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
步骤S250、通过HTTP协议向服务器发送上行数据,接收服务器通过所述MQTT推送链路推送的下行数据。
为了保障链路上的数据传输安全,在一个改进的实施例中,在通过HTTP协议向服务器发送上行数据之前,还包括:
对所述上行数据采用SSL加密链路加密,或者采用密钥进行数据对称加密。
参考图4,本发明实施例还提供一种客户端设备,包括:
HTTP请求发送模块210,用于向服务器发送HTTP请求;
其中,所述HTTP请求携带有客户端设备的身份识别信息,所述身份识别信息包括客户端设备的ID和使用该客户端设备的用户信息;
信息接收模块220,用于从服务器接收有权订阅的推送通道列表和订阅令牌;
其中,有权订阅的推送通道列表由服务器根据客户端设备提交的身份识别信息获取,订阅令牌由服务器根据客户端设备提交的身份识别信息生成;
推送通道上报模块230,用于向服务器发送订阅请求,上报从所述有权订阅的推送通道列表中选择订阅的推送通道,所述订阅请求包含订阅令牌;
链路鉴权模块240,用于在服务器对订阅请求中的订阅令牌鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
链路选择模块250,用于通过HTTP协议向服务器发送上行数据,接收服务器通过所述MQTT推送链路推送的下行数据。
参考图5,图5为服务器和客户端设备实现上行数据传输和下行数据传输的示意图:从图5中可以直观的看出,从服务器到客户端设备的下行数据采用MQTT协议的方式进行传输,从客户端设备到服务器的上行数据采用HTTP协议的方式进行传输。
本发明实施例还提供一种服务器,所述服务器包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述应用于服务器的通信连接的控制方法中的各个步骤。
本发明实施例还提供一种客户端设备,所述客户端设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述应用于客户端设备的通信连接的控制方法中的各个步骤。
尽管本发明的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,而是应当将其视作是通过参考所附权利要求,考虑到现有技术为这些权利要求提供广义的可能性解释,从而有效地涵盖本发明的预定范围。此外,上文以发明人可预见的实施例对本发明进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本发明的非实质性改动仍可代表本发明的等效改动。

Claims (10)

1.一种通信连接的控制方法,应用于服务器,其特征在于,包括:
获取推送通道的描述信息,根据所述描述信息生成客户端设备有权订阅的推送通道列表,所述推送通道为采用MQTT协议的MQTT推送链路;
获取客户端设备发送的HTTP请求,获取到响应报文后即断开HTTP链路,所述HTTP请求携带有客户端设备的身份识别信息,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;
根据客户端设备提交的身份识别信息查询该客户端设备有权订阅的推送通道列表,根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌;
将客户端设备有权订阅的推送通道列表和订阅令牌下发给该客户端设备;
接收客户端设备发送的订阅请求,获取客户端设备从所述有权订阅的推送通道列表中选择的推送通道,所述订阅请求包含订阅令牌;
对订阅请求中的订阅令牌进行鉴权,在鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
通过所述服务器到客户端设备的MQTT推送链路向对应的客户端设备推送下行数据,接收客户端设备通过HTTP协议发送的上行数据。
2.根据权利要求1所述的一种通信连接的控制方法,其特征在于,所述根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌,包括:
对客户端设备提交的身份识别信息进行授权;
将授权后的身份识别信息和令牌有效期进行拼凑,形成一个字符串;
对所述字符串进行AES加密,生成一个密码串;
对所述密码串进行Base64编码,生成具有有效期限的订阅令牌。
3.根据权利要求2所述的一种通信连接的控制方法,其特征在于,所述对订阅请求中的订阅令牌进行鉴权,包括:
对订阅令牌依次进行Base64解码、AES解密,得到令牌字符串;
从所述令牌字符串中获取身份识别信息和令牌有效期;
当身份识别信息已授权,且令牌在有效期内时,则判定订阅请求鉴权通过。
4.根据权利要求1所述的一种通信连接的控制方法,其特征在于,在通过所述MQTT推送链路向对应的客户端设备推送下行数据之前,还包括:
对所述下行数据采用密钥进行数据对称加密。
5.一种服务器,其特征在于,包括:
推送通道列表生成模块,用于获取推送通道的描述信息,根据所述描述信息生成客户端设备有权订阅的推送通道列表,所述推送通道为采用MQTT协议的MQTT推送链路;
HTTP请求获取模块,用于获取客户端设备发送的HTTP请求,获取到响应报文后即断开HTTP链路,所述HTTP请求携带有客户端设备的身份识别信息,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;
推送通道列表获取模块,用于根据客户端设备提交的身份识别信息查询该客户端设备有权订阅的推送通道列表,根据客户端设备提交的身份识别信息生成该客户端设备的订阅令牌;
信息下发模块,用于将客户端设备有权订阅的推送通道列表和订阅令牌下发给该客户端设备;
推送通道获取模块,用于接收客户端设备发送的订阅请求,获取客户端设备从所述有权订阅的推送通道列表中选择的推送通道,所述订阅请求包含订阅令牌;
链路鉴权模块,用于对订阅请求中的订阅令牌进行鉴权,在鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
链路选择模块,用于通过所述服务器到客户端设备的MQTT推送链路向对应的客户端设备推送下行数据,接收客户端设备通过HTTP协议发送的上行数据。
6.一种通信连接的控制方法,应用于客户端设备,其特征在于,包括:
向服务器发送HTTP请求,获取到响应报文后即断开HTTP链路,所述HTTP请求携带有客户端设备的身份识别信息,所述身份识别信息包括客户端设备信息和使用该客户端设备的用户信息;
从服务器接收有权订阅的推送通道列表和订阅令牌;有权订阅的推送通道列表由服务器根据客户端设备提交的身份识别信息获取,订阅令牌由服务器根据客户端设备提交的身份识别信息生成;
向服务器发送订阅请求,上报从所述有权订阅的推送通道列表中选择订阅的推送通道,所述订阅请求包含订阅令牌;
在服务器对订阅请求中的订阅令牌鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
通过HTTP协议向服务器发送上行数据,接收服务器通过所述MQTT推送链路推送的下行数据。
7.根据权利要求6所述的一种通信连接的控制方法,其特征在于,在通过HTTP协议向服务器发送上行数据之前,还包括:
对所述上行数据采用SSL加密链路加密,或者采用密钥进行数据对称加密。
8.一种客户端设备,其特征在于,包括:
HTTP请求发送模块,用于向服务器发送HTTP请求,获取到响应报文后即断开HTTP链路,所述HTTP请求携带有客户端设备的身份识别信息;
信息接收模块,用于从服务器接收有权订阅的推送通道列表和订阅令牌;有权订阅的推送通道列表由服务器根据客户端设备提交的身份识别信息获取,订阅令牌由服务器根据客户端设备提交的身份识别信息生成;
推送通道上报模块,用于向服务器发送订阅请求,上报从所述有权订阅的推送通道列表中选择订阅的推送通道,所述订阅请求包含订阅令牌;
链路鉴权模块,用于在服务器对订阅请求中的订阅令牌鉴权通过后,通过客户端设备选择的推送通道建立服务器到客户端设备的MQTT推送链路;
链路选择模块,用于通过HTTP协议向服务器发送上行数据,接收服务器通过所述MQTT推送链路推送的下行数据。
9.一种服务器,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述方法的步骤。
10.一种客户端设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求6-7任一所述方法的步骤。
CN202010405658.6A 2020-05-14 2020-05-14 一种通信连接的控制方法、客户端设备及服务器 Active CN111698289B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010405658.6A CN111698289B (zh) 2020-05-14 2020-05-14 一种通信连接的控制方法、客户端设备及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010405658.6A CN111698289B (zh) 2020-05-14 2020-05-14 一种通信连接的控制方法、客户端设备及服务器

Publications (2)

Publication Number Publication Date
CN111698289A CN111698289A (zh) 2020-09-22
CN111698289B true CN111698289B (zh) 2022-11-04

Family

ID=72477336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010405658.6A Active CN111698289B (zh) 2020-05-14 2020-05-14 一种通信连接的控制方法、客户端设备及服务器

Country Status (1)

Country Link
CN (1) CN111698289B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112612985A (zh) * 2020-12-24 2021-04-06 广州致远电子有限公司 基于WebSocket的多用户和多类型消息的推送系统及方法
CN113922968A (zh) * 2021-10-19 2022-01-11 中国电信股份有限公司 访问令牌的生成及校验方法、装置、电子设备和存储介质
CN114500495B (zh) * 2022-04-01 2022-09-30 荣耀终端有限公司 一种设备控制方法和设备控制系统
CN115914367B (zh) * 2023-02-17 2023-05-30 福建联迪商用科技有限公司 智能设备的消息推送方法与系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019205907A1 (zh) * 2018-04-27 2019-10-31 电子科技大学中山学院 一种基于mqtt消息协议的智能设备通讯平台
CN110460638A (zh) * 2019-07-11 2019-11-15 深圳职业技术学院 消息推送方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019205907A1 (zh) * 2018-04-27 2019-10-31 电子科技大学中山学院 一种基于mqtt消息协议的智能设备通讯平台
CN110460638A (zh) * 2019-07-11 2019-11-15 深圳职业技术学院 消息推送方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于iOS平台的组件化即时通信系统的设计与实现;郝学智;《中国优秀硕士论文全文数据库 信息科技辑》;20180315;第22、49页 *

Also Published As

Publication number Publication date
CN111698289A (zh) 2020-09-22

Similar Documents

Publication Publication Date Title
CN111698289B (zh) 一种通信连接的控制方法、客户端设备及服务器
CN111799867B (zh) 一种充电设备与充电管理平台间的互信认证方法及系统
EP3223549B1 (en) Wireless network access method and access apparatus, client and storage medium
US8056139B2 (en) Method and system for authorizing multimedia multicasting
CN101510877B (zh) 单点登录方法和系统、通信装置
WO2012100677A1 (zh) 用于移动终端的身份管理方法及装置
CN110225050B (zh) Jwt令牌的管理方法
US11552791B2 (en) Access technology agnostic service network authentication
CN111212425A (zh) 一种接入方法和服务器、终端
CN114401151A (zh) 群组消息加密方法、装置、设备和存储介质
US20240064143A1 (en) Methods, mediums, and systems for verifying devices in an encrypted messaging system
CN114362998B (zh) 一种基于边缘云系统的网络安全保护方法
RU2365044C2 (ru) Способ и устройство для доставки ключей
US20100042836A1 (en) Method for securely transmitting device management message via broadcast channel and server and terminal thereof
Lee et al. A practical RFID authentication mechanism for digital television
CN111182532B (zh) 无线局域网连接方法、装置、系统、设备及存储介质
CN109445328B (zh) 核电站仪控系统的防止重放攻击方法和装置
CN112866999A (zh) 一种LoRa通讯方法、系统、终端、服务器及可读存储介质
CN115914367B (zh) 智能设备的消息推送方法与系统
CN107070912B (zh) 一种分布式系统的网络安全验证方法和系统
CN114124378B (zh) 基于autbus总线的通信方法、系统、设备及介质
CN117914553A (zh) 一种数字化电网中台数据共享方法及系统
KR20120077214A (ko) 피투피 네트워크에 있어서 컨텐츠 서비스 제공 방법
CN116633612A (zh) 云手机登录方法、装置、存储介质及电子设备
CN115473694A (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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 528311 no.l203 Country Garden International Club, Beijiao Town, Shunde District, Foshan City, Guangdong Province

Patentee after: Zero Hole Technology Co.,Ltd.

Address before: 528311 second floor, Shunde Country Garden International Club, Beijiao Town, Shunde District, Foshan City, Guangdong Province

Patentee before: GUANGDONG ACIGA TECHNOLOGY Co.,Ltd.