(C)Copyright 1998-2003 3Com Corporation. All rights reserved (C)Copyright 1998-2003 Marvell. All rights reserved -------------------------------------------------------------------------------- 3Com 3C2000-T Adapter Driver for Novell NetWare 6 This file contains 1 Overview 2 Required Files 3 Installation 4 Parameters -------------------------------------------------------------------------------- 1 Overview The EL2000.LAN driver is a 32-bit ODI HSM Novell NetWare server driver for the 3Com 3C2000-T Adapter . The driver complies with the CHSM Driver Specification Version 1.11 from January 29, 1998. It was tested on NetWare 6, NetWare 5.10, and NetWare 4.20. It should run on all NetWare versions from 4.20 to 6. 2 Required Files EL2000.LAN driver EL2000.LDI installation script 3 Installation NOTE: The setting for MINIMUM PACKET RECEIVE BUFFERS in the STARTUP.NCF must be increased to at least 120 per adapter (e.g. for three adapters you should add "SET MINIMUM PACKET RECEIVE BUFFERS=360" to STARTUP.NCF). On SMP systems, you may have to multiply this number with the number of active processors. If the adapter is installed in the machine NetWare detects the new adapter and tries to install a driver. Press to get a list of all available drivers and then to install an unlisted driver. Enter the path to the driver and select EL2000.LAN. Choose Yes to copy the driver to the server. NetWare will now install the driver. Once the driver has been installed, the adapter parameters or bindings can be changed in the AUTOEXEC.NCF file using the NWCONFIG tool. 4 Parameters SLOT = [ 1 .. 65535 ] Description: Defines the slot in which the adapter is installed. Help: If you do not enter a slot number, the driver scans automatically for network adapters and prompts the slot number in which the network card is found at the server console. Example: LOAD EL2000 ... SLOT=3 ... FRAME = [ ETHERNET_802.2 | ETHERNET_II | ETHERNET_SNAP | ETHERNET_802.3 ] Description: Sets the frame type used by the network. Help: The NetWare Server and the Workstations must use the same frame type. Otherwise they cannot communicate with each other. Example: LOAD EL2000 ... FRAME=ETHERNET_II ... NODE = [ xxxxxxxxxxxx ] Description: Overwrites the network card node address. Help: With this parameter, you can overwrite the default node address. In a network, every network card must have its own unique node address. Do not change this address unless you are prepared to administer local addresses according to the IEEE 802.2 specifications. The driver defaults to the node address on the board, which corresponds to an undefined override. Example: LOAD EL2000 ... NODE=40005A123456 ... MAXFRAMESIZE = [ 512 .. 9018 ] Description: Set the maximum frame size. Help: The value has to be in the range 512 to 9018. The default value is 1514. Setting the value above 1514 is only effective if you use an ETHERTSM.NLM that supports Jumbo Frames and if you load the frame type ETHERNET_II as the first frame type on the specific adapter. Example: LOAD EL2000 ... MAXFRAMESIZE=9018 ... HWCSUM = [ ON | OFF ] Description: Controls hardware checksum offloading Help: By default ON the hardware checksum offload for IP/TCP/UDP is enabled. There should be no need to disable checksum offload. Offloading computation of internet checksums is only supported by NetWare 5.x or higher. Example: LOAD EL2000 ... HWCSUM=OFF ... QUIET = [ AUTO | ON | OFF ] Description: Suppress driver status messages. Help: By default AUTO will be used which means that status messages will not be suppressed if running on a server and will be suppressed if running on a client. OFF means that messages will not be suppressed. ON means that messages will be suppressed. Redundant Link Management Technology (RLMT) The following parameters can be used to override the RLMT default settings. These parameters are effective on dual link adapters only. PREFERREDPORT = [ A | B ] Description: Select the preferred port. Example: LOAD EL2000 ... PREFERREDPORT=B ... RLMTMODE = [ CLS | CLP | CLPSS ] Description: Select the RLMT mode. Help: In CLS mode (Check Link State) RLMT relies on the hardware to signal the link state. The decision on the active port depends on these signals only. This mode is used by default. NOTE: For dual link fiber adapters only: When auto-negotiation is not used (either by forcing half or full duplex mode or because auto-negotiation has failed in sense mode) the hardware is not able to detect a disconnected transmit line. This may result in switching to a non usable port. To work around this problem set the mode for auto-negotiation to ON or use the RLMT mode CLP or CLPSS. The modes CLP (Check Local Ports) and CLPSS (Check Local Ports and Segmentation Status) are meant to operate in configurations where a network path between the ports on one adapter exists. Especially, they are not designed to work where adapters are connected back-to-back. In CLP mode, the two ports of an adapter exchange frames to check each other. Please configure your network in a way that the link between the ports transports LLC test packets. In CLPSS mode RLMT requests information from the switch where the two ports are connected to determine if the net is segmented between the two ports. You need switches for this mode to operate, and the switches must be configured to use the Spanning Tree Protocol. Example: LOAD EL2000 ... RLMTMODE=CLP CHGBCPRIO = [ ON | OFF ] Description: Controls priority for switching decisions for RLMT. Help: By default OFF. This parameter is only effective on RLMTMODE = CLP | CLPSS. If CHGBCPRIO is set to ON, RLMT subordinates the priority of last broadcast received for port switching reasons. Example: LOAD EL2000 ... CHGBCPRIO=ON ... Auto-negotiation Some switches or hubs do not work with auto-negotiation. To work around this problem the driver works in a so called sense mode. In this mode it tries to use auto-negotiation and if it fails it forces full-duplex mode. You can also force the mode using one of the following parameters. AUTONEG_ = [ SENSE | ON | OFF ] = port designator (A or B) Description: Set mode for auto-negotiation on port. Help: By default, fiber adapters will use SENSE (Autosense) and copper adapters will use ON. SENSE is not allowed on copper adapters. Example: LOAD EL2000 ... AUTONEG_A=ON ... DUPCAP_ = [ BOTH | FULL | HALF ] = port designator (A or B) Description: Define duplex capabilities for the port. Help: If AUTONEG_ is set to ON (also the default value for copper adapters), this parameter defines the duplex mode capabilities the adapter will show on the port in the auto-negotiation process. Changing this parameter may lead to a failed auto-negotiation process. By default BOTH will be used which means the port is capable to connect with full-duplex or half-duplex. If AUTONEG_ is set to OFF, DUPCAP_ determines if the adapter uses a full duplex or a half duplex connection. The value BOTH is not allowed in this case. Example: LOAD EL2000 ... DUPCAP_A=FULL ... FLOWCTRL_ = [ SYMORREM | SYM | LOCSEND | NONE ] = port designator (A or B) Description: Define flow control capabilities for the port. Help: Used as workaround for switches that do not behave standards-compliant. By default, SYMORREM will be used. The values represent the following configurations: SYMORREM: supporting symmetric flow control and asymmetric flow control towards me (possible results: symmetric flow control, asymmetric flow control towards me, no flow control) SYM: supporting symmetric flow control only (possible results: symmetric flow control, no flow control) LOCSEND: supporting asymmetric flow control to other station (possible results: flow control to other station, no flow control) NONE: supporting no flow control Example: LOAD EL2000 ... FLOWCTRL_A=NONE ... ROLE_ = [ AUTO | MASTER | SLAVE ] = port designator (A or B) Description: Defines the role of the port for the physical clock generation. Help: For two 1000Base-T ports to communicate, one must operate as master (providing timing information), while the other must be slave. Usually, this is negotiated between the two ports during link establishment. If this should ever fail, you can force a port to a specific setting with this parameter. If AUTONEG_ is set to OFF, the correct role must be set manually. The value AUTO is not allowed in this case. SPEED_ = [ Auto | 1000 | 100 | 10 ] = port designator (A or B) Description: Defines the link speed to use. Help: If AUTONEG_ is set to ON, this parameter defines the link speed capabilities the adapter will try to use for the auto-negotiation process. Changing this parameter may lead to a failed auto-negotiation process. By default AUTO will be used which means the port is capable to connect with 10, 100, 1000. If AUTONEG_ is set to OFF, SPEED_ determines the link speed the adapter uses for the connection. The value AUTO is not allowed in this case. Example: LOAD EL2000 ... SPEED_A=1000 ... Interrupt Moderation (Paced Packet Batch) Interrupt moderation can be used to decrease the CPU load on systems with high utilization. But the latency of packets will increase. To enable interrupt moderation you must specify the mode and the interrupt rate. The parameters IRQPERSEC and MAXIRQPERSEC are mutual exclusive. MODERATE = [ NONE | RX | TX | BOTH ] Description: Interrupt moderation mode. Help: By default, NONE will be used which means interrupt moderation is disabled. If RX is used only receive interrupts are moderated, which means if more than the specified rate of interrupts occur they will be congested to reach the specified rate. But other interrupts may occur without any limitation. If TX is specified transmit complete interrupts will be moderated. BOTH will lead to a moderation of receive and transmit interrupts. IRQPERSEC = [ 1000 .. 15000 ] Desription: Interrupt rate for static moderation. Help: Independent of the interrupt load only at specified intervals interrupts occur. This will increase latency of receive or transmit path dependent on the mode specified using parameter MODERATE. This parameter has a different meaning if used together with POLL. Example: LOAD EL2000 ... MODERATE=TX IRQPERSEC=5000 MAXIRQPERSEC = [ 1000 .. 15000 ] Desription: Interrupt rate for dynamic moderation. Help: Using dynamic interrupt moderation means that interrupt moderation will be enabled only if more than the specified number of interrupts occur. The measured interrupt rate is not limited to receive or transmit interrupts as specified in MODERATE. All interrupts will be counted. If more interrupts occur the interrupts specified in MODERATE are moderated. If the number of interrupts goes down below the specified level moderation is disabled. Using dynamic interrupt moderation has the advantage that the latency is increased only if interrupt load is high. Example: LOAD EL2000 ... MODERATE=BOTH MAXIRQPERSEC=1000 Other Parameters Please do not try changing these parameters in a production environment unless you have figured out that they fit your needs. The changes can affect the server performance in a postive or negative way. It depends on the purpose of the server. The default settings of the driver should meet the requirements of a normal server. TXCOPYSIZE = [ 0 .. 9018 ] Description: Size of Transmit Copy Buffers. Help: The first fragments of a frame will be copied together as long as they fit into this buffer. This may lead to a higher transmit throughput but it will cost some CPU load. A value of 0 will disable this feature. The default value is 128 on a server and 0 on a client. If the driver cannot get physically contiguous memory for copy buffers of size 4097 and above, it will not load. POLL Description: Use polling instead of interrupts. Help: In polling mode the adapter will not generate interrupts for every received and transmitted frame. Interrupts are used for backup purposes only. The interrupt rate can be modified using parameter IRQPERSEC between 10 and 15000 per second (10 by default). Polling may be useful if there are multiple adapters in the server and interrupts become a problem. By default the adapter works in interrupt mode. TXDESC1 = [ 20 .. 200 ] Description: Number of transmit descriptors on active port. Help: It may be useful to decrease this value if there is not enough memory in the server. The default value is 100 on a server and 40 on a client. TXDESC2 = [ 20 .. 200 ] Description: Number of transmit descriptors on standby port. Help: It may be useful to decrease this value if there is not enough memory in the server. The default value is 30 on a server and 20 on a client. RXDESC1 = [ 10 .. 200 ] Description: Number of receive descriptors on active port. Help: It may be useful to decrease this value if there is not enough memory in the server. The default value is 100 on a server and 20 on a client. RXDESC2 = [ 10 .. 200 ] Description: Number of receive descriptors on standby port. Help: It may be useful to decrease this value if there is not enough memory in the server. The default value is 10. Known limitations: - Not yet released for NetWare 3.1x. - Client32 not yet supported. - Needs at least 120 free RCBs per adapter at startup. Therefore the driver cannot be installed during installation of NetWare. NetWare 4.1x can be installed without the installation of a network adapter but NetWare 5 installation will abort if no network adapter is installed. *** End of Readme File ***