Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 Jun 2000 22:08:12 -0500
From:      Carroll Kong <damascus@home.com>
To:        freebsd-atm@FreeBSD.ORG
Subject:   ATM Switch?
Message-ID:  <4.2.2.20000623214426.0267d2f0@email.eden.rutgers.edu>

next in thread | raw e-mail | index | archive | help
	Hey guys.  I need to create an ATM Switch which is controllable 
remotely.  I was thinking about using a control socket that handles control 
commands and dynamically creating a "routing table" of VCI's -> to other 
VCI's.  I need to use PVCs all the way.
	I took a look at Charles D. Cranor's web site and his driver.  At first it 
seemed like things were very promising, until I realized, we just got a 
Fore 200E card, not a midway based card.  I also tried to do a search for 
the efficient networks or adaptec cards, and for some odd reason, I cannot 
find either one!
	As my search continued, I realized that HARP does have a socket 
API.  However, I am somewhat new to the realm of ATM and I am not familiar 
with doing routing in C.  From what my books tell me, I would have to use a 
raw socket call to the kernel and pass a message like RTM_ADD plus the 
sockstructure.  (In this case, the sockaddr_atm of HARP).  Cranor notes 
that his driver does not require any special new programs to interface with 
the ATM's controls.  It seems like HARP does... ala "atm X Y Z".  This 
leads me to believe, that I cannot control my FreeBSD box like an ATM 
Switch as easily with HARP?
	Also I noted that HARP mentioned it does not support 
UNI->multipoint.  Now, is this a uni->multipoint?
	VCI-100 -> VCI-301;
	VCI-100 -> VCI-302;

	Both going simultaneously?  Logic would dictate that it is indeed a 
UNI->multipoint.  :(

	I would also like it if the VCI-301 could say "hey... switch me to VCI-101 
now"...
	VCI-101->VCI-301;

	I was hoping originally to do this with creating two sockaddr_atms and 
piping the two together.  But the documentation on the site says

	To support PVC sockets, there is a new address format (T_ATM_PVC_ADDR) and 
address definition (Atm_addr_pvc).   Since there is no actual signalling 
involved in setting up a PVC, a PVC socket connection only defines the 
local socket-to-pvc connection - the remainder of the virtual circuit 
through the ATM network to the remote endpoint must be defined independent 
of the local socket creation.  PVC socket connections are only allowed via 
the connect() system call - listen()/accept() sockets cannot be 
supported.  Also, since there are no circuit parameters signalled, most of 
the  setsockopt() options are silently ignored.

	I know I sound like I am asking a lot, I just want to know if it is 
feasible and a basic idea.  I am a decent programmer, I can hopefully 
figure out the rest if pointed the way.  Thanks a lot guys!

-Carroll Kong



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-atm" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4.2.2.20000623214426.0267d2f0>