CN116260886A - 通信方法、系统、设备及存储介质 - Google Patents

通信方法、系统、设备及存储介质 Download PDF

Info

Publication number
CN116260886A
CN116260886A CN202310298585.9A CN202310298585A CN116260886A CN 116260886 A CN116260886 A CN 116260886A CN 202310298585 A CN202310298585 A CN 202310298585A CN 116260886 A CN116260886 A CN 116260886A
Authority
CN
China
Prior art keywords
application
access
link
application client
client
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
Application number
CN202310298585.9A
Other languages
English (en)
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.)
Alibaba China Co Ltd
Original Assignee
Alibaba China 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 Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN202310298585.9A priority Critical patent/CN116260886A/zh
Publication of CN116260886A publication Critical patent/CN116260886A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例提供一种通信方法、系统、设备及存储介质。其中,由应用控制器执行的方法包括如下的步骤:接收应用客户端发送来的访问链路查询请求;访问链路查询请求中携带有应用客户端所要访问的域名;根据预置的域名与应用服务器之间的对应关系,确定应用客户端所要访问的域名对应的目标应用服务器;确定虚拟网络中用于接入应用客户端的目标接入点;根据虚拟网络中连接在目标接入点与目标应用服务器之间的虚拟链路段的链路质量,确定推荐给应用客户端的访问链路。本申请实施例提供的技术方案,应用服务提供方可通过应用控制器自主规划其应用客户端的访问路径。

Description

