Broadcom Corporation
16215 Alton Parkway,
Irvine, CA 92619-7013
Release Notes
Broadcom's Advanced Server Features Program For Netware
04/05/2002
Table of Contents
=================
Introduction
Balance Modes and Limitations
NESL Compliance
Installation
Balance Mode Selection
Loading Frame Types
Hot Standby
VLANs
Jumbo Frames
Additional Command Line Keywords
Unloading
Revision History
Introduction
============
BASP.LAN is Broadcom's virtual ethernet driver for Netware 4.x and 5.x that
provides Load-balancing, fault-tolerance, and VLAN features. These features
are provided by creating teams (virtual adapters) that consist of multiple
NIC interfaces. A team can consist of one to six (eight on some systems) NIC
interfaces and each interface can be designated primary or standby*. All
primary interfaces in a team will participate in Load-balancing operations by
sending and receiving a portion of the total traffic**. Standby interfaces will
take over in the event that all primary interfaces have lost their links.
VLANs can be added to a team to allow multiple VLANs with different VLAN IDs
to share the virtual adapter.
Load-balancing and fault-tolerance features will work with any third party's
NIC adapters. VLANs only work with Broadcom or Alteon NIC adapters.
*Standby can only be used in Smart Load-Balance mode (See below).
**In 802.3ad mode, the number of NIC interfaces aggregated is automatically
determined through LACP (See below).
Balance Modes and Limitations
=============================
Smart Load-balance (SLB) is a protocol specific scheme and the level of
support for IP, IPX, and other protocols are listed below.
Load-balancing Fault-tolerance
-----------------------------------------------------
IP Yes Yes
IPX Yes* Yes**
Other protocols No Yes**
*Only outbound load-balancing for IPX.
**Only for Broadcom or Alteon NICs. Alteon's driver ALT.LAN must be version
2.05b or newer released by Broadcom.
Smart Load-balance (SLB) mode works with all ethernet switches without
configuring the switch ports to any special trunking mode. Only IP traffic
will be load-balanced in both inbound and outbound directions. IPX traffic
will be load-balanced in outbound direction only. Other protocol packets will
be sent and received through one primary NIC only. Fault-tolerance for
non-IP traffic is only supported using Broadcom or Alteon NICs.
The Generic Trunking mode requires the ethernet switch to support some
form of port trunking mode (e.g. Cisco's Gigabit EtherChannel or other
switch vendor's link aggregation mode). Trunking mode must be statically
configured on the switch ports that are connected to the team. This mode is
protocol-independent and all traffic should be load-balanced and
fault-tolerant.
802.3ad mode requires the ethernet switch to support 802.3ad with LACP
(Link Aggregation Control Protocol). LACP will try to configure the maximum
number of NICs in the team that are compatible for link aggregation. If LACP
determines that some NICs are not able to aggregate (because of some
restrictive limitations or configurations on the switch), the remaining NICs
that cannot aggregate will be idle. If LACP is completely disabled on the
switch, then only one of the NICs in the team will be used. Some switches
require the LACP ports to be in full duplex mode for them to work. LACP
can be configured active or passive on the team and most switches allow
active or passive selections on a per port basis. At least one side of
each connection must be active otherwise the connection will never be
selected for aggregation. This mode is also protocol-independent and all
traffic should be load-balanced and fault-tolerant.
NESL Compliance
===============
For optimum fault tolerance and recovery operations, BASP.LAN relies on
the NIC drivers to generate NESL (Netware Event Sevice Layer) events during
link changes and other failure events. NESL is an optional feature in the
ODI driver specification and not all drivers support it. For NESL events to
propagate properly to BASP.LAN, ODINEB.NLM must be loaded before the
NESL compliant ODI drivers.
Do the following to check if a NIC driver supports NESL events. Load BASP.LAN
and create a team by binding the NIC adapter to the virtual slot (See
instructions and examples below). In the "Virtual Adapter X Team Members"
screen of the BASP.LAN's menu interface, the Link status of all bound NIC
adapters are shown. Disconnect or connect the NIC adapter's cable and the
link status shown on the screen should change immediately if the NIC driver
supports NESL events.
Installation
============
1. Load BASP.LAN just like a standard LAN driver with all necessary frame
types for the team. BASP.LAN requires a special VSLOT parameter to specify
the virtual slot. The virtual slot can be viewed as a team number.
e.g.
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_EII VSLOT=1
2. Load the network drivers for the NIC adapters that will be part of the
team. The frame types loaded should be the same for all adapters in the team
and same as those loaded for BASP.LAN in step 1. Do not bind protocols
directly to these adapters. Be sure to load ODINEB.NLM (a Novell supplied
NLM) before all network drivers.
e.g.
LOAD ODINEB.NLM
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_1_EII SLOT=1
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_2_EII SLOT=2
3. Bind BASP.LAN to the NIC adapters in the team by using a custom
BASP BIND command at the console.
e.g.
BASP BIND BASP_1_EII B57_1_EII
BASP BIND BASP_1_EII B57_2_EII
Note that if there are multiple frame types loaded on the virtual and the
physical adapters, it is only necessary to bind one frame type on the
virtual adapter to the same frame type on the physical adapter. The other
frame types will be automatically bound.
4. Bind protocols to BASP.LAN.
e.g.
BIND IP BASP_1_EII ADDR=x.x.x.x MASK=x.x.x.x
Note that the recommended sequence is to load BASP.LAN before the network
drivers as outlined above. This allows BASP.LAN to determine the initial
link state of the bound adapters without delay.
Balance Mode Selection
======================
Use "MODE=SLB" for Smart Load-Balance mode, "MODE=TRUNK" for Generic
Trunking mode, or "MODE=802.3AD" for 802.3ad mode. The default is SLB.
e.g.
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_EII VSLOT=1 MODE=TRUNK
In 802.3ad mode, untagged ethernet II frame type must be loaded before LACP
frames can be transmitted and received. LACP will default to active for all
NICs in the team. Use the parameter "LACP=PASSIVE" to change LACP to passive
mode for all NICs in the team. Note that at least one side (server or switch)
must be in LACP active mode for it to work.
e.g.
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_EII VSLOT=1 MODE=802.3AD
LACP=PASSIVE
Loading Frame Types
===================
After one or more NIC adapters are bound to a virtual adapter, additional
frame types can only be loaded in the virtual adapter if the corresponding
frame types are also loaded in the bound adapters. For example,
ETHERNET_802.2 can be loaded in BASP VSLOT 1 if ETHERNET_802.2 are loaded
in B57.LAN SLOT 1 and 2 in the above example.
Similarly, a virtual adapter can only be bound to a physical adapter if
the physical adapter has all the frame types loaded in the virtual adapter.
Hot Standby
===========
In Smart Load-Balance (SLB) mode, one or more NIC adapters can be designated
as hot standbys. Use the keyword "STANDBY" in the BASP BIND command to
indicate binding a NIC adapter as a hot standby.
e.g.
BASP BIND BASP_1_EII B57_1_EII
BASP BIND BASP_1_EII B57_2_EII STANDBY
In the above example, B57_1_EII and B57_2_EII are bound as primary and
hot standby adapters respectively. Note that standby is only valid for
Smart Load-Balance mode.
VLANs
=====
To add VLANs to a team, do the following:
1. Load BASP.LAN with the all necessary frame types and specify the
VLAN ID for each frame type. You can specify a maximum of 64 VLAN IDs and
each VLAN ID can be loaded up to 4 times with 4 different frame types.
e.g. VLAN ID 2 for Ethernet II:
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_V2_EII VSLOT=1 VLAN=2
2. Load the network drivers for the NIC adapters in the team with all the
frame types specified in step 1. Note that the one or more VLAN IDs
specified in step 1 do not have to be specifed when loading the network
drivers. And each frame type loaded in step 1 only needs to be loaded once
for each network driver even if it is loaded multiple times with different
VLAN IDs in step 1. Only Broadcom and Alteon NIC adapters can be used.
ALT.LAN must be version 2.05b or newer released by Broadcom and must include
the keyword FORVLANS.
e.g. Broadcom adapters:
LOAD ODINEB.NLM
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_1_EII SLOT=1
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_2_EII SLOT=2
or Alteon adapters:
LOAD ODINEB.NLM
LOAD ALT.LAN FRAME=ETHERNET_II NAME=ALT_1_EII SLOT=1 FORVLANS
LOAD ALT.LAN FRAME=ETHERNET_II NAME=ALT_2_EII SLOT=2 FORVLANS
3. Bind BASP.LAN to the NIC adapters in the team.
e.g.
BASP BIND BASP_1_V2_EII B57_1_EII
BASP BIND BASP_1_V2_EII B57_2_EII
Note that if there are multiple VLANs (each with one or more frame types)
loaded on the virtual adapter, it is only necessary to bind one frame type
on one VLAN on the virtual adapter to the same frame type on the physical
adapter. The other VLANs will be automatically bound.
4. Bind protocols to BASP.LAN.
e.g.
BIND IP BASP_1_V2_EII ADDR=x.x.x.x MASK=x.x.x.x
This example creates a team with 2 adapters using VLAN ID 2. Outbound
packets will be tagged with VLAN ID 2 and only similarly tagged packets
will be received by the NIC adapters in the team. Additional VLANs
with different VLAN IDs can be created in the same team. The Maximum number
of VLANs per virtual slot is 64. The valid range of VLAN IDs is from 1 to
4094. VLAN=0 indicates the VLAN is untagged and is the default. Use decimal
numbers to specifiy the VLAN ID.
Jumbo Frames
============
Jumbo Frames are supported in all balance modes. The maximum frame size will
be automatically set to the smallest maximum frame size of all NICs in the
team. Use appropriate keywords to enable jumbo frames when loading the NIC
drivers.
e.g.
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_EII VSLOT=1
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_1_EII SLOT=1 JUMBO=ON
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_2_EII SLOT=2 JUMBO=ON
BASP BIND BASP_1_EII B57_1_EII
BASP BIND BASP_1_EII B57_2_EII
Additional Command Line Keywords
================================
CHECKSUM=ON
Enables BASP.LAN to offload TCP/UDP and IP checksums to the bound
NIC adapters if supported. This will improve performance if some or
all NIC adapters in the team support hardware checksums. Be sure to
load the NIC drivers with hardware checksums enabled.
e.g., a team of two BCM5700 NICs with hardware checksums enabled.
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_1_EII CHECKSUM=ON SLOT=1
LOAD B57.LAN FRAME=ETHERNET_II NAME=B57_2_EII CHECKSUM=ON SLOT=2
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_EII CHECKSUM=ON VSLOT=1
BASP BIND BASP_1_EII B57_1_EII
BASP BIND BASP_1_EII B57_2_EII
NOSCREEN
Disables the menu-driven screen when BASP.LAN is loaded for the first
time.
e.g.
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_EII VSLOT=1 NOSCREEN
GVRP
Enables GVRP (Garp VLAN Registration Protocol) for the VLAN that is
loaded. An untagged 802.2 frame type must be loaded in the virtual
adapter and all bound physical adapters for GVRP to take effect.
This is necessary because GVRP uses untagged 802.2 frames to advertise
VLAN memberships. Use VLAN=0 FRAME=ETHERNET_802.2 in the LOAD command
to specify untagged 802.2 frame type.
e.g.
LOAD BASP.LAN FRAME=ETHERNET_II NAME=BASP_1_V2_EII VSLOT=1 VLAN=2
GVRP
LOAD BASP.LAN FRAME=ETHERNET_802.2 NAME=BASP_1_V2_EII VSLOT=1 VLAN=0
Unloading
=========
BASP.LAN can only be unloaded from the console command line after all
bound adapters in every VSLOT have been unbound.
Revision History
================
v2.10 (04/05/02)
-Fixed failover problem that seldom occured in certain environments.
v2.09 (03/14/02)
- Added version & signature to structures for BMAPI.
- Using a new method to pass vlan support to drivers.
v2.08 (12/20/01)
- Fixed some LACP bugs.
- Added jumbo frames support.
v2.07 (12/07/01)
- Added 802.3AD with LACP.
v2.05 (08/18/01)
- Fixed team member/non-team loading frame type bug.
v2.04 (07/16/01)
- Fixed multiple load/unload with multiple vlans problem.
v2.03 (07/06/01)
- Fixed Ipx bind problem introduced in 2.02.
v2.02 (07/03/01)
- Added universal vlan support for 3rd party cards.
v2.01 (06/26/01)
- Added better vlan support.
v2.00 (06/21/01)
- Fixed link up/down problems.
v1.16 (05/07/01)
- Fixed problem in OEM .LDI file.
v1.15 (05/04/01)
- Added OEM strings.
v1.14 (02/15/01)
- Fixed the problem of receiving priority tagged frames.
v1.13 (01/25/01)
- Fixed a problem that arises when NIC drivers are loaded after BASP and
are subsequently bound. Also changed the recommended procedure to load
NIC drivers after BASP so that the link state can be determined without
delay.
v1.12 (01/19/01)
- Added 64 bit screen counters for tx/rx packet/byte counts.
v1.11 (12/29/00)
- Fixed a minor screen problem.
v1.10 (12/19/00)
- Added check to prevent BASP from unloading when NIC adapters are still
bound in any VSLOT.
v1.09 (12/14/00)
- Fixed a menu problem under Netware 4.2 SMP.
v1.08 (11/30/00)
- Fixed a IPX failover problem with B57.LAN v1.00.
v1.07 (11/22/00)
- Fixed some screen counters.
v1.06c (11/21/00)
- Made BASP.LAN loadable in Netware 4.x.
v1.06b (11/16/00)
- Added TCP/UDP/IP checksum offload support.
- Fixed a minor VSLOT parameter problem and a screen problem.
v1.06 (10/31/00)
- Fixed problem #498 (Unable to unbind standby NICs).
v1.05c (10/30/00)
- Fixed the abend problem when B57 is unloaded with hot plug (#481).
v1.05b (10/28/00)
- Fixed the abend problem when a bound NIC is unloaded (#465).
v1.05 (10/27/00)
- Fixed the abend problem with Generic Trunking (#416).
- Fixed the ECB leak before the adapters establish link.
- Removed card add/delete from the GUI.
v1.04 (10/23/00)
- Implemented a new scheme to address IPX fail-over. This scheme only
works on Tigon2 and Tigon3 cards. Requires Broadcom's ALT.LAN v2.05b or
newer and B57.LAN v0.15 or newer.
- Resolved problems #361, #336, #341.
v1.03d (10/16/00)
- Further improved the fail-over scheme (problem #318).
- Fixed a problem in trunking mode where ARP packets are using the wrong
physical address (problems #322, #323).
- Add text in section VLANS sub-section 3 this file to clarify BIND BASP for
the first VLAN. (OEM DFCT22165).
v1.03c (10/11/00)
- Improved the new fail-over scheme.
- Fixed a problem in Alteon's Tigon2 driver. Use ALT.LAN v2.04d or newer.
- Resolved problems #221, #285, #300, #295
v1.03b (10/06/00)
- Added outbound IPX load-balancing and fail-over.
- Added VLAN support for B57.LAN.
- Resolved problems #211, #221, #244, #281, #282.
v1.03a (10/05/00)
- Added IPX fail-over. (Partially working for NT clients only)
- Fixed some screen problems with VLANs.
- Resolved Problem #105.
- Resolved Problem #189.
- Resolved Problem #191.
v1.02 (08/31/00)
- Increased to a maximum of 64 VLANs.
- Fixed a problem that hangs MP machines when cables are disconnected.
- Fixed some screen problems.
v1.01 (08/24/00)
- Fixed problem with multiple VLANs.
- Fixed some screen problems.
v1.00 (08/22/00)
- Revised VLAN scheme to work with ALT.LAN v2.04.
- Added Generic Trunking.
- Enhanced the menu interface.
v0.09 (08/03/00)
- Tested and debugged GVRP code.
- Fixed the problem of adding and deleting multicast addresses with VLANs.
- Added NWSNUT.NLM module dependency.
v0.08 (08/01/00)
- Changed name to BASP.LAN.
- Fixed the problem of over-allocating receive buffers.
- Increased MSMTxFreeCount.
- Fixed the problem of crashing when NESL events are generated by some
3rd party NIC cards.
- Released basp4x.lan for Netware 4.x with no screen functions.
v0.07 (07/18/00)
- Fixed the problem of failing to switch traffic back to the primary
from the hot-standby when the primary recovers.
v0.06 (07/12/00)
- Fixed the problem of sometimes not releasing ECBs during unload.
Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.