lecture 1

33
Lecture 1 Introduction to Application Oriented Networking

Upload: toviel

Post on 24-Feb-2016

30 views

Category:

Documents


0 download

DESCRIPTION

Lecture 1. Introduction to Application Oriented Networking. TODAY’S AGENDA. Introduction to Application Oriented Networking History of Internet ( Kleinrock ) Internetworking Internetworking. Scale of Internet. Number of users:. Database. Multimedia & Transcoding. Virus and Malware. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Lecture 1

Lecture 1Introduction to Application Oriented Networking

Page 2: Lecture 1

2

TODAY’S AGENDAIntroduction to Application Oriented NetworkingHistory of Internet (Kleinrock)InternetworkingInternetworking

Page 3: Lecture 1

3

Scale of InternetNumber of users:

Page 4: Lecture 1

Database

Multimedia & Transcoding

Wireless

Computer Games

E Mail

FTP

Telephone

Virus and Malware

Page 5: Lecture 1

INTERNET APPLICATIONS - SECURITY

Page 6: Lecture 1

We must protect the Internet by adding more intelligence. Well, why not provide some additional service and make some money too!

Page 7: Lecture 1

Connections to outside world

Application gatewayPacket

filtering routersHome/Corporate

network

Security perimeter

Firewall: Rules to accept, deny (drop) or reject (drop with notification to sender) packets

Page 8: Lecture 1

Deep Packet Inspection (DPI): L7 FilterTarget:

Packet Inspection where protocol ID is not available in the packet header. Inspect the payload to determine.

Major ChallengeComputationally expensive involving packet matching algorithms

Current optimizationsSoftware: Regular Expression (RE) representationHardware: ASICs

We have done extensive research in developing multithreaded L7 filter algorithms and scheduling them on multicore processors

Page 9: Lecture 1

VoIP gateways

QoS WANQoS WAN

VoIP gateway VoIP gateway

PSTNPublic Switched Telephone Network

PSTN

pcm

IPIP

pcm

Tasks: QoS, Variable Frame Sizing, Voice Processing, etc.

Page 10: Lecture 1

Multimedia Transcoding

Transcoder

Mpeg encoder

Internet

Video-on-demand server

Corporate Network

Media Player

Two important requirements If the receiver is not capable of interpreting the stored data Ex: wireless

receivers, hand-held devices, etc. Store different versions of videos in the server Compression for bandwidth and storage efficiency

Page 11: Lecture 1

A Multimedia Active Router in the Network

Passive Router Passive RouterActive Router

Media Server

Courtesy “A Cluster-based Active Router Architecture”, G. Welling, et al. IEEE Micro, January/February 2001.

• A large number of clients, Heterogeneity in clients’ inbound network bandwidth, CPU/MEM capacity or display resolution

• Reliability and bandwidth of the network• Why not convert the video in the router as per the client requirent?

Page 12: Lecture 1

Let the network speak the language of applications! – Vertical processing – A change in networking paradigm

Courtesy: http://www.cisco.com/en/US/products/ps6438/products_white_paper0900aecd8033e9a4.shtml

Page 13: Lecture 1

Redirecting Traffic to Cisco AON Module

Page 14: Lecture 1
Page 15: Lecture 1

Network I/O Processing

10

10040

GH

z an

d G

bps

Time1990 1995 2000 2003 2005 2010

.01

0.1

1

10

100

1000

2006/7

Network bandwidth outpaces

Moore’s Law

Moore’s Law

TCP requirements Rule of thumb:1GHz for 1Gbps

Page 16: Lecture 1
Page 17: Lecture 1

AON Scheduling Problem•How to increase throughput? – Adaptive Scheduling and Load Balancing techniques•Messages may have real-time constraints – Latency in addition to throughput => Need good old parallel processing•Not enough code memory in network processors (Ex. IXP 2800) => Need pipelining•How about QoS – Jitter and Out-of-Order departure of packets?• Kind of Similar to old Cluster Computing! => Must schedule messages and balance load to increase throughput and reduce latency, but we never considered throughput or pipeline.

Page 18: Lecture 1

Problem StatementScheduling/Load balancing to boost throughput, reduce latency and improve QoS

Scheduling must consider Connection Locality between packets in addition to load balancing

Multicore processors – Cache locality (Intel Xeon) and Thread locality (Sun Niagra)

Parallel and Pipeline scheduling to maximize throughput and minimize response time given code memory size, and real-time constraint, etc

How about scheduling for power and energy conservation?

Page 19: Lecture 1

19

Networking has many facets

Goals: functionality, scalability, throughput performance, security, power efficiency, manageability, etc.

Protocols (routing, reliability,

etc.)

Systems(interconnects,

processors, etc.)

