View
2
Download
0
Category
Preview:
Citation preview
Simplifying Multi-layer Network Management with RINA
Simplifying multi-layer network management with RINA
Eduard Grasa, Fundació i2CAT, FP7 PRISTINE TNC 2016, Prague, June 13th 2016
Computernetworkbeingmanaged
Events
Reasonaboutevents
Layersstatemodels
Comparewithdesiredstate
Updatednetworkstate
Desirednetworkstate
Reasonaboutconfigchanges
Networkstatedri2
Layersconfigmodels
Applyupdatedconfig
NetworkManagementSystem
2
Automating network management …
Complexityofmanagementmodelskeymetrictoevaluatethelimita=ons/possibili=esonnetworkautoma=on(anditscost)
Are “All IP networks” easy to automate?
• Computer networking & telecom industry has been steadily moving towards an “all IP” world. – Is “all-IP convergence” a simple, scalable, robust,
manageable, performing and future-proof solution for all types of computer networks?
• Could be if
– The “IP protocol suite” had been designed with generality in mind, allowing its protocols to adapt to specific network environments
– The “IP protocol suite” is well know for having no scalability, performance or security issues
Simplifying multi-layer network management with RINA 3
1
21
42
There is a better approach: RINA
• Network architecture resulting from a fundamental theory of computer networking
• Networking is InterProcess Communication (IPC) and only IPC. Unifies networking and distributed computing: the network is a distributed application that provides IPC
• There is a single type of layer with programmable functions, that repeats as many times as needed by the network designers
• All layers provide the same service: instances or communication (flows) to two or more application instances, with certain characteristics (delay, loss, in-order-delivery, etc)
• There are only 3 types of systems: hosts, interior and border routers. No middleboxes (firewalls, NATs, etc) are needed
• Deploy it over, under and next to current networking technologies 4
1
2
3
4
5
6
Simplifying multi-layer network management with RINA
RINA macro-structure (layers) Single type of layer, consistent API, programmable policies
Host
Borderrouter InteriorRouter
DIF
DIF DIF
Borderrouter
DIFDIF
DIF(DistributedIPCFacility)
Host
AppA
AppB
ConsistentAPIthrough
layers
IPCAPI
DataTransfer DataTransferControl LayerManagement
SDUDelimiNng
DataTransfer
RelayingandMulNplexing
SDUProtecNon
RetransmissionControl
FlowControl
RIBDaemon
RIB
CDAPParser/Generator
CACEP
Enrollment
FlowAllocaNon
ResourceAllocaNon
RouNng
AuthenNcaNon
StateVectorStateVectorStateVector
DataTransferDataTransfer
RetransmissionControl
RetransmissionControl
FlowControlFlowControl
IncreasingNmescale(funcNonsperformedlessoTen)andcomplexity
NamespaceManagement
SecurityManagement
“IP protocol suite” macro-structure
• Functional layers organized for modularity, each layer provides a different service to each other – As the RM is applied to the real world, it proofs to be
incomplete. As a consequence, new layers are patched into the reference model as needed (layers 2.5, VLANs, VPNs, virtual network overlays, tunnels, MAC-in-MAC, etc.)
6
(Theory) (PracCce)
Simplifying multi-layer network management with RINA
Network management Commonality is the key to effective network management
7
• Commonality and consistency in RINA greatly simplifies management models, opening the door to increased automation in multi-layer networks
– Reduce opex, network downtime, speed-up network service delivery, reduce components that need to be standardised
Frommanagingasetoflayers,eachwithitsownprotocols,conceptsanddefini7ons…
…tomanagingacommon,repea7ngstructureoftwoprotocolsanddifferentpolicies
Simplifying multi-layer network management with RINA
Separation of mechanism from policy
8
IPCAPI
DataTransfer DataTransferControl LayerManagement
SDUDelimiNng
DataTransfer
RelayingandMulNplexing
SDUProtecNon
RetransmissionControl
FlowControl
RIBDaemon
RIB
CDAPParser/Generator
CACEP
Enrollment
FlowAllocaNon
ResourceAllocaNon
RouNng
AuthenNcaNon
StateVectorStateVectorStateVector
DataTransferDataTransfer
RetransmissionControl
RetransmissionControl
FlowControlFlowControl
NamespaceManagement
SecurityManagement
• All layers have the same mechanisms and 2 protocols (EFCP for data transfer, CDAP for layer management), programmable via policies. – All data transfer and layer management functions are programmable!
• Don’t specify/implement protocols, only policies – Re-use common layer structure, re-use policies across layers
• This approach greatly simplifies the network structure, minimizing the management overhead and the cost of supporting new requirements, new physical media or new applications
Case study: Large-scale DC Network
• Large-scale DCN connects around 100k servers, how to realize and manage the DCN with RINA and IP?
Simplifying multi-layer network management with RINA 9
IP-based DCN design (With minimal number of protocols)
• Data plane (up), control plane (down). L3-only fabric
10
ToR ToRFabric Spine Fabric
Server ServerIPv4orIPv6(Fabriclayer)
UDPVM VM
Ethernet Ethernet Ethernet Ethernet
VXLAN802.1Q802.3 802.1Q
IPv4orIPv6(tenantoverlay)
TCPorUDPorSCTP,…(transportlayer)
802.3
Protocolconversion,Localbridging
ToR ToRFabric Spine FabricServerServer
IPv4orIPv6(Fabriclayer)
TCP
Ethernet Ethernet Ethernet Ethernet
LACP
Ethernet
LACP
Ethernet
TCP
eBGP eBGP
TCP TCP
eBGP eBGP
TCP
eBGP
TCP
eBGP
RINA-based DCN design
• Overall design (up), Fabric addressing plan (down)
Simplifying multi-layer network management with RINA 11
PtPDIF PtPDIF PtPDIF PtPDIF
PtPDIF PtPDIFPtPDIFPtPDIFDCFabricDIF
TenantDIF
ToR ToR
VM Server Server VM
FabricFabric Spine
Models for the DCN fabric: IP vs RINA Assumption (for IP): all nodes NETCONF/YANG capable
Simplifying multi-layer network management with RINA 12
Concept IP RINA
InterfacesIPv4interfaces,needIPaddress(oneper
interface),uniqueinthelayer.Port-idstoN-1flows,justneedport-id(locally–device-uniqueidenCfier)
DataTransferprotocolsyntax
IPv4syntax,TCPsyntax(TCPisusedbythecontrolplane)
EFCP(lengthoffields).Needaddress(oneperdeviceinthelayer),uniquein
thelayer
Forwardingen7ty Router,oneperdeviceinthelayer,hasFIBentries(forwardingtable)
RelayingandMulCplexingTask(RMT),oneperdeviceinthelayer,has
forwardingtableentries.
Forwardingstrategy Longestprefixmatching,ECMP Longestprefixmatching,ECMP
Schedulingstrategy FIFO(needsmax-queuesize) FIFO(needsmax-queuesize)
Rou7ngprotocol BGPwithdifferentrouCngpolicies.NeedsASnumbers,router-id(IPaddress),
neighbours’IPaddressesandASnumbers.
CDAPwithlink-staterouCngpolicyandtopologicaladdressing
Directoryprotocol - CDAPwithcentralizeddirectorypolicy.
Mgmtprotocol NETCONF CDAP
Mgmtmodels yang-common-types,yang-interfaces,yang-ip,yang-rouCng,yang-bgp
daf-common-mom,dif-common-mom,dif-default-policies
Configuration overhead: # of addresses in the DCN fabric
• IP. 2*number of interfaces in the DCN fabric (MAC @, IP @) • RINA. 1*number of devices in the DCN fabric (IPCP @)
Simplifying multi-layer network management with RINA 13
Models for the tenant layers: IP vs RINA (I) Assumption (for IP): all nodes NETCONF/YANG capable
Simplifying multi-layer network management with RINA 14
Concept IP RINA
Interfaces
Ethernetinterfaces:needMACaddress(oneperinterface)
802.1qinterfaces:needVLAN-idVTEPinterfaces:needVXLAN-id,localIPaddressandUDPport,remoteIPaddress
andUDPportIPv4interfaces:needIPaddress(oneper
interface),uniqueintenantoverlay
Port-idstoN-1flows,justneedport-id(locally–device-uniqueidenCfier)
DataTransferprotocolsyntax
IEEE802.3(Ethernet),IEEE802.1q,IPv4,UDP,VXLAN,TCP
EFCP(lengthoffields).Needaddress(oneperdeviceinthelayer),uniquein
thelayer
Forwardingen7ty router:oneperVMEthernetbridge:oneperserverpertenant
overlayE-VRF:oneperToRpertenantoverlay
RelayingandMulCplexingTask(RMT),oneperdeviceinthelayer,has
forwardingtableentries.
Forwardingstrategy Exact(MAC)addressmatching Longestprefixmatching,ECMP(load-balancing/redundancyatserverlevel)
Schedulingstrategy FIFO(needsmax-queuesize) FIFO(needsmax-queuesize)
Models for the tenant layers: IP vs RINA (II) Assumption (for IP): all nodes NETCONF/YANG capable
Simplifying multi-layer network management with RINA 15
Concept IP RINA
Rou7ngprotocol BGPwithmulC-protocolextensions.NeedsroutedisCnguisherandVPNtargets
CDAPwithlink-staterouCngpolicyandtopologicaladdressing
Directoryprotocol DNS(resolvedomainnamesofappsexecuCnginthetenantDIFtoIP@s)
CDAPwithdistributeddirectorypolicy.MaintainsDirectoryForwardingTable
Redundancyprotocol LinkAggregaNonControlProtocol–needslocalEthernetinterfaceaddresses
-
Mgmtprotocol NETCONF CDAP
Mgmtmodels yang-common-types,yang-interfaces,yang-ip,yang-bridging,yang-rouCng,yang-bgp,
yang-vxlan,yang-evpn,yang-lacp
daf-common-mom,dif-common-mom,dif-default-policies
Concept #(IP) #(RINA)
Interfacetypes 4 1
DTprotocolsyntaxes 5 1(2differentfieldlengths)
Typesofforwardingen77es 3 1
Layermgmt/controlplaneprotocols 3 1(with4policies)
NMS-DAF: Manager design
Simplifying multi-layer network management with RINA 16
ManagerMgmtAgent(MA)
CDAPConnect
ManagedResource(RINASystem)
APICalls,etc.CDAP
ManagerApp
ManagerApp
ManagerApp
MessagingSystem
MgmtShell/GUI
MgmtShell/GUI
MgmtShell/GUI Other
Apps
OtherApps
OtherApps
MgmtAgent(MA)
ManagedResource(RINASystem)
APICalls,etc.
MgmtAgent(MA)
ManagedResource(RINASystem)
APICalls,etc.
CDAP
CDAP
NMS-DAF
• Event-source, distributed and modular design, layered design, distributed configuration management, Java 8
Messaging:W3CWebsockets
AgentConnec7on:CDAPconnector
Demo: multi-tenant capable DCN (I)
Demo: multi-tenant capable DCN (II)
Simplifying multi-layer network management with RINA 18
M6(Server5)
Fabric.DIF
M11(Spine2)
M12(Border1)
M8(Leaf1)
ShimEth
DCAccess.DIF
Client1VPN1
ShimTCPUDP
VPN1.DIF
TCPorUDP
IPv4(publicInternet)
IEEE802.3 IEEE802.3
IEEE802.1q
ShimEth
IEEE802.1q
ShimEth
IEEE802.1q
M7(Server6)
Fabric.DIF
M11(Spine2)
M9(Leaf2)
M8(Leaf1)
ShimEth
VPN3.DIF
IEEE802.1q
ShimEth
IEEE802.1q
ShimEth
IEEE802.1q
ShimEth
IEEE802.1q
M2(Server1)
Research, open source, standards
19
• Current research projects – FP7 PRISTINE (2014-2016) http://ict-pristine-eu – H2020 ARCFIRE (2016-2017) http://ict-arcfire.eu – Norwegian project OCARINA(2016-2021) – BU RINA team http://csr.bu.edu/rina
• Open source implementations – IRATI (Linux OS, C/C++, kernel components, policy framework, RINA
over X) http://github.com/irati/stack – RINASim (RINA simulator, OMNeT++) – ProtoRINA (Java, RINA over UDP, quick prototyping)
• Key RINA standardization activities – Pouzin Society (experimental specs) http://pouzinsociety.org – ISO SC6 WG7 (2 new projects: Future Network – Architectures, Future
Network- Protocols) – ETSI Next Generation Protocols ISG
1
2
3
4
1
2
3
1
2
3
Simplifying multi-layer network management with RINA
Recommended