ATMTCP(8) | Maintenance Commands | ATMTCP(8) |
atmtcp - set up ATM over TCP connections
atmtcp [-d] [-v] command ...
atmtcp -V
The main purpose of atmtcp is to establish TCP connections and to configure them as virtual ATM devices. Such pairs of "ATM over TCP" devices are connected as if they were real ATM adapters linked by a cable or fiber, i.e. SDUs sent on a given VPI/VCI are received at the other end on the same VPI/VCI.
Virtual interfaces and ATM over TCP connections are called links. Other link types supported by atmtcp are real interfaces, files for recording and playback of ATM traffic, and printing a hex dump of the PDU content on standard output. Any pair of such links can be connected with atmtcp. If additional links are attached to such a connection, they send to all other links, except to the first link and the respective sender, and they receive from all other links.
atmtcp can operate with two types of virtual interfaces: ephemeral or persistent. By default, atmtcp interfaces are ephemeral. When the atmtcp process that created an interface terminates, the virtual ATM device is removed as soon all VCs are closed. However, if the interface was previously created as a persistent interface, only the communication stops, but the interface and all VCs on it remain intact. Attempts to send data on an atmtcp interface in this state fail silently, i.e. the interface behaves just like a real ATM interface without a wire. A new atmtcp process can then attach to the interface and resume operation. Persistent interfaces need to be removed explicitly.
If atmtcp has any readable links after processing the command line, it enters a loop to perform the data forwarding. If no readable links have been specified, atmtcp terminates after processing the command line. If any setup operation fails, atmtcp terminates at this point and does not attempt to cancel previous operations (e.g. creation of permanent interfaces).
Due to recent protocol changes, atmtcp is currently not compatible with the ATM over TCP "switch".
Only AAL SDUs are exchanged, no segmentation or reassembly is performed. That implies that using different AALs (e.g. AAL5 and AAL0) on either side will reveal limitations of this emulation.
The atmtcp process needs to run during the the whole lifetime of the connection.
Create a pair of virtual ATM over TCP interfaces on the local host and connect them:
# session A atmtcp virtual listen # session B atmtcp virtual connect localhost
Create virtual interface 1, connect it to real ATM interface 0, then start atmsigd on the virtual interface, and log all the traffic in a file:
atmtcp virtual 1 real 0 write /tmp/log atmsigd 1.0.5
Take the previously created file and examine the traffic sent from atmsigd using saaldump:
# session A atmtcp virtual 1 read /tmp/log 0 wait # session B saaldump 1.0.5 # press [Enter] in session A
Werner Almesberger, EPFL ICA <Werner.Almesberger@epfl.ch>
atmdiag(8)
April 26, 2000 | Linux |