【发明授权】报文发送方法及相关装置_OPPO广东移动通信有限公司_201910044779.X 

申请/专利权人:OPPO广东移动通信有限公司

申请日:2019-01-17

发明/设计人:黄园

公开(公告)日:2021-01-12

代理机构:广州三环专利商标代理有限公司

公开(公告)号:CN109889499B

代理人:郝传鑫;熊永强

主分类号:H04L29/06(20060101)

地址:523860 广东省东莞市长安镇乌沙海滨路18号

分类号:H04L29/06(20060101);H04L29/12(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.01.12#授权;2019.07.09#实质审查的生效;2019.06.14#公开

摘要:本申请实施例公开了一种报文发送方法及相关装置,方法包括:解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;根据所述网络域名确定已连接的多条通信链路中的目标通信链路;通过所述目标通信链路向目标DNS服务器发送所述DNS报文。本申请实施例有利于提升在电子设备连接多条通信链路的情况下,DNS报文解析的成功率。

主权项:1.一种报文发送方法,其特征在于,应用于电子设备,所述方法包括:解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;基于预存储的网络域名与通信链路的对应关系,根据所述网络域名确定已连接的多条通信链路中的目标通信链路,所述多条通信链路包括蜂窝数据网络、Wi-Fi、蓝牙通信、LORA通信和智能家具设备的专用热点中的至少两个,至少两个不同的通信链路所连接的DNS服务器不同;通过所述目标通信链路向目标DNS服务器发送所述DNS报文。

全文数据:报文发送方法及相关装置技术领域本申请涉及电子设备技术领域,具体涉及一种报文发送方法及相关装置。背景技术随着移动通信技术的发展,用户对数据通信的需求越来越大,目前市面上的电子设备例如,智能手机等在进行数据传输时,用户一般通过选取蜂窝移动网络通信或者Wi-Fi通信等方式发送数据,电子设备需要和相同区域内的其他设备竞争无线链路资源,难以满足用户的上网需求。目前,电子设备通过域名访问所连接路器由的登入页面时,当域名为一些自定义的名称时,可能会因为DNS报文被分配到蜂窝移动网络,造成DNS报文解析失败,导致电子设备无法访问相应页面。发明内容本申请实施例提供了一种报文发送方法及相关装置,以期提升在电子设备连接多条通信链路的情况下,DNS报文解析的成功率。第一方面,本申请实施例提供一种报文发送方法,应用于电子设备,所述方法包括:解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;根据所述网络域名确定已连接的多条通信链路中的目标通信链路;通过所述目标通信链路向目标DNS服务器发送所述DNS报文。第二方面,本申请实施例提供一种报文发送装置,应用于电子设备,所述报文发送装置包括处理单元和通信单元,其中,所述处理单元,用于解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;以及用于根据所述网络域名确定已连接的多条通信链路中的目标通信链路;以及用于通过所述目标通信链路和所述通信单元向目标DNS服务器发送所述DNS报文。第三方面,本申请实施例提供一种电子设备,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面任一方法中的步骤的指令。第四方面,本申请实施例提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。第五方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面任一方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。可以看出,本申请实施例中,电子设备解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名,并根据所述网络域名确定已连接的多条通信链路中的目标通信链路,最后,通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可见,电子设备在启动多通信链路的情况下,通过解析DNS报文获取待访问的网络域名确定发送该DNS报文的目标通信链路,有利于提升DNS报文发送的合理性,避免将一些自定义的网络域名对应的DNS报文通过蜂窝移动网络传输,提升DNS服务器解析DNS报文的成功率,以及有效提升报文解析效率。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的一种电子设备所处无线通信系统的示例系统架构图;图2是本申请实施例提供的一种报文发送方法的流程示意图;图3是本申请实施例提供的另一种报文发送方法的流程示意图;图4是本申请实施例提供的另一种报文发送方法的流程示意图;图5是本申请实施例提供的一种电子设备的结构示意图;图6是本申请实施例提供的一种报文发送装置的功能单元组成框图。具体实施方式为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。本申请实施例所涉及到的电子设备可以是具备数据传输能力的电子设备,该电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备UserEquipment,UE,移动台MobileStation,MS,终端设备terminaldevice等等。下面对本申请实施例进行详细介绍。链路聚合,是指使设备可以同时使用两个或者两个以上的网口同时进行上网,比如在手机上通过链路聚合的同时使用Wi-Fi和数据网络来进行网络访问。android网络系统,当Wi-Fi被使能的时候,会导致数据网络不可使用ConnectivityService网络评分机制导致数据网络断开,而链路聚合至少需要两个或两个以上的可用网络,所以服务等级协议Service-LevelAgreement,缩写为SLA的前提条件就是要使Wi-Fi和数据网络共存。如图1所示,目前电子设备101可以连接数据网络103,数据网为用于传输数据业务的通信网;Wi-Fi102,Wi-Fi是一种允许电子设备连接到一个无线局域网的技术;通常使用2.4GUHF或5GSHFISM射频频段;以及蓝牙通信104,一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离网络共享以及数据交换使用2.4—2.485GHz的ISM波段的UHF无线电波;还可以是LORA通信模块,一种基于扩频技术的远距离无线传输技术等。请参阅图2,图2是本申请实施例提供了一种报文发送方法的流程示意图,应用于如图1中所述的电子设备,如图所示,本报文发送方法包括:S201,电子设备解析域名系统DomainNameSystem,DNS报文,获取所述DNS报文中待访问网络的网络域名。其中,DNS系统为万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串,所述DNS报文用于相应的DNS服务器根据其中的域名地址确定对应的IP地址。S202,所述电子设备根据所述网络域名确定已连接的多条通信链路中的目标通信链路。其中,电子设备处于上述图1所述的链路聚合状态,所述已连接的多条通信链路可以包括蜂窝数据网络、Wi-Fi、蓝牙通信、LORA通信,以及智能家具设备的专用热点例如各种智能家居专属配置的盒子等等中的任意两个或多个,在此不做限定。其中,所述电子设备根据所述网络域名确定已连接的多条通信链路中的目标通信链路的具体实现方式可以是多种多样的,例如可以是电子设备预存储有网络域名与通信链路的对应关系,根据网络域名查询该对应关系确定出目标通信链路,或者可以根据网络域名分类,分为第一类型和第二类型,其中,第一类型可以为一些服务商自定义的网络域名,即需要通过私有DNS服务器才能解析成功的网络域名,第二类型为可以通过公共或者本地DNS服务器解析的网络域名,例如百度、环球信息网等网络的网络域名等,然后根据不同的类型选取不同的目标通信链路,在此不做限定。S203,所述电子通过所述目标通信链路向目标DNS服务器发送所述DNS报文。其中,在链路聚合的情况下,电子设备发送的所有数据包会通过分流机制分流给不同的通信链路进行传输,但是当数据包为DNS报文,且DNS报文中的网络域名为上述第一类型时,如果在分流传输的机制下,将DNS报文通过蜂窝数据网络传输给本地或者公共DNS服务器,那么会由于DNS服务器中保存的域名和与之相对应的IP地址的表中没有该DNS报文中的网络域名,导致出现解析失败的情况,因此,通过网络域名选取目标通信链路向目标DNS服务器发送所述DNS报文,以使目标DNS服务器成功解析该DNS报文,获取相应的IP地址登录路由器登入界面。可以看出,本申请实施例中,电子设备解析DNS报文,获取所述DNS报文中待访问网络的网络域名,并根据所述网络域名确定已连接的多条通信链路中的目标通信链路,最后,通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可见,电子设备在启动多通信链路的情况下,通过解析DNS报文获取待访问的网络域名确定发送该DNS报文的目标通信链路,有利于提升DNS报文发送的合理性,避免将一些自定义的网络域名对应的DNS报文通过蜂窝移动网络传输,提升DNS服务器解析DNS报文的成功率,以及有效提升报文解析效率。在一个可能的示例中,所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路,包括:通过所述网络域名查询黑名单;当检测到所述黑名单中包括所述网络域名时,确定所述已连接的多条通信链路中属于第一类通信链路的多条第一参考通信链路;在所述多条第一参考通信链路中确定所述目标通信链路。其中,所述黑名单可以是技术开发人员在电子设备出厂前预设置在电子设备中的,也可以是电子设备根据DNS服务器反馈的解析成功或者失败的消息设置的,在此不做限定,该黑名单中包括属于上述第一类型的多个网络域名。其中,多条通信链路中包括第一类型通信链路和第二类通信链路,电子设备中预设置有每个通信链路对应的类型,其中,黑名单中包括的网络域名,均与所述第一类通信链路对应,所述第一类通信链路例如可以是Wi-Fi、智能家具设备的专用热点例如各种智能家居专属配置的盒子等等。其中,在所述多条第一参考通信链路中确定所述目标通信链路的具体实现方式可以是多种多样的,例如可以是根据网络域名的名称字段确定与之对应的目标通信链路,或者可以是当已连接的多条第一参考通信链路中包括Wi-Fi时,首选Wi-Fi作为目标通信链路等,在此不做限定。可见,本示例中,电子设备通过网络域名查询黑名单,当黑名单中包括所述网络域名时,确定与此种情况对应的第一类通信链路,保障黑名单中的一些自定义的网络域名在相应DNS服务器成功解析,直接通过查询黑名单的方法有利于提升报文发送的速度和便捷性。在这个可能的示例中,所述在所述多条第一参考通信链路中确定所述目标通信链路,包括:获取所述多条第一参考通信链路的多个链路标识;确定所述多个链路标识中与所述网络域名匹配的目标链路标识;确定所述目标通信链路为与所述目标链路标识对应的通信链路。其中,每条第一参考通信链路可以包括一个链路标识,所述链路标识可以是该第一参考通信链路的链路名称,例如,蜂窝数据通信的链路标识可以是LTE等,智能家具设备的专用热点例如各种智能家居专属配置的盒子等的链路标识可以是各个智能家具设备对应的厂商的名称等,在此不做限定。其中,所述确定所述多个链路标识中与所述网络域名匹配的目标链路标识的具体实现方式可以是确定链路标识与网络域名中的关键字或者关键字母的匹配度,当匹配度大于预设匹配度时,确定目标链路标识,例如网络域名mi可以对应小米盒子的专用热点的链路标识,或者可以是当多个链路标识中没有与网络域名匹配度大于预设匹配度的链路标识时,选取预设的通信链路的链路标识为目标链路标识,例如Wi-Fi对应的链路标识,在此不做限定。可见,本示例中,电子设备将与网络域名匹配的链路标识对应的通信链路确定为目标通信链路,实现专网专用,有利于提升域名转换以及登录路由器的成功率,以及通信链路分流的合理性。在一个可能的示例中,所述通过所述网络域名查询黑名单之后,所述方法还包括:当检测到所述黑名单中不包括所述网络域名时,确定所述已连接的多条通信链路中属于第二类通信链路的多条第二参考通信链路;在所述多条第二参考通信链路中确定所述目标通信链路。其中,已连接的多条通信链路中可以包括既属于第一类通信链路,也属于第二类通信链路的通信链路,例如,Wi-Fi等,不在所述黑名单中的网络域名对应上述的第二类型,可以通过蜂窝移动等第二类型通信链路进行传输,不会出现解析失败的情况。其中,在所述多条第二参考通信链路中确定所述目标通信链路的具体实现方式可以是多种多样的,可以是根据每条第二参考通信链路对应的信道的信道质量参数确定目标通信链路,也可以是根据每条第二参考通信链路的数据传输速率确定目标通信链路,在此不做限定。可见,本示例中,电子设备在检测到黑名单中不包括网络域名时,在属于第二类通信链路的多条第二参考通信链路中确定目标通信链路,有利于提升DNS报文发送的合理性。在这个可能的示例中,所述在所述多条第二参考通信链路中确定所述目标通信链路,包括:确定所述多条第二参考通信链路中每个第二参考通信链路所使用的信道;确定所述每个第二参考通信链路所使用的信道的信道质量参数;根据所述信道质量参数确定所述目标通信链路。其中,根据信道可以计算信道质量参数,信道质量参数包括信道自身的容量、网速、网络延迟等,对于网速的计算,读两个接口的网络流量,把上一次记录的流量这次记录的流量做一个差,得到这一秒钟网口上的流量的多少,即网速,而网络延迟是根据数据在信道中的往返时间统计算法得出。其中,根据每个所述第二参考通信链路的信道质量参数确定所述目标通信链路的具体实现方式可以是根据信道质量参数对多个第二参考通信链路进行排序,选取优先级高的为目标通信链路,或者可以是选取信道质量参数大于预设质量阈值的任一个第二参考通信链路为目标通信链路,在此不做唯一限定。可见,本示例中,电子设备根据多个第二参考通信链路的信道质量参数选取目标无线通信链路,在保证了DNS报文解析成功的基础上提升了数据传输速度,避免网络延迟。在一个可能的示例中,所述通过所述目标通信链路向目标DNS服务器发送所述DNS报文之后,所述方法还包括:当接收来自所述目标DNS服务器的所述DNS报文解析失败的消息时,将所述DNS报文对应的所述网络域名添加至所述黑名单。其中,目标DNS服务器可以向电子设备发送解析成功或者解析失败的消息,该消息可以是一个消息标识,例如1代表成功,0表示失败等,在此不做限定。其中,当DNS报文中的网络域名不在黑名单中时,有两种可能,第一种可能是网络域名属于第二类,第二种可能是网络域名属于第一类,但是漏加入到黑名单中,这时会通过目标通信链路,例如,蜂窝数据通信链路发送到本地或者公共DNS服务器解析,那么当收到解析失败的消息时,表明该网络域名属于没有加入到黑名单中的第一类,因此,将该网络域名添加至黑名单。可见,本示例中,电子设备在接收到目标DNS服务器发送的DNS报文解析失败的消息时,将网络域名加入黑名单,有效避免后续该网络域名解释失败的情况,提升黑名单的准确性。在一个可能的示例中,所述方法还包括:将所述DNS报文从Linux操作系统中的应用层通过传输层传输到网络层;在所述网络层中,当所述DNS报文传输到防火墙架构中的本地数据包发送OUTPUT处的钩子点Hook时,通过预设处理函数执行所述解析DNS报文,获取所述DNS报文中待访问网络的网络域名,以及所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路的操作。其中,所述预处理函数中即为该报文发送方法对应的函数。其中,电子设备发包DNS报文的数据包的处理过程为:数据包从Linux操作系统应用层被发送到传输层TCPUDP,之后经过路由判断发送到网络层IP层中防火墙架构中的数据包发送OUTPUT处的钩子点,之后到发往公网的数据包POSTROUTING的处理点,经由驱动发送到通信链路中,因此可以看出,DNS报文必然会经过OUTPUT处的钩子点,因此将预设处理函数设置在此处。可见,本示例中,电子设备将执行解析DNS报文,获取所述DNS报文中待访问网络的网络域名,以及根据所述网络域名确定已连接的多条通信链路中的目标通信链路的操作设置在防火墙架构中的本地数据包发送OUTPUT处的钩子点Hook,有利于提升DNS报文发送前的有效处理和确定通信链路,提升报文发送的有效性。与上述图2所示的实施例一致的,请参阅图3,图3是本申请实施例提供的一种报文发送方法的流程示意图,应用于如图1中所述的电子设备,如图所示,本报文发送方法包括:S301,电子设备解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名。S302,所述电子设备通过所述网络域名查询黑名单。S303,所述电子设备当检测到所述黑名单中包括所述网络域名时,确定已连接的多条通信链路中属于第一类通信链路的多条第一参考通信链路。S304,所述电子设备获取所述多条第一参考通信链路的多个链路标识。S305,所述电子设备确定所述多个链路标识中与所述网络域名匹配的目标链路标识。S306,所述电子设备确定目标通信链路为与所述目标链路标识对应的通信链路。S307,所述电子设备通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可以看出,本申请实施例中,电子设备解析DNS报文,获取所述DNS报文中待访问网络的网络域名,并根据所述网络域名确定已连接的多条通信链路中的目标通信链路,最后,通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可见,电子设备在启动多通信链路的情况下,通过解析DNS报文获取待访问的网络域名确定发送该DNS报文的目标通信链路,有利于提升DNS报文发送的合理性,避免将一些自定义的网络域名对应的DNS报文通过蜂窝移动网络传输,提升DNS服务器解析DNS报文的成功率,以及有效提升报文解析效率。此外,电子设备通过网络域名查询黑名单,当黑名单中包括所述网络域名时,确定与此种情况对应的第一类通信链路,保障黑名单中的一些自定义的网络域名在相应DNS服务器成功解析,直接通过查询黑名单的方法有利于提升报文发送的速度和便捷性。此外,电子设备将与网络域名匹配的链路标识对应的通信链路确定为目标通信链路,实现专网专用,有利于提升域名转换以及登录路由器的成功率,以及通信链路分流的合理性。与上述图2所示的实施例一致的,请参阅图4,图4是本申请实施例提供的一种报文发送方法的流程示意图,应用于如图1中所述的电子设备,所述电子设备建立有多个无线通信链路,如图所示,本报文发送方法包括:S401,电子设备解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名。S402,所述电子设备通过所述网络域名查询黑名单。S403,所述电子设备当检测到所述黑名单中不包括所述网络域名时,确定已连接的多条通信链路中属于第二类通信链路的多条第二参考通信链路。S404,所述电子设备确定所述多条第二参考通信链路中每个第二参考通信链路所使用的信道。S405,所述电子设备确定所述每个第二参考通信链路所使用的信道的信道质量参数。S406,所述电子设备根据所述信道质量参数确定目标通信链路。S407,所述电子设备通过所述目标通信链路向目标DNS服务器发送所述DNS报文。S408,所述电子设备当接收来自所述目标DNS服务器的所述DNS报文解析失败的消息时,将所述DNS报文对应的所述网络域名添加至所述黑名单。可以看出,本申请实施例中,电子设备解析DNS报文,获取所述DNS报文中待访问网络的网络域名,并根据所述网络域名确定已连接的多条通信链路中的目标通信链路,最后,通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可见,电子设备在启动多通信链路的情况下,通过解析DNS报文获取待访问的网络域名确定发送该DNS报文的目标通信链路,有利于提升DNS报文发送的合理性,避免将一些自定义的网络域名对应的DNS报文通过蜂窝移动网络传输,提升DNS服务器解析DNS报文的成功率,以及有效提升报文解析效率。此外,电子设备在接收到目标DNS服务器发送的DNS报文解析失败的消息时,将网络域名加入黑名单,有效避免后续该网络域名解释失败的情况,提升黑名单的准确性。此外,电子设备根据多个第二参考通信链路的信道质量参数选取目标无线通信链路,在保证了DNS报文解析成功的基础上提升了数据传输速度,避免网络延迟。此外,电子设备在检测到黑名单中不包括网络域名时,在属于第二类通信链路的多条第二参考通信链路中确定目标通信链路,有利于提升DNS报文发送的合理性。与上述图2、图3、图4所示的实施例一致的,请参阅图5,图5是本申请实施例提供的一种电子设备500的结构示意图,如图所示,所述电子设备500包括应用处理器510、存储器520、通信接口530以及一个或多个程序521,其中,所述一个或多个程序521被存储在上述存储器520中,并且被配置由上述应用处理器510执行,所述一个或多个程序521包括用于执行以下步骤的指令:解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;根据所述网络域名确定已连接的多条通信链路中的目标通信链路;通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可以看出,本申请实施例中,电子设备解析DNS报文,获取所述DNS报文中待访问网络的网络域名,并根据所述网络域名确定已连接的多条通信链路中的目标通信链路,最后,通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可见,电子设备在启动多通信链路的情况下,通过解析DNS报文获取待访问的网络域名确定发送该DNS报文的目标通信链路,有利于提升DNS报文发送的合理性,避免将一些自定义的网络域名对应的DNS报文通过蜂窝移动网络传输,提升DNS服务器解析DNS报文的成功率,以及有效提升报文解析效率。在一个可能的示例中,在所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路方面,所述程序521中的指令具体用于执行以下操作:通过所述网络域名查询黑名单;以及用于当检测到所述黑名单中包括所述网络域名时,确定所述已连接的多条通信链路中属于第一类通信链路的多条第一参考通信链路;以及用于在所述多条第一参考通信链路中确定所述目标通信链路。在这个可能的示例中,在所述多条第一参考通信链路中确定所述目标通信链路方面,所述程序521中的指令具体用于执行以下操作:获取所述多条第一参考通信链路的多个链路标识;以及用于确定所述多个链路标识中与所述网络域名匹配的目标链路标识;以及用于确定所述目标通信链路为与所述目标链路标识对应的通信链路。在一个可能的示例中,所述一个或多个程序521还包括用于执行以下步骤的指令:所述通过所述网络域名查询黑名单之后,当检测到所述黑名单中不包括所述网络域名时,确定所述已连接的多条通信链路中属于第二类通信链路的多条第二参考通信链路;以及在所述多条第二参考通信链路中确定所述目标通信链路。在这个可能的示例中,在所述多条第二参考通信链路中确定所述目标通信链路方面,所述程序521中的指令具体用于执行以下操作:确定所述多条第二参考通信链路中每个第二参考通信链路所使用的信道;以及用于确定所述每个第二参考通信链路所使用的信道的信道质量参数;以及用于根据所述信道质量参数确定所述目标通信链路。在一个可能的示例中,所述一个或多个程序521还包括用于执行以下步骤的指令:所述通过所述目标通信链路向目标DNS服务器发送所述DNS报文之后,当接收来自所述目标DNS服务器的所述DNS报文解析失败的消息时,将所述DNS报文对应的所述网络域名添加至所述黑名单。在一个可能的示例中,所述一个或多个程序521还包括用于执行以下步骤的指令:将所述DNS报文从Linux操作系统中的应用层通过传输层传输到网络层;以及用于在所述网络层中,当所述DNS报文传输到防火墙架构中的本地数据包发送OUTPUT处的钩子点Hook时,通过预设处理函数执行所述解析DNS报文,获取所述DNS报文中待访问网络的网络域名,以及所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路的操作。上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。图6是本申请实施例中所涉及的报文发送装置600的功能单元组成框图。该报文发送装置600应用于电子设备,该报文发送装置600包括处理单元601和通信单元602,其中:所述处理单元601,用于解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;以及用于根据所述网络域名确定已连接的多条通信链路中的目标通信链路;以及用于通过所述目标通信链路和所述通信单元602向目标DNS服务器发送所述DNS报文。其中,所述报文发送装置600还可以包括存储单元603,用于存储电子设备的程序代码和数据。所述处理单元601可以是处理器,所述通信单元602可以是触控显示屏或者收发器,存储单元603可以是存储器。可以看出,本申请实施例中,电子设备解析DNS报文,获取所述DNS报文中待访问网络的网络域名,并根据所述网络域名确定已连接的多条通信链路中的目标通信链路,最后,通过所述目标通信链路向目标DNS服务器发送所述DNS报文。可见,电子设备在启动多通信链路的情况下,通过解析DNS报文获取待访问的网络域名确定发送该DNS报文的目标通信链路,有利于提升DNS报文发送的合理性,避免将一些自定义的网络域名对应的DNS报文通过蜂窝移动网络传输,提升DNS服务器解析DNS报文的成功率,以及有效提升报文解析效率。在一个可能的示例中,在所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路方面,所述处理单元601具体用于:通过所述网络域名查询黑名单;以及用于当检测到所述黑名单中包括所述网络域名时,确定所述已连接的多条通信链路中属于第一类通信链路的多条第一参考通信链路;以及用于在所述多条第一参考通信链路中确定所述目标通信链路。在这个可能的示例中,在所述多条第一参考通信链路中确定所述目标通信链路方面,所述处理单元601具体用于:获取所述多条第一参考通信链路的多个链路标识;以及用于确定所述多个链路标识中与所述网络域名匹配的目标链路标识;以及用于确定所述目标通信链路为与所述目标链路标识对应的通信链路。在一个可能的示例中,所述处理单元601在所述通过所述网络域名查询黑名单之后,还用于:当检测到所述黑名单中不包括所述网络域名时,确定所述已连接的多条通信链路中属于第二类通信链路的多条第二参考通信链路;以及在所述多条第二参考通信链路中确定所述目标通信链路。在这个可能的示例中,在所述多条第二参考通信链路中确定所述目标通信链路方面,所述处理单元601具体用于:确定所述多条第二参考通信链路中每个第二参考通信链路所使用的信道;以及用于确定所述每个第二参考通信链路所使用的信道的信道质量参数;以及用于根据所述信道质量参数确定所述目标通信链路。在一个可能的示例中,所述处理单元601在所述通过所述目标通信链路向目标DNS服务器发送所述DNS报文之后,还用于:当通过所述通信单元602接收来自所述目标DNS服务器的所述DNS报文解析失败的消息时,将所述DNS报文对应的所述网络域名添加至所述黑名单。在一个可能的示例中,所述处理单元601还用于:将所述DNS报文从Linux操作系统中的应用层通过传输层传输到网络层;以及用于在所述网络层中,当所述DNS报文传输到防火墙架构中的本地数据包发送OUTPUT处的钩子点Hook时,通过预设处理函数执行所述解析DNS报文,获取所述DNS报文中待访问网络的网络域名,以及所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路的操作。本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备可为个人计算机、服务器或者网络设备等执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器ROM,Read-OnlyMemory、随机存取存储器RAM,RandomAccessMemory、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器英文:Read-OnlyMemory,简称:ROM、随机存取器英文:RandomAccessMemory,简称:RAM、磁盘或光盘等。以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

权利要求:1.一种报文发送方法,其特征在于,应用于电子设备,所述方法包括:解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;根据所述网络域名确定已连接的多条通信链路中的目标通信链路;通过所述目标通信链路向目标DNS服务器发送所述DNS报文。2.根据权利要求1所述的方法,其特征在于,所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路,包括:通过所述网络域名查询黑名单;当检测到所述黑名单中包括所述网络域名时,确定所述已连接的多条通信链路中属于第一类通信链路的多条第一参考通信链路;在所述多条第一参考通信链路中确定所述目标通信链路。3.根据权利要求2所述的方法,其特征在于,所述在所述多条第一参考通信链路中确定所述目标通信链路,包括:获取所述多条第一参考通信链路的多个链路标识;确定所述多个链路标识中与所述网络域名匹配的目标链路标识;确定所述目标通信链路为与所述目标链路标识对应的通信链路。4.根据权利要求2所述的方法,其特征在于,所述通过所述网络域名查询黑名单之后,所述方法还包括:当检测到所述黑名单中不包括所述网络域名时,确定所述已连接的多条通信链路中属于第二类通信链路的多条第二参考通信链路;在所述多条第二参考通信链路中确定所述目标通信链路。5.根据权利要求4所述的方法,其特征在于,所述在所述多条第二参考通信链路中确定所述目标通信链路,包括:确定所述多条第二参考通信链路中每个第二参考通信链路所使用的信道;确定所述每个第二参考通信链路所使用的信道的信道质量参数;根据所述信道质量参数确定所述目标通信链路。6.根据权利要求4或5所述的方法,其特征在于,所述通过所述目标通信链路向目标DNS服务器发送所述DNS报文之后,所述方法还包括:当接收来自所述目标DNS服务器的所述DNS报文解析失败的消息时,将所述DNS报文对应的所述网络域名添加至所述黑名单。7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:将所述DNS报文从操作系统中的应用层通过传输层传输到网络层;在所述网络层中,当所述DNS报文传输到防火墙架构中的本地数据包发送OUTPUT处的钩子点Hook时,通过预设处理函数执行所述解析DNS报文,获取所述DNS报文中待访问网络的网络域名,以及所述根据所述网络域名确定已连接的多条通信链路中的目标通信链路的操作。8.一种报文发送装置,其特征在于,应用于电子设备,所述报文发送装置包括处理单元和通信单元,其中,所述处理单元,用于解析域名系统DNS报文,获取所述DNS报文中待访问网络的网络域名;以及用于根据所述网络域名确定已连接的多条通信链路中的目标通信链路;以及用于通过所述目标通信链路和所述通信单元向目标DNS服务器发送所述DNS报文。9.一种电子设备,其特征在于,包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-7任一项所述的方法。

百度查询: OPPO广东移动通信有限公司 报文发送方法及相关装置