Chinaunix首页 | 论坛 | 博客
  • 博客访问: 277601
  • 博文数量: 28
  • 博客积分: 690
  • 博客等级: 上士
  • 技术积分: 860
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-24 13:52
文章分类

全部博文(28)

文章存档

2012年(28)

分类: LINUX

2012-05-22 16:31:31

LVS三种请求转发方式

 

1、  通过NAT方式实现虚拟服务器(VS/NAT

IPV4中,保留IP有:

A类地址:10.0.0.0-10.255.255.255

A类地址:127.0.0.0-127.255.255.255

B类地址:172.16.0.0-172.31.255.255

C类地址:192.168.0.0-192.168.255.255

这些地址都是专门为内部网络预留的,当内部网络要访问Internet时,则需要进行NAT(网络地址转换),把内部地址转换成Internet上可用的外部地址。

NAT工作原理是将报文头进行正确的修改后,让客户端相信它们连接的是同一个IP地址,例如VMware虚拟机一样,网络模式如果设置为NAT的话,就是通过本机进行上网,而和你本机在同一网段内的机子是不能访问你的虚拟机的,如果想要访问则将网卡模式改为bridge的,并且把网卡配置信息改为和你本机网络一样的。

VS/NAT:是在一组服务器前有一个调度器,通过switch/HUB相连接的。因为这些服务器提供了相同的内容,所以请求发送到每一台服务器上执行出来的结果都是一样的。用户可以通过虚拟IP地址访问服务时,请求报文首先达到调度器,调度器会根据一个算法从服务器组中选择一台服务器来处理请求,然后请求报文就会被改写成选定服务器的IP地址和相应的端口号来处理请求服务,当服务处理完毕后,报文传送到调度器时,调度器会将报文改成原来用户的IP地址和对应的端口号。

VS/NAT优点:服务器支持的系统比较多,只需要一个公网的IP地址就可以了。缺点是:受到调度器的影响比较大,如果调度器最大的吞吐量最大为10Mbytes/s,而一台服务器的吞吐量为1Mbytes/s的话,则一个调度器最多可以带动9台服务器。

 

2、  通过IP隧道实现虚拟服务器(VS/TUN

IP隧道是将原始的IP报文封装到另外一个IP报文中,这样可以使目标IP的数据直接转发另外一个IP报文中,使得数据包必须在一个建立好的通路进行传送。

而在大多数服务中,都有一个这样共同的特点:请求报文较短而响应报文往往包含大量的数据。在IP隧道中,就是将请求报文转发给调度器选择出来的服务器上进行处理,而响应报文直接返回给用户,这样可以大大的增加集群的吞吐量。

VS/TUN优点:调度器直接将请求报文转发给服务器进行处理,将处理后报文直接返回给用户,这样调度器可以处理大量的请求,这样就可以调度非常多台的服务器。

 

3、  通过直接路由实现虚拟服务器(VS/DR

此转发方式采用了大多数Internet服务的非对称特点,调度器只负责报文请求,而服务器直接将响应返回给客户,这点与VS/TUN相似。而在调度器和服务器组中必须有一块物理网卡通过局域网相连接。在转发报文时,调度器会动态的选择一台服务器,只是将数据帧MAC地址为选定服务器的MAC地址,而不是改变IP协议。通过局域网传送到服务器上,然后通过本地的网络设置,根据路由表将报文直接返回给客户。

 

 

阅读(5208) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~