CN110022332B - 一种超文本传输安全协议代理方法、装置、设备及介质 - Google Patents

一种超文本传输安全协议代理方法、装置、设备及介质 Download PDF

Info

Publication number
CN110022332B
CN110022332B CN201810018477.0A CN201810018477A CN110022332B CN 110022332 B CN110022332 B CN 110022332B CN 201810018477 A CN201810018477 A CN 201810018477A CN 110022332 B CN110022332 B CN 110022332B
Authority
CN
China
Prior art keywords
interface
metadata
calling
blocked
file
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
CN201810018477.0A
Other languages
English (en)
Other versions
CN110022332A (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.)
Tianyi Safety Technology Co Ltd
Original Assignee
Wuhan Douyu Network 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201810018477.0A priority Critical patent/CN110022332B/zh
Publication of CN110022332A publication Critical patent/CN110022332A/zh
Application granted granted Critical
Publication of CN110022332B publication Critical patent/CN110022332B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种超文本传输安全协议代理方法、装置、电子设备和介质,方法应用于客户端,包括:调用socket接口,传入pipe文件和是否阻塞标记,生成fd;将域名和端口按固定长度封装生成元数据;调用connect接口,传入fd,判断是否阻塞;如果阻塞,当接收到connect接口返回的成功连接信号后,写入元数据和请求数据;如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,在可写事件发生后,写入元数据和请求数据;发送元数据和所述请求数据至代理客户端。解决了现有的代理方式存在的适用面小、开销大和交互速率低的技术问题。实现了扩大代理适用面,减小开销和提高交互速率的技术效果。

Description

