Presentation is loading. Please wait.

Presentation is loading. Please wait.

CCU EE&CTR1 Software Architecture Overview Nick Wang & Ting-Chao Hou National Chung Cheng University Control Plane-Platform Development Kit.

Similar presentations


Presentation on theme: "CCU EE&CTR1 Software Architecture Overview Nick Wang & Ting-Chao Hou National Chung Cheng University Control Plane-Platform Development Kit."— Presentation transcript:

1 CCU EE&CTR1 Software Architecture Overview Nick Wang & Ting-Chao Hou National Chung Cheng University Control Plane-Platform Development Kit

2 CCU EE&CTR2 Outline  Managing Data Structures  Microblock  Core Component  CP-PDK Overview  Control Plane PDK Architecture Control Plane Module Transport Plug-in Forwarding Plane Module  CPPUI

3 CCU EE&CTR3 Managing Data Structures  Linked List Management Structure  Ring Buffers  SRAM Q_Array Controller  The Many-to-One Problem

4 CCU EE&CTR4 Memory Resource Utilization in Processing a Packet

5 CCU EE&CTR5 Linked List Management Structure

6 CCU EE&CTR6 Linked List Management Structure

7 CCU EE&CTR7 Linked List Management Structure

8 CCU EE&CTR8 Linked List Management Structure

9 CCU EE&CTR9 Ring and linked list  Ring Communication mechanism Fixed-Size Easy for maintenance Next-neighbor register, scratchpad, SRAM  Linked List Packet buffering Variable-length SRAM

10 CCU EE&CTR10 Enqueueing to Cached Q_Array

11 CCU EE&CTR11 Enqueueing to Non-Cached Q_Array

12 CCU EE&CTR12 Dequeueing to Cached Q_Array

13 CCU EE&CTR13 Dequeueing to Non-Cached Q_Array

14 CCU EE&CTR14 The Many-to-One Problem Many-to-Many Many-to-One

15 CCU EE&CTR15 Elements of the Intel IXA Portability Framework

16 CCU EE&CTR16 Microblock  A building block represents a unit of packet-processing functionality IPV4 routing, Ethernet bridging  Intel Provides two kinds of building block Packet Processing Microblock Driver Microblock

17 CCU EE&CTR17 Core component overview  During initialization, each core component does the following: Sets up memory for shared tables Patches symbols  Processing exception packets Non-IP Packets Packets with no route information Packets that require fragmentation Packets for local IP addresses Packets with IP options

18 CCU EE&CTR18 Core component Functions  Configures its microblock (static configuration by means of imported variables and dynamic configuration through control blocks).  Initializes and maintains common data structures that may be updated by other applications.  Provides exception as well as control message handler to process packets/messages sent by the microblock.

19 CCU EE&CTR19 Core component overview  Core components need to register different types of handlers. Packet Handlers Message Handlers  init() and fini() Functions ix_error ix_cc_ _init() ix_error ix_cc_ _fini()

20 CCU EE&CTR20 CP-PDK Overview  Three logical operational components Control Plane  Control and configure the Forwarding Plane  Signaling and routing protocol Forwarding Plane  Manipulate the network traffic  Forwarding, classification, filtering Management Plane  Manage the control and forwarding planes  Start or stop routing process  Performance logging

21 CCU EE&CTR21 NPF (Network Processing Forum) API  Standardized the APIs within the three planes  mix and match components available from different vendors  presents a flexible and well-known programming interface to the control plane applications  the protocol stacks and network processors available can be easily integrated with the NPF APIs

22 CCU EE&CTR22 Control Plane PDK Architecture

23 CCU EE&CTR23 Control Plane PDK Architecture

24 CCU EE&CTR24 Control Plane Module

25 CCU EE&CTR25 Control Plane  NP Forum defines two sets of APIs NPF Application API  IPv4 API, MPLS API, DiffServ API NPF Management API

26 CCU EE&CTR26 Features of Control Plane module  One-to-many mapping  Inter-forwarding plane forwarding  Binding and capability discovery of the forwarding planes  OS abstraction layer achieve independence from the control plane hardware and OS

27 CCU EE&CTR27 Application API Implementation Module  IPv4 and IPv6 Unicast Forwarding API Configuration and management objects  Ex. IP route and ARP tables Receiving notification  Ex. ARP events  MPLS API Configuring the MPLS Core Component  Setup the labels required for label swapping  ATM API Configuring and management VP,VC parameters  Qos API Configuration the IntServ and DiffServ CC

28 CCU EE&CTR28 Configuration and Management Module  Layer 2 objects bridges and forwarding databases  Ports Ethernet  Layer 3 IP object Interface, IP route table, IPv6, Diffserv

29 CCU EE&CTR29 Namespace Module

30 CCU EE&CTR30 Binding and Capability Discovery Module  Responsible for binding and capability discovery of the underlying forwarding planes  Provides consistent semantics for heterogeneous forwarding plane

31 CCU EE&CTR31 Forwarding Plane Topology Manager  The forwarding plane could be connected in a bus, mesh, star  The control data being downloaded must also be slightly modified in some case to simulate the one virtual router

32 CCU EE&CTR32 Inter-FE Forwarding Module  Assigning labels to be used for inter-FE forwarding on per-router label information base.

33 CCU EE&CTR33 Callback and Event Handler Module  Maintaining all API callbacks registered by the applications and also the callbacks registered for event notifications

34 CCU EE&CTR34 CP Module Manager  Initialization and shutdown of CP module  The CP module manager starts all the sub-modules in the CP in a well- defined order, including the CP Agent, which is a part of the transport plug- in

35 CCU EE&CTR35 CP Multi-client Module  Allows the PDK to run with multiple clients on Linux  The multi-client module uses RPC.

36 CCU EE&CTR36 Protocol Support Service  Virtual Interface Device Driver (VIDD)  CE packet handler  Routing Cache Manager (RCM)

37 CCU EE&CTR37 Transport Plug-in  Provide in-process communication between the control plane and the forwarding plane in the case of co-location  Different forwarding plane can be connected to the control plane over different interconnects.

38 CCU EE&CTR38 Forwarding Plane Module

39 CCU EE&CTR39 CPPUI for conformance test

40 CCU EE&CTR40 Remote CP-PDK

41 CCU EE&CTR41 Co-located CP-PDK


Download ppt "CCU EE&CTR1 Software Architecture Overview Nick Wang & Ting-Chao Hou National Chung Cheng University Control Plane-Platform Development Kit."

Similar presentations


Ads by Google