Chapter 3 – Protocols & the TCP/IP Suite

52
Class 1 1 Chapter 3 – Protocols & the TCP/IP Suite

description

Chapter 3 – Protocols & the TCP/IP Suite. Protocols & the TCP/IP Suite The Need for a Protocol Architecture. Communication between a set of networked systems can involve a very complex set of procedures Example tasks for file transfer: Communication link setup - PowerPoint PPT Presentation

Transcript of Chapter 3 – Protocols & the TCP/IP Suite

Page 1: Chapter 3 –  Protocols & the TCP/IP Suite

Class 1 1

Chapter 3 – Protocols & the TCP/IP Suite

Page 2: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

2

Protocols & the TCP/IP SuiteThe Need for a Protocol Architecture

Communication between a set of networked systems can involve a very complex set of procedures

Example tasks for file transfer:– Communication link setup – Ensure the receiver is ready to accept data– Make sure the file management application at the receiver

is prepared to receive and store the file– Do file translation if necessary– Confirm delivery & check for errors

Networking protocols use the concept of modularity well known in the software development arena

Page 3: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

3

Protocols & the TCP/IP SuiteThe Need for a Protocol Architecture

In Networking protocol architectures, the modules are arranged in a vertical stack

– Each layer performs a distinct & essential set of tasks; more ‘primitive’ tasks are usually found in lower layers (‘closer’ to the transmission medium)

– Layers should be defined so changes in one layer do not necessitate changes in the other layers

– It takes at least two systems to communicate across a network and each of these systems need the same layers

The peer layers on each system communicate with each other; the set of rules governing it is known as a protocol

– Syntax– Semantics– Timing

Page 4: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

4

Protocols & the TCP/IP SuiteThe TCP/IP Protocol Architecture

The TCP/IP protocol suite is a large collection of public standards approved by the IAB (IETF) and used as the foundation for the Internet and similar private networks

Communication across a network using TCP/IP protocols involves two general steps:

– Getting the data across the network to the destination systems– Getting the data within the destination system to the right

application Because of layering & the general steps above, the TCP/IP

protocol suite was designed with five layers (lowest to highest):

– Physical Layer: the physical interface between the network and the attached system; covers the nature of the data signals, characteristics of the transmission medium, the data rate, etc.

Page 5: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

5

Protocols & the TCP/IP SuiteThe TCP/IP Layers

Network Access Layer: specifies how data is exchanged between the attached system and the network; will include addressing, framing, and other features such as prioritization

– Details of this layer depends on the physical layer; separating this layer from higher layer functions allows higher layers to be used over a wide range of network technologies

– Concerned with delivering data across a single network only Internet Layer: specifies how data can be routed across

multiple networks– All devices across an internet must share a common

internetworking layer to relay the data– Routers are the devices responsible for relaying data in an

internet – A global address space is an essential feature of this layer

Page 6: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

6

Protocols & the TCP/IP SuiteThe TCP/IP Layers

Transport Layer: specifies a set of end-to-end services usually common to a number of applications communicating across an internet (error-free, sequenced data delivery, etc.)

– Currently there are two transport layer specifications in the TCP/IP suite: the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP)

– TCP provides a reliable connection-oriented transport service– UDP provides a low overhead transport service with no

payload error checking, flow control, or sequencing Application Layer: specifies the functionality of the

application itself (file transfer, remote terminal access, etc.)

Page 7: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

7

Protocols & the TCP/IP SuiteThe Operation of TCP & IP

For successful communication across an internet, each system must have at least one globally unique address

Also, each host process needs a locally unique address An example TCP/IP based data transfer [Figure 3.1]

Page 8: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

8

Protocols & the TCP/IP SuiteThe Operation of TCP & IP

The key to operation of the protocol stack is encapsulation

Page 9: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

9

Protocols & the TCP/IP SuiteExamples of TCP/IP Applications

