前言 懒癌患者来更新第二篇。在 上一篇 的 Agent 基本功能实现了以后,就要开始考虑实现 MTR 功能,要做 MTR 就不得不先实现 traceroute 功能。虽然 traceroute 原理很简单,但是如果要考虑 高效实现 会有不小的挑战。 细节 关于 traceroute 和 MTR 的原理细节,相信读者都已经了解,本文将直接从实现上遇到的具体问题开始聊。 具体来讲,我们会遇到几个问题,发什么包?怎么读到回包?回包读得效率太低怎么办? 发什么包做为探针? 在 Windows 上…
前言 懒癌患者来更新第二篇。在 上一篇 的 Agent 基本功能实现了以后,就要开始考虑实现 MTR 功能,要做 MTR 就不得不先实现 traceroute 功能。虽然 traceroute 原理很简单,但是如果要考虑 高效实现 会有不小的挑战。 细节 关于 traceroute 和 MTR 的原理细节,相信读者都已经了解,本文将直接从实现上遇到的具体问题开始聊。 具体来讲,我们会遇到几个问题,发什么包?怎么读到回包?回包读得效率太低怎么办? 发什么包做为探针? 在 Windows 上…