Scalable Point-to-multipoint Communication Information-
centricNetworking
January, 2015
Börje OhlmanEricsson Research
Anders Eriksson, Karl-Åke Persson, Adeel Mohammad Malik, Marcus Ihlar and Linus Sunde
NetInf| Ericsson Internal | 2014-05-26 | Page 2
Why SPIN?Scalable Point-to-Multipoint Mechanism for Information-centric Networks (SPIN)
› Most existing ICN approaches require a new global ICN routing mechanism to route based on the names of information objects.
– A new global name-based routing system raises concerns regarding migration and scalability.
› In contrast SPIN:– avoids name-based routing or IP multicast routing by making use of legacy
IP unicast routing combined with DNS– supports two types of service models
› publish-subscribe› request aggregation
– support client and server mobility› DNS interacts with an additional Name Resolution System (NRS) which
resolves the name of an information object to a current locator of a representation of the information object.
NetInf| Ericsson Internal | 2014-05-26 | Page 3
Point-to-multipoint as a Network Service
WHAT› Scalable point-to-multipoint distribution
of pre-recorded content or real-time data for e.g. IoT or live video
› Application-independent › Scales to very large numbers of clients
HOW› Based on legacy IP routing› New name resolution system as a complement to DNS› Small modifications of CoAP, or a new NetInf protocol› Introduction of packet interception, pub-sub, and cache functions in
edge routers
WHY› Allows operators to add value, since the service is integrated in
edge routers and cannot be built as an OTT service
IP Network
Server
Client Client Client Client
ICN
ICN ICN
local peer-to-peer
NetInf| Ericsson Internal | 2014-05-26 | Page 4
Subscription State
SubscriberClient
Publisher Server
Request Subscribe
Response Notification 1
Response Notification N
Cancel
Publish-Subscribe
NetInf| Ericsson Internal | 2014-05-26 | Page 5
global IP network
NER 1 NER 2
NER 3
Pub
RSMNDO
SubSub
event notification
subscribe request
publication
subscribe request acknowledgement
DNS
NRS
SubSub
Pub-Sub & Event Notification Service
SMNDO SMNDO
› Point-to-multipoint distribution of notifications to subscribers in near real-time
› Application-independent› Can be used for video distribution or
IoT› Scales to millions of subscribers› Allows operators to add value, since
this is not an OTT service› Can be built with small modifications
of existing protocols (HTTP and Coap) and with legacy IP routing
Publish binding: FQDN / label -> IP address
Resolve: FQDN / label -> IP address
Name format: FQDN / label
NER NetInf Edge Router
NetInf| Ericsson Internal | 2014-05-26 | Page 6
Use of Tokens to Match Responses to Intercepted Requests With Original Request
Client Int-1 Int-2 Server
Address AC Address A1 Address A2 Address AS
1: Req(AC , AS, t1)
2: Req(A1 , AS, t2)
3: Req(A2 , AS, t3)
4: Resp(AS , A2, t3)
5: Resp(A2 , A1, t2)
6: Resp(A1 , AC, t1)
NetInf| Ericsson Internal | 2014-05-26 | Page 7
Signalling sequence for set-up of a point-to-multi-point tree
An IP addressC ClientIOx Information Object xR Information-centric RouterS Server Request Response
R1
C1 C2
S1
R21: Req
(AC1 , AS, t1)
2: Req(A21 , AS, t3)
3: Req(A11 , AS, t4)
4: Resp(AS , A11, t4)
5: Resp(A12 , A21, t3)
6a: Resp(A22 , AC1, t1)
6b: Resp(A23 , AC2, t2)
1: Req(AC2 , AS, t2)
A11
A12
A21
A22 A23
AS
AC1 AC2
IOx
NetInf| Ericsson Internal | 2014-05-26 | Page 8
Combining connectionless and Connection Oriented Signalling
Client 1Client 2 ICN Router
Publishing Server
Subscription Request 1
Subscription Request 3
Subscription Request 2
Notification Response 1 Notification Response 2
Notification Response 3HTTP GET Request 1
HTTP Response 1
HTTP GET Request 2
HTTP GET Request 3
HTTP Response 2
HTTP Response 3
NetInf| Ericsson Internal | 2014-05-26 | Page 9
Token Matching
Int-1Address A1
1: Req(AC , AS, t1) 2: Req(A1 , AS, t2)
5: Resp(A2 , A1, t2)6: Resp(A1 , AC, t1)
R T
S2S1
T R
Match
Match
Address & token
Construct request
Construct response
Receive and store 1: Req(AC , AS , t1)
Construct, store, bind to 1, and send2: Req(A1 , AS , t2)
Receive5: Resp(A2 , A1 , t2)
Match5: Resp(A2 , A1 , t2)
with 2: Req(A1 , AS , t2)
Match2: Req(A1 , AS , t2)
with1: Req(AC , AS , t1)
Construct and send6: Resp(A1 , AC , t1)
a
b
c
d
e
f
NetInf| Ericsson Internal | 2014-05-26 | Page 10
NetInf NODE Protocol Stack Using Legacy IP Routing
IP
UDP
NetInf/CoAP
NetInf / COAP API
IP
UDP
NetInf/CoAP
NetInf Node Functions
• pub/sub
• event notification
• request aggregation
• caching
• name-based routing
transit packets
NetInf / CoAP requests and responses
intercept
IP Network
Publisher
Sub Sub Sub Sub
A
A ADNS
NRS
NRS Name Resolution System
NetInf functions
NetInf| Ericsson Internal | 2014-05-26 | Page 11
Example Use Case prototyped and Evaluated› Live Video Streaming
– We show that a NetInf implementation of SPIN in request aggregation mode can handle flash crowds very well, can scale to unlimited number of users
– Request aggregation is best suited for use cases where each IO is (normally) only requested once and the client can (roughly) predict when it will become available
› Sensor networking– With the pub/sub model the sensor can publish new readings as they
become available, no need to respond to periodic requests. It can even go offline in-between publications
– Publish/Subscribe is best used when the publications are time series and/or published infrequently at unpredictable times (e.g. fire alarms) and/or when the publisher is only intermittently online
NetInf| Ericsson Internal | 2014-05-26 | Page 12
NetInf/SPIN Request Aggregation
NetInf Access network
NetInf network
Streamingnode
NetInfrouter
Cache
NetInfrouter
Cache
NetInfrouter
Cache
Reques
t(
)
Respo
nse(
)
CPU utilization as a function of the number of clientsmeasured on routers R1, R2 and R3
Cache hit region with traditional http proxy
Cache hit region with request aggregation proxy
Measured values with traditional http proxy
Measured values with request aggregation proxy
Cache hit limitTraditional HTTP caching vs. request aggregation
NetInf| Ericsson Internal | 2014-05-26 | Page 15
R2
R1
CP
U L
oad
(M
Hz)
CPU load in ICN routers R1 and R2 as a function of the number of subscribers
NetInf| Ericsson Internal | 2014-05-26 | Page 16
Conclusions and Future Work
› Key take a ways:– SPIN support both request aggregation and publish/subscribe – SPIN can support flash crowds without network provisioning,
something not possible in today’s IP networks– Use IP unicast routing both for forwarding requests and for retrieving
objects
› Future Work– Access control using Attribute Based Encryption (ABE)– Cut-through forwarding
Top Related