Electronic Mail relies on the Simple Mail Transfer Protocol (SMTP) – this covers the addressing and delivery of messages; other standards cover e-mail message format

File Transfer functionality relies on the File Transfer Protocol (FTP), which provides an authenticated means for accessing and transferring files to and from a remote system

Remote Terminal Access functionality relies on the TELNET protocol; it emulates a variety a hardwired terminals over a network connection

Other important TCP/IP Applications include the World Wide Web (HTTP or the Hypertext Transfer Protocol), Network News (NNTP or the Network News Transfer Protocol), and Directory Services (LDAP or the Lightweight Directory Access Protocol)

Page 10: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

10

•NV Monitoring of UDP Ports for Applications (NetView to monitor the different UDP ports for applications) •TFTP Trivial File Transfer Protocol, a simple form of ftp, with most of the security and advanced commands stripped off, used for diskless workstations, router configuration data, and any device that boots up, and requires information it cannot store permanently. As such it presents a rather large security hole, just imagine if someone were to connect to your tftp server and grab the boot file for your main Cisco router.

Page 11: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

11

Page 12: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

12

Protocols & the TCP/IP SuiteThe OSI Protocol Architecture

The ISO (an international standards body) has also developed a network protocol reference standard called the OSI model

While useful to know and important in the context of some international networks, the OSI model has not flourished for two primary reasons:

– The TCP/IP have matured and equipment using these protocols were widely adopted before the OSI model was finished

– The OSI model and standards developed using it tend to be very complex, making them harder to implement and operate

Page 13: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

13

Protocols & the TCP/IP SuiteThe OSI Protocol Architecture

The OSI model consists of seven layers (from bottom up):– Physical: concerned with the transmission and signaling across

the physical media (same as TCP/IP model)– Data Link: provides reliable transfer on a physical link by

formatting data in frames; providing timing, error, & flow control– Network: provides a universal switching/routing layer to insulate

upper layers from differing data link & physical layers– Transport: provides reliable, transparent end-to-end delivery of

data; may also provide end-to-end error recovery & flow control– Session: establishes, manages, and terminates connections

between communicating applications– Presentation: specifies how data should be represented between

communicating applications– Application: provides user access to networked resources

through a specific functional program

Page 14: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

14

Page 15: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

15

Page 16: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

16

Protocols & the TCP/IP SuiteInternetworking

It is very common for an organization to have different varieties of LANs as well as geographically dispersed networks

A quick review of Internetworking Terms– Communication Network– Internet (internet)– Intranet– End System– Intermediate System– Bridge– Router

Page 17: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

17

Protocols & the TCP/IP SuiteRouters

Routers are key pieces of equipment that allow internetworking across dissimilar networks

Essential functions for a router:– Provide links between physically distinct (and heterogeneous)

networks– Decide when and where to forward packets to attached

networks– Provide these functions in such a way that no modifications

are required to the attached networks Networking issues routers must deal with:

– Layer 2 Addressing Schemes– Maximum Packet sizes– Interfaces– Reliability

Page 18: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

18

Protocols & the TCP/IP SuiteAn Internetworking Example [Figure 3.5]

Page 19: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

19

Page 20: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

20

Page 21: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

21

Page 22: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

22

Overall Path for Outgoing Packets

Page 23: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

23

Overall Path for Incoming Packets

Page 24: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

24

Protocols & the TCP/IP SuiteAppendix: IP, TCP, and UDP

IP version 4 (IPv4)– The current version of the network

layer protocol used in the Internet– IPv4 header fields:– Version (4 bit) currently 4– Internet Header length (4 bits)

0101x 32 bits– Type of service (8 bits): priority

infor. to routers – Total length (16 bits) IP packet in

byte– Indentification (16 bits) unique

identifier– Flags (3 bits): (1) “more bit” for

fragments, (2) “don’t fragment”, (3) not used.

– Fragment offset (13 bits) offset in original packet of this packet.

