zoukankan      html  css  js  c++  java
  • 高可用与负载均衡(2)之四层负载均衡的概念

    preface

    网络协议的四层负载均衡其实指的就是传输层。我们分析下4层负载均衡的数据格式。

    四层负载均衡

    所谓的四层负载均衡,就是说由负载均衡设备或软件通过TCP/UDP的header信息进行直接判断由哪个实际的后端服务器来实际处理该连接的,从而转发。在我们生产环境下用的最多的就是对目标端口进行调度,如有名的LVS软件。

    四层负载均衡时序图

    四层负载均衡的一般网络时序图如下所示

    简要说明下:

    1. LB在收到客户端TCP SYN包之后,既可以进行负载调度。
    2. 向通过某种算法选择的后端服务器发送SYN包
    3. 后端服务器收到SYN包以后,回复SYN+ACK
    4. 负载均衡服务器回复SYN+ACK给客户端
    5. 客户端回复ACK
    6. 负载均衡器发送ACK给后端服务器。此时客户端,负载均衡器,后端服务器都处于established状态。
    7. 客户端开始请求数据,经过LB到后端服务器上
    8. 服务器返回数据给LB,LB再给client。

    四层负载均衡特点

    1. 模型简单。
      所谓模型简单就是LB不需要关系业务逻辑,只进行负载调度,网络转发以及后端服务器监控检测。
    2. 吞吐量大
      依据模型简单这个特点,CPU处理逻辑简单,相对于更高层次的负载均衡,如七层负载,可以提供更大的吞吐量
    3. 应用范围广
      工作在第四层,可以对任何应用做负载均衡,如DNS,HTTP,MYSQL等。

    根据上面三个特点,应用场景主要如下:

    • 吞吐量较高的情况
    • 后端服务器的业务逻辑为他人私有逻辑,你无法触碰。
  • 相关阅读:
    Jenkins知识地图
    PageObject&PageFactory
    robot framework-databaselibaray库使用(python)
    robot framework环境搭建
    使用instantclient_11_2 和PL/SQL Developer工具包连接oracle 11g远程数据库(转)
    (转)pip和easy_install使用方式
    图解:如何在LINUX中安装VM-Tools
    ANT简明教程[转载]
    Linux常用命令
    oracle数据分组
  • 原文地址:https://www.cnblogs.com/liaojiafa/p/6058527.html
Copyright © 2011-2022 走看看