uab(8) MAINTENANCE COMMANDS uab(8)
NAME
uab - Unix AppleTalk Bridge
SYNTAX
uab -D <level> -f <bridge_description> -l <log file> -d
tdump debug nodebug statistics (stat) exit
DESCRIPTION
The Unix AppleTalk Bridge ( uab) program allows certain unix
systems to act as AppleTalk Bridges. uab can be functionally
divided into two parts. The first is the actual AppleTalk
Bridge implementation and the second are the routines that
define particular "Link Access Protocols" (aka "hardware"
delivery methods e.g. EtherTalk). uab also supports an
internal demultiplexing that allows packets delivered to the
uab node to be delivered to other processes within that sys-
tem.
Currently, uab runs on Ultrix 1.2 (and beyond) and SunOS 4.0
and supports EtherTalk (Phase 1). Unfortunately, with the
current definition of KIP's UDP encapsulation and delivery
rules, it is not feasible to implement KIP. The only inter-
nal packet delivery mechanism defined is a modified version
of KIP's UDP encapsulation (modified-KIP) that uses a dif-
ferent UDP port range over the internal loopback; thus CAP
programs must be relinked with a different low level
delivery mechanism to work with uab. Note that all packets
for these programs are sent and received through the uab
process.
Since uab does not understand KIP, it is necessary to have
an AppleTalk Bridge that understands both KIP encapsulation
and EtherTalk before KIP based "systems" (e.g. programs com-
piled with CAP, bridges that only speak KIP on the ethernet
interface--revisions of KIP before 2/88, etc) can work with
uab's modified-KIP based programs.
uab is configured by use of a "bridge description" file
described in detail later.
The flags are: D to set the debugging level to a particular
value, d to increment the debug level by one, f to specify a
bridge description file (default bridge_desc), and l to
specify a logging file (default none). uab acts in response
to certain signals. uab invoked as:
uab <name>
where name is one of tdump (SIGUSR1), debug (SIGIOT), node-
bug (SIGEMT), statistics (SIGUSR2), or exit (SIGTERM) will
send these signals. tdump causes the running uab to dump
its internal tables (rtmp, etc.) to /usr/tmp/uab.dump.
(dump is reserved for nbp if uab ever support nbp). debug
tells the running uab to increment the debug level: if not
Sun Release 4.1 Last change: 1
uab(8) MAINTENANCE COMMANDS uab(8)
log file was currently active, the log will go to
/usr/tmp/uab.run. nodebug turns off all debugging. stat or
statisitics dumps statistics to /usr/tmp/uab.stats. exit
causes the running uab to stop.
The bridge description file is a list of the valid ports for
a particular Unix AppleTalk Bridge (UAB). In order to
minimize the maintaince headache, one may use the host name
as a selector. Each port description is entered on a single
line.
The first item in a line is the host selector field. It can
be the host name (as returned by gethostname). In addition,
you can use % to match any character. "*" can be used to
match any host. Finally, you can use "*" at the end of a
string to complete a match. (Allowing "*" at both the
beginning and end or at an arbritrary location is a pain
because it is an unanchored search -- would have to use a
regular expression matcher to do this -- ugh).
The second field contains a tuple that specifies the
interface's link access protocol (LAP) and any device
specific data required. Valid LAP method specifications:
ELAP - EtherTalk Link Access Protocol
EtherTalk - same as above
ASYNC - Asynchronous AppleTalk
ASYNCATALK - same as above
The device specific data consists of a "device name" fol-
lowed by an colon and a "device number". If the colon is
omitted, the device number is assumed to be zero. For Eth-
ertalk, this should be interpreted as a ethernet "tap" dev-
ice (SunOS, Ultrix). For example, "ie:1" for ethertalk on
interface ie1. For Asynchronous AppleTalk, this is just a
label. Suggested use as:0
The third field specifies the local demultiplexing delivery
mechanism for delivery of DDP packets not destined for the
bridge process. Currently defined mechanisms are: "none"
which says there will be no other client processes; "mkip" -
modified version of kip style udp encapsulation using a dif-
ferent udp port range. Specify 'none' for Asynchronous
AppleTalk. (Hopefully, there will be a way to do direct kip
etc. in the future)
The fourth and last field specifies two items paired in a
[<item1>,<item2>] format. The first is the DDP network that
should be associated with this port. If you specify zero,
the ddp network number will be acquired via RTMP if there
are other bridges that know the network number. Note that
only a single network is allowed at this point. The network
number may be specified as <number> or <high byte>.<low
byte>. In both cases, the number may be decimal (no leading
Sun Release 4.1 Last change: 2
uab(8) MAINTENANCE COMMANDS uab(8)
zero), octal (leading zero), or hexadecimal (leading 0x or
0X). If this field is not specified, uab will assume that
this port is for multiplexing only. It will not send out
any rtmp data packets or respond to rtmp network request
packets, etc.
The second item specifies the zone name associated with the
ddp network associated with this port. If it is not speci-
fied, it will be acquired via ZIP if there are other bridges
on the network that know the zone name. Note: you may omit
the comma if you do not wish to specify a zone. Note, can
be used to quote a character (like a space in the zone name
:-) A " return and line feed both terminate a line.
You MUST SPECIFY a network number and Zone for Asynchronous
AppleTalk.
You should order the file from more specific to less
specific (in terms of host name matches. Once a match has
been found, then only matches with the exactly same pattern
will succeed!
BUGS
None known.
NOTES
Better method for internal demuxing is needed.
AUTHOR
Charlie C. Kim, Academic Computing and Communications Group,
Center for Computing Activities, Columbia University
FILES
/usr/tmp/uab.stats
/usr/tmp/uab.run
/usr/tmp/uab.dump
Sun Release 4.1 Last change: 3