– Time to live (8 bits) life time in Internet

– Protocol (8 bits): indicates next higher level protocol to receive packet

– Header checksum (16 bits) error detection done by routers

– Source address and Destination (32 bits) specifies network and end system.

– Option: security, record routing, and time-stamping.

– Padding: ensure header is multiple of 32 bit.

Page 25: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

25

Protocols & the TCP/IP SuiteAppendix: IP version 6 (IPv6)

Next generation version promises a number of improvements:– HUGE address space, with support for a many addressing schemes– Different header structure and options to speed processing– Built-in Quality of Service and security functionality

IPv6 Header fields:

Page 26: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

26

Protocols & the TCP/IP SuiteAppendix: the Transmission Control Protocol (TCP)

Provides a sophisticated connection-oriented transport service to networked applications on an IP network

TCP provides reliable and sequenced streaming delivery of application-layer data

TCP Header fields:

Page 27: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

27

Protocols & the TCP/IP SuiteAppendix: the User Datagram Protocol (UDP)

Provides a basic low-overhead connectionless transport service to networked applications on an IP network

UDP provides unreliable delivery of application-layer data in which delivery or duplication of data is not guaranteed

UDP is good for applications that provide their own enhanced delivery services as well as multicast and streaming applications

UDP Header fields:

Page 28: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

28

Page 29: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

29

Page 30: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

30

Memory-Memory Copies

Protocol processing overhead:– Copy message from one layer to the next using e.g., memcpy()– Often involves context switching: copying between user and kernel

space Example: delay due to memory-memory copy

– Assume Data rate of 600Mbps=73MBps– Assume 16MHz memory bus that is 16 bits wide 32MBps– For a 1 MB message, one copy takes 1/32 sec max data rate

32MBps– Two copies take 1/32 sec + 1/32 sec = 1/16 sec max data rate

16MBps Example: effective BW

– Itanium 4 bus allows 1 GB/s bandwidth– Each copy between layers takes a read and a write– A message of 1 KB takes 2 sec effective BW = 500 MB/s– Two copies of 1 KB takes 4 sec effective BW = 250 MB/s– Four copies of 1 KB takes 8 sec effective BW = 125 MB/s

Page 31: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

31

Berkeley Sockets

A real implementation of transport layer primitives– Implemented in BSD Unix– Part of TCP implementation in TCP/IP stack

Socket primitives for TCP– SOCKET: Creates new communication end point– BIND: Attaches a local address to a socket– LISTEN: Announce willingness to accept connections

non-blocking call– ACCEPT: Blocks the caller until a connection attempt arrives

Blocking call Server creates a new socket when connection request TPDU arrives and

forks another process to handle subsequent requests– CONNECT: Establishes a connection– SEND: Send data over the connection– RECEIVE: Receive data from the connection– CLOSE: Release connection

Page 32: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

32

BSD Sockets Example: Receiver Side

/* Simple socket program: receiver side */#include <iostream.h>#include <stdlib.h>#include <stdio.h>#include <stream.h>#include <ctype.h>#include <unistd.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <netdb.h>#include <sys/time.h>

void main ( int argc, char *argv[] ){ int sk ; // socket descriptor sockaddr_in remote ; // socket address for remote sockaddr_in local ; // socket address for us char buf[80] ; // buffer from remote int rlen = sizeof(remote);// length of remote address int len = sizeof(local); // length of local address int mesglen ; // actual length of message

Page 33: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

33

// create the socket sk = socket(AF_INET,SOCK_DGRAM,0) ;

// set up the socket local.sin_family = AF_INET ; // internet family local.sin_addr.s_addr =

INADDR_ANY ; // wild card machine address local.sin_port = 0; // let system choose the port

// bind the name (address) to a port bind(sk,(struct sockaddr *)&local,sizeof(local)) ;

// get the port name and print it out getsockname(sk,(struct sockaddr *)&local,&len) ; cout << "socket has port " << local.sin_port << "\n" ; mesglen = recvfrom(sk,buf,80,0,(struct sockaddr *)&remote,&rlen);

cout << buf << " len: " << mesglen << endl; /* close the socket */ close(sk);}

