Discard Protocol

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The Discard Protocol is a service in the Internet Protocol Suite defined in RFC 863. It is intended for testing, debugging, measurement, or host management purposes.

A host may send data to a host that supports the Discard Protocol on either Transmission Control Protocol (TCP) or User Datagram Protocol (UDP) port number 9. The data sent to the server is simply discarded. No response is returned. For this reason, UDP is usually used, but TCP allows the services to be accessible on session-oriented connections (for example via HTTP proxies or some VPN).

Inetd implementation[edit]

On most UNIX-like operating systems a discard server is built into the inetd (or xinetd) daemon. The discard service is usually not enabled by default. It may be enabled by adding the following lines to the file /etc/inetd.conf and reloading the configuration:

discard   stream  tcp     nowait  root    internal
discard   dgram   udp     wait    root    internal

The Discard Protocol is the TCP/UDP equivalent of the Unix filesystem node /dev/null. Such a service is guaranteed to receive what is sent to it and can be used for debugging TCP and/or UDP code requiring a guaranteed reception of payload sent.

On various routers, this TCP or UDP port 9 for the Discard Protocol (or port 7 for the Echo Protocol relaying ICMP datagrams) is also used by default as a proxy to relay Wake-on-LAN (WOL) magic packets from the Internet to hosts on the local network in order to wake up them remotely (these hosts must also have their network adapter configured to accept WOL datagrams and the router must have this proxy setting enabled, and possibly also a configuration of forwarding rules in its embedded firewall to open these ports on the Internet side).

See also[edit]

External links[edit]