RFC 4689

Terminology for Benchmarking Network-layer Traffic Control Mechanisms

๐Ÿ“… published October 2006, from ietf

RFC 4689: Terminology for Benchmarking Network-layer Traffic Control Mechanisms โœจ

  • Series: Network Working Group ๐ŸŒธ
  • Authors: S. Poretsky (Reef Point Systems), J. Perser (Veriwave), S. Erramilli (Telcordia), and S. Khurana (Motorola) ๐Ÿ’œ
  • Category: Informational ๐ŸŽ€
  • Date: October 2006 ๐Ÿ“
  • Obsoletes / Updates: The title block doesn't list anything this one obsoletes or updates ๐Ÿฆ‹

Status of This Memo

okay so this memo is just giving info to the Internet community ๐Ÿซถ it is NOT a specification of any Internet standard, so don't go treating it like one. Distribution is unlimited, so share away ๐ŸŒˆ

Copyright (C) The Internet Society (2006). ๐ŸŽ€

Abstract

this doc is all about terminology for benchmarking devices that do traffic control by sorting packets into classes using defined criteria โœจ the vibe is: we apply these terms to measurements taken on the data plane, so we can evaluate IP traffic control mechanisms. Classification rules can be built off any field in the IP header, like the Differentiated Services Code Point (DSCP), or any field in the packet payload, like port number ๐Ÿ’…

Table of Contents

   1. Introduction ....................................................2
   2. Existing Definitions ............................................3
   3. Term Definitions ................................................4
      3.1. Configuration Terms ........................................4
           3.1.1. Classification ......................................4
           3.1.2. Codepoint Set .......................................4
           3.1.3. Forwarding Congestion ...............................5
           3.1.4. Congestion Management ...............................6
           3.1.5. Flow ................................................7
      3.2. Measurement Terms ..........................................7
           3.2.1. Forwarding Capacity .................................7
           3.2.2. Conforming Packet ...................................8
           3.2.3. Nonconforming Packet ................................9
           3.2.4. Forwarding Delay ....................................9
           3.2.5. Jitter .............................................11
           3.2.6. Undifferentiated Response ..........................11
      3.3. Sequence Tracking .........................................12
           3.3.1. Test Sequence Number ...............................12
           3.3.2. Stream .............................................12
           3.3.3. In-Sequence Packet .................................13
           3.3.4. Out-of-Order Packet ................................14
           3.3.5. Duplicate Packet ...................................14
      3.4. Vectors ...................................................15
           3.4.1. Intended Vector ....................................15
           3.4.2. Offered Vector .....................................16
           3.4.3. Expected Vectors ...................................16
           3.4.4. Output Vectors .....................................23
   4. Security Considerations ........................................30
   5. Acknowledgements ...............................................30
   6. References .....................................................31
      6.1. Normative References ......................................31
      6.2. Informative References ....................................31

1. Introduction ๐ŸŒธ

okay so the reason we need new terminology is that most existing measurements just assume there's no congestion and only a single per-hop behavior ๐Ÿ™„ this doc brings in several new terms so we can take measurements during congestion, which is literally when it matters most ๐Ÿ’…

another big difference from the old terms is that measurements are defined as observed on the egress and the ingress of a device or system under test. congestion is the reason egress measurements get added on top of the ingress ones, bestie ๐Ÿ˜ญ if you aren't watching the traffic leaving a device or system, you can't tell whether the traffic control mechanisms actually handled the congestion or not ๐Ÿซถ

the main measurements in this doc are vectors for rate, delay, and jitter, and all of them can be observed with or without congestion on the Device Under Test (DUT) or System Under Test (SUT) โœจ this doc only covers the terms that matter for measuring how a DUT or SUT behaves at the egress during congestion. End-to-end and service-level measurements are out of scope here, so don't come for them ๐Ÿ™ˆ

2. Existing Definitions ๐ŸŽ€

RFC 1224, "Techniques for Managing Asynchronously Generated Alerts" [St91], is where we get 'Time with fine enough units to distinguish between two events' ๐Ÿ•ฐ๏ธ

RFC 1242, "Benchmarking Terminology for Network Interconnect Devices", and RFC 2285, "Benchmarking Terminology for LAN Switching Devices", are must-reads before you touch this doc ๐Ÿ“š

RFC 2474, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", section 2, talks through a bunch of terms for network-layer traffic control, so go check that too ๐Ÿฆ‹

for clarity and continuity, this RFC uses the definition template from Section 2 of RFC 1242 ๐Ÿ’– the definitions are indexed and grouped into sections so they're easy to find ๐ŸŒˆ

the key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be read as described in BCP 14, RFC 2119 [Br97]. RFC 2119 is the one that explains how these key words make the intent of standards track documents super clear ๐Ÿงš this doc uses them too, but it is NOT a standards track document, so keep that in mind ๐Ÿ’€

2.1. Frequently Used Acronyms ๐Ÿ“

   DA   Destination Address
   DS   DiffServ
   DSCP DiffServ Code Point
   DUT  Device Under Test
   IP   Internet Protocol
   PHB  Per Hop Behavior
   SA   Source Address
   SUT  System Under Test

3. Term Definitions โœจ

3.1. Configuration Terms ๐Ÿ’œ

3.1.1. Classification ๐ŸŽ€

Definition: Selecting packets according to defined rules. ๐Ÿ’…

Discussion: classification is what decides the per-hop behaviors and traffic conditioning functions, like shaping and dropping, that get applied to a packet ๐ŸŒธ

classification can be based on the DS field or IP Precedence in the packet header. it can also use other IP header fields, like IP Source Address (SA), Destination Address (DA), and protocol, or fields in the packet payload, like port number. it can even be based on the ingress interface ๐Ÿฆ‹ you can do Multi-Field (MF) criteria too, like IP source and destination addresses, protocol, and port number together, which is giving main character energy ๐Ÿ‘‘ for more on packet classification and how it's used in networks, see [Bl98] ๐Ÿ“š

Measurement units: n/a

See Also: None

3.1.2. Codepoint Set ๐ŸŒˆ

Definition: The set of all DS Code-points or IP precedence values used during the test duration. ๐Ÿงš