Page 34: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

34

BSD Sockets Example: Sender Side/* A simple sockets program ... sender side */#include <iostream.h>#include <stdio.h>#include <stream.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <netdb.h>#include <fcntl.h>#include <errno.h>#include <sys/ipc.h>#include <sys/time.h>

void main ( int argc, char *argv[] ) { int sk ; // socket descriptor sockaddr_in remote ; // socket address // for

remote side hostent *hp ; // address of remote // host int mesglen ; // actual length of // the

message

char buf[80];

Page 35: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

35

BSD Sockets Example: Sender Side

// create the socket sk = socket(AF_INET,SOCK_DGRAM,0) ; // designate the addressing family remote.sin_family = AF_INET ; // get the address of the remote host and store hp = gethostbyname(argv[1]) ; memcpy(&remote.sin_addr,hp->h_addr,hp->h_length) ; // get the port used on the remote side and store remote.sin_port = atoi(argv[2]) ;

cout << "Enter the info to transmit: "; cin.getline( buf, 80);

mesglen = strlen(buf)+ 1;

cout << buf << " len: " << mesglen << endl; sendto(sk,buf,mesglen,0,(struct sockaddr *)&remote, sizeof(remote)) ;

close(sk);}

Page 36: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

36

BSD Sockets Example

Compile and execute the two programs

– Save these programs on a Unix machine as recv.cc and send.cc– Compile and link them:

E.g., on a Solaris workstation use:gcc –o recv recv.cc –lsocket –lnsl andgcc –o send send.cc –lsocket –lnsl

– You’ll get two executables: recv and send– Execute them on two different workstations:

E.g., recv on one workstation and send on another using rlogin to that workstation

Try the connection-oriented case now– Use SOCK_STREAM instead of SOCK_DGRAM in socket() call– Use listen() and accept() calls– Also try spawning a new receiver after accept() to handle multiple

clients

Page 37: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

37

Network supports process-to-process channels; e.g., Latency = Propagation + Transmit + Queue Propagation = Distance / SpeedOfLight 3.0 x 108 meters/second in a vacuum 2.3 x 108 meters/second in a cable 2.0 x 108 meters/second in a fiber Transmit = Size / Bandwidth

Request/Reply: for file access and digital libraries • Message Stream: for video applications – video: sequence of frames – resolution:1/4 TV-size image = 352 x 240 pixels; – 24-bit color: frame=(352 x 240 x 24)/8 = 247.5KB; – frame rate: 30 fps = 7500KBps = 60Mbps – video on-demand versus video-conferencing

Page 38: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

38

DNS

Hierarchical. Dot used as a separator. Right-most component is the top-most domain. Top-level domains: .edu, .gov, .mil, .com, .arpa, .org, .net,

plus the country domains (.uk, .de, .no, .il, etc...), and the.us hierarchy.

New TLDs include .info, .biz, .name, … FQDN: frobozzica.merit.edu vs. relative name frobozzica

(relative to a default domain, in this case merit.edu). The reverse mapping from IP addresses to host names is

performed under the auspices of the IN-ADDR.ARPA pseudo-domain.

– 100.61.108.198.IN-ADDR.ARPA

Page 39: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

39

DNS - Resolver

DNS - Resolver The DNS resolver (client library) generates queries for domain name

information sent to a name server. Completely separate from the name server function. Configured via /etc/resolv.conf

domain merit.edusearch org.merit.edu, itss.umich.edunameserver 127.0.0.1nameserver 198.108.1.42

DNS - Server Answers DNS queries sent by resolvers. Listens at UDP and TCP port 53

– UDP used for routine queries – TCP used for zone transfers

