一种快速别名的解析方法与流程

文档序号:13262677阅读:486来源:国知局
技术领域本发明属于网络测量技术领域,特别是一种能在大规模tracert路径中,对别名作快速解析的别名解析方法。

背景技术:
随着因特网规模的飞速发展,网络结构也发生了巨大的变化。因特网已经成为人们日常生活不可缺少的一部分,为了更好的使用、管理和控制网络,必须要对网络的拓扑结构有充分的了解。由于网络的异构性,要获得完整的网络拓扑结构比较困难。目前对于网络拓扑发现技术的研究比较多,其中以基于traceroute方式的研究最多,然而基于traceroute方式只能发现IP级的网络拓扑,也称为逻辑拓扑,即从一台路由器入口的IP地址到下一台路由器入口的IP地址的连续序列,这种拓扑并未反映出路由器之间的真实连接情况。1996年,JackRickard首先提出了利用traceroute来反映网络拓扑结构的思想。此后,对IP级网络拓扑的研究越来越多,也日趋成熟。Skitter是CAIDA的基于traceroute的因特网拓扑发现项目,该项目从1998年开始研究,采用了分布式测量的方式,在全球共设置了近20个测量源,测量目标节点近100万个。与IP级网络拓扑相对的是路由器级网络拓扑,它反映了路由器之间的连接关系。这种拓扑更为网络管理、使用及维护人员所熟悉。在IP级网络拓扑的基础上,通过找出属于同一台路由器的IP地址集合,就能够将IP级网络拓扑聚合成路由器级网络拓扑,所谓别名解析(aliasresolution)则是这样一种找出属于同一台路由器的IP地址集合的技术。当前别名解析解析可分为两类:基于测量的方法和基于分析的方法。1.基于测量的方法基于测量的方法分为基于返回IP地址和返回报文ID号的方法。基于返回IP方法的基本原理依据RFC1122规范,当路由器向测量源节点返回“端口不可达”报文时,通常以离测量源节点最近的端口IP地址作为返回报文的源地址。如图5所示,测量源地址S向测量目的地址IPA发送一个高端口的UDP报文,路由器R收到UDP报文后向测量源地址S发送一个“端口不可达”报文,“端口不可达”报文的源地址为路由器R中距离S较近的端口地址IPB。通过这种方式测量时由测量源直接向可能是别名的两个IP地址发送两个具有较高UDP端口号、TTL为255的UDP报文,根据收到的“端口不可达”ICMP报文中的源地址来判断这两个IP地址是否属于同一个路由器,即是否是别名。基于返回报文的源地址方式别名解析的优点是不会产生误判,可以作为判断别名的充分条件,同时也可能会发现路由器的新接口,缺点是当IP地址数量较多时效率较低。基于返回报文ID号方法,在IP报文的首部中有2个字节长度字段,该字段用于标示IP数据报,称为IP-ID。路由器中有一个递增的计数器,用于在路由器发送报文时填入报文的IP-ID号,每产生一个数据报,计数器就加一。路由器连续产生的数据报文的IP-ID号也是连续的。基于返回报文ID号的方法的基本原理依据是不同路由器返回报文的ID号连续的概率几乎为零。测量时由测量源连续向两个IP地址发送测量报文,根据返回报文的ID号来判断两个IP地址是否属于同一个路由器,即是否为别名。图5为采用该种方式的测量原理。2.基于分析的方法。通过判断两个IP地址的DNS名称来判断两个IP地址是否属于同一个路由器,图7所示,即是否是别名,例如,sl-bb21-lon-14-0.sprintlink.net和sl-bb21-lon-8-0.sprintlink.net所对应的IP地址是别名,属于同一台伦敦的主干路由器,14-0和8-0可能是路由器上的端口号。对于不同的IP地址可以通过反向DNS解析的方式获得,由于DNS服务器都是公开的,所以采用DNS的方式实现较简单,Spring设计了一个基于DNS名称判断别名关系的工具undns。这种方式的缺点是误判和漏判的概率较大并且当IP地址的DNS名称较少时该种方法不起作用。基于DNS解析的缺点是误判和漏判的概率较大并且当IP地址的DNS名称较少时该种方法不起作用,当前别名解析中使用最多的是基于返回报文源地址和返回报文ID号的方式,由于别名解析技术意在判断两个或多个IP地址是否属于同一台路由器的地址集合,因此任何两个IP地址似乎都有可能需要进行别名解析。设IP地址的数量为N,如果要对任意两个IP地址解析,别名解析的次数为N×(N-1)/2,为O(N2)级。况且,每进行一次别名解析,为了获得准确结果都需要测量数次,而实际需要判断的IP地址数达到几万之众的场合是非常普遍的。盲目的别名解析所引发的测量流量将严重侵扰网络的正常运行。综上所述,现有技术存在的问题是:在大规模tracert路径中,无法对别名作快速解析。

