CN117061417A - 网络通信方法、装置、电子设备以及计算机存储介质 - Google Patents
网络通信方法、装置、电子设备以及计算机存储介质 Download PDFInfo
- Publication number
- CN117061417A CN117061417A CN202310814801.0A CN202310814801A CN117061417A CN 117061417 A CN117061417 A CN 117061417A CN 202310814801 A CN202310814801 A CN 202310814801A CN 117061417 A CN117061417 A CN 117061417A
- Authority
- CN
- China
- Prior art keywords
- network
- network card
- channel
- card
- target application
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 139
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000008859 change Effects 0.000 claims description 52
- 238000004590 computer program Methods 0.000 claims description 7
- 230000015556 catabolic process Effects 0.000 claims description 6
- 238000006731 degradation reaction Methods 0.000 claims description 6
- 230000001413 cellular effect Effects 0.000 description 28
- 230000005540 biological transmission Effects 0.000 description 19
- 230000001133 acceleration Effects 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 9
- 238000012546 transfer Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/247—Multipath using M:N active or standby paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- 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)
- Environmental & Geological Engineering (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供网络通信方法、装置、电子设备及计算机存储介质;在该网络通信方法中,在建立目标应用与服务端之间的网络通信连接时,先判断是否使用初始网卡通道在目标应用与服务端之间建立网络连接,如果使用初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接,初始网卡通道为系统推荐网卡对应的通道,第一网卡为系统推荐网卡,进而使得本申请的方法能够在系统推荐的网卡的网络信号较差时,可以通过另一个网络信号优的网卡通道构建网络连接,可以提高在目标应用与服务端之间建立网络连接的成功率,以提升终端应用的网络通信质量。
Description
技术领域
本申请涉及计算机技术领域,具体涉及网络通信方法、装置、电子设备以及计算机存储介质。
背景技术
随着终端应用在人们的日常生活中的普及,越来越多的终端应用受到欢迎。一般而言,在使用终端应用时,需要在有网络的环境下,以保证应用满足使用需求。
一般可以通过两种方式为终端应用提供上网环境,蜂窝移动网或者无线局域网。具体地,终端应用在使用时,会使用蜂窝移动网或者无线局域网其中的一路网络进行上网。例如,在使用无线局域网时,就会一直采用无线局域网作为默认网卡通道,即使有时无线局域网信号非常弱或者完全不可用,网路传输质量已经很差,但系统层面并没有切换默认网卡通道,即使这时候终端的蜂窝移动网可用且质量很好,因而此时会导致终端应用的网络通信质量差。因而如何提升终端应用的网络通信质量成为当前亟需解决的技术问题。
发明内容
本申请提供一种网络通信方法,以解决如何提升终端应用的网络通信质量的技术问题,本申请还提供与网络通信方法对应的网络通信装置、电子设备以及计算机存储介质。
本申请提供一种网络通信方法,包括:
确定用于网络通信的初始网卡通道;
判断是否使用所述初始网卡通道在目标应用与服务端之间建立网络连接;
如果使用所述初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应所述初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接;其中,所述初始网卡通道为系统推荐网卡对应的通道,所述第一网卡为所述系统推荐网卡。
可选的,还包括:
在使用所述目标网卡通道在目标应用与服务端之间建立网络连接之后,检测所述目标应用所处的网络环境是否存在网络环境变化;
如果所述目标应用所处的网络环境存在网络环境变化,则根据网络环境变化信息,使用预设的路径调整策略对所述目标应用下发生网络环境变化的网卡关联的路径进行调整。
可选的,所述根据网络环境变化信息,使用预设的路径调整策略对所述目标应用下发生网络环境变化的网卡关联的路径进行调整,包括:
如果所述网络环境变化信息为所述第一网卡或者所述第二网卡出现关闭事件或者无法连接,则对与所述第一网卡或者所述第二网卡关联的历史路径进行删除操作。
可选的,在对与所述第一网卡或者所述第二网卡关联的历史路径进行删除操作之后,还包括:
获得删除操作后与所述第一网卡或者所述第二网卡关联的剩余历史路径的数量信息;
根据所述数量信息,确定针对所述目标应用的网络通信策略。
可选的,所述根据所述数量信息,确定针对所述目标应用的网络通信策略,包括:
如果所述数量信息对应的数量大于或者等于预设数量,则采用单路径单网卡的方式进行网络通信。
可选的,所述根据所述数量信息,确定针对所述目标应用的网络通信策略,包括:
如果所述数量信息对应的数量小于预设数量,则通过降级策略的方式进行网络通信。
可选的,所述根据网络环境变化信息,使用预设的路径调整策略对所述目标应用下发生网络环境变化的网卡关联的路径进行调整,包括:
如果所述网络环境变化信息为所述第一网卡或者所述第二网卡出现打开事件或者在使用状态,则对与所述第一网卡关联的历史路径与所述第一网卡进行绑定操作,或者,对与所述第二网卡关联的历史路径与所述第二网卡进行绑定操作。
可选的,还包括:
判断是否存在与所述第一网卡或者所述第二网卡关联的历史路径,如果否,则创建与所述第一网卡或者所述第二网卡关联的新路径;
对与所述第一网卡关联的新路径与所述第一网卡进行绑定操作,或者,对与所述第二网卡关联的新路径与所述第二网卡进行绑定操作。
可选的,在创建与所述第一网卡或者所述第二网卡关联的新路径之前,还包括:
判断所述第一网卡应的协议栈与所述第一网卡的第一目标网络间互联协议是否匹配,或者,判断所述第二网卡对应的协议栈与所述第二网卡的第二目标网络间互联协议是否匹配;
如果是,则执行创建与所述第一网卡或者所述第二网卡关联的新路径的步骤。
可选的,在检测所述目标应用所处的网络环境是否存在网络环境变化之前,还包括:
判断是否采用网络代理的方式进行网络通信;
如果否,则执行检测所述目标应用所处的网络环境是否存在网络环境变化的步骤。
可选的,还包括:
判断所述初始网卡通道与所述目标网卡通道是否均与所述服务端之间建立网络连接;
如果是,则使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信。
可选的,所述使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信,包括:
同时使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信,或者,使用所述目标网卡通道对所述初始网卡通道以网络补偿形式进行多路径多网卡的方式进行网络通信。
本申请提供一种网络通信装置,包括:
初始网卡通道确定单元,用于确定用于网络通信的初始网卡通道;
第一判断单元,用于判断是否使用所述初始网卡通道在目标应用与服务端之间建立网络连接;
网络连接单元,用于如果使用所述初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应所述初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接;其中,所述初始网卡通道为系统推荐网卡对应的通道,所述第一网卡为所述系统推荐网卡。
本申请提供一种电子设备,包括:处理器;存储器,用于存储计算机程序,该计算机程序被处理器运行,执行网络通信方法。
本申请提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,该计算机程序被处理器运行,执行网络通信方法。
与现有技术相比,本申请实施例具有以下优点:
本申请提供一种网络通信方法,包括:确定用于网络通信的初始网卡通道;判断是否使用初始网卡通道在目标应用与服务端之间建立网络连接;如果使用初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接;其中,初始网卡通道为系统推荐网卡对应的通道,第一网卡为系统推荐网卡。在该网络通信方法中,由于在建立目标应用与服务端之间的网络通信连接时,先判断是否使用初始网卡通道在目标应用与服务端之间建立网络连接,如果使用初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接,初始网卡通道为系统推荐网卡对应的通道,第一网卡为系统推荐网卡,进而使得本申请的方法能够在系统推荐的网卡的网络信号较差时,可以通过另一个网络信号优的网卡通道构建网络连接,进而可以提高在目标应用与服务端之间建立网络连接的成功率,以提升终端应用的网络通信质量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请的网络通信方法的场景示意图;
图2为本申请第一实施例提供的网络通信方法的流程图;
图3为本申请第一实施例中的根据网络环境变化进行路径动态增删的流程示意图;
图4为本申请第二实施例提供的网络通信装置的示意图;
图5为本申请第三实施例中提供的一种电子设备的示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此,本申请不受下面公开的具体实施的限制。
本申请提供网络通信方法、装置、电子设备以及计算机存储介质。以下通过具体的实施例分别介绍网络通信方法、装置、电子设备以及计算机存储介质。
本申请的网络通信方法,可以运用在对终端应用的网络通信方式进行调整的场景中。例如,当终端应用在采用无线局域网络时的通信质量较差时,终端应用与服务端之间的网络连接已经断开,致使终端应用无法进行网络通信。此时,可能是由于当前终端应用所使用的无线局域网的网卡对应的网卡通道无法在终端应用与服务端之间建立网络连接。
一般而言,在终端应用进行网络通信时,是使用默认的网卡通道作为主路(主路为MPQUIC默认主路:指握手协商时初始默认四元组对应路径),进而在终端应用与服务端之间建立网络连接,即使该网卡通道无法使终端应用与服务端之间建立网络连接,但是也未尝试采用其他网卡(类型)对应的网卡通道在终端应用与服务端之间建立网络连接,进而导致当前的网卡对应的网卡通道网络质量很差,但是其他网卡对应的网卡通道的网络质量很好时,却仍未采用其他网卡对应的网卡通道尝试在终端应用与服务端之间建立网络连接,进而导致终端应用无法进行网络通信。
针对上述问题,在本申请的网络通信方法中,针对终端应用,构建了多网卡通道进行网络通信,进而能够在系统推荐的网卡的网络信号较差时,通过另一个网络信号优的网卡通道构建网络连接,可以提高在目标应用与服务端之间建立网络连接的成功率,以提升终端应用的网络通信质量。
为了便于理解上述网络通信方法,请参照图1,其为本申请的网络通信方法的场景示意图。
在该场景中,以在服务端和终端应用之间进行网络通信为例,所谓服务端为用于为用户终端提供数据处理、存储等服务的计算设备,一般地,服务端可以是指服务器或者服务器集群。用户终端一般为便于用户直接操作的电子设备。
在本申请中,具体地,请参见图1,在终端应用与服务端(可以是指云端服务器)之间存在有蜂窝移动网与无线局域网两条网络通道,通过蜂窝移动网通道与无线局域网通道都可以收发数据,同时蜂窝移动网通道与无线局域网通道均是用于连接该终端应用与服务端的,结合对网络流量的消耗、不同链路通道网络通信质量情况、应用场景的不同诉求,在该网络通信方法中,可以实现弱网补偿模式和并行加速模式;为了便于理解弱网补偿模式与并行加速模式,请参考以下示例,弱网补偿模式如下:例如当无线局域网对应的通道网络质量差时,这时会启用蜂窝移动网对应的通道传输补偿无线局域网,用以保持网络通信整体质量;当无线局域网对应的通道网络质量恢复满足要求时,又自动完全切换回无线局域网链路;并行加速模式如下:在该模式下会同时启用蜂窝移动网和无线局域网并行传输,进而实现扩展网路带宽以便使待传输数据更快送达到对端,其中并行加速模式支持到请求粒度控制。
弱网补偿模式偏向于选择蜂窝移动网和无线局域网其中一个,当无线局域网通信质量不佳时切换到使用蜂窝移动网,无线局域网通信质量恢复时又切换回无线局域网,切换回来后不使用蜂窝移动网,即:当无线局域网通信质量不佳时,用蜂窝移动网流量补偿无线局域网。
弱网补偿模式和并行加速模式这两种模式对蜂窝移动网流量使用程度不一样,由于无线局域网情形下去使用蜂窝移动网的流量相对敏感,补偿模式目的倾向于对通信成功进行挽回,在此过程中会较为克制地去使用蜂窝移动网流量;而并行加速模式则是在用户授权使用蜂窝移动网流量前提下,同时使用蜂窝移动网与无线局域网进行网络通信传输,目的是更快完成请求传输。
在本实施例中,蜂窝移动网与无线局域网各对应一个网卡,每个网卡对应一个路径,基于多网卡实现多路径的网络通信传输。
路径即为传输路径(Path),路径是两个通信节点之间所有连接和路由节点够成的一个数据通路。一条路径在逻辑上通常可以表示为(源IP,目的IP,源端口,目的端口)构成的四元组。IP指网际互连协议,即:Internet Protocol。
多路径即为多路径传输(Multipath Transport):通信数据同时在两条以上的物理路径上传输。例如在通信中同时使用蜂窝移动网和无线局域网传输视频和文件。
上述介绍的图1即为针对本申请的网络通信方法的一种应用场景的图示,本申请的实施例中不对网络通信方法的应用场景做具体的限定,上述网络通信方法的应用场景,仅仅是本申请提供的网络通信方法的应用场景的一个实施例,提供该应用场景实施例的目的是便于理解本申请提供的网络通信方法,而并非用于限定本申请提供的网络通信方法。本申请实施例对网络通信方法的其它应用场景,不再一一赘述。
第一实施例
本申请第一实施例提供一种网络通信方法,以下结合图2至图3进行说明。该网络通信方法的适用场景可以参照上述场景实施例,关于本实施例的一些示例请参见上述场景实施例。
请参照图2,其为本申请第一实施例提供的网络通信方法的流程图。
本申请实施例的网络通信方法,包括如下步骤。
步骤S201:确定用于网络通信的初始网卡通道。
在本实施例中,在目标应用MPQUIC(Multipath Quick User Datagram ProtocolInternet Connections,即:多路径基于用户数据报协议的低延时互联网传输协议)前需要建立初始默认主路,初始默认主路即对应系统推荐的网卡。QUIC(Quick User DatagramProtocol Internet Connections,即:基于用户数据报协议的低延时互联网传输协议)是一种基于UDP(User Datagram Protocol,即:用户数据报协议)的支持多路径复用的安全的通用网络传输协议。QUIC在单个UDP流上复用应用程序流,而MPTCP(MultipathTransmission Control Protocol,多路径传输控制协议)在多个TCP(TransmissionControl Protocol,传输控制协议)子流上拆分单个流。MPQUIC通过在多个UDP子流上复用应用程序流来结合这两个特性。UDP流是QUIC连接的传输通道,一条QUIC连接上支持传输多个HTTP(Hyper Text Transfer Protocol,即:超文本传输协议)应用请求(应用程序流),也就是这多个HTTP请求复用同一条QUIC连接。可以复用是由于HTTP3(HyperText TransferProtocol Version 3,即:超文本传输协议第3版)协议设计上每个HTTP应用请求会唯一映射一条stream(流),每条stream均有自己连接上唯一的stream ID进行区分,故而多条stream可以复用同一条连接传输进行复用。上述两个特性其一是指QUIC连接底层通道上支持多个UDP子流(也就是多个网卡通道),另一个是指QUIC连接之上支持多个stream复用同一条连接,同时并行支持多个请求。
当系统推荐的网卡质量差,导致目标应用与服务端之间的网络连接受损时,如果系统存在另一个网卡,目标应用与服务端之间的网络连接切换到使用另一个网卡通道创建主路,进而可有效避免当系统层面推荐的网卡质量差,且系统又并没有切换默认网络通道而造成目标应用与服务端之间的网络连接失败,而导致用户使用目标应用体验差的问题。一旦主路创建好后,如果存在除主路对应网卡通道的另一个网卡通过,如果通道可用便会创建起来双路通道,如果不存在除主路对应网卡通道的另一个网卡通过,则保持单路通道,后续会依据网络情况进行多路径的动态增删。
步骤S202:判断是否使用初始网卡通道在目标应用与服务端之间建立网络连接。
为了便于后续能够使用多网卡通道进行网络通信,需要判断建立的初始默认主路是否能够在目标应用与服务端之间建立网络连接,当建立的初始默认主路不能够在目标应用与服务端之间建立网络连接时,切换到另一个网卡通道创建主路,进而使得重新创建的主路能够在目标应用与服务端之间建立网络连接。
步骤S203:如果使用初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接。
在本实施例中,初始网卡通道为系统推荐网卡对应的通道,第一网卡为所述系统推荐网卡。例如,第一网卡可以是无线局域网对应的网卡。
在判断使用初始网卡通道在目标应用与服务端之间未建立网络连接时,实际上相当于目标应用与服务端之间的网络连接状态处于断开状态,此时为了使得目标应用能够正常使用,可以使用除对应初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接。
实际上,在使用系统中除对应初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接之后,还需要根据网络环境变化以进行路径动态增删以使得本申请的网络通信方法实现多网卡通道的通信。网络环境变化可以指如用户手机所连接网络蜂窝移动网或者无线局域网发生变化,如打开或者关闭无线局域网。
具体地,请参见图3,其为本申请第一实施例中的根据网络环境变化进行路径动态增删的流程示意图。
在本实施例中,请参照图3,还包括:在使用目标网卡通道在目标应用与服务端之间建立网络连接之后,检测目标应用所处的网络环境是否存在网络环境变化。
如果目标应用所处的网络环境存在网络环境变化,则根据网络环境变化信息,使用预设的路径调整策略对目标应用下发生网络环境变化的网卡关联的路径进行调整。
之所以能够检测到目标应用所处的网络环境存在网络环境变化,实际上可以对目标应用所处的网络环境进行实时检测,进而通过实时检测的过程判断目标应用所处的网络环境是否发生变化。
在本实施例中,作为根据网络环境变化信息,使用预设的路径调整策略对目标应用下发生网络环境变化的网卡关联的路径进行调整的一种实施方式:
如果网络环境变化信息为第一网卡或者第二网卡出现关闭事件或者无法连接,则对与第一网卡或者第二网卡关联的历史路径进行删除操作。
在本实施例中,在对与第一网卡或者第二网卡关联的历史路径进行删除操作之后,还包括:获得删除操作后与第一网卡或者第二网卡关联的剩余历史路径的数量信息;根据数量信息,确定针对目标应用的网络通信策略。
具体地,作为根据数量信息,确定针对目标应用的网络通信策略,可以是指:如果数量信息对应的数量大于或者等于预设数量,则采用单路径单网卡的方式进行网络通信。
或者,作为根据数量信息,确定针对目标应用的网络通信策略,还可以是指:如果数量信息对应的数量小于预设数量,则通知上层通过降级策略的方式进行网络通信。作为一种示例,预设数量可以是1。降级策略是指多路径条件不满足时,自动回退到单路径。例如:当同时存在无线局域网和蜂窝移动网进而建立起来两条通信路径时,当某个时刻用户离开室内环境时,这时候会降级回退到蜂窝移动网对应的单路径,保持上层通信不中断。
作为根据网络环境变化信息,使用预设的路径调整策略对目标应用下发生网络环境变化的网卡关联的路径进行调整,还可以是指:如果网络环境变化信息为第一网卡或者第二网卡出现打开事件或者在使用状态,则对与第一网卡关联的历史路径与第一网卡进行绑定操作,或者,对与第二网卡关联的历史路径与第二网卡进行绑定操作。
当然,在进行绑定操作之前,还可以判断是否存在与第一网卡或者第二网卡关联的历史路径,如果否,则创建与第一网卡或者第二网卡关联的新路径;在创建新路径之后,对与第一网卡关联的新路径与第一网卡进行绑定操作,或者,对与第二网卡关联的新路径与第二网卡进行绑定操作。
以第二网卡为例,对与第二网卡关联的历史路径与第二网卡进行绑定操作是指存在与第二网卡关联的历史路径,如果存在与第二网卡关联的历史路径,直接对与第二网卡关联的历史路径与第二网卡进行绑定操作。反之,如果不存在与第二网卡关联的历史路径,则创建与第二网卡关联的新路径;对与第二网卡关联的新路径与第二网卡进行绑定操作。绑定发生On Available(在使用状态)/打开事件的网卡,例如,用户一开始在室外用的只有蜂窝移动网,这时会在蜂窝移动网上创建QUIC连接(此时整个网络连接是单路,只有一条通信主路);当用户逐步走到室内连接上无线局域网,这时系统无线局域网的网卡可用事件被通知到,这时会尝试新建路径,并把这条新建路径跟无线局域网的网卡通道进行绑定,此处本条会话底层会存在2条物理通道,分别为与无线局域网和蜂窝移动网绑定。
之所以能检测到存在与第一网卡或者第二网卡关联的历史路径,可以通过如下方式:判断是否存在与第一网卡或者第二网卡关联的历史路径。
在本实施例中,在创建与第一网卡或者第二网卡关联的新路径之前,还包括:判断第一网卡应的协议栈与第一网卡的第一目标网络间互联协议是否匹配,或者,判断第二网卡对应的协议栈与第二网卡的第二目标网络间互联协议是否匹配;如果是,则执行创建与第一网卡或者第二网卡关联的新路径的步骤。
网卡是路径的载体,归属某条路径的网络数据包需要通过某个具体网卡进行收发。协议栈是指某个特定的网卡对IPv4(即:Internet Protocol version 4,网际协议版本4)协议和IPv6(即:Internet Protocol version 6,网际协议版本6)协议的支持情况,通常只支持IPv4协议的称为IPv4-Only,只支持IPv6协议的称为IPv6-Only,同时兼容支持IPv4和IPv6的称为双协议栈。
具体地,当系统网卡On Available/打开事件尝试新建路径前,需要探测对新可用网卡IPv4(即:Internet Protocol version 4,网际协议版本4)/IPv6(即:InternetProtocol version 6,网际协议版本6)协议栈的支持情况,进而避免IPv4-only(仅支持IPv4)网卡去连IPv6的目标IP(即:Internet Protocol,网际互联协议)地址而失败情况出现。例如当用蜂窝移动网支持双栈网卡跟一个目标地址为IPv6类型的服务端建立起主路,这时用户移动到室内,假如IPv4-only类型的无线局域网可用,此时因为网卡协议栈与目标IP类型不匹配则不会尝试新建路径,即使尝试也会因联通性异常而失败。
实际上,上述根据网络环境变化信息,使用预设的路径调整策略对目标应用下发生网络环境变化的网卡关联的路径进行调整,对应的是依网络环境变化进行路径动态增删:当系统网卡(系统网卡可以是第一网卡或者第二网卡)LOST(丢失)/关闭事件发生时(对应图3中的是否有网络设备关闭/移除为是时),检测是否有无和该网卡关联过的路径,有的话则移除关闭对应路径,如果可用的路径为0则关闭整个连接会话;当系统网卡OnAvailable/打开事件发生时,检测是否有无和该网卡关联过的路径,没有的话则尝试新建路径,如果有关联路径,则重新绑定网卡和关联路径;这样当两个网卡同时可用时,双路便动态建立起来,当仅有一个网卡可用时会回退到单路状态。基于用户网络环境变化实现多路径动态增删/降级策略/网卡对IPv4/IPv6不同支持情况的处理,以此来实现动态多路径建立和回退。上述的回退可以是指多路径通信条件不满足时,回退降级回单路径通信模式。
在本实施例中,网卡与路径的关联不限于通过绑定网卡形式(即:绑定网卡和关联路径),还可直接指定网络数据包通过哪个网卡发送。
在本实施例中,在检测目标应用所处的网络环境是否存在网络环境变化之前,还包括:判断是否采用网络代理的方式进行网络通信;如果否,则执行检测目标应用所处的网络环境是否存在网络环境变化的步骤。
在本实施例中,还包括:判断初始网卡通道与目标网卡通道是否均与服务端之间建立网络连接;如果是,则使用初始网卡通道与目标网卡通道进行多路径多网卡的方式进行网络通信。
具体地,使用初始网卡通道与目标网卡通道进行多路径多网卡的方式进行网络通信,可以是指:同时使用初始网卡通道与目标网卡通道进行多路径多网卡的方式进行网络通信,或者,使用目标网卡通道对初始网卡通道以网络补偿形式进行多路径多网卡的方式进行网络通信。使用初始网卡通道与目标网卡通道进行多路径多网卡的方式进行网络通信可以是并行加速模式,使用目标网卡通道对初始网卡通道以网络补偿形式进行多路径多网卡的方式进行网络通信可以是指弱网补偿模式。
在本实施例中,在采用代理的情况下,多路径需要代理点支持,因而在走代理时回退到单路。代理IP(Proxy Server,代理服务器):代理IP也被称之为代理服务器,其功能就是代理网络用户取得网络信息。
在判断是否采用网络代理的方式进行网络通信之前,还需要判断HTTP3(HyperText Transfer Protocol Version 3,即:超文本传输协议第3版)是否开启MP(Multi-Link Point-to-Point Protocol,即:多链路点对点协议)扩展属性(开启MP扩展属性即支持多路径网络通信),如果未开启,则保持单路通信。如果HTTP3开启MP扩展属性,则判断是否采用网络代理的方式进行网络通信。
同时,由于在本申请的网络通信方法中,在应用层实现蜂窝移动网和无线局域网多通道的聚合传输,相当于在应用层实现蜂窝移动网和无线局域网多路径聚合传输能力,提供多路并行扩展带宽加速网络请求,同时在兼顾资费前提下进行弱网长尾补偿能力,满足不同业务场景的网络加速需求。
在本实施例中,实际上可以在应用层实现低延时互联网传输协议的多路径传输,相比系统层MPTCP(Multipath Transmission Control Protocol,多路径传输控制协议),可以更方便部署,并在更宽泛的场景落地,同时不侵入系统,还可以针对场景进行定制化的优化。
本申请提供一种网络通信方法,在该网络通信方法中,由于在建立目标应用与服务端之间的网络通信连接时,先判断是否使用初始网卡通道在目标应用与服务端之间建立网络连接,如果使用初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接,初始网卡通道为系统推荐网卡对应的通道,第一网卡为系统推荐网卡,进而使得本申请的方法能够在系统推荐的网卡的网络信号较差时,可以通过另一个网络信号优的网卡通道构建网络连接,进而可以提高在目标应用与服务端之间建立网络连接的成功率,以提升终端应用的网络通信质量。
第二实施例
与本申请第一实施例提供的网络通信方法相对应的,本申请第二实施例还提供一种网络通信装置。由于装置实施例基本类似于第一实施例,所以描述得比较简单,相关之处参见第一实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
请参照图4,其为本申请第二实施例提供的网络通信装置的示意图。
该网络通信装置400,包括:
初始网卡通道确定单元401,用于确定用于网络通信的初始网卡通道;
第一判断单元402,用于判断是否使用所述初始网卡通道在目标应用与服务端之间建立网络连接;
网络连接单元403,用于如果使用所述初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应所述初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接;其中,所述初始网卡通道为系统推荐网卡对应的通道,所述第一网卡为所述系统推荐网卡。
可选的,还包括:调整单元;所述调整单元,具体用于:
在使用所述目标网卡通道在目标应用与服务端之间建立网络连接之后,检测所述目标应用所处的网络环境是否存在网络环境变化;
如果所述目标应用所处的网络环境存在网络环境变化,则根据网络环境变化信息,使用预设的路径调整策略对所述目标应用下发生网络环境变化的网卡关联的路径进行调整。
可选的,所述调整单元,具体用于:
如果所述网络环境变化信息为所述第一网卡或者所述第二网卡出现关闭事件或者无法连接,则对与所述第一网卡或者所述第二网卡关联的历史路径进行删除操作。
可选的,还包括:网络通信策略确定单元;所述网络通信策略确定单元,具体用于:
在对与所述第一网卡或者所述第二网卡关联的历史路径进行删除操作之后,获得删除操作后与所述第一网卡或者所述第二网卡关联的剩余历史路径的数量信息;
根据所述数量信息,确定针对所述目标应用的网络通信策略。
可选的,所述网络通信策略确定单元,具体用于:
如果所述数量信息对应的数量大于或者等于预设数量,则采用单路径单网卡的方式进行网络通信。
可选的,所述网络通信策略确定单元,具体用于:
如果所述数量信息对应的数量小于预设数量,则通过降级策略的方式进行网络通信。
可选的,所述调整单元,具体用于:
如果所述网络环境变化信息为所述第一网卡或者所述第二网卡出现打开事件或者在使用状态,则对与所述第一网卡关联的历史路径与所述第一网卡进行绑定操作,或者,对与所述第二网卡关联的历史路径与所述第二网卡进行绑定操作。
可选的,还包括:新路径创建与绑定操作单元;所述新路径创建与绑定操作单元,具体用于:
判断是否存在与所述第一网卡或者所述第二网卡关联的历史路径,如果否,则创建与所述第一网卡或者所述第二网卡关联的新路径;
对与所述第一网卡关联的新路径与所述第一网卡进行绑定操作,或者,对与所述第二网卡关联的新路径与所述第二网卡进行绑定操作。
可选的,还包括:第二判断单元;所述第二判断单元,具体用于:
在创建与所述第一网卡或者所述第二网卡关联的新路径之前,判断所述第一网卡应的协议栈与所述第一网卡的第一目标网络间互联协议是否匹配,或者,判断所述第二网卡对应的协议栈与所述第二网卡的第二目标网络间互联协议是否匹配;
所述新路径创建与绑定操作单元,具体用于:
如果是,则执行创建与所述第一网卡或者所述第二网卡关联的新路径的步骤。
可选的,还包括:第三判断单元;所述第三判断单元,具体用于:
在检测所述目标应用所处的网络环境是否存在网络环境变化之前,判断是否采用网络代理的方式进行网络通信;
所述调整单元,具体用于:
如果否,则执行检测所述目标应用所处的网络环境是否存在网络环境变化的步骤。
可选的,还包括:第四判断单元;所述第四判断单元,具体用于:
判断所述初始网卡通道与所述目标网卡通道是否均与所述服务端之间建立网络连接;
所述网络通信策略确定单元,具体用于:如果是,则使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信。
可选的,所述网络通信策略确定单元,具体用于:
同时使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信,或者,使用所述目标网卡通道对所述初始网卡通道以网络补偿形式进行多路径多网卡的方式进行网络通信。
第三实施例
与本申请第一实施例的方法相对应的,本申请第三实施例还提供一种电子设备。
如图5所示,图5为本申请第三实施例中提供的一种电子设备的示意图。
在本实施例中,该电子设备500的一种可选硬件结构可如图5所示,包括:至少一个处理器501,至少一个存储器502和至少一个通信总线505;存储器502中包含有程序503与数据504。
总线505可以是在电子设备500内部的组件之间传输数据的通信设备,诸如内部总线(例如,CPU-存储器总线,处理器即为central processing unit,简称CPU)、外部总线(例如,通用串行总线端口、外围组件互连快速端口)等。
另外,电子设备中还包括:至少一个网络接口506,至少一个外设接口507。网络接口506以提供与外部网络508(例如,因特网、内联网、局域网、移动通信网络等)相关的有线或无线通信;在一些实施例中,网络接口506可以包括任意数量的网络接口控制器(英文:network interface controller,简称NIC)、射频(英文:Radio Frequency,简称RF)模块、转发器、收发器、调制解调器、路由器、网关、有线网络适配器的任意组合、无线网络适配器、蓝牙适配器、红外适配器、近场通信(英文:Near Field Communication,简称NFC)适配器、蜂窝网络芯片等。
外设接口507用于与外设连接,外设可以如图中的外设1(图5中的509)、外设2(图5中的510)以及外设3(图5中的511)。外设即外围设备,外围设备可以包括但不限于光标控制设备(例如鼠标、触摸板或触摸屏)、键盘、显示器(例如阴极射线管显示器、液晶显示器)。显示器或发光二极管显示器、视频输入设备(例如,摄像机或通信耦合到视频档案的输入接口)等。
处理器501可能是CPU,或者是特定集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器502可能包含高速RAM(全称:Random Access Memory,即随机存取存储器)存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
其中,处理器501调用存储器502所存储的程序与数据,以执行本申请第一实施例的方法。
第四实施例
与本申请第一实施例的方法相对应的,本申请第四实施例还提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,该计算机程序被处理器运行,以执行本申请第一实施例的方法。
本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(英文:Read-Only Memory,简称ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(英文:phase change memory;简称PRAM)、静态随机存取存储器(英文:Static Random Access Memory;简称SRAM)、动态随机存取存储器(英文:Dynamic Random Access Memory;简称DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(英文:Electrically-ErasableProgrammable Read-Only Memory;简称EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(英文:Compact Disc Read-Only Memory;简称CD-ROM)、数字多功能光盘(英文:Digital versatile disc;简称DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读存储媒体(non-transitory computerreadable storage media),如调制的数据信号和载波。
2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
Claims (15)
1.一种网络通信方法,其特征在于,包括:
确定用于网络通信的初始网卡通道;
判断是否使用所述初始网卡通道在目标应用与服务端之间建立网络连接;
如果使用所述初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应所述初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接;其中,所述初始网卡通道为系统推荐网卡对应的通道,所述第一网卡为所述系统推荐网卡。
2.根据权利要求1所述的方法,其特征在于,还包括:
在使用所述目标网卡通道在目标应用与服务端之间建立网络连接之后,检测所述目标应用所处的网络环境是否存在网络环境变化;
如果所述目标应用所处的网络环境存在网络环境变化,则根据网络环境变化信息,使用预设的路径调整策略对所述目标应用下发生网络环境变化的网卡关联的路径进行调整。
3.根据权利要求2所述的方法,其特征在于,所述根据网络环境变化信息,使用预设的路径调整策略对所述目标应用下发生网络环境变化的网卡关联的路径进行调整,包括:
如果所述网络环境变化信息为所述第一网卡或者所述第二网卡出现关闭事件或者无法连接,则对与所述第一网卡或者所述第二网卡关联的历史路径进行删除操作。
4.根据权利要求3所述的方法,其特征在于,在对与所述第一网卡或者所述第二网卡关联的历史路径进行删除操作之后,还包括:
获得删除操作后与所述第一网卡或者所述第二网卡关联的剩余历史路径的数量信息;
根据所述数量信息,确定针对所述目标应用的网络通信策略。
5.根据权利要求4所述的方法,其特征在于,所述根据所述数量信息,确定针对所述目标应用的网络通信策略,包括:
如果所述数量信息对应的数量大于或者等于预设数量,则采用单路径单网卡的方式进行网络通信。
6.根据权利要求4所述的方法,其特征在于,所述根据所述数量信息,确定针对所述目标应用的网络通信策略,包括:
如果所述数量信息对应的数量小于预设数量,则通过降级策略的方式进行网络通信。
7.根据权利要求2所述的方法,其特征在于,所述根据网络环境变化信息,使用预设的路径调整策略对所述目标应用下发生网络环境变化的网卡关联的路径进行调整,包括:
如果所述网络环境变化信息为所述第一网卡或者所述第二网卡出现打开事件或者在使用状态,则对与所述第一网卡关联的历史路径与所述第一网卡进行绑定操作,或者,对与所述第二网卡关联的历史路径与所述第二网卡进行绑定操作。
8.根据权利要求7所述的方法,其特征在于,还包括:
判断是否存在与所述第一网卡或者所述第二网卡关联的历史路径,如果否,则创建与所述第一网卡或者所述第二网卡关联的新路径;
对与所述第一网卡关联的新路径与所述第一网卡进行绑定操作,或者,对与所述第二网卡关联的新路径与所述第二网卡进行绑定操作。
9.根据权利要求8所述的方法,其特征在于,在创建与所述第一网卡或者所述第二网卡关联的新路径之前,还包括:
判断所述第一网卡应的协议栈与所述第一网卡的第一目标网络间互联协议是否匹配,或者,判断所述第二网卡对应的协议栈与所述第二网卡的第二目标网络间互联协议是否匹配;
如果是,则执行创建与所述第一网卡或者所述第二网卡关联的新路径的步骤。
10.根据权利要求2所述的方法,其特征在于,在检测所述目标应用所处的网络环境是否存在网络环境变化之前,还包括:
判断是否采用网络代理的方式进行网络通信;
如果否,则执行检测所述目标应用所处的网络环境是否存在网络环境变化的步骤。
11.根据权利要求1所述的方法,其特征在于,还包括:
判断所述初始网卡通道与所述目标网卡通道是否均与所述服务端之间建立网络连接;
如果是,则使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信。
12.根据权利要求11所述的方法,其特征在于,所述使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信,包括:
同时使用所述初始网卡通道与所述目标网卡通道进行多路径多网卡的方式进行网络通信,或者,使用所述目标网卡通道对所述初始网卡通道以网络补偿形式进行多路径多网卡的方式进行网络通信。
13.一种网络通信装置,其特征在于,包括:
初始网卡通道确定单元,用于确定用于网络通信的初始网卡通道;
第一判断单元,用于判断是否使用所述初始网卡通道在目标应用与服务端之间建立网络连接;
网络连接单元,用于如果使用所述初始网卡通道在目标应用与服务端之间未建立网络连接,则使用系统中除对应所述初始网卡通道的第一网卡之外的第二网卡对应的目标网卡通道在目标应用与服务端之间建立网络连接;其中,所述初始网卡通道为系统推荐网卡对应的通道,所述第一网卡为所述系统推荐网卡。
14.一种电子设备,其特征在于,包括:
处理器;
存储器,用于存储计算机程序,该计算机程序被处理器运行,执行权利要求1-12任意一项所述的方法。
15.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,该计算机程序被处理器运行,执行权利要求1-12任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310814801.0A CN117061417A (zh) | 2023-07-04 | 2023-07-04 | 网络通信方法、装置、电子设备以及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310814801.0A CN117061417A (zh) | 2023-07-04 | 2023-07-04 | 网络通信方法、装置、电子设备以及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117061417A true CN117061417A (zh) | 2023-11-14 |
Family
ID=88659690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310814801.0A Pending CN117061417A (zh) | 2023-07-04 | 2023-07-04 | 网络通信方法、装置、电子设备以及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117061417A (zh) |
-
2023
- 2023-07-04 CN CN202310814801.0A patent/CN117061417A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9843505B2 (en) | Differentiated quality of service using tunnels with security as a service | |
US7492787B2 (en) | Method, apparatus, and medium for migration across link technologies | |
US9813459B2 (en) | Methods and systems for recommending communications configurations | |
KR101567386B1 (ko) | 콘텐츠 라우터 기반의 인터넷 프로토콜을 위한 방법 및 장치 | |
US10270689B2 (en) | Multi-nonce enabled interest packet design for named-data networking | |
US9325941B2 (en) | Communication channel management for real-time applications | |
US20160112466A1 (en) | Distributed connectivity policy enforcement with ice | |
KR101378435B1 (ko) | 네트워크 프로토콜 스택의 핸드오프 및 최적화 모듈 | |
CN112291366B (zh) | 数据传输方法、装置、存储介质及电子设备 | |
EP1737260A2 (fr) | Terminal mobile multimode à sélection automatique d'interface de réseau d'accès radio | |
KR20080027333A (ko) | 이동 단말기들을 제어하는 소프트웨어 모듈들을 전송하기위한 네트워크 장비 | |
US10367893B1 (en) | Method and apparatus of performing peer-to-peer communication establishment | |
US20180091581A1 (en) | Method of switching download mode, control method thereof and control system thereof | |
US20120077483A1 (en) | Enabling interface aggregation of mobile broadband network interfaces | |
US9661550B2 (en) | Communication apparatus, communication method, and communication system | |
US20150127837A1 (en) | Relay apparatus and data transfer method | |
CN104660550A (zh) | 一种在多服务器之间进行会话迁移的方法 | |
CN112994946A (zh) | 一种链路聚合方法 | |
MXPA06000315A (es) | Sistema de comunicacion, computadora que presenta un filtro de mensajes entre pares y procedimiento para procesar un mensaje entre pares. | |
WO2022001639A1 (zh) | 通信方法、移动设备及路由设备 | |
CN117061417A (zh) | 网络通信方法、装置、电子设备以及计算机存储介质 | |
US11863598B2 (en) | Network-based communication techniques using enhanced communication protocol | |
US20240171641A1 (en) | Data service management of proxy devices |
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 |