Discussion: this describes all the code-point markings on packets that go into the DUT/SUT ๐Ÿ’– every entry in the codepoint set has vectors attached to it that describe the traffic rate, delay, loss, or jitter for packets carrying that particular DSCP or IP precedence value โœจ

the treatment a packet gets depends on the DUT classifying it so it maps to the correct PHB ๐Ÿซถ and the forwarding treatment in general also depends on the whole set of offered vectors, so it's not just one packet being judged alone ๐Ÿ’…

Measurement Units: n/a

See Also: None

3.1.3. Forwarding Congestion ๐Ÿ’€

Definition: A condition in which one or more egress interfaces are offered more packets than they forward. ๐Ÿ”ฅ

Discussion: this condition is a superset of the overload definition [Ma98]. overload [Ma98] is about overloading input and output interfaces past the maximum transmission the medium allows ๐Ÿ™ƒ Forwarding Congestion doesn't assume that ingress interface overload is the only way you can overload an output interface, so it's broader ๐ŸŒธ

another difference shows up when the SUT is made of multiple elements. Forwarding Congestion can happen at several points at once ๐Ÿฆ‹ picture an SUT with multiple edge devices all exchanging traffic with a single core device. depending on the traffic patterns, those edge devices can cause Forwarding Congestion on multiple egress interfaces of the core device ๐Ÿ˜ญ

Throughput [Br91] sets the lower boundary of Forwarding Congestion. Throughput is the maximum offered rate with no Forwarding Congestion, so at any offered rate above throughput, the DUT/SUT is considered to be in a state of Forwarding Congestion ๐Ÿ’…

Packet Loss, not increased Forwarding Delay, is the external observable metric used to indicate Forwarding Congestion โœจ Packet Loss is a deterministic indicator of Forwarding Congestion, periodt ๐Ÿ’ฏ when you see increased Forwarding Delay without Packet Loss, that's an indicator called Incipient Congestion, and it's a non-deterministic indicator of Forwarding Congestion [Fl93] ๐ŸŒˆ as [Ec98] puts it, RED [Br98] detects incipient congestion before the buffer overflows, but the current Internet is limited to packet loss as the way it tells end-nodes about congestion ๐Ÿซถ [Ra99] suggests it's impractical to build a black-box test that observes Incipient Congestion ๐Ÿ™ˆ instead, [Ra99] brings in Explicit Congestion Notification (ECN) as a deterministic Black-Box method for observing Incipient Congestion ๐Ÿงš but [Ra99] is an Experimental RFC with limited deployment, so ECN is NOT used for this particular methodology ๐Ÿ’€ for "black-box" testing of a DUT/SUT, this methodology uses Packet Loss as the indicator of Forwarding Congestion ๐ŸŽ€

ingress observations alone don't catch every case where Forwarding Congestion can happen ๐Ÿ˜ญ imagine a device with infinite memory: it could buffer an infinite number of packets and eventually forward all of them. but those packets may or may not get forwarded during the test duration ๐Ÿ™ƒ Congestion Collapse [Na84] is the state where buffers are full and all arriving packets MUST be dropped across the network ๐Ÿ’€ even though the ingress interfaces accept every packet without loss, Forwarding Congestion is still present in this hypothetical device ๐Ÿ”ฅ

this definition explicitly treats Forwarding Congestion as an event you observe on egress interfaces ๐Ÿ’– no matter the internal architecture, any device that shows Packet Loss on one or more egress interfaces is experiencing Forwarding Congestion โœจ

Measurement units: None

See Also: Gateway Congestion Control Survey [Ma91] ๐ŸŒธ

3.1.4. Congestion Management โœจ

Okay so this one is giving "keep the traffic jam from ever forming" energy ๐Ÿš—๐Ÿ’จ

Definition: An implementation of one or more per-hop behaviors to avoid or minimize the condition of congestion. ๐Ÿ’–

Discussion: Congestion management can either control congestion or avoid it altogether through Classification. ๐ŸŽ€

Congestion avoidance mechanisms are the ones that try to stop congestion before it even shows up. ๐Ÿงš

Congestion control mechanisms give one or more flows (with a discrete IP Precedence or DSCP value) preferential treatment over other classes during periods of congestion. The VIP treatment is real ๐Ÿ‘‘

Measurement units: n/a

See Also: Classification

3.1.5. Flow ๐Ÿฆ‹

Definition: A flow is one or more packets sharing a common intended pair of ingress and egress interfaces. ๐Ÿ’…

Discussion: Packets get grouped by the ingress and egress interfaces they use on a given DUT/SUT. ๐ŸŒธ

A flow can contain multiple source IP addresses and/or destination IP addresses. All packets in a flow MUST enter on the same ingress interface and exit on the same egress interface and have some common network layer content. This part is non-negotiable, bestie ๐Ÿ˜ญ

Microflows [Ni98] are a subset of flows. As defined in [Ni98], microflows require application-to-application measurement. In contrast, flows use lower-layer classification criteria. Since this document focuses on network-layer classification criteria, it concentrates here on the use of network-layer identifiers in describing a flow. Flow identifiers also may reside at the data-link, transport, or application layers of the OSI model. However, identifiers other than those at the network layer are out of scope for this document. ngl the layers thing is a whole vibe ๐Ÿ“

A flow may contain a single code point/IP precedence value or may contain multiple values destined for a single egress interface. This is determined by the test methodology. โœจ

Measurement units: n/a

See Also: Microflow [Ni98] Streams

3.2. Measurement Terms ๐Ÿ“

3.2.1. Forwarding Capacity ๐Ÿ”ฅ

Definition: The number of packets per second that a device can be observed to transmit successfully to the correct egress interface in response to a specified offered load while the device drops none of the offered packets. ๐Ÿซถ

Discussion: Forwarding Capacity measures the packet rate at the egress interface(s) of the DUT/SUT. In contrast, throughput (as defined in RFC 1242) measures the packet rate at the ingress interface(s) of the DUT/SUT. ๐Ÿ’œ

Ingress-based measurements do not account for queuing of the DUT/SUT. Throughput rates can be higher than the Forwarding Capacity because of queueing. The difference is dependent upon test duration, packet rate, and queue size. Forwarding Capacity, as an egress measurement, does take queuing into account. The egress side is the one that tells the truth ๐Ÿ‘‘

