服务器做bond,交换机做port-channel
端口绑定的种类(具体介绍网上很多参考)
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的更多相关文章
- centos 7 服务器网卡做bond
前期环境准备 [root@ /root] alibaba cloud#cat /etc/redhat-releaseCentOS Linux release 7.4.1708 (Core)[root@ ...
- centos7多网卡配置bond0 (mode6无需交换机做配置)
1.执行setup命令-->网络配置-->本例中四块网卡. 2.ifconfig列出四块网卡. 3.我们的目标,绑定eth0和eth1两块网卡作为公网网卡,ip设置为192.168.0.5 ...
- Port Channel and VPC
1.Port Channel 介绍 Port Channel 简介 绑定多个物理链路(最多8条),到一个单一的逻辑链路,在两个物理设备之间 每个物理端口只能被放入一个port-channel中. 在 ...
- 游戏引擎网络开发者的64做与不做(二A):协议与API
[编者按]在这个系列之前的文章"游戏引擎网络开发者的64做与不做(一):客户端方面"中,Sergey介绍了游戏引擎添加网络支持时在客户端方面的注意点.本文,Sergey则将结合实战 ...
- 游戏引擎网络开发者的 64 做与不做 | Part 1 | 客户端方面
摘要:纵观过去 10 年的游戏领域,单机向网络发展已成为一个非常大的趋势.然而,为游戏添加网络支持的过程中往往存在着大量挑战,这里将为大家揭示游戏引擎网络开发者的 64 个做与不做. [编者按]时下, ...
- 产品相关 做产品VS做项目
做产品VS做项目 by:授客 QQ:1033553122 相关定义 根据GB/T19000—2008<质量管理体系基础和术语>,有以下定义 过程process 一组将输入转化为输出的相互关 ...
- 子查询 做where条件 做 from的临时表 ,做select的一个字段 等
子查询 做where条件 做 from的临时表 ,做select的一个字段 等
- 一台服务器多实例mysql做主从复制
在一台服务器上开两个端口的mysql(3306.3307),做成主从复制环境 1)安装mysql(安装过程这里就不做过多介绍) 参考:http://www.cnblogs.com/kevingrace ...
- 网卡做bond 导致丢包
值班中发现一台服务器报到网关丢包,带宽200M. 用 ethtool bond0 查看网卡带宽信息,发现 Speed 为 3100M ,非 1000 的整数倍或10000的整数倍,感觉不对,因为是做 ...
- kvm:双网卡做bond+桥接
一,KVM基础 kvm是一种技术,云计算是一种模式,虚拟化是利用相应的技术方法在一台物理机器上将其按照不同的需求划分成多个相同或者不同的虚拟操作系统,并且各个虚拟系统可以同时运行,互不干扰,其中任何一 ...
随机推荐
- MySQL单节点变更为主从节点
环境说明: 操作系统:CentOS 7.6 数据库版本:5.7 为了实验方便,同一台主机部署了两个实例,3306.3307 部署方案可参考 MySQL多实例部署:mysql多实例部署 - 太阳的阳ฅ ...
- tdlib成功编译版本20230205(java)
tdjni是java本地调用接口dll文件夹下的三个动态链接是供tdjni调用的使用时这三个加到系统环境变量里 编译文件在本人的文件里,可以下载
- Centos7 安装mysql 5.7 教程
安装 yum 源 需要在系统上启用 MySQL 5.7 Community Release YUM 存储库.用于 yum 存储库配置的 rpm 包可在 MySQL 的官方网站上找到. 首先将最新的My ...
- golang 字符串函数
1. 统计字符串的长度,按字节进行统计 package main import "fmt" func main() { var s1 string = "hello,世界 ...
- # HUAWEI--IPv6 over IPv4隧道配置(简单案例)
HUAWEI--IPv6 over IPv4隧道配置(简单案例) 拓扑图 项目要求: PC3和PC4使用的IPv6的地址,路由和路由器之间的连接使用IPv4的地址并使用静态路由连接,路由器和PC机的连 ...
- Wordpress主题twentytwelve修改首页文章摘要
方法:网站后台->外观->编辑->找到content.php文件 路径:wp-content/themes/twentytwelve/ 找到这一句: <?php if ( is ...
- 【Java SpringBoot】RestTemplate使用postForObject发送请求,接收String类型的response时中文乱码
https://blog.csdn.net/qq_43758789/article/details/120576717 使用RestTemplate发送PostForObject的时候会出现乱码.这是 ...
- React.CreateContext
跨组件传递的内容组件,该组件导出两个对象Provider 提供数据, Consumer, 消费数据 Context被翻译为上下文,在React的官方文档中归类于高级部分,属于React的高级API,但 ...
- 转载--文章(感谢米粒儿博主分享) 关于 Json.net序列化时间问题
http://www.cnblogs.com/lxsweat/p/4372508.html 上代码 其中的使用方法和UserInfo实体对象就不贴代码了. /// <summary> // ...
- vue项目跳转外部链接,替换链接地址参数信息
//修改url某个指定的参数 url 地址. paramName 参数. repalceValue替换的新值 replaceUrl( url, paramName, repalceValue){ ...