CN114885042A - 一种网络数据的传输方法、客户端、服务器及系统 - Google Patents
一种网络数据的传输方法、客户端、服务器及系统 Download PDFInfo
- Publication number
- CN114885042A CN114885042A CN202110082813.XA CN202110082813A CN114885042A CN 114885042 A CN114885042 A CN 114885042A CN 202110082813 A CN202110082813 A CN 202110082813A CN 114885042 A CN114885042 A CN 114885042A
- Authority
- CN
- China
- Prior art keywords
- network link
- client
- server
- network
- connection request
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 119
- 238000000034 method Methods 0.000 title claims abstract description 88
- 238000004891 communication Methods 0.000 claims abstract description 57
- 230000002159 abnormal effect Effects 0.000 claims abstract description 32
- 230000000977 initiatory effect Effects 0.000 claims abstract description 24
- 230000008569 process Effects 0.000 claims abstract description 24
- 230000004044 response Effects 0.000 claims description 24
- 238000011084 recovery Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 9
- 230000005856 abnormality Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 239000000835 fiber Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- 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/14—Multichannel or multilink protocols
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开提供了一种网络数据的传输方法、装置、客户端、服务器及系统,该方法包括:向服务器发起第一连接请求,以供所述服务器根据所述第一连接请求与所述客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;向所述服务器发起第二连接请求,以供所述服务器根据所述第二连接请求与所述客户端建立第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;所述第二网络链接与所述第一网络链接具有一一对应关系;在通过所述第一网络链接与所述服务器进行网络数据传输的过程中,在检测到所述第一网络链接出现异常的情况下,切换至对应的第二网络链接与所述服务器进行网络数据传输。
Description
技术领域
本公开涉及网络通信技术领域,更具体地,涉及一种网络数据的传输的方法、装置及电子设备。
背景技术
“网络服务”,是指一些在网络上运行的、面向服务的、基于分布式程序的软件模块,网络服务采用HTTP和XML(标准通用标记语言的子集)等互联网通用标准,使人们可以在不同的地方通过不同的终端设备访问WEB上的数据,如网上订票,查看订座情况。
网络服务在电子商务、电子政务、公司业务流程电子化等应用领域有广泛的应用。
在现有技术中,客户端可以是通过RDMA(Remote Direct Memory Access,远程直接数据存取)网络来调用服务器中的网络服务,服务器再根据该RDMA网络向客户端返回调用结果。RDMA网络在利用最新的硬件特性基础上,获得了更高的性能、更低的时延。但是,RDMA网络的稳定性较低,如果RDMA网络异常,将导致客户端无法正常调用服务器中的网络服务,影响用户正常使用。
发明内容
本公开的一个目的是提供一种传输网络数据的新技术方案。
根据本公开的第一方面,提供了一种网络数据的传输方法,由客户端实施,所述方法包括:
向服务器发起第一连接请求,以供所述服务器根据所述第一连接请求与所述客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
向所述服务器发起第二连接请求,以供所述服务器根据所述第二连接请求与所述客户端建立第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;所述第二网络链接与所述第一网络链接具有一一对应关系;
在通过所述第一网络链接与所述服务器进行网络数据传输的过程中,在检测到所述第一网络链接出现异常的情况下,切换至对应的第二网络链接与所述服务器进行网络数据传输。
可选的,所述向服务器发起第一连接请求包括:
通过所述服务器预先创建的第一端口,向所述服务器发起第一连接请求,其中,所述第一端口为支持所述第一通信协议的网络端口。
可选的,所述向所述服务器发起第二连接请求包括:
通过所述第一网络链接获取与所述第一端口一一对应的第二端口的端口信息;其中,所述第二端口为支持所述第二通信协议的网络端口;
基于所述第二端口的端口信息,向所述服务器发起所述第二连接请求。
可选的,所述切换至对应的第二网络链接与所述服务器进行网络数据传输之后还包括:
在通过所述第二网络链接与所述服务器进行网络数据传输的过程中,检测预设的重连事件是否发生;
在所述重连事件发生的情况下,向所述服务器发起重连请求,以供所述服务器在正常的情况下,响应于所述重连请求,重新与所述客户端建立所述第一网络链接;
在重新建立所述第一网络链接的情况下,由所述第二网络链接切换至所述第一网络链接与所述服务器进行网络数据传输。
可选的,所述重连事件至少包括以下任意一项或多项:
接收到所述服务器发送的恢复通知;
达到预设时间;
所述客户端恢复正常。
根据本公开的第二方面,提供了一种网络数据的传输方法,由服务器实施,所述方法包括:
响应于客户端发起的第一连接请求,与客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
响应于客户端发起的第二连接请求,与所述客户端建立与所述第一网络链接对应的第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;所述第一网络链接与所述第二网络链接之间一一对应;
通过所述第一网络链接或所述第二网络链接与所述客户端进行网络数据传输。
可选的,所述响应于客户端发起的第一连接请求之前还包括:
创建支持所述第一通信协议的第一端口,以供所述客户端通过所述第一端口发起所述第一连接请求。
可选的,所述响应于客户端发起的第二连接请求之前还包括:
为所述第一端口分配一一对应的第二端口,其中,所述第二端口为支持第二通信协议的网络端口;
将所述第二端口的端口信息通过所述第一网络链接提供至所述客户端,以供所述客户端根据所述端口信息发起所述第二连接请求。
可选的,所述响应于客户端发起的第一连接请求,与客户端建立第一网络链接包括:
响应于所述第一连接请求,对所述客户端进行身份验证;
在对所述客户端的身份验证通过的情况下,与所述客户端建立所述第一网络链接。
可选的,所述与所述客户端建立与所述第一网络链接对应的第二网络链接之后还包括:
在通过所述第一网络链接与所述客户端进行网络数据传输的过程中,在检测到所述第一网络链接出现异常的情况下,切换至所述第二网络链接与所述客户端进行网络数据传输。
可选的,所述切换至所述第二网络链接与所述客户端进行网络数据传输之后包括:
在所述服务器正常的情况下,响应于所述客户端发起的重连请求,重新与所述客户端建立所述第一网络链接。
可选的,所述响应于所述客户端发起的重连请求,重新与所述服务器建立所述第一网络链接之前还包括:
在检测到所述服务器恢复正常、且所述服务器与所述客户端之间超过设定时长未进行网络数据传输的情况下,向所述客户端发送恢复通知,以供所述客户端根据所述恢复通知发起所述重连请求。
根据本公开的第三方面,提供了一种网络数据的传输装置,包括:
第一请求模块,用于向服务器发起第一连接请求,以供所述服务器根据所述第一连接请求与所述客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
第二请求模块,用于向所述服务器发起第二连接请求,以供所述服务器根据所述第二连接请求与所述客户端建立第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;所述第二网络链接与所述第一网络链接具有一一对应关系;
链接切换模块,用于在通过所述第一网络链接与所述服务器进行网络数据传输的过程中,在检测到所述第一网络链接出现异常的情况下,切换至对应的第二网络链接与所述服务器进行网络数据传输。
根据本公开的第四方面,提供了一种网络数据的传输装置,包括:
第一响应模块,用于响应于客户端发起的第一连接请求,与客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
第二响应模块,用于响应于客户端发起的第二连接请求,与所述客户端建立与所述第一网络链接对应的第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;
数据传输模块,用于通过所述第一网络链接或所述第二网络链接与所述客户端进行网络数据传输。
根据本公开的第五方面,提供了一种客户端,包括:
如本公开第三方面所述的装置;或者,
第一处理器和第一存储器,所述第一存储器用于存储第一指令,所述第一指令用于控制所述第一处理器执行根据本公开第一方面所述的方法。
根据本公开的第六方面,提供了一种服务器包括:
如本公开第四方面所述的装置;或者,
第二处理器和第二存储器,所述第二存储器用于存储第二指令,所述第二指令用于控制所述第二处理器执行根据本公开第二方面所述的方法。
根据本公开的第七方面,提供了一种网络数据的处理系统,包括根据本公开第五方面所述的客户端、以及根据本公开第六方面所述的服务器。
通过本公开的实施例,客户端和服务器之间同时建立第一网络链接和第二网络链接,在第一网络链接正常的情况下,客户端和服务器之间可以通过第一网络链接进行网络数据传输;在第一网络链接异常的情况下,客户端和服务器之间可以是切换至第二网络链接进行网络数据传输,这样,可以提高客户端和服务器之间网络的稳定性和可靠性。而且,由于预先建立的第一网络链接和第二网络链接之间具有一一对应关系,在由第一网络链接切换至第二网络链接时,服务器可以无需对客户端进行重复认证,直接通过第二网络链接与客户端进行网络数据传输。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本公开的实施例,并且连同其说明一起用于解释本公开的原理。
图1是显示可用于实现本公开的实施例的网络数据的传输系统的硬件配置的例子的框图。
图2示出了本公开的第一实施例的网络数据的传输方法的流程图。
图3示出了本公开的第一实施例的网络数据的传输装置的框图。
图4示出了本公开的第一实施例的客户端的框图。
图5示出了本公开的第二实施例的网络数据的传输方法的流程图。
图6示出了本公开的第二实施例的网络数据的传输装置的框图。
图7示出了本公开的第二实施例的服务器的框图。
图8示出了本公开的第三实施例的网络数据的传输系统的框图。
图9示出了本公开的第三实施例的网络数据的传输方法的流程图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<硬件配置>
如图1所示,网络数据的传输系统1000包括服务器1100、客户端1200、第一网络链接1300以及第二网络链接1400。
服务器1100提供处理、数据库、通讯设施的计算机。服务器1100可以是整体式服务器或是跨多计算机或计算机数据中心的分散式服务器。服务器可以是各种类型的,例如但不限于,网络服务器,新闻服务器,邮件服务器,消息服务器,广告服务器,文件服务器,应用服务器,交互服务器,数据库服务器,或代理服务器。在一些实施例中,每个服务器可以包括硬件,软件,或用于执行服务器所支持或实现的合适功能的内嵌逻辑组件或两个或多个此类组件的组合。例如,服务器例如刀片服务器、云端服务器等,或者可以是由多台服务器组成的服务器群组,可以包括上述类型的服务器中的一种或多种等等。
在一个例子中,服务器1100可以是一台计算机。在在另一个例子中,服务器1100可以如图1所示,包括处理器1110、存储器1120、接口装置1130、通信装置1140、显示装置1150、输入装置1160。尽管服务器也可以包括扬声器、麦克风等等,但是,这些部件与本发明无关,故在此省略。其中,处理器1110例如可以是中央处理器CPU、微处理器MCU等。存储器1120例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1130例如包括USB接口、串行接口等。通信装置1140例如能够进行有线或无线通信。显示装置1150例如是液晶显示屏。输入装置1160例如可以包括触摸屏、键盘等。
客户端1200可以是便携式电脑、台式计算机、手机、平板电脑等电子产品。如图1所示,客户端1200可以包括处理器1210、存储器1220、接口装置1230、通信装置1240、显示装置1250、输入装置1260、扬声器1270、麦克风1280,等等。其中,处理器1210可以是中央处理器CPU、微处理器MCU等。存储器1220例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1230例如包括USB接口、耳机接口等。通信装置1240例如能够进行有线或无线通信。显示装置1250例如是液晶显示屏、触摸显示屏等。输入装置1260例如可以包括触摸屏、键盘等。用户可以通过扬声器1270和麦克风1280输入/输出语音信息。
客户端1200和服务器1100之间所建立的第一网络链接1300和第二网络链接1400,可以是支持不同网络协议的网络链接,客户端1200可以通过第一网络链接1300和/或第二网络链接1400与服务器1100进行网络数据传输。在本公开的实施例中,客户端1200和服务器1100之间可以同时建立有第一网络链接1300和第二网络链接1400,在客户端1200和服务器1100通过第一网络链接1300进行网络数据传输的过程中,如果第一网络链接1300出现异常,可以将第一网络链接1300直接切换为第二网络链接1400,使得客户端1200和服务器1100通过第二网络链接1400进行网络数据传输.
图1所示的配置环境1100仅是解释性的,并且决不是为了要限制本发明、其应用或用途。
应用于本发明的实施例中,服务器1100的所述存储器1120用于存储指令,所述指令用于控制所述处理器1110进行操作以执行本发明实施例提供的任意一项由服务器实施的方法。
客户端1200的所述存储器1220用于存储指令,所述指令用于控制所述处理器1210进行操作以执行本发明实施例提供的任意一项由客户端实施的方法。本领域技术人员应当理解,尽管在图1中对服务器1100以及客户端1200都示出了多个装置,但是,本发明可以仅涉及其中的部分装置,例如,服务器1100只涉及处理器1110和存储装置1120,或者客户端1200只涉及处理器1210和存储装置1220等。技术人员可以根据本发明所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
本发明实施例的总体构思,是提供一种网络数据的传输的技术方案,客户端和服务器之间同时建立第一网络链接和第二网络链接,在第一网络链接正常的情况下,客户端和服务器之间可以通过第一网络链接进行网络数据传输;在第一网络链接异常的情况下,客户端和服务器之间可以是切换至第二网络链接进行网络数据传输,这样,可以提高客户端和服务器之间网络的稳定性和可靠性。而且,由于预先建立的第一网络链接和第二网络链接之间具有一一对应关系,在由第一网络链接切换至第二网络链接时,服务器可以无需对客户端进行重复认证,直接通过第二网络链接与客户端进行网络数据传输。
<第一实施例>
<方法>
在本实施例中,提供一种网络数据的传输方法。该方法由客户端实施。该客户端可以是具有处理器和存储器的电子产品。例如可以是台式计算机、笔记本电脑、手机、平板电脑等。在一个例子中,该客户端可以是图1所示的客户端1200。
根据图2所示,本实施例的网络数据的传输方法可以包括如下步骤S2100~S2300。
步骤S2100,向服务器发起第一连接请求,以供服务器根据第一连接请求与客户端建立第一网络链接。
其中,第一网络链接为支持第一通信协议的网络链接。该第一通信协议可以但不限于是支持RDMA(Remote Direct Memory Access,远程直接数据存取)的网络协议。例如,该第一通信协议可以是InfiniBand(IB)、RDMA过融合以太网(RoCE)、或者是互联网广域RDMA协议(iWARP)。
InfiniBand(IB)是从一开始就支持RDMA的新一代网络协议。由于这是一种新的网络技术,因此需要支持该技术的网卡和交换机。
RDMA过融合以太网(RoCE)即RDMA over Ethernet,允许通过以太网执行RDMA的网络协议。这允许在标准以太网基础架构(交换机)上使用RDMA,只不过网卡必须是支持RoCE的特殊的NIC。
互联网广域RDMA协议(iWARP)即RDMA over TCP,允许通过TCP执行RDMA的网络协议。这允许在标准以太网基础架构(交换机)上使用RDMA,只不过网卡要求是支持iWARP(如果使用CPU offload的话)的网卡。否则,所有iWARP栈都可以在软件中实现,但是失去了大部分的RDMA性能优势。
RDMA是通过网络把资料直接传入计算机的存储区,将网络数据从一个系统快速移动到远程系统存储器中,而不对操作系统造成任何影响,这样就不需要用到多少计算机的处理功能。它消除了外部存储器复制和文本交换操作,因而能腾出总线空间和CPU周期用于改进应用系统性能。
在本公开的一个实施例中,服务器可以预先创建第一端口,其中,第一端口为支持第一通信协议的网络端口。客户端可以是通过该第一端口向服务器发起第一连接请求。
在本公开的一个实施例中,服务器可以是响应于第一连接请求,直接与客户端建立第一网络链接。
在本公开的另一个实施例中,服务器可以是响应于第一连接请求,对客户端进行身份验证;在对该客户端身份验证通过的情况下,与客户端建立第一网络链接。
在本实施例的基础上,客户端可以是在第一连接请求中携带验证信息,以供服务器对客户端进行身份验证。其中,验证信息可以包括以下至少一项:该客户端的硬件地址、该客户端的网络地址、用户登录该客户端的账号、用户登录该客户端的账号和密码。
进一步地,服务器中可以是预先存储有可以与自身建立网络链接的所有客户端的参考验证信息,在参考验证信息中包括第一连接请求中所携带的验证信息的情况下,可以确定客户端的身份验证通过;在参考验证信息中不包括第一连接请求中所携带的验证信息的情况下,可以确定客户端的身份验证失败。
在第一网络链接建立成功的情况下,服务器和客户端可以均得到该第一网络链接的相关信息,以供服务器和客户端可以基于该相关信息,通过第一网络链接进行网络数据传输。其中,该第一网络链接的相关信息例如可以包括:该第一网络链接所连接的服务器和客户端的网络地址和/或端口号。
步骤S2200,向服务器发起第二连接请求,以供服务器根据第二连接请求与客户端建立第二网络链接。
在本实施例中,该第二网络链接与该第一网络链接具有一一对应关系。
其中,第二网络链接为支持第二通信协议的网络链接。例如,该第二通信协议可以但不限于是TCP/IP协议。
在本公开的一个实施例中,服务器在创建第一端口之后,可以为第一端口分配与对应的第二端口,并将第二端口的端口信息通过第一网络链接提供至客户端。其中,该第二端口可以是支持第二通信协议的网络端口。端口信息可以包括第二端口的端口号和/或网络地址。
在本实施例的基础上,客户端可以是根据第二端口的端口信息,向服务器发起第二连接请求。服务器可以是响应于该第二连接请求,与客户端建立第二网络链接。
在本公开的一个实施例中,不对步骤S2100和步骤S2200的执行顺序进行限定,如果在执行步骤S2200的情况下,服务器还未与客户端建立第一网络链接,客户端在执行步骤S2200时,可以是直接向服务器发起连接请求,由服务器响应于该请求,与客户端建立第二网络链接。在客户端执行完步骤S2100之后,客户端和服务器可以是将第一网络链接与第二网络链接进行对应。
在本公开的一个实施例中,可以是设置第一网络链接和第二网络链接的优先级。例如,可以是设置第一网络链接的优先级高于第二网络链接。那么,在客户端和服务器之间同时建立有第一网络链接和第二网络链接的情况下,优先通过优先级较高的网络链接进行网络数据传输。
步骤S2300,在通过第一网络链接与服务器进行网络数据传输的过程中,检测到第一网络链接出现异常的情况下,切换至第二网络链接与服务器进行网络数据传输。
在本公开的一个实施例中,可以是在执行完步骤S2100或者是S2200之后,客户端可以通过第一网络链接与服务器进行网络数据传输。
具体的,客户端通过第一网络链接与服务器进行网络数据传输,可以是客户端通过第一网络链接调用服务器的网络服务,还可以是服务器通过第一网络链接向客户端返回调用结果。其中,网络服务可以是运行在网络上的软件模块。在服务器部署服务程序之后,客户端可以通过网络访问服务端的网络服务。例如,利用客户端进行网络搜索就是调用服务器的网络服务的过程,服务器返回搜索结果就是向客户端返回调用结果的过程。
在客户端与服务器通过第一网络链接进行网络数据传输的过程中,如果客户端或者是服务器检测到第一网络链接出现异常,那么,可以直接将第一网络链接切换为与其一一对应的第二网络链接,即客户端与服务器通过第二网络链接进行网络数据传输。
由于服务器和客户端均保存了第一网络链接和第二网络链接的对应关系,因此,在客户端和服务器之间由第一网络链接切换至第二网络链接进行网络数据传输的情况下,无需服务器重复对客户端进行认证,服务器和客户端可以直接通过已经建立好的第二网络链接进行网络数据传输。
具体的,可以是在客户端检测到第一网络链接出现异常的情况下,由客户端将第一网络链接切换至第二网络链接与服务器进行网络数据传输;在服务器检测到第一网络链接出现异常的情况下,由服务器将第一网络链接切换至第二网络链接与服务器进行网络数据传输。
在本公开的一个实施例中,客户端可以是按照设定的频率,通过第一网络链接向服务器发送第一数据包,服务器在接收到该第一数据包的情况下会返回对应的第二数据包。客户端可以是在接收到与发送的第一数据所对应的第二数据包的情况下,确定第一网络链接的状态为正常;在未接收到与发送的第一数据所对应的第二数据包的情况下,确定第一网络链接的状态为异常。
在另一个实施例中,客户端可以是在通过第一网络链接调用服务器的网络服务的过程中,在设定时间内接收到服务器通过第一网络链接返回的调用结果的情况下,可以确定第一网络链接的状态为正常;在超过设定时长未接收到服务器通过第一网络链接返回的调用结果的情况下,可以确定第一网络链接的状态为异常。
在再一个实施例中,服务器可以是在通过第一网络链接向客户端返回网络服务的调用结果的过程中,在调用结果发送成功的情况下,可以确定第一网络链接的状态为正常;在调用结果发送失败的情况下,可以确定第一网络链接的状态为异常。
通过本公开的实施例,客户端和服务器之间同时建立第一网络链接和第二网络链接,在第一网络链接正常的情况下,客户端和服务器之间可以通过第一网络链接进行网络数据传输;在第一网络链接异常的情况下,客户端和服务器之间可以是切换至第二网络链接进行网络数据传输,这样,可以提高客户端和服务器之间网络的稳定性和可靠性。而且,由于预先建立的第一网络链接和第二网络链接之间具有一一对应关系,在由第一网络链接切换至第二网络链接时,服务器可以无需对客户端进行重复认证,直接通过第二网络链接与客户端进行网络数据传输。
在本公开的实施例中,该第一网络链接的异常,可以是由于对应的服务器和/或客户端导致的。对于服务器和/或客户端的异常,可以通过工程师的维修,使其恢复正常。
在此基础上,在执行完步骤S2300之后,该方法还可以包括如下所示的步骤S2400~S2600:
步骤S2400,在通过第二网络链接与服务器进行网络数据传输的过程中,检测预设的重连事件是否发生。
在本公开的一个实施例中,该重连事件至少可以包括如下任意一项或多项:
接收到服务器发送的恢复通知;
达到预设时间;
客户端恢复正常。
在该重连事件包括接收到服务器发送的恢复通知的实施例中,可以是由于服务器异常导致第一网络链接异常。在服务器恢复正常、且服务器的网络服务超过设定时长未被任意客户端调用的情况下,服务器可以向客户端发送恢复通知。
在该重连事件包括达到预设时间的实施例中,可以是由于服务器异常导致第一网络链接异常。具体的,客户端可以是按照上一次发送重连请求的时间和设定频率来确定该预设时间。其中,设定频率可以是预先根据应用场景或具体需求所设定的,例如,该设定频率可以是1次/分。那么,在上一次发送重连请求的时间为18:00:00的情况下,该预设时间可以是18:01:00。
在该重连事件包括客户端恢复正常的实施例中,可以是由于客户端异常导致第一网络链接异常。那么,在客户端检测到自身恢复正常的情况下,确定重连事件发生。
步骤S2500,在重连事件发生的情况下,向服务器发起重连请求,以供服务器在正常的情况下,响应于该重连请求,重新与客户端建立第一网络链接。
服务器在正常的情况下,可以响应于该重连请求,重新与客户端建立第一网络链接;服务器在仍处于异常的情况下,可以不对该重连请求进行响应,即不会与客户端建立第一网络链接。
步骤S2600,在重新建立第一网络链接的情况下,由第二网络链接切换至第一网络链接与服务器进行网络数据传输。
在本实施例中,在服务器重新与客户端建立第一网络链接的情况下,客户端可以是由第二网络链接切换回第一网络链接,与服务器进行网络数据传输。
<装置>
在本实施例中,提供一种网络数据的传输装置3000,如图3所示,包括第一请求模块3100、第二请求模块3200和链接切换模块3300。该第一请求模块3100用于向服务器发起第一连接请求,以供服务器根据第一连接请求与客户端建立第一网络链接;其中,第一网络链接为支持第一通信协议的网络链接;该第二请求模块3200用于向服务器发起第二连接请求,以供服务器根据第二连接请求与客户端建立第二网络链接;其中,第二网络链接为支持第二通信协议的网络链接;第二网络链接与第一网络链接具有一一对应关系;该链接切换模块3300用于在通过第一网络链接与服务器进行网络数据传输的过程中,在检测到第一网络链接出现异常的情况下,切换至对应的第二网络链接与服务器进行网络数据传输。
在本公开的一个实施例中,该第一请求模块3100还可以用于:
通过服务器预先创建的第一端口,向服务器发起第一连接请求,其中,第一端口为支持第一通信协议的网络端口。
在本公开的一个实施例中,该第二请求模块3200还可以用于:
通过第一网络链接获取与第一端口一一对应的第二端口的端口信息;其中,第二端口为支持第二通信协议的网络端口;
基于第二端口的端口信息,向服务器发起第二连接请求。
在本公开的一个实施例中,该装置3000还可以包括:
用于在通过第二网络链接与服务器进行网络数据传输的过程中,检测预设的重连事件是否发生的模块;
用于在重连事件发生的情况下,向服务器发起重连请求,以供服务器在正常的情况下,响应于重连请求,重新与客户端建立第一网络链接的模块;
用于在重新建立所述第一网络链接的情况下,由第二网络链接切换至第一网络链接与服务器进行网络数据传输的模块。
在本公开的一个实施例中,重连事件可以至少包括以下任意一项或多项:
接收到服务器发送的恢复通知;
达到预设时间;
客户端恢复正常。
本领域技术人员应当明白,可以通过各种方式来实现网络数据的传输装置3000。例如,可以通过指令配置处理器来实现网络数据的传输装置3000。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现网络数据的传输装置3000。例如,可以将网络数据的传输装置3000固化到专用器件(例如ASIC)中。可以将网络数据的传输装置3000分成相互独立的单元,或者可以将它们合并在一起实现。网络数据的传输装置3000可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。
在本实施例中,网络数据的传输装置3000可以具有多种实现形式,例如,网络数据的传输装置3000可以是任何的提供网络数据的传输服务的软件产品或者应用程序中运行的功能模块,或者是这些软件产品或者应用程序的外设嵌入件、插件、补丁件等,还可以是这些软件产品或者应用程序本身。
<客户端>
在本实施例中,还提供一种客户端4000,如图4所示,包括:
前述的网络数据的传输装置3000;或者,
存储器4100和处理器4200,该存储器4100用于存储可执行的指令;该指令用于控制处理器4200执行前述的网络数据的传输方法。
在本实施例中,该客户端4000可以是手机、平板电脑、掌上电脑、台式机、笔记本电脑、工作站、游戏机等任意具有存储器4100以及处理器4200的电子产品。
在本实施例中,客户端4000还可以包括其他的硬件装置,例如,如图1所示的客户端1200。
以上已经结合附图描述了本公开的实施例,通过本公开的实施例,客户端和服务器之间同时建立第一网络链接和第二网络链接,在第一网络链接正常的情况下,客户端和服务器之间可以通过第一网络链接进行网络数据传输;在第一网络链接异常的情况下,客户端和服务器之间可以是切换至第二网络链接进行网络数据传输,这样,可以提高客户端和服务器之间网络的稳定性和可靠性。而且,由于预先建立的第一网络链接和第二网络链接之间具有一一对应关系,在由第一网络链接切换至第二网络链接时,服务器可以无需对客户端进行重复认证,直接通过第二网络链接与客户端进行网络数据传输。
<第二实施例>
<方法>
在本实施例中,提供一种网络数据的传输方法。该方法由服务器实施。该服务器可以是具有处理器和存储器的电子产品。例如可以是台式计算机、笔记本电脑、手机、平板电脑等。在一个例子中,该服务器可以是图1所示的服务器1100。
根据图5所示,本实施例的网络数据的传输方法可以包括如下步骤S5100~S5300。
步骤S5100,响应于客户端发起的第一连接请求,与客户端建立第一网络链接。
其中,第一网络链接为支持第一通信协议的网络链接。该第一通信协议可以但不限于是支持RDMA(Remote Direct Memory Access,远程直接数据存取)的网络协议。例如,该第一通信协议可以是InfiniBand(IB)、RDMA过融合以太网(RoCE)、或者是互联网广域RDMA协议(iWARP)。
在本公开的一个实施例中,该在执行步骤S5100之前,该方法还可以包括:
创建支持第一通信协议的第一端口,以供客户端通过第一端口发起该第一连接请求。
在本公开的一个实施例中,服务器可以是响应于客户端发起的第一连接请求,直接与客户端建立第一网络链接。
在本公开的另一个实施例中,第一连接请求中还可以携带有客户端的验证信息。其中,验证信息可以包括以下至少一项:该客户端的硬件地址、该客户端的网络地址、用户登录该客户端的账号、用户登录该客户端的账号和密码。
在此基础上,服务器可以是响应于第一连接请求,对客户端进行身份验证;在对客户端的身份验证通过的情况下,与客户端建立第一网络链接。
进一步地,服务器中可以是预先存储有可以与自身建立网络链接的所有客户端的参考验证信息,在参考验证信息中包括第一连接请求中所携带的验证信息的情况下,可以确定客户端的身份验证通过;在参考验证信息中不包括第一连接请求中所携带的验证信息的情况下,可以确定客户端的身份验证失败。
在第一网络链接建立成功的情况下,服务器和客户端可以均得到该第一网络链接的相关信息,以供服务器和客户端可以基于该相关信息,通过第一网络链接进行网络数据传输。其中,该第一网络链接的相关信息例如可以包括:该第一网络链接所连接的服务器和客户端的网络地址和/或端口号。
步骤S5200,响应于客户端发起的第二连接请求,与客户端建立第二网络链接。
在本实施例中,该第二网络链接与该第一网络链接具有一一对应关系。
其中,第二网络链接为支持第二通信协议的网络链接,例如,该第二通信协议可以但不限于是TCP/IP协议。
在本公开的一个实施例中,在执行步骤S5200之前,该方法还可以包括:
为第一端口分配一一对应的第二端口;将第二端口的端口信息通过第一网络链接提供至客户端,以供客户端根据该第二端口的端口信息发起该第二连接请求。其中,该第二端口为支持第二通信协议的网络端口。
由于该第一端口与第二端口一一对应,在建立第一网络链接之前对客户端进行身份认证通过的情况下,服务器响应于第二连接请求,可以直接与客户端建立第二网络链接,无需重复对客户端进行身份验证。
在本公开的一个实施例中,不对步骤S5100和步骤S5200的执行顺序进行限定。
在本公开的一个实施例中,可以是设置第一网络链接和第二网络链接的优先级。例如,可以是设置第一网络链接的优先级高于第二网络链接。那么,在客户端和服务器之间同时建立有第一网络链接和第二网络链接的情况下,优先通过优先级较高的网络链接进行网络数据传输。
步骤S5300,通过第一网络链接或第二网络链接与客户端进行网络数据传输。
在本公开的一个实施例中,可以是在执行完步骤S5100或者是S5200之后,服务器可以通过第一网络链接与客户端进行网络数据传输。
在执行步骤S5300之后,该方法还可以包括:
在通过第一网络链接与客户端进行网络数据传输的过程中,在检测到第一网络链接出现异常的情况下,切换至第二网络链接与客户端进行网络数据传输。
由于服务器和客户端均保存了第一网络链接和第二网络链接的对应关系,因此,在客户端和服务器之间由第一网络链接切换至第二网络链接进行网络数据传输的情况下,无需服务器重复对客户端进行认证,服务器和客户端可以直接通过已经建立好的第二网络链接进行网络数据传输。
具体的,可以是在服务器检测到第一网络链接出现异常的情况下,由服务器将第一网络链接切换至第二网络链接与服务器进行网络数据传输。
在一个实施例中,服务器可以是在通过第一网络链接向客户端返回网络服务的调用结果的过程中,在调用结果发送成功的情况下,可以确定第一网络链接的状态为正常;在调用结果发送失败的情况下,可以确定第一网络链接的状态为异常。
在本公开的实施例中,该第一网络链接的异常,可以是由于对应的服务器和/或客户端导致的。对于服务器和/或客户端的异常,可以通过工程师的维修,使其恢复正常。
在此基础上,在切换至第二网络链接与客户端进行网络数据传输之后,该方法还可以包括:
在服务器正常的情况下,响应于客户端发起的重连请求,重新与客户端建立第一网络链接。
在本实施例中,由于服务器保存了第一网络链接和第二网络链接的对应关系,因此,服务器在响应于客户端发起的重连请求的情况下,无需服务器重复对客户端进行认证,直接恢复该第一网络链接。
在本实施例中,在服务器重新与客户端建立第一网络链接的情况下,服务器可以是由第二网络链接切换回第一网络链接,与客户端进行网络数据传输。
在本公开的一个实施例中,该第一网络链接的异常,可以是由于服务器导致的,那么,在响应于客户端发起的重连请求之前,该方法还可以包括:
在检测到服务器恢复正常、且服务器与客户端之间超过设定时长未进行网络数据传输的情况下,向客户端发送恢复通知,以供客户端根据该恢复通知发起重连请求。
<装置>
在本实施例中,提供一种网络数据的传输装置6000,如图6所示,包括第一响应模块6100、第二响应模块6200和数据传输模块6300。该第一响应模块6100用于响应于客户端发起的第一连接请求,与客户端建立第一网络链接;其中,第一网络链接为支持第一通信协议的网络链接;该第二响应模块6200用于响应于客户端发起的第二连接请求,与客户端建立与第一网络链接对应的第二网络链接;其中,第二网络链接为支持第二通信协议的网络链接;该数据传输模块6300用于通过第一网络链接或第二网络链接与客户端进行网络数据传输。
在本公开的一个实施例中,该装置6000还可以包括:
用于创建支持第一通信协议的第一端口,以供客户端通过第一端口发起第一连接请求的模块。
在本公开的一个实施例中,该装置6000还可以包括:
用于为第一端口分配一一对应的第二端口的模块,其中,第二端口为支持第二通信协议的网络端口;
用于将第二端口的端口信息通过第一网络链接提供至客户端,以供客户端根据端口信息发起第二连接请求的模块。
在本公开的一个实施例中,第一响应模块6100还可以用于:
响应于第一连接请求,对客户端进行身份验证;
在对客户端的身份验证通过的情况下,与客户端建立第一网络链接。
在本公开的一个实施例中,该装置6000还可以包括:
用于在通过第一网络链接与客户端进行网络数据传输的过程中,在检测到第一网络链接出现异常的情况下,切换至第二网络链接与客户端进行网络数据传输的模块。
在本公开的一个实施例中,该装置6000还可以包括:
用于在服务器正常的情况下,响应于客户端发起的重连请求,重新与客户端建立第一网络链接。
在本公开的一个实施例中,该装置6000还可以包括:
用于在检测到服务器恢复正常、且服务器与客户端之间超过设定时长未进行网络数据传输的情况下,向客户端发送恢复通知,以供客户端根据恢复通知发起重连请求的模块。
本领域技术人员应当明白,可以通过各种方式来实现网络数据的传输装置6000。例如,可以通过指令配置处理器来实现网络数据的传输装置6000。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现网络数据的传输装置6000。例如,可以将网络数据的传输装置6000固化到专用器件(例如ASIC)中。可以将网络数据的传输装置6000分成相互独立的单元,或者可以将它们合并在一起实现。网络数据的传输装置6000可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。
在本实施例中,网络数据的传输装置6000可以具有多种实现形式,例如,网络数据的传输装置6000可以是任何的提供网络访问服务的软件产品或者应用程序中运行的功能模块,或者是这些软件产品或者应用程序的外设嵌入件、插件、补丁件等,还可以是这些软件产品或者应用程序本身。
<服务器>
在本实施例中,还提供一种服务器7000,如图7所示,包括:
前述的网络数据的传输装置6000;或者,
存储器7100和处理器7200,该存储器7100用于存储可执行的指令;该指令用于控制处理器7200执行前述的网络数据的传输方法。
在本实施例中,该服务器7000可以是整体式服务器或是跨多计算机或计算机数据中心的分散式服务器。例如,服务器例如刀片服务器、云端服务器等,或者可以是由多台服务器组成的服务器群组,可以包括上述类型的服务器中的一种或多种等等。
在本实施例中,服务器7000还可以包括其他的硬件装置,例如,如图1所示的服务器1100。
<第三实施例>
<系统>
在本实施例中,提供一种网络数据的传输系统8000,如图8所示,包括前述第一实施例所述的客户端4000和第二实施例所述的服务器7000。
图9为本实施例的网络数据的传输方法的流程图,该方法可以是由网络数据的传输系统8000实施。
根据图9所示,本实施例的网络数据的传输方法可以包括如下步骤S9001~S9011:
步骤S901,由服务器7000创建支持第一通信协议的第一端口。
步骤S9002,由服务器7000为第一端口分配一一对应的第二端口,其中,第二端口为支持第二通信协议的网络端口。
步骤S9003,由客户端4000通过该第一端口向服务器7000发起第一连接请求。
步骤S9004,由服务器7000响应于第一连接请求,对客户端进行身份验证。
步骤S9005,由服务器7000在对该客户端身份验证通过的情况下,与客户端建立第一网络链接。
步骤S9006,由服务器7000将第二端口的端口信息通过第一网络链接提供至客户端4000。
步骤S9007,由客户端4000根据第二端口的端口信息,向服务器7000发起第二连接请求。
步骤S9008,由服务器7000响应于该第二连接请求,与客户端4000建立第二网络链接。
步骤S9009,由客户端4000和服务器7000通过第一网络链接与服务器进行网络数据传输。
步骤S9010,由客户端4000在检测到第一网络链接出现异常的情况下,切换至第二网络链接进行网络数据传输。
步骤S9011,由服务器7000在检测到第一网络链接出现异常的情况下,切换至第二网络链接进行网络数据传输。
通过本公开的实施例,客户端和服务器之间同时建立第一网络链接和第二网络链接,在第一网络链接正常的情况下,客户端和服务器之间可以通过第一网络链接进行网络数据传输;在第一网络链接异常的情况下,客户端和服务器之间可以是切换至第二网络链接进行网络数据传输,这样,可以提高客户端和服务器之间网络的稳定性和可靠性。而且,由于预先建立的第一网络链接和第二网络链接之间具有一一对应关系,在由第一网络链接切换至第二网络链接时,服务器可以无需对客户端进行重复认证,直接通过第二网络链接与客户端进行网络数据传输。
以上各实施例侧重描述与其他实施例的不同之处,各实施例之间的相同或者相似的部分,相互参见即可。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本公开的范围由所附权利要求来限定。
Claims (17)
1.一种网络数据的传输方法,其特征在于,由客户端实施,所述方法包括:
向服务器发起第一连接请求,以供所述服务器根据所述第一连接请求与所述客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
向所述服务器发起第二连接请求,以供所述服务器根据所述第二连接请求与所述客户端建立第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;所述第二网络链接与所述第一网络链接具有一一对应关系;
在通过所述第一网络链接与所述服务器进行网络数据传输的过程中,在检测到所述第一网络链接出现异常的情况下,切换至对应的第二网络链接与所述服务器进行网络数据传输。
2.根据权利要求1所述的方法,其特征在于,所述向服务器发起第一连接请求包括:
通过所述服务器预先创建的第一端口,向所述服务器发起第一连接请求,其中,所述第一端口为支持所述第一通信协议的网络端口。
3.根据权利要求2所述的方法,其特征在于,所述向所述服务器发起第二连接请求包括:
通过所述第一网络链接获取与所述第一端口一一对应的第二端口的端口信息;其中,所述第二端口为支持所述第二通信协议的网络端口;
基于所述第二端口的端口信息,向所述服务器发起所述第二连接请求。
4.根据权利要求1所述的方法,其特征在于,所述切换至对应的第二网络链接与所述服务器进行网络数据传输之后还包括:
在通过所述第二网络链接与所述服务器进行网络数据传输的过程中,检测预设的重连事件是否发生;
在所述重连事件发生的情况下,向所述服务器发起重连请求,以供所述服务器在正常的情况下,响应于所述重连请求,重新与所述客户端建立所述第一网络链接;
在重新建立所述第一网络链接的情况下,由所述第二网络链接切换至所述第一网络链接与所述服务器进行网络数据传输。
5.根据权利要求4所述的方法,其特征在于,所述重连事件至少包括以下任意一项或多项:
接收到所述服务器发送的恢复通知;
达到预设时间;
所述客户端恢复正常。
6.一种网络数据的传输方法,其特征在于,由服务器实施,所述方法包括:
响应于客户端发起的第一连接请求,与客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
响应于客户端发起的第二连接请求,与所述客户端建立与所述第一网络链接对应的第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;所述第一网络链接与所述第二网络链接之间一一对应;
通过所述第一网络链接或所述第二网络链接与所述客户端进行网络数据传输。
7.根据权利要求6所述的方法,其特征在于,所述响应于客户端发起的第一连接请求之前还包括:
创建支持所述第一通信协议的第一端口,以供所述客户端通过所述第一端口发起所述第一连接请求。
8.根据权利要求7所述的方法,其特征在于,所述响应于客户端发起的第二连接请求之前还包括:
为所述第一端口分配一一对应的第二端口,其中,所述第二端口为支持第二通信协议的网络端口;
将所述第二端口的端口信息通过所述第一网络链接提供至所述客户端,以供所述客户端根据所述端口信息发起所述第二连接请求。
9.根据权利要求6所述的方法,其特征在于,所述响应于客户端发起的第一连接请求,与客户端建立第一网络链接包括:
响应于所述第一连接请求,对所述客户端进行身份验证;
在对所述客户端的身份验证通过的情况下,与所述客户端建立所述第一网络链接。
10.根据权利要求6所述的方法,其特征在于,所述与所述客户端建立与所述第一网络链接对应的第二网络链接之后还包括:
在通过所述第一网络链接与所述客户端进行网络数据传输的过程中,在检测到所述第一网络链接出现异常的情况下,切换至所述第二网络链接与所述客户端进行网络数据传输。
11.根据权利要求10所述的方法,其特征在于,所述切换至所述第二网络链接与所述客户端进行网络数据传输之后包括:
在所述服务器正常的情况下,响应于所述客户端发起的重连请求,重新与所述客户端建立所述第一网络链接。
12.根据权利要求11所述的方法,其特征在于,所述响应于所述客户端发起的重连请求,重新与所述服务器建立所述第一网络链接之前还包括:
在检测到所述服务器恢复正常、且所述服务器与所述客户端之间超过设定时长未进行网络数据传输的情况下,向所述客户端发送恢复通知,以供所述客户端根据所述恢复通知发起所述重连请求。
13.一种网络数据的传输装置,其特征在于,包括:
第一请求模块,用于向服务器发起第一连接请求,以供所述服务器根据所述第一连接请求与所述客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
第二请求模块,用于向所述服务器发起第二连接请求,以供所述服务器根据所述第二连接请求与所述客户端建立第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;所述第二网络链接与所述第一网络链接具有一一对应关系;
链接切换模块,用于在通过所述第一网络链接与所述服务器进行网络数据传输的过程中,在检测到所述第一网络链接出现异常的情况下,切换至对应的第二网络链接与所述服务器进行网络数据传输。
14.一种网络数据的传输装置,其特征在于,包括:
第一响应模块,用于响应于客户端发起的第一连接请求,与客户端建立第一网络链接;其中,所述第一网络链接为支持第一通信协议的网络链接;
第二响应模块,用于响应于客户端发起的第二连接请求,与所述客户端建立与所述第一网络链接对应的第二网络链接;其中,所述第二网络链接为支持第二通信协议的网络链接;
数据传输模块,用于通过所述第一网络链接或所述第二网络链接与所述客户端进行网络数据传输。
15.一种客户端,其特征在于,包括:
如权利要求13所述的装置;或者,
第一处理器和第一存储器,所述第一存储器用于存储第一指令,所述第一指令用于控制所述第一处理器执行根据权利要求1-5中任一项所述的方法。
16.一种服务器,其特征在于,包括:
如权利要求14所述的装置;或者,
第二处理器和第二存储器,所述第二存储器用于存储第二指令,所述第二指令用于控制所述第二处理器执行根据权利要求6-12中任一项所述的方法。
17.一种网络数据的处理系统,其特征在于,包括根据权利要求15所述的客户端、以及根据权利要求16所述的服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110082813.XA CN114885042A (zh) | 2021-01-21 | 2021-01-21 | 一种网络数据的传输方法、客户端、服务器及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110082813.XA CN114885042A (zh) | 2021-01-21 | 2021-01-21 | 一种网络数据的传输方法、客户端、服务器及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114885042A true CN114885042A (zh) | 2022-08-09 |
Family
ID=82668516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110082813.XA Pending CN114885042A (zh) | 2021-01-21 | 2021-01-21 | 一种网络数据的传输方法、客户端、服务器及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114885042A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024051410A1 (zh) * | 2022-09-07 | 2024-03-14 | 华为技术有限公司 | 数据访问方法、装置、网络接口卡、可读介质和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106664326A (zh) * | 2015-06-29 | 2017-05-10 | 华为技术有限公司 | 一种双栈地址管理方法及第一网元 |
CN109756464A (zh) * | 2017-11-07 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 一种通信方法及服务器、客户端 |
CN111225020A (zh) * | 2019-11-07 | 2020-06-02 | 苏州浪潮智能科技有限公司 | 一种用户态网络文件系统双栈访问方法、装置及设备 |
CN111294385A (zh) * | 2020-01-02 | 2020-06-16 | 北京字节跳动网络技术有限公司 | 数据传输方法、装置、可读介质及电子设备 |
-
2021
- 2021-01-21 CN CN202110082813.XA patent/CN114885042A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106664326A (zh) * | 2015-06-29 | 2017-05-10 | 华为技术有限公司 | 一种双栈地址管理方法及第一网元 |
CN109756464A (zh) * | 2017-11-07 | 2019-05-14 | 阿里巴巴集团控股有限公司 | 一种通信方法及服务器、客户端 |
CN111225020A (zh) * | 2019-11-07 | 2020-06-02 | 苏州浪潮智能科技有限公司 | 一种用户态网络文件系统双栈访问方法、装置及设备 |
CN111294385A (zh) * | 2020-01-02 | 2020-06-16 | 北京字节跳动网络技术有限公司 | 数据传输方法、装置、可读介质及电子设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024051410A1 (zh) * | 2022-09-07 | 2024-03-14 | 华为技术有限公司 | 数据访问方法、装置、网络接口卡、可读介质和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10110538B2 (en) | Method and apparatus for message transmission | |
CN107249004B (zh) | 一种身份认证方法、装置及客户端 | |
EP3300331A1 (en) | Response method, apparatus and system in virtual network computing authentication, and proxy server | |
US11381945B2 (en) | Use of identity data associated with a device for directing communications to another device | |
US20120005283A1 (en) | Email system including synchronization server(s) providing synchronization based upon synchronization indicators stored on mobile devices and related methods | |
US11489686B2 (en) | Virtual meetings in ad-hoc networks | |
CN109218389B (zh) | 处理业务请求的方法、装置和存储介质以及电子设备 | |
CN104348697A (zh) | 视频通讯信息的处理方法、装置及系统 | |
CN107204873A (zh) | 一种切换目标域名解析服务器的方法及相关设备 | |
US11870760B2 (en) | Secure virtual personalized network | |
CN112491776A (zh) | 安全认证方法及相关设备 | |
CN103297323A (zh) | 一种发送用户状态的方法和装置 | |
CN114885042A (zh) | 一种网络数据的传输方法、客户端、服务器及系统 | |
CN105933298B (zh) | 用于执行传输控制协议握手的设备和方法 | |
EP2405618B1 (en) | Email system including synchronization server(s) providing synchronization based upon synchronization indicators stored on mobile devices and related methods | |
WO2019125202A1 (ru) | Система и способ управления push-уведомлениями | |
US9973486B2 (en) | Systems and methods for authorizing a session between a browser and a terminal server | |
CN111585914B (zh) | 一种服务限流方法、装置、及电子设备 | |
CN111866100A (zh) | 一种控制数据传输速率的方法、装置和系统 | |
US20200008021A1 (en) | System and method for dual notifications and responses | |
CN110086706B (zh) | 用于加入特定于设备的消息群组的方法和系统 | |
CN111988319B (zh) | 访问控制方法及装置 | |
CN115865480A (zh) | 信息处理方法、装置、设备及存储介质 | |
US20100070635A1 (en) | Methods for setting up an ip connection using a shared key and related electronic devices and computer program products | |
CN117158017A (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 |