Understanding Forwarding Capacity is a necessary precursor to any measurement involving Traffic Control Mechanisms. The accompanying methodology document MUST take into consideration Forwarding Capacity when determining the expected forwarding vectors. When the sum of the expected forwarding vectors on an interface exceeds the Forwarding Capacity, the Forwarding Capacity will govern the forwarding rate. ๐ŸŒˆ

This measurement differs from forwarding rate at maximum offered load (FRMOL) [Ma98] in that the Forwarding Capacity requires zero loss. Zero loss is the whole point, periodt ๐Ÿ’…

Measurement units: N-octet packets per second

See Also: Throughput [Br91] Forwarding Rate at Maximum Offered Load [Ma98]

3.2.2. Conforming Packet ๐ŸŒธ

Definition: Packets that lie within specific rate, delay, or jitter bounds.

Discussion: A DUT/SUT may be configured to allow a given traffic class to consume a given amount of bandwidth, or to fall within predefined delay or jitter boundaries. All packets that lie within specified bounds are then said to be conforming, whereas those outside the bounds are nonconforming. Bouncer energy, no notes ๐ŸŽ€

Measurement units: n/a

See Also: Expected Vector Forwarding Vector Offered Vector Nonconforming

3.2.3. Nonconforming Packet ๐Ÿ™ˆ

Definition: Packets that do not lie within specific rate, delay, or jitter bounds.

Discussion: A DUT/SUT may be configured to allow a given traffic class to consume a given amount of bandwidth, or to fall within predefined delay or jitter boundaries. All packets that do not lie within these bounds are then said to be nonconforming. ๐Ÿ’€

Measurement units: n/a

See Also: Expected Vector Forwarding Vector Offered Vector Conforming

3.2.4. Forwarding Delay โฑ๏ธ

Definition: The time interval starting when the last bit of the input IP packet is offered to the input port of the DUT/SUT and ending when the last bit of the output IP packet is received from the output port of the DUT/SUT. ๐Ÿงš

Discussion: The delay time interval MUST be externally observed. The delay measurement MUST NOT include delays added by test bed components other than the DUT/SUT, such as propagation time introduced by cabling or non-zero delay added by the test instrument. Forwarding Delay differs from latency [Br91] and one-way delay [Al99] in several key regards: ๐Ÿฆ‹

  1. Latency [Br91] assumes knowledge of whether the DUT/SUT uses "store and forward" or "bit forwarding" technology. Forwarding Delay is the same metric, measured the same way, regardless of the architecture of the DUT/SUT. Same metric, every architecture, no drama โœจ
  2. Forwarding Delay is a last-in, last-out (LILO) measurement, unlike the last-in, first-out method [Br91] or the first-in, last-out method [Al99].

The LILO method most closely simulates the way a network-layer device actually processes an IP datagram. IP datagrams are not passed up and down the stack unless they are complete, and processing begins only once the last bit of the IP datagram has been received. This is the realest simulation vibe ๐Ÿซถ

Further, the LILO method has an additive property, where the sum of the parts MUST equal the whole. This is a key difference from [Br91] and [Al99]. For example, the delay added by two DUTs MUST equal the sum of the delay of the DUTs. This may or may not be the case with [Br91] and [Al99]. The parts adding up to the whole is so satisfying ๐Ÿ’…

  1. Forwarding Delay measures the IP datagram only, unlike [Br91], which also includes link-layer overhead.

A metric focused exclusively on the Internet protocol relieves the tester from specifying the start/end for every link-layer protocol that IP runs on. This avoids the need to determine whether the start/stop delimiters are included. It also allows the use of heterogeneous link-layer protocols in a test. Less homework for the tester, lowkey iconic ๐ŸŒธ

  1. Forwarding Delay can be measured at any offered load, whereas the latency methodology [Br99] recommends measurement at, and only at, the throughput level. Comparing the Forwarding Delay below the throughput to Forwarding Delay above the Forwarding Capacity will give insight to the traffic control mechanisms.

For example, non-congested delay may be measured with an offered load that does not exceed the Forwarding Capacity, while congested delay may involve an offered load that exceeds the Forwarding Capacity.

Note: Forwarding Delay SHOULD NOT be used as an absolute indicator of DUT/SUT Forwarding Congestion. While Forwarding Delay may rise when offered load nears or exceeds the Forwarding Capacity, there is no universal point at which Forwarding Delay can be said to indicate the presence or absence of Forwarding Congestion. Not a mind-reader, so don't trust one number ๐Ÿ”ฎ

Measurement units: milliseconds

See Also: Latency [Br91] Latency [Al99] One-way Delay [Br99]

3.2.5. Jitter ๐ŸŽถ

Definition: The absolute value of the difference between the Forwarding Delay of two consecutive received packets belonging to the same stream. ๐Ÿ’œ

Discussion: The Forwarding Delay fluctuation between two consecutive received packets in a stream is reported as the jitter. Jitter can be expressed as |D(i) - D(i-1)|, where D equals the Forwarding Delay and i is the order the packets were received.

Under loss, jitter can be measured between non-consecutive test sequence numbers. When IP Traffic Control Mechanisms are dropping packets, fluctuating Forwarding Delay may be observed. Jitter MUST be able to benchmark the delay variation independently of packet loss. Jitter stays in its own lane, even when packets go missing ๐Ÿฆ‹

Jitter is related to the IPDV [De02] (IP Delay Variation) by taking the absolute value of the ipdv. The two metrics will produce different mean values. Mean Jitter will produce a positive value, where the mean ipdv is typically zero. Also, IPDV is undefined when one packet from a pair is lost. Different vibes, different averages, and IPDV just gives up when a pair is lost ๐Ÿ’€

Measurement units: milliseconds

See Also: Forwarding Delay Jitter variation [Ja99] ipdv [De02] interarrival jitter [Sc96]

3.2.6. Undifferentiated Response ๐Ÿง

Definition: The vector(s) obtained when mechanisms used to support diff-serv or IP precedence are disabled. ๐ŸŒˆ

Discussion: Enabling diff-serv or IP precedence mechanisms may impose additional processing overhead for packets. This overhead may degrade performance even when traffic belonging to only one class, the best-effort class, is offered to the device. Measurements with "undifferentiated response" SHOULD be made to establish a baseline. Always get a baseline first, bestie, it's the rule ๐Ÿ“

