Go to main content

man pages section 7: Device and Network Interfaces

Exit Print View

Updated: July 2017



iprb - Intel 82557, 82558, 82559–controlled network interface controllers




The iprb Ethernet driver is a multi-threaded, loadable, clonable, STREAMS hardware driver supporting the connectionless Data Link Provider Interface, dlpi(7P), over Intel D100 82557, 82558, and 82559 controllers. Multiple 82557, 82558, and 82559 controllers installed within the system are supported by the driver. The iprb driver provides basic support for the 82557, 82558, and 82559 hardware. Functions include chip initialization, frame transmit and receive, multicast support, and error recovery and reporting.


The cloning, character-special device /dev/iprb is used to access all 82557, 82558, and 82559 devices installed within the system.

iprb and DLPI

The iprb driver is dependent on /kernel/misc/gld , a loadable kernel module that provides the iprb driver with the DLPI and STREAMS functionality required of a LAN driver. See gld(7D) for more details on the primitives supported by the driver.

The values returned by the driver in the DL_INFO_ACK primitive in response to the DL_INFO_REQ from the user are as follows:

  • Maximum SDU is 1500 (ETHERMTU ).

  • Minimum SDU is 0. The driver will pad to the mandatory 60-octet minimum packet size.

  • The dlsap address length is 8 .

  • MAC type is DL_ETHER.

  • The sap length value is −2 , meaning the physical address component is followed immediately by a 2-byte sap component within the DLSAP address.

  • Broadcast address value is Ethernet/IEEE broadcast address (FF:FF:FF:FF:FF:FF).


x86 based systems with the Intel EtherExpress PRO/100B or the Intel EtherExpress PRO/100+ might hang when the interface is brought down at the very instant that a packet is being received. To avoid this, wait until the system is experiencing light or no network traffic before bringing the interface down.

Early versions of the firmware on Intel EtherExpress PRO/100+ and Intel PRO/100+ Management adapters do not support PXE network boot on Solaris systems. Upgrade the firmware if the version is lower than 078. PXE firmware versions are expressed as three-digit build numbers. The build number is typically displayed by the firmware during boot. If the PXE build number is not displayed during boot, change the system BIOS or adapter BIOS configuration to display PXE messages during boot.



Device special file


iprb configuration file


stropts network header file


Ethernet network header file


dlpi network header file


gld network header file

The iprb.conf configuration file options include:


Default: 3

Allowed Values: 0, 1, 2, 3

Sets the number of retransmissions. Modified when tuning performance.


Default: 0 (Disable)

Allowed Values: 0 (Disable), 1 (Enable)

Should only be set for 82558 adapters and systems in which the PCI bus supports Memory Write & Invalidate operations. Can improve the performance for some configurations.


Default: 0 (Disable)

Allowed Values: 0 (Disable), 1 (Enable)

Setting this value can improve the performance for some configurations


Default: 0 (Disable)

Allowed Values: 0 (Disable), 1 (Enable)

Setting this value can improve the performance for some configurations


Default: 0 (Disable)

Allowed Values: 0 (Disable), 10 (Enable)

If you have problems establishing links with cables length = 70 Ft, set this field to 10


Default: 0

Allowed Values: 1 through FFFFh

Reasonable Values: 200h through 800h

The CPUSaver algorithm improves the system's P/E ratio by reducing the number of interrupts generated by the card. The algorithm bundles multiple receive frames together, then generates a single interrupt for the bundle. Because the microcode does not support run-time configuration, configuration must be done prior to the micro code being loaded into the chip. Changing this value from its default means that the driver will have to be unloaded and loaded for the change to take affect. Setting the CpuCycleSaver option to 0 prevents the algorithm from being used. Because it varies for different network environments, the optimal value for this parameter is impossible to predict. Accordingly, developers should run tests to determine the effect that changing this value has on bandwidth and CPU utilization.


Default: 5 (Auto-negotiate)

Allowed Values: 4 (100 FDX)

3 (100 HDX)

2 (10 FDX)

1 (10 HDX)

Specify the speed and duplex mode for each instance.

Example: ForceSpeedDuplex=5,4;

Sets iprb0 to autonegotiate and iprb1 to 100 FDX.


See attributes(5) for descriptions of the following attributes:


See Also

attributes(5), dlpi(7P), gld(7D)