一种用于异构网络的动态路由方法、路由服务器及系统的制作方法

文档序号:7978939阅读:253来源:国知局
一种用于异构网络的动态路由方法、路由服务器及系统的制作方法
【专利摘要】本发明公开了一种用于异构网络的动态路由方法、路由服务器及系统,所述方法包括当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化时,可控节点向目的非可控节点发送下行数据包;路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表。通过本发明,当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化时,能使路由服务器的路由表信息达到自动动态更新,实现了配置自动化,避免了人工配置所带来的大工作量问题;除此之外,由于采用了支持同一可控端系统多连接接入的并发传输的方式,提高了整个网络系统吞吐量。
【专利说明】—种用于异构网络的动态路由方法、路由服务器及系统
【技术领域】
[0001]本发明涉及网络【技术领域】,具体而言,涉及一种用于在异构网络交汇处为实现跨网络数据传输进行动态路由的方法、服务器及系统。
【背景技术】
[0002]如图1所示,在异构网络中,Ax节点所在a类型网络(如以太网)与Bx节点所在的b类型网络(如CDMA移动通信网络)的路由寻址方式不一样。对于Ax节点,用户可进行网络信息及业务参数的配置,在异构网络中,对此类节点可称为“可控节点”,而Bx节点由于处于第三方网络,由于用户不可以主动进行配置,因此在异构网络中此类节点可称为“非可控节点”。a类型和b类型网络交汇于C处,那么要实现Ax节点到Bx节点的数据交互,则需要在两者所在的网络的交汇处C处设置路由服务器,其能够为通信数据包提供到对方网络的路由功能。
[0003]在系统的运行过程中,如图1所示的Ax节点中的会话节点Al向BI节点发送下行数据包,所述数据包首先要到达路由服务器端,然后路由服务器根据包中携带的BI节点的网络地址查找路由表,并依据查找结果将数据包转发到b网络;相反BI节点发向会话节点Al的上行数据包也需首先由路由服务器端根据包中携带的BI节点的网络地址来查找路由表,然后取得会话节点Al的当前通信链路信息并将所述数据包转发。但是,在实际应用中,一旦会话节点Al的配置信息或BI节点的网络信息发生变化,将会产生代理服务器中存储的路由表失效的问题,比如:
[0004]I)节点Al所在的网络发生变动,如由A节点移到A’节点,这时Al所在的网络地址(如IP地址)以及其与路由服务器的连接端口信息均会发生变化,此时,Al在路由服务器中的原路由表将失效,从而在实际路由过程中,会造成BI节点到Al节点的数据包无法得到转发;
[0005]2)当BI节点所处的网络被第三方修改了网络地址信息,那么此时路由服务器中的原路由表也将失效,同样地,路由服务器也将无法对Al节点发送到BI节点的下行数据包进行转发。
[0006]对于上述技术问题,目前采用的解决方法是,在系统部署时,在A节点侧和路由服务器侧均针对A节点侧的每个会话节点配置相应的固定的连接参数,并且当Ax节点的配置信息或Bx节点的网络信息发生变化时,除了需要通过人工的方式在A节点对Ax会话节点的会话信息及连接配置信息重新设置外,还需在路由服务器侧重新人工配置Ax到Bx节点的路由信息,并重启路由服务器之后重新获取更新后的路由表信息。但上述解决方法中,当异构网络的Ax节点的配置信息或Bx节点的网络信息发生变化时,需通过人工进行配置A节点和/或路由服务器,大大增加了部署配置的工作量,浪费了人力。

【发明内容】

