CCTCP: A Scalable Receiver-driven Congestion Control Protocol for - PowerPoint PPT Presentation
CCTCP: A Scalable Receiver-driven Congestion Control Protocol for Content Centric Networking Lorenzo Saino, Cosmin Cocora and George Pavlou Communications and Information Systems Group Department of Electrical and Electronics Engineering
CCTCP: A Scalable Receiver-driven Congestion Control Protocol for Content Centric Networking Lorenzo Saino, Cosmin Cocora and George Pavlou Communications and Information Systems Group Department of Electrical and Electronics Engineering University College London {l.saino,c.cocora,g.pavlou}@ee.ucl.ac.uk
Content Centric Networking (CCN) ◮ Content Centric Networking (CCN) 1 is a recently proposed Internet architecture which shifts the main network abstraction from node identifiers to location-agnostic content identifiers. ◮ In CCN, content objects are partitioned into addressable chunks which can be contained within a single packet and reactively cached at any router along a path. ◮ Two network primitives: ◮ Interest packets, which are routed according to the identifier of the requested content towards the closest available copy ◮ Data packets, which deliver the requested content chunk in response to an Interest packet 1 V. Jacobson, D. Smetters, J. Thornton, M. Plass, N. Briggs, and R. Braynard. Networking named content. ACM CoNEXT 2009
Transport issues in CCN Since contents are cached with a packet-level granularity, chunks may be served by different network nodes when retrieving an entire content object. This makes TCP-based implicit-feedback congestion control mechanisms inefficient: ◮ Out-of-order delivery or variations in inter-arrival times may be caused by adjacent chunks being served by different caches rather than congestion. ◮ RTO estimation is unreliable because of greater RTT variability caused by frequently changing chunk sources.
Proposed transport protocols for CCN Currently proposed transport protocols can be categorized in: ◮ Receiver-driven ◮ Control loop in the receiver, stateless routers ◮ Proposals: ICTP 2 , ICP 3 , ConTug 4 ◮ Hop-by-hop ◮ Control loop in the routers which need to keep per-flow state ◮ Possibility to control misbehaving receivers ◮ Proposals: HoBHIS 5 HR-ICP 6 2 S. Salsano, A. Detti, M. Cancellieri, M. Pomposini, and N. Blefari-Melazzi, ”Transport-layer issues in information centric networks”, ICN workshop, ACM SIGCOMM 2012 3 G. Carofiglio, M. Gallo, and L. Muscariello, ”ICP: Design and evaluation of an interest control protocol for content-centric networking”, NOMEN workshop, IEEE INFOCOM 2012 4 S. Arianfar, P. Nikander, L. Eggert, and J. Ott, ”Contug: A receiver-driven transport protocol for content-centric networks”, in IEEE ICNP 2010 (Poster session) 5 N. Rozhnova and S. Fdida, ”An effective hop-by-hop interest shaping mechanism for CCN communications, NOMEN workshop, IEEE INFOCOM 2012 6 G. Carofiglio and L. Muscariello, Joint hop-by-hop and receiver-driven interest control protocol for content-centric networks, ICN workshop, ACM SIGCOMM 2012
Content Centric TCP (CCTCP) Design objectives and assumptions Design Objectives ◮ Incremental deployability ◮ Scalability to Internet scale ◮ Fairness among CCTCP flows and with legacy TCP flows ◮ Independence from caching policies and caches location Assumptions ◮ Interest and Data packets follow the same path in opposite directions at the CCN layer ◮ Interest packets are routed to the original source. A cached copy is served only if on the path between receiver and original source
Content Centric TCP (CCTCP) Protocol overview ◮ Core features: ◮ Receiver-driven, window-based, implicit-feedback congestion control ◮ Slow start and congestion avoidance phases based on TCP New Reno ◮ Only timeout expiration used as signal of congestion. No window size drop on out-of-order arrivals. ◮ Fast recovery at timeout expiration ◮ CCTCP keeps one retransmission timeout and one congestion window per each expected source of chunks ◮ Expected source is predicted before sending an Interest packet, thanks to the anticipated interests mechanism
Anticipated interests mechanism B A RCV R k R n T I I N T E R E S T ( A anticipated interest: B ) T I (k) I N T E R E S T ( A B: Router = K, TS = T I (K) ) T D - T I T D (k) - T I (k) DATA(A) K ) T ( = S T I K , = r t e o u R T D (k) B : DATA(A) ) ( K T - K ) I ( = T ∆ T D K , = e r T D u t R o B : RTT ( k ) = ( T D − T I ) − ( T D ( k ) − T I ( k ))
Window and timeout update algorithms ◮ Timeout calculated according to RTO k-1 RTO k RTO k+1 RTO s CWND k-1 CWND k CWND k+1 CWND s TCP’s Jacobson algorithm RCV k-1 k k+1 s ◮ At each timeout expiration SLOW CONGESTION RTO ( i + 1) ← − 2 × RTO ( i ) and START AVOIDANCE CWND ( i + 1) ← − CWND ( i ) / 2 FLOW PROGRESSION ◮ At each Data packet reception, CWND ( k ) SRTT ( k ) ≥ CWND ( k + x ) rate is increased for all caches SRTT ( k + x ) between the receiver and the expected source RTO ( k ) ≤ RTO ( k + x ) ◮ At each timeout expiration, rate is ∀ x ∈ [1 , s − k ] increased for the expected source and all caches beyond it
Pacing of Interest packets ◮ Data packets are larger than Interest packets and therefore RCV SRC also their T tx is larger ◮ If Interest packets are sent in a INTEREST burts, Data packets sent in response to Interests at the end ) 1 ( T T ) 2 of the burst will experience R ( T T ) 3 DATA R ( longer RTT T T R ◮ Solution: pace the sending of Interest packets over an RTT period: T send ( i ) = SRTT ( i ) CWND ( i )
Performance evaluation Simulation scenario S R 10Mbps 10Mbps R S 40Mbps 40Mbps R C S C C C R S R S ◮ Metric: Flow Completion Time (FCT) ◮ Variable conditions: ◮ Cache sizes: 0 . 02 P and 0 . 08 P ◮ Content popularity α : 0.64, 1.03 ◮ Caching policies: ALL+LRU, ALL+LFU, RAND+LRU ◮ Comparison with ICP and CCTCP w/o Anticipated Interests
Performance evaluation Flow Competion Time (FCT), cumulative probability 1.0 1.0 0.8 0.8 0.6 0.6 CDF CDF 0.4 0.4 CCTCP, C=0.02P CCTCP, C=0.02P CCTCP, C=0.08P CCTCP, C=0.08P CCTCP w/o AI, C=0.02P CCTCP w/o AI, C=0.02P 0.2 0.2 CCTCP w/o AI, C=0.08P CCTCP w/o AI, C=0.08P ICP, C=0.02P ICP, C=0.02P ICP, C=0.08P ICP, C=0.08P 0.0 0.0 0 5 10 15 20 25 30 0 5 10 15 20 25 30 35 Flow Completion Time (sec) Flow Completion Time (sec) (a) ALL+LRU, α = 0 . 64 (b) ALL+LRU, α = 1 . 03 1.0 1.0 0.8 0.8 0.6 0.6 CDF CDF 0.4 0.4 CCTCP, C=0.02P CCTCP, C=0.02P CCTCP, C=0.08P CCTCP, C=0.08P CCTCP w/o AI, C=0.02P CCTCP w/o AI, C=0.02P 0.2 0.2 CCTCP w/o AI, C=0.08P CCTCP w/o AI, C=0.08P ICP, C=0.02P ICP, C=0.02P ICP, C=0.08P ICP, C=0.08P 0.0 0.0 0 5 10 15 20 25 30 0 5 10 15 20 25 30 35 Flow Completion Time (sec) Flow Completion Time (sec) (c) RAND+LRU α = 0 . 64 (d) RAND+LRU, α = 1 . 03
Performance evaluation Impact of inter-cache distance 1.0 0.8 0.6 CDF 0.4 CCTCP, 1 ms CCTCP, 5 ms CCTCP w/o AI, 1 ms 0.2 CCTCP w/o AI, 5 ms ICP, 1 ms ICP, 5 ms 0.0 0 5 10 15 20 25 30 Flow Completion Time (sec)
Conclusions and future work ◮ Previously proposed receiver-driven transport protocols for CCN cannot reliably identify congestion by keeping a single timeout value. ◮ Hop-by-hop protocols can cope with with source variability but at the cost of requiring each router to keep per-flow state. ◮ CCTCP considerably outperforms other receiver-driven proposals and the performance gain provided by anticipated interests is substantial. ◮ Results presented here have been gathered using an unoptimized algorithm for selecting anticipated interests chunks set. Optimized algorithms can further improve performance.
Recommend
More recommend
Explore More Topics
Stay informed with curated content and fresh updates.