CN113473455B - 一种终端应用联网的方法及终端 - Google Patents
一种终端应用联网的方法及终端 Download PDFInfo
- Publication number
- CN113473455B CN113473455B CN202110744787.2A CN202110744787A CN113473455B CN 113473455 B CN113473455 B CN 113473455B CN 202110744787 A CN202110744787 A CN 202110744787A CN 113473455 B CN113473455 B CN 113473455B
- Authority
- CN
- China
- Prior art keywords
- networking
- address
- terminal
- application
- historical
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/26—Network addressing or numbering for mobility support
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
Abstract
本申请实施例提供一种终端应用联网的方法及终端,涉及终端技术领域,可以与网络质量较高的I P地址建立TCP连接,提高建链和建链后数据传输的效率。从而可以提升联网服务的质量。其中,终端向DNS服务器发送DNS查询请求。终端接收DNS服务器返回的第一域名对应的一个或多个I P地址。在接收到多个I P地址的情况下,终端根据终端的当前位置和终端保存的第一应用的一条或多条历史联网记录,从多个I P地址中选择出第一I P地址;其中,每条历史联网记录包括第一应用一次联网的位置信息、域名、I P地址以及网络质量信息。终端向第一I P地址发送传输控制协议TCP建链请求。终端响应于建立TCP连接完成,与第一I P地址指向的应用服务器进行数据传输。
Description
技术领域
本申请涉及终端技术领域,尤其涉及一种终端应用联网的方法及终端。
背景技术
手机、笔记本等移动终端中的应用软件(Application,APP)都可以使用蜂窝网络或者Wi-Fi等方式联网,而后访问互联网信息。在终端应用联网的过程中,一个重要的步骤是建立传输控制协议(Transmission Control Protocol,TCP)连接,在建立完TCP连接之后,才能使用联网服务。
通常情况下,建立TCP连接的过程如下:终端开机注册到移动网络时,会获取到域名系统(Domain Name System,DNS)服务器地址。当用户打开终端上的某个APP时,终端可以向DNS服务器发起对应域名的DNS查询。而后,DNS服务器可以针对该域名返回一个或者多个应用服务器的网际互连协议(Internet Protocol,IP)地址。在建立TCP连接时,终端向DNS服务器返回的一个或多个IP地址中排在第一位的IP地址进行TCP建链,而后则可使用联网服务。
然而,发明人在实施本申请实施例的过程中发现,终端始终只与排在第一位的IP地址指向的应用服务器建立TCP连接。但是实际中,与处于第一位的IP地址指向的应用服务器建立TCP连接,极有可能出现建链慢、建链无响应、上下行重传等导致联网慢或者无法联网的问题。
发明内容
本申请提供一种终端应用联网的方法及终端,与网络质量较高的IP地址建立TCP连接,从而提升终端应用联网的质量。
第一方面,本申请提供一种终端应用联网的方法,该方法可应用终端上APP联网的场景。其中,APP可以基于蜂窝网络或者Wi-Fi网络来实现联网。其中,终端向域名系统DNS服务器发送DNS查询请求。DNS查询请求中包括第一域名,第一域名是终端中安装的第一应用的应用服务器的域名。DNS查询请求用于查询应用服务器的网际互连协议IP地址。终端接收DNS服务器返回的第一域名对应的一个或多个IP地址。在接收到第一域名对应的多个IP地址的情况下,终端根据终端的当前位置和终端保存的第一应用的一条或多条历史联网记录,从多个IP地址中选择出第一IP地址。
其中,每条历史联网记录包括第一应用一次联网的位置信息、域名、IP地址以及网络质量信息。第一IP地址对应的历史联网记录中的网络质量信息所指示的网络质量,高于第二IP地址对应的历史联网记录中的网络质量信息所指示的网络质量。第二IP地址是多个IP地址中除第一IP地址之外的任一IP地址。应理解,若一条或多条历史联网记录中不存在某一IP地址对应的历史联网记录,则无法确定该某一IP地址的网络质量。第一IP地址对应的历史联网记录中的位置信息所指示的位置与当前位置相匹配,第二IP地址对应的历史联网记录中的位置信息所指示的位置与当前位置相匹配。也就是说,第一IP地址是在终端的当前位置网络质量较高的IP地址。其中,第一IP地址对应的历史联网记录是指包括当前位置的位置信息、第一应用的应用信息和第一域名的历史联网记录中,IP地址为该第一IP地址的历史联网记录。第二IP地址对应的历史联网记录是指包括当前位置的位置信息、第一应用的应用信息和第一域名的历史联网记录中,IP地址为第二IP地址的历史联网记录。
终端向第一IP地址发送传输控制协议TCP建链请求;TCP建链请求用于终端与第一IP地址指向的应用服务器建立TCP连接。终端响应于建立TCP连接完成,与第一IP地址指向的应用服务器进行数据传输。
综上所述,采用本申请实施例的方法,针对第一域名,在查询得到多个IP地址的情况下,进一步基于地理位置和网络质量从多个IP地址中选择建链的IP地址。从而可以选择出在当前地理位置网络质量较好的IP地址来建链。而后,手机向选出的IP地址进行TCP建链,并在建链完成后进行数据传输。如此,则可以提高建链和数据传输的效率。从而可以提升联网服务的质量。
在第一方面的一种可能的设计方式中,终端中存储有多个应用的多条历史联网记录;每条历史联网记录还包括应用信息。上述终端根据终端的当前位置和终端保存的第一应用的一条或多条历史联网记录,从多个IP地址中选择出第一IP地址,包括:终端查找与第一应用、第一域名和当前位置匹配的历史联网记录。在匹配的历史联网记录包括多个IP地址中至少一个IP地址的情况下,终端从多个IP地址中选择出第一IP地址。
采用本实施例的方法,在可以查找到匹配的历史联网记录、并且该匹配的历史联网记录中包括多个IP地址中的至少一个IP地址的情况下,才可以参考历史联网记录中的网络质量信息指示的网络质量。该情况下,从多个IP地址中选择出第一IP地址,可以保证选择出网络质量较高的IP地址来建立TCP连接。
在第一方面的一种可能的设计方式中,上述方法还包括:在未查找到匹配的历史联网记录的情况下,终端向多个IP地址中排在第一位的IP地址发送TCP建链请求。或者,在匹配的历史联网记录不包括多个IP地址中任一个IP地址的情况下,终端向多个IP地址中排在第一位的IP地址发送TCP建链请求。
采用本实施例的方法,在未查找到匹配的历史联网记录或者匹配的历史联网记录不包括多个IP地址中的任一个IP地址的情况下,则无法从历史联网记录中查询到多个IP地址中任一个IP的网络质量。该情况下,则向多个IP地址中排在第一位的IP地址发送TCP建链请求,从而可以保证建链和建链后数据传输的质量。
在第一方面的一种可能的设计方式中,上述终端根据终端的当前位置和终端保存的第一应用的一条或多条历史联网记录,从多个IP地址中选择出第一IP地址包括:在第一应用的一条或多条历史联网记录中包括多个IP地址中所有IP地址对应的历史联网记录的情况下,终端根据所有IP地址对应的历史联网记录中的网络质量信息,从所有IP地址中选择出网络质量最优的第一IP地址。如此,则可以保证选出的IP地址是多个IP地址中质量最优的。在第一应用的一条或多条历史联网记录中包括多个IP地址中部分IP地址对应的历史联网记录的情况下,终端根据部分IP地址对应的历史联网记录中的网络质量信息,从部分IP地址中选择出网络质量最优的第一IP地址。如此,则可以保证选出的IP地址是多个IP地址的部分IP地址中质量最优的。
采用本实施例的方法,在可以查找到匹配的历史联网记录、并且该匹配的历史联网记录中包括多个IP地址中的至少一个IP地址的情况下,则可以从多个IP地址中选择出质量较高的IP地址。
在第一方面的一种可能的设计方式中,多条历史联网记录是使用频次高于第一预设频次的应用和/或访问频次高于第二预设频次的域名的联网记录。上述方法还包括:终端获取使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名。终端筛选并存储包括使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名的历史联网记录。
采用本实施例的方法,可以降低手机本地中存储的历史联网记录的数据量。从而可以提高查询效率。同时记录使用频次高的应用的应用信息和/或记录使用频次高的域名,可以提高查询的命中率。
在第一方面的一种可能的设计方式中,上述终端获取使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名,包括:终端获取服务器统计并发送来的使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名。
采用本实施例的方法,不仅可以减少存储的数据量,提高查询效率和命中率。而且,服务器可以统计全网中的频次信息,可以提高确定出的应用和域名的普遍性,可以普遍满足大量用户的联网需求。
在第一方面的一种可能的设计方式中,多条历史联网记录是网络质量满足预设质量标准的联网记录。上述方法还包括:终端筛选并存储网络质量满足预设质量标准的历史上网记录。
采用本实施例的方法,可以仅将联网体验较好的联网记录存储在手机本地中,便于后续从中查询到质量较高的联网记录。同时,可以减少存储的历史联网记录的数据量。从而可以提高查询效率。
在第一方面的一种可能的设计方式中,网络质量信息包括往返时延(Round-TripTime,RTT),满足预设质量标准包括往返时延小于第一预设时长。
其中,RTT是指从数据完全发送完,即完成最后一个比特推送到数据链路上,到收到确认信号的时间。RTT的大小与网络质量成反相关关系。也就是说,RTT越小,数据传输时延越短,则网络质量越高。反之,RTT越大,数据传输时延越长,则网络质量越低。
在第一方面的一种可能的设计方式中,在数据传输完成后,即联网业务完成后,终端可以对多条历史联网记录进行更新,从而有利于后续准确选择出质量高的第一IP地址。具体的,终端可以获取本次联网的网络质量信息,判断本次联网的网络质量信息指示的网络质量是否满足预设质量标准。
若满足预设质量标准,则在第一应用的一条或多条历史联网记录中包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,终端将本次联网中建立TCP连接的IP地址对应的历史联网记录中的网络质量信息更新为本次联网的网络质量信息。如此,可以在多条历史联网记录中记录最新的联网记录,而覆盖历史的联网记录。从而可以确保多条历史联网记录中数据的实时性。
在第一应用的一条或多条历史联网记录中不包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,终端存储本次联网的联网记录。如此,则可以不断扩充联网记录,后续可以有更充足的数据来参考。从而有利于选择出网络质量最好的第一IP地址。
若不满足预设质量标准,则在匹配的历史联网记录中包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,终端删除本次联网中建立TCP连接的IP地址对应的历史联网记录。如此,则可以剔除网络质量不高的联网记录,减少历史联网记录中不具有参考价值的数据。
在第一方面的一种可能的设计方式中,位置信息包括跟踪区(TA)、经纬度范围或者城市范围。其中,以TA、位置区(LA)或者路由区(RA)等编码信息作为位置信息,可以在基于蜂窝网络联网的过程中,准确便捷的获取到位置信息,减少确定位置范围的运算,节省计算资源。以经纬度范围、城市范围等实际的地理位置范围的信息作为位置信息,可以不受通信方式的限制。例如,可以在采用3G网络、4G网络、5G网络或者wifi等方式联网的过程中,均确定出相应的地位置信息。
第二方面,本申请实施例还提供一种终端,该终端包括存储器和一个或多个处理器。存储器和处理器耦合。存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被处理器执行时,使得终端执行如下步骤:终端向域名系统DNS服务器发送DNS查询请求。所述DNS查询请求中包括第一域名,所述第一域名是所述终端中安装的第一应用的应用服务器的域名;所述DNS查询请求用于查询所述应用服务器的网际互连协议IP地址。所述终端接收所述DNS服务器返回的所述第一域名对应的一个或多个IP地址。在接收到所述第一域名对应的多个IP地址的情况下,所述终端根据所述终端的当前位置和所述终端保存的所述第一应用的一条或多条历史联网记录,从所述多个IP地址中选择出第一IP地址。其中,每条历史联网记录包括所述第一应用一次联网的位置信息、域名、IP地址以及网络质量信息。所述第一IP地址对应的历史联网记录中的网络质量信息所指示的网络质量,高于第二IP地址对应的历史联网记录中的网络质量信息所指示的网络质量;所述第二IP地址是所述多个IP地址中除所述第一IP地址之外的任一IP地址。所述第一IP地址对应的历史联网记录中的位置信息所指示的位置与所述当前位置相匹配,所述第二IP地址对应的历史联网记录中的位置信息所指示的位置与所述当前位置相匹配。所述终端向所述第一IP地址发送传输控制协议TCP建链请求;所述TCP建链请求用于所述终端与所述第一IP地址指向的应用服务器建立TCP连接。所述终端响应于建立TCP连接完成,与所述第一IP地址指向的应用服务器进行数据传输。
在第二方面的一种可能的设计方式中,所述终端中存储有多个应用的多条历史联网记录;每条历史联网记录还包括应用信息。
当计算机指令被处理器执行时,使得终端还执行如下步骤:所述终端查找与所述第一应用、所述第一域名和所述当前位置匹配的历史联网记录。在所述匹配的历史联网记录包括所述多个IP地址中至少一个IP地址的情况下,所述终端从所述多个IP地址中选择出所述第一IP地址。
在第二方面的一种可能的设计方式中,当计算机指令被处理器执行时,使得终端还执行如下步骤:在未查找到所述匹配的历史联网记录的情况下,所述终端向所述多个IP地址中排在第一位的IP地址发送TCP建链请求;或者,在所述匹配的历史联网记录不包括所述多个IP地址中任一个IP地址的情况下,所述终端向所述多个IP地址中排在第一位的IP地址发送TCP建链请求。
在第二方面的一种可能的设计方式中,当计算机指令被处理器执行时,使得终端还执行如下步骤:在所述第一应用的一条或多条历史联网记录中包括所述多个IP地址中所有IP地址对应的历史联网记录的情况下,所述终端根据所述所有IP地址对应的历史联网记录中的网络质量信息,从所述所有IP地址中选择出网络质量最优的第一IP地址。在所述第一应用的一条或多条历史联网记录中包括所述多个IP地址中部分IP地址对应的历史联网记录的情况下,所述终端根据所述部分IP地址对应的历史联网记录中的网络质量信息,从所述部分IP地址中选择出网络质量最优的第一IP地址。
在第二方面的一种可能的设计方式中,所述多条历史联网记录是使用频次高于第一预设频次的应用和/或访问频次高于第二预设频次的域名的联网记录;
当计算机指令被处理器执行时,使得终端还执行如下步骤:所述终端获取使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名。所述终端筛选并存储包括所述使用频次高于第一预设频次的应用的应用信息和/或所述访问频次高于第二预设频次的域名的历史联网记录。
在第二方面的一种可能的设计方式中,当计算机指令被处理器执行时,使得终端还执行如下步骤:所述终端获取服务器统计并发送来的使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名。
在第二方面的一种可能的设计方式中,所述多条历史联网记录是网络质量满足预设质量标准的联网记录;
当计算机指令被处理器执行时,使得终端还执行如下步骤:所述终端筛选并存储网络质量满足预设质量标准的历史上网记录。
在第二方面的一种可能的设计方式中,所述网络质量信息包括往返时延,所述满足预设质量标准包括所述往返时延小于第一预设时长。
在第二方面的一种可能的设计方式中,当计算机指令被处理器执行时,使得终端还执行如下步骤:终端获取本次联网的网络质量信息,判断所述本次联网的网络质量信息指示的网络质量是否满足所述预设质量标准。若满足所述预设质量标准,则在所述第一应用的一条或多条历史联网记录中包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,所述终端将所述本次联网中建立TCP连接的IP地址对应的历史联网记录中的网络质量信息更新为所述本次联网的网络质量信息;在所述第一应用的一条或多条历史联网记录中不包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,所述终端存储本次联网的联网记录。若不满足所述预设质量标准,则在所述匹配的历史联网记录中包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,所述终端删除本次联网中建立TCP连接的IP地址对应的历史联网记录。
在第二方面的一种可能的设计方式中,所述位置信息包括跟踪区、经纬度范围或者城市范围。
第三方面,本申请实施例提供一种芯片系统,该芯片系统应用于包括显示屏和存储器的终端;所述芯片系统包括一个或多个接口电路和一个或多个处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述终端的存储器接收信号,并向所述处理器发送所述信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述终端执行如第一方面及其任一种可能的设计方式所述的方法。
第四方面,本申请提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在终端上运行时,使得终端执行如第一方面及其任一种可能的设计方式所述的方法。
第五方面,本申请提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如第一方面及其任一种可能的设计方式所述的方法。
可以理解地,上述提供的第二方面所述的终端,第三方面所述的芯片系统,第四方面所述的计算机存储介质,第五方面所述的计算机程序产品所能达到的有益效果,可参考第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种终端应用联网的示意图;
图2为本申请实施例提供的另一种终端应用联网的示意图;
图3为本申请实施例提供的一种终端应用联网的流程示意图;
图4为本申请实施例提供的一种终端应用联网的交互示意图;
图5为本申请实施例提供的一种终端的硬件结构示意图;
图6为本申请实施例提供的一种终端应用联网的方法的流程图;
图7为本申请实施例提供的一种手机界面的示意图;
图8为本申请实施例提供的另一种终端应用联网的方法的流程图;
图9为本申请实施例提供的另一种手机界面的示意图;
图10为本申请实施例提供的位置信息的示意图;
图11为本申请实施例提供的另一种终端应用联网的方法的流程图;
图12为本申请实施例提供的另一种终端应用联网的方法的流程图;
图13为本申请实施例提供的一种芯片系统的结构示意图。
具体实施方式
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
本申请实施例的终端应用联网的方法,可以应用于终端上APP联网的场景中。其中,本申请实施例中的终端可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、联网本、智能电视,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmentedreality,AR)\虚拟现实(virtual reality,VR)设备等支持连接互联网的终端设备,本申请实施例对该终端的具体形态不作特殊限制。
示例一,终端为图1中的手机100,应用为新闻应用。手机响应于用户对图1中手机100的主界面101中新闻应用的应用图标102的点击操作,则会请求联网,以获取新闻应用的应用服务器中的网络资源。例如,联网获取线上视频。
示例二,终端为图2中的平板200,应用为音乐应用。手机响应于用户对图2中平板200的主界面201中音乐应用的应用图标202的点击操作,则会请求联网,以获取音乐应用的应用服务器中的网络资源。例如,联网获取线上音频。
为便于对本申请实施例的理解,下面先对终端应用联网的整体过程做大致说明。
参见图3,终端应用联网的整体过程包括如下步骤1-步骤8。
步骤1.终端开机。其中,开机包括新机使用前开机,手机使用过程中触发开机等开机的情况。
步骤2.开机后注册到移动网络。例如,注册到电信5G网络。
步骤3.获取DNS服务器地址。其中,DNS服务器是可以提供IP地址和域名之间的转换服务的服务器。在终端开机注册到移动网络时,则可以获取该DNS服务器的地址。
步骤4.打开应用。在用户存在使用某个应用的需求时,打开该应用。例如,在用户存在使用新闻应用的需求时,可以点击图1中新闻应用的应用图标102,从而打开新闻应用。又如,在用户存在使用音乐应用的需求时,可以点击图2中音乐应用的应用图标202,从而打开音乐应用。
步骤5.向DNS服务器发起域名查询请求。在用户打开应用时,终端向DNS服务器发起域名查询请求,以获取应用服务器的IP地址。具体地,参见图4,终端(UE)依据获取的DNS服务的地址向DNS服务器发起对应域名的DNS查询请求(DNS Query)。
步骤6.获取服务器IP地址。具体地,参见图4,在终端向DNS服务器发送DNS查询请求后,DNS服务器向终端返回对应域名的一个或者多个应用服务器的IP地址(DNS QueryResponse)。
步骤7.TCP建链。终端与DNS服务器返回的排在第一位的IP地址指向的应用服务器建立TCP连接,以使用联网服务。具体地,参见图4,TCP建链包括3次握手的过程:
第1次握手,终端主动打开连接,向排在第一位的IP地址发送同步序列编号(Synchronize Sequence Numbers,SYN)报文,然后终端进入发送SYN报文(SYN_SEND)的状态,等待应用服务器发回确认报文。
第2次握手,应用服务器收到SYN报文后,若同意建立连接,则向终端返回确认报文(SYN ACK)。而后,应用服务器进入收到SYN报文(SYN_RCVD)状态。
第3次握手,终端接收到应用服务器返回的确认报文,向应用服务器给出确认(ACK)。而后,终端进入已建立连接(ESTABLISHED)状态。换言之,TCP连接建立完成。
步骤8.正常上网。具体的,参见图4,在建立完TCP连接后,终端可利用建立的TCP连接与应用服务器传输数据,实现后续联网业务。
前述所示的终端应用联网的整体过程中,步骤6(获取服务器IP地址)和步骤7(TCP建链)中,DNS服务器向终端返回一个或多个应用服务器IP地址。但是,终端始终仅与排在第一位的IP地址指向的应用服务器建立TCP连接。
然而,在实际建链的过程中,由于终端所处的位置及网络环境等多方面因素的影响,使得与排在第一位的IP地址进行建链,会出现建链慢,甚至建链无响应,或者建链后数据传输慢的问题。从而影响联网服务的使用。例如,终端和排在第一位的IP地址指向的应用服务器的地理位置间隔很远,即,通信的距离远。从而需要多个中间网元的跳转才能完成建链,导致建链的耗时长,建链慢。
本申请实施例提供一种终端应用联网的方法,该方法可应用终端上APP联网的场景。其中,APP可以基于蜂窝网络或者Wi-Fi网络来实现联网。终端在接收到DNS服务器查询到的多个IP地址后,结合终端所在的地理位置和历史联网记录中每次联网的网络质量,从该多个IP地址中选择出建立TCP连接的IP地址。相较于直接向DNS服务器返回的排在第一位的IP地址进行TCP建链的方式,本申请实施例中依据地理位置和历史的网络质量选择建链的IP地址的方式,一方面,可以选择出与当前的地理位置相匹配的IP地址,减少通信过程中中间网元的跳转,有利于提高建链过程中和建链后数据传输的效率。另一方面,可以选择出网络质量较高的IP地址作为建链的IP地址,从而保证本次联网的网络质量。
而后,终端向该选择出的IP地址进行TCP建链,在建链成功后则可使用联网服务。如此,则可以实现快速建链,并提供高质量的联网服务。
下面将结合附图对本申请实施例的实施方式进行详细描述。本申请实施例中以终端是手机为例,介绍终端的硬件结构。如图5所示,手机100可以包括处理器510,外部存储器接口520,内部存储器521,通用串行总线(universal serial bus,USB)接口530,充电管理模块540,电源管理模块541,电池542,天线1,天线2,移动通信模块550,无线通信模块560,音频模块570,扬声器570A,受话器570B,麦克风570C,耳机接口570D,传感器模块580,按键590,马达591,指示器592,摄像头593,显示屏594,以及用户标识模块(subscriberidentification module,SIM)卡接口595等。
可以理解的是,本实施例示意的结构并不构成对终端的具体限定。在另一些实施例中,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器510可以包括一个或多个处理单元,例如:处理器510可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端的结构限定。在另一些实施例中,终端也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块540用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块540可以通过USB接口530接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块540可以通过终端500的无线充电线圈接收无线充电输入。充电管理模块540为电池542充电的同时,还可以通过电源管理模块541为终端供电。
电源管理模块541用于连接电池542,充电管理模块540与处理器510。电源管理模块541接收电池542和/或充电管理模块540的输入,为处理器510,内部存储器521,外部存储器,显示屏594,摄像头593,和无线通信模块560等供电。电源管理模块541还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块541也可以设置于处理器510中。在另一些实施例中,电源管理模块541和充电管理模块540也可以设置于同一个器件中。
终端的无线通信功能可以通过天线1,天线2,移动通信模块550,无线通信模块560,调制解调处理器以及基带处理器等实现。
无线通信模块560可以提供应用在终端500上的包括无线局域网(wireless localarea networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequencymodulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块560可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块560经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器510。无线通信模块560还可以从处理器510接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
终端通过GPU,显示屏594,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏594和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器510可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
终端可以通过ISP,摄像头593,视频编解码器,GPU,显示屏594以及应用处理器等实现拍摄功能。ISP用于处理摄像头593反馈的数据。摄像头593用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。在一些实施例中,终端可以包括1个或N个摄像头593,N为大于1的正整数。
外部存储器接口520可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端的存储能力。外部存储卡通过外部存储器接口520与处理器510通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器521可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器510通过运行存储在内部存储器521的指令,从而执行终端的各种功能应用以及数据处理。例如,处理器510可以通过执行存储在内部存储器521中的指令,响应于用户展开显示屏594的操作,在显示屏584显示不同的内容。内部存储器521可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器521可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flashstorage,UFS)等。
终端可以通过音频模块570,扬声器570A,受话器570B,麦克风570C,耳机接口570D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
按键590包括开机键,音量键等。按键590可以是机械按键。也可以是触摸式按键。终端可以接收按键输入,产生与终端的用户设置以及功能控制有关的键信号输入。马达591可以产生振动提示。马达591可以用于来电振动提示,也可以用于触摸振动反馈。指示器592可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。SIM卡接口595用于连接SIM卡。SIM卡可以通过插入SIM卡接口595,或从SIM卡接口595拔出,实现和终端的接触和分离。终端可以支持1个或N个SIM卡接口,N为大于1的正整数。
以下实施例中的方法均可以在具有上述硬件结构的手机100中实现,该手机100中安装有应用程序,应用程序可基于蜂窝网络或者wifi来连接到应用服务器,从而可与应用服务器进行资源传输。例如,获取应用服务器提供的网络资源,或者,将本地数据上传到应用服务器等。
本申请实施例提供一种联网方法,该方法可应用于上述手机中。具体的,如图6所示,该联网方法包括S601-S605:
S601、手机向DNS服务器发送DNS查询请求。DNS查询请求包括第一域名,第一域名是第一应用的应用服务器的域名。第一应用是请求联网的应用。DNS查询请求用于查询该应用服务器的IP地址。
示例性的,手机100接收到用户对图1示出的手机主界面101中的新闻应用的应用图标102的点击操作,则第一应用是新闻应用。手机响应于用户对新闻应用的点击操作,向DNS服务器发送DNS查询请求,该DNS查询请求中携带有新闻应用的应用服务器的域名。即,第一域名是该新闻应用的应用服务器的域名。该DNS查询请求用于查询与该新闻应用的应用服务器的域名对应的IP地址。
其中,第一应用是手机中安装的应用。例如,第一应用还可以是图1中的浏览器应用、电子邮件应用等。
其中,手机可在接收到用户启动第一应用的操作后,向DNS服务器发送DNS查询请求。其中,启动第一应用的操作包括对应用图标的点击操作。例如,启动新闻应用的操作可以是对图1中应用图标102的点击操作。
或者,启动第一应用的操作也可以是对进入第一应用的其它入口的触发操作。其中,该其它入口可以是第一应用的推送消息、第一应用的访问链接(开屏广告链接)等入口。例如,其它入口是图7示出的视频播放界面701顶部的推送消息702,手机响应于用户对该推送消息702的点击操作,可启动推送该推送消息702的第一应用,如聊天应用。
其中,第一域名也可以理解为应用服务器的网址,是由一串用点分隔的名字组成的因特网上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位进行标识。该第一域名可以有一个或多个。应理解,第一应用的域名可能有多个,在这种情况下,手机可以分别向DNS服务器分别发送查询各个第一域名的DNS查询请求。第一域名可以是多个域名中的任一个。
示例性的,第一应用是图1中的应用图标102标识的新闻应用,该新闻应用对应的域名包括“jxs1.jobs.hicloud.com”和“dnkeeper.hicloud.com”。相应的,第一域名可以是“jxs1.jobs.hicloud.com”或者“dnkeeper.hicloud.com”。
S602、DNS服务器查询并向手机返回第一域名对应的一个或多个IP地址。手机接收该一个或多个IP地址。
应理解,针对第一域名,若DNS服务器返回的是一个IP地址,则终端可以直接向其进行TCP建链,不存在选择的过程。若DNS服务器返回的是多个IP地址,则需要从多个IP地址中选择出TCP建链的IP地址。本申请实施例针对的正是DNS服务器返回的是多个IP地址的情况。
示例性的,第一域名是“jxs1.jobs.hicloud.com”,DNS服务器返回的IP地址包括:117.78.58.138,118.194.35.18,49.4.17.100,49.4.45.79,49.4.47.56以及121.36.116.130共6个IP地址。即,DNS服务器返回的是多个IP地址。
S603、在DNS服务器返回的IP地址是多个IP地址的情况下,手机根据手机当前所在的地理位置和第一应用的一条或多条历史联网记录,从多个IP地址中选择出第一IP地址。
其中,手机当前所在的地理位置也可以简称为手机的当前位置。
其中,每条历史联网记录包括第一应用在一次联网中手机所在的位置信息、访问的域名、建立TCP连接的IP地址以及指示联网后的网络质量的网络质量信息。如此,则可以从联网记录中明确一次联网,网络质量与位置信息和建链的IP地址的关联。
示例性的,新闻应用的一条历史联网记录如下所示:{域名“jxs1.jobs.hicloud.com”,位置信息“位置a”,IP地址“118.194.35.18”,网络质量信息“优”}。从该条历史上网记录中可以明确,新闻应用某次联网中,在位置a与IP地址“118.194.35.18”建链后的联网质量为优。
其中,手机当前所在的地理位置可反映出手机当前的位置信息。实际中,手机当前所在的地理位置不同,其与各个IP地址指向的应用服务器之间的通信距离不同。从而从手机到各个应用服务器之间需要跳转的网元和/或网元的数量也不相同。应理解,跳转的网元和/或网元的数量不同,则会影响建链过程中或者建链后的数据传输的效率,从而影响联网体验。例如,需要跳转的网元的数量太多,则会导致建链后的数据传输速度太慢。
手机当前的位置信息可以匹配历史联网记录有中的位置信息。例如,手机当前所在的地理位置也为位置a,也可以与前述联网记录{域名“jxs1.jobs.hicloud.com”,位置信息“位置a”,IP地址“118.194.35.18”,网络质量信息“优”}中的位置信息相匹配,则可以明确在当前位置向IP地址“118.194.35.18”建链后的联网质量为优。如此,则可以从多个IP地址中选择出在该地理位置处网络质量较好的IP地址作为建链的第一IP地址。
S604、手机向第一IP地址发送建立TCP连接的请求,与第一IP地址指向的应用服务器建立TCP连接。
其中,建立TCP连接的请求也可以称为TCP建链请求。该TCP建链请求用于手机与第一IP地址指向的应用服务器建立TCP连接。
相较于直接向DNS服务器返回的排在第一位的IP地址进行TCP建链,本申请实施例中向选出的第一IP地址进行TCP建链,可以保证在当前的地理位置下达到较好的网络质量。
S605、手机响应于TCP建链完成,与第一IP地址指向的应用服务器进行数据传输。
综上所述,采用本申请实施例的方法,针对第一域名,在查询得到多个IP地址的情况下,进一步基于地理位置和网络质量从多个IP地址中选择建链的IP地址。从而可以选择出在当前地理位置网络质量较好的IP地址来建链。而后,手机向选出的IP地址进行TCP建链,并在建链完成后进行数据传输。如此,则可以提高建链和数据传输的效率。从而可以提升联网服务的质量。
进一步的,在一些实施例中,在手机本地中维护多个应用的多条历史联网记录,以用于多个应用联网时的查询。具体地,如图8所示,在S601之前,还包括S801,S603进一步包括S802:
S801、手机在本地保存多个应用的多条历史联网记录。每条联网记录用于记录一次联网的联网信息。该联网信息包括应用信息、域名、位置信息、IP地址以及网络质量信息。
示例性的,手机本地中建立有如下表1所示的多个应用的多条历史联网记录。
表1
应用名称 | 域名 | 跟踪区 | IP地址 | 往返时延 |
应用1 | abc11 | TA1 | IP1 | RTT1 |
应用1 | abc11 | TA1 | IP2 | RTT2 |
应用1 | abc11 | TA1 | IP3 | RTT3 |
应用1 | abc11 | TA2 | IP4 | RTT4 |
应用1 | abc12 | TA1 | IP5 | RTT5 |
应用1 | abc12 | TA2 | IP6 | RTT6 |
应用2 | abc21 | TA1 | IP7 | RTT7 |
应用2 | abc21 | TA1 | IP8 | RTT8 |
在上表1中,除表头外,一行表示一条联网记录。其中,第一列中的“应用名称”是一种具体的应用信息,标识联网的应用。第二列的“域名”表示访问的域名。第三列中的“跟踪区”是一种具体的位置信息,标识联网时手机的位置。第四列中的“IP地址”标识建链的IP地址。第五列的“往返时延”是一种具体的网络质量信息,表示联网的质量。例如,表1中的最后一条联网记录“应用2,abc21,TA1,IP8,RTT8”表示:手机在跟踪区TA1内,应用2向IP8进行TCP建链,实现对域名abc21的访问,并且数据传输的往返时延是RTT8。
需要在此说明的是,上述实例中以表格格式来记录多条记录联网记录,但是实际实施时,并不以此为限。例如,也可以是矩阵格式来记录多条历史联网记录,或者,也可以简单的以一条接一条的数据来记录。本申请实施例对此不做具体限定。在下文实施例中,主要以表格的格式来说明。
并且,由于DNS服务器针对同一第一域名的多次DNS查询请求,可以返回不同数量和/或不同排序的IP地址。也就是说,DNS服务器返回的排在第一位的IP地址可以不同。从而可以在初始建立多个应用的多条历史联网记录时,得到与不同IP地址建链以访问同一域名的联网记录。例如,上表1中的第1-4条联网记录,分别是与不同的IP地址建链以访问域名abc11的联网记录。
其中,应用信息可以采用如表1所示的应用名称来表示。例如,名称“应用1”、“应用2”、“应用n”等分别表示不同的应用。或者,应用信息也可以是其它可唯一标识不同应用的信息。例如,应用信息也可以是应用图标、应用包名或者产品编号(Identity document,ID)。
参见图9,应用1的应用信息界面901中包括应用名称、应用版本等详细信息,还包括应用包名902。历史联网记录表中的应用信息也可以为该应用包名。例如,应用1的应用包名是“aaa.bbb.ccc”,则可以将名称“应用1”替换为“aaa.bbb.ccc”。
在一些实施例中,手机中可以保存手机或者全网中全量应用的联网记录。相应的,应用信息可以是全量应用中任一应用的应用信息。如此,可以从多条历史联网记录中查询到各个应用的历史联网记录。
在另一些实施例中,手机中仅保存使用频次较高的应用的联网记录,而不保存其它应用的联网记录。例如,仅记录使用频次由高至低排在前第一预设数量的应用的联网记录,或者,仅记录使用频次超过预设使用频次(也可以称为第一预设频次)的应用的联网记录。相应的,应用信息则是上述使用频次较高的应用的应用信息。如此,可以降低手机本地中存储的历史联网记录的数据量。从而可以提高查询效率。同时记录使用频次高的应用的应用信息,可以提高查询的命中率。
例如,应用1和应用2都是使用频次较高的应用,则可存储应用1和应用2的联网记录。应用3不是使用频次较高的应用,则不存储应用3的联网记录。如表1中的8条联网记录都是应用1和应用2的联网记录,而不包括应用3的联网记录。
其中,域名可以如表1中的第二列所示。例如,域名“abc11”、“abc12”、“abc21”、“abcnm”等分别表示不同的域名。
在一些实施例中,手机中可以保存访问各个应用的所有域名的联网记录。相应的,域名则可以是所有域名。如此,可以从多条历史联网记录中查询到包括访问各个域名的历史联网记录。
在另一些实施例中,手机中仅保存有访问频次较高的域名的联网记录,而不保存其它域名的联网记录。例如,仅保存访问频次由高至低排在前第二预设数量的域名的联网记录,或者,仅保存访问频次超过预设访问频次(也可以称为第二预设频次)的域名的联网记录。相应的,域名则是访问频次较高的域名。如此,则可以降低手机本地中多条历史联网记录的数据量。从而可以提高查询效率。同时记录使用频次高的域名,可以提高查询的命中率。
例如,应用1的域名abc11和abc12都是访问频次较高的域名,而域名13不是访问频次较高的域名,则可在存储访问域名abc11和abc12的联网记录,而不存储访问域名13的联网记录。如表1中的第1条至第4条记录是访问应用1的域名abc11的联网记录,第5条和第6条记录是访问应用1的域名abc12的联网记录。除此之外,表1中不包括访问域名13的联网记录。
也就是说,手机可以获取使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名;而后,手机筛选并存储包括使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名的历史联网记录。如此,可以保证手机中保存的是使用频次较高的应用和/或访问频次较高的域名的联网记录。
其中,可以由手机统计本机中安装的应用的使用频次,从中筛选出使用频次高于第一预设频次的应用。和/或,由手机统计本机中安装的应用的各个域名的访问频次,从中筛选出访问频次高于第二预设频次的域名。如此,不仅可以减少存储的数据量,提高查询效率和命中率。而且,在手机本机中进行统计,可以提高确定出的应用和域名的针对性,可以满足本机用户的联网需求。
或者,可以由大数据系统(也可以称为服务器)统计全网中所有应用的使用频次,并从中选择使用频次超过第一预设频次的应用。以及,针对各个应用,大数据系统统计全网中该应用的所有域名的访问频次,并从中选择访问频次超过第二预设频次的域名。其中,使用频次和访问频次可以来源于多个手机中的联网记录,也可以来源于第三方数据系统的统计结果。例如,第三方数据系统可以是艾瑞系统。大数据系统将上述应用的应用信息和应用的域名关联发送至手机。而后,手机则可以依据上述应用的应用信息和应用的域名筛选并存储联网记录。如此,不仅可以减少存储的数据量,提高查询效率和命中率。而且,在全网中进行统计,可以提高确定出的应用和域名的普遍性,可以普遍满足大量用户的联网需求。
进一步的,手机或者大数据系统还可以根据各个应用的使用频次的更新数据,来更新使用频次超过第一预设频次的应用。和/或,根据各个域名的访问频次的更新数据,来更新访问频次超过第二预设频次的域名。如此,则可以提高确定出的高频使用的应用和/或域名的实时性。
其中,位置信息可以表示手机所在地理位置所属的位置范围。例如,位置信息可以是如表1所示的跟踪区(Tracking Area,TA):TA是长期演进(Long Term Evolution,LTE)系统为终端(如手机)的位置管理所设立的概念,其被定义为终端不需要更新服务的自由移动区域。TA的功能为实现对终端位置的管理,可分为寻呼管理和位置更新管理。终端通过跟踪区注册告知LTE的核心网(Evolved Packet Core network,EPC)其自身的跟踪区。例如,在手机开机、或者关闭飞行模式后,手机会注册并告知EPC其自身的跟踪区。或者,当终端的跟踪区发生改变时,终端会发起跟踪区位置更新(Tracking Area Update,TAU)流程,请求EPC更新跟踪区。其中,TA是小区级的配置,多个小区可以配置相同的TA,且一个小区只能属于一个TA。应注意,TA可以用于4G或5G网络中对终端位置的管理。
例如,图10共示出了6个TA,包括:TA1、TA2、TA3、TA4、TA5和TA6。其中,位置A属于TA1,位置B属于TA4。某次应用1的联网过程中,手机100位于A位置,则历史多条历史联网记录中该次联网的联网记录中的位置信息是TA1。若手机100从图10中的位置A移动到位置B,并且在位置B处开启应用2联网,则历史多条历史联网记录中该次联网的联网记录中华的位置信息是TA4。
或者,位置信息也可以是移动通信中其它位置管理的信息。例如,在3G网络中,位置信息也可以是位置区(Location Area,LA)或者路由区(Routing Area,RA)等。关于LA和RA,其作用和原理与TA类似,此处不再赘述。
上述以TA、LA或者RA等编码信息作为位置信息,可以在基于蜂窝网络联网的过程中,准确便捷的获取到位置信息,减少确定位置范围的运算,节省计算资源。
或者,位置信息也可以是实际的地理位置范围的信息,而不是上述TA、RA等编码的位置范围。例如,位置信息可以是经纬度范围和/或城市范围等地理位置的范围信息。
上述以实际的地理位置范围的信息作为位置信息,可以不受通信方式的限制。例如,可以在采用3G网络、4G网络、5G网络或者wifi等方式联网的过程中,均确定出相应的地位置信息。
其中,IP地址可以是表1中的第4列所示。例如,“IP1”、“IP2”等分别表示不同的IP地址。
其中,网络质量信息可以是如表1所示的往返时延(Round-Trip Time,RTT)。RTT是指从数据完全发送完,即完成最后一个比特推送到数据链路上,到收到确认信号的时间。RTT的大小与网络质量成反相关关系。也就是说,RTT越小,数据传输时延越短,则网络质量越高。反之,RTT越大,数据传输时延越长,则网络质量越低。
或者,网络质量信息也可以是其它衡量网络质量的信息。示例性的,网络质量信息也可以是体验质量(Quality of Experience,QoE)。体验质量是指用户对设备、网络和系统、应用或业务的质量和性能的主观感受。例如,QoE的分值范围是0-800,分值越低,则网络质量越好
在一些实施例中,手机中保存有网络质量信息(如RTT)为任意值的联网记录。如此,可以确保保存的联网记录数据的全面性。
在另一些实施例中,手机中仅保存有网络质量信息(如RTT)指示的网络质量满足预设质量标准的联网记录。如此,则可以仅将联网体验较好的联网记录存储在手机本地中,便于后续从中查询到质量较高的联网记录。同时,可以减少存储的历史联网记录的数据量。从而可以提高查询效率。
以网络质量信息是RTT为例,满足预设质量标准具体为RTT小于第一预设时长。通常情况下,RTT超过第二预设时长,用户可明显感知到网络卡顿,联网体验极差。基于此,可设置第一预设时长,该第一预设时长小于第二预设时长。例如,RTT>1000ms,则联网体验极差。即,第二预设时长是1000ms,则可设置第一预设时长为800ms。手机中则仅存储RTT<800ms的联网记录。如表1中的各条联网记录中的RTT都小于800ms,即RTT1至RTT8都小于800ms。
手机可以依据联网记录的产生,在手机本地中保存包括上述应用信息、域名、位置信息、IP地址以及网络质量信息的历史联网记录。例如,建立如表1所示的历史联网记录表。
需要在此说明的是,上述S801保存历史联网记录是一个持续的过程,随着联网记录的不断产生,存储的历史联网记录也会不断更新。例如,随着联网记录的不断产生,不断添加新产生的联网记录。
S802、手机根据手机当前所在的地理位置、第一应用的应用信息和第一域名,从多条历史联网记录查询匹配的历史联网记录。手机根据查询结果从多个IP地址中选择第一IP地址。
示例性的,第一应用的应用信息是应用名称“应用1”,第一域名是域名“abc11”,手机当前所在的地理位置所属的跟踪区是“TA1”。手机可从多条历史联网记录中查询应用名称是“应用1”,域名是“abc11”以及跟踪区是“TA1”的联网记录。如查询上表1,可得到如下表2所示的查询结果。
表2
应用1 | abc11 | TA1 | IP1 | RTT1 |
应用1 | abc11 | TA1 | IP2 | RTT2 |
应用1 | abc11 | TA1 | IP3 | RTT3 |
即,表1中的第1条至第3条联网记录符合查询条件。查询结果中涉及“IP1”、“IP2”和“IP2”共3个IP地址,并且对应的网络质量信息(如RTT)依次是RTT1、RTT2和RTT3。
也就是说,手机可从多条历史联网记录中查询包括手机当前所在的地理位置对应的位置信息、第一应用的应用信息和第一域名的历史联网记录。该包括手机当前所在的地理位置对应的位置信息和第一应用的应用信息和第一域名的历史联网记录也可以称为与第一应用、第一域名和当前位置匹配的历史联网记录。其中,每条相匹配的历史联网记录中包括IP地址及其对应的网络质量信息。
在未查找到匹配的历史联网记录的情况下,手机可直接向DNS服务器返回的排在第一位的IP地址进行TCP建链。
在查询到匹配的历史联网记录的情况下,手机可从多个IP地址中选出查询到的网络质量较高的IP地址作为第一IP地址。应注意,若匹配的历史联网记录中不包括多个IP地址中的至少一个IP地址,则无法结合查询结果来选择第一IP地址。
基于此,在一些实施例中,在手机根据查询结果(即匹配的历史联网记录)从多个IP地址中选择第一IP地址之前,手机需要判断匹配的历史联网记录中的IP地址是否包括多个IP地址中的至少一个IP地址。若包括,则手机根据查询结果从多个IP地址中选择第一IP地址。若不包括,则可直接向DNS服务器返回的排在第一位的IP地址进行TCP建链。
例如,查询结果如上表2所示,即查询结果中的IP地址包括IP1、IP2和IP3。若多个IP地址包括IP1、IP2和IP9,则很显然查询结果中包括多个IP地址中的IP1和IP2。针对这种情况,可以采用结合查询结果选择质量较高的IP地址的方式来选择第一IP地址。若多个IP地址包括IP9和IP10,则很显然查询结果中不包括IP9或者IP10。即查询结果中不包括多个IP地址中的任一个。针对这种情况,则可直接向DNS服务器返回的排在第一位的IP地址进行TCP建链。
进一步的,针对查询结果中包括多个IP地址中的至少一个IP地址的情况,结合查询结果选择第一IP地址的实现分为如下两种情况:情况1,查询结果中包括多个IP地址中所有IP地址对应的历史联网记录的。例如,查询结果如上表2所示,即查询结果中的IP地址包括IP1、IP2和IP3。并且,多个IP地址包括IP1和IP2。IP1和IP2均在查询结果中。也就是说,查询结果中包括多个IP地址中的所有IP地址对应的历史联网记录。如,表2中的第一条记录是IP1对应的历史联网记录,表2中的第二条记录是IP2对应的历史联网记录。情况2,查询结果中包括多个IP地址的部分IP地址。例如,查询结果如上表2所示,即查询结果中的IP地址包括IP1、IP2和IP3。并且,多个IP地址包括IP1、IP2和IP9。IP1和IP2在查询结果中,IP9不再查询结果中。也就是说,查询结果中包括多个IP地址中的所有IP地址对应的历史联网记录。
下面将分别针对上述两种情况来说明选择第一IP地址的具体实现。
针对情况1,查询结果中包括多个IP地址中的所有IP地址对应的历史联网记录,则可以从查询结果中选出多个IP地址中网络质量最高的IP地址作为第一IP地址。如此,可以提高TCP建链和建链后数据传输的效率,提升联网体验。
在一些实施例中,可以按照查询结果中该多个IP地址中所有IP地址的网络质量信息反映的网络质量由高至低的顺序对多个IP地址中的所有IP地址进行排序,将排在第一位的IP地址作为第一IP地址。如此,可以有针对性的排序和选择,从而可以提高选出第一IP地址的效率。
例如,多个IP地址包括IP1和IP2,均在表2所示的查询结果中,则可以对表2中的IP1和IP2按照RTT由低至高的顺序进行排序,而无需对IP3进行排序。假设RTT1=500ms,RTT2=400ms,则排序结果由前至后依次为:IP2、IP1。因此,可将排在第一位的IP2作为第一IP地址。
在另一些实施例中,可以按照网络质量信息反映的网络质量由高至低的顺序对查询结果中的所有IP地址进行排序,按照排序由前至后查找该多个IP地址。将第一个查找到的该多个IP地址中的IP地址作为第一IP地址。如此,可以直接对查询结果中的所有IP地址进行排序,省去排序前筛选多个IP地址的计算。尤其当查询结果中包括的IP地址较多时,可以极大的节省从中筛选多个IP地址的工作量。
例如,多个IP地址包括IP1和IP2,均在表2所示的查询结果中,则可以对表2中所有IP地址,如IP1、IP2和IP3,按照RTT由低至高的顺序进行排序。假设RTT1=500ms,RTT2=400ms,RTT3=300ms,则排序结果由前至后依次为:IP3、IP2、IP1。而后,由前至后依次遍历IP地址,则IP2是第一个查找到的该多个IP地址中的IP地址,从而将IP2作为第一IP地址。
针对情况2,查询结果中包括多个IP地址中的部分IP地址对应的历史联网记录,则可以将多个IP地址中包括在查询结果中的,且网络质量最高的IP地址作为第一IP地址。如此,可以确保选出的第一IP地址是多个IP地址中的部分IP地址中网络质量最高的IP地址。从而可以从一定程度上提高TCP建链和建链后数据传输的效率,提升联网体验。
同样的,与情况1类似,也可以通过对查询结果中的全量IP地址或者部分IP地址进行排序的方式来选出第一IP地址。
在一些实施例中,可以按照多个IP地址中包括在查询结果中的部分IP地址的网络质量信息反映的网络质量由高至低的顺序对该部分IP地址进行排序,将排在第一位的IP地址作为第一IP地址。如此,可以有针对性的排序和选择,从而可以提高选出第一IP地址的效率。
例如,多个IP地址包括IP1、IP2和IP9,其中,IP1和IP2在表2所示的查询结果中,则可以对表2中的IP1和IP2按照RTT由低至高的顺序进行排序,而无需对IP9则无法排序。假设RTT1=500ms,RTT2=400ms,则排序结果由前至后依次为:IP2、IP1。因此,可将排在第一位的IP2作为第一IP地址。
在另一些实施例中,可以按照网络质量信息反映的网络质量由高至低的顺序对查询结果中的所有IP地址进行排序,按照排序由前至后查找多个IP地址中包括在查询结果中的部分IP地址。将第一个查找到的该部分IP地址中的IP地址作为第一IP地址。如此,可以直接对查询结果中的所有IP地址进行排序,省去排序前筛选多个IP地址的计算。尤其当查询结果中包括IP地址较多时,可以极大的节省从中筛选多个IP地址的工作量。
例如,多个IP地址包括IP1、IP2和IP9,其中,IP1和IP2在表2所示的查询结果中,则可以对表2中所有IP地址,如IP1、IP2和IP3,按照RTT由低至高的顺序进行排序。假设RTT1=500ms,RTT2=400ms,RTT3=300ms,则排序结果由前至后依次为:IP3、IP2、IP1。而后,由前至后依次遍历多个IP地址,则第一个查找到的IP地址是IP2,从而将IP2作为第一IP地址。
在上述情况1中,第一IP地址是多个IP地址中网络质量最高的IP地址。在情况2中,第一IP地址是多个IP地址中包括在查询结果中的,且网络质量最高的IP地址。也就是说,选择出的第一IP地址对应的历史联网记录中的网络质量信息所指示的网络质量,高于第二IP地址对应的历史联网记录中的网络质量信息所指示的网络质量。第二IP地址是多个IP地址中除第一IP地址之外的任一IP地址。应注意,若查询结果中不包括第二IP地址,则自然不存在第二IP地址对应的历史联网记录。
其中,第一IP地址对应的历史联网记录是指查询到的匹配的历史联网记录中,IP地址为该第一IP地址的历史联网记录。第二IP地址对应的历史联网记录是指查询到的匹配的历史联网记录中,IP地址为第二IP地址的历史联网记录。
例如,多个IP地址包括IP1、IP2和IP9,第一IP地址是IP2,则第二IP地址是IP1或者IP9。假设查询结果如上表2所示,则表2中的第2条记录是第一IP地址对应的历史联网记录。表2中不包括IP9,自然不存在IP9对应的历史联网记录,则第二IP地址对应的历史联网记录是表2中的第1条记录。
并且,由于是将当前位置作为查询条件之一来查询得到匹配的历史联网记录的,则自然第一IP地址对应的历史联网记录中的位置信息所指示的位置与当前位置相匹配,第二IP地址对应的历史联网记录中的位置信息所指示的位置与当前位置相匹配。例如,当前位置属于TA1,则查询到的匹配的历史联网记录的位置信息都是TA1。
综上所述,采用本申请实施例的方法,手机可以在本地中保存多个应用的多条历史联网记录。而后,在选择第一IP地址时,可通过查询该多条历史联网记录准确的选择出在手机当前所在的地理位置网络质量较高的IP地址。从而可以提升联网体验。并且,依据历史联网记录选择IP地址,可以实现快捷选择。
进一步的,在每次TCP建链完成后或者在每次联网业务完成后,可以更新历史联网记录。具体的,如图11所示,在S605之后,还包括S1101:
S1101、手机根据本次联网业务中进行TCP建链的IP地址和/或本次联网业务的网络质量信息更新历史联网记录。
在多个IP地址均不在查询结果内的情况下,无法结合查询结果选择第一IP地址,则是以DNS服务器返回的排在第一位的IP地址作为TCP建链的IP地址的。
这种情况下,在一些实施例中,更新历史联网记录包括:将本次联网的联网记录作为一条新的联网记录来保存。如此,则可以不断扩充联网记录,后续可以有更充足的数据来参考。从而有利于选择出网络质量最好的第一IP地址。
其中,本次联网的联网记录同样包括应用信息、域名、位置信息、IP地址和网络质量信息。应用信息是指第一应用的应用信息。域名是指第一域名。位置信息是指本次联网过程中手机所在的地理位置所属的位置范围的信息。IP地址是指DNS服务返回的排在第一位的IP地址。网络质量信息是指反映本次联网的网络质量的信息。
示例性的,第一应用的应用名称是应用1,第一域名是abc11,位置信息是TA1,DNS服务返回的排在第一位的IP地址是IP9,本次联网的RTT是RTT9,则可以在表1所示的历史联网记录表中添加联网记录,得到如下表3所示的多条历史联网记录。
表3
应用名称 | 域名 | 跟踪区 | IP地址 | 往返时延 |
应用1 | abc11 | TA1 | IP1 | RTT1 |
应用1 | abc11 | TA1 | IP2 | RTT2 |
应用1 | abc11 | TA1 | IP3 | RTT3 |
应用1 | abc11 | TA1 | IP9 | RTT9 |
应用1 | abc11 | TA2 | IP4 | RTT4 |
应用1 | abc12 | TA1 | IP5 | RTT5 |
应用1 | abc12 | TA2 | IP6 | RTT6 |
应用2 | abc21 | TA1 | IP7 | RTT7 |
应用2 | abc21 | TA1 | IP8 | RTT8 |
上表3中的第4条联网记录,即第5行的记录“应用1,abc11,TA1,IP9,RTT9”,是新添加的联网记录。
前述针对以DNS服务返回的排在第一位的IP地址作为TCP建链的IP地址的情况,是直接将本次联网的联网记录作为一条新的联网记录来保存。在另一些实施例中,为了增加历史联网记录的可用性,以及减少存储的数据量,更新历史联网记录包括:手机获取本次联网的网络质量信息,判断本次联网的网络质量信息指示的网络质量是否满足预设质量条件。例如,网络质量信息是RTT,预设质量条件可以是RTT小于第一预设时长。若满足预设质量条件,则将本次联网的联网记录作为新的联网记录来保存。例如,上述RTT9小于第一预设时长(如800ms),则将记录“应用1,abc11,TA1,IP9,RTT9”添加到多条历史联网记录中。反之,则丢弃该条记录。
也就是说,在匹配的历史联网记录不包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,若本次联网的联网质量满足预设质量标准,终端存储本次联网的联网记录。例如,本次联网中建立TCP连接的IP地址是IP9,查询结果如表2所示,则查询结果中不存在包括IP9的历史联网记录。应理解,匹配的历史联网记录中不包括本次联网中建立TCP连接的IP地址对应的历史联网记录,则第一应用的一条或多条历史联网记录中自然不包括本次联网中建立TCP连接的IP地址对应的历史联网记录。
另外,在未查找到匹配的历史联网记录的情况下,同样也是以DNS服务器返回的排在第一位的IP地址作为TCP建链的IP地址的。该种情况下更新历史联网记录的过程,可参见前文中多个IP地址均不在查询结果内的情况下,更新历史联网记录的过程,此处将不再赘述。
在多个IP地址中的全部或者部分IP地址在查询结果内的情况下,是以选出的第一IP地址作为TCP建链的IP地址的。这种情况下,多条历史联网记录中已经记录有包括第一应用的应用信息、第一域名、本次联网过程中手机所属的位置范围的位置信息和第一IP地址的历史联网记录,也即本次联网中建立TCP连接的IP地址对应的历史联网记录(下文中简称为第一记录)。
例如,第一应用的应用名称是应用1,第一域名是abc11,位置信息是TA1,基于此三者查询到的查询结果如表2所示。而后选出IP2作为第一IP地址,则很显然表2中的第2行是包括“应用1”,“abc11”,“TA1”,“IP2”的第一记录。应理解,表2是从表1中查询得到的,则表1所示的多条历史联网记中自然也包括该第一记录,如表1中的第2条记录。
基于此,针对以第一IP地址作为TCP建链的IP地址的情况,在一些实施例中,为了避免在多条历史联网记录中存储大量实时性差的记录,更新历史联网记录包括:将第一记录中的网络质量信息更新为本次联网的网络质量信息。如此,可以在多条历史联网记录中记录最新的联网记录,而覆盖历史的联网记录。从而可以确保多条历史联网记录中数据的实时性。
例如,第一记录是“应用1,abc11,TA1,IP2,RTT2”。假设本次联网的网络质量信息是RTT0,则可将第一记录中的RTT2更新为RTT0,得到如下表4所示的更新后的多条历史联网记录。
表4
应用名称 | 域名 | 跟踪区 | IP地址 | 往返时延 |
应用1 | abc11 | TA1 | IP1 | RTT1 |
应用1 | abc11 | TA1 | IP2 | RTT0 |
应用1 | abc11 | TA1 | IP3 | RTT3 |
应用1 | abc11 | TA2 | IP4 | RTT4 |
应用1 | abc12 | TA1 | IP5 | RTT5 |
应用1 | abc12 | TA2 | IP6 | RTT6 |
应用2 | abc21 | TA1 | IP7 | RTT7 |
应用2 | abc21 | TA1 | IP8 | RTT8 |
上表4中的第2条记录是“应用1,abc11,TA1,IP2,RTT0”,与表1中的第2条记录中的第2条记录不同的是,以RTT2被替换为RTT0。
上述针对以第一IP地址作为TCP建链的IP地址的情况,是直接使用新的联网记录来覆盖旧的联网记录。而在另一些实施例中,为了减少多条历史联网记录中存储的数据量和提高多条历史联网记录中存储的数据的参考价值,仅保存网络质量达到预设质量条件的联网记录。基于此,在本实施例中,更新历史联网记录包括:手机获取本次联网的网络质量信息,判断本次联网的网络质量信息指示的网络质量是否满足预设质量条件。若满足,则将第一记录中的网络质量信息更新为本次联网的网络质量信息。若不满足,则删除该第一记录。如此,则不仅可以确保多条历史联网记录中数据的实时性。还可以剔除网络质量不高的联网记录,减少历史联网记录中不具有参考价值的数据。
例如,第一记录是“应用1,abc11,TA1,IP2,RTT2”。假设预设质量标准是RTT小于第一预设时长(如800ms)。若本次联网的网络质量信息RTT0>800ms,则不满足预设质量标准,从而需将表1中的该第一记录删除。删除后可得到如下表5所示的历史联网记录表。
表5
应用名称 | 域名 | 跟踪区 | IP地址 | 往返时延 |
应用1 | abc11 | TA1 | IP1 | RTT1 |
应用1 | abc11 | TA1 | IP3 | RTT3 |
应用1 | abc11 | TA2 | IP4 | RTT4 |
应用1 | abc12 | TA1 | IP5 | RTT5 |
应用1 | abc12 | TA2 | IP6 | RTT6 |
应用2 | abc21 | TA1 | IP7 | RTT7 |
应用2 | abc21 | TA1 | IP8 | RTT8 |
反之,若本次联网的网络质量信息RTT0<800ms,则满足预设质量标准,从而需将该第一记录中的网络质量信息更新为RTT0。更新后可得到如表4所示的历史联网记录表。
也就是说,在匹配的历史联网记录包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,即包括第一IP地址对应的历史联网记录的情况下,若本次联网的联网质量信息满足预设质量标准,则将第一记录中的网络质量信息更新为本次联网的网络质量信息。若本次联网的联网质量信息满足预设质量标准,则删除第一记录。
综上所述,采用本申请实施例的方法,在每次联网业务完成后,可以对多条历史联网记录进行更新,从而有利于后续准确选择出质量高的第一IP地址。
前文对本申请的一些可能的实施方式进行了详细说明,下面将结合图12所示的一种具体的实现方式来完整说明本申请实施例的方案和效果。如图12所示,本申请实施例提供的联网方法包括S1201-S1212。
S1201、DNS查询。DNS服务器返回IP地址的查询结果。
S1202、判断是否只返回一个IP地址。若只返回一个IP地址,则执行S1208;若不只返回一个IP地址,则执行S1203。
S1203、绑定应用程序(Application,APP)和TA,在本地IP库(如多条历史联网记录)中搜索。其中,绑定APP和TA是指在本地IP库中查找包括当前的第一应用和手机当前所在的TA的联网记录,同时还应该是包括当前待访问的域名(如第一域名)的联网记录。
S1204、判断返回的IP地址是否都不在本地IP库中。具体的,将返回的IP地址与S1203的查找结果中包括的IP地址进行匹配,例如,将返回的IP地址与表2中包括的IP地址进行匹配。若查找结果中包括至少一个返回的IP地址,则判定返回的IP地址不是都不在本地IP库中,则执行S1205;反之,则判定返回的IP地址都不在本地IP库中,则执行S1208。
S1205、判断返回的IP地址是否都在本地IP库中。具体的,若S1203的查找结果中包括至少一个返回的IP地址,则进一步判断S1203的查找结果中是否包括返回的所有IP地址。若包括返回的所有IP地址,则返回的IP地址都在本地IP库中,则执行S1207;反之,则返回的IP地址仅有部分在本地IP库中,则执行S1206。
S1206、库中已有IP优先。具体的,优先从返回的IP地址中,包括在本地IP库中的IP地址选择TCP建链的IP地址。
S1207、IP排序。具体的,分为两种情况:第一种,S1205判定出返回的IP地址都在本地IP库中,则将返回的所有IP地址按照S1203的查找结果中网络质量由高至低的顺序排序,例如,按照RTT由小至大的顺序排序。第二种,将返回的IP地址中,包括在本地IP库中的IP地址按照S1203的查找结果中网络质量由高至低的顺序排序。
S1208,上报IP地址。具体的,分为三种情况:第一种,S1202判定出只返回了一个IP地址,则将该一个IP地址上报给应用。第二种,S1204判定出返回的IP地址都不在本地IP库中,则将返回的排在第一位的IP地址上报给应用。第三种,S1207中在对IP地址进行排序后,则将质量排序在第一位的IP地址上报给应用。
S1209,评估网络质量。评估上报的IP地址的网络质量,例如,评估RTT。
S1210,判断RTT是否小于门限值。其中,门限值即为前文实施例中的第一预设时长。具体的,判断本次联网的RTT是否小于第一预设时长。若小于,则执行S1211。若不小于,则执行S1212。
S1211,更新IP库,新增IP或者刷新RTT。其中,若IP不是S1203的查找结果中包括的,则新增本次联网的联网记录,即新增IP。例如,可参见前文中新增IP9的举例。若IP是S1203的查找结果中包括的,则将本地IP库中相应的联网记录中的RTT更新为本次联网的RTT,即刷新RTT。例如,可参见前文中将RTT2更新为RTT0的举例。
S1212,更新IP库,删除IP。若IP是S1203的查找结果中包括的,则将本地IP库中相应的联网记录删除,即删除IP。例如,可参见前文删除IP2的举例。
本申请另一些实施例提供了一种终端,该终端的结构可以参考图4所示的终端400的结构。该终端可以包括:上述显示屏(如触摸屏)、存储器和一个或多个处理器。该显示屏、存储器和处理器耦合。
该存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令。当处理器执行计算机指令时,终端可执行上述方法实施例中手机执行的各个功能或者步骤。
例如,终端可以向域名系统DNS服务器发送DNS查询请求。DNS查询请求中包括第一域名,第一域名是终端中安装的第一应用的应用服务器的域名。DNS查询请求用于查询应用服务器的网际互连协议IP地址。终端接收DNS服务器返回的第一域名对应的一个或多个IP地址。在接收到第一域名对应的多个IP地址的情况下,终端根据终端的当前位置和终端保存的第一应用的一条或多条历史联网记录,从多个IP地址中选择出第一IP地址。其中,每条历史联网记录包括第一应用一次联网的位置信息、域名、IP地址以及网络质量信息。第一IP地址对应的历史联网记录中的网络质量信息所指示的网络质量,高于第二IP地址对应的历史联网记录中的网络质量信息所指示的网络质量。第二IP地址是多个IP地址中除第一IP地址之外的任一IP地址。应理解,若一条或多条历史联网记录中不存在某一IP地址对应的历史联网记录,则无法确定该某一IP地址的网络质量。第一IP地址对应的历史联网记录中的位置信息所指示的位置与当前位置相匹配,第二IP地址对应的历史联网记录中的位置信息所指示的位置与当前位置相匹配。也就是说,第一IP地址是在终端的当前位置网络质量较高的IP地址。其中,第一IP地址对应的历史联网记录是指包括当前位置的位置信息、第一应用的应用信息和第一域名的历史联网记录中,IP地址为该第一IP地址的历史联网记录。第二IP地址对应的历史联网记录是指包括当前位置的位置信息、第一应用的应用信息和第一域名的历史联网记录中,IP地址为第二IP地址的历史联网记录。终端向第一IP地址发送传输控制协议TCP建链请求;TCP建链请求用于终端与第一IP地址指向的应用服务器建立TCP连接。终端响应于建立TCP连接完成,与第一IP地址指向的应用服务器进行数据传输。从而可以提高建链和数据传输的效率,提升联网服务的质量。
本申请实施例还提供一种芯片系统,如图13所示,该芯片系统1300包括至少一个处理器1301和至少一个接口电路1302。处理器1301和接口电路1302可通过线路互联。例如,接口电路1302可用于从其它装置(例如终端的存储器)接收信号。又例如,接口电路1302可用于向其它装置(例如处理器1301)发送信号。示例性的,接口电路1302可读取存储器中存储的指令,并将该指令发送给处理器1301。当所述指令被处理器1301执行时,可使得终端执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在上述终端上运行时,使得该终端执行上述方法实施例中手机执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中手机执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种终端应用联网的方法,其特征在于,包括:
终端向域名系统DNS服务器发送DNS查询请求;所述DNS查询请求中包括第一域名,所述第一域名是所述终端中安装的第一应用的应用服务器的域名;所述DNS查询请求用于查询所述应用服务器的网际互连协议IP地址;
所述终端接收所述DNS服务器返回的所述第一域名对应的一个或多个IP地址;
在接收到所述DNS服务器返回的所述第一域名对应的多个IP地址的情况下,所述终端根据所述终端的当前位置和所述终端保存的所述第一应用的一条或多条历史联网记录,从所述多个IP地址中选择出第一IP地址;其中,每条历史联网记录包括所述第一应用一次联网的位置信息、域名、IP地址以及网络质量信息;所述第一IP地址对应的历史联网记录中的网络质量信息所指示的网络质量,高于第二IP地址对应的历史联网记录中的网络质量信息所指示的网络质量;所述第二IP地址是所述多个IP地址中除所述第一IP地址之外的任一IP地址;所述第一IP地址对应的历史联网记录中的位置信息所指示的位置与所述当前位置相匹配,所述第二IP地址对应的历史联网记录中的位置信息所指示的位置与所述当前位置相匹配;
所述终端向所述第一IP地址发送传输控制协议TCP建链请求;所述TCP建链请求用于所述终端与所述第一IP地址指向的应用服务器建立TCP连接;
所述终端响应于建立TCP连接完成,与所述第一IP地址指向的应用服务器进行数据传输;
所述终端完成所述数据传输后,若本次联网的网络质量信息指示的网络质量满足预设质量标准,所述终端将所述第一应用的一条或多条历史联网记录中,域名为所述第一域名、位置信息所指示的位置与所述当前位置相匹配、且IP地址为所述第一IP地址的历史联网记录的网络质量信息更新为本次联网的网络质量信息;若本次联网的网络质量信息指示的网络质量不满足所述预设质量标准,所述终端删除所述第一应用的一条或多条历史联网记录中,域名为所述第一域名、位置信息所指示的位置与所述当前位置相匹配、且IP地址为所述第一IP地址的历史联网记录。
2.根据权利要求1所述的方法,其特征在于,所述终端中存储有多个应用的多条历史联网记录;每条历史联网记录还包括应用信息;
其中,所述终端根据所述终端的当前位置和所述终端保存的所述第一应用的一条或多条历史联网记录,从所述多个IP地址中选择出第一IP地址,包括:
所述终端查找与所述第一应用、所述第一域名和所述当前位置匹配的历史联网记录;
在所述匹配的历史联网记录包括所述多个IP地址中至少一个IP地址的情况下,所述终端从所述多个IP地址中选择出所述第一IP地址。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在未查找到所述匹配的历史联网记录的情况下,所述终端向所述多个IP地址中排在第一位的IP地址发送TCP建链请求;或者,
在所述匹配的历史联网记录不包括所述多个IP地址中任一个IP地址的情况下,所述终端向所述多个IP地址中排在第一位的IP地址发送TCP建链请求。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述终端根据所述终端的当前位置和所述终端保存的所述第一应用的一条或多条历史联网记录,从所述多个IP地址中选择出第一IP地址包括:
在所述第一应用的一条或多条历史联网记录中包括所述多个IP地址中所有IP地址对应的历史联网记录的情况下,所述终端根据所述所有IP地址对应的历史联网记录中的网络质量信息,从所述所有IP地址中选择出网络质量最优的第一IP地址;
在所述第一应用的一条或多条历史联网记录中包括所述多个IP地址中部分IP地址对应的历史联网记录的情况下,所述终端根据所述部分IP地址对应的历史联网记录中的网络质量信息,从所述部分IP地址中选择出网络质量最优的第一IP地址。
5.根据权利要求2或3所述的方法,其特征在于,所述多条历史联网记录是使用频次高于第一预设频次的应用和/或访问频次高于第二预设频次的域名的联网记录;
所述方法还包括:
所述终端获取使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名;
所述终端筛选并存储包括所述使用频次高于第一预设频次的应用的应用信息和/或所述访问频次高于第二预设频次的域名的历史联网记录。
6.根据权利要求5所述的方法,其特征在于,所述终端获取使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名,包括:
所述终端获取服务器统计并发送来的使用频次高于第一预设频次的应用的应用信息和/或访问频次高于第二预设频次的域名。
7.根据权利要求2或3所述的方法,其特征在于,所述多条历史联网记录是网络质量满足所述预设质量标准的联网记录;
所述方法还包括:
所述终端筛选并存储网络质量满足所述预设质量标准的历史上网记录。
8.根据权利要求7所述的方法,其特征在于,所述网络质量信息包括往返时延,所述满足预设质量标准包括所述往返时延小于第一预设时长。
9.根据权利要求1-3中任一项所述的方法,其特征在于,所述若本次联网的网络质量信息指示的网络质量满足预设质量标准,所述终端将所述第一应用的一条或多条历史联网记录中,域名为所述第一域名、位置信息所指示的位置与所述当前位置相匹配、且IP地址为所述第一IP地址的历史联网记录的网络质量信息更新为本次联网的网络质量信息,包括:
若本次联网的网络质量信息指示的网络质量满足预设质量标准,则在所述第一应用的一条或多条历史联网记录中包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,所述终端将所述第一应用的一条或多条历史联网记录中,域名为所述第一域名、位置信息所指示的位置与所述当前位置相匹配、且IP地址为所述第一IP地址的历史联网记录的网络质量信息更新为本次联网的网络质量信息;
所述方法还包括:
若本次联网的网络质量信息指示的网络质量满足预设质量标准,在所述第一应用的一条或多条历史联网记录中不包括本次联网中建立TCP连接的IP地址对应的历史联网记录的情况下,所述终端存储本次联网的联网记录。
10.根据权利要求1-3中任一项所述的方法,其特征在于,所述位置信息包括跟踪区、经纬度范围或者城市范围。
11.一种终端,其特征在于,所述终端中存储有媒体文件,所述终端包括存储器和一个或多个处理器;所述存储器和所述处理器耦合;所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述终端执行如权利要求1-10中任一项所述的方法。
12.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令在终端上运行时,使得所述终端执行如权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110744787.2A CN113473455B (zh) | 2021-06-30 | 2021-06-30 | 一种终端应用联网的方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110744787.2A CN113473455B (zh) | 2021-06-30 | 2021-06-30 | 一种终端应用联网的方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113473455A CN113473455A (zh) | 2021-10-01 |
CN113473455B true CN113473455B (zh) | 2022-05-27 |
Family
ID=77877107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110744787.2A Active CN113473455B (zh) | 2021-06-30 | 2021-06-30 | 一种终端应用联网的方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113473455B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114827081B (zh) * | 2022-06-30 | 2022-11-11 | 荣耀终端有限公司 | 一种激活地参考地址的确定方法及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8291117B1 (en) * | 2012-02-15 | 2012-10-16 | Limelight Networks, Inc. | Scaled domain name service |
CN107040617A (zh) * | 2016-10-11 | 2017-08-11 | 阿里巴巴集团控股有限公司 | 数据处理的方法及装置 |
CN109510809A (zh) * | 2018-09-17 | 2019-03-22 | 华为技术有限公司 | 域名访问方法和装置 |
CN112751931A (zh) * | 2020-12-29 | 2021-05-04 | 中国工商银行股份有限公司 | 网络连接方法和装置、电子设备、及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104852937B (zh) * | 2014-02-14 | 2019-09-13 | 腾讯科技(北京)有限公司 | 用于移动应用的网络接入方法和装置 |
EP3422674A1 (en) * | 2017-06-26 | 2019-01-02 | Koninklijke KPN N.V. | A method of resolving a domain name by a dns server to a plurality of ip addresses based on location information of the user equipment |
CN108718347B (zh) * | 2018-05-18 | 2021-12-03 | 腾讯科技(深圳)有限公司 | 一种域名解析方法、系统、装置及存储介质 |
CN110177140B (zh) * | 2019-05-27 | 2022-06-07 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种用于客户端数据下载的ip调度系统及方法 |
-
2021
- 2021-06-30 CN CN202110744787.2A patent/CN113473455B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8291117B1 (en) * | 2012-02-15 | 2012-10-16 | Limelight Networks, Inc. | Scaled domain name service |
CN107040617A (zh) * | 2016-10-11 | 2017-08-11 | 阿里巴巴集团控股有限公司 | 数据处理的方法及装置 |
CN109510809A (zh) * | 2018-09-17 | 2019-03-22 | 华为技术有限公司 | 域名访问方法和装置 |
CN112751931A (zh) * | 2020-12-29 | 2021-05-04 | 中国工商银行股份有限公司 | 网络连接方法和装置、电子设备、及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113473455A (zh) | 2021-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8762461B2 (en) | Method, system and device for searching active peer in P2P streaming media system | |
CN111629075B (zh) | 一种数据下载方法和相关装置 | |
CN106708833B (zh) | 基于位置信息获取数据的方法和装置 | |
US9813890B2 (en) | Method and apparatus for receiving contents in mobile communication system | |
US9591524B2 (en) | Method and apparatus for transmitting data in network system, and data transmission system | |
WO2008104131A1 (fr) | Procédé, appareil et système de recherche et de téléchargement d'un fichier de téléphone mobile | |
CA2905889C (en) | Systems and methods for delivering multimedia information to mobile devices | |
CN111416745A (zh) | 一种网络切片确定方法和相关装置 | |
KR100713367B1 (ko) | 이동 통신 시스템의 멀티미디어 메시지 관리 방법 및 시스템 | |
CN110213315B (zh) | 一种路径确定方法和装置 | |
KR100918147B1 (ko) | 디지털 무선 통신 통화 처리 시스템 및 방법 | |
WO2013131472A1 (zh) | 消息处理方法、装置和系统 | |
CN104320417A (zh) | 移动终端和web终端之间互连及流传输和流媒体播放的方法 | |
CN103327189A (zh) | 一种上传照片、浏览照片以及删除照片的方法及装置 | |
CN104333501B (zh) | 一种联系人列表的显示方法及装置 | |
CN104219262A (zh) | 媒体资源分享系统与方法、服务器群、视频播放器 | |
US9544944B2 (en) | Adaptive, personal localized cache control server | |
CN102917326A (zh) | 双卡双通终端的通信方法、装置及双卡双通终端 | |
CN109002547B (zh) | 日志文件存储方法、移动终端及计算机可读存储介质 | |
CN113473455B (zh) | 一种终端应用联网的方法及终端 | |
CN105704106B (zh) | 一种可视化ivr实现方法及移动终端 | |
CN115208873A (zh) | 文件传输方法、装置及存储介质 | |
CN111278084A (zh) | 终端网络注册、选网参数下发方法及装置 | |
CN109309924B (zh) | 数据传输方法及装置 | |
CN106657281B (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 |