#
# libhifimsg/doc:
#
# Copyright (c) 2000 James McKenzie <james@fishsoup.dhs.org>,
# All rights reserved.
#
# $Id: doc.txt,v 1.1 2000/09/24 01:48:04 root Exp root $
#
# $Log: doc.txt,v $
# Revision 1.1  2000/09/24 01:48:04  root
# Initial revision
#
#

Two types of connection symmetric and bi-symmetric
symmetric behaviour:
Every body who opens this transport gets all messages
on this transport, (except their own) sending broadcasts
to all members of the transport. 




bi-symmetric behaviour:
The socket can be opened in one of two modes.
1) server style. The socket behaves like a symmetric socket
wrt to all other server style sockets on the transport - 
however there may/will be a limitation on the number of
such sockets that can be open. Messages that are received
can either be from other server style sockets or from 
local client style sockets. IT IS THE JOB OF THE SOCKET LAYER
to hide this difference and to do local redistribution over
this transport. Messages to be transmittied should be sent
not only to other server style sockets but also to the local
list of active client style sockets. It is the job of the
socket layer to implement this also.


2) client style 
client style sockets talk to a local server_style socket and
hence on to other client style sockets. These are not broadcast
but more point to multipoint. (PTP is handled as symmetric with
only two nodes) opening a client style socket should check 
for the presence of a local server style socket, and if none is 
found attempt to start a hub (by some devious means).




