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