Previous Book Contents Book Index Next

Inside Macintosh: Networking /


Chapter 12 - Multinode Architecture

This chapter describes how you can use AppleTalk's multinode architecture to acquire one or more node IDs, called multinodes, in addition to the standard user node ID. Multinode architecture is an AppleTalk feature that is provided to meet the needs of special-purpose applications that receive and process AppleTalk packets in a custom manner instead of passing them directly on to a higher-level AppleTalk protocol for processing. A multinode ID allows the system that is running your application to appear as multiple nodes on the network. The prime example of a multinode application is Apple Remote Access (ARA).

A multinode ID is distinct from the user node ID. AppleTalk separates packets addressed to a multinode from those addressed to the user node sockets on the same machine,
and it passes the multinode packets on to a receive routine that you must supply for
the multinode.

Multinode architecture is implemented in the .MPP driver and exists at the same level of the AppleTalk protocol stack as does the Datagram Delivery Protocol (DDP), but unlike DDP, multinode does not use DDP sockets, nor is it connected to the AppleTalk protocol stack above the data-link level.

This chapter describes the fundamental tasks that you perform to

Because multinode is not connected to the AppleTalk protocol stack above the data-link level, if you want your multinode application to be compatible with AppleTalk, you must implement the higher-level AppleTalk protocols. Multinode also requires that you code
a receive routine in assembly language. For these reasons, you should consider using multinode only if your application requires that you process AppleTalk packets in a custom manner. You do not need to use the multinode architecture for other application requirements.

The receive routine that you must provide to handle packets addressed to your multinode ID is similar to the DDP socket-listener code that an application must include to receive packets addressed to its DDP socket. The chapter "Datagram Delivery Protocol (DDP)" in this book describes how to write a socket listener, which provides useful background information on how to write a multinode receive routine.

At the data-link level, multinode architecture relies on the AppleTalk connection file
of type 'adev' that is implemented for a particular link type. For more informa-
tion about AppleTalk connection files, see the Macintosh AppleTalk Connections Programmer's Guide.

For information describing how to implement the higher-level AppleTalk protocols, see Inside AppleTalk, second edition.


Chapter Contents
About Multinode Architecture
Using Multinode Architecture
Acquiring and Removing Multinodes
Handling an AppleTalk Cable-Range-Change Transition Event
Receiving Packets Addressed to Your Multinode
Calling ReadPacket to Read in the Packet Contents
Calling ReadRest to Complete Reading in the Packet Contents
Sending Packets Using a Multinode
Preparing a Write-Data Structure
Using a Checksum
Multinode Architecture Reference
Data Structures
The Write-Data Structure
The Address Block Record
The Multinode Parameter Block
Routines
DESCRIPTION
Adding and Removing Multinode Addresses
Sending Datagrams Through Multinodes
Summary of Multinode Architecture
Pascal Summary
Constants
Data Types
The Write-Data Structure
The Address Block Record
The Multinode Parameter Block
C Summary
Constants
Data Types
The Write-Data Structure
The Address Block Record
The MPP Parameter Block for Multinode
Assembly-Language Summary
MPP Parameter Block Common Fields for Multinode Routines
AddNode Parameter Variant
RemoveNode Parameter Variant
NetWrite Parameter Variant
Result Codes

Previous Book Contents Book Index Next

© Apple Computer, Inc.
7 JUL 1996