在解释AnyCast之前,先说几个TCP/IP协议中常见的数据传输方式,比如单播、组播、广播。
什么是单播
单播是指在计算机网络中传输数据包时,目的地址是单个目标的传输模式。一次只有两个实体相互通信,发送方和接收方是唯一确定的。现在是应用最广泛的网络,常用的网络协议或服务大多采用单播传输,比如所有基于TCP的协议。
单播地址在IPv4网络中,0.0.0到223.255.255.255属于单播地址。
单播优点服务器及时响应客户机的请求。服务器针对每个客户不同的请求发送不同的数据,容易实现个性化服务。单播缺点服务器针对每个客户机发送数据流,服务器流量=客户机数量×客户机流量。在客户数量大、每个客户机流量大的流媒体应用中服务器不堪重负。现有的网络带宽是金字塔结构,城际省际主干带宽仅仅相当于其所有用户带宽之和的 5%。如果全部使用单播协议,将造成网络主干不堪重负。现在的 P2P 应用就已经使主干经常阻塞,只要有 5% 的客户在全速使用网络,其它用户网速将严重受损,而将主干网络带宽在短时间内扩展 20 倍几乎是不可能。 什么是多播组播是指同时向一组目的地址传输信息。它使用的策略是最有效的,因为消息只需要在每个网络链路上传输一次,只有当链路分叉时,消息才会被复制。
与多播相比,传统的点到点传送称为单播。当一条消息以单播方式传递给多个接收者时,必须向每个接收者发送一份数据副本。冗余副本会导致发送方的效率低下和缺乏可扩展性。然而,许多流行的协议通过限制接收器的数量来弥补这一不足。
多播地址多播组可以是永久的,也可以是临时的。有些组播组地址是官方分配的,称为永久组播组。永久多播组的IP地址保持不变,组中成员的组成可以改变。永久多播组中的成员数量可以是任意的,甚至可以是零。那些没有为永久多播组保留的IP多播地址可以被临时多播组使用。
以太网传输单播IP报文时,目的MAC地址使用接收方的MAC地址。但在传输组播报文时,传输目的不是特定的接收者,而是成员不确定的一个群体。因此,使用多播MAC地址。
组播MAC地址对应组播IP地址。IANA规定组播MAC地址的高24位为0x01005e,低23位为组播IP地址的低23位。
由于IP多播地址的最后28位中只有23位被映射到MAC地址,因此32个IP多播地址将被映射到相同的MAC地址。
多播地址分配
224.0.0.0 - 224.0.0.255 为预留的多播地址(永久组地址),地址 224.0.0.0 保留不做分配,其它地址供路由协议使用。 224.0.1.0 - 224.0.1.255 是公用多播地址。 224.0.2.0 - 238.255.255.255 为用户可用的多播地址(临时组地址),全网范围内有效。 239.0.0.0 - 239.255.255.255 为本地管理组播地址,仅在特定的本地范围内有效。永久多播地址分配
224.0.0.0 基准地址(保留) 224.0.0.1 所有主机的地址 (包括所有路由器地址) 224.0.0.2 所有多播路由器的地址 224.0.0.3 不分配 224.0.0.4 DVMRP 路由器 224.0.0.5 所有 OSPF 路由器 224.0.0.6 OSPF DR/BDR 224.0.0.7 ST 路由器 224.0.0.8 ST 主机 224.0.0.9 RIP-2 路由器 224.0.0.10 Eigrp 路由器 224.0.0.11 活动代理 224.0.0.12 DHCP 服务器/中继代理 224.0.0.13 所有 PIM 路由器 224.0.0.14 RSVP 封装 224.0.0.15 所有 CBT 路由器 224.0.0.16 指定 SBM 224.0.0.17 所有 SBMS 224.0.0.18 VRRP多播优点需要相同数据流的客户端加入相同的组共享一条数据流,节省了服务器的负载。由于多播协议是根据接受者的需要对数据流进行复制转发,所以服务端的服务总带宽不受客户接入端带宽的限制。IP 协议允许有 2 亿 6 千多万个(268435456)组播,所以其提供的服务可以非常丰富。此协议和单播协议一样允许在 Internet 宽带网上传输。多播缺点与单播协议相比没有纠错机制,发生丢包错包后难以弥补,但可以通过一定的容错机制和 QOS 加以弥补。现行网络虽然都支持组播的传输,但在客户认证、QOS(指一个网络中能够利用各种基础技术,为指定的网络通信提供更好的服务能力。QOS 是网络的一种安全机制,用来解决网络延迟和阻塞等问题的一种技术。)等方面还需要完善。尽管 IP 多播是一个非常令人满意的概念模型,但它对于网络内部的状态需求要比仅提供尽力而为服务的 IP 单播模型大得多,在这一点上已经遭到了一些人的批评。更糟的是,到目前为止还没有一种机制能保证 IP 多播模型可以被扩展到足以容纳数以百万计的发送者和多播组的地步,而这往往又是使完全通用的多播应用成为商用互联网中的实际应用的必要条件。 什么是广播广播是指一种传输模式,在这种模式下,数据包在计算机网络中传输,目的地址是网络中的所有设备。其实这里说的所有设备也都局限在一个范围内,这个范围叫广播域。
不是所有的计算机网络都支持广播。比如X.25网络和帧中继不支持广播,整个互联网没有广播。IPv6也不支持广播,广播的相应功能被组播取代。
一般来说,广播仅限于局域网。比如以太网或者令牌环网,因为局域网中广播的影响要比广域网中小很多。
广播地址以太网和IPv4网络用all-1地址表示广播,分别是FF:FF:FF:FF:255 . 255 . 255 . 255。
广播优点网络设备简单,维护简单,布网成本低廉。由于服务器不用向每个客户机单独发送数据,所以服务器流量负载极低。广播缺点无法针对每个客户的要求和时间及时提供个性化服务。网络允许服务器提供数据的带宽有限,客户端的最大带宽=服务总带宽。例如有线电视的客户端的线路支持 100 个频道(如果采用数字压缩技术,理论上可以提供 500 个频道),即使服务商有更大的财力配置更多的发送设备、改成光纤主干,也无法超过此极限。也就是说无法向众多客户提供更多样化、更加个性化的服务。广播禁止在 Internet 宽带网上传输。 什么是任播任播最初是在RFC1546中提出和定义的。根据RFC1546,IPv4的任播地址不同于IPv4的单播地址。建议从IPv4的地址空中分配一个独立的地址空作为选播地址空。
Anycast提供无状态的尽力服务。目前,Anycast的中文翻译主要包括anycast、pan-pan和anycast。任播的基本概念是从物理主机设备中分离出来的逻辑服务标识,可以根据服务类型分配任播地址,使网络服务起到逻辑主机的作用。
RFC1546中定义的选播没有被广泛使用,1998年RFC2373中规定了IPv6寻址架构。在本文档中,对任播的定义进行了改进:发送到任播地址的消息被传输到由该地址标识的接口之一。RFC2373中定义的IPv6选播模型并没有限制路由的下层结构和可以使用该服务的上层协议。
在RFC3513中,进一步定义了选播:将选播地址分配给两个以上的接口,发送到该地址的数据包被路由到最近的接口。这里,最近的可以指路由器跳数、服务器负载、服务器吞吐量、客户机和服务器之间的RTT以及链路的可用带宽的度量确定。
在实际应用中,选播是一种网络寻址和路由策略。任播使用单播地址分发到互联网上不同物理位置的主机,发送到该主机的消息由网络路由到路由协议测量的最近的目标主机。
例如,提供特定服务的一组主机由IP网络上的任播地址标识,服务访问者不关心哪个主机提供服务。访问此地址的消息可以通过IP网络路由到这组目标中的任何主机。
任播与单播、广播和组播区别在单播中,在网络地址和网络节点之间存在一一对应的关系。在广播和多播中,网络地址和网络节点之间存在一对多的关系。每一个目的地址对应一群接收可以复制信息的节点。在任播中,网络地址和网络节点之间存在一对多的关系。每一个地址对应一群接收节点,但在任何给定时间,只有其中之一可以接收到传送端来的信息。在互联网中,通常使用边界网关协议来实现任播。任播优点不同客户端将访问不同目的主机,此过程对客户端透明,从而实现了目的主机的负载均衡。当任意目的主机接入的网络出现故障,导致该目的主机不可达时,客户端请求可以在无人为干预的情况下自动被路由到目前可达的最近目的主机,在一定程度上为目标主机提供了冗余性。当目的主机受到 DoS 攻击而无法到达时,由于网络不可到达,客户端请求也将路由到其它目的主机上。而在 DDoS 攻击时,由于任播的负载均衡效应,避免了单台目的主机承受所有攻击流量,因此在一定程度上为目的主机提高了安全性。因为任播利用路由度量到最近的目的主机,提高了客户端响应速度。任播缺点使用任播中的共享单播地址不能作为客户端发起请求,因为请求的响应不一定能返回到发起的任播单播地址。因此,目前任播仅适合一些特定的上层协议。从目前的实际应用来看,任播最广泛的应用是 DNS 的部署。 什么是 BGP AnycastBGP AnycASt是通过使用一个或多个as号在不同区域广播相同的IP段。利用BGP的寻路原理,选择最短的AS路径作为最优路径,从而优化访问速度。
与IP Anycast相比,BGP Anycast多了一个BGP AS,也就是说声明的IP有一个独立的AS号,属于一个独立的自治域。
阿里的DNS是典型的BGP AnyCast服务。本质上,BGP Anycast是指不同的服务器使用相同的IP地址。
任播的实现原理
配置 AnyCast 节点组有利于域间路由通告。
通用名称是24。
子网中可能没有接口。
主机的配置配置主机接收流量的任播地址(配置与回环口)配置每个主机的唯一管理地址 配置回环口地址$ ifconfig lo:1 10.5.0.1网络掩码255.255.255.255向上
检查环回地址
$ ifconfig lo:1lo:1:flags = 73 MTU 65536 inet 10 . 5 . 0 . 1网络掩码255 . 255 . 255 . 255 loop txqueuelen 1
服务的配置具体的服务配置这里就不详述了。
网络的配置A.域内的配置
如果配置的服务完全在您的路由域内,您只需要考虑域内的配置,条件如下:
所有的任播节点都在域内多个域内的位置需要对路由进行配置,以便向服务器传送任播流量。
B.静态IGP路由配置
C.动态IGP路由配置
http://www.google.com
http://t.cn/RBkIvnV
http://t.cn/RBkpQfh
http://t.cn/8Ftlhp9
http://t.cn/RrAJNQ6
http://t.cn/RGCgN9e
热爱你的生活,过你热爱的生活。
热爱生活,过自己喜欢的生活。
-匿名
1.《Anycast 浅析 AnyCast 技术》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《Anycast 浅析 AnyCast 技术》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/junshi/1799682.html