一种超文本传输安全协议代理方法、装置、设备及介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种超文本传输安全协议代理方法、装置、设备及介质。
背景技术
由于超文本传输协议(HyperText Transfer Protocol,HTTP)代理的安全性不够,而基于超文本传输安全协议(Hypertext Transfer Protocol Secure,HTTPS)的代理相对较难实现,因为https的整个通信过程都是加密的,代理客户端无法解析出https携带的统一资源定位符(Uniform Resoure Locator,URL),就没法获取需要访问的真正服务器端的域名和端口信息。
故现有标准中,代理一般使用防火墙安全会话转换协议(Protocol for sessionstraversal across firewall securely,socks)代理。socks代理是基于传输控制协议(Transmission Control Protocol,TCP)上,http层下的一个透明代理,是属于tcp传输层级导弹代理。
然而,socks代理存在一些问题:第一,必须要求客户端支持socks标准协议,第二,较为繁杂的socks代理交互过程开销较大,并不适合简单的应用场景,第三,数据流通过标准协议栈,无法使用高效的local domain socket接口进行本地数据交互,交互速率低。
可见,现有的代理方式存在适用面小、开销大和交互速率低的技术问题。
发明内容
本申请实施例通过提供一种超文本传输安全协议代理方法、装置、设备及介质,解决了现有的代理方式存在的适用面小、开销大和交互速率低的技术问题。
第一方面,提供一种超文本传输安全协议代理方法,所述方法应用于客户端,所述方法包括:
调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
将需要访问的域名和端口按固定长度封装生成元数据;
调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
发送所述元数据和所述请求数据至代理客户端。
可选的,所述写入所述元数据和请求数据,包括:调用系统tcp write接口写入所述元数据;调用系统tcp write接口写入所述请求数据。
可选的,所述基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,包括:添加异常错误码;基于所述pipe文件、所述是否阻塞标记和所述异常错误码生成文件描述符fd。
第二方面,提供一种超文本传输安全协议代理方法,所述方法应用于代理客户端,所述方法包括:
调用bind接口,传入pipe文件和是否阻塞标记;调用socket接口创建原始文件描述符unix-domain socket fd;设置阻塞模型,包括阻塞状态和非阻塞状态,所述阻塞状态和所述非阻塞状态通过所述是否阻塞标记判断;调用系统接口unlink,以避免pipe文件对应的pipe通道被占用;设置unix-domain socket地址变量;调用bind接口,基于所述pipe文件、所述是否阻塞标记、所述unix-domain socket地址变量和所述原始文件描述符unix-domain socket fd生成文件描述符fd,发送所述文件描述符fd至客户端;
如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
调用accept接口,接收客户端发送的所述元数据和所述请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
可选的,所述基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,包括:调用socket接口创建原始文件描述符unix-domain socket fd;设置阻塞模型,包括阻塞状态和非阻塞状态,所述阻塞状态和所述非阻塞状态通过所述是否阻塞标记判断;调用系统接口unlink,以避免pipe文件对应的pipe通道被占用;设置unix-domain socket地址变量;调用bind接口,基于所述pipe文件、所述是否阻塞标记、所述unix-domain socket地址变量和所述原始文件描述符unix-domain socket fd生成文件描述符fd。
可选的,所述调用accept接口包括:调用accept接口对所述文件描述符fd,添加异常错误码。
第三方面,提供一种超文本传输协议代理装置,所述装置为客户端,包括:
第一调用模块,用于调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
封装模块,用于将需要访问的域名和端口按固定长度封装生成元数据;
第二调用模块,用于调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
第一写入模块,用于如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
第二写入模块,用于如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
第一发送模块,用于发送所述元数据和所述请求数据至代理客户端。
第四方面,提供一种超文本传输安全协议代理装置,所述装置为代理客户端,包括:
第三调用模块,用于调用bind接口,传入pipe文件和是否阻塞标记;调用socket接口创建原始文件描述符unix-domain socket fd;设置阻塞模型,包括阻塞状态和非阻塞状态,所述阻塞状态和所述非阻塞状态通过所述是否阻塞标记判断;调用系统接口unlink,以避免pipe文件对应的pipe通道被占用;设置unix-domain socket地址变量;调用bind接口,基于所述pipe文件、所述是否阻塞标记、所述unix-domain socket地址变量和所述原始文件描述符unix-domain socket fd生成文件描述符fd,发送所述文件描述符fd至客户端;
传入模块,用于如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
第四调用模块,用于调用accept接口,接收客户端发送的所述元数据和所述请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
第一访问模块,用于如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
第二访问模块,用于如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
第二发送模块,用于读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
第五方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面或第二方面任一所述的方法。
第六方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面或第二方面任一所述的方法。
申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本申请实施例提供的方法、装置、电子设备及介质,通过调用socket接口,传入pipe文件和是否阻塞标记,并生成文件描述符fd,以使后续接口可以通过fd判断写入元数据和请求数据的模式,再将需要访问的域名和端口按固定长度封装生成元数据,并调用connect接口,传入所述文件描述符fd,并写入所述元数据和请求数据,并发送所述元数据和所述请求数据至代理客户端,以使所述代理客户端可以基于预先商定的固定长度从接收的数据中提取出所述元数据,并获得需要访问的域名和端口,从而实现了一种能够获得域名和端口的HTTPS代理方式,相较于socks代理适用面更广,且开销较小。
进一步,本申请实施例提供的方法、装置、电子设备及介质,调用了socket接口、connect接口、bind接口、listen接口和accept接口等高效的local domain socket接口,能提高代理客户端与客户端的交互速率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一中超文本传输安全协议代理方法的流程图;
图2为本申请实施例二中超文本传输安全协议代理方法的流程图;
图3为本申请实施例三中超文本传输安全协议代理装置的结构示意图;
图4为本申请实施例四中超文本传输安全协议代理装置的结构示意图;
图5为本申请实施例中电子设备的结构示意图;
图6为本申请实施例中计算机可读存储介质600的结构示意图。
具体实施方式
本申请实施例通过提供一种超文本传输安全协议代理方法、装置、设备及介质,解决了现有的代理方式存在的适用面小、开销大和交互速率低的技术问题。实现了扩大代理适用面,减小开销和提高交互速率的技术效果。
本申请实施例的技术方案为解决上述技术问题,总体思路如下:
一种超文本传输安全协议代理方法,所述方法应用于客户端,所述方法包括:
调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
将需要访问的域名和端口按固定长度封装生成元数据;
调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
发送所述元数据和所述请求数据至代理客户端。
具体来讲,通过调用socket接口,传入pipe文件和是否阻塞标记,并生成文件描述符fd,以使后续接口可以通过fd判断写入元数据和请求数据的模式,再将需要访问的域名和端口按固定长度封装生成元数据,并调用connect接口,传入所述文件描述符fd,并写入所述元数据和请求数据,并发送所述元数据和所述请求数据至代理客户端,以使所述代理客户端可以基于预先商定的固定长度从接收的数据中提取出所述元数据,并获得需要访问的域名和端口,从而实现了一种能够获得域名和端口的HTTPS代理方式,相较于socks代理适用面更广,且开销较小。
进一步,本申请实施例提供的方法、装置、电子设备及介质,调用了socket接口、connect接口、bind接口、listen接口和accept接口等高效的local domain socket接口,能提高代理客户端与客户端的交互速率。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
实施例一
如图1所示,本实施例提供一种超文本传输安全协议代理方法,所述方法应用于客户端,所述方法包括:
步骤S101,调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
步骤S102,将需要访问的域名和端口按固定长度封装生成元数据;
步骤S103,调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
步骤S104,如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
步骤S105,如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
步骤S106,发送所述元数据和所述请求数据至代理客户端。
需要说明的是,当前传输代理在终端上使用众多,比如,一般的游戏加速等服务,都是使用代理的方式来进行。而https由于其高度的保密性导致其代理方式较为繁琐,所以一般只能通过tcp层级的方式,将域名或者端口发送到代理客户端,再通过代理客户端将数据封装发送至需要访问的服务器端,或者,将域名或者端口发送到代理客户端,再通过代理客户端将数据封装发送至代理服务端,代理服务端再获取服务对应的服务器端的数据,然后再数据回流至客户端。
本申请通过对unix domain socket各接口进行重新封装,封装入所述元数据的生成和获取步骤,并按照HTTPS的调用流程来实现了一种能够获得域名和端口的HTTPS代理方式。
在本申请实施例中,所述客户端可以为智能手机、笔记本、台式机或平板电脑,在此不作限制。
所述代理客户端可以为计算机设备、云端或计算机设备组,在此也不作限制。
在本申请实施例中,可以设置有代理服务器,也可以不设置代理服务器,在此不作限制。如果设置有代理服务器,则所述代理服务器可以与所述代理客户端是同一台设备,也可以是不同的设备,在此也不作限制。
下面,结合图1来详细介绍本实施提供的安全协议代理方法的详细步骤:
需要说明的是,步骤S101和步骤S102不限制先后顺序。
需要说明的是,在执行步骤S101之前,需要先对各个底层unix-domain socket接口进行封装,unix-domain socket是应用层与TCP/IP协议族通信的中间软件抽象层接口,需要使各unix-domain socket接口可以按照原有的https调用顺序,来实现将域名和端口封装为元数据、将元数据放在请求数据之前和获得所述元数据。
具体对接口的封装,包括对客户端的接口的封装和对代理客户端的接口的封装,详细如下:
在客户端需要重新封装的接口有:Socket接口和Connect接口。
其中,对原生Socket接口封装的方法为,设置Socket接口只提供给客户端使用,设置Socket接口的传入参数为unix-domain socket通信的pipe文件以及阻塞模型参数,其中,所述pipe文件包括pipe全路径和pipe名称。设置根据pipe文件以及阻塞模型参数生成系统通信的文件描述符fd。进一步,还可以设置在该接口添加异常错误码,根据所述pipe文件、所述是否阻塞标记和所述异常错误码生成文件描述符fd来生成系统通信的fd。所述异常错误码用于根据其中标注的错误码来反馈该接口异常情况,以便于收到错误码的用户可以根据错误码获知通信中问题出现的位置和问题类型。
其中,对Connect接口的封装方法为,设置Connect接口的传入参数为Socket接口返回的文件描述符fd,其中包括:unix-domain socket通信pipe文件,所述pipe文件包括pipe全路径和pipe名称。还在该接口设置unix-domain socket地址变量,该地址变量用于socket接口创建fd,还设置协议族(AF_UNIX),设置通信地址,包括通信pipe的全路径以及pipe名称。还设置调用系统connect函数来添加异常错误码。所述异常错误码用于根据其中标注的错误码来反馈该接口异常情况,以便于收到错误码的用户可以根据错误码获知通信中问题出现的位置和问题类型。
在代理客户端需要重新封装的接口有:bind接口、listen接口和accept接口。
其中,对原生系统网络接口bind接口的封装方法为:设置bind接口的传入参数为unix-domain socket通信pipe文件以及是否阻塞标记,其中,所述pipe文件包括pipe全路径和pipe名称。设置bind接口的返回值为生成的文件描述符fd。设置bind接口的执行步骤依次为:先调用socket接口创建unix-domain socket的文件描述符fd;然后,设置传输模型为阻塞模型,即根据阻塞模型参数(是否阻塞标记)可区分为阻塞状态和非阻塞状态;再调用系统接口unlink接口,以避免之前有人占用所述pipe文件对应的pipe通道;再设置unix-domain socket地址变量,该地址变量用于socket接口创建fd,还设置协议族(AF_UNIX),设置通信地址,包括通信pipe的全路径以及pipe名称。最后调用bind接口,将地址变量、通信地址等参数传入。
其中,对listen接口的封装方法为:对原生listen接口进行封装,设置其传入参数为bind接口的返回值文件描述符fd。
其中,对accept接口的封装方法为:对原生accept接口进行封装,设置其传入参数为文件描述符fd,进一步,还可以设置在该接口添加异常错误码,所述异常错误码用于根据其中标注的错误码来反馈该接口异常情况,以便于收到错误码的用户可以根据错误码获知通信中问题出现的位置和问题类型。
采用上述方法对客户端的socket接口、connect接口,和代理客户端的bind接口、listen接口和accept接口进行重新封装后,即可以进行HTTPS代理,所述客户端具体步骤如下:
首先,执行步骤S101,调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd。
具体来讲,所述客户端可以是安装了应用APP的设备,通过该APP访问所述代理客户端时,需要先调用socket接口,此时socket接口会按照之前重新封装接口时的设置,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd。
在本申请实施例中,所述pipe文件和需要访问的服务器端的pipe文件一致,以能通过该对应的pipe访问到该服务器端。
进一步,为了便于在通信过程中出现问题时,用户或设备能根据错误码识别出问题的类型和位置,可以设置所述基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,包括:添加异常错误码;基于所述pipe文件、所述是否阻塞标记和所述异常错误码生成文件描述符fd。
然后,执行步骤S102,将需要访问的域名和端口按固定长度封装生成元数据。
具体封装生成所述元数据可以是在步骤S101之前执行也可以是在步骤S101之后执行,还可以与所述步骤S101同时执行,在此不作限制。
在本申请实施例中,所述需要访问的域名和端口可以是统一资源定位符url。也可以是IP地址,在此不作限制。
具体来讲,所述固定长度可以是所述客户端与所述代理服务器预先协议好长度。按所述固定长度来封装需要访问的域名和端口,能便于后续代理客户端接收到所述元数据后,可以按照所述固定长度从接收到的数据中准确提取出所述元数据。
具体来讲,在tcp建立连接之后,主要的请求数据发送前,将域名和端口封装为固定长度的元数据,将元数据在写主数据之前,写到tcp socket端口里面,然后再写主数据,使得代理客户端可以通过先读取固定长度的数据获得元数据,解封装后再获得域名与端口,从而能与需要访问的服务器进行正常数据交互。解决了https代理过程中代理无法获取域名与端口的问题,从而解决无法代理https的问题。
接下来,执行步骤S103,调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
如果阻塞,则执行步骤S104:当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;如果非阻塞,则执行步骤S105:当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据。
具体来讲,在按照HTTPS代理的标准流程调用connect接口后,会按照对connect接口重新封装时的设置,以文件描述符fd作为输入参数。然后根据所述是否阻塞标记判断通信路径是否阻塞。
在本申请实施例中,所述写入所述元数据和请求数据,包括:调用系统tcp write接口写入所述元数据;调用系统tcp write接口写入所述请求数据。即可以预先规定,先写入所述元数据作为排头,再写入所述请求数据作为尾部。这样,当代理客户端接收到数据时,可以按照预先规定从数据的起头开始,按固定长度获取封装后的所述元数据,并解数据获取元数据中的域名和端口。
步骤S106,发送所述元数据和所述请求数据至代理客户端。
具体发送所述元数据和所述请求数据至代理客户端的方法参考现有的HTTPS代理协议规定的传输方法,为了说明书的简洁在此不再累述。
具体来讲,本实施例提供的https代理基于unix-domain socket接口调用方式将域名与端口在connect成功之后发送到代理客户端,避免了一般情况下代理客户端与服务端无法获取https需要访问的域名与端口,从而无法代理https的问题。此方案既避免了本地传输需要走协议栈导致开销较大的问题,又能够支持较为良好的代理https方式。
具体来讲,通过调用socket接口,传入pipe文件和是否阻塞标记,并生成文件描述符fd,以使后续接口可以通过fd判断写入元数据和请求数据的模式,再将需要访问的域名和端口按固定长度封装生成元数据,并调用connect接口,传入所述文件描述符fd,并写入所述元数据和请求数据,并发送所述元数据和所述请求数据至代理客户端,以使所述代理客户端可以基于预先商定的固定长度从接收的数据中提取出所述元数据,并获得需要访问的域名和端口,从而实现了一种能够获得域名和端口的HTTPS代理方式,相较于socks代理适用面更广,且开销较小。
进一步,本申请实施例提供的方法、装置、电子设备及介质,调用了socket接口、connect接口、bind接口、listen接口和accept接口等高效的local domain socket接口,能提高代理客户端与客户端的交互速率。
基于同一发明构思,本申请提供了实施例一对应的代理客户端侧的方法,详见实施例二。
实施例二
本实施例提供一种超文本传输安全协议代理方法,如图2所示,所述方法应用于代理客户端,所述方法包括:
步骤S201,调用bind接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,发送所述文件描述符fd至客户端;
步骤S202,如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
步骤S203,调用accept接口,接收客户端发送的所述元数据和所述请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
步骤S204,如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
步骤S205,如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
步骤S206,读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
在本申请实施例中,所述客户端可以为智能手机、笔记本、台式机或平板电脑,在此不作限制。
所述代理客户端可以为计算机设备、云端或计算机设备组,在此也不作限制。
在本申请实施例中,可以设置有代理服务器,也可以不设置代理服务器,在此不作限制。如果设置有代理服务器,则所述代理服务器可以与所述代理客户端是同一台设备,也可以是不同的设备,在此也不作限制。
下面,结合图2详细介绍本实施例提供的超文本传输安全协议代理方法的执行步骤。
在执行步骤S201之前,需要对代理客户端侧的接口进行重新封装。鉴于在实施例一中已经详细说明过如何封装代理客户端侧的bind接口、listen接口和accept接口,为了说明书的简洁,在此不再累述。
首先,执行步骤S201,调用bind接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,发送所述文件描述符fd至客户端。
具体来讲,全局生成unix domain socket通信的pipe文件和是否阻塞标记,并按照重新封装bind接口时的设置,作为bind接口的传入参数。调用bind接口后,如果返回值大于0表示调用生成成功,如果返回值小于0,表示调用失败,并可以通过预设的错误码判断当前异常情况。
在本申请实施例中,所述基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,包括:
调用socket接口创建原始文件描述符unix-domain socket fd;
设置阻塞模型,包括阻塞状态和非阻塞状态,所述阻塞状态和所述非阻塞状态通过所述是否阻塞标记判断;
调用系统接口unlink,以避免pipe文件对应的pipe通道被占用;
设置unix-domain socket地址变量;
调用bind接口,基于所述pipe文件、所述是否阻塞标记、所述unix-domain socket地址变量和所述原始文件描述符unix-domain socket fd生成文件描述符fd。
具体来讲,上述步骤即为在重新封装bind接口时设置的步骤,在实施例一中介绍接口封装时已经做了说明,为了说明书的简洁,在此不再累述。
如果步骤S201调用bind接口成功,则执行步骤S202,调用listen接口,传入所述文件描述符fd。
具体来讲,与对listen接口进行重新封装时的设置相同,以步骤S201的bind接口生成的文件描述符fd作为输入参数,通过调用listen接口的返回值来判断调用是否成功,同样可以设置如果返回值大于0表示调用生成成功,如果返回值小于0,表示调用失败,并可以通过预设的错误码判断当前异常情况。
接下来,执行步骤S203,调用accept接口,接收客户端发送的所述元数据和所述请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据。
具体来讲,在调用accept接口过程中,还可以对所述文件描述符fd,添加异常错误码。所述异常错误码用于根据其中标注的错误码来反馈该接口异常情况,以便于收到错误码的用户可以根据错误码获知通信中问题出现的位置和问题类型。
如果阻塞,执行步骤S204,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;如果非阻塞,执行步骤S205,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口。
具体来讲,如果阻塞:调用accept接口,并等待请求事件的到来,待appcet接口返回请求后,首先调用tcp read接口从accept返回的fd中读取元数据(域名与端口的结构体)获取应用APP需要访问的服务域名与对应的端口,然后再获取其他有效数据,进入常规的通信代理流程,其中,整个读过程都是阻塞的。
如果非阻塞,添加阻塞事件到epoll模型或者其他事件模型,并与阻塞情况相同,同样等待请求事件的到来,待获取accept接口返回的fd后,对该fd添加可读事件,并等待读事件发生。当有数据到来时,读事件发生,先通过tcp read的接口获取元数据(域名与端口的结构体),然后再读取其他有效数据,进入常规的通信代理流程。
再下来,执行步骤S206,读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
具体发送所述请求数据至所述域名及所述端口对应的服务器的方法参考现有的HTTPS代理协议规定的传输方法,为了说明书的简洁在此不再累述。
基于同一发明构思,本申请提供了实施例一对应的装置,详见实施例三。
实施例三
本实施例提供一种超文本传输协议代理装置,如图3所示,所述装置为客户端,包括:
第一调用模块301,用于调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
封装模块302,用于将需要访问的域名和端口按固定长度封装生成元数据;
第二调用模块303,用于调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
第一写入模块304,用于如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
第二写入模块305,用于如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
第一发送模块306,用于发送所述元数据和所述请求数据至代理客户端。
在本申请实施例中,所述客户端可以为智能手机、笔记本、台式机或平板电脑,在此不作限制。
所述代理客户端可以为计算机设备、云端或计算机设备组,在此也不作限制。
由于本实施例所介绍的装置为实施本申请实施例一中方法所采用的装置,故而基于本申请实施例一中所介绍的方法,本领域所属技术人员能够了解本实施例的装置的具体实施方式以及其各种变化形式,所以在此对于该装置如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。
基于同一发明构思,本申请提供了实施例二对应的装置,详见实施例四。
实施例四
本实施例提供一种超文本传输协议代理装置,如图4所示,所述装置为代理客户端,包括:
第三调用模块401,用于调用bind接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,发送所述文件描述符fd至客户端;
传入模块402,用于如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
第四调用模块403,用于调用accept接口,接收客户端发送的所述元数据和所述请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
第一访问模块404,用于如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
第二访问模块405,用于如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
第二发送模块406,用于读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
在本申请实施例中,所述客户端可以为智能手机、笔记本、台式机或平板电脑,在此不作限制。
所述代理客户端可以为计算机设备、云端或计算机设备组,在此也不作限制。
由于本实施例所介绍的装置为实施本申请实施例二中方法所采用的装置,故而基于本申请实施例二中所介绍的方法,本领域所属技术人员能够了解本实施例的装置的具体实施方式以及其各种变化形式,所以在此对于该装置如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。
基于同一发明构思,本申请提供了实施例一或实施例二对应的电子设备,详见实施例五。
实施例五
一方面,本实施例提供一种电子设备,如图5所示,包括存储器510、处理器520及存储在存储器510上并可在处理器520上运行的计算机程序511,处理器520执行计算机程序511时实现以下步骤:
调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
将需要访问的域名和端口按固定长度封装生成元数据;
调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
发送所述元数据和所述请求数据至代理客户端。
在具体实施过程中,处理器520执行计算机程序511时,可以实现实施例一中任一实施方式。
另一方面,本实施例提供一种电子设备,如图5所示,包括存储器510、处理器520及存储在存储器510上并可在处理器520上运行的计算机程序511,处理器520执行计算机程序511时实现以下步骤:
调用bind接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,发送所述文件描述符fd至客户端;
如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
调用accept接口,接收客户端发送的所述元数据和所述请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
在具体实施过程中,处理器520执行计算机程序511时,可以实现实施例二中任一实施方式。
由于本实施例所介绍的电子设备为实施本申请实施例一或实施例二中方法所采用的设备,故而基于本申请实施例一或实施例二中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。
基于同一发明构思,本申请提供了实施例一或实施例二对应的存储介质,详见实施例六。
实施例六
一方面,本实施例提供一种计算机可读存储介质600,如图6所示,其上存储有计算机程序611,该计算机程序611被处理器执行时实现以下步骤:
调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
将需要访问的域名和端口按固定长度封装生成元数据;
调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
发送所述元数据和所述请求数据至代理客户端。
在具体实施过程中,该计算机程序611被处理器执行时,可以实现实施例一中任一实施方式。
另一方面,本实施例提供一种计算机可读存储介质600,如图6所示,其上存储有计算机程序611,该计算机程序611被处理器执行时实现以下步骤:
调用bind接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,发送所述文件描述符fd至客户端;
如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
调用accept接口,接收客户端发送的所述元数据和所述请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
在具体实施过程中,该计算机程序611被处理器执行时,可以实现实施例二中任一实施方式。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (9)

