lecture 1
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 PresentationTRANSCRIPT
Lecture 1Introduction to Application Oriented Networking
2
TODAY’S AGENDAIntroduction to Application Oriented NetworkingHistory of Internet (Kleinrock)InternetworkingInternetworking
3
Scale of InternetNumber of users:
Database
Multimedia & Transcoding
Wireless
Computer Games
E Mail
FTP
Telephone
Virus and Malware
INTERNET APPLICATIONS - SECURITY
We must protect the Internet by adding more intelligence. Well, why not provide some additional service and make some money too!
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
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
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.
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
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?
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
Redirecting Traffic to Cisco AON Module
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
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.
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?
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.)
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?
21
Example networkHow to achieve end-to-end data exchange?
22
Internet architectureDesigning the structure of the Internet was a difficult problem
Many contributionsOne example: TCP/IP
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
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
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
26
Process-to-process communicationWe have a network. How to get between programs?
Network
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
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)
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
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
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
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