WO2012075813A1

Method for detecting path maximum transmission unit and router

Abstract

A method for detecting path maximum transmission unit (PMTU), the method comprises: determining a detection space according to the number of times cited of an empirical value in an empirical reference table; and determining the PMTU value according to the detection space. Also disclosed is a router thereof. The present invention improves the precision in locating empirical reference values, reduces the iteration steps for approaching the optimal PMTU, thus achieving the effect of fast convergence.

WO2012075813A1, drawing sheet 1
Sheet 1 of 3

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

10 claims: 2 independent, 8 dependent

  1. 1
    权 利 要 求 书 1、 一种实现路径最大传输单元(PMTU )探测的方法, 所述方法包括: 根据经验参考表中经验参考值的引用次数确定探测空间; 以及 根据所述探测空间确定 PMTU值。
  2. 2
    2、 根据权利要求 1所述的实现路径最大传输单元探测的方法, 其中, 所述根据经验参考表中经验参考值的引用次数确定探测空间包括: 在经验参考表中选择引用计数最大的经验参考值作为 PMTU初始值, 并 以所述 PMTU初始值作为 4艮文长度发送 4艮文; 以及 若报文发送成功, 则递增选择引用计数最大的经验参考值发送报文, 直 至报文发送失败; 若报文发送失败, 则递减选择引用计数最大的经验参考值 发送报文, 直至报文发送成功; 所述根据所述探测空间确定 PMTU值包括: 选择所述探测空间中引用计数最大的经验参考值为所述 PMTU值。
  3. 3
    3、 根据权利要求 2所述的实现路径最大传输单元探测的方法, 其中, 所 述在经验参考表中选择引用计数最大的经验参考值作为 PMTU初始值, 并以 所述 PMTU初始值作为报文长度发送报文包括: 从经验参考表中选择经验参考值 MO, Ml , ... , Mn构成经验参考值数组, 对所述经验参考值进行排序, 且初始化临界值 Min=M0, Max=Mn;从所述经 验参考值数组中选择引用计数最大的经验参考值 Mi作为 PMTU初始值, 以 所述初始 PMTU值作为报文长度上限封装报文, 并发送封装后的报文; 所述若报文发送成功,则递增选择引用计数最大的经验参考值发送报文, 直至报文发送失败; 若报文发送失败, 则递减选择引用计数最大的经验参考 值发送报文, 直至报文发送成功包括: 若报文发送失败, 且收到的来自网关的因特网控制消息协议(ICMP )报 文中携带的所述网关的下一跳的最大传输单元(MTU )值为 Mu, 则寻找比 Mu大的经验参考值中的最小经验参考值 Mj作为新的 Max, 并在 [MO, Mj] 之间选择一个弓 I用计数最大的经验参考值 Mi作为新的 PMTU值; 若报文发送失败, 且收到的来自网关的 ICMP报文中未携带所述网关的 下一跳的 MTU值 , 则直接赋值 Max=Mi , 并在 [MO , Mi]之间选择一个弓 |用 计数最大的经验参考值 Mi作为新的 PMTU值; 若报文发送成功, 则在 [Mi, Mn] 之间选择一个引用计数最大的经验参 考值作为 PMTU值, 且赋值 Min=Mi;以及 选择新的 PMTU值后, 再次发送艮文, 再次更改 Min和 MAX的值, 直 至两者在经验参考值数组中是相邻的两个值为止。
  4. 4
    4、 根据权利要求 3所述的实现路径最大传输单元探测的方法, 其中, 在 所述根据所述探测空间确定 PMTU值之后, 所述方法还包括: 如果所述 PMTU值是经验参考表中的经验参考值, 则所述经验参考值的 引用计数累加一, 否则, 将该 PMTU值加入到所述经验参考表中。
  5. 5
    5、 根据权利要求 3所述的实现路径最大传输单元探测的方法, 其中, 所 述方法还包括: 在选择一个引用计数最大的经验参考值时, 如果所选择的区间的经验参 考值的引用计数都相同, 则选择最大的经验参考值作为 PMTU值。
  6. 6
    6、 一种路由器, 所述路由器包括: 空间确定模块, 其设置为: 根据经验参考表中经验参考值的引用次数确 定探测空间; 以及 路径最大传输单元(PMTU )确定模块, 其设置为: 根据所述探测空间 确定 PMTU值。
  7. 7
    7、 根据权利要求 6所述的路由器, 其中, 所述空间确定模块包括: 初始确定单元, 设置为: 在经验参考表中选择引用计数最大的经验参考 值作为 PMTU初始值, 并以所述 PMTU初始值作为 4艮文长度发送 4艮文; 以及 迭代确定单元, 设置为: 若报文发送成功, 则递增选择引用计数最大的 经验参考值发送报文, 直至报文发送失败; 若报文发送失败, 则递减选择引 用计数最大的经验参考值发送报文, 直至报文发送成功; 所述路径最大传输单元(PMTU )确定模块还设置为: 选择所述探测空 间中引用计数最大的经验参考值为所述 PMTU值。
  8. 8
    8、 根据权利要求 6所述的路由器, 其中, 所述初始确定单元还设置为: 从经验参考表中选择经验参考值 M0 , Ml , ..· , Mn构成经验参考值数组, 对所述经验参考值进行排序, 且初始化 临界值 Min=M0, Max=Mn;从所述经验参考值数组中选择引用计数最大的经 验参考值 Mi作为 PMTU初始值, 以所述 PMTU初始值作为报文长度上限封 装报文, 并发送封装后的报文; 所述迭代确定单元还设置为: 若报文发送失败, 且收到的来自网关的因 特网控制消息协议(ICMP )报文中携带的所述网关的下一跳的最大传输单元 ( MTU )值为 Mu, 则寻找比 Mu大的经验参考值中的最小经验参考值 Mj作 为新的 Max, 并在 [MO, Mj]之间选择一个引用计数最大的经验参考值 Mi作 为新的 PMTU值; 若报文发送失败, 且收到的来自网关的 ICMP报文中未携 带所述网关的下一跳的 MTU值, 则直接赋值 Max=Mi, 并在 [MO, Mi]之间 选择一个引用计数最大的经验参考值 Mi作为新的 PMTU值; 若报文发送成 功, 则在 [Mi, Mn] 之间选择一个引用计数最大的经验参考值作为 PMTU值, 且赋值 Min=Mi;以及选择新的 PMTU值后, 再次发送报文, 再次更改 Min 和 MAX的值, 直至两者在经验参考值数组中是相邻的两个值为止。
  9. 9
    9、 根据权利要求 8所述的路由器, 其中, 所述路由器还包括: 更新模块, 设置为: 在所述根据所述探测空间确定 PMTU值之后, 如果 所述 PMTU值是经验参考表中的经验参考值, 则所述经验参考值的引用计数 累加一, 否则, 将该 PMTU值加入到所述经验参考表中。
  10. 10
    10、 根据权利要求 8所述的路由器, 其中, 所述迭代确定单元还设置为:在选择一个引用计数最大的经验参考值时, 如果所选择的区间的经验参考值的引用计数都相同, 则选择最大的经验参考 值作为 PMTU值。
Independent claims10