home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_ietf_i / draft-ietf-issll-isslow-02.txt < prev    next >
Text File  |  1997-07-24  |  33KB  |  696 lines

  1.  
  2. INTERNET-DRAFT                                           Carsten Bormann
  3. Expires: November 1997                               Universitaet Bremen
  4.                                                                 May 1997
  5.  
  6.  
  7.           Providing integrated services over low-bitrate links
  8.                      draft-ietf-issll-isslow-02.txt
  9.  
  10.  
  11. Status of this memo
  12.  
  13.    This document is an Internet-Draft.  Internet-Drafts are working
  14.    documents of the Internet Engineering Task Force (IETF), its areas,
  15.    and its working groups.  Note that other groups may also distribute
  16.    working documents as Internet-Drafts.
  17.  
  18.    Internet-Drafts are draft documents valid for a maximum of six months
  19.    and may be updated, replaced, or obsoleted by other documents at any
  20.    time.  It is inappropriate to use Internet-Drafts as reference
  21.    material or to cite them other than as ``work in progress.''
  22.  
  23.    To learn the current status of any Internet-Draft, please check the
  24.    ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
  25.    Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
  26.    munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
  27.    ftp.isi.edu (US West Coast).
  28.  
  29.    Distribution of this document is unlimited.
  30.  
  31. Abstract
  32.  
  33.    This document describes an architecture for providing integrated
  34.    services over low-bitrate links, such as modem lines, ISDN B-
  35.    channels, and sub-T1 links.  It covers only the lower parts of the
  36.    Internet Multimedia Conferencing Architecture [1]; additional
  37.    components required for application services such as Internet
  38.    Telephony (e.g., a session initiation protocol) are outside the scope
  39.    of this document.  The main components of the architecture are: a
  40.    real-time encapsulation format for asynchronous and synchronous low-
  41.    bitrate links, a header compression architecture optimized for real-
  42.    time flows, elements of negotiation protocols used between routers
  43.    (or between hosts and routers), and announcement protocols used by
  44.    applications to allow this negotiation to take place.
  45.  
  46.    This document is a product of the IETF ISSLL working group.
  47.    Comments are solicited and should be addressed to the working group's
  48.    mailing list at issll@mercury.lcs.mit.edu and/or the author.
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56. Bormann                                                         [Page 1]
  57.  
  58. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  59.  
  60. 1.  Introduction
  61.  
  62.    As an extension to the ``best-effort'' services the Internet is well-
  63.    known for, additional types of services (``integrated services'')
  64.    that support the transport of real-time multimedia information are
  65.    being developed for and deployed in the Internet.  Important elements
  66.    of this development are:
  67.  
  68.    -    parameters for forwarding mechanisms that are appropriate for
  69.         real-time information (in the intserv working group of the IETF)
  70.  
  71.    -    a setup protocol that allows establishing special forwarding
  72.         treatment for real-time information flows (RSVP [4], in the rsvp
  73.         working group of the IETF)
  74.  
  75.    -    a transport protocol for real-time information (RTP/RTCP [6], in
  76.         the avt working group of the IETF).
  77.  
  78.    In addition to these elements at the network and transport levels of
  79.    the Internet Multimedia Conferencing Architecture [1], further
  80.    components are required to define application services such as
  81.    Internet Telephony, e.g., protocols for session initiation and
  82.    control.  These components are outside the scope of this document.
  83.  
  84.    Up to now, the newly developed services could not (or only very
  85.    inefficiently) be used over forwarding paths that include low-bitrate
  86.    links such as 14.4 and 28.8 kbit/s modems, 56 and 64 kbit/s ISDN B-
  87.    channels, or even sub-T1 links.  The encapsulation formats used on
  88.    these links are not appropriate for the simultaneous transport of
  89.    arbitrary data and real-time information that has to meet stringent
  90.    delay requirements.  A 1500 byte packet on a 28.8 kbit/s modem link
  91.    makes this link unavailable for the transmission of real-time
  92.    information for about 400 ms.  This adds a worst-case delay that
  93.    causes real-time applications to operate with round-trip delays on
  94.    the order of at least a second -- unacceptable for real-time
  95.    conversation.  In addition, the header overhead associated with the
  96.    protocol stacks used is prohibitive on low-bitrate links, where
  97.    compression down to a few dozen bytes per real-time information
  98.    packet is often desirable.  E.g., the overhead of at least 44
  99.    (4+20+8+12) bytes for HDLC/PPP, IP, UDP, and RTP completely
  100.    overshadows typical audio payloads such as the 19.75 bytes needed for
  101.    a G.723.1 ACELP audio frame -- a 14.4 kbit/s link is completely
  102.    consumed by this header overhead alone at 40 real-time frames per
  103.    second total (i.e., at 25 ms packetization delay for one stream or 50
  104.    ms for two streams, with no space left for data, yet).  While the
  105.    header overhead can be reduced by combining several real-time
  106.    information frames into one packet, this increases the delay incurred
  107.    while filling that packet and further detracts from the goal of real-
  108.    time transfer of multi-media information over the Internet.
  109.  
  110.    This document describes an approach for addressing these problems.
  111.    The main components of the architecture are:
  112.  
  113.  
  114. Bormann                                                         [Page 2]
  115.  
  116. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  117.  
  118.    -    a real-time encapsulation format for asynchronous and
  119.         synchronous low-bitrate links,
  120.  
  121.    -    a header compression architecture optimized for real-time flows,
  122.  
  123.    -    elements of negotiation protocols used between routers (or
  124.         between hosts and routers), and
  125.  
  126.    -    announcement protocols used by applications to allow this
  127.         negotiation to take place.
  128.  
  129.  
  130. 2.  Design Considerations
  131.  
  132.  
  133.    The main design goal for an architecture that addresses real-time
  134.    multimedia flows over low-bitrate links is that of minimizing the
  135.    end-to-end delay.  More specifically, the worst case delay (after
  136.    removing possible outliers, which are equivalent to packet losses
  137.    from an application point of view) is what determines the playout
  138.    points selected by the applications and thus the delay actually
  139.    perceived by the user.
  140.  
  141.    In addition, any such architecture should obviously undertake every
  142.    attempt to maximize the bandwidth actually available to media data;
  143.    overheads must be minimized.
  144.  
  145.    An important component of the integrated services architecture is the
  146.    provision of reservations for real-time flows.  One of the problems
  147.    that systems on low-bitrate links (routers or hosts) face when
  148.    performing admission control for such reservations is that they must
  149.    translate the bandwidth requested in the reservation to the one
  150.    actually consumed on the link.  Methods such as data compression
  151.    and/or header compression can reduce the requirements on the link,
  152.    but admission control can only make use of the reduced requirements
  153.    in its calculations if it has enough information about the data
  154.    stream to know how effective the compression will be.  One goal of
  155.    the architecture therefore is to provide the integrated services
  156.    admission control with this information.  A beneficial side effect
  157.    may be to allow the systems to perform better compression than would
  158.    be possible without this information.  This may make it worthwhile to
  159.    provide this information even when it is not intended to make a
  160.    reservation for a real-time flow.
  161.  
  162.  
  163.  
  164. 3.  The Need for a Concerted Approach
  165.  
  166.    Many technical approaches come to mind for addressing these problems,
  167.    in particular a new form of low-delay encapsulation to address delay
  168.    and header compression methods to address overhead.  This section
  169.    shows that these techniques should be combined to solve the problem.
  170.  
  171.  
  172. Bormann                                                         [Page 3]
  173.  
  174. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  175.  
  176. 3.1.  Real-Time Encapsulation
  177.  
  178.    The purpose of defining a real-time link-layer encapsulation protocol
  179.    is to be able to introduce newly arrived real-time packets in the
  180.    link-layer data stream without having to wait for the currently
  181.    transmitted (possibly large) packet to end.  Obviously, a real-time
  182.    encapsulation must be part of any complete solution as the problem of
  183.    delays induced by large frames on the link can only be solved on this
  184.    layer.
  185.  
  186.    To be able to switch to a real-time packet quickly in an interface
  187.    driver, it is first necessary to identify packets that belong to
  188.    real-time flows.  This can be done using a heuristic approach (e.g.,
  189.    favor the transmission of highly periodic flows of small packets
  190.    transported in IP/UDP, or use the IP precedence fields in a specific
  191.    way defined within an organization).  Preferably, one also could make
  192.    use of the protocol defined for identifying flows that require
  193.    special treatment, i.e. RSVP.  Of the two service types defined for
  194.    use with RSVP now, the guaranteed service will only be available in
  195.    certain environments; for this and various other reasons, the service
  196.    type chosen for many adaptive audio/video applications will be the
  197.    controlled-load service.  Controlled-load does not provide control
  198.    parameters for target delay; this makes it very hard to identify
  199.    those packet streams that would benefit most from being transported
  200.    in a real-time encapsulation format.  This calls for a way to provide
  201.    additional parameters in integrated services flow setup protocols to
  202.    control the real-time encapsulation.
  203.  
  204.    Real-time encapsulation is not sufficient on its own, however: Even
  205.    if the relevant flows can be appropriately identified for real-time
  206.    treatment, most applications simply are not possible on low-bitrate
  207.    links with the header overhead implied by the combination of
  208.    HDLC/PPP, IP, UDP, and RTP, i.e. they absolutely require header
  209.    compression.
  210.  
  211.  
  212. 3.2.  Header Compression
  213.  
  214.    Header compression can be performed in a variety of elements and at a
  215.    variety of levels in the protocol architecture.  As most vendors of
  216.    Internet Telephony products for PCs ship applications, the approach
  217.    that is most obvious to them is to reduce overhead by performing
  218.    header compression at the application level, i.e. above transport
  219.    protocols such as UDP[1].
  220.  
  221.    Generally, header compression operates by installing state at both
  222.    ends of a path that allows the receiving end to reconstruct
  223.    information omitted at the sending end.  Many good techniques for
  224.    header compression (RFC 1144, [2]) operate on the assumption that the
  225. _________________________
  226.   [1] or actually by using a non-standard, efficiently coded head-
  227. er in the first place.
  228.  
  229.  
  230. Bormann                                                         [Page 4]
  231.  
  232. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  233.  
  234.    path will not reorder the frames generated.  This assumption does not
  235.    hold for end-to-end compression; therefore additional overhead is
  236.    required for resequencing state changes and compressed packets making
  237.    use of these state changes.
  238.  
  239.    Assume that a very good application level header compression solution
  240.    for RTP flows could be able to save 11 out of the 12 bytes of an RTP
  241.    header [3].  Even this perfect solution only reduces the total header
  242.    overhead by 1/4.  It would have to be deployed in all applications,
  243.    even those that operate on systems that are attached to higher-
  244.    bitrate links.
  245.  
  246.    Because of this limited effectiveness, the AVT group that is
  247.    responsible for RTP within the IETF has decided to not further pursue
  248.    application level header compression.
  249.  
  250.    For router and IP stack vendors, the obvious approach is to define
  251.    header compression that can be negotiated between peer routers.
  252.  
  253.    Advanced header compression techniques now being defined in the IETF
  254.    [2] certainly can relieve the link from significant parts of the
  255.    IP/UDP overhead (i.e., most of 28 of the 44 bytes mentioned above).
  256.  
  257.    One of the design principles of the new IP header compression
  258.    developed in conjunction with IPv6 is that it stops at layers the
  259.    semantics of which cannot be inferred from information in lower layer
  260.    (outer) headers.  Therefore, this header compression technique alone
  261.    cannot compress the data that is contained within UDP packets.
  262.  
  263.    Any additional header compression technique runs into a problem: If
  264.    it assumes specific application semantics (i.e., those of RTP and a
  265.    payload data format) based on heuristics, it runs the risk of being
  266.    triggered falsely and (e.g. in case of packet loss) reconstructing
  267.    packets that are catastrophically incorrect for the application
  268.    actually being used.  A header compression technique that can be
  269.    operated based on heuristics but does not cause incorrect
  270.    decompression even if the heuristics failed is described in [7]; a
  271.    companion document describes the mapping of this technique to PPP
  272.    [10].
  273.  
  274.    With all of these techniques, the total IP/UDP/RTP header overhead
  275.    for an audio stream can be reduced to two bytes per packet.  This
  276.    technology need only be deployed at bottleneck links; high-speed
  277.    links can transfer the real-time streams without routers or switches
  278.    expending CPU cycles to perform header compression.
  279.  
  280.  
  281. 4.  Principles of Real-Time Encapsulation for Low-Bitrate Links
  282.  
  283.  
  284.    The main design goal for a real-time encapsulation is to minimize the
  285.    delay incurred by real-time packets that become available for sending
  286.    while a long data packet is being sent.  To achieve this, the
  287.  
  288. Bormann                                                         [Page 5]
  289.  
  290. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  291.  
  292.    encapsulation must be able to either abort or suspend the transfer of
  293.    the long data packet.  As an additional goal is to minimize the
  294.    overhead required for the transmission of packets from periodic
  295.    flows, this strongly argues for being able to suspend a packet, i.e.
  296.    segment it into parts between which the real-time packets can be
  297.    transferred.
  298.  
  299.  
  300. 4.1.  Using existing IP fragmentation
  301.  
  302.    Transmitting only part of a packet to allow higher-priority traffic
  303.    to intervene and resuming its transmission later on is a kind of
  304.    fragmentation.  Fragmentation is an existing functionality of the IP
  305.    layer: An IPv4 header already contains fields that allow a large IP
  306.    datagram to be fragmented into small parts.  A sender's ``real-time
  307.    PPP'' implementation might simply indicate a small MTU to its IP
  308.    stack and thus cause all larger datagrams to be fragmented down to a
  309.    size that allows the access delay goals to be met[2].  (Also, a PPP
  310.    implementation can negotiate down the MTU of its peer, causing the
  311.    peer to fragment to a small size, which might be considered a crude
  312.    form of negotiating an access delay goal with the peer system -- if
  313.    that system supports priority queueing at the fragment level.)
  314.  
  315.    Unfortunately, a full, 20 byte IP header is needed for each fragment
  316.    (larger when IP options are used).  This limits the minimum size of
  317.    fragments that can be used without too much overhead.  (Also, the
  318.    size of non-final fragments must be a multiple of 8 bytes, further
  319.    limiting the choice.)  With path MTU discovery, IP level
  320.    fragmentation causes TCP implementations to use small MSSs -- this
  321.    further increases the per-packet overhead to 40 bytes per fragment.
  322.  
  323.    In any case, fragmentation at the IP level persists on the path
  324.    further down to the datagram receiver, increasing the transmission
  325.    overheads and router load throughout the network.  With its high
  326.    overhead and the adverse effect on the Internet, IP level
  327.    fragmentation can only be a stop-gap mechanism when no other
  328.    fragmentation protocol is available in the peer implementation.
  329.  
  330.  
  331. 4.2.  Link-Layer Mechanisms
  332.  
  333.    Cell-oriented multiplexing techniques such as ATM that introduce
  334.    regular points where cells from a different packet can be
  335.    interpolated are too inefficient for low-bitrate links; also, they
  336.    are not supported by chips used to support the link layer in low-
  337.    bitrate routers and host interfaces.
  338. _________________________
  339.   [2] This assumes that the IP stack is able to priority-tag frag-
  340. ments,  or  that  the  PPP implementation is able to correlate the
  341. fragments to the initial one that carries the information relevant
  342. for  prioritizing,  or  that  only  initial fragments can be high-
  343. priority.
  344.  
  345.  
  346. Bormann                                                         [Page 6]
  347.  
  348. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  349.  
  350.    Instead, the real-time encapsulation should as far as possible make
  351.    use of the capabilities of the chips that have been deployed.  On
  352.    synchronous lines, these chips support HDLC framing; on asynchronous
  353.    lines, an asynchronous variant of HDLC that usually is implemented in
  354.    software is being used.  Both variants of HDLC provide a delimiting
  355.    mechanism to indicate the end of a frame over the link.  The obvious
  356.    solution to the segmentation problem is to combine this mechanism
  357.    with an indication of whether the delimiter terminates or suspends
  358.    the current packet.
  359.  
  360.    This indication could be in an octet appended to each frame
  361.    information field; however, seven out of eight bits of the octet
  362.    would be wasted.  Instead, the bit could be carried at the start of
  363.    the next frame in conjunction with multiplexing information (PPP
  364.    protocol identifier etc.) that will be required here anyway.  Since
  365.    the real-time flows will in general be periodic, this multiplexing
  366.    information could convey (part of) the compressed form of the header
  367.    for the packet.  If packets from the real-time flow generally are of
  368.    constant length (or have a defined maximum length that is often
  369.    used), the continuation of the suspended packet could be immediately
  370.    attached to it, without expending a further frame delimiter, i.e.,
  371.    the interpolation of the real-time packet would then have zero
  372.    overhead.  Since packets from low-delay real-time flows generally
  373.    will not require the ability to be further suspended, the
  374.    continuation bit could be reserved for the non-real-time packet
  375.    stream.
  376.  
  377.    One real-time encapsulation format with these (and other) functions
  378.    is described in ITU-T H.223, the multiplex used by the H.324
  379.    videophone standard.  It was investigated whether compatibility could
  380.    be achieved with this specification, which will be used in future
  381.    videophone-enabled (H.324 capable) modems.  However, since the
  382.    multiplexing capabilities of H.223 are limited to 15 schedules
  383.    (definitions of sequences of packet types that can be identified in a
  384.    multiplex header), for general Internet usage a superset or a more
  385.    general encapsulation would have been required.  Also, a PPP-style
  386.    negotiation protocol was needed instead of using (and necessarily
  387.    extending) ITU-T H.245 for setting the parameters of the multiplex.
  388.    In the PPP context, the interactions with the encapsulations for data
  389.    compression and link layer encryption needed to be defined (including
  390.    operation in the presence of padding).  But most important, H.223
  391.    requires synchronous HDLC chips that can be configured to send frames
  392.    without an attached CRC, which is not possible with all chips
  393.    deployed in commercially available routers; so complete compatibility
  394.    was unachievable.
  395.  
  396.    Instead of adopting H.223, it was decided to pursue an approach that
  397.    is oriented towards compatibility both with existing hardware and
  398.    existing software (in particular PPP) implementations.  The next
  399.    subsection groups these implementations according to their
  400.    capabilities.
  401.  
  402.  
  403.  
  404. Bormann                                                         [Page 7]
  405.  
  406. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  407.  
  408. 4.3.  Implementation models
  409.  
  410.    This section introduces a number of terms for types of
  411.    implementations that are likely to emerge.  It is important to have
  412.    these different implementation models in mind as there is no single
  413.    approach that fits all models best.
  414.  
  415. 4.3.1.  Sender types
  416.  
  417.    There are two fundamental approaches to real-time transmission on
  418.    low-bitrate links:
  419.  
  420.    Sender type 1
  421.         The PPP real-time framing implementation is able to control the
  422.         transmission of each byte being transmitted with some known,
  423.         bounded delay (e.g., due to FIFOs).  For example, this is
  424.         generally true of PC host implementations, which directly access
  425.         serial interface chips byte by byte or by filling a very small
  426.         FIFO.  For type 1 senders, a suspend/resume type approach will
  427.         be typically used: When a long frame is to be sent, the attempt
  428.         is to send it undivided; only if higher priority packets come up
  429.         during the transmission will the lower-priority long frame be
  430.         suspended and later resumed.  This approach allows the minimum
  431.         variation in access delay for high-priority packets; also,
  432.         fragmentation overhead is only incurred when actually needed.
  433.  
  434.    Sender type 2
  435.         With type 2 senders, the interface between the PPP real-time
  436.         framing implementation and the transmission hardware is not in
  437.         terms of streams of bytes, but in terms of frames, e.g., in the
  438.         form of multiple (prioritized) send queues directly supported by
  439.         hardware.  This is often true of router systems for synchronous
  440.         links, in particular those that have to support a large number
  441.         of low-bitrate links.  As type 2 senders have no way to suspend
  442.         a frame once it has been handed down for transmission, they
  443.         typically will use a queues-of-fragments approach, where long
  444.         packets are always split into units that are small enough to
  445.         maintain the access delay goals for higher-priority traffic.
  446.         There is a trade-off between the variation in access delay
  447.         resulting from a large fragment size and the overhead that is
  448.         incurred for every long packet by choosing a small fragment
  449.         size.
  450.  
  451. 4.3.2.  Receiver types
  452.  
  453.    Although the actual work of formulating transmission streams for
  454.    real-time applications is performed at the sender, the ability of the
  455.    receiver to immediately make use of the information received depends
  456.    on its characteristics:
  457.  
  458.    Receiver type 1
  459.         Type 1 receivers have full control over the stream of bytes
  460.         received within PPP frames, i.e., bytes received are available
  461.  
  462. Bormann                                                         [Page 8]
  463.  
  464. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  465.  
  466.         immediately to the PPP real-time framing implementation (with
  467.         some known, bounded delay e.g. due to FIFOs etc.).
  468.  
  469.    Receiver type 2
  470.         With type 2 receivers, the PPP real-time framing implementation
  471.         only gets hold of a frame when it has been received completely,
  472.         i.e., the final flag has been processed (typically by some HDLC
  473.         chip that directly fills a memory buffer).
  474.  
  475.  
  476. 4.4.  Conclusion
  477.  
  478.    As a result of the diversity in capabilities of current
  479.    implementations, there are now two specifications for real-time
  480.    encapsulation: One, the multi-class extension to the PPP multi-link
  481.    protocol, is providing the solution for the queues-of-fragments
  482.    approach by extending the single-stream PPP multi-link protocol by
  483.    multiple classes [8].  The other encapsulation, PPP in a real-time
  484.    oriented HDLC-like framing, builds on this specification end extends
  485.    it by a way to dynamically delimit multiple fragments within one HDLC
  486.    frame [9], providing the solution for the suspend/resume type
  487.    approach.
  488.  
  489.  
  490. 5.  Principles of Header Compression for Real-Time Flows
  491.  
  492.  
  493.    A good baseline for a discussion about header compression is in the
  494.    new IP header compression specification that was designed in
  495.    conjunction with the development of IPv6 [2].  The techniques used
  496.    there can reduce the 28 bytes of IPv4/UDP header to about 6 bytes
  497.    (depending on the number of concurrent streams); with the remaining 4
  498.    bytes of HDLC/PPP overhead and 12 bytes for RTP the total header
  499.    overhead can be about halved but still exceeds the size of a G.723.1
  500.    ACELP frame.  Note that, in contrast to IP header compression, the
  501.    environment discussed here assumes the existence of a full-duplex PPP
  502.    link and thus can rely on negotiation where IP header compression
  503.    requires repeated transmission of the same information.  (The use of
  504.    the architecture of the present document with link layer multicasting
  505.    has not yet been examined.)
  506.  
  507.    Additional design effort was required for RTP header compression.
  508.    Applying the concepts of IP header compression, of the (at least) 12
  509.    bytes in an RTP header, 7 bytes (timestamp, sequence, and marker bit)
  510.    would qualify as RANDOM; DELTA encoding cannot generally be used
  511.    without further information since the lower layer header does not
  512.    unambiguously identify the semantics and there is no TCP checksum
  513.    that can be relied on to detect incorrect decompression.  Only a more
  514.    semantics-oriented approach can provide better compression (just as
  515.    RFC 1144 can provide very good compression of TCP headers by making
  516.    use of semantic knowledge of TCP and its checksumming method).
  517.  
  518.    For RTP packets, differential encoding of the sequence number and
  519.  
  520. Bormann                                                         [Page 9]
  521.  
  522. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  523.  
  524.    timestamps is an efficient approach for certain cases of payload data
  525.    formats.  E.g., speech flows generally have sequence numbers and
  526.    timestamp fields that increase by 1 and by the frame size in
  527.    timestamp units, resp.; the CRTP (compressed RTP) specification makes
  528.    use of this relationship by encoding these fields only when the
  529.    second order difference is non-zero [7].
  530.  
  531.  
  532.  
  533. 6.  Announcement Protocols Used by Applications
  534.  
  535.    As argued, the compressor can operate best if it can make use of
  536.    information that clearly identifies real-time streams and provides
  537.    information about the payload data format in use.
  538.  
  539.    If these systems are routers, this consent must be installed as
  540.    router state; if these systems are hosts, it must be known to their
  541.    networking kernels.  Sources of real-time information flows are
  542.    already describing characteristics of these flows to their kernels
  543.    and to the routers in the form of TSpecs in RSVP PATH messages [4].
  544.    Since these messages make use of the router alert option, they are
  545.    seen by all routers on the path; path state about the packet stream
  546.    is normally installed at each of these routers that implement RSVP.
  547.    Additional RSVP objects could be defined that are included in PATH
  548.    messages by those applications that desire good performance over low-
  549.    bitrate links; these objects would be coded to be ignored by routers
  550.    that are not interested in them (class number 11bbbbbb).
  551.  
  552.    Note that the path state is available in the routers even when no
  553.    reservation is made; this allows informed compression of best-effort
  554.    traffic.  It is not quite clear, though, how path state could be
  555.    teared down quickly when a source ceases to transmit.
  556.  
  557.  
  558. 7.  Elements of Hop-By-Hop Negotiation Protocols
  559.  
  560.  
  561.    The IP header compression specification attempts to account for
  562.    simplex and multicast links by providing information about the
  563.    compressed streams only in the forward direction.  E.g., a full
  564.    IP/UDP header must be sent after F_MAX_TIME (currently 3 seconds),
  565.    which is a negligible total overhead (e.g. one full header every 150
  566.    G.723.1 packets), but must be considered carefully in scheduling the
  567.    real-time transmissions.  Both simplex and multicast links are not
  568.    prevailing in the low-bitrate environment (although multicast
  569.    functionality may become more important with wireless systems); in
  570.    this document, we therefore assume full-duplex capability.
  571.  
  572.    As compression techniques will improve, a negotiation between the two
  573.    peers on the link would provide the best flexibility in
  574.    implementation complexity and potential for extensibility.  The peer
  575.    routers/hosts can decide which real-time packet streams are to be
  576.    compressed, which header fields are not to be sent at all, which
  577.  
  578. Bormann                                                        [Page 10]
  579.  
  580. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  581.  
  582.    multiplexing information should be used on the link, and how the
  583.    remaining header fields should be encoded.  PPP, a well-tried suite
  584.    of negotiation protocols, is already used on most of the low-bitrate
  585.    links and seems to provide the obvious approach.  Cooperation from
  586.    PPP is also needed to negotiate the use of real-time encapsulations
  587.    between systems that are not configured to automatically do so.
  588.    Therefore, PPP options that can be negotiated at the link setup (LCP)
  589.    phase are included in [8], [9], and [10].
  590.  
  591.  
  592. 8.  Security Considerations
  593.  
  594.    Header compression protocols that make use of assumptions about
  595.    application protocols need to be carefully analyzed whether it is
  596.    possible to subvert other applications by maliciously or
  597.    inadvertently enabling their use.
  598.  
  599.    It is generally not possible to do significant hop-by-hop header
  600.    compression on encrypted streams.  With certain security policies, it
  601.    may be possible to run an encrypted tunnel to a network access server
  602.    that does header compression on the decapsulated packets and sends
  603.    them over an encrypted link encapsulation; see also the short mention
  604.    of interactions between real-time encapsulation and encryption in
  605.    section 4 above.  If the security requirements permit, a special RTP
  606.    payload data format that encrypts only the data may preferably be
  607.    used.
  608.  
  609. 9.  Author's Address
  610.  
  611.  
  612.    Carsten Bormann
  613.    Universitaet Bremen FB3 TZI
  614.    Postfach 330440
  615.    D-28334 Bremen, GERMANY
  616.    cabo@tzi.uni-bremen.de
  617.    phone +49.421.218-7024
  618.    fax +49.421.218-7000
  619.  
  620.  
  621. Acknowledgements
  622.  
  623.    Much of the early discussion that led to this document was done with
  624.    Scott Petrack and Cary Fitzgerald.  Steve Casner, Mikael Degermark,
  625.    Steve Jackowski, Dave Oran, and the other members of the ISSLL
  626.    subgroup on low bitrate links (ISSLOW) have helped making this
  627.    architecture a reality.
  628.  
  629. 10.  References
  630.  
  631.  
  632.    [1]  Mark Handley, Jon Crowcroft, Carsten Bormann, ``The Internet
  633.         Multimedia Conferencing Architecture,'' Work in Progress (draft-
  634.         ietf-mmusic-confarch-00.txt), February 1996.
  635.  
  636. Bormann                                                        [Page 11]
  637.  
  638. INTERNET-DProviding integrated services over low-bitrate links  May 1997
  639.  
  640.    [2]  M. Degermark, B. Nordgren, S. Pink, ``Header Compression for
  641.         IPv6,'' Work in Progress (draft-degermark-ipv6-hc-02.txt),
  642.         November 1996.
  643.  
  644.    [3]  Scott Petrack, Ed Ellesson, ``Framework for C/RTP: Compressed
  645.         RTP Using Adaptive Differential Header Compression'',
  646.         contribution to the mailing list rem-conf@es.net, February 1996.
  647.  
  648.    [4]  R. Braden, Ed., L. Zhang, S. Berson, S. Herzog, S. Jamin,
  649.         Resource ReSerVation Protocol (RSVP) -- Version 1 Functional
  650.         Specification, Work in Progress (draft-ietf-rsvp-spec-14.txt),
  651.         November 1996.
  652.  
  653.    [5]  K. Sklower, B. Lloyd, G. McGregor, D. Carr, T. Coradetti, ``The
  654.         PPP Multilink Protocol (MP)'', RFC 1990, August 1996 (obsoletes
  655.         RFC1717).
  656.  
  657.    [6]  H. Schulzrinne, S. Casner, R. Frederick, V. Jacobson, ``RTP: A
  658.         Transport Protocol for Real-Time Applications'', RFC 1889,
  659.         January 1996.
  660.  
  661.    [7]  S. Casner, V. Jacobson, ``Compressing IP/UDP/RTP Headers for
  662.         Low-Speed Serial Links'', Work in Progress (draft-ietf-avt-
  663.         crtp-02.txt), March 1997.
  664.  
  665.    [8]  C. Bormann, ``The Multi-Class Extension to Multi-Link PPP'',
  666.         Work in Progress (draft-ietf-issll-isslow-mcml-02.txt), May
  667.         1997.
  668.  
  669.    [9]  C. Bormann, ``PPP in a real-time oriented HDLC-like framing'',
  670.         Work in Progress (draft-ietf-issll-isslow-rtf-01.txt), May 1997.
  671.  
  672.    [10] M. Engan, S. Casner, C. Bormann, ``IP Header Compression over
  673.         PPP'', Work in Progress (draft-casner-ipcp-hc-00.txt), April
  674.         1997.
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.  
  689.  
  690.  
  691.  
  692.  
  693.  
  694. Bormann                                                        [Page 12]
  695.  
  696.