首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

深入浅出 LVS 负载均衡系列(二):DR、TUN 模型原理

因此 VIP 必须绑定在真实服务器的 lo 网卡上,并且不允许将此网卡信息经过 ARP 协议对外通告 3.请求的数据包经过负载均衡器后,直接由真实服务器返回给客户端,响应数据包不需要再经过负载均衡器 TUN...此时在真实服务器上查看 TCP 连接为:VIP ➡️ CIP 总结一下 TUN 模式的特点: 1.不改变请求数据包,而是在请求数据包上新增一层 IP 首部信息。...在 DR 和 TUN 模式中,负载均衡器只转发了请求数据包,响应数据包不经过负载均衡器,而是直接返回给客户端。...TUN 模式,是对 DR 模式的一种演进。突破 DR 模式中真实服务器的默认网关必须是负载均衡器的限制。...TUN 模式不会对源数据包进行修改,而是在源数据包上额外新增一条 IP 首部信息,所以不能对端口映射,且要求真实服务器必须能够卸载掉两层 IP 首部信息。 ?

79420

tun设备的妙用-V**篇

因为每天都要通过V**访问公司内部服务,二哥想起来,何不给大家介绍下V**的工作原理呢?V**协议有很多个,最典型的有IPSec和OpenV**,这里二哥只聊OpenV**。...tun设备 我们一定见过了令人眼花缭乱的各种网络设备,有物理网卡,也有如veth和bridge这样的虚拟设备,现在又来了一个tun设备。 tun设备是什么呢?...图 1:tun设备和eth设备对比示意图 现在我们大概能猜得出:使用 tun设备的目的,其实是为了把来自协议栈的数据包,先交给某个打开了/dev/net/tun字符设备的用户进程处理。...首先它也归内核的网络设备子系统管理,对于Linux内核网络设备管理模块来说,虚拟设备和物理设备没有区别,都是网络设备,都能配置IP,从网络设备来的数据,都会转发给协议栈,协议栈过来的数据,也会交由网络设备发送出去...很显然,对于tun设备而言,将接收到的数据发往应用层这个动作是在它的驱动层面实现的。代码位于drivers/net/tun.c。 隧道协议 聊完了tun设备,我们再来看看隧道协议。

1.3K20

部署LVS TUN集群

一、TUN模式集群 ​在NAT模式中,由于所有的请求及响应的数据包都需要经过LVS调度器,如果后端的服务器数量较大,则调度器就会成为整个集群环境的瓶颈。...而请求包的大小往往小于响应包,因为响应数据包中包含有客户需要的具体数据,所以TUN模式的思路就是将请求与响应分离,让调度器仅处理请求,让真实服务器将响应数据包直接返回给客户端。...在TUN模式中有一个IP隧道,这个IP隧道是一种数据包封装技术,可以将原始数据包封装并添加新的包头(包头内容包括新的源地址和端口,新的目标地址和端口),从而实现将一个目标为调度器VIP地址的数据包封装,...工作原理 基于NAT机制实现。...缺点: 隧道模式的RS节点需要合法IP,这种方式需要所有的服务器支持”IP Tunneling”(IP Encapsulation)协议,服务器可能只局限在部分Linux系统上。

53210

tun设备的妙用-VPN篇

因为每天都要通过VPN访问公司内部服务,二哥想起来,何不给大家介绍下VPN的工作原理呢?VPN协议有很多个,最典型的有IPSec和OpenVPN,这里二哥只聊OpenVPN。...tun设备 ---- 我们一定见过了令人眼花缭乱的各种网络设备,有物理网卡,也有如veth和bridge这样的虚拟设备,现在又来了一个tun设备。 tun设备是什么呢?...图 1:tun设备和eth设备对比示意图 现在我们大概能猜得出:使用 tun设备的目的,其实是为了把来自协议栈的数据包,先交给某个打开了/dev/net/tun字符设备的用户进程处理。...首先它也归内核的网络设备子系统管理,对于Linux内核网络设备管理模块来说,虚拟设备和物理设备没有区别,都是网络设备,都能配置IP,从网络设备来的数据,都会转发给协议栈,协议栈过来的数据,也会交由网络设备发送出去...很显然,对于tun设备而言,将接收到的数据发往应用层这个动作是在它的驱动层面实现的。代码位于drivers/net/tun.c。 隧道协议 ---- 聊完了tun设备,我们再来看看隧道协议。

4.6K41

Linux mmap原理

Linux mmap原理 前言 Linux段页式内存管理 mmap mmap内存映射原理 文字概述 mmap函数参数介绍 源码解析 1. 文件映射 2....,但是并没有深入理解mmap在操作系统内部是如何实现的,原理是什么。...本文想要和大家一起来聊聊mmap的原理,本文整体脉络如下: linux段页式内存管理回顾 mmap原理 ---- Linux段页式内存管理 这里的段页式内存管理主要基于linux 0.11进行讲解...(作者本人并非主攻linux,所以只是对linux 0.11略有研究) 无论是现代操作系统还是最早的linux 0.11操作系统,在对于物理内存的管理,都是将物理内存按页划分,如下图所示:...下面我们通过一幅图来对 mmap 的原理进行阐述: 从上图可以看出,mmap 的原理就是将虚拟内存空间映射到文件的页缓存,我们可以知道:对文件进行读写时需要经过页缓存进行中转的。

