【摘要】 大业务上云,难免要用到LB。可是,您是否了解LB的来龙去脉?本文浅谈一下LB,从硬件走到软件,他们经历了什么转变。

大业务上云,难免要用到LB。可是,您是否了解LB的来龙去脉?本文浅谈一下LB,从硬件走到软件,他们经历了什么转变。

几年前,刚接触网络的时候,就听过一个称呼:四层交换。

四层交换,顾名思义,就是基于传输层的TCP/UDP协议进行数据交换的,利用端口信息区分报文,可进行数据包过滤、服务质量(QoS)、负载均衡、主机备用连接、统计和报告等。而我们使用最频繁的,便是负载均衡(LB)。

盒子时代,业界最出名的三家四层交换厂商:F5、citrix、radware。至今还称霸着负载均衡的市场。

四层交换在负载均衡另有,主要提供三大类负载均衡服务:

l  LSLB:Local Server Load Balance

l  GSLB:Global Service Load Balance

l  LLB:Link Load Balance

LSLB(本地负载均衡):给本地集群部署的多台服务器提供流量负载分担能力。应用的V-IP在四层交换上,四层交换根据配置的负载均衡算法和会话保持算法分发给后端服务区。

这里提到2个概念,负载均衡算法和会话保持算法

负载均衡算法:即流量到了LB以后,应该分给谁,常见的算法有轮询、最小用户数、最小流量、哈希等

会话保持算法:首包通过负载均衡算法确定发给具体那一台后端以后,要生成session,以指导后续报文转发。而生成的session可以根据配置只记录某些信息,比如只记录源地址而不纪录端口,这样相同的源的不同请求(源port不一样)也会发给相同的后端

GSLB(全局负载均衡):应用在多站点部署,GSLB可根据访问者的位置,提供就近接入能力。其实GSLB更多地是一种DNS重定向能力。

如图,访问者在广州,要去访问www.huawei.Com,请求本地DNS解析时,DNS通过递归查询发现域名是托管在GSLB的,于是向GSLB发出申请,GSLB通过测试自己到DNS的延迟,识别出来广州站点离用户最近,于是将广州的IP地址返回给用户。用户请求被重定向给广州站点。

LLB(链路负载均衡):当访问一个应用,有多条线路可以同时到达时,LLB会提供线路优选,根据访问者或者线路的负载情况选择最有线路。常用于优选电信和联通都存在线路接入的场景

这几种负载均衡场景,都是IT行业里最普遍的场景。而F5、Radware、Citrix也是IT界大名鼎鼎的公司。并且随着技术的演进,四层交换设备已经不仅仅只能提供四层的LB,七层的能力已经逐步完善。

可是为何到了云时代以后,他们的名声虽然依旧响亮,但是始终感觉不如从前了呢?而上面的几种功能,在云时代又是如何提供的呢?

再强大的盒子,能支撑的流量也不过百G级别。而在互联网迅速崛起的年代,100G流量根本不算什么,王者荣耀据说流量总和已经达到了800G(小道消息,待考证)。而类似于google的8.8.8.8,对流量和可靠性的需求,根本不是一个盒子可以承担的起的

于是近几年,负载均衡软件蓬勃发展,结合动态路由协议实现anycast等能力后,拓展性和可靠性达到了一个质的飞跃。

LSLB逐步被 HA proxy、LVS、nginx等软件代替,各大互联网公司也纷纷基于开源软件进一步开发加固,做出了自己的LB集群。比如腾讯的TGW,还有阿里的LVS集群等。

而GSLB,其实也只是承担了一个DNS重定向的能力,也逐步被智能DNS解析服务所取代,比如AWS敢于承诺100%可用性的Router53、腾讯的dnspod等。

LLB呢?被运营商提供的BGP线路所取代。传统的LLB还需要每一个运营商1个IP,而BGP直接允许相同的IP在不同的运营商网络里广播,根据BGP协议自己实现就近接入。

当然,云还是比较包容的。盒子可能不太适合大规模服务化,但是给某一些企业使用还是很不错的选择,AWS跟F5合作,可以将F5软件化,部署到VM中,在云的模式下还可以继续提供服务。

资料来源:https://bbs.huaweicloud.com/blogs/caf97cef9bac11e89fc57ca23e93a89f

