| Title and Copyright Information |
| About This Manual |
| Audience |
| New and Changed Features |
| Organization |
| Related Documents |
| Reader's Comments |
| Conventions |
| 1 | Overview of Tru64 UNIX ATM Architecture |
| 1.1 | ATM Subsystem |
| 1.1.1 | Connection Management Module |
| 1.1.2 | CMM Interfaces |
| 1.2 | ATM Subsystem Configuration |
| 2 | Configuring the ATM Software |
| 2.1 | ATM Environment |
| 2.1.1 | Classical IP Environment |
| 2.1.2 | LAN Emulation Environment |
| 2.1.3 | IP Switching |
| 2.2 | ATM Planning |
| 2.2.1 | Verifying That the ATM Subsets Are Installed |
| 2.2.2 | Configuring ATM into the Kernel |
| 2.2.3 | Preparing for the Configuration |
| 2.2.3.1 | Classical IP Information |
| 2.2.3.2 | LAN Emulation Information |
| 2.2.3.3 | IP Switching Information |
| 2.3 | Configuring ATM |
| 2.3.1 | Configuring Classical IP |
| 2.3.1.1 | Editing the /etc/atmhosts File |
| 2.3.1.2 | Adding Hosts to the hosts Database |
| 2.3.1.3 | Running atmsetup |
| 2.3.1.4 | Running netsetup (SVCs only) |
| 2.3.1.5 | Editing the /etc/atm.conf File (PVCs only) |
| 2.3.1.6 | Running atmconfig (PVCs only) |
| 2.3.2 | Configuring LAN Emulation |
| 2.3.2.1 | Editing the /etc/atmhosts File |
| 2.3.2.2 | Adding Hosts to the hosts Database |
| 2.3.2.3 | Running atmsetup |
| 2.3.2.4 | Running netsetup |
| 2.3.3 | Configuring IP Switching |
| 2.3.3.1 | Editing the /etc/hosts File |
| 2.3.3.2 | Running atmsetup |
| 2.3.3.3 | Editing the /etc/atm.conf File |
| 2.3.3.4 | Running atmconfig |
| 2.4 | Managing the ATM Environment |
| 2.4.1 | Managing ATM Networking and Displaying Information About ATM Networks |
| 2.4.2 | Managing the Signaling Module |
| 2.4.3 | Managing the Classical IP Environment |
| 2.4.4 | Managing the LAN Emulation Environment |
| 2.4.4.1 | Managing LAN Emulation Clients |
| 2.4.4.2 | Displaying the LE-ARP Table |
| 2.4.5 | Managing IP Switching |
| 2.5 | Solving Problems |
| 2.5.1 | Using the Diagnostic Map |
| 2.5.2 | Getting Started |
| 2.5.3 | Solving ATM Problems |
| 2.5.3.1 | Solving CLIP Problems |
| 2.5.3.2 | Solving LANE Problems |
| 2.5.3.3 | Solving IP Switching Problems |
| 3 | ATM Subsystem General Features |
| 3.1 | Header Files |
| 3.2 | Kernel Data File |
| 3.3 | ATM Module Configuration |
| 3.4 | Error Codes |
| 3.5 | Data Formats |
| 3.5.1 | Raw ATM Cells |
| 3.5.2 | Cooked Data |
| 3.5.3 | How the Data Is Carried |
| 3.5.4 | Time-Stamping |
| 3.6 | Physical Point of Attachment |
| 3.6.1 | Permanent Virtual Circuit PPAs |
| 3.6.2 | Switched Virtual Circuit PPAs |
| 3.7 | Memory Allocation |
| 3.8 | ATM Locking Macros |
| 3.8.1 | Locking Guidelines |
| 3.8.2 | Types of Locking Methods |
| 3.8.3 | Order of Locking Macros |
| 3.8.4 | Creation of ATM Threads |
| 3.9 | Types of Circuits |
| 3.10 | Global Data Structures |
| 3.10.1 | The atm_vc Structure |
| 3.10.1.1 | The conv_pp1 and conv_pp2 Members |
| 3.10.1.2 | The sig_pp1, sig_pp2, drv_pp1, and drv_pp2 Members |
| 3.10.1.3 | The vcs Member |
| 3.10.1.4 | The call_reference Member |
| 3.10.1.5 | The errno Member |
| 3.10.1.6 | The vci and vpi Members |
| 3.10.1.7 | The ppa Member |
| 3.10.1.8 | The selector Member |
| 3.10.1.9 | The direction Member |
| 3.10.2 | The atm_addr Structure |
| 3.10.2.1 | The vc Member |
| 3.10.2.2 | The address Member |
| 3.10.2.3 | The ton Member |
| 3.10.2.4 | The anpi Member |
| 3.10.2.5 | The subaddress Member |
| 3.10.2.6 | The subaddress_type Member |
| 3.10.2.7 | The eprtype Member |
| 3.10.2.8 | The endpoint Member |
| 3.10.2.9 | The state Member |
| 3.10.2.10 | The atm_error Member |
| 3.10.2.11 | The setup Member |
| 3.10.2.12 | The connect Member |
| 3.10.2.13 | The location, cause, diag_length, and diagnostic Members |
| 3.10.2.14 | The endstate Member |
| 3.10.2.15 | The conv_p1 and conv_p2 Members |
| 3.10.2.16 | The sig_p1 and sig_p2 Members |
| 3.10.2.17 | Allocating the atm_addr Structure |
| 3.10.3 | The atm_vc_services Structure |
| 3.10.3.1 | The vc Member |
| 3.10.3.2 | The fqos and bqos Members |
| 3.10.3.3 | The fmtu and bmtu Members |
| 3.10.3.4 | The valid_rates Member |
| 3.10.3.5 | The fpeakcr, bpeakcr, fsustcr, bsustcr, fburstcr, and bburstcr Members |
| 3.10.3.6 | The flags Member |
| 3.10.3.7 | The aal Member |
| 3.10.3.8 | The queue Member |
| 3.10.3.9 | The bearer_class Member |
| 3.10.3.10 | The lerrstat Member |
| 3.10.3.11 | The nerrstat Member |
| 3.10.3.12 | The cmm_drv_handle Member |
| 3.10.3.13 | The drv_resource Member |
| 3.10.3.14 | The converge_handle Member |
| 3.10.3.15 | Allocating the atm_vc_services Structure |
| 3.10.4 | The atm_uni_call_ie Structure |
| 3.10.4.1 | The ie_type Member |
| 3.10.4.2 | The last Member |
| 3.10.4.3 | The aal_params Member |
| 3.10.4.4 | The bb_high_layer and bb_low_layer Members |
| 3.10.4.5 | Allocating the atm_uni_call_ie Structure |
| 3.10.4.6 | Setting Fields in the atm__uni_call_ie Structure |
| 3.10.5 | The atm_ppa Structure |
| 3.10.5.1 | The driver Member |
| 3.10.5.2 | The sig Member |
| 3.10.5.3 | The ppas_id Member |
| 3.10.5.4 | The ton Member |
| 3.10.5.5 | The anpi Member |
| 3.10.5.6 | The addrlen Member |
| 3.10.5.7 | The address Member |
| 3.10.5.8 | The uni Member |
| 3.10.5.9 | The type Member |
| 3.10.5.10 | The esi_arg Member |
| 3.10.6 | The atm_esi Structure |
| 3.10.6.1 | The esi and esilen Members |
| 3.10.6.2 | The driver Member |
| 3.10.6.3 | The sigp1 and sigp2 Members |
| 3.10.7 | The atm_cause_info Structure |
| 3.10.7.1 | The cause Member |
| 3.10.7.2 | The location Member |
| 3.10.7.3 | The module_name Member |
| 3.10.7.4 | The reason Member |
| 3.10.7.5 | The diag_length Member |
| 3.10.7.6 | The diag Member |
| 4 | Device Driver Interface |
| 4.1 | Registering the Device Driver |
| 4.2 | Receiving Data Packets and Cells |
| 4.3 | Reporting Errors |
| 4.4 | Using ATM Device Driver Interface Structures |
| 4.4.1 | The atm_drv_params Structure |
| 4.4.1.1 | The name member |
| 4.4.1.2 | The unit Member |
| 4.4.1.3 | The type Member |
| 4.4.1.4 | The num_vc Member |
| 4.4.1.5 | The max_vcib and max_vpib Members |
| 4.4.1.6 | The max_vci and max_vpi Members |
| 4.4.1.7 | The sent Member |
| 4.4.1.8 | The received Member |
| 4.4.1.9 | The dropped Member |
| 4.4.1.10 | The num_vci and num_vpi Members |
| 4.4.1.11 | The hard_mtu Member |
| 4.4.1.12 | The nqueue Member |
| 4.4.1.13 | The flowcontrol Member |
| 4.4.1.14 | The rates Member |
| 4.4.1.15 | The capabilities Member |
| 4.4.1.16 | The numid Member |
| 4.4.1.17 | The ids Member |
| 4.4.2 | The atm_queue_param Structure |
| 4.4.2.1 | The vc Member |
| 4.4.2.2 | The qlength Member |
| 4.4.2.3 | The qtime Member |
| 4.4.2.4 | The flags Member |
| 5 | Signaling Module Interface |
| 5.1 | Registering the Signaling Module |
| 5.2 | Receiving a New Call |
| 5.3 | Reporting a VC Activation |
| 5.4 | Activating a Connection |
| 5.5 | Reporting a Connection Failure |
| 5.6 | Releasing a Connection |
| 5.7 | Dropping an Endpoint |
| 5.8 | Deleting a Connection |
| 5.9 | Restarting a Virtual Circuit |
| 5.10 | Reporting a Completed Restart |
| 5.11 | Reporting a Completed Status Enquiry |
| 5.12 | Requesting Endpoint Information |
| 5.13 | Adding a PPA |
| 5.14 | Deleting a PPA |
| 5.15 | Reporting Completed MIB Access |
| 5.16 | Requesting VC Status |
| 6 | Convergence Module Interface |
| 6.1 | Registering a Convergence Module |
| 6.2 | Receiving Data |
| 6.2.1 | Receiving Exception Notifications |
| 6.2.2 | Connecting to the ATM Module Management Interface |
| 6.3 | Unregistering a Convergence Module |
| 6.4 | Requesting Interface Parameters |
| 6.5 | Reserving Resources for CBR Circuits |
| 6.6 | Releasing Reserved Resources |
| 6.7 | Requesting a Connection to a Remote System |
| 6.8 | Adding an Endpoint to a Connection |
| 6.9 | Requesting a Connection Be Torn Down |
| 6.10 | Dropping an Endpoint from a Connection |
| 6.11 | Transmitting Data on an Established VC |
| 6.12 | Modifying VC Parameters |
| 6.13 | Requesting Endpoint Connection State Information |
| 6.14 | Binding to a PPA |
| 6.15 | Receiving a Connection Notification |
| 6.16 | Unbinding from a PPA |
| 6.17 | Accepting an Incoming Call |
| 6.18 | Rejecting an Incoming Call |
| 6.19 | Adding a New ATM Address |
| 6.20 | Deleting an ATM Address |
| 6.21 | Requesting VC Statistics |
| 6.22 | Using ATM Convergence Module Interface Structures |
| 6.22.1 | The atm_vc_stats Structure |
| 6.22.2 | The atm_cmi_addr Union |
| 6.22.2.1 | The addr Member |
| 6.22.2.2 | The vcn Member |
| 7 | Connections |
| 7.1 | Making Outgoing Connections |
| 7.1.1 | Making the Call |
| 7.1.2 | Adding Parties to an Existing Connection |
| 7.2 | Accepting Connections |
| 7.3 | Controlling the Aging of Connections |
| 7.4 | Releasing a Connection |
| 7.4.1 | Release by a Convergence Module |
| 7.4.2 | Release by Network or Endpoint |
| 7.5 | Creating Permanent Virtual Circuits |
| 7.6 | Creating Signaling Virtual Circuits |
| 8 | Module Management Interface |
| 8.1 | Creating an MMI Path |
| 8.2 | Verifying the ioctl Version |
| 8.3 | Defining New MMI ioctl Commands |
| 8.4 | Using MMI Calling Conventions |
| 8.5 | Using the Device Driver MMI |
| 8.6 | Using the Signaling Module MMI |
| 8.7 | Using the Convergence Module MMI |
| 9 | Queuing Guidelines |
| 9.1 | Queuing in Device Drivers |
| 9.1.1 | Device Driver Transmit Queuing |
| 9.1.2 | Device Driver Receive Queuing |
| 9.2 | Queuing in Convergence Modules |
| 9.2.1 | Convergence Module Transmit Queuing |
| 9.2.2 | Convergence Module Receive Queuing |
| 10 | Flow Control |
| 10.1 | Hardware Flow Control |
| 10.2 | Software Flow Control |
| 10.2.1 | High-Water Mark |
| 10.2.2 | Low-Water Mark |
| 10.3 | Convergence Module Flow Control |
| A | ATM Cause Codes |
| B | CMM Routines |
| C | Connection Programming Examples |
| C.1 | Making a Call |
| C.2 | Adding More Parties to a Point-to-Multipoint Connection |
| C.3 | Processing an Incoming Call |
| Examples |
| 3-1 | The atm_uni_call_ie Structure Definition |
| C-1 | Making a Call Code Fragment |
| C-2 | Adding Parties to a Point-to-Multipoint Connection Code Fragment |
| C-3 | Incoming Call Processing Code Fragment |
| Figures |
| 1-1 | Tru64 UNIX ATM Subsystem |
| 2-1 | Classical IP over an ATM Network |
| 2-2 | Emulated LAN over an ATM Network |
| 2-3 | IP Switching over an ATM Network |
| 2-4 | Configuration Worksheet, Part A |
| 2-5 | Configuration Worksheet, Part B |
| 2-6 | Configuration Worksheet, Part C |
| Tables |
| 2-1 | ATM Kernel Options |
| 3-1 | The atm_vc Structure Members |
| 3-2 | The atm_addr Structure Members |
| 3-3 | The atm_vc_services Structure Members |
| 3-4 | Information Element Macros |
| 3-5 | The atm_ppa Structure Members |
| 3-6 | The atm_esi Structure Members |
| 3-7 | The atm_cause_info Structure Members |
| 4-1 | The atm_drv_params Structure Members |
| 4-2 | The atm_queue_param Structure Members |
| 6-1 | The atm_vc_stats Structure Members |
| 7-1 | Aging Parameter Values |
| 8-1 | The atm_mmi_path Structure Members |
| Index |