一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

信息处理方法、装置、电子设备及存储介质与流程

2021-10-24 13:45:00 来源:中国专利 TAG:公开 计算机 基础 服务 技术


1.本公开涉及计算机技术领域,尤其涉及云服务技术和基础网络技术领域。


背景技术:

2.随着网络技术的发展,用户通过网络获取信息的方式、途径也不断改进。用户不仅能够直接获取网络上发布的信息,还可通过代理服务等方式间接获取信息。
3.网络代理过程中,通过搭建服务器,接收客户端对代理服务器发送的数据获取请求。由代理服务器完成客户想要获取的数据和资源,并通过代理服务器返回给客户端。现有的网络代理方案存在多种代理模式,实现网络代理服务需要专门的代理网络的搭建,服务器与客户端之间的代理网络安装和运维成本较高。


技术实现要素:

4.本公开提供了一种信息处理方法、装置、电子设备以及存储介质。
5.根据本公开的一方面,提供了一种信息处理方法,应用于服务端,包括:
6.接收客户端发送的资源获取请求;
7.根据资源获取请求,确定执行代理操作的目标代理节点的地址信息;目标代理节点为分别运行于多个容器中的多个节点之一,多个节点中至少两个节点所对应配置的代理模式不同;
8.根据地址信息,将资源获取请求发送至目标代理节点。。
9.根据本公开的另一方面,提供了一种信息处理装置,应用于服务端,包括:
10.请求接收模块,用于接收客户端发送的资源获取请求;
11.确定模块,用于根据资源获取请求,确定执行代理操作的目标代理节点的地址信息;目标代理节点为分别运行于多个容器中的多个节点之一,多个节点中至少两个节点所对应配置的代理模式不同;
12.发送模块,用于根据地址信息,将资源获取请求发送至目标代理节点。
13.根据本公开的另一方面,提供了一种电子设备,包括:
14.至少一个处理器;以及
15.与该至少一个处理器通信连接的存储器;其中,
16.该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行本公开任一实施例中的方法。
17.根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行本公开任一实施例中的方法。
18.根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现本公开任一实施例中的方法。
19.根据本公开信息处理方法,通过容器技术,实现多种不同模式的网络代理,从而能够同时利用不同模式的网络代理了的优点,为用户提供更多丰富的选择,进而实现了网络
代理服务的高可用性和高效性结合的效果,提升了网络代理服务的效率。
20.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
21.附图用于更好地理解本方案,不构成对本公开的限定。其中:
22.图1是根据本公开一实施例的信息处理方法示意图;
23.图2是根据本公开另一实施例的信息处理方法示意图;
24.图3是根据本公开一示例的信息处理方法示意图;
25.图4是根据本公开另一示例的信息处理方法示意图;
26.图5a是根据本公开又一示例的信息处理装置示意图;
27.图5b是根据本公开又一示例的信息处理装置示意图;
28.图6是根据本公开另一实施例的信息处理装置示意图;
29.图7是根据本公开又一实施例的信息处理装置示意图;
30.图8是根据本公开又一实施例的信息处理装置示意图;
31.图9是用来实现本公开实施例的信息处理方法的电子设备的框图。
具体实施方式
32.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
33.本公开实施例首先提供一种信息处理方法,应用于服务端,如图1所示,包括:
34.步骤s11:接收客户端发送的资源获取请求;
35.步骤s12:根据资源获取请求,确定执行代理操作的目标代理节点的地址信息;目标代理节点为分别运行于多个容器中的多个节点之一,多个节点中至少两个节点所对应配置的代理模式不同;
36.步骤s13:根据地址信息,将资源获取请求发送至目标代理节点。
37.本实施例中的步骤s11

