Network Computing Architecture

Lisa Zahn, Terence H. Dineen, Paul J. Leach, Elizabeth A. Martin, Nathaniel W. Mishkin, Joseph N. Pato, Geoffrey L. Wyant

Publisher: Prentice Hall, 1990, 209 pages

ISBN: 0-13-611674-4

Keywords: IT Architecture

Last modified: June 6, 2021, 11:10 a.m.

The Network Computing Architecture (NCA) is an architecture designed for the development of distributed applications. Network Computing Architecture (NCA) Protocol Specifications provides protocol specifications for NCA components that systems architects and programmers can use when implementing NCA. The document defines and describes the following NCA components:

  • The NCA Remote Procedure Call (NCA/RPC) facility, which extends the procedure call mechanism from a single-machine implementation to a distributed computing environment.
  • The Network Interface Definition Language (NIDL), which is a language designed for the specification of remote interfaces; that is, procedures to be invoked through the NCA/RPC mechanism,
  • The Network Data Representation protocol (NDR), which defines how the structured values supplied in a call to a remote interface are to be encoded into byte stream format for network transmission via NCA/RPC.
  • The Location Broker protocol (NCA/LB), which specifies the network interfaces for a highly available location service.
  1. An Overview of NCA
    1. Heterogeneous Interconnect
      1. NCA Remote Procedure Call Facility
        1. NCA/RPC Components
        2. NCA/RPC Protocol Summary
      2. Network Interface Definition Language
      3. Network Data Representation
        1. Data Representation Protocol
        2. Data Conversion Protocol
    2. Network Broker Architecture
  2. NCA Fundamentals
    1. The Object Model
    2. Universal Unique Identifiers
  3. NCA Network Model
    1. Socket Abstraction
    2. Unreliable Datagram Service
      1. Minimal Remote Call Overhead
      2. Predictable Remote Call Semantics
      3. Transport Layer Availability
  4. NCA/RPC Packet Definition
    1. Packet Header
      1. Protocol Version Number
      2. Packet Type
      3. Flags
      4. Data Representation Format Label
      5. Object Identifier
      6. Interface Identifier
      7. Activity Identifier
      8. Server Boot Time
      9. Interface Version
      10. Sequence Number
      11. Operation Number
      12. Interface Hint
      13. Activity Hint
      14. Packet Body Length
      15. Fragment Number
    2. Packet Structure
      1. Client-Initiated Packet Structures
      2. Server-Initiated Packet Structures
  5. NCA/RPC Finite State Machine Definitions, Notations, and Conventions
    1. Definitions
      1. Inputs
      2. Input Bundles
      3. Conditions
      4. Actions
    2. Notations
      1. Component Notation
      2. Fragment Notation
    3. FSM Table Conventions
  6. NCA/RPC Client Protocol Specification
    1. Response Message Acceptance Criteria
    2. Client Timeouts
    3. Client Actions
    4. Client Action Input Data
    5. Client Constants
    6. Client Global Variables
    7. Client Primitives
    8. Client FSM Tables
    9. Client Primitive Syntax Description
  7. NCA/RPC Server Protocol Specification
    1. Server Timeouts
    2. Execution Engine Notifications
    3. Execution Engine Notification Input Data
    4. Server Constants
    5. Server Global Variables
    6. Server Primitives
    7. Server FSm Tables
    8. Server Primitive Syntax Descriptions
  8. Conversation Manager Interface
  9. NIDL Grammar
    1. Interface Definition Structre
      1. Interface Header
      2. Interface Body
    2. Interface Attributes
      1. UUID
      2. Version
      3. Port
      4. Implicit_Handle
    3. Import Declaration
    4. Constant Declaration
    5. Type Declarations
      1. Type Attributes
        1. Transmit_As
        2. Handle
      2. Simple Type
        1. Integer Types
        2. Floating-Point Types
        3. Char Type
        4. Boolean Type (NIDL/C)
        5. Byte Type
        6. Void Type (NIDL/C)
        7. Named Type
        8. Handle_t Type
      3. Constructed Types
        1. Structure and Unions (NIDL/C)
        2. Records and Variant Records (NIDL/Pascal)
        3. Enumerations
        4. Subrange (NIDL/Pascal)
        5. Sets
        6. Strings
        7. Pointers
        8. Function Pointers
        9. Reference Pointers (NIDL/C)
        10. Arrays
    6. Operation Declaration
      1. Routine Attributes
        1. Idempotent Attribute
        2. Broadcast Attribute
        3. Maybe Attribute
      2. Parameter Declarations
        1. Field Attributes
        2. Directional Attributes
        3. Reference Attribute (NIDL/Pascal)
        4. Communications Status Attribue
      3. Semantics of a Call to an Operation in a Remote Interface
  10. Network Data Representation
    1. NDR Transmissible Types and Their Representations
      1. Boolean
      2. Character
      3. Integer
      4. Floating-Point Types
        1. IEEE Format
        2. VAX Format
        3. Cray Format
        4. IBM Format
      5. Byte
    2. Constructed and Aggregate Types
      1. Fixed Arrays
      2. Open Arrays
      3. Varying Arrays
      4. Records
      5. Variant Records
      6. Open Records
      7. Zero-Terminated Strings
    3. Data Representation Format Label
  11. NCA/LB Specification
    1. NCA/LB Data Types and Constants
    2. NCA/LB Error Codes
    3. GLB and LLB Operations
  1. NIDL yacc Input Specification
  2. NCA Base Network Data Types
  3. NCA Status Codes
  4. ASCII/EBCDIC Conversion Tables

Reviews

Network Computing Architecture

Reviewed by Roland Buresund

Very Good ******** (8 out of 10)

Last modified: June 6, 2021, 2:32 a.m.

The book about Apollo's NCA (later to become OSF/DCE-RPC and MS-RPC). Very good, in fact.

Comments

There are currently no comments

New Comment

required

required (not published)

optional

required

captcha

required