1.一种超文本传输安全协议代理方法,其特征在于,所述方法应用于客户端,所述方法包括:
调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
将需要访问的域名和端口按固定长度封装生成元数据;
调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
发送所述元数据和所述请求数据至代理客户端。
2.如权利要求1所述的方法,其特征在于,所述写入所述元数据和请求数据,包括:
调用系统tcp write接口写入所述元数据;
调用系统tcp write接口写入所述请求数据。
3.如权利要求1所述的方法,其特征在于,所述基于所述pipe文件和所述是否阻塞标记生成文件描述符fd,包括:
添加异常错误码;
基于所述pipe文件、所述是否阻塞标记和所述异常错误码生成文件描述符fd。
4.一种超文本传输安全协议代理方法,其特征在于,所述方法应用于代理客户端,所述方法包括:
调用bind接口,传入pipe文件和是否阻塞标记;调用socket接口创建原始文件描述符unix-domain socket fd;设置阻塞模型,包括阻塞状态和非阻塞状态,所述阻塞状态和所述非阻塞状态通过所述是否阻塞标记判断;调用系统接口unlink,以避免pipe文件对应的pipe通道被占用;设置unix-domain socket地址变量;调用bind接口,基于所述pipe文件、所述是否阻塞标记、所述unix-domain socket地址变量和所述原始文件描述符unix-domain socket fd生成文件描述符fd,发送所述文件描述符fd至客户端;
如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
调用accept接口,接收客户端发送的元数据和请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
5.如权利要求4所述的方法,其特征在于,所述调用accept接口包括:
调用accept接口对所述文件描述符fd,添加异常错误码。
6.一种超文本传输协议代理装置,其特征在于,所述装置为客户端,包括:
第一调用模块,用于调用socket接口,传入pipe文件和是否阻塞标记,基于所述pipe文件和所述是否阻塞标记生成文件描述符fd;
封装模块,用于将需要访问的域名和端口按固定长度封装生成元数据;
第二调用模块,用于调用connect接口,传入所述文件描述符fd,并根据所述是否阻塞标记判断是否阻塞;
第一写入模块,用于如果阻塞,当接收到connect接口返回的成功连接信号后,写入所述元数据和请求数据;
第二写入模块,用于如果非阻塞,当接收到connect接口返回的成功连接信号后,添加可写事件,并在所述可写事件发生后,写入所述元数据和请求数据;
第一发送模块,用于发送所述元数据和所述请求数据至代理客户端。
7.一种超文本传输安全协议代理装置,其特征在于,所述装置为代理客户端,包括:
第三调用模块,用于调用bind接口,传入pipe文件和是否阻塞标记;调用socket接口创建原始文件描述符unix-domain socket fd;设置阻塞模型,包括阻塞状态和非阻塞状态,所述阻塞状态和所述非阻塞状态通过所述是否阻塞标记判断;调用系统接口unlink,以避免pipe文件对应的pipe通道被占用;设置unix-domain socket地址变量;调用bind接口,基于所述pipe文件、所述是否阻塞标记、所述unix-domain socket地址变量和所述原始文件描述符unix-domain socket fd生成文件描述符fd,发送所述文件描述符fd至客户端;
传入模块,用于如果bind接口调用成功,则调用listen接口,传入所述文件描述符fd;
第四调用模块,用于调用accept接口,接收客户端发送的元数据和请求数据,并根据所述是否阻塞标记判断是否阻塞;其中,所述元数据为将需要访问的域名和端口按固定长度封装生成的数据;
第一访问模块,用于如果阻塞,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
第二访问模块,用于如果非阻塞,添加可读事件,并在所述可读事件发生后,按所述固定长度读取所述元数据,根据所述元数据获取需要访问的所述域名和所述端口;
第二发送模块,用于读取所述请求数据,并发送所述请求数据至所述域名及所述端口对应的服务器。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-5任一所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5任一所述的方法。
CN201810018477.0A 2018-01-09 2018-01-09 一种超文本传输安全协议代理方法、装置、设备及介质 Active CN110022332B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810018477.0A CN110022332B (zh) 2018-01-09 2018-01-09 一种超文本传输安全协议代理方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810018477.0A CN110022332B (zh) 2018-01-09 2018-01-09 一种超文本传输安全协议代理方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN110022332A CN110022332A (zh) 2019-07-16
CN110022332B true CN110022332B (zh) 2022-06-21