s13可以应用于服务器端,用于在服务器端搭建的网络代理架构解析用户的资源获取请求,根据资源获取请求提供网络代理服务。
38.本实施例中,网络代理服务可以是通过搭建代理服务器,客户端对执行代理操作的服务器进行请求,由执行代理操作的服务器完成客户端希望获取的资源和数据,并通过执行代理操作的服务器将获取的资源和数据返回给客户端。通过网络代理服务,可以使客户端更加安全、有效、快速地访问资源信息,甚至可以访问客户端直接访问不到的一些数据。
39.服务器可以为普通计算机、个人计算机、大中小型计算机、智能编写设备、各种类型的终端等具有运算、网络资源获取、数据发送功能的设备。
40.本实施例中,客户端和执行代理操作的服务器之间可以定义好各自的私钥和/或公钥,以保证传输链路中的安全性问题。在传输信息时,客户端和执行代理操作的服务器之
间可以自行定义之间的传输协议等。
41.本实施例中,资源获取请求可以是用户端根据需要获取的数据或资源生成的。
42.根据资源获取请求,确定执行代理操作的目标代理节点的地址信息,可以是从资源获取请求中提取出地址相关的信息,作为地址信息。
43.根据资源获取请求,确定执行代理操作的目标代理节点的地址信息,还可以是从资源获取请求中提取出地址相关的信息,进行信息转化,将转化后的信息作为地址信息。
44.执行代理操作的目标代理节点,可以是客户端指定的目标代理节点。也可以是根据资源获取请求,确定的能够执行代理操作的目标代理节点。
45.本实施例中,分别运行于多个容器中的多个节点,可以是多个容器中的各个容器内运行的至少一个节点之集合。
46.多个节点之集合所对应配置的代理模式,可以包括至少两种代理模式。每种代理模式对应的节点可以存在至少一个。
47.本实施例中,容器可以是docker容器。docker可以是开源的应用容器引擎,让开发者可以打包其应用以及依赖包到一个可移植的镜像中,然后发布到任何linux(linux操作系统)或windows(windows操作系统)机器上,也可以实现虚拟化。docker容器可以使用沙箱机制,容器与容器相互之间不会有任何接口。
48.本实施例借助docker容器化,可以更好地管理搭建代理服务器所需要的服务;同时,通过docker容器化的技术,也可以允许代理服务器进行多种模型的代理服务。例如,可以使用docker容器引擎搭建不同安全加密协议的代理服务、可以搭建多种协议的代理服务,以确保整个代理服务器的高可用和安全性。
49.不同的代理模式,可以属于不同的代理种类。比如,一个节点的代理模式可以是应用层代理、传输层代理、socks代理(全能代理)之一。
50.不同的代理模式,也可以是使用不同的代理协议的代理。比如,一个节点代理模式可以是使用udp(user datagram protocol,用户数据报协议)、tcp(transmission control protocol,传输控制协议)、socks5(socks:protocol for sessions traversal across firewall securely,防火墙安全会话转换协议)协议之一进行信号传输的代理模式。
51.本实施例中,第一容器中运行的节点可以是trojan或v2ray代理模式的节点。trojan为trojan

