网络通信和负载均衡

01 网络通信传输

网络通信和负载均衡


应用层7 nginx 软件
表示层6


会话层5
传输曾4 lvs 内核


网络层3
链路层2
物理层1

网络通信和负载均衡

整个互联网建立在下一跳的模式下

  1. –IP是逻辑上的两个端点
  2. –MAC是物理上连接的两个节点

端点间TCP传输过程中

  1. –确认机制
  2. –状态机制
  3. –不可分割

解析数据包需要成本

  1. –交换机:二层,只关心MAC地址
  2. –路由器:三层,只关心IP和路由表
  3. –LVS服务器:四层,只关心PORT,状态
  4. –nginx:七层,关心socket对应关系

02 负载均衡

LVS

  1. –DR
  2. –客户端发送对VIP的请求
  3. –lvs负载到后端某一台server
  4. –后端server处理后,直接封包回送客户
  5. 源IP地址一定是lvs上面陪的那个公网服务地址
  6. 也就后端server要配置这个ip
  7. 后端server收到的数据包是lvs没有变动过的(IP:vip)
  8. 目标ip一定是自己持有的

so:多个server,接入互联网的server持有相同的IP,是不对的
–必须将后端server中的vip隐藏起来(对外隐藏)


LVS DR

  1. VIP: 虚拟服务器地址
  2. DIP: 转发的网络地址
    2.1 –1,和RIP通信:ARP协议,获取Real Server的RIP:MAC地址
    2.2 –2,转发Client的数据包到RIP上(隐藏的VIP)
  3. RIP: 后端真实主机(后端服务器)
  4. CIP: 客户端IP地址

2.1 四层
网络通信和负载均衡

2.2 四层 D_NAT :::S, D

网络通信和负载均衡

2.3 S_NAT
网络通信和负载均衡

2.4 DR
网络通信和负载均衡

2.5 四层 TUN, v*n
网络通信和负载均衡

03 隐藏VIP方法: 对外隐藏,对内可见

网络通信和负载均衡