[0007]为了解决现有技术中存在的当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化时需要人工配置所带来的部署工作量大的问题,本发明的目的在于提供一种用于异构网络的动态路由方法、路由服务器及系统。
[0008]为了达到本发明的目的,本发明采用以下技术方案实现:
[0009]一种用于异构网络的动态路由方法,包括如下步骤:
[0010]当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化时,可控节点向目的非可控节点发送下行数据包;
[0011]路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表。
[0012]优选地,所述用于异构网络的动态路由方法具体包括:
[0013]可控节点向目的非可控节点发送下行数据包;
[0014]路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并查找第一路由记录表中与目的非可控节点的网络地址信息匹配的路由记录信息;其中,第一路由记录表以非可控节点的网络地址信息为关键字做索引建立非可控节点与可控节点的一对一的对应关系;
[0015]如果第一路由记录表中不存在匹配的路由记录信息,则进行如下处理:
[0016]查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系;
[0017]依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息;
[0018]将该更新路由记录信息添加至第一路由记录表;
[0019]将该更新路由记录信息更新至路由表;
[0020]如果第一路由记录表中存在匹配的路由记录信息,但其记录的可控节点的网络地址信息与当前的不相同时,则进行如下处理:
[0021]删除第二路由记录表中与查找出的匹配路由记录信息中记录的可控节点的网络地址信息以及目的非可控节点的网络地址信息相同的对应匹配路由记录信息;
[0022]删除第一路由记录表中与查找出的匹配路由记录信息中记录的目的非可控节点的网络地址信息相同的对应匹配路由记录信息;
[0023]查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系;
[0024]依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息;
[0025]将该更新路由记录信息添加至第一路由记录表;
[0026]将该更新路由记录信息更新至路由表;
[0027]如果第一路由记录表中存在与目的非可控节点的网络地址信息匹配的路由记录信息,并且其记录的可控节点的网络地址信息与当前的也相同时,则进行如下处理:[0028]获取第一路由记录表中与目的非可控节点的网络地址信息及可控节点的网络地址信息都相同的路由记录信息的连接使能状态标识;
[0029]如连接使能状态标识处于使能状态,则直接返回,否则从第一路由记录表中获取与当前可控节点的网络地址信息以及连接端口信息都相同的路由记录信息;
[0030]将所述路由记录信息中记录的连接端口信息均更新为当前连接端口,并激活连接使能状态标识;
[0031]将所述路由记录信息更新至路由表。
[0032]优选地,在执行所有步骤之前,所述用于异构网络的动态路由方法还包括:
[0033]当可控节点发起与路由服务器的连接后,路由服务器获取可控节点的网络地址信息;
[0034]路由服务器查找第二路由记录表并获取与当前可控节点的网络地址信息相同的路由记录信息,如没找到对应记录,则新建一条非完整的路由记录信息并插入第二路由记录表之中,之后返回。
[0035]优选地,在执行所有步骤之后,所述用于异构网络的动态路由方法还包括:
[0036]当可控节点断开与路由服务器的连接后,路由服务器获取断开连接的可控节点的网络地址信息以及连接端口信息;
[0037]获取第二路由记录表中与当前可控节点的网络地址信息以及连接端口信息都相同的所有路由记录信息;
[0038]设置所有所述路由记录信息的连接使能状态标识为不可用;
[0039]根据所述路由记录信息记录的可控节点的网络地址信息以及非可控节点的网络地址信息匹配出第一路由记录表与两者都相同的所有路由记录信息,并设置所有路由记录信息中的连接使能状态标识为不可用。
[0040]一种路由服务器,包括:
[0041]通信适配模块,用于与多个采用不同通信协议的网络进行数据交互;
[0042]通信协议转换模块,用于转换不同网络之间的协议数据;
[0043]动态路由模块,当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化,可控节点向目的非可控节点发送下行数据包时,用于解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表。
[0044]优选地,当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化,可控节点向目的非可控节点发送下行数据包时,动态路由模块解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表的方法具体包括:
[0045]可控节点向目的非可控节点发送下行数据包;
[0046]路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并查找第一路由记录表中与目的非可控节点的网络地址信息匹配的路由记录信息;其中,第一路由记录表以非可控节点的网络地址信息为关键字做索引建立非可控节点与可控节点的一对一的对应关系;
[0047]如果第一路由记录表中不存在匹配的路由记录信息,则进行如下处理:[0048]查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系;
[0049]依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息;
[0050]将该更新路由记录信息添加至第一路由记录表;
[0051]将该更新路由记录信息更新至路由表;
[0052]如果第一路由记录表中存在匹配的路由记录信息,但其记录的可控节点的网络地址信息与当前的不相同时,则进行如下处理:
[0053]删除第二路由记录表中与查找出的匹配路由记录信息中记录的可控节点的网络地址信息以及目的非可控节点的网络地址信息相同的对应匹配路由记录信息;
[0054]删除第一路由记录表中与查找出的匹配路由记录信息中记录的目的非可控节点的网络地址信息相同的对应匹配路由记录信息;
[0055]查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系;
[0056]依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息;
[0057]将该更新路由记录信息添加至第一路由记录表;
[0058]将该更新路由记录信息更新至路由表;
[0059]如果第一路由记录表中存在与目的非可控节点的网络地址信息匹配的路由记录信息,并且其记录的可控节点的网络地址信息与当前的也相同时,则进行如下处理:
[0060]获取第一路由记录表中与目的非可控节点的网络地址信息及可控节点的网络地址信息都相同的路由记录信息的连接使能状态标识;
[0061]如连接使能状态标识处于使能状态,则直接返回,否则从第一路由记录表中获取与当前可控节点的网络地址信息以及连接端口信息都相同的路由记录信息;
[0062]将所述路由记录信息中记录的连接端口信息均更新为当前连接端口,并激活连接使能状态标识;
[0063]将所述路由记录信息更新至路由表。
[0064]更为优选地,在执行所有步骤之前,还包括:
[0065]当可控节点发起与路由服务器的连接后,路由服务器获取可控节点的网络地址信息;
[0066]路由服务器查找第二路由记录表并获取与当前可控节点的网络地址信息相同的路由记录信息,如没找到对应记录,则新建一条非完整的路由记录信息并插入第二路由记录表之中,之后返回。
[0067]更为优选地,在执行所有步骤之后,还包括:
[0068]当可控节点断开与路由服务器的连接后,路由服务器获取断开连接的可控节点的网络地址信息以及连接端口信息;
[0069]获取第二路由记录表中与当前可控节点的网络地址信息以及连接端口信息都相同的所有路由记录信息;
[0070]设置所有所述路由记录信息的连接使能状态标识为不可用;
[0071]根据所述路由记录信息记录的可控节点的网络地址信息以及非可控节点的网络地址信息匹配出第一路由记录表与两者都相同的所有路由记录信息,并设置所有路由记录信息中的连接使能状态标识为不可用。
[0072]一种用于异构网络的动态路由系统,包括:
[0073]可控节点,用于当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化,向目的非可控节点发送下行数据包;
[0074]路由服务器,用于解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表;
[0075]非可控节点,用于接收路由服务器转发的数据包。
[0076]优选地,当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化,可控节点向目的非可控节点发送下行数据包时,动态路由模块解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表的方法具体包括:
[0077]可控节点向目的非可控节点发送下行数据包;
[0078]路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并查找第一路由记录表中与目的非可控节点的网络地址信息匹配的路由记录信息;其中,第一路由记录表以非可控节点的网络地址信息为关键字做索引建立非可控节点与可控节点的一对一的对应关系;
[0079]如果第一路由记录表中不存在匹配的路由记录信息,则进行如下处理:
[0080]查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系;
[0081]依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息;
[0082]将该更新路由记录信息添加至第一路由记录表;
[0083]将该更新路由记录信息更新至路由表;
[0084]如果第一路由记录表中存在匹配的路由记录信息,但其记录的可控节点的网络地址信息与当前的不相同时,则进行如下处理:
[0085]删除第二路由记录表中与查找出的匹配路由记录信息中记录的可控节点的网络地址信息以及目的非可控节点的网络地址信息相同的对应匹配路由记录信息;
[0086]删除第一路由记录表中与查找出的匹配路由记录信息中记录的目的非可控节点的网络地址信息相同的对应匹配路由记录信息;
[0087]查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系;
[0088]依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息;
[0089]将该更新路由记录信息添加至第一路由记录表;
[0090]将该更新路由记录信息更新至路由表;
[0091]如果第一路由记录表中存在与目的非可控节点的网络地址信息匹配的路由记录信息,并且其记录的可控节点的网络地址信息与当前的也相同时,则进行如下处理:
[0092]获取第一路由记录表中与目的非可控节点的网络地址信息及可控节点的网络地址信息都相同的路由记录信息的连接使能状态标识;
[0093]如连接使能状态标识处于使能状态,则直接返回,否则从第一路由记录表中获取与当前可控节点的网络地址信息以及连接端口信息都相同的路由记录信息;
[0094]将所述路由记录信息中记录的连接端口信息均更新为当前连接端口,并激活连接使能状态标识;
[0095]将所述路由记录信息更新至路由表。
[0096]更为优选地,在执行所有步骤之前,还包括:
[0097]当可控节点发起与路由服务器的连接后,路由服务器获取可控节点的网络地址信息;
[0098]路由服务器查找第二路由记录表并获取与当前可控节点的网络地址信息相同的路由记录信息,如没找到对应记录,则新建一条非完整的路由记录信息并插入第二路由记录表之中,之后返回。
[0099]更为优选地,在执行所有步骤之后,还包括:
[0100]当可控节点断开与路由服务器的连接后,路由服务器获取断开连接的可控节点的网络地址信息以及连接端口信息;
[0101]获取第二路由记录表中与当前可控节点的网络地址信息以及连接端口信息都相同的所有路由记录信息;
[0102]设置所有所述路由记录信息的连接使能状态标识为不可用;
[0103]根据所述路由记录信息记录的可控节点的网络地址信息以及非可控节点的网络地址信息匹配出第一路由记录表与两者都相同的所有路由记录信息,并设置所有路由记录信息中的连接使能状态标识为不可用。
[0104]通过上述本发明的技术方案可以看出,通过本发明,当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化时,能使路由服务器的路由表信息达到自动动态更新,实现了配置自动化,避免了人工配置所带来的大工作量问题;除此之外,由于采用了支持同一可控端系统多连接接入的并发传输的方式,提高了整个网络系统吞吐量。
【专利附图】

