NetCP - NWAL API Flow. NetCP (HW,SW) Overview NWAL Feature Overview Data path offload Control configuration –Blocking / Non Blocking support –L2: MAC.

Slides:



Advertisements
Similar presentations
Ch 20. Internet Protocol (IP) Internetworking PHY and data link layers operate locally.
Advertisements

Transport Layer3-1 Transport Overview and UDP. Transport Layer3-2 Goals r Understand transport services m Multiplexing and Demultiplexing m Reliable data.
Internetworking II: MPLS, Security, and Traffic Engineering
TI Keystone Networking Coprocessor Introduction
CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
IPv6 Overview Brent Frye EECS710. Overview Google Drive Microsoft Cloud Drive Dropbox Paid-for alternatives 2.
Computer Networks20-1 Chapter 20. Network Layer: Internet Protocol 20.1 Internetworking 20.2 IPv IPv6.
Socket Programming with IPv6. Why IPv6? Addressing and routing scalability Address space exhaustion Host autoconfiguration QoS of flow using flowlabel.
NAT TRAVERSAL FOR IPSEC Research Seminar on Datacommunications Software HIIT
Information System Security AABFS-Jordan Summer 2006 IP Security Supervisor :Dr. Lo'ai Ali Tawalbeh Done by: Wa’el Musa Hadi.
Henric Johnson1 Ola Flygt Växjö University, Sweden IP Security.
KeyStone Training Multicore Navigator Overview. Overview Agenda What is Navigator? – Definition – Architecture – Queue Manager Sub-System (QMSS) – Packet.
Securing TCP/IP Chapter 6. Introduction to Transmission Control Protocol/Internet Protocol (TCP/IP) TCP/IP comprises a suite of four protocols The protocols.
TCP/IP Protocol Suite 1 Chapter 11 Upon completion you will be able to: User Datagram Protocol Be able to explain process-to-process communication Know.
Gursharan Singh Tatla Transport Layer 16-May
Using Multicore Navigator Multicore Applications.
Multicore Navigator: Queue Manager Subsystem (QMSS)
Document Number ETH West Diamond Avenue - Third Floor, Gaithersburg, MD Phone: (301) Fax: (301)
Using Multicore Navigator
KeyStone Multicore Navigator
Review: –What is AS? –What is the routing algorithm in BGP? –How does it work? –Where is “policy” reflected in BGP (policy based routing)? –Give examples.
Network Coprocessor (NETCP) Packet Accelerator (PA)
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
KeyStone Training Network Coprocessor (NETCP) Overview.
Network Coprocessor (NETCP) Packet Accelerator (PA)
QMSS: Components Overview Major HW components of the QMSS: Queue Manager Two PDSPs (Packed Data Structure Processors): – Descriptor Accumulation / Queue.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
IPSec IPSec provides the capability to secure communications across a LAN, across private and public wide area networks (WANs) and across the Internet.
KeyStone Training Multicore Navigator: Packet DMA (PKTDMA)
IPSec ● IP Security ● Layer 3 security architecture ● Enables VPN ● Delivers authentication, integrity and secrecy ● Implemented in Linux, Cisco, Windows.
FreeS/WAN & VPN Cory Petkovsek VPN: Virtual Private Network – a secure tunnel through untrusted networks. IP Security (IPSec): a standardized set of authentication.
KeyStone SoC Training SRIO Demo: Board-to-Board Multicore Application Team.
Understanding IPv6 Slide: 1 Lesson 12 IPv6 Mobility.
Network Layer by peterl. forwarding table routing protocols path selection RIP, OSPF, BGP IP protocol addressing conventions datagram format packet handling.
S7C7 – Multilayer Switching Design and Configuration.
Using Multicore Navigator CIV Application Team January 2012.
Network Coprocessor (NETCP) Overview
CSCI 465 D ata Communications and Networks Lecture 24 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Linux Operations and Administration Chapter Eight Network Communications.
Security IPsec 1 * Essential Network Security Book Slides. IT352 | Network Security |Najwa AlGhamdi 1.
Network Layer by peterl. forwarding table routing protocols path selection RIP, OSPF, BGP IP protocol addressing conventions datagram format packet handling.
1 Review – The Internet’s Protocol Architecture. Protocols, Internetworking & the Internet 2 Introduction Internet standards Internet standards Layered.
Network Layer Security Network Systems Security Mort Anvari.
KeyStone SoC Training SRIO Demo: Board-to-Board Multicore Application Team.
Cisco I Introduction to Networks Semester 1 Chapter 6 JEOPADY.
VPNs & IPsec Dr. X Slides adopted by Prof. William Enck, NCSU.
Introduction to Networks
Internet Protocol Version 6 Specifications
A quick intro to networking
IT443 – Network Security Administration Instructor: Bo Sheng
CC2650 RF Min-ju Kang RTLAB.
Lec 2: Protocols.
Reference Router on NetFPGA 1G
How data travels through a network The Internet
Chapter 6: Network Layer
CS 1652 Jack Lange University of Pittsburgh
Introduction to Networks
Network Core and QoS.
Wide Area Networks and Internet CT1403
Code Review for IPv4 Metarouter Header Format
rte_security: A new crypto-offload framework in DPDK
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
Chapter 10: Advanced Cisco Adaptive Security Appliance
Reference Router on NetFPGA 1G
16EC Computer networks unit II Mr.M.Jagadesh
Virtual Private Network
Network Core and QoS.
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

