一种路由器动态接入方法

文档序号:9491786阅读:512来源:国知局
一种路由器动态接入方法
【技术领域】
[0001]本发明涉及路由器接入的技术领域,具体涉及一种路由器动态接入方法。
【背景技术】
[0002]终端通过DHCP协议获取地址接入路由器后,除非路由器本身出现故障,否则终端将会一直通过该路由器进行通信。而路由器本身的负荷超载或接入网络出现问题是不可预料的,所以该场景下终端只能通过用户手动的方式再去选择新的路由器接入,这也将降低用户的接入体验。
[0003]中国发明专利申请201480001400.2公开了一种《无线接入网配置自动同步方法及装置》,DHCP服务器利用SSID (Service Set Identifier,服务集标识)对应的配置信息实现DHCP客户端配置信息的配置。上述专利申请实现了一种基于统一 SSID配置信息实现WIFI共享的自动接入方式,但是其并未考虑到每个接入路由器的实时接入代价,用户在接入路由器时,有可能其所接入的路由器已经存在超负荷运行的状态,接入后不但会导致其自身的上网体验下降,也会使得其他接入相同路由器的用户上网体验更差。

【发明内容】

[0004]为了解决上述技术问题,本发明提供了一种路由器动态接入方法,解决了路由器本身网络负载出现问题时影响客户端接入的问题,能够支持用户在通信过程中动态选择路由器进行接入。
[0005]为了达到上述目的,本发明的技术方案是:一种路由器动态接入方法,其步骤如下:
步骤1:各个路由器利用网络状况监测统计模块监测统计本身网络情况;
步骤2:消息交互模块周期性的交互路由器的网络通信质量,建立并维护路由器代价表;
步骤3:网络状况监测统计监测到路由器出现拥塞时,消息发送模块向终端发送封装消息;
步骤4:终端接收封装消息,解析通信代价更优的路由器信息,向通信代价更优的路由器发起连接请求。
[0006]所述路由器内设有网络状况监测统计模块、消息交互模块和消息发送模块,网络状况监测统计模块、消息交互模块和消息发送模块以LKM的形式动态加载在路由器操作系统中。
[0007]所述网络状况监测统计模块用于监测统计路由器的网络负载情况;网络状况监测统计模块包括监测统计单元,监测统计单元用于实时的监测路由器本身的网络状况并进行统计维护;消息交互模块用于路由器间周期性的交互本地的网络通信质量;消息交互模块包括消息交互单元,消息交互单元用于路由器间周期性的交互本地的网络通信质量;消息发送模块用于将路由器自身的网络通信质量和通信代价最优的路由器发送至终端。
[0008]所述路由器代价表是终端接入每个路由器的通信代价,包含路由器的硬件利用率、丢包率、终端接入数量、吞吐量、时延、抖动和是否有加密安全的信息;所述路由器代价表的属性值为路由器ID和通信代价,以二位数组存储在路由器中,根据通信代价的高低进行排序。
[0009]所述通信代价为A*硬件利用率+B*丢包率+C*终端接入数量+D*吞吐量+E*抖动+F*时延+G*是否有加密安全,其中A、B、C、D、E、F、G为权重,A+B+C+D+E+F+G=l。
[0010]所述消息发送模块通过调用标准DHCP协议中的ACK消息实现封装消息的发送。
[0011]所述封装消息包括路由器自身的网络通信质量和通信代价最优的路由器信息,所述封装消息填充在路由器DHCP协议中的ACK消息的Opt1n选项中。
[0012]本发明利用网络状况监测统计模块实时监测路由器自身的网络状况,利用消息交互模块周期性的交互路由器的网络通信质量,建立并实时维护路由器代价表,了解域内所有接入路由器的网络通信质量;当路由器本身的负载出现问题时,通过消息发送模块主动通知接入其的终端,并建议其连入某台代价更优的路由器。因此,本发明为客户端动态的提供最优接入方案,提高了接入效率也大幅提升了用户体验;解决了当路由器本身网络负载出现问题时,严重影响客户端的接入体验的问题,实现了路由器的动态选择。
【附图说明】
[0013]图1为本发明的流程图。
[0014]图2为本发明的路由器接入方法示意图。
【具体实施方式】
[0015]为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0016]一种路由器动态接入方法,如图1所示,其步骤如下:
步骤1:各个路由器利用网络状况监测统计模块监测统计本身网络情况。
[0017]网络状况监测统计模块用于监测统计路由器的网络负载情况。网络状况监测统计模块包括监测统计单元。监测统计单元用于实时的监测路由器本身的网络状况并进行统计维护。网络状况监测统计模块以LKM(Loadable Kernel Module)的形式动态加载在路由器操作系统中,会伴随操作系统自启动,但是不需要改动原始的路由器操作系统。网络状况监测统计模块一旦被加载后,就处于一直工作的状态,实时的对经过路由器的数据包进行监测统计数据量。监测统计单元主要统计路由器的硬件利用率、丢包率、终端接入数量、吞吐量、时延、抖动和是否有加密安全等。其中,硬件利用率、终端接入数量和吞吐量可以直接通过路由器的API接口直接获取。丢包率通过统计被丢弃的数据包占整个吞吐量的比例值得至IJ。时延通过对数据包的第一个比特进入路由器到最后一个比特从路由器输出的时间间隔做平均值得到。抖动通过统计时延的稳定情况得到,即时延的变化幅度。如果加密的话,对数据会有安全保障,通信质量会更高。因为网络状况监测统计模块是以LKM的形式工作在操作系统内核态下,当路由器对数据进行加密后,网络状况监测统计模块在内核态下可以基于Netfilter框架进行分析,对于加过密的数据通过分析其前几个字节就可以判断该数据是否经过加密,比如如果用RSA加密算法,其会在数据的前几个字节添加额外状态标量。
[0018]上述考量值得到后,监测统计单元将它们存放在路由器本地中,并实时进行数据的更新。监测统计单元可以将上述考量值以一个普通表格的数据结构进行存放,此处不做要求。监测统计单元通过统计路由器的硬件利用率、丢包率、终端接入数量、吞吐量、时延、抖动、是否有加密安全,实时的监测路由器的网络状况,并将结果保存在本地。
[0019]步骤2:消息交互模块周期性的交互路由器的网络通信质量,建立并维护路由器代价表。
[0020]消息交互模块用于路由器间周期性的交互本地的网络通信质量。消息交互模块包括消息交互单元,消息交互单元用于路由器间周期性的交互本地的网络通信质量。消息交互模块以LKM的形式动态加载在路由器操作系统中。消息交互可以以路由器间的路由协议交互消息作为载体,因为不同路由器均会通过路由协议周期性的交换彼此的路由信息。消息交互单元可以将路由器代价表存入路由交互消息的Opt1n选项中,通过路由协议周期性的维护本地路由器代价表,传递路由器间的各个路由器的信息,交换了解路由器的网络通信质量。消息交互模块无需添加额外的消息格式,对于整个方案的部署有着促进作用。
[0021]路由器代价表是终端接入每个路由器的代价,包含路由器的硬件利用率、丢包率、终端接入数量、吞吐量、时延、抖动和是否有加密安全的信息,比如路由器的带宽、时延、吞吐量、抖动等都会影响终端接入路由
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1