1、Port Channel 介绍

Port Channel  简介

绑定多个物理链路(最多8条),到一个单一的逻辑链路,在两个物理设备之间

每个物理端口只能被放入一个port-channel中。

在一个port-channel中所有端口必须兼容,并且需要有相同的速率和双工模式。

不能把二层和三层的接口放入相同的port channel

Port channel分为两种,Access port  和  Trunk port

Port Channel  模式

LACP(公有) active  passive       active--passive    active--active

PAGP(私有)  auto   desirable      auto--desirable    auto--auto

不用聚合协议(mode  on)

Hash  Options(散列选项)

默认是源目IP地址

2、VPC理论

vPCs简介

允许一个设备使用有两个上游设备的Portchannel

消除STP阻止端口

提供一个无环的拓扑

使用所有可用的上联带宽

在链路或者设备出现故障时,提供最快的收敛

提供链路级冗余和确保高可用性

第三方设备可以是个服务器只要支持Channel Group技术

Lower oversubscription     低的超额预定       设备带宽和上联带宽比例

背对背VPC(最多支持32路Port channel)

M系列板卡每一个vPC对等体只有8路active,两个对等体就是16路,F系列支持16路active的port channel,因此支持32路的vpc

vPC对等体的负载方式是由这个对等体设备本地判断的。

vPC架构的组件

vPC peers     一对激活vPC的交换机

vPC Domain     一对vPC对等体,和相关的vPC组件

vPC Peer Keepalive  Link      路由链路,承载心跳数据包,进行双Active的检测,是三层链路。

vPC Peer Link      在两个vPC对等体设备间,承载控制层面流量 ,比如检查配置,同步MAC地址的学习,ARP、vPC成员端口状态等,注意是二层链路,最好是channel,端口也必须是10G的。

vPC        在vPC对等体和有port-channel能力的下游设备之间的port channel

vpc Member Port   形成vPC的一系列端口中的一个

Orphan  Device     一个设备使用非vPC链路连接到vpc对等体

Orphan  Port      连接孤立设备的端口

CFS       在vPC对等体设备间,用于状态同步和配置确认的协议

原则与最佳实践

在配置vPC之前需要先激活vPC特性

先配置Peer-keepalive链路,然后配置Peer-link链路,最后设置vPC domain

必须手动配置两个vPC设备,配置不会从一个设备发送到另一个设备上

检查在vPC Peer链路的两端,需要配置的参数是一致的

当配置vPC时,可能会经历短暂的流量中断

推荐所有vPC的Portchannel 使用LACP的active

数据层防环机制

vPC角色切换

一个交换机被选举成为Primary,另外一端被选举为Secondary,优先级越小越优先,角色决定当Peer Link 失效的行为,如果Peer link失效,有两种可能性,一种是链路Down,还有一种可能是设备Down,这个时候Secondary就会通过Keepalive Link 发送Hello信息,如果Primary有回复,那么Secondary认为是peer link失效了,Secondary就会关闭自己所有关于vpc的端口和vlan端口,如果Primary没有回复,那么Secondary认为是设备Down了,Secondary就会成为操作上的Primary。

不支持抢占,Primary 交换机主导在vpc中的STP

3、配置 N7K vPC

DC2-N7K-3(config)# feature lacp                   开启feature  lacp

DC2-N7K-3(config)# feature vpc                    开启feature  vpc

DC2-N7K-3(config)# vrf context P-K-L                    建立Keepalive link 最好使用vrf,最好两条链路绑channel,最佳实践

DC2-N7K-3(config)# interface e4/16-17

DC2-N7K-3(config-if-range)# channel-group 10 mode active

DC2-N7K-3(config-if-range)# no shutdown

DC2-N7K-3(config)# interface port-channel 10

DC2-N7K-3(config-if)# vrf member P-K-L

DC2-N7K-3(config-if)# ip address  192.168.1.1/24

DC2-N7K-3(config-if)# no shutdown

DC2-N7K-4(config)# feature lacp

DC2-N7K-4(config)# feature vpc

DC2-N7K-4(config)# vrf context P-K-L