The vector(s) obtained with DSCP or IP precedence enabled can be compared to the undifferentiated response to determine the effect of differentiating traffic. โœจ

Measurement units: n/a

3.3. Sequence Tracking ๐Ÿงš

3.3.1. Test Sequence Number ๐ŸŽ€

Definition: A field in the IP payload portion of the packet that is used to verify the order of the packets on the egress of the DUT/SUT. ๐Ÿ’–

Discussion: The traffic generator sets the test sequence number value. Upon receipt of the packet, the traffic receiver checks the value. The traffic generator changes the value on each packet transmitted based on an algorithm agreed to by the traffic receiver. ๐Ÿซถ

The traffic receiver keeps track of the sequence numbers on a per-stream basis. In addition to the number of received packets, the traffic receiver may also report the number of in-sequence packets, the number of out-of-sequence packets, the number of duplicate packets, and the number of reordered packets. The RECOMMENDED algorithm to change the sequence number on sequential packets is an incrementing value. Counting up is the iconic choice here ๐Ÿ”ข

Measurement units: n/a

See Also: Stream

3.3.2. Stream โœจ

Definition: A group of packets tracked as a single entity by the traffic receiver. A stream MUST share common content, such as type (IP, UDP), IP SA/DA, packet size, or payload. ๐ŸŽ€

Discussion: Okay so streams get tracked by test sequence number or a "unique signature field" [Ma00] ๐Ÿ’…. This is how individual packet stats get grouped together into something actually readable. Streams are literally the reason your summary makes sense ๐Ÿ“Š.

Common stream groupings would be by egress interface, destination address, source address, DSCP, or IP precedence ๐Ÿงš. A stream using test sequence numbers can track the ordering of packets as they traverse the DUT/SUT, which is so useful, bestie ๐Ÿฆ‹.

Streams are not restricted to a pair of source and destination interfaces, as long as all packets are tracked as a single entity. A multicast stream can be forwarded to multiple destination interfaces. Multicast is giving main character energy ๐Ÿ‘‘.

Measurement units: n/a

See Also:

  • Flow
  • Microflow [Ni98]
  • Test sequence number

3.3.3. In-Sequence Packet ๐ŸŒธ

Definition: A received packet with the expected Test Sequence number.

Discussion: In-sequence is done on a stream level. As packets come in on a stream, each packet's Test Sequence number gets compared with the previous packet. Only packets that match the expected Test Sequence number count as in-sequence ๐Ÿ”ฅ.

Packets that don't match the expected Test Sequence number are counted as "not in-sequence" or out-of-sequence. Every packet that's received is either in-sequence or out-of-sequence, no in-between ๐Ÿ™ˆ. So if you subtract the in-sequence count from the received packets (for that stream), the tester can derive the out-of-sequence count. Math bestie era ๐Ÿงฎ.

Two types of events will prevent the in-sequence from incrementing: packet loss and reordered packets ๐Ÿ’€.

Measurement units: Packet count

See Also:

  • Stream
  • Test Sequence number

3.3.4. Out-of-Order Packet ๐Ÿฆ‹

Definition: A received packet with a sequence number less than the sequence number of any previously arriving packet.

Discussion: As a stream of packets enters a DUT/SUT, each one includes a Stream Test Sequence number that shows the order the packets were sent to the DUT/SUT ๐Ÿ“ฆ. But on the way out, these packets may arrive in a different order, and honestly? Chaos ๐Ÿ˜ญ. Each packet that was reordered gets counted as an Out-of-Order Packet.

Certain streaming protocols (such as TCP) require the packets to be in a certain order. Packets outside of that order get dropped by the streaming protocol, even though the IP layer properly received them ๐Ÿซถ. The type of reordering a streaming protocol tolerates varies from protocol to protocol, and also by implementation. Every app has its own vibe ๐Ÿ’….

Packet loss does NOT affect the Out-of-Order Packet count. Wait, let me be precise: the Out-of-Order Packet count is impacted only by packets that were not received in the order that they were transmitted. So loss isn't the culprit here, ordering is ๐ŸŽฏ.

Measurement units: packets

See Also:

  • Stream
  • Test Sequence number
  • Packet Reordering Metric for IPPM [Mo03]

3.3.5. Duplicate Packet ๐Ÿ‘ฏ

Definition: A received packet with a Test Sequence number matching a previously received packet.

Discussion: A Duplicate Packet is a packet that the DUT/SUT has successfully transmitted out an egress interface more than once. The egress interface has already forwarded this packet before, so it's giving dรฉjร  vu ๐ŸŒ€.

A Duplicate Packet SHOULD be a bit-for-bit copy of an already transmitted packet, including the Test Sequence number โœจ. If the Duplicate Packet traversed different paths through the DUT/SUT, some fields (such as TTL or checksum) may have changed, and that's just how it goes ๐Ÿงš.

A multicast packet is not a Duplicate Packet by definition, so don't panic ๐Ÿ™…โ€โ™€๏ธ. For a given IP multicast group, a DUT/SUT SHOULD forward a packet once on a given egress interface, provided the path to one or more multicast receivers is through that interface. Several egress interfaces will transmit the same packet, but only once per interface. Multicast gets to be iconic without being a duplicate ๐Ÿ’œ.

To detect a Duplicate Packet, each packet offered to the DUT/SUT MUST contain a unique packet-by-packet identifier. No identifier, no detection, periodt ๐Ÿ’…๐Ÿ”ฅ.

Measurement units: Packet count

See Also:

  • Stream
  • Test Sequence number

3.4. Vectors ๐ŸŒˆ

A vector is a group of packets all matching a specific classification criteria, such as DSCP. Vectors are identified by the classification criteria and benchmarking metrics, such as a Forwarding Capacity, Forwarding Delay, or Jitter ๐Ÿ“.

3.4.1. Intended Vector ๐ŸŽฏ

Definition: A description of the configuration on an external source for the attempted rate of a stream transmitted to a DUT/SUT matching specific classification rules.

Discussion: The Intended Vector of a stream influences the benchmark measurements, so it matters a lot ๐Ÿ“ˆ. The Intended Vector is described by the classification criteria and attempted rate.

