Document ID   Synopsis   Date
17416   Sun FastEthernet Support Document/FAQ   18 Sep 2001


Description Top
Fast_Ethernet_PSD 

1.0 About Sun FastEthernet 100Base-T Interfaces 
    Sun Fast Ethernet 100BaseT Product Support document. 

	1.1: Implementation of 100BaseT overview 
 	1.2: SunFastEthernet Built-In on Ultra Sparc Systems 
	1.3: SunFastEthernet Adapter 1.0 / 1.1 - 10/100Mbps SBUS Card -
	     Option X1056 (bigmac) 
	1.4: SunFastEthernet Adapter 2.0 - 10/100Mbps SBUS Card -
	     Option X1059A (Colossus lite) 
	1.5: SunSwift Adapter - 10/100Mbps Fast SCSI-2 SBUS Card 
	1.6: Solaris X86 and PPC Architecture 
	1.7: Sun QuadFastEthernet SBUS Adapter : SQFE / QFE
	     option X1042A: (Quattro) 
	1.8: Sun Quad FastEthernet 2.0 - X1049A 
	1.9: Sun FastEthernet PCI adapter - option X1032 (FreshChoice) 
 	1.20 Sun QuadFastEthernet PCI x1034 (Gumby) 
 	1.21 Sun Trunking 
	1.22 SunSwitch Gigabit Ethernet Switch- Option x1046 
	1.23 Sun GigabitEthernet - option x1045 

2.0 Troubleshooting and Debugging 100Base-T Interfaces 

	2.1 General troubleshooting Notes 
	2.2 Open Boot Prom Diagnostics 
 	2.3 Solaris Utilities and Diagnostics. 
 	2.4 hme , qfe and be device Driver Debug Mode 

3.0 Common How To's 

	3.1: What are the steps in the ethernet interface hardware and
	    software Installation? 
	3.2: How to set the SunFastEthernet device to Force 10 or 100Mb
 	     speed and half or full duplex mode? 
	3.3: How to Enable/Disable TPE Link Test ? 
	3.4: How do I disable the fastethernet interface device from being
	     seen by Solaris? 
	3.5: All my ethernet interfaces have the same ether address. How do
	     I modify the interfaces ether Mac address? 
	3.6: How do I set the fast ethernet port as the primary interface? 

4.0 Frequently Asked Questions 

	4.1: Why does prtconf shows that the driver is not attached? 
	4.2: What are the different kind of MII transceivers that I can use
	     on 100Mb ? 
	4.3: What is Full Duplex Ethernet ? Is the Sun Fast ethernet
	     full-duplex capable? 
	4.4: What is wiring Diagram for a back to back cross-over category
	     5 cable? 
	4.5: What are the pin-outs for the 100Base-Tx RJ45 Twisted Pair
	     Ethernet Connector and cabling? 
	4.6: Fast Ethernet Performance ? what's the actual per port Mbps
	     performance? 
	4.7: What are all the HME Device driver and ndd parameters? 
	4.8: Who does auto-negotiation work? and what are the hme driver
	     defaults 
	4.9: How do I tune and test the FastEthernet tcp performance? 
	4.10: What are the ethernet interface statistics that show in the
	      undocumented netstat -k command? 
	4.12: Why am I getting alot of collisions? What is a late collision? 
 
5.0 Patches 

	5.1: SunOS 4.X (Solaris 1.x) Patches 
	5.2: Solaris Patches 
 
6.0 Known Bugs and RFE's 

7.0 References 

	7.1 Web References 
	7.2 SunSolve Infodocs and SRDBs: 
	7.3 Sun Educational Services courses of interest. 

==============================================================================

1.0 About Sun FastEthernet 100Base-T Interfaces

Sun Fast Ethernet 100BaseT Product Support document.

This Tip Sheet documents a wide variety of information concerning Fast Ethernet 
Interface as implemented in the Sun Microsystems Solaris operating system 
environment. It is intended to supplement Manuals and other information on 
Sun Fast Ethernet 100BaseT interfaces. 

1.1:  Implementation of 100BaseT overview
------------------------------------------------------------------------------

Implementing 100BASE-T is a cost-effective, high-speed networking solution to 
the network bandwidth bottleneck. It has emerged as one of the fastest growing 
LAN implementations with support from numerous network vendors. Fast Ethernet 
can be implemented in the shared or switched environment by connecting to a 
100BASE-T Fast Ethernet hub or switch. 

The 100Base-T on Sun Sparc Ultras , and SparcStations with SunFastEthernet 
and SunSwift Options conforms to the interoperability specifications defined 
by the Fast Ethernet Alliance and IEEE standards 802.3u 100BASE-TX , 802.13 
and 802.3 10BASE-T. 100BaseT Fast Ethernet uses the same CSMA/CD access method 
used by 10Mbps ethernet ,which makes this technology easy to integrate with 
existing networks . 

Common installations use the standard RJ45 connector which is 100BASE-TX (2 
pair Category 5 cabling ) for the node to hub/switch link, however other variety 
of media options are available by using the MII Media Independent Interface 
connection, such as a MII-FX transceiver for Fiber (100BaseFL, 100BaseFX), 
MII -T4 transceiver (100BaseT4) and MII-AUI transceiver (for 10Base5 or 10Base2 
coaxial cabling). 

The 2.0 version of the adapter utilizes the FEPS ASIC developed for the built-in 
10/100 Mbps Ethernet on the Sun(TM) Ultra(TM) 1 Creator 170E and higher models. 
SunFastEthernet operates with all hubs/switches that comply with the 
100BASE-T standard. 10/10 0Mbps auto-sensing is used on the interfaces to negotiate 
with the "link partner" for optimal speed and duplex setting., while be compatible 
with "older out-dated" 10Base-T technology. 

Taking advantage of 100BaseT Fast Ethernet, Hubs and switching technology, 
high bandwidth network application s on Sun Servers can have up to 10 Times 
the through-put over 10Mbs ethernet. 

Reference: http://www.Sun.COM/products-n-solutions/hw/networking/sunfastethernet_sun.html 
http://www.sun.com/products-n-solutions/hw/networking 

There are other documentation for routing and general 10Mb ethernet that may 
be useful to reference. See documentation and reference sections below that 
has links and pointers to other detailed information related to Fast Ethernet. 

\b Pre-Installation notes 

Plan the network topology, wiring and hub implementation carefuly. Using Certified 
and tested cabling is essential to a solid 100BaseT network. Cabling Specifications 
for 10BaseT are not as strict thus problems may not show up until 100Mb ethernet 
is implemented. 100BaseTX has a limit of 100 meters segment length and maximum 
network span of approximately 210 meters. 100BaseT allows only two repeater 
hops per segment, with repeater hops less than 15 meters apart in order not 
to exceed the 210-meter maximum span. When implementing 100BaseT, it is important 
that the network devices are IEEE 802.3 compliant. 

1.2:  SunFastEthernet Built-In on Ultra Sparc Systems
------------------------------------------------------------------------------
The following models include built-in 10/100Mbps Fast Ethernet as the on-board
primary ethernet interface.

       Sparc Ultra 170E Creator
       Sparc Ultra 2 Series
       UltraSPARC Server
       Enterprise Ultra servers

Device driver:

  The hme (HappyMeal) device drive is bundled in Solaris 2.5 11/95 and above
   in packages SUNWhmd, header files are in SUNWhmdu.
  No extra packages are required for these models (2.5 and above is required)
   with the exception of loading the hme related patches.

Connectors:

  RJ45 : 100 Mbps (2-pair Category 5 UTP), or 10 Mbps (Category 3 or better UTP wiring)
  MII : Media Independent Interface (MII), which connects to external transceivers.

Notes:

  The Link Integrity Test is enabled/disabled through the OBP.  (when using older
   network hubs).
  Full Duplex is only supported when connecting two Sun systems back-to-back
   using a crossover cable - IEEE Industry standards for Full Duplex
   inter-operability between vendors will be completed in the near future.
  
***** Using multiple Fast Ethernet Interfaces on Sparc Ultra 170E Creator system and
    Ultra 2 Series system may require a workaround for bugid 1261001.
    if hme "phy reset failure" errors are encountered.
    The work around is to either use a different SBUS slot or alternatively add
    the following to /etc/system: 

      "set fas:fas_enable_SBUS64=0"
      "set hme:hme_64bit_enable=0"

   These settings basically configure the driver/hardware to not transfer data on the
   SBUS in 64bit mode. Thus the drivers transfer data in 32bit mode instead. Performance
   testing with these settings conclude that their was no measurable performance degradation
   the fix is in process of testing.

1.3: SunFastEthernet Adapter 1.0 / 1.1 - 10/100Mbps SBUS Card - Option X1056 (bigmac)
--------------------------------------------------------------------------------

The 1.0 version is Sun Microsystems first implementation of 100BaseT LAN Technology. 
The SunFastEthernet(TM) 1/0 adapter card is a dual-mode high-speed Ethernet 
SBUS card that operates at 10/100 Mbit per second (Mbps). Features auto-sensing 
10 Mbps or 100 Mbps speeds. This board only supports Half-Duplex mode of operation. 

As announced in Solaris 2.6 release notes, Solaris 2.6 will be the last version 
of OS to support this card. EOL . There is no "be" driver available for Solaris 
7. 

The BigMAC "be" X1056 is not / never has been supported on Ultra platforms. 

X1059A SunFastEthernet 2.0 is a direct replacement for this card. 

 Primary documentation:

    SunFastEthernet Adapter User Guide Part No.: 801-6109-11 
    SunFastEthernet Adapter Product Note Part No.: 802-1304-10 

 X1056 option part numbers:

    595-3223 Assy board and documentation 
    501-2655 Assy board only 
    704-4885 CDROM SunFastEthernet/QED 1.1 4.x driver 
    801-6109 SunFastEthernet Adapter Users Guide 
    802-1304 SunFastEthernet Adapter Product Note 

 Connectors:

    RJ45 : 100 Mbps (2-pair Category 5 UTP), or 10 Mbps (Category 3 or better UTP wiring) 
    MII : Media Independent Interface (MII), connection for external transceivers . 

Systems supported:

   Sun-4/15/30/40/50/60/65/75
   SS4 / SS5 / SS10 / SS20 / SS600 / SS1000 / SC2000 
   Not supported on any Ultra platform.

 Driver:

   The be (BigMac) device driver used for this option is capable of running at
    10mbps and half duplex 100mbps. The driver automatically negotiates and
    configures the interface speed. SunFastEthernet 1.1 SW CD for 2.3 or 1.x.

   On Solaris 2.3 the command /usr/sbin/be_speed is available. This command can be used 
    to force the interface speed. This command is not delivered as standard with 
    Solaris 2.4 and 2.5 and could be manually copied from patch 101820 if needed 
    (for troubleshooting or addressing bug 1194402).

Notes: 

"The BEC device and be driver used with FastEthernet 1.0 option 1056 will no 
longer be supported as of Solaris 2.7" 

If the OBP version is earlier than 2.3, upgrade the OBP. (ex: 2.23 is greater 
than 2.3) 

Third party Fast Ethernet hub/switch must conform to 803.3u 100BaseT Fast Ethernet 
Alliance specs. 

TPE Link Integrity Test is enable/disable through the Open Boot Prom. 

SunOS 4.1.3 or Solaris 2.3 (H/W 5/95) or higher is required. 

SunOS requires SunFastEthernet 1.1 Software, the SunOS 4.x drivers only work 
on sun4m platforms. 

Solaris 2.3 requires the SUNWbmac package.Packages, driver is bundled with 
hardware 5/94 and 8/94 If it SUNWbmac doesn't show in pkginfo then refer to 
Patch-ID# 101820-08. 

Solaris 2.4 & 2.5 has the be device driver included in the bundled SUNWcsr 
package. 

FastEthernet 1.0 does not support full duplex operation. 

See Patches section - updates to the be driver are required. 

