Author basilguo@163.com

Date Aug. 11, 2023

Description 高级计算机网络:互联网连接以及IXP

CSE390高级计算机网络学习之Internet Connectivity + IXP(Internet eXchange Point)。课件有点老,2014年,现在情形还需看论文才能知道吧。不过我也只是学习IXP而已。

Internet Connectivity

互联网是全球最大的端到端网络,也是最大的分布式系统。互联网的核心是一些tier1的ISP,连接了内容、用户以及区域性ISP。互联网现在的标准是TCP/IP,TCP/IP网络协议栈是分层的,但网络却是在趋于扁平化的。

网络最大的价值在于寻址编址以及可达性。想要理解网络就要学会测量网络,诚如Kelvin爵士所说:“If you can not measure it, you can not improve it.”

image.png

但是网络测量是一项极其困难的工作,有很多先行工作关注在路由器和AS拓扑、ISP或个人流量学习等,但是却对域间流量缺乏认知。

而且网络变化极快,2010年一篇发表在SigComm的文章:Internet inter-domain traffic对互联网域间流量进行了测量,有几个发现值得探讨

  1. 2007年全球最顶级的10个域间流量来源还是tier1的ISP,但是2009年Google和Comcast就跻身到了前十,Google以5.2%的占比排名第3,Comcast以3.12%的占比排名第6,而且排名最高的tier1 ISP的流量,一个显著的部分就是transit的Google流量。由此可见,域间流量变化之迅猛:互联网内容提供商的域间流量将会超越tier1 ISP。

  2. 2007年1000个AS贡献了互联网50%的流量,而2009年150个AS就贡献了50%的流量,可见流量越来越集中,也很符合马太效应了。2009年全球由RIR分配的AS累计也达到了3万多个,虽然可能很多还没有真正用于实际网络中,但这占比有点夸张了。 image.png

  3. 还有一个显著的市场表现:投资Internet Transit的回报逐年下降,投资互联网广告的回报平稳上升。这无一不再展示着互联网域间流量的变化。

这个变化就和互联网交换节点IXP的涌现有关。从前的网络是需要hop-by-hop转发的,stub AS的流量要经过transit AS,然后就得要给transit AS付费。而经过IXP的转发,ISP和用户都节省了时间和金钱开销。很多顶级内容提供商都具备更多的“度”,也就是他们的AS具有更多的邻居。

image.png

这个变化导致了新型互联网的出现:从分层向扁平化的过度。

网络测量

互联网的拓扑,也就是互联网的逻辑连接,实际上很少会关注于物理拓扑上,是一幅图,节点是AS,边是AS之间的连接。AS之间的连接有两种方式:Customer-Provier以及Peer-Peer。

测量互联网拓扑的方式有:

  • 被动测量:例如BGP路由监测,可以测量拓扑收敛性以及每个邻居提供的可见性数量。
  • 主动测量:例如Traceroute,但是能够测量出来IP而非AS;例如TransitPortal。

被动测量:BGP Route Monitors

这种方式需要自治域的参与,例如RouteViews项目,从多个观测点的参与者AS接收BGP宣告,BGP宣告中包含起源AS以及AS-PATH,这样就可以将BGP宣告组成一个拓扑。但是这其实可能也暴露了商业关系决定的路由策略。我们之前有提到AS之间的连接关系,其实就是一种商业关系。为了防止路由泄露和路由劫持,实际上路由宣告需要遵循无谷特性,以保证路由路径不会形成低谷。最简单的低谷就是一个Provider1(P1)的路由经由Customer1(C1)错误宣告给了Provider2(P2),这就形成了路由低谷。

通过BGP路由监测的方式还面临着其它挑战:例如BGP宣告并不完整反映连接关系。例如上述案例中,C1遵循无谷特性的路由宣告,那么实际上P2将不会知道C1和P1的连接。

主动测量:Traceroute

traceroute需要主机主动发起路由探测,所以如何获得大量可用的观测点是比较困难的。

在www.traceroute.org中,有几百台服务器在运行traceroute程序。这些服务器由ISP或其他网络运营商在管理维护。

RIPE NCC搞了Atlas,通过将一种特殊的硬件设备发给志愿者们来运行,相当于分发了几千枚探针以探测网络。【2023年8月11日查看:Connected: 12837 Disconnected: 2517 Abandoned: 19417,好像志愿者不是那么靠谱】

也有通过BitTorrent这种软件来测量网络的,例如Dasu。这倒是一个好的想法,P2P的网络很符合网络特性,也能探测到RouteViews探测不到的连接。不过估计要用户同意也是一个难事吧,不让用户知道就很麻烦了。

主动测量:Transit Portal

在上述两种测量方式中,只能探测到在使用中的路径,而不是完整的连接。而互联网还有很多冗余线路作为容灾备份。想要获取完整的连接,就需要发现这些备份连接。

Transit Portal的解决方案是研究者掌控AS和前缀,参与者组成AS的边界。每个参与者的BGPMux作为边界路由器,连接Transit Portal用户,发送BGP updates。反正有点复杂,没得看懂,得找相关研究才行,不过我不做网络测量,不看了。

IXP

AS之间连接,要么是Point of Presence(直连),这种方式创建新的连接很昂贵;要么是IXP(Internet eXchange Points),就是AS1-IXP-AS2的连接方式,要扩容比较简单,经济实惠。

IXP的工业界定义就是:A physical network infrastructure operated by a single entity with the purpose to facilitate the exchange of Internet traffic between Autonomous Systems,以及The number of Autonomous Systems connected should be at least three and there must be a clear and open policy for others to join

查看世界IXP的地图,可以使用[这个网站],教授课件就是突出一个资源丰富啊!

一个ISP内部就是一堆交换机和光缆的集合,后面有说是L2交换机,看图也像。不过不经夸啊,夸完下图网址打不开了。。。

image.png

IXP存在,得以让AS之间互相peering。IXP有四种peering策略。

  • Open Peering:任何时间、任何地点,都可以作为peer,是最为常见的策略。
  • Selective Peering:有条件的peer。
  • Restrictive Peering:倾向于不和很多实体做peer
  • No Peering:这就是transit提供商。

有关IXP的系统流量吞吐可以去看维基百科: List of Internet exchange points by size,应该更新会比较勤快。

有趣的观察以及解惑:

  1. Myth1:Tier1 ISP不公开peer

    1. 实际上所有的tier1 ISP都是IXP成员,并且使用公开peering,但是他们通常使用restrictive peering策略,而大部分IXP成员使用open peering策略。毕竟定位以及利益不同,无可厚非。
  2. Myth2:在IXP建立peering非常费劲

    1. 实际上大部分IXP使得成员之间建立peering关系非常方便。
  3. Myth3:IXP peering连接是备份连接

    1. 实际上大部分IXP连接是真实流量的连接。都能看到流量经过。
  4. Myth4:IXP很无聊

    1. 实际上IXP和大的AS以及内容提供商没啥区别(as interesting as)
  5. Myth5:IXP和AS很大不同

    1. 实际上IXP和正常的AS越来越像了。