Internetworking Over NBMA James V. Luciani
INTERNET-DRAFT (Bay Networks)
<draft-ietf-ion-scsp-atmarp-00.txt> Barbara Fox
(Harris & Jeffries)
Expires September 1997
A Distributed ATMARP Service Using SCSP
Status of this Memo
This document is an Internet-Draft. Internet-Drafts are working
documents of the Internet Engineering Task Force (IETF), its areas,
and its working groups. Note that other groups may also distribute
working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as ``work in progress.''
To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
Directories on ds.internic.net (US East Coast), nic.nordu.net
(Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
Rim).
Abstract
This document describes a method for distributing an ATMARP service
within a LIS[1]. This method uses the Server Cache Synchronization
Protocol (SCSP)[2] to synchronize the ATMARP server databases within
a LIS. When SCSP is used to synchronize the caches of ATMARP servers
in a LIS, the LIS defines the boundary of an SCSP Server Group (SG).
1. Introduction
An ATMARP Client implicitly registers (e.g., by sending an ATMARP
Request for itself; see [1]) and refreshes its own ATMARP information
with a single ATMARP server in its atm$arp-req-list table. In
addition, the ATMARP Client uses the ATMARP service to gain access to
and re-validate ATMARP information about other ATMARP Clients in its
Logical IP Subnet (LIS). Since, there MAY be multiple ATMARP servers
in a given LIS, and since any ATMARP server within the LIS MUST be
Luciani, Fox [Page 1]
INTERNET-DRAFT SCSP Expires September 1997
able to reply to ATMARP requests for ATMARP information about any
ATMARP Clients within the LIS, there MUST be a method by which to
synchronize ATMARP information across all ATMARP Servers within the
LIS. The Server Cache Synchronization Protocol (SCSP) solves the
generalized server synchronization/cache-replication problem for
distributed databases, and thus SCSP MAY be applied to the ATMARP
server database synchronization problem with the LIS. When SCSP is
used to synchronize the caches of ATMARP servers in a LIS, the LIS
defines the boundary of an SCSP Server Group (SG).
SCSP is defined in two parts: the protocol independent part and the
client/server protocol specific part. The protocol independent part
is specified in [2] whereas this document will specify the
client/server protocol specific part where ATMARP is the
client/server protocol.
2. Overview
All ATMARP servers belonging to a Logical IP Subnet (LIS)[1] are said
to belong to a Server Group (SG). An SG is identified by, not
surprisingly, its SGID which is contained in a field in all SCSP
packets. All SCSP packets contain a Protocol ID (PID) field as well.
This PID field is set to 0x0001 to signify that SCSP is synchronizing
ATMARP server databases as opposed to synchronizing some other
protocol's databases (see Section B.2.0.1 of [2] for more details).
In general, PIDs for SCSP will be assigned by IANA upon request given
that a client/server protocol specific specification has been
written. In the case of ATMARP, the client/server protocol specific
specification was initially written at the same time as SCSP, and
thus a PID=0x0001 was assigned by the author.
SCSP places no topological requirements upon an ATMARP SG.
Obviously, however, the resultant graph of ATMARP servers must span
the set of ATMARP servers to be synchronized. For more information
about the client/server protocol independent part of SCSP, the reader
is encouraged to see [2].
When an ATMARP SG is using SCSP for synchronization, a given ATMARP
Client will use only one ATMARP server and it will use that server
for remainder of its participation in the SG. This server is said to
be the "serving ATMARP server." There needs to be some hysteresis on
refreshes since every ATMARP Request may cause a cache update/refresh
in the serving ATMARP Server, and such refreshes might cause
excessive traffic if propagated to all ATMARP Servers in the SG. In
the case of mere refreshes, where no change occurs to the ATMARP
Server's cache entry for the ATMARP Client, SCSP updates will occur
at a maximum rate of once every 10+Random(2) minutes.
Luciani, Fox [Page 2]
INTERNET-DRAFT SCSP Expires September 1997
When an ATMARP client has left a server group (e.g., as the result of
a crash), it MUST NOT rejoin the SG by generating new ATMARP requests
to any other ATMARP Server than the one it previously used for a
period of time greater than 20 minutes minus the time since the last
ATMARP request was made by the ATMARP Client. This is necessary
because no mechanism exists to tell the ATMARP service that the
ATMARP Client has left the SG and because ATMARP Server table entries
are valid for 20 minutes from the time the entries are
created/updated.
3. Format of the CSA Record ATMARP Specific Part
CSA Records in SCSP contain a "Client/Server Protocol Specific Part"
which contains the non-protocol independent information for a given
server's cache entry.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Hardware Type | Protocol Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| State | ATM Addr T/L |ATM SubAddr T/L| Proto Addr Len|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ATM Address (variable length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ATM SubAddress (variable length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Protocol Address (variable length) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
With the exception of the State and unused fields, these fields
contain the values specified in the ATMARP Request and Reply packets
defined in [1] which are used to create, update, and access ATMARP
server cache entries.
Hardware Type
Defines the type of "link layer" addresses being carried. This
value is the ATM Forum 'address family number' specified in [3] as
19 decimal (0x0013). This is the ar$hrd field defined in [1].
Protocol Type
This field is the protocol type number for the protocol using
ATMARP from [3]. (IP is 0x0800). This is the ar$pro field from
[1].
State
This field contains a value which represents the new state of the
Luciani, Fox [Page 3]
INTERNET-DRAFT SCSP Expires September 1997
client.
0 - New client available.
1 - Client entry has been updated.
Note that a time-out of a cache entry does not cause a CSA Record
to be sent because, if everything is working properly then all
ATMARP servers have the cache entry timing out at the same time.
Thus, the individual servers would take the appropriate actions
necessary.
ATM Addr T/L
This field contains the type and length of the ATM Address field.
The type and length encodings are described in Section 8.7.3 of
[1].
ATM SubAddr T/L
This field contains the type and length of the ATM SubAddress
field. The type and length encodings are described in Section
8.7.3 of [1].
Proto Addr Len
This field contains the length of the Protocol Address field. For
IPv4, the value is 4.
ATM Number
This is the ATM address of an address binding in an ATMARP server
cache entry. The address, if specified, is E.164 or ATM Forum
NSAPA.
ATM Subaddress
This is the ATM subaddress of an address binding in an ATMARP
server cache entry. The subaddress, if specified, is an ATM Forum
NSAPA. If null, no storage will be allocated.
Protocol Address
This is the internetwork address of an address binding in an ATMARP
server cache entry.
4. Values for SCSP Protocol Independent Part
The following sections give values for fields of the SCSP Protocol
Independent Part of the various SCSP messages.
Luciani, Fox [Page 4]
INTERNET-DRAFT SCSP Expires September 1997
4.1 Values for the SCSP "Mandatory Common Part"
Protocol ID = 0x0001
Sender ID Len = 0x04
Recvr ID Len = 0x04
See Section B.2.0.1 of [2] for a detailed description of these
fields.
4.2 Values for the SCSP "CSAS Record"
Cache Key Len = 0x04
Orig ID Len = 0x04
See Section B.2.0.2 of [2] for a detailed description of these
fields.
References
[1] "Classic IP and ARP over ATM", Mark Laubach and Joel Halpern,
draft-ion-ipatm-classic2-02.txt, March, 1997.
[2] "Server Cache Synchronization Protocol", Luciani, Armitage, Halpern,
draft-ietf-ion-scsp-01.txt.
[3] Assigned Numbers, J. Reynolds and J. Postel, RFC 1700.
Acknowledgments
I would also like to thank the members of the ION working group of
the IETF, whose review and discussion of this document has been
invaluable.
Luciani, Fox [Page 5]
INTERNET-DRAFT SCSP Expires September 1997
Author's Address
James V. Luciani
Bay Networks, Inc.
3 Federal Street, BL3-04
Billerica, MA 01821
phone: +1-508-916-4734
email: luciani@baynetworks.com
Barbara A. Fox
Harris & Jeffries
888 Washington Street
Dedham, MA 02026
phone: +1-617-329-3200
email: bfox@hjinc.com
Luciani, Fox [Page 6]