test-suite-tcp.txt
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:4k
源码类别:

通讯编程

开发平台:

Visual C++

  1. This is a brief description of the tests in the file
  2. test-suite-tcp.tcl.  These tests can be run with the
  3. command "./test-all-tcp".
  4. ECN:
  5. The "ecn" test shows two TCPs, where one is ECN-capable and the
  6. other is not.
  7. TIMERS:
  8. The "timers" test is the first of a series of tests that test the
  9. behavior of TCP's retransmit timers.  This test shows the retransmit
  10. timeout value when the first packet of a connection is dropped,
  11. and the backoff of the retransmit timer as a subsequent packet is
  12. dropped.  This test also shows that once the retransmit timer is
  13. backed off, it is later un-backed.
  14. For the connection in the top row, the first packet sent by the
  15. connection is dropped, and the retransmitted packet is itself
  16. dropped.  The connection has a maximum window of three packets, so
  17. the TCP sender has to wait for a retransmit timer to recover from
  18. any packet drop.  When another packet from the top connection is
  19. dropped at time 21, the test shows that the retransmit timer is no
  20. longer backed off.  Further, by this time the estimated average
  21. roundtrip time is close to its true value, and the retransmit timer
  22. expires relatively quickly.
  23. The bottom connection has an intermittent demand, constructed to
  24. give the desired behavior for the top connection.  The bottom
  25. connection has a maximum window of five packets, and generally
  26. recovers from a packet drop with a Fast Retransmit.
  27. The reported statistics show the values of the
  28. retransmit timer variables "srtt_", "rttvar_", and "backoff_" 
  29. for the top connection. 
  30. TIMERSA:
  31. The "timersA" test shows the retransmit timer when the third packet
  32. of the top connection is dropped.  Because the top connection has
  33. a maximum window of three packets, the TCP sender always has to
  34. wait for a retransmit timer to recover from a packet drop.
  35. The behavior of the "backoff_" variable in this test requires some
  36. explanation.  After packet 2 of the top connection is dropped, the
  37. first retransmit timer expires, packet 2 is retransmitted, and
  38. the value for "backoff_" is increased to 2.  When the ACK for the
  39. retransmitted packet 2 is received, Karn's algorithm is invoked,
  40. and that ACK is not used in updating the retransmit timer variables.
  41. When packet 5 is sent, "backoff_" is increased to 2, and a large
  42. value is used in setting the retransmit timer.  When the ACK for
  43. packet 5 is received, "backoff_" is reset to 1, so the retransmit
  44. timer is no longer backed off.  When the outstanding retransmit
  45. timer expires (because packet 6 is outstanding), packet 6 is
  46. transmitted, "backoff_" is again increased to 2, and a backed-off
  47. retransmit timer is again set.
  48. TIMERS1, TIMERS2, and TIMERS3:
  49. The test "timers1" uses the default value in the simulator of 0.1
  50. seconds for "tcpTick_", the TCP clock granularity.  "Timers2" uses
  51. "tcpTick_" set to 0.5 seconds, and "timers3" uses "tcpTick_" set
  52. to 0.001 seconds.  These tests use Reno TCP, and in each test the
  53. second packet dropped has to wait for a retransmit timer to expire
  54. before it is retransmitted.
  55. TIMERS4 and TIMERS5:
  56. This test shows that the estimated round-trip time for the retransmit
  57. timers is updated once a roundtrip time, and not once for every
  58. arriving ACK packet.
  59. There are no packets dropped in either of these two tests.  The
  60. two connection differ only in their maximum window.  The reported
  61. values for "srtt_" show that the value for "srtt_" converges at a
  62. similar fashion for the two connections, even though the rate of
  63. arriving ACK packets is very different in the two connections.
  64. STATS1:
  65. This test shows some of the available statistics.
  66. At time 10.0, for each connection the statistics show 
  67. the number of packets sent by the sender (in packets and in 
  68. bytes), the number of ACK packets received by the sender,
  69. the number of retransmitted packets (in packets and in 
  70. bytes), and the number of retransmit timeouts.