summaryrefslogtreecommitdiffstats
path: root/Documentation/networking/igb.txt
blob: ab2d7183189272a5355d51449004be147f92e177 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
Linux* Base Driver for Intel(R) Network Connection
==================================================

Intel Gigabit Linux driver.
Copyright(c) 1999 - 2010 Intel Corporation.

Contents
========

- Identifying Your Adapter
- Additional Configurations
- Support

Identifying Your Adapter
========================

This driver supports all 82575, 82576 and 82580-based Intel (R) gigabit network
connections.

For specific information on how to identify your adapter, go to the Adapter &
Driver ID Guide at:

    http://support.intel.com/support/go/network/adapter/idguide.htm

Command Line Parameters
=======================

The default value for each parameter is generally the recommended setting,
unless otherwise noted.

max_vfs
-------
Valid Range:   0-7
Default Value: 0

This parameter adds support for SR-IOV.  It causes the driver to spawn up to
max_vfs worth of virtual function.

Additional Configurations
=========================

  Jumbo Frames
  ------------
  Jumbo Frames support is enabled by changing the MTU to a value larger than
  the default of 1500.  Use the ifconfig command to increase the MTU size.
  For example:

       ifconfig eth<x> mtu 9000 up

  This setting is not saved across reboots.

  Notes:

  - The maximum MTU setting for Jumbo Frames is 9216.  This value coincides
    with the maximum Jumbo Frames size of 9234 bytes.

  - Using Jumbo Frames at 10 or 100 Mbps may result in poor performance or
    loss of link.

  Ethtool
  -------
  The driver utilizes the ethtool interface for driver configuration and
  diagnostics, as well as displaying statistical information.

  http://sourceforge.net/projects/gkernel.

  Enabling Wake on LAN* (WoL)
  ---------------------------
  WoL is configured through the Ethtool* utility.

  For instructions on enabling WoL with Ethtool, refer to the Ethtool man page.

  WoL will be enabled on the system during the next shut down or reboot.
  For this driver version, in order to enable WoL, the igb driver must be
  loaded when shutting down or rebooting the system.

  Wake On LAN is only supported on port A of multi-port adapters.

  Wake On LAN is not supported for the Intel(R) Gigabit VT Quad Port Server
  Adapter.

  Multiqueue
  ----------
  In this mode, a separate MSI-X vector is allocated for each queue and one
  for "other" interrupts such as link status change and errors.  All
  interrupts are throttled via interrupt moderation.  Interrupt moderation
  must be used to avoid interrupt storms while the driver is processing one
  interrupt.  The moderation value should be at least as large as the expected
  time for the driver to process an interrupt. Multiqueue is off by default.

  REQUIREMENTS: MSI-X support is required for Multiqueue. If MSI-X is not
  found, the system will fallback to MSI or to Legacy interrupts.

  LRO
  ---
  Large Receive Offload (LRO) is a technique for increasing inbound throughput
  of high-bandwidth network connections by reducing CPU overhead. It works by
  aggregating multiple incoming packets from a single stream into a larger
  buffer before they are passed higher up the networking stack, thus reducing
  the number of packets that have to be processed. LRO combines multiple
  Ethernet frames into a single receive in the stack, thereby potentially
  decreasing CPU utilization for receives.

  NOTE: You need to have inet_lro enabled via either the CONFIG_INET_LRO or
  CONFIG_INET_LRO_MODULE kernel config option. Additionally, if
  CONFIG_INET_LRO_MODULE is used, the inet_lro module needs to be loaded
  before the igb driver.

  You can verify that the driver is using LRO by looking at these counters in
  Ethtool:

  lro_aggregated - count of total packets that were combined
  lro_flushed - counts the number of packets flushed out of LRO
  lro_no_desc - counts the number of times an LRO descriptor was not available
  for the LRO packet

  NOTE: IPv6 and UDP are not supported by LRO.

Support
=======

For general information, go to the Intel support website at:

    www.intel.com/support/

or the Intel Wired Networking project hosted by Sourceforge at:

    http://sourceforge.net/projects/e1000

If an issue is identified with the released source code on the supported
kernel with a supported adapter, email the specific information related
to the issue to e1000-devel@lists.sf.net