虚拟网络技术:bond技术

网卡bond也称为网卡捆绑,就是将两个或者更多的物理网卡绑定成一个虚拟网卡。

bond的作用:

1.提高网卡的吞吐量

2.增加网络的高可用,实现负载均衡。

                                                 

一、bond简介

bond技术即bonding,能将多块物理网卡绑定到一块虚拟网卡上,之后修改网卡驱动让多块网卡看起来像一个单独的以太网口,外界只能看到一个ip。

多网卡绑定需要提供一个额外的软件的bond驱动实现。通过驱动可以屏蔽多块网卡,对TCP协议层只存在一个bond网卡,在bond程序中实现网络流量的负载均衡,将一个网络请求重定位到不同的网卡上,来提高总体网络的可用性。

二、技术原理

bond技术需要网卡可以接收网络上所有的数据帧。多网卡之间的协同工作,bond将自己的MAC地址复制到各个物理网卡上,让所有网卡共享一个MAC地址。

多物理网卡的bond网卡,其中一块物理网卡会被设置为master,其他网卡是slave。bond网卡的Mac地址=master物理网卡的Mac地址。

在安装网卡时,需要指定bond网卡,以及bond网卡所对应的标志为master的物理网卡。

三、网卡bond模式

网络流量较大的时候推荐使用负载模式(bond0),在可靠性要求较高的时候,推荐使用主备模式(bond1)。

1.bond0

bond0可以保证bond虚拟网卡和被bond的几张物理网卡拥有相同的MAC地址。在bond0模式下,如果一个链接或者会话的数据包从不同的网口发出,途中经过不同的链路,在客户端可能会出现数据包无序到达。另外,如果做bond0的两张或多张网卡接到同一交换机上,还需要对交换机配置聚合模式。

2.bond1

该模式是主备策略。即网卡之间能快速切换,主网卡出现故障时能快速切换到备网卡上,切换过程中上层应用几乎不受影响。因为bond驱动会临时接管上层应用的数据包,存放到数据缓冲区内,等备网卡启动之后再传过去。但如果切换时间过长,贼会引起缓冲区的溢出,就会丢包。

3.bond2

选择网卡的序号=(源MAC地址XOR目标MAC地址)%slave的数量。

4.bond3

广播策略,数据包会被广播到所有slave卡上。

5.bond4

bond4使用动态链接聚合策略。启动时会创建一个聚合组,所有slave网卡共享同样的速率和双工设定,需要交换机支持IEEE 802.3ad动态链路聚合模式。支持使用ethtool工具获取每个slave网卡的速率和双工设定。

6.bond5

bond5基于每个slave网卡的速率选择传输网卡,支持使用ethtool工具获取每个slave的速率。

7.bond6

bond6包含了bond5模式,同时还支持IPV4流量接收时的负载均衡策略,而且不需要任何交换机的支持,支持只是用ethtool获取每个slave的速率,要求底层驱动支持设置某个网卡设备的硬件地址。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/255767.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode刷题--- 计算布尔二叉树的值

个人主页:元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏:http://t.csdnimg.cn/ZxuNL http://t.csdnimg.cn/c9twt 前言:这个专栏主要讲述递归递归、搜索与回溯算法,所以下面题目主要也是这些算法做的 我讲述…

python + mongodb使用入门

最近用了下mongodb ,简单做个记录: 1.启动系统mongo服务 mongod -f mongod.conf其中 mongod.conf 是配置文件,示例如下: dbpath/youpath/data/db #数据库保存位置 logpath/youpath/data/mongod.log #日志 logappendtrue fo…

echarts 柱状图 定时自动轮播(非提示框轮播)

看了很多文档都是实现提示框轮播的,而我要实现的功能是:柱状图有多条数据时,轮播展示其中几条,比如我有100条数据,不能全部展示,设置轮播5条或者10条,依次显示数据,并形成闭环。 &a…

MySQl int(1)、int(20) 的区别到底在哪里

MySQl int(1)、int(20) 的区别到底在哪里 常思一二,便得自然… int(1)数据类型介绍 在MySQL中,INT(1) 是一种定义整数类型的数据字段,其中的数字表示显示宽度而不是存储范围。具体说,INT(1) 中的数字 1 表示显示宽度&#xff0…

Tap虚拟网卡

1 概述 Tap设备通常用于虚拟化场景下,其驱动代码位于drivers/net/tun.c,tap与tun复用大部分代码, 注:drivers/net/tap.c并不是tap设备的代码,而是macvtap和ipvtap; 下文中,我们统一称tap&#…

视界臻色彩 轻巧薄未来 《2023年中国OLED电视发展白皮书》发布

随着中国经济迈入新周期,彩电行业也进入存量竞争阶段。在此背景下,主流品牌围绕新产品、新技术、新应用等方面积极发力,特别是在高端彩电市场的争夺中,伴随着三星OLED的入局开始变得愈发激烈。我国“十三五”规划中明确指出&#…

2023.12.7

.text .global _start _start: 1.RCC时钟使能GPIOE F RCC_MP_AHB4ENSETR[4-5]->1 LDR R0,0x50000a28 LDR R1,[R0] ORR R1,R1,#(0x3<<4) STR R1,[R0] 2.设置PE10为输出模式 GPIOE_MODER[21:20]->01 2.设置PE8为输出模式 GPIOE_MODER[17:16]->01 先清0 LDR R…

Latex公式中矩阵的方括号和圆括号表示方法

一、背景 在使用Latex写论文时&#xff0c;不可避免的涉及到矩阵公式。有的期刊要求矩阵用方括号&#xff0c;有的期刊要求矩阵用圆括号。因此&#xff0c;特记录一下Latex源码在两种表示方法上的区别&#xff0c;以及数组和方程组的扩展。 二、矩阵的方括号表示 首先所有的…

如何选择性能测试工具?ab和其它工具的对比分析!

性能测试是保证应用程序高效可靠的重要手段之一&#xff0c;在进行性能测试时&#xff0c;选择合适的性能测试工具非常重要。应当根据测试需求来选择适合的测试工具&#xff0c;本文将会详细介绍ApacheBench&#xff08;简称ab&#xff09;和其他性能测试工具的区别以及如何选择…

集合进阶指南:从基础知识到高级应用

集合高级 Collection集合 数组和集合的区别 相同点 都是容器,可以存储多个数据 不同点 数组的长度是不可变的,集合的长度是可变的数组可以存储基本数据类型和引用数据类型 集合只能存储引用数据类型,如果要存基本数据类型,需要存对应的包装类 集合类体系结构 Collectio…

【Qt开发流程】之元对象系统

描述 Qt的元对象系统&#xff08;Meta-Object System&#xff09;是Qt框架的核心机制之一&#xff0c;它提供了运行时类型信息&#xff08;RTTI&#xff09;和信号与槽&#xff08;Signals and Slots&#xff09;机制的支持。元对象系统在Qt中扮演了很重要的角色&#xff0c;它…

如何使用Matlab完成窗口与子窗口

目录 一、前言 二、主窗口与主窗口按钮 三、子窗口 四、调用函数并显示在子窗口中的文本框中 五、关闭子窗口 一、前言 有时候需要借用Matlab完成一个图窗功能&#xff0c;但是我们的程序不仅拥有功能&#xff0c;还拥有一些子功能&#xff0c;那么我们该如何借助Matlab完…