Measurement Units: N-bytes packets per second

See Also:

  • Stream
  • Offered Vector
  • Forwarding Vector

3.4.2. Offered Vector ๐ŸŽ

Definition: A description for the attempted rate of a stream offered to a DUT/SUT matching specific classification rules.

Discussion: The Offered Vector of a stream influences the benchmark measurements too ๐Ÿ’–. The Offered Vector is described by the classification criteria and offered rate.

Measurement Units: N-bytes packets per second

See Also:

  • Stream
  • Intended Vector
  • Forwarding Vector

3.4.3. Expected Vectors ๐Ÿง

3.4.3.1. Expected Forwarding Vector ๐Ÿš€

Definition: A description of the expected output rate of packets matching a specific classification, such as DSCP.

Discussion: The value of the Expected Forwarding Vector depends on the set of offered vectors and the Classification configuration on the DUT/SUT. The DUT is configured in a certain way so that classification happens when a traffic mix made of multiple streams is applied ๐ŸŽ€.

This term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors. The actual algorithm or mechanism the DUT uses to achieve service differentiation is implementation specific, and it's not important when describing the Expected Forwarding Vector. The how is giving mystery, but the what is what we care about ๐Ÿ”ฎ.

Measurement units: N-octet packets per second

See Also:

  • Classification
  • Stream
  • Intended Vector
  • Offered Vector

3.4.3.2. Expected Loss Vector ๐Ÿ“‰

Definition: A description of the percentage of packets having a specific classification that should not be forwarded.

Discussion: The value of the Expected Loss Vector depends on the set of offered vectors and the Classification configuration on the DUT/SUT. The DUT is configured in a certain way so that classification happens when a traffic mix made of multiple streams is applied ๐ŸŒธ.

This term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors. The actual algorithm or mechanism the DUT uses to achieve service differentiation is implementation specific, and it's not important when describing the Expected Loss Vector ๐Ÿ’….

Measurement Units: Percentage of intended packets expected to be dropped.

See Also:

  • Classification
  • Stream
  • Intended Vector
  • Offered Vector
  • One-way Packet Loss Metric [Ka99]

3.4.3.3. Expected Sequence Vector ๐Ÿ”ข

Definition: A description of the expected in-sequence packets matching a specific classification, such as DSCP.

Discussion: The value of the Expected Sequence Vector depends on the set of offered vectors and the Classification configuration on the DUT/SUT. The DUT is configured in a certain way so that classification happens when a traffic mix made of multiple streams is applied ๐Ÿงšโ€โ™€๏ธ.

This term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors. The actual algorithm or mechanism the DUT uses to achieve service differentiation is implementation specific, and it's not important when describing the Expected Sequence Vector ๐Ÿฆ‹.

Measurement Units: N-octet packets per second

See Also:

  • Classification
  • Stream
  • In-Sequence Packet
  • Intended Vector
  • Offered Vector

3.4.3.4. Expected Delay Vector โฑ๏ธ

Definition: A description of the expected instantaneous Forwarding Delay for packets matching a specific classification, such as DSCP.

Discussion: The value of the Expected Delay Vector depends on the set of offered vectors and the Classification configuration on the DUT/SUT. The DUT is configured in a certain way so that classification happens when a traffic mix made of multiple streams is applied ๐Ÿญ.

This term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors. The actual algorithm or mechanism the DUT uses to achieve service differentiation is implementation specific, and it's not important when describing the Expected Delay Vector โœจ.

Measurement units: milliseconds

See Also:

  • Classification
  • Stream
  • Forwarding Delay
  • Intended Vector
  • Offered Vector

3.4.3.5. Expected Average Delay Vector ๐Ÿ“Š

Definition: A description of the expected average Forwarding Delay for packets matching a specific classification, such as DSCP.

Discussion: The value of the Expected Average Delay Vector depends on the set of offered vectors and the Classification configuration on the DUT/SUT. The DUT is configured in a certain way so that classification happens when a traffic mix made of multiple streams is applied ๐Ÿซง.

This term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors. The actual algorithm or mechanism the DUT uses to achieve service differentiation is implementation specific, and it's not important when describing the Expected Average Delay Vector ๐Ÿ’œ.

Measurement units: milliseconds

See Also:

  • Classification
  • Stream
  • Forwarding Delay
  • Intended Vector
  • Offered Vector
  • Expected Delay Vector

3.4.3.6. Expected Maximum Delay Vector ๐Ÿ”๏ธ

Definition: A description of the expected maximum Forwarding Delay for packets matching a specific classification, such as DSCP.

Discussion: The value of the Expected Maximum Delay Vector depends on the set of offered vectors and the Classification configuration on the DUT/SUT. The DUT is configured in a certain way so that classification happens when a traffic mix made of multiple streams is applied ๐ŸŒŸ.

This term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors. The actual algorithm or mechanism the DUT uses to achieve service differentiation is implementation specific, and it's not important when describing the Expected Maximum Delay Vector ๐Ÿ’…โœจ.

Measurement units: milliseconds

See Also:

  • Classification
  • Stream
  • Forwarding Delay
  • Intended Vector
  • Offered Vector
  • Expected Delay Vector

3.4.3.7. Expected Minimum Delay Vector

Definition: okay so this one is the expected minimum Forwarding Delay for packets that match a specific classification, like DSCP ๐Ÿ’…

Discussion: the Expected Minimum Delay Vector depends on the set of Offered Vectors and on how Classification is configured on the DUT/SUT. The DUT gets set up a certain way so that classification happens when a traffic mix of multiple Streams hits it. โœจ

This term describes how the DUT is supposed to forward when it's getting multiple Offered Vectors at once. How the DUT actually pulls off service differentiation is implementation specific, so it's not the point here when you're describing the Expected Minimum Delay Vector. ๐Ÿงš

Measurement units: milliseconds โฑ๏ธ

See Also:

  • Classification
  • Stream
  • Forwarding Delay
  • Intended Vector
  • Offered Vector
  • Expected Delay Vector

3.4.3.8. Expected Instantaneous Jitter Vector