gfw开源的一种新思路网络代理工具,v2ray为一种网络转发以及网络代理工具。
52.本实施例中,trojan可以是基于https(hyper text transfer protocol over securesocket layer,超文本传输安全协议)协议进行信息传输的代理服务。trojan模式的网络代理过程中,可以将需要传输的信息伪装成http请求,并还可以使用证书和密钥的方式对需要传输的信息进行加密处理。
53.本实施例中,v2ray可以使用多种协议,比如,可以使用websocket、h2(http2.0)、tcp(transmission control protocol,传输控制协议)等等之一进行信息传输。v2ray可以支持多种加密的协议如aes(advanced encryption standard,高级加密标准)算法、chacha20(恰恰20)算法等等。v2ray还可以采用多种方式进行信息传输流量控制。除此之外,v2ray还可以通过客户端和提供代理服务的服务器之间约定私钥的方式传输信息,在需要传输的信息中加入客户端和服务器端之间约定的私钥或私钥对应的公钥,使传输的安全
性得到保障。
54.由于v2ray本身支持多个出站和入站的协议,因此可以在一个v2ray代理模式下配置多种入站及出站协议,比如,可以是vmess协议或vless协议。其中,vmess可以是一个基于tcp无状态协议,即所有数据基于tcp协议传输,客户端和服务器之间不需要握手即可直接传输数据,每一次数据传输对之前和之后的其它数据传输没有影响。vmess可以是由v2ray原创并使用于v2ray的加密传输协议。在v2ray上,客户端与服务器的通信主要可以是通过vmess协议通信。vless可以是一种无状态的轻量级数据传输协议,被定义为下一代v2ray数据传输协议。与vmess协议相同,vless可以使用uuid(universally unique identifier,通用唯一识别码)进行身份验证,配置分入栈和出栈两部分,可用在客户端和服务端。
55.本实施例中,至少两个节点所对应配置的代理模式可以不同,即多个节点中可以存在至少两种代理模式。在一种实施例中,一部分节点可以采用trojan模式,另一部分节点可以采用v2ray模式,从而能够结合trojan模式的处理速度快的优点和v2ray的功能齐全的优点,按照用户需要提供相应模式的代理服务。
56.同时本公开实施例还可以通过docker容器运行节点,在保证服务高可用和安全性的基础上,快速搭建代理服务的架构。
57.步骤s13,可以是将资源获取请求发送至目标代理节点,使得目标代理节点能够按照资源获取请求的要求获取对应的数据或资源,以提供给客户端。
58.本公开实施例中,通过对资源获取请求的分析,确定对应的地址信息。根据地址信息,将资源获取请求发送至不同代理模式的多个节点之一,从而允许用户根据需要选择具有不同功能或优点的代理模式实现代理需要。
59.在一种实施方式中,根据地址信息,将资源获取请求发送至目标代理节点,如图2所示,包括:
60.步骤s21:确定地址信息中包含的容器端口号;
61.步骤s22:根据容器端口号,确定目标代理节点;
62.步骤s23:将资源获取请求发送至目标代理节点。
63.本实施例中,容器端口号可以是容器的端口号,用于在多个容器中确定与端口号对应的容器。
64.根据容器端口号,确定目标代理节点,可以是根据容器端口号,确定对应的容器;确定对应的容器中的唯一一个节点为目标代理节点。
65.根据容器端口号,确定目标代理节点,还可以是根据容器端口号,确定对应的容器;确定对应的容器中的多个节点之一为目标代理节点。
66.将资源获取请求发送至目标代理节点,可以是将资源获取请求通过目标代理节点的容器发送至目标代理节点。
67.本实施例中,通过容器端口号确定目标代理节点,从而通过在资源获取请求中携带不同的端口号,可以将资源获取请求发送至不同的节点,实现不停模式的代理。
68.在一种实施方式中,根据容器端口号,确定目标代理节点,包括:
69.确定容器端口号对应的第一容器;
70.将第一容器中运行的节点作为目标代理节点;第一容器中运行的节点为不限定端口号的第一协议的节点。
71.本实施例中,第一容器可以为仅运行一种代理模式的节点的容器。其中,第一容器中所运行的节点可以为一个或多个。
72.第一容器中运行的节点,其所采用的通信协议可以是不限定端口号的通信协议,比如,可以是vpn(virtual private network,虚拟专用网络)协议、shadowsocks协议等。第一容器中运行的节点所采用的通信协议,可以允许节点使用任意设定的编号为端口号。
73.具体例如,第一容器中运行的节点,可以是v2ray模式的节点,采用的通信协议可以为tcp协议的v2ray模式的节点。
74.本实施例中,虚拟专用网络可以是基于sslvpn(security socket layer

ssl,基于安全套接字层协议)协议,在公用网络的基础上建立的专用网络。在vpn中可以去掉传统网络所需要的端到端的物理层链路,而只是架构在公用网络服务所提供的代理服务。
75.虚拟专用网络首先具有成本低的优点,由于可以是通过公网进行搭建的,所以不需要额外安装和维护广域网访问的设备。其次,虚拟专用网络的安全性高,可以采用sslvpn等协议,这一类协议在满足一些基础功能(如支持加密流量、加密算法等)的基础上,可以是一种不信任客户端的协议模型。在具体操作中,可以在先验证用户身份的情况下再继续建立网络层的加密通道。同时,虚拟专用网络可以具有完全控制性:虚拟专用网络可以允许户可以利用isp(internet service provider,互联网服务提供商)的设施和服务,同时又可以完全掌握着自己网络的控制权。
76.本实施例中,shadowsocks可以将通过ssh(secure shell,安全外壳协议)创建的socks5协议拆开成服务器端部分和客户端部分。从而,可以分别在客户端和服务端运行shadowsocks协议,客户端将请求按照约定好的私钥进行加密后,使用scok5协议传递加密数据给服务端,服务端通过私钥对请求进行解密。换言之,shadowsocks的请求可以混淆在正常的sock5请求中间,攻击者如果截获请求,不易从中分析出属于shadowsocks发的请求。
77.在其它实施例中,还可以采用改良版协议:shadowsocksr,该协议在混淆信息时进行了改进,可以使得攻击者更加难以分辨请求来源。例如,可以用最常用的http协议进行混淆请求。同时,本协议还能够支持更多的加密算法,以保证建立连接时的安全性。
78.本公开实施例中,在设置条件允许的情况下,容器可以与节点共用端口号,或者与节点采用不同但相关联的端口号。
79.本实施例中,第一容器中运行的节点可以为不限定端口号的第一协议的节点,从而能够设置多个第一容器。不同的第一容器中的节点分别采用不同的代理模式实现代理功能,进而能够结合各不同代理模式的优点,提供更加优质的代理服务。
80.在一种实施方式中,根据容器端口号,确定目标代理节点,包括:
81.确定容器端口号对应的第二容器;
82.通过第二容器,确定地址信息中包含的路径;
83.根据路径,确定第一内部容器;
84.将第一内部容器中运行的节点作为目标代理节点;第一内部容器中运行的节点为限定端口号的第二协议的节点。
85.本实施例中,第二容器中可以包含至少一个功能节点,能够对资源获取请求中包含的路径进行分析、提取的容器。
86.本实施例中,第二容器中的功能节点可具有代理或反向代理能力。
87.在第二容器中的功能节点具有代理或反向代理能力的情况下,第二容器内部可设置节点执行代理任务。
88.本实施例中,用于分发客户端的请求,以确保可以达到对应的代理服务,满足用户对于不同代理服务的需求。
89.在一种实现方式中,可以通过对第二容器的设置进行监听,从而,在设置监听的端口号与资源获取请求中的容器端口号一致的情况下,第二容器能够收到资源获取请求,并将资源获取请求转发至内部的功能节点或其它内部容器的节点。
90.本实施例通过第二容器,对其它内部容器中运行的节点所应当接收的资源获取请求进行转发,从而不仅能够实现通过限定端口号的第二协议进行网络代理。另外,还能够保护内部容器对应的容器端口号不对外开放,从而尽量减少对外开放的端口号数量,提高网络安全性。
91.在一种实施方式中,根据路径,确定第一内部容器,包括:
92.根据路径,在两个以上采用限定端口号的协议的内部容器中,确定第一内部容器。
93.本实施例中,两个以上采用限定端口号的协议的内部容器,可以采用与第一内部容器相同的协议或不同协议。本实施例中,可设置多个限定端口号的协议的节点,从而多个限定端口号的协议的节点可以共用第二容器的所监听的容器端口号,提高网络代理架构的包容性。
94.在一种实施方式中,信息处理方法还包括:
95.根据路径,确定第二容器中的网络服务;
96.将网络服务作为目标代理节点。
97.网络服务可以是能够实现网络功能的进程,还可以部署在第二容器内部,从而能够通过第二容器实现网络代理功能。
98.本实施例中,能够直接通过第二容器进行网络代理,从而利用了第二容器内的节点的代理功能,使得能够在第二容器内运行具有执行网络代理功能的节点。
99.本公开一种实施方式中,信息处理方法还包括:
100.确定容器端口号对应的第三容器;
101.通过第三容器将资源获取请求发送至的不限定端口号的第三协议的节点。
102.第三容器可以与前述实施例中的第二容器相同,不仅能够转发限定端口号的协议的节点,还能够转发不限定端口号的协议的节点。不限定端口号的协议的节点所应接收的资源获取请求是否由第三容器转发,可根据实际需要进行设定或部署。
103.本实施例中,能够通过第三容器中的节点将资源获取请求转发至不限定端口号的协议的节点,从而在必要的情况下也能够将不限定端口号的协议的节点设置为内部节点,从而减少节点端口号开放的数量,提高安全性。
104.在一种实施方式中,信息处理方法还包括:
105.预先搭建多个容器,多个容器是利用容器镜像预先搭建的;
106.在容器中,创建节点。
107.本实施例中,可以利用docker平台搭建容器,建成docker容器。
108.本实施例中,利用容器镜像预先搭建多个容器,从而能够在不同的容器内运行不同代理模式或基于不同的信息传输协议的代理节点,为用户提供多样化的代理服务。
109.在一种实施方式中,目标代理节点为反向代理服务器的节点。
110.本实施例中,能够实现反向网络代理服务。
111.在网络环境中,客户端与服务端之间一般使用https协议进行通信,这使得服务器端需要提前申请域名并配置域名解析,同时需要申请域名对应的证书,来确保可以安全可信地使用https协议。
112.在本实施例中,服务端一侧的所有服务都可以是通过docker容器的方式进行部署和运行的。这样的好处在于,可以启多个代理服务,在保证服务本身高可用的前提下,可以让不同的服务使用不同的解密算法,以使用多种模式的网络代理服务。docker在启动时可以使用docker