DC2-N7K-4(config)# interface e4/16-17

DC2-N7K-4(config-if-range)# channel-group 10 mode active

DC2-N7K-4(config-if-range)# no shutdown

DC2-N7K-4(config)# interface port-channel 10

DC2-N7K-4(config-if)# vrf member P-K-L

DC2-N7K-4(config-if)# ip address  192.168.1.2/24

DC2-N7K-4(config-if)# no shutdown

DC2-N7K-3(config)# vpc domain 7                 一组vpc域号必须一致

DC2-N7K-3(config-vcp-domain)# role priority 73                 越小约优先

DC2-N7K-3(config-vcp-domain)# peer-keepalive destination 192.168.1.2 source 192.168.1.1  vrf P-K-L      关联keepalive link

DC2-N7K-3(config-vcp-domain)# delay restore 150              反防止路由黑洞

DC2-N7K-3(config-vcp-domain)# peer-gateway   解决三层问题,直接转发

DC2-N7K-3(config-vcp-domain)# ip arp synchronize                同步arp

DC2-N7K-3(config-vcp-domain)# system-prority 2500   越小越好,只要是协商lacp负载时谁说的算

DC2-N7K-4(config)# vpc domain 7                 一组vpc域号必须一致

DC2-N7K-4(config-vcp-domain)# role priority 74                 越小约优先,切记没有抢占功能

DC2-N7K-4(config-vcp-domain)# peer-keepalive destination 192.168.1.1 source 192.168.1.2  vrf P-K-L      关联keepalive link

DC2-N7K-4(config-vcp-domain)# delay restore 150              反防止路由黑洞

DC2-N7K-4(config-vcp-domain)# peer-gateway

DC2-N7K-4(config-vcp-domain)# ip arp synchronize                同步arp

DC2-N7K-4(config-vcp-domain)# system-prority 2600   越小越好,只要是协商lacp负载时谁说的算

DC2-N7K-3(config)# interface e4/18-19                              建立peer-link使用channel     官方推荐

DC2-N7K-3(config-if-range)# channel-group 20 mode active

DC2-N7K-3(config-if-range)# no shutdown

DC2-N7K-3(config)# interface port-channel 20

DC2-N7K-3(config-if)# switchport mode trunk            放行的vlan取决vpc使用vlan,如果vpc使用vlan在这不放行,是不会通的。

DC2-N7K-3(config-if)#  vpc peer-link                  必须是10G接口

DC2-N7K-4(config)# interface e4/18-19                              建立peer-link使用channel     官方推荐

DC2-N7K-4(config-if-range)# channel-group 20 mode active

DC2-N7K-4(config-if-range)# no shutdown

DC2-N7K-4(config)# interface port-channel 20

DC2-N7K-4(config-if)# switchport mode trunk            放行的vlan取决vpc使用vlan,如果vpc使用vlan在这不放行,是不会通的。

DC2-N7K-4(config-if)#  vpc peer-link

show vpc  查看状态

简单的下联vpc配置

查看port channel  端口状态

查看vpc配置是否一致

查看vpc接口配置是否一致

vPC与FHRP

去往vPC的流量,如果可能将会被本地的vPC成员接口所转发

FHRP的行为是被修改的,所有的FHRP路由器都会主动转发从vPC收到的流量

结果:流量如果可能避免使用Peer Link,在这样创建了一个可扩展的解决方案,Peer Link的了容量不需要随着vPC数量的增长而增长。

生成树推荐

配置聚合的vPC对等体为Primary STP root和Secondary STP root

如果使用vPC peer-switch技术,两个vPC对等体会扮演一个STP root,STP BPDU在所有vPC链路中被发送,避免由于下游设备上的STP BPDU超时,造成的流量中断

应该通过调整让vPC Primary成为STP的Primary root,HSRP的Active Router和PIM的DR

桥接确保技术默认在vPC Peer Link 上被激活

不要在vPC上激活Loop Guard和BA,因为下联设备可能是服务器,不存在BPDU

在接主机接口上激活STP端口类型edge或者edge trunk

