diff options
author | wollman <wollman@FreeBSD.org> | 1995-02-15 03:30:54 +0000 |
---|---|---|
committer | wollman <wollman@FreeBSD.org> | 1995-02-15 03:30:54 +0000 |
commit | 382620028982b4520e11706aab205563a7385065 (patch) | |
tree | 4840feef680d6710b8e45a854120876f476710dd /share/man/man4/inet.4 | |
parent | 01a43e3165d640dbeebf10757088bc1f79a0ff0f (diff) | |
download | FreeBSD-src-382620028982b4520e11706aab205563a7385065.zip FreeBSD-src-382620028982b4520e11706aab205563a7385065.tar.gz |
Document TCP MIB variables (tcp.4).
Document IP MIB variables (inet.4).
Document Internet-family protocol-specified route cloning (inet.4).
Delete all references to classed addresses (inet.4).
Diffstat (limited to 'share/man/man4/inet.4')
-rw-r--r-- | share/man/man4/inet.4 | 138 |
1 files changed, 119 insertions, 19 deletions
diff --git a/share/man/man4/inet.4 b/share/man/man4/inet.4 index 690bfca..6e97c94 100644 --- a/share/man/man4/inet.4 +++ b/share/man/man4/inet.4 @@ -29,9 +29,10 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" @(#)inet.4 8.1 (Berkeley) 6/5/93 +.\" From: @(#)inet.4 8.1 (Berkeley) 6/5/93 +.\" $Id$ .\" -.Dd June 5, 1993 +.Dd February 14, 1995 .Dt INET 4 .Os BSD 4.2 .Sh NAME @@ -97,9 +98,11 @@ network if the first network configured supports broadcast. The Internet protocol family is comprised of the .Tn IP -transport protocol, Internet Control +network protocol, Internet Control Message Protocol .Pq Tn ICMP , +Internet Group Management Protocol +.Pq Tn IGMP , Transmission Control Protocol .Pq Tn TCP , @@ -122,22 +125,11 @@ The message protocol is accessible from a raw socket. .Pp The 32-bit Internet address contains both network and host parts. -It is frequency-encoded; the most-significant bit is clear -in Class A addresses, in which the high-order 8 bits are the network -number. -Class B addresses use the high-order 16 bits as the network field, -and Class C addresses have a 24-bit network part. -Sites with a cluster of local networks and a connection to the -Internet may chose to use a single network number for the cluster; -this is done by using subnet addressing. -The local (host) portion of the address is further subdivided -into subnet and host parts. -Within a subnet, each subnet appears to be an individual network; -externally, the entire cluster appears to be a single, uniform -network requiring only a single routing entry. -Subnet addressing is enabled and examined by the following +However, direct examination of addresses is discouraged. For those +programs which absolutely need to break addresses into their component +parts, the following .Xr ioctl 2 -commands on a datagram socket in the Internet domain; +commands are provided for a datagram socket in the Internet domain; they have the same form as the .Dv SIOCIFADDR command (see @@ -152,14 +144,117 @@ then subnets are in use. .It Dv SIOCGIFNETMASK Get interface network mask. .El +.Sh ROUTING +The current implementation of Internet protocols includes some routing-table +adaptations to provide enhanced caching of certain end-to-end +information necessary for Transaction TCP and Path MTU Discovery. The +following changes are the most significant: +.Bl -enum +.It +All IP routes, except those with the +.Dv RTF_CLONING +flag and those to multicast destinations, have the +.Dv RTF_PRCLONING +flag forcibly enabled (they are thus said to be +.Dq "protocol cloning" ). +.It +When the last reference to an IP route is dropped, the route is +examined to determine if it was created by cloning such a route. If +this is the case, the +.Dv RTF_PROTO3 +flag is turned on, and the expiration timer is initialized to go off +in net.inet.ip.rtexpire seconds. If such a route is re-referenced, +the flag and expiration timer are reset. +.It +A kernel timeout runs once every ten minutes, or sooner if there are +soon-to-expire routes in the kernel routing table, and deletes the +expired routes. +.El +.Pp +A dynamic process is in place to modify the value of +net.inet.ip.rtexpire if the number of cached routes grows too large. +If after an expiration run there are still more than +net.inet.ip.rtmaxcache unreferenced routes remaining, the rtexpire +value is multiplied by 3/4, and any routes which have longer +expiration times have those times adjusted. This process is damped +somewhat by specification of a minimum rtexpire value +(net.inet.ip.rtminexpire), and by restricting the reduction to once in +a ten-minute period. +.Pp +If some external process deletes the original route from which a +protocol-cloned route was generated, the ``child route'' is deleted. +(This is actually a generic mechanism in the routing code support for +protocol-requested cloning.) +.Pp +No attempt is made to manage routes which were not created by protocol +cloning; these are assumed to be static, under the management of an +external routing process, or under the management of a link layer +(e.g., +.Tn ARP +for Ethernets). +.Pp +Only certain types of network activity will result in the cloning of a +route using this mechanism. Specifically, those protocols (such as +.Tn TCP +and +.Tn UDP ) +which themselves cache a long-lasting reference to route for a destination +will trigger the mechanism; whereas raw +.Tn IP +packets, whether locally-generated or forwarded, will not. +.Sh MIB VARIABLES +A number of variables are implemented in the net.inet branch of the +.Xr sysctl 3 +MIB. In addition to the variables supported by the transport +protocols (for which see the respective manual pages), the following +general variables are defined: +.Bl -tag -width IPCTL_SENDREDIRECTS +.It Dv IPCTL_FORWARDING +.Pq ip.forwarding +Boolean: enable/disable forwarding of IP packets (default depends on +the +.Dv GATEWAY +kernel configuration option). +.It Dv IPCTL_SENDREDIRECTS +.Pq ip.redirect +Boolean: enable/disable sending of ICMP redirects in response to +unforwardable +.Tn IP +packets (default true). +.It Dv IPCTL_DEFTTL +.Pq ip.ttl +Integer: default time-to-live +.Pq Dq TTL +to use for outgoing +.Tn IP +packets. +.It Dv IPCTL_RTEXPIRE +.Pq ip.rtexpire +Integer: lifetime in seconds of protocol-cloned +.Tn IP +routes after the last reference drops (default one hour). This value +varies dynamically as described above. +.It Dv IPCTL_RTMINEXPIRE +.Pq ip.rtminexpire +Integer: minimum value of ip.rtexpire (default ten seconds). This +value has no effect on user modifications, but restricts the dynamic +adaptation described above. +.It Dv IPCTL_RTMAXCACHE +.Pq ip.rtmaxcache +Integer: trigger level of cached, unreferenced, protocol-cloned routes +which initiates dynamic adaptation (default 128). +.El .Sh SEE ALSO .Xr ioctl 2 , .Xr socket 2 , +.Xr sysctl 3 , .Xr intro 4 , .Xr tcp 4 , +.Xr ttcp 4 , .Xr udp 4 , .Xr ip 4 , -.Xr icmp 4 +.Xr icmp 4 , +.Xr igmp 4 .Rs .%T "An Introductory 4.3 BSD Interprocess Communication Tutorial" .%B PS1 @@ -180,3 +275,8 @@ The .Nm protocol interface appeared in .Bx 4.2 . +The +.Dq protocol cloning +code appeared in +.Tn FreeBSD +2.1. |