路由环路确定方法及设备的制造方法_2

文档序号:9870056阅读:来源:国知局
定方法的方法流程图;
[0043] 图IB是本发明一个实施例提供的一种路由环路的结构示意图;
[0044] 图2是本发明一个实施例提供的转发设备的结构框图;
[0045] 图3是本发明再一实施例提供的转发设备的结构框图。
【具体实施方式】
[0046] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方 式作进一步地详细描述。
[0047] 请参考图1A,其示出了本发明一个实施例提供的路由环路确定方法的方法流程 图,该路由环路确定方法可W应用于=层网络中的转发设备中。该路由环路确定方法,包 括:
[0048] 步骤101,=层网络中的转发设备获取第一报文,第一报文的生存时间(英文: time to live;简称:TTL)值被转发设备减为0。
[0049] 其中,转发设备是=层网络中用于转发报文的设备,可W是路由器、=层交换机 等。
[0050] TTL是报文在网络中的生存周期。在报文被发送方发送到S层网络中之后,S层 网络中的转发设备会根据TTL值处理报文。具体地,在转发设备接收到报文后,转发设备将 该报文的TTL值减1,若得到的TTL值大于0,则转发设备转发该报文;若得到的TTL值等于 0,转发设备丢弃该报文。其中,TTL值可W从报文中的Time to Live字段中读取到。
[0051] 本实施例中,在转发设备接收到第一报文时,第一报文的TTL值为1,转发设备将 该TTL值减1,使得第一报文的TTL值为0。此时,第一报文会被转发设备丢弃,而不能到达 目的主机,运可能是转发设备中的路由表出错造成的,因此,为了确定转发设备中的路由表 是否出错,转发设备可W第一报文进行分析。
[0052] 具体地,=层网络中的转发设备获取第一报文,包括:
[0053] 1)转发设备建立访问控制列表(英文:access control list ;简称:A化),该ACL 的TTL匹配项的值为0 ;
[0054] 2)转发设备用该A化匹配接收到的所有报文W获取TTL值为0的第一报文。 阳化5] 步骤102,转发设备获取与第一报文的目的IP地址相同的第二报文。
[0056] 当第一报文的TTL值被转发设备减为0时,可能是转发设备中的路由表出错,形成 路由环路,也可能是TTL的初始值设置错误,因此,为了确定是否存在路由环路,转发设备 获取与第一报文的目的IP地址相同但TTL大于0的第二报文,W分析出在转发设备与目的 主机之间是否存在路由环路。其中,路由环路是指当网络拓扑结构发生改变,而相应的路由 表却未能得到更新,导致路由表中的路由条目之间产生矛盾,使得报文在网络中固定的几 个转发设备中循环传输的现象。
[0057] 其中,获取与第一报文的目的IP地址相同的第二报文,包括: 阳化引 1)转发设备建立第一 A化,第一 A化的目的地址匹配项的值为第一报文的目的IP 地址;
[0059] 2)转发设备用第一 A化匹配接收到的所有报文W获取与第一报文的目的IP地址 相同的第二报文。
[0060] 在建立完第一 A化之后,转发设备在每次接收到报文时,用第一 A化检测该报文的 目的IP地址是否等于目的地址匹配项的值,若转发设备检测出目的IP地址等于目的地址 匹配项的值,则确定该报文为第二报文。其中,目的IP地址可W从报文中的Destination AcMress字段中读取到。
[0061] 步骤103,转发设备记录第二报文的特征。
[0062] 第二报文的特征至少包括第二报文的源IP地址、目的IP地址、序列号和TTL值。 第二报文的特征还可W包括头部校验和或者段偏移量。其中,源IP地址可W从报文中 的Source AcMress字段中读取到。序列号可W从报文中的Identification字段中读取 到。头部校验可W从报文中的化ader化ecksum字段中读取到。段偏移量可W从报文中的 Rragment Offset字段中读取到。
[0063] 序列号用于指示一个发送主机和一个目的主机之间发送的报文的序号,发送主机 向不同的目的主机发送的报文的序列号可能相同,不同的发送主机向同一目的主机发送的 报文的序列号也可能相同,因此,为了唯一地标识第二报文,除了需要记录第二报文的序列 号,还需要记录发送主机的源IP地址和目的主机的目的IP地址。 W64] 步骤104,转发设备转发第二报文。 W65] 在将第二报文的TTL值减1得到的TTL值不为0时,转发设备按照目的IP地址和 路由表转发第二报文。
[0066] 步骤105,转发设备根据第二报文的特征获取第=报文,第=报文的特征和第二报 文的特征相同,确定存在路由环路。
[0067] 第二报文被转发设备转发后,转发设备尝试获取特征和第二报文的特征相同的报 文,即第=报文。为了确定第=报文和第二报文的特征是否相同,可W提取第=报文的若干 特征,若对第S报文提取的运些特征符合对第二报文记录的特征,则说明转发设备再次获 取到了同一报文。例如,可W用源IP地址、目的IP地址和序列号的组合作为报文的特征, 也可W用源IP地址、目的IP地址、序列号和头部校验和作为报文的特征,还可W用源IP地 址、目的IP地址、序列号和段偏移量作为报文的特征。
[0068] 具体地,根据所述第二报文的特征获取第=报文,包括:
[0069] 1)转发设备获取第一 IP地址、第二IP地址和报文序列号,第一 IP地址为第二报 文的源IP地址,第二IP地址为第二报文的目的IP地址,报文序列号为第二报文的序列号;
[0070] 。转发设备建立第二A化,第二A化的源地址匹配项的值为第一 IP地址,第二A化 的目的地址匹配项的值为第二IP地址,第二ACL的序列号匹配项的值为报文序列号;
[0071] 3)转发设备用第二A化匹配接收到的所有报文W获取与第二报文的源IP地址,目 的IP地址W及序列号都相同的第S报文。
[0072] 在建立完第二A化之后,转发设备在每次接收到报文时,用第二A化检测该报文的 源IP地址是否等于源地址匹配项的值,目的IP地址是否等于目的地址匹配项的值,序列号 是否等于报文序列号匹配项的值;若转发设备检测出源IP地址、目的IP地址和序列号分别 等于各自的匹配项的值,则确定该报文为第S报文。
[0073] -个报文通常不会两次经过同一个转发设备,因此,在转发设备获取到第=报文 且第=报文与第二报文的特征相同时,基本可W确定存在路由环路。当然,也不能完全排除 一个报文两次经过同一个转发设备且不存在路由环路的情况,因此,为了进一步确定是否 存在路由环路,还可W多次尝试获取与第二报文特征相同的报文来进行分析。
[0074] 具体地,转发设备根据第二报文的特征获取第=报文,第=报文的特征和第二报 文的特征相同,确定存在路由环路,包括:
[0075] 1)转发设备根据第二报文的特征尝试获取第N报文,第N报文的特征和第二报文 的特征相同,N为大于3的正整数;
[0076] 2)若转发设备获取到第N报文,则计算所有TTL差值,所有TTL差值包括第S报文 与第二报文之间的TTL差值,W及第N报文与第N-I报文之间的TTL差值;
[0077] 3)转发设备检测计算得到的所有TTL差值中是否存在相等的TTL差值; 阳078] 4)若检测出所有TTL差值中存在相等的TTL差值,则转发设备确定存在路由环路。
[0079] 第N-I报文被转发设备转发后,转发设备尝试获取特征和第二报文的特征相同的 报文,即第N报文,N为大于3的正整数。比如,当N为4时,转发设备转发第=报文,并尝 试获取特征和第二报文的特征相同的第四报文;当N为5时,转发设备转发第四报文,并尝 试获取特征和第二报文的特征相同的第五报文。
[0080] 当仅存在单个路由环路时,由于路由环路中的转发设备的个数是固定的,因此,第 S报文和第二报文之间的TTL差值与第N报文和第N-I报文之间的TTL差值相等。比如, 转发设备获取到第二报文的TTL值为12,第=报文的TTL值为8,第四报文的TTL值为4,第 五报文的TTL值为0 ;对第二报文和第S报文进行计算,得到的TTL差值为4,对第S报文和 第四报文进行计算,得到TTL差值为4,对第四报文和第五报文进行计算,得到TTL差值为 4 ;由于所有的TTL差值均为4,转发设备确定存在大小为4的路由环路。
[0081] 当存在嵌套的路由环路时,由于报文会在范围最小的路由环路中循环传输且转发 设备能够再次获取到该报文经至少一个其它转发设备转发之后的报文,则转发设备确定其 在范围最小的路由环路中。由于范围最小的路由环路中转发设备的个数是固定的,因此,第 N报文和第N-I报文之间的所有TTL差值中存在相等的TTL差值。转发设备可W根据TTL 差值来进一步确定转发设备中是否存在路由环路,W提高检测路由环路的准确性。
[0082] 可选的,确定存在路由环路
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1