Network Processors: Architecture, Applications, and Algorithms, Slides of Computer Architecture and Organization

An overview of network processors, their architecture, applications, and algorithms. It covers topics such as networking protocols, ip routing, packet classification, url-based switching, and transcoding. The document also discusses the osi network architecture, tcp/ip model, and tcp/ip packet structure.

Typology: Slides

2012/2013

Uploaded on 05/06/2013

anurati
anurati 🇮🇳

4.2

(24)

121 documents

1 / 25

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Network Processor and Its
Applications (1)
Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19

Partial preview of the text

Download Network Processors: Architecture, Applications, and Algorithms and more Slides Computer Architecture and Organization in PDF only on Docsity!

Network Processor and Its

Applications (1)

Outline

• Overview of the network processors

• Networking protocol stack

• IP routing

• Packet Classification

• Other applications

Typical NP Architecture

SDRAM

(Packet buffer)

SRAM

(Routing table)

multi-threaded processing elements

Co-processor

Input ports Output ports

Network Processor

Bus Bus

Network Architecture and Applications

  • Introduction to networking
  • IP packet structure
  • Control and data planes
  • Traditional applications
    • IPv4 routing, classification etc.
  • New applications
    • URL-based switching,transcoding, etc.

TCP/IP Model

  • ISO OSI (Open Systems Interconnection) not fully implemented
  • Presentation and Session layers not present in TCP/IP

Application

Pre.

Session

Transport

Network

Data Link

Physical

Application

TCP

IP

Host-to-Net

OSI TCP/IP

TCP/IP packet

MAC IP TCP APP. DATA MAC

Source Port Destination Port

Sequence Number

Acknowledgement Number

Header Length and Options Window Size

Checksum Urgent Pointer

Options (0 or more 32-bit words)

TCP/IP packet

MAC IP TCP APP. DATA MAC

Preamble D. Add. S. Add. Leng. CRC

Application Categorization

• Control-Plane tasks

– Less time-critical

– Control and management of device operation

• Table maintenance, port states, etc.

• Data-Plane tasks

– Operations occurring real-time on “packet path”

– Core device operations

• Receive, process and transmit packets

Data Plane Tasks

• Media Access Control

  • Low-level protocol implementation
    • Ethernet, SONET framing, ATM cell processing, etc.

• Data Parsing

  • Parsing cell or packet headers for address or protocol information

• Classification

  • Identify packet against a criteria (filtering / forwarding decision, QoS, accounting, etc.)

• Data Transformation

  • Transformation of packet data between protocols

• Traffic Management

  • Queuing, scheduling and policing packet data

Network Processor Applications

  • Routing table lookup
    • Determine the next hop for incoming packets
  • Packet Classification
    • classify packets using header fields against a set of rules
  • URL-based Switching
    • Distribute HTTP requests based on URLs.
  • Transcoding
    • Encryption/Decryption, intrusion detection, firewall,

access control checking, denial-of-service

Trie-based Routing Table Lookup

  • Trie block keeps pointers to route entry and other trie blocks
  • Destination IP address bits are examined group by group (4-bit)

rt_ptr trie_ptr

Next hop 1

0

15

Next hop 2

Next hop 3 Next hop 4

Prefix Netmask Next hop 0010 0xF 1 0001,0011 0xFF 2 1110,1110 0xFF 2 0001,0011,0000 0xFFF 3 0001,0011,1111,111 0xFFFE 4

Trie block

Example

rt_ptr trie_ptr

Next hop 1

0

15

Next hop 2

Next hop 3 Next hop 4

Prefix Netmask Next hop 0010 0xF 1 0001,0011 0xFF 2 1110,1110 0xFF 2 0001,0011,0000 0xFFF 3 0001,0011,1111,111 0xFFFE 4

Packet destination IP address =0x13fe (0001,0011,1111,1110,…)

Multi-way multi-column search

P1: 1* -> [100000,111111]

P2: 101* -> [101000,101111]

P3: 10101* -> [101010,101011]

p1) 1 0 0 0 0 0 p1 p

p2) 1 0 1 0 0 0 p2 p

p3) 1 0 1 0 1 0 p3 p

1 0 1 0 1 1 p2 p

1 0 1 1 1 1 p1 p

1 1 1 1 1 1 - p

Any region in the binary search

between two consecutive numbers

corresponds to a unique prefix

k3 k

k1 k2 k4 k5 k7 k

info info info^ info^ info^ infoinfo^ info info

3-way tree for 8 keys

Multi-column search

is used for wide address such as IPv

A C E

A D C

A M W

B M W

B N X

B N Y

W/M words

Probe 1 2 3

Packet Classification

  • Routers are required to distinguish packets for
    • Flow identification
    • Fair sharing of bandwidth
    • QoS
    • Security
    • Accounting, billing
    • etc
  • Packets are classified by rules
    • Src IP, Dest IP, src port #, dest port # etc
  • Classification Algorithm Metrics
    • Search speed
    • Storage cost
    • Scalability
    • Updates
    • Etc.