CN106603542A - 一种云端和线下场所服务器的通信方法与装置 - Google Patents
一种云端和线下场所服务器的通信方法与装置 Download PDFInfo
- Publication number
- CN106603542A CN106603542A CN201611196390.XA CN201611196390A CN106603542A CN 106603542 A CN106603542 A CN 106603542A CN 201611196390 A CN201611196390 A CN 201611196390A CN 106603542 A CN106603542 A CN 106603542A
- Authority
- CN
- China
- Prior art keywords
- client
- offline
- server
- cloud
- cloud server
- 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.)
- Pending
Links
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/14—Session management
- H04L67/141—Setup of application sessions
-
- 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/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
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
本发明公开了一种云端和线下场所服务器的通信方法和装置,本发明中,通信方法包括线下场所分配唯一标识ID和一对RSA秘钥对,同时根据ID分配子域名;云端服务器设置监听端口;线下场所客户端主动发起与一个与云端的控制连接;云端服务器端验证线下客户端的合法性后,关联上标示ID;云端服务器接收到外部服务访问子域名的请求,服务器根据子域名定位对于的控制连接,向客户端发起建立“传输连接”的请求,通过握手协议,建立“传输连接”;建立“传输连接”后,云端服务器将外部数据请求通过“传输连接”发送至客户端;客户端根据外部数据请求将数据发送至云端服务器。本发明通过场所服务器与线上服务器的长连接对话,支持线上业务访问线下服务器。本发明解决现有技术存在的线下场所和线上服务器数据交换的需求需要额外购买外网IP和域名的问题。
Description
技术领域
本公开涉及数据通信领域,特别是涉及云端和线下场所服务器的通信方法与装置。
背景技术
随着O2O大潮的到来,KTV,影院和酒吧这些线下场所和线上服务器数据交换的需求越来越大,不论是在线预订,会员消费等需求都要求线上业务服务器能及时的访问到线下场所的服务器。
现有技术主要包括两种解决方案,一种是为每个线下场所购买独立外网ip地址,这样线上可以通过该IP地址直接访问到线下服务,这个方案很简单,但是不足之处也很明显,ipv4的地址比较稀缺,场所拿到的IP地址会经常变动,如果线上没有及时修改就会出错。
另一种方案是让线下场所购买独立域名,动态解析IP地址,线下不需要记住具体IP,只需要通过域名来访问线下场所服务。这个方案比较流行,唯一不足的是域名申请繁琐,同时有额外的购买成本。
上述两种现有技术中,外网IP和域名都需要额外的购买,对于线下场所来说是一笔额外的开销。
发明内容
为克服相关技术中存在的问题,本发明公开提供了一种云端和线下服务器的通信方法和装置。本发明通过场所服务器与线上服务器的长连接对话,支持线上业务访问线下服务器。
本发明的主要目的是为了解决现有技术存在的线下场所和线上服务器数据交换的需求需要额外购买外网IP和域名的问题,其中:
根据本公开实施例的第一方面,提供一种云端和线下服务器的通信技术方案包括:
S100,线下场所分配唯一标识ID和一对RSA秘钥对,同时根据ID分配子域名;
所述线下场所的ID为3位数数字编码;
所述标识ID和RSA秘钥对为一一对应的关系;
S200,云端服务器设置监听端口;
所述监听端口设置在云端服务器上;
所述云端服务器上的监听端口负责接收客户端的连接建立请求;
S300,线下场所客户端主动发起与一个与云端的控制连接;
所述线下场所客户端主动发起一个与云端的监控端口的控制连接;
所述控制连接是一个TCP长连接;
S400,云端服务器端验证线下客户端的合法性后,关联上标示ID;
所述验证合法性使用的是RSA非对称加密验证方法;
所述RSA秘钥验证方法中,客户端保存私钥,云端服务器端保存公钥,通过秘钥验证客户端的合法性,防止非法客户端伪造占用资源;
S500,云端服务器接收到外部服务访问子域名的请求,服务器根据子域名定位对于的控制连接,向客户端发起建立“传输连接”的请求,通过握手协议,建立“传输连接”;
所述子域名定位客户端对应的是客户端的ID,客户端的ID与子域名是一一对应的关系;
S600,建立“传输连接”后,云端服务器将外部数据请求通过“传输连接”发送至客户端;
S700,客户端根据外部数据请求将数据发送至云端服务器。
在本发明的一个实施例中,结合本发明实施例的第一方面,本结合第一方面,在第一方面的第一种可能的实现方式中,所述线下场所客户端主动发起与一个与云端的控制连接,控制连接是一个TCP长连接,以使云端服务器接收的外部数据能够通过“传输连接”发送至客户端,客户端将数据发送至云端服务器,包括:
其中,“控制连接”的畅通,将保证云端与客户端的数据传输稳定。
步骤S400结束后,agent客户端定期向云端服务器发送心跳请求,云端会对控制连接进行确认,如果收不到确认信息,重复步骤S300-S700;
所述“心跳请求”的发送时间,用户可在客户端自由设定。
其中,用户对于“控制连接”的时间要求不同,可对云端服务器和客户端的连接时间进行设定。
在其中一个实施例中,“心跳请求”的时间设定为:两小时发送一次;
更优的,由于线下场所的服务时间的特点,外部服务数据请求的时间高峰为18点至凌晨2点,因此“心跳请求”的时间可设定为凌晨2点0分至17点59分为3小时一次,18点零分至次日凌晨1点59分为1小时一次。
本发明的实施方式还提供了一种云端和线下场所服务器的通信装置,包括:
ID分配模块,用于线下场所分配唯一标识ID和一对RSA秘钥对,同时根据ID分配子域名;
云端监听模块,用于云端服务器设置监听端口,责接收客户端的连接建立请求;
连接模块,用于线下场所客户端主动发起与一个与云端的控制连接;
验证模块,用于云端服务器端验证线下客户端的合法性,验证完成后关联标识ID;
云端发送模块,用于云端服务器将外部数据请求通过“传输连接”发送至客户端;
客户端接收模块,用于接收云端服务器发送的外部数据请求;
客户端发送模块,用于客户端根据外部数据请求将数据发送至云端服务器。
本公开的实施例提供的技术方案可以包括以下有益效果:通过场所服务器与线上服务器的长连接对话,支持线上业务访问线下服务器,线下场所无需再需要额外购买外网IP和域名的问题。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的方法的流程图;
图2根据一示例性实施例示出的一种装置的框图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。根据本发明的实施例,提供一种云端和线下场所服务器的通信方法与置。
图1是根据本发明实施例的一种云端和线下场所服务器的通信方法的流程图,如图1所示,该方法包括:
S100,线下场所分配唯一标识ID和一对RSA秘钥对,同时根据ID分配子域名;
所述线下场所的ID为3位数数字编码;
在其中一个实施例中线下场所的ID编码为798;
所述标识ID798和RSA秘钥对为一一对应的关系;
同时为标识为798的线下场所分配对应子域名;
在其中一个实施例中,云端服务器的域名为ktv.com,线下场所798的子域名为798.ktv.com。
S200,云端服务器设置监听端口;
其中,云端服务器启动后,设置一个监听端口;
在其中一个实施例中云端的监听端口为8080端口;
所述云端服务器上的监听端口负责接收客户端的连接建立请求。
S300,线下场所客户端主动发起与一个与云端的控制连接;
在其中一个实施例中,线下场所的agent客户端会主动发起一个与云端服务器8080端口的长控制连接;
所述线下场所客户端主动发起一个与云端的监控端口的控制连接是一个TCP的长连接。
S400,云端服务器端验证线下客户端的合法性后,关联上标示ID;
在其中一个实施例中,客户端和云端服务器建立TCP长连接后,云端服务器验证客户端的合法性,合法性的验证使用秘钥方式;
所述验证合法性使用的是RSA非对称加密验证方法;
所述RSA秘钥验证方法中,客户端保存私钥,云端服务器端保存公钥,通过秘钥验证客户端的合法性;
所述RSA秘钥验证方法为建立控制连接后,客户端利用私钥加密信息后传输数据,服务器收到带有私钥加密的数据后,使用云端服务器的公钥进行解密;
所述RSA秘钥验证是通过控制连接交互数据验证客户端的合法性;
所述合法性的验证是为了防止非法客户端伪造占用云端资源。
在其中一个实施例中,云端服务器通过控制连接的交互数据加密解密过程完成客户端的合法性验证后,会将该连接记录下来,并对该客户端关联其子域名;
其中,标识ID为798的线下客户端向云端服务器发送连接请求,建立控制连接后,通过RSA秘钥的合法性验证,云端服务器记录下该线下客户端的数据记录,并为该客户端关联其子域名798.ktv.com。
S500,云端服务器接收到外部服务访问子域名的请求,服务器根据子域名定位对于的控制连接,向客户端发起建立“传输连接”的请求,通过握手协议,建立“传输连接”;
在其中一个实施例中,云端服务器接收到外部服务访问798.ktv.com的请求时云端服务器中的将根据外部访问请求定位对应的长连接;
其中,云端服务器通过定位后,向定位的客户端发起建立“传输连接”的TCP请求,通过TCP握手协议,将“传输连接”建立成功;
所述子域名定位客户端对应的是客户端的ID,客户端的ID与子域名是一一对应的关系。
S600,建立“传输连接”后,云端服务器将外部数据请求通过“传输连接”发送至客户端;
S700,客户端根据外部数据请求将数据发送至云端服务器;
在其中一个实施例中,建立成功“传输连接”后,服务器会把外部服务的请求数据通过“传输连接”传递给客户端,客户端会将收到的数据转发给内部服务,这样就实现了外部服务与内部服务的互通;
其中,外部数据请求为访问KTV剩余的可预订剩余的可预订包房的数量接口http://798.ktv.com/left/room时,服务器会把这个请求通过“传输连接” 转发到线下场所的客户端内部服务器,由客户端的内部服务器解析处理/left/room接口,并将处理的数据通过“传输连接”返回云端服务器;
云端服务器将客户端的返回数据返回外部服务数据请求,完成内外部数据的连接传输。
在其中一个实施例中,为保证“控制连接”的畅通,在agent客户端需要定期在“控制连接”中给服务器发心跳请求,如果收不到服务器的确认,及时发起重连申请,重复步骤S300将“控制连接”建立起来。
根据本发明的实施例,还提供了一种云端和线下场所服务器的通信装置,包括:
云端服务器中包括:ID分配模块1、云端监听模块2、验证模块3和云端发送模块4;
线下场所客户端包括:连接模块5、客户端接收模块6和客户端发送模块7。
ID分配模块,用于线下场所分配唯一标识ID和一对RSA秘钥对,同时根据ID分配子域名;
云端监听模块,用于云端服务器设置监听端口,责接收客户端的连接建立请求;
连接模块,用于线下场所客户端主动发起与一个与云端的控制连接;
验证模块,用于云端服务器端验证线下客户端的合法性,验证完成后关联标识ID;
云端发送模块,用于云端服务器将外部数据请求通过“传输连接”发送至客户端;
客户端接收模块,用于接收云端服务器发送的外部数据请求;
客户端发送模块,用于客户端根据外部数据请求将数据发送至云端服务器。
本发明的有益效果:通过场所服务器与线上服务器的长连接对话,支持线上业务访问线下服务器,线下场所无需再需要额外购买外网IP和域名的问题。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制 。
Claims (6)
1.一种云端和线下场所服务器的通信方法,其特征在于,包括:
线下场所分配唯一标识ID和一对RSA秘钥对,同时根据ID分配子域名;
云端服务器设置监听端口;
线下场所客户端主动发起与一个与云端的控制连接;
云端服务器端验证线下客户端的合法性后,关联上标示ID;
云端服务器接收到外部服务访问子域名的请求,服务器根据子域名定位对于的控制连接,向客户端发起建立“传输连接”的请求,通过握手协议,建立“传输连接”;
建立“传输连接”后,云端服务器将外部数据请求通过“传输连接”发送至客户端;
客户端根据外部数据请求将数据发送至云端服务器。
2.根据权利要求1所述的方法,其特征在于,线下场所客户端主动发起与一个与云端的控制连接为一个TCP长连接。
3.根据权利要求1所述的方法,其特征在于,云端服务器端验证线下客户端的合法性使用的是RSA非对称加密验证方法。
4.根据权利要求3所述的方法,其特征在于,云端服务器端验证线下客户端的合法性使用的是RSA非对称加密验证方法中,客户端保存私钥,云端服务器端保存公钥,通过秘钥验证客户端的合法性,防止非法客户端伪造占用资源。
5.根据权利要求1所述的方法,其特征在于,为保证云端与客户端的数据传输稳定,agent客户端定期向云端服务器发送心跳请求,云端对控制连接进行确认。
6.一种云端和线下场所服务器的通信装置,其特征在于,包括:
ID分配模块,用于线下场所分配唯一标识ID和一对RSA秘钥对,同时根据ID分配子域名;
云端监听模块,用于云端服务器设置监听端口,责接收客户端的连接建立请求;
连接模块,用于线下场所客户端主动发起与一个与云端的控制连接;
验证模块,用于云端服务器端验证线下客户端的合法性,验证完成后关联标识ID;
云端发送模块,用于云端服务器将外部数据请求通过“传输连接”发送至客户端;
客户端接收模块,用于接收云端服务器发送的外部数据请求;
客户端发送模块,用于客户端根据外部数据请求将数据发送至云端服务器。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201611196390.XA CN106603542A (zh) | 2016-12-22 | 2016-12-22 | 一种云端和线下场所服务器的通信方法与装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201611196390.XA CN106603542A (zh) | 2016-12-22 | 2016-12-22 | 一种云端和线下场所服务器的通信方法与装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN106603542A true CN106603542A (zh) | 2017-04-26 |
Family
ID=58602289
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201611196390.XA Pending CN106603542A (zh) | 2016-12-22 | 2016-12-22 | 一种云端和线下场所服务器的通信方法与装置 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN106603542A (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112653685A (zh) * | 2020-12-17 | 2021-04-13 | 航天信息股份有限公司 | 客户端辅助进项通道云端交互的方法及电子设备 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101513017A (zh) * | 2006-09-15 | 2009-08-19 | 艾利森电话股份有限公司 | 用于启动与客户端设备的通信的方法和设备 |
| CN102427480A (zh) * | 2011-12-31 | 2012-04-25 | 北京新媒传信科技有限公司 | 一种多应用服务平台系统中的应用访问方法 |
| CN102833253A (zh) * | 2012-08-29 | 2012-12-19 | 五八同城信息技术有限公司 | 建立客户端与服务器安全连接的方法及服务器 |
| US20130246629A1 (en) * | 2012-03-14 | 2013-09-19 | Microsoft Corporation | Connecting to a Cloud Service for Secure Access |
| CN104917791A (zh) * | 2014-03-12 | 2015-09-16 | 海尔集团公司 | 一种发送控制指令的方法及装置 |
| CN105337935A (zh) * | 2014-07-09 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 一种建立客户端和服务端长连接的方法和装置 |
-
2016
- 2016-12-22 CN CN201611196390.XA patent/CN106603542A/zh active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101513017A (zh) * | 2006-09-15 | 2009-08-19 | 艾利森电话股份有限公司 | 用于启动与客户端设备的通信的方法和设备 |
| CN102427480A (zh) * | 2011-12-31 | 2012-04-25 | 北京新媒传信科技有限公司 | 一种多应用服务平台系统中的应用访问方法 |
| US20130246629A1 (en) * | 2012-03-14 | 2013-09-19 | Microsoft Corporation | Connecting to a Cloud Service for Secure Access |
| CN102833253A (zh) * | 2012-08-29 | 2012-12-19 | 五八同城信息技术有限公司 | 建立客户端与服务器安全连接的方法及服务器 |
| CN104917791A (zh) * | 2014-03-12 | 2015-09-16 | 海尔集团公司 | 一种发送控制指令的方法及装置 |
| CN105337935A (zh) * | 2014-07-09 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 一种建立客户端和服务端长连接的方法和装置 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112653685A (zh) * | 2020-12-17 | 2021-04-13 | 航天信息股份有限公司 | 客户端辅助进项通道云端交互的方法及电子设备 |
| CN112653685B (zh) * | 2020-12-17 | 2023-07-07 | 航天信息股份有限公司 | 客户端辅助进项通道云端交互的方法及电子设备 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4666169B2 (ja) | 信頼されないアクセス局を介した通信方法 | |
| KR100860404B1 (ko) | 다중 도메인 홈네트워크 환경에서의 디바이스 인증 방법 및장치 | |
| JP4823717B2 (ja) | 暗号通信システム、端末状態管理サーバ、暗号通信方法、および端末状態管理方法 | |
| US20030079124A1 (en) | Secure method for getting on-line status, authentication, verification, authorization, communication and transaction services for web-enabled hardware and software, based on uniform telephone address | |
| US11297115B2 (en) | Relaying media content via a relay server system without decryption | |
| CN109714447B (zh) | 基于区块链域名系统的域名生成方法和系统 | |
| JP2016529769A (ja) | Scepおよびそれぞれのマネジメントアプリケーションを使用してデバイスに対する証明書を登録する方法 | |
| CN102984045B (zh) | 虚拟专用网的接入方法及虚拟专用网客户端 | |
| WO2016106560A1 (zh) | 一种实现远程接入的方法、装置及系统 | |
| JP2007159134A (ja) | 安全なオンライン商取引のための臨時および恒久的な信用証明書を設定するためのシステムおよび方法 | |
| US8316229B2 (en) | Secure certificate installation on IP clients | |
| CN105025005A (zh) | 提供网络证书 | |
| CN106535089B (zh) | 机器对机器虚拟私有网络 | |
| US20030033375A1 (en) | Method for identifying internet users | |
| JP2004007512A (ja) | 公開鍵証明書提供装置 | |
| CN103379094A (zh) | 保护动态主机配置协议的方法、发送方和接收方 | |
| CN109995723B (zh) | 一种域名解析系统dns信息交互的方法、装置及系统 | |
| CN106603542A (zh) | 一种云端和线下场所服务器的通信方法与装置 | |
| CN102415076A (zh) | 用于验证用户关联的方法、截取模块和网络节点元件 | |
| CN101569160B (zh) | 用于传输dhcp消息的方法 | |
| JP2008098990A (ja) | アドレス管理システム、アドレス管理方法およびプログラム | |
| US10498714B2 (en) | Method and system for authentication over a public network using multiple out-of band communications channels to send keys | |
| CN112887968B (zh) | 一种网络设备管理方法、装置、网络管理设备及介质 | |
| CN113196722B (zh) | 获取与解析通信网络中的域名标识符相关的委托链的方法 | |
| JP2007189752A (ja) | 通信方法 |
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 | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170426 |
|
| RJ01 | Rejection of invention patent application after publication |