【附图说明】
[0105]图1是现有的异构网络信息传输的组网模型示意图;
[0106]图2是本发明实施例提供的路由服务器启动加载历史路由的处理流程图;
[0107]图3是本发明实施例提供的路由服务器对可控节点发起连接或断开请求的处理流程图;
[0108]图4是本发明实施例提供的用于异构网络的动态路由系统结构示意图;
[0109]图5动态路由自动更新的处理流程图
[0110]本发明目的的实现、功能特点及优异效果,下面将结合具体实施例以及附图做进一步的说明。
【具体实施方式】
[0111]下面结合附图和具体实施例对本发明所述技术方案作进一步的详细描述,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
[0112]在本发明实施例中,如图4所示,本发明实施例提供的路由服务器主要由通信适配模块、通信协议转换模块、动态路由模块3个部分组成。通信适配模块主要负责与多个采用不同通信协议的网络进行数据交互;通信协议转换模块则负责不同网络之间的协议数据的转换;动态路由模块则主要用于包括路由记录信息的构建和路由动态更新两大功能,其中路由记录信息采用可控和不可控端的网络地址加连接使能状态标识来构建,以达到支持同一可控节点可以以多连接的方式接入路由服务器,并通过对可控节点主动发送到非可控节点的通信包的处理来自动修复路由,以实现免人工配置。
[0113]在本发明实施例中,路由服务器构建动态路由的过程以及更新路由表的过程包括如下步骤:
[0114]1、建立本地路由表,本地路由表中的每条路由记录由可控节点网络地址、可控节点的连接使能状态标识、非可控节点的网络地址构成;
[0115]2、当路由服务器启动或重启时,动态路由模块构建两个内存路由记录表,一个是以可控节点的网络地址为关键字做索引的内存路由表,建立可控节点与非可控节点的一对多的对应关系,为第二路由记录表;另一个是以非可控节点的网络地址为关键字做索引的内存路由表,建立非可控节点与可控节点的一对一的对应关系,为第一路由记录表。本地路由表的路由信息将分别被加载到这两个内存路由记录表中;
[0116]3、所述可控节点发起到路由服务器的连接,连接成功后,动态路由模块则由可控节点的网络地址查找第二路由记录表,如没找到相应的路由记录则在第二路由记录表中插入一条非完整的路由记录,但不同步本地文件路由表;
[0117]4、所述的路由服务器接收到可控节点发送到不可节点的通信包后,首先由可控节点的网络地址和包中携带的非可控节点端的网络地址查找第一路由记录表,过滤出目标非可控节点端的网络地址可控节点的连接使能状态标识及可控节点的网络地址相同的所有路由记录,如不存在任何记录,则增加对该非可控节点的路由记录信息,否则,更新第一路由记录表中的连接使能状态标识为当前值并更新其使能状态,同时还同步本地文件路由表,最后再由目标非可控节点的网络地址找到相应的连接进行转发;
[0118]5、所述路由服务器接收到非可控节点发送的响应包后,由包中携带的目标可控节点端的网络标识获取路由信息,然后再获取对应的连接转发到可控端,具体实施过程中,对于没找到相应的路由的包则发送到公共的会话节点;
[0119]6、当可控节点断开与路由服务器的连接后,路由服务器获取断开连接的可控节点的网络地址信息以及连接端口信息;获取第二路由记录表中与当前可控节点的网络地址信息以及连接端口信息都相同的所有路由记录信息;设置所有所述路由记录信息的连接使能状态标识为不可用;根据所述路由记录信息记录的可控节点的网络地址信息以及非可控节点的网络地址信息匹配出第一路由记录表与两者都相同的所有路由记录信息,并设置所有路由记录信息中的连接使能状态标识为不可用。
[0120]一种优选实施方式下,所述的可控节点数目少于非可控节点的总数,一个可控节点可对应多个非可控节点,另外,一个可控节点可包含多个会话节点,每个会话节点可对应一个非可控节点,并且,同一个可控节点下的两个不同的会话节点所属的连接端口可不相同。
[0121]一种优选实施方式下,所述由可控节点发送至费可控节点的下行的通信包可以只需要携带非可控节点的网络地址即可实现双向路由及路由的修复。
[0122]一种优选实施方式下,一个可控节点的某一连接端口发生变化时,可以只需要重新接收其中一个会话节点的下行通信包,即可同时修复同属原连接端口的其他所有会话节点的路由信息。
[0123]一种优选实施方式下,无论是可控节点还是非可控节点发生变化,在本发明实施例中,用户可以只需要配置可控节点,即可实现路由服务器的路由表信息的自动更新。
[0124]整个动态路由的构建和更新的实施过程将结合附图2-4详细地描述,通信双方分别为可控端其中一个会话节点和不可控节点,分别命名为A节点和B节点,其中A节点处于以太网络中,而B节点处于CDMA网络中并其网络地址是唯一的。
[0125]如图2所示,路由服务器每次启动时都将本地文件路由表同时分别加载到一个以可控节点的网络地址为关键字做索引的第二路由记录表(如下称内存表A)中以及一个以不可控节点的网络地址为关键字做索引的第一路由记录表(如下称内存表B)中,其中每条路由记录信息主要由可控节点A节点网络(IP )地址、非可控节点B节点的网络地址、A节点到路由服务器的连接端口以及连接端口的连接状态使能标识构成。
[0126]在路由服务器运行过程中,路由服务器接受到A节点的连接或断开请求消息后,路由信息的更新处理流程如图3所示:
[0127](I)路由服务器接受到A节点的连接请求时:
[0128]I)获取发起连接的A节点源IP地址;
[0129]2)在内存表A中获取与源可控节点的IP地址相同的路由记录列表,如没找到对应记录则新建一条未完整的路由记录插入内存表A中然后返回;
[0130](2)路由服务器接受到A节点的断开请求时:
[0131]I)获取断开连接的源可控节点的IP地址和当前到路由服务器的连接端口 ;
[0132]2)获取内存表A中与源可控节点IP地址和当前连接端口都相同的所有路由记录列表;
[0133]3)设置列表中所有路由记录中的连接使能状态标识为不可用;
[0134]4)再由列表路由记录的可控节点的IP地址和非可控节点网络地址匹配出内存表B中两者都相同的所有记录;
[0135]5)设置第4)步过滤出的所有记录中连接使能状态标识为不可用。
[0136]如图4所示,路由服务器在收到可控节点主动发往到目的非可控节点的通信包后,进行如下处理操作:
[0137]I)获取发送可控节点的IP地址和当前的连接端口 ;
[0138]2)解析通信包取出包中携带的非可控节点的网络地址;
[0139]3)在内存表B中查找出非可控节点的网络地址相同的路由信息记录,此后再由查找结果分三种情况分别进行处理:
[0140]第一种情况,如果内存表B中不存在匹配的路由记录,则说明到该目标B节点的通信包从未发送过,这时将进行如下操作:
[0141]I)由源可控节点端的IP地址查找内存表A对应的非完整的路由记录;
[0142]2)再由源可控节点端的IP地址、当前的连接标识和目标非可控节点的网络地址
新建立一条路由记录;
[0143]3)由新建的路由记录对内存表A中该条非完整的记录进行更新;
[0144]4)然后在内存表B增加由网络地址索引的路由记录;
[0145]5)把该新建的路由记录同步到本地文件路由表。
[0146]第二种情况,如内存表B中存在匹配记录,但是所记录的源可靠节点的IP地址与当前的不相同,则说明到该非可控节点的通信包曾被发送过,但是发送的源可控节点的IP地址已变更,需要进行路由记录迁移和更新,具体处理如下:
[0147]I)由查找出的记录中所登记的源IP地址和目标非可控节点的网络地址删除内存表A中两者相同的对应路由记录;
[0148]2)同时删除内存表B中不可控节点的网络地址相同的路由记录;
[0149]3)转入上述第一种情况的处理流程。
[0150]第三种情况,内存表B存在非可控节点网络地址相同的路由记录,并且记录的可控节点的IP地址与当前的也相同,则说明路由模块曾转发过该到非可控节点的通信包,可能不同的是可控节点端下发的连接端口已经改变,这时则需要通过比较该路由记录所记录的原连接端口和当前的连接端口,然后更新路由记录的信息,同时同步本地路由表文件。另夕卜,除了需要修正当前的目标非可控节点的路由信息外,还需修改与可控节点的IP地址和连接端口相关的其他非可控目标节点的路由信息,这样就能提高了路由更新的速度和时效性,避免了由于找不到对应路由而引起掉包的问题,具体处理流程如下:
[0151]I)获取内存表B中目标非可控节点网络标识及可控节点的IP地址都相同的路由记录的连接使能状态标识;
[0152]2)如标识处于使能状态,则直接返回不处理,否则,从内存表B中获取与当前可控节点的IP地址和连接端口都相同的路由记录列表;
[0153]3)把列表中所有的记录的连接端口都更新为当前最新的端口,并激活连接使能标识;
[0154]4)同时同步更新本地文件路由表。
[0155]5)至此完成了路由的动态更新,然后根据非可控节点的网络地址找到对应网络进行转发。
[0156]如图5所示,路由服务器接收到非可控节点响应通信包后,将根据最新路由信息进行寻址和传输,处理流程如下:
[0157]I)从通信包中获取非可控节点的网络地址和目标可控节点的IP地址;[0158]2)从内存表B中找出与非可控节点的网络地址相同的路由信息记录;
[0159]3)判断内存表B中的到可控节点的连接状态使能标识,如连接状态使能标识为不可用,则获取公共路由链路进行转发,否则进入下一步;
[0160]4)再由内存表B中记录的目标可控节点的IP地址和当前的连接端口获取到可控节点的连接并进行数据转发。
[0161]以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.一种用于异构网络的动态路由方法,其特征在于,包括如下步骤: 当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化时,可控节点向目的非可控节点发送下行数据包; 路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表。
2.如权利要求1所述的用于异构网络的动态路由方法,其特征在于,所述方法具体包括: 可控节点向目的非可控节点发送下行数据包; 路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并查找第一路由记录表中与目的非可控节点的网络地址信息匹配的路由记录信息;其中,第一路由记录表以非可控节点的网络地址信息为关键字做索引建立非可控节点与可控节点的一对一的对应关系; 如果第一路由记录表中不存在匹配的路由记录信息,则进行如下处理: 查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系; 依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息; 将该更新路由记录信 息添加至第一路由记录表; 将该更新路由记录信息更新至路由表; 如果第一路由记录表中存在匹配的路由记录信息,但其记录的可控节点的网络地址信息与当前的不相同时,则进行如下处理: 删除第二路由记录表中与查找出的匹配路由记录信息中记录的可控节点的网络地址信息以及目的非可控节点的网络地址信息相同的对应匹配路由记录信息; 删除第一路由记录表中与查找出的匹配路由记录信息中记录的目的非可控节点的网络地址信息相同的对应匹配路由记录信息; 查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系; 依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息; 将该更新路由记录信息添加至第一路由记录表; 将该更新路由记录信息更新至路由表; 如果第一路由记录表中存在与目的非可控节点的网络地址信息匹配的路由记录信息,并且其记录的可控节点的网络地址信息与当前的也相同时,则进行如下处理: 获取第一路由记录表中与目的非可控节点的网络地址信息及可控节点的网络地址信息都相同的路由记录信息的连接使能状态标识;如连接使能状态标识处于使能状态,则直接返回,否则从第一路由记录表中获取与当前可控节点的网络地址信息以及连接端口信息都相同的路由记录信息; 将所述路由记录信息中记录的连接端口信息均更新为当前连接端口,并激活连接使能状态标识; 将所述路由记录信息更新至路由表。
3.如权利要求2所述的用于异构网络的动态路由方法,其特征在于,在执行所有步骤之前,还包括: 当可控节点发起与路由服务器的连接后,路由服务器获取可控节点的网络地址信息;路由服务器查找第二路由记录表并获取与当前可控节点的网络地址信息相同的路由记录信息,如没找到对应记录,则新建一条非完整的路由记录信息并插入第二路由记录表之中,之后返回。
4.如权利要求2所述的用于异构网络的动态路由方法,其特征在于,在执行所有步骤之后,还包括: 当可控节点断开与路由服务器的连接后,路由服务器获取断开连接的可控节点的网络地址信息以及连接端口信息; 获取第二路由记录表中与当前可控节点的网络地址信息以及连接端口信息都相同的所有路由记录信息; 设置所有所述路由记录信息的连接使能状态标识为不可用; 根据所述路由记录信息记录的可控节点的网络地址信息以及非可控节点的网络地址信息匹配出第一路由记录表与两者都相同的所有路由记录信息,并设置所有路由记录信息中的连接使能状态标识为 不可用。
5.一种路由服务器,其特征在于,包括: 通信适配模块,用于与多个采用不同通信协议的网络进行数据交互; 通信协议转换模块,用于转换不同网络之间的协议数据; 动态路由模块,当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化,可控节点向目的非可控节点发送下行数据包时,用于解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表。
6.如权利要求5所述的路由服务器,其特征在于,当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化,可控节点向目的非可控节点发送下行数据包时,动态路由模块解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表的方法具体包括: 可控节点向目的非可控节点发送下行数据包; 路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并查找第一路由记录表中与目的非可控节点的网络地址信息匹配的路由记录信息;其中,第一路由记录表以非可控节点的网络地址信息为关键字做索引建立非可控节点与可控节点的一对一的对应关系; 如果第一路由记录表中不存在匹配的路由记录信息,则进行如下处理: 查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系; 依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息; 将该更新路由记录信息添加至第一路由记录表; 将该更新路由记录信息更新至路由表; 如果第一路由记录表中存在匹配的路由记录信息,但其记录的可控节点的网络地址信息与当前的不相同时,则进行如下处理: 删除第二路由记录表中与查找出的匹配路由记录信息中记录的可控节点的网络地址信息以及目的非可控节点的网络地址信息相同的对应匹配路由记录信息; 删除第一路由记录表中与查找出的匹配路由记录信息中记录的目的非可控节点的网络地址信息相同的对应匹配路由记录信息; 查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系; 依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息; 将该更新路由记录信息添加至第一路由记录表; 将该更新路由记录信息更 新至路由表; 如果第一路由记录表中存在与目的非可控节点的网络地址信息匹配的路由记录信息,并且其记录的可控节点的网络地址信息与当前的也相同时,则进行如下处理: 获取第一路由记录表中与目的非可控节点的网络地址信息及可控节点的网络地址信息都相同的路由记录信息的连接使能状态标识; 如连接使能状态标识处于使能状态,则直接返回,否则从第一路由记录表中获取与当前可控节点的网络地址信息以及连接端口信息都相同的路由记录信息; 将所述路由记录信息中记录的连接端口信息均更新为当前连接端口,并激活连接使能状态标识; 将所述路由记录信息更新至路由表。
7.如权利要求6所述的路由服务器,其特征在于,在执行所有步骤之前,还包括: 当可控节点发起与路由服务器的连接后,路由服务器获取可控节点的网络地址信息; 路由服务器查找第二路由记录表并获取与当前可控节点的网络地址信息相同的路由记录信息,如没找到对应记录,则新建一条非完整的路由记录信息并插入第二路由记录表之中,之后返回。
8.如权利要求6所述的路由服务器,其特征在于,在执行所有步骤之后,还包括: 当可控节点断开与路由服务器的连接后,路由服务器获取断开连接的可控节点的网络地址信息以及连接端口信息; 获取第二路由记录表中与当前可控节点的网络地址信息以及连接端口信息都相同的所有路由记录信息; 设置所有所述路由记录信息的连接使能状态标识为不可用; 根据所述路由记录信息记录的可控节点的网络地址信息以及非可控节点的网络地址信息匹配出第一路由记录表与两者都相同的所有路由记录信息,并设置所有路由记录信息中的连接使能状态标识为不可用。
9.一种用于异构网络的动态路由系统,其特征在于,包括: 可控节点,用于当异构网络的可控节点的配置信息或非可控节点的网络信息发生变化,向目的非可控节点发送下行数据包; 路由服务器,用于解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表; 非可控节点,用于接收路由服务器转发的数据包。
10.如权利要求9所述的用于异构网络的动态路由系统,其特征在于,当异构网络的可控节点的配置信息 或非可控节点的网络信息发生变化,可控节点向目的非可控节点发送下行数据包时,动态路由模块解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并据此更新路由表的方法具体包括: 可控节点向目的非可控节点发送下行数据包; 路由服务器解析并获取下行数据包中携带的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息,并查找第一路由记录表中与目的非可控节点的网络地址信息匹配的路由记录信息;其中,第一路由记录表以非可控节点的网络地址信息为关键字做索引建立非可控节点与可控节点的一对一的对应关系; 如果第一路由记录表中不存在匹配的路由记录信息,则进行如下处理: 查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系; 依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息; 将该更新路由记录信息添加至第一路由记录表; 将该更新路由记录信息更新至路由表; 如果第一路由记录表中存在匹配的路由记录信息,但其记录的可控节点的网络地址信息与当前的不相同时,则进行如下处理: 删除第二路由记录表中与查找出的匹配路由记录信息中记录的可控节点的网络地址信息以及目的非可控节点的网络地址信息相同的对应匹配路由记录信息; 删除第一路由记录表中与查找出的匹配路由记录信息中记录的目的非可控节点的网络地址信息相同的对应匹配路由记录信息; 查找第二路由记录表中与可控节点的网络地址信息匹配的非完整路由记录信息,其中,第二路由记录表以可控节点的网络地址信息为关键字做索引建立可控节点与非可控节点的一对多的对应关系;依据获取的可控节点的网络地址信息、当前连接端口信息以及目的非可控节点的网络地址信息新建一更新路由记录信息,并依据该更新路由记录信息更新所述第二路由记录表中的所述非完整路由记录信息; 将该更新路由记录信息添加至第一路由记录表; 将该更新路由记录信息更新至路由表; 如果第一路由记录表中存在与目的非可控节点的网络地址信息匹配的路由记录信息,并且其记录的可控节点的网络地址信息与当前的也相同时,则进行如下处理: 获取第一路由记录表中与目的非可控节点的网络地址信息及可控节点的网络地址信息都相同的路由记录信息的连接使能状态标识; 如连接使能状态标识处于使能状态,则直接返回,否则从第一路由记录表中获取与当前可控节点的网络地址信息以及连接端口信息都相同的路由记录信息; 将所述路由记录信息中记录的连接端口信息均更新为当前连接端口,并激活连接使能状态标识; 将所述路由记录信息更新至路由表。
11.如权利要求10所述的用于异构网络的动态路由系统,其特征在于,在执行所有步骤之前,还包括: 当可控节点发起与路由服务器的连接后,路由服务器获取可控节点的网络地址信息;路由服务器查找第二路由记录表并获取与当前可控节点的网络地址信息相同的路由记录信息,如没找到对应记录,则新建一条非完整的路由记录信息并插入第二路由记录表之中,之后返回。`
12.如权利要求10所述的用于异构网络的动态路由系统,其特征在于,在执行所有步骤之后,还包括: 当可控节点断开与路由服务器的连接后,路由服务器获取断开连接的可控节点的网络地址信息以及连接端口信息; 获取第二路由记录表中与当前可控节点的网络地址信息以及连接端口信息都相同的所有路由记录信息; 设置所有所述路由记录信息的连接使能状态标识为不可用; 根据所述路由记录信息记录的可控节点的网络地址信息以及非可控节点的网络地址信息匹配出第一路由记录表与两者都相同的所有路由记录信息,并设置所有路由记录信息中的连接使能状态标识为不可用。
【文档编号】H04L12/741GK103428090SQ201210149991
【公开日】2013年12月4日 申请日期:2012年5月15日 优先权日:2012年5月15日
【发明者】雷军, 袁马军, 马志鸿 申请人:深圳中兴力维技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1