A zone is part of the name space (merit.edu) delegated to a single server. A domain is also part of the name space, but it may cover several zones

(e.g., umich.edu covers engin.umich.edu, eecs.umich.edu).

Page 40: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

40

DNS - Server

Configurations – Caching-only: relies on other name servers for authoritative

answers– Primary: Contains the writeable authoritative copy for the

zones that it is primary for– Secondary: Contains a mirror copy of the data from a primary

name server. No updates take place here; used to provide redundancy

Page 41: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

41

DNS - Operation

what is the IP addressof www.merit.edu?

local DNS sends queryto root DNS server

root DNS server returnsIP address ofDNS server at merit.edu

local DNS sends query to DNS @ merit.edu,www.merit.edu?

DNS @ merit.edu returns IPaddress of www.merit.edu198.108.1.48 to local DNS

local DNS returns answer toresolver, www.merit.edu is198.108.1.48

Page 42: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

L2

PHY

L3

L2

PHY

L3

L2

PHY

L3

L2

PHY

L3

L2

PHY

L3

L2

PHY

L3

L2

PHY

L3

Switching FabricSwitching Fabric

R5000

FlashCard

10BseT DUART

Mai

n M

emor

y

EE Prom

Slot 1Slot 1 Slot 2Slot 2 Slot 3Slot 3 Slot 4Slot 4

Slot 5Slot 5 Slot 6Slot 6 Slot 7Slot 7 Slot 8Slot 8

ControlModule

LineCard

LineCard

LineCard

LineCard

LineCard

LineCard

LineCard

Distributed Switching and Routing Architecture

Page 43: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

Distributed Input/Output Processing

Bridgeor

Route

L2 Database

Arb

iter

PriorityPriority AccountingAccounting FiltersFilters Encaps & Queuing

Dem

ux

EncapsEncaps QoSQoSCrossbarCrossbarL3/L4 Database

PriorityPriority AccountingAccounting FiltersFilters

Input ProcessingInput Processing

Output ProcessingOutput Processing

Page 44: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

Flow & Table Management

Bridgeor

Route

L2 Database

Arb

iter

PriorityPriority AccountingAccounting FiltersFilters Encaps & Queuing

Dem

ux

EncapsEncaps QoSQoSCrossbarCrossbarL3/L4 Database

PriorityPriority AccountingAccounting FiltersFilters

Input ProcessingInput Processing

Output ProcessingOutput Processing

BridgingBridging VLANsVLANs RoutingRoutingAccessAccessControlControl

QoSQoSPolicyPolicy

RMON/RMON/RMON2RMON2

CPUCPU ModuleModule

FirstPacket

SubsequentPackets

Flow classification and distribution is better than 25,000 flows per second

Page 45: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

Crossbar

2.0 Gbps per channel (SSR8000/8600) 4 priority queues per input and output channel Packet switching Overspeed Overflow at output buffers Avoid Head Of Line - look 4 deep per queue Multicast packets replicated in hardware

Page 46: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

46

Multicast SupportOutputModule

OutputModule

OutputModule

Switch FabricSwitch Fabric

InputModule

Efficient packet replication via switch

fabric

QoS ensures priority

Expanding Ring TTL Support

Standards based Multicast supportStandards based Multicast support– IGMP v2 (seamless integration with IGMP v2 (seamless integration with

workstations/servers)workstations/servers)– DVMRP v3DVMRP v3– PIM-DM, PIM-SMPIM-DM, PIM-SM

ACLs screen out hosts which attempt ACLs screen out hosts which attempt to join certain multicast groupsto join certain multicast groups

Page 47: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

47

QoS - Packet Classification(Four Classes of Service)

Line Speed Gigabit Input StreamsLine Speed Gigabit Input Streams

AS

IC based Layer-3/4

AS

IC based Layer-3/4

Packet C

lassifierP

acket Classifier

Buffer QueuesBuffer Queues

Switch FabricSwitch Fabric

