rfc1989.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 900 行 · 第 1/2 页
TXT
900 行
Network Working Group W. Simpson
Request for Comments: 1989 Daydreamer
Obsoletes: 1333 August 1996
Category: Standards Track
PPP Link Quality Monitoring
Status of this Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) 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 for
transporting multi-protocol datagrams over point-to-point links.
PPP also defines an extensible Link Control Protocol, which allows
negotiation of a Quality Protocol for continuous monitoring of the
viability of the link.
This document defines a protocol for generating Link-Quality-Reports.
Table of Contents
1. Introduction .......................................... 2
2. Link Quality Monitoring ............................... 2
2.1 Design Motivation ............................... 2
2.2 Counters ........................................ 3
2.3 Counting Packets and Octets ..................... 4
2.4 Processes ....................................... 5
2.5 Configuration Option Format ..................... 6
2.6 Packet Format ................................... 8
2.7 Transmission of Reports ......................... 12
2.8 Calculations .................................... 12
2.9 Failure Detection ............................... 13
2.10 Policy Suggestions .............................. 14
SECURITY CONSIDERATIONS ...................................... 15
ACKNOWLEDGEMENTS ............................................. 15
REFERENCES ................................................... 15
CHAIR'S ADDRESS .............................................. 16
AUTHOR'S ADDRESS ............................................. 16
Simpson Standards Track [Page 1]
RFC 1989 PPP Link Quality Monitoring August 1996
1. Introduction
In order to establish communications over a point-to-point link, each
end of the PPP link must first send LCP packets to configure the data
link during Link Establishment phase. During the Authentication and
Network-Layer Protocol phases, the link may be tested to determine if
quality is sufficient for operation. This testing is completely
optional.
If an implementation desires that the peer use some specific link
quality monitoring protocol, then it MUST negotiate the use of that
protocol using the Quality-Protocol Configuration Option during Link
Establishment phase.
The negotiation mechanism is independent in each direction. However,
if the peer agrees to send Quality-Protocol packets, it MUST
correctly process such packets on reception, even if it does not
request such packets or implement a monitoring policy.
2. Link Quality Monitoring
Data communications links are rarely perfect. Packets can be dropped
or corrupted for various reasons (line noise, equipment failure,
buffer overruns, etc.). Sometimes, it is desirable to determine
when, and how often, the link is dropping data. For example, routers
may want to temporarily allow another route to take precedence. An
implementation may also have the option of disconnecting and
switching to an alternate link. The process of determining data loss
is called "Link Quality Monitoring".
2.1. Design Motivation
There are many different ways to measure link quality, and even more
ways to react to it. Rather than specifying a single scheme, Link
Quality Monitoring is divided into a "mechanism" and a "policy". PPP
fully specifies the "mechanism" for Link Quality Monitoring by
defining the Link-Quality-Report (LQR) packet and specifying a
procedure for its use.
PPP does NOT specify a Link Quality Monitoring "policy" -- how to
judge link quality or what to do when it is inadequate. That is left
as an implementation decision, and can be different at each end of
the link. Implementations are allowed, and even encouraged, to
experiment with various link quality policies. The Link Quality
Monitoring mechanism specification ensures that two implementations
with different policies may communicate and interoperate.
Simpson Standards Track [Page 2]
RFC 1989 PPP Link Quality Monitoring August 1996
To allow flexible policies to be implemented, the PPP Link Quality
Monitoring mechanism measures data loss in units of packets, octets,
and Link-Quality-Reports. Each measurement is made separately for
each half of the link, both inbound and outbound. All measurements
are communicated to both ends of the link, so that each end of the
link can implement its own link quality policy for both its outbound
and inbound links.
Finally, the Link Quality Monitoring protocol is designed to be
implementable on many different kinds of systems. Although it may be
common to implement PPP (and especially Link Quality Monitoring) as a
single software process, multi-process implementations with hardware
support are also envisioned. The PPP Link Quality Monitoring
mechanism provides for careful definition of the Link-Quality-Report
packet format, and specifies reference points for all data
transmission and reception measurements.
2.2. Counters
Each Link Quality Monitoring implementation maintains counts of the
number of packets and octets transmitted and successfully received,
and periodically transmits this information to its peer in a Link-
Quality-Report packet.
These counters are similar to sequence numbers; they are constantly
increasing to give a "relative" indication of the number of packets
and octets communicated across the outbound link. By comparing the
values in successive Link-Quality-Reports, an LQR receiver can
compute the "delta" number of packets and octets successfully
communicated across the link. Comparing these absolute numbers then
gives an indication of a link's quality. Relative numbers, rather
than absolute, are transmitted because they greatly simplify link
synchronization.
The Link-Quality-Report uses the Interface counters defined by SNMP
MIB-II [2]. These counters are not initialized to any particular
value when the LCP enters the Establishment phase.
In addition, the Link-Quality-Report requires the implementation of
the following three unsigned, monotonically increasing counters which
conform to the type and size requirements for SNMP MIB Counters [3].
Simpson Standards Track [Page 3]
RFC 1989 PPP Link Quality Monitoring August 1996
OutLQRs
OutLQRs is a 32-bit counter which increases by one for each
tranmitted Link-Quality-Report packet. This counter MUST be set
to zero when the LCP enters the Establishment phase, and MUST NOT
be reset until the LCP leaves the Termination phase. This counter
is incremented before it is inserted into the LQR packet.
InLQRs
InLQRs is a 32-bit counter which increases by one for each
received Link-Quality-Report packet. This counter MUST be set to
zero when the LCP enters the Establishment phase, and MUST NOT be
reset until the LCP leaves the Termination phase. This counter is
incremented before it is inserted (in an implementation dependent
fashion) into the LQR packet.
InGoodOctets
InGoodOctets is a 32-bit counter which increases by the number of
octets in each successfully received Data Link Layer packet.
Unlike the MIB ifInOctets, octets for frames which are counted in
ifInDiscards and ifInErrors MUST NOT be counted. This counter MAY
be set to any initial value when the LCP enters the Establishment
phase, but MUST NOT be reset until the LCP leaves the Termination
phase.
2.3. Counting Packets and Octets
The intent of the counters is to provide an indication of the amount
of information passing over the link, rather than an actual
measurement of the total bandwidth used. This specification is
designed to yield the same count in various circumstances, such as
when a separate device provides the framing and escaping mechanisms
invisibly to the implementation, or a synchronous-to-asynchronous
converter in the link changes between mechanisms.
All octets which are included in the FCS calculation MUST be counted,
including the packet header, the information field, and any padding.
The FCS octets MUST also be counted, and one flag octet per frame
MUST be counted. All other octets (such as additional flag
sequences, and escape bits or octets) MUST NOT be counted.
When inserting the packet and octet counts in the LQR, the counts
MUST include the expected values for the LQR itself.
Simpson Standards Track [Page 4]
RFC 1989 PPP Link Quality Monitoring August 1996
2.4. Processes
The PPP Link Quality Monitoring mechanism is described using a
"logical process" model. As shown below, there are five logical
processes duplicated at each end of the duplex link.
+---------+ +-------+ +----+ Outbound
| |-->| Mux |-->| Tx |=========>
| Link- | +-------+ +----+
| Manager |
| | +-------+ +----+ Inbound
| |<--| Demux |<--| Rx |<=========
+---------+ +-------+ +----+
Link-Manager
The Link-Manager process transmits and receives Link-Quality-
Reports, and implements the desired link quality policy. LQR
packets are transmitted at a constant rate, which is negotiated by
the LCP Quality-Protocol Configuration Option.
Mux
The Mux process multiplexes packets from the various protocols
(e.g., LCP, IP, XNS, etc.) into a single, sequential, and
prioritized stream of packets. Link-Quality-Report packets MUST
be given the highest possible priority to insure that link quality
information is communicated in a timely manner.
Tx
The Tx process maintains the MIB counters ifOutUniPackets and
ifOutOctets, and the internal counter OutLQRs, which are used to
measure the amount of data which is transmitted on the outbound
link. When Tx processes a Link-Quality-Report packet, it inserts
the values of these counters into the corresponding PeerOut...
fields of the packet. The Tx process MUST follow the Mux process
so that packets are counted in the order transmitted to the link.
Rx
The Rx process maintains the MIB counters ifInUniPackets,
ifInDiscards, ifInErrors and IfInOctets, and the internal counters
InLQRs and InGoodOctets, which are used to measure the amount of
data which is received by the inbound link. When Rx processes a
Link-Quality-Report packet, it inserts the values of these
counters into the corresponding SaveIn... fields of the packet (in
Simpson Standards Track [Page 5]
RFC 1989 PPP Link Quality Monitoring August 1996
an implementation dependent manner).
Demux
The Demux process demultiplexes packets for the various protocols.
The Demux process MUST follow the Rx process so that packets are
counted in the order received from the link.
2.5. Configuration Option Format
Description
Implementations MUST be prepared to receive the Quality-Protocol
Configuration Option for the Link-Quality-Report. However,
negotiation is not required. Negotiation is only necessary when
the implementation wishes to ensure that the peer transmits Link-
Quality-Reports as opposed to some other Quality-Protocol, or else
to prevent the peer from maintaining its own timer, or else to
establish a maximum time between transmissions of Link-Quality-
Reports.
A summary of the Quality-Protocol Configuration Option format to
negotiate the Link-Quality-Report 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 | Quality-Protocol |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reporting-Period |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
4
Length
8
Quality-Protocol
c025 (hex) for Link-Quality-Report
Simpson Standards Track [Page 6]
RFC 1989 PPP Link Quality Monitoring August 1996
Reporting-Period
The Reporting-Period field is four octets and indicates the
maximum time in hundredths of seconds between transmission of
packets. The peer MAY transmit packets at a faster rate than that
which was negotiated.
A value of zero indicates that the peer does not need to maintain
a timer. Instead, the peer generates a LQR immediately upon
receiving a LQR. A value of zero MUST be Nak'd by the peer with
an appropriate non-zero value when that peer has sent or will send
a Configure-Request packet containing the Quality-Protocol
Configuration Option for the Link-Quality-Report with a zero
Reporting-Period.
Simpson Standards Track [Page 7]
RFC 1989 PPP Link Quality Monitoring August 1996
2.6. Packet Format
Exactly one Link-Quality-Report packet is encapsulated in the
Information field of PPP Data Link Layer frames where the protocol
field indicates type hex c025 (Link-Quality-Report). A summary of
the LQR packet format is shown below. The names of the fields are
relative to the packet receiver, since it is the receiver who
requested the packet in the Configuration Option. 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Magic-Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LastOutLQRs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LastOutPackets |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LastOutOctets |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerInLQRs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerInPackets |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerInDiscards |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerInErrors |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerInOctets |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerOutLQRs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerOutPackets |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PeerOutOctets |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The following fields are not actually transmitted over the inbound
link. Rather, they are logically appended (in an implementation
dependent manner) to the packet by the implementation's Rx process.
Simpson Standards Track [Page 8]
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?