端口绑定的种类(具体介绍网上很多参考)

balance-rr or 0

active-backup or 1

balance-xor or 2

broadcast or 3

802.3ad or 4

balance-tlb or 5

balance-alb or 6

使用场景

高可用场景

上行一台交换机

参考增加带宽场景。因为如果交换机故障,则连接中断。若某链路故障,the bonding load balance modes

support link monitoring of their members,会自动切换。

上行两台交换机

TOPO如下

            |                                     |
|port3 port3|
+-----+----+ +-----+----+
| |port2 ISL port2| |
| switch A +--------------------------+ switch B |
| | | |
+-----+----+ +-----++---+
|port1 port1|
| +-------+ |
+-------------+ host1 +---------------+
eth0 +-------+ eth1

这种模式下,只能选mode1(推荐)或者mode3(适用于某些特殊场景),其他模式需要对端连接到同一台设备。

链路监控选择 MII,ARP。MII简单,但不准确,除非交换机侧做"trunk failover." This is a feature of theswitch that causes the link state of a particular switch port to be setdown (or up) when the state of another switch port goes down (or up).。ARP需要配置target。

增加带宽场景

上行一台交换机(逻辑,如做了堆叠的两个交换机可以视为一个)

三层模式

 +----------+                     +----------+
| |eth0 port1| | to other networks
| Host A +---------------------+ router +------------------->
| +---------------------+ | Hosts B and C are out
| |eth1 port2| | here somewhere
+----------+ +----------+

二层模式

+----------+            +----------+       +--------+
| |eth0 port1| +-------+ Host B |
| Host A +------------+ switch |port3 +--------+
| +------------+ | +--------+
| |eth1 port2| +------------------+ Host C |
+----------+ +----------+port4 +--------+

简而言之,由于许多负载均衡策略都和源MAC和目的MAC相关,三层模式下,目的MAC为gateway的MAC,二层模式下,目的MAC为通信对象HOSTB,HOSTC的MAC,这会带来一些区别。

模式选择

balance-rr or 0

这种模式是唯一可以做到让单个TCP流的带宽都增加的,但由于单个TCP流走两个不通链路,会带来包乱序的问题,包乱序会带来重传,严重时候直接reset。

active-backup or 1

这种模式在此场景下没啥优势,因为两条链路都连在同一个交换机上,在此场景下,loader blance模式会在带来相同可用性提升的基础上,提升带宽。但在交换机不支持负载均衡模式下有用。

balance-xor or 2

二层模式下可以使用,三层模式下不推荐。

broadcast or 3

同 mode 1

802.3ad or 4

推荐使用。通常交换机都支持,问题是三层模式也可能导致流量不均衡。只支持MII监视器。

balance-tlb or 5

三层模式也会导致流量不均衡,与mode4不同的是,salve设备可以是不同的速率,不用交换机特殊配置。

balance-alb or 6

同mode5,并且需要驱动支持修改MAC地址。

上行多台交换机

                   +-----------+
| Host A |
+-+---+---+-+
| | |
+--------+ | +---------+
| | |
+------+---+ +-----+----+ +-----+----+
| Switch A | | Switch B | | Switch C |
+------+---+ +-----+----+ +-----+----+
| | |
+--------+ | +---------+
| | |
+-+---+---+-+
| Host B |
+-----------+

模式选择

一般选择balance-rr。

某项目在华为堆叠,服务器配置mode5的情况下,(交换机侧配不配置port-channel一样)丢包。待项目重启后尝试更改服务器侧为mode4试试。

交换机侧

[DeviceA] interface bridge-aggregation 1

[DeviceA-Bridge-Aggregation1] quit

分别将端口GigabitEthernet1/0/1至 GigabitEthernet1/0/3加入到聚合组1中。

[DeviceA] interface gigabitethernet 1/0/1

[DeviceA-gigabitethernet1/0/1] port link-aggregation group 1

[DeviceA-gigabitethernet1/0/1] quit

[DeviceA] interface gigabitethernet 1/0/2

[DeviceA-gigabitethernet1/0/2] port link-aggregation group 1

[DeviceA-gigabitethernet1/0/2] quit

[DeviceA] interface gigabitethernet 1/0/3

[DeviceA-gigabitethernet1/0/3] port link-aggregation group 1

[DeviceA-gigabitethernet1/0/3] quit

[DeviceA] interface bridge-aggregation 1

[DeviceA-Bridge-Aggregation1] port link-type access vlan 10 待测试

参考:

https://www.kernel.org/doc/Documentation/networking/bonding.txt

https://en.wikipedia.org/wiki/EtherChannel

http://www.h3c.com/cn/d_201108/723394_30005_0.htm#_Toc301162087

