--- /n/sources/plan9/sys/man/3/ip Tue Jun 15 19:54:13 2010 +++ /sys/man/3/ip Thu May 17 00:00:00 2012 @@ -25,6 +25,7 @@ .B /net/gre .B /net/icmp .B /net/icmpv6 +.B /net/il .B /net/ipmux .B /net/rudp .B /net/tcp @@ -461,9 +462,11 @@ .BR ip , .BR fs , .BR tcp , +.BR il , .BR icmp , .BR udp , .BR compress , +.BR ilmsg , .BR gre , .BR tcpwin , .BR tcprxmt , @@ -515,7 +518,7 @@ .I ip device supports IP as well as several protocols that run over it: -TCP, UDP, RUDP, ICMP, GRE, and ESP. +TCP, UDP, RUDP, ICMP, IL, GRE, and ESP. TCP and UDP provide the standard Internet protocols for reliable stream and unreliable datagram communication. @@ -523,10 +526,10 @@ ICMP is IP's catch-all control protocol used to send low level error messages and to implement .IR ping (8). +IL provides a reliable datagram service for communication +between Plan 9 machines but is now deprecated. GRE is a general encapsulation protocol. ESP is the encapsulation protocol for IPsec. -IL provided a reliable datagram service for communication -between Plan 9 machines over IPv4, but is no longer part of the system. .PP Each protocol is a subdirectory of the IP stack. The top level directory of each protocol contains a @@ -837,7 +840,7 @@ to .BR ctl . .PP -Unlike TCP, the reboot of one end of a connection does +Unlike IL or TCP, the reboot of one end of a connection does not force a closing of the connection. Communications will resume when the rebooted machine resumes talking. Any unacknowledged packets queued before the reboot will be lost. A reboot can @@ -930,6 +933,19 @@ .I data file. . +.SS IL +IL is a reliable point-to-point datagram protocol. Like TCP, IL delivers datagrams +reliably and in order. Also like TCP, a connection is +determined by the address and port numbers of the two ends. +Like UDP, each read and write transfers a single datagram. +.PP +IL is efficient for LANs but doesn't have the +congestion control features needed for use through +the Internet. +It is no longer necessary, except to communicate with old standalone +.IR fs (4) +file servers. +Its use is now deprecated. .SS GRE GRE is the encapsulation protocol used by PPTP. The kernel implements just enough of the protocol @@ -1229,6 +1245,23 @@ datagrams received for bad ports malformed datagrams received datagrams sent +.in -0.25i +.1C +.EE +.PP +Reading +.B /net/il/stats +returns a list of 7 tagged and newline-separated fields representing: +.EX +.ft 1 +.2C +.in +0.25i +checksum errors +header length errors +out of order messages +retransmitted messages +duplicate messages +duplicate bytes .in -0.25i .1C .EE --- /n/sources/plan9/sys/src/cmd/ndb/cs.c Fri Mar 30 20:41:12 2012 +++ /sys/src/cmd/ndb/cs.c Thu May 17 00:00:00 2012 @@ -158,13 +158,15 @@ * net doesn't apply to (r)udp, icmp(v6), or telco (for speed). */ Network network[] = { -[Ntcp] { "tcp", iplookup, iptrans, 0 }, - { "udp", iplookup, iptrans, 1 }, - { "icmp", iplookup, iptrans, 1 }, - { "icmpv6", iplookup, iptrans, 1 }, - { "rudp", iplookup, iptrans, 1 }, - { "ssh", iplookup, iptrans, 1 }, - { "telco", telcolookup, telcotrans, 1 }, +[Ntcp] { "tcp", iplookup, iptrans, 0, 0 }, + { "il", iplookup, iptrans, 0, 1 }, + { "il", iplookup, iptrans, 0, 0 }, + { "udp", iplookup, iptrans, 1, 0 }, + { "icmp", iplookup, iptrans, 1, 0 }, + { "icmpv6", iplookup, iptrans, 1, 0 }, + { "rudp", iplookup, iptrans, 1, 0 }, + { "ssh", iplookup, iptrans, 1, 0 }, + { "telco", telcolookup, telcotrans, 1, 0 }, { 0 }, };