我在指向我们在纽约拥有的服务器的 url 上运行了跟踪路由。我在佛罗里达州中部。Traceroute 显示请求被定向到佛罗里达州西部,然后是佛罗里达州南部,最后被定向到北到弗吉尼亚州,然后是纽约。我认为边缘路由器可以发现更多的直接路由。什么会导致请求不从一开始就希望向北?这是由我的 ISP 控制的吗?
为什么 ip routing 不采取甚至远程直接路由?
网络工程
路由
网络
跟踪路由
2021-07-26 08:28:20
2个回答
虚拟世界和物理世界很少排队。仅仅因为机器在物理上接近,并不能使它们在逻辑上接近。流量流向路由条目和互连的目的地。
很久以前,我用两台 PC 放在同一张桌子上演示了这一点。每个拨入不同的ISP。机器之间的数据包走遍了半个国家。为什么?因为这两个 ISP 不是本地对等的。流量必须流向两者相遇的地方——或者交给能够弥合差距的中间承运人。
不久之前,我工作的 ISP 为客户解决了这样的问题。他们来找我们解决传输大块(天气)数据的问题。尽管端点相距 30 英里,但数据包仍要行驶数千英里。与 MCNC (NCREN) 的私有对等互连将 7 跳、+50 毫秒的延迟转换为小于 4 毫秒的单 (IP) 跳。(它是 5 跳,但是您看不到 ATM(第 2 层)和 IP(第 3 层))
把它想象成河流。如果你在一个木筏上,到达另一个可能需要数英里才能撞到共同的水体。“但我能看到另一条河!” 当来自每个人的水不混合时并不重要。
Internet 由相互连接的 ISP 组成,将流量从一个传输到另一个。当你的流量从ISP传递到ISP时,每个ISP自己决定如何路由你的流量,有些ISP不希望你随便发现他们的内部网络,所以他们有各种方法来检测traceroute并重新路由,或者他们可能会使用 MPLS、隧道等,在这些地方您不会看到沿途的所有跃点。
结果是您在公共 Internet 上的 traceroute 中看到的内容可能与您的正常流量穿越公共 Internet 的方式没有相似之处。Traceroute 是一个非常有用的工具,可用于您自己的网络,您知道结果应该是什么,但是当您在公共 Internet 或不受您控制的网络上使用它时,它可能会产生很大的误导。
另外,请记住,更直接的路径可能不是最佳或最快的路径。