traceroute 逐跳探测在大规模目标下耗时过长,FlashRoute 融合 Doubletree 去重与 Yarrp 无状态发包,实现比主流工具快 3 倍的拓扑快照采集。
Doubletree:反向探测消除冗余
Doubletree 利用从观测点辐射到多目标的路由呈树状分布特性,改为从目标向观测点反向探测。当某条路径遇到已被其他目标发现的汇聚点即可停止,避免重复探测汇聚点到观测点的公共段。CAIDA 的 Scamper 集成该算法,但仍需存储探测包、匹配响应并处理超时重传,探测速率受限于状态维护开销。
Yarrp:无状态设计实现高速发包
Yarrp 将 TTL 与时间戳编码进探测包头,ICMP 响应会引用原包头,接收端直接从响应中提取两字段即可重建路径,无需保存探测状态。它以最大速率向所有目标的所有 TTL(1-32)发包,随后离线重组。为避免加载目标列表,Yarrp 使用 32 位 RC5 分组密码即时生成所有 /24 前缀与 8 位 TTL 的随机排列组合,2016 年 IMC 大会已展示该设计。
FlashRoute:融合两大优势
FlashRoute 将 Doubletree 的去重逻辑与 Yarrp 的无状态发包结合,在保持高速发包的同时剔除公共路径重复探测。原文指出其扫描速度较其他流行 traceroute 工具提升 3 倍,适合从单一观测点快速生成大规模路由拓扑快照,解决了顺序调用标准 traceroute 耗时过长的工程痛点。
运维与网络工程师可用 FlashRoute 在分钟级完成原本需数小时的全网拓扑采集,显著降低路由变更监测、故障定位与容量规划的数据获取成本。
原文: APNIC Blog(2020-11-13)|编译自 APNIC Blog,事实以原文为准。
来源:APNIC Blog