全局激活Root-Guard,确保我们vPC设备为根

如果接入交换机支持STP channel-misconfig技术,应该禁用。

调整Spanning Tree

N7K-1(config)#spanning-tree vlan 10 root primary      VLAN号应该考虑所有参与vPC的VLAN

N7K-2(config)#spanning-tree vlan 10 root secondary

peer-switch

N7K-1(config)#vPC domin 7

N7K-1(config-vcp-domain)#peer-switch

N7K-2(config)#vPC domin 7

N7K-2(config-vcp-domain)#peer-switch

Autorecovery(默认开启的,时间240s)

如果两个vPC交换机同时重启,默认在两个vPC设备的比邻关系建立起来之前,所有的vPC都被挂起,如果仅仅只有一个vPC设备可以工作,本地的vPC成员端口,依然处于挂起状态,默认240s之后,正常的设备会软件初始化vPC,并且激活本地端口。

N7K-1(config)#vPC domin 7

N7K-1(config-vcp-domain)#  Auto-recovery reload-delay (600-3600)  调时间

Delay Restore(默认关闭的)

当一个vPC重启并且恢复后,路由协议需要时间收敛,在三层连接重新建立之前,vpc将会成为访问层访问核心层的路由黑洞,当系统重新启动后,延时“n”秒激活vPC接口。

N7K-1(config)#vPC domin 7

N7K-1(config-vcp-domain)# delay restore 400     物理vpc接口

N7K-1(config-vcp-domain)# delay restore interface-vlan 400    interface-vlan  被peer-link 放行的那些VLAN

ARP Synchronization(需要开启)

提升三层流量的收敛时间,需要在两个vPC设备上同时激活此特性,当Peer Link恢复时通过CFSoE执行一个成块的ARP同步。

N7K-1(config)#vPC domin 7

N7K-1(config-vcp-domain)# ip arp synchronize

4、配置N7K N5K vPC

N5K的keepalive link 可以用管理口做,因为一般都是二层

配置和7K一样,注意vpc号,N5K和N7K必须一致

5、配置EvPC

连接FEX使用vPC,就是EvPC。

配置完Evpc,以后配置两面必须一致,可以手敲,也可以通过配置命令自动同步(不推荐)

6、vPC最佳实践

vpc system-mac        自动产生的mac,LACP邻居看到两个vPC对等体有相同的system id

VPC的角色决定了哪个设备,来处理BPDU,如果敲了peer switch ,那么两个设备会同时处理、

Keepalive link   发送信息间隔1s,hold时间是3s,超时时间是5s。

vpc与vdc:

vpc可以工作在vdc环境

每个vdc只能够支持一个vpc Domain

在每个vdc部署中,依然需要使用分离的peer-link 和peer-keepalive link

一个原则,下联设备双线连接vpc

三层和vpc的相互影响    从r到s,中间运行动态路由协议,从二层看,像一条单独的链路,散列函数决定那条链路来转发,从三层看,两条路等价负载,这样就会出现一个问题,可能三层走7k-1,但是二层走7k-2,到7k-2发现应该发往7k-1的interface 接口的mac,这个时候就会走peer link到7k-1,7k到s也是跑的vpc,那么包就会直接别丢弃,因为vpc的防环机制,从vpc 端口来的流量,过peer link,不能在从vpc成员端口出,

解决这种问题的办法有两种  1.出接口不是vpc成员端口,2.采用peer-Gateway技术解决,这样到7k2的流量会直接转发,不过peer link。

确保二层运行中所有交换机运行Rapid-pvst或者mst,因为5k,7k只支持这两种。

