A Two-Time Scale Design for Detection and Rectification of Uncooperative Network Flows X. Fan, K. Chandrayana, M. Arcak, S. Kalyanaraman, J. T. Wen Department of Electrical, Computer, and Systems Engineering Rensselaer Polytechnic Institute Troy, NY 12180 Submitted to the 44th IEEE conference on Decision and Control and European Control Conference ECC 2005 Seville, Spain. December 2005 Abstract— Existing Internet protocols rely on cooperative behavior of end users. We present a control-theoretic algorithm to counteract uncooperative users which change their congestion control schemes to gain larger bandwidth. This algorithm rectifies uncooperative users; that is, forces them to comply with their fair share, by adjusting the prices fed back to them. It is to be implemented at the edge of the network (e.g. by ISPs), and can be used with any congestion notification policy deployed by the network. Our design achieves a separation of time-scales between the network congestion feedback loop and the price-adjustment loop, thus recovering the fair allocation of bandwidth upon a fast transient phase. I. I NTRODUCTION In a network which does not differentiate among users, the equilibrium rate for any user is primarily determined by the congestion control being used [1]. With new software advancements, however, “uncooperative” users can change their congestion control schemes to gain more than their fair share of bandwidth, at the cost of cooperative users. This uncooperative behavior can lead to TCP unfriendliness, congestion collapse [2], [3] and, to a traffic-based denial-of- service to cooperative users [4], [5]. Detecting uncooperative users, and “rectifying” their flow rates to comply with cooperative rates, is thus an important emerging problem in network management. Among rectification mechanisms proposed in the liter- ature, the majority are “router-based” that is, they mod- ify the router algorithm to detect and limit uncooperative flows, e.g. Active Queue Management (AQM) schemes or scheduling disciplines. In [2] and [3], the authors study AQM schemes, and investigate the effect of uncooperative flows on network throughput and loss rates. Flow Random Early Drop (FRED), a modified RED scheme, is proposed in [6] to detect uncooperative users, and to limit their rates by increasing their packet drop probabilities. In [7], the authors combine the BLUE queue management algorithm with a Bloom filter to detect and rate-limit uncooperative flows. Several other rate-based schemes are surveyed in Corresponding author. Electrical, Computer and Systems Engineering Department, Rensselaer Polytechnic Institute, Troy, NY 12180-3590, USA. Tel.: +1-518-276-8205; fax: +1-518-276-6261. [8]. Scheduling schemes, such as ack-spacing, have been suggested to manage uncooperative flows in [9]. More recently, edge-based price-adjustment mechanisms have been proposed in [10] and [11], which manage unco- operative flows only at edge routers. A significant advantage of this approach is that it does not require core network upgrades and can be implemented without performing per flow management at routers. By estimating each flow’s incoming rate and using it to label flow’s packet, the Core- Stateless Fair Queueing (CSFQ) algorithm in [10] computes the forwarding probability from link fair rate estimation. However, this design only applies to networks in which all nodes implement Fair Queueing. In [11], the authors manage uncooperative flows by mapping their utility function to a specified target network behavior at the edge. This study, however needs to estimate the utility function to achieve this edge-based price adjustment, and is thus restricted to a specific form of TCP. In this paper, we develop an edge-based price-adjustment algorithm using tools from singular perturbations theory [18], [19, Chapter 11]. Rather than address a specific protocol, we develop our design within the optimization framework of Kelly [1], [12], [13], [14], [15], which is applicable to diverse types of networks, and encompasses numerous protocols such as TCP Reno, TCP Vegas, FAST [16], [17] etc. Our algorithm recovers the cooperative share of band- width prescribed in Kelly’s framework, with a new feedback loop implemented at the edge router, and, hence, referred to as the “edge supervisor”. It detects uncooperative users by comparing their sending rates with “audit” rates calculated according to an ideal, cooperative, model, and increases their price feedback. Although in this design edge supervisor does perform per flow management by this price adjustment loop, core nodes, which are in general more complex than edge nodes, do not perform per flow management, and therefore the implementation complexity is significantly reduced. We design the price adjustment loop to evolve in a faster time-scale than the existing price feedback loop from the links, because, then, uncooperative flows are rectified during a fast transient phase, after which stability and convergence properties of the desired cooperative network model is re-