]>
Commit | Line | Data |
---|---|---|
faa5273c | 1 | Documentation for /proc/sys/net/* |
760df93e SF |
2 | (c) 1999 Terrehon Bowden <terrehon@pacbell.net> |
3 | Bodo Bauer <bb@ricochet.net> | |
4 | (c) 2000 Jorge Nerin <comandante@zaralinux.com> | |
5 | (c) 2009 Shen Feng <shen@cn.fujitsu.com> | |
6 | ||
7 | For general info and legal blurb, please look in README. | |
8 | ||
9 | ============================================================== | |
10 | ||
11 | This file contains the documentation for the sysctl files in | |
faa5273c | 12 | /proc/sys/net |
760df93e SF |
13 | |
14 | The interface to the networking parts of the kernel is located in | |
faa5273c | 15 | /proc/sys/net. The following table shows all possible subdirectories. You may |
760df93e SF |
16 | see only some of them, depending on your kernel's configuration. |
17 | ||
18 | ||
19 | Table : Subdirectories in /proc/sys/net | |
20 | .............................................................................. | |
21 | Directory Content Directory Content | |
22 | core General parameter appletalk Appletalk protocol | |
23 | unix Unix domain sockets netrom NET/ROM | |
24 | 802 E802 protocol ax25 AX25 | |
25 | ethernet Ethernet protocol rose X.25 PLP layer | |
26 | ipv4 IP version 4 x25 X.25 protocol | |
27 | ipx IPX token-ring IBM token ring | |
28 | bridge Bridging decnet DEC net | |
cc79dd1b | 29 | ipv6 IP version 6 tipc TIPC |
760df93e SF |
30 | .............................................................................. |
31 | ||
32 | 1. /proc/sys/net/core - Network core options | |
33 | ------------------------------------------------------- | |
34 | ||
0a14842f ED |
35 | bpf_jit_enable |
36 | -------------- | |
37 | ||
38 | This enables Berkeley Packet Filter Just in Time compiler. | |
39 | Currently supported on x86_64 architecture, bpf_jit provides a framework | |
40 | to speed packet filtering, the one used by tcpdump/libpcap for example. | |
41 | Values : | |
42 | 0 - disable the JIT (default value) | |
43 | 1 - enable the JIT | |
44 | 2 - enable the JIT and ask the compiler to emit traces on kernel log. | |
45 | ||
c60f6aa8 SW |
46 | dev_weight |
47 | -------------- | |
48 | ||
49 | The maximum number of packets that kernel can handle on a NAPI interrupt, | |
50 | it's a Per-CPU variable. | |
51 | Default: 64 | |
52 | ||
2d48d67f | 53 | low_latency_read |
06021292 | 54 | ---------------- |
2d48d67f | 55 | Low latency busy poll timeout for socket reads. (needs CONFIG_NET_LL_RX_POLL) |
cbf55001 | 56 | Approximate time in us to busy loop waiting for packets on the device queue. |
2d48d67f | 57 | This sets the default value of the SO_LL socket option. |
cbf55001 ET |
58 | Can be set or overridden per socket by setting socket option SO_LL, which is |
59 | the preferred method of enabling. | |
60 | If you need to enable the feature globally via sysctl, a value of 50 is recommended. | |
61 | Will increase power usage. | |
06021292 ET |
62 | Default: 0 (off) |
63 | ||
2d48d67f ET |
64 | low_latency_poll |
65 | ---------------- | |
66 | Low latency busy poll timeout for poll and select. (needs CONFIG_NET_LL_RX_POLL) | |
cbf55001 | 67 | Approximate time in us to busy loop waiting for events. |
2d48d67f ET |
68 | Recommended value depends on the number of sockets you poll on. |
69 | For several sockets 50, for several hundreds 100. | |
70 | For more than that you probably want to use epoll. | |
71 | Note that only sockets with SO_LL set will be busy polled, so you want to either | |
72 | selectively set SO_LL on those sockets or set sysctl.net.low_latency_read globally. | |
cbf55001 | 73 | Will increase power usage. |
2d48d67f ET |
74 | Default: 0 (off) |
75 | ||
760df93e SF |
76 | rmem_default |
77 | ------------ | |
78 | ||
79 | The default setting of the socket receive buffer in bytes. | |
80 | ||
81 | rmem_max | |
82 | -------- | |
83 | ||
84 | The maximum receive socket buffer size in bytes. | |
85 | ||
86 | wmem_default | |
87 | ------------ | |
88 | ||
89 | The default setting (in bytes) of the socket send buffer. | |
90 | ||
91 | wmem_max | |
92 | -------- | |
93 | ||
94 | The maximum send socket buffer size in bytes. | |
95 | ||
96 | message_burst and message_cost | |
97 | ------------------------------ | |
98 | ||
99 | These parameters are used to limit the warning messages written to the kernel | |
100 | log from the networking code. They enforce a rate limit to make a | |
101 | denial-of-service attack impossible. A higher message_cost factor, results in | |
102 | fewer messages that will be written. Message_burst controls when messages will | |
103 | be dropped. The default settings limit warning messages to one every five | |
104 | seconds. | |
105 | ||
106 | warnings | |
107 | -------- | |
108 | ||
109 | This controls console messages from the networking stack that can occur because | |
110 | of problems on the network like duplicate address or bad checksums. Normally, | |
111 | this should be enabled, but if the problem persists the messages can be | |
112 | disabled. | |
113 | ||
114 | netdev_budget | |
115 | ------------- | |
116 | ||
117 | Maximum number of packets taken from all interfaces in one polling cycle (NAPI | |
118 | poll). In one polling cycle interfaces which are registered to polling are | |
3cc7587b | 119 | probed in a round-robin manner. |
760df93e SF |
120 | |
121 | netdev_max_backlog | |
122 | ------------------ | |
123 | ||
124 | Maximum number of packets, queued on the INPUT side, when the interface | |
125 | receives packets faster than kernel can process them. | |
126 | ||
3b098e2d ED |
127 | netdev_tstamp_prequeue |
128 | ---------------------- | |
129 | ||
130 | If set to 0, RX packet timestamps can be sampled after RPS processing, when | |
131 | the target CPU processes packets. It might give some delay on timestamps, but | |
132 | permit to distribute the load on several cpus. | |
133 | ||
134 | If set to 1 (default), timestamps are sampled as soon as possible, before | |
135 | queueing. | |
136 | ||
760df93e SF |
137 | optmem_max |
138 | ---------- | |
139 | ||
140 | Maximum ancillary buffer size allowed per socket. Ancillary data is a sequence | |
141 | of struct cmsghdr structures with appended data. | |
142 | ||
143 | 2. /proc/sys/net/unix - Parameters for Unix domain sockets | |
144 | ------------------------------------------------------- | |
145 | ||
45dad7bd LX |
146 | There is only one file in this directory. |
147 | unix_dgram_qlen limits the max number of datagrams queued in Unix domain | |
ca8b9950 | 148 | socket's buffer. It will not take effect unless PF_UNIX flag is specified. |
760df93e SF |
149 | |
150 | ||
151 | 3. /proc/sys/net/ipv4 - IPV4 settings | |
152 | ------------------------------------------------------- | |
153 | Please see: Documentation/networking/ip-sysctl.txt and ipvs-sysctl.txt for | |
154 | descriptions of these entries. | |
155 | ||
156 | ||
157 | 4. Appletalk | |
158 | ------------------------------------------------------- | |
159 | ||
160 | The /proc/sys/net/appletalk directory holds the Appletalk configuration data | |
161 | when Appletalk is loaded. The configurable parameters are: | |
162 | ||
163 | aarp-expiry-time | |
164 | ---------------- | |
165 | ||
166 | The amount of time we keep an ARP entry before expiring it. Used to age out | |
167 | old hosts. | |
168 | ||
169 | aarp-resolve-time | |
170 | ----------------- | |
171 | ||
172 | The amount of time we will spend trying to resolve an Appletalk address. | |
173 | ||
174 | aarp-retransmit-limit | |
175 | --------------------- | |
176 | ||
177 | The number of times we will retransmit a query before giving up. | |
178 | ||
179 | aarp-tick-time | |
180 | -------------- | |
181 | ||
182 | Controls the rate at which expires are checked. | |
183 | ||
184 | The directory /proc/net/appletalk holds the list of active Appletalk sockets | |
185 | on a machine. | |
186 | ||
187 | The fields indicate the DDP type, the local address (in network:node format) | |
188 | the remote address, the size of the transmit pending queue, the size of the | |
189 | received queue (bytes waiting for applications to read) the state and the uid | |
190 | owning the socket. | |
191 | ||
192 | /proc/net/atalk_iface lists all the interfaces configured for appletalk.It | |
193 | shows the name of the interface, its Appletalk address, the network range on | |
194 | that address (or network number for phase 1 networks), and the status of the | |
195 | interface. | |
196 | ||
197 | /proc/net/atalk_route lists each known network route. It lists the target | |
198 | (network) that the route leads to, the router (may be directly connected), the | |
199 | route flags, and the device the route is using. | |
200 | ||
201 | ||
202 | 5. IPX | |
203 | ------------------------------------------------------- | |
204 | ||
205 | The IPX protocol has no tunable values in proc/sys/net. | |
206 | ||
207 | The IPX protocol does, however, provide proc/net/ipx. This lists each IPX | |
208 | socket giving the local and remote addresses in Novell format (that is | |
209 | network:node:port). In accordance with the strange Novell tradition, | |
210 | everything but the port is in hex. Not_Connected is displayed for sockets that | |
211 | are not tied to a specific remote address. The Tx and Rx queue sizes indicate | |
212 | the number of bytes pending for transmission and reception. The state | |
213 | indicates the state the socket is in and the uid is the owning uid of the | |
214 | socket. | |
215 | ||
216 | The /proc/net/ipx_interface file lists all IPX interfaces. For each interface | |
217 | it gives the network number, the node number, and indicates if the network is | |
218 | the primary network. It also indicates which device it is bound to (or | |
219 | Internal for internal networks) and the Frame Type if appropriate. Linux | |
220 | supports 802.3, 802.2, 802.2 SNAP and DIX (Blue Book) ethernet framing for | |
221 | IPX. | |
222 | ||
223 | The /proc/net/ipx_route table holds a list of IPX routes. For each route it | |
224 | gives the destination network, the router node (or Directly) and the network | |
225 | address of the router (or Connected) for internal networks. | |
cc79dd1b YX |
226 | |
227 | 6. TIPC | |
228 | ------------------------------------------------------- | |
229 | ||
230 | The TIPC protocol now has a tunable for the receive memory, similar to the | |
231 | tcp_rmem - i.e. a vector of 3 INTEGERs: (min, default, max) | |
232 | ||
233 | # cat /proc/sys/net/tipc/tipc_rmem | |
234 | 4252725 34021800 68043600 | |
235 | # | |
236 | ||
237 | The max value is set to CONN_OVERLOAD_LIMIT, and the default and min values | |
238 | are scaled (shifted) versions of that same value. Note that the min value | |
239 | is not at this point in time used in any meaningful way, but the triplet is | |
240 | preserved in order to be consistent with things like tcp_rmem. |