Partital Configure.help file

Edited for brevity (mostly networking), to make the links clickable, and to add the table of contents. Taken from linux-2.2.14-pre9

  1. Network Block Device support
  2. Networking support
  3. Socket filtering
  4. Network firewalls
  5. SYN flood protection
  6. Sysctl support
  7. ARP daemon support (EXPERIMENTAL)
  8. TCP/IP networking
  9. IP: multicasting
  10. IP: advanced router
  11. IP: policy routing
  12. IP: equal cost multipath
  13. IP: use TOS value as routing key
  14. IP: use FWMARK value as routing key
  15. IP: verbose route monitoring
  16. IP: large routing tables
  17. IP: fast network address translation
  18. IP: optimize as router not host
  19. IP: firewalling
  20. IP: firewall packet netlink device
  21. IP: kernel level autoconfiguration
  22. BOOTP support
  23. RARP support
  24. IP: tunneling
  25. IP: GRE tunnels over IP
  26. IP: broadcast GRE over IP
  27. IP: transparent proxying
  28. IP: masquerading
  29. IP: ICMP masquerading
  30. IP: masquerading special modules support
  31. IP: ipautofw masquerade support (Experimental)
  32. IP: ipportfw masquerade support
  33. IP: ipmarkfw masquerade support
  34. IP: aliasing support
  35. IP: multicast routing
  36. IP: PIM-SM version 1 support
  37. IP: PIM-SM version 2 support
  38. PC/TCP compatibility mode
  39. Reverse ARP server
  40. Assume subnets are local
  41. Path MTU Discovery (normally enabled)
  42. Disable NAGLE algorithm (normally enabled)
  43. IP: Allow large windows (not recommended if <16 MB of memory)
  44. Unix domain sockets
  45. The IPv6 protocol
  46. IPv6: enable EUI-64 token format
  47. IPv6: disable provider based addresses
  48. IPv6: routing messages via old netlink
  49. IPX networking
  50. IPX: Full internal IPX network
  51. IPX: SPX networking (EXPERIMENTAL)
  52. AppleTalk DDP
  53. AppleTalk-IP driver support
  54. IP to AppleTalk-IP Encapsulation support
  55. AppleTalk-IP to IP Decapsulation support
  56. Amateur Radio support
  57. Amateur Radio AX.25 Level 2
  58. AX.25 DAMA Slave support
  59. AX.25 DAMA Master support
  60. Amateur Radio NET/ROM
  61. Amateur Radio X.25 PLP (Rose)
  62. Serial port KISS driver for AX.25
  63. Serial port 6PACK driver for AX.25
  64. BPQ Ethernet driver
  65. High-speed (DMA) SCC driver for AX.25
  66. Z8530 SCC driver for AX.25
  67. additional delay for PA0HZP OptoSCC compatible boards
  68. YAM driver for AX.25
  69. BAYCOM picpar and par96 driver for AX.25
  70. BAYCOM EPP driver for AX.25
  71. BAYCOM ser12 full duplex driver for AX.25
  72. BAYCOM ser12 half duplex driver for AX.25
  73. Sound card modem driver for AX.25
  74. Sound card modem support for Sound Blaster and compatible cards
  75. Sound card modem support for WSS and Crystal cards
  76. Sound card modem support for 1200 baud AFSK modulation
  77. Sound card modem support for 2400 baud AFSK modulation (7.3728MHz crystal)
  78. Sound card modem support for 2400 baud AFSK modulation (8MHz crystal)
  79. Sound card modem support for 2666 baud AFSK modulation
  80. Sound card modem support for 4800 baud 8PSK modulation
  81. Sound card modem support for 4800 baud HAPN-1 modulation
  82. Sound card modem support for 9600 baud FSK G3RUH modulation
  83. CCITT X.25 Packet Layer
  84. LAPB Data Link Driver (EXPERIMENTAL)
  85. 802.2 LLC (VERY EXPERIMENTAL)
  86. Bridging (EXPERIMENTAL)
  87. Packet socket
  88. Kernel/User network link driver
  89. Routing messages
  90. Netlink device emulation
  91. SCSI support?
  92. Network device support?
  93. Dummy net driver support
  94. SLIP (serial line) support
  95. CSLIP compressed headers
  96. Keepalive and linefill
  97. Six bit SLIP encapsulation
  98. PPP (point-to-point) support
  99. Wireless LAN (non-hamradio)
  100. STRIP (Metricom Starmode radio IP)
  101. AT&T WaveLAN & DEC RoamAbout DS support
  102. Aironet Arlan 655 & IC2200 DS support
  103. LAPB over Ethernet driver
  104. X.25 async driver
  105. Shortwave radio modem driver
  106. Shortwave radio modem driver support for Sound Blaster and compatible cards
  107. Shortwave radio modem driver support for WSS and Crystal cards
  108. PLIP (parallel port) support
  109. EQL (serial line load balancing) support
  110. Ethertap network tap
  111. Sealevel Systems 4021 support
  112. Frame Relay (DLCI) support
  113. Max open DLCI
  114. Max DLCI per device
  115. Sangoma S502A FRAD support
  116. Acorn Econet/AUN protocols (EXPERIMENTAL)
  117. AUN over UDP
  118. Native Econet
  119. WAN Router
  120. Fast switching (read help!)
  121. Forwarding between high speed interfaces
  122. CPU is too slow to handle full bandwidth
  123. QoS and/or fair queueing
  124. CBQ packet scheduler
  125. CSZ packet scheduler
  126. The simplest PRIO pseudo scheduler
  127. RED queue
  128. SFQ queue
  129. TEQL queue
  130. TBF queue
  131. QoS support
  132. Rate estimator
  133. Packet classifier API
  134. Network code profiler
  135. Red Creek Hardware VPN (EXPERIMENTAL)
  136. SBNI Leased Line Adapters
  137. WAN Drivers
  138. Sangoma WANPIPE(tm) multiprotocol cards
  139. Maximum number of cards
  140. WANPIPE X.25 support
  141. WANPIPE Frame Relay support
  142. WANPIPE PPP support
  143. Traffic Shaper (EXPERIMENTAL)
  144. FDDI driver support
  145. Digital DEFEA and DEFPA adapter support
  146. HIgh Performance Parallel Interface support (EXPERIMENTAL)
  147. Essential RoadRunner HIPPI PCI adapter support
  148. Use large TX/RX rings
  149. /proc filesystem support
  150. NFS filesystem support
  151. Root file system on NFS
  152. NFS server support
  153. Emulate Sun NFS daemon
  154. MTRR control and configuration
  155. Watchdog Timer Support
  156. Disable watchdog shutdown on close
  157. WDT Watchdog timer
  158. WDT501 features
  159. Fan Tachometer
  160. Software Watchdog
  161. Berkshire Products PC Watchdog
  162. Acquire SBC Watchdog Timer
  163. Enhanced Real Time Clock Support
  164. Tadpole ANA H8 Support
  165. /dev/nvram support
  166. Are you using a crosscompiler
  167. Remote GDB kernel debugging
  168. Magic System Request Key support
  169. ISDN subsystem
  170. Support synchronous PPP
  171. Support generic MP (RFC 1717)
  172. Use VJ-compression with synchronous PPP
  173. Support audio via ISDN
  174. X.25 PLP on top of ISDN
  175. ISDN diversion services support
  176. isdnloop support
  177. Verbose kernel error messages
  178. Compile kernel with frame pointer
  179. User fault debugging
  180. Include gdb debugging information in kernel binary
  181. Split initialisation functions into discardable section
  182. Disable pgtable cache



# From 2.2.14-pre9
#
# Maintained by Axel Boldt (boldt@math.ucsb.edu)
#
# This version of the Linux kernel configuration help texts
# corresponds to the kernel versions 2.2.x.
#
# All this was shamelessly stolen from several different sources. Many
# thanks to all the contributors. Feel free to use these help texts in
# your own kernel configuration tools. The texts are copyrighted (c)
# 1995-1999 by Axel Boldt and many others and are governed by the GNU
# General Public License.


Network Block Device support
CONFIG_BLK_DEV_NBD
  Saying Y here will allow your computer to be a client for network
  block devices, i.e. it will be able to use block devices exported by
  servers (mount filesystems on them etc.). Communication between
  client and server works over TCP/IP networking, but to the client
  program this is hidden: it looks like a regular local file access to
  a block device special file such as /dev/nd0. 

  Network block devices also allows you to run a block-device in
  userland (making server and client physically the same computer,
  communicating using the loopback network device).
  
  Read Documentation/nbd.txt for more information, especially about
  where to find the server code, which runs in user space and does not
  need special kernel support.

  Note that this has nothing to do with the network file systems NFS
  or Coda; you can say N here even if you intend to use NFS or Coda.

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called nbd.o.

  If unsure, say N.


Networking support
CONFIG_NET
  Unless you really know what you are doing, you should say Y here.
  The reason is that some programs need kernel networking support even
  when running on a stand-alone machine that isn't connected to any
  other computer. If you are upgrading from an older kernel, you
  should consider updating your networking tools too because changes
  in the kernel and the tools often go hand in hand. The tools are
  contained in the package net-tools, the location and version number
  of which are given in Documentation/Changes.

  For a general introduction to Linux networking, it is highly
  recommended to read the NET-3-HOWTO, available via FTP (user:
  anonymous) from ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

Socket filtering
CONFIG_FILTER
  The Linux Socket Filter is derived from the Berkeley Packet Filter.
  If you say Y here, user-space programs can attach a filter to any
  socket and thereby tell the kernel that it should allow or disallow
  certain types of data to get through the socket. Linux Socket
  Filtering works on all socket types except TCP for now. See the text
  file linux/Documentation/networking/filter.txt for more information.
  If unsure, say N.

Network firewalls
CONFIG_FIREWALL
  A firewall is a computer which protects a local network from the
  rest of the world: all traffic to and from computers on the local
  net is inspected by the firewall first, and sometimes blocked or
  modified. The type of firewall you'll get if you say Y here is
  called a "packet filter": it can block network traffic based on
  type, origin and destination. By contrast, "proxy-based" firewalls
  are more secure but more intrusive and more bothersome to set up;
  they inspect the network traffic much more closely, modify it and
  have knowledge about the higher level protocols, which packet
  filters lack. They also often require changes in the programs
  running on the local clients. Proxy-based firewalls don't need
  support by the kernel, but they are often combined with packet
  filters, which only works if you say Y here.

  If you want to configure your Linux box as a packet filter firewall
  for a local network, say Y here. If your local network is TCP/IP
  based, you will then also have to say Y to "IP: firewalling", below.

  You also need to say Y here and to "IP firewalling" below in order
  to be able to use IP masquerading (i.e. local computers can chat
  with an outside host, but that outside host is made to think that it
  is talking to the firewall box -- makes the local network completely
  invisible to the outside world and avoids the need to allocate
  globally valid IP host addresses for the machines on the local net)
  and IP transparent proxying (makes the computers on the local
  network think they're talking to a remote computer, while in reality
  the traffic is redirected by your Linux firewall to a local proxy
  server).

  Make sure to say N to "Fast switching" below if you intend to say Y
  here.

  Chances are that you should say Y here for every machine which is
  run as a router and N for every regular host. If unsure, say N.

SYN flood protection
CONFIG_SYN_COOKIES
  Normal TCP/IP networking is open to an attack known as "SYN
  flooding". This denial-of-service attack prevents legitimate remote
  users from being able to connect to your computer during an ongoing
  attack and requires very little work from the attacker, who can
  operate from anywhere on the Internet.

  SYN cookies provide protection against this type of attack. If you
  say Y here, the TCP/IP stack will use a cryptographic challenge
  protocol known as "SYN cookies" to enable legitimate users to
  continue to connect, even when your machine is under attack. There
  is no need for the legitimate users to change their TCP/IP software;
  SYN cookies work transparently to them. For technical information
  about SYN cookies, check out
  ftp://koobera.math.uic.edu/pub/docs/syncookies-archive

  If you are SYN flooded, the source address reported by the kernel is
  likely to have been forged by the attacker; it is only reported as
  an aid in tracing the packets to their actual source and should not
  be taken as absolute truth.

  SYN cookies may prevent correct error reporting on clients when the
  server is really overloaded. If this happens frequently better turn
  them off.

  If you say Y here, note that SYN cookies aren't enabled by default;
  you can enable them by saying Y to "/proc filesystem support" and
  "Sysctl support" below and executing the command

    echo 1 >/proc/sys/net/ipv4/tcp_syncookies 

  at boot time after the proc filesystem has been mounted.
  
  If unsure, say Y.

  
Sysctl support
CONFIG_SYSCTL
  The sysctl interface provides a means of dynamically changing
  certain kernel parameters and variables on the fly without requiring
  a recompile of the kernel or reboot of the system. The primary
  interface consists of a system call, but if the /proc filesystem is
  enabled, a tree of modifiable sysctl entries will be generated
  beneath the /proc/sys directory. They are explained in the files in
  Documentation/sysctl/. Note that enabling this option will enlarge
  the kernel by at least 8 KB. 

  As it is generally a good thing, you should say Y here unless
  building a kernel for install/rescue disks or your system is very
  limited in memory.


ARP daemon support (EXPERIMENTAL)
CONFIG_ARPD
  Normally, the kernel maintains an internal cache which maps IP 
  addresses to hardware addresses on the local network, so that
  Ethernet/Token Ring/ etc. frames are sent to the proper address on
  the physical networking layer. For small networks having a few
  hundred directly connected hosts or less, keeping this address
  resolution (ARP) cache inside the kernel works well. However,
  maintaining an internal ARP cache does not work well for very large
  switched networks, and will use a lot of kernel memory if TCP/IP
  connections are made to many machines on the network. 

  If you say Y here, the kernel's internal ARP cache will never grow
  to more than 256 entries (the oldest entries are expired in a LIFO
  manner) and communication will be attempted with the user space ARP
  daemon arpd. Arpd then answers the address resolution request either
  from its own cache or by asking the net.

  This code is experimental. If you do say Y here, you should obtain a
  copy of arpd from http://www.loran.com/~layes/arpd/index.html, and
  you should also say Y to "Kernel/User network link driver", below.
  If unsure, say N.