技术实现要素:
本发明的目的在于提供一种快速别名的解析方法,能在大规模tracert路径中,对别名作快速的解析。实现本发明目的技术解决方案为:一种快速别名是解析方法,包括如下步骤:10)原始数据获取:从网络数据分析联合组织网站和互联网名称与数字地址分配机构获取相关的原始数据文件;20)原始数据处理:解析原始数据文件中的数据,并将解析数据存入数据库的顶点表、节点边和边表;30)别名解析:对解析数据作别名测试,获取别名关系的节点。本发明与现有技术相比,其显著优点:1、本发明通过获取多种原始数据,并对原始数据作预处理,显著减少别名解析的数量,然后进行别名解析,提高了处理的效率;2、在数据处理中通过别名的特性和IP地址规划信息,通过对数据进行归类,排除不可能存在别名关系的节点,有效减少了别名解析的数量;3、本发明综合采用了分析和测量相结合的方式,兼具现有两种方法的优点。可用于路由器级的拓扑发现。下面结合附图和具体实施方式,对本发明作进一步详细描述。附图说明图1是本发明别名是解析方法流程图。图2是图1中获取原始数据步骤流程图。图3是图1中原始数据处理步骤流程图。图4是图1中别名解析步骤流程图。图5是基于返回IP地址的别名解析原理图。图6是基于返回报文ID号的别名解析原理。图7是基于图论的别名解析原理。内容具体实施方式如图1所示,本发明的一种快速别名解析方法,包括如下步骤:10)原始数据获取:从网络数据分析联合组织网站和互联网名称与数字地址分配机构获取相关的原始数据文件;目前很多国际组织已有较多测量数据,因此可以直接获取,无需自己测量。如图2所示,所述获取原始数据(10)步骤包括:11)建立数据表:建立包括顶点表、节点表、边表和别名表的数据库表;顶点表包含字段为IP和路径号,IP和路径号为主键;节点表包含字段为IP和域名;边表包含字段为num,,sour,local,next,des,rttl,其中num表示路径号,sour表示测量源,local表示本跳IP,next表示下一跳IP,des表示目的节点,rttl表示距离目的节点des的跳数;别名表包含字段为IP地址和别名IP。12)获取原始数据文件:从网络数据分析联合组织网站获取指定区域的tracert原始数据文件;网络数据分析联合组织网站有亚太地区、北美地区、欧洲地区等多个区域的tracert测量数据集,可以直接获取亚太地区的测量数据集。13)获取地址分配文件:从互联网名称与数字地址分配机构和下属机构获取指定区域的IP地址分配文件。从互联网名称与数字地址分配机构(InternetCorporationforAssignedNamesandNumbers)下属5个区域性IP地址分配机构ARIN、RIPENCC、APNIC、LACNIC和AFRINIC获取有关国家或地区的最新地址分配文件,例如可以获取中国的最新地址分配文件。20)原始数据处理:解析原始数据文件中的数据,并将解析数据存入数据库的顶点表、节点边和边表;处理原始数据的目的是减少别名测试的数量。如图3所示,所述处理原始数据(20)步骤包括:21)生成节点表和顶点表数据:从原始数据文件中读取原始数据,解析tracert路径,把路径起始点存放到顶点表中,把路径中的节点存放在节点表;在解析路径时给每条路径指定一个路径号,把起始节点和路径号存入顶点表中,把路径中的节点和节点名称存入节点表中,无节点名称的则设为空。22)生成边表数据:解析tracert路径,把路径中的链路存入边表;解析路径时要记录路径中链路的路径号,路径的起始节点,本链路的起始节点,本链路的终止节点,路径的终止节点,本链路距离终点的跳数,边表中数据主要用于别名解析前的数据归类处理。23)划分IP地址范围:读取IP地址分配文件,并根据ISP对IP地址范围进行划分;划分IP地址范围,读取IP地址分配文件,并根据ISP对IP地址范围进行划分,IP地址分配文件中有对不ISP的记录,因此可以从文件中解析出ISP的IP地址范围。24)节点归类:读取顶点表、节点表和边表,把可能具有别名关系的节点进行归类。归类时根据IP地址范围,把节点表的节点进行分类。30)别名解析:对解析数据作别名测试,获取别名关系的节点。别名解析是根据原始数据处理的结果,把别名关系的节点存入别名表。如图4所示,所述别名解析(30)步骤包括:31)域名解析:读取节点表,把具有相同域名的节点放入别名表;在节点表中选择名称不为空的节点,以节点名称作哈西主键,通过哈西算法找出具有相同名称的节点,并把节点存入别名表,如图5所示。在32)后继节点解析:读取边表,把具有相同后继的节点放入别名表;以边表中每条记录的下一跳IP作为主键,通过哈西算法找出具有相同后继节点的记录,把记录中本节点IP存入别名表,如图7所示。33)测试解析:根据边表,对可能具有别名关系的节点,通过基于返回报文ID的方式进行测试,把别名关系的节点放入别名表。根据边表对可能具有别名关系的节点通过基于返回报文ID的方式进行测试,把别名关系的节点放入别名表,读取边表的所有记录对象,根据IP地址规划对所有记录进行聚类,在每一个聚类内部采用两两测试的方法,通过图6所示的方法进行测试,把具有别名关系的节点存入别名表。本发明通过获取多种原始数据,并对原始数据作预处理,显著减少别名解析的数量,然后进行别名解析,提高了处理的效率;本发明在数据处理中通过别名的特性和IP地址规划信息,通过对数据进行归类,排除不可能存在别名关系的节点,有效减少了别名解析的数量;本发明综合采用了分析和测量相结合的方式,利用了两种方法的优点。因此能在大规模tracert路径中,对别名作快速的解析。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1