高可用性网络

高可用性网络算法

前言 api

随着网络的快速普及和应用的日益深刻,各类增值业务在网络上获得了普遍部署,网络带宽也以指数级增加,网络短期的中断就可能影响大量业务,形成重大损失。做为业务承载主体的基础网络,其高可用性(High AvailablityHA)也所以日益成为关注的焦点。浏览器

 

高可用性网络如何定义?安全

那么,如何衡量一个网络的可用性呢?首先,一个高可用性网络不能频频出现故障,只要发生故障,即便是很短期的中断,都会影响业务运营,特别在当前适时性强、对丢包和时延敏感的业务,如语音和视频等业务在网络上普遍部署的状况下更是如此。其次,高可用性的网络,即便出现故障,也应该能很快恢复。若是一个网络一年不出一次故障,但一次故障须要几个小时,甚至几天才能恢复,那么这个网络也算不上一个高可用的网络。 服务器

事实上,故障少、故障恢复时间短基本就归纳了高可用性网络的特色。在实际网络中,软、硬件的版本质量是有极限的,而且也避免不了各类人为和非技术因素形成的网络故障和服务中断。基于这个缘由,开发能让网络迅速从故障中恢复的技术很是重要。事实上,若是网络老是能在不中断(绝大部分)业务的状况下恢复,对多数用户,就其业务体验来讲,甚至能够认为是无端障的。网络

 

网络高可用性技术:负载均衡

1.服务器实现群集  ide

LB  :负载均衡群集性能

HA  :高可用性群集测试

HP   :高性能群集

      服务器群集技术最主要的应用即在于网络负载平衡的功能。 网络负载平衡使用两台或更多台一块儿工做的主机计算机组成的群集,为服务器提供了高可用性和高伸缩性。Internet客户端使用一个 IP 地址或一组地址访问群集。客户端没法区别群集和单一服务器。服务器应用程序并不代表它们是在群集上运行的。可是,网络负载平衡群集与运行单个服务器应用程序的单个主机有很大的区别,由于即便在某个群集主机发生故障的状况下,它也能够提供不间断服务。群集对客户端请求的响应也比单个主机快。

若是某个主机发生故障或脱机,则网络负载平衡经过将传入的网络通讯重定向到工做的群集主机,从而带来了高可用性。连到脱机主机的现有链接将丢失,可是 Internet 服务仍然是可用的。在多数状况下(例如,就 Web 服务器而言),客户端软件能够自动重试失败的链接,并且客户端在接收响应时,只有数秒钟的延迟。网络负载平衡经过在分配给网络负载平衡群集的一个或多个虚拟 IP 地址(群集 IP 地址)间分配传入的网络通讯,从而带来了可变化的性能。而后,群集中的主机同时对不一样的客户端请求甚至来自同一客户端的多个请求作出响应。例如,Web浏览器能够从网络负载平衡群集中的不一样主机得到全部单张网页中的多幅图像。这就提升了处理速度,并缩短了对客户端作出响应的时间。

网络负载平衡使得单个子网上的全部群集主机能够同时检测群集 IP 地址的传入网络通讯。在每一个群集主机上,网络负载平衡驱动程序充当群集适配器驱动程序和 TCP/IP堆栈间的过滤器,以便在主机间分配通讯。

2.三层设备

routerl3switchfirewall实现高可用性

         HSRP

热备份路由器协议(HSRPHot Standby Router Protocol),是cisco平台一种特有的技术,是cisco的私有协议。

该协议中含有多台路由器,对应一个HSRP组。该组中只有一个路由器承担转发用户流量的职责,这就是活动路由器。当活动路由器失效后,备份路由器将承担该职责,成为新的活动路由器。这就是热备份的原理。

实现HSRP的条件是系统中有多台路由器,它们组成一个“热备份组”,这个组造成一个虚拟路由器。在任一时刻,一个组内只有一个路由器是活动的,并由它来转发数据包,若是活动路由器发生了故障,将选择一个备份路由器来替代活动路由器,可是在本网络内的主机看来,虚拟路由器没有改变。因此主机仍然保持链接,没有受到故障的影响,这样就较好地解决了路由器切换的问题。

为了减小网络的数据流量,在设置完活动路由器和备份路由器以后,只有活动路由器和备份路由器定时发送HSRP报文。若是活动路由器失效,备份路由器将接管成为活动路由器。若是备份路由器失效或者变成了活跃路由器,将由另外的路由器被选为备份路由器。

