一种智能终端多网络连接环境下的动态路由方法及系统技术方案

技术编号:20657255 阅读:43 留言:0更新日期:2019-03-23 08:38
本发明专利技术适用于网络技术改进领域,提供了一种智能终端多网络连接环境下的动态路由方法,包括:S1、对应用场景的结构体进行定义描述;S2、定义路由策略里的单元组数据结构;S3、在终端初始时将路由策略及路由表进行添加;S4、将对应场景sIndex通知到路由进程并在路由策略里搜寻匹配场景sIndex的三元组,找到对应的rIndex,并根据优先级排序;S5、在传送IP包时,判断IP包经过内核是否匹配路由表,如匹配,则应用该路由传送IP包,如不匹配,则查找下一个路由表直至最后一个路由表。终端根据不同场景,对多网络接口做出不同的IP路由,以完成不同的业务需求。

A Dynamic Routing Method and System in Intelligent Terminal Multi-network Connection Environment

The invention is applicable to the field of network technology improvement, and provides a dynamic routing method in the multi-network connection environment of intelligent terminal, including: S1, defining and describing the structure of application scenario; S2, defining the unit group data structure in routing strategy; S3, adding routing strategy and routing table at the beginning of terminal; S4, notifying the corresponding scenario sIndex to the routing process. In routing strategy, we search the triple of matching scenario sIndex, find the corresponding rIndex, and rank according to the priority. S5, when transmitting IP packets, we judge whether the IP packets pass through the kernel matching the routing table. If matching, we apply the routing to transmit IP packets. If not matching, we search the next routing table until the last one. According to different scenarios, terminals make different IP routes for multi-network interfaces to fulfill different business requirements.

