OSI Application Developer's Toolkit VAX OSI Applications Kernel Programming

*HyperReader

  CONTENTS

  Title Page

  Copyright Page

  Preface

  1      Introduction

  1.1     OSAK Interface

  1.2     Connections and Associations
    1.2.1      Phases of an Association
      1.2.1.1      Setup and Negotiation
      1.2.1.2      Data Exchange
      1.2.1.3      Release or Abort
    1.2.2      Exception Reports

  1.3     Application Layer Services

  1.4     Presentation Layer
    1.4.1      Syntax Conversion
    1.4.2      Presentation Context
    1.4.3      Presentation Layer Services

  1.5     Session Layer
    1.5.1      Session Layer Services
    1.5.2      Limitations of the Session Layer

  1.6     ACSE and Presentation Interface
    1.6.1      Modes of Operation
    1.6.2      Parameter Block

  1.7     User Data

  1.8     Data Segmentation
    1.8.1      Segmentation Across the OSAK Interface
    1.8.2      Segmentation Across the Session Interface

  1.9     Management of User Buffers

  1.10    Functional Units
    1.10.1     Presentation Functional Units
    1.10.2     Session Functional Units

  1.11    Activities
    1.11.1     Relationship to Associations
    1.11.2     Phases of an Activity

  1.12    Synchronization Points and Resynchronization

  1.13    Tokens

  1.14    Ways of Sending Data
    1.14.1     Normal Data
    1.14.2     Capability Data
    1.14.3     Expedited Data
    1.14.4     Typed Data

  1.15    How the OSAK Interface Uses the Transport Layer

  1.16    OSAK Trace Utility

  1.17    Addressing

  2      Planning an OSAK Application

  2.1     Running on Demand or Continuously

  2.2     Buffer Management
    2.2.1      Deciding How Much Memory to Allocate
    2.2.2      Deciding How Large to Make the Workspace Parameter
    2.2.3      Deciding on the Size and Number of User Data Buffers
    2.2.4      Deciding How to Reclaim Memory
    2.2.5      Strategies for Reclaiming Memory

  2.3     Making a Connection to a Specified Application

  2.4     Single and Multiple Associations

  2.5     Sending Data While Waiting to Receive Data

  2.6     Limited Message Size and Number

  2.7     Application Portability

  2.8     Making Trade-Offs in Your Application

  2.9     Decision Checklist

  3      Using the OSAK Interface to Set Up and Release an Association

  3.1     Calling OSAK Routines
    3.1.1      Constructing a Parameter Block
    3.1.2      Passing Parameters
      3.1.2.1      Presentation PCI Syntax
      3.1.2.2      ACSE Abstract Syntax
    3.1.3      Structure of User Buffers
    3.1.4      Checking the Status of a Call

  3.2     Setting Up an Association
    3.2.1      Getting an Identifier for the Association
    3.2.2      Preparing to Receive Inbound Events
    3.2.3      Requesting an Association
    3.2.4      Sending Data
    3.2.5      Segmenting Data

  3.3     Reclaiming Memory

  3.4     Releasing an Association

  4      Using the ASN.1 Compiler

  4.1     Need for Abstract Syntax Notation
    4.1.1      Different Data Storage Formats
    4.1.2      Abstract Syntax Notation
    4.1.3      Transfer Syntax
    4.1.4      Basic Encoding Rules

  4.2     What an ASN.1 Compiler Does

  4.3     How to Use an ASN.1 Compiler

  5      Examples

  A   Linking Your Application

  FIGURES

  1-1        How the OSAK Interface Implements the OSI Reference Model

  1-2        Confirmed Service

  1-3        Unconfirmed Service

  1-4        Use of the OSAK Redirection Service

  1-5        Structure of the Parameter Block

  3-1        Structure of User Buffers on an Outbound Call

  3-2        Structure of a List of User Buffers

  3-3        Example of How to Set up an Association

  3-4        Example of How to Release an Association

  4-1        Relationship Among Data Type, Abstract Syntax, and Transfer Syntax

  TABLES

  1-1        Services Requiring Particular Tokens

  2-1        Comparison of Static and Dynamic Memory Allocation

  A-1        Images Against Which to Link Your Application