金色的骷髅 发表于 2015-1-16 15:48:04

来谈谈:Linux 服务器下多网卡的负载平衡

安装和登录命令:login、shutdown、halt、reboot、mount、umount、chsh
1、弁言当今几近各行各业外部都创建了本人的服务器,因为服务器的特别位置,它的牢靠性、可用性及其I/O速率就显得十分的主要,坚持服务器的高可用性和平安性是企业级IT情况的主要目标,个中最主要的一点是服务器收集毗连的高可用性,
为完成这些请求,如今服务器多数接纳多网卡设置,体系多数接纳如今十分盛行的linux作为服务器事情的情况。如今带宽已不是服务质量进步的瓶颈了,绝对的收集设备和服务器的处置才能就垂垂成为新的瓶颈。为进步服务器的收集毗连的可用性和牢靠性,今朝Sun公司的Trunking手艺、3Com公司的DynamicAccess手艺、Cisco公司的Etherchannel手艺等等都在研讨将服务器的多个网卡接口绑定在一同的链路会萃手艺,链路会萃手艺将多个链路假造成一个逻辑链路进而供应了一种便宜、无效的办法扩大收集设备和服务器的带宽,进步收集的天真性与可用性。
本文先容linux下的bonding手艺,linux2.4.x的内核中接纳了这类手艺,使用bonding手艺能够将多块网卡接口经由过程绑定假造成为一块网卡,在用户看来这个聚合起来的设备仿佛是一个独自的以太网接口设备,普通点讲就是多块网卡具有不异的IP地点而并行毗连聚分解一个逻辑链路事情。如今在关于linuxbonding手艺中,有几种算法来完成负载平衡的请求,此文针对这些算法,在此举行复杂剖析与研讨,会商其不敷,并提出别的一种在此基本上改善的一种基于传输协定的负载平衡完成办法。会商怎样完成多个收集接口的分在平衡及其妨碍接受。
2、负载平衡手艺和高可用手艺先容
2.1负载平衡手艺负载平衡手艺的次要头脑就是怎样依据某种算法将收集的营业流量均匀分派到分歧的服务器和收集设备上往,以加重单台服务器和收集设备的包袱,从而进步全部体系的效力。负载平衡既能够由有负载平衡功效的硬件完成,也能够经由过程一些公用的软件来完成,负载平衡是一种战略,它能让多台服务器或多条链路配合承当一些沉重的盘算大概I/O义务,从而以较低的本钱打消收集瓶颈,进步收集的天真性和牢靠性。
2.2高可用手艺完成负载平衡起首是基于收集的高可用性提出来的,高可用手艺是容错手艺的一个分支。完成体系的高可用性最复杂的一个举措就是冗余。完全的收集负载平衡和高可用性收集手艺有两个方面组成,一是多服务器的绑定和负载平衡,二是一个服务器外部的多网卡绑定的负载平衡,这里次要会商一个服务器外部的多网卡绑准时的负载平衡。
3、Linux的bonding手艺中负载平衡的复杂完成
3.1Linux的bonding手艺Linux的bonding手艺是网卡驱动程序之上、数据链路层之下完成的一个假造层,经由过程这类手艺,服务器接在互换机上的多块网卡不但被绑定为一个IP,MAC地点也被设定为统一个,进而组成一个假造的网卡,事情站向服务器哀求数据,服务器上的网卡接到哀求后,网卡依据某种算法智能决意由谁来处置数据的传输。Bonding手艺能够进步主机的收集吞吐量和可用性。
3.2Linux的几种发送平衡算法今朝Linux的发送算法最次要的有三种:轮转算法(Round-Robin)、备份算法(Active-Backup)、MAC地点异或算法(MAC-XOR).上面对今朝这三种次要算法举行复杂剖析。
3.2.1轮转算法该算法是基于公允准绳举行的,它为每一个将要被发送的数据包选择发送接口,算法的次要头脑是起首第一个数据包由一个接口发送,另外一个数据包则由别的一个接口发送,上面顺次举行轮回选择。经由过程剖析我们能够看出这类算法对照对照复杂,在发送数据方面也对照公允,能包管网卡发送数据时分的负载平衡,资本使用率很高。可是我们晓得假如一个毗连大概会话的数据包从分歧的接口收回的话,半途再经由分歧的链路,在客户端很有大概会呈现数据包无序抵达的成绩,而无序抵达的数据包必要从头请求被发送,如许收集的吞吐量就会下落。
3.2.2备份算法该算法将多个网卡接口中的一个接口设定为举动形态,其他的接口处于备用形态。当举动接口大概举动链路呈现妨碍时,启动备用链路,因而可知此算法的长处是能够供应高收集毗连的可用性,可是它的资本使用率较低,只要一个接口处于事情形态,在有N个收集接口的情形下,资本使用率为1/N.3.2.3MAC地点异或算法该算法的次要头脑是:由服务器的MAC地点和客户真个MAC地点配合决意每一个数据包的发送端标语,由源MAC地点和目标MAC地点举行异或盘算,并将异或了局对接口数求余盘算。因为发送到统一个客户真个数据流经由统一个链路,因而数据包可以有序抵达客户端。此算法在只要一个客户机会见服务器大概服务器和客户机不在统一子网的情形下,由算法头脑得知这类情形下负载不会平衡,在只要一个客户机会见服务器的时分,资本的使用率也是1/N(N为接口数)。

</p>
在学习初期,你一定会遇到很多困难,或者说各种困难,所以你最好先将你linux中的重要内容备份,因为,在你学习的过程中,很可能将系统搞废(eg:源混乱等);

老尸 发表于 2015-1-18 16:12:34

Linux简单,占内存少,特别是对于程序开发人员来说很方便,如果说windows的成功在于其方便用户的窗口管理界面。

兰色精灵 发表于 2015-1-25 06:33:19

对我们学习操作系统有很大的帮助,加深我们对OS的理解。?

乐观 发表于 2015-2-2 17:48:31

其实老师让写心得我也没怎么找资料应付,自己想到什么就写些什么,所以不免有些凌乱;很少提到编程,因为那些在实验报告里已经说了,这里再写就多余了。

小妖女 发表于 2015-2-8 03:56:40

主流Linux发行版都自带非常详细的文档(包括手册页和FAQ),从系统安装到系统安全,针对不同层次的人的详尽文档,仔细阅读文档后40%问题都可在此解决。

飘灵儿 发表于 2015-2-24 09:33:54

我们自学,就这个循环的过程中,我们学习了基本操作,用vi,shell,模拟内存的分配过程等一些OS管理。

小女巫 发表于 2015-3-7 11:58:45

对于英语不是很好的读者红旗 Linux、中标Linux这些中文版本比较适合。现在一些Linux网站有一些Linux版本的免费下载,这里要说的是并不适合Linux初学者。

深爱那片海 发表于 2015-3-15 05:39:50

熟悉系统的基本操作,Linux的图形界面直观,操作简便,多加上机练习就可熟悉操作,在Linux下学习办公软件等常用软件。

蒙在股里 发表于 2015-3-21 20:17:21

这也正是有别的OS得以存在的原因,每个系统都有其自身的优点。?
页: [1]
查看完整版本: 来谈谈:Linux 服务器下多网卡的负载平衡