在实际的一个特定的局域网中,可能有多个热备份组并存或重叠。每一个热备份组模仿一个虚拟路由器工做,它有一个WellknownMAC地址和一个IP地址。该IP地址、组内路由器的接口地址、主机在同一个子网内,可是不能同样。当在一个局域网上有多个热备份组存在时,把主机分布到不一样的热备份组,可使负载获得分担。  

VRRP:

VRRP是一种选择协议,它能够把一个虚拟路由器的责任动态分配到局域网上的 VRRP 路由器中的一台。控制虚拟路由器 IP 地址的 VRRP 路由器称为主路由器,它负责转发数据包到这些虚拟 IP 地址。[1]  一旦主路由器不可用,这种选择过程就提供了动态的故障转移机制,这就容许虚拟路由器的 IP 地址能够做为终端主机的默认第一跳路由器。是一种LAN接入设备备份协议。一个局域网络内的全部主机都设置缺省网关,这样主机发出的目的地址不在本网段的报文将被经过缺省网关发往三层交换机,从而实现了主机和外部网络的通讯。

VRRP是一种路由容错协议,也能够叫作备份路由协议。一个局域网络内的全部主机都设置缺省路由,当网内主机发出的目的地址不在本网段时,报文将被经过缺省路由发往外部路由器,从而实现了主机与外部网络的通讯。当缺省路由器down掉(即端口关闭)以后,内部主机将没法与外部通讯,若是路由器设置了VRRP时,那么这时,虚拟路由将启用备份路由器,从而实现全网通讯。

工做过程;

1)       路由器开启VRRP功能后,会根据优先级肯定本身在备份组中的角色。优先级高的路由器成为主用路由器,优先级低的成为备用路由器。主用路由器按期发送VRRP通告报文,通知备份组内的其余路由器本身工做正常;备用路由器则启动定时器等待通告报文的到来。

2)       VRRP在不一样的主用抢占方式下,主用角色的替换方式不一样:

l在抢占方式下,当主用路由器收到VRRP通告报文后,会将本身的优先级与通告报文中的优先级进行比较。若是大于通告报文中的优先级,则成为主用路由器;不然将保持备用状态。

l在非抢占方式下,只要主用路由器没有出现故障,备份组中的路由器始终保持主用或备用状态,备份组中的路由器即便随后被配置了更高的优先级也不会成为主用路由器。

3)       若是备用路由器的定时器超时后仍未收到主用路由器发送来的VRRP通告报文,则认为主用路由器已经没法正常工做,此时备用路由器会认为本身是主用路由器,并对外发送VRRP通告报文。备份组内的路由器根据优先级选举出主用路由器,承担报文的转发功能

3.磁盘 

独立磁盘冗余阵列(RAIDredundant array of independent disks)是把相同的数据存储在多个硬盘的不一样的地方的方法。经过把数据放在多个硬盘上,输入输出操做能以平衡的方式交叠,改良性能。由于多个硬盘增长了平均故障间隔时间(MTBF),储存冗余数据也增长了容错。

RAID经过在多个磁盘上同时存储和读取数据来大幅提升存储系统的数据吞吐量(Throughput)。在RAID中,可让不少磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,因此使用RAID能够达到单个磁盘驱动器几倍、几十倍甚至上百倍的速率。经过数据校验提供容错功能。普通磁盘驱动器没法提供容错功能,若是不包括写在磁盘上的CRC(循环冗余校验)码的话。RAID容错是创建在每一个磁盘驱动器的硬件容错功能之上的,因此它提供更高的安全性。在不少RAID模式中都有较为完备的相互校验/恢复的措施,甚至是直接相互的镜像备份,从而大大提升了RAID系统的容错度,提升了系统的稳定冗余性。

        RAID常见的几种技术规范:

RAID 0是组建磁盘阵列中最简单的一种形式,只须要2块以上的硬盘便可,成本低,能够提升整个磁盘的性能和吞吐量。RAID 0没有提供冗余或错误修复能力,但实现成本是最低的。

RAID 1主要是经过二次读写实现磁盘镜像,因此磁盘控制器的负载也至关大,尤为是在须要频繁写入数据的环境中。为了不出现性能瓶颈,使用多个磁盘控制器就显得颇有必要。

RAID10 RAID1RAID0的结合。这种结构无非是一个带区结构加一个镜象结构,由于两种结构各有优缺点,所以能够相互补充,达到既高效又高速的目的。

RAID5的读出效率很高,写入效率通常,块式的集体访问效率不错。由于奇偶校验码在不一样的磁盘上,因此提升了可靠性。可是它对数据传输的并行性解决很差,并且控制器的设计也至关困难。