Definition: this is the expected Instantaneous Jitter between two consecutive packet arrival times for packets matching a specific classification, like DSCP ๐Ÿฆ‹

Discussion: Instantaneous Jitter is the absolute value of the difference between the Forwarding Delay measurements of two packets that belong to the same Stream. It's giving consistency check ๐Ÿ”ฅ

The Forwarding Delay fluctuation between two consecutive packets in a Stream is reported as the "Instantaneous Jitter". You can write it as |D(i) - D(i-1)|, where D is the Forwarding Delay and i is the test sequence number. Lost packets are not counted in the measurement, so they just get skipped. ๐Ÿ™ˆ

The Forwarding Vector may contain several Jitter Vectors. If you have n packets received in a Forwarding Vector, you end up with a total of (n-1) Instantaneous Jitter Vectors. Math bestie energy ๐Ÿงฎ

Measurement units: milliseconds โฑ๏ธ

See Also:

  • Classification
  • Stream
  • Jitter
  • Intended Vector
  • Offered Vector

3.4.3.9. Expected Average Jitter Vector

Definition: the expected average jitter for packets arriving in a Stream that matches a specific classification, like DSCP ๐ŸŒธ

Discussion: the Average Jitter Vector is the average of all the Instantaneous Jitter Vectors measured for the same Stream during the test duration. Simple, clean, iconic ๐Ÿ‘‘

The value of the Expected Average Jitter Vector depends on the set of Offered Vectors and on the Classification configuration on the DUT/SUT. The DUT gets configured a certain way so that classification happens when a traffic mix of multiple Streams is applied. ๐Ÿ’–

Once again, this term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors. The actual algorithm or mechanism the DUT uses for service differentiation is implementation specific and doesn't matter when you're describing the Expected Average Jitter Vector. ๐Ÿ’…

Measurement units: milliseconds โฑ๏ธ

See Also:

  • Classification
  • Stream
  • Jitter
  • Intended Vector
  • Offered Vector
  • Expected Instantaneous Jitter Vector

3.4.3.10. Expected Peak-to-peak Jitter Vector

Definition: the expected maximum variation in Forwarding Delay for packet arrivals in a Stream matching a specific classification, like DSCP ๐ŸŽ€

Discussion: the Peak-to-peak Jitter Vector is the maximum Forwarding Delay minus the minimum Forwarding Delay of the packets (in a vector) that the DUT/SUT forwarded. ๐Ÿฆ‹

Peak-to-peak Jitter is not derived from the Instantaneous Jitter Vector. It's based on all the packets during the test duration, not just two consecutive ones. So it's a whole different vibe ๐Ÿ™Œ

The value of the Expected Peak-to-peak Jitter Vector depends on the set of Offered Vectors and on the Classification configuration on the DUT/SUT. The DUT is configured in a certain way so that classification happens when a traffic mix of multiple Streams is applied. ๐ŸŒˆ

Same story as before: this term captures the expected forwarding behavior from the DUT receiving multiple Offered Vectors, and the actual mechanism the DUT uses for service differentiation is implementation specific. It's not important when you're describing the Expected Peak-to-peak Jitter Vector. โœจ

Measurement units: milliseconds โฑ๏ธ

See Also:

  • Classification
  • Stream
  • Jitter
  • Intended Vector
  • Offered Vector
  • Expected Instantaneous Jitter Vector
  • Expected Average Jitter Vector

3.4.4. Output Vectors ๐ŸŽ€

3.4.4.1. Forwarding Vector

Definition: the number of packets per second for a Stream matching a specific classification, like DSCP, that a DUT/SUT is measured to forward successfully to the correct destination interface in response to an offered vector. ๐Ÿš€

Discussion: the Forwarding Vector is expressed as a combo of two things: the classification rules AND the measured packets per second for the Stream matching those rules. It's a per-hop measurement. The DUT/SUT MAY remark the specific DSCP (or IP precedence) value for a multi-hop measurement, but the Stream stays the same. ๐Ÿฆ‹

Measurement units: N-octet packets per second ๐Ÿ“ฆ

See Also:

  • Classification
  • Stream
  • Forwarding Capacity
  • Intended Vector
  • Offered Vector
  • Expected Vector

3.4.4.2. Loss Vector

Definition: the percentage of packets per second for a Stream matching a specific classification, like DSCP, that a DUT/SUT is measured not to transmit to the correct destination interface in response to an offered vector. Oof ๐Ÿ˜ญ

Discussion: the Loss Vector is expressed as a combo of the classification rules AND the measured percentage of packet loss. It's a per-hop measurement. The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, and the Stream stays the same. ๐Ÿ’œ

Measurement Units: Percentage of packets ๐Ÿ“‰

See Also:

  • Classification
  • Stream
  • Intended Vector
  • Offered Vector
  • Expected Vector
  • One-way Packet Loss Metric [Ka99]

3.4.4.3. Sequence Vector

Definition: the number of packets per second for all packets in a Stream matching a specific classification, like DSCP, that a DUT/SUT is measured to transmit in sequence to the correct destination interface in response to an offered vector. Everything in order, bestie ๐Ÿ“š

Discussion: the Sequence Vector is expressed as a combo of the classification rules AND the number of packets per second that are in-sequence. ๐Ÿง 

It's a per-hop measurement. The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, and the Stream stays the same. ๐ŸŒธ

Measurement Units: N-octet packets per second ๐Ÿ“ฆ

See Also:

  • Classification
  • Stream
  • In-sequence Packet
  • Intended Vector
  • Offered Vector
  • Expected Vector

3.4.4.4. Instantaneous Delay Vector

Definition: the instantaneous Forwarding Delay for a packet in a Stream matching a specific classification, like DSCP, that a DUT/SUT is measured to transmit to the correct destination interface successfully in response to an offered vector. One packet, one moment, one snapshot ๐Ÿ“ธ

Discussion: the Instantaneous Delay Vector is expressed as a combo of the classification rules AND the Forwarding Delay. For every packet received in a Forwarding Vector, there's a matching Instantaneous Delay Vector. ๐Ÿงš

It's a per-hop measurement. The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, and the Stream stays the same. ๐Ÿ’–

