Alteon OS Guide
Alteon OS Guide
TM
Alteon OS 21.0
Layer 2-7 GbE Switch Module
for IBM BladeCenter
Part Number: 24R9742, March 2006
Copyright 2004 Nortel Networks, Inc., 4655 Great America Parkway, Santa Clara, California 95054, USA.
All rights reserved. Part Number: 24R9742.
This document is protected by copyright and distributed under licenses restricting its use, copying,
distribution, and decompilation. No part of this document may be reproduced in any form by any means
without prior written authorization of Nortel Networks, Inc. Documentation is provided “as is” without
warranty of any kind, either express or implied, including any kind of implied or express warranty of non-
infringement or the implied warranties of merchantability or fitness for a particular purpose.
U.S. Government End Users: This document is provided with a “commercial item” as defined by FAR
2.101 (Oct 1995) and contains “commercial technical data” and “commercial software documentation” as
those terms are used in FAR 12.211-12.212 (Oct 1995). Government End Users are authorized to use this
documentation only in accordance with those rights and restrictions set forth herein, consistent with FAR
12.211- 12.212 (Oct 1995), DFARS 227.7202 (JUN 1995) and DFARS 252.227-7015 (Nov 1995).
Nortel Networks, Inc. reserves the right to change any products described herein at any time, and without
notice. Nortel Networks, Inc. assumes no responsibility or liability arising from the use of products
described herein, except as expressly agreed to in writing by Nortel Networks, Inc. The use and purchase of
this product does not convey a license under any patent rights, trademark rights, or any other intellectual
property rights of Nortel Networks, Inc.
Alteon OS and ACEswitch are trademarks of Nortel Networks, Inc. in the United States and certain other
countries. Cisco® and EtherChannel® are registered trademarks of Cisco Systems, Inc. in the United States
and certain other countries. Check Point® and FireWall-1® are trademarks or registered trademarks of
Check Point Software Technologies Ltd. Any other trademarks appearing in this manual are owned by
their respective companies.
2
24R9742, March 2006
Contents
Preface 19
Who Should Use This Guide 19
What You’ll Find in This Guide 19
Typographic Conventions 21
How to Get Help 22
3
24R9742, March 2006
Alteon OS 21.0 Application Guide
Chapter 2: VLANs 59
Overview 60
VLANs and Port VLAN ID Numbers 60
VLAN Numbers 60
PVID Numbers 61
VLAN Tagging 62
VLAN Topologies and Design Considerations 66
VLAN configuration rules 67
Example 1: Multiple VLANs with Tagging Adapters 67
VLANs and Default Gateways 69
Segregating VLAN Traffic 69
Configuring the Local Network 71
Configuring Gateways per VLAN 71
4 : Contents
24R9742, March 2006
Alteon OS 21.0 Application Guide
Part 2: IP Routing 97
: Contents 5
24R9742, March 2006
Alteon OS 21.0 Application Guide
6 : Contents
24R9742, March 2006
Alteon OS 21.0 Application Guide
: Contents 7
24R9742, March 2006
Alteon OS 21.0 Application Guide
8 : Contents
24R9742, March 2006
Alteon OS 21.0 Application Guide
: Contents 9
24R9742, March 2006
Alteon OS 21.0 Application Guide
Part 4: Advanced
Switching 381
10 : Contents
24R9742, March 2006
Alteon OS 21.0 Application Guide
: Contents 11
24R9742, March 2006
Alteon OS 21.0 Application Guide
Glossary 461
Index 465
12 : Contents
24R9742, March 2006
Figures
Figure 1-1: Switch management on the BladeCenter management module 28
Figure 1-2: BOOTP Relay Agent Configuration 30
Figure 2-1: Default VLAN settings 63
Figure 2-2: Port-based VLAN assignment 64
Figure 2-3: 802.1Q tagging (after port-based VLAN assignment) 65
Figure 2-4: 802.1Q tag assignment 65
Figure 2-5: 802.1Q tagging (after 802.1Q tag assignment) 66
Figure 2-6: Example 1: Multiple VLANs with VLAN-Tagged Gigabit Adapters 67
Figure 2-7: Default Gateways per VLAN 69
Figure 3-1: Port Trunk Group 76
Figure 3-2: Port Trunk Group Configuration Example 79
Figure 4-1: Using Multiple Instances of Spanning Tree Group 91
Figure 4-2: Implementing Multiple Spanning Tree Groups 92
Figure 5-1: The Router Legacy Network 101
Figure 5-2: Switch-Based Routing Topology 102
Figure 5-3: DHCP Relay Agent Configuration 110
Figure 8-1: iBGP and eBGP 122
Figure 8-2: Distributing Network Filters in Access Lists and Route Maps 124
Figure 8-3: BGP Failover Configuration Example 130
Figure 8-4: Route Aggregation and Default Route Redistribution 133
Figure 9-1: OSPF Area Types 137
Figure 9-2: OSPF Domain and an Autonomous System 138
Figure 9-3: Injecting Default Routes 145
Figure 9-4: OSPF Authentication 148
Figure 9-5: A Simple OSPF Domain 152
Figure 9-6: Configuring a Virtual Link 154
Figure 9-7: Summarizing Routes 158
Figure 9-8: Configuring OSPF Host Routes 161
Figure 10-1: Traditional Versus SLB Network Configurations 173
Figure 10-2: Web Hosting Configuration Without SLB 175
Figure 10-3: Web Hosting with SLB Solutions 175
Figure 10-4: Example Network for Client/Server Port Configuration 177
Figure 10-5: Basic Virtual Port to Real Port Mapping Configuration 194
Figure 10-6: Mapped and Nonmapped Server Access 199
13
24R9742, March 2006
Alteon OS 21.0 Application Guide
14 : Figures
24R9742, March 2006
Alteon OS 21.0 Application Guide
: Figures 15
24R9742, March 2006
Alteon OS 21.0 Application Guide
16 : Figures
24R9742, March 2006
Tables
Table 1-1: GbESM IP addresses, based on switch-module bay numbers 26
Table 1-2: User Access Levels 41
Table 1-3: Alteon OS-proprietary Attributes for Radius 42
Table 1-4: Default TACACS+ Authorization Levels 44
Table 1-5: Alternate TACACS+ Authorization Levels 44
Table 2-1: Route Cache Example 70
Table 3-1: Actor vs. Partner LACP configuration 83
Table 4-1: Ports, Trunk Groups, and VLANs 86
Table 4-2: Ports, Trunk Groups, and VLANs 90
Table 5-1: Subnet Routing Example: IP Address Assignments 103
Table 5-2: Subnet Routing Example: IP Interface Assignments 103
Table 5-3: Subnet Routing Example: Optional VLAN Ports 105
Table 5-4: Local Routing Cache Address Ranges 107
Table 10-1: Web Host Example: Real Server IP Addresses 178
Table 10-2: Web Host Example: Port Usage 180
Table 10-3: Well-Known Application Ports 182
Table 10-4: Proxy IP addresses on GbE Switch Module 191
Table 10-5: Proxy Example: Port Usage 192
Table 11-1: GSLB Example: San Jose Real Server IP Addresses 221
Table 11-2: GSLB Example: San Jose GbESM Port Usage 222
Table 11-3: Denver Real Server IP Addresses 227
Table 11-4: Web Host Example: Port Usage 228
Table 11-5: HTTP Versus Non-HTTP Redirects 243
Table 12-1: Well-Known Protocol Types 251
Table 12-2: Filtering IP Address Ranges 259
Table 12-3: Web Cache Example: Real Server IP Addresses 267
Table 12-4: TCP Flags 279
Table 12-5: ICMP Message Types 284
Table 13-1: Cache Redirection Example: Real Server IP Addresses 290
Table 15-1: Active-Standby Configuration 336
Table 15-2: VRRP Tracking Parameters 344
Table 16-1: Standard Regular Expression Special Characters 423
Table 16-2: Real Server Content 428
Table 17-1: Comparison Among the Three Cookie Modes 437
17
24R9742, March 2006
Alteon OS 21.0 Application Guide
18 : Tables
24R9742, March 2006
Preface
The Alteon OS 21.0 Application Guide describes how to configure and use the Alteon OS soft-
ware on the Layer 2-7 GbE Switch Module for IBM BladeCenter. For documentation on
installing the switch physically, see the Installation Guide for your GbE Switch Module
(GbESM).
19
24R9742, March 2006
Alteon OS 21.0 Application Guide
Part 2: IP Routing
Chapter 5, “Basic IP Routing,” describes how to configure the GbE Switch Module for IP
routing using IP subnets, and DHCP Relay.
Chapter 6, “Routing Information Protocol,” describes how the Alteon OS software imple-
ments standard RIP for exchanging TCP/IP route information with other routers.
Chapter 7, “IGMP Snooping,” describes how the Alteon OS software implements IGMP
Snooping to handle multicast traffic efficiently.
Chapter 8, “Border Gateway Protocol,” describes BGP concepts and BGP features sup-
ported in Alteon OS.
Chapter 9, “OSPF,” describes OSPF concepts, how OSPF is implemented in Alteon OS,
and four examples of how to configure your switch for OSPF support.
20 : Preface
24R9742, March 2006
Alteon OS 21.0 Application Guide
Typographic Conventions
The following table describes the typographic styles used in this book.
AaBbCc123 This type is used for names of commands, View the readme.txt file.
files, and directories used within the text.
<AaBbCc123> This italicized type appears in command To establish a Telnet session, enter:
examples as a parameter placeholder. Replace host# telnet <IP address>
the indicated text with the appropriate real
name or value when using the command. Do
not type the brackets.
This also shows book titles, special terms, or Read your User’s Guide thoroughly.
words to be emphasized.
: Preface 21
24R9742, March 2006
Alteon OS 21.0 Application Guide
22 : Preface
24R9742, March 2006
Part 1: Basic Switching
This section discusses basic Layer 1—2 switching functions. This includes how to access and
manage the switch:
24 : Basic Switching
24R9742, March 2006
CHAPTER 1
Accessing the Switch
The Alteon OS software provides means for accessing, configuring, and viewing information
and statistics about the GbE Switch Module. This chapter discusses different methods of
accessing the switch and ways to secure the switch for remote administrators:
25
24R9742, March 2006
Alteon OS 21.0 Application Guide
You can use the 100-Mbps Ethernet port on the management module to configure and manage
the GbE Switch Module. The GbE Switch Module communicates with the management mod-
ule through its internal port 15 (MGT1) and port 16 (MGT2), which you can access through the
100 Mbps Ethernet port on the management module. The factory default settings will only per-
mit management and control access to the switch module through the 10/100 Mbps Ethernet
port on the management module. You can use the four external 10/100/1000 Mbps Ethernet
ports on the switch module for management and control of the switch by selecting this mode as
an option through the management module configuration utility program (see the applicable
BladeCenter Installation and User’s Guide publications on the IBM BladeCenter Documenta-
tion CD for more information).
NOTE – Switch Modules installed in Bay 1 and Bay 2 connect to server NICs 1 and 2, respec-
tively. However, Windows operating systems show that Switch Modules installed in Bay 3 and
Bay 4 connect to server NICs 4 and 3, respectively.
Default Gateway
The default Gateway IP address determines where packets with a destination address outside
the current subnet should be sent. Usually, the default Gateway is a router or host acting as an
IP gateway to handle connections to other subnets of other TCP/IP networks. If you want to
access the GbE Switch Module from outside your local network, use the management module
to assign a default Gateway address to the GbE Switch Module. Choose I/O Module Tasks >
Configuration from the navigation pane on the left, and enter a default Gateway address (for
example, 192.168.70.125). Click Save.
1. Connect the Ethernet port of the management module to a 10/100 Mbps network (with
access to a management station) or directly to a management station.
2. Access and log on to the management module, as described in the BladeCenter Manage-
ment Module User’s Guide on the IBM BladeCenter Documentation CD. The management
module provides the appropriate IP addresses for network access (see the applicable Bla-
deCenter Installation and User’s Guide publications on the IBM BladeCenter Documenta-
tion CD for more information).
3. Select Configuration on the I/O Module Tasks menu on the left side of the BladeCenter
management module window. See Figure 1-1.
4. You can use the default IP addresses provided by the management module, or you can
assign a new IP address to the switch module through the management module. You can
assign this IP address through one of the following methods:
Manually through the BladeCenter management module.
Automatically through the IBM Director Configuration Wizard
NOTE – If you change the IP address of the GbE Switch Module, make sure that the switch
module and the management module both reside on the same subnet.
Both management module ports (Ethernet 0 and Ethernet 1) must reside on the same subnet.
NOTE – In Advanced Configuration > Advanced Setup, enable “Preserve new IP configura-
tion on all switch resets,” to retain the switch’s IP interface when you restore factory defaults.
This setting preserves the management port’s IP address in the management module’s memory,
so you maintain connectivity to the management module after a reset.
You can now start a Telnet session, Browser-Based Interface (Web) session, or a Secure Shell
session to the GbE Switch Module.
Using Telnet
Use the management module to access the GbE Switch Module through Telnet. Choose
I/O Module Tasks > Configuration from the navigation pane on the left. Select a bay number
and click Advanced Configuration > Start Telnet/Web Session > Start Telnet Session. A
Telnet window opens a connection to the Switch Module (requires Java 1.4 Plug-in).
Once that you have configured the GbE Switch Module with an IP address and gateway, you
can access the switch from any workstation connected to the management network. Telnet
access provides the same options for user and administrator access as those available through
the management module, minus certain telnet and management commands.
To establish a Telnet connection with the switch, you can run the Telnet program on your
workstation and issue the Telnet command, followed by the switch IP address:
When a switch receives a BOOTP request from a BOOTP client requesting an IP address, the
switch acts as a proxy for the client. The request is then forwarded as a UDP Unicast MAC
layer message to two BOOTP servers whose IP addresses are configured on the switch. The
servers respond to the switch with a Unicast reply that contains the default gateway and IP
address for the client. The switch then forwards this reply back to the client.
Boston Raleigh
BladeCenter
BladeCenter
20.1.1.1 10.1.1.2
BladeCenter
The use of two servers provide failover redundancy. The client request is forwarded to both
BOOTP servers configured on the switch. However, no health checking is supported.
Generally, you should configure the command on the switch IP interface that is closest to the
client, so that the BOOTP server knows from which IP subnet the newly allocated IP address
should come.
Use the following commands to configure the switch as a BOOTP relay agent:
>> # /cfg/l3/bootp
>> Bootstrap Protocol Relay# addr <IP-address>(IP address of BOOTP server)
>> Bootstrap Protocol Relay# addr2<IP-address>(IP address of 2nd BOOTP server)
>> Bootstrap Protocol Relay# on (Globally turn BOOTP relay on)
>> Bootstrap Protocol Relay# off (Globally turn BOOTP relay off)
>> Bootstrap Protocol Relay# cur (Display current configuration)
The Browser-based Interface (BBI) provides access to the common configuration, manage-
ment and operation features of the GbE Switch Module through your Web browser. For more
information, refer to the BBI Quick Guide.
To establish a BBI connection with the switch, you can run a browser on your workstation and
point it to the IP address of the Switch Module.
Configuration – this section provides access to the configuration elements for the entire
switch:
Switch – this menu provides access to the switch configuration elements.
Spanning Tree Groups – add and configure the switch spanning tree groups and the
various configuration elements associated with them.
Virtual LANs – add and configure the VLANs for the switch which includes select-
ing the participating ports and associated Spanning Tree Group.
RMON – configure remote monitoring functions.
IP Routing – configure all of the IP related information.
L4 Switching – configure layer 4 information, including server load-balancing fea-
tures and filters
Layer 7 Resource Definition – configure layer 7 resources
Virtual Routing – configure Virtual Router Redundancy Protocol
Statistics – this section provides access to the switch statistics and state information.
Dashboard – the Dashboard displays settings and operating status of a variety of switch
features.
/cfg/sys/access/http ena
To change the HTTP web server port from the default port 80, use the following command:
/cfg/sys/access/wport <x>
To access the GbESM via the Browser-Based Interface, open a Web browser window and type
in the URL using the IP interface address of the GbESM, such as http://10.10.10.1.
/cfg/sys/access/https/https ena
To change the HTTPS Web server port number from the default port 443, use the following
command:
/cfg/sys/access/https/port <x>
Accessing the BBI via HTTPS requires that you generate a certificate to be used during the key
exchange. A default certificate is created the first time HTTPS is enabled, but you can create a
new certificate defining the information you want to be used in the various fields.
>> /cfg/sys/access/https/generate
Country Name (2 letter code) [ ]: <country code>
State or Province Name (full name) []: <state>
Locality Name (eg, city) []: <city>
Organization Name (eg, company) []: <company>
Organizational Unit Name (eg, section) []: <org. unit>
Common Name (eg, YOUR name) []: <name>
Email (eg, email address) []: <email address>
Confirm generating certificate? [y/n]: y
Generating certificate. Please wait (approx 30 seconds)
restarting SSL agent
The certificate can be saved to flash for use if the GbESM is rebooted by using the apply and
save commands.
When a client (e.g. web browser) connects to the GbESM, the client is asked to accept the cer-
tificate and can verify that the fields are what the client expected. Once BBI access is granted
to the client, you can use the BBI.
Using SNMP
The switch software provides Simple Network Management Protocol (SNMP) v1.0 support for
access through any network management software, such as IBM Director or HP-OpenView.
To access the SNMP agent on the GbE Switch Module, the read and write community strings
on the SNMP manager should be configured to match those on the switch. The default read
community string on the switch is public and the default write community string is
private.
The read and write community strings on the switch can be changed using the following com-
mands on the CLI:
>> /cfg/sys/ssnmp/rcomm
and
>> /cfg/sys/ssnmp/wcomm
The SNMP manager should be able to reach the management interface, or any one of the IP
interfaces on the switch.
For the SNMP manager to receive the traps sent out by the SNMP agent on the switch, the trap
host on the switch should be configured with the following command:
/cfg/sys/ssnmp/<trap1|trap2>
Alteon OS supports the following standard MIBs on the GbE Switch Module:
To establish a console (DCE) connection, connect an 8-pin DIN to DB9 serial console cable
cable (26K6541) between the GbESM console port and an ASCII terminal or a computer run-
ning ASCII terminal emulation software that is set to the following values:
Limiting management users to a specific IP address range. See “Setting Allowable Source
IP Address Ranges” on page 37
Authentication and authorization of remote administrators: see “RADIUS Authentication
and Authorization” on page 38
Encryption of management information exchanged between the remote administrator and
the switch: see “Secure Shell and Secure Copy” on page 48
The following topics are addressed in this section:
When an IP packet reaches the switch, the source IP address is checked against the range of
addresses defined by the management network and mask, (mnet and mmask). If the source IP
address of the host or hosts are within this range, they are allowed to attempt to log in. Any
packet addressed to a switch IP interface with a source IP address outside this range is dis-
carded.
In this example, the management network is set to 192.192.192.0 and management mask is set
to 255.255.255.128. This defines the following range of allowed IP addresses: 192.192.192.1
to 192.192.192.126. The following source IP addresses are granted or not granted access to the
switch:
A host with a source IP address of 192.192.192.21 falls within the defined range and
would be allowed to access the switch.
NOTE – A host with a source IP address of 192.192.192.192 falls outside the defined range and
is not granted access. To make this source IP address valid, you would need to shift the host to
an IP address within the valid range specified by the mnet and mmask or modify the mnet to
be 192.192.192.128 and the mmask to be 255.255.255.128. This would put the
192.192.192.192 host within the valid range allowed by the mnet and mmask
(192.192.192.129-254).
A protocol with a frame format that utilizes UDP over IP (based on RFC 2138 and 2866)
A centralized server that stores all the user authorization information
A client, in this case, the switch
The GbE Switch Module—acting as the RADIUS client—communicates to the RADIUS
server to authenticate and authorize a remote administrator using the protocol definitions spec-
ified in RFC 2138 and 2866. Transactions between the client and the RADIUS server are
authenticated using a shared key that is not sent over the network. In addition, the remote
administrator passwords are sent encrypted between the RADIUS client (the switch) and the
back-end RADIUS server.
4. Using RADIUS protocol, the authentication server instructs the switch to grant or deny
administrative access.
1. Turn RADIUS authentication on, then configure the Primary and Secondary RADIUS
servers.
CAUTION—If you configure the RADIUS secret using any method other than through the con-
! sole port or management module, the secret may be transmitted over the network as clear text.
3. If desired, you may change the default TCP port number used to listen to RADIUS.
The well-known port for RADIUS is 1645.
4. Configure the number retry attempts for contacting the RADIUS server, and the timeout
period.
Supports Radius client on the switch, based on the protocol definitions in RFC 2138 and
RFC 2866.
Allows RADIUS secret password up to 32 bytes and less than 16 octets.
Supports secondary authentication server so that when the primary authentication server
is unreachable, the switch can send client authentication requests to the secondary authen-
tication server. Use the /cfg/sys/radius/cur command to show the currently
active RADIUS authentication server.
Supports user-configurable RADIUS server retry and time-out values:
Time-out value = 1-10 seconds
Retries = 1-3
The switch will time out if it does not receive a response from the RADIUS server in 1-3
retries. The switch will also automatically retry connecting to the RADIUS server before it
declares the server down.
Supports user-configurable RADIUS application port.
The default is 1645/UDP-based on RFC 2138. Port 1812 is also supported.
Allows network administrator to define privileges for one or more specific users to access
the switch at the RADIUS user database.
SecurID is supported if the RADIUS server can do an ACE/Server client proxy. The pass-
word is the PIN number, plus the token code of the SecurID card.
User The User has no direct responsibility for switch management. user
He/she can view all switch status information and statistics but
cannot make any configuration changes to the switch.
SLB Operator The SLB Operator manages content servers and other Internet slboper
services and their loads. In addition to being able to view all
switch information and statistics, the SLB Operator can enable/
disable servers using the SLB operation menu.
Layer 4 Operator The Layer 4 Operator manages traffic on the lines leading to the l4oper
shared Internet services. This user currently has the same access
level as the SLB operator. This level is reserved for future use, to
provide access to operational commands for operators managing
traffic on the line leading to the shared Internet services.
Operator The Operator manages all functions of the switch. In addition to oper
SLB Operator functions, the Operator can reset ports or the
entire switch.
SLB Administrator The SLB Administrator configures and manages content servers slbadmin
and other Internet services and their loads. In addition to SLB
Operator functions, the SLB Administrator can configure param-
eters on the SLB menus, with the exception of not being able to
configure filters or bandwidth management.
Layer 4 Administrator The Layer 4 Administrator configures and manages traffic on the l4admin
lines leading to the shared Internet services. In addition to SLB
Administrator functions, the Layer 4 Administrator can config-
ure all parameters on the SLB menus, including filters and band-
width management.
Administrator The super-user Administrator has complete access to all menus, admin
information, and configuration commands on the switch, includ-
ing the ability to change both the user and administrator pass-
words.
If the remote user is successfully authenticated by the authentication server, the switch will
verify the privileges of the remote user and authorize the appropriate access. The administrator
has an option to allow backdoor access via Telnet (/cfg/sys/radius/telnet). The
default is disable for Telnet access. The adminstrator also can enable secure backdoor
(/cfg/sys/radius/secbd), to allow access if both the primary and the secondary
TACACS+ servers fail to respond.
NOTE – To obtain the RADIUS backdoor password for your GbESM, contact your IBM Ser-
vice and Support line.
All user privileges, other than those assigned to the User and the Administrator, have to be
defined in the RADIUS dictionary. Radius attribute 1, which is built into all Radius servers,
defines the User. Radius attribute 6 defines the Administrator. The file name of the dictionary
is RADIUS vendor-dependent. The following Radius attributes are defined for Alteon OS user
privileges levels:
TACACS+ Authentication
Alteon OS supports authentication and authorization with networks using the Cisco Systems
TACACS+ protocol. The GbE Switch Module functions as the Network Access Server (NAS)
by interacting with the remote client and initiating authentication and authorization sessions
with the TACACS+ access server. The remote user is defined as someone requiring manage-
ment access to the GbE Switch Module either through a data or management port.
1. Remote administrator connects to the switch and provides user name and password.
4. Using TACACS+ protocol, the authentication server instructs the switch to grant or deny
administrative access.
If additional authorization checking is needed, the switch checks with a TACACS+ server to
determine if the user is granted permission to use a particular command.
Authorization
Authorization is the action of determining a user’s privileges on the device, and usually takes
place after authentication.
The default mapping between TACACS+ authorization levels and Alteon OS management
access levels is shown in Table 1-4. The authorization levels must be defined on the TACACS+
server.
user 0
slboper 1
l4oper 2
oper 3
slbadmin 4
l4admin 5
admin 6
user 0-1
slboper 2-3
l4oper 4-5
oper 6-8
slbadmin 9 - 11
l4admin 12 - 13
admin 14 - 15
If the remote user is successfully authenticated by the authentication server, the switch will
verify the privileges of the remote user and authorize the appropriate access. The administrator
has an option to allow backdoor access via Telnet (/cfg/sys/tacacs/telnet). The
default is disable for Telnet access. The adminstrator also can enable secure backdoor
(/cfg/sys/tacacs/secbd), to allow access if both the primary and the secondary
TACACS+ servers fail to respond.
NOTE – To obtain the TACACS+ backdoor password for your GbESM, contact your IBM
Service and Support line.
Accounting
Accounting is the action of recording a user's activities on the device for the purposes of billing
and/or security. It follows the authentication and authorization actions. If the authentication
and authorization is not performed via TACACS+, there are no TACACS+ accounting mes-
sages sent out.
You can use TACACS+ to record and track software logins, configuration changes, and inter-
active commands.
The GbE Switch Module supports the following TACACS+ accounting attributes:
protocol (console/telnet/ssh/http)
start_time
stop_time
elapsed_time
disc-cause
NOTE – When using the Browser-Based Interface, the TACACS+ Accounting Stop records are
sent only if the Quit button on the browser is clicked.
The following examples illustrate the format of Alteon OS commands sent to the TACACS+
server:
Only commands from a Console, Telnet, or SSH connection are sent for authorization and
logging. SNMP, BBI, or file-copy commands (for example, TFTP or sync) are not sent.
Only leaf-level commands are sent for authorization and logging. For example, /cfg is
not sent, but /cfg/l3/tacacs/cauth is sent.
The full path of each command is sent for authorization and logging. For example, /cfg/
sys/tacacs/cauth.
Command arguments are not sent for authorization. For /cauth ena, only /cauth is
authorized. The command and its first argument are logged, if issued on the same line.
Only executed commands are logged.
Invalid commands are checked by Alteon OS, and are not sent for authorization or log-
ging.
Authorization is performed on each leaf-level command separately. If the user issues mul-
tiple commands at once, each command is sent separately as a full path.
Only the following global commands are sent for authorization and logging:
apply
diff
ping
revert
save
telnet
traceroute
Use the following commands to change the password for the primary and secondary
TACACS+ servers:
CAUTION—If you configure the TACACS+ secret using any method other than a direct con-
! sole connection or through a secure management module connection, the secret may be trans-
mitted over the network as clear text.
3. If desired, you may change the default TCP port number used to listen to TACACS+.
4. Configure the number retry attempts for contacting the TACACS+ server, and the time-
out period.
SSH is a protocol that enables remote administrators to log securely into the GbE Switch Mod-
ule over a network to execute management commands.
SCP is typically used to copy files securely from one machine to another. SCP uses SSH for
encryption of data on the network. On a GbE Switch Module, SCP is used to download and
upload the switch configuration via secure channels.
To configure the password, enter the following command via the CLI. At factory default set-
tings, the current SCP administrator password is admin.
>> /cfg/sys/access/sshd/scpadm
Changing SCP-only Administrator password; validation required...
Enter current administrator password: <password>
Enter new SCP-only administrator password: <new password>
Re-enter new SCP-only administrator password: <new password>
New SCP-only administrator password accepted.
Example:
Example:
Example:
The diff command is automatically executed at the end of putcfg to notify the remote
client of the difference between the new and the current configurations.
putcfg_apply runs the apply command after the putcfg is done.
putcfg_apply_save saves the new configuration to the flash after putcfg_apply
is done.
The putcfg_apply and putcfg_apply_save commands are provided because
extra apply and save commands are usually required after a putcfg; however, an
SCP session is not in an interactive mode at all.
Server Host Authentication: Client RSA authenticates the switch at the beginning of
every connection
When the SSH server is first enabled and applied, the switch automatically generates the RSA
host and server keys and is stored in the FLASH memory.
NOTE – To configure RSA host and server keys, first connect to the GbE Switch Module
through the console port or management module (commands are not available via external Tel-
net connection), and enter the following commands to generate them manually.
These two commands take effect immediately without the need of an apply command.
When the switch reboots, it will retrieve the host and server keys from the FLASH memory. If
these two keys are not available in the flash and if the SSH server feature is enabled, the switch
automatically generates them during the system reboot. This process may take several minutes
to complete.
The switch can also automatically regenerate the RSA server key. To set the interval of RSA
server key autogeneration, use this command:
A value of 0 (zero) denotes that RSA server key autogeneration is disabled. When greater than
0, the switch will autogenerate the RSA server key every specified interval; however, RSA
server key generation is skipped if the switch is busy doing other key or cipher generation
when the timer expires.
NOTE – The switch will perform only one session of key/cipher generation at a time. Thus, an
SSH/SCP client will not be able to log in if the switch is performing key generation at that
time, or if another client has logged in immediately prior. Also, key generation will fail if an
SSH/SCP client is logging in at that time.
SecurID Support
SSH/SCP can also work with SecurID, a token card-based authentication method. The use of
SecurID requires the interactive mode during login, which is not provided by the SSH connec-
tion.
NOTE – There is no SNMP or Browser-Based Interface (BBI) support for SecurID because the
SecurID server, ACE, is a one-time password authentication and requires an interactive ses-
sion.
To log in using SSH, use a special username, “ace,” to bypass the SSH authentication.
After an SSH connection is established, you are prompted to enter the username and pass-
word (the SecurID authentication is being performed now).
Provide your username and the token in your SecurID card as a regular Telnet user.
NOTE – The SCP-only administrator’s password must be different from the regular administra-
tor’s password. If the two passwords are the same, the administrator using that password will
not be allowed to log in as an SSH user because the switch will recognize him as the SCP-only
administrator. The switch will only allow the administrator access to SCP commands.
For example, an administrator can assign a user to manage real servers 1 and 2 only. The user
can then log into the switch and perform operational commands (effective only until the next
switch reboot), to enable or disable the real servers, or change passwords on the real servers.
Strong Passwords
The administrator can require use of Strong Passwords for users to access the GbESM. Strong
Passwords enhance security because they make password guessing more difficult.
1234AbcXyz
Super+User
Exo1cet2
The administrator can choose the number of days allowed before each password expires. When
a strong password expires, the user is allowed to log in one last time (last time) to change the
password. A warning provides advance notice for users to change the password.
>> # /cfg/sys/access/user/strongpw
>> # /cfg/sys/access/user
>> # /cfg/sys/access/user/uid 1
To change the user’s level, enter the class of service cos command, and select one of the fol-
lowing options:
# /cfg/sys/access/user/cur
Usernames:
user - Enabled
slboper - Disabled
l4oper - Disabled
oper - Disabled
slbadmin - Disabled
l4admin - Disabled
admin - Always Enabled
NOTE – Basic VLANs can be configured during initial switch configuration (see “Using the
Setup Utility” in the Alteon OS Command Reference). More comprehensive VLAN configura-
tion can be done from the Command Line Interface (see “VLAN Configuration” as well as
“Port Configuration” in the Alteon OS Command Reference).
59
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview
Setting up virtual LANs (VLANs) is a way to segment networks to increase network flexibility
without changing the physical network topology. With network segmentation, each switch port
connects to a segment that is a single broadcast domain. When a switch port is configured to be
a member of a VLAN, it is added to a group of ports (workgroup) that belong to one broadcast
domain.
Ports are grouped into broadcast domains by assigning them to the same VLAN. Frames
received in one VLAN can only be forwarded within that VLAN, and multicast, broadcast, and
unknown unicast frames are flooded only to ports in the same VLAN. The GbE Switch Mod-
ule supports jumbo frames, up to 9,216 bytes.
VLAN Numbers
Alteon OS supports up to 1024 VLANs per switch. Even though the maximum number of
VLANs supported at any given time is 1024, each can be identified with any number between
1 and 4095. VLAN 1 is the default VLAN for the external ports and the internal blade ports.
VLAN 4095 is used by the management network, which includes the management ports and
(by default) the internal blade ports. This configuration allows Serial over LAN (SoL) manage-
ment, a feature available on certain server blades.
Viewing VLANs
VLAN information menu:
NOTE – The sample screens that appear in this document might differ slightly from the screens
displayed by your system. Screen content varies based on the type of BladeCenter unit that you
are using and the firmware versions and options that are installed.
60 Chapter 2: VLANs
24R9742, March 2006
Alteon OS 21.0 Application Guide
PVID Numbers
Each port in the switch has a configurable default VLAN number, known as its PVID. By
default, the PVID for all non-management ports is set to 1, which correlates to the default
VLAN ID. The PVID for each port can be configured to any VLAN number between 1 and
4094.
Port information:
>> /info/port
Alias Port Tag FAST RMON PVID NAME VLAN(s)
----- ---- --- ---- ---- ---- -------------- ------------------
INT1 1 y n d 1 INT1 1 4095
INT2 2 y n d 1 INT2 1 4095
INT3 3 y n d 1 INT3 1 4095
INT4 4 y n d 1 INT4 1 4095
INT5 5 y n d 1 INT5 1 4095
INT6 6 y n d 1 INT6 1 4095
INT7 7 y n d 1 INT7 1 4095
INT8 8 y n d 1 INT8 1 4095
INT9 9 y n d 1 INT9 1 4095
INT10 10 y n d 1 INT10 1 4095
INT11 11 y n d 1 INT11 1 4095
INT12 12 y n d 1 INT12 1 4095
INT13 13 y n d 1 INT13 1 4095
INT14 14 y n d 1 INT14 1 4095
MGT1 15 y n d 4095 MGT1 4095
MGT2 16 y n d 4095 MGT2 4095
EXT1 17 n n d 1 EXT1 1
EXT2 18 n n d 1 EXT2 1
EXT3 19 n n d 1 EXT3 1
EXT4 20 n n d 1 EXT4 1
NOTE – The sample screens that appear in this document might differ slightly from the screens
displayed by your system. Screen content varies based on the type of BladeCenter unit that you
are using and the firmware versions and options that are installed.
Chapter 2: VLANs 61
24R9742, March 2006
Alteon OS 21.0 Application Guide
Port Configuration:
Each port on the switch can belong to one or more VLANs, and each VLAN can have any
number of switch ports in its membership. Any port that belongs to multiple VLANs, however,
must have VLAN tagging enabled (see “VLAN Tagging” on page 62).
VLAN Tagging
Alteon OS software supports 802.1Q VLAN tagging, providing standards-based VLAN sup-
port for Ethernet systems.
Tagging places the VLAN identifier in the frame header of a packet, allowing each port to
belong to multiple VLANs. When you add a port to multiple VLANs, you must also enable
tagging on that port.
Since tagging fundamentally changes the format of frames transmitted on a tagged port, you
must carefully plan network designs to prevent tagged frames from being transmitted to
devices that do not support 802.1Q VLAN tags, or devices where tagging is not enabled.
VLAN identifier (VID)—the 12-bit portion of the VLAN tag in the frame header that
identifies an explicit VLAN.
Port VLAN identifier (PVID)—a classification mechanism that associates a port with a
specific VLAN. For example, a port with a PVID of 3 (PVID =3) assigns all untagged
frames received on this port to VLAN 3. Any untagged frames received by the switch are
classified with the PVID of the receiving port.
Tagged frame—a frame that carries VLAN tagging information in the header. This VLAN
tagging information is a 32-bit field (VLAN tag) in the frame header that identifies the
frame as belonging to a specific VLAN. Untagged frames are marked (tagged) with this
classification as they leave the switch through a port that is configured as a tagged port.
Untagged frame— a frame that does not carry any VLAN tagging information in the
frame header.
62 Chapter 2: VLANs
24R9742, March 2006
Alteon OS 21.0 Application Guide
Untagged member—a port that has been configured as an untagged member of a specific
VLAN. When an untagged frame exits the switch through an untagged member port, the
frame header remains unchanged. When a tagged frame exits the switch through an
untagged member port, the tag is stripped and the tagged frame is changed to an untagged
frame.
Tagged member—a port that has been configured as a tagged member of a specific
VLAN. When an untagged frame exits the switch through a tagged member port, the
frame header is modified to include the 32-bit tag associated with the PVID. When a
tagged frame exits the switch through a tagged member port, the frame header remains
unchanged.
NOTE – If a 802.1Q tagged frame is received by a port that has VLAN-tagging disabled, then
the frame is dropped at the ingress port.
VLAN 1
DA CRC
SA
Incoming Outgoing Data
untagged Data untagged packet
packet (unchanged) SA
CRC DA
Key
By default:
All ports are assigned PVID = 1
All external ports are untagged members of VLAN 1
All internal server ports are tagged members of VLAN 1
BS45010A
Chapter 2: VLANs 63
24R9742, March 2006
Alteon OS 21.0 Application Guide
NOTE – The port numbers specified in these illustrations may not directly correspond to the
physical port configuration of your switch model.
When a VLAN is configured, ports are added as members of the VLAN, and the ports are
defined as either tagged or untagged (see Figure 2-2 through Figure 2-5).
In Figure 2-1, untagged incoming packets are assigned directly to VLAN 2 (PVID = 2). Port 5
is configured as a tagged member of VLAN 2, and port 7 is configured as an untagged member
of VLAN 2.
The default configuration settings for GbE Switch Modules have all external ports set as
untagged members of VLAN 1, with all non-management ports configured as PVID = 1. In the
default configuration example shown in Figure 2-1 on page 63, all incoming packets are
assigned to VLAN 1 by the default port VLAN identifier (PVID =1).
Figure 2-2 through Figure 2-5 illustrate generic examples of VLAN tagging.
NOTE – The port assignments in the following figures are not meant to match the
GbE Switch Module.
Port 5
Untagged member
of VLAN 2
BS45011A
64 Chapter 2: VLANs
24R9742, March 2006
Alteon OS 21.0 Application Guide
As shown in Figure 2-3, the untagged packet is marked (tagged) as it leaves the switch through
port 5, which is configured as a tagged member of VLAN 2. The untagged packet remains
unchanged as it leaves the switch through port 7, which is configured as an untagged member
of VLAN 2.
Port 5
802.1Q Switch CRC* Data Tag SA DA
(*Recalculated)
Port 6 Port 7 Port 8
In Figure 2-4, tagged incoming packets are assigned directly to VLAN 2 because of the tag
assignment in the packet. Port 5 is configured as a tagged member of VLAN 2, and port 7 is
configured as an untagged member of VLAN 2.
Port 5
Before
Port 6 Port 7 Port 8
Untagged member
of VLAN 2
BS45013A
Chapter 2: VLANs 65
24R9742, March 2006
Alteon OS 21.0 Application Guide
As shown in Figure 2-5, the tagged packet remains unchanged as it leaves the switch through
port 5, which is configured as a tagged member of VLAN 2. However, the tagged packet is
stripped (untagged) as it leaves the switch through port 7, which is configured as an untagged
member of VLAN 2.
Port 5
802.1Q Switch CRC Data Tag SA DA
Outgoing After
SA untagged packet
changed Key
DA (tag removed)
Priority - User_priority
CFI - Canonical format indicator
VID - VLAN identifier
BS45014A
NOTE – Set the configuration to factory default (/boot/conf factory) to reset all non-
management ports to VLAN 1.
66 Chapter 2: VLANs
24R9742, March 2006
Alteon OS 21.0 Application Guide
If configuring Spanning Tree Groups (STG), note that Spanning Tree Groups 2-32 may
contain only one VLAN.
All ports involved in trunking and port mirroring must have the same VLAN configura-
tion. If a port is on a trunk with a mirroring port, the VLAN configuration cannot be
changed. For more information trunk groups, see “Port Trunking Example” on page 79.
All ports that are involved in port mirroring must have memberships in the same VLANs.
If a port is configured for port mirroring, the port’s VLAN membership cannot be
changed. For more information on configuring port mirroring, see “Monitoring Ports” on
page 454.
Note that only Spanning Tree Group 1 can contain multiple VLANs. Spanning Tree
Groups 2-32 each can contain only one VLAN.
GbE
Switch Module
Chapter 2: VLANs 67
24R9742, March 2006
Alteon OS 21.0 Application Guide
Component Description
GbE Switch This switch is configured for three VLANs that represent three differ-
Module ent IP subnets. Two servers and five clients are attached to the switch.
Server #1 This server is a member of VLAN 3 and has presence in only one IP
subnet. The associated internal switch port is only a member of VLAN
3, so tagging is disabled.
Server #2 This high-use server needs to be accessed from all VLANs and IP sub-
nets. The server has a VLAN-tagging adapter installed with VLAN tag-
ging turned on. The adapter is attached to one of the internal switch
ports, that is a member of VLANs 1, 2, and 3, and has tagging enabled.
Because of the VLAN tagging capabilities of both the adapter and the
switch, the server is able to communicate on all three IP subnets in this
network. Broadcast separation between all three VLANs and subnets,
however, is maintained.
PCs #1 and #2 These PCs are attached to a shared media hub that is then connected to
the switch. They belong to VLAN 2 and are logically in the same IP
subnet as Server 2 and PC 5. The associated external switch port has
tagging disabled.
NOTE – VLAN tagging is required only on ports that are connected to other GbE Switch Mod-
ules or on ports that connect to tag-capable end-stations, such as servers with VLAN-
tagging adapters.
68 Chapter 2: VLANs
24R9742, March 2006
Alteon OS 21.0 Application Guide
Resource optimization
Enhanced customer segmentation
Improved service differentiation
Gateway 5: 10.10.1.20
Gateway 6: 10.10.1.30
Gateway 1: 10.10.4.1
IBM.com
You can configure up to 254 gateways with one gateway per VLAN with values starting from
5 through 254. If the gateways per VLAN fail, then traffic is directed to default gateways 1
through 4. Default gateways 1 through 4 are used for load balancing session requests and as
backup when a specific gateway that has been assigned to a VLAN is down.
Chapter 2: VLANs 69
24R9742, March 2006
Alteon OS 21.0 Application Guide
In the example shown in Figure 2-7, if gateways 5 or 6 fail, then traffic is directed to default
gateway 1, which is configured with IP address 10.10.4.1. If default gateways 1 through 4 are
not configured on the switch, then packets from VLAN 2 and VLAN 3 are discarded.
The route cache table on the switch records each session request by mapping the destination IP
address with the MAC address of the default gateway. The command /info/l3/arp/dump
on the switch command line will display the entries in the route cache similar to those shown
in Table 2-1. The destination IP addresses (see the last two rows) are associated with the MAC
addresses of the gateways.
172.21.2.27 00:50:da:17:c8:05 2 7 1
172.21.3.14 00:c0:4f:09:3e:56 3 8 2
As shown in Table 2-1, traffic from VLAN 2 uses gateway 5 to access destination IP address
192.168.20.200. If traffic from VLAN 3 requests the same destination address, then traffic is
routed via gateway 5 instead of gateway 6, because 192.168.20.200 in the route cache is
mapped to gateway 5. If the requested route is not in the route cache, then the switch reads the
routing table. If the requested route is not in the routing table, then the switch looks at the con-
figured default gateway.
70 Chapter 2: VLANs
24R9742, March 2006
Alteon OS 21.0 Application Guide
Typically, the switch routes traffic based on the routes in the routing table. The routing table
will contain an entry of the configured local network with the default gateway. The route cache
will not contain the route entry. This configuration provides a more secure environment, but
affects performance if the routing table is close to its maximum capacity.
Chapter 2: VLANs 71
24R9742, March 2006
Alteon OS 21.0 Application Guide
NOTE – The IP address for default gateways 1 to 4 must be unique. IP addresses for default
gateways 5 to 254 can be set to the same IP address as the other gateways (including default
gateway 1 to 4). For example, you can configure two default gateways with the same IP
address for two different VLANs.
Examine the results under the gateway section. If any settings are incorrect, make the appropri-
ate changes.
72 Chapter 2: VLANs
24R9742, March 2006
Alteon OS 21.0 Application Guide
6. (Optional) Configure the local networks to ensure that the VLANs use the configured
default gateways.
Chapter 2: VLANs 73
24R9742, March 2006
Alteon OS 21.0 Application Guide
74 Chapter 2: VLANs
24R9742, March 2006
CHAPTER 3
Ports and Trunking
Trunk groups can provide super-bandwidth, multi-link connections between GbE Switch Mod-
ules or other trunk-capable devices. A trunk group is a group of ports that act together, combin-
ing their bandwidth to create a single, larger virtual link. This chapter provides configuration
background and examples for trunking multiple ports together:
75
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview
When using port trunk groups between two switches, as shown in Figure 3-1, you can create a
virtual link between the switches operating up to 4 Gig per second, depending on how many
physical ports are combined. Each GbESM supports up to 13 trunk groups, consisting of one to
four ports in each group. Both internal (INT1-INT14) and external ports (EXT1-EXT4) can
become members of a trunk group.
BladeCenter
OK
LINK Aggregate
1 port trunk
TX/RX
LINK
2
TX/RX
LINK
3
TX/RX
LINK
4
TX/RX
Trunk groups are also useful for connecting a GbE Switch Module to third-party devices that
support link aggregation, such as Cisco routers and switches with EtherChannel technology
(not ISL trunking technology) and Sun's Quad Fast Ethernet Adapter. Nortel Networks trunk
group technology is compatible with these devices when they are configured manually.
Each packet’s particular combination of source and destination MAC addresses results in
selecting one line in the trunk group for data transmission. If there are enough Layer 2 devices
feeding the trunk lines, then traffic distribution becomes relatively even.
Statistical load balancing is maintained whenever a port in a trunk group is lost or returned to
service.
Before you configure your trunk, you must consider these settings, along with specific config-
uration rules, as follows:
1. Read the configuration rules provided in the section, “Trunk group configuration rules”
on page 78.”
2. Determine which switch ports (up to four) are to become trunk members (the specific
ports making up the trunk).
Ensure that the chosen switch ports are set to enabled, using the /cfg/port command.
3. Consider how the existing spanning tree will react to the new trunk configuration. See
Chapter 4, “Spanning Tree Group” for spanning tree group configuration guidelines.
All trunks must originate from one device, and lead to one destination device. For exam-
ple, you cannot combine a link from Server 1 and a link from Server 2, into one trunk
group.
Any physical switch port can belong to only one trunk group.
Trunking from third-party devices must comply with Cisco® EtherChannel® technology.
All trunk member ports must be assigned to the same VLAN configuration before the
trunk can be enabled.
If you change the VLAN settings of any trunk member, you cannot apply the change until
you change the VLAN settings of all trunk members.
When an active port is configured in a trunk, the port becomes a trunk member when you
enable the trunk using the /cfg/l2/trunk/ena command. The spanning tree
parameters for the port then change to reflect the new trunk settings.
All trunk members must be in the same Spanning Tree Group (STG) and can belong to
only one Spanning Tree Group (STG). However if all ports are tagged, then all trunk ports
can belong to multiple STGs.
If you change the Spanning Tree participation of any trunk member to enabled or dis-
abled, the Spanning Tree participation of all members of that trunk changes similarly.
When a trunk is enabled, the trunk Spanning Tree participation setting takes precedence
over that of any trunk member.
You cannot configure a trunk member as a monitor port in a port-mirroring configuration.
Trunks cannot be monitored by a monitor port; however, trunk members can be moni-
tored.
To guarantee proper trunking behavior, all ports in static trunks must be configured for
full-duplex mode (cfg/port x/gig/mode full).
GbE Switch
Module
BladeCenter
Prior to configuring each switch in the above example, you must connect to the appropriate
switch’s Command Line Interface (CLI) as the administrator.
NOTE – For details about accessing and using any of the menu commands described in this
example, see the Alteon OS Command Reference.
1. Connect the switch ports that will be involved in the trunk group.
Examine the resulting information. If any settings are incorrect, make appropriate changes.
(c) Save your new configuration changes.
Trunk group 1 (on the GbESM) is now connected to trunk group 3 (on Alteon Application
Switch).
NOTE – In this example, a GbE Switch Module and an application switch are used. If a third-
party device supporting link aggregation is used (such as Cisco routers and switches with
EtherChannel technology or Sun's Quad Fast Ethernet Adapter), trunk groups on the third-
party device should be configured manually. Connection problems could arise when using
automatic trunk group negotiation on the third-party device.
Information about each port in each configured trunk group is displayed. Make sure that trunk
groups consist of the expected ports and that each port is in the expected state.
Any physical switch port can belong to only one trunk group.
Up to four ports can belong to the same trunk group.
Best performance is achieved when all ports in any given trunk group are configured for
the same speed.
Trunking from third-party devices must comply with Cisco® EtherChannel® technology.
Source IP (SIP)
Destination IP (DIP)
Source MAC (SMAC)
Destination MAC (DMAC)
Source IP (SIP) + Destination IP (DIP)
Source MAC (SMAC) + Destination MAC (DMAC)
Source MAC (SMAC) + Source IP (SIP)
Source MAC (SMAC) + Destination IP (DIP)
The 802.3ad standard allows standard Ethernet links to form a single Layer 2 link using the
Link Aggregation Control Protocol (LACP). Link aggregation is a method of grouping physi-
cal link segments of the same media type and speed in full duplex, and treating them as if they
were part of a single, logical link segment. If a link in a LACP trunk group fails, traffic is reas-
signed dynamically to the remaining link/s of the dynamic trunk group.
NOTE – LACP implementation in Alteon OS 21.0 does not support the Churn machine, an
option used to detect if the port is operable within a bounded time period between the actor
and the partner. Only the Market Responder is implemented, and there is no marker protocol
generator.
A port’s Link Aggregation Identifier (LAG ID) determines how the port can be aggregated.
The Link Aggregation ID (LAG ID) is constructed mainly from the system ID and the port’s
admin key, as follows:
System ID is an integer value based on the switch’s MAC address and the system priority
assigned in the CLI.
Admin key
A port’s Admin key is an integer value (1 - 65535) that you can configure in the CLI. Each
GbESM port that participates in the same LACP trunk group must have the same admin key
value. The Admin key is local significant, which means the partner switch does not need to use
the same Admin key value.
For example, consider two switches, an Actor (the GbESM) and a Partner (another switch), as
shown in Table 3-1.
In the configuration shown in Table 3-1, Actor switch ports EXT1 and EXT2 aggregate to
form an LACP trunk group with Partner switch ports 1 and 2. At the same time, Actor switch
ports EXT3 and EXT4 form a different LACP trunk group with a different partner.
LACP automatically determines which member links can be aggregated and then aggregates
them. It provides for the controlled addition and removal of physical links for the link aggrega-
tion.
Each port in the GbESM can have one of the following LACP modes.
off (default)
The user can configure this port in to a regular static trunk group.
active
The port is capable of forming an LACP trunk. This port sends LACPDU packets to part-
ner system ports.
passive
The port is capable of forming an LACP trunk. This port only responds to the LACPDU
packets sent from an LACP active port.
Each active LACP port transmits LACP data units (LACPDUs), while each passive LACP
port listens for LACPDUs. During LACP negotiation, the admin key value is exchanged. The
LACP trunk group is enabled as long as the information matches at both ends of the link. If the
admin key value changes for a port at either end of the link, that port’s association with the
LACP trunk group is lost.
When the system is initialized, all ports by default are in LACP off mode and are assigned
unique admin keys. To make a group of ports aggregatable, you assign them all the same
admin key. You must set the port’s LACP mode to active to activate LACP negotiation. You
can set other port’s LACP mode to passive, to reduce the amount of LACPDU traffic at the ini-
tial trunk-forming stage.
Configuring LACP
Use the following procedure to configure LACP for port EXT1 and port EXT2 to participate in
link aggregation.
2. Define the admin key on port EXT1. Only ports with the same admin key can form a
LACP trunk group.
>> LACP port EXT1# adminkey 100 (Set port EXT1 adminkey to 100)
Current LACP port adminkey: 17
New pending LACP port adminkey: 100
>> LACP port EXT2# adminkey 100 (Set port EXT2 adminkey to 100)
Current LACP port adminkey: 18
New pending LACP port adminkey: 100
>> LACP port EXT2# save (Save for restore after reboot)
“Overview” on page 86
“Bridge Protocol Data Units (BPDUs)” on page 87
“Multiple Spanning Trees” on page 90
85
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview
Spanning Tree Group (STG) detects and eliminates logical loops in a bridged or switched net-
work. STG forces redundant data paths into a standby (blocked) state. When multiple paths
exist, Spanning Tree configures the network so that a switch uses only the most efficient path.
If that path fails, Spanning Tree automatically sets up another active path on the network to
sustain network operations.
The relationship between port, trunk groups, VLANs, and Spanning Trees is shown in
Table 4-1.
NOTE – Due to Spanning Tree’s sequence of listening, learning, and forwarding or blocking,
lengthy delays may occur.
You can use Port Fast Forwarding (/cfg/port x/fastfwd/ena) to permit a port that partici-
pates in Spanning Tree to bypass the Listening and Learning states and enter directly into the Forwarding
state. While in the Forwarding state, the port listens to the BPDUs to learn if there is a loop and, if dic-
tated by normal STG behavior (following priorities, etc), the port transitions into the Blocking state. This
feature permits the GbE Switch Module to interoperate well within Rapid Spanning Tree networks.
A BPDU is a 64-byte packet that is sent out at a configurable interval, which is typically set for
two seconds. The BPDU is used to establish a path, much like a “hello” packet in IP routing.
BPDUs contain information about the transmitting bridge and its ports, including bridge and
MAC addresses, bridge priority, port priority, and path cost. If the ports are tagged, each port
sends out a special BPDU containing the tagged information.
The generic action of a switch on receiving a BPDU is to compare the received BPDU to its
own BPDU that it will transmit. If the received BPDU is better than its own BPDU, it will
replace its BPDU with the received BPDU. Then, the switch adds its own bridge ID number
and increments the path cost of the BPDU. The switch uses this information to block any nec-
essary ports.
Bridge Priority
The bridge priority parameter controls which bridge on the network is the STG root bridge. To
make one switch the root bridge, configure the bridge priority lower than all other switches and
bridges on your network. The lower the value, the higher the bridge priority. The bridge prior-
ity is configured using the /cfg/l2/stg x/brg/prior command in the CLI.
Port Priority
The port priority helps determine which bridge port becomes the designated port. In a network
topology that has multiple bridge ports connected to a single segment, the port with the lowest
port priority becomes the designated port for the segment. The port priority is configured using
the /cfg/l2/stg x/port x/prior command in the CLI.
NOTE – To ensure proper operation with switches that use Cisco Per VLAN Spanning
Tree (PVST+), you must either:
create a separate STG for each VLAN, or
manually add all associated VLANs into a single STG.
Creating a VLAN
When you create a VLAN, that VLAN automatically belongs to STG 1, the default STG. If you
want the VLAN in another STG, you must move the VLAN by assigning it to another STG.
VLANs must be contained within a single STG; a VLAN cannot span multiple STGs. By
confining VLANs within a single STG, you avoid problems with spanning tree blocking
ports and causing a loss of connectivity within the VLAN. When a VLAN spans multiple
switches, the VLAN must be within the same Spanning Tree Group (have the same STG
ID) across all the switches.
If ports are tagged, all trunked ports can belong to multiple STGs.
A port that is not a member of any VLAN cannot be added to any STG. The port must be
added to a VLAN, and that VLAN added to the desired STG.
When you remove a port from VLAN that belongs to an STG, that port will also be
removed from the STG. However, if that port belongs to another VLAN in the same STG,
the port remains in the STG.
As an example, assume that port 1 belongs to VLAN 1, and VLAN 1 belongs to STG 1.
When you remove port 1 from VLAN 1, port 1 is also removed from STG 1.
However, if port 1 belongs to both VLAN 1 and VLAN 2 and both VLANs belong to
STG 1, removing port 1 from VLAN 1 does not remove port 1 from STG 1 because
VLAN 2 is still a member of STG 1.
An STG cannot be deleted, only disabled. If you disable the STG while it still contains
VLAN members, Spanning Tree will be off on all ports belonging to that VLAN.
The relationship between port, trunk groups, VLANs, and Spanning Trees is shown in
Table 4-1.
You enable load balancing between two GbE Switch Modules using multiple STGs by config-
uring each path with a different VLAN and then assigning each VLAN to a separate STG. Each
STG is independent. Each STG sends its own Bridge Protocol Data Units (BPDUs), and each
STG must be independently configured.
The STG, or bridge group, forms a loop-free topology that includes one or more virtual LANs
(VLANs). The switch supports 32 STGs running simultaneously. The default STG 1 may con-
tain an unlimited number of VLANs. All other STGs 2-32 may contain one VLAN each.
All other STGs, except the default STG and the management STG (32), are empty and VLANs
must be added by the user. However, you cannot assign ports directly to an STG. Add ports to a
VLAN and add the VLAN to the STG. Each STG is enabled by default, and assigned an ID
number from 2 to 32.
If VLAN 1 and VLAN 100 belong to different Spanning Tree Groups, then the two instances
of Spanning Tree separate the topology without forming a loop. Both VLANs can forward
packets between the switches without losing connectivity.
BladeCenter
GbE Switch
Module B
17
Switch B
18
BladeCenter
VLAN 1 Participation
If application switch A is the root bridge, then application switch A will transmit the
BPDU for VLAN 1 on ports 1 and 2. Application switch C receives the BPDU on its
port 2 and application switch D receives the BPDU on its port 1. Application switch D will
block port 8 or application switch C will block port 1 depending on the information pro-
vided in the BPDU.
VLAN 2 Participation
Application switch A, the root bridge generates another BPDU for Spanning Tree Group 2
and forwards it out from port 8. GbE Switch Module B receives this BPDU on its port 1.
Port 1 on GbE Switch Module B is on VLAN 2, Spanning Tree Group 1. Because switch
B has no additional ports participating in Spanning Tree Group 1, this BPDU is not be for-
warded to any additional ports and application switch A remains the designated root.
VLAN 3 Participation
For VLAN 3 you can have GbE Switch Module B or application switch C to be the root
bridge. If switch B is the root bridge for VLAN 3, Spanning Tree Group 2, then switch B
transmits the BPDU out from port 2. Application switch C receives this BPDU on port 8
and is identified as participating in VLAN 3, Spanning Tree Group 2. Since application
switch C has no additional ports participating in Spanning Tree Group 2, this BPDU is not
forwarded to any additional ports and GbE Switch Module B remains the designated root.
By default Spanning Trees 2-15 are empty, and Spanning Tree Group 1 contains all configured
VLANs until individual VLANs are explicitly assigned to other Spanning Tree Groups. You
can have only one VLAN per Spanning Tree Group except for Spanning Tree Group 1.
VLAN 3 is automatically removed from Spanning Tree Group 1, and VLAN 2 remains in
Spanning Tree Group 1 by default.
VLAN 3 is automatically removed from Spanning Tree Group 1 and by default VLAN 2
remains in Spanning Tree Group 1.
NOTE – Application Switch D does not require any special configuration for multiple Span-
ning Trees, because it is configured for the default Spanning Tree Group (STG 1) only.
This feature permits the GbE Switch Module to interoperate well within Rapid Spanning Tree
(RSTP) networks.
Configuration Guidelines
When you enable Fast Uplink Convergence, Alteon OS automatically makes the following
configuration changes:
Increases the STG priority of the GbESM so that it does not become the root switch.
Increases the cost of all of the external ports by 3000, across all VLANs and Spanning
Tree Groups. This ensures that traffic never flows through the GbESM to get to another
switch unless there is no other path.
These changes are reversed if the feature is disabled.
Basic Routing
Routing Information Protocol (RIP) 1
IGMP Snooping
Border Gateway Protocol (BGP)
Open Shortest Path First (OSPF)
98 : IP Routing
24R9742, March 2006
CHAPTER 5
Basic IP Routing
This chapter provides configuration background and examples for using the GbE Switch Mod-
ule to perform IP routing functions. The following topics are addressed in this chapter:
99
24R9742, March 2006
Alteon OS 21.0 Application Guide
IP Routing Benefits
The GbE Switch Module uses a combination of configurable IP switch interfaces and IP rout-
ing options. The switch IP routing capabilities provide the following benefits:
The combination of faster routing and switching in a single device provides another service—
it allows you to build versatile topologies that account for legacy configurations.
Internet GbE
Internet
Switch
Module
BladeCenter
In this example, a corporate campus has migrated from a router-centric topology to a faster,
more powerful, switch-based topology. As is often the case, the legacy of network growth and
redesign has left the system with a mix of illogically distributed subnets.
This is a situation that switching alone cannot cure. Instead, the router is flooded with cross-
subnet communication. This compromises efficiency in two ways:
Routers can be slower than switches. The cross-subnet side trip from the switch to the
router and back again adds two hops for the data, slowing throughput considerably.
Traffic to the router increases, increasing congestion.
Even if every end-station could be moved to better logical subnets (a daunting task), competi-
tion for access to common server pools on different subnets still burdens the routers.
This problem is solved by using GbE Switch Modules with built-in IP routing capabilities.
Cross-subnet LAN traffic can now be routed within the switches with wire speed Layer 2
switching performance. This not only eases the load on the router but saves the network
administrators from reconfiguring each and every end-station with new IP addresses.
Take a closer look at the BladeCenter’s GbE Switch Module in the following configuration
example:
IF #2 IF #3 Server Subnet:
206.30.15.2-254
GbESM IF #4
IF #1
BladeCenter
The GbE Switch Module connects the Gigabit Ethernet and Fast Ethernet trunks from various
switched subnets throughout one building. Common servers are placed on another subnet
attached to the switch. A primary and backup router are attached to the switch on yet another
subnet.
Without Layer 3 IP routing on the switch, cross-subnet communication is relayed to the default
gateway (in this case, the router) for the next level of routing intelligence. The router fills in the
necessary address information and sends the data back to the switch, which then relays the
packet to the proper destination subnet using Layer 2 switching.
With Layer 3 IP routing in place on the GbE Switch Module, routing between different IP sub-
nets can be accomplished entirely within the switch. This leaves the routers free to handle
inbound and outbound traffic for this group of subnets.
To make implementation even easier, UDP Jumbo frame traffic is automatically fragmented to
regular Ethernet frame sizes when routing to non-Jumbo frame VLANS or subnets. This auto-
matic frame conversion allows servers to communicate using Jumbo frames, all transparently
to the user.
NOTE – For details about accessing and using any of the menu commands described in this
example, see the Alteon OS Command Reference.
1. Assign an IP address (or document the existing one) for each real server, router, and cli-
ent workstation.
In the example topology in Figure 5-2 on page 102, the following IP addresses are used:
3. Set each server and workstation’s default gateway to the appropriate switch IP interface
(the one in the same subnet as the server or workstation).
Examine the resulting information. If any settings are incorrect, make the appropriate changes.
Each time you add a port to a VLAN, you may get the following prompt:
Enter y to set the default Port VLAN ID (PVID) for the port.
Examine the resulting information. If any settings are incorrect, make the appropriate changes.
By default, the local network address and local network mask are both set to 0.0.0.0. This pro-
duces a range that includes all Internet addresses for route caching: 0.0.0.0 through
255.255.255.255.
To limit the route cache to your local hosts, you could configure the parameters as shown in the
following example:
Local Host Address Range Local Network Address Local Network Mask
NOTE – Static routes must be configured within the configured range. All other addresses that
fall outside the defined range are forwarded to the default gateway.
You can configure a list of ports/trunks on a VLAN for a multicast group address as hosts or
primary or backup Mrouters. All subsequent IPMC data packets for that multicast group are
routed to these ports.
Static Multicast routes overrides dynamic/IGMP learned groups. If dynamic groups exist for a
statically configured multicast route entry with same IPMC destination, the groups are purged.
Use the command /cfg/l3/mroute to configure static multicast routes on the GbESM.
Built on the client/server model, DHCP allows hosts or clients on an IP network to obtain their
configurations from a DHCP server, thereby reducing network administration. The most sig-
nificant configuration the client receives from the server is its required IP address; (other
optional parameters include the “generic” file name to be booted, the address of the default
gateway, and so forth).
Nortel Networks DHCP relay agent eliminates the need to have DHCP/BOOTP servers on
every subnet. It allows the administrator to reduce the number of DHCP servers deployed on
the network and to centralize them. Without the DHCP relay agent, there must be at least one
DHCP server deployed at each subnet that has hosts needing to perform the DHCP request.
DHCP defines the methods through which clients can be assigned an IP address for a finite
lease period and allowing reassignment of the IP address to another client later. Additionally,
DHCP provides the mechanism for a client to gather other IP configuration parameters it needs
to operate in the TCP/IP network.
In the DHCP environment, the GbE Switch Module acts as a relay agent. The DHCP relay fea-
ture (/cfg/l3/bootp) enables the switch to forward a client request for an IP address to
two BOOTP servers with IP addresses that have been configured on the switch.
When a switch receives a UDP broadcast on port 67 from a DHCP client requesting an IP
address, the switch acts as a proxy for the client, replacing the client source IP (SIP) and desti-
nation IP (DIP) addresses. The request is then forwarded as a UDP Unicast MAC layer mes-
sage to two BOOTP servers whose IP addresses are configured on the switch. The servers
respond as a UDP Unicast message back to the switch, with the default gateway and IP address
for the client. The destination IP address in the server response represents the interface address
on the switch that received the client request. This interface address tells the switch on which
VLAN to send the server response to the client.
GbESM
DHCP
Server
BladeCenter
In GbE Switch Module implementation, there is no need for primary or secondary servers. The
client request is forwarded to the BOOTP servers configured on the switch. The use of two
servers provide failover redundancy. However, no health checking is supported.
Use the following commands to configure the switch as a DHCP relay agent:
>> # /cfg/l3/bootp
>> Bootstrap Protocol Relay# addr (Set IP address of BOOTP server)
>> Bootstrap Protocol Relay# addr2 (Set IP address of 2nd BOOTP server)
>> Bootstrap Protocol Relay# on (Globally turn BOOTP relay on)
>> Bootstrap Protocol Relay# off (Globally turn BOOTP relay off)
>> Bootstrap Protocol Relay# cur (Display current configuration)
Additionally, DHCP Relay functionality can be assigned on a per interface basis. Use the fol-
lowing command to enable the Relay functionality:
When a switch receives a routing update that contains a new or changed destination network
entry, the switch adds 1 to the metric value indicated in the update and enters the network in
the routing table. The IP address of the sender is used as the next hop.
Stability
RIP version 1 was distributed in the early years of the Internet and advertised default class
address without subnet masking. RIP is stable, widely supported, and easy to configure. Use
RIP in stub networks and in small autonomous systems that do not have many redundant paths.
RIP includes a number of other stability features that are common to many routing protocols.
For example, RIP implements the split horizon and holddown mechanisms to prevent incorrect
routing information from being propagated.
RIP prevents routing loops from continuing indefinitely by implementing a limit on the num-
ber of hops allowed in a path from the source to a destination. The maximum number of hops
in a path is 15. The network destination network is considered unreachable if increasing the
metric value by 1 causes the metric to be 16 (that is infinity). This limits the maximum diame-
ter of a RIP network to less than 16 hops.
111
24R9742, March 2006
Alteon OS 21.0 Application Guide
Routing Updates
RIP sends routing-update messages at regular intervals and when the network topology
changes. RIP uses broadcast User Datagram Protocol (UDP) data packets to exchange routing
information. Each router “advertises” routing information by sending a routing information
update every 30 seconds. If a router does not receive an update from another router within 90
seconds, it marks the routes served by the non-updating router as being unusable. If no update
is received within 240 seconds, the router removes all routing table entries for the non-updat-
ing router.
When a router receives a routing update that includes changes to an entry, it updates its routing
table to reflect the new route. The metric value for the path is increased by 1, and the sender is
indicated as the next hop. RIP routers maintain only the best route (the route with the lowest
metric value) to a destination.
For more information see The Configuration Menu, Routing Information Protocol Configura-
tion (/cfg/l3/rip1) in the Alteon OS Command Reference.
113
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview
Internet Group Management Protocol (IGMP) is used by IP Multicast routers to learn about the
existence of host group members on their directly attached subnet (see RFC 2236). The IP
Multicast routers get this information by broadcasting IGMP Membership Queries and listen-
ing for IP hosts reporting their host group memberships. This process is used to set up a client/
server relationship between an IP Multicast source that provides the data streams and the cli-
ents that want to receive the data.
IGMP Snooping conserves bandwidth. With IGMP Snooping, the switch learns which ports
are interested in receiving multicast data, and forwards multicast data only to those ports. In
this way, other ports are not burdened with unwanted multicast traffic.
IGMP Snooping operates on a VLAN by VLAN basis. Interested ports in a given VLAN
receive multicast traffic, and uninterested ports in the same VLAN do not. Up to eight VLANs
can participate in IGMP Snooping.
The GbESM currently supports snooping for IGMP version 1 and version 2.
The switch can sense IGMP Membership Reports from attached clients and act as a proxy to
set up a dedicated path between the requesting host and a local IP Multicast router. After the
pathway is established, the switch blocks the IP Multicast stream from flowing through any
port that does not connect to a host member, thus conserving bandwidth.
An IP Multicast Router (MRouter) sends Membership Queries to the switch, which for-
wards them to all ports in a given VLAN.
Hosts that want to receive the multicast data stream send Membership Reports to the
switch, which sends a proxy Membership Report to the MRouter.
The switch sets up a path between the MRouter and the host, and blocks all other ports
from receiving the multicast.
Periodically, the MRouter sends Membership Queries to ensure that the host wants to con-
tinue receiving the multicast. If a host fails to respond with a Membership Report, the
MRouter stops sending the multicast to that path.
The host can send a Leave report to the switch, which sends a proxy Leave report to the
MRouter. The multicast path is terminated immediately.
FastLeave
In normal operation, when the switch with IGMP Snooping enabled receives an IGMPv2 leave
message, it sends a Group-Specific Query to determine if any other devices in the same group
(and on the same port) are still interested in the specified multicast group traffic. The switch
removes the affiliated port from that particular group, if the following conditions apply:
If the switch does not receive an IGMP Membership Report within the query-response-
interval.
If no multicast routers have been learnt on that port.
With FastLeave enabled on the VLAN, a port can be removed immediately from the port list of
the group entry when the IGMP Leave message is received, unless a multicast router was
learnt on the port.
Enable FastLeave only on VLANs that have only one host connected to each physical port.
IGMP Filtering
With IGMP Filtering, you can allow or deny a port to send and receive multicast traffic to cer-
tain multicast groups. Unauthorized users are restricted from streaming multicast traffic across
the network.
If access to a multicast group is denied, IGMP Membership Reports from the port are dropped,
and the port is not allowed to receive IP multicast traffic from that group. If access to the mul-
ticast group is allowed, Membership Reports from the port are forwarded for normal process-
ing.
To configure IGMP Filtering, you must globally enable IGMP filtering, define an IGMP filter,
assign the filter to a port, and enable IGMP Filtering on the port. To define an IGMP filter, you
must configure a range of IP multicast groups, choose whether the filter will allow or deny
multicast traffic for groups within the range, and enable the filter.
A total of 16 static MRouters can be configured on the GbESM. Both internal and external
ports can accept a static MRouter.
When you configure a static MRouter on a VLAN, it replaces any dynamic MRouters learnt
through IGMP Snooping.
These commands display information about IGMP Groups and MRouters learnt through IGMP
Snooping.
Border Gateway Protocol (BGP) is an Internet protocol that enables routers on a network to
share and advertise routing information with each other about the segments of the IP address
space they can access within their network and with routers on external networks. BGP allows
you to decide what is the “best” route for a packet to take from your network to a destination
on another network rather than simply setting a default route from your border router(s) to your
upstream provider(s). BGP is defined in RFC 1771.
GbE Switch Modules can advertise their IP interfaces and virtual server IP addresses using
BGP and take BGP feeds from as many as 16 BGP router peers. This allows more resilience
and flexibility in balancing traffic from the Internet.
121
24R9742, March 2006
Alteon OS 21.0 Application Guide
Static routes, however have lower precedence than dynamic routing protocols. If the destina-
tion route is not in the route cache, then the packets are forwarded to the default gateway which
may be incorrect if a dynamic routing protocol is enabled.
It is also useful to tell routers outside your network (upstream providers or peers) about the
routes you can access in your network. External networks (those outside your own) that are
under the same administrative control are referred to as autonomous systems (AS). Sharing of
routing information between autonomous systems is known as external routing.
External BGP (eBGP) is used to exchange routes between different autonomous systems
whereas internal BGP (iBGP) is used to exchange routes within the same autonomous system.
An iBGP is a type of internal routing protocol you can use to do active routing inside your net-
work. It also carries AS path information, which is important when you are an ISP or doing
BGP transit.
NOTE – The iBGP peers must be part of a fully meshed network, as shown in Figure 8-1.
BladeCenter
Internet
Typically, an AS has one or more border routers—peer routers that exchange routes with other
ASs—and an internal routing scheme that enables routers in that AS to reach every other router
and destination within that AS. When you advertise routes to border routers on other autono-
mous systems, you are effectively committing to carry data to the IP space represented in the
route being advertised. For example, if you advertise 192.204.4.0/24, you are declaring that if
another router sends you data destined for any address in 192.204.4.0/24, you know how to
carry that data to its destination.
For each Internet host, you must be able to send a packet to that host, and that host has to have a
path back to you. This means that whoever provides Internet connectivity to that host must have
a path to you. Ultimately, this means that they must “hear a route” which covers the section of the
IP space you are using; otherwise, you will not have connectivity to the host in question.
A route map allows you to match attributes, such as metric, network address, and AS number.
It also allows users to overwrite the local preference metric and to append the AS number in
the AS route. See “BGP Failover Configuration” on page 130.
Alteon OS allows you to configure 32 route maps. Each route map can have up to eight access
lists. Each access list consists of a network filter. A network filter defines an IP address and
subnet mask of the network that you want to include in the filter. Figure 8-2 illustrates the rela-
tionship between route maps, access lists and network filters.
Route Maps Network Filter
(rmap) (nwf)
Access Lists
(alist)
1 1
---
Route Map 1 ---
---
8 8
1 9
---
Route Map 2 ---
---
8 16
-----
-----
-----
-----
-----
-----
----- 1 249
---
Route Map 32 ---
---
8 256
Figure 8-2 Distributing Network Filters in Access Lists and Route Maps
If a route map is not configured in the incoming route map list, the router imports all BGP
updates. If a route map is configured in the incoming route map list, the router ignores all
unmatched incoming updates.
Route maps in an outgoing route map list behave similar to route maps in an incoming route
map list. If a route map is not configured in the outgoing route map list, all routes are adver-
tised or permitted. If a route map is configured in the outgoing route map list, matched routes
are advertised and unmatched routes are ignored.
Precedence
You can set a priority to a route map by specifying a precedence value with the following com-
mand:
The smaller the value the higher the precedence. If two route maps have the same precedence
value, the smaller number has higher precedence.
Configuration Overview
To configure route maps, you need to do the following:
Enter a filter number from 1 to 256. Specify the IP address and subnet mask of the network that
you want to match. Enable the network filter. You can distribute up to 256 network filters
among 32 route maps each containing 8 access lists.
2. (Optional) Define the criteria for the access list and enable it.
Specify the access list and associate the network filter number configured in Step 1.
Steps 2 and 3 are optional, depending on the criteria that you want to match. In Step 2, the net-
work filter number is used to match the subnets defined in the network filter. In Step 3, the
autonomous system number is used to match the subnets. Or, you can use both (Step 2 and Step
3) criteria: access list (network filter) and access path (AS filter) to configure the route maps.
Specify the AS numbers that you want to prepend to a matched route and the local prefer-
ence for the matched route.
Specify the metric [Multi Exit Discriminator (MED)] for the matched route.
Aggregating Routes
Aggregation is the process of combining several different routes in such a way that a single
route can be advertised, which minimizes the size of the routing table. You can configure
aggregate routes in BGP either by redistributing an aggregate route into BGP or by creating an
aggregate entry in the BGP routing table.
When a subnet is redistributed from an Interior Gateway Protocol (IGP) into BGP, only the
network route is injected into the BGP table. By default, this automatic summarization is dis-
abled. To define the route to aggregate, use the following commands:
An example of creating a BGP aggregate route is shown in “Default Redistribution and Route
Aggregation Example” on page 133.
Redistributing Routes
In addition to running multiple routing protocols simultaneously, Alteon OS software can
redistribute information from one routing protocol to another. For example, you can instruct
the switch to use BGP to readvertise static routes. This applies to all of the IP-based routing
protocols.
You can also conditionally control the redistribution of routes between routing domains by
defining a method known as route maps between the two domains. For more information on
route maps, see “What is a Route Map?” on page 123. Redistributing routes is another way of
providing policy control over whether to export OSPF routes, fixed routes, static routes, and
virtual IP address routes. Default routes can be configured using the following methods:
Import
Originate
The router sends a default route to peers even though it does not have any default routes in
its routing table.
Redistribute
Default routes are either configured through the default gateway or learned via other pro-
tocols and redistributed to peer routers. If the default routes are from the default gateway,
enable the static routes because default routes from the default gateway are static routes.
Similarly, if the routes are learned from another routing protocol, make sure you enable
that protocol for redistribution.
None
BGP Attributes
The following two BGP attributes are discussed in this section: Local preference and metric
(Multi-Exit Discriminator).
/cfg/l3/bgp/pref
This command uses the BGP default local preference method, affecting the outbound
direction only.
/cfg/l3/rmap/lp
This command uses the route map local preference method, which affects both inbound
and outbound directions.
Unlike local preference, the metric attribute is exchanged between ASs; however, a metric
attribute that comes into an AS does not leave the AS.
When an update enters the AS with a certain metric value, that value is used for decision mak-
ing within the AS. When BGP sends that update to another AS, the metric is reset to 0.
Unless otherwise specified, the router compares metric attributes for paths from external
neighbors that are in the same AS.
1. Local fixed and static routes are preferred over learned routes.
2. With iBGP peers, routes with higher local preference values are selected.
3. In the case of multiple routes of equal preference, the route with lower AS path weight is
selected.
AS path weight = 128 x AS path length (number of autonomous systems transversed).
4. In the case of equal weight and routes learned from peers that reside in the same AS, the
lower metric is selected.
6. In the case of equal cost, the eBGP route is preferred over iBGP.
7. If all routes are from eBGP, the route with the lower router ID is selected.
When the path is selected, BGP puts the selected path in its routing table and propagates the
path to its neighbors.
As shown in Figure 8-3, the switch is connected to ISP 1 and ISP 2. The customer negotiates
with both ISPs to allow the switch to use their peer routers as default gateways. The ISP peer
routers will then need to announce themselves as default gateways to the GbE Switch Module.
GbE Switch
Module
VIP: 200.200.200.200
IP: 200.200.200.1
IP: 210.210.210.1
BladeCenter
On the GbE Switch Module, one peer router (the secondary one) is configured with a longer
AS path than the other, so that the peer with the shorter AS path will be seen by the switch as
the primary default gateway. ISP 2, the secondary peer, is configured with a metric of “3,”
thereby appearing to the switch to be three router hops away.
1. Configure the switch as you normally would for Server Load Balancing (SLB).
Assign an IP address to each of the real servers in the server pool.
Define each real server.
Define a real server group.
Define a virtual server.
Define the port configuration.
For more information about SLB configuration, refer to Chapter 10, “Server Load Balancing.”
4. Enable IP forwarding.
IP forwarding is enabled by default and is used for VLAN-to-VLAN (non-BGP) routing. Make
sure IP forwarding is enabled if the default gateways are on different subnets or if the switch is
connected to different subnets and those subnets need to communicate through the switch
(which they almost always do).
NOTE – To help eliminate the possibility for a Denial of Service (DoS) attack, the forwarding
of directed broadcasts is disabled by default.
The metric command in the peer menu tells the GbE Switch Module to create an AS path of
“3” when advertising via BGP.
As illustrated in Figure 8-4, you have two peer routers: an internal and an external peer router.
Configure the GbE Switch Module to redistribute the default routes from AS 200 to AS 135.
At the same time, configure for route aggregation to allow you to condense the number of
routes traversing from AS 135 to AS 200.
GbE
Switch Module
10.1.1.135
BladeCenter
“OSPF Overview” on page 136. This section provides information on OSPF concepts,
such as types of OSPF areas, types of routing devices, neighbors, adjacencies, link state
database, authentication, and internal versus external routing.
“OSPF Implementation in Alteon OS” on page 141. This section describes how OSPF is
implemented in Alteon OS, such as configuration parameters, electing the designated
router, summarizing routes, defining route maps and so forth.
“OSPF Configuration Examples” on page 151. This section provides step-by-step instruc-
tions on configuring four different configuration examples:
Creating a simple OSPF domain
Creating virtual links
Summarizing routes
Creating host routes
135
24R9742, March 2006
Alteon OS 21.0 Application Guide
OSPF Overview
OSPF is designed for routing traffic within a single IP domain called an Autonomous System
(AS). The AS can be divided into smaller logical units known as areas.
All routing devices maintain link information in their own Link State Database (LSDB). The
LSDB for all routing devices within an area is identical but is not exchanged between different
areas. Only routing updates are exchanged between areas, thereby significantly reducing the
overhead for maintaining routing information on a large, dynamic network.
Stub Area—an area that is connected to only one other area. External route information is
not distributed into stub areas.
Not-So-Stubby-Area (NSSA)—similar to a stub area with additional capabilities. Routes
originating from within the NSSA can be propagated to adjacent transit and backbone
areas. External routes from outside the AS can be advertised within the NSSA but are not
distributed into other areas.
Transit Area—an area that allows area summary information to be exchanged between
routing devices. The backbone (area 0), any area that contains a virtual link to connect two
areas, and any area that is not a stub area or an NSSA are considered transit areas.
Backbone
Area 0
(Also a Transit Area)
ABR ABR
ABR
Internal LSA
Routes Virtual
Stub Area Transit Area Link
Not-So-Stubby Area No External Routes
from Backbone
(NSSA) ABR
External LSA
Routes
ASBR
Stub Area, NSSA,
ABR = Area Border Router or Transit Area
ASBR = Autonomous System Connected to Backbone
Non-OSPF Area Boundary Router via Virtual Link
RIP/BGP AS
Internal Router (IR)—a router that has all of its interfaces within the same area. IRs main-
tain LSDBs identical to those of other routing devices within the local area.
Area Border Router (ABR)—a router that has interfaces in multiple areas. ABRs maintain
one LSDB for each connected area and disseminate routing information between areas.
Autonomous System Boundary Router (ASBR)—a router that acts as a gateway between
the OSPF domain and non-OSPF domains, such as RIP, BGP, and static routes.
BGP Backbone
Area 3
Area 0
Inter-Area Routes
External ABR
ASBR (Summary Routes)
Routes
RIP
ABR ABR
Internal
ASBR Router
Area 1 Area 2
Neighbors are routing devices that maintain information about each others’ health. To establish
neighbor relationships, routing devices periodically send hello packets on each of their inter-
faces. All routing devices that share a common network segment, appear in the same area, and
have the same health parameters (hello and dead intervals) and authentication parameters
respond to each other’s hello packets and become neighbors. Neighbors continue to send peri-
odic hello packets to advertise their health to neighbors. In turn, they listen to hello packets to
determine the health of their neighbors and to establish contact with new neighbors.
The hello process is used for electing one of the neighbors as the area’s Designated Router
(DR) and one as the area’s Backup Designated Router (BDR). The DR is adjacent to all other
neighbors and acts as the central contact for database exchanges. Each neighbor sends its data-
base information to the DR, which relays the information to the other neighbors.
The BDR is adjacent to all other neighbors (including the DR). Each neighbor sends its data-
base information to the BDR just as with the DR, but the BDR merely stores this data and does
not distribute it. If the DR fails, the BDR will take over the task of distributing database infor-
mation to the other neighbors.
Each routing device transmits a Link-State Advertisement (LSA) on each of its interfaces.
LSAs are entered into the LSDB of each routing device. OSPF uses flooding to distribute
LSAs between routing devices.
When LSAs result in changes to the routing device’s LSDB, the routing device forwards the
changes to the adjacent neighbors (the DR and BDR) for distribution to the other neighbors.
OSPF routing updates occur only when changes occur, instead of periodically. For each new
route, if an adjacency is interested in that route (for example, if configured to receive static
routes and the new route is indeed static), an update message containing the new route is sent
to the adjacency. For each route removed from the route table, if the route has already been
sent to an adjacency, an update message containing the route to withdraw is sent.
The cost of an individual interface in OSPF is an indication of the overhead required to send
packets across it. The cost is inversely proportional to the bandwidth of the interface. A lower
cost indicates a higher bandwidth.
It is also useful to tell routers outside your network (upstream providers or peers) about the
routes you have access to in your network. Sharing of routing information between autono-
mous systems is known as external routing.
Typically, an AS will have one or more border routers (peer routers that exchange routes with
other OSPF networks) as well as an internal routing system enabling every router in that AS to
reach every other router and destination within that AS.
When a routing device advertises routes to boundary routers on other autonomous systems, it
is effectively committing to carry data to the IP space represented in the route being advertised.
For example, if the routing device advertises 192.204.4.0/24, it is declaring that if another
router sends data destined for any address in the 192.204.4.0/24 range, it will carry that data to
its destination.
Configurable Parameters
In Alteon OS, OSPF parameters can be configured through the Command Line Interface (CLI),
Browser-Based Interface (BBI) for GbE Switch Modules, or through SNMP. For more infor-
mation, see Chapter 1, “Accessing the Switch.”
The CLI supports the following parameters: interface output cost, interface priority, dead and
hello intervals, retransmission interval, and interface transmit delay.
In addition to the above parameters, you can also specify the following:
Shortest Path First (SPF) interval—Time interval between successive calculations of the
shortest path tree using the Dijkstra’s algorithm.
Stub area metric—A stub area can be configured to send a numeric metric value such that
all routes received via that stub area carry the configured metric to potentially influence
routing decisions.
Default routes—Default routes with weight metrics can be manually injected into transit
areas. This helps establish a preferred route when multiple routing devices exist between
two areas. It also helps route traffic to external networks.
Defining Areas
If you are configuring multiple areas in your OSPF domain, one of the areas must be desig-
nated as area 0, known as the backbone. The backbone is the central OSPF area and is usually
physically connected to all other areas. The areas inject routing information into the backbone
which, in turn, disseminates the information into other areas.
Since the backbone connects the areas in your network, it must be a contiguous area. If the
backbone is partitioned (possibly as a result of joining separate OSPF networks), parts of the
AS will be unreachable, and you will need to configure virtual links to reconnect the parti-
tioned areas (see “Virtual Links” on page 146).
Up to three OSPF areas can be connected to the GbE Switch Module with Alteon OS software.
To configure an area, the OSPF number must be defined and then attached to a network inter-
face on the switch. The full process is explained in the following sections.
An OSPF area is defined by assigning two pieces of information—an area index and an area
ID. The command to define an OSPF area is as follows:
NOTE – The aindex option above is an arbitrary index used only on the switch and does not
represent the actual OSPF area number. The actual OSPF area number is defined in the
areaid portion of the command as explained in the following sections.
For example, both of the following sets of commands define OSPF area 0 (the backbone) and
area 1 because that information is held in the area ID portion of the command. However, the
first set of commands is easier to maintain because the arbitrary area indexes agree with the
area IDs:
NOTE – Although both types of area ID formats are supported, be sure that the area IDs are in
the same format throughout an area.
For example, the following commands could be used to configure IP interface 14 for a pres-
ence on the 10.10.10.1/24 network, to define OSPF area 1, and to attach the area to the net-
work:
Interface Cost
The OSPF link-state algorithm (Dijkstra’s algorithm) places each routing device at the root of a
tree and determines the cumulative cost required to reach each destination. Usually, the cost is
inversely proportional to the bandwidth of the interface. Low cost indicates high bandwidth.
You can manually enter the cost for the output route with the following command:
DR and BDR elections are made through the hello process. The election can be influenced by
assigning a priority value to the OSPF interfaces on the GbE Switch Module. The command is
as follows:
A priority value of 127 is the highest, and 1 is the lowest. A priority value of 0 specifies that
the interface cannot be used as a DR or BDR. In case of a tie, the routing device with the low-
est router ID wins.
Summarizing Routes
Route summarization condenses routing information. Without summarization, each routing
device in an OSPF network would retain a route to every subnet in the network. With summa-
rization, routing devices can reduce some sets of routes to a single advertisement, reducing
both the load on the routing device and the perceived complexity of the network. The impor-
tance of route summarization increases with network size.
Summary routes can be defined for up to 16 IP address ranges using the following command:
where <range number> is a number 1 to 16, <IP address> is the base IP address for the range,
and <mask> is the IP address mask for the range. For a detailed configuration example, see
“Example 3: Summarizing Routes” on page 158.
Default Routes
When an OSPF routing device encounters traffic for a destination address it does not recog-
nize, it forwards that traffic along the default route. Typically, the default route leads upstream
toward the backbone until it reaches the intended area or an external router.
Each GbE Switch Module acting as an ABR automatically inserts a default route into each
attached area. In simple OSPF stub areas or NSSAs with only one ABR leading upstream (see
Area 1 in Figure 9-3), any traffic for IP address destinations outside the area is forwarded to
the switch’s IP interface, and then into the connected transit area (usually the backbone). Since
this is automatic, no further configuration is required for such areas.
BladeCenter BladeCenter
In more complex OSPF areas with multiple ABRs or ASBRs (such as area 0 and area 2 in Fig-
ure 9-3), there are multiple routes leading from the area. In such areas, traffic for unrecognized
destinations cannot tell which route leads upstream without further configuration.
To resolve the situation and select one default route among multiple choices in an area, you can
manually configure a metric value on each ABR. The metric assigns a priority to the ABR for
its selection as the priority default route in an area. The following command is used for setting
the metric value:
where <metric value> sets the priority for choosing this switch for default route. The value
none sets no default and 1 sets the highest priority for default route. Metric type determines
the method for influencing routing decisions for external routes.
To clear a default route metric from the switch, use the following command:
Virtual Links
Usually, all areas in an OSPF AS are physically connected to the backbone. In some cases
where this is not possible, you can use a virtual link. Virtual links are created to connect one
area to the backbone through another non-backbone area (see Figure 9-1 on page 137).
The area which contains a virtual link must be a transit area and have full routing information.
Virtual links cannot be configured inside a stub area or NSSA. The area type must be defined
as transit using the following command:
The virtual link must be configured on the routing devices at each endpoint of the virtual link,
though they may traverse multiple routing devices. To configure a GbE Switch Module as one
endpoint of a virtual link, use the following command:
where <link number> is a value between 1 and 3, <area index> is the OSPF area index of the
transit area, and <router ID> is the IP address of the virtual neighbor (nbr), the routing device
at the target endpoint. Another router ID is needed when configuring a virtual link in the other
direction. To provide the GbE Switch Module with a router ID, see the following section
Router ID.
For a detailed configuration example on Virtual Links, see “Example 2: Virtual Links” on page
154.
Router ID
Routing devices in OSPF areas are identified by a router ID. The router ID is expressed in IP
address format. The IP address of the router ID is not required to be included in any IP inter-
face range or in any OSPF area.
To modify the router ID from static to dynamic, set the router ID to 0.0.0.0, save the con-
figuration, and reboot the GbE Switch Module. To view the router ID, enter:
>> # /info/l3/ospf/gen
Authentication
OSPF protocol exchanges can be authenticated so that only trusted routing devices can partici-
pate. This ensures less processing on routing devices that are not listening to OSPF packets.
OSPF allows packet authentication and uses IP multicast when sending and receiving packets.
Routers participate in routing domains based on predefined passwords. Alteon OS supports
simple password (type 1 plain text passwords) and MD5 cryptographic authentication. This
type of authentication allows a password to be configured per area.
Figure 9-4 shows authentication configured for area 0 with the password test. Simple authenti-
cation is also configured for the virtual link between area 2 and area 0. Area 1 is not configured
for OSPF authentication.
Application
Switch 3
Application
Application
switch 5
BladeCenter
Switch 4
BladeCenter
To configure simple plain text OSPF passwords on the switches shown in Figure 9-4 use the
following commands:
2. Configure a simple text password up to eight characters for each OSPF IP interface in
Area 0 on switches 1, 2, and 3.
>> # /cfg/l3/ospf/if 1
>> OSPF Interface 1 # key test
>> OSPF Interface 1 # ../if 2
>> OSPF Interface 2 # key test
>> OSPF Interface 1 # ../if 3
>> OSPF Interface 3 # key test
4. Configure a simple text password up to eight characters for the virtual link between Area
2 and Area 0 on switches 2 and 4.
Use the following commands to configure MD5 authentication on the switches shown in Fig-
ure 9-4:
>> # /cfg/l3/ospf/if 1
>> OSPF Interface 1 # mdkey 1
>> OSPF Interface 1 # ../if 2
>> OSPF Interface 2 # mdkey 1
>> OSPF Interface 1 # ../if 3
>> OSPF Interface 3 # mdkey 1
5. Configure MD5 key for the virtual link between Area 2 and Area 0 on switches 2 and 4.
1. Configure IP interfaces.
One IP interface is required for each desired network (range of IP addresses) being assigned to
an OSPF area on the switch.
BladeCenter
BladeCenter
2. Enable OSPF.
>> Open Shortest Path First # aindex 0 (Select menu for area index 0)
>> OSPF Area (index) 0 # areaid 0.0.0.0 (Set the ID for backbone area 0)
>> OSPF Area (index) 0 # type transit (Define backbone as transit type)
>> OSPF Area (index) 0 # enable (Enable the area)
>> OSPF Area (index) 0 # ../aindex 1 (Select menu for area index 1)
>> OSPF Area (index) 1 # areaid 0.0.0.1 (Set the area ID for OSPF area 1)
>> OSPF Area (index) 1 # type stub (Define area as stub type)
>> OSPF Area (index) 1 # enable (Enable the area)
3. Enable OSPF.
>> Open Shortest Path First # aindex 0 (Select menu for area index 0)
>> OSPF Area (index) 0 # areaid 0.0.0.0 (Set the area ID for backbone area 0)
>> OSPF Area (index) 0 # type transit (Define backbone as transit type)
>> OSPF Area (index) 0 # enable (Enable the area)
>> OSPF Area (index) 0 # ../aindex 1 (Select menu for area index 1)
>> OSPF Area (index) 1 # areaid 0.0.0.1 (Set the area ID for OSPF area 1)
>> OSPF Area (index) 1 # type transit (Define area as transit type)
>> OSPF Area (index) 1 # enable (Enable the area)
>> OSPF Area (index) 1 # ../if 1 (Select OSPF menu for IP interface 1)
>> OSPF Interface 1 # aindex 0 (Attach network to backbone index)
>> OSPF Interface 1 # enable (Enable the backbone interface)
3. Enable OSPF.
>> Open Shortest Path First # aindex 0 (Select the menu for area index 0)
>> OSPF Area (index) 0 # areaid 0.0.0.0 (Set the area ID for OSPF area 0)
>> OSPF Area (index) 0 # enable (Enable the area)
>> OSPF Area (index) 0 # ../aindex 1 (Select menu for area index 1)
>> OSPF Area (index) 1 # areaid 0.0.0.1 (Set the area ID for OSPF area 1)
>> OSPF Area (index) 1 # type transit (Define area as transit type)
>> OSPF Area (index) 1 # enable (Enable the area)
>> OSPF Area (index) 1 # ../aindex 2 (Select the menu for area index 2)
>> OSPF Area (index) 2 # areaid 0.0.0.2 (Set the area ID for OSPF area 2)
>> OSPF Area (index) 2 # type stub (Define area as stub type)
>> OSPF Area (index) 2 # enable (Enable the area)
>> OSPF Area (index) 2 # ../if 1 (Select OSPF menu for IP interface 1)
>> OSPF Interface 1 # aindex 1 (Attach network to transit area index)
>> OSPF Interface 1 # enable (Enable the transit area interface)
If the network IP addresses in an area are assigned to a contiguous subnet range, you can con-
figure the ABR to advertise a single summary route that includes all the individual IP
addresses within the area.
The following example shows one summary route from area 1 (stub area) injected into area 0
(the backbone). The summary route consists of all IP addresses from 36.128.192.0 through
36.128.254.255 except for the routes in the range 36.128.200.0 through 36.128.200.255.
BladeCenter
BladeCenter
NOTE – You can specify a range of addresses to prevent advertising by using the hide option.
In this example, routes in the range 36.128.200.0 through 36.128.200.255 are kept private.
1. Configure IP interfaces for each network which will be attached to OSPF areas.
2. Enable OSPF.
>> Open Shortest Path First # aindex 0 (Select menu for area index 0)
>> OSPF Area (index) 0 # areaid 0.0.0.0 (Set the ID for backbone area 0)
>> OSPF Area (index) 0 # type transit (Define backbone as transit type)
>> OSPF Area (index) 0 # enable (Enable the area)
>> OSPF Area (index) 0 # ../aindex 1 (Select menu for area index 1)
>> OSPF Area (index) 1 # areaid 0.0.0.1 (Set the area ID for OSPF area 1)
>> OSPF Area (index) 1 # type stub (Define area as stub type)
>> OSPF Area (index) 1 # enable (Enable the area)
>> OSPF Area (index) 1 # ../if 1 (Select OSPF menu for IP interface 1)
>> OSPF Interface 1 # aindex 0 (Attach network to backbone index)
>> OSPF Interface 1 # enable (Enable the backbone interface)
7. Configure route summarization by specifying the starting address and mask of the range
of addresses to be summarized.
8. Use the hide command to prevent a range of addresses from advertising to the backbone.
>> OSPF Summary Range 2 # apply (Global command to apply all changes)
>> OSPF Summary Range 2 # save (Global command to save all changes)
Consider the example network in Figure 9-8. Both GbE Switch Modules have access to servers
with identical content and are configured with the same virtual server IP addresses: 10.10.10.1
and 10.10.10.2. Switch #1 is given a host route with a low cost for virtual server 10.10.10.1
and another host route with a high cost for virtual server 10.10.10.2. Switch #2 is configured
with the same hosts but with the costs reversed; one host route has a high cost for virtual server
10.10.10.1 and another has a low cost for virtual server 10.10.10.2.
All four host routes are injected into the upstream router and advertised externally. Traffic
comes in for both virtual server IP addresses (10.10.10.1 and 10.10.10.2). The upstream router
sees that both addresses exist on both switches and uses the host route with the lowest cost for
each. Traffic for 10.10.10.1 goes to switch #1 because its host route has the lowest cost for that
address. Traffic for 10.10.10.2 goes to switch #2 because its host route has the lowest cost.
This effectively shares the load among ABRs. Both switches then use standard server load bal-
ancing to distribute traffic among available real servers.
In addition, if one of the switches were to fail, the upstream routing device would forward the
traffic to the ABR whose host route has the next lowest cost. In this example, the remaining
switch would assume the entire load for both virtual servers.
BladeCenter
Switch 1
Switch 2
BladeCenter
>> Layer 4 Port INT5# ../adv (Select the SLB advance menu)
>> Layer 4 Advanced# direct ena (Enable DAM)
>> Layer 4 Advanced# .. (Return to the SLB menu)
>> Virtual server 2 http service # /cfg/slb/virt 2 (Select menu for virtual server 2)
>> Virtual server 1 # vip 10.10.10.2 (Set the IP address for virtual server 2)
>> Virtual server 1 # ena (Enable the virtual server)
>> Virtual server 1 # service http (Select menu for service on virtual server)
>> Virtual server 1 # group 1 (Use real server group 1 for http service)
>> Open Shortest Path First # aindex 0 (Select menu for area index 0)
>> OSPF Area (index) 0 # areaid 0.0.0.0 (Set the ID for backbone area 0)
>> OSPF Area (index) 0 # type transit (Define backbone as transit type)
>> OSPF Area (index) 0 # enable (Enable the area)
>> OSPF Area (index) 0 # ../aindex 1 (Select menu for area index 1)
>> OSPF Area (index) 1 # areaid 0.0.0.1 (Set the ID for stub area 1)
>> OSPF Area (index) 1 # type stub (Define area as stub type)
>> OSPF Area (index) 1 # enable (Enable the area)
>> OSPF Area (index) 1 # ../if 1 (Select OSPF menu for IP interface 1)
>> OSPF Interface 1 # aindex 0 (Attach network to backbone index)
>> OSPF Interface 1 # enable (Enable the backbone interface)
NOTE – When a service goes down, the corresponding host route is removed from advertising.
>> OSPF Host Entry 2 # apply (Global command to apply all changes)
>> OSPF Host Entry 2 # save (Global command to save all changes)
3. Configure IP interfaces for each network that will be attached to OSPF areas.
>> Open Shortest Path First # aindex 0 (Select menu for area index 0)
>> OSPF Area (index) 0 # areaid 0.0.0.0 (Set the ID for backbone area 0)
>> OSPF Area (index) 0 # type transit (Define backbone as transit type)
>> OSPF Area (index) 0 # enable (Enable the area)
>> OSPF Area (index) 0 # ../aindex 1 (Select menu for area index 1)
>> OSPF Area (index) 1 # areaid 0.0.0.1 (Set the ID for stub area 1)
>> OSPF Area (index) 1 # type stub (Define area as stub type)
>> OSPF Area (index) 1 # enable (Enable the area)
>> OSPF Area (index) 1 # ../if 1 (Select OSPF menu for IP interface 1)
>> OSPF Interface 1 # aindex 0 (Attach network to backbone index)
>> OSPF Interface 1 # enable (Enable the backbone interface)
>> OSPF Host Entry 2 # apply (Global command to apply all changes)
>> OSPF Host Entry 2 # save (Global command to save all changes)
/info/l3/ospf/general
/info/l3/ospf/nbr
/info/l3/ospf/dbase/dbsum
/info/l3/ospf/route
/stats/l3/route
Refer to the Alteon OS Command Reference for information on the above commands.
“Understanding Server Load Balancing” on page 172. This section discusses the benefits
of server load balancing and how it works.
“Implementing Basic Server Load Balancing” on page 175. This section discusses how
implementing SLB provides reliability, performance, and ease of maintenance on your
network.
“Network Topology Requirements” on page 176. This section provides key require-
ments to consider before deploying server load balancing.
“Configuring Server Load Balancing” on page 177.
“Additional Server Load Balancing Options” on page 182.
“Extending SLB Topologies” on page 190. This section discusses proxy IP addresses,
mapping a virtual port to real ports, monitoring real server ports, and delayed binding.
“Session Initiation Protocol Server Load Balancing” on page 203.
“Workload Manager Support” on page 207.
For additional information on SLB commands, see your Alteon OS Command Reference.
171
24R9742, March 2006
Alteon OS 21.0 Application Guide
A single server no longer meets the demand for its particular application.
The connection from your LAN to your server overloads the server’s capacity.
Your NT and LINUX servers hold critical application data and must remain available even
in the event of a server failure.
Your Web site is being used as a way to do business and for taking orders from customers.
It must not become overloaded or unavailable.
You want to use multiple servers or hot-standby servers for maximum server uptime.
You must be able to scale your applications to meet client and LAN request capacity.
You can’t afford to continue using an inferior load-balancing technique, such as DNS
round robin or a software-only system.
The solution to getting the most from your servers is SLB. With this software feature, the
switch is aware of the services provided by each server. The switch can direct user session traf-
fic to an appropriate server, based on a variety of load-balancing algorithms.
BladeCenter
{
BladeCenter
Clients
Clients Clients
Clients
To provide load balancing for any particular type of service, each server in the pool must have
access to identical content, either directly (duplicated on each server) or through a back-end
network (mounting the same file system or database server).
The GbE Switch Module, with SLB software, acts as a front-end to the servers, interpreting
user session requests and distributing them among the available servers. Load balancing in
Alteon OS can be done in the following ways:
NFS Server
Internet
Web Host
Router
A
Internet GbESM B
C
BladeCenter
All the issues can be addressed by adding an GbE Switch Module with SLB software.
Reliability is increased by providing multiple paths from the clients to the GbE Switch
Module and by accessing a pool of servers with identical content. If one server fails, the
others can take up the additional load.
Performance is improved by balancing the Web request load across multiple servers. More
servers can be added at any time to increase processing power.
For ease of maintenance, servers can be added or removed dynamically, without interrupt-
ing shared services.
Identical content must be available to each server in the same pool. Either of these meth-
ods can be used:
Static applications and data are duplicated on each real server in the pool.
Each real server in the pool has access to the same data through use of a shared file
system or back-end database server.
Some services require that a series of client requests go to the same real server so that ses-
sion-specific state data can be retained between connections. Services of this nature
include Web search results, multi-page forms that the user fills in, or custom Web-based
applications typically created using cgi-bin scripts. Connections for these types of ser-
vices must be configured as persistent (see Chapter 17, “Persistence”) or must use the
minmisses or hash metrics (see “Metrics for Real Server Groups” on page 185).
Clients and servers can be connected through the same switch port. Each port in use on the
switch can be configured to process client requests, server traffic, or both. You can enable
or disable processing on a port independently for each type of Layer 4 traffic.
Layer 4 client processing: Ports that are configured to process client request traffic
provide address translation from the virtual server IP to the real server IP address.
Layer 4 server processing: Ports that are configured to process server responses to cli-
ent requests provide address translation from the real server IP address to the virtual
server IP address. These ports require real servers to be connected to the GbE Switch
Module directly.
NOTE – Switch ports configured for Layer 4 client/server processing can simultaneously pro-
vide Layer 2 switching and IP routing functions.
Internet C GbESM S
S C
In Figure 10-4, the switch load balances traffic to a Web server pool and to a Domain
Name System (DNS) server pool. The switch port connected to the Web server pool (port
11) is asked to perform both server and client processing.
NOTE – For details about any of the menu commands described in this example, see your
Alteon OS Command Reference.
For this example, the three hosts (real servers) have been given the following IP addresses on
the same IP subnet:
Server A 200.200.200.2
Server B 200.200.200.3
Server C 200.200.200.4
NOTE – An imask option can be used to define a range of IP addresses for real and virtual
servers (see “IP Address Ranges Using imask” on page 183).
To configure an IP interface for this example, enter these commands from the CLI:
NOTE – The IP interface and the real servers must belong to the same VLAN, if they are in the
same subnet. This example assumes that all ports and IP interfaces use default VLAN 1,
requiring no special VLAN configuration for the ports or IP interface.
4. Define a real server group and add the three real servers to the service group.
NOTE – This configuration is not limited to HTTP Web service. Other TCP/IP services can be
configured in a similar fashion. For a list of other well-known services and ports, see “Well-
Known Application Ports” on page 182. To configure multiple services, see “Configuring Mul-
tiple Services” on page 184.
INT8 Back-end NFS server provides centralized content for all three real None
servers. This port does not require switching features.
EXT1 Client router connects the switch to the Internet where client Client
requests originate.
>> Virtual server 1# /cfg/slb/port INT5 (Select physical switch port INT5)
>> SLB port INT5# server ena (Enable server processing)
>> SLB port INT5# ../port INT6 (Select physical switch port INT6)
>> SLB port INT6# server ena (Enable server processing)
>> SLB port INT6# ../port INT7 (Select physical switch port INT7)
>> SLB port INT7# server ena (Enable server processing)
>> SLB port INT7# ../port EXT1 (Select physical switch port EXT1)
>> SLB port EXT1# client ena (Enable client processing)
Examine the resulting information. If any settings are incorrect, make the appropriate changes.
NOTE – You must apply any changes in order for them to take effect, and you must save
changes if you wish them to remain in effect after switch reboot.
Check that all SLB parameters are working according to expectation. If necessary, make any
appropriate configuration changes and then check the information again.
NOTE – The service number specified on the switch must match the service specified on the server.
NOTE – Load balancing some applications (such as FTP and RTSP) require special configura-
tion.
When maintenance is complete, use the following command to enable the real server:
The switch checks each service on each real server every two seconds. If the real server is busy
processing connections, it may not respond to a health check. By default, if a service does not
respond to four consecutive health checks, the switch declares the service unavailable. As
shown below, the health check interval and the number of retries can be changed:
For more complex health-checking strategies, see Chapter 14, “Health Checking.”
Independent Services. If you are configuring two independent services such as FTP and
SMTP—where the real server failure on one service does not affect other services that the real
server supports, then configure two groups with the same real servers, but with different ser-
vices. If a real server configured for both FTP and SMTP fails FTP, the real server is still avail-
able for SMTP. This allows the services to act independently even though they are using the
same real servers.
Dependent Services. If you are configuring two dependent services such as HTTP and
HTTPS—where the real server failure on one service blocks the real server for other services,
then configure a single group with multiple services. If a real server configured for both HTTP
and HTTPS fails for the HTTP service, then the server is blocked from supporting any HTTPS
requests. The switch will block HTTPS requests, (even though HTTPS has not failed) until the
HTTP service becomes available again. This helps in troubleshooting so you know which ser-
vice has failed.
Minimum Misses
The minmisses metric is optimized for application redirection. It uses IP address information
in the client request to select a server. When selecting a server, the switch calculates a value for
each available real server based on the relevant IP address information. The server with highest
value is assigned the connection. This metric attempts to minimize the disruption of persis-
tency when servers are removed from service. This metric should be used only when persis-
tence is a must.
By default the minmiss algorithm uses the upper 24-bits of the source IP address to calculate
the real server that the traffic should be sent to when the minmiss metric is selected. In
Alteon OS 21.0 you can select all the 32-bits of the source IP address to hash to the real server.
For application redirection, the client destination IP address is used. All requests for a spe-
cific IP destination address are sent to the same server. This metric is particularly useful in
caching applications, helping to maximize successful cache hits. Best statistical load bal-
ancing is achieved when the IP address destinations of load-balanced frames are spread
across a broad range of IP subnets.
For SLB, the client source IP address and real server IP address are used. All requests
from a specific client are sent to the same server. This metric is useful for applications
where client information must be retained on the server between sessions. With this met-
ric, server load becomes most evenly balanced as the number of active clients with differ-
ent source or destination addresses increases.
To select all 32-bits of the source IP address, use the command, /cfg/slb/group x/mhash
32. This 32-bit hash is most useful in the wireless world.
The minmisses metric cannot be used for firewall load balancing, since the real server IP
addresses used in calculating the score for this metric are different on each side of the firewall.
Hash
The hash metric uses IP address information in the client request to select a server. The spe-
cific IP address information used depends on the application:
For Application Redirection, the client destination IP address is used. All requests for a
specific IP destination address will be sent to the same server. This is particularly useful
for maximizing successful cache hits.
For SLB, the client source IP address is used. All requests from a specific client will be
sent to the same server. This option is useful for applications where client information
must be retained between sessions.
For FWLB, both the source and destination IP addresses are used to ensure that the two
unidirectional flows of a given session are redirected to the same firewall.
When selecting a server, a mathematical hash of the relevant IP address information is used as
an index into the list of currently available servers. Any given IP address information will
always have the same hash result, providing natural persistence, as long as the server list is sta-
ble. However, if a server is added to or leaves the mix, then a different server might be
assigned to a subsequent session with the same IP address information even though the original
server is still available. Open connections are not cleared.
NOTE – The hash metric provides more distributed load balancing than minmisses at any
given instant. It should be used if the statistical load balancing achieved using minmisses is
not as optimal as desired. If the load balancing statistics with minmisses indicate that one
server is processing significantly more requests over time than other servers, consider using
the hash metric.
Least Connections
With the leastconns metric, the number of connections currently open on each real server
is measured in real time. The server with the fewest current connections is considered to be the
best choice for the next client connection request.
This option is the most self-regulating, with the fastest servers typically getting the most con-
nections over time.
Round Robin
With the roundrobin metric, new connections are issued to each server in turn; that is, the
first real server in the group gets the first connection, the second real server gets the next con-
nection, followed by the third real server, and so on. When all the real servers in this group
have received at least one connection, the issuing process starts over with the first real server.
Response Time
The response metric uses real server response time to assign sessions to servers. The
response time between the servers and the switch is used as the weighting factor. The switch
monitors and records the amount of time it takes for each real server to reply to a health check
to adjust the real server weights. The weights are adjusted so they are inversely proportional to
a moving average of response time. In such a scenario, a server with half the response time as
another server will receive a weight twice as large.
NOTE – The effects of the response weighting apply directly to the real servers and are not
necessarily confined to the real server group. When response time-metered real servers are also
used in other real server groups that use the leastconns or roundrobin metrics, the
response weights are applied on top of the leastconns or roundrobin calculations
for the affected real servers. Since the response weight changes dynamically, this can pro-
duce fluctuations in traffic distribution for the real server groups that use the leastconns or
roundrobin metrics.
Bandwidth
The bandwidth metric uses real server octet counts to assign sessions to a server. The switch
monitors the number of octets sent between the server and the switch. Then, the real server
weights are adjusted so they are inversely proportional to the number of octets that the real
server processes during the last interval.
Servers that process more octets are considered to have less available bandwidth than servers
that have processed fewer octets. For example, the server that processes half the amount of
octets over the last interval receives twice the weight of the other servers. The higher the band-
width used, the smaller the weight assigned to the server. Based on this weighting, the subse-
quent requests go to the server with the highest amount of free bandwidth. These weights are
automatically assigned.
NOTE – The effects of the bandwidth weighting apply directly to the real servers and are not
necessarily confined to the real server group. When bandwidth-metered real servers are also
used in other real server groups that use the leastconns or roundrobin metrics, the
bandwidth weights are applied on top of the leastconns or round-robin calculations
for the affected real servers. Since the bandwidth weight changes dynamically, this can pro-
duce fluctuations in traffic distribution for the real server groups that use the leastconns or
roundrobin metrics.
NOTE – Weights are not applied when using the hash or minmisses metrics.
The example above would change the time-out period of all connections on the designated real
server to four minutes.
Values average from approximately 500 HTTP connections for slower servers to 1500 for
quicker, multiprocessor servers. The appropriate value also depends on the duration of each
session and how much CPU capacity is occupied by processing each session. Connections that
use a lot of Java or CGI scripts for forms or searches require more server resources and thus a
lower maxcon limit. You may wish to use a performance benchmark tool to determine how
many connections your real servers can handle.
When a server reaches its maxcon limit, the switch no longer sends new connections to the
server. When the server drops back below the maxcon limit, new sessions are again allowed.
Backup/Overflow Servers
A real server can backup other real servers and can handle overflow traffic when the maximum
connection limit is reached. Each backup real server must be assigned a real server number and
real server IP address. It must then be enabled. Finally, the backup server must be assigned to
each real server that it will back up. The following defines real server 4 as a backup for real
servers 1 and 2:
In a similar fashion, a backup/overflow server can be assigned to a real server group. If all real
servers in a real server group fail or overflow, the backup comes online.
>> # /cfg/slb/group <real server group number> (Select real server group)
>> Real server group# backup r4 (Assign real server 4 as backup)
Real server groups can also use another real server group for backup/overflow:
>> # /cfg/slb/group <real server group number> (Select real server group)
>> Real server group# backup g2 (Assign real server group 2 as
backup)
Proxy IP Addresses
In complex network topologies, SLB functions can be managed using a proxy IP address on
the client switch ports.
When the client requests services from the switch’s virtual server, the client sends its own IP
address for use as a return address. If a proxy IP address is configured for the client port on the
switch, the switch replaces the client’s source IP address with the switch’s own proxy IP
address before sending the request to the real server. This creates the illusion that the switch
originated the request.
The real server uses the switch’s proxy IP address as the destination address for any response.
SLB traffic is forced to return through the proper switch, regardless of alternate paths. Once
the switch receives the proxied data, it puts the original client IP address into the destination
address and sends the packet to the client. This process is transparent to the client.
NOTE – Because requests appear to come from the switch proxy IP address rather than the cli-
ent source IP address, the network administrator should be aware of this behavior during
debugging and statistics collection.
The proxy IP address can also be used for direct access to the real servers (see “Direct Server
Interaction” on page 196).
Table 10-4 show the different ports sharing proxy IP addresses. For example, port numbers 1,
3, 5 and port 19 share proxy IP address 1. Alteon OS requires you to configure two proxy IP
addresses. The unused proxy IP address can be disabled using the command /cfg/slb/
port x/proxy dis.
Frames ingressing a port that has proxy option enabled (/cfg/slb/port x/proxy
ena) are processed using one of the configured proxy IP addresses. The source IP address
determines which proxy IP address to use. The client source address is substituted with the
proxy IP address of the port processing the request. If proxy is disabled, then the client IP
address is not replaced with a proxy IP address.
INT8 Back-end NFS server provides centralized content for all three real None
servers. This port does not require switching features.
EXT1 Client router connects the switch to the Internet where all client Client
requests originate.
The following commands are used to disable server processing on ports 5-7:
2. Configure a unique proxy address and enable proxy for the client ports.
Configure a unique proxy IP address and enable proxy on the client ports:
3. (optional) If the Virtual Matrix Architecture (VMA) feature is enabled, configure all
proxy IP addresses.
VMA is normally enabled on the switch. In addition to enhanced resource management, VMA
eliminates many of the restrictions found in earlier versions of the Alteon OS. VMA does
require, that you configure two unique proxy IP addresses.
The following commands can be used for configuring the additional proxy IP address:
For information on using the VMA commands, see the Alteon OS Command Reference
(/cfg/slb/adv/matrix) for more information.
NOTE – Remember that you must apply any changes in order for them to take effect, and you
must save them if you wish them to remain in effect after switch reboot. Also, the /info/
slb command is useful for checking the state of Server Load Balancing operations.
Mapping Ports
A GbE Switch Module allows you to hide the identity of a port for security by mapping a vir-
tual server port to a different real server port.
Port mapping is configured from the Virtual Server Services menu. For example, to map the
virtual server TCP/UDP port 80 to real server TCP/UDP port 8004, you could enter the follow-
ing:
A GbE Switch Module supports up to 16 real ports per server when multiple rports are
enabled. This feature allows the network administrator to configure up to 16 real ports for a
single service port. This feature is supported in Layer 4 and Layer 7 and in cookie-based and
SSL persistence switching environments.
When multiple real ports on each real server are mapped to a virtual port, the GbE Switch
Module treats the real server IP address/port mapping combination as a distinct real server.
NOTE – For each real server, you can only configure one service with multiple real ports.
Real Servers
GbESM 192.168.2.1
Internet
192.168.2.2
192.168.2.3
192.168.2.4
BladeCenter
Domain Name virtual server IP Ports Activated Port Mapping Real Server IP
address Address
In this example, four real servers are used to support a single service (HTTP). Clients access
this service through a virtual server with IP address 192.168.2.100 on virtual port 80. Since
each real server uses two ports (8001 and 8002) for HTTP services, the logical real servers are:
192.168.2.1/8001
192.168.2.1/8002
192.168.2.2/8001
192.168.2.2/8002
192.168.2.3/8001
192.168.2.3/8002
192.168.2.4/8001
192.168.2.4/8002
If the algorithm is leastconns, the switch sends the incoming connections to the logical
real server (real server IP address/port combination) with the least number of connections.
The /cfg/slb/virt command defines the real server TCP or UDP port assigned to a ser-
vice. By default, this is the same as the virtual port (service virtual port). If rport is config-
ured to be different from the virtual port defined in /cfg/slb/virt <virtual server
number>/service <virtual port>, the switch maps the virtual port to the real port.
NOTE – To use the single virtual port to multiple rport feature, configure this real server port
option to be a value of 0. However, note that you cannot configure multiple services with mul-
tiple rports in the same server if the multiple rport feature is enabled.
>> # /cfg/slb/group 1
>> Real server Group 1# add 1
>> Real server Group 1# add 2
>> Real server Group 1# add 3
>> Real server Group 1# add 4
Traffic sent directly to real server IP addresses is excluded from load-balancing decisions. The
same clients may also communicate to the virtual server IP address for load-balanced requests.
NOTE – When DAM is enabled on a switch, port mapping and default gateway load balancing
is supported only when filtering is enabled, a proxy IP address is configured, or URL parsing is
enabled on any switch port.
Mapping Ports
When SLB is used without proxy IP addresses and without DAM, the GbE Switch Module
must process the server-to-client responses. If a client were to access the real server IP address
and port directly, bypassing client processing, the server-to-client response could be mishan-
dled by SLB processing as it returns through the GbE Switch Module, with the real server IP
address getting remapped back to the virtual server IP address on the GbE Switch Module.
First, two port processes must be executed on the real server. One real server port will handle
the direct traffic, and the other will handle SLB traffic. Then, the virtual server port on the GbE
Switch Module must be mapped to the proper real server port.
In Figure 10-6, clients can access SLB services through well-known TCP port 80 at the virtual
server’s IP address. The GbE Switch Module behaving like a virtual server is mapped to TCP
port 8000 on the real server. For direct access that bypasses the virtual server and SLB, clients
can specify well-known TCP port 80 as the real server’s IP address.
Direct Access
via Real Server IP & Port
8000 Real
Client 80 80
Layer 4 Server
Network Mapped Virtual Server
Access on GbESM
via
Virtual Server
IP & Port BladeCenter
NOTE – Port mapping is supported with DAM when filtering is enabled, a proxy IP address is
configured, or URL parsing is enabled on any switch port.
For more information on how to map a virtual server port to a real server port, see “Mapping
Ports” on page 193.
NOTE – Clients on the management network do not have access to SLB services and cannot
access the virtual services being load balanced.
mnet: If defined, management traffic with this source IP address is allowed direct (non-
SLB) access to the real servers. Only specify an IP address in dotted decimal notation. A
range of IP addresses is produced when used with the mmask option.
mmask: This IP address mask is used with mnet to select management traffic that is
allowed direct real server access only.
Delayed Binding
The delayed binding feature on the switch prevents SYN Denial-of-Service (DoS) attacks on
the server. DoS occurs when the server or switch is denied servicing the client because it is sat-
urated with invalid traffic.
Typically, a three-way handshake occurs before a client connects to a server. The client sends
out a synchronization (SYN) request to the server. The server allocates an area to process the
client requests, and acknowledges the client by sending a SYN ACK. The client then acknowl-
edges the SYN ACK by sending an acknowledgement (ACK) back to the server, thus complet-
ing the three-way handshake.
Figure 10-7 on page 200 illustrates a classic type of SYN DoS attack. If the client does not
acknowledge the server’s SYN ACK with a data request (REQ) and, instead, sends another
SYN request, the server gets saturated with SYN requests. As a result, all of the servers
resources are consumed and it can no longer service legitimate client requests.
Normal Request
Client sends a SYN request Server
Client
Server reserves session and sends SYN ACK
Client sends an ACK or DATA REQ
Server responds with DATA
Using a GbE Switch Module with delayed binding, as illustrated in Figure 10-8 on page 201,
the GbE Switch Module intercepts the client SYN request before it reaches the server. The
GbE Switch Module responds to the client with a SYN ACK that contains embedded client
information. The GbE Switch Module does not allocate a session until a valid SYN ACK is
received from the client or the three-way handshake is complete.
GbESM
Internet BladeCenter
GbESM
Internet BladeCenter
Once the GbE Switch Module receives a valid ACK or DATA REQ from the client, the GbE
Switch Module sends a SYN request to the server on behalf of the client, waits for the server to
respond with a SYN ACK, and then forwards the clients DATA REQ to the server. Basically,
the GbE Switch Module delays binding the client session to the server until the proper hand-
shakes are complete.
Thus, with delayed binding, two independent TCP connections span a session: one from the
client to the GbE Switch Module and the second from the switch to the selected server. The
switch temporarily terminates each TCP connection until content has been received, thus pre-
venting the server from being inundated with SYN requests.
NOTE – Delayed binding is automatically enabled when content intelligent switching features
are used. However, if you are not parsing content, you must explicitly enable delayed binding
if desired.
NOTE – Enable delayed binding without configuring any HTTP SLB processing or persistent
binding types.
To configure delayed binding for cache redirection, see “Delayed Binding for Cache Redirec-
tion” on page 294.
To detect SYN attacks, the GbE Switch Module keeps track of the number of new half-open
sessions for a set period of time. If the value exceeds the threshold, then a syslog message and
an SNMP trap are generated.
You can change the default parameters for detecting SYN attacks in the /cfg/slb/adv/
synatk menu. You can specify how frequently you want to check for SYN attacks, from 2
seconds to a minute and modify the default threshold representing the number of new half-
open sessions per second.
Session Initiation Protocol (SIP) is used to locate users (where the caller and called parties are
located), determine user capability (what type of protocol TCP, UDP, and other capabilities the
user can support), user availability, call setup (how to create the call), and call handling (how
to keep the call up, and how to bring down the call).
This feature load balances SIP proxy servers such as Nortel MCS (Multimedia Communica-
tions Server). Alteon OS 21.0 supports UDP-based SIP server load balancing only.
Session Initiation Protocol (SIP) load balancing is designed for Nortel MCS 1.0, but this
feature can function with any SIP servers that use shared or clustered databases, such as
CommuniGate Pro. All SIP servers must share signaling data (registration, invites, etc.).
Session Initiation Protocol (SIP) is a text based protocol with header lines preceding the con-
tent. Like HTTP, the first header line has the method specification followed by other header
lines that specify other parameters like Call-ID etc.
Follow this procedure to configure the topology illustrated in Figure 10-9 on page 204:
1. At the Nortel Application Switch, before you start configuring SIP load balancing:
Connect each SIP proxy server to the application switch
Configure the IP addresses on all devices connected to the application switch
Configure the IP interfaces on the application switch
Enable Virtual Matrix Architecture (VMA)
Enable Direct Access Mode (DAM)
Disable proxy IP addressing
>> # /cfg/slb/on
>>Real Server Group 100# metric minmiss (Set the metric to minmisses)
>>Real Server Group 100# health sip (Set the health check to sip)
>> # /cfg/slb/virt 1/service 5060 (Add the SIP service for virt 1)
>>Virtual Server 1 sip Service # sip ena (Enable SIP for virtual server 1)
>>Virtual Server 1 sip Service # udp ena (Enable UDP load balancing)
When the call terminates with a BYE command, the application switch releases the session
entry immediately.
The Workload Manager feature is used to monitor server resources and provide additional
input on load balancing decisions. The Workload Manager takes into account a server’s CPU,
storage capacity, and network traffic in any final weighting decisions. The Workload Manager
uses an implementation of the SASP protocol to perform this task.
The WLM software developed by IBM allows you to specify end-to-end performance goals for
distributed requests. WLM runs on an entity responsible for reporting or managing a group of
members. This entity is known as the Domain Manager (DM). DM recommends a weight for
each application/server in the group. This weight recommendation is based on the business
importance, topology and ability of the system to meet its business goals. This recommended
weights helps the application switch make intelligent server load balancing decisions.
In case of application load balancing, the representation of a member is the real servers’s IP
address and the application’s port and protocol. When the members are registered, the GWM
starts monitoring and computes the weight. The DM periodically sends the weights for all the
registered groups.
When a real server is disabled/enabled operationally the switch sends a request to temporarily
remove the server from the weight calculation.
1. Configure the IP address and the TCP port number to connect to the WLM.
If the WLM number is not specified, then this group is not registered with the WLM. As a
result, dynamic weights are not used for this group.
If you are using a GbE Switch Module for the first time starting with Alteon OS 21.0, then you
should start any GSLB by first setting DSSP to version 2. The command to change to DSSP
version 2 is /cfg/slb/gslb/version 2.
209
24R9742, March 2006
Alteon OS 21.0 Application Guide
GSLB Overview
GSLB allows balancing server traffic load across multiple physical sites. The Alteon OS
GSLB implementation takes into account an individual site’s health, response time, and geo-
graphic location to smoothly integrate the resources of the dispersed server sites for complete
global performance.
Benefits
GSLB meets the following demands for distributed network services:
High content availability is achieved through distributed content and distributed decision
making. If one site becomes disabled, the others become aware of it and take up the load.
There is no latency during client connection set up. Instant site hand-off decisions can be
made by any distributed switch.
The best performing sites receive a majority of traffic over a given period of time but are
not overwhelmed.
Switches at different sites regularly exchange information through the Distributed Site
State Protocol (DSSP), and can trigger exchanges when any site’s health status changes.
This ensures that each active site has valid state knowledge and statistics. DSSP v1.0 and
DSSP v2.0 are supported.
GSLB implementation takes geography as well as network topology into account.
Creative control is given to the network administrator or Webmaster to build and control
content by user, location, target application, and more.
GSLB is easy to deploy, manage, and scale. Switch configuration is straightforward. There
are no complex system topologies involving routers, protocols, and so forth.
Flexible design options are provided.
All IP protocols are supported.
GSLB is based on the Domain Name System (DNS) and proximity by source IP address. In the
example in Figure 11-1, a client is using a Web browser to view the Web site for the Example
Corporation at “www.example.com.” The Example Corporation has two Web sites: one in
San Jose, and one in Denver, each with identical content and available services. Both Web sites
have an Nortel Application Switch configured for GSLB, with domain name set to
“www.gslb.example.com.” These switches are also configured as the Authoritative Name
Servers for “www.example.com.”On the company master DNS server, the configuration is to
delegate “www.example.com” to “www.gslb.example.com.”
Client Site
DNS
Request 1 HTTP
5 Request
DNS
3 Best Service!
GbESM GbESM
Internet
4
Switches regularly exchange performance information
Web Web
Servers DNS response Servers
lists best site's
IP address first
The DNS resolution for GSLB is described in detail in the following procedure:
1. The client Web browser requests the “www.example.com” IP address from the local
DNS.
2. The client’s DNS asks its upstream DNS, which in turn asks the next, and so on, until the
address is resolved.
Eventually, the request reaches an upstream DNS server that has the IP address information
available or the request reaches one of the Example, Inc. DNS servers.
3. The Example Inc.’s San Jose DNS tells the local DNS to query the Nortel Application
Switch with GSLB software as the authoritative name server for “www.example.com.”
4. The San Jose switch responds to the DNS request, listing the IP address with the current
best service.
Each switch with GSLB software is capable of responding to the client’s name resolution
request. Since each switch regularly checks and communicates health and performance infor-
mation with its peers, either switch can determine which site(s) are best able to serve the cli-
ent’s Web access needs. It can respond with a list of IP addresses for the Example Inc.’s
distributed sites, which are prioritized by performance, geography, and other criteria.
In this case, the San Jose switch knows that Example Inc. Denver currently provides better ser-
vice, and lists Example Inc. Denver’s virtual server IP address first when responding to the
DNS request.
5. The client connects to Example Inc. Denver for the best service.
The client’s Web browser will use the IP address information obtained from the DNS request
to open a connection to the best available site. The IP addresses represent virtual servers at any
site, which are locally load balanced according to regular SLB configuration.
If the site serving the client HTTP content suddenly experiences a failure (no healthy real serv-
ers) or becomes overloaded with traffic (all real servers reach their maximum connection
limit), the switch issues an HTTP Redirect and transparently causes the client to connect to
another peer site.
The end result is that the client gets quick, reliable service with no latency and no special cli-
ent-side configuration.
GSLB Enhancements
GSLB has been enhanced with the following new features in Alteon OS 21.0.
GSLB Metrics
This section describes all GSLB metrics. The (New) items are newly introduced as of Alteon
OS 21.0. All metrics can be prioritized for selection order, and can be weighted on per site
basis.
For details on the configuration parameters of GSLB metrics, see the /cfg/slb/gslb/rule
menu and the command descriptions in the Alteon OS 21.0 Command Reference.
CPU utilization capacity threshold (new)—This metric causes the GSLB-enabled switch
to not select the server when the CPU utilization of the site with the server goes above the
threshold. CPU utilization is the highest CPU utilization for periods of up to 64 seconds
among SPs. This is a threshold metric and overwrites all other metrics.This metric
requires remote site updates.
Session available capacity threshold—This metric does not select the server when the
number of available sessions on the server falls below the threshold. When the server is
not available, the session available is 0. This is a threshold metric and it overwrites all
other metrics. This metric requires remote site updates.
Geographical preference—This metric causes the GSLB-enabled switch to select the
server based on the same IANA region of the source IP address and the server IP address.
This metric does not require remote site updates. The command, /info/slb/gslb/geo
can be used to obtain a list of the IP address ranges that are mapped to each region. The
regions are as follows:
North America
South America
Europe
Caribbean
Pacific Rim
Sub-Sahara
Japan
Network preference (client proximity)—This metric selects the server based on the pre-
ferred network of the source IP address. This metric does not require remote site updates.
Weighted least connections (new)—This metric selects the server based on which server
has the lowest session utilization. Session utilization is the percentage of sessions used
over total sessions, which results in normalized sessions between servers. A server whose
session utilization is 100% is considered unavailable. This metric requires remote site
updates.
Weighted response time—This metric selects the server based on the lowest response time
in milliseconds from an SLB health check of the servers. This metric requires SLB health
checks and remote site updates.
Weighted round robin (new)—This metric selects the server based on round robin of the
servers.
Weighted random (new)—This metric selects the server based on uniform random distri-
bution of the servers.
Availability (new)—This metric selects the same server while the server is still available.
If the same server is not available, this metric selects the next server based on a ranking of
the local virtual server and remote real server in a list from the highest (48) to the lowest
(1) ranking. Multiple servers can have the same priority. This metric allows servers to be
grouped based on priorities, or into primary and secondary groups. This metric requires
SLB health checks and remote site updates.
Quality of service (new)—This metric selects the server based on combination of the low-
est session utilization and the lowest response time of the SLB health check of the servers.
This metric requires SLB health checks and remote site updates.
Minmisses (new) —This metric selects the same server based on the hash of source IP
address and domain name. The hash calculation uses all the servers that are configured for
the domain irrespective of the state of the server. When the server selected is not available,
minmisses selects the next available server.
Hashing (new)—This metric selects the same server based on the hash of source IP
address and domain name. The hash calculation uses only the servers that are available for
the domain. The server selected may be affected when a server become available or not
available since the hash calculation uses only the servers that are available.
DNS local—This metric selects the local virtual server only when the local virtual server
is available. This metric applies to DNS-based GSLB only.
DNS always—This metric selects the local virtual server even though the local virtual
server is not available. This metric applies to DNS-based GSLB only.
Remote—This metric selects the remote real servers only.
Metric preferences
This metric allows the GSLB selection to use multiple metrics from a metric preference list.
The GSLB selection starts with the first metric in the list. The GSLB selection goes to the next
metric when no server is selected, or more than the required servers is selected. The GSLB
selection stops when the metric results at least one and no more than the required servers, or
after the last metric in the list is reached. For DNS direct-based GSLB, the DNS response can
be configured to return up to 10 required servers. For HTTP redirects based GSLB, the
required server is one.
The following metrics can be selected from the metric preference list.
Geographical preference
Network preference
Least connections
Response time
Round robin
Random
Availability
Quality of service
Minmisses
Hashing
DNS local
DNS always
Remote
Rules
A rule allows the GSLB selection to use a different GSLB site selection metric preference list,
and rules can be set based on the time of day. Each domain has one or more rules. Each rule has
a metric preference list. The GSLB selection selects the first rule that matches for the domain
and starts with the first metric in the metric preference list of the rule. For more information,
see “Configuring GSLB with Rules” on page 235.
Use the administrator login to connect to the switch you want to configure.
Activate the GSLB software key. See the Alteon OS Command Reference for details.
Configure the switch at each site with basic attributes.
Configure the switch IP interface.
Configure the default gateways.
Configure the switch at each site to act as the DNS server for each service that is hosted on
its virtual servers. Also, configure the master DNS server to recognize the switch as the
authoritative DNS server for the hosted services.
Configure the switch at each site for local SLB.
Define each local real server.
Group local real servers into real server groups.
Define the local virtual server with its IP address, services, and real server groups.
Define the switch port states.
Enable SLB.
Finally, configure each switch so that it recognizes its remote peers.
Configure a remote real server entry on each switch for each remote service. This is
the virtual server IP address that is configured on the remote peer.
Add the remote real server entry to an appropriate real server group.
Enable GSLB.
You must be connected to the switch Command Line Interface (CLI) as the administrator.
The optional GSLB software key must be activated
Server Load Balancing must be enabled.
10 GSLB 1 GSLB 2
11
20 GbESM GbESM 21
IP Interface 101 Default GW Default GW IP Interface 102:
Web Servers: 200.200.200.1 200.200.200.101 174.14.70.101 174.14.70.2
200.2.2.10 Web Servers:
200.2.2.20 174.40.7.11
VIP: 200.200.200.100 VIP: 174.14.70.200 174.40.7.21
VLAN 201 VLAN 101 VLAN 102 VLAN 202
IP Interface 201 Internet IP Interface 202
200.2.2.201 174.40.7.202
VLAN 201 VLAN 202
In the following examples, many of the options are left to their default values. See “Additional
Server Load Balancing Options” on page 182 for more options.
NOTE – For details about any of the processes or menu commands described in this example,
see the Alteon OS Command Reference.
For example, enter the following command to change the BBI port to 8080:
3. Configure another VLAN for local server traffic, and add server ports to this VLAN.
>> # apply
>> # save
8. Configure the master DNS server to recognize the local GSLB switch as the authoritative
name server for the hosted services.
Determine the domain name that will be distributed to both sites and the host name for each
distributed service. In this example, the San Jose DNS server is configured to recognize
200.200.200.1 (the IP interface of the San Jose GSLB switch) as the authoritative name server
for “www.gslb.example.com.”
For this example, the host real servers have IP addresses on the same IP subnet:
Server 10 200.2.2.10
Server 20 200.2.2.20
NOTE – This configuration is not limited to HTTP services. For a list of other well-known
TCP/IP services and ports, see Table 10-3 on page 182.
5. On the San Jose switch, define the type of Layer 4 traffic processing each port must sup-
port.
In this example, the following ports are being used on the GbESM:
Table 11-2 GSLB Example: San Jose GbESM Port Usage
4 Server 10 Server
3 Server 20 Server
2 Default Gateway Router. This connects the switch to the Internet Client
where all client requests originate.
>> Virtual server 1# /cfg/slb/port INT4 (Select physical switch port INT4)
>> SLB port 4# server ena (Enable server processing on port)
>> SLB port 4# /cfg/slb/port INT3 (Select physical switch port INT3)
>> SLB port 3# server ena (Enable server processing on port)
>> SLB port 3# /cfg/slb/port EXT2 (Select physical switch port EXT2)
>> SLB port 2# client ena (Enable client processing on port)
Each additional remote site would be configured in the same manner. You can enable up to 64
remote sites.
4. On the San Jose switch, assign each remote distributed service to a local virtual server.
Configure the local San Jose site to recognize the services offered at the remote Denver site. To
do this, configure one real server entry on the San Jose switch for each virtual server located at
each remote site. Since there is only one remote site (Denver) with only one virtual server, only
one more local real server entry is needed at the San Jose site.
The new real server entry is configured with the remote virtual server IP address, i.e. Switch
2’s vip address, rather than the usual IP address of a local physical server. Do not confuse this
value with the IP interface address on the remote switch.
Also, the remote parameter is enabled, and the real server entry is added to the real server
group under the local virtual server for the intended service. Finally, since the real server health
checks are performed across the Internet, the health-checking interval should be increased to
30 or 60 seconds to avoid generating excess traffic. The health check interval should also
depend on the number of remote sites. The more remote sites you have, the larger the time
interval should be. For example:
NOTE – Take care to note where each configured value originates, or this step can result in
improper configuration.
5. On the San Jose switch, define the domain name and host name for each service hosted
on each virtual server.
In this example, the domain name for the Example Inc. is “gslb.example.com,” and the host
name for the only service (HTTP) is “www.” These values are configured as follows:
Examine the resulting information. If any settings are incorrect, make and apply any appropri-
ate changes, and then check again.
1. If using the Browser-Based Interface (BBI) for managing the San Jose switch, change its
service port.
By default, GSLB listens on service port 80 for HTTP redirection. By default, the Alteon OS
Browser-Based Interface (BBI) also uses port 80. Both services cannot use the same port. If the
BBI is enabled (see the /cfg/sys/access/http command in the Alteon OS Command Refer-
ence), configure it to use a different port.
For example, enter the following command to change the BBI port to 8080:
3. Configure a VLAN for local server traffic, and add server ports to this VLAN.
>> # apply
>> # save
8. Configure the local DNS server to recognize the local GSLB switch as the authoritative
name server for the hosted services.
Determine the domain name that will be distributed to both sites and the host name for each
distributed service. In this example, the Denver DNS server is configured to recognize
174.14.70.2 (the IP interface of the Denver GSLB switch, configured with the domain name
“www.gslb.example.com”) as the authoritative name server for “www.example.com.”
Server 11 174.14.7.11
Server 21 174.14.7.21
5. On the Denver switch, define the type of Layer 4 processing each port must support.
In this example, the following ports are being used on the GbESM:
11 Server 11 Server
12 Server 12 Server
2 Default Gateway Router. This connects the switch to the Internet Client
where all client requests originate.
>> # /cfg/slb/on
Each additional remote site would be configured in the same manner. You can enable up to 64
remote sites.
4. On the Denver switch, assign each remote distributed service to a local virtual server.
In this step, the local Denver site is configured to recognize the services offered at the remote
San Jose site. As before, configure one real server entry on the Denver switch for each virtual
server located at each remote site. Since there is only one remote site (San Jose) with only one
virtual server, only one more local real server entry is needed at the Denver site.
The new real server entry is configured with the IP address of the remote virtual server, rather
than the usual IP address of a local physical server. Do not confuse this value with the IP inter-
face address on the remote switch.
Also, the remote parameter is enabled, and the real server entry is added to the real server
group under the local virtual server for the intended service. Finally, since the real server health
checks are headed across the Internet, the health-checking interval should be increased to 30 or
60 seconds to avoid generating excess traffic. The more remote sites you have, the larger the
time interval should be.
For example:
NOTE – Take care to note where each configured value originates or this step can result in
improper configuration.
5. On the Denver switch, define the domain name and host name for each service hosted on
each virtual server.
These will be the same as for the San Jose switch: the domain name is “gslb.example.com,”
and the host name for the HTTP service is “www.” These values are configured as follows:
Examine the resulting information. If any settings are incorrect, make and apply any appropri-
ate changes, and then check again.
The remote sites can be other sites configured with an GbE Switch Module running GSLB, an
GbE Switch Module running only SLB, or even a site that uses another vendor’s load balanc-
ers.
A GbE Switch Module running GSLB can operate in standalone mode as long as it uses site
selection metrics that do not require remote site updates.
10 SLB 1 SLB 2
11
20 GbESM GbESM 21
IP Interface 101 Default GW Default GW IP Interface 102:
Web Servers: 200.200.200.1 200.200.200.101 174.14.70.101 174.14.70.2
200.2.2.10 Web Servers:
200.2.2.20 174.40.7.11
VIP: 200.200.200.100 VIP: 174.14.70.200 174.40.7.21
VLAN 201 VLAN 101 VLAN 102 VLAN 202
IP Interface 201 Internet IP Interface 202
200.2.2.201 174.40.7.202
VLAN 201 VLAN 202
Tokyo– GSLB
43.10.10.X Network
DNS Server
Default GW
43.10.10.103
Standalone
GSLB GbESM
IP Interface
43.10.10.3
VLAN 103
Remember that in Standalone mode, the GbE Switch Module does not require
SLB configuration of local real servers.
>> # apply
>> # save
5. Configure the local DNS server to recognize the local GSLB switch as the authoritative
name server for the hosted services.
Determine the domain name that will be distributed to both sites and the host name for each
distributed service. In this example, the Tokyo DNS server is configured to recognize
43.10.10.3 (the IP interface of the Tokyo GSLB switch) as the authoritative name server for
“www.gslb.example.com.”
2. On the Tokyo switch, assign each remote distributed service to a local virtual server.
In this step, the local site, Tokyo, is configured to recognize the services offered at the remote
San Jose and Denver sites. As before, configure one real server entry on the Tokyo switch for
each virtual server located at each remote site.
The new real server entry is configured with the IP address of the remote virtual server, rather
than the usual IP address of a local physical server. Do not confuse this value with the
IP interface address on the remote switch.
NOTE – Take care to note where each configured value originates, or this step can result in
improper configuration.
3. Define a network that will match and accept all incoming traffic for the other sites.
4. Define a new rule that will make the new network active.
>> Virtual Server 2 http Service# apply (Make your changes active)
>> Global SLB# cur (View current GSLB settings)
>> Global SLB# /cfg/slb/cur (View current SLB settings)
Examine the resulting information. If any settings are incorrect, make and apply
any appropriate changes, and then check again.
1. Network Preference
The first metric in rule 1 is set to “Network Preference,” which selects the server based on the
preferred network of the source IP address for a given domain. If preferred networks are not
configured, this metric is not used in the default rule. For more information on configuring pre-
ferred networks, see “Configuring GSLB Network Preference” on page 239.
2. None
The second metric in rule 1 is set to “None” in order to allow you to configure the local or
availability metric here. The local server or the server with the highest availability is
selected before any subsequent metric is used to select other servers.
3. Geographical preference
The third metric in rule 1 is set to “Geographical Preference” so that the IANA-defined geo-
graphical region based on the client source IP is used to redirect the request to the client’s
region.
4. Least connections
5. Round robin
“Round robin” or random should be the last metric defined in a rule, because they always
return a value if there is at least one functional site.
6. None
7. None
8. None
The last metric in rule 1 should be configured as dnsalways so that the GSLB selection
selects at least the local virtual server when all servers are not available. In this case, metric 6
can be configured with DNS always.
1. Disable the default rule 1, in order to ensure that the time based rule is processed first.
5. Specify the GSLB metrics to be used to select a site if a server is not selected at first.
Since network metric is the first metric, make sure to add the configured networks to metric 1.
7. Add the rule to the configured virtual server. Using the basic GSLB example, add the fol-
lowing command to the virtual server configuration steps on page 224 on page 230.
2. Set the Availability values for the real/virt servers. For example:
>> Rule 1# /cfg/slb/virt 1/avail 11 (Set avail. weight for virt. server)
>> Rule 1# /cfg/slb/real 10/avail 22 (Set avail. weight for real server)
>> Rule 1# /cfg/slb/real 11/avail 33 (Set avail. weight for real server)
The following example, illustrated in Figure 11-4 on page 240, shows how to create rules
based on client network preference. Two client networks, A and B, are configured in the net-
work preference rule on the master switch at Site 4. Client A with a subnet address of
205.178.13.0 is configured with a network preference rule for preferred Sites 1 and 3. Client B,
with a subnet address of 204.165.0.0, is configured a network preference rule for preferred
Sites 2 and 4.
Client A, with a source IP address of 205.178.13.10, initiates a request that is sent to the local
DNS server. The local DNS server is configured to forward requests to the DNS server at
Site 4. The GbESM at Site 4 looks up its network preference and finds Client A
prefers to connect to Sites 1 or 3. Similarly, Client B’s requests are always forwarded to
Sites 2 or 4.
Site 1 Site 4
DNS DNS
GbESM GbESM
DNS DNS
GbESM GbESM
NOTE – Alteon OS allows you to configure up to 128 preferred client networks. Each network
can contain up to 64 real servers.
Use the following commands to configure network preferences on the GbESM at Site 4:
Using this configuration, the DNS request for “nortelnetworks.com” from client IP
205.178.13.0 will receive a DNS response with only the virtual server IP address of Site 1, if
Site 1 has less load than Site 3.
NOTE – This feature should be used as a method of last resort for GSLB implementations in
topologies where the remote servers are usually virtual server IP addresses in other application
switches.
Figure 11-5 illustrates the packet-flow of HTTP and non-HTTP redirects in a GSLB environ-
ment. Table 11-5 explains the packet -flow process in detail. In this example, the HTTP or non-
HTTP request from the client reaches Site 2, but Site 2 has no available services.
HTTP application 1a Client HTTP request reaches Site 2. 2a. Client resends request to Site 1.
(built-in redirection) Resources are unavailable at Site 2. Resources are available at Site 1.
Site 2 sends an HTTP redirect to Client with
Site 1’s virtual server IP address.
Non-HTTP application 1b. Client non-HTTP request reaches Site 2. 2b. Site 1 processes the client proxy IP request.
(no redirection Resources are unavailable at Site 2. Resources are available at Site 1.
Site 2 sends a request to Site 1 with Site 2’s Site 1 returns request to proxy IP port on Site 2.
proxy IP address as the source IP address and
the virtual server IP address of Site 1 as the des-
tination IP address.
Client Site
DNS
Client Request
HTTP Applications
Non HTTP Applications
Site 1 Site 2
2a 1a
2b 1b
GbESM GbESM
Web
Web Servers
Proxy IP address is
Servers configured on Client
DNS port for non-HTTP
applications.
The following procedure explains the three-way handshake between the two sites and the cli-
ent for a non-HTTP application (POP3).
1. A user POP3 TCP SYN request is received by the virtual server at Site 2. The switch at
that site determines that there are no local resources to handle the request.
2. The Site 2 switch rewrites the request such that it now contains a client proxy IP address
as the source IP address, and the virtual server IP address at Site 1 as the destination IP
address.
3. The switch at Site 1 receives the POP3 TCP SYN request to its virtual server. The request
looks like a normal SYN frame, so it performs normal local load-balancing.
4. Internally at Site 1, the switch and the real servers exchange information. The TCP SYN
ACK from Site 1’s local real server is sent back to the IP address specified by the proxy IP
address.
5. The Site 1 switch sends the TCP SYN ACK frame to Site 2, with Site 1’s virtual server IP
address as the source IP address, and Site 2’s proxy IP address as the destination IP
address.
6. The switch at Site 1 receives the frame and translates it, using Site 1’s virtual server IP
address as the source IP address and the client’s IP address as the destination IP address.
This cycle continues for the remaining frames to transmit all the client’s mail, until a FIN
frame is received.
The following commands are used at Site 1 in San Jose to configure the proxy IP address for
the remote server in Denver:
For more information on proxy IP address, see “Proxy IP Addresses” on page 190.
If you want to configure proxy IP addresses on Site 2, the following commands are issued on
the Denver switch:
Because of the way IP routing works, BGP-based GSLB allows for the routing protocols to
route DNS requests to the closest location, which then returns IP addresses of that particular
site, locking in the requests to that site. In effect, the Internet is making the decision of the best
location for you, avoiding the need for advanced GSLB.
Some corporations use more than one ISP as a way to increase the reliability and bandwidth of
their Internet connection. Enterprises with more than one ISP are referred to as being multi-
homed. Instead of multi-homing a network to several other networks, BGP-based GSLB
enables you to multi-home a particular piece of content (DNS information) to the Internet by
distributing the IP blocks that contain that content to several sites.
When using DNS to select the site, a single packet is used to make the decision so that the
request will not be split to different locations. Through the response to the DNS packet, a client
is locked in to a particular site, resulting in efficient, consistent service that cannot be achieved
when the content itself is shared.
For example, in multi-homing, you can connect a data center to three different Internet provid-
ers and have one DNS server that has the IP address 1.1.1.1. In this case, all requests can be
received via any given feed but are funneled to the same server on the local network. In BGP-
based GSLB, the DNS server (with the IP address 1.1.1.1) is duplicated and placed local to the
peering point instead of having a local network direct traffic to one server.
When a particular DNS server receives a request for a record (in this case, the GbESM), it
returns with the IP address of a virtual server at the same site. This can be achieved using the
local option (/cfg/slb/gslb/rule 1/metric 2/gmetric local) in the GSLB config-
uration. If one site is saturated, then the switch will failover and deliver the IP address of a
more available site.
For more information on configuring your switch to support BGP routing, see “Border Gate-
way Protocol” on page 121.
“Overview” on page 250. This section describes the benefits and filtering criteria to allow
for extensive filtering at the IP and TCP/UDP levels.
“Filtering Benefits” on page 250
“Filtering Criteria” on page 250
“Stacking Filters” on page 252
“Overlapping Filters” on page 253
“The Default Filter” on page 253
“VLAN-based Filtering” on page 255
“Optimizing Filter Performance” on page 257
“Filter Logs” on page 257
“IP Address Ranges” on page 259
“Cache-Enabled versus Cache-Disabled Filters” on page 259
“TCP Rate Limiting” on page 260. This section explains how TCP rate limiting allows
you to monitor the number of new TCP connections within a configurable time window.
“Tunable Hash for Filter Redirection” on page 265 allows you to select any hash parame-
ter for filter redirection.
“Filter-based Security” on page 266. This section provides an example of configuring fil-
ters for providing the best security.
“Network Address Translation” on page 272. This section provides two examples: Internal
client access to the Internet and external client access to the server.
“Matching TCP Flags” on page 279 and “Matching ICMP Message Types” on page 284.
Describes the ACK filter criteria which provides greater filtering flexibility and lists
ICMP message types that can be filtered respectively.
249
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview
GbE Switch Modules are used to deliver content efficiently and secure your servers from unau-
thorized intrusion, probing, and Denial-of-Service (DoS) attacks. Alteon OS includes exten-
sive filtering capabilities at the IP and TCP/UDP levels.
Filtering Benefits
Layer 3 (IP) and Layer 4 (TCP port) filtering give the network administrator a powerful tool
with the following benefits:
Increased security for server networks
Filters can be configured to allow or deny traffic according to various IP address, protocol,
and Layer 4 port criteria. You can also secure your switch from further virus attacks by
allowing you to configure the switch with a list of potential offending string patterns. For
more information, see “Layer 7 Deny Filters” on page 428.
This gives the administrator control over the types of traffic permitted through the switch.
Any filter can be optionally configured to generate system log messages for increased
security visibility.
Used to map the source or destination IP addresses and ports
Generic Network Address Translation (NAT) can be used to map the source or destination
IP addresses and the ports of private network traffic to or from advertised network IP
addresses and ports.
Filtering Criteria
Up to 1024 filters can be configured on the GbE Switch Module. Descriptive names can be
used to define filters. Each filter can be set to allow, deny, redirect, or translate traffic based on
any combination of the following filter options:
sip: source IP address or range (see “IP Address Ranges” on page 259)
dip: destination IP address or range (dip and dmask)
proto: protocol number or name as shown in Table 12-1 on page 251.
1 icmp
2 igmp
6 tcp
17 udp
89 ospf
112 vrrp
sport: TCP/UDP application or source port as shown in Table 10-3 on page 182, or
source port range (such as 31000-33000)
NOTE – The service number specified on the switch must match the service specified on the server.
dport: TCP/UDP application or destination port as shown in Table 10-3 on page 182, or
destination port range (such as 31000-33000)
invert: reverse the filter logic in order to activate the filter whenever the specified condi-
tions are not met.
Advanced filtering options such as TCP flags (page 279) or ICMP message types (page 284)
are also available.
Using these filter criteria, you could create a single filter that blocks external Telnet traffic to
your main server except from a trusted IP address. Another filter could warn you if FTP access
is attempted from a specific IP address. Another filter could redirect all incoming e-mail traffic
to a server where it can be analyzed for spam. The options are nearly endless.
Filtering Actions
A filtering action (/cfg/slb/filt/action) instructs the filter what to do once the filtering
criteria are matched.
Stacking Filters
Stacking filters are assigned and enabled on a per-port basis. Each filter can be used by itself or
in combination with any other filter on any given switch port. The filters are numbered 1
through 1024 on GbE Switch Modules. When multiple filters are stacked together on a port,
the filter’s number determines its order of precedence: the filter with the lowest number is
checked first. When traffic is encountered at the switch port, if the filter matches, its config-
ured action takes place and the rest of the filters are ignored. If the filter criteria do not match,
the next filter is tried.
As long as the filters do not overlap, you can improve filter performance by making sure that
the most heavily utilized filters are applied first. For example, consider a filter system where
the Internet is divided according to destination IP address:
Assuming that traffic is distributed evenly across the Internet, the largest area would be the
most utilized and is assigned to Filter 1. The smallest area is assigned to Filter 4.
Overlapping Filters
Filters are permitted to overlap, although special care should be taken to ensure the proper
order of precedence. When overlapping filters are present, the more specific filters (those that
target fewer addresses or ports) should be applied before the generalized filters.
Example:
In this example, Filter 2 must be processed prior to Filter 3. If Filter 3 was permitted to take
precedence, Filter 2 could never be triggered.
In this example, the default filter is defined as Filter 1024 in order to give it the lowest order of
precedence. All matching criteria in Filter 1024 are set to the any state. If no other filter acts
on the traffic, Filter 1024 processes it, denying and logging unwanted traffic.
Default filters are recommended (but not required) when configuring filters for IP traffic con-
trol and redirection. Using default filters can increase session performance but takes some of
the session binding resources. If you experience an unacceptable number of binding failures, as
shown in the Server Load Balancing Maintenance Statistics (/stats/slb/maint), you
may wish to remove some of the default filters.
VLAN-based Filtering
Filters are applied per switch, per port, or per VLAN. VLAN-based filtering allows a single
switch to provide differentiated services for multiple customers, groups, or departments. For
example, you can define separate filters for Customers A and B on the same switch on two dif-
ferent VLANs. If VLANs are assigned based on data traffic, for example, ingress traffic on
VLAN 1, egress traffic on VLAN 2, and management traffic on VLAN 3, filters can be applied
accordingly to the different VLANs.
In the following example shown in Figure 12-4, Filter 2 is configured to allow local clients on
VLAN 20 to browse the Web, and Filter 3 is configured to allow local clients on VLAN 30 to
Telnet anywhere outside the local intranet. Filter 1024 is configured to deny ingress traffic
from VLAN 70.
Unique filters per
VLAN (up to 1024)
Filter 3
Filter 1024
2. Configure filter 3 to allow local clients to Telnet anywhere outside the local intranet and
then assign VLAN 30 to the filter.
The filter must recognize and allow TCP traffic to reach the local client destination IP
addresses if originating from a Telnet source port:
3. Configure Filter 1024 to deny traffic and then assign VLAN 70 to the filter.
As a result, ingress traffic from VLAN 70 is denied entry to the switch.
It is a recommended practice to number filters in small increments (5, 10, 15, 20, etc.) to make
it easier to insert filters into the list at a later time. However, as the number of filters increases,
you can improve performance by minimizing the increment between filters. For example, fil-
ters numbered 2, 4, 6, and 8 are more efficient than filters numbered 20, 40, 60, and 80. Peak
processing efficiency is achieved when filters are numbered sequentially beginning with 1.
Filter Logs
To provide enhanced troubleshooting and session inspection capability, packet source and des-
tination IP addresses are included in filter log messages. Filter log messages are generated
when a Layer 3/Layer 4 filter is triggered and has logging enabled. The messages are output to
the management module, system host log (syslog), and the Web-based interface message
window.
Example: A network administrator has noticed a significant number of ICMP frames on one
portion of the network and wants to determine the specific sources of the ICMP messages. The
administrator uses the Command Line Interface (CLI) to create and apply the following filter:
When applied to one or more switch ports, this simple filter rule will produce log messages
that show when the filter is triggered, and what the IP source and destination addresses were
for the ICMP frames traversing those ports.
Example: Filter log message output is shown below, displaying the filter number, port, source
IP address, and destination IP address:
IP Address Ranges
You can specify a range of IP addresses for filtering both the source and/or destination IP
address for traffic. When a range of IP addresses is needed, the source IP (sip) address or des-
tination IP (dip) address defines the base IP address in the desired range. The source mask
(smask) or destination mask (dmask) is the mask that is applied to produce the range.
For example, to determine if a client request’s destination IP address should be redirected to
the cache servers attached to a particular switch, the destination IP address is masked (bit-wise
AND) with the dmask and then compared to the destination IP address.
As another example, the switch could be configured with two filters so that each would handle
traffic filtering for one half of the Internet. To do this, you could define the following parameters:
Table 12-2 Filtering IP Address Ranges
Some types of filtering (TCP flag and ICMP message type filtering) require each frame in the
session to be filtered separately. These filters are known as cache-disabled.
All filters are cache-enabled by default. To change the status of a filter, use the following com-
mands:
NOTE – Cache-enabled filters should not be applied to the same ports as cache-disabled filters.
Otherwise, the cache-disabled filters could potentially be bypassed for frames matching the
cache-enabled criteria.
The TCP rate limit is defined as the maximum number of TCP connection requests within a
configured time window. The switch monitors the number of new TCP connections and when it
exceeds the configured limit, any new TCP connection request is blocked. When this occurs,
the client is said to be held down. The client is held down for a specified duration of time, after
which new TCP connection requests from the client are allowed to pass through again.
NOTE – Both, time window and hold duration are the same for all TCP rate filters.
Figure 12-5 on page 261 shows four clients configured for TCP rate limits based on source IP
address. Clients 1 and 4 have the same TCP rate limit of 10 connections per second. Client 2
has a TCP rate limit of 20 connections per second. Client 3 has a TCP rate limit of 30 connec-
tions per second.
When the rate of new TCP connections from clients 1, 2, 3, and 4 reach the configured thresh-
old, any new connection request from the client is blocked for a pre-determined amount of
time. If the client’s IP address and the configured filter do not match, then the default filter is
applied.
In Figure 12-5, the default filter 1024 configured for Any is applied for all other connection
requests.
Real Servers
Internet GbESM
>> TCP Advanced menu # maxcon 3 (Set the max. number of connections)
The maxcon value is specified in units of 10. The value of 3 indicates a total of 30 TCP con-
nections.
3. Set the timewin parameter and calculate the total time window in seconds.
The total time window is a multiple of fastage (for information on fastage, see the Con-
figuration chapter in the Alteon OS Command Reference). The total time window is calculated
with the following equation:
If the default value for fastage is 1 second, then the configured total time window is 3 sec-
onds.
NOTE – From Step 2 and 3, the TCP rate limit defined as the maximum number of connections
over a specified time window is 30 TCP connections for every 3 seconds (or 10 TCP connec-
tions per second).
For a small site, 30 TCP connections per second provides a good indication if your site is being
attacked. The default is 100 TCP connections per second. For larger sites, TCP rate limit
greater than 2550 connection per second indicates the possibility that your switch is under
attack.
4. Set the holddur parameter and calculate the hold down time in minutes.
The hold down time is a multiple of slowage (for information on slowage, see the Config-
uration chapter in the Alteon OS Command Reference). The hold down time is calculated with
the following equation:
If slowage is set to the default value of 0 (2 minutes), then the configured value for hold
down time is
If a client exceeds the TCP rate limit, then the client is not allowed to make any new TCP con-
nections for 4 minutes. The following two configuration examples illustrate how to use TCP
rate limiting to limit user access based on source IP address and virtual IP address.
Any client with source IP address equal to 30.30.30.x is allowed to make 150 new TCP con-
nections per second to any single destination. When the rate limit of 150 is met, the hold down
time takes effect and the client is not allowed to make any new TCP connections to the same
destination for 10 minutes.
Real Servers
Internet GbESM S1
S2
BladeCenter
BladeCenter
All clients are limited to 100 new TCP connections/second to the server. If a client exceeds this
rate, then the client is not allowed to make any new TCP connections to the server for 40 min-
utes.
NOTE – All SLB sessions on the switch are affected when you make changes to the fastage
or slowage parameters.
Hashing on the 24-bit source IP address ensures that client requests access the same cache.
2. Set the metric for the real server group to minmisses or hash.
The source IP address is passed to the real server group for either of the two metrics.
NOTE – If firewall load balancing is enabled on the switch, the firewall load balancing filter
which hashes on source and destination IP addresses will override the tunable hash filter.
Filter-based Security
This section provides an example of configuring filters for providing the best security. It is rec-
ommended that you configure filters to deny all traffic except for those services that you spe-
cifically wish to allow. Consider the following sample network:
Internet
BladeCenter
In this example, the network is made of local clients on a collector switch, a Web server, a mail
server, a domain name server, and a connection to the Internet. All the local devices are on the
same subnet.
In this example, the administrator wishes to install basic security filters to allow only the fol-
lowing traffic:
NOTE – Since IP address and port information can be manipulated by external sources, filter-
ing does not replace the necessity for a well-constructed network firewall.
In this example, all filters are applied only to the switch port that connects to the Internet. If
intranet restrictions are required, filters can be placed on switch ports connecting to local
devices.
Also, filtering is not limited to the few protocols and TCP or UDP applications shown in this
example. See Table 10-3 on page 182 for a list of well-known applications ports and Table
12-1 on page 251 for a list of supported protocols.
2. At the GbE Switch Module, create a default filter to deny and log unwanted traffic.
The default filter is defined as Filter 1024 in order to give it the lowest order of precedence:
NOTE – Because the proto parameter is not tcp or udp, the source port (sport) and desti-
nation port (dport) values are ignored and may be excluded from the filter configuration.
3. Create a filter that will allow external HTTP requests to reach the Web server.
The filter must recognize and allow TCP traffic with the Web server’s destination IP address
and HTTP destination port:
4. Create a pair of filters to allow incoming and outgoing mail to and from the mail server.
Filter 2 allows incoming mail to reach the mail server, and Filter 3 allows outgoing mail to
reach the Internet:
5. Create a filter that will allow local clients to browse the Web.
The filter must recognize and allow TCP traffic to reach the local client destination IP addresses
if traffic originates from any HTTP source port:
>> Filter 3#
../filt 4 (Select the menu for Filter 4)
>> Filter 4#
sip any (From any source IP address)
>> Filter 4#
dip 205.177.15.0 (To base local network dest. address)
>> Filter 4#
dmask 255.255.255.0 (For entire subnet range)
>> Filter 4#
proto tcp (For TCP protocol traffic)
>> Filter 4#
sport http (From any source HTTP port)
>> Filter 4#
dport any (To any destination port)
>> Filter 4#
action allow (Allow matching traffic to pass)
>> Filter name allow clients Web browse (Provide a descriptive name for the
4#
filter)
>> Filter 4# ena (Enable the filter)
6. Create a filter that will allow local clients to Telnet anywhere outside the local intranet.
The filter must recognize and allow TCP traffic to reach the local client destination IP
addresses if originating from a Telnet source port:
For UDP:
8. Assign the filters to the switch port that connects to the Internet.
>> Filter 9# ../port EXT1 (Select the SLB port 1 to the Internet)
>> SLB Port EXT1# add 1-9 (Add filters 1-9 to port EXT1)
>> SLB Port EXT1# add 1024 (Add the default filter to port EXT1)
>> SLB Port EXT1# filt enable (Enable filtering for port EXT1)
Alteon OS allows you to add and remove a contiguous block of filters with a single command.
Examine the resulting information. If any settings are incorrect, make appropriate changes.
>> SLB Port EXT1# save (Save for restore after reboot)
Check that all SLB parameters are working according to expectation. If necessary, make any
appropriate configuration changes and then check the information again.
NOTE – Changes to filters on a given port do not take effect until the port’s session information
is updated (every two minutes or so). To make filter changes take effect immediately, clear the
session binding table for the port (see the /oper/slb/clear command in the Alteon OS
Command Reference).
Provides a type of firewall by hiding internal IP addresses and increases network security.
Enables a company to use more internal IP addresses. Since they're used internally only,
there's no possibility of conflict with public IP addresses used by other companies and
organizations.
In the following NAT examples, a company has configured its internal network with private IP
addresses. A private network is one that is isolated from the global Internet and is, therefore,
free from the usual restrictions requiring the use of registered, globally unique IP addresses.
With NAT, private networks are not required to remain isolated. NAT capabilities within the
switch allow internal, private network IP addresses to be translated to valid, publicly adver-
tised IP addresses and back again. NAT can be configured in one of the following two ways:
Static NAT provides a method for direct mapping of one predefined IP address (such as a
publicly available IP address) to another (such as a private IP address)
Dynamic NAT provides a method for mapping multiple IP addresses (such as a group of
internal clients) to a single IP address (to conserve publicly advertised IP addresses)
Static NAT
The static NAT (non-proxy) example requires two filters: one for the external client-side
switch port, and one for the internal, server-side switch port. The client-side filter translates
incoming requests for the publicly advertised server IP address to the server’s internal private
network address. The filter for the server-side switch port reverses the process, translating the
server’s private address information to a valid public address.
In this example, clients on the Internet require access to servers on the private network:
GbESM Internet
BladeCenter
Within each filter, the smask and dmask values are identical.
All parameters for both filters are identical except for the NAT direction. For Filter 10,
nat source is used. For Filter 11, nat dest is used.
Filters for static (non-proxy) NAT should take precedence over dynamic NAT filters (fol-
lowing example). Static filters should be given lower filter numbers.
Dynamic NAT
Dynamic NAT is a many-to-one solution: multiple clients on the private subnet take advantage
of a single external IP address, thus conserving valid IP addresses. In this example, clients on
the internal private network require TCP/UDP access to the Internet:
Outbound filter:
NAT source info
public address
GbESM Internet
Inbound proxy on
public address
Internal BladeCenter
BladeCenter
Servers
You may directly connect the clients to the switch if the total number of clients is less than or
equal to the switch ports.
NOTE – Dynamic NAT can also be used to support ICMP traffic for PING.
This example requires a NAT filter to be configured on the switch port that is connected to the
internal clients. When the NAT filter is triggered by outbound client traffic, the internal private
IP address information on the outbound packets is translated to a valid, publicly advertised IP
address on the switch. In addition, the public IP address must be configured as a proxy IP
address on the switch port that is connected to the internal clients. The proxy performs the
reverse translation, restoring the private network addresses on inbound packets.
For more information on proxy IP address, see “Proxy IP Addresses” on page 190.
NOTE – The invert option in this example filter makes this specific configuration easier but
is not a requirement for dynamic NAT.
NOTE – Dynamic NAT solutions apply only to TCP/UDP traffic. Also, filters for dynamic
NAT should be given a higher numbers than any static NAT filters (see “Static NAT” on page
272).
Because of the way FTP works in active mode, a client sends information on the control chan-
nel, information that reveals their private IP address, out to the Internet. However, the switch
filter only performs NAT translation on the TCP/IP header portion of the frame, preventing a
client with a private IP address from doing active FTP.
The switch can monitor the control channel and replace the client 's private IP address with a
proxy IP address defined on the switch. When a client in active FTP mode sends a port com-
mand to a remote FTP server, the switch will look into the data part of the frame and modify
the port command as follows:
The real server (client) IP address will be replaced by a public proxy IP address. If VMA
is enabled, two proxy IP addresses are used instead of a single one.
The real server (client) port will be replaced with a proxy port.
Outbound filter: (Pool of proxy IP
NAT source info addresses instead
of a single proxy
public address IP address)
BladeCenter
BladeCenter
INT1 GbESM Internet
Real servers
10.10.10.x 205.178.17.12
(Private network)
Internal
Servers Inbound proxy on
public address
You may directly connect the real servers to the switch if the total number of servers is less
than or equal to the switch ports.
2. Make sure that a source NAT filter is set up for the port:
For more information on proxy IP address, see “Proxy IP Addresses” on page 190.
Flag Description
URG Urgent
ACK Acknowledgement
PSH Push
RST Reset
SYN Synchronize
FIN Finish
Any filter may be set to match against more than one TCP flag at the same time. If there is
more than one flag enabled, the flags are applied with a logical AND operator. For example, by
setting the switch to filter SYN and ACK, the switch filters all SYN-ACK frames.
NOTE – TCP flag filters must be cache-disabled. Exercise caution when applying cache-
enabled and cache-disabled filters to the same switch port. For more information, see “Cache-
Enabled versus Cache-Disabled Filters” on page 259.
NOTE – By default, all TCP filter options are disabled. TCP flags will not be inspected unless
one or more TCP options are enabled.
EXT1 INT1
Internet
INT14
In this network, the Web servers inside the LAN must be able to transfer mail to any SMTP-
based mail server out on the Internet. At the same time, you want to prevent access to the LAN
from the Internet, except for HTTP.
SMTP traffic uses well-known TCP Port 25. The Web servers will originate TCP sessions to
the SMTP server using TCP destination Port 25, and the SMTP server will acknowledge each
TCP session and data transfer using TCP source Port 25.
Creating a filter with the ACK flag closes one potential security hole. Without the filter, the
switch would permit a TCP SYN connection request to reach any listening TCP destination
port on the Web servers inside the LAN, as long as it originated from TCP source Port 25. The
server would listen to the TCP SYN, allocate buffer space for the connection, and reply to the
connect request. In some SYN attack scenarios, this could cause the server's buffer space to
fill, crashing the server or at least making it unavailable.
A filter with the ACK flag enabled prevents external devices from beginning a TCP connection
(with a TCP SYN) from TCP source Port 25. The switch drops any frames that have the ACK
flag turned off.
1. An allow filter for TCP traffic from LAN that allows the Web servers to pass SMTP
requests to the Internet.
2. A filter that allows SMTP traffic from the Internet to pass through the switch only if the
destination is one of the Web servers, and the frame is an acknowledgment (SYN-ACK)
of a TCP session.
>> Filter 10# ../filt 15 (Select a filter for Internet SMTP ACKs)
>> Filter 15# sip any (From any source IP address)
>> Filter 15# sport smtp (From well-known source SMTP port)
>> Filter 15# proto tcp (For TCP traffic)
>> Filter 15# dip 203.122.186.0 (To the Web servers’ IP address)
>> Filter 15# dmask 255.255.255.0 (To the entire subnet range)
>> Filter 15# dport any (To any destination port)
>> Filter 15# action allow (Allow matching traffic to pass)
>> Filter 15# ena (Enable the filter)
>> Filter 15# adv/tcp (Select the advanced TCP menu)
>> TCP Advanced# ack ena (Match acknowledgments only)
>> TCP Advanced# syn ena (Match acknowledgments only)
3. A filter that allows SMTP traffic from the Internet to pass through the switch only if the
destination is one of the Web servers, and the frame is an acknowledgment (ACK-PSH)
of a TCP session.
>> Filter 15# ../filt 16 (Select a filter for Internet SMTP ACKs)
>> Filter 16# sip any (From any source IP address)
>> Filter 16# sport smtp (From well-known source SMTP port)
>> Filter 16# proto tcp (For TCP traffic)
>> Filter 16# dip 203.122.186.0 (To the Web servers’ IP address)
>> Filter 16# dmask 255.255.255.0 (To the entire subnet range)
>> Filter 16# dport any (To any destination port)
>> Filter 16# action allow (Allow matching traffic to pass)
>> Filter 16# ena (Enable the filter)
>> Filter 16# adv/tcp (Select the advanced TCP menu)
>> TCP Advanced# ack ena (Match acknowledgments only)
>> TCP Advanced# psh ena (Match acknowledgments only)
4. A filter that allows trusted HTTP traffic from the Internet to pass through the switch to
the Web servers.
>> Filter 16 Advanced# /cfg/slb/filt 17(Select a filter for incoming HTTP traffic)
>> Filter 17# sip any (From any source IP address)
>> Filter 17# sport http (From well-known source HTTP port)
>> Filter 17# proto tcp (For TCP traffic)
>> Filter 17# dip 203.122.186.0 (To the Web servers’ IP address)
>> Filter 17# dmask 255.255.255.0 (To the entire subnet range)
>> Filter 17# dport http (To well-known destination HTTP port)
>> Filter 17# action allow (Allow matching traffic to pass)
>> Filter 17# ena (Enable the filter)
5. A filter that allows HTTP responses from the Web servers to pass through the switch to
the Internet.
>> Filter 17# ../filt 18 (Select a filter for outgoing HTTP traffic)
>> Filter 18# sip 203.122.186.0 (From the Web servers’ source IP address)
>> Filter 18# smask 255.255.255.0 (From the entire subnet range)
>> Filter 18# sport http (From well-known source HTTP port)
>> Filter 18# proto tcp (For TCP traffic)
>> Filter 18# dip any (To any destination IP address)
>> Filter 18# dport http (To well-known destination HTTP port)
>> Filter 18# action allow (Allow matching traffic to pass)
>> Filter 18# ena (Enable the filter)
>> Filter
18# ../filt 1024 (Select a default filter)
>> Filter
1024# sip any (From any source IP address)
>> Filter
1024# dip any (To any destination IP address)
>> Filter
1024# action deny (Block matching traffic)
>> 1024# name deny matching traffic (Provide a descriptive name for the
Filter
filter)
>> Filter 1024# ena (Enable the filter)
The command to enable or disable ICMP message type filtering is entered from the Advanced
Filtering menu as follows:
For any given filter, only one ICMP message type can be set at any one time. The any option
disables ICMP message type filtering. The list option displays a list of the available ICMP
message types that can be entered.
NOTE – ICMP message type filters must be cache-disabled. Exercise caution when applying
cache-enabled and cache-disabled filters to the same switch port. For more information, see
“Cache-Enabled versus Cache-Disabled Filters” on page 259.
“Overview” on page 288. Application redirection helps reduce the traffic congestion dur-
ing peak loads by accessing locally cached information. This section also discusses how
performance is improved by balancing cached requests across multiple servers.
“Cache Redirection Configuration Example” on page 290. This section provides a step-
by-step procedure on how to intercept all Internet bound HTTP requests (on default TCP
port 80) and redirect them to the cache servers.
“IP Proxy Addresses for NAT” on page 295. This section discusses the benefits of trans-
parent proxies when used with application redirection.
“Excluding Noncacheable Sites” on page 297. This section describes how to filter out
applications that keep real-time session information from being redirected to cache serv-
ers.
287
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview
Most of the information downloaded from the Internet is not unique, as clients will often
access the Web page many times for additional information or to explore other links. Duplicate
information also gets requested as the components that make up Internet data at a particular
Web site (pictures, buttons, frames, text, and so on) are reloaded from page to page. When you
consider this scenario in the context of many clients, it becomes apparent that redundant
requests can consume a considerable amount of your available bandwidth to the Internet.
Application redirection can help reduce the traffic congestion during peak loads. When Appli-
cation redirection filters are properly configured for the Alteon OS-powered switch, outbound
client requests for Internet data are intercepted and redirected to a group of application or
cache servers on your network. The servers duplicate and store inbound Internet data that has
been requested by your clients. If the servers recognize a client’s outbound request as one that
can be filled with cached information, the servers supply the information rather than send the
request across the Internet.
In addition to increasing the efficiency of your network, accessing locally cached information
can be much faster than requesting the same information across the Internet.
Client Switch
Router
Internet
Client Switch
Clients
Congestion
Targets Router
The network needs a solution that addresses the following key concerns:
GbESM
BladeCenter
Internet
If you have more clients than switch ports, then connect the clients to a layer 2 switch.
Adding a GbE Switch Module with Layer 4 software addresses these issues:
You must connect to the GbE Switch Module Command Line Interface (CLI) as the
administrator.
Layer 4 (SLB) software must be enabled.
NOTE – For details about the procedures above, and about any of the menu commands
described in this example, see the Alteon OS Command Reference.
In this example, a GbE Switch Module is placed between the clients and the border gateway to
the Internet. The switch will be configured to intercept all Internet bound HTTP requests (on
default TCP port 80), and redirect them to the cache servers. The switch will distribute HTTP
requests equally to the cache servers based on the destination IP address of the requests. If the
cache servers do not have the requested information, then the cache servers behave like the client
and forwards the request out to the internet.
Also, filters are not limited to the few protocols and TCP or UDP applications shown in this
example. See Table 10-3 on page 182 for a list of well-known applications ports and Table
12-1 on page 251 for a list of supported protocols.
More complex network topologies can be used if configuring IP proxy addresses (see “IP
Proxy Addresses for NAT” on page 295).
For this example, the three cache real servers have the following IP addresses on the same IP
subnet:
Server A 200.200.200.2
Server B 200.200.200.3
Server C 200.200.200.4
To configure an IP interface for this example, enter this command from the CLI:
NOTE – The IP interface and the real servers must be in the same subnet. This example
assumes that all ports and IP interfaces use default VLAN 1, requiring no special VLAN con-
figuration for the ports or IP interface.
>> Real server group 1# metric minmisses (Metric for minimum cache misses.)
7. Verify that server processing is disabled on the ports supporting application redirection.
NOTE – Do not use the “server” setting on a port with Application Redirection enabled. Server
processing is used only with server load balancing. To disable server processing on the port,
use the commands on the /cfg/slb/port menu, as described in the Alteon OS Command
Reference.
8. Create a filter that will intercept and redirect all client HTTP requests.
The filter must be able to intercept all TCP traffic for the HTTP destination port and must redi-
rect it to the proper port on the real server group:
Also, if NAT and proxy addresses are used on the switch (see Step 3 on page 291), the rport
parameter must be configured for all application redirection filters. Take care to use the proper
port designation with rport: if the transparent proxy operation resides on the host, the well-
known port 80 (or HTTP) is probably required. If the transparent proxy occurs on the switch,
make sure to use the service port required by the specific software package.
See “IP Proxy Addresses for NAT” on page 295 for more information on IP proxy addresses.
NOTE – When the proto parameter is not TCP or UDP, then sport and dport are ignored.
>> Filter 1024# ../port EXT3 (Select the client port EXT3)
>> SLB Port EXT3# add 2 (Add filter 2 to port EXT3)
>> SLB Port EXT3# add 1024 (Add the default filter to port EXT3)
>> SLB Port EXT3# filt enable (Enable filtering for port EXT3)
>> SLB Port EXT3# ../port EXT4 (Select the client port EXT4)
>> SLB Port EXT4# add 2 (Add filter 2 to port EXT4)
>> SLB Port EXT4# add 1024 (Add the default filter to port EXT4)
>> SLB Port EXT4# filt enable (Enable filtering for port EXT4)
>> SLB Port EXT4# /cfg/slb (Select Server Load Balancing Menu)
>> Layer 4# on (Activate Layer 4 software services)
>> Layer 4# apply (Make your changes active)
>> Layer 4# cur (View current settings)
NOTE – SLB must be turned on in order for application redirection to work properly. The on
command is valid only if the optional Layer 4 software is enabled on your switch (see “Acti-
vating Optional Software” in the Alteon OS Command Reference).
12. Examine the resulting information from the cur command. If any settings are incorrect,
make appropriate changes.
Check that all SLB parameters are working according to expectation. If necessary, make any
appropriate configuration changes and then check the information again.
NOTE – Changes to filters on a given port only effect new sessions. To make filter changes
take effect immediately, clear the session binding table for the port (see the /oper/slb/
clear command in the Alteon OS Command Reference).
For more conceptual information on delayed binding, see “Delayed Binding” on page 200.
With proxy IP addresses configured on ports that use redirection filters, the switch can
redirect client requests to servers located on any subnet.
The switch can perform transparent substitution for all source and destination addresses,
including destination port remapping. This provides support for comprehensive, fully-
transparent proxies. No additional client configuration is needed.
The following procedure can be used for configuring proxy IP addresses:
1. Configure proxy IP addresses and enable proxy for the client ports.
Each of the ports using redirection filters require proxy IP addresses. If Virtual Matrix Archi-
tecture (VMA) is enabled, you must configure both proxy IP addresses. If VMA is disabled,
only the client port with filters require proxy IP addresses.
Once proxy IP addresses are established, configure each application redirection filter (Filter 2
in our example) with the real server TCP or UDP port to which redirected traffic will be sent.
In this case, the requests are mapped to a different destination port (8080). You must also
enable proxies on the real servers:
NOTE – This configuration is not limited to HTTP (Web) service. Other TCP/IP services can
be configured in a similar fashion. For example, if this had been a DNS redirect, rport would
be sent to well-known port 53 (or the service port you want to remap to). For a list of other
well-known services and ports, see the Table 10-3 on page 182.
4. Check server statistics to verify that traffic has been redirected based on filtering criteria:
To prevent such sites from being redirected to cache servers, create a filter that allows this spe-
cific traffic to pass normally through the switch. This filter must have a higher precedence (a
lower filter number) than the application redirection filter.
For example, if you want to prevent a popular Web-based game site on subnet 200.10.10.*
from being redirected, you could add the following to the previous example configuration:
“Real Server Health Checks” on page 301. This section explains the switch’s default
health check, which checks the status of each service on each real server every two
seconds.
“Link Health Checks” on page 302. This section describes how to perform Layer 1 health
checking on an Intrusion Detection Server (IDS).
“TCP Health Checks” on page 303. TCP health checks help verify the TCP applications
that cannot be scripted.
“ICMP Health Checks” on page 303. This section explains how ICMP health checks are
used for UDP services.
“Script-Based Health Checks” on page 304. This section describes how to configure the
switch to send a series of health-check requests to real servers or real server groups and
monitor the responses.
Application-based health checks:
“HTTP Health Checks” on page 309. This section provides examples of HTTP-based
health checks using hostnames.
“UDP-Based DNS Health Checks” on page 311. This section explains the functional-
ity of the DNS Health Checks using UDP packets.
“FTP Server Health Checks” on page 312. This section describes how the File Trans-
fer Protocol (FTP) server is used to perform health checks and explains how to con-
figure the switch to perform FTP health checks.
“POP3 Server Health Checks” on page 313. This section explains how to use Post
Office Protocol Version 3 (POP3) mail server to perform health checks between a cli-
ent system and a mail server and how to configure the switch for POP3 health checks.
299
24R9742, March 2006
Alteon OS 21.0 Application Guide
“SMTP Server Health Checks” on page 314. This section explains how to use Simple
Mail Transfer Protocol (SMTP) mail server to perform health checks between a client
system and a mail server and how to configure the switch for SMTP health checks.
“IMAP Server Health Checks” on page 315. This section describes how the mail
server Internet Message Access Protocol (IMAP) protocol is used to perform health
checks between a client system and a mail server.
“NNTP Server Health Checks” on page 316. This section explains how to use Net-
work News Transfer Protocol (NNTP) server to perform health checks between a cli-
ent system and a mail server and how to configure the switch for NNTP health checks
“RADIUS Server Health Checks” on page 317. This section explains how the
RADIUS protocol is used to authenticate dial-up users to Remote Access Servers
(RASs).
“HTTPS/SSL Server Health Checks” on page 318. This section explains how the
switch queries the health of the SSL servers by sending an SSL client “Hello” packet
and then verifies the contents of the server’s “Hello” response.
“WAP Gateway Health Checks” on page 318. This section discusses how the switch
provides a connectionless WSP health check for WAP gateways.
“LDAP Health Checks” on page 321. This section describes how to configure the
switch to perform Lightweight Directory Access Protocol (LDAP) health checks for
the switch to determine whether or not the LDAP server is running.
“Windows Terminal Server Health Checks” on page 322. This section describes how
to configure the switch to perform Windows Terminal Server health checks.
“ARP Health Checks” on page 323. This section describes how to perform health checks
on Intrusion Detection Servers (IDS) that do not have full TCP/IP stack support.
“Failure Types” on page 324. This section explains the service failed and server failed
states.
By default, the switch checks the status of each service on each real server every two seconds.
Sometimes, the real server may be too busy processing connections to respond to health
checks. If a service does not respond to four consecutive health checks, the switch, by default,
declares the service unavailable. You can modify both the health check interval and the number
of retries.
NOTE – Health checks are performed sequentially when used in conjunction with a virtual
server configured with multiple services and groups. As a result, the actual health-check inter-
val could vary significantly from the value set for it using the inter parameter.
The server is considered to be up when the link (connection) is present, and down when the
link is absent. Many IDSs have two physical interfaces. One is used to detect intrusions, and
the other is used to generate logging. The first interface detects intrusions but it does not have
TCP/IP stack. So it is not possible to perform any health check other than Layer 1 health
checking on the IDS. As long as the physical link between the switch and the IDS is up, it indi-
cates the IDS is alive.
To perform this health check, a link option has been added to the real server group health com-
mand. The real server number is used to determine which port the server is connected to. For
example, real server 1 is assumed to be connected to port 1. The valid IDS real server numbers
are from 1 to 26 when health check is in use.
>> # /cfg/slb/group 1
2. Set the health check type to link for real server group 1.
Session switches monitor the health of servers and applications by sending Layer 4 connection
requests (TCP SYN packets) for each load-balanced TCP service to each server in the server
group on a regular basis. The rate at which these connection requests are sent is a user-config-
urable parameter. These connection requests identify both failed servers and failed services on
a healthy server. When a connection request succeeds, the session switch quickly closes the
connection by sending a TCP FIN (finished) packet.
NOTE – TCP health check is a default health check after you have configured the switch for a
particular service.
>> # /cfg/slb/group 1
NOTE – Only TCP services can be health checked, since UDP protocols are usually not ASCII
based.
NOTE – Health check scripts can only be set up via the command line interface, but once
entered, can be assigned as the health-check method using SNMP or the Browser-Based Inter-
face (BBI).
Script Format
The general format for health-check scripts is shown below:
NOTE – If you are doing HTTP 1.1 pipelining, you need to individually open and close each
response in the script.
Each script should start with the command open port <protocol port number>. The
next line can be either a send or expect.
The first word is the method. This is usually get; however, HTTP supports several other
commands, including put and head. The second word indicates the content desired, or
request-URI, and the third word represents the version of the protocol used by the client.
If you supplied HTTP/1.1 for the protocol version, you would also have to add in the fol-
lowing line: Host: www.hostname.com
Example: GET /index.html HTTP/1.1 (press Enter key)
Host: www.hostname.com (press Enter key twice)
This is known as a host header. It is important to include because most Web sites now
require it for proper processing. Host headers were optional in HTTP/1.0 but are required
when you use HTTP/1.1+.
In order to tell the application server you have finished entering header information, a
blank line of input is needed after all headers. At this point, the URL will be processed and
the results returned to you.
NOTE – If you make an error, enter rem to remove the last typed script line entered. If you
need to remove more than one line, enter rem for each line that needs to be removed.
The switch provides the “\” prompt, which is one enter key stroke. When using the send
command, note what happens when you type the send command with the command
string. When you type send, press enter and allow the switch to format the command
string (that is, \ versus \\).
Scripting Guidelines
Use generic result codes that are standard and defined by the RFC, as applicable. This
helps ensure that if the server software changes, the servers won't start failing unexpect-
edly.
Search only for the smallest and most concise piece of information possible. Each script
cannot exceed 1K in size, so use the space wisely.
Avoid tasks that may take a long time to perform or the health check will fail. For exam-
ple, avoid tasks that exceed the interval for load balancing.
NOTE – If you are using the CLI to create a health check script, you must use quotes (“) to
indicate the beginning and end of each command string.
open 80
send "GET /index.html HTTP/1.1\\r\\nHOST:www.hostname.com\\r\\n\\r\\n"
expect "HTTP/1.1 200"
close
open 80
send "GET /script.cgi HTTP/1.1\\r\\nHOST:www.hostname.com\\r\\n\\r\\n"
expect "HTTP/1.1 200"
close
open 443
…
close
NOTE – When you are using the command line interface to enter the send string as an argu-
ment to the send command, you must type two “\”s before an “n” or “r.” If you are instead
prompted for the line, that is, the text string is entered after hitting <return>, then only one “\”
is needed before the “n” or “r.”
>> # /info/slb/real 1
1: 205.178.13.225, 00:00:00:00:00:00, vlan 1, port 0, health 4, FAILED
real ports:
script 1, DOWN, current
send GET / HTTP/1.0\r\n\r\n
expect HTTP/1.0 200
The server is not responding to the get with the expect string.
When the script succeeds in determining the health of a real server, the following information
is displayed:
>> # /info/slb/real 1
1: 205.178.13.223, 00:00:5e:00:01:24, vlan 1, port INT2, health 4, up
real ports:
script 1, up, current
If the HOST: header is required, an HTTP/1.1 GET will occur. Otherwise, an HTTP/1.0
GET will occur. HTTP health check is successful if you get a return code of 200.
Example 1:
hname = everest
dname = websystems.com
content = index.html
Health check is performed using:
GET /index.html HTTP/1.1
Host: everest.websystems.com
NOTE – If the content is not specified, the health check will revert back to TCP on the port that is being
load balanced.
Example 2:
hname = (none)
dname = raleighduram.cityguru.com
content = /page/gen/?_template=websystems
Health check is performed using:
GET /page/gen/?_template=websystems HTTP/1.1
Host: raleighduram.cityguru.com
Example 3:
hname = (none)
dname = jansus
content = index.html
hname = (none)
dname = (none)
content = index.html
Health check is performed using:
GET /index.html HTTP/1.0 (since no HTTP HOST: header is required)
Example 5:
hname = (none)
dname = (none)
content = //everest/index.html
Health check is performed using:
GET /index.html HTTP/1.1
Host: everest
2. Set the health check type to FTP for the real server group.
DNS servers can be based on both TCP and UDP protocols. With UDP-based DNS health
checks enabled, you can send TCP-based queries to one real server group and UDP-based que-
ries to another real server group.
The health check may be performed by sending a UDP-based query (for example, for
www.nortelnetworks.com), and watching for the server’s reply. The domain name to be que-
ried may be modified by specifying the content command if you need to change the
domain name.
>> # /cfg/slb/group 1
2. Set the health check type to UDP for the real server group.
NOTE – If no host name is configured, the health check is performed by sending a UDP-based
query from a dummy host and watching for the server’s reply. The reply, even though negative
(for example, “Server not found” since the query is from a dummy host), serves the purpose of
a health check, nonetheless.
In normal Internet operation, the FTP server listens on the well-known port number 21 for con-
trol connection requests. The client sends a control message which indicates the port number
on which the client is prepared to accept an incoming data connection request.
When a transfer is being set up, it is always initiated by the client. However, either the client or
the server may be the sender of data. Along with transferring user requested files, the data
transfer mechanism is also used for transferring directory listings from server to client.
NOTE – To configure the switch for FTP health checks, the FTP server must accept anony-
mous user.
2. Set the health check type to FTP for the real server group.
When the user on a client host wants to enter a message into the transport system, it establishes
an SMTP connection to its relay host and sends all mail to it.
Initially, the server host starts the POP3 service by listening on TCP port 110. When a client
host wants to make use of the service, it establishes a TCP connection with the server host.
2. Set the health check type to POP3 for the real server group..
1. Select the health check menu for the real server group.
2. Set the health check type to SMTP for the real server group..
1. Select the health check menu for the real server group.
2. Set the health check type to IMAP for the real server group..
The content option specifies the username:password value that the server tries to match in
its user database. In addition to verifying the user name and password, the database may spec-
ify the client(s) or port(s) the user is allowed to access.
NNTP is documented in RFC977. Articles are transmitted in the form specified by RFC1036.
2. Set the health check type to NNTP for the real server group.
NOTE – Network-attached storage (NAS) is hard disk storage that is set up with its own net-
work address rather than being attached to the department computer that is serving applications
to a network's workstation users. By removing storage access and its management from the
department server, both application programming and files can be served faster because they
are not competing for the same processor resources. The network-attached storage device is
attached to a local area network (typically, an Ethernet network) and assigned an IP address.
File requests are mapped by the main server to the NAS file server.
The RADIUS health check is performed using the configured real server port (rport). To
configure RADIUS health checks, use the /cfg/slb/virt <#>/service menu.
>> # /cfg/slb/group <real server group number>(Select the real server group)
>> # health radius (Specify the type of health checking)
>> # content <username>:<password> (Specify the RADIUS username:pass-
word value)
>> # /cfg/slb/advhc/secret <RADIUS-coded value>(Enter up to 32 alphanumeric char-
acters used to encrypt and decrypt
password)
Wireless Session Protocol (WSP) content health checks, the unencrypted mode of sending
WML traffic (similar to HTTPS).
Wireless Transport Layer Security (WTLS) health checks, an encrypted mode of sending
WML traffic (similar to HTTP).
Alteon OS provides a content-based health check mechanism where customized WSP packets
can be sent to the gateways, and the switch can verify the expected response, in a manner sim-
ilar to scriptable health checks.
The content of the WSP/UDP packet that is sent to the gateway can be configured as a hexa-
decimal string, which is encapsulated in a UDP packet and shipped to the server. Hence, this
byte string should include all applicable WSP headers.
The content that the switch expects to receive from the gateway is also specified in the form of
hexadecimal byte string. The switch matches each byte of this string with the received content.
If there is a mismatch of even a single byte on the received content, the gateway fails the health
check. The user can also configure an offset for the received WSP packet: a byte index to the
WSP response content from where the byte match can be performed.
>> # /cfg/slb/advhc/waphc
2. Use the sndcnt command to enter the content to be sent to the WSP gateway.
3. Enter the content that the switch expects to receive from the WSP gateway.
NOTE – A maximum of 255 bytes of input are allowed on the switch command line. You may
remove spaces in between the numbers to save space on the command line. For example, type
010203040506 instead of 01 02 03 04 05 06.
6. Because WAP gateways are UDP-based and operate on a UDP port, configure UDP ser-
vice in the virtual server menu.
>> # /cfg/slb/virt 1
>> Virtual Server 1# service (Configure virtual service 1)
Enter virtual port: 9200 (On the default WSP port)
>> Virtual Server 1 9200 Service# group 1 (Set the real server group number)
>> Virtual Server 1 9200 Service# udp ena (Enable UDP load balancing)
>> Virtual Server 1 9200 Service# apply (Apply the configuration)
The WTLS health check feature provides a WTLS Hello based health check for connection-
oriented WTLS traffic on port 9203. The switch sends a new WTLS Client Hello to the WAP
gateway, and checks to see if it receives a valid WTLS Server Hello back from the WAP Gate-
way.
2. Use the sndcnt command to enter the content to be sent to the WSP gateway.
3. Select a port number other than 9203, if you want to change the port number on which
your gateway is listening to WTLS traffic.
The LDAP health check process consists of three LDAP messages over one TCP connection:
Bind request: The switch first creates a TCP connection to the LDAP server on port 339,
which is the default port. After the connection is established, the switch initiates an LDAP
protocol session by sending an anonymous bind request to the server.
Bind response: On receiving the bind request, the server sends a bind response to the
switch. If the result code indicates that the server is alive, the switch marks the server as
up. Otherwise, the switch marks the server as down even if the switch did this because the
server did not respond within the timeout window.
Unbind request: If the server is alive, the switch sends a request to unbind the server.
This request does not require a response. It is necessary to send an unbind request as the
LDAP server may crash if too many protocol sessions are active.
If the server is up, the switch closes the TCP connection after sending the unbind request. If the
server is down, the connection is torn down after the bind response, if one arrives. The connec-
tion will also be torn down if it crosses the timeout limit, irrespective of the server’s condition.
1. Select the health check menu for the real server group.
>> # /cfg/slb/group 1
2. Set the health check type to LDAP for the real server group.
>> # # Real server group 1# ldapver <2 | 3>(Select the desired LDAP version)
To enable WTS health checking on a real server group, use the following command:
In the switch, this features allows the user to health check the Intrusion Detection Server (IDS)
by sending an ARP query. The health check consists of the following sequence of actions:
2. Looking for the session entry in the ARP table. If the entry exists in the table, that means
the real server is up, otherwise the health check has failed.
3. If the entry is present, then check the timestamp to find out if the last used time is greater
than the ARP health check interval. If it is, then delete the query, as this means that the
health check has failed.
4. Send another ARP request and repeat the above process until the timestamp shows the
last used time smaller than the ARP health check interval.
>> /cfg/slb/group 1
Failure Types
Service Failure
If a certain number of connection requests for a particular service fail, the session switch
places the service into the service failed state. While in this state, no new connection requests
are sent to the server for this service; however, if graceful real server failure is enabled
(/cfg/slb/adv/grace ena), state information about existing sessions is maintained and
traffic associated with existing sessions continues to be sent to the server. Connection requests
to, and traffic associated with, other load-balanced services continue to be processed by the
server.
Example: A real server is configured to support HTTP and FTP within two real server groups.
If a session switch detects an HTTP service failure on the real server, it removes that real
server group from the load-balancing algorithm for HTTP but keeps the real server in the mix
for FTP. Removing only the failed service from load balancing allows users access to all
healthy servers supporting a given service.
When a service on a server is in the service failed state, the session switch sends Layer 4
connection requests for the failed service to the server. When the session switch has
successfully established a connection to the failed service, the service is restored to the load-
balancing algorithm.
Server Failure
If all load-balanced services supported on a server fail to respond to switch connection requests
within the specified number of attempts, then the server is placed in the server failed state.
While in this state, no new connection requests are sent to the server; however, if graceful real
server failure is enabled (/cfg/slb/adv/grace ena), state information about existing
sessions is maintained and traffic associated with existing sessions continues to be sent to the
server.
NOTE – All load-balanced services on a server must fail before the switch places the server in
the server failed state.
The server is brought back into service as soon as the first service is proven to be healthy.
Additional services are brought online as they are subsequently proven to be healthy.
“Layer 2 Trunk Failover” on page 326. This section discusses trunk failover without using
VRRP.
“VRRP Overview” on page 332. This section discusses VRRP operation and Alteon OS
redundancy configurations.
“Failover Methods” on page 337. This section describes the three modes of high availabil-
ity.
“Alteon OS extensions to VRRP” on page 343. This section describes VRRP enhance-
ments implemented in Alteon OS.
“Virtual Router Deployment Considerations” on page 346. This section describes issues to
consider when deploying virtual routers.
“High Availability Configurations” on page 350. This section discusses a few of the more
useful and easily deployed redundant configurations.
“Active-Standby Virtual Server Router Configuration” on page 350
“Active-Active VIR and VSR Overview” on page 352
“Active-Active Server Load Balancing Configuration” on page 353
“Hot-Standby Configuration” on page 361
“Four-switch configuration” on page 368
“Layer 2 Trunk Failover with VRRP” on page 376
325
24R9742, March 2006
Alteon OS 21.0 Application Guide
NOTE – Only two links per server blade can be used for Layer 2 Trunk Failover
(one primary and one backup). Network Adapter Teaming allows only one backup NIC for
each server blade.
Layer 2 Failover can be enabled on any trunk group in the GbE Switch Module, including
LACP trunks. Trunks can be added to failover trigger groups such that if some (or all) of the
links fail in a trigger, the switch disables all internal ports in the switch (unless VLAN Monitor
is turned on). When the internal ports are disabled, it causes the NIC team on the affected
server blades to failover from the primary to the backup NIC. This process is called a failover
event.
When the appropriate number of links in a trigger group return to service, the switch enables
the internal ports. This causes the NIC team on the affected server blades to fail back to the pri-
mary switch (unless Auto-Fallback is disabled on the NIC team). The backup switch processes
traffic until the primary switch’s internal links come up, which takes up to five seconds.
VLAN Monitor
The VLAN Monitor allows L2 Failover to discern different VLANs. With VLAN Monitor
turned on:
If enough links in a trigger go down (see “Setting the Failover Limit” on page 327), the
switch disables all internal ports that reside in the same VLAN membership as the trunk(s)
in the trigger.
When enough links in the trigger return to service, the switch enables the internal ports
that reside in the same VLAN membership as the trunk(s) in the trigger.
If you turn off the VLAN Monitor (/cfg/failovr/vlan/off), only one failover trigger
is allowed. When a link failure occurs on the trigger, the switch disables all internal server-
blade ports.
LACP
Link Aggregation Control Protocol allows the switch to form dynamic trunks.
You can use the admin key to add LACP trunks to a failover trigger. When you add an admin
key to a trigger (/cfg/failovr/trigger x/amon/addkey), any LACP trunk with
that admin key becomes a member of the trigger.
When the switch determines that ports in the trigger are in STP Forwarding state, then it auto-
matically enables the appropriate internal ports, based on the VLAN monitor. The switch fails
back to normal operation.
Configuration Guidelines
This section provides important information about configuring L2 Failover:
A failover trigger can monitor multiple static trunks or a single LACP key, but not both.
With VLAN Monitor on, the following additional guidelines apply:
All external ports in all trunks that are added to a single failover trigger must have the
same VLAN membership and have the same PVID.
Each failover trigger must operate on a different VLAN membership.
Multiple failover triggers cannot operate on the same internal port.
L2 Failover Configurations
Figure 15-1 is a simple example of Layer 2 Failover. One GbESM is the primary, and the other
is used as a backup. In this example, all external ports on the primary GbESM belong to a sin-
gle trunk group, with Layer 2 Failover enabled, and Failover Limit set to 2. If two or fewer
links in trigger 1 remain active, the switch temporarily disables all internal server-blade ports
that reside in VLAN 1. This action causes a failover event on Server 1 and Server 2.
Trigger 1
Primary
GbESM Server 1
Internet Server 2
Trigger 1 Server 3
Backup
GbESM Server 4
Enterprise
Routing Switch BladeCenter
VLAN 1:
VLAN 2:
VLAN Monitor = On
Figure 15-2 shows a configuration with two trunks, each in a different Failover Trigger.
GbESM 1 is the primary switch for Server 1 and Server 2. GbESM 2 is the primary switch for
Server 3 and Server 4. VLAN Monitor is turned on. STP is turned off.
If all links go down in trigger 1, GbESM 1 disables all internal ports that reside in VLAN 1. If
all links in trigger 2 go down, GbESM 1 disables all internal ports that reside in VLAN 2.
Trigger 1
GbESM 1
Server 1
Trigger 2
Internet Server 2
Trigger 1 Server 3
GbESM 2
Server 4
Enterprise Trigger 2
Routing Switch BladeCenter
VLAN 1:
VLAN 2:
VLAN Monitor = On
Figure 15-3 shows a configuration with two trunks. VLAN Monitor is turned off, so only one
Failover Trigger is configured on each switch. GbESM 1 is the primary switch for Server 1 and
Server 2. GbESM 2 is the primary switch for Server 3 and Server 4. STP is turned off.
If all links in trigger 1 go down, GbESM 1 disables all internal links to server blades.
Trigger 1
GbESM 1
Server 1
Internet Server 2
Trigger 1 Server 3
GbESM 2
Server 4
Enterprise
Routing Switch BladeCenter
VLAN 1:
VLAN 2:
VLAN Monitor = Off
VRRP Overview
In a high-availability network topology, no device can create a single point-of-failure for the
network or force a single point-of-failure to any other part of the network. This means that
your network will remain in service despite the failure of any single device. To achieve this
usually requires redundancy for all vital network components.
VRRP enables redundant router configurations within a LAN, providing alternate router paths
for a host to eliminate single points-of-failure within a network. Each participating VRRP-
capable routing device is configured with the same virtual router IP address and ID number.
One of the virtual routers is elected as the master, based on a number of priority criteria, and
assumes control of the shared virtual router IP address. If the master fails, one of the backup
virtual routers will take control of the virtual router IP address and actively process traffic
addressed to it.
VRRP Components
Each physical router running VRRP is known as a VRRP router.
Virtual Router
Two or more VRRP routers can be configured to form a virtual router (RFC 2338). Each
VRRP router may participate in one or more virtual routers. Each virtual router consists of a
user-configured virtual router identifier (VRID) and an IP address.
There is no requirement for any VRRP router to be the IP address owner. Most VRRP installa-
tions choose not to implement an IP address owner. For the purposes of this chapter, VRRP
routers that are not the IP address owner are called renters.
NOTE – If the IP address owner is available, it will always become the virtual router master.
The virtual router master forwards packets sent to the virtual router. It also responds to Address
Resolution Protocol (ARP) requests sent to the virtual router's IP address. Finally, the virtual
router master sends out periodic advertisements to let other VRRP routers know it is alive and
its priority.
Within a virtual router, the VRRP routers not selected to be the master are known as virtual
router backups. Should the virtual router master fail, one of the virtual router backups becomes
the master and assumes its responsibilities.
NOTE – Every VIR must be assigned to an IP interface, and every IP interface must be
assigned to a VLAN. If no port in a VLAN has link up, the IP interface of that VLAN is down,
and if the IP interface of a VIR is down, that VIR goes into INIT state.
Virtual server routers operate for virtual server IP addresses in much the same manner as Vir-
tual Interface Routers operate for IP interfaces. A master is negotiated via a bidding process,
during which information about each VRRP router's priority is exchanged. Only the master can
process packets that are destined for the virtual server IP address and respond to ARP requests.
One difference between virtual server routers and virtual interface routers is that a virtual
server router cannot be an IP address owner. All virtual server routers are renters.
All virtual routers, whether virtual server routers or virtual interface routers, operate indepen-
dently of one another; that is, their priority assignments, advertisements, and master negotia-
tions are separate. For example, when you configure a VRRP router's priority in a virtual
server router, you are not affecting that VRRP router's priority in any virtual interface router or
any other virtual server router of which it is a part. However, because of the requirement that
MAC addresses be unique on a LAN, VRIDs must be unique among all virtual routers,
whether virtual interface routers or virtual server routers.
The GbE Switch Modules in Figure 15-4 have been configured as VRRP routers. Together,
they form a virtual router.
VIP = 205.178.13.226
VRID = 1
Router #2 = Master Active
VR IP address = 205.178.13.226
MAC address = 00.00.5E.00.01.01
Priority = 101
IP interface = 205.178.13.224
GbESM 1
Servers
Internet
Enterprise GbESM 2
Routing Switch
VIP = 205.178.13.226
VRID = 1
Router #2 = Backup Standby
VR IP address = 205.178.13.226
MAC address = 00.00.5E.00.01.01
Priority = 100
IP interface = 205.178.13.225
GbE Switch Module 1 in Figure 15-4 has a higher priority and, therefore, becomes the virtual
router master. GbE Switch Module 2 is a virtual router backup.
The virtual server router has been assigned a VRID = 1. Therefore, both of the VRRP routers
have a MAC address = 00-00-5E-00-01-01.
VRRP Operation
Only the virtual router master responds to ARP requests. Therefore, the upstream routers only
forward packets destined to the Virtual IP (VIP) to the Virtual Server Router master. The mas-
ter also responds to ICMP ping requests. The backup does not forward any traffic on behalf of
the virtual server router nor does it respond to ARP requests.
If the master is not available, the backup becomes the master and takes over responsibility for
packet forwarding and responding to ARP requests.
The master periodically sends advertisements to an IP multicast address. As long as the back-
ups receive these advertisements, they remain in the backup state. If a backup does not receive
an advertisement for three advertisement intervals, it initiates a bidding process to determine
which VRRP router has the highest priority and takes over as master.
If, at any time, a backup determines that it has higher priority than the current master does, it
can preempt the master and become the master itself, unless configured not to do so. In pre-
emption, the backup assumes the role of master and begins to send its own advertisements. The
current master sees that the backup has higher priority and will stop functioning as the master.
A backup router can stop receiving advertisements for one of two reasons—the master can be
down, or all communications links between the master and the backup can be down. If the
master has failed, it is clearly desirable for the backup (or one of the backups, if there is more
than one) to become the master.
NOTE – If the master is healthy but communication between the master and the backup has
failed, there will then be two masters within the virtual router. To prevent this from happening,
configure redundant links to be used between the switches that form a virtual router.
GbESM 1
Internet BladeCenter
BladeCenter
GbESM 2
VRID = 1 VRID = 2
Failover Methods
With service availability becoming a major concern on the Internet, service providers are
increasingly deploying Internet traffic control devices, such as application switches, in redun-
dant configurations. Traditionally, these configurations have been hot-standby configurations,
where one switch is active and the other is in a standby mode. A non-VRRP hot-standby con-
figuration is shown in the figure below:
Primary Switch
IP: 200.200.200.100
Internet
Servers
Secondary Switch
IP: 200.200.200.101
Alteon OS high availability configurations are based on VRRP. The Alteon OS implementa-
tion of VRRP includes proprietary extensions to accommodate Layer 4 though Layer 7 appli-
cation switching features.
Active-Standby Redundancy
In an active-standby configuration, shown in Figure 15-7, two switches are used. Both
switches support active traffic but are configured so that they do not simultaneously support
the same service. Each switch is active for its own set of services, such as IP routing interfaces
or load-balancing virtual server IP addresses, and acts as a standby for other services on the
other switch. If either switch fails, the remaining switch takes over processing for all services.
The standby switch may forward Layer 2 and Layer 3 traffic, as appropriate.
GbESM 1
Servers
Internet
Enterprise GbESM 2
Routing Switch
Active-Active Redundancy
In an active-active configuration, two switches provide redundancy for each other, with both
active at the same time on different VIPs.
Alteon OS has extended VRRP to include virtual servers, allowing full active/active redun-
dancy between its Layer 4 switches. In an active-active configuration, shown in Figure 15-8,
both switches can actively process traffic for given IP routing interfaces or load-balancing vir-
tual servers (VIPs).
GbESM 1
Servers
Internet
Enterprise GbESM 2
Routing Switch
In the example above, one switch is the master for VIP 1, but is the standby for VIP 2. The
other switch is the master for VIP 2, but is the standby for VIP 1. Therefore, both switches are
actively processing traffic simultaneously.
For configuration examples, see “Active-Active VIR and VSR Overview” on page 352 and
“Active-Active Server Load Balancing Configuration” on page 353.
Hot-Standby Redundancy
In a VRRP-based hot-standby configuration, a Spanning Tree Group (STG) is not needed to
eliminate bridge loops. Disabling Spanning Tree speeds up failover when a switch fails. The
standby switch blocks all ports configured as standby ports, whereas the master switch enables
these same ports. Consequently, on a given switch, all virtual routers are either master or standby;
they cannot change state individually.
Interswitch
Link
Enterprise
Routing Switch NIC 1 IP = 10.10.10.2
GbESM 2 NIC 2 IP = 10.10.10.2
Standby
The virtual router group cannot be used for active-active configurations or any other configura-
tion that require shared interfaces.
When enabled, all virtual routers behave as one entity, and all group settings override any
individual virtual router settings.
All individual virtual routers, once the VRRP group is enabled, assume the group’s track-
ing and priority.
When one member of a VRRP group fails, the priority of the group decreases, and the
state of the entire switch changes from Master to Standby.
If a switch is in the standby state, Layer 4 processing is still enabled. If a virtual server is not a
virtual router, the standby switch can still process traffic addressed to that virtual server IP
address. Filtering is also still functional. Only traffic addressed to virtual server routers is not
processed.
Each VRRP advertisement can include up to 128 addresses. All virtual routers are advertised
within the same packet, conserving processing and buffering resources.
Links that attach to the standby switch must be configured as hot-standby using
/cfg/slb/port x/hotstan.
Links that are used by VRRP to deliver updates are configured as intersw, or inter-
switch links (not to be confused with Cisco’s ISL). The command to configure one or
more ports as interswitch links is /cfg/slb/port <port number>/intersw.
The hot-standby switch listens to the master’s VRRP updates. After an interval period has
expired without receiving a update, the standby switch takes over. Enabling hot-standby on a
switch port allows the hot-standby algorithm to control the forwarding state of the port. If a
switch is master, the forwarding states of the hot-standby ports are enabled. If a switch is
standby, the hot-standby ports are disabled from forwarding or receiving traffic.
NOTE – The VRRP hot-standby approach does not support single-link failover. If one hot-
standby port loses link, the entire switch must become master to eliminate loss of connectivity.
The forwarding states of non-hot-standby ports are not controlled via the hot-standby algo-
rithm, allowing the additional ports on the switches to provide added port density. The client
ports on both switches should be able to process or forward traffic to the master switch.
The inter-switch port state is only a place holder. Its presence forces the user to configure a
inter-switch link when hot-standby is globally enabled and prohibits the inter-switch link from
also being a hot-standby link for VRRP advertisements. These advertisements must be able to
reach the standby switch.
NOTE – Nortel Networks recommends that you use a dedicated interswitch link. However, you
can use the interswitch link to connect to an upstream switch, and process traffic. Because the
ports in the interswitch link are not directly connected, traffic congestion could slow communi-
cation of VRRP status between the switches.
Synchronizing Configurations
The final piece in configuring a high-availability solution includes the addition of synchroniza-
tion options to simplify the manual configuration. Configuration options have been added to
refine what is synchronized, to whom, and to disable synchronizing certain configurations.
These options include proxy IP addresses, Layer 4 port configuration, filter configuration, real
servers, and virtual router priorities.
Also, a peer menu (cfg/slb/sync/peer) has been added to allow the user to configure
the IP addresses of the switches that should be synchronized. This provides added synchroni-
zation validation but does not require the users to enter the IP address of the redundant switch
for each synchronization.
For more information on synchronizing configurations between two switches, see “Synchro-
nizing Switch Configurations” on page 346.
Virtual server routers operate for virtual server IP addresses in much the same manner as Vir-
tual Interface Routers operate for IP interfaces. A master is negotiated via a bidding process,
during which information about each VRRP router's priority is exchanged. Only the master can
process packets that are destined for the virtual server IP address and respond to ARP requests.
One difference between virtual server routers and virtual interface routers is that a virtual
server router cannot be an IP address owner. All virtual server routers are renters.
All virtual routers, whether virtual server routers or virtual interface routers, operate indepen-
dently of one another; that is, their priority assignments, advertisements, and master negotia-
tions are separate. For example, when you configure a VRRP router's priority in a virtual
server router, you are not affecting that VRRP router's priority in any virtual interface router or
any other virtual server router of which it is a part. However, because of the requirement that
MAC addresses be unique on a LAN, VRIDs must be unique among all virtual routers,
whether virtual interface routers or virtual server routers.
NOTE – Tracking only affects active-standby configurations. It does not have any effect on
active-active configurations.
Parameter Description
Number of virtual routers in master mode Useful for ensuring that traffic for any particular client/
on the switch server pair is handled by the same switch, increasing rout-
/cfg/l3/vrrp/track/vr ing and load-balancing efficiency. This parameter influ-
ences the VRRP router's priority in both virtual interface
routers and virtual server routers.
Number of IP interfaces on the switch that Helps elect the virtual routers with the most available
are active (“up”) routes as the master. (An IP interface is considered active
/cfg/l3/vrrp/track/ifs when there is at least one active port on the same VLAN.)
This parameter influences the VRRP router's priority in
both virtual interface routers and virtual server routers.
Number of active ports on the same VLAN Helps elect the virtual routers with the most available
/cfg/l3/vrrp/track/ports ports as the master. This parameter influences the VRRP
router's priority in both virtual interface routers and virtual
server routers.
Note: In a Hot-Standby configuration, only external ports
are tracked.
Number of physical switch ports that Helps elect the main Layer 4 switch as the master.
have active Layer 4 processing on the This parameter influences the VRRP router's prior-
switch ity in both virtual interface routers and virtual server
/cfg/l3/vrrp/track/l4pts routers.
Note: In a Hot-Standby configuration, only external ports
are tracked.
Number of healthy real servers behind Helps elect the switch with the largest server pool as
the virtual server IP address that is the the master, increasing Layer 4 efficiency. This
same as the IP address of the virtual parameter influences the VRRP router's priority in
server router on the switch virtual server routers only.
/cfg/l3/vrrp/track/reals
Parameter Description
In networks where the Hot-standby Helps elect the switch closest to the master HSRP
Router Protocol (HSRP) is used for router as the master, optimizing routing efficiency.
establishing router failover, the num- This parameter influences the VRRP router's prior-
ber of Layer 4 client-only ports that ity in both virtual interface routers and virtual server
receive HSRP advertisements routers.
/cfg/l3/vrrp/track/hsrp Note: In a Hot-Standby configuration, HSRP is not
tracked.
Each tracked parameter has a user-configurable weight associated with it. As the count associ-
ated with each tracked item increases (or decreases), so does the VRRP router's priority, sub-
ject to the weighting associated with each tracked item. If the priority level of a standby is
greater than that of the current master, then the standby can assume the role of the master.
See “Configuring the Switch for Tracking” on page 348 for an example on how to configure
the switch for tracking VRRP priority.
NOTE – Before you synchronize the configuration between two switches, a peer must be con-
figured on each switch. Switches being synchronized must use the same administrator pass-
word.
Configure the two switches as peers to each other. From Switch 1, configure Switch 2 as a peer
and specify its IP address as follows:
Similarly, from Switch 2, configure Switch 1 as a peer and specify its IP address as follows:
Port specific parameters, such as what filters are applied and enabled on what ports, are part of
what is pushed by the /oper/slb/synch command. Thus, if the /oper/slb/synch
command is used, it is highly recommended that the hardware configurations and network con-
nections of all switches in the virtual router be identical; that is, each switch should be the
same model, have the same line cards in the same slots (if modular) and have the same ports
connected to the same external network devices. Otherwise, unexpected results may occur
when the /oper/slb/synch command attempts to configure a non-existent port or applies
an inappropriate configuration to a port.
The sync command copies the following settings to the switch at the specified IP interface
address:
VRRP settings
SLB settings (including port settings)
Filter settings (including filter port settings)
Proxy IP settings
If you perform the sync command, you should check the configuration on the target switch to
ensure that the settings are correct.
For more information on synchronizing configurations between two switches, see “Synchro-
nizing Switch Configurations” on page 346.
3. On both switches, enable tracking based on the number of virtual routers in master mode
on the switch and set the value = 5.
4. On both switches, enable tracking based on the number of healthy real servers behind
the VIP address. The VIP address is the same as the IP address of the virtual server
router on the switch. Set the value = 6.
Initially, switch 1 (Figure 15-10 on page 350) will have a priority of 100 (base value) + 5 (ini-
tially it is the master) + 24 (4 active real servers * 6 per real server) = 129.
Switch 2 will have a priority of 96 (base value) + 24 (4 active real servers * 6 per real server) =
120.
If a server attached to switch 1 fails, then switch 1’s priority will be reduced by 6 to 123. Since
123 is greater than 120 (switch 2's priority), switch 1 will remain the master.
If a second server attached to switch 1 fails, then switch 1’s priority will be reduced by 6 more
to 117. Since 117 is less than 120 (switch 2’s priority), then switch 2 will become the Master.
At this point, switch 1’s priority will fall by 5 more and switch 2’s will rise by 5 because the
switches are tracking how many masters they are running. So, switch 1’s priority will settle out
at 112 and switch 2’s priority at 125.
When both servers are restored to switch 1, that switch’s priority will rise by 12 (2 healthy real
servers * 6 per healthy server) to 124. Since 124 is less than 125, switch 2 will remain the mas-
ter.
If, at this point, a server fails on switch 2, its priority will fall by 6 to 119. Since 119 is less than
124, switch 1 will become the Master. Its priority will settle out at 129 (since it’s now the mas-
ter) while switch 2’s priority will drop by 5 more to 114.
You can see from this example that the user’s goals were met by the configured tracking
parameters.
NOTE – There is no shortcut to setting tracking parameters. The goals must first be set and the
outcomes of various configurations and scenarios analyzed to find settings that meet the goals.
5. Synchronize the SLB and VRRP configurations by synchronizing the configuration from
GbESM 1 to GbESM 2.
Use the /oper/slb/sync command (see “Synchronizing Switch Configurations” on page
346).
In this example, with GbESM 1 as the master, if a link between GbESM 1 and a server fails, the
server will fail health checks and be taken out of the load-balancing algorithm. If tracking is
enabled and is configured to take into account the number of healthy real servers for the Virtual
Router's VIP address, GbESM 1’s priority will be reduced. If it is reduced to a value lower than
GbESM 2’s priority, then GbESM 2 will assume the role of master. In this case, all active con-
nections serviced by GbESM 1’s virtual server IP address are severed.
If the link between GbESM 1 and its Internet router fails, the protocol used to distribute traffic
between the routers, for example, Open Shortest Path First (OSPF), will reroute traffic to the
other router. GbESM 2 (standby) will act as a Layer 2/3 switch and forward all traffic destined
to the virtual server IP address to GbESM 1.
If the entire GbESM 1 (master) fails, the protocol used to distribute traffic between the routers,
such as OSPF, will reroute traffic to GbESM 2. GbESM 2 (standby) detects that the master has
failed because it will stop receiving advertisements. The standby then assumes the master's
responsibility of responding to ARP requests and issuing advertisements.
In an Active-Active configuration, when both switches are healthy, the load balanced packets
are sent to the virtual server IP address, resulting in higher capacity and performance than
when the switches are used in an Active-Standby configuration.
The switch on which a frame enters the virtual server router is the one that processes that
frame. The ingress switch is determined by external factors, such as routing and STG settings.
NOTE – Each VRRP-capable switch is autonomous. There is no requirement that the switches
in a virtual router be identically configured. Different switch models with different numbers of
ports and different enabled services may be used in a virtual router.
In this configuration, if a link between a switch and a server fails, the server will fail health
checks and its backup (attached to the other switch) is brought online. If a link between a
switch and its Internet router fails, the protocol used to distribute traffic between the routers
(for example, OSPF) will reroute traffic to the other router. Since all traffic now enters the vir-
tual server router on one switch, that switch processes all incoming connections.
If an entire master switch fails, the standby switch detects this failure because it stops receiving
advertisements. The standby assumes the master's responsibility of responding to ARP
requests and issuing advertisements.
Be cautious before setting the maximum connections (maxconn) metric in this configuration.
The maxcon number is not shared between switches. Therefore, if a server is used for normal
operation by one switch and is activated simultaneously as a backup by the other switch, the
total number of possible connections to that server is the sum of the maximum connection limits
defined for it on both switches.
In this example, you set up four virtual servers, each load balancing two servers, and providing
one service (for example, HTTP) per virtual server.
You are load balancing HTTP and FTP. Each protocol is load balanced via a different virtual
server. You could load balance all of these services on one VIP, but in this example, two dis-
tinct virtual servers are used to illustrate the benefits of active/active failover. Set up one
switch, dump out the configuration script (also called a text dump), edit it, and dump the edited
configuration into the peer switch.
In this configuration, each GbE Switch Module has a common external subnet, that contains
the VIPs and the default gateway.
Each GbESM has its unique internal subnet, connecting to one of the server NICs. Therefore,
each server contains a NIC connected to each GbESM on its own unique subnet. In this case,
NIC 1 contains an IP on 10.10.10.x subnet, with a default gateway of 10.10.10.1 (real server
interface on GbESM 1). NIC 2 contains an IP on 10.10.11.x subnet with a default gateway of
10.10.11.2 (real server interface on GbESM 2).
NOTE – Configuring the switch for active-active failover should take no longer than 15 min-
utes to complete. You can use either the Alteon OS Browser-Based Interface (BBI) or the
Command Line Interface (CLI) for configuration.
To configure the internal IP interface for this example, enter the following commands from the
CLI:
IF 2—205.178.13.1 (VLAN 2)
NOTE – On GbE Switch Modules, you are permitted to configure more than one subnet per
VLAN.
/cfg/l3/gw 1
>> Default gateway 1 # addr 205.178.13.3 (Assign IP address for the gateway)
>> Default gateway 1 # ena (Enable the gateway)
5. Enable IP forwarding.
IP forwarding is enabled by default. Make sure IP forwarding is enabled if the virtual server IP
addresses and real server IP addresses are on different subnets, or if the switch is connected to
different subnets and those subnets need to communicate through the switch.
If you are in doubt as to whether or not to enable IP forwarding, enable it. In this example, the
virtual server IP addresses and real server IP addresses are on different subnets, so enable this
feature using the following command:
For example:
RIP 2—10.10.10.102/24
RIP 3—10.10.10.103/24
RIP 4—10.10.10.104/24
2. Define the real server groups, adding the appropriate real servers.
This combines the three real servers into one service group:
Repeat this sequence of commands for the following real server group:
The ports connected to the upstream switches (the ones connected to the routers) will need
to be in the client port state.
Configure the ports, using the following sequence of commands:
NOTE – Since you want GbESM 1 to be the backup router for VIP 2, leave the priorities for
virtual router 2 at the default of 100.
/cfg/l3/vrrp/vr 1/track
>> VRRP Virtual Router 1 Priority Tracking# l4pts ena
This command sets the priority tracking parameter for virtual router 1, electing the virtual
router with the most available ports as the master router. Repeat this command for virtual
router 2:
VR 2 - Track l4pts
>> VRRP Virtual Router 1 Priority Tracking# apply(Make your changes active)
>> VRRP Virtual Router 1 Priority Tracking# save(Save for restore after reboot)
NOTE – On GbE Switch Modules, you may configure more than one subnet per VLAN.
To configure the IP interfaces for this example, enter the following commands from the CLI:
IF 2—205.178.13.2 (VLAN 2)
/cfg/l3/gw 1
>> Default gateway 1 # addr 205.178.13.3 (Assign IP address for the gateway)
>> Default gateway 1 # ena (Enable the gateway)
5. Enable IP forwarding.
IP forwarding is enabled by default. Make sure IP forwarding is enabled if the virtual server IP
addresses and real server IP addresses are on different subnets, or if the switch is connected to
different subnets and those subnets need to communicate through the switch.
If you are in doubt as to whether or not to enable IP forwarding, enable it. In this example, the
virtual server IP addresses and real server IP addresses are on different subnets, so enable this
feature using the following command:
Use the following commands on GbESM 2 to set up synchronization with the peer switch:
On GbESM 1, synchronize the VRRP, SLB, real server, and filter settings to GbESM 2.
/oper/slb/sync
For example:
RIP 2—10.10.11.102/24
RIP 3—10.10.11.103/24
RIP 4—10.10.11.104/24
Set the priority of Virtual Router 1 to 100, so it becomes the backup for VIP 1:
Hot-Standby Configuration
The primary application for VRRP-based Hot-Standby is to support Server Load Balancing
when you have configured Network Adapter Teaming on your server blades. With Network
Adapter Teaming, the NICs on each server share the same IP address, and are configured into a
team. One NIC is the primary link, and the others are backup links. For more details, refer to
“Configuring Teaming” in the Broadcom NetXtreme™ Gigabit Ethernet Adapter User Guide
(http://www-306.ibm.com/pc/support/site.wss/MIGR-43152.html).
A hot-standby configuration allows all processes to failover to a standby switch if any type of
failure should occur. All Virtual Interface Routers (VIRs) and all Virtual Service Routers
(VSRs) are bundled into one Virtual Router group, and then they failover together. When there
is a failure that causes the VRRP Master to failover to the Standby, then the original primary
switch temporarily disables the internal server links, which, in turn, causes the NIC teams to
failover as well.
NOTE – When using hot-standby redundancy, peer switches should have an equal number of
connected ports.
The key to Hot-Standby is that the interswitch link (the link between switches) does not partic-
ipate in Spanning Tree, so there are no loops in the topology (see Figure 15-12). Therefore,
Spanning Tree is not required, and the switch will have failover times similar to standard
VRRP. In complex networks, Spanning Tree convergence time can be much higher than 45-50
seconds.
Hot Standby
Enterprise GbESM 2
Routing Switch
1. On GbESM 1, configure the external ports into their respective VLANs as shown in Fig-
ure 15-12.
/cfg/l2/vlan 1
>> VLAN 1# ena
>> VLAN 1# name servers (Name VLAN 1 for server traffic)
>> Port EXT4# /cfg/l2/vlan 192 (VLAN 192 is for client traffic)
>> VLAN 192# ena (Enable the VLAN)
>> VLAN 192# name clients (Optional: assign name)
>> VLAN 192# def EXT1 EXT2 EXT3 (Add the external ports this VLAN)
>> VLAN 192# /cfg/l2/vlan 172 (VLAN 172 is for the Interswitch Link)
>> VLAN 172# ena
>> VLAN 172# name ISL (Optional: assign name)
>> VLAN 172# def EXT4 (Add port EXT4 to this VLAN)
2. Trunk the external ports that you configured for the client VLAN.
2. From the VRRP menu, enable VRRP group mode; then enable hot-standby.
/cfg/l3/vrrp/group/ena
>> VRRP Virtual Router Group# vrid 1
>> VRRP Virtual Router Group# prio 101
>> VRRP Virtual Router Group# track
>> VRRP Virtual Router Group# ports ena
4. Setup the peer switch (GbESM 2) that will receive synchronization of the Layer 4 config-
uration.
Make sure to disable synchronization of VRRP priorities; the peer switch will assume its own
priority based on the VRRP election process and should not acquire the VRRP priority from
the Master switch’s configuration. If you will be configuring real servers for VRRP hot-
standby, make sure to enable synchronization of real server configuration as well.
5. From the SLB menu, enable a hot-standby link on the Layer 4 ports; then enable inter-
switch link on the crosslink.
/cfg/slb/port INT2
>> SLB port INT2# hotstan ena
>> SLB port INT2# /cfg/slb/port EXT4
>> SLB port EXT4# intersw ena
/cfg/dump
3. Copy and paste the entire contents of the script to a text file.
The first and last lines of the file should show the following:
Change the synchronization peer switch to use the IP address of GbESM 1. In this exam-
ple, change the last octet from .252 (denoting GbESM 2), to .251 (GbESM 1).
5. Save the changes to the text file as “Customer Name” GbESM 2 and load it onto a TFTP
server.
Begin a Telnet session for the second switch. Any configuration on it needs to be deleted by
resetting it to factory settings, using the following command:
You can tell if the switch is at factory default when you log on because the switch prompts you
if you want to use the step-by-step configuration process. When it does, respond: “No.”
6. From the CLI, download the configuration script into the switch from the TFTP server
using the following command:
/oper/slb/sync
Four-switch configuration
The IBM BladeCenter chassis supports the use of up to four GbE Switch Modules simulta-
neously. Combined with VRRP, this provides a massively redundant, highly available solution.
With a single VIP, the four switches can be configured to provide Active-Standby-Standby-
Standby redundancy. As your application requirements scale, so does your solution. If you
have two VIPs, you have an Active-Active, Standby-Standby solution.
This four-switch solution scales all the way to become a full Active-Active-Active-Active
solution that provides load-sharing across all of the switch modules. The key is to configure
the same VSRs on each of the GbE Switch Modules.
Figure 15-13 on page 369 displays the four-switch configuration, using a four-VIP example.
Each GbE Switch Module is the master of a different VIP, and is the standby for the other
VIPs. For example, GbE SM 1 master for VIP 1and standby for VIP 2-4, while GbESM 2 is
master for VIP 3 and standby for VIP 1, VIP 2, and VIP 4.
GbESM 1:
VIP 1: 205.178.13.226 (Master)
VIP 2: 205.178.13.227 (Backup)
VIP 3: 205.178.13.228 (Backup)
VIP 4: 205.179.13.229 (Backup)
GbESM 2:
VIP 1: 205.178.13.226 (Backup)
VIP 2: 205.178.13.227 (Master)
VIP 3: 205.178.13.228 (Backup)
VIP 4: 205.179.13.229 (Backup)
Server 1 NIC 1: 10.10.10.101/24 (RIP 1, GbESM 1)
GbESM 1 NIC 2: 10.10.11.101/24 (RIP 1, GbESM 2)
NIC 3: 10.10.12.101/24 (RIP 1, GbESM 3)
NIC 4: 10.10.13.101/24 (RIP 1, GbESM 4)
NOTE – Note: On switches 2-4, use the real IP addresses as shown in Figure 15-13 on page
369.
5. Create real servers on switch 2 and sync using the “no reals” option.
6. Create real servers on switch 3 and sync using the “no reals” option.
7. Create real servers on switch 4 and sync using the “no reals” option.
Multiple ICRL configurations are supported. Two or more BladeCenter chassis with one
GbESM each can be configured for Active-Standby redundancy, where one chassis is process-
ing the Virtual Server traffic. If you have multiple VIPs, you can utilize an Active-Active con-
figuration, to provide load-sharing across both chassis.
To scale your computing grid, install a second GbE Switch Module to each of your Blade-
Center chassis and configure the Virtual Servers for which you wish to provide failover. This
provides High Availability within the chassis as well across multiple chassis. This topology
can be scaled further by adding additional BladeCenters (equipped with GbE Switch Modules)
to the design. The key is to configure the same VSR on each of the GbE Switch Modules.
Figure 15-14 on page 373 displays the optimal configuration using a four VIP example. Each
GbE Switch Module is the master for a different VIP, and is the standby for each of the others.
For example, Chassis 1 GbESM 1 is master for VIP1 and standby for VIP2-4, while Chassis 2
GbESM 1 is master for VIP3 and standby for VIPs 1, 2 and 4. This provides full application
availability for any type of failure - application failure, server OS failure, server blade failure,
Switch Module failure and chassis failure.
To implement the example shown in Figure 15-14, configure the switches as follows:
NOTE – In this configuration, each server's backup is attached to the other switch. This ensures
that operation will continue if all of the servers attached to a switch fail.
5. Synchronize the SLB and VRRP configurations in chassis 1 by pushing the configuration
from switch 1 to switch 2.
Use the /oper/slb/sync command.
NOTE – In this configuration, each server's backup is attached to the other switch. This ensures
that operation will continue if all of the servers attached to a switch fail.
5. Synchronize the SLB and VRRP configurations in chassis 1 by pushing the configuration
from switch 1 to switch 2.
Use the /oper/slb/sync command.
NOTE – When Layer 2 Trunk Failover is enabled, you cannot enable VRRP Hot Standby.
In this configuration, you set up virtual servers similar to the configuration described in
“Active-Active Server Load Balancing Configuration” on page 353. Then you configure
Layer 2 Trunk Failover similar to the configuration described in “Layer 2 Trunk Failover” on
page 326.
For example, Chassis 1 is the Master for HTTP service, and Backup for FTP service. Chassis 2
is the Master for FTP service, and Backup for HTTP service. Within each chassis, GbESM 2 is
the Backup for GbESM 1. All ingress traffic flows to GbESM 1.
Failover Scenarios
Within a chassis, if all links to GbESM 1 fail, then the server NICs failover to GbESM 2.
There are three possible failover scenarios between the BladeCenter chassis:
If a server blade is removed from chassis 1, the priority of the switches in chassis 1
changes from 107 (101 + 6) to 105 (101 + 4). Since the priority of the switches in chassis 2
is 106 (100 + 6), one of them is elected to become the Master for VIP 1.
NOTE – In this configuration, NIC Teaming is configured to ensure that failover occurs when
the active NIC fails.
5. Synchronize the SLB and VRRP configurations in chassis 1 by pushing the configuration
from GbESM 1 to GbESM 2.
Use the /oper/slb/sync command, with real servers enabled and priority disabled.
NOTE – In this configuration, NIC Teaming is configured to ensure that failover occurs when
the active NIC fails.
5. Synchronize the SLB and VRRP configurations in chassis 1 by pushing the configuration
from GbESM 1 to GbESM 2.
Use the /oper/slb/sync command, with real servers enabled and priority disabled.
NOTE – For all content-intelligent switching features enable Direct Access Mode (DAM) or
configure proxy IP addresses.
383
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview
GbE Switch Modules perform content intelligent switching by processing numerous tasks for
each incoming session, including connection setup, traffic parsing, applying server selection
algorithms, splicing connections and translating session addresses, metering and controlling
server bandwidth usage, processing traffic filters, collecting statistics, and so on. Figure 16-1
illustrates the process of content intelligent switching in the GbE Switch Module.
Internet GbESM
Parsing Content
Examining session content places heavier demands upon the switch than examining TCP/IP
headers for the following reasons:
HTTP headers can be general, request, response, or entity headers. General headers may exist
in both requests and responses. Requests and response headers are specific only to requests and
responses, respectively. Entity headers describe the content of the request body or the content
of the response body.
Each HTTP header field consists of a name, followed immediately by a colon ( : ), a single
space character, and the field value. Field names are case-insensitive. Header fields can be
extended over multiple lines by preceding each extra line with at least one space.
NOTE – In addition to the URL path, which generally is less than 300 bytes, the HTTP GET
requests also include general headers and request headers.
Parsing GET requests to match URL path and HTTP header beyond the first frame
while performing delayed binding
Processing multiple frames from a single HTTP GET request, using a TCP stack on
the switch
HTTP Cookie Request Headers
Buffering a maximum of 4500 bytes for a single GET request across multiple frames. A
single GET request can include multiple cookies.
NOTE – Both HTTP 1.0 and HTTP 1.1 requests are supported.
For URL matching you can configure up to 512 strings comprised of 40 bytes each. Each URL
request is then examined against the URL strings defined for each real server. URL requests
are load balanced among multiple servers matching the URL, according to the load balancing
metric configured for the real server group (leastConns is the default).
In Figure 16-2, the following criteria are specified for content load balancing:
Requests with “.cgi” in the URL are forwarded to real servers 3 and 4.
Requests with the string “images” in the URL are sent to real servers 1 and 2.
Requests with URLs starting with “/product:” are sent to real servers 2, 3, and 5.
Requests containing URLs with anything else are sent to real servers 1, 2, 3, and 4. These serv-
ers have been defined with the “any” string.
GbESM
1. Before you can configure URL-based load balancing, ensure that the switch has already
been configured for basic SLB with the following tasks:
NOTE – When URL-based SLB is used in an active/active redundant setup, use a proxy IP
address instead of Direct Access Mode (DAM) to enable the URL parsing feature.
For example, with the “/images” string, the server will handle these requests:
/images/product/b.gif
/images/company/a.gif
/images/testing/c.jpg
The server will not handle these requests:
/company/images/b.gif
/product/images/c.gif
/testing/images/a.gif
/images/product/b.gif
/images/company/a.gif
/images/testing/c.jpg
/company/images/b.gif
/product/images/c.gif
/testing/images/a.gif
/
/index.htm
/default.asp
/index.shtm
>> # /cfg/slb/layer7/slb/cur
For easy configuration and identification, each defined string is assigned an ID number, as
shown in the following example:
ID SLB String
1 any
2 .gif
3 /sales
4 /xitami
5 /manual
6 .jpg
6. Add the defined string(s) to the real server using the following command:
NOTE – If you don't add a defined string (or add the defined string “any”) the server will han-
dle any request.
“/images”
“/sales”
“.gif”
With these defined strings, this particular server can handle requests that start with “/images”
or “/sales” and any requests that contain “.gif”.
8. Enable DAM on the switch or configure proxy IP addresses and enable proxy on the cli-
ent port.
DAM and proxy IPs allow you to perform port mapping for URL load balancing.
Enable DAM
For more information on proxy IP addresses, see “Proxy IP Addresses” on page 190.
>> # /stats/slb/layer7/str
Sample Statistics:
1 any 73881
2 .gif 0
3 /sales 0
4 /xitami 162102
5 /manual 0
6 .jpg 0
Virtual Hosting
Alteon OS allows individuals and companies to have a presence on the Internet in the form of
a dedicated Web site address. For example, you can have a “www.site-a.com” and “www.site-
b.com” instead of “www.hostsite.com/site-a” and “www.hostsite.com/site-b.”
Service providers, on the other hand, do not want to deplete the pool of unique IP addresses by
dedicating an individual IP address for each home page they host. By supporting an extension in
HTTP 1.1 to include the host header, Alteon OS enables service providers to create a single vir-
tual server IP address to host multiple Web sites per customer, each with their own host name.
NOTE – For SLB, one HTTP header is supported per virtual server.
The following list provides more detail on virtual hosting with configuration information.
An HTTP/1.0 request sent to an origin server (not a proxy server) is a partial URL instead
of a full URL.
An example of the request that the origin server would see as follows:
GET /products/2224/ HTTP/1.0
User-agent: Mozilla/3.0
Accept: text/html, image/gif, image/jpeg
The GET request does not include the host name. From the TCP/IP headers, the origin
server knows the requests host name, port number, and protocol.
With the extension to HTTP/1.1 to include the HTTP HOST: header, the above request to
retrieve the URL “/www.nortelnetworks.com/ products/2224” would look like this:
GET /products/2224/ HTTP/1.1
Host: www.nortelnetworks.com
User-agent: Mozilla/3.0
Accept: text/html, image/gif, image/jpeg
The Host: header carries the hostname used to generate the IP address of the site.
Based on the Host: header, the switch will forward the request to servers representing dif-
ferent customers’ Web sites.
The network administrator needs to define a domain name as part of the 128 supported
URL strings.
The switch performs string matching; that is, the string “nortelnetworks.com” or
“www.nortelnetworks.com” will match “www.nortelnetworks.com.”
1. The network administrator defines a domain name as part of the 128 supported URL
strings.
Both domain names “www.company-a.com” and “www.company-b.com” resolve to the same
IP address. In this example, the IP address is for a virtual server on the switch.
5. The switch inspects the HTTP host header in requests received from the client.
If the host header is “www.company-a.com,” the switch directs requests to one of the
Servers 1 through 4.
If the host header is “www.company-b.com,” the switch directs requests to one of the
Servers 5 through 8.
1. Before you can configure host header-based server load balancing, ensure that the switch
has already been configured for basic SLB:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
Assign servers to real server groups.
Define virtual servers and services.
For information on how to configure your network for server load balancing, see “Server Load
Balancing” on page 171.
2. Turn on URL parsing for the virtual server for virtual hosting.
4. Configure the real server(s) to handle the appropriate load balancing string(s).
To add a defined string:
NOTE – If you don't add a defined string (or add the defined string “any”), the server will han-
dle any request.
Individual User
Specific individual user could be distinguished by IP address, login authentication, or per-
manent HTTP cookie.
User Communities
Some set of users, such as “Premium Users” for service providers who pay higher mem-
bership fees than “Normal Users” could be identified by source address range, login
authentication, or permanent HTTP cookie.
Applications
Users could be identified by the specific application they are using. For example, priority
can be given to HTTPS traffic that is performing credit card transactions versus HTTP
browsing traffic.
Content
Users could be identified by the specific content they are accessing.
Based on one or more of the criteria above, you can load balance requests to different server
groups.
1. Before you can configure header-based load balancing, ensure that the switch has already
been configured for basic SLB with the following tasks:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
Assign servers to real server groups.
Define virtual servers and services.
For information on how to configure your network for SLB, see Chapter 10, “Server Load Bal-
ancing.
>> # /cfg/slb/virt 1
>> Virtual Server 1 # service 80
>> Virtual Server 1 http Service # httpslb cookie
Enter Cookie Name: sid
Enter the starting point of the Cookie value [1-64]: 1
Enter the number of bytes to extract [1-64]: 6
Look for Cookie in URI [e|d]: d
where
Since a session cookie does not exist in the first request of an HTTP session, a default server or
“any” server is needed to assign cookies to a “None” cookie HTTP request.
Example:
Request 1 comes in with no cookie; it is forwarded to Real Server 4 to get cookie assigned.
Request 2 comes in with “Gold” cookie; it will be forwarded to Real Server 1.
Request 3 comes in with “Silver” cookie; it will be forwarded to Real Server 2.
Request 4 comes in with “Bronze” cookie; it will be forwarded to Real Server 3.
Request 5 comes in with “Titanium” cookie; it will be forwarded to Real Server 4, since it
does not have an exact cookie match (matches with “any” configured at Real Server 4).
4. Configure the real server(s) to handle the appropriate load balance string(s).
To add a defined string:
NOTE – If you don't add a defined string (or add the defined string “any”), the server will han-
dle any request.
5. Enable DAM on the switch or configure proxy IP addresses and enable proxy on the cli-
ent port.
To use cookie-based preferential load balancing without DAM, you must configure proxy IP
addresses.
Enable proxy load balancing on the port used for cookie-based preferential load balancing. If
Virtual Matrix Architecture (VMA) is enabled on the switch, you can choose to configure the
remaining ports with proxy IP disabled.
1. Before you can configure browser-based load balancing, ensure that the switch has
already been configured for basic SLB with the following tasks:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
Assign servers to real server groups.
Define virtual servers and services.
2. Turn on URL parsing for the virtual server for “User-Agent:” header.
4. Configure the real server(s) to handle the appropriate load balancing string(s).
NOTE – If you don't add a defined string (or add the defined string “any”), the server will han-
dle any request.
If hash is selected as the load-balancing algorithm, the switch hashes the source IP address to
select the server for SLB. Under this condition, the switch may not send requests for the same
origin server to the same proxy cache server. For example, requests made from a client to
“http://www.nortelnetworks.com/products” from different clients may get sent to different
caches.
GbESM
Non-Transparent
Cache Farm
If the host field exists and the switch is configured to look into the Host: header, the switch
uses the Host: header field to calculate the hash key.
1. Before you can configure URL hashing, ensure that the switch has already been config-
ured for basic SLB with the following tasks:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
Assign servers to real server groups.
Define virtual servers and services.
Configure load-balancing algorithm for hash or minmiss.
Enable SLB.
For information on how to configure your network for SLB, see Chapter 10, “Server Load
Balancing.”
Define server port and client port.
>> # /cfg/slb/virt 1
>> Virtual Server 1 # service 80
>> Virtual Server 1 http Service # httpslb urlhash
Enter new hash length [1-255]: 25
Hashing is based on the URL, including the HTTP Host: header (if present), up to a maximum
of 255 bytes.
3. Set the metric for the real server group to minmisses or hash.
1. Ensure that the switch has already been configured for basic SLB:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
Assign servers to real server groups.
Define virtual servers and services.
For information on how to configure your network for SLB, see Chapter 10, “Server Load Bal-
ancing.”
>> # /cfg/slb/virt 1
>> Virtual Server 1 # service 80
>> Virtual Server 1 http Service # httpslb headerhash
Select Operation: none
Enter new HTTP header name: User-agent
Enter new hash length [1-255]: 25
3. Set the metric for the real server group to minmisses or hash.
If you have large DNS server farms, Alteon OS allows you to load balance traffic based on
DNS names. To load balance DNS names, the host name is extracted from the query, processed
by the regular expressions engine, and the request is sent to the appropriate real server.
For example, Figure 16-4 shows a DNS server farm load balancing DNS queries based on
DNS names. Requests with DNS names beginning with A through G are sent to Server 1; DNS
names beginning with H through M are sent to Server 2; DNS names beginning with N through
T are sent to Server 3; DNS names beginning with U through Z are sent to Server 4.
To configure the switch for DNS load balancing, perform the following procedure:
1. Before you can configure DNS load balancing, ensure that the switch has already been
configured for basic SLB with the following tasks:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server (DNS server address).
Assign servers to real server groups.
Define virtual servers and services.
Enable SLB.
For information on how to configure your network for SLB, see Chapter 10, “Server Load
Balancing.”
Define server port and client port.
>> # /cfg/slb/layer7/slb/cur
For easy configuration and identification, each defined string has an ID attached, as shown in
the following example:
ID SLB String
1 any, cont 1024
2 www.[abcdefg]*.com, cont 1024
3 www.[hijklm]*.com, cont 1024
4 www.[nopqrst]*.com, cont 1024
5 www.[uvwxyz]*.com, cont 1024
7. Add the defined string IDs to the real server using the following command:
NOTE – If you don't add a defined string (or add the defined string “any”) the server will han-
dle any request.
The No Cache/Cache Control for cache redirection feature in Alteon OS allows you to off load
the processing of non-cacheable content from cache servers by sending only appropriate
requests to the cache server farm. When a Cache-Control header is present in a HTTP 1.1
request, it indicates a client's special request with respect to caching, such as to guarantee up-
to-date data from the origin server. If this feature (Cache-Control: no cache directive) is
enabled, HTTP 1.1 GET requests are forwarded directly to the origin servers.
NOTE – The term origin server refers to the server originally specified in the request.
The HTTP 1.0 Pragma: no-cache header is equivalent to the HTTP 1.1 Cache-Con-
trol header. By enabling the Pragma: no-cache header, requests are forwarded to the ori-
gin server.
NOTE – For cache redirection, at any given time one HTTP header is supported globally for
the entire switch.
By separating static and dynamic content requests via URL parsing, Alteon OS enables you to
send requests with specific URLs or URL strings to designated cache servers. The URL-based
cache redirection option allows you to off load overhead processing from the cache servers by
only sending appropriate requests to the cache server farm.
NOTE – Both HTTP 1.0 and HTTP 1.1 requests are supported.
If the request is a non-GET request such as HEAD, POST, PUT, or HTTP with cookies, it
is not sent to the cache.
If the request is an ASP or CGI request or a dynamically generated page, it is not sent to
the cache.
If the request contains a Cookie, it can optionally bypass the cache.
Examples of matching string expressions are:
/product
Any URL that starts with “/product,” including any information in the “/product” direc-
tory
product
Any URL that has the string “product”
Some of the common noncacheable items that you can configure the switch to add to, delete, or
modify are:
Internet
in
scr ipt.b
ET
- bin/
/cgi
PG
.com
ostc
TT
w.h d=v1
ww 2c+ibm%
n-H
T/ hwp%
GE m/q?s=
ahoo.co
No
p://f inance.y
GET/htt
GET/product/Webswitch.html
GbESM $ /product
information
GET/company/images/switch.gif
$
images
$
Requests matching the URL are load balanced among the multiple servers, depending on the
metric specified for the real server group (leastconns is the default).
No NAT
In this NAT method, the traffic is redirected to the cache with the destination MAC
address of the virtual server replaced by the MAC address of the cache. The destination IP
address remains unchanged, and no modifications are made to the IP address or the MAC
address of the source or origin server. This works well for transparent cache servers,
which process traffic destined to their MAC address but use the IP address of some other
device.
Half NAT
In this most commonly used NAT method, the destination IP address is replaced by the IP
address of the cache, and the destination MAC address is replaced by the MAC address of
the cache. Both the IP address and the MAC address of the source remain unchanged.
Full NAT
In this NAT method, the source IP address and the source MAC address are replaced by
the IP address and MAC address of the cache. This method works well for proxy cache
servers.
1. Before you can configure URL-based cache redirection, configure the switch for basic
Server Load Balancing (SLB) with the following tasks:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
For information on how to configure your network for SLB, see “Server Load Balancing” on
page 171.
3. Configure the parameters and file extensions that bypass cache redirection.
a) Add or remove string IDs that should not be cacheable.
b) Enable/disable ALLOW for non-GETS (such as HEAD, POST, and PUT) to the ori-
gin server, as described below.
Ena: The switch allows all non-GET requests to the origin server.
Dis: The switch compares all requests against the expression table to determine
whether the request should be redirected to a cache server or the origin server.
c) Enable/disable cache redirection of requests that contain “cookie:” in the HTTP
header.
Ena: The switch redirects all requests that contain “cookie:” in the HTTP header to
the origin server.
Dis: The switch compares the URL against the expression table to determine
whether the request should be redirected to a cache server or the origin server.
d) Enable/disable cache redirection of requests that contain “Cache-control:no
cache” in the HTTP 1.1 header or “Pragma:no cache” in the HTTP 1.0 header
to the origin server.
Ena: The switch redirects all requests that contain Cache-control: no cache
in the HTTP 1.1 header or Pragma:no cache in the HTTP 1.0 header to the origin
server.
Dis: The switch compares the URL against the expression table to determine
whether the request should be redirected to a cache server or the origin server.
4. Define the string(s) to be used for cache SLB. Refer to the parameters listed below:
For example, with the “/images” string, the server will handle these requests:
/images/product/b.gif
/images/company/a.gif
/images/testing/c.jpg
The server will not handle these requests:
/company/images/b.gif
/product/images/c.gif
/testing/images/a.gif
/images/product/b.gif
/images/company/a.gif
/images/testing/c.jpg
/company/images/b.gif
/product/images/c.gif
/testing/images/a.gif
/
/index.htm
/default.asp
/index.shtm
>> # /cfg/slb/layer7/slb/cur
For easy configuration and identification, each defined string has an ID attached, as shown in
the following example:
ID SLB String
1 any
2 .gif
3 /sales
4 /xitami
5 /manual
6 .jpg
NOTE – If you don't add a defined string (or add the defined string “any”), the server will han-
dle any request.
The server can have multiple defined strings. For example: “/images”, “/sales”, “.gif”
With these defined strings, the server can handle requests that begin with “/images” or “/sales”
and any requests that contain “.gif”.
8. Define a real server group and add real servers to the group.
The following configuration combines three real servers into a group:
>> # /cfg/slb/filt <filter number> (Select the menu for Filter #x)
>> Filter <filter number># sip any (From any source IP addresses)
>> Filter <filter number># dip any (To any destination IP addresses)
>> Filter <filter number># proto tcp (For TCP protocol traffic)
>> Filter <filter number># sport any (From any source port)
>> Filter <filter number># dport http (To an HTTP destination port)
>> Filter <filter number># action redir (Set the action for redirection)
>> Filter <filter number># rport http (Set the redirection port)
>> Filter <filter number># group 1 (Select real server group 1)
>> Filter <filter number># ena (Enable the filter)
No NAT option:
>> # /cfg/slb/pip
>> Proxy IP Address# pip1 12.12.12.12 (Configure proxy IP address)
>> # /cfg/slb/filt <filter number>
>> Filter <filter number># rport 3128 (Specify redirection port)
>> Filter <filter number># adv (Select the advance menu)
>> Filter <filter number> Advanced# proxy ena(Enable proxy IP address)
For more information on proxy IP addresses, see “Proxy IP Addresses” on page 190.
NOTE – When the proto parameter is not tcp or udp, then sport and dport are ignored.
>> # /stats/slb/layer7/redir
Total URL based Web cache redirection stats:
Total cache server hits: 73942
Total origin server hits: 2244
Total none-GETs hits: 53467
Total 'Cookie: ' hits: 729
Total no-cache hits: 43
>> # /cfg/slb/layer7/slb/cur
ID SLB String
1 any
2 .com
3 .org
4 .net
7. Configure the real server(s) to handle the appropriate load balance string(s).
Add the defined string IDs to the real servers:
NOTE – If you don’t add a defined string (or add ID=1), the server will handle any request.
1. Before you can configure header-based cache redirection, ensure that the switch is
already configured for basic SLB with the following tasks:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
Assign servers to real server groups.
Define virtual servers and services.
>> # /cfg/slb/layer7/slb/cur
ID SLB String
1 any
2 Mozilla
3 Internet Explorer
4 Netscape
7. Add the defined string IDs to configure the real server(s) to handle the appropriate load
balance string(s).
NOTE – If you don't add a defined string (or add the ID 1), the server will handle any request.
Hashing is based on the URL, including the HTTP Host header (if present), up to a maximum
of 255 bytes. You can optimize “cache hits” by using the hashing algorithm to redirect client
requests going to the same page of an origin server to a specific cache server.
For example the switch could use the string “nortelnetworks.com/products/2224/” for hashing
the following request:
To configure the switch for cache redirection based on a hash key, use the following procedure:
hash ena: Enables hashing based on the URL and the host header if it is present. Specify
the length of the URL to hash into the cache server.
hash disable: Disables hashing based on the URL. Instead, the host header field to calcu-
late the hash key.
If the host header field does not exist in the HTTP header, then the switch uses the source
IP address as the hash key.
Internet
3 2 1
BladeCenter
Alteon OS also supports exclusionary string matching. Using this option, you can define a
server to accept any requests regardless of the URL, except requests with a specific string.
NOTE – Once exclusionary string matching is enabled, clients cannot access the URL strings
that are added to that real server. This means you cannot configure a dedicated server to
receive a certain string and, at the same time, have it exclude other URL strings. The exclu-
sionary feature is enabled per server, not per string.
1. Before you can configure URL string matching, ensure that the switch has already been
configured for basic SLB:
Assign an IP address to each of the real servers in the server pool.
Define an IP interface on the switch.
Define each real server.
Assign servers to real server groups.
Define virtual servers and services.
Enable SLB.
For information on how to configure your network for server load balancing, see Chapter 10,
“Server Load Balancing.”
2. Add the load balancing strings (for example test, /images, and /product) to the real
server.
ID SLB String
1 any
2 test
3 /images
4 /product
If you configured a string “any” and enabled the exclusion option, the server will not handle
any requests. This has the same effect as disabling the server.
Construction Description
[^abc] Matches any single character except those inside the bracket
Size of the regular expression structure after compilation cannot exceed 43 bytes for load
balancing strings and 23 bytes for cache redirection. The size of regular expression after
compilation varies, based on regular expression characters used in the user input string.
Use “/” at the beginning of the regular expression. Otherwise a regular expression will
have “*” prefixed to it automatically. For example, “html/*\.htm” appears as “*html/
*\.htm”.
Incorrectly or ambiguously formatted regular expressions are rejected instantly.
For example:
where a “+” or “?” follows a special character like the “*”
A single “+” or “?” sign
Unbalanced brackets and parenthesis
/cfg/slb/layer7/slb/add
or
/cfg/slb/layer7/slb/redir/add
As a result, both HTTP SLB and application redirection can use regular expression as the
resource.
NOTE – The more complex the structure of the string, the longer it will take for the server to
load balance the incoming packets.
The Content Precedence Lookup feature allows you to combine up to two Layer 7 load balanc-
ing mechanisms. You can specify which types of Layer 7 content to examine, the order in
which they are examined, and a logical operator (and/or) for their evaluation.
The following Layer 7 content types can be specified:
URL SLB
HTTP Host
Cookie
Browsers (User agent)
URL hash
Header hash
Using the above content types with the and and or operators, the switch is configured to refine
HTTP-based server load balancing multiple times on a single client HTTP request in order to
bind it to an appropriate server. Typically, when you combine two content types with an opera-
tor (and/or), URL hash and Header hash are used in combination with Host, Cookie, or
Browser content types. For example, the following types of load balancing can be configured
using the Content Precedence Lookup feature:
NOTE – Cookie persistence can also be combined with the Layer 7 content types. For more
information on cookie persistence, see Chapter 17, “Persistence.”
For example, the Content Precedence Lookup feature can be used in the following scenarios:
If the client request is sent without a cookie and if no HTTP SLB is configured, then the
switch binds the request to the real server using normal SLB.
If the client request is sent without a cookie, but HTTP SLB is configured on the switch,
then the request is bound to real server based on HTTP SLB.
If the client request is sent with a cookie, and a real server associated to the cookie is
found in the local session table, then the request will stay bound to that real server.
Requirements
Enable Direct Access Mode (DAM), or configure proxy IP address if DAM is disabled.
Enable delayed binding.
Internet GbESM 1
2
3
If the Content Precedence Lookup feature is configured with the or and and operators, the
request from the client is as follows:
The company has a limited number of public IP addresses and wishes to assign them on a very
conservative basis. As a result, the company implements virtual hosting by advertising a single
virtual server IP address that includes both customers’ Web sites. Additionally, the hosting
company assigns only one service (HTTP port 80) to support the virtual server.
The virtual hosting company wishes to maintain the flexibility to allow different types of con-
tent to be placed on different servers. To make most efficient use of their server resources, they
separate their servers into two groups, using their fastest servers to process dynamic content
(such as .cgi files) and their slower servers to process all static content (such as .jpg files).
Internet GbESM 1
To configure content precedence lookup for the example in Figure 16-8, the hosting company
groups all the real servers into one real server group even though different servers provide ser-
vices for different customers and different types of content. In this case, the servers are set up
for the following purpose:
Table 16-2 Real Server Content
Server Customer Content
Server 1 Customer A Static .jpg files
Server 2 Customer A Static .jpg files
Server 3 Customer A Dynamic .cgi files
Server 4 Customer B Static .jpg files
Server 5 Customer B Dynamic .cgi files
When a client request is received with www.a.com in the Host Header and .jpg in the URL,
the request will be load balanced between Server 1 and Server 2.
To accomplish this configuration, you must assign multiple strings (a Host Header string and a
URL string) for each real server.
A layer 7 deny filter is basically a deny filter except that the deny action is delayed until HTTP
content is examined to see if the packet should be denied.
Figure 16-9 shows an incoming client request with a virus string. The switch is configured for
Layer 7 deny filter, so it blocks the incoming packet with the virus string and prevents it from
entering the network.
Internet GbESM 1
Servers
2
2. Define the virus string patterns or offending HTTP URL request to be blocked.
ID SLB String
1 ida
2 %c1%9c
3 %c0%af
4 playdog.com
>> Filter 1 Advanced L7deny# addstr 1 (Add the code red virus string)
>> Filter 1 Advanced L7deny# addstr 2 (Add the code blue virus string)
>> Filter 1 Advanced L7deny# addstr 3 (Add the code blue virus string)
>> Filter 1 Advanced L7deny# addstr 4 (Add the offending URL request)
>> Filter 1 Advanced# l7deny ena (Enable the Layer 7 deny filter)
“Overview of Persistence” on page 432. This section gives an overview of persistence and
the different types of persistence methods implemented in Alteon OS.
“Cookie-Based Persistence” on page 434. The use of cookie persistence provides a mech-
anism for inserting a unique key for each client of a virtual server. This feature is only
used in nonsecure socket layer (non-SSL) connections. This section discusses in detail
how persistence is maintained between a client and a real server using different types of
cookies.
“Server-Side Multi-Response Cookie Search” on page 447. This section explains how to
configure the switch to look through multiple HTTP responses from the server to achieve
cookie-based persistence.
“SSL Session ID-Based Persistence” on page 448. This section explains how an applica-
tion server and client communicate over an encrypted HTTP session.
“Windows Terminal Server Load Balancing and Persistence” on page 450. This section
explains how to configure load balancing and persistence for Windows Terminal Services
431
24R9742, March 2006
Alteon OS 21.0 Application Guide
Overview of Persistence
In a typical SLB environment, traffic comes from various client networks across the Internet to
the virtual server IP address on the GbE Switch Module. The switch then load balances this
traffic among the available real servers.
Persistence-based SLB enables the network administrator to configure the network to redirect
requests from a client to the same real server that initially handled the request. Persistence is an
important consideration for administrators of e-commerce Web sites, where a server may have
data associated with a specific user that is not dynamically shared with other servers at the site.
In Alteon OS, persistence can be based on the following characteristics: source IP address,
cookies, and Secure Sockets Layer (SSL) session ID.
Many clients sharing the same source IP address (proxied clients): Proxied clients
appear to the switch as a single source IP address and do not take advantage of SLB on the
switch. When many individual clients behind a firewall use the same proxied source IP
address, requests are directed to the same server, without the benefit of load balancing the
traffic across multiple servers. Persistence is supported without the capability of effec-
tively distributing traffic load.
Also, persistence is broken if you have multiple proxy servers behind the switch perform-
ing SLB. The switch changes the client’s address to different proxy addresses as attempts
are made to load balance client requests.
Single client sharing a pool of source IP addresses: When individual clients share a
pool of source IP addresses, persistence for any given request cannot be assured. Although
each source IP address is directed to a specific server, the source IP address itself is ran-
domly selected, thereby making it impossible to predict which server will receive the
request. SLB is supported, but without persistence for any given client.
Using Cookies
Cookies are strings passed via HTTP from servers to browsers. Based on the mode of opera-
tion, cookies are inserted by either the switch or the server. After a client receives a cookie, a
server can poll that cookie with a GET command, which allows the querying server to posi-
tively identify the client as the one that received the cookie earlier.
The cookie-based persistence feature solves the proxy server problem and gives better load
distribution at the server site. In the switch, cookies are used to route client traffic back to the
same physical server to maintain session persistence.
Cookie-Based Persistence
Cookies are a mechanism for maintaining state between clients and servers. When the server
receives a client request, the server issues a cookie, or token, to the client, which the client then
sends to the server on all subsequent requests. Using cookies, the server does not require
authentication, the client IP address, or any other time-consuming mechanism to determine
that the user is the same user that sent the original request.
In the simplest case, the cookie may be just a “customer ID” assigned to the user. It may be a
token of trust, allowing the user to skip authentication while his or her cookie is valid. It may
also be a key that associates the user with additional state data that is kept on the server, such as
a shopping cart and its contents. In a more complex application, the cookie may be encoded so
that it actually contains more data than just a single key or an identification number. The
cookie may contain the user’s preferences for a site that allows their pages to be customized.
Internet 1
GbESM
2
Servers
3
The following topics discussing cookie-based persistence are detailed in this section:
Cookie Formats
A cookie can be defined in the HTTP header (the recommended method) or placed in the URL
for hashing. The cookie is defined as a “Name=Value” pair and can appear along with other
parameters and cookies. For example, the cookie “SessionID=1234” can be represented in
one of the following ways:
Cookie Properties
Cookies are configured on the switch by defining the following properties:
With cookie-based persistence enabled, session persistence for browsers that do not accept
cookies will be based on the source IP address. However, individual client requests coming
from a proxy firewall will appear to be coming from the same source IP address. Therefore, the
requests will be directed to a single server, resulting in traffic being concentrated on a single
real server instead of load balanced across the available real servers.
In this mode, the client sends a request to visit the Web site. The switch performs load balanc-
ing and selects a real server. The real server responds without a cookie. The switch inserts a
cookie and forwards the new request with the cookie to the client.
Internet 1
NOTE – The passive cookie mode is recommended for temporary cookies. However, you can
use this mode for permanent cookies if the server is embedding an IP address.
Internet 1
Subsequent requests from Client 1 with the same cookie value will be sent to the same real
server (RIP 1 in this example).
Instead, the server is configured to return a special persistence cookie which the switch is con-
figured to recognize. The switch then intercepts this persistence cookie and rewrites the value
to include server-specific information before sending it on to the client. Subsequent requests
from the same client with the same cookie value are sent to the same real server.
Rewrite cookie mode requires at least eight bytes in the cookie header. An additional eight
bytes must be reserved if you are using cookie-based persistence with Global Server Load Bal-
ancing (GSLB).
NOTE – Rewrite cookie mode only works for cookies defined in the HTTP header, not cookies
defined in the URL.
Internet 1
NOTE – When the switch rewrites the value of the cookie, the rewritten value represents the
responding server; that is, the value can be used for hashing into a real server ID or it can be
the real server IP address. The rewritten cookie value is encoded.
2. Either enable Direct Access Mode (DAM), or disable DAM and specify proxy IP
address(es) on the client port(s).
Enable DAM for the switch.
3. If proxy IP addresses are used, make sure server processing is disabled on the server
port.
4. Select the appropriate load-balancing metric for the real server group.
Once you specify cookie as the mode of persistence, you will be prompted for the following
parameters:
Absolute timer
The syntax for the absolute timer is MM/dd/yy[@hh:mm]. The date and time is based on
RFC 822, RFC 850, RFC 1036, and RFC 1123, with the variations that the only legal time
zone is GMT. Once the expiration date is met, the cookie is not stored or given out. For
example,
Relative timer
This timer defines the elapsed time from when the cookie was created. The syntax for the rela-
tive timer is days[:hours[:minutes]]. For example,
NOTE – If the cookie expiration timer is not specified, the cookie will expire when the user's
session ends.
GET /product/switch/UID=12345678;ck=1234...
Host: www.nortelnetworks.com
Cookie: UID=87654321
Look for the cookie in the HTTP header
The last parameter in this command answers the “Look for cookie in URI?”
prompt. If you set this parameter to disable, the switch will use UID=87654321 as
the cookie.
Look for the cookie in the URI
The last “Look for cookie in URI?” parameter is set to enable. Therefore the switch will
use UID=12345678 as the cookie.
This command directs the switch to use the sid cookie, starting with the first byte in the
value and using the full 16 bytes.
Select a specific portion of the sid cookie as a hashing key for selecting the real server:
This command directs the switch to use the sid cookie, starting with the eight byte in the
value and using only four bytes. This uses 789a as a hashing key.
Using wildcards for selecting cookie names:
With this configuration, the switch will look for a cookie name that starts with ASPSES-
SIONID. ASPSESSIONID123, ASPSESSIONID456, and ASPSESSIONID789 will
all be seen by the switch as the same cookie name. If more than one cookie matches, only
the first one will be used.
For example, if Server 1 sets the cookie as “Set-Cookie: sid=12345678,” then all traf-
fic from a particular client with cookie sid=12345678 will be directed to Server 1.
In Alteon OS, the network administrator can modify a response counter to a value from 1-16.
The switch will look for the persistence cookie in this number of responses (each of them can
be multi-frame) from the server.
Using the SSL session ID, the switch forwards the client request to the same real server to
which it was bound during the last session. Because SSL protocol allows many TCP connec-
tions to use the same session ID from the same client to a server, key exchange needs to be
done only when the session ID expires. This reduces server overhead and provides a mecha-
nism, even when the client IP address changes, to send all sessions to the same real server.
NOTE – The destination port number to monitor for SSL traffic is user-configurable.
NOTE – The SSL session ID can only be read by the switch after the TCP three-way hand-
shake. In order to make a forwarding decision, the switch must terminate the TCP connection
to examine the request.
New sessions are sent to the real server based on the metric selected (hash,
roundrobin, leastconns, minmisses, response, and bandwidth).
If no session ID is presented by the client, the switch picks a real server based on the met-
ric for the real server group and waits until a connection is established with the real server
and a session ID is received.
The session ID is stored in a session hash table. Subsequent connections with the same
session ID are sent to the same real server. This binding is preserved even if the server
changes the session ID mid-stream. A change of session ID in the SSL protocol will cause
a full three-way handshake to occur.
Session IDs are kept on the switch until an idle time equal to the configured server time-
out (a default of 10 minutes) for the selected real server has expired.
1. An SSL Hello handshake occurs between Client 1 and Server 1 via the switch.
4. The switch selects a real server based on the existing SLB settings.
As a result, subsequent connections from Client 1 with the same SSL session ID are directed to
Server 1.
Client 1
Internet GbESM 1
3
Client 2
4
5. Client 2 appears to the switch to have the same source IP address as Client 1 because they
share the same proxy firewall.
However, the switch does not automatically direct Client 2 traffic to Server 1 based on the
source IP address. Instead an SSL session ID for the new traffic is assigned. Based on SLB set-
tings, the connection from Client 2 is spliced to Server 3.
As a result, subsequent connections from Client 2 with the same SSL session ID are directed to
Server 3.
1. Configure real servers and services for basic SLB, as indicated below:
Define each real server and assign an IP address to each real server in the server pool.
Define a real server group and set up health checks for the group.
Define a virtual server on the virtual port for HTTPS (for example, port 443) and assign a
real server group to service it.
Enable SLB on the switch.
Enable client processing on the port connected to the client.
For information on how to configure your network for SLB, see “Server Load Balancing” on
page 171
2. If a proxy IP address is not configured on the client port, enable DAM for real servers.
3. Select session ID-based persistence as the persistent binding option for the virtual port.
453
24R9742, March 2006
Alteon OS 21.0 Application Guide
Monitoring Ports
The port mirroring feature in the Alteon OS allows you to attach a sniffer to a monitoring port
that is configured to receive a copy of all packets that are forwarded from the mirrored port.
Alteon OS enables you to mirror port traffic for all layers (Layer 2 - 7). Port mirroring can be
used as a troubleshooting tool or to enhance the security of your network. For example, an IDS
server can be connected to the monitor port to detect intruders attacking the network.
As shown in Figure A-1, port 3 is monitoring ingress traffic (traffic entering the switch) on
port 1 and egress traffic (traffic leaving the switch) on port 2. You can attach a device to port 3
to monitor the traffic on ports 1 and 2.
OK
LINK
Ingress
1
TX/RX Mirrored ports
LINK Egress
2
TX/RX
LINK
Monitoring port 3
TX/RX
LINK
4
TX/RX
Figure A-1 shows two mirrored ports monitored by a single port. Similarly, you can have a sin-
gle or groups of
Ingress and egress traffic is duplicated and sent to the monitor port after processing.
NOTE – When the monitoring port belongs to a different VLAN, all mirrored packets have
an 802.1Q tag field with the VID of the VLAN to which the mirrored port belongs. The VID
included in the tag field depends on which port is monitored.
For example, assume a packet traverses from port EXT1 (VLAN 1) to EXT2 (VLAN 2), and is
monitored on port EXT3. When you monitor EXT1, the packet’s tag includes the VID of
VLAN1. When you monitor EXT2, the packet’s tag includes the VID of VLAN 2.
Client IP address
Source port
Destination IP address
Destination port
Proxy IP address
Proxy port
Matching filter
Matching flag
Ingress port
Real IP address
SP
Only one attribute can be used at a time to filter the session dump. For example, to filter a ses-
sion dump based on client IP address 10.10.10.1, use the following command:
Because VMA is enabled, the command displayed all sessions for client IP address 10.10.10.1
on SP 1. The sessions hash on source IP address and destination IP address.
###################################################################
# alteon.dct - RADLINX Alteon dictionary
#
# (See README.DCT for more details on the format of this file)
###################################################################
#
# Use the Radius specification attributes in lieu of the
# RADLINX Alteon ones
#
@radius.dct
#
# Define additional RADLINX Alteon parameters
# (add RADLINX Alteon specific attributes below)
##################################################################
# alteon.dct - RADLINX Alteon dictionary
###################################################################
#Define Alteon GbESM Layer 2 & Layer 3 dictionary
#@radius.dct
@alteon.dct
VALUE Service-Type user 255
VALUE Service-Type slboper 254
VALUE Service-Type l4oper 253
VALUE Service-Type oper 252
VALUE Service-Type slbadmin 251
VALUE Service-Type l4admin 250
##################################################################
459
24R9742, March 2006
Alteon OS 21.0 Application Guide
2. Open the dictiona.dcm file, and add the following line (as in the example):
@alteon.dct
###################################################################
# dictiona.dcm
###################################################################
# Generic Radius
@radius.dct
#
# Specific Implementations (vendor specific)
#
@pprtl2l3.dct
@acc.dct
@accessbd.dct
@alteon.dct
.
.
.
##################################################################
# dictiona.dcm
##################################################################
3. Open the vendor file (vendor.ini), and add the following data to the Vendor-Product
identification list:
vendor-product = Alteon Blade-server module
dictionary = alteon
ignore-ports = no
help-id = 0
Dport (Destination The destination port (application socket: for example, http-80/https-443/DNS-53)
Port)
NAT (Network Any time an IP address is changed from one source IP or destination IP address to another
Address Translation) address, network address translation can be said to have taken place. In general, half NAT
is when the destination IP or source IP address is changed from one address to another.
Full NAT is when both addresses are changed from one address to another. No NAT is
when neither source nor destination IP addresses are translated. Virtual server-based load
balancing uses half NAT by design, because it translates the destination IP address from
the Virtual Server IP address, to that of one of the real servers.
Preemption In VRRP, preemption will cause a Virtual Router that has a lower priority to go into
backup should a peer Virtual Router start advertising with a higher priority.
Priority In VRRP, the value given to a Virtual Router to determine its ranking with its peer(s). Min-
imum value is 1 and maximum value is 254. Default is 100. A higher number will win out
for master designation.
Proto (Protocol) The protocol of a frame. Can be any value represented by a 8-bit value in the IP header
adherent to the IP specification (for example, TCP, UDP, OSPF, ICMP, and so on.)
Real Server Group A group of real servers that are associated with a Virtual Server IP address, or a filter.
Redirection or A type of load balancing that operates differently from virtual server-based load balancing.
Filter-Based Load With this type of load balancing, requests are transparently intercepted and “redirected” to
Balancing a server group. “Transparently” means that requests are not specifically destined for a Vir-
tual Server IP address that the switch owns. Instead, a filter is configured in the switch.
This filter intercepts traffic based on certain IP header criteria and load balances it.
Filters can be configured to filter on the SIP/Range (via netmask), DIP/Range (via net-
mask), Protocol, SPort/Range or DPort/Range. The action on a filter can be Allow, Deny,
Redirect to a Server Group, or NAT (translation of either the source IP or destination IP
address). In redirection-based load balancing, the destination IP address is not translated to
that of one of the real servers. Therefore, redirection-based load balancing is designed to
load balance devices that normally operate transparently in your network—such as a fire-
wall, spam filter, or transparent Web cache.
RIP (Real Server) Real Server IP Address. An IP addresses that the switch load balances to when requests
are made to a Virtual Server IP address (VIP).
461
24R9742, March 2006
Alteon OS 21.0 Application Guide
SPort (Source Port) The source port (application socket: for example, HTTP-80/HTTPS-443/DNS-53).
Tracking In VRRP, a method to increase the priority of a virtual router and thus master designation
(with preemption enabled). Tracking can be very valuable in an active/active configura-
tion.
You can track the following:
Vrs: Virtual Routers in Master Mode (increments priority by 2 for each)
Ifs: Active IP interfaces on the Web switch (increments priority by 2 for each)
Ports: Active ports on the same VLAN (increments priority by 2 for each)
l4pts: Active Layer 4 Ports, client or server designation (increments priority by 2
for each
reals: healthy real servers (increments by 2 for each healthy real server)
hsrp: HSRP announcements heard on a client designated port (increments by 10
for each)
VIP (Virtual Server IP An IP address that the switch owns and uses to load balance particular service requests
Address) (like HTTP) to other servers.
VIR (Virtual Interface A VRRP address that is an IP interface address shared between two or more virtual rout-
Router) ers.
Virtual Router A shared address between two devices utilizing VRRP, as defined in RFC 2338. One vir-
tual router is associated with an IP interface. This is one of the IP interfaces that the switch
is assigned. All IP interfaces on the GbE Switch Modules must be in a VLAN. If there is
more than one VLAN defined on the Web switch, then the VRRP broadcasts will only be
sent out on the VLAN of which the associated IP interface is a member.
Virtual Server Load Classic load balancing. Requests destined for a Virtual Server IP address (VIP), which is
Balancing owned by the switch, are load balanced to a real server contained in the group associated
with the VIP. Network address translation is done back and forth, by the switch, as
requests come and go.
Frames come to the switch destined for the VIP. The switch then replaces the VIP and with
one of the real server IP addresses (RIP's), updates the relevant checksums, and forwards
the frame to the server for which it is now destined. This process of replacing the destina-
tion IP (VIP) with one of the real server addresses is called half NAT. If the frames were
not half NAT'ed to the address of one of the RIPs, a server would receive the frame that
was destined for it's MAC address, forcing the packet up to Layer 3. The server would
then drop the frame, since the packet would contain the destination IP of the VIP and not
that of the server (RIP).
VRID (Virtual Router In VRRP, a value between 1 and 255 that is used by each virtual router to create its MAC
Identifier) address and identify its peer for which it is sharing this VRRP address. The VRRP MAC
address as defined in the RFC is 00-00-5E-00-01-{VRID}. If you have a VRRP address
that two switches are sharing, then the VRID number needs to be identical on both
switches so each virtual router on each switch knows whom to share with.
462 : Glossary
24R9742, March 2006
Alteon OS 21.0 Application Guide
VRRP (Virtual Router A protocol that acts very similarly to Cisco's proprietary HSRP address sharing protocol.
Redundancy The reason for both of these protocols is so devices have a next hop or default gateway that
Protocol) is always available. Two or more devices sharing an IP interface are either advertising or
listening for advertisements. These advertisements are sent via a broadcast message to an
address such as 224.0.0.18.
With VRRP, one switch is considered the master and the other the backup. The master is
always advertising via the broadcasts. The backup switch is always listening for the broad-
casts. Should the master stop advertising, the backup will take over ownership of the
VRRP IP and MAC addresses as defined by the specification. The switch announces this
change in ownership to the devices around it by way of a Gratuitous ARP, and advertise-
ments. If the backup switch didn't do the Gratuitous ARP the Layer 2 devices attached to
the switch would not know that the MAC address had moved in the network. For a more
detailed description, refer to RFC 2338.
VSR (Virtual Server A VRRP address that is a shared Virtual Server IP address. VSR is Alteon OS proprietary
Router) extension to the VRRP specification. The switches must be able to share Virtual Server IP
addresses, as well as IP interfaces. If they didn’t, the two switches would fight for owner-
ship of the Virtual Server IP address, and the ARP tables in the devices around them would
have two ARP entries with the same IP address but different MAC addresses.
: Glossary 463
24R9742, March 2006
Alteon OS 21.0 Application Guide
464 : Glossary
24R9742, March 2006
Index
Numerics B
80 (port) ................................................... 219, 225 backup servers ................................................... 189
802.1Q VLAN tagging ......................................... 62 bandwidth metric ............................................... 187
BBI
A See Browser-Based Interface ........................ 141
accessing the switch Border Gateway Protocol (BGP) ......................... 121
defining source IP addresses........................... 37 attributes .................................................... 128
RADIUS authentication ................................. 38 failover configuration .................................. 130
security........................................................ 36 route aggregation ........................................ 127
using the Browser-based Interface ................... 31 route maps.................................................. 123
active cookie mode ............................................ 440 selecting route paths .................................... 129
active-active redundancy .................................... 339 use with GSLB ........................................... 246
Server Load Balancing ................................ 353 Bridge Protocol Data Unit (BPDU) ....................... 87
synchronization .......................................... 347 broadcast domains ....................................... 59, 105
active-standby redundancy ................................. 338 Browser-Based Interface ............ 141, 219, 225, 304
configuration .............................................. 350
administrator account ........................................... 41 C
aggregating routes ............................................. 127 cache redirection
example ..................................................... 133 browser-based............................................. 416
allow (filtering) ......................................... 174, 250 delayed binding .......................................... 294
application health checking ................................ 309 example ..................................................... 290
application ports ................................................ 182 HTTP header-based ..................................... 415
application redirection ............................... 252, 287 layer 7 traffic .............................................. 405
client IP address authentication ..................... 297 See application redirection
example with NAT ..................................... 292 servers ....................................288 to 290, 291
games and real-time applications .................. 297 URL hashing .............................................. 417
non cacheable sites...................................... 297 URL-based ................................................. 406
non-HTTP redirects for GSLB...................... 242 CGI-bin scripts .......................................... 176, 188
proxies ................................... 289, 292 to 295 Cisco EtherChannel ....................................... 78, 81
rport .................................................. 292, 296 client traffic processing ...................................... 176
See cache redirection command conventions .......................................... 21
topologies .................................................. 290 Command Line Interface .................................... 141
Web-cache redirection example ......... 288 to 297
465
24R9742, March 2006
Alteon OS 21.0 Application Guide
configuration rules D
port mirroring................................................78
spanning tree .................................................78 default gateway ................................................. 102
Trunking ......................................................78 configuration example ... 72, 104, 220, 226, 232
VLANs ........................................................78 VLAN-based ................................................ 69
configuring default password.................................................. 41
BGP failover ...............................................130 default route
cache redirection .........................................290 OSPF ........................................................ 145
cookie-based persistence ..............................441 delayed binding .............................. 200 to 202, 385
default filter ................................................254 cache redirection ......................................... 294
delayed binding ...........................................202 deny (filtering) .......................................... 174, 250
dynamic NAT .............................................275 detecting SYN attacks ........................................ 202
filter-based security......................................267 dip (destination IP address for filtering) ............... 259
IP routing ...................................................103 disabling real servers ......................................... 183
multiple services..........................................184 Distributed Site State Protocol (DSSP) ................ 210
multi-response cookie search.........................447 dmask
OSPF .........................................................151 destination mask for filtering ........................ 259
port trunking .................................................80 Domain Name System (DNS)
proxy IP addresses .......................................192 filtering.............................................. 266, 269
server load balancing ...................................177 Global SLB (diagram) ................................. 211
spanning tree groups ......................................93 load balancing, layer 7 ................................. 402
static NAT ..................................................274 round robin ................................................ 172
TCP rate limiting filters ................................261 dport (filtering option) ............................... 268, 293
tunable hash for filter redirection ...................265 DSSP. See Distributed Site State Protocol.
VLAN-based filters .....................................255 dynamic NAT ................................................... 275
connection time-out ............................................188
content intelligent E
cache redirection .........................................405 End user access control
server load balancing ...................................387 configuring .................................................. 55
cookie EtherChannel ...................................................... 76
active .........................................................440 as used with port trunking ........................ 78, 81
different types .............................................437 expiration timer, insert cookie ............................. 443
expiration timer ...........................................443 external routing ......................................... 122, 140
header ........................................................435
insert mode .................................................437
names ........................................................436 F
passive mode ..............................................439 failed server protection, SLB .............................. 172
permanent...................................................435 failover
temporary ...................................................435 overview .................................................... 337
values.........................................................436 fault tolerance
cookie-based persistence .....................................434 port trunking ................................................ 77
Server Load Balancing ................................ 176
filter redirection
tunable hash ............................................... 265
466 Index
24R9742, March 2006
Alteon OS 21.0 Application Guide
Index 467
24R9742, March 2006
Alteon OS 21.0 Application Guide
IP address Layer 7
conservation................................................272 cache redirection ......................................... 405
filter ranges .................................................259 deny filter .................................................. 429
local route cache ranges ................................107 precedence lookup ...................................... 425
private ........................................................272 regular expression matching ......................... 423
proxies ........................... 190, 289, 292 to 295 server load balancing ................................... 387
real server groups ................179, 221, 356, 412 string matching ........................................... 421
real servers .................................174, 177, 221 least connections (SLB Real Server metric).......... 186
routing example.....................................71, 103 leastconn metric ................................................ 186
SLB real servers ..........................................179 Link Aggregation Control Protocol ....................... 82
virtual servers..............................174, 179, 222 lmask (local route cache parameter) .................... 107
IP interfaces lnet (local route cache parameter) ........................ 107
configuration example ..........178, 220, 226, 232 load balancing
example configuration ....................71, 103, 106 DNS .......................................................... 402
IP proxies layer 7 traffic .............................................. 387
for application redirection .............................295 SIP traffic .................................................. 203
for Global Server Load Balancing ..................242 local route cache address range ........................... 107
for Server Load Balancing ............................190 local route cache parameters
See also proxies, proxy IP address (PIP). lmask ........................................................ 107
IP routing ..........................................................176 lnet............................................................ 107
cross-subnet example ...................................100 log
default gateway configuration .................72, 104 filtering option ............................................ 250
IP interface configuration ...............71, 103, 106 log (filtering option) .......................................... 266
IP subnets ...................................................101 logical segment. See IP subnets.
network diagram..........................................101 LSAs ................................................................ 139
subnet configuration example ........................103
switch-based topology ..................................102 M
IP subnets ..........................................................102
routing ...............................................101, 102 management module ............................................ 26
VLANs ........................................................59 Management Processor (MP)
ISL Trunking .......................................................76 use in switch security..................................... 37
manual style conventions ..................................... 21
mapping ports ................................................... 296
J mapping virtual ports to real ports ....................... 193
jumbo frames matching TCP flags ........................................... 279
fragmenting to normal size....................100, 103 maxcons limit............................................ 188, 189
routing ...............................................100, 103 maximum connections ............................... 188, 189
metrics
L real server groups ........................................ 185
MIBs, SNMP ...................................................... 35
LACP .................................................................82 minimum misses (SLB real server metric) ............ 185
Layer 4 minmiss metric .................................................. 185
administrator account .....................................41 mirroring ports .................................................. 454
cache redirection .........................................290 monitoring ports ................................................ 454
server load balancing ...................................177 monitoring real servers ....................................... 199
multi-homing .................................................... 246
multi-links between switches
using port trunking ........................................ 75
multiple services, configuring ............................. 184
468 Index
24R9742, March 2006
Alteon OS 21.0 Application Guide
Index 469
24R9742, March 2006
Alteon OS 21.0 Application Guide
470 Index
24R9742, March 2006
Alteon OS 21.0 Application Guide
Index 471
24R9742, March 2006
Alteon OS 21.0 Application Guide
472 Index
24R9742, March 2006