通信方法、系统、设备及存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种通信方法、系统、设备及存储介质。
背景技术
随着智能终端技术以及通信技术的不断发展,越来越多的应用程序(application,APP)被人们使用,例如:电商APP、社交APP、视频APP,等等。
这些APP的客户端想要访问其服务端时,需要通过IP(Internet Protocol,网际互连协议)网络访问。通常,其访问路径是由BGP(Border Gateway Protocol,边界网关协议)、OSPF(Open Shortest Path First,开放式最短路径优先)等动态路由协议规划的,APP提供方对此是不可控的,只能被动接收动态路由协议的规划结果。
发明内容
鉴于上述问题,提出了本申请以提供一种解决上述问题或至少部分地解决上述问题的通信方法、系统、设备及存储介质。
于是,在本申请的一个实施例中,提供了一种通信方法,适用于应用控制器,所述方法,包括:
接收应用客户端发送来的访问链路查询请求;所述访问链路查询请求中携带有所述应用客户端所要访问的域名;
根据预置的域名与应用服务器之间的对应关系,确定所述应用客户端所要访问的域名对应的目标应用服务器;
确定虚拟网络中用于接入所述应用客户端的目标接入点;
根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端。
在本申请的又一实施例中,提供了一种通信方法,适用于应用客户端,所述方法,包括:
向应用控制器发送访问链路查询请求;所述访问链路查询请求中携带有所述应用客户端所要访问的域名;其中,所述应用控制器用于:根据预置的域名与应用服务器之间的对应关系,确定所述应用客户端所要访问的域名对应的目标应用服务器;确定虚拟网络中用于接入所述应用客户端的目标接入点;根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段,将满足预设链路质量要求的访问链路返回给所述应用客户端;
按照所述应用控制器推荐的所述访问链路进行访问。
在本申请的又一实施例中,提供了一种通信系统,包括:应用控制器、应用客户端、多个应用服务器以及虚拟网络的多个接入点;其中,
所述应用客户端,用于:向所述应用控制器发送访问链路查询请求;所述访问链路查询请求中携带有所述应用客户端所要访问的域名;
所述应用控制器,用于:接收所述应用客户端发送来的访问链路查询请求;根据预置的域名与应用服务器之间的对应关系,确定所述应用客户端所要访问的域名对应的目标应用服务器;确定虚拟网络中用于接入所述应用客户端的目标接入点;根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端。
在本申请的又一实施例中,提供了一种电子设备。该电子设备,包括:存储器和处理器,其中,
所述存储器,用于存储程序;
所述处理器,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以实现上述任一项所述的方法。
在本申请的又一实施例中,提供了一种存储有计算机程序的计算机可读存储介质,所述计算机程序被计算机执行时能够实现上述任一项所述的方法。
本申请实施例提供的技术方案中,通过将客户端的流量引入虚拟网络,再根据虚拟网络中的链路质量,来规划客户端的流量在引入虚拟网络之后的走向,进而向客户端推荐访问链路。本申请实施例提供的技术方案,应用服务提供方可通过应用控制器自主规划其应用客户端的访问路径;并且,基于虚拟网络中的链路质量,规划访问路径,可提高应用客户端后续的访问质量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有域名解析方案的流程示意图;
图2为本申请一实施例提供的通信系统的结构示意图;
图3为本申请一实施例提供的通信方法的流程示意图;
图4为本申请一实施例提供的通信方法的流程示意图;
图5为本申请一实施例提供的电子设备的结构框图。
具体实施方式
公有网络(下文简称:公网)有可能出现物理链路问题,例如:路由器故障、网关设备故障、光纤线路损坏等情况。此时需要依靠路由协议收敛来获得新的可用链路。路由协议收敛时间和网络恢复情况对于应用服务提供方来说是不可保障的。
基于DNS(Domain Name System,域名系统)解析和GSLB(Global Server LoadBalance,全局负载均衡)的应用选路。如图1所示,应用服务备份部署在不同地区的机房,GSLB服务器检测各应用在机房的运行状态,并在客户端请求域名解析时联合权威DNS返回就近机房的接入IP。其选路流程,如图1所示:
步骤1:客户端欲访问应用服务的某个域名,向配置的本地DNS发起查询。
步骤2:本地DNS上没有该域名的相关记录,则往上发起迭代查询,到达根DNS。
步骤3:根DNS告知该域名的权威DNS地址,本地DNS最终向权威DNS发起查询。
步骤4:权威DNS像GSLB发起查询,GLSB根据查询报文中的本地DNS的IP地址来预估客户端地理位置,并结合各机房的应用健康状态以及机房地理位置,选出合适的站点机房2,并将机房2的接入IP通过权威DNS返回给客户端的本地DNS,本地DNS将查询结果返回客户端。
步骤5:客户端访问机房2的接入IP。
步骤6:由于DNS工作原理限制,GSLB收到的DNS请求的源地址不是客户端的IP地址而是本地DNS的IP,GSLB的就近选择是根据此IP地址做的判断。当存在本地DNS地址与客户端实际地址不匹配的情况时,GSLB返回的接入IP可能不是合适的。
步骤7:当机房2发生故障时,GLSB感知到机房2不可用,权威DNS会在接下来的所有查询中返回机房1的接入IP地址。但是对于已经获得机房2的接入Ip地址的客户端,必须等到浏览器和其本地DNS缓存记录过期才能完成DNS收敛。
总的来说,传统方案存在如下几点不足:
1)IP公网访问由路由协议决定,应用服务提供方缺少控制途径;
2)GSLB根据客户端的本地DNS而非其实际IP选择接入地址,可能存在误差;
3)DNS查询链路很长,需要在本地DNS上做缓存,但又会导致容灾切换时收敛时间过长。
为了解决或部分解决上述技术问题,本申请实施例提供了一种新的通信方法,也即:通过将客户端的流量引入虚拟网络,再根据虚拟网络中的链路质量,来规划客户端的流量在引入虚拟网络之后的走向,进而向客户端推荐访问链路。本申请实施例提供的技术方案,应用服务提供方可通过应用控制器自主规划其应用客户端的访问路径;并且,基于虚拟网络中的链路质量,规划访问路径,可提高应用客户端后续的访问质量。
为了使本技术领域的人员更好地理解本申请方案,下面将根据本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
此外,在本申请的说明书、权利要求书及上述附图中描述的一些流程中,包含了按照特定顺序出现的多个操作,这些操作可以不按照其在本文中出现的顺序来执行或并行执行。操作的序号如101、102等,仅仅是用于区分各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
在对本申请实施例提供的通信方法进行介绍之前,先介绍本申请实施例提供的通信方法所涉及的通信系统。如图2所示,该通信系统包括:应用控制器10、应用客户端11、多个应用服务器12以及虚拟网络的多个接入点13。其中,
所述应用客户端11,用于:向应用控制器10发送访问链路查询请求;所述访问链路查询请求中携带有所述应用客户端11所要访问的域名;
所述应用控制器10,用于:接收应用客户端11发送来的访问链路查询请求;根据预置的域名与应用服务器之间的对应关系,从所述多个应用服务器中确定所述应用客户端11所要访问的域名对应的目标应用服务器;确定所述虚拟网络中用于接入所述应用客户端11的目标接入点;根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端11。
其中,多个应用服务器12可分布在各地不同的机房中,不同的应用服务器12可提供相同或不同的应用服务,具体可根据实际需要来设置。一般地,不同域名对应的应用服务是不同的,不同的应用服务可以部署在相同或不同的应用服务器上,本申请实施例对此不作具体限定。上述虚拟网络可以是基于隧道技术进行网络虚拟化得到的。虚拟网络是一种包含至少部分是虚拟网络链路的计算机网络。虚拟网络链路是通过网络虚拟化来实现的,不是物理链路。之所以称为虚拟网络,主要是因为整个虚拟网络的任意两个节点之间的连接并没有传统网络建设所需的点到点的物理链路,而是架构在公用网络服务商所提供的网络平台之上的逻辑网络。用户的数据是通过公用网络服务商在公共网络中建立的逻辑隧道(Tunnel),即点到点的虚拟链路进行传输的。
在一实例中,上述虚拟网络可以是虚拟专用网络(Virtual Private Network,VPN)。虚拟专用网是利用互联网(internet)等公共网络的基础设施,通过隧道技术,为用户提供的专用网络具有相同通信功能的安全数据通道。
多个接入点13可分布在各个地方,以用于将当地的应用客户端11的流量接入到虚拟网络中。
上述应用控制器10、应用客户端11、应用服务器12以及虚拟网络均由应用服务提供方提供并维护的。
由于虚拟网络的接入点13和应用服务器12都是由应用服务提供方提供的,应用服务提供方可在虚拟网络的接入点13与应用服务器12之间搭建网络专线;虚拟网络中连接在接入点13与应用服务器12之间的虚拟链路段可以基于该网络专线来实现。通常,网络专线就是网络运营商为某个机构例如企业、银行等单独拉的一条独立的网络,让该机构的用户数据传输变得更加可靠可信。这样,应用客户端的流量进入虚拟网络后,就会通过网络专线进行流量传输,可提高网络传输的传输质量。
本申请实施例提供的技术方案中,通过将客户端的流量引入虚拟网络,再根据虚拟网络中的链路质量,来规划客户端的流量在引入虚拟网络之后的走向,进而向客户端推荐访问链路。本申请实施例提供的技术方案,应用服务提供方可通过应用控制器自主规划其应用客户端的访问路径;并且,基于虚拟网络中的链路质量,规划访问路径,可提高应用客户端后续的访问质量。
图3示出了本申请一实施例提供的通信方法的流程示意图。该方法的执行主体可以为上述应用控制器,该应用控制器可以是一台服务器,该服务器可以是物理服务器或虚拟服务器等,本申请实施例对此不作具体限定。如图3所示,该方法包括:
301、接收应用客户端发送来的访问链路查询请求。
其中,所述访问链路查询请求中携带有所述应用客户端所要访问的域名。
302、根据预置的域名与应用服务器之间的对应关系,确定所述应用客户端所要访问的域名对应的目标应用服务器。
303、确定虚拟网络中用于接入所述应用客户端的目标接入点。
304、根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端。
上述301中,应用客户端可响应于用户的页面操作,向应用控制器发送访问链路查询请求。该页面操作具体可以是页面打开操作。
应用客户端可通过http(Hyper Text Transfer Protocol,超文本传输协议)协议向应用控制器发送访问链路查询请求。
在一实例中,所述访问链路查询请求中还可携带有所述应用客户端的客户端地址。上述客户端地址指的是客户端IP地址。
上述302中,域名与应用服务器之间的对应关系可根据各域名对应的应用服务的部署情况来确定。域名与应用服务器之间的对应关系本质上是域名与应用服务器的IP地址之间的对应关系。一个域名可对应有一个或多个应用服务器的IP地址,也就是说这一个或多个应用服务器均能够提供该域名对应的应用服务。
上述目标应用服务器的数量为一个或多个,即至少一个。
在一实例中,可将所述应用客户端所要访问的域名对应的至少一个应用服务器均作为该域名对应的目标应用服务器。
在另一实例中,可在所述应用客户端所要访问的域名对应的至少一个应用服务器中,确定出满足预设筛选条件的应用服务器,以作为该域名对应的目标应用服务器。预设筛选条件可包括:预设运行状态条件和/或预设距离条件。预设运行状态条件可包括:负载率低于负债率阈值和/或丢包率低于丢包率阈值。预设距离条件可包括:距离应用客户端的第一距离小于或等于第一距离阈值。上述负债率阈值、丢包率阈值以及距离阈值的大小可根据实际经验来设定,本申请实施例对此不作具体限定。
例如:可在所述应用客户端所要访问的域名对应的至少一个应用服务器中,确定出负债率低于负债率阈值且丢包率低于丢包率阈值的应用服务器,以作为该域名对应的目标应用服务器。
上述303中,目标接入点的数量为一个或多个,即至少一个。
在一实例中,可根据虚拟网络中多个接入点的运行状态,从多个接入点中选择运行状态满足第一预设运行状态要求的所述目标接入点。第一预设运行状态要求可以是:运行状态优于预设状态。
在另一实例中,所述访问链路查询请求中还携带有所述应用客户端的客户端地址;可根据应用客户端的IP地址,确定虚拟网络中用于接入所述应用客户端的目标接入点。根据应用客户端的IP地址,是可以确定出应用客户端所属的网络运营商以及应用客户端的地理位置的。根据应用客户端所属的网络运营商和/或应用客户端的地理位置,确定虚拟网络中用于接入所述应用客户端的目标接入点。
在本实施例中,基于客户端的客户端地址,挑选接入点,可提高接入点的选择精确度,进而可提高选路的精确度。
在一种可实现的方案中,根据应用客户端的IP地址,可确定应用客户端的地理位置;根据应用客户端的地理位置和虚拟网络的多个备选接入点各自的地理位置,从虚拟网络的多个备选接入点中确定满足预设距离条件的接入点,以作为用于接入所述应用客户端的目标接入点。预设距离条件可以是:接入点与应用客户端之间的第二距离小于或等于第二距离阈值。具体地,根据所述应用客户端所在的地理位置和虚拟网络的多个备选接入点各自的地理位置,确定所述虚拟网络的多个备选接入点中各接入点与所述应用客户端之间的距离;根据所述距离,从所述多个备选接入点中确定满足预设距离条件的所述目标接入点。例如:可按照距离由近到远,依次对多个备选接入点进行排序;将排序靠前的第一预设数量个备选接入点作为目标接入点。其中,第一预设数量可以是大于或等于1的整数。
上述多个备选接入点可以是虚拟网络的全部接入点或部分接入点。在一实例中,上述方法,还可包括:
305、根据所述虚拟网络的多个接入点各自的运行状态和/或所述多个接入点与所述应用客户端各自所属的网络运营商,从所述多个接入点中确定满足预设要求的所述多个备选接入点。
预设要求可包括:第二预设运行状态要求和/或预设运营商要求。
例如:根据虚拟网络的多个接入点各自的运行状态,从多个接入点中确定出满足第二预设运行状态要求的多个备选接入点。运行状态可包括:负载率、丢包率等信息。预设运行状态要求包括:负载率低于预设负载率阈值和/或丢包率低于预设丢包率阈值。
再例如:根据虚拟网络的多个接入点与所述应用客户端各自所属的网络运营商,从多个接入点中确定出满足运营商要求的多个备选接入点。预设运营商要求包括:备选接入点所属的网络运营商需与应用客户端所属的网络运营商相同。应用客户端与接入点具有相同的运营商时,两者之间的通信质量较好。
又例如:根据虚拟网络的多个接入点各自的运行状态以及虚拟网络的多个接入点与所述应用客户端各自所属的网络运营商,从多个接入点中确定出同时满足预设运行状态要求和预设运营商要求的多个备选接入点。
上述304中,根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,确定备选访问链路的链路质量;其中,所述备选访问链路由连接在应用客户端与目标接入点之间的链路段以及虚拟网络中连接在目标接入点与目标应用服务器之间的虚拟链路段组成。在一实例中,可将所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,直接作为该备选访问链路的链路质量。连接在应用客户端与目标接入点之间的链路段可以是隧道链路段,也即应用客户端与目标接入点之间通过隧道连接。上述虚拟链路段的链路质量可由目标接入点探测或者由目标应用服务器进行探测,然后实时上报给应用控制器。
在另一实例中,可获取连接在应用客户端与目标接入点之间的链路段的链路质量以及所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,来确定该备选访问链路的链路质量。连接在应用客户端与目标接入点之间的链路段的链路质量可通过拨测机制来确定。具体地,在各个地理区域部署拨测服务器来探测到接入点的网络质量,拨测服务器再汇报给控制器,由于这个探测不是实际从应用客户端发出的,因此只能当一个参考值使用;如果有的地理区域,没有条件部署拨测服务器,可直接将虚拟链路段的链路质量当作全链路的链路质量。
实际应用中,目标接入点的数量和/或目标应用服务器的数量为多个,这样的话,备选访问链路也为多个。
在一种可实现的方案中,上述304中“根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端”,可采用如下步骤来实现:
3041、根据所述应用客户端与所述目标接入点之间链路段的通信质量和所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间虚拟链路段的通信质量,确定多个备选访问链路的链路质量。
3042、根据所述多个备选访问链路的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端。
上述3041中,可将每个备选访问链路中两链路段的通信质量的平均值作为该备选访问链路的通信质量。
上述3042中,在一实例中,可按照链路质量由高到低,对多个备选访问链路进行排序;将排序靠前的预设数量个备选访问链路确定为推荐给所述应用客户端的访问链路。
在另一实例中,上述3042中“根据所述多个备选访问链路的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端”,
S11、根据所述多个备选访问链路的链路质量,将所述多个备选访问链路以及公有网络链路中满足预设链路质量要求的访问链路返回给所述应用客户端。
其中,所述公有网络链路指的是公有网络中连接在所述应用客户端与所述域名对应的应用服务器之间的物理链路。
公有网络链路的链路质量通常是探测不到的,可默认公有网络链路的链路质量为一个指定值,该指定值可根据经验来确定,本申请对此不作具体限定。
可按照链路质量由高到低,对多个备选访问链路以及公有网络链路进行排序;将排序靠前的预设数量个链路,作为推荐给应用客户端的访问链路。
在本方案中,将公有网络链路也作为一个备选链路进行参考,这样,当虚拟网络链路质量较差时,还可将公有网络链路推荐给用户,增加容灾能力。
为了提高对网络故障的容灾能力,上述访问链路可以为多个。具体地,上述方法,还可包括:
306、将多个所述访问链路的链路信息以及多个所述访问链路各自的使用优先级发送给所述应用客户端。
其中,所述应用客户端用于根据多个所述访问链路各自的使用优先级在所述多个访问链路中进行容灾切换;多个所述访问链路各自的使用优先级是根据所述多个访问链路的链路质量确定的。链路质量越好,使用优先级就越高。当高使用优先级的访问链路出现故障时,切换至低使用优先级的访问链路。
上述306中,访问链路的链路信息包括:目标接入点的IP地址以及目标应用服务器IP地址。
可选地,上述方法,还可包括:
307、将所述访问链路推荐给所述应用客户端之后,当检测到所述访问链路中的接入点或应用服务器出现故障时,为所述应用客户端推荐新的访问链路。
应用探测器可实时检测各接入点以及各应用服务器是否出现故障;当检测到所述访问链路中的接入点或应用服务器出现故障时,可按照上述方法继续为应用客户端推荐信的访问链路。新的访问链路的确定过程可参照上述各实施例中相应内容,在此不再详述。
应用客户端接收到新的访问链路后,可删除旧的访问链路,并以新的访问链路进行访问。
在一实例中,所述虚拟网络的接入点与所述域名对应的应用服务器之间设有网络专线;所述虚拟网络中连接在所述接入点与所述应用服务器之间的虚拟链路段是基于所述接入点与所述应用服务器之间的网络专线构建的。这样,只要应用客户端的流量引入到虚拟网络后,其后续的传输是有保障的。
接入点和应用服务器之间的虚拟链路段可以基于两者之间的网络专线来构建,也可以及公有网络来构建。
需要说明的是,上述客户端的IP地址、接入点的IP地址、应用服务器的IP地址均为公网IP。公网IP是指可以在互联网上公开使用的IP地址,是全球唯一的。它是由互联网服务提供商分配给设备的。公网IP地址可以直接在互联网上被访问,是设备在互联网上的身份证明。
图4示出了本申请实施例提供的通信方法的流程示意图。该方法的执行主体为上述应用客户端。如图4所示,该方法,包括:
401、向应用控制器发送访问链路查询请求。
其中,所述访问链路查询请求中携带有所述应用客户端所要访问的域名。
其中,所述应用控制器用于:根据预置的域名与应用服务器之间的对应关系,确定所述应用客户端所要访问的域名对应的目标应用服务器;确定虚拟网络中用于接入所述应用客户端的目标接入点;根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段,将满足预设链路质量要求的访问链路返回给所述应用客户端。
402、按照所述应用控制器推荐的所述访问链路进行访问。
上述402中,应用客户端与目标接入点之间也可以是基于隧道协议,例如:QUIC(Quick UDP Internet Connection,快速UDP网络连接)协议来传输数据。
其中,UDP是用户数据报协议(User Datagram Protocol)。那么,应用客户端与目标接入点之间的链路段也可称为虚拟链路段。
目标接入点与应用服务器之间可基于虚拟扩展局域网(Virtual ExtensibleLocal Area Network,VXLAN)来构建。
上述访问链路可以是一个或多个。
当访问链路为多个时,当应用客户端当前使用的访问链路出现故障时,应用客户端可随机从中选择一个尚未使用的访问链路进行访问,或者,根据多个访问链路各自的使用优先级,从多个访问链路中确定出当前尚未使用的最高优先级的访问链路进行访问。多个访问链路各自的使用优先级是应用控制发送来的。
可选地,所述访问链路的数量为多个;多个所述访问链路包括第一目标访问链路。
上述方法,还可包括:
403、当所述应用客户端当前使用的访问链路出现故障时,判断多个所述访问链路中是否存在尚未使用的访问链路。
404、若多个所述访问链路中不存在尚未使用的访问链路,则重新向所述应用控制器发送所述访问链路查询请求。
在本实施例中,当应用客户端侧的多个访问链路都无法使用时,应用客户端可自动向应用控制器重新发送访问链路查询请求以请求新的访问链路,提高容灾能力。
这里需要说明的是:本申请实施例提供的所述方法中各步骤未尽详述的内容可参见上述实施例中的相应内容,此处不再赘述。此外,本申请实施例提供的所述方法中除了上述各步骤以外,还可包括上述各实施例中其他部分或全部步骤,具体可参见上述各实施例相应内容,在此不再赘述。
本申请实施例提供的技术方案可应用在各个领域,例如电商领域、社交领域或视频领域。
以电商APP为例,电商APP客户端可通过http协议向电商控制器发送访问链路查询请求,电商控制器根据请求中携带的客户端的IP地址,确定出客户端的地理位置;从虚拟网络中选择距离客户端较近的两个接入点;并根据请求中携带的域名,确定出该域名对应的两个应用服务器,这两个应用服务器是该域名对应的多个应用服务器中负载率和丢包率都满足要求的应用服务器。根据这两个接入点以及两个应用服务器之间的网络专线,可确定出四条备选访问链路;根据这四条备选访问链路以及公网访问链路的链路质量,从中选择出三条链路质量较好的访问链路;并根据这三条访问链路的链路质量确定这三条访问链路的使用优先级;将三条访问链路的链路信息以及使用优先级发送给客户端;客户端从这三条访问链路中择优选择一条链路进行访问,当使用的链路出现故障时,可选择低优先级的链路进行容灾。
相较于现有方案,本方案的优点在于:
虚拟链路的好处是应用服务提供商可以通过隧道技术自主规划接入点和传输路径来控制传输的质量和成本,在网络虚拟化的基础上为应用访问提供灵活的路径规划和容灾能力;并通过各项容灾能力,在一定程度上可摆脱对公网稳定性的依赖;对于拥有专线网络的应用服务提供方,可以在专线网络覆盖范围内提供接入点,有效利用接入点到应用服务器间的专线资源;接入点下沉,离客户端更近,减少低质量网络的传输距离。此外,本方案能够缩短域名查询的路径长度,可以根据客户端IP精确确定客户端地理位置,选路更精确;多条访问路径备选,增加对网络故障的容灾能力,可以完成快速恢复;对于应用级容灾切换,不用经过DNS收敛,做到快速机房切换。
图5示出了本申请一实施例提供的电子设备的结构示意图。如图5所示,所述电子设备包括存储器1101以及处理器1102。存储器1101可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器1101可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static RandomAccess Memory,SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable read only memory),EEPROM),可擦除可编程只读存储器(Electrical Programmable Read Only Memory,EPROM),可编程只读存储器(Programmable Read Only Memory,PROM),只读存储器(Read Only Memory,ROM),磁存储器,快闪存储器,磁盘或光盘。
所述存储器1101,用于存储程序;
所述处理器1102,与所述存储器1101耦合,用于执行所述存储器1101中存储的所述程序,以实现上述各方法实施例提供的方法。
进一步,如图5所示,电子设备还包括:通信组件1103、显示器1104、电源组件1105、音频组件1106等其它组件。图5中仅示意性给出部分组件,并不意味着电子设备只包括图5所示组件。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,所述计算机程序被计算机执行时能够实现上述各方法实施例提供的方法的步骤或功能。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM(Read Only Memory,只读存储器)/RAM(RandomAccess Memory,随机存取存储器)、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (13)

