您好,欢迎来到有书房!

LVS四种工作模式的区别

分类:知识大全作者:互联网王者 发布时间:2019-02-25 16:49:14阅读:1.8万+

引言:LVS是Linux Virtual Server的简写,意即Linux 虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。


LVS是Linux Virtual Server的简写,意即Linux 虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。章文嵩博士目前工作于中国国家并行与分布式处理重点实验室,主要从事集群技术、操作系统、对象存储与数据库的研究。


LVS主要有四种模式,NAT:网络地址转换模式;DR:直接路由模式;TUN:隧道模式;FULLNAT模式,接下来简单介绍四种模式的区别。


1、NAT模式

NAT模式的主要流程是客户端发送请到LVS服务器,LVS收到网络报文后,将客户端请求报文的目标地址改为后端服务器IP地址,然后直接转发给后端服务器,后端服务器处理业务逻辑,再把回发的网络报文发送给LVS,LVS把报文发给客户端。

NAT模式优点:

简单部署,LVS仅作为一个转发器,LVS只需要一个合法的IP地址。

NAT模式缺点:

LVS承担所有转发功能,会成为整个应用集群的性能瓶颈。大流量情况下,真实服务器集群需要扩大,可能导致单台的LVS无法承载压力。

NAT模式适用场景:

公网IP少或者需要隐藏内部IP的情况下


2、DR模式

DR模式的主要流程是客户端发送请到LVS服务器,LVS收到网络报文后,将网络报文中的源MAC地址改为LVS的MAC地址,目标MAC地址改为其中一台后端服务器的MAC地址,然后转发给后端服务器,后端服务器处理业务逻辑,准备回报发送报文时,将目标IP地址改为客户端,源地址为LVS的IP地址,然后把报文返回给客户端,不经过LVS。

DR模式优点:

后端服务器直接将数据返回至给客户端,LVS不再是瓶颈,整体效率更加高效。因为转发通过重写二层帧的方式,所以当规模非常庞大时,LVS依然有瓶颈;

DR模式缺点:

LVS要和后端服务处于同一局域网,DR模式是通过重写二层帧的方式所以无法跨网段

DR模式适用场景:

适用大部分互联网高并发大流量场景,LVS使用最多的是DR模式


3、TUN模式

TUN模式的主要流程是客户端发送请到LVS服务器,LVS收到网络报文后,做两次头的封装,即保持原来的IP包不变,在外层再封装一层包,源IP为LVS的IP地址,目标IP为后端服务器的IP地址,然后转发给后端服务器,后端服务集群将IP包解开,解析出内层的IP包,处理业务逻辑,准备回报发送报文时,根据内层IP地址,将目标IP地址改为客户端IP地址,然后把报文返回给客户端,不经过LVS。

TUN模式优点:

LVS和后端服务器不需要在同一个机房内。

TUN模式缺点:

后端服务器必须支持隧道模式。

TUN模式适用场景:

后端服务器集群不在一个机房内,需要跨公网的情况,比如系统原本是跨机房部署的


4、FULLNAT模式

FULLNAT模式是LVS对客户端的请求网络报文做了DNAT+SNAT,即将报文的目的地址改为后端服务器的地址,源地址改为LVS服务器的IP地址,然后转发给后端服务器,FULLNAT模式下,LVS会对请求包和响应包都做SNAT+DNAT。

FULLNAT模式优点:

性能比不上DR和NAT,但是FULLNAT模式没有组网要求,允许LVS服务器和后端服务器部署在不同的子网中。FULLNAT下,客户端感知不到后端服务器,后端服务器也感知不到客户端,它们都只能看到LVS服务器。

FULLNAT模式缺点:

特殊情况下(比如集群内部互相访问的问题)

FULLNAT模式适用场景:

一般是LVS服务器和后端服务器处在复杂的内网环境中,阿里云的SLB是这种方式运行


声明:本文内容版权归原作者所有,未经授权,禁止转载!

声明:本站仅提供内容存储、展示服务,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的虚假信息,谨防诈骗。如发现有害或侵权内容,可联系本站删除!

发表评论

评论

联系
我们

平台负责人邮箱
282271588@qq.com

关注
公众号

关注官方公众号

下载
安卓版

下载安卓版

回到
顶部