📄 rfc1378.txt
字号:
Network Working Group B. Parker
Request for Comments: 1378 Cayman Systems
November 1992
The PPP AppleTalk Control Protocol (ATCP)
Status of this Memo
This RFC specifies an IAB standards track protocol for the Internet
community, and requests discussion and suggestions for improvements.
Please refer to the current edition of the "IAB Official Protocol
Standards" for the standardization state and status of this protocol.
Distribution of this memo is unlimited.
Abstract
The Point-to-Point Protocol (PPP) [1] provides a standard method of
encapsulating Network Layer protocol information over point-to-point
links. PPP also defines an extensible Link Control Protocol, and
proposes a family of Network Control Protocols (NCPs) for
establishing and configuring different network-layer protocols.
This document defines the NCP for establishing and configuring the
AppleTalk Protocol [3] over PPP.
This memo is a joint effort of the AppleTalk-IP Working Group and the
Point-to-Point Protocol Working Group of the Internet Engineering
Task Force (IETF). Comments on this memo should be submitted to the
ietf-ppp@ucdavis.edu mailing list.
Table of Contents
1. Introduction .......................................... 2
2. A PPP Network Control Protocol (NCP) for AppleTalk .... 2
2.1 Sending AppleTalk Datagrams ........................... 3
2.2 Half-Routers .......................................... 4
3. ATCP Configuration Options ............................ 4
3.1 AppleTalk-Address ..................................... 5
3.2 Routing-Protocol ...................................... 7
3.3 Suppress-Broadcasts ................................... 8
3.4 AT-Compression-Protocol ............................... 9
3.5 Server-information .................................... 10
3.6 Zone-Information ...................................... 12
3.7 Default-Router-Address ................................ 13
APPENDICES ................................................... 14
A. ATCP Recommended Options .............................. 14
REFERENCES ................................................... 15
Parker [Page 1]
RFC 1378 PPP ATCP November 1992
ACKNOWLEDGEMENTS ............................................. 15
SECURITY CONSIDERATIONS ...................................... 16
CHAIR'S ADDRESS .............................................. 16
AUTHOR'S ADDRESS ............................................. 16
1. Introduction
PPP has three main components:
1. A method for encapsulating datagrams over serial links.
2. A Link Control Protocol (LCP) for establishing, configuring,
and testing the data-link connection.
3. A family of Network Control Protocols (NCPs) for establishing
and configuring different network-layer protocols.
In order to establish communications over a point-to-point link, each
end of the PPP link must first send LCP packets to configure and test
the data link. After the link has been established and optional
facilities have been negotiated as needed by the LCP, PPP must send
NCP packets to choose and configure one or more network-layer
protocols. Once each of the chosen network-layer protocols has been
configured, datagrams from each network-layer protocol can be sent
over the link.
The link will remain configured for communications until explicit LCP
or NCP packets close the link down, or until some external event
occurs (an inactivity timer expires or network administrator
intervention).
2. A PPP Network Control Protocol (NCP) for AppleTalk
The AppleTalk Control Protocol (ATCP) is responsible for configuring,
enabling, and disabling the AppleTalk protocol modules on both ends
of the point-to-point link. ATCP uses the same packet exchange
machanism as the Link Control Protocol (LCP). ATCP packets may not
be exchanged until PPP has reached the Network-Layer Protocol phase.
ATCP packets received before this phase is reached should be silently
discarded.
The AppleTalk Control Protocol is exactly the same as the Link
Control Protocol [1] with the following exceptions:
Frame Modifications
The packet may utilize any modifications to the basic frame format
which have been negotiated during the Link Establishment phase.
Parker [Page 2]
RFC 1378 PPP ATCP November 1992
Data Link Layer Protocol Field
Exactly one ATCP packet is encapsulated in the Information field
of a PPP Data Link Layer frame where the Protocol field indicates
type hex 8029 (AppleTalk Control Protocol).
Code field
Only Codes 1 through 7 (Configure-Request, Configure-Ack,
Configure-Nak, Configure-Reject, Terminate-Request, Terminate-Ack
and Code-Reject) are used. Other Codes should be treated as
unrecognized and should result in Code-Rejects.
Timeouts
ATCP packets may not be exchanged until PPP has reached the
Network-Layer Protocol phase. An implementation should be
prepared to wait for Authentication and Link Quality Determination
to finish before timing out waiting for a Configure-Ack or other
response. It is suggested that an implementation give up only
after user intervention or a configurable amount of time.
Configuration Option Types
ATCP has a distinct set of Configuration Options, which are
defined below.
2.1. Sending AppleTalk Datagrams
Before any AppleTalk packets may be communicated, PPP must reach the
Network-Layer Protocol phase, and the AppleTalk Control Protocol must
reach the Opened state.
Unless otherwise negotiated (via option 4), exactly one AppleTalk
packet is encapsulated in the Information field of a PPP Data Link
Layer frame where the Protocol field indicates type hex 0029
(AppleTalk).
Note that the negotiation of compression may imply the use of
different encapsulation and hence different protocol fields. These
different protocol fields imply packet types which are sub-protocols
of the base AppleTalk NCP.
An encapsulated AppleTalk packet begins with an extended DDP
(Datagram Delivery Protocol) header -- also known as a Long DDP
header. The maximum length of a DDP datagram is 599 octets.
Since there is no standard method for fragmenting and reassembling
Parker [Page 3]
RFC 1378 PPP ATCP November 1992
AppleTalk datagrams, it is required that PPP links supporting
AppleTalk allow at least 599 octets in the information field of a
data link layer frame.
2.2. Half-Routers
One model for routers in [3] is two remote AppleTalk routers linked
as "half-routers" without a Node ID or Network number assigned to
either side of the link. When acting as half-routers, the only
effect on transported packets is that the hop count is incremented
when it is received over the link. Routing updates received over a
half-router link should also increment the hop count of routing table
updates.
As part of normal operation, AppleTalk will send RTMP Routing updates
every 10 seconds.
3. ATCP Configuration Options
ATCP Configuration Options allow negotiation of desirable AppleTalk
parameters. ATCP uses the same Configuration Option format defined
for LCP [1], with a separate set of Options.
The most up-to-date values of the ATCP Option Type field are
specified in the most recent "Assigned Numbers" RFC [2]. Current
values are assigned as follows:
1 AppleTalk-Address
2 Routing-Protocol
3 Suppress-Broadcasts
4 AT-Compression-Protocol
5 RESERVED
6 Server-information
7 Zone-information
8 Default-Router-Address
Parker [Page 4]
RFC 1378 PPP ATCP November 1992
3.1. AppleTalk-Address
Description
This Configuration Option provides a way to negotiate the
AppleTalk network and node number to be used on the local end of
the link. It allows the sender of the Configure-Request to state
which AppleTalk-address is desired, or to request that the peer
provide the information. The peer can provide this information by
NAKing the option, and returning a valid AppleTalk-address.
If negotiation about the remote AppleTalk-address is required, and
the peer did not provide the option in its Configure-Request, the
option SHOULD be appended to a Configure-Nak. The value of the
AppleTalk-address given must be acceptable as the remote
AppleTalk-address, or indicate a request that the peer provide the
information.
By default, no AppleTalk address is assigned. A network or node
number specified as zero in a Configure-Request shall be
interpreted as requesting the remote end to specify a value via a
Configure-Nak. A network or node number specified as zero in a
Configure-Ack shall be interpreted as agreement that no value
exists.
An implementation which requires that no AppleTalk addresses be
assigned (such as a intermediate system to intermediate system
"half-routing") MUST Configure-Reject all AppleTalk-Address
Configuration Options.
An implementation which requires that AppleTalk addresses be
assigned to it (such as a end system) MUST fail configuration if
the remote side Configure-Rejects all AppleTalk-Address requests,
or fails to provide a valid value.
If this option is negotiated, the two sides MUST negotiate a
common AppleTalk network number and two unique Appletalk node
numbers. The network number MAY be zero but the Appletalk node
numbers MUST be non-zero. Values selected for network and node
numbers must adhere to the ranges defined in [3].
The AppleTalk protocol, phase 2, defines the concept of "extended"
and "non-extended" networks. Extended networks can support a
large number (hundreds) of nodes, and requires multiple network
numbers and multiple zone names to be managed effectively. Non-
extended networks can only support a small number of devices, and
require only a single network number and zone name to be managed
effectively.
Parker [Page 5]
RFC 1378 PPP ATCP November 1992
If a PPP link transporting AppleTalk is assigned an AppleTalk
address, it must have the "non-extended" characteristics as
defined in [3].
The format of the network and node data is defined to be the same
as the "AppleTalk address" in [3], chapter 3, "AppleTalk AARP
packet formats on Ethernet and token ring".
A summary of the AppleTalk-Address Configuration Option format is
shown below. The fields are transmitted from left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Reserved | AT-Net |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AT-Net | AT-Node |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
1
Length
6
Reserved
This octet is reserved and MUST be set to zero on transmission and
ignored on reception.
AT-Net
The two octet AT-Net is the desired local AppleTalk network number
of the sender of the Configure-Request. This two octet quantity
represents a 16 bit unsigned number sent "network byte order"
(most significant octet first).
AT-Node
The one octet AT-Node is the desired local AppleTalk node ID of
the sender of the Configure-Request.
Parker [Page 6]
RFC 1378 PPP ATCP November 1992
3.2. Routing-Protocol
Description
This Configuration Option provides a way to negotiate the use of a
specific routing protocol. In particular, "half-routers" may want
to exchange routing information using a protocol optimized for the
PPP connection. By default, AppleTalk RTMP (Routing Table
Maintenance Protocol) routing information is sent over the PPP
connection.
By default, AppleTalk RTMP routing information is sent over the
PPP connection.
A summary of the Routing-Protocol Configuration Option format is
shown below. The fields are transmitted from left to right.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Routing-Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data ...
+-+-+-+-+
Type
2
Length
>= 4
Routing-Protocol
The Routing-Protocol field is two octets and indicates the type of
Routing-Protocol desired. This two octet quantity represents a 16
bit number sent "network byte order" (most significant octet
first).
Negotiation of some routing protocols implies that you will
receive packet types which transport these protocols.
For example, negotiating AppleTalk AURP to exchange routing
information implies both sides will accept EDDP type packets,
since this is the transport type used by AURP.
Parker [Page 7]
RFC 1378 PPP ATCP November 1992
Initial values are assigned as follows:
Value Protocol
0 No routing information exchange
1 AppleTalk RTMP is used to exchange routing information
2 AppleTalk AURP is used to exchange routing information
3 AppleTalk ABGP is used to exchange routing information
Data
The Data field is zero or more octets and contains additional data
as determined by the routing protocol indicated in the Routing-
Protocol field.
None of the Routing-Protocol options defined here require
additional data.
3.3. Suppress-Broadcasts
Description
This Configuration Option provides a way to negotiate the
suppression of AppleTalk broadcast datagrams which might otherwise
use up limitted PPP bandwidth. This Configuration Option is used
to inform the remote end that no AppleTalk broadcast datagrams of
a given DDP type should be sent.
This option is useful when negotiated by a single end system. It
allows the local end system to request that broadcast packets
generated on a remote network not be propagated across the PPP
link. In the case of a single end system connected to a large
network, this can be used to suppress regular NBP lookups
generated by other end systems on the remote network. This will
mean that protocols such as NBP can no longer be used to find
network entities on the local system, but since the option
configuration is asymmetric, it does not inhibit the local
system's ability to find network entities on the remote network.
By default, no AppleTalk broadcast datagrams are suppressed. Note
that this option may conflict with other options (such as Routing
Protocol). If so, the Suppress-Broadcasts option takes
precedence.
A summary of the Suppress-Broadcasts Configuration Option format is
shown below. The fields are transmitted from left to right.
Parker [Page 8]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -