home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1257.txt < prev    next >
Text File  |  1996-05-07  |  11KB  |  155 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                       C. Partridge Request for Comments: 1257         Swedish Institute of Computer Science                                                           September 1991 
  8.  
  9.     Isochronous Applications Do Not Require Jitter-Controlled Networks 
  10.  
  11. Status of this Memo 
  12.  
  13.    This memo provides information for the Internet community.  It does    not specify an Internet standard.  Distribution of this memo is    unlimited. 
  14.  
  15. Abstract 
  16.  
  17.    This memo argues that jitter control is not required for networks to    support isochronous applications.  A network providing bandwidth and    bounds delay is sufficient.  The implications for gigabit    internetworking protocols are briefly considered. 
  18.  
  19. Introduction 
  20.  
  21.    An oft-stated goal of many of the ongoing gigabit networking research    projects is to make it possible to support high bandwidth isochronous    applications.  An isochronous application is an application which    must generate or process regular amounts of data at fixed intervals.    Examples of such applications include telephones, which send and    receive voice samples at regular intervals, and fixed rate video-    codecs, which generate data at regular intervals and which must    receive data at regular intervals. 
  22.  
  23.    One of the properties of isochronous applications like voice and    video data streams is that their users may be sensitive to the    variation in interarrival times between data delivered to the final    output device.  This interarrival time is called "jitter" for very    small variances (less than 10 Hz) and "wander" if it is somewhat    larger (less than one day).  For convenience, this memo will use the    term jitter for both jitter and wander. 
  24.  
  25.    A couple of examples help illustrate the sensitivity of applications    to jitter.  Consider a user watching a video at her workstation.  If    the screen is not updated regularly every 30th of a second or faster,    the user will notice a flickering in the image.  Similarly, if voice    samples are not delivered at regular intervals, voice output may    sound distorted.  Thus the user is sensitive to the interarrival time    of data at the output device. 
  26.  
  27.    Observe that if two users are conferring with each other from their 
  28.  
  29.  
  30.  
  31. Partridge                                                       [Page 1] 
  32.  RFC 1257                 Isochronous and Jitter           September 1991 
  33.  
  34.     workstations, then beyond sensitivity to interarrival times, the    users will also be sensitive to end-to-end delay.  Consider the    difference between conferencing over a satellite link and a    terrestrial link.  Furthermore, for the data to be able to arrive in    time, there must be sufficient bandwidth.  Bandwidth requirements are    particularly important for video: HDTV, even after compression,    currently requires bandwidth in excess of 100 Mbits/second. 
  35.  
  36.    Because multimedia applications are sensitive to jitter, bandwidth    and delay, it has been suggested that the networks that carry    multimedia traffic must be able to allocate and control jitter,    bandwidth and delay [1,2]. 
  37.  
  38.    This memo argues that a network which simply controls bandwidth and    delay is sufficient to support networked multimedia applications.    Jitter control is not required. 
  39.  
  40. Isochrony without Jitter Control 
  41.  
  42.    The key argument of this memo is that an isochronous service can be    provided by simply bounding the maximum delay through the network. 
  43.  
  44.    To prove this argument, consider the following scenario. 
  45.  
  46.    The network is able to bound the maximum transit delay on a channel    between sender and receiver and at least the receiver knows what the    bound is.  (These assumptions come directly from our assertion that    the network can bound delay).  The term "channel" is used to mean    some amount of bandwidth delivered over some path between sender and    receiver. 
  47.  
  48.    Now imagine an operating system in which applications can be    scheduled to be active at regular intervals. Further assume that the    receiving application has buffer space equal to the channel bandwidth    times the maximum interarrival variance.  (Observe that the maximum    interarrival variance is always known - in the worst case, the    receiver can assume the maximum variance equals the maximum delay). 
  49.  
  50.    Now consider a situation in which the sender of the isochronous data    timestamps each piece of data when it is generated, using a universal    time source, and then sends the data to the receiver.  The receiver    reads a piece data in as soon as it is received and and places the    timestamped data into its buffer space.  The receiver processes each    piece of data only at the time equal to the data's timestamp plus the    maximum transit delay. 
  51.  
  52.    I argue that the receiver is processing data isochronously and thus    we have shown that a network need not be isochronous to support 
  53.  
  54.  
  55.  
  56. Partridge                                                       [Page 2] 
  57.  RFC 1257                 Isochronous and Jitter           September 1991 
  58.  
  59.     isochronous applications. 
  60.  
  61.    A few issues have to be resolved to really make this proof stick. 
  62.  
  63.    The first issue is whether the operating system can be expected to    schedule applications to be active at regular intervals.  I will    argue that whether or not the network is isochronous, the operating    system must be able to schedule applications at regular intervals 
  64.  
  65.    Consider an isochronous network which delivers data with a tight    bound on jitter.  If the application on the receiving system does not    wake up when new data arrives, but waits until its next turn in the    processor, then the isochrony of the network service would be lost    due to the vagaries of operating system scheduling.  Thus, we may    reasonably expect that the operating system provides some mechanism    for waking up the application in response to a network interrupt for    a particular packet.  But if the operating system can wake up an    application in response to an interrupt, it can just as easily wake    the application in response to a clock interrupt at a particular    time.  Waking up to a clock interrupt provides the regular scheduling    service we wanted. 
  66.  
  67.    Observe that the last paragraph suggests an application of the End-    To-End Principle [3].  Given that the operating system must provide a    mechanism sufficient for restoring isochrony, regardless of whether    the network is isochronous, it seems unreasonable to require the    network to redundantly provide the same service. 
  68.  
  69.    Another issue is the question of whether all receiving systems will    have memory for buffering.  For example, the telephone network is    required to deliver its data isochronously because many telephones do    not have memory. However, most receiving devices do have memory, and    those devices, like telephones, that do not currently have memory    seem likely to have memory in the future.  Many telephones have a    modest amount of memory now.  Furthermore, even if the end nodes    require isochronous traffic it is possible that last switch before    delivery to the end node could provide the necessary buffer space to    restore isochrony to the data flow. 
  70.  
  71.    Readers may wonder if the assumption of a universal time source is    reasonable.  The Network Time Protocol (NTP) has been widely tested    on the Internet and is capable of distributing time accurately to the    millisecond [4].  Its designer is currently contemplating the    possibility of distributing time accurate to the microsecond. 
  72.  
  73. Some Implications 
  74.  
  75.    The most important observation that can be made is that jitter 
  76.  
  77.  
  78.  
  79. Partridge                                                       [Page 3] 
  80.  RFC 1257                 Isochronous and Jitter           September 1991 
  81.  
  82.     control is not required for networks to be able to support    isochronous applications.  A corollary observation is that if we are    to design an internetworking protocol for isochronous applications,    that internetworking protocol should probably only offer control over    delay and bandwidth.  (There may exist networks that simply manage    delay and bandwidth. We know that's sufficient for multimedia    networking so our multimedia internetworking protocol should be    capable of running over those networks.  But if the multimedia    internetworking protocol requires control over jitter too, then    jitter control must be implemented on those subnetworks that don't    have it.  Implementing jitter control is clearly feasible - the    method for restoring jitter in the last section could be used on a    single network.  But if we know jitter control isn't needed, why    require networks to implement it?) 
  83.  
  84.    Note that the argument simply says that jitter control is not    required to support isochronous applications.  It may be the case    that jitter control is useful for other reasons.  For example, work    at Berkeley suggests that jitter control makes it possible to reduce    the amount of buffering required in intermediate network nodes [Y].    Thus, even if applications express their requirements only in terms    of bandwidth and delay, a network may find it useful to try to limit    jitter and thereby reduce the amount of memory required in each node. 
  85.  
  86. Acknowledgements 
  87.  
  88.    Thanks to the members of the End-To-End Interest mailing list who    provided a number of invaluable comments on this memo. 
  89.  
  90. References 
  91.  
  92.    [1] Leiner, B., Editor, "Critical Issues in High Bandwidth        Networking", Report to DARPA, August 1988. 
  93.  
  94.    [2] Ferrari, D., "Client Requirements for Real-Time Communication        Services", IEEE Communications Magazine, November 1990.  See also        RFC 1193, November, 1990. 
  95.  
  96.    [3] Saltzer, J., Reed D., and D. Clark, "End-To-End Arguments in        System Design", ACM Transactions on Computer Systems, Vol. 2, No.        4, November 1984. 
  97.  
  98.    [4] Mills, D., "Measured Performance of the Network Time Protocol in        the Internet System", RFC 1128, UDEL, October 1989. 
  99.  
  100.    [5] Verma, D., Zhang H., and D. Ferrari. "Guaranteeing Delay Jitter        Bounds in Packet Switching Networks", Proceedings of TriComm '91,        Chapel Hill, North Carolina, April 1991. 
  101.  
  102.  
  103.  
  104. Partridge                                                       [Page 4] 
  105.  RFC 1257                 Isochronous and Jitter           September 1991 
  106.  
  107.  Security Considertaions 
  108.  
  109.    Security issues are not discussed in this memo. 
  110.  
  111. Author's Address 
  112.  
  113.    Craig Partridge    Swedish Institute of Computer Science    Box 1263    164 28 Kista    SWEDEN 
  114.  
  115.    Phone: +46 8 752 1524 
  116.  
  117.    EMail: craig@SICS.SE 
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  Partridge                                                       [Page 5] 
  154.  
  155.