680 likes | 782 Views
Pursuing a Software-Defined Information-Centric Network Dimitris Syrivelis CERTH-ITI and University of Thessaly. Contents. An Information – Centric Network Architecture An ICN Node Architecture Using LIPSIN for packet forwarding
E N D
Pursuing a Software-Defined Information-Centric NetworkDimitrisSyrivelisCERTH-ITI and University of Thessaly
Contents • An Information – Centric Network Architecture • An ICN Node Architecture • Using LIPSIN for packet forwarding • Designing a LIPSIN switch using Openflow and changes to ICN node architecture • Benefits of using SDN support EWSDN 2012, 25-26 October, Darmstadt Germany
An ICN Network Architecture • Proposed by FP7 PURSUIT Project http://www.fp7-pursuit.eu • SDN support developed in FP7 OpenLab project http://www.ict-openlab.eu • A modular design that supports publish/subscribe semantics with 3 discrete functions: • Rendezvous • Topology Management • Forwarding EWSDN 2012, 25-26 October, Darmstadt Germany
A domain deployment example Domain Network Node 1 Node 5 Node 2 Node 3 Node 4 EWSDN 2012, 25-26 October, Darmstadt Germany
Rendezvous Function Domain Network Node 1 Node 5 Node 2 Node 3 Node 4 Rendezvous Node EWSDN 2012, 25-26 October, Darmstadt Germany
Topology Management Function 5 1 Domain Network 4 2 Node 1 3 Node 5 Topology Manager Node 2 Node 3 Node 4 EWSDN 2012, 25-26 October, Darmstadt Germany
Topology Management/Forwarding 5 1 Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Topology Management/Forwarding 5 1 Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Node 5 Fw Logic RvReq Fw Logic Topology Manager Node 2 Fw Logic Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Sub Rendezvous Node 3 Node 4 RvReq Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic MATCH! Sub Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Sub Rendezvous Node 3 Node 4 TM Req Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Sub Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Node 5 Start Publish Notification Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Sub Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Example System Operation 5 1 Pub Domain Network 4 2 Node 1 3 Data Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Sub Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Contents • An Information – Centric Network Architecture • An ICN Node Architecture • Using LIPSIN for packet forwarding • Designing a LIPSIN switch using Openflow and changes to ICN node architecture • Benefits of using SDN support EWSDN 2012, 25-26 October, Darmstadt Germany
An ICN node architecture(BlackAdder prototype) The service model exports pure publish subscribe semantics, along with synchronization primitives for robust application development EWSDN 2012, 25-26 October, Darmstadt Germany
Contents • An Information – Centric Network Architecture • An ICN Node Architecture • Using LIPSIN for packet forwarding • Designing a LIPSIN switch using Openflow and changes to ICN node architecture • Benefits of using SDN support EWSDN 2012, 25-26 October, Darmstadt Germany
LIPSIN for packet forwarding • LIPSIN (Petri Jokela et al.) is a source-based routing system which uses bloom filters to encode routes to one or more destinations (multicast trees). • LIPSIN encodes physical links by applying bloom filters on a fixed size, few-bytes long, identifier which is prepended on each packet. • Once routes are encoded into a single forwarding identifier at the source, LIPSIN forwarding achieves line speed. EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works 1 5 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works i) Assign fixed length deployment-unique identifiers to all physical links 10000000 1 5 00100000 01000000 00000010 00010000 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works ii) For each set of destinations, you compute the route at the source as follows: 10000000 1 5 00100000 01000000 00000010 00010000 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works ii) For each set of destinations, you compute the route at the source as follows: 10000000 1 5 00100000 01000000 00000010 00010000 10000000 01000000 00010000 OR 11010000 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works iii) The forwarding identifier can then be used on each forwarder to choose local outgoing links 5 Local Forwarder 10000000 1 5 00100000 01000000 00000010 00010000 10000000 01000000 00010000 OR 11010000 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works iii) The forwarding identifier can then be used on each forwarder to choose local outgoing links 5 Local Forwarder AND 10000000 1 5 11010000 00100000 01000000 00000010 00010000 10000000 01000000 00010000 OR 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works iii) The forwarding identifier can then be used on each forwarder to choose local outgoing links 5 Local Forwarder 10000000 1 5 11010000 AND 00100000 01000000 00000010 00010000 10000000 01000000 00010000 OR 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works iii) The forwarding identifier can then be used on each forwarder to choose local outgoing links 5 Local Forwarder 10000000 1 5 11010000 00100000 01000000 00000010 00010000 AND 10000000 01000000 00010000 OR 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works iv) Multihop routing is implemented also by the same operation on the Forwarding identifier on each local forwarder 5 Local Forwarder 1 Local Forwarder 10000000 1 5 00100000 01000000 00000010 00010000 10000000 00000010 00010000 OR 10010010 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
How LIPSIN works iv) Multihop routing is implemented also by the same operation on the Forwarding identifier on each local forwarder 5 Local Forwarder 1 Local Forwarder 10000000 1 5 10010010 AND 00000010 00100000 01000000 00000010 00000010 00010000 10000000 00000010 00010000 OR 10010010 2 4 00000100 00001000 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Contents • An Information – Centric Network Architecture • An ICN Node Architecture • Using LIPSIN for packet forwarding • Designing a LIPSIN switch using Openflow and changes to ICN node architecture • Benefits of using SDN support EWSDN 2012, 25-26 October, Darmstadt Germany
Why using LIPSIN with SDN and not directly information identifiers? ICN ethernet frame 5 LIPSIN IDENTIFIER 1 INFORMATION IDENTIFIER Payload 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Why using LIPSIN with SDN and not directly information identifiers? ICN ethernet frame 5 LIPSIN IDENTIFIER 1 INFORMATION IDENTIFIER Payload 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Why using LIPSIN with SDN and not directly information identifiers? ICN ethernet frame 5 LIPSIN IDENTIFIER 1 INFORMATION IDENTIFIER Payload 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Why using LIPSIN with SDN and not directly information identifiers? ICN ethernet frame 5 LIPSIN IDENTIFIER 1 INFORMATION IDENTIFIER Payload 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Why using LIPSIN with SDN and not directly information identifiers? ICN ethernet frame 5 LIPSIN IDENTIFIER 1 INFORMATION IDENTIFIER Payload 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Why using LIPSIN with SDN and not directly information identifiers? ICN ethernet frame 5 LIPSIN IDENTIFIER 1 INFORMATION IDENTIFIER Payload 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Why using LIPSIN with SDN and not directly information identifiers? ICN ethernet frame 5 LIPSIN IDENTIFIER 1 INFORMATION IDENTIFIER Payload 2 4 3 EWSDN 2012, 25-26 October, Darmstadt Germany
Modifying LIPSIN functionality for Openflowdatapaths 5 1 Domain Network 4 2 Node 1 3 Node 5 Fw Logic Fw Logic Topology Manager Node 2 Fw Logic Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Moving LIPSIN functionality to Openflowdatapaths 5 1 4 2 Node 1 3 Node 5 Controller Fw Logic Fw Logic OF Datapath Topology Manager Node 2 Fw Logic Rendezvous Node 3 Node 4 Fw Logic Fw Logic EWSDN 2012, 25-26 October, Darmstadt Germany
Moving LIPSIN functionality to Openflowdatapaths 5 1 4 2 Node 1 3 Node 5 FW Logic Controller Topology Manager Node 2 OF Datapath Rendezvous Node 3 Node 4 EWSDN 2012, 25-26 October, Darmstadt Germany
Example for 5-port OpenFlowdatapath Each switch port is assigned a deployment unique Identifier by the Topology Manager which is kept at the local controller Port 1000 0000 1 Port 0100 0000 2 FW Logic Port 0010 0000 3 Port 0001 0000 4 Controller Port 0000 1000 5 OF Datapath EWSDN 2012, 25-26 October, Darmstadt Germany
Example for 5-port OpenFlowdatapath Openflowdatapath is configured to match forwarding identifiers on each packet with respective delivery ports, Port 1000 0000 LIPSIN IDENTIFIER 1 Port 0100 0000 2 INFORMATION IDENTIFIER FW Logic Port 0010 0000 3 Port 0001 0000 4 Controller Port 0000 1000 5 OF Datapath Payload EWSDN 2012, 25-26 October, Darmstadt Germany
Example for 5-port OpenFlowdatapath Openflowdatapath sends to the local controller packets with forwarding identifiers that don’t match any entry Port 1000 0000 0010 1000 1 Port 0100 0000 2 INFORMATION IDENTIFIER FW Logic Port 0010 0000 3 Port 0001 0000 4 Controller Port 0000 1000 5 OF Datapath Payload EWSDN 2012, 25-26 October, Darmstadt Germany
Example for 5-port OpenFlowdatapath Local openflow controller uses the LIPSIN bloom-filter approach to decode the identifier and find the local datapath ports where the packet should be delivered and installs the rule. Port 1000 0000 0010 1000 1 Port 0100 0000 2 INFORMATION IDENTIFIER FW Logic Port 0010 0000 3 Port 0001 0000 4 Controller Port 0000 1000 5 OF Datapath Payload EWSDN 2012, 25-26 October, Darmstadt Germany
ICN architecture using SDN OF1 OF2 FW Logic Node 1 1 2 5 3 4 Controller Node 5 OF Datapath 1 Topology Manager Node 2 Rendezvous OF Datapath 2 Node 4 Node 3 FW Logic Controller
ICN architecture using SDN Example Port 1000 0000 OF1 OF2 1 Port 0100 0000 FW Logic 2 Port 0010 0000 1 2 5 3 4 3 Port 0001 0000 Controller 4 Node 1 Node 5 1 3 OF Datapath 1 Topology Manager 2 4 Node 2 3 Node 3 Rendezvous OF Datapath 2 2 1 Node 4 Port 0000 1000 FW Logic 1 Port 0000 0100 2 Port 0000 0010 Controller 3
ICN architecture using SDN Example Port 1000 0000 OF1 OF2 1 Port 0100 0000 FW Logic 2 Port 0010 0000 1 2 5 3 4 3 Pub Port 0001 0000 Controller 4 Node 1 Node 5 1 3 OF Datapath 1 Topology Manager 2 4 Node 2 3 Node 3 Rendezvous OF Datapath 2 2 1 Node 4 Port 0000 1000 FW Logic 1 Port 0000 0100 2 Port 0000 0010 Controller 3
ICN architecture using SDN Example Port 1000 0000 OF1 OF2 1 Port 0100 0000 FW Logic 2 Port 0010 0000 1 2 5 3 4 3 Pub Port 0001 0000 Controller 4 Node 1 Node 5 0001 1000 RvReq 1 3 OF Datapath 1 Topology Manager 2 4 Node 2 3 Node 3 Rendezvous OF Datapath 2 2 1 Node 4 Port 0000 1000 FW Logic 1 Port 0000 0100 2 Port 0000 0010 Controller 3