Port Channel and VPC的更多相关文章

  1. VPC配置介绍

    VPC(Virtual Port-Channel)是Cisco Nexus系列交换机中的一个特性.它支持一个跨机箱的二层Port-Channel.对于第三方设备来说(交换机或服务器)物理上是连接到了两 ...

  2. Cisco N3K VPC+HSRP+ospf 配置

    VPC概念 VPC:vpc是指vpc对等体设备和下游设备之间的组合PortChannel. vpc对等交换:就是组成vpc功能的两个nexus系列交换机,一个设备为主,一个为备. vpc对等连接:用于 ...

  3. vPC配置

    1.vPC概述 如下图所示,在传统网络中,出于冗余考虑,汇聚层往往由2台设备构成,一台接入层交换机使用2根上联链路,分别连接汇聚层2台设备. 这种拓扑所带来的问题是:受制于STP,对于同一个VLAN的 ...

  4. 专题:Channel Bonding/bonding

    EtherChannel最初是由cisco提出,通过聚合多条物理链路为单条逻辑链路,从而实现高可用及提高吞吐量等目的.AgP(Port Aggregation Protocol,Cisco专有协议). ...

  5. Java NIO系列教程(三) Channel之Socket通道

    目录: <Java NIO系列教程(二) Channel> <Java NIO系列教程(三) Channel之Socket通道> 在<Java NIO系列教程(二) Ch ...

  6. 原创:vsphere概念深入系列四:Nic Teaming若干问题

    参考文档:http://www.hyper-v.nu/archives/marcve/2013/01/lbfo-hyper-v-switch-qos-and-actual-performance-pa ...

  7. 数据中心网络架构的问题与演进 — Overlay 网络

    目录 文章目录 目录 前文列表 数据中心网络架构演进回顾 Overlay 网络 Overlay 网络的优势 基于 VxLAN Overlay 的 Spine-Leaf 网络架构 参考文章 前文列表 & ...

  8. Nexus-vPC理论

    vPC:virtual Port-channel 1.vPC的作用: • 允许一个设备使用2个上游的设备的端口来实现Port Channel    • 消除STP阻止端口的情况    • 提供一个无环 ...

  9. Linux 双网卡绑定

    Linux 双网卡绑定 Linux 双网卡绑定双网卡绑定的常用模式:mode1:active-backup 模式,即主备模式.mode0:round-broin 模式,即负载均衡模式(需要交换机配置聚 ...

随机推荐

  1. UiAutomator1.0 与 UiAutomator2.0

      在使用2.0之前,对android自动化框架也做过一些了解<Android 自动化测试框架>.使用UiAutomator2.0也有一段时间,这里将1.0与2.0进行一个对比总结. Ui ...

  2. matplotlib 无法显示中文和负号的解决办法

    matplotlib无法显示中文和负号解决办法

  3. Java:Spring @Transactional工作原理

    本文将深入研究Spring的事务管理.主要介绍@Transactional在底层是如何工作的.之后的文章将介绍: propagation(事务传播)和isolation(隔离性)等属性的使用 事务使用 ...

  4. 解码escape类型的unicode

    content = Regex.Unescape(content);

  5. 饮冰三年-人工智能-Python-23 Python PyCharm 使用中常见的问题

    一:软件工具使用中遇到的问题 1:AttributeError: module 'pip' has no attribute 'main'问题 处理方法: a:找到JetBrains\PyCharm ...

  6. this:当前调用的对象

  7. 配置 Docker 加速器:适用于 Ubuntu14.04、Debian、CentOS6 、CentOS7、Fedora、Arch Linux、openSUSE Leap 42.1

    天下容器, 唯快不破 Docker Hub 提供众多镜像,你可以从中自由下载数十万计的免费应用镜像, 这些镜像作为 docker 生态圈的基石,是我们使用和学习 docker 不可或缺的资源.为了解决 ...

  8. HTML5全屏浏览器兼容方案

    最近一个项目有页面全屏的的需求,搜索了下有HTML5的全屏API可用,不过各浏览器的支持不一样. 标准 webkit  Firefox  IE Element.requestFullscreen() ...

  9. Gradle 使用笔记

    Springboot2.0 多模块打包问题 打包命令由gradle build 变成 gradle bootJar 或 gradle bootWar buildscript { repositorie ...

  10. .net core 2.x - 日志 - to elasiticsearch

    记录日志到elasticsearch(es),下面简写es,然后我们可以通过kibana可视化的观察日志信息以及统计分析等. 1.起源 年中旬时候,公司有个需求是需要分析用户的地址,需要先分词处理然后 ...