Commit | Line | Data |
---|---|---|
95e9dfc1 C |
1 | .TH EC 4 "27 July 1983" |
2 | .UC 4 | |
3 | .SH NAME | |
4 | ec \- 3Com 10 Mb/s Ethernet interface | |
5 | .SH SYNOPSIS | |
6 | .B "device ec0 at uba0 csr 161000 vector ecrint eccollide ecxint" | |
7 | .SH DESCRIPTION | |
8 | The | |
9 | .I ec | |
10 | interface provides access to a 10 Mb/s Ethernet network through | |
11 | a 3com controller. | |
12 | .PP | |
13 | The hardware has 32 kilobytes of dual-ported memory on the UNIBUS. | |
14 | This memory | |
15 | is used for internal buffering by the board, and the interface code reads | |
16 | the buffer contents directly through the UNIBUS. | |
17 | .PP | |
18 | The host's Internet address is specified at boot time with an SIOCSIFADDR | |
19 | ioctl. The | |
20 | .I ec | |
21 | interface employs the address resolution protocol described in | |
22 | .IR arp (4P) | |
23 | to dynamically map between Internet and Ethernet addresses on the local | |
24 | network. | |
25 | .PP | |
26 | The interface software implements an exponential backoff algorithm | |
27 | when notified of a collision on the cable. This algorithm utilizes | |
28 | a 16-bit mask and the VAX-11's interval timer in calculating a series | |
29 | of random backoff values. The algorithm is as follows: | |
30 | .TP 5 | |
31 | 1. | |
32 | Initialize the mask to be all 1's. | |
33 | .TP 5 | |
34 | 2. | |
35 | If the mask is zero, 16 retries have been made and we give | |
36 | up. | |
37 | .TP 5 | |
38 | 3. | |
39 | Shift the mask left one bit and formulate a backoff by | |
40 | masking the interval timer with the mask (this is actually | |
41 | the two's complement of the value). | |
42 | .TP 5 | |
43 | 4. | |
44 | Use the value calculated in step 3 to delay before retransmitting | |
45 | the packet. The delay is done in a software busy loop. | |
46 | .PP | |
47 | The interface normally tries to use a ``trailer'' encapsulation | |
48 | to minimize copying data on input and output. This may be | |
49 | disabled, on a per-interface basis, by setting the IFF_NOTRAILERS | |
50 | flag with an SIOCSIFFLAGS ioctl. | |
51 | .SH DIAGNOSTICS | |
52 | .BR "ec%d: send error" . | |
53 | After 16 retransmissions using the | |
54 | exponential backoff algorithm described above, the packet | |
55 | was dropped. | |
56 | .PP | |
57 | .BR "ec%d: input error (offset=%d)" . | |
58 | The hardware indicated an error | |
59 | in reading a packet off the cable or an illegally sized packet. | |
60 | The buffer offset value is printed for debugging purposes. | |
61 | .PP | |
62 | .BR "ec%d: can't handle af%d" . | |
63 | The interface was handed | |
64 | a message with addresses formatted in an unsuitable address | |
65 | family; the packet was dropped. | |
66 | .SH SEE ALSO | |
67 | intro(4N), inet(4F), arp(4P) | |
68 | .SH BUGS | |
69 | The PUP protocol family should be added. | |
70 | .PP | |
71 | The hardware is not capable of talking to itself. The software | |
72 | implements local sending and broadcast by sending such packets to the | |
73 | loop interface. This is a kludge. | |
74 | .PP | |
75 | Backoff delays are done in a software busy loop. This can degrade the | |
76 | system if the network experiences frequent collisions. |