diff options
| author | Sam Ravnborg <sam@ravnborg.org> | 2005-07-12 00:13:56 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2005-07-12 00:13:56 -0400 |
| commit | 6a2e9b738cb5c929df73b6acabdd8f9a4e9a0416 (patch) | |
| tree | c7cdf9033093b52e360ad04dc29739ca36a617a4 /net/Kconfig | |
| parent | d5950b4355049092739bea97d1bdc14433126cc5 (diff) | |
[NET]: move config options out to individual protocols
Move the protocol specific config options out to the specific protocols.
With this change net/Kconfig now starts to become readable and serve as a
good basis for further re-structuring.
The menu structure is left almost intact, except that indention is
fixed in most cases. Most visible are the INET changes where several
"depends on INET" are replaced with a single ifdef INET / endif pair.
Several new files were created to accomplish this change - they are
small but serve the purpose that config options are now distributed
out where they belongs.
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/Kconfig')
| -rw-r--r-- | net/Kconfig | 446 |
1 files changed, 17 insertions, 429 deletions
diff --git a/net/Kconfig b/net/Kconfig index f46fc326c0..2684e809a6 100644 --- a/net/Kconfig +++ b/net/Kconfig | |||
| @@ -22,57 +22,14 @@ config NET | |||
| 22 | recommended to read the NET-HOWTO, available from | 22 | recommended to read the NET-HOWTO, available from |
| 23 | <http://www.tldp.org/docs.html#howto>. | 23 | <http://www.tldp.org/docs.html#howto>. |
| 24 | 24 | ||
| 25 | menu "Networking options" | 25 | # Make sure that all config symbols are dependent on NET |
| 26 | depends on NET | 26 | if NET |
| 27 | |||
| 28 | config PACKET | ||
| 29 | tristate "Packet socket" | ||
| 30 | ---help--- | ||
| 31 | The Packet protocol is used by applications which communicate | ||
| 32 | directly with network devices without an intermediate network | ||
| 33 | protocol implemented in the kernel, e.g. tcpdump. If you want them | ||
| 34 | to work, choose Y. | ||
| 35 | |||
| 36 | To compile this driver as a module, choose M here: the module will | ||
| 37 | be called af_packet. | ||
| 38 | |||
| 39 | If unsure, say Y. | ||
| 40 | 27 | ||
| 41 | config PACKET_MMAP | 28 | menu "Networking options" |
| 42 | bool "Packet socket: mmapped IO" | ||
| 43 | depends on PACKET | ||
| 44 | help | ||
| 45 | If you say Y here, the Packet protocol driver will use an IO | ||
| 46 | mechanism that results in faster communication. | ||
| 47 | |||
| 48 | If unsure, say N. | ||
| 49 | |||
| 50 | config UNIX | ||
| 51 | tristate "Unix domain sockets" | ||
| 52 | ---help--- | ||
| 53 | If you say Y here, you will include support for Unix domain sockets; | ||
| 54 | sockets are the standard Unix mechanism for establishing and | ||
| 55 | accessing network connections. Many commonly used programs such as | ||
| 56 | the X Window system and syslog use these sockets even if your | ||
| 57 | machine is not connected to any network. Unless you are working on | ||
| 58 | an embedded system or something similar, you therefore definitely | ||
| 59 | want to say Y here. | ||
| 60 | |||
| 61 | To compile this driver as a module, choose M here: the module will be | ||
| 62 | called unix. Note that several important services won't work | ||
| 63 | correctly if you say M here and then neglect to load the module. | ||
| 64 | |||
| 65 | Say Y unless you know what you are doing. | ||
| 66 | |||
| 67 | config NET_KEY | ||
| 68 | tristate "PF_KEY sockets" | ||
| 69 | select XFRM | ||
| 70 | ---help--- | ||
| 71 | PF_KEYv2 socket family, compatible to KAME ones. | ||
| 72 | They are required if you are going to use IPsec tools ported | ||
| 73 | from KAME. | ||
| 74 | 29 | ||
| 75 | Say Y unless you know what you are doing. | 30 | source "net/packet/Kconfig" |
| 31 | source "net/unix/Kconfig" | ||
| 32 | source "net/xfrm/Kconfig" | ||
| 76 | 33 | ||
| 77 | config INET | 34 | config INET |
| 78 | bool "TCP/IP networking" | 35 | bool "TCP/IP networking" |
| @@ -96,30 +53,12 @@ config INET | |||
| 96 | 53 | ||
| 97 | Short answer: say Y. | 54 | Short answer: say Y. |
| 98 | 55 | ||
| 56 | if INET | ||
| 99 | source "net/ipv4/Kconfig" | 57 | source "net/ipv4/Kconfig" |
| 100 | |||
| 101 | # IPv6 as module will cause a CRASH if you try to unload it | ||
| 102 | config IPV6 | ||
| 103 | tristate "The IPv6 protocol" | ||
| 104 | depends on INET | ||
| 105 | default m | ||
| 106 | select CRYPTO if IPV6_PRIVACY | ||
| 107 | select CRYPTO_MD5 if IPV6_PRIVACY | ||
| 108 | ---help--- | ||
| 109 | This is complemental support for the IP version 6. | ||
| 110 | You will still be able to do traditional IPv4 networking as well. | ||
| 111 | |||
| 112 | For general information about IPv6, see | ||
| 113 | <http://playground.sun.com/pub/ipng/html/ipng-main.html>. | ||
| 114 | For Linux IPv6 development information, see <http://www.linux-ipv6.org>. | ||
| 115 | For specific information about IPv6 under Linux, read the HOWTO at | ||
| 116 | <http://www.bieringer.de/linux/IPv6/>. | ||
| 117 | |||
| 118 | To compile this protocol support as a module, choose M here: the | ||
| 119 | module will be called ipv6. | ||
| 120 | |||
| 121 | source "net/ipv6/Kconfig" | 58 | source "net/ipv6/Kconfig" |
| 122 | 59 | ||
| 60 | endif # if INET | ||
| 61 | |||
| 123 | menuconfig NETFILTER | 62 | menuconfig NETFILTER |
| 124 | bool "Network packet filtering (replaces ipchains)" | 63 | bool "Network packet filtering (replaces ipchains)" |
| 125 | ---help--- | 64 | ---help--- |
| @@ -208,269 +147,16 @@ source "net/bridge/netfilter/Kconfig" | |||
| 208 | 147 | ||
| 209 | endif | 148 | endif |
| 210 | 149 | ||
| 211 | config XFRM | ||
| 212 | bool | ||
| 213 | depends on NET | ||
| 214 | |||
| 215 | source "net/xfrm/Kconfig" | ||
| 216 | |||
| 217 | source "net/sctp/Kconfig" | 150 | source "net/sctp/Kconfig" |
| 218 | 151 | source "net/atm/Kconfig" | |
| 219 | config ATM | 152 | source "net/bridge/Kconfig" |
| 220 | tristate "Asynchronous Transfer Mode (ATM) (EXPERIMENTAL)" | 153 | source "net/8021q/Kconfig" |
| 221 | depends on EXPERIMENTAL | ||
| 222 | ---help--- | ||
| 223 | ATM is a high-speed networking technology for Local Area Networks | ||
| 224 | and Wide Area Networks. It uses a fixed packet size and is | ||
| 225 | connection oriented, allowing for the negotiation of minimum | ||
| 226 | bandwidth requirements. | ||
| 227 | |||
| 228 | In order to participate in an ATM network, your Linux box needs an | ||
| 229 | ATM networking card. If you have that, say Y here and to the driver | ||
| 230 | of your ATM card below. | ||
| 231 | |||
| 232 | Note that you need a set of user-space programs to actually make use | ||
| 233 | of ATM. See the file <file:Documentation/networking/atm.txt> for | ||
| 234 | further details. | ||
| 235 | |||
| 236 | config ATM_CLIP | ||
| 237 | tristate "Classical IP over ATM (EXPERIMENTAL)" | ||
| 238 | depends on ATM && INET | ||
| 239 | help | ||
| 240 | Classical IP over ATM for PVCs and SVCs, supporting InARP and | ||
| 241 | ATMARP. If you want to communication with other IP hosts on your ATM | ||
| 242 | network, you will typically either say Y here or to "LAN Emulation | ||
| 243 | (LANE)" below. | ||
| 244 | |||
| 245 | config ATM_CLIP_NO_ICMP | ||
| 246 | bool "Do NOT send ICMP if no neighbour (EXPERIMENTAL)" | ||
| 247 | depends on ATM_CLIP | ||
| 248 | help | ||
| 249 | Normally, an "ICMP host unreachable" message is sent if a neighbour | ||
| 250 | cannot be reached because there is no VC to it in the kernel's | ||
| 251 | ATMARP table. This may cause problems when ATMARP table entries are | ||
| 252 | briefly removed during revalidation. If you say Y here, packets to | ||
| 253 | such neighbours are silently discarded instead. | ||
| 254 | |||
| 255 | config ATM_LANE | ||
| 256 | tristate "LAN Emulation (LANE) support (EXPERIMENTAL)" | ||
| 257 | depends on ATM | ||
| 258 | help | ||
| 259 | LAN Emulation emulates services of existing LANs across an ATM | ||
| 260 | network. Besides operating as a normal ATM end station client, Linux | ||
| 261 | LANE client can also act as an proxy client bridging packets between | ||
| 262 | ELAN and Ethernet segments. You need LANE if you want to try MPOA. | ||
| 263 | |||
| 264 | config ATM_MPOA | ||
| 265 | tristate "Multi-Protocol Over ATM (MPOA) support (EXPERIMENTAL)" | ||
| 266 | depends on ATM && INET && ATM_LANE!=n | ||
| 267 | help | ||
| 268 | Multi-Protocol Over ATM allows ATM edge devices such as routers, | ||
| 269 | bridges and ATM attached hosts establish direct ATM VCs across | ||
| 270 | subnetwork boundaries. These shortcut connections bypass routers | ||
| 271 | enhancing overall network performance. | ||
| 272 | |||
| 273 | config ATM_BR2684 | ||
| 274 | tristate "RFC1483/2684 Bridged protocols" | ||
| 275 | depends on ATM && INET | ||
| 276 | help | ||
| 277 | ATM PVCs can carry ethernet PDUs according to RFC2684 (formerly 1483) | ||
| 278 | This device will act like an ethernet from the kernels point of view, | ||
| 279 | with the traffic being carried by ATM PVCs (currently 1 PVC/device). | ||
| 280 | This is sometimes used over DSL lines. If in doubt, say N. | ||
| 281 | |||
| 282 | config ATM_BR2684_IPFILTER | ||
| 283 | bool "Per-VC IP filter kludge" | ||
| 284 | depends on ATM_BR2684 | ||
| 285 | help | ||
| 286 | This is an experimental mechanism for users who need to terminate a | ||
| 287 | large number of IP-only vcc's. Do not enable this unless you are sure | ||
| 288 | you know what you are doing. | ||
| 289 | |||
| 290 | config BRIDGE | ||
| 291 | tristate "802.1d Ethernet Bridging" | ||
| 292 | ---help--- | ||
| 293 | If you say Y here, then your Linux box will be able to act as an | ||
| 294 | Ethernet bridge, which means that the different Ethernet segments it | ||
| 295 | is connected to will appear as one Ethernet to the participants. | ||
| 296 | Several such bridges can work together to create even larger | ||
| 297 | networks of Ethernets using the IEEE 802.1 spanning tree algorithm. | ||
| 298 | As this is a standard, Linux bridges will cooperate properly with | ||
| 299 | other third party bridge products. | ||
| 300 | |||
| 301 | In order to use the Ethernet bridge, you'll need the bridge | ||
| 302 | configuration tools; see <file:Documentation/networking/bridge.txt> | ||
| 303 | for location. Please read the Bridge mini-HOWTO for more | ||
| 304 | information. | ||
| 305 | |||
| 306 | If you enable iptables support along with the bridge support then you | ||
| 307 | turn your bridge into a bridging IP firewall. | ||
| 308 | iptables will then see the IP packets being bridged, so you need to | ||
| 309 | take this into account when setting up your firewall rules. | ||
| 310 | Enabling arptables support when bridging will let arptables see | ||
| 311 | bridged ARP traffic in the arptables FORWARD chain. | ||
| 312 | |||
| 313 | To compile this code as a module, choose M here: the module | ||
| 314 | will be called bridge. | ||
| 315 | |||
| 316 | If unsure, say N. | ||
| 317 | |||
| 318 | config VLAN_8021Q | ||
| 319 | tristate "802.1Q VLAN Support" | ||
| 320 | ---help--- | ||
| 321 | Select this and you will be able to create 802.1Q VLAN interfaces | ||
| 322 | on your ethernet interfaces. 802.1Q VLAN supports almost | ||
| 323 | everything a regular ethernet interface does, including | ||
| 324 | firewalling, bridging, and of course IP traffic. You will need | ||
| 325 | the 'vconfig' tool from the VLAN project in order to effectively | ||
| 326 | use VLANs. See the VLAN web page for more information: | ||
| 327 | <http://www.candelatech.com/~greear/vlan.html> | ||
| 328 | |||
| 329 | To compile this code as a module, choose M here: the module | ||
| 330 | will be called 8021q. | ||
| 331 | |||
| 332 | If unsure, say N. | ||
| 333 | |||
| 334 | config DECNET | ||
| 335 | tristate "DECnet Support" | ||
| 336 | ---help--- | ||
| 337 | The DECnet networking protocol was used in many products made by | ||
| 338 | Digital (now Compaq). It provides reliable stream and sequenced | ||
| 339 | packet communications over which run a variety of services similar | ||
| 340 | to those which run over TCP/IP. | ||
| 341 | |||
| 342 | To find some tools to use with the kernel layer support, please | ||
| 343 | look at Patrick Caulfield's web site: | ||
| 344 | <http://linux-decnet.sourceforge.net/>. | ||
| 345 | |||
| 346 | More detailed documentation is available in | ||
| 347 | <file:Documentation/networking/decnet.txt>. | ||
| 348 | |||
| 349 | Be sure to say Y to "/proc file system support" and "Sysctl support" | ||
| 350 | below when using DECnet, since you will need sysctl support to aid | ||
| 351 | in configuration at run time. | ||
| 352 | |||
| 353 | The DECnet code is also available as a module ( = code which can be | ||
| 354 | inserted in and removed from the running kernel whenever you want). | ||
| 355 | The module is called decnet. | ||
| 356 | |||
| 357 | source "net/decnet/Kconfig" | 154 | source "net/decnet/Kconfig" |
| 358 | |||
| 359 | source "net/llc/Kconfig" | 155 | source "net/llc/Kconfig" |
| 360 | |||
| 361 | config IPX | ||
| 362 | tristate "The IPX protocol" | ||
| 363 | select LLC | ||
| 364 | ---help--- | ||
| 365 | This is support for the Novell networking protocol, IPX, commonly | ||
| 366 | used for local networks of Windows machines. You need it if you | ||
| 367 | want to access Novell NetWare file or print servers using the Linux | ||
| 368 | Novell client ncpfs (available from | ||
| 369 | <ftp://platan.vc.cvut.cz/pub/linux/ncpfs/>) or from | ||
| 370 | within the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, | ||
| 371 | available from <http://www.tldp.org/docs.html#howto>). In order | ||
| 372 | to do the former, you'll also have to say Y to "NCP file system | ||
| 373 | support", below. | ||
| 374 | |||
| 375 | IPX is similar in scope to IP, while SPX, which runs on top of IPX, | ||
| 376 | is similar to TCP. There is also experimental support for SPX in | ||
| 377 | Linux (see "SPX networking", below). | ||
| 378 | |||
| 379 | To turn your Linux box into a fully featured NetWare file server and | ||
| 380 | IPX router, say Y here and fetch either lwared from | ||
| 381 | <ftp://ibiblio.org/pub/Linux/system/network/daemons/> or | ||
| 382 | mars_nwe from <ftp://www.compu-art.de/mars_nwe/>. For more | ||
| 383 | information, read the IPX-HOWTO available from | ||
| 384 | <http://www.tldp.org/docs.html#howto>. | ||
| 385 | |||
| 386 | General information about how to connect Linux, Windows machines and | ||
| 387 | Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>. | ||
| 388 | |||
| 389 | The IPX driver would enlarge your kernel by about 16 KB. To compile | ||
| 390 | this driver as a module, choose M here: the module will be called ipx. | ||
| 391 | Unless you want to integrate your Linux box with a local Novell | ||
| 392 | network, say N. | ||
| 393 | |||
| 394 | source "net/ipx/Kconfig" | 156 | source "net/ipx/Kconfig" |
| 395 | |||
| 396 | config ATALK | ||
| 397 | tristate "Appletalk protocol support" | ||
| 398 | select LLC | ||
| 399 | ---help--- | ||
| 400 | AppleTalk is the protocol that Apple computers can use to communicate | ||
| 401 | on a network. If your Linux box is connected to such a network and you | ||
| 402 | wish to connect to it, say Y. You will need to use the netatalk package | ||
| 403 | so that your Linux box can act as a print and file server for Macs as | ||
| 404 | well as access AppleTalk printers. Check out | ||
| 405 | <http://www.zettabyte.net/netatalk/> on the WWW for details. | ||
| 406 | EtherTalk is the name used for AppleTalk over Ethernet and the | ||
| 407 | cheaper and slower LocalTalk is AppleTalk over a proprietary Apple | ||
| 408 | network using serial links. EtherTalk and LocalTalk are fully | ||
| 409 | supported by Linux. | ||
| 410 | |||
| 411 | General information about how to connect Linux, Windows machines and | ||
| 412 | Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>. The | ||
| 413 | NET-3-HOWTO, available from | ||
| 414 | <http://www.tldp.org/docs.html#howto>, contains valuable | ||
| 415 | information as well. | ||
| 416 | |||
| 417 | To compile this driver as a module, choose M here: the module will be | ||
| 418 | called appletalk. You almost certainly want to compile it as a | ||
| 419 | module so you can restart your AppleTalk stack without rebooting | ||
| 420 | your machine. I hear that the GNU boycott of Apple is over, so | ||
| 421 | even politically correct people are allowed to say Y here. | ||
| 422 | |||
| 423 | source "drivers/net/appletalk/Kconfig" | 157 | source "drivers/net/appletalk/Kconfig" |
| 424 | 158 | source "net/x25/Kconfig" | |
| 425 | config X25 | 159 | source "net/lapb/Kconfig" |
| 426 | tristate "CCITT X.25 Packet Layer (EXPERIMENTAL)" | ||
| 427 | depends on EXPERIMENTAL | ||
| 428 | ---help--- | ||
| 429 | X.25 is a set of standardized network protocols, similar in scope to | ||
| 430 | frame relay; the one physical line from your box to the X.25 network | ||
| 431 | entry point can carry several logical point-to-point connections | ||
| 432 | (called "virtual circuits") to other computers connected to the X.25 | ||
| 433 | network. Governments, banks, and other organizations tend to use it | ||
| 434 | to connect to each other or to form Wide Area Networks (WANs). Many | ||
| 435 | countries have public X.25 networks. X.25 consists of two | ||
| 436 | protocols: the higher level Packet Layer Protocol (PLP) (say Y here | ||
| 437 | if you want that) and the lower level data link layer protocol LAPB | ||
| 438 | (say Y to "LAPB Data Link Driver" below if you want that). | ||
| 439 | |||
| 440 | You can read more about X.25 at <http://www.sangoma.com/x25.htm> and | ||
| 441 | <http://www.cisco.com/univercd/cc/td/doc/product/software/ios11/cbook/cx25.htm>. | ||
| 442 | Information about X.25 for Linux is contained in the files | ||
| 443 | <file:Documentation/networking/x25.txt> and | ||
| 444 | <file:Documentation/networking/x25-iface.txt>. | ||
| 445 | |||
| 446 | One connects to an X.25 network either with a dedicated network card | ||
| 447 | using the X.21 protocol (not yet supported by Linux) or one can do | ||
| 448 | X.25 over a standard telephone line using an ordinary modem (say Y | ||
| 449 | to "X.25 async driver" below) or over Ethernet using an ordinary | ||
| 450 | Ethernet card and the LAPB over Ethernet (say Y to "LAPB Data Link | ||
| 451 | Driver" and "LAPB over Ethernet driver" below). | ||
| 452 | |||
| 453 | To compile this driver as a module, choose M here: the module | ||
| 454 | will be called x25. If unsure, say N. | ||
| 455 | |||
| 456 | config LAPB | ||
| 457 | tristate "LAPB Data Link Driver (EXPERIMENTAL)" | ||
| 458 | depends on EXPERIMENTAL | ||
| 459 | ---help--- | ||
| 460 | Link Access Procedure, Balanced (LAPB) is the data link layer (i.e. | ||
| 461 | the lower) part of the X.25 protocol. It offers a reliable | ||
| 462 | connection service to exchange data frames with one other host, and | ||
| 463 | it is used to transport higher level protocols (mostly X.25 Packet | ||
| 464 | Layer, the higher part of X.25, but others are possible as well). | ||
| 465 | Usually, LAPB is used with specialized X.21 network cards, but Linux | ||
| 466 | currently supports LAPB only over Ethernet connections. If you want | ||
| 467 | to use LAPB connections over Ethernet, say Y here and to "LAPB over | ||
| 468 | Ethernet driver" below. Read | ||
| 469 | <file:Documentation/networking/lapb-module.txt> for technical | ||
| 470 | details. | ||
| 471 | |||
| 472 | To compile this driver as a module, choose M here: the | ||
| 473 | module will be called lapb. If unsure, say N. | ||
| 474 | 160 | ||
| 475 | config NET_DIVERT | 161 | config NET_DIVERT |
| 476 | bool "Frame Diverter (EXPERIMENTAL)" | 162 | bool "Frame Diverter (EXPERIMENTAL)" |
| @@ -498,107 +184,10 @@ config NET_DIVERT | |||
| 498 | 184 | ||
| 499 | If unsure, say N. | 185 | If unsure, say N. |
| 500 | 186 | ||
| 501 | config ECONET | 187 | source "net/econet/Kconfig" |
| 502 | tristate "Acorn Econet/AUN protocols (EXPERIMENTAL)" | 188 | source "net/wanrouter/Kconfig" |
| 503 | depends on EXPERIMENTAL && INET | ||
| 504 | ---help--- | ||
| 505 | Econet is a fairly old and slow networking protocol mainly used by | ||
| 506 | Acorn computers to access file and print servers. It uses native | ||
| 507 | Econet network cards. AUN is an implementation of the higher level | ||
| 508 | parts of Econet that runs over ordinary Ethernet connections, on | ||
| 509 | top of the UDP packet protocol, which in turn runs on top of the | ||
| 510 | Internet protocol IP. | ||
| 511 | |||
| 512 | If you say Y here, you can choose with the next two options whether | ||
| 513 | to send Econet/AUN traffic over a UDP Ethernet connection or over | ||
| 514 | a native Econet network card. | ||
| 515 | |||
| 516 | To compile this driver as a module, choose M here: the module | ||
| 517 | will be called econet. | ||
| 518 | |||
| 519 | config ECONET_AUNUDP | ||
| 520 | bool "AUN over UDP" | ||
| 521 | depends on ECONET | ||
| 522 | help | ||
| 523 | Say Y here if you want to send Econet/AUN traffic over a UDP | ||
| 524 | connection (UDP is a packet based protocol that runs on top of the | ||
| 525 | Internet protocol IP) using an ordinary Ethernet network card. | ||
| 526 | |||
| 527 | config ECONET_NATIVE | ||
| 528 | bool "Native Econet" | ||
| 529 | depends on ECONET | ||
| 530 | help | ||
| 531 | Say Y here if you have a native Econet network card installed in | ||
| 532 | your computer. | ||
| 533 | |||
| 534 | config WAN_ROUTER | ||
| 535 | tristate "WAN router" | ||
| 536 | depends on EXPERIMENTAL | ||
| 537 | ---help--- | ||
| 538 | Wide Area Networks (WANs), such as X.25, frame relay and leased | ||
| 539 | lines, are used to interconnect Local Area Networks (LANs) over vast | ||
| 540 | distances with data transfer rates significantly higher than those | ||
| 541 | achievable with commonly used asynchronous modem connections. | ||
| 542 | Usually, a quite expensive external device called a `WAN router' is | ||
| 543 | needed to connect to a WAN. | ||
| 544 | |||
| 545 | As an alternative, WAN routing can be built into the Linux kernel. | ||
| 546 | With relatively inexpensive WAN interface cards available on the | ||
| 547 | market, a perfectly usable router can be built for less than half | ||
| 548 | the price of an external router. If you have one of those cards and | ||
| 549 | wish to use your Linux box as a WAN router, say Y here and also to | ||
| 550 | the WAN driver for your card, below. You will then need the | ||
| 551 | wan-tools package which is available from <ftp://ftp.sangoma.com/>. | ||
| 552 | Read <file:Documentation/networking/wan-router.txt> for more | ||
| 553 | information. | ||
| 554 | |||
| 555 | To compile WAN routing support as a module, choose M here: the | ||
| 556 | module will be called wanrouter. | ||
| 557 | |||
| 558 | If unsure, say N. | ||
| 559 | |||
| 560 | menu "QoS and/or fair queueing" | ||
| 561 | |||
| 562 | config NET_SCHED | ||
| 563 | bool "QoS and/or fair queueing" | ||
| 564 | ---help--- | ||
| 565 | When the kernel has several packets to send out over a network | ||
| 566 | device, it has to decide which ones to send first, which ones to | ||
| 567 | delay, and which ones to drop. This is the job of the packet | ||
| 568 | scheduler, and several different algorithms for how to do this | ||
| 569 | "fairly" have been proposed. | ||
| 570 | |||
| 571 | If you say N here, you will get the standard packet scheduler, which | ||
| 572 | is a FIFO (first come, first served). If you say Y here, you will be | ||
| 573 | able to choose from among several alternative algorithms which can | ||
| 574 | then be attached to different network devices. This is useful for | ||
| 575 | example if some of your network devices are real time devices that | ||
| 576 | need a certain minimum data flow rate, or if you need to limit the | ||
| 577 | maximum data flow rate for traffic which matches specified criteria. | ||
| 578 | This code is considered to be experimental. | ||
| 579 | |||
| 580 | To administer these schedulers, you'll need the user-level utilities | ||
| 581 | from the package iproute2+tc at <ftp://ftp.tux.org/pub/net/ip-routing/>. | ||
| 582 | That package also contains some documentation; for more, check out | ||
| 583 | <http://snafu.freedom.org/linux2.2/iproute-notes.html>. | ||
| 584 | |||
| 585 | This Quality of Service (QoS) support will enable you to use | ||
| 586 | Differentiated Services (diffserv) and Resource Reservation Protocol | ||
| 587 | (RSVP) on your Linux router if you also say Y to "QoS support", | ||
| 588 | "Packet classifier API" and to some classifiers below. Documentation | ||
| 589 | and software is at <http://diffserv.sourceforge.net/>. | ||
| 590 | |||
| 591 | If you say Y here and to "/proc file system" below, you will be able | ||
| 592 | to read status information about packet schedulers from the file | ||
| 593 | /proc/net/psched. | ||
| 594 | |||
| 595 | The available schedulers are listed in the following questions; you | ||
| 596 | can say Y to as many as you like. If unsure, say N now. | ||
| 597 | |||
| 598 | source "net/sched/Kconfig" | 189 | source "net/sched/Kconfig" |
| 599 | 190 | ||
| 600 | endmenu | ||
| 601 | |||
| 602 | menu "Network testing" | 191 | menu "Network testing" |
| 603 | 192 | ||
| 604 | config NET_PKTGEN | 193 | config NET_PKTGEN |
| @@ -637,10 +226,9 @@ config NET_POLL_CONTROLLER | |||
| 637 | def_bool NETPOLL | 226 | def_bool NETPOLL |
| 638 | 227 | ||
| 639 | source "net/ax25/Kconfig" | 228 | source "net/ax25/Kconfig" |
| 640 | |||
| 641 | source "net/irda/Kconfig" | 229 | source "net/irda/Kconfig" |
| 642 | |||
| 643 | source "net/bluetooth/Kconfig" | 230 | source "net/bluetooth/Kconfig" |
| 644 | 231 | ||
| 232 | endif # if NET | ||
| 645 | endmenu # Networking | 233 | endmenu # Networking |
| 646 | 234 | ||