compose工具进行统一的启动和关闭,并统一整理代理服务所需的配置文件,方便统一管理。docker

compose项目是docker官方的开源项目,能够实现对docker容器集群的快速编排。
113.服务器端在收到客户端的资源获取请求后,将资源获取请求输入nginx容器中。本实施例中,nginx(engine x,x引擎)是一个高性能的http和反向代理web(网络)服务器,同时nginx也提供了imap(internet message access protocol,因特网消息访问协议)、pop3(post office protocol version 3,邮局版本协议3)、smtp(simple mail transfer protocol,简单邮件传输协议)等协议的服务。可以根据不同的path(路径)或者domain(域名)在nginx中配置反向代理(服务端配置,自身支持的配置方式),在本实施例中,nginx可以用于分发客户端的请求,以确保可以达到对应的代理服务,满足用户对于不同代理服务的需求。
114.本公开一种示例中,实现信息处理方法的容器架构如图3所示,包括多个docker容器,具体可以包括nginx容器(docker nginx)31,还包括至少一个trojan模式的容器(docker trojan,trojan容器)32、至少一个基于vpn协议的容器(docker vpn,vpn容器)33、至少一个v2ray容器(docker v2ray,v2ray容器)34、至少一个基于shadowsocks协议的容器(docker shadowsocks,shadowsocks容器)35,还可以包括其它容器(other docker container)36。其中,nginx容器31用于将客户端的资源获取请求转发至trojan模式的容器32、基于vpn协议的容器33、至少一个v2ray容器34、至少一个基于shadowsocks协议的容器35,还可以包括其他容器36。
115.v2ray和trojan代理模式可以通过https协议的信息进行伪装,从而需要经过nginx容器以及对应的节点转发请求以实现反向代理;vpn和shadowsocks协议的容器或节点本身可以直接通过端口号访问,无需经过其它工具实现反向代理。
116.在本公开一种示例中,如图4所示,在服务器段获取客户端的资源获取请求前,可以申请用于网络代理的域名及证书,并配置nginx容器中的节点监听80、443和8443端口。图4中,80、443、4500、8388可以为开放端口,8443为nginx容器内部的不开放端口。
117.对于接收到的资源获取请求,如果资源获取请求的端口号为4500端口号,则可以提供vpn的代理服务;如果资源获取请求的端口号为8388端口号,则可以发送至8338端口号对应的容器,从而可以提供shadowsocks代理服务。
118.如果资源获取请求的端口号为443端口号,则进入nginx容器中的节点。nginx容器中的节点进一步对资源获取请求中的判断域名,如果域名是trojan.example.com则可以将资源获取请求转发到图4中的8080端口,此端口可以是trojan服务暴露的端口。
119.如果在nginx容器中进一步判定域名是example.com,则可以将资源获取请求转发到8443端口则进一步判断接口路径(path)。如果path是/vless则发送至图4中的端口11000,此端口可以是使用vless协议启动的v2ray服务的节点对应的端口;如果path是/vmess则打到端口12000,此端口可以是使用vmess协议启动的v2ray服务的节点对应的端口。如果path是其他则可以打到nginx容器中部署一些web(网络)服务(即进程或工具),从而可以直接由nginx容器中部署的网络服务提供网络代理服务。图4中的v2fly可以相当于前述实施例中的v2ray。
120.trojan、v2fly代理模式可以采用的http或https协议默认对应的端口号,即可以为443,如果该端口号对外则需要同时监听443端口,而对外情况下,同编号的端口无法允许不同代理模式共用。本示例中,用nginx容器,可以对443端口进行监听,同时,nginx节点可以具有分析端口号、路径、转发的功能,可以通过nginx节点在确定具体接收方后,将资源请求信息转发至trojan容器的节点或v2ray容器的节点,从而可以同时使用trojan和v2ray代理模式。
121.本公开另一种示例中,如图5a所示,可以通过nginx容器中的节点监听所有其它代理模式的节点的容器端口号,比如图5a中所示的443、80、8443端口号,其中80、443为开放端口号。
122.若资源获取请求中的端口号为80,则可以反向代理到443接口,请求进入443端口后可以通过域名进行反向代理。
123.如果资源获取请求中的域名是vpn.example.com,则可以反向代理到vpn协议的容器对应的4500端口,此端口可以提供vpn协议的代理服务。
124.如果资源获取请求中的域名是ss.example.com,则可以反向代理到shadowsocks的8388端口,此端口可以提供shadowsocks协议的代理服务。
125.如果进入的域名是trojan.example.com,则可以反向代理到8080端口,此端口可以对应trojan代理模式的代理服务。
126.如果进入的域名是example.com,则可以反向代理到8443端口,此端口可以为nginx监听端口,进入8443端口后,可以根据path进行转发:如果资源获取请求中的path是/vless,则可以反向代理到11000端口,此端口可以对应启用vless协议的v2ray代理模式的端口对应的节点。如果资源获取请求中的path是/vmess,则可以反向代理到12000端口,此端口可以对应启用vmess协议的v2ray代理模式的端口对应的节点。
127.在另一种示例中,可以将图5a所示的实施例中的通过path路由的操作方式改为全部通过域名的方式进行路由,如图5b所示。可以通过nginx对应的容器监听443、80端口号,其中80、443可以为开放端口号。
128.如果资源获取请求中的端口号为80,则可以反向代理到443接口,请求进入443端口后通过域名进行反向代理。如果资源获取请求中的域名是vpn.example.com,则可以反向代理到vpn协议的容器对应的4500端口,此端口可以基于vpn协议提供网络代理服务。
129.如果资源获取请求中的域名是ss.example.com,则可以反向代理到shadowsocks的8388端口,此端口可以对应shadowsocks服务;如果资源获取请求中的域名是trojan.example.com,则可以反向代理到8080端口,此端口可以对应trojan服务;如果资源获取请求中的域名是vless.example.com,则可以反向代理到11000端口,此端口可以对应
启用vless协议的v2ray服务;如果进入的域名是example.com,则可以反向代理到其他服务。在本示例中,可以仅需开放80和443端口号。
130.本公开实施例中,网络代理服务可以主要基于docker容器和docker