Family

ID=67187621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810018477.0A Active CN110022332B (zh) 2018-01-09 2018-01-09 一种超文本传输安全协议代理方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN110022332B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112217903B (zh) * 2020-10-27 2023-08-15 广东广宇科技发展有限公司 大文件传输方法、装置、服务器及存储介质
CN117632198B (zh) * 2024-01-26 2024-05-07 深圳乐木骆科技有限公司 固件升级方法、设备、存储介质及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1697407A (zh) * 2005-06-30 2005-11-16 信息产业部电信传输研究所 一种支持Ipv6的边界网关协议一致性测试的实现方法和系统
CN102970176A (zh) * 2012-09-19 2013-03-13 东莞中山大学研究院 一种基于ns2的p2p流媒体仿真系统
CN103731291A (zh) * 2012-10-16 2014-04-16 无锡云捷科技有限公司 一种网络服务器池系统数据传输结构及其程序开发方法
CN104270379A (zh) * 2014-10-14 2015-01-07 北京蓝汛通信技术有限责任公司 基于传输控制协议的https 代理转发方法及装置
US10880266B1 (en) * 2017-08-28 2020-12-29 Luminati Networks Ltd. System and method for improving content fetching by selecting tunnel devices

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9680918B2 (en) * 2014-06-30 2017-06-13 Fortinet, Inc. Socket application program interface (API) for efficient data transactions

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1697407A (zh) * 2005-06-30 2005-11-16 信息产业部电信传输研究所 一种支持Ipv6的边界网关协议一致性测试的实现方法和系统
CN102970176A (zh) * 2012-09-19 2013-03-13 东莞中山大学研究院 一种基于ns2的p2p流媒体仿真系统
CN103731291A (zh) * 2012-10-16 2014-04-16 无锡云捷科技有限公司 一种网络服务器池系统数据传输结构及其程序开发方法
CN104270379A (zh) * 2014-10-14 2015-01-07 北京蓝汛通信技术有限责任公司 基于传输控制协议的https 代理转发方法及装置
US10880266B1 (en) * 2017-08-28 2020-12-29 Luminati Networks Ltd. System and method for improving content fetching by selecting tunnel devices

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Transparent Insertion of Custom Logic in HTTP(S) Streams Using PbProxy;Michael Atighetchi等;《IEEE IEEE Internet Computing》;20100708 *