LB服务:硬件如何被软件取代(上)的更多相关文章

  1. 采用MQTT协议实现android消息推送(2)MQTT服务端与客户端软件对比、android客户端示列表

    1.服务端软件对比 https://github.com/mqtt/mqtt.github.io/wiki/servers 名称(点名进官网) 特性 简介 收费 支持的客户端语言 IBM MQ 完整的 ...

  2. 基于Nginx+Keepalived的LB服务监控(邮件报警)

    IDC两台机器上部署了Nginx+Keepalived主从模式的LB代理负载层,现在需要对LB进行每日巡检和服务监控,利用SendEmail邮件监控. 0)SendEmail部署 参考:http:// ...

  3. 在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现Web端直传,服务端签名直传并设置上传回调的实现流程

    在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现本地文件上传流程 by shuijingwan · 2016/01/13 1.SDK安装 github ...

  4. Ali OSS服务端签名直传并设置上传回调

    服务端签名直传并设置上传回调 背景 请参考 Web端直传实践 里的背景介绍. 当采用服务端签名后直传方案后,问题来了,用户上传数据后,很多场景下,应用服务器都要知道用户上传了哪些文件,文件名字,甚至如 ...

  5. 配置允许匿名用户登录访问vsftpd服务,进行文档的上传下载、文档的新建删除等操作

    centos7环境下 临时关闭防火墙 #systemctl stop firewalld 临时关闭selinux #setenforce 0 安装ftp服务 #yum install vsftpd - ...

  6. 听说江苏省没有webSocket服务硬件

    听说江苏省没有webSocket服务硬件 昨天项目上线,我门开发采用的webSocket做实时轮询,然后开发部老总怒怼"江苏省没有webSocket服务硬件,江苏省没有webSocket服务 ...

  7. LB服务,软LB的服务能力(下)

    [摘要] 现在常用的LB软件,主要是LVS和nginx.普通情况下,LVS主要负责四层负载均衡,nginx负责七层.当然,业界也有友商基于LVS做出了七层负载均衡.本篇主要讲一下LVS的工作模式及各种 ...

  8. 在windows系统上安装VMware Workstation虚拟机,然后在虚拟机VMware Workstation上安装linux系统,在linux系统安装xshell的服务端,在windows系统上安装xshell。用windows系统上的xshell连接到linux

    第一步:安装xshell: 去百度   xshell ,然后安装一下就可以了.就是普通的软件安装,在这里不做过多的接收. 第二步:安装虚拟机VMware Workstation 百度安装,不做过介绍 ...

  9. 【解决办法】糟糕,我的电脑只有IE64位浏览器能上网,其他软件都上不了网

      最近两周在三班四班有5位同学电脑7次出现网络故障,表现为能连上锐捷.DNS正常却不能上网,其中在我自己的计算机上就发生了2次.上网搜集并整理了以下资料,供大家参考.请直接参见[解决办法]. [网上 ...

随机推荐

  1. 2020网鼎杯 白虎组reverse:hero

    主函数,当bossexist的值不为0时,while循环dround()函数,循环结束输出flag outflag()函数的flag值由6段数据拼凑而成 while循环的dround()函数有三个选择 ...

  2. python机器学习(三)分类算法-朴素贝叶斯

    一.概率基础 概率定义:概率定义为一件事情发生的可能性,例如,随机抛硬币,正面朝上的概率. 联合概率:包含多个条件,且所有条件同时成立的概率,记作:

  3. Spring @Qualifier 注释

    可能会有这样一种情况,当你创建多个具有相同类型的 bean 时,并且想要用一个属性只为它们其中的一个进行装配. 在这种情况下,你可以使用 @Qualifier 注释和 @Autowired 注释通过指 ...

  4. Hyperledger Fabric开发(二):创建网络

    运行fabric-samples项目中的一个例子:first-network,创建第一个网络(Building Your First Network). 该网络共有4个peer节点,划分为2个组织(o ...

  5. Windows系统下Git的下载和配置

    简介:Git是一款免费.开源的分布式版本控制系统,可记录文件每次改动,便于多人协作编辑. 下载:git-for-windows下载地址https://git-for-windows.github.io ...

  6. 抛开 Spring ,你知道 MyBatis 加载 Mapper 的底层原理吗?

    原文链接:抛开 Spring ,你知道 MyBatis 加载 Mapper 的底层原理吗? 大家都知道,利用 Spring 整合 MyBatis,我们可以直接利用 @MapperScan 注解或者 @ ...

  7. 2/3/4G网络架构

    1通讯网络演进 1.1 概念名词 LTE=Long Term Evolution=长期演进, 是3GPP制定的高数据率.低时延.面向分组域优化的新一代宽带移动通信标准项目. E-UTRAN 无线接入网 ...

  8. PowerDesigner使用教程(一)

    一.PowerDesigner简介 PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一.Rose是专攻UML对象模型的建模工具,之后才向数据 ...

  9. [Objective-C] 017_UI篇_UIView(中)

    在上篇我们简单讲了UIView的坐标与几何结构,这篇我们来实战UIView一下.UIView在App中有着绝对重要的地位,因为可视化控件几乎都是UIView的子类.在App负责渲染区域的内容,并且响应 ...

  10. MVC设计模式-查询与删除

    MVC是Model-View-Controller的简称,即模型-视图-控制器.MVC是一种设计模式,它把应用程序分成三个核心模块: 模型:模型是应用程序的主体部分,模型表示业务数据和业务逻辑. 一个 ...