home *** CD-ROM | disk | FTP | other *** search
/ ftp.ee.lbl.gov / 2014.05.ftp.ee.lbl.gov.tar / ftp.ee.lbl.gov / papers / redtesting < prev    next >
Text File  |  1997-01-18  |  4KB  |  80 lines

  1. Notes on Testing RED Implementations
  2. by Sally Floyd
  3. October 12, 1996.
  4.  
  5. These are informal notes of procedures to test that RED implementations
  6. are giving the correct behavior.
  7.  
  8. (1)  Check that RED will accommodate a transient queue of some size
  9. before dropping a packet.  
  10.  
  11. Test procedure:  If incoming links A and B are of the same speed as
  12. the outgoing link C with RED, then have N incoming back-to-back packets
  13. on link A, and at the same time N incoming back-to-back packets on link
  14. B.  A transient queue of N packets should be created for outgoing link
  15. C.  Repeat with increasing values of N until the gateway first drops a
  16. packet.
  17.  
  18. Note:  For a RED queue to accomodate a transient burst of N packets,
  19. it is necessary that the buffer be sufficiently large to accomodate
  20. N packets.  Implementing a RED queue with a small buffer is not
  21. recommended.
  22.  
  23. (2)  Check that RED will only drop an occasional packet, as needed,
  24. generally without queue overflow, when a small number of high-bandwidth
  25. TCP connections are using all of the link bandwidth.  Check also that,
  26. over a number of repetitions, the fraction of packet drops received by
  27. each connection is roughly proportional (VERY roughly is fine) to the
  28. fraction of bandwidth received by that connection.  
  29.  
  30. Test procedure for lower bandwidth links:  Start a Reno TCP
  31. connection, with the receiver's advertised window set sufficiently
  32. large to use all of the available bandwidth on link C.  Then start a
  33. second Reno TCP connection, also capable of using all of the link
  34. bandwidth.  The steady-state result should be a small, infrequent rate
  35. of packet drops, but with high link utilization, generally without
  36. bursts of packets dropped from a single connection.  Add a small telnet
  37. connection, and check that the average queueing delay and drop rate for
  38. that connection is low.
  39.  
  40. Note:  Of course, the number of TCPs needed to create congestion will
  41. depend somewhat on the link bandwidth.  On Gigabit links, a single TCP
  42. is not likely to be able to use all of the link bandwidth.
  43.  
  44. (3)  Check that RED will frequently drop packets, as needed, but
  45. without queue overflow, when the traffic consists of many short TCP
  46. connections.  
  47.  
  48. Test procedure: Start a large number of TCP connections, each with a
  49. small receiver's advertised window.  Start enough TCPs, one at a time,
  50. until the demand is significantly higher that the available bandwidth.
  51. The result should be a large, frequent rate of packet drops, but with
  52. high link utilization and no queue overflow.  Add a small telnet
  53. connection, and check that the average queueing delay for that
  54. connection is low.  The drop rate will be higher that it would be in
  55. (2) above.
  56.  
  57. (4)  Check that there is not a bias against bursty connections using
  58. only a small fraction of the link bandwidth.
  59.  
  60. Note:  If the packet-dropping rate is a function of the instantaneous
  61. queue size instead of the average queue size, the result will be a bias
  62. against bursty connections.
  63.  
  64. (5)  Check that global synchronization across multiple TCP connections
  65. is avoided.
  66.  
  67. Test procedure:  Similar to test (2) above, with from two to four
  68. active TCP connections, each capable of using all of the link bandwidth.
  69. If there is global synchronization, with multiple TCP connections all
  70. going though slow-start at the same time, the result will be
  71. low link utilization of the congested link.
  72.  
  73. Note:  Drop-tail gateways can result in packets dropped from multiple
  74. TCP connections at roughly the same time.  The result is that the
  75. TCP connections also reduce their congestion windows at the same time,
  76. reducing in lowered link utilization of the congested link.
  77. Global synchronization could also result from a RED implementation
  78. where the packet-dropping rate is a function of the instantaneous
  79. queue size instead of the average queue size.
  80.