home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / dcom / cellrel / 259 < prev    next >
Encoding:
Text File  |  1992-07-27  |  8.4 KB  |  178 lines

  1. Newsgroups: comp.dcom.cell-relay
  2. Path: sparky!uunet!mcsun!sun4nl!research.ptt.nl!walvdrk
  3. From: walvdrk@research.ptt.nl (KEES VAN DER WAL)
  4. Subject: Re: Congestion Avoidance
  5. Message-ID: <1992Jul27.203657.1@research.ptt.nl>
  6. Sender: usenet@spider.research.ptt.nl (USEnet News)
  7. Nntp-Posting-Host: dnlts0
  8. Organization: PTT Research, The Netherlands
  9. References: <1992Jul18.230550.3046@sics.se> <1992Jul19.130005.1@research.ptt.nl> <1992Jul25.092823.12189@e2big.mko.dec.com>
  10. Date: Mon, 27 Jul 1992 19:36:57 GMT
  11. Lines: 165
  12.  
  13. In article <1992Jul25.092823.12189@e2big.mko.dec.com>,
  14. pettengill@cvg.enet.dec.com () writes: 
  15.  
  16. > In article <1992Jul19.130005.1@research.ptt.nl>, walvdrk@research.ptt.nl
  17. >(KEES VAN DER WAL) writes: 
  18.  
  19. > |>PS. What worries me most at the moment is more the flow control measures to be
  20. > |>taken for the network's sake, ie. how to avoid or solve congestion. I haven't
  21. > |>seen any clear concepts on how to do that. 
  22.  
  23. > Think about congestion avoidance.  Why avoidance?  Well, if you do congestion
  24. > control, then you incur large (relative to the normal data rate) timeouts,
  25. > and all sorts of other disruptions.  With congestion avoidance, you are
  26. > somehow detecting the possibility of loss and then taking action to prevent
  27. > this loss from occurring.
  28. > There is one sure way to avoid congestion loss: reserve sufficient bandwidth.
  29. > The problem with data communication is that, unlike voice which goes from
  30. > nothing to next to nothing, or video which is basically fixed at a constant
  31. > lot of data, data comm goes from nothing to mucho data and then back to nothing
  32. > in rather unpredictable patterns.  Reserving mucho capacity will be expensive,
  33. > but not reserving it leads to the likelihood that every user will want to
  34. > use mucho bandwidth at just about the same time.  I've monitored Ethernet
  35. > traffic, and I've seen it behave like sewer flow on Super Bowl Sunday, massive
  36. > flows during timeouts and halftime, but not much in between.
  37.  
  38. I partly agree. Not about video; the cellrate that comes out of the coder 
  39. depends very much on the coding/compression algorithm. Actually, the "natural" 
  40. behaviour is quite irregular: a lot of data when there's a lot of changes on
  41. the screen and hardly any data if there isn't. Of course it's better to 
  42. "smooth" the bare output of the coder at the cost of some additional delay.
  43. Smoothing can be made so good that a continuous flow results. If the coder 
  44. creates more data than the smoother is allowed to put into the network, you're 
  45. loosing in quality. In a cell-relay network you might (in principle) be allowed 
  46. to send that additional amount of data rather than discarding it at the source.
  47.  
  48.  
  49. But, going back to congestion: somewhere in the grey history of ATM it has been 
  50. decided that it should be possible to guarantee the user a certain level of 
  51. cell-loss and cell-delay. Not an unwise decision to my opinion, but that rather 
  52. simple choice had great consequences:
  53.  
  54. You can only "guarantee" somehting if you know what's going to happen in 
  55. your network, so:
  56.  
  57. 1). You can only do that in a connection oriented network.
  58.  
  59. 2). The user has to specify the (worst case) characteristics of his source.
  60.  
  61. 3). The source has to be policed to ensure 2).
  62.  
  63.  
  64.  
  65. But, next to those high-quality applications there's also other applications 
  66. that are not too much interested in strict "guarantees" of the network 
  67. performance. For the sake of simplicity I only take the "loss" parameter into 
  68. account, not the "delay".
  69.  
  70. Combine that with the observation that there's a number of sources sending 
  71. either "nothing" or "mucho" but "moderate" on the average, and there's a number 
  72. of ideal candidates to be multiplexed together.
  73.  
  74. That won't work if "mucho" is e.g. 1/2 or 1/10 of the rate at the output of the 
  75. multiplexer. If the source peakrate is less, and if the "on"-time of the 
  76. sources is known, you can do some calculations about the probability that a
  77. certain amount of output capacity is required. 
  78.  
  79. Even with overall loss figures in the order of 10E-10, nobody is going to 
  80. observe any difference between:
  81.  
  82. Operator A, who allocates on the peak rate of every individual source
  83.  
  84. Operator B, who allocates less than A but calculated that the probability that 
  85. the required aggragate of capacity is more than he allocated is 1E-11.
  86.  
  87.  
  88. Both operators are following the belief of "congestion avoidance". Obviously, 
  89. operator B has to make more complicated traffic contracts and more elaborated 
  90. policing to stick to the "guaranteed" figures.
  91.  
  92.  
  93. Now, operator C is coming in, eager to do better than A and B. He realises that 
  94. a large number of applications don't really need the 1E-10 loss figure and that 
  95. (for the same situation), he can allocate even less than operator B. 
  96. Until, of course, his customers are going to complain.
  97.  
  98.  
  99. It seems to me a "natural" development from B to C, until also the data 
  100. applications start to complain about too much loss. If C wants to keep his 
  101. "high-quality" customers happy, he'll have to do some more work than A and B to 
  102. ensure a strict separation of the two (or more) "quality classes".
  103.  
  104.  
  105. C has to cope with congestion, because it's his "policy" to allow congestion 
  106. for a limited fraction of the time. Doing a rough guess I estimate that 
  107. somehting in the order of 1E-3 to 1E-4 fraction of the time wouldn't be any
  108. problem for most data applications. 
  109.  
  110. Congestion can only be avoided if you either follow operator A (or B) policy, 
  111. not with C's policy.
  112.  
  113.  
  114. > Some protocols are real bad news under these circumstances; faced with a
  115. > loss, they just add their retries on top of new requests.  This, of course,
  116. > just makes matters worse.  If you can see the global picture, the best
  117. > solution in an ATM kind of network would be discard everything from most
  118. > of the active circuit in sort of a rolling blackout kind of mode.  Anything
  119. > else, and you end up with either total congestion collapse or you end up
  120. > with the good citizens like TCP and DECnet giving up virtually all claim
  121. > to any bandwidth to the hogs like NFS.
  122.  
  123. But how do you recover from such a "discard all" situation, where all source 
  124. are eager to restart the transmission to finally send those cells that should 
  125. have been sent already a second ago? It seems to me some kind of 
  126. self-synchronising phenomenon as the occurence of a congestion is the 
  127. "director" that orchestrates a new disaster. 
  128.  
  129.  
  130. The only "solutions" I see are either one of the following approaches:
  131.  
  132. i) after detecting a congestion every source throttles down to zero (or some
  133. guranteed minimum) and then resumes normal and unrestricted operation in an
  134. *un*correlated way by waiting a randomly selected time.
  135.  
  136. ii) after detecting a congestion every source throttles down to zero (or some
  137. guranteed minimum) and then resumes normal and unrestricted operation by slowly 
  138. increasing the peak cell rate from minimum to the maximum allowed. The increase 
  139. in peak rate should be done so slow that the time from end-of-congestion to 
  140. start-of-potential-new-congestion is so long that uncorrelated behaviour is a 
  141. safe assumption by then.
  142.  
  143.  
  144.  
  145. > While this situation can and does occur with frame switching (bridged or
  146. > routed Ethernet, token ring, or FDDI LANs), at least you can be fairly
  147. > sure that discarding a frame isn't going to result the retransmission of
  148. > hundreds of frames, and the number of packets is small enough so that a
  149. > discard policy that considers past history is conceivable. 
  150.  
  151. I don't understand this point. What do you mean with "discard policy"? Do you 
  152. propose to selectively discard (all) cells from a limited number of connections 
  153. like e.g. chose some scapegoat-connection randomly, kill all their cells and
  154. solve the congestion? 
  155.  
  156.  
  157. > In addition,
  158. > it is also reasonable to include sufficient buffering in the network
  159. > to handle seconds worth data to allow riding thru short periods of congestion.
  160. > This latter solution is not at all possible for ATM because of the timeliness
  161. > requirements of voice and video.
  162.  
  163. It could be done, but you'll need time priorities in the network to handle the 
  164. delay-sensitive cells (connections) separately from the delay-tolerant cells
  165. (connections). That would mean another step in complicating the ATM network.
  166. I'm not eager to take that step before I've been convinced it's _really_
  167. necessary. 
  168.  
  169.  
  170. Regards, <kees>
  171.  
  172. Kees  van der Wal               e-mail: J.C.vanderWal@research.ptt.nl
  173. ----------------------------------------------------------------------------
  174. PTT Research Neher Laboratories                      Room: E130
  175. Sint Paulusstraat 4                     Fax: +31 70 3326477
  176. 2264 XZ  Leidschendam  The Netherlands               Phone: +31 70 3326295
  177.