大厂Data+Agent 秘籍:腾讯/阿里/字节解析如何提升数据分析智能。 了解详情
写点什么

LB 服务:硬件如何被软件取代(上)

  • 2020-04-01
  • 本文字数:1579 字

    阅读完需:约 5 分钟

LB服务:硬件如何被软件取代(上)

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


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



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


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



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


  • LSLB:Local Server Load Balance

  • GSLB:Global Service Load Balance

  • LLB:Link Load Balance


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



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


负载均衡算法:即流量到了 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 中,在云的模式下还可以继续提供服务。


华为云服务中,也同样提供了各种负载均衡方案,以支持业务 LSLB 和 GSLB 的需求。具体华为云如何提供?使用华为云 ELB 服务有哪些注意事项?


本文转载自 华为云产品与解决方案 公众号。


原文链接:https://mp.weixin.qq.com/s/t93Gp5ZuJSSqp7zfGbOqow


2020-04-01 21:141724

评论

发布
暂无评论
发现更多内容

Kafka-Broker的基本模块

编程江湖

大数据

12月17日技术大咖云集,云智技术论坛“年度收官”聚焦知识智能化

百度大脑

人工智能

Flink Sql Gateway的原理与实践

安第斯智能云

数据库 sql

LevelDB封装和功能拓展

FunTester

数据库 测试框架 测试开发 leveldb FunTester

dart系列之:dart优秀的秘诀-隔离机制

程序那些事

flutter dart 程序那些事 12月日更 flutter for web

飞桨企业版重磅发布智能边缘控制台,5分钟零代码自动化模型部署

百度大脑

人工智能

压测大师链路监控服务开放免费体验预约

WeTest

什么是反序列化?反序列化的过程,原理

网络安全学海

黑客 网络安全 信息安全 渗透测试 反序列化

前端布局中让子元素横向排列并自动换行

Changing Lin

Vue 前端开发 12月日更

10个常见的前端手写功能,你全都会吗?

CRMEB

Android C++系列:Linux Socket编程(四)多路IO转接服务器

轻口味

28天写作 12月日更

CRM报告如何改变您的业务

低代码小观

低代码 企业管理 CRM 企业管理系统 CRM系统

3个步骤,4大平台,搞定大规模数据处理

百度开发者中心

大数据

VUEX的store用法

CRMEB

为什么我不怎么用调试器

Justin

软件开发 28天写作 调试工具

从4K到8K,谁才是开启8K时代的钥匙?

郑州埃文科技

数据库 IP 8k

数百名专家政要出席阿联酋区块链大会“DCS 2021 ” 虎符受邀亮相

区块链前沿News

Hoo 虎符交易所 区块链峰会 DCS 2021 全球分布式云存储峰会

从直播硬件出发,浅析直播技术到物联网设备的智能化趋势

阿里云CloudImagine

阿里云 物联网 直播 直播技术 视频云

微服务架构 | 如何优化日志链路追踪输出SQL的执行效率?

李尚智

微服务架构 链路追踪 SpringCloud

十一月热点:BML预置模型调参添新利器;EasyDL图像分类上线免训练极速迭代模式

百度大脑

人工智能

Hybris commerce产品主数据的搜索API,批量返回若干主数据的值

汪子熙

28天写作 SAP 12月日更

1. 编译原理概览

书旅

Go 后端 编译原理 源码剖析

CurveFS预览版重磅首发,Curve加速迈向云原生软件定义存储

网易数帆

GitHub

Linux一学就会之Linux系统启动原理及故障排除

学神来啦

Linux 运维 黑客 linux运维 linux云计算

阿里云李克:边缘云技术发展与实践

阿里云Edge Plus

CDN 边缘计算 CDN加速

MySQL从入门到入魔(01)

海拥(haiyong.site)

MySQL 入门 28天写作 12月日更

网络安全产品之堡垒机应用于教育行业案例讲解

行云管家

网络安全 教育 等保 等级保护

管控一体化 | IM即时通讯构建企业协同生态链

BeeWorks

再下一城!两大社区携手打造 API 日志监控新利器

API7.ai 技术团队

云原生 网关 日志管理 Apache APISIX Apache RocketMQ

Java开发之命名规范

@零度

Java 命名规范

国内首次Feature Store Meetup回顾

第四范式开发者社区

机器学习 第四范式 OpenMLDB 特征平台

LB服务:硬件如何被软件取代(上)_文化 & 方法_华为云产品与解决方案_InfoQ精选文章