Virtual Clock A New Traffic Control Algorithm for









- Slides: 9
Virtual Clock: A New Traffic Control Algorithm for Packet-Switched Networks Lixia Zhang Xerox Palo Alto Research Center Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
Virtual Clock n Rate Based Packet Scheduling algorithm for Network Switches n Aims to avoid congestion in LFNs n Attempts to meet guaranteed throughput and bounded delay requirements of new applications (with possibly relaxed requirement for error recovery) Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
Attributes of Virtual Clock n Controls average transmission rate of statistical data flows n Enforces each user’s average resource usage as per specified throughput n Provides firewall protection among individual flows n Supports multilevel priority services for different flows n Enforces network resource usage to prevent interference among different users, without sacrificing the fundamental, statistical multiplexing feature of packet switching. n Attends to delivery of best-effort datagram traffic at lowest level of priority Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
The Clocks in ‘Virtual Clock’ n VC – Virtual Clock n n n Serves as a Flow Meter for each flow Monitors the Average Transmission Rate aux. VC – Auxiliary Virtual Clock n n Serves as a service ordering mechanism Does not allow Credit Saving n Squashes the burstiness in flows Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
Data Forwarding Algorithm 1. Upon receiving first packet from flowi Vci Aux. VCi real time 2. Upon receiving each packet from flowi 1. Aux. VCi max(real time, Aux. VCi) 2. Vci (Vci + Vticki), 3. Aux. VCi (Aux. VCi + Vticki) 4. Stamp packet with Aux. VCi value 3. Insert packet into outgoing queue. Packets are queued and served in the order of increasing stamp values Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
Flow Monitoring Algorithm n AIRi = ARi * Aii n Upon receiving every set of AIRi data packets from flowi , the switch checks the flow as follows: n If (VCi – real time) > T, n Send warning message to flow source n Take further control actions depending on source reaction n If (VCi < real time), VCi real time n Synchronize VCi and Aux. VCi as long as no out-of-order service results in flowi i. e. , Aux. VCi , if either outgoing link for flowi is idle, or packet being transmitted has a stamp value greater than Aux. VCi. Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
Algorithm Behavior n VC and Aux. VC are close in value if packets arrive at the expected time or n Aux. VC may have large value temporarily when a burst of packets arrives n Queuing packets in order of their timestamp values makes packets from different flows maximally interleaved as in an RR service system. n Data Flow Monitoring: Difference between VC and ‘real time’ indicates how closely a running flow is following its specified transmission rate. n Firewall protection: Flows that violate their reservations automatically receive the worst service because their Virtual Clocks advance too far beyond ‘real time’. Their packets are placed at the end of the service queue, or discarded. earlier. very late in the ‘AIR’ interval, till being sync’ed with VC again. Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
Algorithm Behavior (contd. . ) n A Side effect of Virtual clocking is that the queuing delay for each flow is allocated according to the burstiness of the flow (note: delay is not bounded!). n The 2 virtual clocks control the balance between ‘No Credit Saving’ and ‘Burstiness Tolerance’ n T = AI*IR: Tradeoff between a period too large to detect overload promptly, or too small for stable control – (Good design decision!) n Multilevel priority: Can be accommodated by simply letting each switch replace ‘real time’ by ‘real time – P’. Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021
Contributions & Scope for Improvement n Achieves imitation of a TDM system, in a statistically multiplexed (ie. , packet switched) network (best of both worlds!) n Best Computational efficiency achievable is exactly that for a normal queue insertion/deletion algorithm (O(log N)) n Does not guarantee Bounded End-to-end Delay, (and loss-free data transmission). Presented by Gaurav Navlakha CS 497 HOU, Fall 2001 12/28/2021