Social Icons

Monday, May 19, 2014

CCNP SWITCH: 3. Port Aggregation with EtherChannel

Cisco offers a method of scaling link bandwidth by aggregating, or bundling, 2 to 8 parallel links, termed the EtherChannel technology.

EtherChannel avoids bridging loops by bundling parallel links into a single, logical link, which can act as either an access or a trunk link.

EtherChannel also provides redundancy with several bundled physical links. If one of the links within the bundle fails, traffic sent through that link automatically is moved to an adjacent link.

Rules:
- All bundled ports first must belong to the same VLAN.
- If used as a trunk, bundled ports must be in trunking mode.
- Bundled ports must have the same native VLAN and allowed VLANs.
- Each of the ports should have the same speed and duplex settings.
- Bundled ports also must be configured with identical spanning-tree settings.

Note: Frames are forwarded on a specific link as a result of a hashing algorithm.
The algorithm (XOR operation for combinations) can use source IP address, destination IP address, or a combination of source and destination IP addresses, source and destination MAC addresses, or TCP/UDP port numbers.

Configuring EtherChannel Load Balancing

Syntax: Switch(config)#port-channel load-balance method

AS1(config)#port-channel load-balance ?
  dst-ip       Dst IP Addr
  dst-mac      Dst Mac Addr
  src-dst-ip   Src XOR Dst IP Addr
  src-dst-mac  Src XOR Dst Mac Addr
  src-ip       Src IP Addr
  src-mac      Src Mac Addr

Note: The default configuration is to use source XOR destination IP addresses, or the src-dst-ip method.

AS1(config)#default port-channel load-balance

Note: The default for the Catalyst 2970 and 3560 is src-mac for Layer 2 switching.
If Layer 3 switching is used on the EtherChannel, the src-dst-ip method will always be used, even though it is not configurable.

GNS3 supports only manual (ON) EtherChannel configuration:

AS1(config)#interface range fastEthernet 1/10 - 15
AS1(config-if-range)#channel-group ?
  <1-6>  Channel group number

AS1(config-if-range)#channel-group 1 ?
  mode  Etherchannel Mode of the interface

AS1(config-if-range)#channel-group 1 mode ?
  on  Enable Etherchannel only

AS1(config-if-range)#channel-group 1 mode on ?
  <cr>

AS1(config-if-range)#channel-group 1 mode on 
Creating a port-channel interface Port-channel1
AS1(config-if-range)#
*Mar  1 00:31:37.771: %EC-5-BUNDLE: Interface Fa1/15 joined port-channel Po1
AS1(config-if-range)#
*Mar  1 00:31:40.703: %LINEPROTO-5-UPDOWN: Line protocol on Interface Port-channel1, changed state to up

Verification commands:

AS1#show etherchannel load-balance 
 Po1 ---> Source XOR Destination IP address

AS1#show etherchannel brief 
                Channel-group listing:
                -----------------------

Group: 1
----------
Group state = L2
Ports: 6   Maxports = 8
Port-channels: 1 Max Port-channels = 1

AS1#show etherchannel summary 
Flags:  D - down        P - in port-channel
        I - stand-alone s - suspended
        R - Layer3      S - Layer2
        U - in use
Group Port-channel  Ports
-----+------------+-----------------------------------------------------------
1     Po1(SU)     Fa1/10(D)  Fa1/11(D)  Fa1/12(D)  Fa1/13(D)  Fa1/14(D)
                  Fa1/15(P)

AS1#show etherchannel 1 port-channel 
                Port-channels in the group:
                ----------------------

Port-channel: Po1
------------

Age of the Port-channel   = 00d:00h:05m:09s
Logical slot/port   = 8/0           Number of ports = 1
GC                  = 0x00010001      HotStandBy port = null
Port state          = Port-channel Ag-Inuse

Ports in the Port-channel:

Index   Port   EC state
------+------+------------
  0     Fa1/15   on      

Time since last port bundled:    00d:00h:05m:09s    Fa1/15

EtherChannel Negotiation Protocols

Two protocols are available to negotiate bundled links in Catalyst switches: PAgP (Cisco proprietary) and LACP (open standard).

Port Aggregation Protocol

PAgP can be configured in active mode (DESIRABLE), in which a switch actively asks a far-end switch to negotiate an EtherChannel, or in passive mode (AUTO, the default), in which a switch negotiates an EtherChannel only if the far-end initiates it.

Link Aggregation Control Protocol

The switch with the lowest system priority is allowed to make decisions about what ports actively are participating in the EtherChannel at a given time.
Ports are selected and become active according to their port priority value, where a low value indicates a higher priority.

Note: Up to 16 potential links can be defined for each EtherChannel: 8 ACTIVE (the ones with the lowest priority) and 8 STANDBY.

LACP can be configured in active mode (ACTIVE), in which a switch actively asks a far-end switch to negotiate an EtherChannel, or in passive mode (PASSIVE), in which a switch negotiates an EtherChannel only if the far end initiates it.

To configure switch ports for PAgP negotiation (the default), use the following commands:

Switch(config)# interface type mod/num
Switch(config-if)# channel-protocol pagp
Switch(config-if)# channel-group number mode {on | {{auto | desirable} [non-silent]}}

Note: If you expect a PAgP-capable switch to be on the far end, you should add the non-silent keyword to the desirable or auto mode. This requires each port to receive PAgP packets before adding them to a channel.

To configure switch ports for LACP negotiation, use the following commands:

Switch(config)# lacp system-priority priority
Switch(config)# interface type mod/num
Switch(config-if)# channel-protocol lacp
Switch(config-if)# channel-group number mode {on | passive | active}
Switch(config-if)# lacp port-priority priority

Note: The switch should have its LACP system priority defined (1 to 65,535; default 32,768). If desired, one switch should be assigned a lower system priority than the other so that it can make decisions about the EtherChannel’s makeup.
Otherwise, both switches will have the same system priority (32,768), and the one with the lower MAC address will become the decision maker.

Other verification commands:

show {pagp | lacp} neighbor
show lacp sys-id
show interface type mod/num etherchannel 
show running-config interface type mod/ num 
show etherchannel port 

Note: According to GNS3's documentation:
"EtherChannel: no LACP and Pagp support. Manual configuration supported."

Note: If when modifying the vlan database you encounter the following error you can erase the flash to resolve this issue:

% not enough space on flash to store vlan database. trying squeeze...First create squeeze log by erasing the entire device

% error squeezing flash - (Missing or corrupted log)
Error on database apply 40: NV storage failure
Use 'abort' command to exit


AS1(vlan)#abort
Aborting....

AS1#erase flash:
Erasing the flash filesystem will remove all files! Continue? [confirm]
Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erased
Erase of flash: complete

Note: Although we reload the switches whenever we want new default configs, the VLAN and VTP information is still present.
The reason is that this VLAN and VTP information is actually kept in the VLAN.DAT file in Flash memory, and the contents of Flash are kept on a reload. The file has to be deleted manually.
More info at: http://www.mcmcse.com/cisco/guides/vlandat.shtml

No comments:

Post a Comment