服务器做bond,交换机做port-channel的更多相关文章

  1. centos 7 服务器网卡做bond

    前期环境准备 [root@ /root] alibaba cloud#cat /etc/redhat-releaseCentOS Linux release 7.4.1708 (Core)[root@ ...

  2. centos7多网卡配置bond0 (mode6无需交换机做配置)

    1.执行setup命令-->网络配置-->本例中四块网卡. 2.ifconfig列出四块网卡. 3.我们的目标,绑定eth0和eth1两块网卡作为公网网卡,ip设置为192.168.0.5 ...

  3. Port Channel and VPC

    1.Port Channel 介绍 Port Channel  简介 绑定多个物理链路(最多8条),到一个单一的逻辑链路,在两个物理设备之间 每个物理端口只能被放入一个port-channel中. 在 ...

  4. 游戏引擎网络开发者的64做与不做(二A):协议与API

    [编者按]在这个系列之前的文章"游戏引擎网络开发者的64做与不做(一):客户端方面"中,Sergey介绍了游戏引擎添加网络支持时在客户端方面的注意点.本文,Sergey则将结合实战 ...

  5. 游戏引擎网络开发者的 64 做与不做 | Part 1 | 客户端方面

    摘要:纵观过去 10 年的游戏领域,单机向网络发展已成为一个非常大的趋势.然而,为游戏添加网络支持的过程中往往存在着大量挑战,这里将为大家揭示游戏引擎网络开发者的 64 个做与不做. [编者按]时下, ...

  6. 产品相关 做产品VS做项目

    做产品VS做项目 by:授客 QQ:1033553122 相关定义 根据GB/T19000—2008<质量管理体系基础和术语>,有以下定义 过程process 一组将输入转化为输出的相互关 ...

  7. 子查询 做where条件 做 from的临时表 ,做select的一个字段 等

    子查询 做where条件 做 from的临时表 ,做select的一个字段 等

  8. 一台服务器多实例mysql做主从复制

    在一台服务器上开两个端口的mysql(3306.3307),做成主从复制环境 1)安装mysql(安装过程这里就不做过多介绍) 参考:http://www.cnblogs.com/kevingrace ...

  9. 网卡做bond 导致丢包

    值班中发现一台服务器报到网关丢包,带宽200M. 用  ethtool bond0 查看网卡带宽信息,发现 Speed 为 3100M ,非 1000 的整数倍或10000的整数倍,感觉不对,因为是做 ...

  10. kvm:双网卡做bond+桥接

    一,KVM基础 kvm是一种技术,云计算是一种模式,虚拟化是利用相应的技术方法在一台物理机器上将其按照不同的需求划分成多个相同或者不同的虚拟操作系统,并且各个虚拟系统可以同时运行,互不干扰,其中任何一 ...

随机推荐

  1. [NPUCTF2020]EzRSA

    [NPUCTF2020]EzRSA 题目: from gmpy2 import lcm , powmod , invert , gcd , mpz from Crypto.Util.number im ...

  2. 「JOI Open 2022」Giraffes 题解

    设我们将要给出的观感好的排列为 \(q\),我们希望求出 \(\sum[p_i=q_i]\) 的最大值(这里指不移动的长颈鹿个数). 结论一:当且仅当左右端点有当前区间最大值或者最小值时条件才能成立. ...

  3. 项目day1 -- vscode远程连接云服务器

    刚学完go的语法,本来想着找个小项目试试手,发现大佬们都是vscode ssh到云服务器上做开发的.正好看到阿里云的学生认证后可以白嫖,就先嫖了个试试手 跟着各大教程简单配置了一下阿里云,安装vsco ...

  4. CF1383E 题解

    题意 传送门 给定一个长度为 \(n\) 的 01 串 \(a\).在一次操作中,你可以选择任意一个 \(i\in[1,|a|)\),令 \(a_i=\max(a_i,a_{i+1})\),然后将 \ ...

  5. es 6中for in与for of适用对象

    在 ES6 中提供了 for-of,可以很方便的遍历数组和类数组,但是却不能遍历对象,这是为什么,与 for-in 仅仅相差一个单词,用途也是遍历,为什么却不能使用在对象上? 查资料后得知,原来 ES ...

  6. 在Debian11上安装Openresty服务(Nginx+Lua)

    OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库.第三方模块以及大多数的依赖项.用于方便地搭建能够处理超高并发.扩展性极高的动态 We ...

  7. 【面试题】XSS攻击是什么?

    XSS攻击是什么? 要点: XSS是跨站脚本攻击.向目标网站插入恶意代码.大量用户访问网站时运行恶意脚本获取信息 答: XSS是跨站脚本攻击(Cross Site Scripting),不写为CSS是 ...

  8. 2022-04-28内部群每日三题-清辉PMP

    1.为了降低项目的质量成本(COQ)并增加验收产品的几率,需要进行质量审计.质量审计需要什么? A.质量管理计划和质量测量指标 B.过程分析 C.质量管理计划和质量核对单 D.过程决策程序平图(PDP ...

  9. 杭电oj Lowest Common Multiple Plus

    Problem Description 求n个数的最小公倍数.   Input 输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数.   Output 为每组测试数据输出它们的最 ...

  10. CF14D题解

    CF14D Two Paths题解 题目链接 传送门 题意简述 给定一棵树,找出两条不经过相同点的最长路径,使得他们的长度乘积最大. 题目分析 首先,如果在一棵树上,两条路径没有共同的点,那么这两条路 ...