NetCP - NWAL API Flow

NetCP (HW,SW) Overview

NWAL Feature Overview Data path offload Control configuration –Blocking / Non Blocking support –L2: MAC Classification/Lookup –L3: IP Classification/Lookup –L4: UCP/TCP/GTPU Lookup –SA: Crypto offload RX Packet In band IPSec traffic RX Packet Side band IPSec offload –IP/UDP Checksum TX and RX –Routing between PA and SA and EMAC port redirection

BIOS/ARM Core Data Path Application Initialization User Application nwal_getBufferReq() NWAL nwal_start() Master Core Only: Global Resource Initialization at NWAL for NetCP: PA/SA and common Queues For each proc Initializes local per core resources nwal_create() System initialization: QMSS/CPPI/Switch

BIOS/ARM Cores Interface address Configuration: Blocking User Application PA LLD Qmss_queuePush() QMSS LLD Configure Local MAC: nwal_SetMacIface 1 3 NWAL Pa_addMac() 2 Qmss_queuePop() 4 Pa_forwardResult() 5 6 Qmss_queuePush() Configure Local IP nwal_SetIPAddr 1 3 Pa_addIP() 2 Qmss_queuePop() 4 Pa_forwardResult() 5 6 Add MAC Add IP API return with status

BIOS/ARM Core L4 Connection setup: RX/ TX[Optional] User Application PA LLD Qmss_queuePush() QMSS LLD 1 3 NWAL Pa_addPort() 2 Qmss_queuePop() 4 Pa_forwardResult() 5 6 CREATE_CONNECTION (IP handle) nwal_addConn() Store the SRC address. Enable RX flow API return with status

L4 Connection: TX config User AppPA LLDQMSS LLD CONFIGURE_CONNECTION : nwal_cfgConn() 1 NWAL BIOS/ARM Core 2 Format and store the TX header. Enable TX flow API return with status

BIOS/ARM Cores TX: Data Path Application NWAL Application Transmit packet with header from App. nwal_sendRaw() NWALMulticore Navigator Allocate descriptor. Queue Push to Loopback or ENET Higher layer transmit nwal_send() Optional: Insert Protocol headers MAC/I[IPSec]/IP/UDP. Prepare command label for TX offload: -- IP/UDP checksum --Crypto. Encryption/Authentication tag offload -- Queue Push to destination Queue

RX: Data Path Application NWAL Application nwal_pollCtl( ) NWAL BIOS/ARM Cores One Callback for group of packets nwal_cmdCallBack() Multicore Navigator Queue Pop Retrieve meta data information including channel handle nwal_rxPktCallBack() Queue Pop Retrieve meta data information: checksum errors and channel handle nwal_pollPkt(,..,. maxPkts,..) Queue Pop Retrieve metadata information including channel handle nwal_cmdPaStatsReply() Non blocking: Callback with status/results. Blocking: API return will indicate results

NWAL Unit test Overview Demonstrates multicore capability Master Proc: –Initializes global system resources –NWAL resources –Configures NetCP for MAC/IP/IPSec Local Proc –L4 connection establishment –Transmit of packet from each proc –Loopback at NetCP –Receive at host and verify Metadata Packet payload Tests: –MAC Classification & Next Route –IP Classification & Next Route –UDP L4 Connection –Transmit and Receive verification

Backup Slides

SP policy offload (RX): (SA Creation) BIOS/ARM Cores ApplicationPA LLDQMSS LLDNWALSA LLD CREATE_SA: Dir = RX: nwal_setSecAssoc 1 Sa_chanCreate() Sa_chanControl(): sa_CHAN_CTRL_GEN_CONFIG Sa_chanControl(): sa_CHAN_CTRL_KEY_CONFIG ScAlloc() Callback with Security Context API return with status PA_addIP() Qmss_queuePush() Qmss_queuePop() 8 Pa_forwardResult()

SP policy offload (RX): (SP config) BIOS/ARM Cores PA LLDQMSS LLDNWALSA LLD ADD_SP:Dir = RX nwal_setSecPolicy PA_addIP() Qmss_queuePush() Qmss_queuePop() Pa_forwardResult() User App Store the policy info and link it to SA. API return with status

SP policy offload (TX): (SA Creation) BIOS/ARM Cores User AppPA LLDQMSS LLDNWALSA LLD CREATE_SA: Dir = TX nwal_setSecAssoc() 1 Sa_chanCreate() Sa_chanControl(): sa_CHAN_CTRL_GEN_CONFIG Sa_chanControl(): sa_CHAN_CTRL_KEY_CONFIG ScAlloc() Callback with Security Context Format and store the TX header for tunnel. API return with status

SP policy offload (TX): (SP config) BIOS/ARM Core PA LLDQMSS LLDNWALSA LLD ADD_SP: Dir = TX: nwal_setSecPolicy App 8 7 Store the policy info and link it to SA. API return with status