TCP/IP networking
CONFIG_INET
  These are the protocols used on the Internet and on most local
  Ethernets. It is highly recommended to say Y here (this will enlarge
  your kernel by about 35 KB), since some programs (e.g. the X window
  system) use TCP/IP even if your machine is not connected to any
  other computer. You will get the so-called loopback device which
  allows you to ping yourself (great fun, that!).

  For an excellent introduction to Linux networking, please read the
  NET-3-HOWTO, available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

  This option is also necessary if you want to use the full power of
  term (term is a program which gives you almost full Internet
  connectivity if you have a regular dial up shell account on some
  Internet connected Unix computer; for more information, read
  http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html).
  
  If you say Y here and also to "/proc filesystem support" and "Sysctl
  support" below, you can change various aspects of the behavior of
  the TCP/IP code by writing to the (virtual) files in
  /proc/sys/net/ipv4/*; the options are explained in the file
  Documentation/Networking/ip-sysctl.txt.

  Short answer: say Y.

IP: multicasting
CONFIG_IP_MULTICAST
  This is code for addressing several networked computers at once,
  enlarging your kernel by about 2 kB. You need multicasting if you
  intend to participate in the MBONE, a high bandwidth network on top
  of the Internet which carries audio and video broadcasts. More
  information about the MBONE is on the WWW at
  http://www.best.com/~prince/techinfo/mbone.html (to browse the WWW,
  you need to have access to a machine on the Internet that has a
  program like lynx or netscape). Information about the multicast
  capabilities of the various network cards is contained in
  Documentation/networking/multicast.txt. For most people, it's safe
  to say N.

IP: advanced router
CONFIG_IP_ADVANCED_ROUTER
  If you intend to run your Linux box mostly as a router, i.e. as a
  computer that forwards and redistributes network packets, say Y; you
  will then be presented with several options that allow more precise
  control about the routing process.

  The answer to this question won't directly affect the kernel:
  answering N will just cause this configure script to skip all the
  questions about advanced routing.

  Note that your box can only act as a router if you enable IP
  forwarding in your kernel; you can do that by saying Y to "/proc
  filesystem support" and "Sysctl support" below and executing the
  line

    echo "1" > /proc/sys/net/ipv4/ip_forward

  at boot time after the /proc filesystem has been mounted. 

  If you turn on IP forwarding, you will also get the rp_filter, which
  automatically rejects incoming packets if the routing table entry
  for their source address doesn't match the network interface they're
  arriving on. This has security advantages because it prevents the
  so-called IP spoofing, however it can pose problems if you use
  asymmetric routing (packets from you to a host take a different path
  than packets from that host to you) or if you operate a non-routing
  host which has several IP addresses on different interfaces. To turn
  rp_filter off use:

        echo 0 > /proc/sys/net/ipv4/conf/<device>/rp_filter
  or
        echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter

  If unsure, say N here.

IP: policy routing
CONFIG_IP_MULTIPLE_TABLES
  Normally, a router decides what to do with a received packet based
  solely on the packet's final destination address. If you say Y here,
  the Linux router will also be able to take the packet's source
  address into account. Furthermore, if you also say Y to "IP: use TOS
  value as routing key" below, the TOS (Type-Of-Service) field of the
  packet can be used for routing decisions as well. In addition, if
  you say Y here and to "IP: fast network address translation" below,
  the router will also be able to modify source and destination
  addresses of forwarded packets.

  If you are interested in this, please see the preliminary
  documentation at http://www.compendium.com.ar/policy-routing.txt and
  ftp://post.tepkom.ru/pub/vol2/Linux/docs/advanced-routing.tex You
  will need supporting software from ftp://ftp.inr.ac.ru/ip-routing/
  
  If unsure, say N.
  
IP: equal cost multipath
CONFIG_IP_ROUTE_MULTIPATH
  Normally, the routing tables specify a single action to be taken in
  a deterministic manner for a given packet. If you say Y here
  however, it becomes possible to attach several actions to a packet
  pattern, in effect specifying several alternative paths to travel
  for those packets. The router considers all these paths to be of
  equal "cost" and chooses one of them in a non-deterministic fashion
  if a matching packet arrives.

IP: use TOS value as routing key
CONFIG_IP_ROUTE_TOS
  The header of every IP packet carries a TOS (Type of Service) value
  with which the packet requests a certain treatment, e.g. low latency
  (for interactive traffic), high throughput, or high reliability. If
  you say Y here, you will be able to specify different routes for
  packets with different TOS values.

IP: use FWMARK value as routing key
CONFIG_IP_ROUTE_FWMARK
  If you say Y here, you will be able to specify different routes for
  packets with different FWMARK ("firewalling mark") values
  (see ipchains(8), "-m" argument).

IP: verbose route monitoring
CONFIG_IP_ROUTE_VERBOSE
  If you say Y here, which is recommended, then the kernel will print
  verbose messages regarding the routing, for example warnings about
  received packets which look strange and could be evidence of an
  attack or a misconfigured system somewhere. The information is
  handled by the klogd daemon which is responsible for kernel messages
  ("man klogd").

IP: large routing tables
CONFIG_IP_ROUTE_LARGE_TABLES
  If you have routing zones that grow to more than about 64 entries,
  you may want to say Y here to speed up the routing process.

IP: fast network address translation
CONFIG_IP_ROUTE_NAT
  If you say Y here, your router will be able to modify source and
  destination addresses of packets that pass through it, in a manner
  you specify. General information about Network Address Translation
  can be gotten from the document
  http://www.csn.tu-chemnitz.de/~mha/linux-ip-nat/diplom/nat.html

IP: optimize as router not host
CONFIG_IP_ROUTER
  Some Linux network drivers use a technique called copy and checksum
  to optimize host performance. For a machine which acts as a router
  most of the time and is forwarding most packets to another host this
  is however a loss. If you say Y here, copy and checksum will be
  switched off. In the future, it may make other changes which
  optimize for router operation.

  Note that your box can only act as a router if you enable IP
  forwarding in your kernel; you can do that by saying Y to "/proc
  filesystem support" and "Sysctl support" below and executing the
  line

    echo "1" > /proc/sys/net/ipv4/ip_forward

  at boot time after the /proc filesystem has been mounted. You can do
  that even if you say N here.

  If unsure, say N here.

IP: firewalling
CONFIG_IP_FIREWALL
  If you want to configure your Linux box as a packet filter firewall
  for a local TCP/IP based network, say Y here. You may want to read
  the FIREWALL-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

  Also, you will need the ipchains tool (available on the WWW at
  http://www.rustcorp.com/linux/ipchains/) to allow selective blocking
  of Internet traffic based on type, origin and destination. 
  Note that the Linux firewall code has changed and the old program
  called ipfwadm won't work anymore. Please read the IPCHAINS-HOWTO.

  The type of firewall provided by ipchains and this kernel support is
  called a "packet filter". The other type of firewall, a
  "proxy-based" one, is more secure but more intrusive and more
  bothersome to set up; it inspects the network traffic much more
  closely, modifies it and has knowledge about the higher level
  protocols, which a packet filter lacks. Moreover, proxy-based
  firewalls often require changes to the programs running on the local
  clients. Proxy-based firewalls don't need support by the kernel, but
  they are often combined with a packet filter, which only works if
  you say Y here.

  The firewalling code will only work if IP forwarding is enabled in
  your kernel. You can do that by saying Y to "/proc filesystem
  support" and "Sysctl support" below and executing the line

    echo "1" > /proc/sys/net/ipv4/ip_forward

  at boot time after the /proc filesystem has been mounted. 

  You need to say Y to "IP firewalling" in order to be able to use IP
  masquerading (masquerading means that local computers can chat with
  an outside host, but that outside host is made to think that it is
  talking to the firewall box -- makes the local network completely
  invisible to the outside world and avoids the need to allocate
  globally valid IP host addresses for the machines on the local net)
  and IP packet logging and accounting (keeping track of what is using
  all your network bandwidth) and IP transparent proxying (makes the
  computers on the local network think they're talking to a remote
  computer, while in reality the traffic is redirected by your Linux
  firewall to a local proxy server).

  If in doubt, say N here.

IP: firewall packet netlink device
CONFIG_IP_FIREWALL_NETLINK
  If you say Y here, you can use the ipchains tool to copy all or part
  of any packet you specify that hits your Linux firewall to optional
  user space monitoring software that can then look for attacks and
  take actions such as paging the administrator of the site.

  To use this, you need to create a character special file under /dev
  with major number 36 and minor number 3 using mknod ("man mknod"),
  and you need (to write) a program that reads from that device and
  takes appropriate action.

IP: kernel level autoconfiguration
CONFIG_IP_PNP
  This enables automatic configuration of IP addresses of devices and
  of the routing table during kernel boot, based on either information
  supplied at the kernel command line or by BOOTP or RARP protocols.
  You need to say Y only for diskless machines requiring network
  access to boot (in which case you want to say Y to "Root file system
  on NFS" as well), because all other machines configure the network
  in their startup scripts.

BOOTP support
CONFIG_IP_PNP_BOOTP
  If you want your Linux box to mount its whole root filesystem (the
  one containing the directory /) from some other computer over the
  net via NFS and you want the IP address of your computer to be
  discovered automatically at boot time using the BOOTP protocol (a
  special protocol designed for doing this job), say Y here. In case
  the boot ROM of your network card was designed for booting Linux and
  does BOOTP itself, providing all necessary information on the kernel
  command line, you can say N here. If unsure, say Y. Note that if you
  want to use BOOTP, a BOOTP server must be operating on your network.
  Read Documentation/nfsroot.txt for details.

RARP support
CONFIG_IP_PNP_RARP
  If you want your Linux box to mount its whole root filesystem (the
  one containing the directory /) from some other computer over the
  net via NFS and you want the IP address of your computer to be
  discovered automatically at boot time using the RARP protocol (an
  older protocol which is being obsoleted by BOOTP and DHCP), say Y
  here. Note that if you want to use RARP, a RARP server must be
  operating on your network. Read Documentation/nfsroot.txt for
  details.

IP: tunneling
CONFIG_NET_IPIP
  Tunneling means encapsulating data of one protocol type within
  another protocol and sending it over a channel that understands the
  encapsulating protocol. This particular tunneling driver implements
  encapsulation of IP within IP, which sounds kind of pointless, but
  can be useful if you want to make your (or some other) machine
  appear on a different network than it physically is, or to use
  mobile-IP facilities (allowing laptops to seamlessly move between
  networks without changing their IP addresses; check out
  http://anchor.cs.binghamton.edu/~mobileip/LJ/index.html). 

  Saying Y to this option will produce two modules ( = code which can
  be inserted in and removed from the running kernel whenever you
  want). Most people won't need this and can say N.

IP: GRE tunnels over IP
CONFIG_NET_IPGRE
  Tunneling means encapsulating data of one protocol type within
  another protocol and sending it over a channel that understands the
  encapsulating protocol. This particular tunneling driver implements
  GRE (Generic Routing Encapsulation) and at this time allows
  encapsulating of IPv4 or IPv6 over existing IPv4 infrastructure.
  This driver is useful if the other endpoint is a Cisco router: Cisco
  likes GRE much better than the other Linux tunneling driver ("IP:
  tunneling" above). In addition, GRE allows multicast redistribution
  through the tunnel.

IP: broadcast GRE over IP
CONFIG_NET_IPGRE_BROADCAST
  One application of GRE/IP is to construct a broadcast WAN (Wide Area
  Network), which looks like a normal Ethernet LAN (Local Area
  Network), but can be distributed all over the Internet. If you want
  to do that, say Y here and to "IP: multicast routing" below.

IP: transparent proxying
CONFIG_IP_TRANSPARENT_PROXY
  This enables your Linux firewall to transparently redirect any
  network traffic originating from the local network and destined
  for a remote host to a local server, called a "transparent proxy
  server". This makes the local computers think they are talking to
  the remote end, while in fact they are connected to the local
  proxy. Redirection is activated by defining special input firewall
  rules (using the ipchains utility) and/or by doing an appropriate
  bind() system call.

IP: masquerading
CONFIG_IP_MASQUERADE
  If one of the computers on your local network for which your Linux
  box acts as a firewall wants to send something to the outside, your
  box can "masquerade" as that computer, i.e. it forwards the traffic
  to the intended outside destination, but makes it look like it came
  from the firewall box itself. It works both ways: if the outside
  host replies, the Linux firewall will silently forward the traffic
  to the corresponding local computer. This way, the computers on your
  local net are completely invisible to the outside world, even though
  they can reach the outside and can receive replies. This makes it
  possible to have the computers on the local network participate on
  the Internet even if they don't have officially registered IP
  addresses. (This last problem can also be solved by connecting the
  Linux box to the Internet using SLiRP [SLiRP is a SLIP/PPP emulator
  that works if you have a regular dial up shell account on some UNIX
  computer; get it via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/system/network/serial/ ].) 

  The IP masquerading code will only work if IP forwarding is enabled
  in your kernel; you can do this by saying Y to "/proc
  filesystem support" and "Sysctl support" below and then executing a
  line like

    echo "1" > /proc/sys/net/ipv4/ip_forward

  from a boot time script after the /proc filesystem has been mounted.

  Enabling masquerading automagically enables ip_always_defrag too.

  Details on how to set things up are contained in the IP Masquerade
  mini-HOWTO, available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/mini; there's also some
  information on the WWW at
  http://www.tor.shaw.wave.ca/~ambrose/kernel21.html 

  If you say Y here, then the modules ip_masq_ftp.o (for ftp file
  transfers), ip_masq_irc.o (for irc chats), ip_masq_quake.o (you
  guessed it), ip_masq_vdolive.o (for VDOLive video connections),
  ip_masq_cuseeme.o (for CU-SeeMe broadcasts) and ip_masq_raudio.o
  (for RealAudio downloads) will automatically be compiled. They are
  needed to make masquerading for these protocols work. Modules are
  pieces of code which can be inserted in and removed from the running
  kernel whenever you want; read Documentation/modules.txt for
  details.

IP: ICMP masquerading
CONFIG_IP_MASQUERADE_ICMP
  The basic masquerade code described for "IP: masquerading" above
  only handles TCP or UDP packets (and ICMP errors for existing
  connections). This option adds additional support for masquerading
  ICMP packets, such as ping or the probes used by the Windows 95
  tracert program.

  If you want this, say Y. 

IP: masquerading special modules support
CONFIG_IP_MASQUERADE_MOD
  This provides support for special modules that can modify the
  rewriting rules used when masquerading. Please note that this
  feature adds a little overhead in the input packet processing chain.

  Examples of such modules are ipautofw (allowing the masquerading of
  protocols which don't have their own protocol helpers) and port
  forwarding (making an incoming port of a local computer visible
  through the masquerading host).

  You will need the user space program "ipmasqadm" to use these
  additional modules; you can download it from
  http://juanjox.linuxhq.com/

  All this additional code is still under development and so is
  currently marked EXPERIMENTAL.
  
  If you want to try, for example, PORT FORWARDING, say Y.

IP: ipautofw masquerade support (Experimental)
CONFIG_IP_MASQUERADE_IPAUTOFW
  ipautofw is a program which allows the masquerading of protocols
  which do not (as yet) have their own protocol helpers. Information
  and source for ipautofw is available via FTP (user: anonymous) from
  ftp://ftp.netis.com/pub/members/rlynch/

  You will also need the ipmasqadm tool available from
  http://juanjox.linuxhq.com/ .

  The ipautofw code is still under development and so is currently
  marked EXPERIMENTAL. If you want to try it, say Y.

  This code is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called ip_masq_autofw.o. If you want to compile
  it as a module, say M here and read Documentation/modules.txt.

IP: ipportfw masquerade support
CONFIG_IP_MASQUERADE_IPPORTFW
  Port Forwarding is an addition to IP Masquerading which allows some
  forwarding of packets from outside to inside a firewall on given
  ports. This could be useful if, for example, you want to run a web
  server behind the firewall or masquerading host and that web server
  should be accessible from the outside world. An external client
  sends a request to port 80 of the firewall, the firewall forwards
  this request to the web server, the web server handles the request
  and the results are sent through the firewall to the original
  client. The client thinks that the firewall machine itself is
  running the web server. This can also be used for load balancing if
  you have a farm of identical web servers behind the firewall.

  Information about this feature is available from
  http://www.monmouth.demon.co.uk/ipsubs/portforwarding.html (to
  browse the WWW, you need to have access to a machine on the Internet
  that has a program like lynx or netscape). For general info, please
  see ftp://ftp.compsoc.net/users/steve/ipportfw/linux21/

  You will need the user space program "ipmasqadm" which can be
  downloaded from http://juanjox.linuxhq.com/

  The portfw code is still under development and so is currently
  marked EXPERIMENTAL. If you want to try it, say Y.

  This code is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called ip_masq_portfw.o. If you want to compile
  it as a module, say M here and read Documentation/modules.txt.

IP: ipmarkfw masquerade support
CONFIG_IP_MASQUERADE_MFW
  Firewall Mark Forwarding provides functionality similar to port
  forwarding (see "IP: ipportfw masquerade support", above), the
  difference being that Firewall Mark Forwarding uses "firewalling
  mark" to select which packets must be forwarded (see ipchains(8),
  "-m" argument).

  This code is still under development and so is currently marked
  EXPERIMENTAL. If you want to try it, say Y.

  This code is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called ip_masq_markfw.o. If you want to compile
  it as a module, say M here and read Documentation/modules.txt.

IP: aliasing support
CONFIG_IP_ALIAS
  Sometimes it is useful to give several IP addresses to a single
  physical network interface (serial port or Ethernet card). The most
  common case is that you want to serve different WWW or ftp documents
  to the outside depending on which of your host names was used to
  connect to you. This is called "multihosting" or "virtual domains"
  or "virtual hosting services" and is explained in detail on the WWW
  at http://www.thesphere.com/~dlp/TwoServers/ (to browse the WWW, you
  need to have access to a machine on the Internet that has a program
  like lynx or netscape) and also in the Virtual-Services-HOWTO,
  available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

  Another scenario would be that there are two logical networks living
  on your local Ethernet and you want to access them both with the
  same Ethernet card. This can also be done if you say Y here.

  The configuration of these alias addresses is done with a special
  name syntax explained in Documentation/networking/alias.txt and in
  the IP-Alias mini-HOWTO. If you want this, say Y. Most people don't
  need it and say N.

IP: multicast routing
CONFIG_IP_MROUTE
  This is used if you want your machine to act as a router for IP
  packets that have several destination addresses. It is needed on the
  MBONE, a high bandwidth network on top of the Internet which carries
  audio and video broadcasts. In order to do that, you would most
  likely run the program mrouted. Information about the multicast
  capabilities of the various network cards is contained in
  Documentation/networking/multicast.txt. If you haven't heard about
  it, you don't need it.

IP: PIM-SM version 1 support
CONFIG_IP_PIMSM_V1
  Kernel side support for Sparse Mode PIM (Protocol Independent
  Multicast) version 1. This multicast routing protocol is used widely
  because Cisco supports it. You need special software to use it
  (pimd-v1). Please see http://netweb.usc.edu/pim/ for more
  information about PIM (to browse the WWW, you need to have access to
  a machine on the Internet that has a program like lynx or
  netscape). 

  Say Y if you want to use PIM-SM v1. Note that you can say N here if
  you just want to use Dense Mode PIM.

IP: PIM-SM version 2 support
CONFIG_IP_PIMSM_V2
  Kernel side support for Sparse Mode PIM version 2. In order to use
  this, you need an experimental routing daemon supporting it (pimd or
  gated-5). This routing protocol is not used widely, so say N unless
  you want to play with it.

PC/TCP compatibility mode
CONFIG_INET_PCTCP
  If you have been having difficulties telnetting to your Linux
  machine from a DOS system that uses (broken) PC/TCP networking
  software (all versions up to OnNet 2.0) over your local Ethernet try
  saying Y here. Everyone else says N. 

  People having problems with NCSA telnet should see the file
  linux/Documentation/networking/ncsa-telnet.

Reverse ARP server
CONFIG_INET_RARP
  If there are (usually diskless or portable) machines on your local
  network that know their hardware Ethernet addresses but don't know
  their IP addresses upon startup, they can send out a Reverse Address
  Resolution Protocol (RARP) request to find out their own IP
  addresses. Diskless Sun 3 machines use this procedure at boot time,
  and diskless Linux boxes can be configured to do it as well.
  
  If you want your Linux box to be able to *answer* such requests,
  answer Y here; you'll then have to run the program rarp ("man rarp")
  on your box.

  If you actually want to use a diskless Sun 3 machine as an X
  terminal to Linux, say Y here and fetch Linux-Xkernel from
  ftp://metalab.unc.edu/pub/Linux/system/network/boot.net/

  Superior solutions to the problem of booting and configuring
  machines over a net connection are given by the protocol BOOTP and
  its successor DHCP. See the DHCP FAQ
  http://web.syr.edu/~jmwobus/comfaqs/dhcp.faq.html for details (to
  browse the WWW, you need to have access to a machine on the Internet
  that has a program like lynx or netscape).

  If you want to compile RARP support as a module ( = code which can
  be inserted in and removed from the running kernel whenever you
  want), say M here and read Documentation/modules.txt. The module
  will be called rarp.o. 

  If you don't understand a word of the above, say N and rest in
  peace.

Assume subnets are local
CONFIG_INET_SNARL
  Say Y if you are on a subnetted network with all machines connected
  by Ethernet segments only, as this option optimizes network access
  for this special case. If there are other connections, e.g. SLIP
  links, between machines of your IP network, say N. If in doubt,
  answer N. The PATH mtu discovery facility will cover most cases
  anyway.

Path MTU Discovery (normally enabled)
CONFIG_PATH_MTU_DISCOVERY
  MTU (maximal transfer unit) is the size of the chunks we send out
  over the net. "Path MTU Discovery" means that, instead of always
  sending very small chunks, we start out sending big ones and if we
  then discover that some host along the way likes its chunks smaller,
  we adjust to a smaller size. This is good, so most people say Y
  here.

  However, some DOS software (versions of DOS NCSA telnet and Trumpet
  Winsock in PPP mode) is broken and won't be able to connect to your
  Linux machine correctly in all cases (especially through a terminal
  server) unless you say N here. See
  Documentation/networking/ncsa-telnet for the location of fixed NCSA
  telnet clients. If in doubt, say Y.

Disable NAGLE algorithm (normally enabled)
CONFIG_TCP_NAGLE_OFF
  The NAGLE algorithm works by requiring an acknowledgment before
  sending small IP frames (packets). This keeps tiny telnet and
  rlogin packets from congesting Wide Area Networks. Most people
  strongly recommend to say N here, thereby leaving NAGLE
  enabled. Those programs that would benefit from disabling this
  facility can do it on a per connection basis themselves.

IP: Allow large windows (not recommended if <16 MB of memory)
CONFIG_SKB_LARGE
  On high speed, long distance networks the performance limit on
  networking becomes the amount of data the sending machine can buffer
  until the other end confirms its reception. (At 45 Mbit/second there
  are a lot of bits between New York and London ...). If you say Y
  here, bigger buffers can be used which allows larger amounts of data
  to be "in flight" at any given time. It also means a user process
  can require a lot more memory for network buffers and thus this
  option is best used only on machines with 16 MB of memory or higher.
  Unless you are using long links with end to end speeds of over 2
  Mbit a second or satellite links this option will make no difference
  to performance.

Unix domain sockets
CONFIG_UNIX
  If you say Y here, you will include support for Unix domain sockets;
  sockets are the standard Unix mechanism for establishing and
  accessing network connections. Many commonly used programs such as
  the X Window system and syslog use these sockets even if your
  machine is not connected to any network. Unless you are working on
  an embedded system or something similar, you therefore definitely
  want to say Y here.

  However, the socket support is also available as a module ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt. The module will be called
  unix.o. If you try building this as a module and you have said Y to
  "Kernel module loader support" above, be sure to add 'alias net-pf-1
  unix' to your /etc/conf.modules file. Note that several important
  services won't work correctly if you say M here and then neglect to
  load the module.

  Say Y unless you know what you are doing.

The IPv6 protocol
CONFIG_IPV6
  This is experimental support for the next version of the Internet
  Protocol: IP version 6 (also called IPng "IP next generation"). 
  Features of this new protocol include: expanded address space,
  authentication and privacy, and seamless interoperability with the
  current version of IP (IP version 4). For general information about
  IPv6, see http://playground.sun.com/pub/ipng/html/ipng-main.html (to
  browse the WWW, you need to have access to a machine on the Internet
  that has a program like lynx or netscape); for specific information
  about IPv6 under Linux read the file net/ipv6/README in the kernel source. 

  If you want to use IPv6, please upgrade to the newest net-tools as
  given in Documentation/Changes. You will still be able to do regular
  IPv4 networking as well.

  This protocol support is also available as a module ( = code which
  can be inserted in and removed from the running kernel whenever you
  want). The module will be called ipv6.o. If you want to compile it
  as a module, say M here and read Documentation/modules.txt.

  It is safe to say N here for now.

IPv6: enable EUI-64 token format
CONFIG_IPV6_EUI64
  6bone, the network of computers using the IPv6 protocol, is moving
  to a new aggregatable address format and a new link local address
  assignment (EUI-64). Say Y if your site has upgraded already, or
  has started to upgrade.

IPv6: disable provider based addresses
CONFIG_IPV6_NO_PB
  Linux tries to operate correctly when your site has moved to EUI-64
  only partially. Unfortunately, the two address formats (old:
  "provider based" and new: "aggregatable") are incompatible. Say Y if
  your site finished the upgrade to EUI-64, and/or you encountered
  some problems caused by the presence of two link-local addresses on
  an interface.

IPv6: routing messages via old netlink
CONFIG_IPV6_NETLINK
  You can say Y here to receive routing messages from the IPv6 code
  through the old netlink interface. However, a better option is to
  say Y to "Kernel/User network link driver" and to "Routing
  messages" instead.
  
IPX networking
CONFIG_IPX
  This is support for the Novell networking protocol, IPX, commonly
  used for local networks of Windows machines. You need it if you want
  to access Novell NetWare file or print servers using the Linux
  Novell client ncpfs (available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/system/filesystems/) or from within
  the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO). In order to do the
  former, you'll also have to say Y to "NCP filesystem support",
  below.

  IPX is similar in scope to IP, while SPX, which runs on top of IPX,
  is similar to TCP. There is also experimental support for SPX in
  Linux (see "SPX networking", below).

  To turn your Linux box into a fully featured NetWare file server and
  IPX router, say Y here and fetch either lwared from
  ftp://metalab.unc.edu/pub/Linux/system/network/daemons/ or mars_nwe
  from ftp://ftp.gwdg.de/pub/linux/misc/ncpfs For more information,
  read the IPX-HOWTO in ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

  General information about how to connect Linux, Windows machines and
  Macs is on the WWW at http://www.eats.com/linux_mac_win.html (to
  browse the WWW, you need to have access to a machine on the Internet
  that has a program like lynx or netscape). 

  The IPX driver would enlarge your kernel by about 5 kB. This driver
  is also available as a module ( = code which can be inserted in and
  removed from the running kernel whenever you want). The module will
  be called ipx.o. If you want to compile it as a module, say M here
  and read Documentation/modules.txt. Unless you want to integrate
  your Linux box with a local Novell network, say N.

IPX: Full internal IPX network
CONFIG_IPX_INTERN
  Every IPX network has an address that identifies it. Sometimes it is
  useful to give an IPX "network" address to your Linux box as well
  (for example if your box is acting as a file server for different
  IPX networks: it will then be accessible from everywhere using the
  same address). The way this is done is to create a virtual internal
  "network" inside your box and to assign an IPX address to this
  network. Say Y here if you want to do this; read the IPX-HOWTO at
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO for details.

  The full internal IPX network enables you to allocate sockets on
  different virtual nodes of the internal network. This is done by
  evaluating the field sipx_node of the socket address given to the
  bind call. So applications should always initialize the node field
  to 0 when binding a socket on the primary network. In this case the
  socket is assigned the default node that has been given to the
  kernel when the internal network was created. By enabling the full
  internal IPX network the cross-forwarding of packets targeted at
  'special' sockets to sockets listening on the primary network is
  disabled. This might break existing applications, especially RIP/SAP
  daemons. A RIP/SAP daemon that works well with the full internal net
  can be found on ftp://ftp.gwdg.de/pub/linux/misc/ncpfs 

  If you don't know what you are doing, say N.

IPX: SPX networking (EXPERIMENTAL)
CONFIG_SPX
  The Sequenced Packet eXchange protocol is a transport layer protocol
  built on top of IPX. It is used in Novell NetWare systems for
  client-server applications and is similar to TCP (which runs on top
  of IP).

  Note that Novell NetWare file sharing does not use SPX; it uses a
  protocol called NCP, for which separate Linux support is available
  ("NCP filesystem support" below for the client side, and the user
  space programs lwared or mars_nwe for the server side).

  Say Y here if you have use for SPX; read the IPX-HOWTO at
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO for details.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called af_spx.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

AppleTalk DDP
CONFIG_ATALK
  AppleTalk is the way Apple computers speak to each other on a
  network. If your Linux box is connected to such a network and you
  want to join the conversation, say Y. You will need to use the
  netatalk package so that your Linux box can act as a print and file
  server for Macs as well as access AppleTalk printers. Check out
  http://threepio.hitchcock.org/cgi-bin/faq/netatalk/faq.pl on the WWW
  for details (to browse the WWW, you need to have access to a machine
  on the Internet that has a program like lynx or netscape). EtherTalk
  is the name used for AppleTalk over Ethernet and the cheaper and
  slower LocalTalk is AppleTalk over a proprietary Apple network using
  serial links. EtherTalk and LocalTalk are fully supported by Linux.

  General information about how to connect Linux, Windows machines and
  Macs is on the WWW at http://www.eats.com/linux_mac_win.html
  The NET-3-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO contains valuable
  information as well.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module is called appletalk.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt. I hear that
  the GNU boycott of Apple is over, so even politically correct people
  are allowed to say Y here.

AppleTalk-IP driver support
CONFIG_IPDDP
  This allows IP networking for users who only have AppleTalk
  networking available. This feature is experimental. With this
  driver, you can encapsulate IP inside AppleTalk (e.g. if your Linux
  box is stuck on an AppleTalk only network) or decapsulate (e.g. if
  you want your Linux box to act as an Internet gateway for a zoo of
  AppleTalk connected Macs). Please see the file
  Documentation/networking/ipddp.txt for more information.

  If you say Y here, the AppleTalk-IP support will be compiled into
  the kernel. In this case, you can either use encapsulation or
  decapsulation, but not both. With the following two questions, you
  decide which one you want.

  If you say M here, the AppleTalk-IP support will be compiled as a
  module ( = code which can be inserted in and removed from the
  running kernel whenever you want, read Documentation/modules.txt).
  The module is called ipddp.o. In this case, you will be able to use
  both encapsulation and decapsulation simultaneously, by loading two
  copies of the module and specifying different values for the module
  option ipddp_mode. 

IP to AppleTalk-IP Encapsulation support
CONFIG_IPDDP_ENCAP
  If you say Y here, the AppleTalk-IP code will be able to encapsulate
  IP packets inside AppleTalk frames; this is useful if your Linux box
  is stuck on an AppleTalk network (which hopefully contains a
  decapsulator somewhere). Please see
  Documentation/networking/ipddp.txt for more information. If you said
  Y to "AppleTalk-IP driver support" above and you say Y here, then
  you cannot say Y to "AppleTalk-IP to IP Decapsulation support",
  below.

AppleTalk-IP to IP Decapsulation support
CONFIG_IPDDP_DECAP
  If you say Y here, the AppleTalk-IP code will be able to decapsulate
  AppleTalk-IP frames to IP packets; this is useful if you want your
  Linux box to act as an Internet gateway for an AppleTalk network.
  Please see Documentation/networking/ipddp.txt for more information.
  If you said Y to "AppleTalk-IP driver support" above and you say Y
  here, then you cannot say Y to "IP to AppleTalk-IP Encapsulation
  support", above.


Amateur Radio support
CONFIG_HAMRADIO
  If you want to connect your Linux box to an amateur radio, answer Y
  here. You want to read http://www.tapr.org/tapr/html/pkthome.html
  (to browse the WWW, you need to have access to a machine on the
  Internet that has a program like lynx or netscape) and the HAM-HOWTO
  and the AX25-HOWTO, both available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

  Note that the answer to this question won't directly affect the
  kernel: saying N will just cause this configure script to skip all
  the questions about amateur radio.

Amateur Radio AX.25 Level 2
CONFIG_AX25
  This is the protocol used for computer communication over amateur
  radio. It is either used by itself for point-to-point links, or to
  carry other protocols such as tcp/ip. To use it, you need a device
  that connects your Linux box to your amateur radio. You can either
  use a low speed TNC (a Terminal Node Controller acts as a kind of
  modem connecting your computer's serial port to your radio's
  microphone input and speaker output) supporting the KISS protocol or
  one of the various SCC cards that are supported by the generic Z8530
  or the DMA SCC driver. Another option are the Baycom modem serial
  and parallel port hacks or the sound card modem (supported by their
  own drivers). If you say Y here, you also have to say Y to one of
  those drivers.

  Information about where to get supporting software for Linux amateur
  radio as well as information about how to configure an AX.25 port is
  contained in the AX25-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO You might also want to
  check out the file Documentation/networking/ax25.txt in the kernel
  source. More information about digital amateur radio in general is
  on the WWW at http://www.tapr.org/tapr/html/pkthome.html (To browse
  the WWW, you need to have access to a machine on the Internet that
  has a program like lynx or netscape).

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called ax25.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

AX.25 DAMA Slave support
CONFIG_AX25_DAMA_SLAVE
  DAMA is a mechanism to prevent collisions when doing AX.25
  networking. A DAMA server (called "master") accepts incoming traffic
  from clients (called "slaves") and redistributes it to other slaves.
  If you say Y here, your Linux box will act as a DAMA slave; this is
  transparent in that you don't have to do any special DAMA
  configuration. (Linux cannot yet act as a DAMA server.) If unsure,
  say N.

AX.25 DAMA Master support
CONFIG_AX25_DAMA_MASTER
  DAMA is a mechanism to prevent collisions when doing AX.25
  networking. A DAMA server (called "master") accepts incoming traffic
  from clients (called "slaves") and redistributes it to other
  slaves. If you say Y here, your Linux box will act as a DAMA server.
  If unsure, say N.

Amateur Radio NET/ROM
CONFIG_NETROM
  NET/ROM is a network layer protocol on top of AX.25 useful for
  routing.

  A comprehensive listing of all the software for Linux amateur radio
  users as well as information about how to configure an AX.25 port is
  contained in the AX25-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO You also might want to
  check out the file Documentation/networking/ax25.txt. More
  information about digital amateur radio in general is on the WWW at
  http://www.tapr.org/tapr/html/pkthome.html (to browse the WWW, you
  need to have access to a machine on the Internet that has a program
  like lynx or netscape).

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called netrom.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

Amateur Radio X.25 PLP (Rose)
CONFIG_ROSE
  The Packet Layer Protocol (PLP) is a way to route packets over X.25
  connections in general and amateur radio AX.25 connections in
  particular, essentially an alternative to NET/ROM.

  A comprehensive listing of all the software for Linux amateur radio
  users as well as information about how to configure an AX.25 port is
  contained in the AX25-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO You also might want to
  check out the file Documentation/networking/ax25.txt. More
  information about digital amateur radio in general is on the WWW at
  http://www.tapr.org/tapr/html/pkthome.html (to browse the WWW, you
  need to have access to a machine on the Internet that has a program
  like lynx or netscape).

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called rose.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

Serial port KISS driver for AX.25
CONFIG_MKISS
  KISS is a protocol used for the exchange of data between a computer
  and a Terminal Node Controller (a small embedded system commonly
  used for networking over AX.25 amateur radio connections; it
  connects the computer's serial port with the radio's microphone
  input and speaker output).

  Although KISS is less advanced than the 6pack protocol, it has
  the advantage that it is already supported by most modern TNCs
  without the need for a firmware upgrade.

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called mkiss.o.

Serial port 6PACK driver for AX.25
CONFIG_6PACK
  6pack is a transmission protocol for the data exchange between your
  PC and your TNC (the Terminal Node Controller acts as a kind of
  modem connecting your computer's serial port to your radio's
  microphone input and speaker output). This protocol can be used as
  an alternative to KISS for networking over AX.25 amateur radio
  connections, but it has some extended functionality.

  Note that this driver is still experimental and might cause
  problems. For details about the features and the usage of the
  driver, read Documentation/networking/6pack.txt.

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called 6pack.o.

BPQ Ethernet driver
CONFIG_BPQETHER
  AX.25 is the protocol used for computer communication over amateur
  radio. If you say Y here, you will be able to send and receive AX.25
  traffic over Ethernet (also called "BPQ AX.25"), which could be
  useful if some other computer on your local network has a direct
  amateur radio connection.

High-speed (DMA) SCC driver for AX.25
CONFIG_DMASCC
  This is a driver for high-speed SCC boards, i.e. those supporting
  DMA on one port. You usually use those boards to connect your
  computer to an amateur radio modem (such as the WA4DSY 56kbps
  modem), in order to send and receive AX.25 packet radio network
  traffic.

  Currently, this driver supports Ottawa PI/PI2
  (http://hydra.carleton.ca/info/pi2.html) and Gracilis PackeTwin
  (http://www.paccomm.com/gracilis.html) boards. They are detected
  automatically. If you have one of these cards, say Y here and read
  the AX25-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/

  This driver can operate multiple boards simultaneously. If you
  compile it as a module (by saying M instead of Y), it will be called
  dmascc.o. If you don't pass any parameter to the driver, all
  possible I/O addresses are probed. This could irritate other devices
  that are currently not in use. You may specify the list of addresses
  to be probed by "dmascc=addr1,addr2,..." (when compiled into the
  kernel image) or "io=addr1,addr2,..." (when loaded as a module). The
  network interfaces will be called dmascc0 and dmascc1 for the board
  detected first, dmascc2 and dmascc3 for the second one, and so on.

  Before you configure each interface with ifconfig, you MUST set
  certain parameters, such as channel access timing, clock mode, and
  DMA channel. This is accomplished with a small utility program,
  dmascc_cfg, available at
  http://www.nt.tuwien.ac.at/~kkudielk/Linux/ (To browse the WWW, you
  need to have access to a machine on the Internet that has a program
  like lynx or netscape).

Z8530 SCC driver for AX.25
CONFIG_SCC
  These cards are used to connect your Linux box to an amateur radio
  in order to communicate with other computers. If you want to use
  this, read Documentation/networking/z8530drv.txt and the
  AX25-HOWTO, available via FTP (user: anonymous) at
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO Also make sure to say Y
  to "Amateur Radio AX.25 Level 2" support.

  If you want to compile this as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called scc.o.

additional delay for PA0HZP OptoSCC compatible boards
CONFIG_SCC_DELAY
  Say Y here if you experience problems with the SCC driver not
  working properly; please read Documentation/networking/z8530drv.txt
  for details. If unsure, say N.

#support for TRX that feedback the tx signal to rx
#CONFIG_SCC_TRXECHO
###
### Don't know what's going on here.
###
#
YAM driver for AX.25
CONFIG_YAM
  Support for the YAM modem on serial port. If you want to compile this
  as a module ( = code which can be inserted in and removed from the
  running kernel whenever you want), say M here and read
  Documentation/modules.txt.

BAYCOM picpar and par96 driver for AX.25
CONFIG_BAYCOM_PAR
  This is a driver for Baycom style simple amateur radio modems that
  connect to a parallel interface. The driver supports the picpar and
  par96 designs. To configure the driver, use the sethdlc utility
  available in the standard ax25 utilities package. For information on
  the modems, see http://www.baycom.de (to browse the WWW, you need to
  have access to a machine on the Internet that has a program like
  lynx or netscape) and Documentation/networking/baycom.txt. 

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. This is recommended.
  The module will be called baycom_par.o.

BAYCOM EPP driver for AX.25
CONFIG_BAYCOM_EPP
  This is a driver for Baycom style simple amateur radio modems that
  connect to a parallel interface. The driver supports the EPP
  designs. To configure the driver, use the sethdlc utility available
  in the standard ax25 utilities package. For information on the
  modems, see http://www.baycom.de (to browse the WWW, you need to
  have access to a machine on the Internet that has a program like
  lynx or netscape) and Documentation/networking/baycom.txt.

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. This is recommended.
  The module will be called baycom_par.o.

BAYCOM ser12 full duplex driver for AX.25
CONFIG_BAYCOM_SER_FDX
  This is one of two drivers for Baycom style simple amateur radio
  modems that connect to a serial interface. The driver supports the
  ser12 design in full duplex mode. In addition, it allows the
  baudrate to be set between 300 and 4800 baud (however not all modems
  support all baudrates). This is the preferred driver. The next
  driver, "BAYCOM ser12 half duplex driver for AX.25" is the old
  driver and still provided in case this driver does not work with
  your serial interface chip. To configure the driver, use the sethdlc
  utility available in the standard ax25 utilities package. For
  information on the modems, see http://www.baycom.de (to browse the
  WWW, you need to have access to a machine on the Internet that has a
  program like lynx or netscape) and
  Documentation/networking/baycom.txt. 

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. This is recommended.
  The module will be called baycom_ser_fdx.o.

BAYCOM ser12 half duplex driver for AX.25
CONFIG_BAYCOM_SER_HDX
  This is one of two drivers for Baycom style simple amateur radio
  modems that connect to a serial interface. The driver supports the
  ser12 design in full duplex mode. This is the old driver. It is
  still provided in case your serial interface chip does not work with
  the full duplex driver. This driver is depreciated. To configure
  the driver, use the sethdlc utility available in the standard ax25
  utilities package. For information on the modems, see
  http://www.baycom.de (to browse the WWW, you need to have access to
  a machine on the Internet that has a program like lynx or netscape)
  and Documentation/networking/baycom.txt. 

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. This is recommended.
  The module will be called baycom_ser_hdx.o.

Sound card modem driver for AX.25
CONFIG_SOUNDMODEM
  This experimental driver allows a standard Sound Blaster or
  WindowsSoundSystem compatible sound card to be used as a packet
  radio modem (NOT as a telephone modem!), to send digital traffic
  over amateur radio.

  To configure the driver, use the sethdlc, smdiag and smmixer
  utilities available in the standard ax25 utilities package. For
  information on how to key the transmitter, see
  http://www.ife.ee.ethz.ch/~sailer/pcf/ptt_circ/ptt.html (to browse
  the WWW, you need to have access to a machine on the Internet that
  has a program like lynx or netscape) and
  Documentation/networking/soundmodem.txt. 

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. This is recommended.
  The module will be called soundmodem.o.

Sound card modem support for Sound Blaster and compatible cards
CONFIG_SOUNDMODEM_SBC
  This option enables the soundmodem driver to use Sound Blaster and
  compatible cards. If you have a dual mode card (i.e. a WSS cards
  with a Sound Blaster emulation) you should say N here and Y to
  "Sound card modem support for WSS and Crystal cards", below, because
  this usually results in better performance. This option also
  supports SB16/32/64 in full duplex mode.

Sound card modem support for WSS and Crystal cards
CONFIG_SOUNDMODEM_WSS
  This option enables the soundmodem driver to use WindowsSoundSystem
  compatible cards. These cards feature a codec chip from either
  Analog Devices (such as AD1848, AD1845, AD1812) or Crystal
  Semiconductors (such as CS4248, CS423x). This option also supports
  the WSS full duplex operation which currently works with Crystal
  CS423x chips. If you don't need full duplex operation, do not enable
  it to save performance.

Sound card modem support for 1200 baud AFSK modulation
CONFIG_SOUNDMODEM_AFSK1200
  This option enables the soundmodem driver 1200 baud AFSK modem,
  compatible to popular modems using TCM3105 or AM7911. The
  demodulator requires about 12% of the CPU power of a Pentium 75 CPU
  per channel.

Sound card modem support for 2400 baud AFSK modulation (7.3728MHz crystal)
CONFIG_SOUNDMODEM_AFSK2400_7
  This option enables the soundmodem driver 2400 baud AFSK modem,
  compatible to TCM3105 modems (over-)clocked with a 7.3728MHz
  crystal. Note that the availability of this driver does _not_ imply
  that I recommend building such links. It is only here since users
  especially in eastern Europe have asked me to do so. In fact this
  modulation scheme has many disadvantages, mainly its incompatibility
  with many transceiver designs and the fact that the TCM3105 (if
  used) is operated widely outside its specifications.

Sound card modem support for 2400 baud AFSK modulation (8MHz crystal)
CONFIG_SOUNDMODEM_AFSK2400_8
  This option enables the soundmodem driver 2400 baud AFSK modem,
  compatible to TCM3105 modems (over-)clocked with an 8MHz crystal.
  Note that the availability of this driver does _not_ imply that I
  recommend building such links. It is only here since users
  especially in eastern Europe have asked me to do so. In fact this
  modulation scheme has many disadvantages, mainly its incompatibility
  with many transceiver designs and the fact that the TCM3105 (if
  used) is operated widely outside its specifications.

Sound card modem support for 2666 baud AFSK modulation
CONFIG_SOUNDMODEM_AFSK2666
  This option enables the soundmodem driver 2666 baud AFSK modem.
  This modem is experimental, and not compatible to anything
  else I know of.

Sound card modem support for 4800 baud 8PSK modulation
CONFIG_SOUNDMODEM_PSK4800
  This option enables the soundmodem driver 4800 baud 8PSK modem.
  This modem is experimental, and not compatible to anything
  else I know of.

Sound card modem support for 4800 baud HAPN-1 modulation
CONFIG_SOUNDMODEM_HAPN4800
  This option enables the soundmodem driver 4800 baud HAPN-1
  compatible modem. This modulation seems to be widely used 'down
  under' and in the Netherlands. Here, nobody uses it, so I could not
  test if it works. It is compatible to itself, however :-)

Sound card modem support for 9600 baud FSK G3RUH modulation
CONFIG_SOUNDMODEM_FSK9600
  This option enables the soundmodem driver 9600 baud FSK modem,
  compatible to the G3RUH standard. The demodulator requires about 4%
  of the CPU power of a Pentium 75 CPU per channel. You can say Y to
  both 1200 baud AFSK and 9600 baud FSK if you want (but obviously you
  can only use one protocol at a time, depending on what the other end
  can understand).

CCITT X.25 Packet Layer
CONFIG_X25
  X.25 is a set of standardized network protocols, similar in scope to
  frame relay; the one physical line from your box to the X.25 network
  entry point can carry several logical point-to-point connections
  (called "virtual circuits") to other computers connected to the X.25
  network. Governments, banks, and other organizations tend to use it
  to connect to each other or to form Wide Area Networks (WANs). Many
  countries have public X.25 networks. X.25 consists of two
  protocols: the higher level Packet Layer Protocol (PLP) (say Y here
  if you want that) and the lower level data link layer protocol LAPB
  (say Y to "LAPB Data Link Driver" below if you want that). 

  You can read more about X.25 at http://www.sangoma.com/x25.html and
  http://www.cisco.com/univercd/data/doc/software/11_0/rpcg/cx25.htm
  (to browse the WWW, you need to have access to a machine on the
  Internet that has a program like lynx or netscape). Information
  about X.25 for Linux is contained in the files
  Documentation/networking/x25.txt and
  Documentation/networking/x25-iface.txt. 

  One connects to an X.25 network either with a dedicated network card
  using the X.21 protocol (not yet supported by Linux) or one can do
  X.25 over a standard telephone line using an ordinary modem (say Y
  to "X.25 async driver" below) or over Ethernet using an ordinary
  Ethernet card and either the 802.2 LLC protocol (say Y to "802.2
  LLC" below) or LAPB over Ethernet (say Y to "LAPB Data Link Driver"
  and "LAPB over Ethernet driver" below). 

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called x25.o. If unsure, say N.

LAPB Data Link Driver (EXPERIMENTAL) 
CONFIG_LAPB
  Link Access Procedure, Balanced (LAPB) is the data link layer (i.e.
  the lower) part of the X.25 protocol. It offers a reliable
  connection service to exchange data frames with one other host, and
  it is used to transport higher level protocols (mostly X.25 Packet
  Layer, the higher part of X.25, but others are possible as well).
  Usually, LAPB is used with specialized X.21 network cards, but Linux
  currently supports LAPB only over Ethernet connections. If you want
  to use LAPB connections over Ethernet, say Y here and to "LAPB over
  Ethernet driver" below. Read
  Documentation/networking/lapb-module.txt for technical details.

  If you want to compile this driver as a module though ( = code which
  can be inserted in and removed from the running kernel whenever you
  want), say M here and read Documentation/modules.txt. The module
  will be called lapb.o. If unsure, say N.

802.2 LLC (VERY EXPERIMENTAL)
CONFIG_LLC
  This is a Logical Link Layer protocol used for X.25 connections over
  Ethernet, using ordinary Ethernet cards. 

Bridging (EXPERIMENTAL)
CONFIG_BRIDGE
  If you say Y here, then your Linux box will be able to act as an
  Ethernet bridge, which means that the different Ethernet segments it
  is connected to will appear as one Ethernet to the participants.
  Several such bridges can work together to create even larger
  networks of Ethernets using the IEEE802.1 spanning tree algorithm.
  As this is a standard, Linux bridges will interwork properly with
  other third party bridge products. 

  In order to use this, you'll need the bridge configuration tools
  available via FTP (user: anonymous) from
  ftp://shadow.cabi.net/pub/Linux Please read the Bridge mini-HOWTO
  for more information. Note that if your box acts as a bridge, it
  probably contains several Ethernet devices, but the kernel is not
  able to recognize more than one at boot time without help; for
  details read the Ethernet-HOWTO, available via FTP (user: anonymous)
  in ftp://metalab.unc.edu/pub/Linux/docs/HOWTO The Bridging code is
  still in test. If unsure, say N.

Packet socket
CONFIG_PACKET
  The Packet protocol is used by applications which communicate
  directly with network devices without an intermediate network
  protocol implemented in the kernel, e.g. tcpdump. If you want them
  to work, choose Y. This driver is also available as a module called
  af_packet.o ( = code which can be inserted in and removed from the
  running kernel whenever you want). If you want to compile it as a
  module, say M here and read Documentation/modules.txt.  You will
  need to add 'alias net-pf-17 af_packet' to your /etc/conf.modules
  file for the module version to function automatically.  If unsure, say Y.

Kernel/User network link driver
CONFIG_NETLINK
  This driver allows for two-way communication between certain parts
  of the kernel or modules and user processes; the user processes are
  able to read from and write to character special files in the /dev
  directory having major mode 36. So far, the kernel uses it to
  publish some network related information if you say Y to "Routing
  messages", below. It is also used by the firewall code to publish
  information about possible attacks if you say Y to "IP: firewall
  packet netlink device" further down. You also need to say Y here if
  you want to use arpd, a daemon that helps keep the internal ARP
  cache (a mapping between IP addresses and hardware addresses on the
  local network) small. The ethertap device, which lets user space
  programs read and write raw Ethernet frames, also needs the network
  link driver. If unsure, say Y.

Routing messages
CONFIG_RTNETLINK
  If you say Y here and create a character special file /dev/route
  with major number 36 and minor number 0 using mknod ("man mknod"),
  you (or some user space utility) can read some network related
  routing information from that file. Everything you write to that
  file will be discarded.

Netlink device emulation
CONFIG_NETLINK_DEV
  This is a backward compatibility option, choose Y for now.
  This option will be removed soon.

SCSI support?
CONFIG_SCSI
  If you want to use a SCSI hard disk, SCSI tape drive, SCSI CDROM or
  any other SCSI device under Linux, say Y and make sure that you know
  the name of your SCSI host adapter (the card inside your computer
  that "speaks" the SCSI protocol, also called SCSI controller),
  because you will be asked for it. 

  You also need to say Y here if you want support for the parallel
  port version of the 100 MB IOMEGA ZIP drive.

  Please read the SCSI-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO The
  SCSI-Programming-HOWTO contains information about how to add or
  remove an SCSI device from a running Linux machine without
  rebooting.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called scsi_mod.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt and
  Documentation/scsi.txt. However, do not compile this as a module if
  your root filesystem (the one containing the directory /) is located
  on a SCSI device.


Network device support?
CONFIG_NETDEVICES
  You can say N here if you don't intend to connect your Linux box to
  any other computer at all or if all your connections will be over a
  telephone line with a modem either via UUCP (UUCP is a protocol to
  forward mail and news between unix hosts over telephone lines; read
  the UUCP-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO) or dialing up a shell
  account or a BBS, even using term (term is a program which gives you
  almost full Internet connectivity if you have a regular dial up
  shell account on some Internet connected Unix computer. Read
  http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html (to browse
  the WWW, you need to have access to a machine on the Internet that
  has a program like lynx or netscape)).

  You'll have to say Y if your computer contains a network card that
  you want to use under Linux (make sure you know its name because you
  will be asked for it and read the Ethernet-HOWTO (especially if you
  plan to use more than one network card under Linux), available from
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/mini) or if you want to
  use SLIP (Serial Line Internet Protocol is the protocol used to send
  Internet traffic over telephone lines or null modem cables) or CSLIP
  (compressed SLIP) or PPP (Point to Point Protocol, a better and
  newer replacement for SLIP) or PLIP (Parallel Line Internet Protocol
  is mainly used to create a mini network by connecting the parallel
  ports of two local machines) or AX.25/KISS (protocol for sending
  Internet traffic over amateur radio links).

  Make sure to read the NET-3-HOWTO. Eventually, you will have to read
  Olaf Kirch's excellent and free book "Network Administrator's
  Guide", to be found in ftp://metalab.unc.edu/pub/Linux/docs/LDP If
  unsure, say Y.

Dummy net driver support
CONFIG_DUMMY
  This is essentially a bit-bucket device (i.e. traffic you send to
  this device is consigned into oblivion) with a configurable IP
  address. It is most commonly used in order to make your currently
  inactive SLIP address seem like a real address for local programs.
  If you use SLIP or PPP, you might want to say Y here. Read about it
  in the Network Administrator's Guide, available via FTP (user:
  anonymous) from ftp://metalab.unc.edu/pub/Linux/docs/LDP Since this
  thing often comes in handy, the default is Y. It won't enlarge your
  kernel either. What a deal.

  If you want to compile this as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called dummy.o. If you want to use more than one dummy device at a
  time, you need to compile this driver as a module. Instead of
  'dummy', the devices will then be called 'dummy0', 'dummy1' etc.

SLIP (serial line) support
CONFIG_SLIP
  Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to
  connect to your Internet service provider or to connect to some
  other local Unix box or if you want to configure your Linux box as a
  Slip/CSlip server for other people to dial in. SLIP (Serial Line
  Internet Protocol) is a protocol used to send Internet traffic over
  serial connections such as telephone lines or null modem cables;
  nowadays, the protocol PPP is more commonly used for this same
  purpose.

  Normally, your access provider has to support SLIP in order for you
  to be able to use it, but there is now a SLIP emulator called SLiRP
  around (available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/system/network/serial/ ) which
  allows you to use SLIP over a regular dial up shell connection. If
  you plan to use SLiRP, make sure to say Y to CSLIP, below. The
  NET-3-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO, explains how to
  configure SLIP. Note that you don't need this option if you just
  want to run term (term is a program which gives you almost full
  Internet connectivity if you have a regular dial up shell account on
  some Internet connected Unix computer. Read
  http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html (to browse
  the WWW, you need to have access to a machine on the Internet that
  has a program like lynx or netscape)). SLIP support will enlarge
  your kernel by about 4 KB. If unsure, say N.

  If you want to compile this as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt as well as
  Documentation/networking/net-modules.txt. The module will be called
  slip.o.

CSLIP compressed headers
CONFIG_SLIP_COMPRESSED
  This protocol is faster than SLIP because it uses compression on the
  TCP/IP headers (not on the data itself), but it has to be supported
  on both ends. Ask your access provider if you are not sure and
  answer Y, just in case. You will still be able to use plain SLIP. If
  you plan to use SLiRP, the SLIP emulator (available via FTP (user:
  anonymous) from
  ftp://metalab.unc.edu/pub/Linux/system/network/serial/) which allows
  you to use SLIP over a regular dial up shell connection, you
  definitely want to say Y here. The NET-3-HOWTO, available via FTP
  (user: anonymous) in ftp://metalab.unc.edu/pub/Linux/docs/HOWTO,
  explains how to configure CSLIP. This won't enlarge your kernel.

Keepalive and linefill
CONFIG_SLIP_SMART
  Adds additional capabilities to the SLIP driver to support the
  RELCOM line fill and keepalive monitoring. Ideal on poor quality
  analogue lines.

Six bit SLIP encapsulation
CONFIG_SLIP_MODE_SLIP6
  Just occasionally you may need to run IP over hostile serial
  networks that don't pass all control characters or are only seven
  bit. Saying Y here adds an extra mode you can use with SLIP:
  "slip6". In this mode, SLIP will only send normal ASCII symbols over
  the serial device. Naturally, this has to be supported at the other
  end of the link as well. It's good enough, for example, to run IP
  over the async ports of a Camtec JNT Pad. If unsure, say N.

PPP (point-to-point) support
CONFIG_PPP
  PPP (Point to Point Protocol) is a newer and better SLIP. It serves
  the same purpose: sending Internet traffic over telephone (and other
  serial) lines. Ask your access provider if they support it, because
  otherwise you can't use it (not quite true any more: the free
  program SLiRP can emulate a PPP line if you just have a regular dial
  up shell account on some UNIX computer; get it via FTP (user:
  anonymous) from
  ftp://metalab.unc.edu/pub/Linux/system/network/serial/). Note that
  you don't need "PPP support" if you just want to run term (term is a
  program which gives you almost full Internet connectivity if you
  have a regular dial up shell account on some Internet connected UNIX
  computer. Read
  http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html (to browse
  the WWW, you need to have access to a machine on the Internet that
  has a program like lynx or netscape)).

  To use PPP, you need an additional program called pppd as described
  in Documentation/networking/ppp.txt and in the PPP-HOWTO, available
  from ftp://metalab.unc.edu/pub/Linux/docs/HOWTO If you upgrade
  from an older kernel, you might need to upgrade pppd as well. The
  PPP option enlarges your kernel by about 16 KB.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  If you said Y to "Version information on all symbols" above, then
  you cannot compile the PPP driver into the kernel; you can then only
  compile it as a module. The module will be called ppp.o. If you want
  to compile it as a module, say M here and read
  Documentation/modules.txt as well as
  Documentation/networking/net-modules.txt. Note that, no matter what
  you do, the BSD compression code (used to compress the IP packets
  sent over the serial line; has to be supported at the other end as
  well) will always be compiled as a module; it is called bsd_comp.o
  and will show up in the directory modules once you have said "make
  modules". If unsure, say N.

Wireless LAN (non-hamradio)
CONFIG_NET_RADIO
  Support for wireless LANs and everything having to do with radio,
  but not with amateur radio. Note that the answer to this question
  won't directly affect the kernel: saying N will just cause this
  configure script to skip all the questions about radio
  interfaces. 

  Some user-level drivers for scarab devices which don't require
  special kernel support are available via FTP (user: anonymous) from
  ftp://shadow.cabi.net/pub/Linux

STRIP (Metricom Starmode radio IP)
CONFIG_STRIP
  Say Y if you have a Metricom radio and intend to use Starmode Radio
  IP. STRIP is a radio protocol developed for the MosquitoNet project
  (On the WWW at http://mosquitonet.stanford.edu/; to browse the WWW,
  you need to have access to a machine on the Internet that has a
  program like lynx or netscape) to send Internet traffic using
  Metricom radios. Metricom radios are small, battery powered,
  100kbit/sec packet radio transceivers, about the size and weight of
  a cellular telephone. (You may also have heard them called
  "Metricom modems" but we avoid the term "modem" because it misleads
  many people into thinking that you can plug a Metricom modem into a
  phone line and use it as a modem.)  

  You can use STRIP on any Linux machine with a serial port, although
  it is obviously most useful for people with laptop computers. If you
  think you might get a Metricom radio in the future, there is no harm
  in saying Y to STRIP now, except that it makes the kernel a bit
  bigger. 

  You can also compile this as a module ( = code which can be inserted
  in and removed from the running kernel whenever you want), say M
  here and read Documentation/modules.txt. The module will be called
  strip.o.

AT&T WaveLAN & DEC RoamAbout DS support
CONFIG_WAVELAN
  The Lucent WaveLAN (formerly NCR and AT&T; or DEC RoamAbout DS) is
  a Radio LAN (wireless Ethernet-like Local Area Network) using the
  radio frequencies 900 MHz and 2.4 GHz.
  
  This driver support the ISA version of the WaveLAN card. A separate
  driver for the PCMCIA (PC-card) hardware is available in David
  Hinds' pcmcia-cs package (see the file Documentation/Changes for
  location).

  If you want to use an ISA WaveLAN card under Linux, say Y and read
  the Ethernet-HOWTO, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO Some more specific
  information is contained in Documentation/networking/wavelan.txt and
  in the source code drivers/net/wavelan.p.h.

  You will also need the wireless tools package available from
  ftp://ftp.inka.de/pub/comp/Linux/networking/NetTools/contrib/
  Please read the man pages contained therein.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called wavelan.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt as well as
  Documentation/networking/net-modules.txt.

Aironet Arlan 655 & IC2200 DS support
CONFIG_ARLAN
  Aironet makes Arlan. www.aironet.com. Uses www.Telxon.com chip, which is
  used on several similar cards. Driver is tested on 655 and IC2200 series. 
  Look for http://www.ylenurme.ee/~elmer/655/ for latest information. 
  Driver is build as two modules, arlan and arlan-proc. The later is /proc
  interface and not needed most of time.
  On some computers the card ends up in non-valid state after some time.
  Use a ping-reset script to clear it.
   

LAPB over Ethernet driver
CONFIG_LAPBETHER
  This is a driver for a pseudo device (typically called /dev/lapb0)
  which allows you to open an LAPB point-to-point connection to some
  other computer on your Ethernet network. In order to do this, you
  need to say Y or M to the driver for your Ethernet card as well as
  to "LAPB Data Link Driver". 

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called lapbether.o. If unsure, say N.

X.25 async driver
CONFIG_X25_ASY
  This is a driver for sending and receiving X.25 frames over regular
  asynchronous serial lines such as telephone lines equipped with
  ordinary modems. Experts should note that this driver doesn't
  currently comply with the asynchronous HDLS framing protocols in
  CCITT recommendation X.25. 

  If you want to compile this driver as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called x25_asy.o. If unsure, say N.

Shortwave radio modem driver
CONFIG_HFMODEM
  This experimental driver is used by a package (to be released)
  that implements the shortwave radio protocols RTTY, Sitor (Amtor),
  Pactor 1 and GTOR using a standard PC sound card. If unsure,
  say N.

Shortwave radio modem driver support for Sound Blaster and compatible cards
CONFIG_HFMODEM_SBC
  This option enables the hfmodem driver to use Sound Blaster and
  compatible cards. It requires a 16bit capable card, i.e.
  SB16 or better, or ESS1688 or newer.

Shortwave radio modem driver support for WSS and Crystal cards
CONFIG_HFMODEM_WSS
  This option enables the hfmodem driver to use WindowsSoundSystem
  compatible cards. These cards feature a codec chip from either
  Analog Devices (such as AD1848, AD1845) or Crystal Semiconductors
  (such as CS4248, CS423x).

PLIP (parallel port) support
CONFIG_PLIP
  PLIP (Parallel Line Internet Protocol) is used to create a
  reasonably fast mini network consisting of two (or, rarely, more)
  local machines. A PLIP link from a Linux box is a popular means to
  install a Linux distribution on a machine which doesn't have a CDROM
  drive (a minimal system has to be transferred with floppies first).
  The kernels on both machines need to have this PLIP option enabled
  for this to work.

  The PLIP driver has two modes, mode 0 and mode 1. The parallel ports
  (the connectors at the computers with 25 holes) are connected with
  "null printer" or "Turbo Laplink" cables which can transmit 4 bits
  at a time (mode 0) or with special PLIP cables, to be used on
  bidirectional parallel ports only, which can transmit 8 bits at a
  time (mode 1); you can find the wiring of these cables in
  Documentation/networking/PLIP.txt. The cables can be up to 15m long.
  Mode 0 works also if one of the machines runs DOS/Windows and has
  some PLIP software installed, e.g. the Crynwr PLIP packet driver
  (http://oak.oakland.edu/simtel.net/msdos/pktdrvr-pre.html; to browse
  the WWW, you need to have access to a machine on the Internet that
  has a program like lynx or netscape) and winsock or NCSA's telnet.

  If you want to use PLIP, say Y and read the PLIP mini-HOWTO,
  available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/mini as well as the
  NET-3-HOWTO in ftp://metalab.unc.edu/pub/Linux/docs/HOWTO Note that
  the PLIP protocol was changed and this PLIP driver won't work
  together with the PLIP support in Linux versions 1.0.x. This option
  enlarges your kernel by about 8 KB.

  If you want to compile this as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt as well as
  Documentation/networking/net-modules.txt. The module will be called
  plip.o. If unsure, say Y or M, in case you buy a laptop later.

EQL (serial line load balancing) support
CONFIG_EQUALIZER
  If you have two serial connections to some other computer (this
  usually requires two modems and two telephone lines) and you use
  SLIP (the protocol for sending Internet traffic over telephone
  lines) or PPP (a better SLIP) on them, you can make them behave like
  one double speed connection using this driver. Naturally, this has
  to be supported at the other end as well, either with a similar EQL
  Linux driver or with a Livingston Portmaster 2e. 

  Say Y if you want this and read Documentation/networking/eql.txt.
  You may also want to read section 6.2 of the NET-3-HOWTO, available
  via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called eql.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt. If unsure,
  say N.

Ethertap network tap
CONFIG_ETHERTAP
  If you say Y here (and have said Y to "Kernel/User network link
  driver", above) and create a character special file /dev/tap0 with
  major number 36 and minor number 16 using mknod ("man mknod"), you
  will be able to have a user space program read and write raw
  Ethernet frames from/to that special file. tap0 can be configured
  with ifconfig and route like any other Ethernet device but it is not
  connected to any physical LAN; everything written by the user to
  /dev/tap0 is treated by the kernel as if it had come in from a LAN
  to the device tap0; everything the kernel wants to send out over the
  device tap0 can instead be read by the user from /dev/tap0: the user
  mode program replaces the LAN that would be attached to an ordinary
  Ethernet device. Please read the file
  Documentation/networking/ethertap.txt for more information. 

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called ethertap.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt. If you don't
  know what to use this for, you don't need it.

Sealevel Systems 4021 support
CONFIG_SEALEVEL_4021
  This is a driver for the Sealevel Systems ACB 56 serial I/O adapter.
  
  This driver can only be compiled as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  If you want to do that, say M here. The module will be called
  sealevel.o.

Frame Relay (DLCI) support
CONFIG_DLCI
  This is support for the frame relay protocol; frame relay is a fast
  low-cost way to connect to a remote Internet access provider or to
  form a private wide area network. The one physical line from your
  box to the local "switch" (i.e. the entry point to the frame relay
  network, usually at the phone company) can carry several logical
  point-to-point connections to other computers connected to the frame
  relay network. For a general explanation of the protocol, check out
  http://www.frforum.com/ on the WWW. (To browse the WWW, you need to
  have access to a machine on the Internet that has a program like
  lynx or netscape.) To use frame relay, you need supporting hardware
  (called FRAD) and certain programs from the net-tools package as
  explained in Documentation/networking/framerelay.txt.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called dlci.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

Max open DLCI
CONFIG_DLCI_COUNT
  This is the maximal number of logical point-to-point frame relay
  connections (the identifiers of which are called DCLIs) that
  the driver can handle. The default is probably fine.

Max DLCI per device
CONFIG_DLCI_MAX
  You can specify here how many logical point-to-point frame relay
  connections (the identifiers of which are called DCLIs) should be
  handled by each of your hardware frame relay access devices. Go with
  the default.

Sangoma S502A FRAD support
CONFIG_SDLA
  Say Y here if you need a driver for the Sangoma S502A, S502E, and
  S508 Frame Relay Access Devices. These are multi-protocol cards, but
  only frame relay is supported by the driver at this time. Please
  read Documentation/framerelay.txt. 

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called sdla.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

Acorn Econet/AUN protocols (EXPERIMENTAL)
CONFIG_ECONET
  Econet is a fairly old and slow networking protocol mainly used by
  Acorn computers to access file and print servers. It uses native
  Econet network cards. AUN is an implementation of the higher level
  parts of Econet that runs over ordinary Ethernet connections, on
  top of the UDP packet protocol, which in turn runs on top of the
  Internet protocol IP.

  If you say Y here, you can choose with the next two options whether
  to send Econet/AUN traffic over a UDP Ethernet connection or over
  a native Econet network card.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called econet.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

AUN over UDP
CONFIG_ECONET_AUNUDP
  Say Y here if you want to send Econet/AUN traffic over a UDP
  connection (UDP is a packet based protocol that runs on top of the
  Internet protocol IP) using an ordinary Ethernet network card.

Native Econet
CONFIG_ECONET_NATIVE
  Say Y here if you have a native Econet network card installed in
  your computer.

WAN Router
CONFIG_WAN_ROUTER
  Wide Area Networks (WANs), such as X.25, frame relay and leased
  lines, are used to interconnect Local Area Networks (LANs) over vast
  distances with data transfer rates significantly higher than those
  achievable with commonly used asynchronous modem connections.
  Usually, a quite expensive external device called a `WAN router' is
  needed to connect to a WAN.

  As an alternative, WAN routing can be built into the Linux kernel.
  With relatively inexpensive WAN interface cards available on the
  market, a perfectly usable router can be built for less than half
  the price of an external router. If you have one of those cards and
  wish to use your Linux box as a WAN router, say Y here and also to
  the WAN driver for your card, below. You will then need the
  wan-tools package which is available via FTP (user: anonymous) from
  ftp://ftp.sangoma.com Read Documentation/networking/wan-router.txt
  for more information.

  The WAN routing support is also available as a module called
  wanrouter.o ( = code which can be inserted in and removed from the
  running kernel whenever you want). If you want to compile it as a
  module, say M here and read Documentation/modules.txt.

  If unsure, say N.

Fast switching (read help!)
CONFIG_NET_FASTROUTE
  Saying Y here enables direct NIC-to-NIC (NIC = Network Interface
  Card) data transfers, which is fast.

    *** This option is NOT COMPATIBLE with several important ***
    *** networking options: especially CONFIG*FIREWALL.      ***
    *** Say N here if you intend to use Linux as a firewall. ***

  However, it will work with all options in CONFIG_IP_ADVANCED_ROUTER
  section (except for CONFIG_IP_ROUTE_TOS and CONFIG_IP_ROUTE_FWMARK).
  At the moment, few devices support fast switching (tulip is one of
  them, modified 8390 can be found at
  ftp://ftp.inr.ac.ru/ip-routing/fastroute/fastroute-8390.tar.gz).

  If unsure, say N.

Forwarding between high speed interfaces
CONFIG_NET_HW_FLOWCONTROL
  This option enables NIC (Network Interface Card) hardware throttling
  during periods of extremal congestion. At the moment only a couple
  of device drivers support it (really only one -- tulip, modified
  8390 can be found at
  ftp://ftp.inr.ac.ru/ip-routing/fastroute/fastroute-8390.tar.gz).
  Really, this option is applicable to any machine attached to a fast enough
  network, and even a 10 Mb NIC is able to kill a not very slow box,
  such as a 120MHz Pentium.

  However, do not say Y here if you did not experience any serious
  problems.

CPU is too slow to handle full bandwidth
CONFIG_CPU_IS_SLOW
  If you suspect that your CPU is not fast enough to handle the
  full bandwidth of your network connection, try saying Y here. If
  unsure, say N.

QoS and/or fair queueing
CONFIG_NET_SCHED
  When the kernel has several packets to send out over the network
  devices, it has to make a decision which one to send first. This is
  especially important if some of the network devices are real time
  devices that need a certain minimum data flow rate. There are
  several different algorithms for how to do this "fairly"; they are
  called packet schedulers. If you want to stick to the default
  scheduling algorithm, say N here. If you want to experiment with a
  couple of different algorithms, say Y. You can then attach different
  schedulers to different network devices. Currently, this is only
  recommended for experts.

  To administer these schedulers, you'll need the user-level utilities
  from the package iproute2+tc at ftp://ftp.inr.ac.ru/ip-routing/

  If you say Y here and to "/proc filesystem" below, you will be able
  to read status information about priority schedulers from the file
  /proc/net/psched.
  
  The available schedulers are listed in the following questions; you
  can say Y to as many as you like. If unsure, say N now.

CBQ packet scheduler
CONFIG_NET_SCH_CBQ
  Say Y here if you want to use the Class-Based Queueing (CBQ) packet
  scheduling algorithm for some of your network devices. This
  algorithm classifies the waiting packets into a tree-like hierarchy
  of classes; the leaves of this tree are in turn scheduled by
  separate algorithms (called "disciplines" in this context) which you
  can choose below from among the various queueing algorithms. See the
  top of net/sched/sch_cbq.c for references about the CBQ algorithm.

  This code is also available as a module called sch_cbq.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.

CSZ packet scheduler
CONFIG_NET_SCH_CSZ
  Say Y here if you want to use the Clark-Shenker-Zhang (CSZ) packet
  scheduling algorithm for some of your network devices. At the
  moment, this is the only algorithm that can guarantee service for
  real-time applications (see the top of net/sched/sch_csz.c for
  details and references about the algorithm). 
  
  Note: this scheduler is currently broken.

  This code is also available as a module called sch_csz.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.

The simplest PRIO pseudo scheduler
CONFIG_NET_SCH_PRIO
  Say Y here if you want to use an n-band priority queue packet
  "scheduler" for some of your network devices or as a leaf discipline
  for the CBQ scheduling algorithm. 

  This code is also available as a module called sch_prio.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.

RED queue
CONFIG_NET_SCH_RED
  Say Y here if you want to use the Random Early Detection (RED)
  packet scheduling algorithm for some of your network devices (see
  the top of net/sched/sch_red.c for details and references about the
  algorithm). 

  This code is also available as a module called sch_red.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.

SFQ queue
CONFIG_NET_SCH_SFQ
  Say Y here if you want to use the Stochastic Fairness Queueing (SFQ)
  packet scheduling algorithm for some of your network devices or as a
  leaf discipline for the CBQ scheduling algorithm (see the top of
  net/sched/sch_sfq.c for details and references about the SFQ
  algorithm). 

  This code is also available as a module called sch_sfq.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.

TEQL queue
CONFIG_NET_SCH_TEQL
  Say Y here if you want to use the True Link Equalizer (TLE) packet
  scheduling algorithm for some of your network devices or as a leaf
  discipline for the CBQ scheduling algorithm. This queueing
  discipline allows the combination of several physical devices into
  one virtual device. (see the top of net/sched/sch_teql.c for
  details).

  This code is also available as a module called sch_teql.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.

TBF queue
CONFIG_NET_SCH_TBF
  Say Y here if you want to use the Simple Token Bucket Filter (TBF)
  packet scheduling algorithm for some of your network devices or as a
  leaf discipline for the CBQ scheduling algorithm (see the top of
  net/sched/sch_tbf.c for a description of the TBF algorithm). 

  This code is also available as a module called sch_tbf.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.

QoS support
CONFIG_NET_QOS
  Say Y here if you want to include Quality Of Service scheduling
  features, which means that you will be able to request certain
  rate-of-flow limits for your net devices.

  Note that the answer to this question won't directly affect the
  kernel: saying N will just cause this configure script to skip all
  the questions about QoS support.

Rate estimator
CONFIG_NET_ESTIMATOR
  In order for Quality of Service scheduling to work, the current
  rate-of-flow for a network device has to be estimated; if you say Y
  here, the kernel will do just that.

Packet classifier API
CONFIG_NET_CLS
  The CBQ scheduling algorithm requires that network packets which are
  scheduled to be sent out over a network device be classified in some
  way. If you say Y here, you will get a choice of several different
  packet classifiers with the following questions. 
#
# Routing tables based classifier
# CONFIG_NET_CLS_ROUTE
#
# Firewall based classifier
# CONFIG_NET_CLS_FW
#
# U32 classifier
# CONFIG_NET_CLS_U32
#
# Special RSVP classifier
# CONFIG_NET_CLS_RSVP
#
# Special RSVP classifier for IPv6
# CONFIG_NET_CLS_RSVP6
#
# Ingres traffic policing
# CONFIG_NET_CLS_POLICE
###
### Some expert please fill these in
###

Network code profiler
CONFIG_NET_PROFILE
  If you say Y here and to "/proc filesystem support" below, some
  obscure and undocumented information about the network code's
  performance will be written to /proc/net/profile. If you don't know
  what it is about, you don't need it: say N.

Red Creek Hardware VPN (EXPERIMENTAL)
CONFIG_RCPCI
  This is a driver for hardware which provides a Virtual Private
  Network (VPN). Say Y if you have it.

  This code is also available as a module called rcpci.o ( = code
  which can be inserted in and removed from the running kernel
  whenever you want). If you want to compile it as a module, say M
  here and read Documentation/modules.txt.
  
SBNI Leased Line Adapters
CONFIG_SBNI
  This is a driver for ISA SBNI12-xx cards that is a low cost
  alternative to leased line modems. Say Y if you want to insert
  driver into kernel or say M to compile driver as a module. 
  
  You can find more information and last versions of drivers and 
  utilities at http://www.granch.ru If you have any question you
  can mail to sbni@granch.ru.
  
  Say N if unsure.
  
WAN Drivers
CONFIG_WAN_DRIVERS
  Say Y to this option if your Linux box contains a WAN card and you
  are planning to use the box as a WAN ( = Wide Area Network) router 
  ( = device used to interconnect local area networks over wide area
  communication links, such as leased lines or public data networks,
  e.g. X.25 or frame relay) and you will be offered a list of drivers
  for WAN cards currently available. For more information, read
  Documentation/networking/wan-router.txt.

  Note that the answer to this question won't directly affect the
  kernel: saying N will just cause this configure script to skip all
  the questions about WAN card drivers. If unsure, say N.

Sangoma WANPIPE(tm) multiprotocol cards
CONFIG_VENDOR_SANGOMA
  WANPIPE from Sangoma Technologies Inc. (http://www.sangoma.com; to
  browse the WWW, you need to have access to a machine on the Internet
  that has a program like lynx or netscape) is a family of intelligent
  multiprotocol WAN adapters with data transfer rates up to T1 (1.544
  Mbps). They are also known as Synchronous Data Link Adapters (SDLA)
  and designated S502E(A), S503 or S508. These cards support the X.25,
  Frame Relay, and PPP protocols. If you have one or more of these
  cards, say Y to this option; you may then also want to read the file
  Documentation/networking/wanpipe.txt. The next questions will ask
  you about the protocols you want the driver to support.

  The driver will be compiled as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called wanpipe.o. For general information about
  modules read Documentation/modules.txt.

Maximum number of cards
CONFIG_WANPIPE_CARDS
  Enter number of WANPIPE adapters installed in your machine. The
  driver can support up to 8 cards. You may enter more than you
  actually have if you plan to add more cards in the future without
  re-compiling the driver, but remember that in this case you'll waste
  some kernel memory (about 1K per card).

WANPIPE X.25 support
CONFIG_WANPIPE_X25
  Say Y to this option if you are planning to connect a WANPIPE card
  to an X.25 network. You should then also have said Y to "CCITT X.25
  Packet Layer" and "LAPB Data Link Driver", above. If you say N, the
  X.25 support will not be included in the driver (saves about 16 KB
  of kernel memory).

WANPIPE Frame Relay support
CONFIG_WANPIPE_FR
  Say Y to this option if you are planning to connect a WANPIPE card
  to a frame relay network. You should then also have said Y to "Frame
  Relay (DLCI) support", above. If you say N, the frame relay
  support will not be included in the driver (saves about 16 KB of
  kernel memory).

WANPIPE PPP support
CONFIG_WANPIPE_PPP
  Say Y to this option if you are planning to connect a WANPIPE card
  to a leased line using Point-to-Point protocol (PPP). You should
  then also have said Y to "PPP (point-to-point) support", above. If
  you say N, the PPP support will not be included in the driver (saves
  about 16 KB of kernel memory).


Traffic Shaper (EXPERIMENTAL)
CONFIG_SHAPER
  The traffic shaper is a virtual network device that allows you to
  limit the rate of outgoing data flow over some other network
  device. See Documentation/networking/shaper.txt for more
  information. To set up and configure shaper devices, you need the
  shapecfg program, available via FTP (user: anonymous) from
  ftp://shadow.cabi.net/pub/Linux in the shaper package. 

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called shaper.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt. If unsure,
  say N.

FDDI driver support
CONFIG_FDDI
  Fiber Distributed Data Interface is a high speed local area network
  design; essentially a replacement for high speed Ethernet. FDDI can
  run over copper or fiber. If you are connected to such a network and
  want a driver for the FDDI card in your computer, say Y here (and
  then also Y to the driver for your FDDI card, below). Most people
  will say N.

Digital DEFEA and DEFPA adapter support
CONFIG_DEFXX
  This is support for the DIGITAL series of EISA (DEFEA) and PCI
  (DEFPA) controllers which can connect you to a local FDDI network.

HIgh Performance Parallel Interface support (EXPERIMENTAL)
CONFIG_HIPPI
  HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and
  1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI
  can run over copper (25m) or fiber (300m on multi-mode or 10km on
  single-mode). HIPPI networks are commonly used for clusters and to
  connect to super computers. If you are connected to a HIPPI network
  and have a HIPPI network card in your computer that you want to use
  under Linux, say Y here (you must also remember to enable the driver
  for your HIPPI card below). Most people will say N here.
  
Essential RoadRunner HIPPI PCI adapter support
CONFIG_ROADRUNNER
  Say Y here if this is your PCI HIPPI network card.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called rrunner.o. If you want to compile it as
  a module, say M here and read Documentation/modules.txt. If unsure,
  say N.

Use large TX/RX rings
CONFIG_ROADRUNNER_LARGE_RINGS
  If you say Y here, the RoadRunner driver will preallocate up to 2 MB
  of additional memory to allow for fastest operation, both for
  transmitting and receiving. This memory cannot be used by any other
  kernel code or by user space programs. Say Y here only if you have
  the memory.


/proc filesystem support
CONFIG_PROC_FS
  This is a virtual filesystem providing information about the status
  of the system. "Virtual" means that it doesn't take up any space on
  your hard disk: the files are created on the fly by the kernel when
  you try to access them. Also, you cannot read the files with older
  version of the program less: you need to use more or cat. 

  It's totally cool; for example, "cat /proc/interrupts" gives
  information about what the different IRQs are used for at the moment
  (there is a small number of Interrupt ReQuest lines in your computer
  that are used by the attached devices to gain the CPU's attention --
  often a source of trouble if two devices are mistakenly configured
  to use the same IRQ). 

  The /proc filesystem is explained in the file
  Documentation/proc.txt, in the Kernel Hacker's Guide at
  http://www.redhat.com:8080/HyperNews/get/khg.html on the WWW (to
  browse the WWW, you need to have access to a machine on the Internet
  that has a program like lynx or netscape), and also on the proc(8)
  manpage ("man 8 proc").

  This option will enlarge your kernel by about 18 KB. Several
  programs depend on this, so everyone should say Y here.

NFS filesystem support
CONFIG_NFS_FS
  If you are connected to some other (usually local) Unix computer
  (using SLIP, PLIP, PPP or Ethernet) and want to mount files residing
  on that computer (the NFS server) using the Network File Sharing
  protocol, say Y. "Mounting files" means that the client can access
  the files with usual UNIX commands as if they were sitting on the
  client's hard disk. For this to work, the server must run the
  programs nfsd and mountd (but does not need to have NFS filesystem
  support enabled in its kernel). NFS is explained in the Network
  Administrator's Guide, available via FTP (user: anonymous) in
  ftp://metalab.unc.edu/pub/Linux/docs/LDP, on its man page: "man
  nfs", and in the NFS-HOWTO.
  
  A superior but less widely used alternative to NFS is provided by
  the Coda filesystem; see "Coda filesystem support" below.

  If you say Y here, you should have said Y to TCP/IP networking also.
  This option would enlarge your kernel by about 27 kB. 

  This filesystem is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module is called nfs.o. If you want to compile it as a module,
  say M here and read Documentation/modules.txt. 

  If you are configuring a diskless machine which will mount its root
  filesystem over NFS at boot time, say Y here and to "IP: kernel
  level autoconfiguration" above and to "Root file system on NFS"
  below. You cannot compile this driver as a module in this case.
  There are two packages designed for booting diskless machines over
  the net: netboot and etherboot, both available via FTP from
  ftp://metalab.unc.edu/pub/Linux/system/boot/ethernet/ .

  If you don't know what all this is about, say N.

Root file system on NFS
CONFIG_ROOT_NFS
  If you want your Linux box to mount its whole root filesystem (the
  one containing the directory /) from some other computer over the
  net via NFS (presumably because your box doesn't have a hard disk),
  say Y. Read Documentation/nfsroot.txt for details. It is likely that
  in this case, you also want to say Y to "IP: kernel level
  autoconfiguration" so that your box can discover its network address
  at boot time.
  
  Most people say N here. 

NFS server support
CONFIG_NFSD
  If you want your Linux box to act as a NFS *server*, so that other
  computers on your local network which support NFS can access certain
  directories on your box transparently, you have two options: you can
  use the self-contained user space program nfsd, in which case you
  should say N here, or you can say Y and use this new experimental
  kernel based NFS server. The advantage of the kernel based solution
  is that it is faster; it might not be completely stable yet, though.

  In either case, you will need support software; the respective
  locations are given in the file Documentation/Changes in the NFS
  section.

  Please read the NFS-HOWTO, available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/Linux/docs/HOWTO

  The NFS server is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module is called nfsd.o. If you want to compile it as a module,
  say M here and read Documentation/modules.txt. If unsure, say N.

Emulate Sun NFS daemon
CONFIG_NFSD_SUN
  If you would like for the server to allow clients to access
  directories that are mount points on the local filesystem (this is
  how nfsd behaves on Sun systems), say yes here. If unsure, say N.


MTRR control and configuration
CONFIG_MTRR
  On Intel P6 family processors (Pentium Pro, Pentium II and later)
  the Memory Type Range Registers (MTRRs) may be used to control
  processor access to memory ranges. This is most useful when you have
  a video (VGA) card on a PCI or AGP bus. Enabling write-combining
  allows bus write transfers to be combined into a larger transfer
  before bursting over the PCI/AGP bus. This can increase performance
  of image write operations 2.5 times or more. This option creates a
  /proc/mtrr file which may be used to manipulate your
  MTRRs. Typically the X server should use this. This should have a
  reasonably generic interface so that similar control registers on
  other processors can be easily supported.

  The Cyrix 6x86, 6x86MX and M II processors have Address Range
  Registers (ARRs) which provide a similar functionality to MTRRs. For
  these, the ARRs are used to emulate the MTRRs.

  The AMD K6-2 (stepping 8 and above) and K6-3 processors have two
  MTRRs. These are supported.
  
  The Centaur C6 (WinChip) has 8 MCRs, allowing write-combining. These
  are supported.

  Saying Y here also fixes a problem with buggy SMP BIOSes which only
  set the MTRRs for the boot CPU and not the secondary CPUs. This can
  lead to all sorts of problems.

  You can safely say Y even if your machine doesn't have MTRRs, you'll
  just add about 3k to your kernel.

  See Documentation/mtrr.txt for more information.


Watchdog Timer Support 
CONFIG_WATCHDOG
  If you say Y here (and to one of the following options) and create a
  character special file /dev/watchdog with major number 10 and minor
  number 130 using mknod ("man mknod"), you will get a watchdog, i.e.:
  subsequently opening the file and then failing to write to it for
  longer than 1 minute will result in rebooting the machine. This
  could be useful for a networked machine that needs to come back
  online as fast as possible after a lock-up. There's both a watchdog
  implementation entirely in software (which can sometimes fail to
  reboot the machine) and a driver for hardware watchdog boards, which
  are more robust and can also keep track of the temperature inside
  your computer. For details, read Documentation/watchdog.txt in the
  kernel source.

  The watchdog is usually used together with the watchdog daemon which is
  available via FTP (user: anonymous) from
  ftp://metalab.unc.edu/pub/linux/system/daemons/watchdog This daemon can
  check a larger part of the system. For instance it can monitor NFS
  connections and reboot the machine when the process table is full or the
  workload exceeds a predefined value.

  If unsure, say N.

Disable watchdog shutdown on close
CONFIG_WATCHDOG_NOWAYOUT
  The default watchdog behaviour (which you get if you say N here) is
  to stop the timer if the process managing it closes the file
  /dev/watchdog. It's always remotely possible that this process might
  get killed. If you say Y here, the watchdog cannot be stopped once
  it has been started.

WDT Watchdog timer
CONFIG_WDT
  If you have a WDT500P or WDT501P watchdog board, say Y here,
  otherwise N. It is not possible to probe for this board, which means
  that you have to set the IO port and IRQ it uses in the kernel
  source at the top of drivers/char/wdt.c. 

  If you want to compile this as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want),
  say M here and read Documentation/modules.txt. The module will be
  called wdt.o.

WDT501 features
CONFIG_WDT_501
  Saying Y here and creating a character special file /dev/temperature
  with major number 10 and minor number 131 ("man mknod") will give
  you a thermometer inside your computer: reading from
  /dev/temperature yields one byte, the temperature in degrees
  Fahrenheit. This works only if you have a WDT501P watchdog board
  installed.

Fan Tachometer
CONFIG_WDT_501_FAN
  Enable the Fan Tachometer on the WDT501. Only do this if you have a
  fan tachometer actually set up.

Software Watchdog
CONFIG_SOFT_WATCHDOG
  A software monitoring watchdog. This will fail to reboot your system
  from some situations that the hardware watchdog will recover
  from. Equally it's a lot cheaper to install. 

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  If you want to compile it as a module, say M here and read
  Documentation/modules.txt. The module will be called softdog.o.

Berkshire Products PC Watchdog
CONFIG_PCWATCHDOG
  This is the driver for the Berkshire Products PC Watchdog card.
  This card simply watches your kernel to make sure it doesn't freeze,
  and if it does, it reboots your computer after a certain amount of
  time. This driver is like the WDT501 driver but for different
  hardware. Please read Documentation/pcwd-watchdog.txt. The PC
  watchdog cards can be ordered from http://www.berkprod.com Some
  example rc.local files are available from ftp://ftp.bitgate.com 

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module is called pcwd.o. If you want to compile it as a module,
  say M here and read Documentation/modules.txt. 

  Most people will say N.

Acquire SBC Watchdog Timer
CONFIG_ACQUIRE_WDT
  This is the driver for the hardware watchdog on the PSC-6x86 Single
  Board Computer produced by Acquire Inc (and others). This watchdog
  simply watches your kernel to make sure it doesn't freeze, and if
  it does, it reboots your computer after a certain amount of time.

  This driver is like the WDT501 driver but for different hardware.
  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module is called pscwdt.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt. Most people
  will say N.

Enhanced Real Time Clock Support
CONFIG_RTC
  If you say Y here and create a character special file /dev/rtc with
  major number 10 and minor number 135 using mknod ("man mknod"), you
  will get access to the real time clock built into your computer.
  Every PC has such a clock built in. It can be used to generate
  signals from as low as 1Hz up to 8192Hz, and can also be used as a
  24 hour alarm. It reports status information via the file /proc/rtc
  and its behaviour is set by various ioctls on /dev/rtc.

  If you run Linux on a multiprocessor machine and said Y to
  "Symmetric Multi Processing" above, you should say Y here to read
  and set the RTC clock in an SMP compatible fashion.

  If you think you have a use for such a device (such as periodic data
  sampling), then say Y here, and read Documentation/rtc.txt for
  details.

Tadpole ANA H8 Support
CONFIG_H8
  The Hitachi H8/337 is a microcontroller used to deal with the power
  and thermal environment. If you say Y here, you will be able to
  communicate with it via a character special device. 

  If unsure, say N.

/dev/nvram support
CONFIG_NVRAM
  If you say Y here and create a character special file /dev/nvram
  with major number 10 and minor number 144 using mknod ("man mknod"),
  you get read and write access to the 50 bytes of non-volatile memory
  in the real time clock (RTC), which is contained in every PC and
  most Ataris. 

  This memory is conventionally called "CMOS RAM" on PCs and "NVRAM"
  on Ataris. /dev/nvram may be used to view settings there, or to
  change them (with some utility). It could also be used to frequently
  save a few bits of very important data that may not be lost over
  power-off and for which writing to disk is too insecure. Note
  however that most NVRAM space in a PC belongs to the BIOS and you
  should NEVER idly tamper with it. See Ralf Brown's interrupt list
  for a guide to the use of CMOS bytes by your BIOS.

  On Atari machines, /dev/nvram is always configured and does not need
  to be selected.

  This driver is also available as a module ( = code which can be
  inserted in and removed from the running kernel whenever you want).
  The module will be called nvram.o. If you want to compile it as a
  module, say M here and read Documentation/modules.txt.


Are you using a crosscompiler
CONFIG_CROSSCOMPILE
  Say Y here if you are compiling the kernel on a different
  architecture than the one it is intended to run on.


Remote GDB kernel debugging
CONFIG_REMOTE_DEBUG
  If you say Y here, it will be possible to remotely debug the MIPS
  kernel using gdb. This enlarges your kernel image disk size by
  several megabytes and requires a machine with more than 16 MB,
  better 32 MB RAM to avoid excessive linking time. This is only
  useful for kernel hackers. If unsure, say N.

Magic System Request Key support
CONFIG_MAGIC_SYSRQ
  If you say Y here, you will have some control over the system even
  if the system crashes for example during kernel debugging (e.g., you
  will be able to flush the buffer cache to disk, reboot the system
  immediately or dump some status information). This is accomplished
  by pressing various keys while holding SysRq (Alt+PrintScreen). The
  keys are documented in Documentation/sysrq.txt. Don't say Y unless
  you really know what this hack does.

ISDN subsystem
CONFIG_ISDN
  ISDN ("Integrated Services Digital Networks", called RNIS in France)
  is a special type of fully digital telephone service; it's mostly
  used to connect to your Internet service provider (with SLIP or
  PPP). The main advantage is that the speed is higher than ordinary
  modem/telephone connections, and that you can have voice
  conversations while downloading stuff. It only works if your
  computer is equipped with an ISDN card and both you and your service
  provider purchased an ISDN line from the phone company. For details,
  read http://alumni.caltech.edu/~dank/isdn/ on the WWW.

  This driver allows you to use an ISDN-card for networking
  connections and as dialin/out device. The isdn-tty's have a built in
  AT-compatible modem emulator. Network devices support autodial,
  channel-bundling, callback and caller-authentication without having
  a daemon running. A reduced T.70 protocol is supported with tty's
  suitable for German BTX. On D-Channel, the protocols EDSS1
  (Euro-ISDN) and 1TR6 (German style) are supported. See
  Documentation/isdn/README for more information. 

  If you want to compile the ISDN code as a module ( = code which can
  be inserted in and removed from the running kernel whenever you
  want), say M here and read Documentation/modules.txt. The module
  will be called isdn.o. If unsure, say N.

Support synchronous PPP
CONFIG_ISDN_PPP
  Over digital connections such as ISDN, there is no need to
  synchronize sender and recipient's clocks with start and stop bits
  as is done over analog telephone lines. Instead, one can use
  "synchronous PPP". Saying Y here will include this protocol. This
  protocol is used by Cisco and Sun for example. So you want to say Y
  here if the other end of your ISDN connection supports it. You will
  need a special version of pppd (called ipppd) for using this
  feature. See Documentation/isdn/README.syncppp and
  Documentation/isdn/syncPPP.FAQ for more information.

Support generic MP (RFC 1717)
CONFIG_ISDN_MPP
  With synchronous PPP enabled, it is possible to increase throughput
  by bundling several ISDN-connections, using this protocol. See
  Documentation/isdn/README.syncppp for more information.

Use VJ-compression with synchronous PPP
CONFIG_ISDN_PPP_VJ
  This enables Van Jacobson header compression for synchronous PPP.
  Say Y if the other end of the connection supports it.

Support audio via ISDN
CONFIG_ISDN_AUDIO
  If you say Y here, the modem-emulator will support a subset of the
  EIA Class 8 Voice commands. Using a getty with voice-support
  (mgetty+sendfax by gert@greenie.muc.de with an extension, available
  with the ISDN utility package for example), you will be able to use
  your Linux box as an ISDN-answering machine. Of course, this must be
  supported by the lowlevel driver also. Currently, the HiSax driver
  is the only voice-supporting driver. See
  Documentation/isdn/README.audio for more information.

X.25 PLP on top of ISDN
CONFIG_ISDN_X25
  This feature provides the X.25 protocol over ISDN connections.
  See Documentation/isdn/README.x25 for more information
  if you are thinking about using this.

ISDN diversion services support
CONFIG_ISDN_DIVERSION
  This option allows you to use some supplementary diversion
  services in conjunction with the HiSax driver on an EURO/DSS1
  line. 

  Supported options are CD (call deflection), CFU (Call forward
  unconditional), CFB (Call forward when busy) and CFNR (call forward
  not reachable). Additionally the actual CFU, CFB and CFNR state may
  be interrogated.

  The use of CFU, CFB, CFNR and interrogation may be limited to some
  countries. The keypad protocol is still not implemented. CD should
  work in all countries if the service has been subscribed to.

  Please read the file Documentation/isdn/README.diversion.


isdnloop support
CONFIG_ISDN_DRV_LOOP
  This driver provides a virtual ISDN card. Its primary purpose is
  testing of linklevel features or configuration without getting
  charged by your service-provider for lots of phone calls.
  You need will need the loopctrl utility from the latest isdn4k-utils
  package to set up this driver.



Verbose kernel error messages
CONFIG_DEBUG_ERRORS
  This option controls verbose debugging information which can be
  printed when the kernel detects an internal error. This debugging
  information is useful to kernel hackers when tracking down problems,
  but mostly meaningless to other people. It's safe to say Y unless
  you are concerned with the code size or don't want to see these
  messages.

Compile kernel with frame pointer
CONFIG_FRAME_POINTER
  If you say Y here, the resulting kernel will be slightly larger and
  slower, but it will give useful debugging information. If you don't
  debug the kernel, you can say N.

User fault debugging
CONFIG_DEBUG_USER
  When a user program crashes due to an exception, the kernel can print
  a brief message explaining what the problem was. This is sometimes
  helpful for debugging but serves no purpose on a production system.
  Most people should say N here.

Include gdb debugging information in kernel binary
CONFIG_DEBUG_INFO
  Say Y here to include source-level debugging information in the
  `vmlinux' binary image. This is handy if you want to use gdb or
  addr2line to debug the kernel. It has no impact on the in-memory
  footprint of the running kernel but it can increase the amount of
  time and disk space needed for compilation. If in doubt say N.

Split initialisation functions into discardable section
CONFIG_TEXT_SECTIONS
  Normally code that is only used during initialisation is collected
  into a special area of the kernel so that it can be discarded and
  the memory reclaimed when initialisation is complete. In addition,
  if the kernel you wish to build is able to run on multiple
  architectures, it allows the unused code to be discarded. Some
  versions of binutils, however, have a bug that causes the kernel
  to crash during startup when this option is enabled. Say Y unless
  you experience problems that you suspect may be caused by this.

Disable pgtable cache
CONFIG_NO_PGT_CACHE
  Normally the kernel maintains a `quicklist' of preallocated pagetable
  structures in order to increase performance. On machines with very
  few pages this may however be a loss. Say Y here to disable the pgtable
  cache.