1.一种通信方法,其特征在于,适用于应用控制器,所述方法,包括:
接收应用客户端发送来的访问链路查询请求;所述访问链路查询请求中携带有所述应用客户端所要访问的域名;
根据预置的域名与应用服务器之间的对应关系,确定所述应用客户端所要访问的域名对应的目标应用服务器;
确定虚拟网络中用于接入所述应用客户端的目标接入点;
根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端。
2.根据权利要求1所述的方法,其特征在于,所述访问链路查询请求中还携带有所述应用客户端的客户端地址;
确定虚拟网络中用于接入所述应用客户端的目标接入点,包括:
根据所述应用客户端的客户端地址,确定虚拟网络中用于接入所述应用客户端的目标接入点。
3.根据权利要求2所述的方法,其特征在于,根据所述应用客户端的客户端地址,确定虚拟网络中用于接入所述应用客户端的目标接入点,包括:
根据所述应用客户端的客户端地址,确定所述应用客户端所在的地理位置;
根据所述应用客户端所在的地理位置以及所述虚拟网络的多个备选接入点中各接入点的地理位置,从所述多个备选接入点中确定满足预设距离条件的所述目标接入点。
4.根据权利要求3所述的方法,其特征在于,还包括:
根据所述虚拟网络的多个接入点各自的运行状态和/或所述多个接入点与所述应用客户端各自所属的网络运营商,从所述多个接入点中确定满足预设要求的所述多个备选接入点。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述目标接入点的数量和/或所述目标应用服务器的数量为多个;
根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端,包括:
根据所述应用客户端与所述目标接入点之间链路段的通信质量和所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间虚拟链路段的通信质量,确定多个备选访问链路的链路质量;
根据所述多个备选访问链路的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端。
6.根据权利要求5所述的方法,其特征在于,根据所述多个备选访问链路的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端,包括:
根据所述多个备选访问链路的链路质量,将所述多个备选访问链路以及公有网络链路中满足预设链路质量要求的访问链路返回给所述应用客户端;其中,所述公有网络链路指的是公有网络中连接在所述应用客户端与所述域名对应的应用服务器之间的物理链路。
7.根据权利要求1至4中任一项所述的方法,其特征在于,所述访问链路为多个;
将多个所述访问链路的链路信息以及多个所述访问链路各自的使用优先级发送给所述应用客户端;
其中,所述应用客户端用于根据所述多个所述访问链路各自的使用优先级在所述多个访问链路中进行容灾切换;所述使用优先级排序信息是根据所述多个访问链路的链路质量确定的。
8.根据权利要求1至4中任一项所述的方法,其特征在于,还包括:
将所述访问链路推荐给所述应用客户端之后,当检测到所述访问链路中的接入点或应用服务器出现故障时,为所述应用客户端推荐新的访问链路。
9.根据权利要求1至4中任一项所述的方法,其特征在于,所述虚拟网络的接入点与所述域名对应的应用服务器之间设有网络专线;
所述虚拟网络中连接在所述接入点与所述应用服务器之间的虚拟链路段是基于所述接入点与所述应用服务器之间的网络专线构建的。
10.一种通信方法,其特征在于,适用于应用客户端,所述方法,包括:
向应用控制器发送访问链路查询请求;所述访问链路查询请求中携带有所述应用客户端所要访问的域名;其中,所述应用控制器用于:根据预置的域名与应用服务器之间的对应关系,确定所述应用客户端所要访问的域名对应的目标应用服务器;确定虚拟网络中用于接入所述应用客户端的目标接入点;根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段,将满足预设链路质量要求的访问链路返回给所述应用客户端;
按照所述应用控制器推荐的所述访问链路进行访问。
11.一种通信系统,其特征在于,包括:应用控制器、应用客户端、多个应用服务器以及虚拟网络的多个接入点;其中,
所述应用客户端,用于:向所述应用控制器发送访问链路查询请求;所述访问链路查询请求中携带有所述应用客户端所要访问的域名;
所述应用控制器,用于:接收所述应用客户端发送来的访问链路查询请求;根据预置的域名与应用服务器之间的对应关系,从所述多个应用服务器中确定所述应用客户端所要访问的域名对应的目标应用服务器;确定所述虚拟网络中用于接入所述应用客户端的目标接入点;根据所述虚拟网络中连接在所述目标接入点与所述目标应用服务器之间的虚拟链路段的链路质量,将满足预设链路质量要求的访问链路返回给所述应用客户端。
12.一种电子设备,其特征在于,包括:存储器和处理器,其中,
所述存储器,用于存储程序;
所述处理器,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以实现权利要求1至10中任一项所述的方法。
13.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被计算机执行时能够实现权利要求1至10中任一项所述的方法。
CN202310298585.9A 2023-03-17 2023-03-17 通信方法、系统、设备及存储介质 Pending CN116260886A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310298585.9A CN116260886A (zh) 2023-03-17 2023-03-17 通信方法、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310298585.9A CN116260886A (zh) 2023-03-17 2023-03-17 通信方法、系统、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116260886A true CN116260886A (zh) 2023-06-13