RAID6是对RAID5的扩展,主要是用于要求数据绝对不能出错的场合。固然了,因为引入了第二种奇偶校验值,因此须要N+2个磁盘,同时对控制器的设计变得十分复杂,写入速度也很差,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,形成了没必要须的负载。

4.链路

              lan  stp   rstp    mstp 链路聚合

       生成树协议最主要的应用是为了不局域网中的单点故障、网络回环,解决成环以太网网络的“广播风暴”问题,从某种意义上说是一种网络保护技术,能够消除因为失误或者意外带来的循环链接。STP也提供了为网络提供备份链接的可能,可与SDH保护配合构成以太环网的双重保护。

快速生成树协议(rapid spanning Tree Protocol ):802.1w802.1d发展而成,这种协议在网络结构发生变化时,能更快的收敛网络。它比802.1d多了两种端口类型:预备端口类型(alternate port)和备份端口类型。 STPSpanning Tree Protocol )是生成树协议的英文缩写。该协议可应用于环路网络,经过必定的算法实现路径冗余,同时将环路网络修剪成无环路的树型网络,从而避免报文在环路网络中的增生和无限循环。

MSTP的实现基础是充分利用SDH技术对传输业务数据流提供保护恢复能力和较小的延时性能,并对网络业务支撑层加以改造,以适应多业务应用,实现对二层、三层的数据智能支持。即将传送节点与各类业务节点融合在一块儿,构成业务层和传送层一体化的SDH业务节点,称为融合的网络节点或多业务节点,主要定位于网络边缘。

         链路聚合(Link Aggregation),是指将多个物理端口捆绑在一块儿,成为一个逻辑端口,以实现出/ 入流量在各成员端口中的负荷分担,交换机根据用户配置的端口负荷分担策略决定报文从哪个成员端口发送到对端的交换机。当交换机检测到其中一个成员端口的链路发生故障时,就中止在此端口上发送报文,并根据负荷分担策略在剩下链路中从新计算报文发送的端口,故障端口恢复后再次从新计算报文发送端口。链路聚合在增长链路带宽、实现链路传输弹性和冗余等方面是一项很重要的技术    

wan:      

A.       浮动静态路由   [链路不同,骨干链路和拨号类备份链路]

在一个支持DDRDial-on-Demand Routing)的网络中,拨号链路只在须要时才拨通,所以不能为动态路由信息表提供路由信息的变动状况。在这种状况下,网络也适合使用浮动静态路由。

浮动静态路由是一种特殊的静态路由,经过配置一个比主路由的管理距离更大的静态路由,保证网络中主路由失效的状况下,提供备份路由。但在主路由存在的状况下它不会出如今路由表中。浮动静态路由主要用于拔号备份.

B.       backup接口     【链路一致,只用一条】

              指令 standby 

      在这个状态下,该路由器就是所连网络的备份指定路由器,而且和所在多址网络上的其余路由器创建邻接关系。

C. MultiPPP   要求:链路一致 {网络类型一致,封装一致PPP,速率}

多重链路点对点协议(MP MultiPPP)是一种分离、重组和排序多重逻辑数据链路上的数据报的方法。PPP 多重链路(MP)基于 LCP 选项协商机制,容许系统暗示对等结构它可以将多重物理链路结合成“束”。在初始化 LCP 选项协商时,多重链路经协商经过。系统暗示对等结构它将经过发送多重链路选项创建多重链路,这是在初始化 LCP 选项协商过程当中完成的。

一旦多重链路协商成功经过,发送系统自由发送封装和或分段的以及多重链路头。为了创建点对点链路建通讯,PPP 链路的每一端,必须首先发送 LCP 包以便设定和测试数据链路。在链路创建以后,有一个认证阶段,其中认证协议主要负责决定链路中链接每一个系统的标识符。

 

5.网卡  bond

Linux bonding 驱动提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余

对于服务器来讲,网络设备的稳定也是比较重要的,特别是网卡。在生产型的系统中,网卡的可靠性就更为重要了。在生产型的系统中,大多经过硬件设备的冗余来提供服务器的可靠性和安全性,好比电源。bonding 也能为网卡提供冗余的支持。把多块网卡绑定到一个IP地址,当一块网卡发生物理性损坏的状况下,另外一块网卡自动启用,并提供正常的服务,即:默认状况下只有一块网卡工做,其它网卡作备份

相关文章
相关标签/搜索