The Instantaneous Delay Vector can be obtained at any offered load. It is RECOMMENDED that this vector be obtained at or below the Forwarding Capacity in the absence of Forwarding Congestion. For congested Forwarding Delay, run the offered load above the Forwarding Capacity. Sometimes you gotta push it to see the drama ๐Ÿ”ฅ

Measurement Units: milliseconds โฑ๏ธ

See Also:

  • Classification
  • Stream
  • Forwarding Capacity
  • Forwarding Delay
  • Intended Vector
  • Offered Vector
  • Expected Delay Vector

3.4.4.5. Average Delay Vector

Definition: the average Forwarding Delay for packets in a Stream matching a specific classification, like DSCP, that a DUT/SUT is measured to transmit to the correct destination interface successfully in response to an offered vector. The chill version of delay ๐ŸŒŠ

Discussion: the Average Delay Vector is expressed as a combo of the classification rules AND the average Forwarding Delay. ๐Ÿ’…

The average Forwarding Delay is computed by averaging all the Instantaneous Delay Vectors for a given Stream. Basically, add them up and divide ๐Ÿงฎ

It's a per-hop measurement. The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, and the Stream stays the same. ๐Ÿฆ‹

The Average Delay Vector can be obtained at any offered load. It's recommended that the offered load be at or below the Forwarding Capacity in the absence of congestion. For congested Forwarding Delay, run the offered load above the Forwarding Capacity. ๐ŸŒˆ

Measurement Units: milliseconds โฑ๏ธ

See Also:

  • Classification
  • Stream
  • Forwarding Capacity
  • Forwarding Delay
  • Intended Vector
  • Offered Vector
  • Expected Delay Vector
  • Instantaneous Delay Vector

3.4.4.6. Maximum Delay Vector

Definition: the maximum Forwarding Delay for packets in a Stream matching a specific classification, like DSCP, that a DUT/SUT is measured to transmit to the correct destination interface successfully in response to an offered vector. The worst-case moment, but make it iconic ๐Ÿ‘‘

Discussion: the Maximum Delay Vector is expressed as a combo of the classification rules AND the maximum Forwarding Delay. ๐Ÿ’€

The maximum Forwarding Delay is computed by picking the highest value from the Instantaneous Delay Vectors for a given Stream. Just find the biggest one ๐Ÿ˜ค

It's a per-hop measurement. The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, and the Stream stays the same. ๐Ÿซถ

The Maximum Delay Vector can be obtained at any offered load. It's recommended that the offered load be at or below the Forwarding Capacity in the absence of congestion. For congested Forwarding Delay, run the offered load above the Forwarding Capacity. ๐Ÿ’œ

Measurement Units: milliseconds โฑ๏ธ

See Also:

  • Classification
  • Stream
  • Forwarding Capacity
  • Forwarding Delay
  • Intended Vector
  • Offered Vector
  • Expected Delay Vector
  • Instantaneous Delay Vector

3.4.4.7. Minimum Delay Vector โœจ

Definition: Okay bestie, this is the lowest Forwarding Delay ๐Ÿ“ a stream gets when the DUT/SUT sends it to the right destination interface successfully after receiving an offered vector, for a classification like DSCP ๐Ÿ’….

Discussion: So the Minimum Delay Vector is a combo of two things: the classification rules AND the minimum Forwarding Delay. ๐ŸŽ€ You get the minimum by picking the lowest value out of the Instantaneous Delay Vectors for a given stream. Main character energy, literally ๐Ÿ‘‘

This one is a per-hop measurement ๐Ÿฆ‹. The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, but the stream stays the same โœจ

You can grab the Minimum Delay Vector at any offered load ๐ŸŒˆ. It is recommended that the offered load be at or below the Forwarding Capacity when there's no congestion. For congested Forwarding Delay, you run the offered load above the Forwarding Capacity ๐Ÿ”ฅ

Measurement Units: milliseconds

See Also:

  • Classification
  • Stream
  • Forwarding Capacity
  • Forwarding Delay
  • Intended Vector
  • Offered Vector
  • Expected Delay Vector

3.4.4.8. Instantaneous Jitter Vector ๐Ÿฆ‹

Definition: This is the jitter between two back-to-back packets in a stream matching a specific classification, like DSCP ๐Ÿ’œ, that a DUT/SUT is measured to transmit to the correct destination interface successfully in response to an offered vector.

Discussion: Instantaneous Jitter is the absolute value of the difference between the Forwarding Delay measurements of two packets in the same stream. It's basically how much the delay wiggles from one packet to the next ๐Ÿซถ

The Instantaneous Jitter Vector is a pair of numbers ๐ŸŽ€ Both the specific DSCP (or IP precedence) value AND the jitter value come together to make the vector.

The Forwarding Delay fluctuation between two consecutive packets in a stream gets reported as the "Instantaneous Jitter" โœจ You can write it as |D(i) - D(i-1)|, where D is the Forwarding Delay and i is the test sequence number. Lost packets don't get counted in the measurement ๐Ÿ’€

The Instantaneous Jitter Vector is also a per-hop measurement. The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, and the stream stays the same ๐ŸŒธ

There can be a bunch of Instantaneous Jitter Vectors for one stream! For n packets measured, there may be (n-1) Instantaneous Jitter Vectors ๐Ÿงš

Measurement units: milliseconds

See Also:

  • Classification
  • Stream
  • Forwarding Delay
  • Jitter
  • Forwarding Vector
  • Expected Vectors

3.4.4.9. Average Jitter Vector ๐ŸŒˆ

Definition: This is the average jitter for packets in a stream matching a specific classification, like DSCP ๐Ÿ“, that a DUT/SUT is measured to transmit to the correct destination interface successfully in response to an offered vector.

Discussion: You get the average jitter by averaging all the Instantaneous Jitter Vectors of the same stream measured during the test duration ๐Ÿงฎ The Average Jitter Vector is a combo of values too: the classification rules AND the average Jitter ๐Ÿ’…

This is a per-hop measurement as well โœจ The DUT/SUT MAY remark the specific DSCP or IP precedence value for a multi-hop measurement, and the stream remains the same ๐Ÿฆ‹

Measurement units: milliseconds

See Also:

  • Classification
  • Stream
  • Jitter
  • Forwarding Vector
  • Expected Vector
  • Instantaneous Jitter Vector