compose工具,可以通过使用docker容器化的技术可以更好的管理所有代理和其他服务。同时docker

compose可以提供快速搭建,配置好docker

compose后,可以直接使用docker

compose up命令进行一键启动,部署更加便捷。
131.代理服务器可安装google bbr(google bottleneck bandwidth and round

trip propagation time,谷歌瓶颈带宽往返传播时间),可以对tcp协议网络代理进行加速。
132.docker nginx同期镜像主要可以针对的基于http协议的网络代理,提供在代理服务器中的反向代理,如trojan代理服务(主要是使用https伪装进行网络代理)、v2ray代理服务(本身可以支持tcp、websocket、https等多种协议,其中使用websocket tls,即https进行代理的时候伪装性和安全性更高。
133.对于vpn和shadowsocks协议的代理服务,其中,基于vpn协议的代理服务可以基于udp(user datagram protocol,用户数据报协议)协议进行网络代理所以可以不通过nginx转发,可以采用直接监听服务端口号的方式;基于shadowsocks协议的网络代理服务主要可以是使用tcp协议的信息进行混淆加密,所以也可以不通过nginx进行转发。
134.针对本公开提出的多种网络代理模式,依据示例搭建好代理服务后,可以同时兼容多种加密算法、混淆方式和协议的网络代理;同时使用docker容器和nginx转发的方式也可以部署多个不同模式的代理服务以达到高并发的效果。比如,可以通过nginx容器根据不同的path将资源获取请求转发到不同协议的v2ray代理服务。
135.基于以上,本公开实施例可以使用多种架构来搭建多模式的代理服务,也可以方便挂载、卸载代理服务,可以只需要修改nginx的转发和docker

compose的配置即实现轻量地卸载和挂载代理服务。同时也实现了高可扩展性。
136.本公开实施例中,服务端的代理服务架构搭建和维护比较简单,因为主要使用的是docker容器化部署,各个代理服务的维护主要以维护docker容器的方式为主,同时使用docker

compose,在配置好docker

compose.yaml等配置文件后,可以一键创建整个docker容器的代理服务架构。
137.安全性方面,无论是trojan代理模式还是v2ray代理模式,均可以使用https协议进行流量混淆,防止攻击者轻易对资源获取请求进行拦截和截获。同时v2ray代理模式可以支持aes、chacha等多种加密算法,可以通过客户端和服务端约定公钥和/或私钥的方式,加密传输公钥进行验证。在此基础上,v2ray代理模式还可以同时支持vpn协议和shadowsocks协议。
138.效率方面,由于使用的协议可以是https协议,速度和安全性会更高;同时,还可以使用google的bbr协议,针对基于tcp协议的传输进行加速。对于tcp协议和udp协议本身也可以实现扩展支持。
139.本公开实施例还提供一种信息处理装置,应用于服务端,如图6所示,包括:
140.请求接收模块61,用于接收客户端发送的资源获取请求;
141.确定模块62,用于根据资源获取请求,确定执行代理操作的目标代理节点的地址信息;目标代理节点为分别运行于多个容器中的多个节点之一,多个节点中至少两个节点
所对应配置的代理模式不同;
142.发送模块63,用于根据地址信息,将资源获取请求发送至目标代理节点。
143.在一种实施方式中,如图7所示,发送模块63包括:
144.端口号单元71,用于确定地址信息中包含的容器端口号;
145.目标代理节点单元72,用于根据容器端口号,确定目标代理节点;
146.请求发送单元73,用于将资源获取请求发送至目标代理节点。
147.在一种实施方式中,目标代理节点单元72还用于:
148.确定容器端口号对应的第一容器;
149.将第一容器中运行的节点作为目标代理节点;第一容器中运行的节点为不限定端口号的第一协议的节点。
150.在一种实施方式中,目标代理节点单元72还用于:
151.确定容器端口号对应的第二容器;
152.通过第二容器,确定地址信息中包含的路径;
153.根据路径,确定第一内部容器;
154.将第一内部容器中运行的节点作为目标代理节点;第一内部容器中运行的节点为限定端口号的第二协议的节点。
155.在一种实施方式中,目标代理节点单元72还用于:
156.根据路径,在两个以上采用限定端口号的协议的内部容器中,确定第一内部容器。
157.在一种实施方式中,目标代理节点单元72还用于:
158.根据路径,确定第二容器中的网络服务;
159.将网络服务作为目标代理节点。
160.在一种实施方式中,目标代理节点单元72还用于:
161.通过第二容器确定不限定端口号的第三协议的节点为目标代理节点。
162.在一种实施方式中,信息处理装置还包括:
163.搭建模块81,用于预先搭建多个容器,多个容器是利用容器镜像预先搭建的;
164.创建模块82,用于在容器中,创建节点。
165.在一种实施方式中,目标代理节点为反向代理服务器的节点。
166.通过本公开实施例,可以更快更便捷且高效的搭建一套多模式的网络代理架构,且易于管理和维护。可以通过docker、nginx和不同代理服务之间的特点来实现,同时能够实现如下有益效果:易于搭建,docker容器相较于单机也易于维护;易于装载和卸载代理服务;由于是基于nginx和docker创建的基于容器的代理架构,对代理服务端的设置操作,大部分情况只需要修改docker

compose和nginx即可;通过结合多种代理模式和协议,可以提供多种模式的代理服务(进程),其中每种模式的服务也可以部署多个实例,集合了各种代理服务本身的特性;由于基于docker可以支持多种代理服务,让网络代理变得更为灵活,适用于更多的网络环境等。
167.本公开实施例各装置中的各单元、模块或子模块的功能可以参见上述方法实施例中的对应描述,在此不再赘述。
168.本公开实施例可应用于云服务技术和基础网络技术领域。
169.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种
计算机程序产品。
170.图9示出了可以用来实施本公开的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或要求的本公开的实现。
171.如图9所示,电子设备900包括计算单元901,其可以根据存储在只读存储器(rom)902中的计算机程序或者从存储单元908加载到随机访问存储器(ram)903中的计算机程序来执行各种适当的动作和处理。在ram 903中,还可存储电子设备900操作所需的各种程序和数据。计算单元901、rom 902以及ram 903通过总线904彼此相连。输入输出(i/o)接口905也连接至总线904。
172.电子设备900中的多个部件连接至i/o接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许电子设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
173.计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如信息处理方法。例如,在一些实施例中,信息处理方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由rom 902和/或通信单元909而被载入和/或安装到电子设备900上。当计算机程序加载到ram 903并由计算单元901执行时,可以执行上文描述的信息处理方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行信息处理方法。
174.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
175.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
176.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd

rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
177.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入来接收来自用户的输入。
178.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
179.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端

服务器关系的计算机程序来产生客户端和服务器的关系。
180.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
181.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