一种二层网络链路计算的方法与设备的制造方法

文档序号:10615906阅读:374来源:国知局
一种二层网络链路计算的方法与设备的制造方法【专利摘要】本申请的目的是提供一种二层网络链路计算方法与设备。与现有技术相比,本申请通过获取SNMP管理的设备的对应表的数据,其中,所述设备包括三层交换机、二层交换机;并根据所述对应表的数据,获取三层交换机和二层交换机的IP地址所对应的接口信息,以及确定SNMP管理的设备的根设备和边缘设备;然后,基于所述接口信息确定二层域,并根据所述边缘设备、根设备获取所述二层域中的设备信息;进而,基于所述设备信息,确定二层域内设备间的上下级关系;最后,基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。本申请采用SNMP管理与二层网络设备链路计算算法的方法,可以精确地获取二层网络环境下的设备之间的链路情况,为维护网络安全带来便利。【专利说明】-种二层网络链路计算的方法与设备
技术领域
[0001]本申请设及计算机领域,尤其设及一种二层网络链路计算的技术。【
背景技术
】[0002]当前信息产业的发展进入了新的阶段,大型企事业单位纷纷利用信息技术来降低成本、提高效率,W更好的适应时代和市场的要求。随着信息产业的发展,信息化办公、安全性办公的需求大量增加,与此同时,网路环境的安全越来越受到重视。如何准确反映当前网络环境,尤其是二层网络环境中设备的链路情况,对于网路环境安全的维护来说尤为重要。但现有技术中,并无精确的链路计算技术,而二层网络环境中的链路计算技术,更为罕见。【
发明内容】[0003]本申请的一个目的是提供一种二层网络链路计算的方法与设备。[0004]根据本申请的一个方面,提供了一种二层网络链路计算方法,其中,该方法包括:[0005]获取SNMP管理的设备的对应表的数据,其中,所述设备包括=层交换机、二层交换机;[0006]根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备;[0007]基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;[000引基于所述设备信息,确定二层域内设备间的上下级关系;[0009]基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。[0010]根据本申请的另一个方面,还提供了一种二层网络链路计算设备,其中,该计算设备包括:[0011]第一装置,用于获取SNMP管理的设备的对应表的数据,其中,所述设备包括=层交换机、二层交换机;[0012]第二装置,用于根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备;[0013]第=装置,用于基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;[0014]第四装置,用于基于所述设备信息,确定二层域内设备间的上下级关系;[0015]第五装置,用于基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。[0016]与现有技术相比,本申请通过获取SNMP管理的设备的对应表的数据,其中,所述设备包括=层交换机、二层交换机;并根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备;然后,基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;进而,基于所述设备信息,确定二层域内设备间的上下级关系;最后,基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。本申请采用SNMP管理与二层网络设备链路计算算法的方法,可W精确地获取二层网络环境下的设备之间的链路情况,为维护网络安全带来便利。【附图说明】[0017]通过阅读参照W下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:[0018]图1示出根据本申请一个方面的一种二层网路链路计算的方法流程图;[0019]图2示出根据本申请另一个方面的一种二层网络链路计算设备的示意图;[0020]图3示出根据本申请一个实施例的一个二层域内的上下级关系图。[0021]附图中相同或相似的附图标记代表相同或相似的部件。【具体实施方式】[0022]下面结合附图对本申请作进一步详细描述。[0023]在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。[0024]内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(RCM)或闪存(flashRAM)。内存是计算机可读介质的示例。[0025]计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可W由任何方法或技术来实现信息存储。信息可W是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器化EPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可W被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。[0026]图1示出根据本申请一个方面的一种二层网路链路计算的方法流程图,其中,该方法包括步骤Sl1、步骤Sl2、步骤Sl3、步骤Sl4和步骤Sl5。具体的,在步骤Sl1中,计算设备获取SNMP管理的设备的对应表的数据,其中,所述设备包括=层交换机、二层交换机;在步骤S12中,计算设备根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备;在步骤S13中,计算设备基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;在步骤S14中,计算设备基于所述设备信息,确定二层域内设备间的上下级关系;在步骤S15中,计算设备基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。[0027]在此,所述计算设备除前述提及的二层交换机、=层交换机之外,还可W包括路由器等。当然,本领域技术人员应能理解上述计算设备仅为举例,其他现有的或今后可能出现的计算设备如可适用于本申请,也应包含在本申请保护范围W内,并在此W引用方式包含于此。[0028]在步骤Sll中,计算设备获取挪MP管理的设备的对应表的数据,其中,所述设备包括=层交换机、二层交换机。[0029]具体地,计算设备根据SNMP所管理的设备类型的不同,将分别获取不同设备的对应表中的数据。比如说,若SNMP所管理的某一设备为路由器的话,则获取路由器所对应的接口表iftable(ifstable)、IP地址表ipaddress、路由表iproutetable和地址转换表ipnettomediatable中的数据;若SNMP所管理的某一设备为二层交换机的话,则获取二层交换机所对应的接口表1的日1316(1;1!'別日1316)、1?地址表19日(1化633、基地址表6日3邱01'1:和抑8地址表中的数据;若SNMP所管理的某一设备为=层交换机,则获取=层交换机所对应的接口表iftable(ifxtable)、IP地址表ipaddress、路由表iproutetable、地址转换表ipnettomedia化ble、基地址表bas邱OTt和抑B地址表中的数据。在实际应用场景中,对于一些特殊的二层或S层交换机,例如Cisco公司或者3Com公司的某些交换机,计算设备在获取二层或=层交换机中上述对应表中的数据的同时,还需要获取二层或=层交换机所对应的Vlan表中的数据。[0030]在步骤S12中,计算设备根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备。[0031]具体地,计算设备根据所述对应表之间的关联关系,规整获取到每一个=层交换机和每一个二层交换机的IP地址所对应的接口信息。在此,所述接口信息包括每一个设备IP所对应的接口索引、接口索引所对应的接口描述、接口类型、设备在接口索引下学习到的MAC、所述MAC对应的IP地址W及所述MAC对应的IP地址所对应的设备类型。其中,接口类型包括仅学习到一个PC的MAC的接口化ort,学习到多个PC的MAC,但是未学习到交换机的MAC的接口化orts,学习到交换机的MAC的接口Spod和仅学习到一个路由MAC的接口化ort。另夕h在MAC对应的IP地址所对应的设备类型中,若设备类型无法判断出来的话,则均默认设备为PC。[0032]比如说,根据SNMP管理的设备的对应表的数据,规整出如下表格数据:[0033][0034]优选地,在步骤S12中,所述S醒P管理的设备包括路由器;根据所述SNMP管理的设备的对应表的数据,若所述SNMP管理的设备包含路由器,则确定所述路由器为边缘设备,并且确定所述路由器下联的第一个设备为根设备;若所述SNMP管理的设备包含开启路由功能且具有多个IP地址的=层交换机,则确定所述=层交换机为边缘设备和根设备;若基于前述条件无法判断出根设备,则W网络中抑B表最多且学习到路由器的设备为根设备;若二层网络中没有路由器和=层交换机,则WFDB表最多的二层交换机为边缘设备和根设备。[0035]比如说,若SNMP所管理的设备中包含有路由器1和路由器2,且路由器1下联的第一个设备为二层交换机A,路由器2下联的第一个设备为=层交换机M的话,则确定路由器1和路由器2为边缘设备,并确定二层交换机A和=层交换机M为根设备;若SNMP所管理的设备中不包含路由器,但是包含有开启路由功能并且有多个IP地址的=层交换机N和=层交换机Q的话,则确定=层交换机N和=层交换机Q为边缘设备,同时也将=层交换机N和=层交换机Q确定为根设备;再比如说,若SNMP所管理的设备中包含有路由器3和能学习到路由器3的二层交换机B与C,但不包含有=层交换机,并且无法判断出路由器3下联的第一个设备的话,则确定路由器3为边缘设备,并确定二层交换机B与C的抑B地址表中地址最多的一个为根设备,例如,二层交换机B的抑B地址表中有10个地址,而二层交换机C的抑B地址表中只有9个,则确定二层交换机B为根设备;再比如说,若SNMP所管理的设备中既没有路由器也没有=层交换机的话,则确定抑B地址表中地址最多的二层交换机D为边缘设备和根设备。[0036]在步骤S13中,计算设备基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息。[0037]具体地,在二层交换机和=层交换机中均W每一个接口作为一个二层域,并根据前述确定的边缘设备与根设备,确定每一个二层域中的边缘设备与根设备,同时根据每一个二层域中根设备的接口信息获取该二层域中的所有设备信息。比如说,在某一个二层域中确定的边缘设备、根设备如下,则可W依据所述根设备的接口信息获得该二层域中的所有设备信息,并规整出如下数据表格:[00;3引[0039」优选地,计算巧备在基于所述接口信恳确定二层域,并根据所述二层域中的巧缘设备、根设备获取所述二层域中的所有设备信息之后,计算设备还确定R接口与非財妾口,其中,所述R接口为所述二层域中学习到边缘设备的接口,所述非財妾口为所述二层域中未学习到边缘设备的接口;并基于所述財妾口或非R接口确定RSlist、RPlist、DSlist和DPlist,其中,所述RSliSt为R接口学习到的交换机的列表,所述RPliSt为R接口学习到的PC的列表,所述DSlist为非R接口学习到交换机的列表、所述DPlist为非R接口学习到的PC的列表。[0040]也就是说,在步骤Sl3中,计算设备在基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息之后,还将获取所述二层域中每个设备中学习到边缘设备的R接口学习到的交换机的列表RSlist、R接口学习到的PC列表RPlist、非R接口学习到交换机的列表DSlist、非R接口学习到的PC列表DPlist。[0041]比如说,在某一个二层域中有两设备,二层交换机1和=层交换机2,计算设备首先确定所述二层域的二层交换机1和=层交换机2中学习到边缘设备的R接口,W及所述二层域的二层交换机1和=层交换机2中未学习到边缘设备的非R接口,然后基于此获取所述二层域的二层交换机1和S层交换机2中的R接口索引、R接口学习到的交换机的列表RSliSt、R接口学习到的PC列表RPlist、非R接口学习到交换机的列表DSlist、非R接口学习到的PC列表DPlist,可W规整得到如下表格数据信息,其中,所述设备、学习到的PC列表和交换机列表均WIP地址来表示:[0042][0043]在步骤S14中,计算设备基于所述设备信息,确定二层域内设备间的上下级关系。[0044]具体地,在步骤S14中,计算设备基于预设的上下级关系的判断方法和所述设备信息,确定二层域内设备间的上下级关系,其中,所述预设的上下级关系的判断方法包括:[0045]若第一设备与第二设备之间的关系满足a、b、c中任一种情况,且第一设备与第二设备之间的关系不满足d和e中的任一种情况,则确定第一设备是第二设备的上级,第二设备是第一设备的下级;若第一设备与第二设备之间的关系满足a、b、c中的任一种情况,且第一设备与第二设备之间的关系也满足d、e中的任一种情况,则确定第一设备与第二设备不在一个路径上;若第一设备与第二设备之间不满足a、b、c中的任一种情况,则确认第一设备与第二设备不在一个路径上。[0046]其中,所述a情况为第一设备的某个下联接口能学习到第二设备的情况;所述b情况为第一设备的某个接口学习到的IP终端与第二设备的下联IP终端相同,并且第一设备的非財妾口学习到的PC的列表DPlist与交换机的列表DSlist的集合大于第二设备的非R接口学习到的PC的列表DPlist与交换机的列表DSlist的集合的情况;所述C情况为第二设备的上联接口能学习到的PC的列表与第一设备的某个下联接口学习到的PC列表没有交集,并且第二设备的上联接口能学习到的PC列表与第一设备的某个下联接口学习到的PC列表的集合大于整个二层域中的PC列表的情况;所述d情况为第一设备的上联接口能学习到第二设备的情况;所述e情况为第一设备的上联接口能学习到的PC列表与第二设备的下联接口学习到的PC列表之间无交集的情况。[0047]比如说,如果A设备的第一个下联接口能学习到B设备,并且A设备的上联接口学习到的PC列表与B设备的下联接口学习的PC列表之间无交集,同时A设备的上联接口不能学习至化设备,则确定A设备是B设备的上级,用1表示,B设备是A设备的下级,用2表示。再比如说,如果C设备的第二个下联接口能学习到B设备,并且C设备的上联接口也能学习到B设备,贝U确定C设备与的受备不在一个路径上,用O表示。还比如说,D设备的接口I学习到的IP终端与E设备的下联IP终端相同,D设备中未学习到边缘设备的非R接口学习到的PC的列表DPlist与交换机的列表DSlist的集合大于E设备中未学习到边缘设备的非R接口学习到的PC的列表DPlist与交换机的列表DSlist的集合,并且D设备的上联接口不能学习到E设备,同时D设备的上联接口学习到的PC列表与E设备的下联接口学习到的PC列表之间无交集,则确定D设备是E设备的上级,用1表示,E设备是的受备的下级,用2表示。[0048]在步骤S15中,计算设备基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。[0049]具体地,在步骤S15中,计算设备确定与其他所有设备之间的关系为2或者0的叶子设备;并从所述叶子设备开始,确定与所述叶子设备之间的关系为2的所有设备;然后,在所确定的与叶子设备之间的关系为2的所有设备中,确定一个与叶子设备关系为1,且与其他所有设备之间的关系为2或者0的第=设备;最后,若所述第=设备中的某一接口满足下列任一条件,则在所述接口与叶子设备中学习到边缘设备的接口之间建立一条链路:1.所述接口学习到的交换机包括所述叶子设备或者所述叶子设备的下联交换机;2.所述接口学习到的PC列表与叶子设备的下联接口学习到的PC列表之间有交集;3.所述接口学习到的PC列表与叶子设备中学习到边缘设备的接口学习到的PC列表之间无交集。再W第S设备为叶子,重复上述判断规则,并建立相应的链路关系,依次循环下去,直至将所有交换机的链路连接关系建立。[0050]其中,1表示第一设备是第二设备的上级;2表示第二设备是第一设备的下级;0是表示第一设备与第二设备不在一个路径上。[0051]比如说,图3是根据前述条件已判断出上下级关系的某一个二层域,则可W将所述二层域中设备间的上下级关系用如下二维表来表示:「0化21[0053]其中,-1表示的是不需要进行上下级关系的确定。[0054]那么在该二层域内设备间的链路判断规则如下:[0055]首先,找到叶子节点设备F;然后,从叶子节点设备F开始,找到与其关系为2的所有设备A、B、D;其次,在所找到的所有与叶子节点设备F关系为2的A、B、D设备中找到与叶子节点设备F关系为1,与其他所有设备关系为2或者0的设备D;最后,从设备D中找到一个接口U,如果该接口U学习到的交换机包括所述叶子节点设备F,或者接口U学习到的PC列表与叶子节点设备F的下联接口学习到的PC列表之间有交集,又或者接口U学习到的PC列表与叶子节点设备F中学习到边缘设备的接口学习到的PC列表之间无交集,贝帷接口U和叶子节点设备F中学习到边缘设备的接口之间建立一条链路。[0056]此后,再WD为叶子节点设备,首先,找到与叶子节点设备D关系为2的所有节点设备A、B;其次,在所找到的所有与叶子节点设备D关系为2的A、B设备中找到与叶子节点设备D关系为1,与其他所有设备关系为2或者0的设备B;最后,从设备B中找到一个接口V,如果该接口V学习到的交换机包括所述叶子节点设备D或者D的下联交换机,或者接口V学习到的PC列表与叶子节点设备D的下联接口学习到的PC列表之间有交集,又或者接口V学习到的PC列表与叶子节点设备D中学习到边缘设备的接口学习到的PC列表之间无交集,则在接口V和叶子节点设备D中学习到边缘设备的接口之间建立一条链路。[0057]之后再WB为叶子节点设备,依次类推下去,可W将所有交换机的直接连接关系和链路建立起来。[0058]图2示出根据本申请一个方面的一种二层网路链路计算设备的示意图,其中,该计算设备包括第一装置11、第二装置12、第=装置13、第四装置14和第五装置15。具体的,所述第一装置11获取SNMP管理的设备的对应表的数据,其中,所述设备包括=层交换机、二层交换机;所述第二装置12根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备;所述第=装置13基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;所述第四装置14基于所述设备信息,确定二层域内设备间的上下级关系;所述第五装置15基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。[0059]在此,所述计算设备除前述提及的二层交换机、=层交换机之外,还可W包括路由器等。当然,本领域技术人员应能理解上述计算设备仅为举例,其他现有的或今后可能出现的计算设备如可适用于本申请,也应包含在本申请保护范围W内,并在此W引用方式包含于此。[0060]所述第一装置11获取挪MP管理的设备的对应表的数据,其中,所述设备包括S层交换机、二层交换机。[0061]具体地,所述第一装置11根据SNMP所管理的设备类型的不同,将分别获取不同设备的对应表中的数据。比如说,若SNMP所管理的某一设备为路由器的话,则获取路由器所对应的接口表iftable(ifstable)、IP地址表ipacMress、路由表iproutetable和地址转换表ipnettomediatable中的数据;若SNMP所管理的某一设备为二层交换机的话,则获取二层交换机所对应的接口表1的日1316(1;1!'別日1316)、1?地址表19日(1化633、基地址表6日3邱01'1:和抑8地址表中的数据;若SNMP所管理的某一设备为=层交换机,则获取=层交换机所对应的接口表iftable(ifxtable)、IP地址表ipaddress、路由表iproutetable、地址转换表ipnettomedia化ble、基地址表bas邱OTt和抑B地址表中的数据;在实际应用场景中,对于一些特殊的二层或S层交换机,例如Cisco公司或者3Com公司的某些交换机,计算设备在获取二层或=层交换机中上述对应表中的数据的同时,还需要获取二层或=层交换机所对应的Vlan表中的数据。[0062]所述第二装置12根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备。[0063]具体地,所述第二装置12根据所述对应表之间的关联关系,规整获取到每个=层交换机和每个二层交换机的IP地址所对应的接口信息。在此,所述接口信息包括每个设备IP所对应的接口索引、接口索引所对应的接口描述、接口类型、设备在接口索引下学习到的MAC、所述MAC对应的IP地址W及所述MAC对应的IP地址所对应的设备类型。其中,接口类型包括仅学习到一个PC的MAC的接口化ort,学习到多个PC的MAC,但是未学习到交换机的MAC的接口化orts,学习到交换机的MAC的接口Spod和仅学习到一个路由MAC的接口化ort。另夕h在MAC对应的IP地址所对应的设备类型中,若设备类型无法判断出来的话,则均默认设备为PC。[0064]比如说,根据SNMP管理的设备的对应表的数据,规整出如下表格数据:[00化][0066]优选地,所述SNMP管理的设备包括路由器;所述第二装置12根据所述S醒P管理的设备的对应表的数据,若所述SNMP管理的设备包含路由器,则确定所述路由器为边缘设备,并且确定所述路由器下联的第一个设备为根设备;若所述SNMP管理的设备包含开启路由功能且具有多个IP地址的=层交换机,则确定所述=层交换机为边缘设备和根设备;若基于前述条件无法判断出根设备,则W网络中FDB表最多且学习到路由器的设备为根设备;若二层网络中没有路由器和=层交换机,则WFDB表最多的二层交换机为边缘设备和根设备。[0067]比如说,若SNMP所管理的设备中包含有路由器1和路由器2,且路由器1下联的第一个设备为二层交换机A,路由器2下联的第一个设备为=层交换机M的话,则确定路由器1和路由器2为边缘设备,并确定二层交换机A和=层交换机M为根设备;若SNMP所管理的设备中不包含路由器,但是包含有开启路由功能并且有多个IP地址的=层交换机N和=层交换机Q的话,则确定=层交换机N和=层交换机Q为边缘设备,同时也将=层交换机N和=层交换机Q确定为根设备;再比如说,若SNMP所管理的设备中包含有路由器3和能学习到路由器3的二层交换机B与C,但不包含有=层交换机,并且无法判断出路由器3下联的第一个设备的话,则确定路由器3为边缘设备,并确定二层交换机B与C的抑B地址表中地址最多的一个为根设备,例如,二层交换机B的抑B地址表中有10个地址,而二层交换机C的抑B地址表中只有9个,则确定二层交换机B为根设备;再比如说,若SNMP所管理的设备中既没有路由器也没有=层交换机的话,则确定抑B地址表中地址最多的二层交换机D为边缘设备和根设备。[0068]所述第=装置13基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的设备信息。[0069]具体地,在二层交换机和=层交换机中均W每一个接口作为一个二层域,并根据前述确定的边缘设备与根设备,找出每一个二层域中的边缘设备与根设备,同时根据每一个二层域中根设备的接口信息获取该二层域中的所有设备信息。比如说,在某一个二层域中确定的边缘设备、根设备如下,则可W依据所述根设备的接口信息获得该二层域中的所有设备信息,规整出数据表格如下:[0070][0071]优选地,所述第=装置13,在基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息之后,还确定R接口与非R接口,其中,所述R接口为所述二层域中学习到边缘设备的接口,所述非財妾口为所述二层域中未学习到边缘设备的接口;并基于R接口或非財妾口确定RSlist、RPlist、DSlist和DPlist,其中,所述RSlist为R接口学习到的交换机的列表,所述RPlist为R接口学习到的PC的列表,所述DSlist为非R接口学习到交换机的列表、所述DPlist为非R接口学习到的PC的列表。[0072]也就是说,所述第=装置13,还获取所述二层域中每个设备中学习到边缘设备的R接口学习到的交换机的列表RSliSt、R接口学习到的PC列表RPliSt、非R接口学习到交换机的列表DSlist、非R接口学习到的PC列表DPlist。[0073]比如说,在某一个二层域中有两设备,二层交换机1和=层交换机2,所述第=装置13首先确定所述二层域的二层交换机1和=层交换机2中学习到边缘设备的R接口,W及所述二层域的二层交换机1和=层交换机2中未学习到边缘设备的非R接口,然后基于此获取所述二层域的二层交换机1和=层交换机2中的R接口索引、R接口学习到的交换机的列表RSlist、R接口学习到的PC列表RPlist、非R接口学习到交换机的列表DSlist、非R接口学习到的PC列表DPlist,可W规整得到如下表格的数据信息,其中,所述设备、学习到的PC列表和交换机列表均WIP地址来表示:[0074][0075]所述第四装置14基于所述设备信息,确定二层域内设备间的上下级关系。[0076]具体地,所述第四装置14基于预设的上下级关系的判断方法和所述设备信息,确定二层域内设备间的上下级关系,其中,所述预设的上下级关系的判断方法包括:[0077]若第一设备与第二设备之间的关系满足a、b、c中任一种情况,且第一设备与第二设备之间的关系不满足d和e中的任一种情况,则确定第一设备是第二设备的上级,第二设备是第一设备的下级;若第一设备与第二设备之间的关系满足a、b、c中的任一种情况,且第一设备与第二设备之间的关系也满足d、e中的任一种情况,则确定第一设备与第二设备不在一个路径上;若第一设备与第二设备之间不满足a、b、c中的任一种情况,则确认第一设备与第二设备不在一个路径上。[0078]其中,所述a情况为第一设备的某个下联接口能学习到第二设备的情况;所述b情况为第一设备的某个接口学习到的IP终端与第二设备的下联IP终端相同,并且第一设备的非R接口学习到的PC的列表DPlist和学习到的交换机的列表DSlist的集合大于第二设备的非R接口学习到的PC的列表DPliSt和学习到的交换机的列表DSliSt的集合的情况;所述C情况为第二设备的上联接口能学习到的PC的列表与第一设备的某个下联接口学习到的PC列表没有交集,并且第二设备的上联接口能学习到的PC列表与第一设备的某个下联接口学习到的PC列表的集合大于整个二层域中的PC列表的情况;所述d情况为第一设备的上联接口能学习到第二设备的情况;所述e情况为第一设备的上联接口能学习到的PC列表与第二设备的下联接口学习到的PC列表之间无交集的情况。[0079]比如说,如果A设备的第一个下联接口能学习到B设备,并且A设备的上联接口学习到的PC列表与B设备的下联接口学习的PC列表之间无交集,同时A设备的上联接口不能学习至化设备,则确定A设备是B设备的上级,用1表示,B设备是A设备的下级,用2表示。再比如说,如果C设备的第二个下联接口能学习到B设备,并且C设备的上联接口也能学习到B设备,贝U确定C设备与的受备不在一个路径上,用0表示。还比如说,D设备的接口1学习到的IP终端与E设备的下联IP终端相同,D设备中未学习到边缘设备的非R接口学习到的PC的列表DPlist与交换机的列表DSlist的集合大于E设备中未学习到边缘设备的非R接口学习到的PC的列表DPlist与交换机的列表DSlist的集合,并且D设备的上联接口不能学习到E设备,同时D设备的上联接口学习到的PC列表与E设备的下联接口学习到的PC列表之间无交集,则确定D设备是E设备的上级,用1表示,E设备是的受备的下级,用2表示。[0080]所述第五装置15基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。[0081]具体地,所述第五装置15确定与其他所有设备之间的关系为2或者0的叶子设备;并从所述叶子设备开始,确定与所述叶子设备之间的关系为2的所有设备;然后,在所确定的与叶子设备之间的关系为2的所有设备中,确定一个与叶子设备关系为1,且与其他所有设备之间的关系为2或者0的第=设备;最后,若所述第=设备中的某一接口满足下列任一条件,则在所述接口与叶子设备中学习到边缘设备的接口之间建立一条链路:1.所述接口学习到的交换机包括所述叶子设备或者所述叶子设备的下联交换机;2.所述接口学习到的PC列表与叶子设备的下联接口学习到的PC列表之间有交集;3.所述接口学习到的PC列表与叶子设备中学习到边缘设备的接口学习到的PC列表之间无交集。[0082]再W第=设备为叶子设备,重复上述判断规则,并建立相应的链路关系,依次循环下去,直至将所有交换机的链路连接关系建立。[0083]其中,1表示第一设备是第二设备的上级;2表示第二设备是第一设备的下级;0是表示第一设备与第二设备不在一个路径上。[0084]比如说,图3是根据前述条件已判断出上下级关系的某一个二层域,则可W将所述二层域中设备间的上下级关系用如下二维表来表示:[0086]其中,-1表示的是不需要进行上下级关系的确定。[0087]那么在该二层域内设备间的链路判断规则如下:[0088]首先,找到叶子节点设备F;然后,从叶子节点设备F开始,找到与其关系为2的所有设备A、B、D;其次,在所找到的所有与叶子节点设备F关系为2的A、B、D设备中找到与叶子节点设备F关系为1,与其他所有设备关系为2或者0的设备D;最后,从设备D中找到一个接口U,如果该接口U学习到的交换机包括所述叶子节点设备F,或者接口U学习到的PC列表与叶子节点设备F的下联接口学习到的PC列表之间有交集,又或者接口U学习到的PC列表与叶子节点设备F中学习到边缘设备的接口学习到的PC列表之间无交集,贝帷接口U和叶子节点设备F中学习到边缘设备的接口之间建立一条链路。[0089]此后,再WD为叶子节点设备,首先,找到与叶子节点设备D关系为2的所有节点设备A、B;其次,在所找到的所有与叶子节点设备D关系为2的A、B设备中找到与叶子节点设备D关系为1,与其他所有设备关系为2或者0的设备B;最后,从设备B中找到一个接口V,如果该接口V学习到的交换机包括所述叶子节点设备D或者D的下联交换机,或者接口V学习到的PC列表与叶子节点设备D的下联接口学习到的PC列表之间有交集,又或者接口V学习到的PC列表与叶子节点设备D中学习到边缘设备的接口学习到的PC列表之间无交集,则在接口V和叶子节点设备D中学习到边缘设备的接口之间建立一条链路。[0090]之后再WB为叶子节点设备,依次类推下去,可W将所有交换机的直接连接关系和链路建立起来。[0091]与现有技术相比,本申请通过获取SNMP管理的设备的对应表的数据,其中,所述设备包括=层交换机、二层交换机;并根据所述对应表的数据,获取=层交换机和二层交换机的IP地址所对应的接口信息,W及确定SNMP管理的设备的边缘设备和根设备;然后,基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;进而,基于所述设备信息,确定二层域内设备间的上下级关系;最后,基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。本申请采用SNMP管理与二层网络设备链路计算算法的方法,可W精确地获取二层网络环境下的设备之间的链路情况,为维护网络安全带来便利。[0092]需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可W通过处理器执行W实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可W被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。[0093]另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可W调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。[0094]对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够W其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所设及的权利要求。此夕h显然"包括"一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可W由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。【主权项】1.一种二层网络链路计算方法,其中,该方法包括:获取SNMP管理的设备的对应表的数据,其中,所述设备包括三层交换机、二层交换机;根据所述对应表的数据,获取三层交换机和二层交换机的IP地址所对应的接口信息,以及确定SNMP管理的设备的边缘设备和根设备;基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;基于所述设备信息,确定二层域内设备间的上下级关系;基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。2.根据权利要求1所述的方法,其中,获取SNMP管理的设备的对应表的数据,包括:获取SNMP管理的三层交换机和二层交换机的FDB表的数据。3.根据权利要求2所述的方法,其中,根据所述对应表的数据,获取三层交换机和二层交换机的IP地址所对应的接口信息,以及确定SNMP管理的设备的根设备和边缘设备,包括:根据所述对应表的数据,获取三层交换机和二层交换机的IP地址所对应的接口索引、接口描述、接口类型、接口学习到的MAC、MAC对应的IP地址以及IP地址对应的设备类型;所述SNMP管理的设备包括路由器,根据所述对应表的数据,若所述设备为路由器,则确定所述路由器为边缘设备,并且确定所述路由器下联的第一个设备为根设备;若所述设备为开启路由功能且具有多个IP地址的三层交换机,则确定所述三层交换机为边缘设备和根设备;若基于前述条件无法判断出根设备,则以网络中FDB表最多且学习到路由器的设备为根设备;若二层网络中没有路由器和三层交换机,则以roB表最多的二层交换机为边缘设备和根设备。4.根据权利要求3所述的方法,其中,基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息,包括:将三层交换机和二层交换机的每一个接口确定为一个二层域,并根据所述二层域中的边缘设备、根设备确定所述二层域中的所有设备信息。5.根据权利要求4所述的方法,其中,在基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息之后,还包括:获取所述二层域中每个设备中学习到边缘设备的R接口学习到的交换机的列表RSlist、R接口学习到的PC列表RPlist、非R接口学习到交换机的列表DSlist、非R接口学习到的PC列表DPIist。6.根据权利要求5所述的方法,其中,基于所述设备信息,确定二层域内设备间的上下级关系,包括:基于预设的上下级关系的判断方法和所述设备信息,确定二层域内设备间的上下级关系,其中,所述预设的上下级关系的判断方法包括:若第一设备与第二设备之间的关系满足a、b、c中任一种情况,且第一设备与第二设备之间的关系不满足d和e中的任一种情况,则确定第一设备是第二设备的上级,第二设备是第一设备的下级;若第一设备与第二设备之间的关系满足a、b、c中的任一种情况,且第一设备与第二设备之间的关系也满足d、e中的任一种情况,则确定第一设备与第二设备不在一个路径上;若第一设备与第二设备之间不满足a、b、c中的任一种情况,则确认第一设备与第二设备不在一个路径上;其中,所述a情况为第一设备的某个下联接口能学习到第二设备的情况;所述b情况为第一设备的某个接口学习到的IP终端与第二设备的下联IP终端相同,并且第一设备的非R接口学习到的PC的列表DPlist和学习到的交换机的列表DSlist的集合大于第二设备的非R接口学习到的PC的列表DPlist和学习到的交换机的列表DSlist的集合的情况;所述c情况为第二设备的上联接口能学习到的PC的列表与第一设备的某个下联接口学习到的PC列表没有交集,并且第二设备的上联接口能学习到的PC列表与第一设备的某个下联接口学习到的PC列表的集合大于整个二层域中的PC列表的情况;所述d情况为第一设备的上联接口能学习到第二设备的情况;所述e情况为第一设备的上联接口能学习到的PC列表与第二设备的下联接口学习到的PC列表之间无交集的情况。7.根据权利要求6所述的方法,其中,基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系,包括:确定与其他所有设备之间的关系为2或者0的叶子设备;从所述叶子设备开始,确定与所述叶子设备之间的关系为2的所有设备;在所确定的与叶子设备之间的关系为2的所有设备中,确定一个与叶子设备关系为1,且与其他所有设备之间的关系为2或者0的第三设备;若所述第三设备中的某一接口满足下列任一条件,则在所述口与叶子设备中学习到边缘设备的接口之间建立一条链路:所说接口学习到的交换机包括所述叶子设备或者所述叶子设备的下联交换机;所述接口学习到的PC列表与叶子设备下联接口学习到的PC列表之间有交集;所述接口学习到的PC列表与叶子设备中学习到边缘设备的接口学习到的PC列表之间无交集;再以第三设备为叶子,重复上述判断规则,并建立相应的链路关系,依次循环下去,直至将所有交换机的链路连接关系建立;其中,1表示第一设备是第二设备的上级;2表示第二设备是第一设备的下级;0是表示第一设备与第二设备不在一个路径上。8.-种二层网络链路计算设备,其中,该计算设备包括:第一装置,用于获取SNMP管理的设备的对应表的数据,其中,所述设备包括三层交换机、二层交换机;第二装置,用于根据所述对应表的数据,获取三层交换机和二层交换机的IP地址所对应的接口信息,以及确定SNMP管理的设备的边缘设备和根设备;第三装置,用于基于所述接口信息确定二层域,并根据所述二层域中的边缘设备、根设备获取所述二层域中的所有设备信息;第四装置,用于基于所述设备信息,确定二层域内设备间的上下级关系;第五装置,用于基于所述设备间的上下级关系,计算二层域内设备间的链路连接关系。9.根据权利要求8所述的计算设备,其中,所述第一装置,获取S匪P管理的三层交换机和二层交换机的FDB表的数据。10.根据权利要求9所述的计算设备,其中,所述第二装置,根据所述对应表的数据,获取三层交换机和二层交换机的IP地址所对应的接口索引、接口描述、接口类型、接口学习到的MAC、MAC对应的IP地址以及IP地址对应的设备类型;所述SNMP管理的设备包括路由器,根据所述对应表的数据,若所述设备为路由器,则确定所述路由器为边缘设备,并且确定所述路由器下联的第一个设备为根设备;若所述设备为开启路由功能且具有多个IP地址的三层交换机,则确定所述三层交换机为边缘设备和根设备;若基于前述条件无法判断出根设备,则以网络中FDB表最多且学习到路由器的设备为根设备;若二层网络中没有路由器和三层交换机,则以roB表最多的二层交换机为边缘设备和根设备。11.根据权利要求10所述的计算设备,其中,所述第三装置,将三层交换机和二层交换机的每一个接口确定为一个二层域,并根据所述二层域中的边缘设备、根设备确定所述二层域中的所有设备信息。12.根据权利要求11所述的方法,其中,所述第三装置,还获取所述二层域中每个设备中学习到边缘设备的R接口学习到的交换机的列表RSIist、R接口学习到的PC列表RP1ist、非R接口学习到交换机的列表DSlist、非R接口学习到的PC列表DPlist。13.根据权利要求12所述的计算设备,其中,所述第四装置,基于预设的上下级关系的判断方法和所述设备信息,确定二层域内设备间的上下级关系,其中,所述预设的上下级关系的判断方法包括:若第一设备与第二设备之间的关系满足a、b、c中任一种情况,且第一设备与第二设备之间的关系不满足d和e中的任一种情况,则确定第一设备是第二设备的上级,第二设备是第一设备的下级;若第一设备与第二设备之间的关系满足a、b、c中的任一种情况,且第一设备与第二设备之间的关系也满足d、e中的任一种情况,则确定第一设备与第二设备不在一个路径上;若第一设备与第二设备之间不满足a、b、c中的任一种情况,则确认第一设备与第二设备不在一个路径上;其中,所述a情况为第一设备的某个下联接口能学习到第二设备的情况;所述b情况为第一设备的某个接口学习到的IP终端与第二设备的下联IP终端相同,并且第一设备的非R接口学习到的PC的列表DPlist和学习到的交换机的列表DSlist的集合大于第二设备的非R接口学习到的PC的列表DPlist和学习到的交换机的列表DSlist的集合的情况;所述c情况为第二设备的上联接口能学习到的PC的列表与第一设备的某个下联接口学习到的PC列表没有交集,并且第二设备的上联接口能学习到的PC列表与第一设备的某个下联接口学习到的PC列表的集合大于整个二层域中的PC列表的情况;所述d情况为第一设备的上联接口能学习到第二设备的情况;所述e情况为第一设备的上联接口能学习到的PC列表与第二设备的下联接口学习到的PC列表之间无交集的情况。14.根据权利要求13所述的计算设备,其中,所述第五装置,确定与其他所有设备之间的关系为2或者0的叶子设备;从所述叶子设备开始,确定与所述叶子设备之间的关系为2的所有设备;在所确定的与叶子设备之间的关系为2的所有设备中,确定一个与叶子设备关系为1,且与其他所有设备之间的关系为2或者0的第三设备;若所述第三设备中的某一接口满足下列任一条件,则在所述口与叶子设备中学习到边缘设备的接口之间建立一条链路:所说接口学习到的交换机包括所述叶子设备或者所述叶子设备的下联交换机;所述接口学习到的PC列表与叶子设备下联接口学习到的PC列表之间有交集;所述接口学习到的PC列表与叶子设备中学习到边缘设备的接口学习到的PC列表之间无交集;再以第三设备为叶子,重复上述判断规则,并建立相应的链路关系,依次循环下去,直至将所有交换机的链路连接关系建立;其中,1表示第一设备是第二设备的上级;2表示第二设备是第一设备的下级;0是表示第一设备与第二设备不在一个路径上。【文档编号】H04L12/24GK105978808SQ201610296431【公开日】2016年9月28日【申请日】2016年5月6日【发明人】李梦雅,许景栋,蔡明伟【申请人】上海上讯信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1