[mod.protocols.tcp-ip] Vertically Moving Congestion

JOHNSON@NUHUB.ACS.NORTHEASTERN.EDU.UUCP (02/19/87)

     Hi people.

     From time to time there has been discussion on the list about what 
happens when you try to solve a congestion problem at a particular 
layer.  Vary often you end up solving the problem at the layer you 
wanted only to find that a new layer has become congested.  This can 
be called Vertically Moving Congestion or VMC.

     We've probably all seen VMC happen in many different networks.  I
went to a DECUS not long ago and talked to some DECNET wizards.  They of
course knew of the problem but hadn't addressed it.  I don't think the 
x.25 gang have and I'm not sure about ISO.  I haven't heard a lot about 
this from the TCP/IP bunch either.

     Some time ago I tried to arouse a little interest in VMC on the
list and that's exactly what I got, a little interest. 

     Time has passed and to the best of my knowledge the problem still 
exists (unless somebody snuck the solution by when I was asleep).  I was 
wondering whether or not anyone had given any more thought to the 
following question:  What kind of traffic monitoring/resource use
information needs to be passed vertically to help alleviate the problem?

     Another interesting question:  Is the problem solvable? 

     I've been thinking about this for some years now, ever since I 
first ran into it.  I'm not even sure I've gotten to the rule of thumb 
stage for an answer yet.

     Am I showing my ignorance of the literature here?  Has someone 
solved this behind my back?  Does anybody really care?

     Any takers?  


Chris Johnson
Northeastern University

csnet:      johnson@nuhub.acs.northeastern.edu
arpa:       johnson%nuhub.acs.northeastern.edu@relay.cs.net
at&t:       (617) 437-2335

Lixia@XX.LCS.MIT.EDU.UUCP (02/21/87)

>     Any takers?

Sure.  I'm working on the problem.  In fact I received your msg just when I
came back from picking up a new print of my draft of a group memo, titled

     "The Interactions of Date Flow Control at Different Protocol Layers"

I can give you a copy when it's done (be a bit patient; I have other things to
do too).

Some brief comments on your message:

- I do not agree with the view of "vertically moving congestion".  Generally
speaking, each data transmission layer (link, network, internet, and transport)
should have a flow control mechanism; each control has its own goals and
responsibilities; none should be missing.

>    Vary often you end up solving the problem at the layer you 
>wanted only to find that a new layer has become congested.  This can 
>be called Vertically Moving Congestion or VMC.

  You got this feeling because in today's networks the control is often missing
at one layer or another (lack of coordiation between layers is also bad).
Missing control at one layer can cause problems showing up at other layers.

- I agree with you that one hardly can find studies that address this problem.

  I wouldn't bother to ask standardization people about it, because they 
don't (SHOULD NOT!) make solutions themselves to unsolved research
problems; they (should) only take over solutions after the research is done
and the running experience with the solutions has been collected.

>  I was 
>wondering whether or not anyone had given any more thought to the 
>following question:  What kind of traffic monitoring/resource use
>information needs to be passed vertically to help alleviate the problem?

  I consider we need two things here: one is a vertical communication channel
that can pass info across protocol layers, another is a good flow control
mechanism that has control parameters that are meaningful to other layers.

  I may not have made the second point clear, let me try an example: with a
file transfer, can you figure out the actual rate at which data are dumped to
the net, by looking at the TCP window size?  You probably can't, because the
throughput depends on the round trip delay too, and because window doesn't tell
you how many retransmissions are made.  But if you can't, the network cannot
either, which means window size is not very meaningful when passed across
layers.

>     Another interesting question:  Is the problem solvable?

I feel the question is a bit too broad or unclear -- what is your definition of
"solvable"?  Anyway, I think the answer is yes by my definition, that is,
congestion can be controlled.

Lixia
-------