3.4K21

什么是 IP 隧道,Linux 怎么实现隧道通信?

IP 隧道 Linux 原生支持多种三层隧道,其底层实现原理都是基于 tun 设备。我们可以通过命令 ip tunnel help 查看 IP 隧道的相关操作。...inherit/00..ff } TTL := { 1..255 | inherit } KEY := { DOTTED_QUAD | NUMBER } 可以看到,Linux...实践 IPIP 隧道 我们下面以 ipip 作为例子,来实践下 Linux 的隧道通信。本文以前文的 Linux 路由机制作为基础,不清楚 Linux 路由的可以先翻看下那篇文章再来看。...5、Linux 打开了 ip_forward,相当于一台路由器,10.10.10.0 和 10.10.20.0 是两条直连路由,所以直接查表转发,从 NS1 过渡到 NS2。...总结 现在的 Linux 内核原生支持 5 种隧道协议,它们底层实现都是采用 tun 虚拟设备。 我们熟知的各种 V** 软件,其底层实现都离不开这 5 种隧道协议。

7K30

揭开 LVS 神秘的面纱

LVS 是linux virtual server的简写,意为:Linux虚拟服务器,这是一个由章文嵩博士在1998年5月发起的一个自由软件项目。...Linux 2.4 以后的内核版本,已经集成了 LVS 的各个功能模块,我们可以直接使用LVS提供的各种功能。...4.2 TUN 模式 优点: 可以调度百台以上的服务器(同等规模的服务器),而它不会成为系统的瓶颈。可以用来构建高性能的超级服务器。 原理、配置简单,容易理解。...TUN 可以调度百台以上的服务器(同等规模的服务器),而它不会成为系统的瓶颈。可以用来构建高性能的超级服务器。原理、配置简单,容易理解。...TUN 可以调度百台以上的服务器(同等规模的服务器),而它不会成为系统的瓶颈。可以用来构建高性能的超级服务器。 原理、配置简单,容易理解。

56110

Linux系统调用原理

系统调用 是 Linux 内核提供的一段代码(函数),其实现了一些特定的功能,用户可以通过 int 0x80 中断(x86 CPU)或者 syscall 指令(x64 CPU)来调用 系统调用。...二、进入系统调用 本文主要介绍的是 x86 CPU 进入系统调用的方式 Linux 提供了 int 0x80 中断来让用户程序进入 系统调用,我们来看看 Linux 对 int 0x80 中断的处理初始化过程...原理如下图(图片来源 https://developer.ibm.com/zh/technologies/linux/tutorials/l-system-calls/ ): ?...Linux 使用寄存器来传递参数,参数与寄存器的关系如下: 第1个参数放置在 ebx 寄存器。 第2个参数放置在 ecx 寄存器。 第3个参数放置在 edx 寄存器。...而 Linux 进入中断处理程序时,会把这些寄存器的值保存到内核栈中,这样 系统调用 就能通过内核栈来获取到参数。

4.1K30

tun设备的妙用-OpenV**篇全流程补充

这篇是对上一篇《tun设备的妙用-V**篇》的补充。有朋友问二哥能不能把 OpenV** server 端的细节也画出来。安排! 在这张图里,你会发现在server端那里也有一个 tun0 设备。...tun设备是一个网络设备 需要注意的是在这张图中,我将 tun 设备画在了链路层,因为它本质上还是一个网络设备,它的代码位于 drivers/net/tun.c 。...网上有不少图是直接将tun设备画在IP层的,二哥觉得这样画虽然可以形象地说明tun设备和IP层的密切关系( tun 设备和 IP frame 打交道,而 tap 设备与 Ethernet frame 打交道...思考再三,我还是决定遵循tun设备的本质和它该处的位置来画这张图。 IP层发给tun设备的数据包 同时因为 tun 设备又是一个 POINTOPOINT 设备,故数据发送过程中不会有 ARP 流程。...tun设备和用户态通信的数据包 那么另一个问题来了,tun 设备发往应用层的数据包的格式是什么呢?

88320

深入理解kubernetes(k8s)网络原理之五-flannel原理

深入理解kubernetes(k8s)网络原理之五-flannel原理 flannel有udp、vxlan和host-gw三种模式,udp模式因为性能较低现在已经比较少用到,host-gw我们在前面简单介绍过...,因为使用场景比较受限,所以vxlan模式是flannel使用最多的模式,本章我们来介绍一下vxlan模式的原理。...vxlan设备,而是一个tun设备,tun设备的工作原理是:用户态程序打开/dev/net/tun文件,主机就会多一张名为tun0的网卡,任何时候往这个打开的文件写的内容都会直接被内核协议栈收包,效果就是相当于上面代码中调用了.../net/tun文件写,根据tun设备的工作原理,它的另一端flannel.1网卡会收到这个包,然后就通过主机协议栈转发到pod2。...了解了flannel的原理后,接下来我们照着撸一个cni吧。

2.6K01
领券