1. A method of controlling data flow to reduce congestion in a server having a plurality of ports including a plurality of ingress ports and a plurality of egress ports, comprising the steps of: detecting first congestion in a first data flow through a first component of said server, wherein said first component is coupled to one of said plurality of ports; controlling said first data flow through said first component in response to said first congestion; sending a first signal from said first component to a second component of said server in response to said first congestion; controlling a second data flow through said second component in response to said first signal; detecting second congestion in said second data flow by said second component; sending a second signal from said second component in response to said second congestion; and controlling a third data flow through said third component in response to said second signal by communicating through an out-of-band signal to an opposite second component carrying data flow contributing to said third congestion wherein the out-of-band signal instructs the opposite second component to control the corresponding data flow associated with said opposite second component.