anycast 技术简介

anycast 技术简介Anycast 技术简介 作者:佚名文章来源:本站原创点击数:3024更新时间:2009-1-2310:40:52 Anycast最初是在RFC1546中提出并定义的,它的最初语义是,在IP网络上通过一个Anycast

大家好,又见面了,我是你们的朋友全栈君。

Anycast 技术简介
 
作者:佚名 文章来源:本站原创 点击数:3024 更新时间:2009-1-23 10:40:52 anycast 技术简介
 

Anycast最初是在RFC1546中提出并定义的,它的最初语义是,在IP网络上通过一个Anycast地址标识一组提供特定服务的主机,同时服务访问方并不关心提供服务的具体是哪一台主机(比如DNS服务器),访问该地址的报文可以被IP网络路由到这一组目标中的任何一台主机上,它提供的是一种无状态的、尽力而为的服务。

业界对anycast的定义是,当一个单播地址被分配到多于一个的接口上时,发到该接口的报文被网络路由到路由协议度量的“最近”的目标接口上。与Unicast和Multicast类似,Anycast也是IP网络的一种通信模式。Unicast允许源结点向单一目标结点发送数据报,Multicast允许源结点向一组目标结点发送数据报,而Anycast则允许源结点向一组目标结点中的一个结点发送数据报,而这个结点由路由系统选择,对源结点透明;同时,路由系统选择“最近”的结点为源结点提供服务,从而在一定程序上为源结点提供了更好的服务也减轻了网络负载。

正是Anycast这一通信模式的特点,使它在IP网络中具有了一定程序的应用前景。首先,分布的服务共享相同的IP地址,同时在IP层进行透明的服务定位,这使得各种网络服务特别是应用层服务具有更强的透明性,比如DNS,它可以共享一个熟知的IP地址,用户不需要特殊配置也不用关心访问的是哪一台DNS服务器;其次,路由系统选择了“最近”的服务,缩短了服务响应的时间,同时减轻了网络负载;最后,相同的服务在网络上冗余分布,路由系统可以提供机制选择负载相对轻的带宽相对高的路径来转发报文,这样就给用户带来了两个方面的好处:

1)    减弱了DOS攻击对用户带来的影响。当Anycast组中某一个成员或者几个成员受到攻击时,负责报文转发的路由器可以根据各个组成员的响应时间来决定报文应该转发到哪个成员上,这样受到攻击的成员由于没有响应,所以报文就不会被转发到那里,同时,由于Anycast提供的服务访问透明性,组成员也相对较难受到DOS攻击。

2)    减弱了网络拥塞给用户带来的影响。同上面的道理,当Anycast的某些组成员处在拥塞的网段时,它的响应时间就较长,报文可以被转发到响应较好的成员那里。

Anycast的实质是一种网络技术,主要是依靠网络的冗余来保证业务的高可靠性。就DNS业务来说,DNS业务相对于Anycast,或者说,应用层相对于网络层都是透明的,彼此之间没有任何关系,这为Anycast技术在DNS系统中的应用创造了良好条件,DNS软件不用经过任何修改即可以很好地吸纳Anycast技术。

我们谈及anycast,并没有指明anycast的实现类型,其实,anycast的实现可以分为两类:subnet anycast和global anycast。Subnet anycast是指所有服务器主机都位于同一个网段,按这种方式实现的类型可以称作subnet anycast,即集中部署的方式;Global anycast是指服务器主机不在同一个网段,可能在同一个节点的两个或者更多的网段,可能根本不在同一个节点,而在分散于多个节点,这些节点可能在同一个地市,也可能在多个地市,也可能多个省甚至多个国家,这种方式实现的anycast我们可以称作global anycast,亦称作分布部署方式。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142499.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • QCustomPlot的基本使用[通俗易懂]

    QCustomPlot的基本使用[通俗易懂]QCustomPlot是QT下一个方便易用的绘图工具,只有两个文件qcustomplot.h和qcustomplot.cpp组成。源文件和使用文档可从官方网站下载。官方网站:http://www.qcustomplot.com/下面介绍下基本使用:1、将qcustomplot.cpp和qcustomplot.h拷贝到工程目录下,并在工程中添加文件。并在工程的pro文

    2022年9月25日
  • java线程池实例

    java线程池实例

    2021年5月6日
  • pytorch实现textCNN

    pytorch实现textCNNpytorch实现textCNN1.原理2.数据预处理2.1转换为csv格式2.2观察数据分布2.3由文本得到训练用的mini-batch数据3.模型4.训练脚本5.main函数6.引用1.原理2014年的一篇文章,开创cnn用到文本分类的先河。ConvolutionalNeuralNetworksforSentenceClassification原理说简单也简单…

    2022年6月28日
  • 虚拟串口模拟器和串口调试助手使用教程「建议收藏」

    虚拟串口模拟器和串口调试助手使用教程「建议收藏」虚拟串口(虚拟COM端口),应该很多人都知道,也就是一种模拟物理串行接口的软件。它完全复制了硬件COM接口的功能,并且将被操作系统和串行应用程序识别为真实端口。以前的电脑,基本标配都包含一个串口。但现在的电脑,基本都没有配置串口了。如果要使用串口的功能,基本就要用一个USB转串口的硬件模块。现实生活中,虚拟串口用处很多。比如:你的应用程序检测串行输入数据的时候,方便调试。还比如:多个有应用程序之间使用串口通信。虚拟串口软件推荐:强大的虚拟串口软件串口调试助手软件有很多,随便选一个自己

    2022年6月12日
  • java数组详解

    java数组详解1 数组概念同一种类型数据的集合。其实数组就是一个容器。数组的好处可以自动给数组中的元素从0开始编号,方便操作这些元素。格式1:元素类型[] 数组名 = new 元素类型[元素个数或数组长度];示例:int[] arr = new int[5];格式2:

    2022年6月2日
  • 前端vscode必备插件推荐(墙裂推荐)「建议收藏」

    前端vscode必备插件推荐(墙裂推荐)「建议收藏」前言:vscode是一款强大的前端编辑软件,有些人说ws(webstorm)更好用,但是vs重在轻量级啊!!!而且根据自己的开发习惯安装适合自己的插件后,用起来简直不要太舒服了好嘛!!!首先呢,我先推荐的就是最基础的语言包,没办法,英语水平太捞了哈哈哈,弄起来后就舒服多了,汉语yyds~《Chinese(Simplified)(简体中文)Language》注释工具《ColorfulComments》不同的注释符能带来很多高亮的显示快速找到css定义位置并小窗口展示

    2022年7月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号