Older cards should be upgraded , replace the 501-2655-07 or lower with the 
501-2655-08 or higher. (FCO #: A0070-1 ). Board label = 501265508 rev 50 1.4:
SunFastEthernet Adapter 2.0 - 10/100Mbps SBUS Card - Option X1059A (Colossus 
lite)
--------------------------------------------------------------------------------
FastEthernet Adapter 2.0 (Colossus lite) - Option X1059A 

The 2.0 version of the adapter card is a dual-mode high-speed Ethernet SBUS card that
 operates at 10/100 Mbit per second (Mbps).Features auto-sensing 10 Mbps or 100 Mbps
 speeds along with half and full-duplex capabilities.

Primary Documentation:

   SunFastEthernet Adapter 2.0 Installation and User's Guide - PN 802-6022-10 
   Platform Notes: The hme Fast Ethernet Device Driver - PN 802-3970-10 

X1059 Part Numbers:

   501-2919 Assy board 
   704-5304 CDROM Sun FastEthernet Adapter 2.0 
   802-6022 SunFastEthernet Adapter 2.0 Installation and User's Guide 
   802-5333 (801-3970) Platform Notes: The hme Fast Ethernet Device Driver 
   805-2023-10 Platform Notes: The hme SunFastEthernet Device Driver
   802-6022-11  SunFastEthernet Adapter 2.1 Installation and User's Guide  Rev. A July 1996
Connectors:

   RJ45 : 10 Mbps (Category 3 or better UTP wiring), or 100 Mbps (2-pair Category 5 UTP) 
   MII : Media Independent Interface (MII), connection for external transceivers . 

Driver:

  The hme (HappyMeal) device drive is bundled in Solaris 2.5 11/95 and above in packages 
   SUNWhmdl, header files are in SUNWhmdu. 
  Solaris 1.X and 2.4 systems must load the software drivers from the CD-ROM that came 
   with the SunSwift SBUS Adapter. 

Supported Systems:
  (sun4m or greater)
  SPARCstation 5, 10, 20, SPARCclassic, SPARCserver 6x0MP 1000/1000E, SPARCcenter 2000/2000E
  all Sun Ultra and Sun Ultra Enterprise systems.

Notes:

  1.On Sparc 5 prom version 1.34 required if more than 2 interfaces required;bug 1225067 
  2.Sun4c architectures are not supported, rfe/bug 1228213 (SunFastEthernet 2.1 not released ATT) 
  3.On SS1000 and SS2000 PROM Version 2.26 v1203 (or higher) installed on all system boards; bug 1228182. 
  4.Solaris 1.1.1 or Solaris 2.4 and above is required.. 
  5.Device drivers are bundled in Solaris 2.5 OS and above 
  6.Solaris 1.1.2, 2.4, and 2.5 device drivers are on CDROM 704-5304-xx. 
  7.CDROM 704-5304-10/11 is included with Option 1059.. 
  8.See Patches section - updates to the hme driver may be required.
  9.CDROM 704-5304-11 contains driver for sol_1.1.1 (sunos 4.1.3_U1) and sol_1.1.2
 10.Do not load the hme packages from CDROM if using 2.5 or above, the hme driver is included in 2.5.1, 2.6 and 2.7.

Reference:
FE HandBook FastEthernet 2.0 X1059 802-6022-10 ** : SunFastEthernet Adapter 2.0 Installation and User's Guide 802-6022-11 ** : SunFastEthernet Adapter 2.1 Installation and User's Guide 802-5333-10 ** : Platform Notes: The hme Device Driver (PS) 805-2023-10 Platform Notes: The hme SunFastEthernet Device Driver 
link to: http://edist.corp/fehandbook/vol1/Ethernet/GIF/ETHER_13_MII_AUI_Cnvtr.htmlSun Fast Ethernet White Paper Sun Fast Ethernet Products 1.5: SunSwift Adapter - 10/100Mbps Fast SCSI-2 SBUS Card 
--------------------------------------------------------------------------------
SunSwift Adapter (Colossus ) - Option X1018A

The The Sun SBUS Fast Ethernet/Fast-Wide SCSI Controller includes TPE connector 
 supporting 10/100Mbps(100BaseTX) and SCSI-2 (20 Mbytes/s, 16-bit, single-ended)
 Uses the same device and drivers and as the SunFastEthernet 2.0 and on the Built-in Ultra hme interfaces.

Primary Documentation:

  SunSwift SBUS Adapter Installation and User's Guide, 802-6021-10 
  Platform Notes: The hme Fast Ethernet Device Driver - 802-3970-10 

X1018 Part Numbers:

  501-2739 Assy board 
  802-6021-10 SunSwift SBUS Adapter Installation and User's Guide 
  802-3970 Platform Notes: The hme Fast Ethernet Device Driver 

Connectors:

  RJ45: 100 Mbps (2-pair Category 5 UTP), or 10 Mbps (Category 3 or better UTP wiring) 
  SCSI: Wide-to-wide devices Uses a 68-pin to 68-pin cable. Wide-to-narrow devices 
        Uses a 68-pin to 50-pin cable. Use only standard, Sun-supported cabling to 
        ensure reliable SCSI interface connections Use

Driver:

  The hme (HappyMeal) device drive is bundled in Solaris 2.5 11/95 and above in packages
   SUNWhmd, header files are in SUNWhmdu. 
  2.4 systems must load the software drivers from the CD-ROM that came with the SunSwift SBUS Adapter. 
  If you use the SunSwift SBUS Adapter for SCSI purposes only, you must change the device name
    from SUNW,hme to SUNW,hme_idle to avoid a "Link Down - cable problem?" message.  

Supported Systems:

  SPARCstation 5 , 10, 20 SPARCserver 6x0MP 1000/1000E SPARCcenter 2000/2000E 
  all Sun Ultra and Ultra Enterprise 

Notes:

  1.Sparc 5 requires PROM version 1.34 required if more than 2 interfaces; bug 1225067 
  2.SS1000 SC2000 requires PROM Version 2.26v1203 (or higher) installed on all system boards; bug 1228182. 
  3.Sun4c architectures are not supported, rfe/bug 1228213 ( 2.1 ) 
  4.Solaris 2.4 or above is required. 
  5.Device drivers are bundled in Solaris 2.5 and above 
  6.Solaris 2.4 device drivers are on CDROM 794-5626-01. 
  7.CDROM 794-5626-01 is included with Option 1018. 
  8.The SUNWhmdl or SUNWhmd package is required. 
  9.The Link Integrity Test is enabled/disabled through the OBP. 

1.6: Solaris X86 and PPC Architecture
--------------------------------------------------------------------------------

100Mb cards for the X86 or PPC architectures. Implementation and configuration 
is dependent on the Network Interface card (NIC) and the driver update installed. 

Network adapters should be installed according to the documentation provided 
by the board vendor. In most cases, the network adapter is simply installed 
by following the vendor's instructions and Solaris will be able to access it 
after a kernel reconfig. See Solaris X86 documentation on supported NIC's and 
additional information. 

Hardware Compatibility Lists and Driver Update releases (including related 
documentation) are produced periodically as support for new hardware becomes 
available. They are available from these sources: 


o World Wide Web--Open URL http://access1.Sun.COM 

and select "drivers" and then "Driver Updates" or Hardware Compatibility Lists 

link to: http://access1.Sun.COM/drivers/
link to: http://access1.Sun.COM/drivers/hcl/hcl.html

o FTP--Use anonymous FTP to access ftp.uu.net, then go to /vendor/sun/solaris/x86/2.4/. 

o CompuServe--Type go sunsoft and go to the Solaris x86 library. 

Sunsolve X86 specific references: 

infodoc 13330 March HCL for Solaris 2.4 x86 
infodoc 13331 March HCL for Solaris 2.5 x86 
infodoc 14314 Solaris 2.5/2.5.1 x86 Driver Update 4 
infodoc 13162 Solaris 2.4 x86 Driver Update 10 information Solaris on PowerPC 
only supports 10Mb ethernet cards at this time. 

3COM 3C509, 3C589(PCMCI), AMD PCnet-PCI, DEC 21040 


1.7: Sun QuadFastEthernet 1.0 SBUS Adapter : SQFE / QFE option X1042A : - 
(Quattro)
-----------------------------------------------------------------------------

Introduction:

The QFE SBUS adapter introduced by SMCC in April of 1997 is a single wide SBUS 
card with four 10/100 base-tx interfaces. s Sun's Quad Fast Ethernet card is 
the first NIC to support trunking (aug97) and offer multi-homing capabilities. 
It is also the first Quad Fast Ethernet card for the SBUS platform. 

link to: http://www.sun.com/products-n-solutions/hw/networking/pressreleases/grab_release.cgi?all/2
"MOUNTAIN VIEW, Calif. - March 24, 1997 - Providing for the growing network 
bandwidth needs of today's corporation, SunTM Microsystems, Inc. today announced 
the Sun Quad Fast Ethernet (SBUS) network interface card (NIC) that puts four 
10/100 Fast Ethernet channels on a single card. In addition to saving precious 
SBUS slots, this card allows immediate increased network bandwidth with minimal 
cost and disruption, while providing an easy migration path for additional 
future bandwidth improvements with unprecedented trunking, multi-homing and 
full duplex capabilities." 

link to: http://sun-www.EBay.Sun.COM/products-n-solutions/hw/networking/whitepapers/sfewp.html
link to: http://sun-www.EBay.Sun.COM/products-n-solutions/hw/networking/sunfastethernet/
link to: http://sun-www.EBay.Sun.COM/products-n-solutions/hw/networking/sunquadfastethernet/

Features: 

four switchable 10/100base-tx channels with auto negotiation 
Compatible with IEEE 802.3u Standard 
Full Duplex Mode (Without Flow Control) 
Supports 32/64 SBUS at 25mhz and 64 byte burst size 
Utilize single chip CMOS PHY for physical layer interface 
Multiple ID with Local MAC ID storage in OBP Prom (Each port has a unique ethernet 
MAC address.) 
Advanced ASIC design 
Supports 32/64 SBUS at 25mhz and 64 byte burst size 

Part Numbers:

Marketing X1042A 
Assembly 794-7108-01 

Component Description 

401-2114-01 OPF,11.12,08.62,00.25,SW,200,W 
704-5788-10 CD, SUN QUAD FAST ETHERNET 1.0 (Media)<----- *** 
802-1772-11 MNL, MULTILINGUAL BCL 
805-0732-10 MNL,QUAD FASTETHERNET SBUS ADP (Manual) 
805-1444-10 MNL,RN, QUADFASTETHERNET 

Features Notes: First card to officially support FDX Full-duplex Ethernet 
connectivity! Full Duplex Mode (Without Flow Control). (See full-Duplex section) 

For customers that have purchased a X1042A and now want Trunking (FCS 10/20/97), 
there is an upgrade (UG-1042A-1049A-P) that allows for a new board with the 
purchase of the Trunking Software for $995 (requires returning the X1042A to 
the factory). 

Customers with a X1042A board that do not wish to add Trunking do not need 
to upgrade to the X1049A. 

Standards

100-Mbps Ethernet conforms to 100BASE-TX IEEE 802.3u standard 
10-Mbps Ethernet conforms to 10BASE-T IEEE 802.3 standard 

Hardware requirements 

One CPU per Quad FastEthernet port is recommended for maximum throughput 

For systems running at 200 MHz or greater, a minimum of two CPUs per Quad FastEthernet 
adapter card is recommended 

Software requirements

Supported on SolarisTM 2.4, 2.5 and 2.5.1 releases. SUNOS 4.x is not supported 
on the Quad FastEthernet HW. 

Platforms supported 

SPARCstationTM 5, SPARCstation 10, SPARCstation 20, SPARCserverTM 6x0, 
SPARCserver 1000, SPARCcenterTM 2000(E), SunTM UltraTM 140, 10, 170E 200E, 
UltraTM 2 and Enterprise Servers with SBUS I/O Bus Interface SBUS 

SBUS 32/64-bit bus master with up to 64-byte bursts 

Network Connections: 

4 Rj-45 100BaseTx 

Environmental:

Operating 0o to 55o C (32o to 131o F), 5% to 85% relative humidity,
non-condensing 

Storage -20o to 85o C (-4o to 185o F), 5% to 95% relative humidity,
non-condensing 

Power 15 W (3 A maximum at +5 VDC) 

Operating Distance 50 micron MM Fiber, 550 meters Dimensions 5.8-in. x 3.3-in. 
SBUS card 


Notes:

1.The minimum operating system is Solaris 2.4. SunOS 4.x / Solaris 1.x is not 
supported on the qfe. 

2.One CPU per FastEthernet port is recommended to provide the highest speed 
performance possible. 

3. Solaris 2.4 and 2.5 Requires hme driver from QuadFastEthernet 1.0 CD-ROM, 
package SUNWhmdl, SUNWhmdlu. Media PN- 794-7108-01 

4. Solaris 2.5.1 does not require QuadFastEthernet 1.0 Software but the hme 
driver should be updated with Patch 104212-05. 

5. Refer to QuadFastEthernet Installation and User's Guide, 805-0732-10 

OpenBoot PROM (OBP) 

6. SparcStation5 should have Release 2.9 or later required 

7.SPARCserver 6x0MP requires Release 2.10 version 3 or later 

8.SPARCserver 1000/1000E 2000/2000E requires Release 2.26 (or higher) and should 
be installed on all system boards; bug 1228182. 

9. For the UE10000, you will need 1049A Rev 2. 

References: 

1. QuadFastEthernet Installation and User's Guide, 805-0732-10 Sun Quad FastEthernet 
SBUS Adapter Installation and User's Guide 

2. 805-1444-13 Sun Quad FastEthernet SBUS Adapter Release Notes 


2.SunExpress Catalog 

3 SunService Field Engineer Handbook 4 Sun Links 

link to: http://www.Sun.COM/products-n-solutions/hw/networking/sunquadfastethernet/
link to: http://www.Sun.COM/products-n-solutions/hw/networking/whitepapers/sfewp.html

1.8: Sun Quad FastEthernet 2.0 / 2.1  SQFE/S - X1049A
--------------------------------------------------------------------------------

The X1049A (FCS 10/07/97) is our new QFE SBUS NIC that supports Trunking and 
provides a migration strategy to higher bandwidth technologies without requiring 
customers to change their network infrastructure.  

The X1049 QFE SBUS NIC uses qfe driver on SunQuadFastethernet 2.0 / 2.1 CDROM.
This device uses " qfe "naming and requires Packages: SUNWqfedu  SUNWqfed 

  Beginning with the Solaris 2.6 Hardware: 5/98 release, the Sun Quad 
  FastEthernet driver is bundled with the Solaris operating environment. 
  This version of the Sun Quad FastEthernet driver is more current than the 
  one shipped on the Sun Quad FastEthernet 2.1 CD-ROM. 

 Note  -  If your system is running the Solaris 2.6 Hardware: 5/98 
  environment, or future compatible Solaris releases, do not install the 
  software from the Sun Quad FastEthernet 2.1 CD-ROM.

This Board replaces the Old QFE X1042A which has been EOL'd.
  
 Supports Trunking mode, theoretic 800Mb/s Full Duplex  

For customers that have purchased a X1042A and now want Trunking (FCS 10/20/97),
there is an upgrade (UG-1042A-1049A-P) that allows for a new board with the 
purchase of the Trunking Software (requires returning the X1042A to the 
factory).

Customers with a X1042A board that do not wish to add Trunking do not need
to upgrade to the X1049A.

Part Numbers: 
 Option 1049 PN. 501-4837 
 
 Sun Quad Fast Ethernet Adapter 2.0 CDROM 704-5901-10
 
 Sun Quad Fast Ethernet Adapter 2.1 CDROM 704-6116-10

Manuals:

 805-3114-10 Sun Quad FastEthernet SBUS Adapter Install & User's Guide
 805-3893-10 Sun Quad FastEthernet SBUS Adapter Release Notes

Supported Systems:
SS5 / SS10 / SS20 / SS600 / SS1000 / SC2000
A11 / A12 / A14 E3000 / E4000 / E5000 / E6000

The 2.0/2.1 CDROM is the qfe driver  SUNWqfed SUNWqfedu for qfe2.0 SQFE/S
X1049, use the hme for other 100Mb sunfastethernet cards.

Solaris 2.6 Software 5/98 704-6220-10 contains the SUNWqfed SUNWqfedu packages.

Notes

    1. The minimum OS is Solaris 2.5 HW: 4/97 for Quad FastEthernet 2.0. 
    2. The minimum OS is Solaris 2.4 for Quad FastEthernet 2.1 packages
    3. Quad FastEthernet 2.0 software is on CD 704-5901-10. 
    4. QFE/S 2.0 uses the SUNWqfed device driver. 
    5. QFE/S 2.0 supports Sun Trunking 1.0. 
    6. The SS600MP requires OBP 2.10. 
    7. The SS1000 and SC2000 require OBP 2.26. 
    8. One CPU per port is recommended for maximum throughput. 
    9. Two CPUs per QFE/S is recommended for >=200MHz systems. 
    10. The new 1049A has a revision level 02.  
        On the board will be a label marked "501-4837-02".
        If you received a 1049A in exchange for a 1042A during the swap-out
        process do not install it, please return it for a new 1049A with the 
        02 level.
    11. QFE driver has been bundled w/ Solaris since Sol-2.6 HW5/98
--------------------------------------------
 ****
Number of QFE's (X1049) presently supported in various platforms:
 
The Quad FastEthernet Adapter has 4 10/100 Ethernet ports and therefore
requires more CPU than our single port adapters.  To achieve maximum 
performance, we recommend a minimum of 500 MHz per adapter.  

         Ultra 2                         1

         Ex000 systems        4 per system. 

UPDATE:  The number of Quad FastEthernet Adapters supported in
         Enterprise 3000/3500, Enterprise 4000/4500, Enterprise 5000/5500,
         and Enterprise 6000/6500 has been raised to four per system.


We are working on extending the support to many more than this.
       
         Notes:
         -  It is highly recommended (based on QA testing) that you have
            500 MHz of CPU per QFE card for maximum performance.         
         -  For Trunking, you also need 500 MHz per card, with the additional
            requirement that one of the CPU's be at least 167 MHz.             
         -  These numbers are based on maximum performance at heavy loads.

Comments:
 The limitation is due to it having been found that multiple cards can
experience system wide performance degradation under ttcp load testing.

The root of this problem is under investigation and reported in Bug 4100881.
 Sun Network Products Group (NPG) is working with Enterprise Server and Storage Group (ESSG) 
and SunSoft to determine the root cause of this problem.

If  running ports at 10Mb and/or without this type of link level full load then
the problem is greatly reduced.
Reference:
 Bug Id: 4100881 
 Synopsis: qfe testing shows performance problems.
 
-------------

Why is there a limit on cards supported on EX000 platforms?
A:  Ideally we would like to support four to six, and we are trying to get 
     there.  Both the Sunfire/Starfire groups and NPG have agreed to two cards 
     maximum as of today, but are working together to find ways to increase
     the performance and the number of cards supported.

 Q:  Why only 1 card in Ultra 2?
 A:  CPU limitation.  Can't get 500Mhz per card for more than one card.
 
 Q:  Did you say 500 Mhz per card?
 A:  Yes.  This can be in any configuration.  You can have two 250 MHz CPU's,
     three 167's, five 110's, etc.  How you get 500 Mhz is up to you and your
     customer.
     
 Q:  What do you mean "at least a 167 Mhz CPU for trunking"?
 A:  For trunking, all the interrupts that occur are managed by one CPU.  With
     such a heavy load on one CPU, you need to have at least a 167 CPU to handle
     this.  You cannot choose 110 CPU's or 75 CPU's.

The Solaris 2.6 driver for both the SBUS (X1049A) and PCI (X1034A)Quad FastEthernet Adapters 

link to: http://www.sun.com/products-n-solutions/hw/networking/connectivity/sunquadfastethernet/regform.html
Note:  This driver will not work with the older QFE X1042A (uses hme device).

Reference
 Sun Quad FastEthernet Installation Guide, 805-3114-10. 

1.9: Sun FastEthernet PCI adapter - option X1032 (FreshChoice)
--------------------------------------------------------------------------------

The Sun PCI Fast Ethernet/Fast-Wide SCSI controller includes an TPE rj45
connector supporting 10/100Mbps and a 20 Mbytes/s, 16-bit, single-ended SCSI-2
connector. 

The SunFastEthernet adapter provides ten times the speed and performance of
10BaseT and maintains Ethernets CSMA/CD (carrier Sense MultipleAccess with 
Collision Detection) medium access control (MAC) layer. 

Part Numbers:

 Marketing
         X1032A
 hardware
         595-4258-01
 Media
         N/A
 Manual
         802-6628-10 (MNL, SunSwift PCI Install & User's Guide)

 805-1759-10 Sun FastEthernet PCI Adapter Installation and User's Guide

         805-2715-10 Sun FastEthernet PCI Adapter Product Note ps
                                                                              
         805-2901-10 Sun Quad FastEthernet PCI Adapter Release Notes

Supported Systems: 
  Architecture     Solaris 2.5     Solaris 2.6
    Quark             Yes             Yes
    Tazmo             Yes             Yes


Power: 

Notes: 

    1.The SUNWhmd or SUNWhmdu package is required. 
    2.Solaris 2.5, 2.5.1 and 2.6 includes hme device driver in package SUNWhmd. 
    3. hme patch is required.

References: 

805-1759-10 Sun FastEthernet PCI Adapter Installation and User's Guide 
1.SunSwift PCI Adapter Installation and User's Guide, 802-6628-10 805-2715-10 
Sun FastEthernet PCI Adapter Product Note 805-1797-10 Sun Quad FastEthernet 
PCI Adapter Installation and User's Guide 805-1759-10 Sun FastEthernet PCI 
Adapter Installation and User's Guide     

2.SunExpress Catalog 

3.Field Engineer Handbook 1.20 Sun QuadFastEthernet PCI Adapter QFE/P x1034 
(Gumby)

805-1797-10 Sun Quad FastEthernet PCI Adapter Installation and User's Guide
704-6116-10 Sun Quad Fast Ethernet 2.1 CDROM software

See Release notes on Sun Quad Fast Ethernet 2.1 CDROM

Caution - You must follow the hardware and software installation
procedures as documented in the Sun Quad FastEthernet PCI Adapter
Installation and User's Guide (805-1797-10).

Known problems:

Solaris 2.5.1 and PCI configuration. - driver_aliases entries missing

Due to the fact that Solaris 2.5.1 and Solaris 2.5.1 HW 11/95 was introduced
before the PCI QFE card (gumby) the Solaris 2.5.1 CD-ROM does not have the
necessary parameters in /etc/driver_aliases required to boot when the PCI QFE
card is installed.

Thus Solaris 2.5.1 must be installed first without the QFE card being installed. 
Once Solaris is installed /etc/driver_aliases should be modified/verified so
that it includes the following lines:

       qfe        SUNW,qfe
       PCI_PCI    "PCI1011,24"
       PCI        "PCI108e,8000"
       PCI        "PCIclass,060000"
       PCI_PCI    "PCIclass,060400"
             

The PCI QFE card may then be installed, remember to install the QFE PCI in a
66mhz slot. The system will then be able to boot from the installed Solaris. 
Note however that they will not be able to boot from CD-ROM! To boot from
CD-ROM the QFE card will need to be removed to boot from Solaris 2.5.1 CD.

Refer to bug 4091815 and 4101646. 

-----------------

See Release notes on 2.1 CDROM

1.21 Sun Trunking 1.0 , 1.0.1 

Sun Trunking is a server to switch solution that combines multiple links 
in parallel to form a single, high-speed logical link. 
This option implements Sun Trunking Layer on QuadFastEthernet devices. 

Sun Trunking is IEEE 802.3ad Link Aggregation. (no 802.1Q vlan support)

Sun Trunking v1.0.x is an UNBUNDLED product. Customers with QFE cards must
purchase Trunking to implement this feature.

For more information on Sun Trunking refer to:
link to: http://www.sun.com/products-n-solutions/hw/networking  Select Sun Trunking
link to: http://www.sun.com/products-n-solutions/hw/networking/trunking/
a white paper on this technology is located on the Cisco web site:
link to: http://www.cisco.com/warp/public/729/fec/
On Solaris, the packages: [ SUNWqfetr, SUNWqfetx ] provide the Trunking capability
and cannot be obtained without purchasing this UNBUNDLED trunking product option.

Sun Trunking v1.0.1 supports SBUS x1049a and PCI x1034a QFE cards.

On the server end you need a Sun QFE (X1049A or X1034A) with Trunking (trunk-1.0P) running 
Solaris 2.5.1 or 2.6 , and on the switch (100BaseT link partner) you need a trunking capable 
"Link Aggregation" technology.
Solaris systems can also be configured for back to back trunking.

*** Sun Trunking does not work with Solaris 2.7. When released the version will be v1.2. 
----------------------
Key features: 
       Fast ethernet links. Combining 100mbs performance with the high density of four high-speed 10/100 auto-negotiating Ethernet ports, Quad
       fast Ethernet delivers scalable bandwidth, multi-homing and redundancy solutions in a single-wide interface card. 
       Load Balancing. Sun Trunking 1.0 supports true load balancing and failure recovery capabilities. It distributes traffic, including unicast,
       broadcast and multicast traffic, evenly across the aggregated links. In the event of a link failure, Sun Trunking 1.0 automatically redistributes
       loads across the remaining links. 
       Single MAC address. Ports aggregated with Sun Trunking 1.0 share a single, logical MAC address. 
       Transparent to application layer 
       Multiple trunk support 
       Maximum of two trunks per QFE card. 
       Maximum of Four links per trunk maximum. 
       Two definable policies: MAC address or Round Robin SW versions:
----------------------
Sun Trunking 1.0 
       Software   TRUNK-1.0-P 
       CDROM  PN 704-5927-10 
       CDROM booklet 804-5927-10 
   Sun Trunking 1.0 Installation and Users Guide PN 805-2348-10

Sun Trunking v1.0.1 (Trunking v1.0.1 FCS on Monday 11-May-98) supports
	 QFE x1049a & x1034a on Sol-2.5.1 & Sol-2.6 at FCS
	 & includes fixes: ethershare, appletalk, ipx, etc
         4064879: Auto-negotiation is broken at 10Mbps in the hme driver. 
         4077699: Deuterium system hangs when connected to Synoptics 28115 100Mb hub 
         4078996: SUNW,hme0: Link Down - cable problem? after Requesting Internet address 
         4071199: QFE card does not work w/ Synoptics 28115 

  Trunk-1.0-P       Trunking v1.0.1 (software only)          
  
Upgrade option:
   UG-1042A-1049A-P  Upgrade x1042a (hme) to x1049a + Trunking sw. 
----------------------
Part Numbers:
 704-5927-10 CD, Trunking 1.0
 805-2348-10 Trunking 1.0 Installation & Users Guide

 704-5927-10  CD, Trunking 1.0.1
 805-4584-10 Trunking 1.0.1 Installation & Users Guide
 
----------------------
 Packages:
SUNWqfetx  SUNWqfetr 
  
SUNWqfed 
       Sun Quad fast Ethernet Adapter Driver 
SUNWqfedu 
       Sun Quad fast Ethernet Adapter Driver Headers 
SUNWqfetr 
       Sun Trunking Utility 
SUNWqfetx 
       Sun Trunking Man Pages 

The Sol-2.6 HW 5/95 qfe-driver "supports" Sun Trunking but will
not provide Trunking capabilities without buying the unbundled
Trunking software.

----------------------
HW requirements:

 Requires:   QFE/S  (SBUS QuadFastEthernet)  (X)1049A  PN 501-4837
             QFE/P  (PCI QuadFastEthernet)   (X)1034A  PN 501-4366

    with qfe naming  -  Packages: SUNWqfedu  SUNWqfed 
           Use v2.0 driver for 2.5.1 support

----------------------
System considerations:

Supported systems: 
 System Type       No. of QFE's supported
 Ultra 2            1
 Ultra 30           1
 Ultra 450          2
 E3000              2
 E4000/5000         2
 E6000              2
 E10000           (4 per domain)

  -  For Trunking, you also need 500 MHz per card, with the additional
            requirement that one of the CPU's be at least 167 MHz.  
No trunking support on Ultra-1

------------------------------------------------------------------
>  Notes:
 Trunking 1.0 only works on QFE with qfe naming. 

Sol-2.6 Trunking support is in  Trunking v1.0.1 release.

x1034a QFE/P  (PCI QuadFastEthernet) is supported with Trunking 1.0
       QFE/P with v2.0 driver (Sol-2.5.x support)
		
x1049a QFE/S  (SBUS QuadFastEthernet) also supports Trunking 1.0
     with the same drivers (v2.0 or v2.1) as per the PCI card above
     on Sol-2.5.x 

Trunking version 2.0 is expected to not be card centric. 
Sun Trunking v1.2 will be required for Solaris-7 support
next release / currently under development.
The "target FCS" date for Trunking 1.2 is Q4FY99

Board upgrade: from old qfe (hme) to new qfe (qfe 2.0)-  UG-1042A-1049A-P 


----------------------------------------------------------------------
Technical note on trunking policies:
 Sun Trunking v1.x has two policies.
 -----------------------------------
 Round-Robin - typically used only for back-to-back Sun server connections.
 MAC-Hashing - typically used only for Trunking-Capable switch connections.

The most efficient algorithm to use is MAC-Hashing, as it maintains
the temporal ordering of packets within a single stream.  It is best
suited to AGGREGATE multiple clients over a Trunked network fabric
as it hashes (binary XOR last 2 bits) client MAC addresses to determine
which port to use.  With a 4-port trunk, 25% of client traffic would
hash (00,01,10,11) to use each of the four 100BaseT QFE ports.

Simultaneous connections from 4 clients would would cause Each client's mac 
address will hash to each utilize one of the available 100BaseT ports from 
the QFE.  Each client will essentially achieve 100BaseT performance.

With a Trunking-Capable switch, you implement the Trunking policy = MAC-Hashing.
  
Round-Robin policy is useful ONLY for back-to-back connections since
(for obvious reasons) attempting to mac-hash (1) mac-address would
result in using only one wire...  So, Round-Robin attempts to break
up a stream by sending a little down each wire within the Trunk...
and leaves it up to the receiver to receive the packets in the correct
order (or retransmission may occur).
Round-Robin policy is ONLY used for (2) Suns connected QFE back-to-back.

Some Trunking switches mac-hash  (6-bits).  Some switches load odd/even
ports.  Some load one port until its full, then load second port.  All
algorithms used by switch vendors attempt to maintain the temporal
ordering of packets within a stream to arrive in order on a single port.
i.e., a single client conversation will arrive on a single port.  In
all cases, it works out that the Sun should use MAC-Hashing policy
when connected to a trunking-capable switch under current algorithms.

If you are QFE/Trunking between only TWO systems, a back-to-back connection
between two Suns (without a trunking-switch), could utilize Round-Robin
policy and achieve >100BaseT by sharing all the links.

----------------------------------------------------------------------
Switch compatibility notes:

 Refer to Trunking 1.0.1 User's Guide
some switch vendors use the term "trunking" to refer
to their VLAN Trunking technology.  Such vendors may use different
branding names to refer to their "Link Aggregation" technology.
Sun does not actively test every 3rd-party version# or model#.
They change daily. 

Switch vendors are constantly adding "trunking-support"
or FEC EtherChannel compatibility to new switches. 
If a switch vendor advertises "trunking" or EtherChannel
compatibility, then it most likely will operate with Sun.

Multi-vendor Inter-operability Testing is available from  Tolly Group.
link to: http://www.tolly.com
Contact you switch vendor for Sun Trunking, Link Aggregation, Cisco EtherChannel compatibility

Note:  Several switch vendors use different brand-names (for example)
----------------------------------------------------------------------
Sun:		  Trunking
Cisco:		  Fast EtherChannel (FEC) or Gigabit EtherChannel (GEC)
Bay Networks:	  MultiLink Trunking
Extreme Networks: Load Sharing Trunks - "SHARE" and "GROUPING".
Alteon: 	  EtherChannel-compatible trunk groups

Ethernet Switch's support: 
  As of 3/06/98, the list of Trunking Inter-operable switches includes: 

                   Bay Networks BayStack 350T, 350F, 350F-HD, 350T-HD
                             Software:               2.0
                             Module#:                BayStack 350T, 350F, 350F-HD, 350T-HD
                   Cabletron SmartSwitch
                             Software Rev.           Module/Order Code
                             2.01.05 (or above)      2E42-27
                             1.08.05 (or above)      9H422-12
                             1.08.05 (or above)      9H423-28
                             2.01.08 (or above)      6H122-08
                             2.01.05 (or above)      6E122-26
                   Cisco Catalyst 5500/5000 Series switches
                             Software:               2.3 or later
                             Module/Order Code:      WS-X5203 (Fast EtherChannel Switching
                                                     module - TX)
                   Extreme Summit Switches
                             Software:               1.0
                             Module/Order Code:      Summit1 = 11001
                                                     Summit2 = 12001
                   Foundry FastIron Switch
                             Software:               1.0.2
                             Module/Order Code:      FWS 16, FBS 88, FBS 168, FBS 1632
                   HP Advancestack Switch 800T
                             Software:               B.01 or later
                             Module #:               J3245A
                   Plaintree WaveSwitch 9200
                             Software:               2.0.1
                             Module/Order #:         PTP700A (WaveSwitch 9200 chassis)
                   Prominet P550 Cajun Switch:
                             Software:               V1.0.10 or later
                             Module/Order #:         P5500SW and M5520-100TX
                                    
                   3Com Corebuilder 6000
                             Software:               8.4
                             Note:                   8.4 has not yet FCS'd
                   
The Cisco solution is both hw and sw.  So in addition to the 5000 switch, 
you need EtherChannel to enable Sun Trunking. 
 Cisco Fast EtherChannel info  (product name for Trunking).

Additional Cisco EtherChannel References
-----------------------------------------
link to: http://www.cisco.com/warp/public/729/fec/link to: http://www.cisco.com/warp/public/729/fec/fetec_wp.htmlink to: http://www.cisco.com/warp/public/729/fec/faste_an.htmlink to: http://www.cisco.com/public/products_prod.shtml
Extreme note: Sun numbers our ports 0,1,2,3.   Extreme numbers their ports 1,2,3,4
SunSwitch note: The SunSwitch is NOT a trunking capable switch ATT.


1.22 SunSwitch Gigabit Ethernet Switch- Option x1046
FCS'd 9/97 
(8) UTP 10/100BaseT ports and (2) SC 1000Base-SX ports.

SunSwitch, Release 1.1 provides the following incremental
  features:  
  - IEEE 802.1q VLAN tagging
  - 64 VLAN's per switch per network
  - IEEE 802.3x flow control (receive side only)
  
  For the Sun GigabitEthernet Adapter cards, Release 1.1 provides the
  following incremental features:  
  - IEEE 802.1q VLAN tagging
  - dual homing
  - IEEE 802.3x flow control (receive side only)
  - Solaris 2.6 support (Ultra 2, Ultra 30, Ultra 450, E3000-6000)
  
  SunSwitch Manager 1.0, a Java-based management software for the
  SunSwitch, is also available. SunSwitch Manager presents an easy-to-use
  graphical interface for managing and configuring all SunSwitch devices
  on the network. SunSwitch Manager can be ordered as a no-charge X-option
  with new SunSwitch orders.
                                            - 
805-1137-10 SunSwitch 1.0 Installation and Configuration Guide
805-3743-10 SunSwitch 1.1 Installation and Configuration Guide
805-4099-10 SunSwitch Manager 1.0 Users Guide

Option 1046  SunSwitch 

GigabitEthernet SBUS & PCI vge 1.1   CD# 704-5781-12 

link to: http://www.sun.com/products-n-solutions/hw/networking/sungigabitethernet/ SunSwitch Manager v1.0		     CD# 704-6190-10

SunSwitch Installation and Configuration Guide v1.1 CD# 704-6148-10

SunSwitch v1.1 FlashProm Kernel software upgrade (on www.sun.com)
Select: Rel 1.1.0 Upgrade for SunSwitch (DOWNLOADs flash_mp.2022)

Gigabit approved cable:
SC Duplex cable 537-1004 or 537-1006 available through SunExpress, or through the
SMCC
   X973A   595-3378-01      2M cable 537-1004-01
   X978A   595-3379-01     15M cable 537-1006-01

link to: http://www.sun.com/products-n-solutions/hw/networking/sunswitch/
 Notes
  -----
  (1) Jumbo Frames for both the switch and adapter is not supported at
  this time.  
  
  (2) Solaris 2.5.1 support for the E10000 is under test by DHPG
    
new software via Sun's external website:
  
     *SunSwitch download (available NOW): 
link to: http://www.sun.com/products-n-solutions/hw/networking/sunswitch/  
     *Sun GigabitEthernet Adapter download (available SOON): 
link to: http://www.sun.com/products-n-solutions/hw/networking/sungigabitethernet/
1.23 Sun GigabitEthernet - option x1045(Gbe SBUS) x1046(Gbe PCI)

 The vge (Vector Gigabit)  ethernet driver is used to drive the latest Gigabit 1000mbps Ethernet interfaces from Sun.
GigabitEthernet IEEE 802.3z is a standard (approved 26-Jun-98).
Sun Supports the IEEE standard.

  Any vendor who offers an IEEE 802.3z compliant device will be compatible. 
Check your switch vendor for latest GbE firmware, etc.

vge 1.1 FCS'd on March 16 supporting BOTH Sol-2.5.1 and Sol-2.6. *
Sun GigabitEthernet v2.0 NICs support IEEE 802.3z.

The vge driver will be released in different versions as new functionality is included.
Customers who have purchased a GigabitEthernet 1.0 adapter can upgrade to 2.0 
by ordering UG-1044A-1141A (for PCI) and UG-1045A-1140A (for SBUS) until 09/01/99

----------------------------------------
GigabitEthernet 1.0 :
 As of FCS the vge v1.0 driver supports:  
      Gigabit SunSwitch/NIC release 1 functionality (vge v1.0) Current 1000mbps Full Duplex 
      SNMP (Simple Network management Protocol) support 
      Standard 1500 byte MTU (Maximum Transmission Unit) size. 
      Command Line Interface (via RS232 or telnet) (Switch functionality) 
      IEEE 802.1d Spanning-Tree Protocol Support (Switch functionality) 

----------------------------------------
GigabitEthernet 1.1 :
Sun GigabitEthernet Adapter cards, Release 1.1 
 provides the following incremental features:  
   - IEEE 802.1q VLAN tagging
   - dual homing
   - IEEE 802.3x flow control (receive side only)
   - Solaris 2.6 support (Ultra 2, Ultra 30, Ultra 450, E3000-6000)
new features (Release 1.1 Q4FY98)

      Gigabit SunSwitch/NIC release 2 functionality (vge v1.1)future 
      dynamic reconfig 
      Up to 64 network wide VLAN's (Virtual LAN) support 
      IEEE 802.1Q VLAN tag 
      Ethernet Flow Control (IEEE 802.3x) 
      Jumbo Frames - 9Kb MTU (Gigabit ports only). 
      Dual homing (alternate pathing / failover -> 2 GBE NICs & 2 SunSwitches) 
      SNMP and RMON management support (Switch functionality) 
      Solaris 2.6 NIC card driver support (SBUS & PCI) 
      (Sol-2.6 enables NIC feature: TCP checksum offload & byte swapping) 
      SunSwitch Manager (JMAPI GUI to configure & monitor switches) (Switch functionality) 
      Port Mirroring (Switch functionality) 

VLAN INFO:
Solaris CAN support VLANS (802.1q tagging) with Gigabit vge 1.1

Sun Gigabit Ethernet NIC driver vge v1.1 supports 64 VLANS (802.1q)
Sun Gigabit Ethernet SunSwitch      v1.1 supports 64 VLANs (802.1q)

* Maximum 64 VLANS per Gigabit NIC (802.1q tagging)  [1-4094].

* Maximum 64 VLANS per port on the SunSwitch [1-4094].
  You can enable or disable tagging on ALL ports (Gigabit and 10/100BaseT).
  Obviously, you would only use tagging on UTP ports connected to other
  switches or equipment that supported the 802.1q tagging standards.
  SunSwitch ports can be defined to be members of multiple VLANs.

* Each VLAN will define a unique broadcast domain.

* A LAYER-3 or Router device is needed to route packets from
  one VLAN to another (security and/or broadcast isolation, etc...)

Sun vge 1.1 network interface will fully participate
with VLAN tagging (ON THE GIGABIT ETHERNET PORTS, 1000Base-SX)
The Sun vge 1.1 driver can make a single Sun interface have presence
on multiple VLANs simultaneously... with a single vge NIC device.

Notes:
Neither the X1045A Gigabit card or the X1046A Gigabit switch come with a Fiber cable for 1000Base-SX. 
These is the same Fiber cables that are used in FDDI, SSA, ATM

  Please be aware that there are known problems with auto-negotiation
on Sun Gigabit v1.1 NIC & SunSwitch products.  The workaround
is to disable link_negotiation to connect to GbE v2.0 NICs.
(three bugids exist: 4170720, 4143134, 4160476.)

----------------------------------------
GigabitEthernet 2.0 :

 Sun GigabitEthernet 2.0 PCI and SBUS Adapters 

x1140a SBUS Gigabit v2.0   / UG-1045A-1140A
x1141a PCI  Gigabit v2.0   / UG-1044A-1141A

FEATURES 
------------
- Sun Developed
- Fully compliant with IEEE 802.3z Gigabit Ethernet Standard
- Support for full and half-duplex interface connections
- Support for Dynamic Reconfiguration/Alternate Pathing
- One 1000 Base-SX Gigabit Ethernet port, which supports
  Multimode Fiber 62.5u (max length 220 meters) and 50u (max
  length 500 meters)
- PCI: 33/66Mhz, 32/64 bit wide data and addressing formats
  SBUS: 25Mhz, 32/64 bit wide data and addressing formats

----------------------------------------
SunSwitch -
 8 RJ/45 connectors on the front for 10/100/(1000)BaseT connections 
 2 1000BaseSX : SC style ports for Ethernet Gigabit fiber connections.  

Gigabit Ethernet Adapter Card - 
  1 Full-Duplex 1000Base-SX (Gbe) Duplex SC fiber connector 

SC Duplex cable 537-1004 or 537-1006 available through SunExpress, or through the SMCC
   X973A   595-3378-01      2M cable 537-1004-01
   X978A   595-3379-01     15M cable 537-1006-01

Gigabit Ethernet SBUS & PCI vge 1.1 *support* info:
===================================================

   Sol-2.5.1 HW4/97 & greater, PLUS  Sol-2.6
   
   SBUS: Ultra2, E3000, E4000, E5000, E6000  (* +E10K soon!)
   PCI:  Ultra30, E450 (+ Ex000 servers with PCI I/O board).
   		       (Ex000 = E3000, E4000, E5000, E6000)
   		       
   Most platforms: 2 "active" cards supported (U2, U30 = 1 card).
   Redundant-failover cards supported (vge1.1 dual-homing feature)
   		       
 

Gigabit related Products Part Numbers:

x1045a Gigabit Ethernet SBUS adapter (NIC)
x1044a Gigabit Ethernet PCI adapter  (NIC)
x1046a SunSwitch-1 (2 ports 1000Base-SX, 8 ports 10/100BaseT)
x1140a SBUS Gigabit v2.0   / UG-1045A-1140A
x1141a PCI  Gigabit v2.0   / UG-1044A-1141A

x973a  Fiber Cable, 2 meters  (SC connector)
x978a  Fiber Cable, 15 meters (SC connector)
x3837a Null Ethernet Cable (CAT5 back-to-back UTP cable from Cluster
\ 
Packages, SUNWvge
 CD# 704-5781-10
 vge 1.0 GbE for SBUS-only    was VERSION=1.1.5  (superseded by 1.1.8)

 CD# 704-5781-11
 vge 1.0 GbE for SBUS and PCI was VERSION=1.1.8

 CD# 704-5781-12
 vge 1.1 Gigabit for SBUS and PCI is VERSION=2.0.24  (latest version)
  Sun Gigabit v1.1  CD# 704-5781-12
====================================================================
* vge 1.1 FCS'd on March 16 supporting BOTH Sol-2.5.1 and Sol-2.6. *
====================================================================


Software is provided on CD-ROM in package SUNWvge for Solaris 2.5.1 h/w 4/97 and 8/97.

      SunOS 4.x is NOT supported. 
     
      The man page vge(7d) is also provided. 

References:

Sun gigabit White Paper :

link to: http://www.Sun.COM/products-n-solutions/hw/networking/whitepapers/gigabitwp.shtml

SunSwitch and Gigabit Manuals:

1.0 manuals:
805-1135-10  Sun GigabitEthernet PCI Adapter 1.0 User's Guide  
805-1136-10  Sun GigabitEthernet SBUS Adapter 1.0 User's Guide   
805-1137-10  SunSwitch 1.0 Installation and Configuration Guide 

1.1 manuals:
805-3946-10  SunSwitch 1.1 Installation and Configuration Guide (IT)
805-3949-10  Sun GigabitEthernet SBUS Adapter 1.1 User's Guide
805-3951-10  Sun GigabitEthernet PCI Adapter 1.1 User's Guide

Known problems:

Sun Gigabit v1.1 auto-negotiation problems = no link light.
See also: GbE v1.1 BugIDs: 4170720, 4143134, 4160476.

Suggestion:
----------
1. run vge-driver v1.1  (REV=2.0.24 or better)
2. disable link_negotiation on BOTH the Sun NIC and on Switch port.
3. Set your switch port to speed=1000, duplex=full (negot=disabled).

External Links and gigabit info: 
IEEE P802.3z Gigabit Task Force Presentation Materials ftp://stdsbbs.ieee.org/pub/802_main/802.3/gigabit/presentations/mar1997/index.html Gigabit Alliance http://www.gigabit-ethernet.org Consortum http://www.iol.unh.edu/consortiums/ge/index.html CERN Gigabit Ethernet homepage http://www.cern.ch/HSI/gigaether 
link to: http://www.data.com/tutorials/gigabit.htmllink to: http://www.lantimes.com/97/97jul/707a045a.htmllink to: http://www.lantimes.com/97/97feb/702b016a.htmllink to: http://www5.zdnet.com/cshopper/content/9706/cshp0005.html                                  
2.0 Troubleshooting and Debugging 100Base-T Interfaces

2.1 General troubleshooting Notes
--------------------------------------------------------------------------------
** Most network problems are caused by the network itself rather than the interface. 
There is no substitute for a good cable tester and Lan Analyzer or Network Sniffer 
along with experienced network troubleshooting skills.
2.2 Open Boot Prom Diagnostics 
--------------------------------------------------------------------------------
infodoc 17004     Determining OBP revision from the Operating System
--------------------------------------------------------------------------------
devalias - displays current device aliases

.show-SBUS - the card will be identified in a Slot #.

show-devs - shows the device tree

You should see a line (similar to the one in the example below) in the display, 
 specific to the SunFastEthernet Adapter 
 "be" is SunFastEthernet version 1.0, "hme" is SunFastEthernet version 2.0, "le" = 10Mb lance ethernet.

------------------------------------------------------

ok show-devs 

... /iommu f,e0000000/SBUS/ f,e0000000/SUNW,hme 0,8c00000 

... /io-unit f,e0200000/sbi 0,0/qec 1,20000/be 0,0

------------------------------------------------------ 

watch-net-all

this will check network activity or incoming network packets at the HW level.

OpenBoot PROM 2.6 or above, use watch-net-all. OpenBoot PROM 2.3 to 2.5, use the watch-net command. 

Examples:

------------------------------------------------------ 

ok  watch-net-all
 \/io-unit@f,e0200000/sbi@0,0/qec@1,20000/be@0,0
Qe register test -- succeeded.
Internal loopback test -- succeeded.
Transceiver check -- 100 mbps Link Down, 10 mbps Link Up, passed.
Tx/Rx enable/disable test--succeeded
Frame counter test--succeeded
Address detection test--succeeded
Address hash test--succeeded
Looking for Ethernet packets.
`.' is a good packet.  `X' is a bad packet.
Type any key to stop.
.......................................

ok watch-net-all 
/iommu@f,e0000000/SBUS@f,e0001000/SUNW,hme@3,8c00000
Internal loopback test -- succeeded.
Transceiver check -- Using Onboard Transceiver - Link Up.
passed
Using Onboard Transceiver - Link Up.
Looking for Ethernet Packets.
'.' is a Good Packet. 'X' is a Bad Packet.
Type any key to stop.
........... 

------------------------------------------------------ 
2.3 Solaris Utilities and Diagnostics.
--------------------------------------------------------------------------------

o prtconf -pv
  Will print out a representation of the device tree provided by 
  the firmware (PROM).  The '-v' option will also show the 
  property-value pairs.


`prtconf -v ` will  show the SUNW,hme instance 

instance# 0 is device hme0, instance #1 is device hme1

 ---------------------------

SUNW,hme, instance #0
            Driver software properties:
                name <pm_norm_pwr length <4'>
                    value <0x00000001.
                name <pm_timestamp length <4'>
                    value <0x30743b26.
            Register Specifications:
                Bus Type=0xe, Address=0x8c00000, Size=108
                Bus Type=0xe, Address=0x8c02000, Size=2000
                Bus Type=0xe, Address=0x8c04000, Size=2000
                Bus Type=0xe, Address=0x8c06000, Size=2000
                Bus Type=0xe, Address=0x8c07000, Size=20

------------------------------
                    

pkginfo 

-----------------------

pkginfo |grep hm 

Driver:
system SUNWhmd SunSwift SBUS Adapter Drivers 
or
system SUNWhmdl
 
Headers:
system SUNWhmdu SunSwift SBUS Adapter Headers 
or
SUNWhmdlu 
-----------------------

modinfo

modinfo command can be used to check the hme driver module is loaded and its revision number.

-----------------------

# modinfo | grep hme

51 50270000 9f78 7 1 hme (FEPS Ethernet Driver v 1.78)

HME Driver versions
       Version
                          Comment/Patch
        1.40
              FCS 2.0 (Solaris 2.4, 2.5, SunOS 4.1.4)
        1.41
              102979-03
        1.42
              T102979-0[45]
        1.46
              102979-06
        1.59
              Solaris 2.5.1
        1.62
              104212-01
        1.65
              FCS 2.1 (Solaris 2.3, 2.4, 2.5, SunOS 4.1.3u, 4.1.4)
	
        1.68  2.4 From Quad FastEthernet 794-7108-01 
 
        1.75
              104212-03
        1.78
              Quad FastEthernet 794-7108-01 (Quattro)
              or 104212-04
        1.79
              104212-05 
        1.80
             104212-06
        1.81
             hme Test driver
        1.95 
             Solaris 2.6
-----------------------

ifconfig

ifconfig -a 
lo0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232
        inet 127.0.0.1 netmask ff000000 
hme0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
        inet 192.9.200.1 netmask ffffff00 broadcast 192.9.200.255
        ether 8:0:20:77:36:2 

snoop

snoop -d hme0 

Using device /dev/hme (promiscuous mode) 

labclient-> labserver TELNET C port=38798

labserver-> labclient TELNET R port=38798 

ping

simple example of ping: (hostnames or IP numbers can be used)

       # ping elvis 
       elvis is alive 

Example of snoop display for ping between two systems (nobs and hodware) which are on same subnet.

       # snoop hodware icmp or hodware arp or nobs arp 
       # ping nobs (in a different window) 

       hodware -> (broadcast)  ARP C Who is 192.9.200.2, nobs ?
               nobs -> hodware      ARP R 2.9.200.2, nobs is 8:0:20:76:e8:30
            hodware -> nobs         ICMP Echo request
               nobs -> hodware      ICMP Echo reply

more detail example: ping -sRv nobs 

       PING nobs: 56 data bytes 
       64 bytes from nobs (192.9.200.2): icmp_seq=0. time=4. ms 
       IP options: <record route> nobs (192.9.200.2 ), hodware (192.9.200.1), 
       (End of record) 
       64 bytes from nobs (129.151.21.15): icmp_seq=1. time=1. ms 
       IP options: <record route> nobs (129.151.21.15), hodware (129.151.21.142), 
       (End of record) 
       ----nobs PING Statistics---- 
       2 packets transmitted, 2 packets received, 0% packet loss 
       round-trip (ms) min/avg/max = 1/2/4

netstat

See the netstat Man pages Solaris TCP/IP documentation for for additional information

example of "netstat -i" command to display the state of the interfaces

netstat -i
Name  Mtu  Net/Dest      Address        Ipkts  Ierrs Opkts  Oerrs Collis Queue 
lo0   8232 loopback      localhost      65     0     65     0     0      0     
hme0  1500 192.9.200.0   labserver      563435 0     15442  0     153    0   

example of "netstat -k" command (undocumented) to display interface device statistics:

netstat -k | sed -n /^hme0:/,/^nfs_client:/p

hme0:
ipackets 563551 ierrors 0 opackets 15511 oerrors 0 collisions 153 
 0 framing 0 crc 0 sqe 0 code_violations 0 len_errors 0 
 0 buff 0 oflo 0 uflo 0 missed 0 tx_late_collisions 0 
retry_error 0 first_collisions 0 nocarrier 0 inits 25 nocanput 0 
allocbfail 0 runt 0 jabber 0 babble 0 tmd_error 0 tx_late_error 0 
rx_late_error 0 slv_parity_error 0 tx_parity_error 0 rx_parity_error 0 
slv_error_ack 0 tx_error_ack 0 rx_error_ack 0 tx_tag_error 0 
rx_tag_error 0 eop_error 0 no_tmds 0 no_tbufs 0 no_rbufs 0 
rx_late_collisions 0 

example of "netstat -p" command to display the address resolution (ARP) tables. 

netstat -p
Net to Media Table
Device   IP Address               Mask      Flags   Phys Addr 
------ -------------------- --------------- ----- ---------------
hme0   omni                 255.255.255.255       08:00:20:0a:60:12
hme0   brickwall            255.255.255.255       08:00:20:0f:ca:e7
hme0   denali               255.255.255.255       08:00:20:1d:82:34
hme0   devilstower          255.255.255.255 SP    08:00:20:77:36:02
hme0   224.0.0.0            240.0.0.0       SM    01:00:5e:00:00:00

example of "netstat -rnv" command to display verbose routing information and show network addresses as numbers.

netstat -rnv

IRE Table:
  Destination             Mask           Gateway          Device Mxfrg  Rtt  Ref Flg  Out  In/Fwd
-------------------- --------------- -------------------- ------ ----- ----- --- --- ----- ------
127.0.0.1            255.255.255.255 127.0.0.1            lo0     8232*    0   0 UH       1     0
129.151.21.0         255.255.255.0   129.151.26.5                 1500*    0   0 UG     127     0
129.151.26.0         255.255.255.0   129.151.26.180       hme0    1500*    0   3 U      161     0
224.0.0.0            240.0.0.0       129.151.26.180       hme0    1500*    0   3 U        0     0
default              0.0.0.0         129.151.26.69                1500*    0   0 UG       1     0
default              0.0.0.0         129.151.26.96                1500*    0   0 UG       3     0
default              0.0.0.0         129.151.26.3                 1500*    0   0 UG       1     0

arp

See the arp Man pages Solaris TCP/IP documentation for for additional information
An equivalent to arp -a without hostnames is netstat -pn

devilstower# arp -a
Net to Media Table
Device   IP Address               Mask      Flags   Phys Addr 
------ -------------------- --------------- ----- ---------------
hme0   omni                 255.255.255.255       08:00:20:0a:60:12
hme0   brickwall            255.255.255.255       08:00:20:0f:ca:e7
hme0   denali               255.255.255.255       08:00:20:1d:82:34
hme0   devilstower          255.255.255.255 SP    08:00:20:77:36:02

hme0   224.0.0.0            240.0.0.0       SM    01:00:5e:00:00:00


ndd

There are many ndd driver parameters and statistics for use by the experienced administer.

Below are 3 examples of ndd to get status information related to ip and the interfaces 

ndd /dev/ip ip_ill_status
ILL      rq       wq       upcnt mxfrg err name
500cde9c 00000000 00000000 00001 08232 000 lo0
5016d7a8 50070740 50070798 00001 01500 000 hme0

# ndd /dev/ip ip_ipif_status
IPIF     addr            mask            broadcast       p-p-dst         metr mtu   in/out/forward name
500bd954 127.000.000.001 255.000.000.000 000.000.000.000 000.000.000.000 0000 08232 0/1/0 lo0 UP RUNNING LOOPBACK MULTICAST
500bd4f4 129.151.026.180 255.255.255.000 129.151.026.255 000.000.000.000 0000 01500 249492/15847/0 hme0 UP RUNNING NOTRAILERS BROADCAST MULTICAST

# ndd /dev/ip ip_ire_status
IRE      rfq      stq      addr            mask            src             gateway         mxfrg rtt   ref in/out/forward type
5007de04 50070740 00000000 129.151.255.255 255.255.255.255 129.151.026.180 000.000.000.000 04096 00000 000 415/0/0 IRE_BROADCAST
5007de64 50070740 50070798 129.151.255.255 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 006 0/0/0 IRE_BROADCAST
5007d924 50070740 00000000 129.151.000.000 255.255.255.255 129.151.026.180 000.000.000.000 04096 00000 000 0/0/0 IRE_BROADCAST
5007db04 50070740 50070798 129.151.000.000 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 006 0/0/0 IRE_BROADCAST
5007db64 50070740 00000000 255.255.255.255 255.255.255.255 129.151.026.180 000.000.000.000 04096 00000 000 9437/0/0 IRE_BROADCAST
5007dbc4 50070740 50070798 255.255.255.255 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 006 0/0/0 IRE_BROADCAST
5007dc24 50070740 00000000 000.000.000.000 255.255.255.255 129.151.026.180 000.000.000.000 04096 00000 000 16/0/0 IRE_BROADCAST
5007dc84 50070740 50070798 000.000.000.000 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 006 0/0/0 IRE_BROADCAST
5007df84 00000000 00000000 127.000.000.001 255.255.255.255 127.000.000.001 000.000.000.000 08232 00000 000 0/1/0 IRE_LOOPBACK
5007df24 50070740 00000000 129.151.026.000 255.255.255.255 129.151.026.180 000.000.000.000 04096 00000 000 18/0/0 IRE_BROADCAST
5007da44 50070740 50070798 129.151.026.000 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 006 0/0/0 IRE_BROADCAST
5007d204 50070740 50070798 129.151.026.001 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 002 0/6/0 IRE_ROUTE
5007d264 50070740 50070798 129.151.026.005 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 002 0/0/0 IRE_ROUTE
5007d0e4 50070740 50070798 129.151.021.142 255.255.255.255 129.151.026.180 129.151.026.005 01500 00000 002 0/3/0 IRE_ROUTE
5007dd44 50070740 00000000 129.151.026.180 255.255.255.255 129.151.026.180 000.000.000.000 08232 00000 000 22715/70/0 IRE_LOCAL
5007d144 50070740 50070798 129.151.026.174 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 001 0/38/0 IRE_ROUTE
5007daa4 50070740 00000000 129.151.026.255 255.255.255.255 129.151.026.180 000.000.000.000 04096 00000 000 216909/0/0 IRE_BROADCAST
5007dec4 50070740 50070798 129.151.026.255 255.255.255.255 129.151.026.180 000.000.000.000 01500 00000 006 0/0/0 IRE_BROADCAST
5007d864 00000000 00000000 129.151.021.000 255.255.255.000 000.000.000.000 129.151.026.005 01500 00000 000 0/129/0 IRE_NET
5007dce4 00000000 50070740 129.151.026.000 255.255.255.000 129.151.026.180 000.000.000.000 01500 00000 003 0/161/0 IRE_RESOLVER
5007dda4 00000000 50070740 224.000.000.000 240.000.000.000 129.151.026.180 000.000.000.000 01500 00000 003 0/0/0 IRE_RESOLVER
5007d8c4 00000000 00000000 000.000.000.000 000.000.000.000 000.000.000.000 129.151.026.069 01500 00000 000 0/1/0 IRE_GATEWAY
5007d5c4 00000000 00000000 000.000.000.000 000.000.000.000 000.000.000.000 129.151.026.096 01500 00000 000 0/3/0 IRE_GATEWAY
5007d444 00000000 00000000 000.000.000.000 000.000.000.000 000.000.000.000 129.151.026.003 01500 00000 000 0/1/0 IRE_GATEWAY

2.4  hme , qfe and be device Driver Debug Mode
--------------------------------------------------------------------------------


INFODOC ID: 11650 How to turn on ethernet driver debug mode? 


The hme, qfe and be driver may be switched into debug mode. This enables the 
driver to display messages to the console. Some of the messages are simply 
information while others are errors. All of these messages need to be interpreted 
and careful analysis of the "whole" network needs to be considered. Assumptions 
should not be made when looking at one systems perspective of the network 


Note: The hmedebug has been REMOVED with the latest hme drivers. Including 
2.7 , 2.6 patch 105795-03 and 2.5.1 patch 104212-10 


the console message reported by the driver and netstat -k has been enhanced, 
and duplication of error logging and reporting was eliminated. 


See hme driver header file, /usr/include/sys/hme.h. 


Solaris netstat -k example of hme interface. 


# netstat -k | nawk -v RS="" '/hme0/' 


hme0: 


ipackets 0 ierrors 0 opackets 0 oerrors 0 collisions 0 defer 0 framing 0 crc 
0 sqe 0 code_violations 0 len_errors 0 ifspeed 0 buff 0 oflo 0 uflo 0 missed 
0 tx_late_collisions 0 retry_error 0 first_collisions 0 nocarrier 0 inits 0 
nocanput 0 allocbfail 0 runt 0 jabber 0 babble 0 tmd_error 0 tx_late_error 
0 rx_late_error 0 slv_parity_error 0 tx_parity_error 0 rx_parity_error 0 slv_error_ack 
0 tx_error_ack 0 rx_error_ack 0 tx_tag_error 0 rx_tag_error 0 eop_error 0 no_tmds 
0 no_tbufs 0 no_rbufs 0 rx_late_collisions 0 rbytes 0 obytes 0 multircv 0 multixmt 
0 brdcstrcv 0 brdcstxmt 52 norcvbuf 0 noxmtbuf 0 


-------------------------------------------------------------- 


There are 2 ways to turn on the driver debug mode. 


To enable "be" (FastEthernet 1.x) driver debug: 


1.Add the following entry to /etc/system and reboot for Solaris 2.x: 


set be:bedebug=1 OR 


2.Issue the following commands as root: 


Solaris 2.x 


# adb -kw /dev/ksyms /dev/mem 


bedebug/X 


(will display current value) 


bedebug/W 1 


(will set current value to 1 - be sure to use W not w) 


SunOS 4.x 


# adb -kw /vmunix /dev/mem 


bedebug/W 1 (to set the in memory copy) 


bedebug?W 1 (to set the on disk copy) To enable "hme" and qfe driver debug: 
( two methods ) 


1.Add the following entry to /etc/system and reboot for Solaris 2.x: 


* hme fast ethernet driver debug 


set hme:hmedebug=1 


* qfe fast ethernet driver debug 


set qfe:qfedebug=1 


* for QFE trunking: 


set qfe:qt_debug=1 


OR 


2.Issue the following commands as root: 


Solaris 2.x 


# adb -kw /dev/ksyms /dev/mem 


hmedebug/X 


(will display current value) 


hmedebug/W 1 


(will set current value to 1 - be sure to use W not w) 


or # echo "hmedebug/W 1" | adb -kw /dev/ksyms /dev/mem 








for QFE : 


set qfe:qfedebug=1 


# adb -kw /dev/ksyms /dev/mem 


qfedebug/X 


(will display current value) 


qfedebug/W 1 


(will set current value to 1 - be sure to use W not w) 


SunOS 4.x 


# adb -kw /vmunix /dev/mem 


hmedebug/W 1 (to set the in memory copy) 


hmedebug?W 1 (to set the on disk copy) 


3.0 Common How To's

1.0 What SunSolve infodoc's and srdb's are available on Fastethernet?

------------------
SUNSOLVE INFODOC
infodoc  16070     How to set hme parameter for more than one hme interface
infodoc  12306     Ethernet Interface FAQ/PSD
infodoc  16013     Compatibility of Sun's Trunking with Cisco's Etherchannel
infodoc  15572     Can I configure two Ethernet interfaces on the subnet?
infodoc  13288     How to disable/enable tpe/hme link tests on Ultra Series
infodoc  14273     Tuning the hme interface to work with slower interfaces
infodoc  16017     Is the hme interface running at 10BaseT or 100BaseT
infodoc  12604     What is the hme driver ?
infodoc  15583     Explanation of Late Collisions
infodoc  14272     High collision rate causes on hme interface
infodoc  13122     Forcing Network Speed Between 10Mbps and 100Mbps
infodoc  14981     How to configure a system to run on a network
infodoc  15653     What are the fields of ttsession's "Session ID" line?
infodoc  15659     How to set up virtual interfaces
infodoc  16207     How to setup a DHCP client
infodoc  12309     SunSwift SBUS Adapter reqmts, specs and issues
infodoc  12311     migration/upgrade/compatibility to Ultra systems
infodoc  4237      Programs to identify ethernet address
infodoc  11405     How to set tpe-link-test? ethernet w/twisted pair
infodoc  12052     MISC NETWORKING PROGRAMS PSD/FAQ
infodoc  12603     Does SUN BE driver support full duplex ?
infodoc  15659     How to set up virtual interfaces
infodoc  15572     Can I configure two Ethernet interfaces on the subnet?

------------------
SUNSOLVE SRDB's \b

srdb     12605     Full duplex support on Sun ethernet drivers.
srdb     13530     System can't recognize FastEthernet interface
srdb     12373     Hardware - 100Mb FastEthernet distance limitation
srdb     15530     Cannot use SunSwift devices (fastethernet and SCSI) even
                   after boot -r
srdb     16143     How to force the HME card to work at 10mb (full-duplex).
srdb     13206     Forcing network speed to 100 Mbps
srdb     16356     Gets "ifconfig: SIOCGIFFLAGS: hme0: no such interface" when
                   running
srdb     7071      calculating collision rates and what they mean
srdb     14247     error:  SIOCSISSLAGS hme0 cannot assign requested address
srdb     13134     Ultra 1, 100BaseT Ethernet interface on-board
srdb     13396     SC1000's with SunFastEthernet 1.0 or 2.0 or SunSwift
                   Ethernet configured and hostname.hme0 in use, hang on boot from init 0, or halt or init6
srdb     14305     Host manager does not install hme driver for jumpstart
                   client
srdb     16278     Solaris 2.6 jumpstart client hangs after the "configuring
                   devices..." line. (MultiHomed Boot Svr, InstallSvr Diff SubNet)
srdb     15400     Network problems after installing the 2.5.1 cluster patches.
srdb     15613     Mixing SunSwift and DWIS/S cards on Ultra2
srdb     13404     System gives error during boot that it cannot find le0
srdb     14270     crossover cable pinout for 100mbps back to back
srdb     15578     Firewall-1 reports 'too many internal hosts detected'
srdb     15914     Swapped SBUS cards and now system won't recognize drives
srdb     16392     Could not start service for service 1 UDP transport
srdb     12072     Bad drive with rootdg - how to recreate rootdg
srdb     13403     Trying to add a 100VG AnyLan 100Mb Ethernet Card
srdb     4473      How to determine a system's Ethernet address
srdb     5622      is SCSI/Ethernet S-Bus (SBE/S) card supported on 4c
srdb     13268     Sun Fast Ethernet card does not need SUNWbmac Driver package
srdb     7071      calculating collision rates and what they mean
srdb     13396     SC1000's with SunFastEthernet 1.0 or 2.0 or SunSwift
                   Ethernet configured and hostname.hme0 in use, hang on boot from init 0, or halt or init6
srdb     3007      do suns send back-to-back ethernet frames
srdb     6406      get hostid and ethernet address from device driver
srdb     11506     fast ethernet errors unix:q: sc62b900 illegal interface
srdb     12441     Redirection of clients if 2 fast Ethernets removed
srdb     4495      How to know the actual Ethernet Address?
srdb     11358     Installed fast ethernet on 2.3 and ifconfig -a does not see
                   the card
12570    Ethernet       What is the maximum number of virtual interfaces
(le0:1, le0:2,...)

faqs     1041      Solaris 2.x Frequently Asked Questions - networking
faqs     2114      Ethernet card "Fast Ethernet Adapter 2.0" with Solaris 2
faqs     1289      Frequently Asked Questions about Solaris x86 Drivers
faqs     0928      Data Corruption on the Network
faqs     2062      Multiple ethernet interfaces have the same MAC address ?
faqs     1191      Retrieving the actual 48 bit ethernet address of a NIC
faqs     1241      Adding a Second Ethernet Card to an X86 system
faqs     2200      ifconfig shows only one MAC address on a two network card
                   machine
faqs     2063      How to tell what a systems ethernet address is
faqs     2108      High Collision rates when using a quad ethernet adapter
faqs     1071      Retrieving hostid and ethernet address NIC
faqs     2075      Ultra1 doesn't negotiate 100MBit full duplex with the hub

------------------
svr4qna  1219      How do I check the version of the boot PROM?

------------------
fcos     A0123-1   Power-on Diagnostic and Open Boot PROM test failures on
                   Quad-Fast Ethernet (X1042A) board
fcos     A0070-1   SUNFASTETHERNET connection problems with LANNET hubs
fins     I0341-1   Quad FastEthernet SBUS adapter card does not work on the
                   Ultra Enterprise platform.
fins     I0341-2   Updated Corrective Action Section - Quad FastEthernet SBUS
                   adapter card does not work on the Ultra Enterprise platform.
fcos     A0086-1   Reboot problem with SS1000(E) & SC2000(E
3.1 What are the steps in the ethernet interface hardware and software Installation?
--------------------------------------------------------------------------------

Refer to the appropriate documentation that came with the network interface! 



See infodoc 13491 Device Drivers Transfer Of Information 





Below is a outline of the normal steps when installing the Option on a Solaris2.x 
Sparc. 


1. check OpenBoot Prom level, Halt and power off system. 


2. Install SBUS card as described in the Installation guide. 


a. Verify network cable drop has been tested prior to connecting 


b. Check the hub or switch mode is set correctly.(100Mb half-duplex) 


c. Connect 100BaseTX category 5 cable or MII transceiver to the interface card. 



3. Power on the system and stop the boot process. 


a. use show-devs to verify the Hardware is recognized. 


b. use watch-net-all to verify network activity. 


4. Boot the system 


a. If the driver software is installed then the system can be booted with "boot 
-r". 


b. If you are unsure of the interface driver SW (<2.5), then boot normally 
and check the packages with pkginfo. 


5. Install the packages related to the SunFastEthernet Option being installed 
(if needed) 


6. Check Software 


a. Check that the HW device "instance" is properly recognized with commands 
"prtconf" or "sysdef" and the device is listed in /dev. 


b. If the kernel is not recognizing the device then refer to the installation 
guide to check /etc/path_to_inst, /etc/name_to_major 


c. modinfo should show the "hme" mod loadable device driver is installed. 


7. Check network configuration files: 





a. verify /etc/netmask is correct for your subnet. 


b. verify / create /etc/hostname.hme0 - should contain IP address or hostname 
assigned for this port. 


8. Halt and Reboot with "-r" or touch /reconfigure. 


9. Manually configure the interface up if needed. 





a. ifconfig hme0 plumb 


b. ifconfig hme0 192.9.200.1 netmask + broadcast + 


c. (change ether address if required. 


d. ifconfg hme0 ether 28:0:20:10:7d:d3) 


10. Check the interface status with ifconfig -a 


11. Check the link information: 





ndd -get /dev/hme transceiver_inuse 


ndd -get /dev/hme link_status 


ndd -get /dev/hme link_speed 


ndd -get /dev/hme link_mode 


12. Verify routing is setup correctly. 





13. Test network connection to and from a system in on same subnet. (ping 
and other utilities) 


14. Test routing and network applications as required. 




HME device config Notes Quick Reference:
  ok show-SBUS
  ...
  ok watch-net-all
  ok boot -rv
  ...
  1# prtconf |grep hme
              SUNW,hme, instance #0
  2# modinfo |grep hme
    95 f6358000   b3e0 109   1  hme (FEPS Ethernet Driver  v 1.75)
  3# ifconfig hme0 plumb
  4# ifconfig hme0 inet `cat /etc/hostname.hme0` netmask + broadcast + -trailers up
    Setting netmask of hme0 to 255.255.255.0
  5# ifconfig hme0
    hme0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500
        inet 192.9.200.208 netmask ffffff00 broadcast 192.9.200.255
        ether 8:0:20:73:f:cc 

steps 1 & 2 confirm the card is recognized and the the driver is loaded
steps 3, 4, 6 are done automatically during bootup if the /etc/hostname.hme0 file
is valid. 





3.2: How to set the SunFastEthernet device to Force 10 or 100Mb speed and half or full duplex mode? 








INFODOC 16144 How to force the HME card to work at 100mb (full-duplex). 


INFODOC 16070 How to set hme parameter for more than one hme interface 


SRDB 12605 Full duplex support on Sun ethernet drivers. 


SRDB 16143 How to force the HME card to work at 10mb (full-duplex). 


SRDB 13206 Forcing network speed to 100 Mbps 


INFODOC 16728 How does 100baseT ethernet auto-negotiation work? and what are 
the hme and qfe driver defaults 


INFODOC 18262 How do I troubleshoot 100Mb fastethernet 802.3 auto-negotiation 
problems. 


INFODOC 13122 Forcing Network Speed Between 10Mbps and 100Mbps 


---------------------- 


Reference the "Platform Notes: The hme Fast Ethernet Device Driver Solaris 
2.5" guide for further detailed information. 


Page 21 describes that the parameters in the /etc/system file "...configure 
the hme driver parameters for all SUNW,hme devices in the system..." 


Page 18 identifies how to change the instance of the interface that the parameters 
you are changing will affect with the ndd command. 


Pages 22-24 describe how to set the parameters per instance of the hme interface 
in the hme.conf file. 


---------------------- 


The communication mode of the hme interface may be changed to adjust to different 
environments and link partner capabilities. Since auto-negotiation and 100BaseT 
full-duplex is relatively new, forcing the speed and tested different modes 
may be necessary on new installations of 100Mb cards and hubs or switches ,If 
"late collisions" errors, poor throughput and other network problems occur. 



On hme interfaces To change the mode, it is usually recommended to add commands 
to the /etc/system file, then reboot the system, as described below. With 
Auto-negotiation turned off the hme driver will use the highest speed and mode 
that is enabled. 


See below information on examples of /etc/system and ndd. 


Use the ndd -get utility to check the link mode and speed along with checking 
the capabilities of the hub/switch/link partner. \N 


Note - The the link_speed/link_mode/auto_neg will display the last known register 
value of the link. If the link is not brought down/up or "ndd -set /dev/hme 
adv_autoneg_cap 0" is not done last. 





Examples: Check the present link information: 


# ndd -set /dev/hme instance 0 ( this selects hme device instance 0 = hme0, 
instance 1 = hme1 ) 


# ndd -get /dev/hme transceiver_inuse ( 0=internal rj45 100baseTx connector, 
1=external mii transceiver) 


# ndd -get /dev/hme link_status ( 0=down, 1=up ) 


# ndd -get /dev/hme link_speed ( 0=10Mb, 1=100Mb ) 


# ndd -get /dev/hme link_mode ( 0=half duplex, 1=full duplex ) 





To check what we are setup for: 





# ndd -set /dev/hme instance 0 


( 1= on, 0 = off :not advertised) 


# ndd -get /dev/hme adv_autoneg_cap 


# ndd -get /dev/hme adv_100fdx_cap 


# ndd -get /dev/hme adv_100hdx_cap 


# ndd -get /dev/hme adv_100T4_cap 


# ndd -get /dev/hme adv_10hdx_cap 


# ndd -get /dev/hme transceiver_inuse 


To Check what the the link partner(Switch ot MII transceiver) capabilities: 






# ndd -set /dev/hme instance 0 


( 0=link partner not adv this feature, 1= link partner has this capability) 



# ndd /dev/hme lp_autoneg_cap 


# ndd /dev/hme lp_100fdx_cap 


# ndd /dev/hme lp_100hdx_cap 


# ndd /dev/hme lp_100T4_cap 


# ndd /dev/hme lp_10fdx_cap 


# ndd /dev/hme lp_10hdx_cap 





\b SunFastEthernet 2.0 \B 


(For on-board FastEthernet, SunSwift SBUS Adapter, and SunFastEthernet Adapter 
2.0:) 


The three methods to change the hme driver speed and duplex mode capabilities. 



\b 1. /etc/system additions. \B 


To adjust the hme parameters in system as described above: This will set all 
hme instances to the new settings when the driver is loaded on bootup. 


a. Become superuser. 


b. Add the following lines to the /etc/system file using a text editor. 





To Force \b 10Mb half Duplex \B : 


( Standard 10baseT using shared Hub or 10Base2 using Mii to Aui adapter) 





set hme:hme_adv_autoneg_cap=0 


set hme:hme_adv_100fdx_cap=0 


set hme:hme_adv_100hdx_cap=0 


set hme:hme_adv_10hdx_cap=1 


To force \b 100Mb Full duplex\B: Ref: Bug Id: 1257858 Synopsis: Full-duplex 
operation is not enabled automatically by the hme driver. 


( using a 100Mb Ethernet Switch that is compliant with 803.3u Full-duplex 
or to another Sun hme device) 





set hme:hme_adv_autoneg_cap=0 


set hme:hme_adv_100fdx_cap=1 


To force \b 100Mb Half duplex \B: 


( Common configuration using a 100BaseT Ethernet Switch in half-duplex or 100BaseT 
shared Hub. 








set hme:hme_adv_autoneg_cap=0 


set hme:hme_adv_100fdx_cap=0 


set hme:hme_adv_100hdx_cap=1 


To force \b 100Mb Half duplex 100BaseT4 \B: 


( Using 8-wire 100BaseT4 MII transceiver configuration) 








set hme:hme_adv_autoneg_cap=0 


set hme:hme_adv_100fdx_cap=0 


set hme:hme_adv_100hdx_cap=0 


set hme:hme_adv_100T4_cap=1 


To force \b 10Mb Full duplex \B : 


( Uncommon 10Mb Full-Duplex Ethernet Switch configuration) 








set hme:hme_adv_autoneg_cap=0 


set hme:hme_adv_100fdx_cap=0 


set hme:hme_adv_100hdx_cap=0 


set hme:hme_adv_10fdx_cap=1 


set hme:hme_adv_10hdx_cap=0 





c. Save the /etc/system file. 


d. Save all files and exit all programs. Exit the windowing system. 


e. Reboot the system by typing init 6 at the # prompt. (This halts and reboots 
the system.) 


use the ndd -get utility along with checking the capabilities of the hub/switch/link 
partner. 








\b 2. Manual ndd (1M) commands: 


\B example: Turn off auto negotiation and force 100 MB full-duplex: You can 
also force the speed/ settings with: 


ndd -set /dev/hme instance X <--- set to the Interface in Question 


ndd -set /dev/hme use_int_xcvr 1 <--- force to use internal Tx (100TX rj45 
port) 


ndd -set /dev/hme adv_100hdx_cap 0 <--- force OFF 100Mb half duplex 


ndd -set /dev/hme adv_100T4_cap 0 <--- force OFF 100Mb T4 


ndd -set /dev/hme adv_100fdx_cap 1 <--- force ON 100Mb full duplex 


ndd -set /dev/hme autoneg_cap 0 <--- force OFF autonegotiation (FORCE mode) 






example to force hme0 to 100 Full Duplex # ndd -set /dev/hme instance 0 


# ndd -set /dev/hme adv_10hdx_cap 0 


# ndd -set /dev/hme adv_100fdx_cap 1 


# ndd -set /dev/hme adv_autoneg_cap 0 





Example of setting 2nd hme interface (hme1) to force 100mb half-duplex internal 
transceiver 





# ndd -set /dev/hme instance 1 (selects device hme1) 


# ndd -set /dev/hme use_int_xcvr 1 


# ndd -set /dev/hme adv_100hdx_cap 1 


# ndd -set /dev/hme adv_100fdx_cap 0 


# ndd -set /dev/hme adv_autoneg_cap 0 





\b 3. Example of create /kernel/drv/hme.conf ( see Manual ! ) \B 


( turn off autonegotiation, turn on 100 Full, force 100BaseTX port, change 
Interpacket gap)) 


name="hme" class="SBUS" 


reg=0xe,0x8c00000,0x00000108,0xe,0x8c02000,0x00002000,0xe, 


0x8c04000,0x00002000,0xe,0x8c06000,0x00002000,0xe,0x8c07000, 0x00000020 


adv_autoneg_cap=0 adv_100fdx_cap=1 use_int_xcvr=1 ipg1=10 ipg2=8; \b SunOS 
4.1.4 \B 


The hmespeed utility for SunOS4.x will allow changing the speed but not the 
duplex. This is a known limitation of the 4.x hme driver and recommend to 
upgrade to Solaris2.x. 


Ref bugid: 1265738 Synopsis: Cannot force Fast Ethernet 2.0 on 4.1.4 to 100mbit,half 
duplex, 


-------------- hmespeed : usage: %s interface < auto | 100 | 10 > 


example: 


hmespeed hme1 100 hme device settings can be changed with adb by an experienced 
administrator for testing purposes by using hmespeed and/or adb. 


Full Duplex 100baseT link negotiation for Sun 4.1.4 systems with a HME board 
is not supported but can be attempted by using adb, setting the following values 
in /vmunix. You will need to reboot the system for them to take effect. 


hme_adv_autoneg_cap = 0 hme_adv_100fdx_cap = 1 





Example: root {106)> cp /vmunix /vmunix.old 


root {107}> adb -w /vmunix 


[1] hme_adv_autoneg_cap?X 


_hme_adv_autoneg_cap: 


_hme_adv_autoneg_cap: f000000 


[2] hme_adv_autoneg_cap?W 0 


_hme_adv_autoneg_cap: 0xf000000 = 0x0 


[3] hme_adv_autoneg_cap?X 


_hme_adv_autoneg_cap: 


_hme_adv_autoneg_cap: 0 


[4] hme_adv_100fdx_cap?X 


_hme_adv_100fdx_cap: 


_hme_adv_100fdx_cap: f000000 


[5] hme_adv_100fdx_cap?W 1 


_hme_adv_100fdx_cap: 0xf000000 = 0x1 


[6] hme_adv_100fdx_cap?X 


_hme_adv_100fdx_cap: 


_hme_adv_100fdx_cap: 1 


[enter a ^D to exit from adb] 





root {108}> fastboot 


OpenBoot Prom - the transfer speed can also be set at the OK prompt if needed 
for diskless client boot. 


ok show-devs 

\B
       ------------

       /iommu@f,e0000000/SBUS@f,e0001000/SUNW,hme@3,8c00000

       ------------
       ok nvedit

       0: probe-all install-console banner(return)

       1: apply transfer-speed=10 /iommu@f,e0000000/SBUS@f,e0001000/SUNW,hme@3,8c00000 (Control C)

       ok nvstore

       ok setenv use-nvramrc? true




\b SunFastEthernet 1.0: \B

       Use the be_speed program which is included in patch# 101820 

       On Solaris 2.3 command /usr/sbin/be_speed is available . This command can be used to force the interface
       speed. The be_speed is not delivered as standard with Solaris 2.4 & 2.5 and should be manually copied from
       patch 101820 if needed. (bug 1194402. )

       Example: force the speed to 100Mbps:

       Put this in /etc/rc2.d/S69inet

       /usr/sbin/be_speed be0 100
	
	On SunOS 4.x use /usr/bin/be_speed that was loaded from the FastEthernet 1.x CDROM
       This can be added to rc.boot or rc.local.
	
	/usr/bin/be_speed be0 10





**Note  
Since FastEthernet is relatively new, full-duplex connection may not implement 
the same timing and flow-control or a firmware upgrade is required.
SunService is not responsible for troubleshooting Full-Duplex issues and recommend
that Half-Duplex be used if problems are encountered ( collisions, poor performance).

 Check with the Switch Vendor or see if the manufacturer is part of the FastEthernet Alliance and implements the 
802.3u Full-Duplex Extension Standard without flow control and if there is a firmware or software upgrade.

If the link partner is another Sun Fast Ethernet interface, full-duplex is 
a stable configuration and supported by SunService. 
 
See section "4.3: What is Full Duplex Ethernet? Is the Sun Fast ethernet full-duplex capable?" for more information."




3.3: How to Enable/Disable TPE Link Test ?


The default Link Test is normally set to True for all built-in interfaces and 
SBUS Adapters. Disabling the TPE link test is only needed on older 10Mb hubs 
that do not support the Link Integrity Test function defined in the IEEE 802.3 
standard. Pre-standard hubs which do not use link-pulses require the below 
modifications. It is recommended to upgrade the Hub to the standard due to 
the difficulties in isolating cable and port problems when disabling this feature. 



INFODOC ID: 13288 SYNOPSIS: How to disable/enable tpe/hme link tests on Ultra 
Series 





3.4: How do I disable the fastethernet interface device from being seen by Solaris? 

 If you are using the SunSwift adapter and would like to only use the SCSI port,
rename the device so it is not recognized and suppress boot warning messages 
for the interface.

You will need to remove the /etc/hostname.hme# file if it exist from a
previous configuration. This will prevent the interface from being plumbed up.

The below workaround for Using hme on sun4c, sun4d, and sun4m Systems Configured
with the SunSwift SBUS Adapter Card and DOES NOT APPLY to Solaris releases AFTER SOLARIS 2.5 (11/95)

References:
 Bug Id: 1253256
 SMCC Open Issues Supplement Solaris 2.5 - PN 802-3708-10

1. Display the pathnames for each device to find any hme device. Type: 
   ---------------
   ok show-devs
   ---------------
  Look for the line containing SUNW,hme and use this as your <device path name'> in steps 2 and 6. 

  If the SUNW,hme device is not connected to any network, this device may be disabled by following the steps below. 

2. Edit the NVRAM and include the following information. Type: 
   ----------------------------------------
   ok nvedit
   0: probe-all install-console banner
   1: cd <device path name>
   2: " SUNW,hme_idle" nameprop
       ^
     (space)
   3: device-end
   ----------------------------------------

3. Press <Control+c. 

4. Save the new information. Type: 
   -------------
   ok nvstore
   -------------

5. Verify that you are using the NVRAM. Type: 
   ---------------------------
   ok printenv use-nvramrc?
   true
   ---------------------------
 If not true, type: 
   -----------------------------
   ok setenv use-nvramrc true
   -----------------------------

 6. Verify that the NVRAM is correct. Type: 
    ---------------------------------------------------
    ok printenv nvramrc
    nvramrc =        probe-all install-console banner
                     cd <device path name'>
                     " SUNW,hme_idle" nameprop
                     device-end
    ok
   ---------------------------------------------------
 3.5: All my ethernet interfaces have the same ether address. How do I modify the interfaces to have unique ethernet Mac address? 


intinfod 17018 What are the steps in configuring more than one Ethernet interfaces connected to same physical subnet on Solaris 2.6 ? 
intinfod 16733 Why do all my ethernet interfaces have the same ether MAC address? 
intinfod 15572 Can I configure two Ethernet interfaces on the subnet? 
I Have multiple interfaces, but they show up as the same ethernet MAC address as my built-in interface. Setting
NVRAM parameter local-mac-address?=true does not seem to effect the address? 

** This note only applies to ethernet interfaces, for token ring, atm, fddi and other networks should refer to the documentation for these cards.
   For example fddi has a "nf_macid nf<inst> " utility to display the on-board ethernet number.

If you are configuring a multi-homed host with more than one interface on the same physical subnet (connections to same hub), choosing and
configuring a unique ether address that is different from the primary host-based assigned ethernet Mac address may be necessary. 

Usually it does not present a problem. Only systems on the same subnet ( connected to same switch/hub) are going to use the hardware address.
 IEEE leaves it up to the vendor to use the station address approach vs. per port approach. Sun uses the concept of a host-based MAC identity prior to the newer nic cards. 

Except for the QFE (quadfastethernet), The drivers in Sun systems get the MAC address from the PROM on the system.` The MAC address does not come from the
ethernet chip or interface hardware. There is just one ethernet MAC address for all interfaces on a system. Sun reserved ethernet range starts with
8:0:20:xx:xx:xx 

The QFE is presently the only Sun ethernet card that has unique Ethernet Numbers, and future cards are expected to use this feature.

The le ethernet interfaces along with the SunSwift and SunFastEthernet 1.0 and 2.0 Adapters use the host assigned address of the CPU
OpenBoot PROM. 

The Sun Quad FastEthernet SBUS Adapter has four MAC (machine access code) addresses encoded in the Fcode Prom. The local-mac-address
property in eeprom is used to enable this feature. 

Use the ifconfig "ether" option if this is needed on a NIC that do not implement local-mac-address. 

      ok local-mac-address? 
      Defaults to false. 

      This can be set for true = network drivers use their own MAC address, not system's.
      Fxcept for the QFE (QuadFastEthernet) or newer NIC's. 

      
Section 3.2.3(4) of the IEEE 802.3 spec defines a reserved bit in the Ethernet Address that can be used to administer a universally assigned
ethernet addresses. A Locally administered address (LAA) can be implemented to ensure a unique HW address. 

Setting the LAA bit can be done by using a 0A hex (second bit set 1010) as the first digit instead of 08 (1000). 8:00:20:x:x:x is Sun's universal
assignment. (1010) a:00:20:x:x:x would be local administer address. The first bit is "individual/group" bit and used by multicasting (1001 = 09) and
should be avoided. 


Examples ( use for qe, le and hme devices ):

 ifconfig -a shows that hme0 is 8:0:20:77:dc:7b

  Command to change ether number on additional hme interfaces:
    (using first 3 bytes of 0a:0:20 and last 3 bytes of host-assigned address) 
       ifconfig hme1 ether 0a:0:20:77:dc:7b

  sequential numbering:      
       ifconfig hme1 ether 0a:0:20:00:00:1
       ifconfig hme2 ether 0a:0:20:00:00:2

  numbering scheme based on part of IP address ( ex: hme1 =192.9.200.2 hme2 = 192.9.200.16
    (Using 0a:0:20 for first 3 bytes and last 3 octets of IP number).
       ifconfig hme1 ether 0a:0:20:09:c8:2
       ifconfig hme2 ether 0a:0:20:09:c8:10



This change can be permanently added to an rc startup script) 


Another method is to ping the broadcast address and randomly choose a number 
that is not being used on the network. in the form of 8:0:20:XX:XX:XX 





another method is to modify the S30rootusr.sh backup original script and modify 
the script to read /etc/ether\.$1 files. 

##################
interface_names="`echo /etc/hostname.*[0-9]             2>/dev/null`"
if test "$interface_names" != "/etc/hostname.*[0-9]"
then
        (
		echo "configuring network interfaces:\c"
                IFS="$IFS."
                set `echo /etc/hostname\.*[0-9]`
                while test $# -ge 2
                do
                        shift
                        if [ "$1" != "xx0" ]; then
				 addr=`shcat /etc/hostname\.$1`
				 if [ -f /etc/ether\.$1 ]
				 then
				 	/sbin/ifconfig $1 ether `cat /etc/ether\.$1` plumb
				 else
				 	/sbin/ifconfig $1 plumb
				 fi
				 if test -n "$addr"
				 then
					/sbin/ifconfig $1 inet "$addr" netmask + \ 
						broadcast + -trailers up \ 
						2>&1 > /dev/null
				 fi
				 echo " $1\c"
                        fi
                        shift
                done
		echo "."
        )
fi
##################



Note: Do not use an odd number ( ex: "09:") for the first byte due to the fact 
that if you are implementing multicasting, the 1st bit transmitted ("individual/group" 
bit) of a 1 represents a multicast address. 


see INFODOC ID: 15572 SYNOPSIS: Can I configure two Ethernet interfaces on 
the subnet? 


Additional note: For Security and network isolation. You can set ip_forwarding 
off and ip_strict_dst_multihoming on, if you are trying to prevent access to 
the other interfaces. 


ndd /dev/ip ip_forwarding Determines if the workstation will route packets. 



ndd /dev/ip p_strict_dst_multihoming Determines whether to use Strict Destination 
Multihoming. If this variable is set to True, and ip_forwarding is turned off, 
then the machine will not except packets destined for a different interface. 
RFC112 3.6: How do I set the fast ethernet port as the primary interface? 

Solaris 2.x:

  sys-unconfig : 
    For newly installed systems or if a system is considered re-configurable, 
    see the sys-unconfig (1M) command, this will allow the root user to reassign 
    the hostname, network and ip information upon reboot. 

  Manually : 
    The /etc/nodename should be the same name as your primary interface
    which is identified as /etc/hostname.XXX# (XXX=devicei, # is the instance) 
    Also you may need to verify that the hosts files (used for the transport providers) in 
       /etc/net/ticlts, ticots, ticotsord  reflect new hostname ( uname -n )
    
    Note: /etc/hosts is a link to /etc/inet/hosts. 
    ls -al /etc/hosts
    lrwxrwxrwx   1 root root  12 Dec  7  1996 /etc/hosts -> ./inet/hosts


     Example: le0 was primary interface when system was initially loaded. 
       To implement hme0 as the primary host and disable le0. 
       # mv /etc/hostname.le0 /etc/hostname.hme0. 

SunOS 4.x:

 Edit the /etc/rc.boot file: 

(example - using hme1 interface as primary hostname) 

   modify this line /etc/rc.boot:

       hostname="`shcat /etc/hostname.??0 2/dev/null`" 

    Change the hostname.??0 to hostname.hme1 and save the changes. 

    The entry should now appear as: 

        hostname="`shcat /etc/hostname.hme1 2/dev/null`" 




4.0 Frequently Asked Questions

1.0
4.1: Why does prtconf shows that the driver is not attached?


Check /etc/hostname.hme0 file, The /etc/hostname.# file may have not been recognized 
at boot up time and the interface is not "plumbed up". 


The hostname."interfaceandnumber" files must contain a single line with either 
the IP number or the hostname that is identified in /etc/hosts. 


Use the following commands to check and attach the driver and make the device 
available. Then show the device: 





# ifconfig plumb hmeXX 


# ifconfig -a 


# prtconf |grep hme 


SUNW,hme, instance #0 


# modinfo |grep hme 


95 f6358000 b3e0 109 1 hme (FEPS Ethernet Driver v 1.75) 


# ifconfig hme0 plumb 


# ifconfig hme0 inet `cat /etc/hostname.hme0` netmask + broadcast + -trailers 
up 


Setting netmask of hme0 to 255.255.255.0 


# ifconfig hme0 


hme0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500 


inet 192.9.200.208 netmask ffffff00 broadcast 192.9.200.255 


ether 8:0:20:73:f:cc 


# ndd /dev/hme instance 0 


# ndd /dev/hme link_status 


1 ( link is UP ) 


# ndd /dev/hme link_speed 


1 ( link speed is 100Mb ) 


# ndd /dev/hme link_mode 


0 ( link is in half duplex mode ) 





4.2: What are the different kind of MII transceivers that I can use on 100Mb ?


Media Independent Interface (MII db40-pin) can be used to connect to third-party 
transceivers supporting 10Mbps or 100-Mbps connections to Fiber ( MII-Fiber 
), or Category 3, 4, and 5 UTP (depending on the type of MII transceiver, such 
as MII-FX transceiver for Fiber, MII-T4 transceiver for Category 3 UTP). MII-AUI 
adapters are available to connect traditional 10Mb transceivers. 





100BaseTX for two pairs of data-grade Category 5 UTP and STP wiring 


100BaseFX for two strands of 62.5/125-micron multimode fiber 





SC-type connector, and a full duplex transmission range of 2km. 


SC-type connector, with a 500m full duplex transmission range. 


ST-type connector and a 2km full duplex range. 


ST-type connector and a 500m full duplex transmission range. 


100BaseT4 for four pairs of voice- or data-grade Category 3, 4, and 5 UTP wiring 



This allows high speed networking over the ubiquitous 10Base-T Cat 3 UTP cable. 
100Base-T4 only operates in half duplex. 


SunExpress 100TX and 100FX MII adapters: 





SUNX-MIL-100FXC MII TO 100BASE FX MICRO TRANSCEIVER SC CONNECT 


SUNX-MIL-100FXT MII TO 100BASE FX MICRO TRANSCEIVER ST CONNECT 


SUNX-MIL-180T 100BASETX TO 100BASEFXCONVERTER ST CONNECTOR 


SUNX-MIL-180C 100BASETX TO 100BASEFXCONVERTER SC CONNECTOR 


SUNX-MIL-100TX Many network vendors carry MII converters such as Cabletron, 
Allied Telesys, Milan, Black Box, etc. 





MII Convertors and Adapters: 





MII to AUI Cable Adapters info: 


595-3780-02 X467A MII to AUI Adapter. 


Cable used to convert the FastEthernet MII port to AUI connection for use 
with AUI transceivers. 


Ethernet Media Independent Interface (MII) adapters from SunExpress ( http://www.sun.com/sunexpress/): 
3rd party MII note: 


Canary CFX-1171 works with Solaris 2.4 and later, if you force it to 100Mbit 
and half duplex. 


Some MII devices have a "physical address" that can be set by jumpers 0-32 
range. The Sun MII port uses MII transceiver devices addressed to 0. Please 
insure that the MII transceiver Phy address is set to 0. Consult MII transceiver 
documentation for details on how this 4.3: What is Full Duplex Ethernet ? Is the Sun Fast ethernet full-duplex capable?


SEE 
SRDB 12605 SYNOPSIS: Full duplex support on Sun ethernet drivers. 
SRDB 12605 DETAIL DESCRIPTION:

What does full duplex on an ethernet interface mean?
Which Sun interfaces support full duplex?


--------------------------------------------------------------------------------

4.4: What is wiring Diagram for a back to back cross-over category 5 cable?

SRDB ID: 14270 SYNOPSIS: crossover cable pinout for 100mbps back to back 

          RJ45 pin                                RJ45 pin
          ========                                ========
             1 <--[TX+]----(white/orange)----[RX+]--> 3
             2 <--[TX-]----(orange/white)----[RX-]--> 6
             3 <--[RX+]----(white/green)-----[TX+]--> 1
             6 <--[RX-]----(green/white)-----[TX-]--> 2



SRDB ID: 11147 SYNOPSIS: What is the Twisted pair pinout for a crossover rj45 cable? 

Sun Part-Numbers: 
	530-2239-01 CAT5 back-to-back UTP Twisted Pair cross-over cable
        530-2150 CAT5 back-to-back Twisted Pair ethernet, length=5meters


4.5: What are the pin-outs for the 100Base-Tx RJ45 Twisted Pair Ethernet Connector and cabling? 

Sun Board Connector - 10BaseTx, 100BaseTx
----------------------------------
      ______________
     |   ________   | 
     |  ||||||||||  |
     |  |12345678|  |   
     |  |__    __|  |   
     |     |__|     |  
     |______________|

  RJ45 Twisted-Pair Ethernet Connector 

Pin  Function  I/O  Level   Signal Description
------------------------------------------------------------

1    TPO+      O    Analog  Differential Twisted Pair 
                            Transmit Data +                           
2    TPO-      O    Analog  Differential Twisted Pair 
                            Transmit Data -                            
3    TPI+      I    Analog  Differential Twisted Pair Receive 
                            Data +                          
4    N.C.                                               
5    N.C.         
6    TPI-      I    Analog  Differential Twisted Pair Receive
                            Data -                          
7    N.C.                                               
8    N.C.                   


RJ45 Cable Plug    
----------------------------------   
                  
  Looking at connector end of cable

             /  /   
         ___( _ )__
        /          /|
       /          / |
      / //////// /  |
     | --------- |  /                
     | 87654321  | /                  
     |__      ___|/                  
        |____|                         


Standard EIA/TIA T568B Cabling
----------------------------------

Ethernet 100Base-TX uses pairs 2 and 3 (pins 1-2, 3-6)
Ethernet 100Base-T4 uses pairs 2 and 3 (4T+) (pins 1-2, 3-6)

100BaseT4 Twisted Pair Connector (RJ45)

Pin No.         Function
1               TX_D1+  
2               TX_D1-
3               RX_D2+  
4               BI_D3+
5               BI_D3-  
6               RX_D2
7               BI_D4+
8               BI_D4-




Ethernet 100Base-T Standard Straight Through patch cord,

 RJ45 Plug     568B wiring color 568A        Signal    RJ45 Plug
 =========                                             =========
      1  ..>.. White/Orange ....Blue........ TxData ..+...1  
      2  ..>.. Orange ..........White/Blue.. TxData ..-...2  
+-+   3  ..<.. White/Green .....Orange...... RecvData +...3  +_+
|s|   4  ..... Blue ............Green....... .............4  |H|
|U|   5  ..... White/Blue.......White/Green. .............5  |U|
|N|   6  ..<.. Green ...........White/Orange. RecvData -..6  |B|
+_+   7  ..... White/Brown......Brown.....................7  +_+
      8  ..... Brown............White/Brown ..............8 

4.6: Fast Ethernet Performance ? what's the actual per port Mbps performance?


4.7: What are all the HME Device driver and ndd parameters?


See the Platform Notes: The hme Fast Ethernet Device Driver document for more 
complete information. (part Number: 802-3970) 


Issuing the command " ndd /dev/hme \? " will list the hme device specific settings 
and parameters.. 


the below script will capture all the ndd settings for the hme driver. 


-------------------------------------------- 





#!/bin/sh 


for i in `ndd /dev/hme ? | awk '{print $1}'` 


do 





echo $i 


ndd /dev/hme $i done --------------------------------------------- 


NOTE: link_* Parameters MAY NOT be accurate if the card is not connected to 
a HUB/SWITCH or if the interface is unused ( IE: Not plumbed in ). Try snooping 
the device to initialize it. 


--------------------------------------------- 


Below is a list of the hme parameters listed in the hme device driver manual: 


\B

To Display the present hme status, speed and mode.

transceiver_inuse (read only) 
      0 for internal transceiver
      1 for External transceiver

link_status (read only)
      0 for Link Down
      1 for Link up

link_speed (read only)
      0 for 10 Mbps
      1 for 100 Mbps

link_mode (read only)
      0 for Half-Duplex mode
      1 for Full-Duplex mode

----------------

lance_mode (read and write)
       0 lance_mode disabled ( ipg0 ignored )
   *   1 lance_mode enabled (default - use ipg0 additional delay )


ipg0 (read and write)
      0-31 Additional IPG before transmitting a packet after recv a packet)
  *   16 (default nibble-time (4-bits))
           10Mb  : 16x400ns=6.4microsec
           100Mb : 16x40ns=.64microsec

ipg1 (read and write) 
      0-255
  *   8 (default byte-time at initialization - 1 byte  )
        10Mb  : 8x800ns=6.4microsec
        100Mb : 8x80=6.4microsec

ipg2 (read and write)
      0-255
   *  4 (default at initialization)
       10Mb  : 4x800ns=3.2microsec
       100Mb : 4x80ns=.32microsec

pace_size (read and write)
      0-255, to indicate the maximum number of back-to-back packets
      that can be transmitted at one time
  *   0 (default no limit)
  
--------------  
     Select      
use_int_xcvr (read and write)
  *   0 - use External transceiver when External transceiver is attached
      1 - use Internal Transceiver even when External Transceiver is on

--------------
     Select hme device instance
     
instance (read and write)
      0  - default is to select first hme device instance
         - select which hme device instance that the ndd utility effects
           (check /etc/path_to_inst file for the hme instance
           if more than one hme device is on the system)

---------------    
Change auto-negotiation characteristics
           
adv_autoneg_cap (read and write)
      0 - force the link speed and mode
  *   1 - Use auto-negotiation to select speed and mode

adv_100fdx_cap (read and write)
  *  0 - Do not advertise 100fdx capability
     1 - Advertise 100fdx capability

adv_100hdx_cap (read and write)
     0 - Do not advertise 100hdx capability
  *  1 - Advertise  100hdx capability

adv_10fdx_cap  (read and write) 
  *  0 - Do not advertise 10fdx capability
     1 - Advertise 10fdx capability

adv_10hdx_cap (read and write)
     0 - Do not advertise 10hdx capability
  *  1 - Advertise  10hdx capability
---------------
       Display local negotiation capabilities.
       
autoneg_cap (read only)
     0 - Local transceiver not capable of auto-neg
     1 - Local transceiver capable of auto-neg

100fdx_cap (read only)
       0 - Local transceiver not capable of 100fdx
       1 - Local transceiver  capable of 100fdx

100hdx_cap (read only) 
      0 - Local transceiver not capable of 100hdx
      1 - Local transceiver  capable of 100hdx

10fdx_cap (read only) 
      0 - Local transceiver not capable of 10fdx
      1 - Local transceiver capable of 10fdx

10hdx_cap  (read only)
      0 - Local transceiver not capable of 10hdx
      1 - Local transceiver  capable of 10hdx

-----------
Display link partner ( switch or transceiver) negotiation capabilities.

lp_autoneg_cap (read only)
      0 - Remote transceiver not capable of auto-negotiation
      1 - Remote transceiver capable of auto-negotiation

lp_100fdx_cap (read only) 
      0 - Remote transceiver not capable of 100fdx
      1 - Remote transceiver  capable of 100fdx

lp_100hdx_cap read only) 
      0 - Remote transceiver not capable of 100hdx
      1 - Remote transceiver  capable of 100hdx

lp_10fdx_cap (read only)      
       0 - Remote transceiver not capable of 10fdx
       1 - Remote transceiver  capable of 10fdx

lp_10hdx_cap (read only) 
      0 - Remote transceiver not capable of 10hdx
      1 - Remote transceiver  capable of 10hdx


4.8: How does auto-negotiation work? and what are the hme and qfe driver defaults





INFODOC 16728 How does 100baseT ethernet auto-negotiation work? and what are 
the hme and qfe driver defaults 





See section 3.2: (How to set Force 10 or 100Mb speed and half or full duplex) 
if auto-negotiation fails or is not supported by the link partner. 


4.9: How do I tune and test the FastEthernet tcp performance?

Reference:
http://docs.sun.com/ under "network hardware" and then "Sun QuadFastEthernet Collection" and 
then PCI or SBUS "Release Notes"



\b TCP: notes\B 

Verify your link is using its the maximum capabilities. (ex.  100Mb FDX )
and the and normal lower layer statistics netstat -k, netstat -k hme0, netstat -s
 
The default tcp buffer size in Solaris2 is 8k - (byte buffered for TCP 8192)
On Solaris 1 (SUNOS 4.x) it is a small 4k.

Under Solaris 2.x, you can use the ndd utility, to increase the size of the
 send, receive and congestion windows. 

To display values:

 # ndd -get /dev/tcp tcp_xmit_hiwat
  8192

 # ndd -get /dev/tcp tcp_recv_hiwat
  8192

 # ndd -get /dev/tcp tcp_cwnd_max
  65535


Below are excerpts From Solaris 2.6 AnswerBook2:

Configuring TCP/IP for Maximum Performance

This section describes how to benchmark the TCP/IP throughput and 
how to set the TCP/IP high water marks for best performance.
       э To benchmark the TCP/IP throughput, use the ndd command to configure the values of some of the TCP parameters for maximum performance.
       э To set the TCP high water marks for maximum performance, type the following

ndd commands:To increase / change  the size of the send, receive and congestion windows
values:
 
         # ndd -set /dev/tcp tcp_xmit_hiwat 65536  
         # ndd -set /dev/tcp tcp_recv_hiwat 65536  
         # ndd -set /dev/tcp tcp_cwnd_max  65535
  



Increasing TCP/IP Performance on Solaris 2.6 Systems

If you are running your Solaris 2.6 system with a large TCP
window, and you experience slowdowns during high network traffic,
you should decrease the TCP default maximum retransmission
timeout interval variable (tcp_rexmit_interval_max) to 60000.

    <>  As superuser type:
 
        # ndd -set /dev/tcp tcp_rexmit_interval_max 60000

Performance Note:

TCP Slow-start Initial Value Can Be Changed

       4054780 4057676

       Non-Solaris clients may experience somewhat slower network performance on short-lived connections, such as http connections, when served by Solaris servers.
       This problem occurs because of Solaris' strict adherence to the TCP Slow-start specification (RFC2001). You can now modify the initial value that TCP Slow-start
       uses by tuning an ndd variable. For detailed information on how to modify this variable and an explanation of this behavior, go to the section titled "Sun Performance
       Information" under "Sun On the Net" at http://www.sun.com.


Increasing Performance on Enterprise Servers with Four Quad FastEthernet Adapters


  If you have four Sun Quad FastEthernet adapters in an Enterprise
  server, you may experience slow performance and response times
  during periods of high network traffic. This poor performance is
  usually caused by applications that use data buffer and socket
  buffer sizes greater than 8 Kbytes.

  You can achieve better network performance by adjusting your
  application's data buffer size and socket buffer size to be less
  than or equal to 8 Kbytes. Refer to the application's
  documentation for instructions on how to set these buffer sizes.

Increasing Synchronized Queues to Improve Network Performance

  To increase the size of STREAMS synchronized queues, thereby
  increasing network performance, add the sq_max_size variable to
  the /etc/system file.

	set sq_max_size=n

  Set the sq_max_size variable to n, where n is the maximum number
  of messages that are allowed for each IP queue. A safe value to
  set this variable is 25 for each 64 Mbytes of RAM in the system.
  For example, if your system has 64 Mbytes of RAM, you would set
  the variable to 25 (50 if the system has 128 Mbytes of RAM, 100
  if your system has 256 Mbytes of RAM, and so on.).

  You can be more aggressive if you choose, but you may overrun
  STREAMS resources.

  Refer to the Solaris documentation for more information.

Disabling IP Forwarding Routing Protocols on Application Servers

  By default, the Solaris operating environment will configure
  systems using more than one network interface to be an IP
  forwarding router. Application servers are typically multihomed,
  which mean that they contain more than one network interface but
  do not run IP routing protocols or forward IP packets. If you do
  not disable the IP forwarding and routing protocols on multihomed
  application servers, the servers may experience poor
  performance.

  NFS servers and database servers are a couple of examples of
  multihomed application servers. The purpose of these application
  servers is to provide a presence on multiple networks. These
  networks usually contain dedicated routing devices (routers,
  layer-3 switches, or dedicated Sun systems) in the network
  infrastructure that provide the IP forwarding routing services.

  To maximize the performance of your multihomed desktop or
  application server, we recommend disabling the IP forwarding and
  routing protocols. One method of disabling IP forwarding is to create an
  /etc/notrouter file and then reboot your system.

------------

\b NFS: \B

For NFS Servers it is recommended to increase nservers for nfsd(1M)

  /etc/init.d/nfs.server

  /usr/lib/nfs/nfsd -a 160 


See other NFS performance and tuning information for more details of nfs tuning.

\b Network: \B

On a shared ethernet environment with older/slower network nodes it is sometimes
necessary to adjust the Inter-Packet Gap setting. Standard minimum for 
for the Inter Frame Spacing of 10Mb is 9.6usec and .96usec at 100Mb.

If slower clients are having collision and deferred packet issues, increasing
the IPG values can be used to help resolve ethernet bus arbitration issues
as a result of "fast server" capture effect (sometimes refereed to a wire hogging)

On a switched environment it is important to have sufficient buffer and packet forwarding capabilities



To test the network speed it is best to use a memory to memory copy
so that you are not testing the disk speed.

Maximum TCP throughput is 72.1 Mbps.

How much cpu power is needed?
A very approximate rule of thumb is that You need 1 MHz of CPU (dedicated to networking)
 for every 1 Mbit of network connection bandwidth. 

Examples:

# time rcp /tmp/testfile server:/tmp

# time rsh Hostname -n exec dd if=/dev/zero bs=64k count=64 > /dev/null

4.10: What are the ethernet interface statistics that show in the undocumented netstat -k command? 

Reference:
  /usr/include/sys/hme.h
 /usr/include/inet/mib2.h  
 /usr/include/sys/le.h

  Site/SNM/Domain Mgr agents  man pages
         na.etherif(8)- ethernet interface statistics
	 na.etherif2(8)- ethernet interface statistics (Solaris 2.x)
	 na.hostif(8)- interface statistics

Netstat -k interface It is not completely documented and only used to 
for diagnostic purposes to get a general ideal of the network and 
interface vital statistics since bootup.
The output format and contents may (and do) change in OS versions,
and patch releases. netstat -k is the raw dumping of the kernel kstat
statistics. Most are used by programs like outset, nfsstat, etc to 
retrieve information. Not all statistics are recorded by the 
driver module and may return 0.

example: netstat -k | sed -n /^hme0:/,/^nfs_client:/p

hme0:
ipackets 85402 ierrors 0 opackets 470 oerrors 0 collisions 1 
defer 0 framing 0 crc 0 sqe 0 code_violations 0 len_errors 0 
drop 0 buff 0 oflo 0 uflo 0 missed 0 tx_late_collisions 0 
retry_error 0 first_collisions 0 nocarrier 0 inits 7 nocanput 0 
allocbfail 0 runt 0 jabber 0 babble 0 tmd_error 0 tx_late_error 0 
rx_late_error 0 slv_parity_error 0 tx_parity_error 0 rx_parity_error 0 
slv_error_ack 0 tx_error_ack 0 rx_error_ack 0 tx_tag_error 0 
rx_tag_error 0 eop_error 0 no_tmds 0 no_tbufs 0 no_rbufs 0 
rx_late_collisions 0 


ipackets                packets received 
ierrors                 malformed packets received 
opackets                packets sent  
oerrors                 output errors 
collisions              transmit collisions for a given  packet  
defer			deferred  output transmissions ( deferred then sent ) 
framing                packets seen  with framing/alignment
crc                     packets received with CRC errors (received bad checksum)
sqe                     SQE test  errors 
code_violations         code violation  errors 
len_errors              rx len errors 
buff                    buff errors recv packet sizes > buffer size
drop                    recv packets dropped
oflo                    Number of recv overflow   ( overflow due to busy SBUS?) 
uflo                    Number of xmit underflow  ( underflow due to busy SBUS) 
missed                  Input packets recv missed/discarded 
tx_late_collisions      late collisions recv
retry_error             Number xmit retry failures( more than 16 retries)
first_collisions        first collisions 
nocarrier               carrier  lost  since   system   boot (carrier loss)
inits                   hardware has  been initialized : driver inits
nocanput                errors trying to send packets upstream: canput()failures
allocbfail              times driver ran out of transmit buffers: allocb() failures
runt                    recv runt packets - runt errors 
jabber                  jabber errors
babble                  babble errors
tmd_error               chained tx desc. errors
tx_late_error           SBUS tx late error
rx_late_error           SBUS rx late error
slv_parity_error       slave parity errors
tx_parity_error        tx parity errors 
rx_parity_error        rx parity errors 
slv_error_ack          slave error acks
tx_error_ack           tx error acks
rx_error_ack           rx error acks
tx_tag_error           tx tag error
rx_tag_error           rx tag error
eop_error              eop error
no_tmds                 out of tmds
no_tbufs                out of xmit buffers
no_rbufs                out of recv buffers
rx_late_collisions      recv late collisions


4.12: Why am I getting alot of collisions? What is a late collision?

SEE INFODOC ID: 15583 , 14272 , 14273 and SRDB 7071 


infodoc 15583 Explanation of Late Collisions 
srdb 7071 calculating collision rates and what they mean 
infodoc 14272 High collision rate causes on hme interface 
infodoc 14273 Tuning the hme interface to work with slower interfaces 
faq 2380 hme outperforms qe, but both are 100Mbps and lots of collisions 

----------- 

5.0 Patches

5.1: SunOS 4.X (Solaris 1.x) Patches
ftp://sunsolve.sun.com/pub/patches/ 
4.1.3 Patch-ID# 
103474 
       Keywords: be intermittent No carrier link cable hub link 
       Synopsis: SunOS 4.1.3: Fixes "be0: Link Down" and "be0: No carrier" problem. 

4.1.3_U1 Patch-ID# 
103345 
       Keywords: be, intermittent, no carrier, link, cable, problem 
       Synopsis: SunOS 4.1.3_U1: be patch fixing "be0: Link Down" messages 
103730 
    SunOS 4.1.3_U1: hme driver patch with multicast support
104716 
    SunOS 4.1.3_U1: System crashes using 100Mb/sec hme interface

4.1.4 Patch-ID# 
103355 
	Keywords: be No carrier cable problem 4.1.4 hub link panic ioctl SS5 qe 
	Synopsis: SunOS 4.1.4: be/qe driver patch fixing multiple problems. 
104257 
       SunOS 4.1.4: System crashes using 100Mb/sec hme interface
106130 
        Keywords: Synoptics 28115 hme link 100BaseFX mii transceiver
        Synopsis: SunFastEthernet Adapter 2.1: hme driver fix for 100BaseFX transceiver.
        Problem Description: 
         4077699 new hardware hangs when connected to Synoptics 28115 100Mb hub
         4095617 hme interface doesn't work with fiber transiver5.2: Solaris Patches
ftp://sunsolve.sun.com/pub/patches/ 
To check list of patches use " showrev -p " or 
# grep SUNW_PATCHID /var/sadm/pkg/*/pkginfo | cut -d: -f2 | sort -u

-------------------------
Solaris 2.3

Patch-ID# 
101820 
       Keywords: SUNWbmac SunFastEthernet be Synopsis: 
       SunOS 5.3: SUNWbmac patch for Hardware: 5/94 and 8/94 releases 
101734 
       Keywords: raw SPARCstation 5 database corruption ddi_dma_sync iommunex 
       Synopsis: SunOS 5.3: iommu fixes for sun4m 

-------------------------
Solaris 2.4

Patch-ID# 
102001 
       Keywords: be diskless bigmac fast-ethernet MII hang BMAC ethernet le qe 
       Synopsis: SunOS 5.4: fixes for be, qe, le drivers 
102038 
       Keywords: ddi_dma_sync SS5 iommunex_dma_mctl Synopsis: 
       SunOS 5.4: ddi_dma_sync(DDI_DMA_SYNC_FORKERNEL)/iommunex_dma_mctl SS5 bug 
102979 
       Keywords: memory leak be hme link pulses interrupt level 6 SUNW,hme? qe 
       Synopsis: SunOS 5.5: /kernel/drv/be, /kernel/drv/hme and /kernel/drv/qe fixes 

There is no patch update for the fastethernet hme driver on Solaris 2.4
 Since there are no 2.4 hme driver patches (see below bug) and if you
are unable to upgrade, you could Install the latest hme driver( FEPS Ethernet
Driver v 1.68) by re-adding the packages SUNWhmdl SUNWhmdlu from the Sun
QuadFastEthernet Driver Software 1.0.  
Bug Id: 4052219 Description: Back port of Solaris 2.5.1 hme driver patch required for Solaris 2.4

-------------------------
Solaris 2.5

Patch-ID# 
104002 
       Keywords: SS5 DVMA iommu data transfer Synopsis: 
       SunOS 5.5: iommu fix  
102979 
       Keywords: memory leak be hme link pulses interrupt level 6 SUNW,hme? qe 
       Synopsis: SunOS 5.5: /kernel/drv/be, /kernel/drv/hme and /kernel/drv/qe fixes 
105503 
       Keywords: Synoptics 28115 qfe link
       Synopsis: Sun Quad FastEthernet 2.0 driver fix

OBSOLETE Patch-ID# 103026-01 by 102979

103198 
    SunOS 5.5: Netra NFS Server enhancements, point patch

-------------------------
Solaris 2.5.1

Patch-ID# 
104212 
       Keywords: security hme full-duplex MII AUI sys-suspend DDI_DETACH PHY MAC snmpd
       Synopsis: SunOS 5.5.1: hme driver patch
105504 
       Keywords: Synoptics 28115 qfe sqfe link link fast_ethernet
       Synopsis: Sun Quad FastEthernet 2.0: driver fix for Synoptics/Bay
105531 
       Keywords: point patch E10000 Dynamic re-configuration suspend resume Synoptics
       Synopsis: Sun Quad FastEthernet 2.0: POINT PATCH for qfe driver
105174 (sun4u1) 
       Keywords: Starfire dr_daemon DR detach hme qfe
       Synopsis: SunOS 5.5.1: dr_daemon patch
104853 (Ultra-Enterprise-10000) 
       Keywords: obp openboot prom boot alias AP dr-max-mem
       Synopsis: SSP 3.0: OBP fixes
104915 (sparc.sun4u1) 
       Keywords: dr hswp qfe quiesce zombie starfire
       Synopsis: SunOS 5.5.1: dr and hspw driver fixes
103807 
       Keywords: server enhancement stable memory bmap cache performance FEPS WebNFS
       Synopsis: Netra NFS SmartServe 1.1: Apple Talk server crashes machine
105004 : 
      Synopsis: PCI_PCI, ebus, PCI and rootnex driver patch

-------------------
Solaris 2.6

105795 
        Keywords: hme mutex deadlock QSI 28115
        Synopsis: SunOS 5.6: /kernel/drv/hme patch
 
 Sun Quad FastEthernet 2.1 Software Patches
     This version of the Sun Quad FastEthernet software is shipped with the 
     Sun Quad FastEthernet 2.1 CD-ROM. Install the software from this CD before
     installing the patch.

     Operating Environment			        
     ---------------------                               
     Solaris 2.6 (prior to Solaris 2.6 Hardware: 5/98)  
105541 
   Sun Quad FastEthernet 2.1: Patch for Solaris 2.6 qfe driver 
  
Sun Quad FastEthernet 2.2 Software Patches
     This version of the Sun Quad FastEthernet software is shipped with the 
     Sun Trunking 1.0.1 software and the Solaris 2.6 Hardware: 5/98 environment.      
                             
     Solaris 2.6/Solaris 2.6 Hardware: 5/98              
106532 106532 Sun Quad FastEthernet 2.2: Patch for Solaris 2.6 qfe driver 

------------------

Solaris X86

 The Solaris x86 Driver Update is the mechanism by which new device drivers 
 and video support are distributed to our customers. 
Solaris 2.5/2.5.1 x86 Driver Update 6 (DU6) 
http://access1.sun.com/drivers/DU6/driver6.html Solaris 2.4 for x86 Driver Update 10 (DU10) 
http://access1.sun.com/drivers/DU10/driver10.html 
-------------------
Sun Enterprise 10000 Patches

105174 Patch to the Dynamic Reconfiguration daemon dr_daemon 

105029 Adds Alternate Pathing (AP) support for the Quad FastEthernet device 

105531 Device driver patch 

System Service Processor (SSP) Patches

104853 Prevents dictionary overflow messages at the OpenBoot prompt 

104915 Quad FastEthernet dr safe and HSWP driver list 
6.0 Known Bugs and RFEs

Known problems bugs and RFE's:

QFE FIN I0341 
Qfe = FIN I0341 Bug 4062679
==================================================================

FIN #: I0341-1					DATE: Sep/26/97

PRODUCTS AFFECTED:
	Ultra Enterprise 3000
	Ultra Enterprise 4000
	Ultra Enterprise 5000
	Ultra Enterprise 6000
	Sun Quad FastEthernet (SQFE)

PART NUMBERS AFFECTED:
	501-4302-03 or lower	ASSY, QUAD FAST ETHERNET, SBUS

REFERENCES:
	BUG ID#  4062679
	ECO WO_11285

===============================================================

FCO A0106-1 is  is released
Update Ultra2 motherboard to -14.

- Bug   1261001   HME errors: txmac did not reset/phy reset failure

Ultra2 running onboard hme0 interface, that contain one (1) or combination
of the following, may experience Panic or Hang condition.

a)  Sunfastethernet 2.0 SBUS card 501-2739-XX
b)  SunSwift SBUS Card 501-2919-XX and a 
c)  DWIS/S (Differential) SBUS card, 370-1704-XX OR
d)  TurboGX CG6 Color Frame Buffer SBUS Card 501-2922-XX.
e)  FDDI 5.0, 370-2339-XX SAS and 370-2340-XX DAS.    

The work around is to either use a different SBUS slot or alternatively add the following to /etc/system: 
/etc/system
      set fas:fas_enable_SBUS64=0
      set hme:hme_64bit_enable=0

These settings basically configure the driver/hardware to not transfer data on the
 SBUS in 64bit mode. Thus the drivers transfer data in 32bit mode instead. CTE h
ave carried out performance
testing with these settings and concluded that their was no measurable performance
degradation. 

==================================================================

Ultra 5 and Ultra 10 hme bugs.

intbug   4163373   Sun Ultra 5/10 UPA/PCI hme network problems.
intbug   4160187   network goes down intermittently on darwin family systems
intbug   4160196   output packet errors on Darwin and Darwin+ Otter's
intbug   4164925   Network stops intermittently on Ultra 5
intbug   4151557   network goes down intermittently on darwin with Fujitsu
                   configuration
intbug   4160121   darwin panics while running ttcp test

Ultra 5/10 (Darwin) OBP NVRAM modification

Refer to bug 4151557 for details. This bug suggests the following fix which must 
be applied to the Open Boot Prom (OBP): 

        50 80d simba-c!         
        28 81b simba-c!
        28 91b simba-c!
        28 8d9 simba-c!
        28 9d9 simba-c!
        50 8db simba-c!
        50 9db simba-c!

To apply this fix you must edit the nonvolatile RAM section of the OBP as shown 
below: 

        ok nvedit
        0: probe-all install-console banner
        1: 50 80d simba-c!         
        2: 28 81b simba-c!
        3: 28 91b simba-c!
        4: 28 8d9 simba-c!
        5: 28 9d9 simba-c!
        6: 50 8db simba-c!
        7: 50 9db simba-c!
        8: ^C
        ok nvstore
        ok setenv use-nvramrc? true
        ok reset
        ...
        ok boot

       Note: Line eight is blank, the keys "Control" and "C" have been pressed 
coincidentally. 

7.0 References

7.1 Web References

Sun -
http://www.sun.com/products-n-solutions/hw/networking 
http://sunsolve.sun.com http://access1.Sun.COM 
Charles Spurgeon's 100Mbs Ethernet Guide - 
http://wwwhost.ots.utexas.edu/ethernet/100mbps.html 
Dan Kegel's Fast Ethernet page -
http://alumni.caltech.edu/~dank/fe/ http://alumni.caltech.edu/~dank/fe/ 
Fast Ethernet Consortium - University of New Hampshire InterOperability Lab
http://www.iol.unh.edu/consortiums/fe/ 
Donald Becker's 100Mbs Ethernet page- 
http://cesdis.gsfc.nasa.gov/linux/misc/100mbs.html 
Gigabit Ethernet Alliance - 802.3z
http://www.gigabit-ethernet.org/ 
IEEE 
http://www.ieee.org/ 

7.2 SunSolve Infodocs and SRDBs:

SunSolve INFODOCS.

infodoc 11992 ROUTING PSD/FAQ 
infodoc 12052 MISC NETWORKING PROGRAMS PSD/FAQ 
infodoc 12306 Ethernet Interface FAQ/PSD 
infodoc 12309 SunSwift SBUS Adapter reqmts, specs and issues 
infodoc 12604 What is the hme driver ? 
infodoc 13122 Forcing Network Speed Between 10Mbps and 100Mbps 
infodoc 13288 How to disable/enable tpe/hme link tests on Ultra Series 
infodoc 14272 High collision rate causes on hme interface 
infodoc 14273 Tuning the hme interface to work with slower interfaces 

SunSolve SRDB's

srdb 10938 How to change ip_forwarding for Solaris 2.X system? 
srdb 11358 Installed fast ethernet on 2.3 and ifconfig -a does not see the 
           card 
srdb 11506 fast ethernet errors unix:q: sc62b900 illegal interface 
srdb 11813 snoop: when/how to use , best options for debugging 
srdb 11839 external interface not configured correctly 
srdb 12373 Hardware - 100Mb FastEthernet distance limitation 
srdb 12441 Redirection of clients if 2 fast Ethernets removed 
srdb 12559 How to stop a 2.5 machine from routing 
srdb 12570 What is the maximum number of virtual interfaces (le0:1, le0:2,...) 
srdb 12605 Full duplex support on Sun ethernet drivers. 
srdb 13134 Ultra 1, 100BaseT Ethernet interface on-board 
srdb 13166 Boot hangs after multicast interface 
srdb 13206 Forcing network speed to 100 Mbps 
srdb 13268 Sun Fast Ethernet card does not need SUNWbmac Driver package 
srdb 13396 SC1000's with SunFastEthernet 1.0 or 2.0 or SunSwift Ethernet
           configured and hostname.hme0 in use, hang on boot from init 0,
           or halt or init6 
srdb 13530 System can't recognize FastEthernet interface 
srdb 14024 pkgadd SUNWcsd fails with ERROR: attribute verification 
srdb 14247 error: SIOCSISSLAGS hme0 cannot assign requested address 
srdb 1626 Configuring multiple IP addresses on one physical interface 
srdb 3007 do suns send back-to-back ethernet frames 
srdb 4473 How to determine a system's Ethernet address 
srdb 4495 How to know the actual Ethernet Address? 
srdb 7071 calculating collision rates and what they mean 

SunSolve faqs:

faqs 1105 Adding Network Support to Solaris 
faqs 1495 Adding a PCMCIA Ethernet card 

7.3 Sun Educational Services courses of interest.

http://www.sun.com/sunservice/suned/ 
SA-285 Solaris 2.X System Administration
SA-135 Solaris 2.X System Administration Essentials

SA-380 Solaris 2.X Network Administration
SA-270: Solaris 1.X System Administration 

VW-150 Introduction to Data Communications
VW-155 Introduction to Local-Area Networks
VW-201 TCP/IP Concepts
VW-205 TCP/IP Technical Concepts
VW-280 Network Administration for UNIX Systems
Applies To Hardware
Attachments (none)
Document Content INFODOC ID: 17416