3.4.4.10. Peak-to-peak Jitter Vector ๐Ÿ‘‘

Definition: This is the maximum possible variation in the Forwarding Delay for packets in a stream matching a specific classification, like DSCP ๐ŸŽ€, that a DUT/SUT is measured to transmit to the correct destination interface successfully in response to an offered vector.

Discussion: Peak-to-peak Jitter is worked out by subtracting the minimum Forwarding Delay from the maximum Forwarding Delay ๐Ÿ”ฅ Wait, let's be precise here: the text says you take the maximum Forwarding Delay and subtract the minimum Forwarding Delay, of the packets the DUT/SUT forwarded. The Jitter vector is a combo of the classification rules AND the peak-to-peak Jitter ๐Ÿซถ

Peak-to-peak Jitter is NOT derived from the Instantaneous Jitter Vector ๐Ÿ˜ญ It's based on all the packets during the test duration, not just two consecutive ones. Totally different vibe ๐Ÿ’œ

Measurement units: milliseconds

See Also:

  • Jitter
  • Forwarding Vector
  • Stream
  • Expected Vectors
  • Instantaneous Jitter Vector
  • Average Jitter Vector

4. Security Considerations ๐Ÿ”

Okay, this part is seriously important, so listen up ๐Ÿ™ˆ Documents of this type don't directly affect the security of the Internet or of corporate networks, as long as benchmarking isn't performed on devices or systems connected to production networks. Don't be that person who benchmarks prod! ๐Ÿ’€

Packets with unintended and/or unauthorized DSCP or IP precedence values may present security issues. Figuring out the security consequences of those packets is out of scope for this document, so it's not something this doc is going to answer ๐Ÿซ 

5. Acknowledgements ๐Ÿซถ

The authors gratefully acknowledge the contributions of the IETF's Benchmarking Methodology Working Group members, who reviewed this document ๐ŸŒธ The authors would like to express their thanks to David Newman for his consistent and valuable assistance throughout the development of this document ๐Ÿ’– The authors would also like to thank Al Morton and Kevin Dubray for their ideas and support โœจ

6. References ๐Ÿ“š

6.1. Normative References

  • [Br91] Bradner, S., "Benchmarking terminology for network interconnection devices", RFC 1242, July 1991.
  • [Br97] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
  • [Br98] Braden, B., Clark, D., Crowcroft, J., Davie, B., Deering, S., Estrin, D., Floyd, S., Jacobson, V., Minshall, G., Partridge, C., Peterson, L., Ramakrishnan, K., Shenker, S., Wroclawski, J., and L. Zhang, "Recommendations on Queue Management and Congestion Avoidance in the Internet", RFC 2309, April 1998.
  • [Ma98] Mandeville, R., "Benchmarking Terminology for LAN Switching Devices", RFC 2285, February 1998.
  • [Ni98] Nichols, K., Blake, S., Baker, F., and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, December 1998.
  • [St91] Steinberg, L., "Techniques for managing asynchronously generated alerts", RFC 1224, May 1991.

6.2. Informative References

  • [Al99] Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way Delay Metric for IPPM", RFC 2679, September 1999.
  • [Bl98] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z., and W. Weiss, "An Architecture for Differentiated Service", RFC 2475, December 1998.
  • [Br99] Bradner, S. and J. McQuaid, "Benchmarking Methodology for Network Interconnect Devices", RFC 2544, March 1999.
  • [De02] Demichelis, C. and P. Chimento, "IP Packet Delay Variation Metric for IP Performance Metrics (IPPM)", RFC 3393, November 2002.
  • [Ec98] http://www3.ietf.org/proceedings/98mar/98mar-edited-135.htm
  • [Fl93] Floyd, S., and Jacobson, V., "Random Early Detection gateways for Congestion Avoidance", IEEE/ACM Transactions on Networking, V.1 N.4, August 1993, p. 397-413. URL "ftp://ftp.ee.lbl.gov/papers/early.pdf".
  • [Ja99] Davie, B., Charny, A., Bennet, J.C., Benson, K., Le Boudec, J., Courtney, W., Davari, S., Firoiu, V., and D. Stiliadis, "An Expedited Forwarding PHB (Per-Hop Behavior)", RFC 3246, March 2002.
  • [Ka99] Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way Packet Loss Metric for IPPM", RFC 2680, September 1999.
  • [Ma91] Mankin, A. and K. Ramakrishnan, "Gateway Congestion Control Survey", RFC 1254, August 1991.
  • [Ma00] Mandeville, R. and J. Perser, "Benchmarking Methodology for LAN Switching Devices", RFC 2889, August 2000.
  • [Mo03] Morton, A., Ciavattone, L., Ramachandran, G., Shalunov, S., Perser, J., "Packet Reordering Metric for IPPM", Work in Progress.
  • [Na84] Nagle, J., "Congestion control in IP/TCP internetworks", RFC 896, January 1984.
  • [Ra99] Ramakrishnan, K., Floyd, S., and D. Black, "The Addition of Explicit Congestion Notification (ECN) to IP", RFC 3168, September 2001.
  • [Sc96] Schulzrinne, H., Casner, S., Frederick, R., and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", STD 64, RFC 3550, July 2003.

Authors' Addresses ๐Ÿ’Œ

Jerry Perser
Veriwave
8770 SW Nimbus Ave.
Suite B
Beaverton, OR 97008   USA
USA

Phone: + 1 818 338 4112
EMail: jerry@perser.org


Scott Poretsky
Reef Point Systems
8 New England Executive Park
Burlington, MA 01803
USA

Phone: + 1 508 439 9008
EMail: sporetsky@reefpoint.com


Shobha Erramilli
Telcordia Technologies
331 Newman Springs Road
Red Bank, New Jersey 07701
USA

EMail: shobha@research.telcordia.com


Sumit Khurana
Motorola
7700 West Parmer Ln.
Austin, TX 78729
USA

Phone: +1 512 996 6604
Email: skhurana@motorola.com

Copyright (C) The Internet Society (2006).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property ๐Ÿ”–

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document, or the extent to which any license under such rights might or might not be available. It also doesn't represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification, can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.

Acknowledgement ๐Ÿ’–

Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). โœจ

๐Ÿ“ฆ where this page comes from