【技术实现步骤摘要】
一种智能终端多网络连接环境下的动态路由方法及系统
本专利技术属于网络技术改进领域,尤其涉及一种智能终端多网络连接环境下的动态路由方法。
技术介绍
智能移动终端已经越来越普及,如个人消费者使用的智能手机、平板,行业领域里使用的智能设备终端以及各种智能家居设备、机器人等物联网设备,都具备一种或多种网络通信接口,可以连接互联网。但目前的智能设备,即使有多种网络通信接口,如WiFi和移动蜂窝网络(3G/4G以及后面的5G数据)接口,同一时刻也只能打开其中一种。比如打开WiFi的时候,默认会关闭数据流量。要使用数据流量需要先关闭WiFi连接。即便同时打开了两种网络,也不具备根据不同场景路由到不同目标的功能。在LTE专网应用领域,支持专网的终端一般会同时支持公网,专网LTE和公网LTE两个网络理论上可以同时打开激活,但是因为操作系统默认的路由策略,App在使用的时候只能连接到其中的一个网络,即要么在专网环境下通信,要么连接到公网环境下。并不具备同时连接两个独立的网络,根据不同业务将数据包路由到不同网络目标地址的功能。这种情况将极大限制智能设备的业务功能。比如一种使用场景:智能设备需要通过WiFi连接到一个网络摄像头,同时需要将获取的视频流实时通过4G远程传输到其它平台进行直播或存储;再比如专网和公网同时激活存在下,有一些安全考虑的数据存放在专网,但这些数据可能需要加工后在公网传输,或者是专网和公网同时进行不同的数据业务。Linux服务器很早就有多网卡的支持,但是服务器一般是多网卡连接到同一网络环境,用来做负载均衡分担带宽。或者是做冗余备份,当一个网卡失效时启用另一个网卡。因此跟我们这里的不同网卡连接到不同的网络有差异。路由器虽然具备连接多个不同网络和路由的功能,但是因操作系统差异,其功能是将某一个网络接口来源的数据包,通过判断目标IP查找路由表路由到对应的端口出去,功能单一、路由表相对固定。而智能终端本身就是数据源,不同的数据和业务可能路由到不同的目标。此外,智能终端一般都具有移动性,这样接入的网络IP段随时会发生变化,因此需要根据不同的场景做出不同的路由策略,而不是简单查询固定的路由表就可以完成。专利H04L29/06(2006.01)I提到了利用设备通信资源提高带宽的方法,主要是不同的进程使用不同的网卡接口。但我们这里的目的不是提高带宽,而是根据不同的场景,IP包路由到不同的网络。而且专利H04L29/06(2006.01)I同一App或进程同一时刻只能访问一个网卡,而这里一个App会同时访问不同的网卡接口。
技术实现思路
本专利技术的目的在于提供一种智能终端多网络连接环境下的动态路由方法,终端根据不同的业务需求场景动态做出不同的路由设置。使得不同的数据包可以到达不同的网络目标,或者将某个网络的私有数据,经加工或未加工转发共享到另一网络,达到网络桥接的目的。当然,如果是为了到达同一目标有不同的网络路由路径,有些场景需要选择A路径,其它场景要选择B路径的问题。本专利技术是这样实现的,一种智能终端多网络连接环境下的动态路由方法,所述动态路由方法包括以下步骤:S1、对应用场景的结构体进行定义描述;S2、定义路由策略里的单元组数据结构;S3、在终端初始时将路由策略及路由表进行添加;S4、将对应场景sIndex通知到路由进程并在路由策略里搜寻匹配场景sIndex的三元组,找到对应的rIndex,并根据优先级排序;S5、在传送IP包时,判断IP包经过内核是否匹配路由表,如匹配,则应用该路由传送IP包,如不匹配,则查找下一个路由表直至最后一个路由表。本专利技术的进一步技术方案是:所述步骤S3中还包括以下步骤:S31、将新增的应用场景Sm插入应用场景列表中,对应用场景Sm的成员sIndex和sName赋值,其中需要保证sIndex在列表中唯一,成员isWorking默认为false;S32、对于新增的应用场景,App或者用户需要给出相应的路由信息,路由进程根据此信息,在kernel里新增一个或多个路由表,同时在路由策略里新增对应的三元组。本专利技术的进一步技术方案是:所述步骤S32中多增加多个路由表相应地增加多个三元组。本专利技术的进一步技术方案是:所述步骤S1中在构建应用场景的结构体描述中至少包括三个成员,sIndex为场景的唯一标识,对应各种场景索引,sName为对应场景的名称,isWorking指示是否当前时刻终端正工作于此种场景。本专利技术的进一步技术方案是:所述三元组的数据结构<sIndex,rIndex,pValue>,表示如果场景为sIndex,则需要查找路由表rIndex,其优先级为pValue。本专利技术的另一目的在于提供一种智能终端多网络连接环境下的动态路由系统,所述动态路由系统包括结构体构建模块,用于对应用场景的结构体进行定义描述;定义策略模块,用于定义路由策略里的多元组数据结构;添加模块,用于在终端初始时将路由策略及路由表进行添加;排序模块,用于将对应场景sIndex通知到路由进程并在路由策略里搜寻匹配场景sIndex的三元组,找到对应的rIndex,并根据优先级排序;匹配模块,用于在传送IP包时,判断IP包经过内核是否匹配路由表,如匹配,则应用该路由传送IP包,如不匹配,则查找下一个路由表直至最后一个路由表。本专利技术的进一步技术方案是:所述添加模块中还包括新增场景单元,用于将新增的应用场景Sm插入应用场景列表中,对应用场景Sm的成员sIndex和sName赋值,其中需要保证sIndex在列表中唯一,成员isWorking默认为false;路由表与策略增加单元,用于对于新增的应用场景,App或者用户需要给出相应的路由信息,路由进程根据此信息,在kernel里新增一个或多个路由表,同时在路由策略里新增对应的三元组。本专利技术的进一步技术方案是:所述路由表与策略增加单元中多增加多个路由表相应地增加多个三元组。本专利技术的进一步技术方案是:所述结构体构建模块中在构建应用场景的结构体描述中至少包括三个成员,sIndex为场景的唯一标识,对应各种场景索引,sName为对应场景的名称,isWorking指示是否当前时刻终端正工作于此种场景。本专利技术的进一步技术方案是:所述三元组的数据结构<sIndex,rIndex,pValue>,表示如果场景为sIndex,则需要查找路由表rIndex,其优先级为pValue。本专利技术的有益效果是:不同数据路由到不同目标单独处理,两个网卡同时独立工作,相当于完成两个终端的网络通信功能;数据从一个网卡路由转发到另一网卡出去,实现把某个网络的私有数据共享到另一网络。相当于实现路由器的功能;到达同一目标可以有多个路径,根据场景动态选择。比如网络链路1在某时间段比较拥塞,而链路2在同样时间段较好。而其它时间段反过来,网络链路1比网络链路2顺畅。那么就可以根据时间段做不同场景,做出不同的路由。网络拥塞只是其中一个方面,基于网络安全性等考虑也可以选择不同路由。附图说明图1是本专利技术实施例提供的智能终端多网络连接环境下的动态路由方法的流程图。图2是本专利技术实施例提供的App数据包路由架构框图。图3是本专利技术实施例提供的双网卡同时工作示意图。图4是本专利技术实施例提供的双网卡转发工作示意图。图5是本专利技术实施例提供的本文档来自技高网
...