Theory(graph theory, queuing

theory, etc.)

Page 20: Lecture 1

20

Structuring networks and protocolsGoal of network:

Provide communication for distributed applications

How to organize networks in such a way that they

Work correctly?Are scalable to large number of nodes?Can achieve high performance?Are interoperable across different technologies and uses?

Page 21: Lecture 1

21

Example networkHow to achieve end-to-end data exchange?

Page 22: Lecture 1

22

Internet architectureDesigning the structure of the Internet was a difficult problem

Many contributionsOne example: TCP/IP

Page 23: Lecture 1

Internet architecture“Hourglass architecture”Achieves interoperability

Single, common network layer protocol: Internet Protocol (IP)All network nodes need to support this protocol

Supports diversityDifferent link/physical layer protocols belowDifferent transport/application layer protocols above

23

Layered protocol stack

Physical layer

Link layer

Network layer

Transport layer

Application layer

IP

UDP TCP

HTTP

TLS/SSL

DNS BGP

SIP

Ethernet

DSL FDDI

1000BASE-T

SONET/SDH802.11a/b/g/n

RS-232

...

...

...

...

Example protocols

Page 24: Lecture 1

24

Review of specific protocolsWe will briefly review three protocols

Link layer: EthernetNetwork layer: Internet Protocol (IP)Transport layer: Transmission Control Protocol (TCP)

For full detailsNetworking textbooksRFCs

Hypertext Transfer Protocol (HTTP)

Transmission Control Protocol (TCP)

Internet Protocol (IP)

Ethernet

1000BASE-TPhysical layer

Link layer

Network layer

Transport layer

Application layer

Example protocolsLayer

Page 25: Lecture 1

25

ProtocolsProtocols define communication between entities

Format and order of messagesActions taken on transmission and/or receipt of message or other event

Protocols use headers (and trailers) for control information

Naming dependson layer

Data

DataH

DataHH

DataHHH TLink layer

Network layer

Transport layer

Application layer

Frame

Datagram

Segment

Message

Physical layer Bit

Page 26: Lecture 1

26

Process-to-process communicationWe have a network. How to get between programs?

Network

Page 27: Lecture 1

Network devices Network devices differ by highest layer processed

Devices can process/modify headers up to that layerSwitches and routers are most common

Physical layer

Link Layer

Network layer

Transport layer

Application layer

Physical layer

Link Layer

Physical layer

Link Layer

Network layer

Physical layer

Link Layer

Network layer

Transport layer

Physical layer

Link Layer

Network layer

Transport layer

Application layer

End system application

End system application

End system / host

End system / hostSwitch Router Transport-

layer system

Page 28: Lecture 1

DATA

Application

Pre.

Session

Transport

Network

Data Link

Physical

7

6

5

4

3

2

1

DATAAH

DATAPH

DATASH

DATATH

DATANH

DATADH

DATAPH

Application

Pre.

Session

Transport

Network

Data Link

Physical

7

6

5

4

3

2

1

Network AB

Layered Network Architecture (OSI)

Page 29: Lecture 1
Page 30: Lecture 1

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

7

6

5

4

3

2

1

Application

TCP

IP

Host-to-Net

OSI TCP/IP

Page 31: Lecture 1

31

Network systemsHow to interconnect ports of the network system?

input ports switch fabric output ports

network interface

network processor sw

itch interface

network interface

network processor sw

itch interface

switch

interfacesw

itch interface

scheduler

scheduler

network interface

network interface

... ...

embedded processor

control planedata plane

control processor

routing, error handling, resource control, etc.

Packet forwarding, intrusion detection,

flow classification, etc.

Per-flow queuing,

scheduling

Packet forwarding, intrusion detection,

flow classification, etc.

Per-flow queuing,

scheduling

hardware

software

Page 32: Lecture 1

32

RoutingShortest path routingCentralized approach

Each node has full “view” of networkEach node calculates shortest path using routing algorithm“Link state algorithm”(Exchange of link information always decentralized)

Distributed approachEach node computes best path without full viewShortest path computed as link information is exchanged“Distance vector algorithm”

3

1

2

5

1 4 14

2

7

a

b

d

c

e

f

Page 33: Lecture 1

33

Prefix lookups for packet forwarding

Match of IP destination addresswith prefixes specified in FIB

Longest matching prefixTypical core router

Hundreds of thousands of prefixesMillions of lookups per second

Efficient data structures andalgorithms essential for lookup

control processor

routing protocol

A

routing protocol

B monitor-ing

......

input packet processor

routing information base (RIB)

forwarding information base (FIB)

packet processing software

input packet processor

forwarding information base (FIB)

packet processing software

...

output packet

processor

output packet

processor

...switching fabric

link schedu-

ling

link schedu-

ling