xref: /netbsd-src/share/man/man4/man4.vax/ec.4 (revision cda4f8f6ee55684e8d311b86c99ea59191e6b74f)
1.\" Copyright (c) 1983, 1991, 1993
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\" 3. All advertising materials mentioning features or use of this software
13.\"    must display the following acknowledgement:
14.\"	This product includes software developed by the University of
15.\"	California, Berkeley and its contributors.
16.\" 4. Neither the name of the University nor the names of its contributors
17.\"    may be used to endorse or promote products derived from this software
18.\"    without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.\"     @(#)ec.4	8.1 (Berkeley) 6/5/93
33.\"
34.Dd June 5, 1993
35.Dt EC 4 vax
36.Os BSD 4.2
37.Sh NAME
38.Nm ec
39.Nd 3Com 10 Mb/s Ethernet interface
40.Sh SYNOPSIS
41.Cd "device ec0 at uba0 csr 161000 vector ecrint eccollide ecxint flags 0"
42.Sh DESCRIPTION
43The
44.Nm ec
45interface provides access to a 10 Mb/s Ethernet network through
46a 3com controller.
47.Pp
48The hardware has 32 kilobytes of dual-ported memory on the
49.Tn UNIBUS .
50This memory
51is used for internal buffering by the board, and the interface code reads
52the buffer contents directly through the
53.Tn UNIBUS .
54The address of this memory is given in the
55.Ar flags
56field
57in the configuration file.
58The first interface normally has its memory at Unibus address 0.
59.Pp
60Each of the host's network addresses
61is specified at boot time with an
62.Dv SIOCSIFADDR
63.Xr ioctl 2 .
64The
65.Nm ec
66interface employs the address resolution protocol described in
67.Xr arp 4
68to dynamically map between Internet and Ethernet addresses on the local
69network.
70.Pp
71The interface normally tries to use a
72.Dq trailer
73encapsulation
74to minimize copying data on input and output.
75The use of trailers is negotiated with
76.Tn ARP .
77This negotiation may be disabled, on a per-interface basis,
78by setting the
79.Dv IFF_NOTRAILERS
80flag with an
81.Dv SIOCSIFFLAGS
82.Xr ioctl .
83.Pp
84The interface software implements an exponential backoff algorithm
85when notified of a collision on the cable.  This algorithm utilizes
86a 16-bit mask and the
87.Tn VAX-11 Ns 's
88interval timer in calculating a series
89of random backoff values.  The algorithm is as follows:
90.Bl -enum -offset indent
91.It
92Initialize the mask to be all 1's.
93.It
94If the mask is zero, 16 retries have been made and we give
95up.
96.It
97Shift the mask left one bit and formulate a backoff by
98masking the interval timer with the smaller of the complement of this mask
99and a 5-bit mask, resulting in a pseudo-random number between 0 and 31.
100This produces the number of slot times to delay,
101where a slot is 51 microseconds.
102.It
103Use the value calculated in step 3 to delay before retransmitting
104the packet.
105The delay is done in a software busy loop.
106.El
107.Sh DIAGNOSTICS
108.Bl -diag
109.It ec%d: send error.
110After 16 retransmissions using the
111exponential backoff algorithm described above, the packet
112was dropped.
113.Pp
114.It ec%d: input error (offset=%d).
115The hardware indicated an error
116in reading a packet off the cable or an illegally sized packet.
117The buffer offset value is printed for debugging purposes.
118.Pp
119.It ec%d: can't handle af%d.
120The interface was handed
121a message with addresses formatted in an unsuitable address
122family; the packet was dropped.
123.El
124.Sh SEE ALSO
125.Xr netintro 4 ,
126.Xr inet 4 ,
127.Xr arp 4
128.Sh HISTORY
129The
130.Nm
131driver appeared in
132.Bx 4.2 .
133.Sh BUGS
134The hardware is not capable of talking to itself.  The software
135implements local sending and broadcast by sending such packets to the
136loop interface.  This is a kludge.
137.Pp
138Backoff delays are done in a software busy loop.  This can degrade the
139system if the network experiences frequent collisions.
140