Also Published As

Publication number Publication date
CN110022332A (zh) 2019-07-16

Similar Documents

Publication Publication Date Title
CN111163129B (zh) 一种基于跨链网络的资源处理方法及装置
CN106354481B (zh) 对http请求进行统一映射的方法和设备
CN104301443A (zh) 一种在web页面上调用端能力接口的方法和系统
CN111163130A (zh) 一种网络服务系统及其数据传输方法
CN112448969A (zh) 链路追踪方法、装置、系统、设备及可读存储介质
CN110187986A (zh) 一种命令管理方法、系统、装置及计算机可读存储介质
CN110022332B (zh) 一种超文本传输安全协议代理方法、装置、设备及介质
CN104503768A (zh) 一种应用程序编程接口调用方法及设备
CN107977260B (zh) 任务提交方法及装置
US10225358B2 (en) Page push method, device, server and system
CN114040032A (zh) 一种协议转换方法、系统、存储介质及电子设备
CN108833500B (zh) 服务调用方法、服务提供方法、数据传递方法和服务器
CN107395663B (zh) 数据获取方法及装置
CN111327680B (zh) 认证数据同步方法、装置、系统、计算机设备和存储介质
CN109194706A (zh) 网络资源拨测方法及终端
CN110321507B (zh) 浏览器跨域通信方法及装置
CN109525539B (zh) 一种能力调用方法、调用回执方法、信息处理方法及系统
CN110866240A (zh) 智能密码钥匙调用方法和系统
CN112073462B (zh) 定位方法及装置
CN113918245A (zh) 一种数据调用方法、装置、设备及计算机可读存储介质
US10742802B2 (en) Methods and devices for verifying a communication number
US11804986B2 (en) Method for the remote management of a device connected to a residential gateway
WO2015192497A1 (zh) 通信链路的发送方法、装置及终端
CN110008033B (zh) 一种和客户端进行通信的方法及电子设备
CN110008032B (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240221

Address after: Room 101-1, Building 2, No. 95 Daguan Middle Road, Tianhe District, Guangzhou City, Guangdong Province, 510653

Patentee after: Guangzhou Zhongtian Technology Consulting Co.,Ltd.

Country or region after: China

Address before: 430000 East Lake Development Zone, Wuhan City, Hubei Province, No. 1 Software Park East Road 4.1 Phase B1 Building 11 Building

Patentee before: WUHAN DOUYU NETWORK TECHNOLOGY Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240227

Address after: Chinatelecom tower, No. 19, Chaoyangmen North Street, Dongcheng District, Beijing 100010

Patentee after: Tianyi Safety Technology Co.,Ltd.

Country or region after: China

Address before: Room 101-1, Building 2, No. 95 Daguan Middle Road, Tianhe District, Guangzhou City, Guangdong Province, 510653

Patentee before: Guangzhou Zhongtian Technology Consulting Co.,Ltd.

Country or region before: China