A ¡ A ¡Nati tive ¡ e ¡Con Conten ent ¡ t ¡Di Disc scover ery ¡ ¡ Me Mechanism sm ¡ ¡for ¡ or ¡ICN CN Onur Ascigil, Vasilis ¡Sourlas, ¡Ioannis Psaras, ¡and ¡George ¡Pavlou Department ¡of ¡Electronic ¡and ¡Electrical ¡Engineering, ¡ University ¡College ¡London, ¡UK 1
Ou Outline • Intra-‑domain ¡ Content ¡Discovery ¡(CD) • Forwarding ¡Strategies ¡for ¡CD • Proposed ¡Content ¡Discovery ¡Mechanism • Evaluation • Conclusions 2
In Intr tra-‑ -‑do domain ¡ n ¡Conten ent ¡ ¡Discover ery 3
In Intr tra-‑ -‑do domain ¡ n ¡Conten ent ¡ ¡Discover ery • Find ¡a ¡copy ¡of ¡the ¡requested ¡content ¡within ¡the ¡source ¡domain ¡(AS). • Incentives • Avoid ¡receiving ¡traffic ¡over ¡expensive ¡inter-‑domain ¡links. • Improving ¡QoS for ¡end-‑users. • Optimal ¡Content ¡Discovery: ¡ • Nearest ¡Replica ¡Routing ¡(NRR) ¡with ¡single-‑copy ¡caching ¡within ¡the ¡domain. • Avoid ¡inter-‑domain ¡content ¡retrieval ¡as ¡long ¡as ¡there ¡is ¡a ¡locally ¡cached ¡content. • Avoid ¡redundant ¡content ¡replicas ¡in ¡the ¡domain. • Mainstream ¡ICN ¡architectures ¡(NDN/CCN) ¡does ¡minimal ¡discovery. • Search ¡content ¡ opportunistically on-‑path ¡(along ¡the ¡shortest ¡path ¡to ¡origin) . ¡ • Why ¡not ¡incorporate ¡NRR ¡or ¡similar? ¡ • Conventional ¡wisdom : ¡ Difficult ¡to ¡achieve ¡comparable ¡performance ¡to ¡NRR ¡without ¡ significant coordination ¡overhead . 4
In Intr tra-‑ -‑do domain ¡ n ¡Conten ent ¡ ¡Discover ery • Coordination ¡of ¡i) ¡routing ¡with ¡ii) ¡content ¡placement. • Need ¡to ¡keep ¡track ¡of: ¡ what ¡is ¡cached, ¡where. • Possible ¡ways ¡of ¡coordination: • Control ¡plane ¡messages: ¡ cache ¡nodes advertise ¡content ¡locations ¡to ¡each ¡other. • Directory ¡service: ¡ a ¡(logically) ¡centralised entity ¡collects ¡update ¡messages. • Static ¡content ¡placement: ¡ a ¡function ¡determines ¡the ¡placement ¡for ¡each ¡content. • What ¡is ¡wrong ¡with ¡coordination? ¡ • Can ¡lead ¡to ¡high ¡communication ¡overhead: ¡signalling and/or ¡update ¡messages. • Opportunistic ¡on-‑path ¡discovery ¡(i.e., ¡no ¡coordination) ¡has ¡very ¡limited ¡ gain. ¡ • What ¡do ¡we ¡propose ¡instead? • An ¡opportunistic ¡coordination ¡mechanism. 5
Co Contri ributions • Plenty ¡of ¡existing ¡work ¡on ¡different ¡aspects ¡of ¡content ¡discovery: • In-‑network ¡caching, • Content ¡placement, • Request ¡to ¡content ¡routing. • Combine ¡several ¡existing ¡works ¡to ¡achieve ¡near ¡optimal ¡content ¡ discovery ¡with ¡no ¡signaling ¡or ¡update ¡protocols ¡for ¡coordination. • Uncoordinated, ¡probabilistic ¡content ¡placement. • Request ¡routing ¡using ¡ Breadcrumb ¡Routing . 6
Co Content ¡ ¡Disc scovery ¡ y ¡usi sing ¡ ¡Br Breadcru rumb mb ¡ ¡Routing • Data ¡packets ¡leave ¡breadcrumbs ¡behind ¡for ¡interests ¡to ¡follow. ¡ • Store ¡the ¡breadcrumb ¡state ¡in ¡a ¡ domain-‑local FIB ¡table: ¡ Ephemeral ¡FIB ¡(EFIB) /foo/bar /foo/bar R /foo/bar Need ¡a ¡forwarding ¡ Name Next-‑hop S strategy ¡to ¡choose ¡ /foo/bar S among ¡EFIB ¡and ¡FIB ¡ entries. /foo/bar
Fo Forwarding ¡ ¡Strategies 8
Ex Extreme ¡ ¡1: ¡ ¡Stop ¡ p ¡& ¡ ¡Wait /foo/bar T /foo/bar R /foo/bar /foo/bar The ¡main ¡Interest ¡ S Name Name Next-‑hop Next-‑hop “ waits ” ¡while ¡the ¡off-‑ /foo/bar S /foo/bar S, ¡T path ¡interest ¡explores ¡ the ¡trail
Ex Extreme ¡ ¡2: ¡ ¡Mul ulticast /foo/bar T /foo/bar /foo/bar /foo/bar R /foo/bar /foo/bar /foo/bar Inter-‑domain ¡retrieval ¡is ¡ S Name Name Next-‑hop Next-‑hop The ¡main ¡Interest ¡is ¡ wasteful ¡and ¡leads ¡to ¡ /foo/bar S /foo/bar S,T forwarded ¡on ¡towards ¡ redundant ¡copies ¡of ¡ the ¡content ¡origin content ¡stored ¡in ¡the ¡ caches. ¡
Re Recap: ¡ ¡Extreme ¡ ¡Scenarios • Stop ¡& ¡Wait: ������� ������� �� ���������� ���� �� • Suffers ¡from ¡high ¡latency. ¡ ������� ������� ������ �� • Not ¡scalable. ¡ �� �� • Multicast: �� �� • Low ¡latency. �� • Not ¡reducing ¡inter-‑domain ¡traffic. �� �� • Redundant ¡copies ¡in ¡the ¡caches. � ���� � ���� ��������� ��� ��� • Augment ¡multicast ¡to ¡prevent ¡ unnecessary ¡inter-‑domain ¡retrievals ¡ and ¡content ¡placements.
Pr Proposed ¡ ¡CD ¡ ¡Mechanism 12
Li Limi mit ¡ ¡Co Copies ¡ s ¡& ¡ ¡Br Breadcru rumb mb ¡ ¡Routing • Perform ¡placement ¡only ¡once ¡along ¡the ¡content ¡retrieval ¡path ¡(for ¡inter-‑ domain ¡retrievals). ¡ /foo/bar Extra ¡copies ¡are ¡placed ¡ only ¡in ¡the ¡event ¡of ¡ inter-‑domain ¡retrievals /foo/bar
In Invalida alidatio tion ¡ n ¡of ¡ ¡EFIB FIB ¡ ¡Entr tries ies /foo/bar /foo/bar /foo/bar /foo/bar /foo/bar NACK
Multicast ¡ Mu ¡with ¡ ¡Forwarding ¡ ¡Bu Budget • Deduct ¡a ¡constant ¡cost ¡for ¡FIB ¡forwarding ¡(e.g., ¡1). • A ¡variable ¡amount ¡for ¡EFIB ¡forwarding. Static ¡Costs ¡require ¡a ¡ FB ¡= ¡5 FB ¡= ¡3 FB ¡= ¡6 good ¡guess ¡for ¡the ¡ ¡ 1 initial ¡forwarding ¡ 1 1 FB ¡= ¡7 1 budget. 1 1 Off-‑path ¡Interests ¡follow ¡ the ¡freshest ¡trail ¡and ¡ /foo/bar 1 FB ¡= ¡9 FB ¡= ¡10 are ¡not ¡multicasted.
Re Recap: ¡ ¡Forwarding ¡ ¡Budget ¡ ¡and ¡ ¡Placement • Assign ¡an ¡initial ¡ forwarding ¡budget ¡ for ¡each ¡Interest ¡originating ¡from ¡ users. • Spend ¡the ¡budget ¡on ¡ forwarding ¡the ¡interest ¡ using ¡FIB ¡(on-‑path). • Spend ¡the ¡budget ¡on ¡ replicating ¡the ¡Interest ¡ using ¡EFIB ¡(off-‑path). • An ¡off-‑path ¡interest ¡replica ¡explores ¡a ¡single ¡EFIB ¡trail ¡with ¡ unlimited ¡budget. • Choose ¡the ¡ freshest EFIB ¡entry ¡(if ¡more ¡than ¡one ¡matching ¡entries). • Entry ¡is ¡invalidated ¡if ¡the ¡trail ¡leads ¡to ¡a ¡dead-‑end. • Content ¡placement ¡is ¡done ¡according ¡to ¡probabilistic ¡caching ¡ [PROBCACHE]. • Placement ¡is ¡only ¡performed ¡when ¡content ¡is ¡retrieved ¡through ¡an ¡inter-‑ domain ¡path.
Dy Dynam amic ¡O ic ¡Off-‑ -‑pa path ¡ h ¡Forwardi ding ¡ ng ¡Costs • Deduct ¡a ¡constant ¡cost ¡for ¡FIB ¡forwarding ¡(e.g., ¡1). • A ¡variable ¡amount ¡for ¡EFIB ¡forwarding. FB ¡= ¡2 FB ¡= ¡3 1 1 1 FB ¡= ¡4 1 3 1 4 FB ¡= ¡9 FB ¡= ¡10
Dy Dynam amic ¡O ic ¡Off-‑ -‑pa path ¡ h ¡Forwardi ding ¡ ng ¡Costs • EFIB ¡trails ¡with ¡ highest ¡likelihood ¡of ¡content ¡retrieval ¡ has ¡higher ¡costs. • Likelihood ¡of ¡retrieval ¡depends ¡on ¡the ¡ freshness of ¡a ¡trail ¡[Breadcrumb ¡Routing]. • EFIB ¡is ¡an ¡LRU ¡cache. • Position ¡of ¡a ¡slot ¡in ¡the ¡cache ¡determines ¡freshness. • Assign ¡a ¡cost ¡to ¡each ¡cache ¡slot. • Independent ¡of ¡the ¡content. • Compute ¡cost ¡for ¡each ¡EFIB ¡cache ¡slot ¡depending ¡on ¡the ¡recent ¡ success/failure ¡of ¡requests.
Dy Dynam amic ¡O ic ¡Off-‑ -‑pa path ¡ h ¡For orwarding ¡C ¡Cos osts • Update ¡forwarding ¡costs ¡depending ¡on ¡the ¡ EFIB ¡CACHE success/failure ¡of ¡the ¡EFIB ¡trails using ¡AIMD. Cost Name Next-‑hop R 1 10.1 /x/y/z 0 R 1 R 2 9.0 /a/b/c 8.0 1 R 2 /e/f/g 7.8 … /a/b/c /a/b/c 6.9 R 1 /k/l/m /a/b/c Fresher /x/y/z n-‑1 R 2 1.0 R 1 n /a/b/c 1.0 R 2 /a/b/c /a/b/c
Recommend
More recommend