【技术保护点】
1.一种智能终端多网络连接环境下的动态路由方法,其特征在于,所述动态路由方法包括以下步骤:S1、对应用场景的结构体进行定义描述;S2、定义路由策略里的单元组数据结构;S3、在终端初始时将路由策略及路由表进行添加;S4、将对应场景sIndex通知到路由进程并在路由策略里搜寻匹配场景sIndex的三元组,找到对应的rIndex,并根据优先级排序;S5、在传送IP包时,判断IP包经过内核是否匹配路由表,如匹配,则应用该路由传送IP包,如不匹配,则查找下一个路由表直至最后一个路由表。

【技术特征摘要】
1.一种智能终端多网络连接环境下的动态路由方法,其特征在于,所述动态路由方法包括以下步骤:S1、对应用场景的结构体进行定义描述;S2、定义路由策略里的单元组数据结构;S3、在终端初始时将路由策略及路由表进行添加;S4、将对应场景sIndex通知到路由进程并在路由策略里搜寻匹配场景sIndex的三元组,找到对应的rIndex,并根据优先级排序;S5、在传送IP包时,判断IP包经过内核是否匹配路由表,如匹配,则应用该路由传送IP包,如不匹配,则查找下一个路由表直至最后一个路由表。2.根据权利要求1所述的智能终端多网络连接环境下的动态路由方法,其特征在于,所述步骤S3中还包括以下步骤:S31、将新增的应用场景Sm插入应用场景列表中,对应用场景Sm的成员sIndex和sName赋值,其中需要保证sIndex在列表中唯一,成员isWorking默认为false;S32、对于新增的应用场景,App或者用户需要给出相应的路由信息,路由进程根据此信息,在kernel里新增一个或多个路由表,同时在路由策略里新增对应的三元组。3.根据权利要求2所述的智能终端多网络连接环境下的动态路由方法,其特征在于,所述步骤S32中多增加多个路由表相应地增加多个三元组。4.根据权利要求3所述的智能终端多网络连接环境下的动态路由方法,其特征在于,所述步骤S1中在构建应用场景的结构体描述中至少包括三个成员,sIndex为场景的唯一标识,对应各种场景索引,sName为对应场景的名称,isWorking指示是否当前时刻终端正工作于此种场景。5.根据权利要求4所述的智能终端多网络连接环境下的动态路由方法,其特征在于,所述三元组的数据结构<sIndex,rIndex,pValue>,表示如果场景为sIndex,则需要查找路由表rIndex,其优先级为pValue。6.一种智能终端多网络连接环境下的动态...

【专利技术属性】
技术研发人员:林志强
申请(专利权)人:深圳市鼎泰富科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1