Layer-3: Layer-4 flows mapped to CoS

Layer-2: 802.1p priority mapped to CoS

Control Priority

High Priority

Medium Priority

Low Priority

Page 48: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

48

QoS - Multiple Prioritization Schemes

AS

IC based P

acketA

SIC

based Packet

Encapsulating E

ngine E

ncapsulating Engine

Switch FabricSwitch Fabric

Weighted Fair Queuing (ex. 25% per queue)

Line Speed 100 Mbps StreamsLine Speed 100 Mbps Streams

Strict Priority Queuing

Buffer QueuesBuffer Queues

Buffer QueuesBuffer Queues

Dual MACDual MAC

Layer-3: TOS/DiffServ Packet MarkingLayer-3: TOS/DiffServ Packet Marking

Layer-2: 802.1p Packet MarkingLayer-2: 802.1p Packet Marking

Control Priority

High Priority

Medium Priority

Low Priority

Page 49: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

49

Per Flow Committed Access Rate (CAR)(Rate Limiting)

H

F

H

F

HH H

F

e

H

F

Buffer QueuesBuffer Queues Switch FabricSwitch Fabric

HTTP Flow

FTP Flow

eMail Flow

Buffer QueuesBuffer Queues

AS

IC Layer-3/4

AS

IC Layer-3/4

Packet C

lassifierP

acket Classifier

H

F

H

F

HH H

F

e

H HTTP Flow

FTP Flow

eMail Flow

H H H H H H

F F

e

F F F

Excess bandwidth discarded

CAR can be performed onCAR can be performed on - per port - per port - per flow(s) - per flow(s) - per application(s) - per application(s) - per host(s) - per host(s)in kilobits per secondin kilobits per second

Control PriorityHigh PriorityMedium PriorityLow Priority

Excess Bandwidth reprioritized to a lower priority

H

H

e

H H H H H

Page 50: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

50

Random Early Detection (RED) Maximizes throughput under congestive

conditions Provides fair bandwidth reduction

between host connections thru implicit notification (dropped packets)

Works for TCP only, use CAR for UDP Intelligently differentiates between

transient bursts and excessive offered load

Avoids TCP slow start oscillations Reduces overall nodal latency

Minimum Threshold

Maximum Threshold D

rop Probability

Drop A

ll

Que

ue D

epth

Time

Avg. QueueDepth

Weighted RED (WRED) is RED policies per QueueWeighted RED (WRED) is RED policies per Queue

Page 51: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

51

Key Redundancy FeaturesFully hot swappable with redundant Control Modules and Switch Fabrics

Any number of links can be aggregated (ex. 7 Gig Ethernet links = 14 Gbps BW)

Mix and match link speeds for incremental bandwidth

Aggregate links with SmartTRUNK

55095509

Fully Interoperable with Cisco’s Fast Etherchannel and other Server trunking protocols

Superior balancing based on flows rather than MAC address

Can balance flows using “round robin” or link utilization algorithms

VRRP Standby Router

VRRP (Virtual Router Redundancy Protocol) protects clients using default gateways

Equal Cost Multipath OSPF can multiply the effective bandwidth over 4 paths

Page 52: Chapter 3 –  Protocols & the TCP/IP Suite

635.412 Spring 2005 Class 1: Introduction to LANs & WANs

52

Web Hosting with Gigabit EthernetServer Array Load-balancing based on Layer 4 Application traffic: round robin, server utilization, server availability

Jumbo Frame Support with hardware IP Fragmentation support to lower MTU interfaces (“Don’t Fragment” bit not set)

Large Packet Buffering to insure zero packet loss under any conditions

Add a F5 Labs BIGip Server Array controller for added load balancing functionality

Layer-4 Quality of Service and Access Control Lists plus support for Diff-serv

Full RMON I & RMON II Supported along with LFAP for Accounting

Transparent Web Caching: Redirect HTTP requests to a Web cache server