CCTCP: A Scalable Receiver-driven Congestion Control Protocol for - - PowerPoint PPT Presentation

cctcp a scalable receiver driven congestion control
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

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

slide-2
SLIDE 2

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

  • 1V. Jacobson, D. Smetters, J. Thornton, M. Plass, N. Briggs, and R. Braynard. Networking

named content. ACM CoNEXT 2009

slide-3
SLIDE 3

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.

slide-4
SLIDE 4

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

  • 2S. Salsano, A. Detti, M. Cancellieri, M. Pomposini, and N. Blefari-Melazzi, ”Transport-layer

issues in information centric networks”, ICN workshop, ACM SIGCOMM 2012

  • 3G. Carofiglio, M. Gallo, and L. Muscariello, ”ICP: Design and evaluation of an interest control

protocol for content-centric networking”, NOMEN workshop, IEEE INFOCOM 2012

  • 4S. Arianfar, P. Nikander, L. Eggert, and J. Ott, ”Contug: A receiver-driven transport protocol

for content-centric networks”, in IEEE ICNP 2010 (Poster session)

  • 5N. Rozhnova and S. Fdida, ”An effective hop-by-hop interest shaping mechanism for CCN

communications, NOMEN workshop, IEEE INFOCOM 2012

  • 6G. Carofiglio and L. Muscariello, Joint hop-by-hop and receiver-driven interest control protocol

for content-centric networks, ICN workshop, ACM SIGCOMM 2012

slide-5
SLIDE 5

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

slide-6
SLIDE 6

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

slide-7
SLIDE 7

Anticipated interests mechanism

RCV

TD(k) - TI(k)

TI(k) TD(k)

TD - TI

Rk Rn

TI TD

A B

I N T E R E S T ( A ) DATA(A)

anticipated interest: B

I N T E R E S T ( A )

B: Router = K, TS = TI(K) B : R

  • u

t e r = K , T S = T

I

( K )

DATA(A)

B : R

  • u

t e r = K , ∆ T = T

D

( K )

  • T

I

( K )

RTT(k) = (TD − TI) − (TD(k) − TI(k))

slide-8
SLIDE 8

Window and timeout update algorithms

◮ Timeout calculated according to

TCP’s Jacobson algorithm

◮ At each timeout expiration

RTO(i + 1) ← − 2 × RTO(i) and CWND(i + 1) ← − CWND(i)/2

◮ At each Data packet reception,

rate is increased for all caches between the receiver and the expected source

◮ At each timeout expiration, rate is

increased for the expected source and all caches beyond it

k-1 k k+1 s RCV

CWNDk-1 CWNDk CWNDk+1 CWNDs RTOk-1 RTOk RTOk+1 RTOs

CONGESTION AVOIDANCE SLOW START

FLOW PROGRESSION

CWND(k) SRTT(k) ≥ CWND(k + x) SRTT(k + x) RTO(k) ≤ RTO(k + x) ∀x ∈ [1, s − k]

slide-9
SLIDE 9

Pacing of Interest packets

◮ Data packets are larger than

Interest packets and therefore also their Ttx is larger

◮ If Interest packets are sent in a

burts, Data packets sent in response to Interests at the end

  • f the burst will experience

longer RTT

◮ Solution: pace the sending of

Interest packets over an RTT period: Tsend(i) = SRTT(i) CWND(i)

RCV

R T T ( 1 )

INTEREST

SRC

DATA

R T T ( 2 ) R T T ( 3 )

slide-10
SLIDE 10

Performance evaluation

Simulation scenario

10Mbps 40Mbps 40Mbps 10Mbps

C C C C R R R R R S S S S S

◮ Metric: Flow Completion Time (FCT) ◮ Variable conditions:

◮ Cache sizes: 0.02P and 0.08P ◮ Content popularity α: 0.64, 1.03 ◮ Caching policies: ALL+LRU, ALL+LFU, RAND+LRU

◮ Comparison with ICP and CCTCP w/o Anticipated Interests

slide-11
SLIDE 11

Performance evaluation

Flow Competion Time (FCT), cumulative probability

5 10 15 20 25 30 Flow Completion Time (sec) 0.0 0.2 0.4 0.6 0.8 1.0 CDF

CCTCP, C=0.02P CCTCP, C=0.08P CCTCP w/o AI, C=0.02P CCTCP w/o AI, C=0.08P ICP, C=0.02P ICP, C=0.08P

(a) ALL+LRU, α = 0.64

5 10 15 20 25 30 35 Flow Completion Time (sec) 0.0 0.2 0.4 0.6 0.8 1.0 CDF

CCTCP, C=0.02P CCTCP, C=0.08P CCTCP w/o AI, C=0.02P CCTCP w/o AI, C=0.08P ICP, C=0.02P ICP, C=0.08P

(b) ALL+LRU, α = 1.03

5 10 15 20 25 30 Flow Completion Time (sec) 0.0 0.2 0.4 0.6 0.8 1.0 CDF

CCTCP, C=0.02P CCTCP, C=0.08P CCTCP w/o AI, C=0.02P CCTCP w/o AI, C=0.08P ICP, C=0.02P ICP, C=0.08P

(c) RAND+LRU α = 0.64

5 10 15 20 25 30 35 Flow Completion Time (sec) 0.0 0.2 0.4 0.6 0.8 1.0 CDF

CCTCP, C=0.02P CCTCP, C=0.08P CCTCP w/o AI, C=0.02P CCTCP w/o AI, C=0.08P ICP, C=0.02P ICP, C=0.08P

(d) RAND+LRU, α = 1.03

slide-12
SLIDE 12

Performance evaluation

Impact of inter-cache distance

5 10 15 20 25 30 Flow Completion Time (sec) 0.0 0.2 0.4 0.6 0.8 1.0 CDF

CCTCP, 1 ms CCTCP, 5 ms CCTCP w/o AI, 1 ms CCTCP w/o AI, 5 ms ICP, 1 ms ICP, 5 ms

slide-13
SLIDE 13

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.