Family

ID=86684413

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310298585.9A Pending CN116260886A (zh) 2023-03-17 2023-03-17 通信方法、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116260886A (zh)

Similar Documents

Publication Publication Date Title
CN112470436B (zh) 用于提供多云连通性的系统、方法、以及计算机可读介质
US10212124B2 (en) Facilitating content accessibility via different communication formats
US10356097B2 (en) Domain name system and method of operating using restricted channels
US11171914B2 (en) Systems and methods for automatic inventory and DNS record generation
US10263950B2 (en) Directing clients based on communication format
US20090031415A1 (en) Dynamic Network Tunnel Endpoint Selection
CN114079669A (zh) 用于提供全局虚拟网络(gvn)的系统和方法
CN114747252A (zh) 用于识别移动网络中适合于边缘疏导和适合于业务导向的业务的方法
US10924533B2 (en) System, apparatus and method for load balancing
CN104158919A (zh) 网页访问实现方法、服务器和客户端
CN106254576B (zh) 一种报文转发方法及装置
CN116260886A (zh) 通信方法、系统、设备及存储介质
CN111405639B (zh) 无线网络连接方法、装置、可读存储介质和计算机设备
EP3845001A1 (en) Traffic in a distributed cloud system
US11546408B2 (en) Client-side measurement of computer network conditions
CN109417513B (zh) 软件定义网络中动态检测对端的系统和方法
JP3842624B2 (ja) 経路情報収集方法、装置、およびプログラム
US20240333643A1 (en) Active Backup Path Management For Multi-Region And Multi-Cloud Applications
US20230421481A1 (en) Service border routing based on location in multisite fabric networks
EP4348947A1 (en) A multi-cloud active mesh network system and method
CN114629956A (zh) 用于实现边缘计算网络加速的方法和区块链网络
EP4049434A1 (en) Integrated content delivery of enhanced mobile gateway system
Nelson Internet-scale reactive routing and mobility

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