一、网络层协议

网络协议是由七层ISO协议定义,自底向上分为物理层、数据链路层、网络层、传输层、会话层、表现层和应用层。

四层负载均衡主要工作在网络七层ISO协议的第四层,即传输层。传输层的代表协议为TCP。相对于网络层,传输层对于数据包的区分,除了包含IP地址外,还包含端口号,并且TCP实现的是通过在不同机器的两个进程之间建立连接来进行通信。

二、集群节点选择与连接建立

  • 所以四层负载均衡主要是基于IP和端口号来进行请求转发。由于传输层可以实现两个不同机器进程的连接建立,所以在四层负载均衡的实现当中,负载均衡器接收到一个请求报文时,具体为接收到TCP的第一次握手报文时,可以根据一定的负载均衡算法选择一个集群节点。

  • 集群节点的选择过程为:将这个握手报文的目标IP地址和端口号修改为,通过负载均衡算法从集群中选中的某个节点的IP地址和运行于其上的服务进程所对应的端口号,从而可以将该请求转发给这个节点。由于是在TCP层完成负载均衡,所以客户端是直接与集群的这个节点建立TCP连接的,而不是与负载均衡器建立TCP连接。负载均衡器只是起到了一个中转的作用,后续该客户端的请求是直接发送给这个节点的。具体工作过程如下图所示。

三、请求处理与数据传输

  • 在四层负载均衡实现当中,由于是在客户端和服务集群节点之间直接建立连接进行数据传输的,负载均衡器只是在连接建立阶段进行一个中转,不需要处理该连接之后的请求和响应的相关数据,所以该负载均衡器的负载较低,性能较高,可以处理更多请求的转发。
  • 其中四层负载均衡的典型实现是LVS,具体可以查阅相关资料了解LVS的详细设计与使用。

LVS四层负载均衡原理解析相关推荐

  1. 使用LVS实现负载均衡原理及安装配置详解

    使用LVS实现负载均衡原理及安装配置详解 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均 ...

  2. LVS四层负载均衡集群

    大型网站高并发解决方案LVS 文章目录 大型网站高并发解决方案LVS 一.集群功能分类 LB 图示 负载均衡产品分类 软件负载均衡设备 硬件负载均衡设备 HA 二.负载均衡 负载均衡的主要方式 htt ...

  3. lvs实现负载均衡原理详解

    前言: LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,现在已经是 Linux标准内核的一部分.在Linux2.4内核以前, ...

  4. 网络七层协议_Nginx七层负载均衡原理解析

    一.网络协议:应用层 七层负载均衡主要工作在网络七层ISO协议的第七层,即应用层.由于在应用层主要是处理对应的应用层协议的相关数据,如HTTP协议,而无法操作传输层TCP连接相关细节,故在七层负载均衡 ...

  5. Nginx七层负载均衡原理解析

    一.网络协议:应用层 七层负载均衡主要工作在网络七层ISO协议的第七层,即应用层.由于在应用层主要是处理对应的应用层协议的相关数据,如HTTP协议,而无法操作传输层TCP连接相关细节,故在七层负载均衡 ...

  6. 基于ip地址的客户识别原理_使用 LVS 实现负载均衡原理及安装配置

    [141] 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F5.Netscale. ...

  7. 超详细!一文带你了解LVS四层负载均衡企业级实践!

    随着时代发展,LVS在中小企业作为单独Web集群负载均衡用的已经极少了,更多被更简单的Nginx替代. 在今天(2022年)的运维工作中,LVS更多的是放在Nginx7层负载前面做4层负载,目的是支持 ...

  8. 一文带你深入理解负载均衡原理

    一.背景 "远古时期",单机计算机处理性能很低,一般我们会通过扩容机器配置资源,以便更好承载我们的应用,例如:当时的个人电脑,如果你想玩大型游戏,我们最直接的做法就是替换更好的CP ...

  9. L4和L7负载均衡原理和常用负载均衡架构实现

    L4和L7负载均衡原理 四层负载均衡原理 所谓四层负载均衡,也就是主要通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器.以常见的TCP为例,负载均衡设备在接 ...

最新文章

  1. delphi 登录界面 主窗体 切换_winform项目——仿QQ即时通讯程序06:主界面交互逻辑...
  2. 「过拟合」也能废物利用了:有人用它高清重建3D物体表面,参数减少99%
  3. 2020年通信网络基础期末复习
  4. 开启大数据时代谷歌三篇论文-Mapreduce
  5. 百度地图示例左侧的代码编辑器Ace Editor
  6. 十三、前端基本功:DOM练习
  7. java缓存怎么用_java开发应该如何缓存?
  8. 4路视频+4路百电(物理隔离)+8路电话+开关量+串口+电话光端机 武警光端机
  9. 美版知乎:没有美国和其他国家的许可,中国怎么能建造空间站?
  10. oracle dd if=/dev/zero of=/dev,【转】dd if=/dev/zero of=的含义是什么?Linux 下的dd命令使用详解...
  11. 兼顾pc和移动端的textarea字数监控的实现方法
  12. C# WPF 利用NPOI读写Excel文件
  13. PP-OCR论文笔记
  14. Colaboratory平台+Mask R-CNN进行模型训练和实例分割
  15. 合并查找到的文件,至新的文件中
  16. 校长办公室管理系统c语言,【锦城故事】学软硬结合理论做智慧超群系统是锦城电子的必经之路...
  17. 计算机开机更新失败怎么办,windows update更新失败怎么办,详细教您windows update更新失败怎么办...
  18. bzoj1861 [Zjoi2006]Book 书架
  19. Xshell 6免费安装
  20. 墙裂推荐免费的试题搜索网站

热门文章

  1. “互联网+”取代O2O将成为2016最大风口
  2. 从市场与产品走向看RPA还能火多久?
  3. touchstart、touchmove、touchend关于兼容性问题
  4. 数据质量管理系统有效清理垃圾数据
  5. 西门子博图怎么导入库文件_如何在博途环境下使用库文件来共享代码?
  6. 看微信如何往你的朋友圈里投广告?微信广告团队李昊在微信公开课演讲实录
  7. ImageNet介绍
  8. 【备战美赛】蒙特卡洛算法
  9. Java基础-斗地主案例
  10. 用java写一个斗地主