0% found this document useful (0 votes)
82 views

Lecture Notes PDF

Uploaded by

Asif Belal
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
82 views

Lecture Notes PDF

Uploaded by

Asif Belal
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 942

Fundamentals Of Computer

Networking And Internetworking

Prof. Douglas Comer

Purdue University

http://www.cs.purdue.edu/people/comer

Copyright 2014 by Douglas Comer And Pearson Education. All rights reserved.
MODULE I

Introductions, Course Overview,


Approaches To Networking, Open And
Closed Systems, Protocols, And Layering

Computer Networks and Internets -- Module 1 1 Spring, 2014


Copyright 2014. All rights reserved.
Introductions

d Professor
d TAs
d Students

Computer Networks and Internets -- Module 1 2 Spring, 2014

Copyright 2014. All rights reserved.


Course
Overview
Topic And Scope

Computer networks and internets: an overview of concepts,


terminology, and technologies that form the basis for digital
communication in individual networks and the global Internet

Computer Networks and Internets -- Module 1 4 Spring, 2014

Copyright 2014. All rights reserved.


You Will Learn

d Fundamental principles
d Concepts
d Terminology (lots of it)
d Key aspects of networking

Computer Networks and Internets -- Module 1 5 Spring, 2014

Copyright 2014. All rights reserved.


The Five Key Aspects Of Networking

d Data communications: signals over wires and bits over


signals
d Networks: packets over bits
d Internets: datagrams over packets
d Network programming: application data over the Internet
d Cross-functional concepts and technologies: network
configuration, control, and management

Computer Networks and Internets -- Module 1 6 Spring, 2014

Copyright 2014. All rights reserved.


Features Of The Course

d Covers all of networking and internetworking from media to


applications
d Examines each of the underlying technologies
d Focuses on concepts and principles that apply across
vendors and products
d Provides perspective and shows how the pieces fit together
d Explains how an Internet is built from heterogeneous
networks

Computer Networks and Internets -- Module 1 7 Spring, 2014

Copyright 2014. All rights reserved.


What You Will Not Learn

d Commercial aspects
Vendors
Products
Prices
Markets and marketing
d How to engineer network equipment
d How to configure/operate networks
d How to design new protocols

Computer Networks and Internets -- Module 1 8 Spring, 2014

Copyright 2014. All rights reserved.


Practice Sessions (Aka Labs)

d Form an important part of the course


d You will
Build network programs
Capture and analyze packets
Learn about protocols

Computer Networks and Internets -- Module 1 9 Spring, 2014

Copyright 2014. All rights reserved.


Background Expected

d Our goal is breadth rather than depth


d Only a few basics are needed
Ability to program in C
A glancing acquaintance with data structures and
pointers
A minor brush with algebra
A basic understanding of operating systems
d The major requirement is a desire to learn

Computer Networks and Internets -- Module 1 10 Spring, 2014

Copyright 2014. All rights reserved.


Summary Of The Course

d Explores all aspects of networking and internetworking


d Gives concepts and principles
d Focuses on the big picture
d Includes lots of programming exercises
d Moves rapidly and covers lots of vocabulary

Computer Networks and Internets -- Module 1 11 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
Historic Approaches
To Networking
How Should A Network Be Structured?

Computer Networks and Internets -- Module 1 14 Spring, 2014

Copyright 2014. All rights reserved.


How Should A Network Be Structured?

d The early phone company answer


Data networking is like telephone calls
We will devise and offer various data services
Charges will depend on distance and duration
You only need 128 Kbps

Computer Networks and Internets -- Module 1 14 Spring, 2014

Copyright 2014. All rights reserved.


How Should A Network Be Structured?

d The early phone company answer


Data networking is like telephone calls
We will devise and offer various data services
Charges will depend on distance and duration
You only need 128 Kbps
d The early computer vendor answer
A network connects computers in your organization
We will devise all the necessary equipment and software
You only need to connect our computers
You only need to run our applications

Computer Networks and Internets -- Module 1 14 Spring, 2014

Copyright 2014. All rights reserved.


How Should A Network Be Structured?
(continued)

d The early network equipment vendor answer


The network is independent of computers
We will create network equipment and interface
hardware that connects computers to our network
We will build device drivers for your operating system
You only need to use our network

Computer Networks and Internets -- Module 1 15 Spring, 2014

Copyright 2014. All rights reserved.


Some Resulting Commercial Network Systems

d Apple Computer Appletalk


d Banyan Vines
d Digital Equipment Corporation DECNET
d IBM SNA
d Novell Netware
d Ungermann Bass NET/ One
d Xerox XNS

Computer Networks and Internets -- Module 1 16 Spring, 2014

Copyright 2014. All rights reserved.


The Researchers Answer

d Although we have computers at multiple sites, we reject the


phone companys approach
d Because we use diverse computer architectures, we reject
the computer vendors approach
d Because a variety of network technologies are possible, we
reject the network vendors approach
d A variety of applications are possible
d Lets experiment with new technologies (short distance as
well as long distance) and new applications

Computer Networks and Internets -- Module 1 17 Spring, 2014

Copyright 2014. All rights reserved.


Some Resulting Research Projects

d Xerox Palo Alto Research Center


Ethernet
d MIT and elsewhere
Token passing ring networks
d Department of Defense
ARPANET
SATNET
Packet radio net
The global Internet

Computer Networks and Internets -- Module 1 18 Spring, 2014

Copyright 2014. All rights reserved.


Open Vs. Closed Networking

d Closed networks
Vertical approach
Each vendor designs/ builds their own
Given technology owned by vendor
Vendor may license technology to other groups
d Open networks
Competitive approach
Multiple groups collaborate to define a technology
To insure interoperability, specifications written in
standards documents that are available to everyone
Companies build products according to standards

Computer Networks and Internets -- Module 1 19 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
Protocol Standards
And Protocol Design
Why Standardize?

d Networking supports communication among multiple


entities
d Agreement needed to make communication correct, efficient,
and meaningful

Computer Networks and Internets -- Module 1 22 Spring, 2014

Copyright 2014. All rights reserved.


Which Organizations Issue Standards?

d IEEE (Institute of Electrical and Electronics Engineers)


d IETF (Internet Engineering Task Force)
d ITU (International Telecommunications Union)
d ISO (International Organization for Standardization)
d W3C (World Wide Web Consortium)
d ...and many others

Computer Networks and Internets -- Module 1 23 Spring, 2014

Copyright 2014. All rights reserved.


Standards And Standardization

d Joke: why is networking so difficult?

Computer Networks and Internets -- Module 1 24 Spring, 2014

Copyright 2014. All rights reserved.


Standards And Standardization

d Joke: why is networking so difficult?


d Because there are so many standards from which to choose

Computer Networks and Internets -- Module 1 24 Spring, 2014

Copyright 2014. All rights reserved.


Protocol

d Each protocol specifies how to handle one aspect of


communication
d A protocol can specify
Low-level details such as voltage and frequency
High-level details such as format visible to a user
d Many individual communication protocol standards exist
d Set of protocols designed to work together is known as a
suite
Example: TCP/ IP Internet protocol suite

Computer Networks and Internets -- Module 1 25 Spring, 2014

Copyright 2014. All rights reserved.


Two Key Properties That Protocols Specify

d Syntax
Format of each message
Representation of data items
Encoding of bits in electromagnetic signals
d Semantics
Meaning of each message
Procedures used to exchange messages
Actions to take when an error occurs

Computer Networks and Internets -- Module 1 26 Spring, 2014

Copyright 2014. All rights reserved.


Steps In Protocol Design

d Look at the facilities the underlying hardware provides

Computer Networks and Internets -- Module 1 27 Spring, 2014

Copyright 2014. All rights reserved.


Steps In Protocol Design

d Look at the facilities the underlying hardware provides


d Imagine an abstract communication mechanism as a user
would like it to work

Computer Networks and Internets -- Module 1 27 Spring, 2014

Copyright 2014. All rights reserved.


Steps In Protocol Design

d Look at the facilities the underlying hardware provides


d Imagine an abstract communication mechanism as a user
would like it to work
d Design an efficient implementation of the abstraction

Computer Networks and Internets -- Module 1 27 Spring, 2014

Copyright 2014. All rights reserved.


Steps In Protocol Design

d Look at the facilities the underlying hardware provides


d Imagine an abstract communication mechanism as a user
would like it to work
d Design an efficient implementation of the abstraction
d The key to success: choose a good abstraction

Computer Networks and Internets -- Module 1 27 Spring, 2014

Copyright 2014. All rights reserved.


Why Protocol Design Is Difficult

d Multiple implementations of a protocol will exist


d Implementations will be created by a multiple
individuals/organizations
d There are many details to consider
d Key tradeoff
A specification that dictates all possible details restricts
implementations
A specification that does not specify enough details is
ambiguous and leads to incompatible implementations

Computer Networks and Internets -- Module 1 28 Spring, 2014

Copyright 2014. All rights reserved.


Maximizing Interoperability

d Design principle that maximizes interoperability (due to


Postel)

Be conservative in what you send


and be liberal in what you accept.

Computer Networks and Internets -- Module 1 29 Spring, 2014

Copyright 2014. All rights reserved.


Protocol Layering
and Layering Models
Protocol Layering

d Needed because communication is complex


d Intended primarily for protocol designers
d Divides communication into intellectually manageable
pieces
d Provides a conceptual framework that can help us
understand protocols
d Ideally, layering is invisible once protocols have been
designed
d Notes:
Layering gives a guideline, not a rigid framework
Optimizations may violate strict layering

Computer Networks and Internets -- Module 1 31 Spring, 2014

Copyright 2014. All rights reserved.


Two Layering Models

d Internet protocols use a 5-layer reference model


d ISO and the ITU defined a 7-layer model

Computer Networks and Internets -- Module 1 32 Spring, 2014

Copyright 2014. All rights reserved.


Two Layering Models

d Internet protocols use a 5-layer reference model


d ISO and the ITU defined a 7-layer model

Computer Networks and Internets -- Module 1 32 Spring, 2014

Copyright 2014. All rights reserved.


Internet Reference Model

Application
LAYER 5

Transport
LAYER 4

Internet
LAYER 3

Network Interface
LAYER 2

Physical
LAYER 1

d Descriptive model formed after TCP/IP protocols were


devised
d Used in practice

Computer Networks and Internets -- Module 1 33 Spring, 2014

Copyright 2014. All rights reserved.


Physical Layer

d Underlying transmission media


d Electromagnetic energy and its use
d Representation of information in signals
d Electrical properties such as radio frequencies and voltage
d Associated hardware

Computer Networks and Internets -- Module 1 34 Spring, 2014

Copyright 2014. All rights reserved.


Network Interface Layer

d Communication between a computer and network hardware


d Also called data link or MAC layer
d Mechanisms for gaining access to shared media
d Hardware (MAC) addressing
d Packet (frame) formats
d Packet (frame) types and demultiplexing
d Error detection

Computer Networks and Internets -- Module 1 35 Spring, 2014

Copyright 2014. All rights reserved.


Internet Layer

d Communication between a pair of computers across the


Internet
d Internet packet format (datagram)
d Internet addressing model and address assignment
d Forwarding of Internet packets
d Dividing an Internet packet into smaller packets for
transmission
d Error detection and reporting

Computer Networks and Internets -- Module 1 36 Spring, 2014

Copyright 2014. All rights reserved.


Transport Layer

d Communication between a pair of applications


d Demultiplexing among multiple destinations on a computer
d Reliable delivery and retransmission
d Mechanisms to control data rate and avoid congestion

Computer Networks and Internets -- Module 1 37 Spring, 2014

Copyright 2014. All rights reserved.


Application Layer

d Format and representation of data and messages


d Procedures applications follow to
Transfer data
Handle errors or unexpected conditions
d Meaning of messages exchanged
d Internet infrastructure such as routing and DNS

Computer Networks and Internets -- Module 1 38 Spring, 2014

Copyright 2014. All rights reserved.


General Idea

d Each computer contains an entire set of layered protocols


d When an application sends a message
The message passes down through the layered protocols
A given layer adds information and forms a packet
The computer transmits the final packet
d When a packet arrives
The packet passes up through the protocol layers
A given layer performs processing and passes the packet
up to the next layer
The application receives the message that was sent

Computer Networks and Internets -- Module 1 39 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Protocol Software On A Computer

Computer 1 Computer 2
Application Application

Transport Transport

Internet Internet

Net. Interface Net. Interface

Physical Network

d Protocols on a computer arranged in a conceptual stack

Computer Networks and Internets -- Module 1 40 Spring, 2014

Copyright 2014. All rights reserved.


Packet Headers As A Packet Passes
Across The Internet

d One header prepended by each layer when message sent


d Result: headers are nested with lowest-layer header
appearing first

1: Physical header (possible, but not typical)

2: Network Interface header

3: Internet header

4: Transport header

message the application sent

Computer Networks and Internets -- Module 1 41 Spring, 2014

Copyright 2014. All rights reserved.


Layering Principle

d Layered protocols enforce an invariant:

Layer N at the destination receives an exact copy of the


message sent by layer N at the source. All headers and other
modifications added by lower layers at the source must be
removed by lower layers at the destination.

d Allows protocol designer to focus on one layer at a time

Computer Networks and Internets -- Module 1 42 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of The Layering Principle
SOURCE DESTINATION

Application Application

identical message

Transport Transport

identical packet

Internet Internet

identical datagram

Net. Interface Net. Interface

identical frame

Physical Network

Computer Networks and Internets -- Module 1 43 Spring, 2014

Copyright 2014. All rights reserved.


Do We Understand Layering?

Computer Networks and Internets -- Module 1 44 Spring, 2014

Copyright 2014. All rights reserved.


Do We Understand Layering?

No!

Computer Networks and Internets -- Module 1 44 Spring, 2014

Copyright 2014. All rights reserved.


A Few Subtle Complications Of Layering

Computer Networks and Internets -- Module 1 45 Spring, 2014

Copyright 2014. All rights reserved.


A Few Subtle Complications Of Layering

d Layering diagrams are abstract and simplistic

Computer Networks and Internets -- Module 1 45 Spring, 2014

Copyright 2014. All rights reserved.


A Few Subtle Complications Of Layering

d Layering diagrams are abstract and simplistic


d Details and exceptions complicate practical systems

Computer Networks and Internets -- Module 1 45 Spring, 2014

Copyright 2014. All rights reserved.


A Few Subtle Complications Of Layering

d Layering diagrams are abstract and simplistic


d Details and exceptions complicate practical systems
d Four examples
Cross-layer communication
Multiple protocols per layer
Layering in an Internet
Technologies that intertwine layers

Computer Networks and Internets -- Module 1 45 Spring, 2014

Copyright 2014. All rights reserved.


Example Of Cross-Layer Communication

d Facts
A transport protocol selects amount of data to send in
each packet
To optimize performance, ensure packets are full
d Unfortunately
To find maximum packet size, transport protocol must
interact with a lower layer

Computer Networks and Internets -- Module 1 46 Spring, 2014

Copyright 2014. All rights reserved.


Multiple Protocols Per Layer

d Consider a typical computer


d User can run multiple applications simultaneously
Email
Web browser
d Computer can connect to multiple physical networks
Wired Ethernet
Wi-Fi wireless network
d Other layers have multiple protocols as well

Computer Networks and Internets -- Module 1 47 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Multiple Protocols At Each Layer
COMPUTER

appl1 appl2 appl3 Application

TCP UDP Transport

IPv4 IPv6 Internet

wired interface wireless interface Net. Interface

Ethernet Wi-Fi Network

Computer Networks and Internets -- Module 1 48 Spring, 2014

Copyright 2014. All rights reserved.


Layering In An Internet

d Our layering diagrams only show two computers connected


to a network
d The Internet contains multiple networks interconnected by
routers
d Routers only need layer 2 and layer 3 software to forward
packets across the Internet

Computer Networks and Internets -- Module 1 49 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Layers Used To Forward
Packets Across The Internet

Host A Host B

application application
router
transport transport

Internet Internet Internet

net interface net interface net interface

net 1 net 2

d In practice, routers do more than forward packets


d We will learn more later in the course

Computer Networks and Internets -- Module 1 50 Spring, 2014

Copyright 2014. All rights reserved.


Technologies That Intertwine Layers

d Cross-layer functions
Routing protocols operate at layer 5 but change layer 3
forwarding tables
Address resolution maps layer 3 addresses to layer 2
addresses
d Layer circularities
Tunneling can be used to send IPv6 (a layer 3 protocol)
over IPv4 (another layer 3 protocol)
Virtual Private Networks (VPNs) send IP over IP

Computer Networks and Internets -- Module 1 51 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Layering Used By A VPN

appl1 appl2

transport

Internet Internet

VPN net interface

Physical net

Computer Networks and Internets -- Module 1 52 Spring, 2014

Copyright 2014. All rights reserved.


ISO 7-Layer Reference Model

Application
LAYER 7

Presentation
LAYER 6

Session
LAYER 5

Transport
LAYER 4

Network
LAYER 3

Data Link
LAYER 2

Physical
LAYER 1

d Prescriptive model formed before protocols were devised


d Created by committee vote

Computer Networks and Internets -- Module 1 53 Spring, 2014

Copyright 2014. All rights reserved.


ISO 7-Layer Reference Model
(continued)

d Model was defined when data networks connected dumb


terminals to large mainframes
d Session layer
Handled details of login and control of send/ receive
Provided opportunity for billing and accounting
d Presentation layer
Defined data representation
Primary intention was to map character sets
d Both layers now superfluous

Computer Networks and Internets -- Module 1 54 Spring, 2014

Copyright 2014. All rights reserved.


Unfortunately

d Marketing organizations decided seven is better than five


d Many textbooks and vendors claim to use all seven layers

Computer Networks and Internets -- Module 1 55 Spring, 2014

Copyright 2014. All rights reserved.


Summary

d Network systems can be open or closed


Closed systems are created and owned by a single
company
Open systems require that technology be specified in
standards documents that allow multiple companies to
build products
d A protocol standard can specify data and message
representation, rules for message exchange, error handling,
or low-level details such as voltage

Computer Networks and Internets -- Module 1 56 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d A layering model provides a conceptual framework that


helps protocol designers create a suite of protocols
d Implementation of layered protocols known as a stack
d Internet uses a 5-layer reference model
d Remainder of the course explores each layer

Computer Networks and Internets -- Module 1 57 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
An Alternative To Layering

Computer Networks and Internets -- Module 1 59 Spring, 2014

Copyright 2014. All rights reserved.


An Alternative To Layering

Hire really, really smart people and have them design a single,
large protocol that handles all aspects of communication
without dividing the problem into smaller subproblems

Computer Networks and Internets -- Module 1 59 Spring, 2014

Copyright 2014. All rights reserved.


A List Of All Practical
Alternatives To Layering

(this page intentionally left blank)

Computer Networks and Internets -- Module 1 60 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
MODULE II

Network Programming And Applications

Computer Networks and Internets -- Module 2 1 Spring, 2014


Copyright 2014. All rights reserved.
Topics

d Internet services and communication paradigms


d Client-server model and alternatives
d Network programming with a simplified API
d The socket API
d Application layer protocols
d Examples of standard application protocols

Computer Networks and Internets -- Module 2 2 Spring, 2014

Copyright 2014. All rights reserved.


Internet Services And
Communication Paradigms
General Principle: Intelligence At The Edge

The Internet does not provide services. Instead, the


Internet only provides communication, and application
programs provide all services.

Computer Networks and Internets -- Module 2 4 Spring, 2014

Copyright 2014. All rights reserved.


General Principle: Intelligence At The Edge

The Internet does not provide services. Instead, the


Internet only provides communication, and application
programs provide all services.

d Consequence
Every Internet communication, including voice and
video teleconferencing, involves communication among
application programs

Computer Networks and Internets -- Module 2 4 Spring, 2014

Copyright 2014. All rights reserved.


Communication Paradigms

d The Internet offers two communication paradigms


2 22222222222222222222222222222222222222222222222222222222222222222
12 22222222222222222222222222222222222222222222222222222222222222222
Stream Paradigm 1 Message Paradigm 1
1 1 1
1 Connection-oriented 1 Connectionless 1
21 22222222222222222222222222222222222222222222222222222222222222222
1 1
1 1-to-1 communication 1 Many-to-many communication 1
21 22222222222222222222222222222222222222222222222222222222222222222
1 1
1 Sequence of individual bytes 1 Sequence of individual messages 1
21 22222222222222222222222222222222222222222222222222222222222222222
1 1
1 Arbitrary length transfer 1 Each message limited to 64 Kbytes 1
21 22222222222222222222222222222222222222222222222222222222222222222
1 1
1 Used by most applications 1 Used for multimedia applications 1
21 22222222222222222222222222222222222222222222222222222222222222222
1 1
1 Built on TCP protocol 1 Built on UDP protocol 1
12 22222222222222222222222222222222222222222222222222222222222222222
1 1

d Each paradigm has surprising characteristics

Computer Networks and Internets -- Module 2 5 Spring, 2014

Copyright 2014. All rights reserved.


Stream Paradigm (TCP)

d Transfers a sequence of bytes


d Connection-oriented: data sent between two applications
d Bidirectional (one stream in each direction)
d No meaning attached to data and no boundaries inserted in
data
d Surprising characteristic:

Although it delivers all bytes in sequence, the stream


paradigm does not guarantee that the chunks of bytes
passed to a receiving application correspond to the
chunks of bytes transferred by the sending application.

Computer Networks and Internets -- Module 2 6 Spring, 2014

Copyright 2014. All rights reserved.


Message Paradigm (UDP)

d Connectionless: network accepts and delivers individual


messages
d If the sender places N bytes in a message, a receiver will
find exactly N bytes in the incoming message
d Paradigm allows unicast, multicast, or broadcast delivery
(one destination, multiple destinations, or all destinations)
d Surprising characteristic:

Although it preserves boundaries, the message paradigm


allows messages to be lost, duplicated, or delivered out-
of-order; neither the sender nor receiver is informed
when such errors occur.

Computer Networks and Internets -- Module 2 7 Spring, 2014

Copyright 2014. All rights reserved.


Stream Transport And Data Chunks

d The protocol system may


Divide the data from the sender into multiple segments
and deliver a few bytes at a time to the receiver
Combine data from multiple transmissions into a single
large chunk and deliver it to the receiver all at once
d Consequence: receiving application cannot know exactly
which pieces were sent

Computer Networks and Internets -- Module 2 8 Spring, 2014

Copyright 2014. All rights reserved.


Example #1

d Assume a stream connection between two applications


d Sender
Places 1000-byte message in buffer buf
Makes a single request to send all 1000 bytes
d Receiver
Allocates a buffer b with 1000 bytes
Reads 1000 bytes from the stream into buffer b
d The OS may return between 1 and 1000 bytes
d Application must make repeated calls until all 1000 bytes
have been acquired

Computer Networks and Internets -- Module 2 9 Spring, 2014

Copyright 2014. All rights reserved.


Example #2

d Assume a stream connection between two applications


d Sender transmits a sequence of four messages that are each
100 bytes long
d Receiver allocates a large buffer b of 1000 bytes and
requests that up to 1000 bytes from stream be read into
buffer b
d The OS may choose to return all four messages (400 bytes)
with a single read request
d Receiving application must be able to separate received data
into four separate messages

Computer Networks and Internets -- Module 2 10 Spring, 2014

Copyright 2014. All rights reserved.


Programming Hints

Computer Networks and Internets -- Module 2 11 Spring, 2014

Copyright 2014. All rights reserved.


Programming Hints

d When using the stream paradigm

Computer Networks and Internets -- Module 2 11 Spring, 2014

Copyright 2014. All rights reserved.


Programming Hints

d When using the stream paradigm


Devise a way that a receiver knows where a message
ends
Read from a socket until the entire message has been
acquired

Computer Networks and Internets -- Module 2 11 Spring, 2014

Copyright 2014. All rights reserved.


Programming Hints

d When using the stream paradigm


Devise a way that a receiver knows where a message
ends
Read from a socket until the entire message has been
acquired
d When considering using the message paradigm

Computer Networks and Internets -- Module 2 11 Spring, 2014

Copyright 2014. All rights reserved.


Programming Hints

d When using the stream paradigm


Devise a way that a receiver knows where a message
ends
Read from a socket until the entire message has been
acquired
d When considering using the message paradigm
Dont (at least not yet)

Computer Networks and Internets -- Module 2 11 Spring, 2014

Copyright 2014. All rights reserved.


Identifying Individual Messages In A Stream

d Possibilities
Send exactly one message followed by end of file (EOF)
Send multiple messages with an integer length before
each message
Send multiple messages with a termination character (or
sequence) following each message
d Notes
Any technique can be used as long as both sides agree
If sending a multi-byte length value or multi-byte
termination sequence, remember that the application may
need multiple calls receive all bytes

Computer Networks and Internets -- Module 2 12 Spring, 2014

Copyright 2014. All rights reserved.


Questions

Computer Networks and Internets -- Module 2 13 Spring, 2014

Copyright 2014. All rights reserved.


Questions

d In a realistic setting
Is division of a message likely to occur?
Is aggregation of multiple messages likely to occur?

Computer Networks and Internets -- Module 2 13 Spring, 2014

Copyright 2014. All rights reserved.


Questions

d In a realistic setting
Is division of a message likely to occur?
Is aggregation of multiple messages likely to occur?
d Answers

Computer Networks and Internets -- Module 2 13 Spring, 2014

Copyright 2014. All rights reserved.


Questions

d In a realistic setting
Is division of a message likely to occur?
Is aggregation of multiple messages likely to occur?
d Answers yes! (depending on the size of the messages)
Messages larger than 1400 characters are usually divided
into multiple packets for transmission, and may be
delivered together or separately
The stream service is designed to aggregate small
messages before making them available to a receiving
application

Computer Networks and Internets -- Module 2 13 Spring, 2014

Copyright 2014. All rights reserved.


Buffering In The Stream Paradigm

d Aggregation, which makes bulk transfer more efficient, can


occur on the sending or receiving side
d The stream paradigm includes a push operation that an
application can use to force transmission and delivery
d Unix convention: automatically push for each individual
write call
d Programming hints
To ensure a small message is transmitted and delivered
without delay, use a separate write
Even with push, network delays mean applications must
be written to tolerate aggregation
d More details later in the course
Computer Networks and Internets -- Module 2 14 Spring, 2014

Copyright 2014. All rights reserved.


Client-Server Model
And Alternatives
Client-Server Model Of Interaction

d Used by applications to establish communication


d One application acts as a server
Starts execution first
Awaits contact
d The other application becomes a client
Starts after server is running
Initiates contact

Computer Networks and Internets -- Module 2 16 Spring, 2014

Copyright 2014. All rights reserved.


Client-Server Model Of Interaction

d Used by applications to establish communication


d One application acts as a server
Starts execution first
Awaits contact
d The other application becomes a client
Starts after server is running
Initiates contact
d Important concept: once communication has been
established, data (e.g., requests and responses) can flow in
either direction between a client and server

Computer Networks and Internets -- Module 2 16 Spring, 2014

Copyright 2014. All rights reserved.


Characteristics Of A Client

d Arbitrary application program that becomes a client


temporarily
d Usually invoked directly by a user, and usually executes
only for one session
d Actively initiates contact with a server, exchanges messages,
and then terminates contact
d Can access multiple services as needed, but usually contacts
one remote server at a time
d Runs locally on a users personal computer or smart phone
d Does not require especially powerful computer hardware

Computer Networks and Internets -- Module 2 17 Spring, 2014

Copyright 2014. All rights reserved.


Characteristics Of A Server

d Special-purpose, privileged program dedicated to providing


a service
d Usually designed to handle multiple remote clients at the
same time
d Invoked automatically when a system boots, and continues
to execute through many client sessions
d Waits passively for contact from arbitrary remote clients and
then exchanges messages
d Requires powerful hardware and a sophisticated operating
system
d Runs on a large, powerful computer

Computer Networks and Internets -- Module 2 18 Spring, 2014

Copyright 2014. All rights reserved.


Characteristics Of A Server

d Special-purpose, privileged program dedicated to providing


a service
d Usually designed to handle multiple remote clients at the
same time complicates the design
d Invoked automatically when a system boots, and continues
to execute through many client sessions
d Waits passively for contact from arbitrary remote clients and
then exchanges messages
d Requires powerful hardware and a sophisticated operating
system
d Runs on a large, powerful computer

Computer Networks and Internets -- Module 2 18 Spring, 2014

Copyright 2014. All rights reserved.


Server Programs And Server-Class Computers

d Confusion exists between scientific and marketing


terminology
d Scientific: a client and a server are each programs
d Marketing: a server is a powerful computer

client runs server runs in


in a standard a server-class
computer computer

connection Internet

Computer Networks and Internets -- Module 2 19 Spring, 2014

Copyright 2014. All rights reserved.


Summary Of Client-Server Interaction

2222222222222222222222222222222222222222222222222222222222222222222222
1 Server Application 1 Client Application 1
21 222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Starts first 1 Starts second 1
21 222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Does not need to know which client 1 Must know which server to 1
1 1 1
will contact it
12222222222222222222222222222222222222222222222222222222222222222222222
1 contact 1
1 1 1
1 Waits passively and arbitrarily long 1 Initiates a contact whenever 1
1 for contact from a client 1 communication is needed 1
21 2222222222222222222222222222222222222222222222222222222222222222222221 1
1 Communicates with a client by 1 Communicates with a server by 1
1 sending and receiving data 1 sending and receiving data 1
12222222222222222222222222222222222222222222222222222222222222222222222 1 1
1 1 1
1 Stays running after servicing one 1 May terminate after interacting 1
1 client, and waits for another 1 with a server 1
12222222222222222222222222222222222222222222222222222222222222222222222 1 1

Computer Networks and Internets -- Module 2 20 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Steps Taken By Client And Server

Client Side Server Side

d Agree a priori on a d Agree a priori on a


port number, N port number, N

d Start after server is d Start before any of


already running the clients
Internet
d Obtain server name d Register port N with
from user the local system

d Use DNS to translate d Wait for contact


name to IP address from a client

d Contact server using IP d Interact with client


address and port N until client finishes

d Interact with server and d Wait for contact from


then exit the next client...

Computer Networks and Internets -- Module 2 21 Spring, 2014

Copyright 2014. All rights reserved.


Alternatives To Client-Server

Computer Networks and Internets -- Module 2 22 Spring, 2014

Copyright 2014. All rights reserved.


Alternatives To Client-Server

d Broadcast
Sender broadcasts message and all stations receive it
Does not scale well (becomes inefficient)
Difficult to restrict data access

Computer Networks and Internets -- Module 2 22 Spring, 2014

Copyright 2014. All rights reserved.


Alternatives To Client-Server

d Broadcast
Sender broadcasts message and all stations receive it
Does not scale well (becomes inefficient)
Difficult to restrict data access
d Rendezvous point
Intermediary connects communicating applications
In essence, there are two clients and a server
Rendezvous point becomes a bottleneck

Computer Networks and Internets -- Module 2 22 Spring, 2014

Copyright 2014. All rights reserved.


Alternatives To Client-Server
(continued)

d Peer-To-Peer Interaction
Designed to avoid central server bottleneck
Data divided among N computers
Each computer acts as a server for its data and as a
client for other data
Given computer receives 1 / N of the traffic

1/ N of all traffic
Internet

Computer Networks and Internets -- Module 2 23 Spring, 2014

Copyright 2014. All rights reserved.


Network Programming With
A Simplified API
Network Programming

d General term that refers to the creation of client and server


applications that communicate over a network
d Programmer uses an Application Program Interface (API)
Set of functions
Include control as well as data transfer functions (e.g.,
establish and terminate communication)
d Defined by the operating system; not part of the Internet
standards
d Socket API has become a de facto standard

Computer Networks and Internets -- Module 2 25 Spring, 2014

Copyright 2014. All rights reserved.


A Simplified API

d Will help you get started


d General idea
Server is identified by pair (computer, application)
Server starts first and waits for contact
Client specifies servers location
Once a connection is established, client and server can
exchange data
d Only seven functions in the simplified API

Computer Networks and Internets -- Module 2 26 Spring, 2014

Copyright 2014. All rights reserved.


Our Simplified API
2222222222222222222222222222222222222222222222222222222222222222222222
1 Operation 1 Meaning 1
2222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1
1 await_contact 1 Used by a server to wait for contact from a 1
1 1 client 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 make_contact 1 Used by a client to contact a server 1
2222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1
1 appname_to_appnum 1 Used to translate a program name to an 1
1 1 equivalent internal binary value 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 1 Used to translate a computer name to an 1
1 cname_to_comp 1 equivalent internal binary value 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 send 1 Used by either client or server to send data 1
2222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1
recv
12222222222222222222222222222222222222222222222222222222222222222222222
1 Used by either client or server to receive data 1
1 1 1
1 1 Used by both client and server after they have 1
1 send_eof 1 1
finished
112222222222222222222222222222222222222222222222222222222222222222222222
11 sending data 11

Computer Networks and Internets -- Module 2 27 Spring, 2014

Copyright 2014. All rights reserved.


Client And Server Using The API

d Sequence of calls for a trivial exchange in which a client


sends a single request and the server responds

Server Client

await_contact make_contact

recv send

send recv

send_eof send_eof

d Both sides must call send_eof because communication is


bidirectional

Computer Networks and Internets -- Module 2 28 Spring, 2014

Copyright 2014. All rights reserved.


Data Types For Our Simplified API
22222222222222222222222222222222222222222222222222222222222
1 Type Name 1 Meaning 1
22222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1
1 appnum 1 A binary value used to identify an application 1
22222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1
computer 1 A binary value used to identify a computer
122222222222222222222222222222222222222222222222222222222222 1
1 1 1
1 connection 1 A value used to identify the connection 1
1 1 1
11 between a client and server
1122222222222222222222222222222222222222222222222222222222222 11

Computer Networks and Internets -- Module 2 29 Spring, 2014

Copyright 2014. All rights reserved.


An Extra Function For Convenience

d Simplified API includes an extra function, recvln


d Not required, but convenient
d Similar to recv
Receives data from a connection
Places data in a buffer
d Difference
Reads exactly the amount requested
Technique: repeatedly call recv until specified length has
been acquired

Computer Networks and Internets -- Module 2 30 Spring, 2014

Copyright 2014. All rights reserved.


Argument Types For Our API
2222222222222222222222222222222222222222222222222222222222222222222222222
1 Function 1 Type 1 Type of 1 Type of 1 Type of 1
1 1 1 1 1 1
Name 1 Returned 1
12222222222222222222222222222222222222222222222222222222222222222222222222 arg 1 1 arg 2 1 args 34 1
1 1 1 1 1 1
await_contact
12222222222222222222222222222222222222222222222222222222222222222222222222
1 connection 1 appnum 1 1 1
1 1 1 1 1 1
1 make_contact 1 connection 1 computer 1 appnum 1 1
2
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 appname_to_appnum 1 appnum 1 char * 1 1 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 1 1 1 1 1
cname_to_comp
12222222222222222222222222222222222222222222222222222222222222222222222222
1 computer 1 char * 1 1 1
1 1 1 1 1 1
1 send 1 int 1 connection 1 char * 1 int 1
2
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 recv 1 int 1 connection 1 char * 1 int 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 1 1 1 1 1
recvln int
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1 connection 1 char * 1 int 1
1 1 1 1 1 1
1 send_eof 1 int 1 connection 1 1 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1

d You will learn more in the PSOs

Computer Networks and Internets -- Module 2 31 Spring, 2014

Copyright 2014. All rights reserved.


The Socket API
Sockets

d Originally part of BSD Unix


d Now standard in the industry
d AT&T defined an alternative named TLI (Transport Layer
Interface), but TLI is now extinct
d Almost every OS includes an implementation
d MS Windows chose to make minor changes (annoying)

Computer Networks and Internets -- Module 2 33 Spring, 2014

Copyright 2014. All rights reserved.


Socket Characteristics

d Socket can be used for


Connectionless communication (UDP message)
Connection-oriented communication (TCP stream)
d Many functions in the API
d Approach
Create a socket
Make many function calls to specify type of
communication, remote computers address, port number
to be used, etc.
Use socket to send / receive data
Close the socket (terminate use)
Computer Networks and Internets -- Module 2 34 Spring, 2014

Copyright 2014. All rights reserved.


Example Socket Calls For Stream Communication

CLIENT SIDE SERVER SIDE

socket

bind

socket listen

connect accept

send recv

recv send

close close

Computer Networks and Internets -- Module 2 35 Spring, 2014

Copyright 2014. All rights reserved.


Application Layer Protocols
Terminology

d Availability of an application protocol


Closed vendor defines a protocol for their products
Open standardized and available for all vendors
d Basic protocol types
Data representation message and data formats
Data transfer procedures for exchanging messages
and handling unexpected / error conditions
d Notes
Application may define separate protocol for each type
Term Transfer in a protocol title indicates the latter

Computer Networks and Internets -- Module 2 37 Spring, 2014

Copyright 2014. All rights reserved.


Defining An Application Layer Protocol

d Programmer specifies representation


Format of each message and each data item
Meaning of each item in a message
d Programmer specifies transfer
Which side sends first
Which side closes the connection first
What to do if one side crashes unexpectedly

Computer Networks and Internets -- Module 2 38 Spring, 2014

Copyright 2014. All rights reserved.


State In An Application Protocol

d Big decision: should state information be kept?


d Stateful protocol assumes previous requests have been
honored
d Stateless protocol assumes each request is independent
d Example of stateful interaction
Request 1 specifies read from file X
Request 2 specifies read next 128 bytes
d Example of stateless interaction
Request 1 specifies read bytes 0-127 from file X
Request 2 specifies read bytes 128-255 from file X

Computer Networks and Internets -- Module 2 39 Spring, 2014

Copyright 2014. All rights reserved.


Examples Of Standard
Application Protocols
Application Protocol Examples

d Web browsing
d Email
d File transfer
d Remote login and remote desktop
d Domain Name System (name lookup)

Computer Networks and Internets -- Module 2 41 Spring, 2014

Copyright 2014. All rights reserved.


Application Protocol Examples

d Web browsing
d Email
d File transfer
d Remote login and remote desktop
d Domain Name System (name lookup)

Computer Networks and Internets -- Module 2 41 Spring, 2014

Copyright 2014. All rights reserved.


Application-Layer Protocols For The Web

2222222222222222222222222222222222222222222222222222222222222222222222
1 Standard 1 Purpose 1
21 222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 HyperText Markup 1 A representation standard used to specify the 1
1 Language (HTML) 1 contents and layout of a web page 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 Uniform Resource 1 A representation standard that specifies the 1
12222222222222222222222222222222222222222222222222222222222222222222222
Locator (URL) 1 format and meaning of a web page identifier 1
1 1 1
1 HyperText Transfer 1 A transfer protocol that specifies how a browser 1
1 Protocol (HTTP) 1 interacts with a web server to transfer data 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1

d Reminder: keyword Transfer in the name of a protocol


means the protocol specifies message exchange

Computer Networks and Internets -- Module 2 42 Spring, 2014

Copyright 2014. All rights reserved.


HyperText Markup Language (HTML)

d Representation standard for multimedia documents


d Specifies document is entirely in printable text
d Uses declarative rather than procedural approach
d Document includes metadata that can link to arbitrary item
d Document contains markup guidelines rather than precise,
detailed formatting or typesetting instructions
Page can be displayed on arbitrary device
Appearance depends on device
d Embedded tags control display
Form is <tag_name> and </tag_name>

Computer Networks and Internets -- Module 2 43 Spring, 2014

Copyright 2014. All rights reserved.


Uniform Resource Locator (URL)

d Representation standard
d A text string with punctuation characters separating the
string into (optional) subfields
d General form is:

protocol:// computer_name : port / document_name ? parameters

d Example where protocol, port, and parameters are omitted:

www . cs . purdue . edu / people / comer

Computer Networks and Internets -- Module 2 44 Spring, 2014

Copyright 2014. All rights reserved.


HyperText Transfer Protocol (HTTP)

d Transfer protocol used with the Web


d Specifies format and meaning of messages
d Each message represented as text
d Transfers arbitrary binary data
d Can download or upload data
d Incorporates caching for efficiency
d Browser sends request to server

Computer Networks and Internets -- Module 2 45 Spring, 2014

Copyright 2014. All rights reserved.


Four Major HTTP Request Types

2 22222222222222222222222222222222222222222222222222222222222222222222222
1 Request 1 Description 1
2
1 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 Requests a document; server responds by sending status 1
1 GET 1 information followed by a copy of the document 1
12 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 HEAD 1 Requests status information; server responds by sending 1
12 22222222222222222222222222222222222222222222222222222222222222222222222
1 status information, but does not send a copy of the document 1
1 1 1
1 1 Sends data to a server; the server appends the data to a 1
1 POST 1 specified item (e.g., a message is appended to a list) 1
12 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 Sends data to a server; the server uses the data to completely 1
1 PUT 1 1
replace the specified item (i.e., overwrites
112 22222222222222222222222222222222222222222222222222222222222222222222222
11 the previous data) 11

d GET request has the form:


GET /item version CRLF

d Version is HTTP/1.0 or HTTP/1.1

Computer Networks and Internets -- Module 2 46 Spring, 2014

Copyright 2014. All rights reserved.


HTTP Response

d Response begins with a header in text, optionally followed


by an item (which can be binary)
d Header uses keyword: information form like email header
d Header ends with a blank line

Computer Networks and Internets -- Module 2 47 Spring, 2014

Copyright 2014. All rights reserved.


HTTP Header Format

d General form

HTTP/1.0 status_code status_string CRLF


Server: server_identification CRLF
Last-Modified: date_document_was_changed CRLF
Content-Length: datasize CRLF
Content-Type: document_type CRLF
CRLF
... item begins here and contains datasize bytes ...

Computer Networks and Internets -- Module 2 48 Spring, 2014

Copyright 2014. All rights reserved.


Telnet Example (Apache Web Server)

$ telnet www.cs.purdue.edu 80
Trying 128.10.19.20...
Connected to lucan.cs.purdue.edu.
Escape character is ^].
GET /homes/comer/ HTTP/1.0
HTTP/1.1 200 OK
Date: Sun, 10 Nov 2013 11:38:27 GMT
Server: Apache/2.2.11 (Unix) mod_ssl/2.2.11 OpenSSL/0.9.8r
Last-Modified: Mon, 17 Oct 2011 22:21:41 GMT
ETag: "bafb0-a50-4af8607f7c740"
Accept-Ranges: bytes
Content-Length: 2640
Connection: close
Content-Type: text/html
...data from the web page follows here
Computer Networks and Internets -- Module 2 49 Spring, 2014

Copyright 2014. All rights reserved.


Application Protocol Examples

d Web browsing
d Email
d File transfer
d Remote login and remote desktop
d Domain Name System (name lookup)

Computer Networks and Internets -- Module 2 50 Spring, 2014

Copyright 2014. All rights reserved.


Original End-To-End Email Paradigm

direct transfer Internet

d Each computer runs


Email server to accept incoming email
Email client to send outgoing email
d Incoming mail deposited in users mailbox
d Outgoing mail placed in queue
d User interface to read or compose messages separate from
transfer applications

Computer Networks and Internets -- Module 2 51 Spring, 2014

Copyright 2014. All rights reserved.


Current Email Paradigm

email access server server email access


protocol used at ISP email transfer at ISP protocol used
protocol used Internet

d Users mailbox located on separate computer (usually at an


ISP)
d Mail transfer application deposits message in mailbox
d User interface application accesses remote mailbox
A web browser may be used as an access mechanism
Special-purpose applications also exist

Computer Networks and Internets -- Module 2 52 Spring, 2014

Copyright 2014. All rights reserved.


Simple Mail Transfer Protocol (SMTP)

d Standard for email transfer


d Follows a stream paradigm
d Uses textual control messages
d Only transfers text messages
d Terminates message with <CR> <LF> . <CR> <LF>
d Allows a sender to specify recipients names and checks
each name
d Sends only one copy of a message to a computer, even if
destined to multiple recipients on the computer

Computer Networks and Internets -- Module 2 53 Spring, 2014

Copyright 2014. All rights reserved.


Example SMTP Session

S: 220 somewhere.com Simple Mail Transfer Service Ready


C: HELO example.edu
S: 250 OK
C: MAIL FROM:<[email protected]>
S: 250 OK
C: RCPT TO:<[email protected]>
S: 550 No such user here
C: RCPT TO:<[email protected]>
S: 250 OK
C: DATA
S: 354 Start mail input; end with <CR><LF>.<CR><LF>
C: ...sends body of mail message, which can contain
C: ...arbitrarily many lines of text
C: <CR><LF>.<CR><LF>
S: 250 OK
C: QUIT
S: 221 somewhere.com closing transmission channel

Computer Networks and Internets -- Module 2 54 Spring, 2014

Copyright 2014. All rights reserved.


Mail Access Protocols

d Two standard protocols


Post Office Protocol version 3 (POP3)
Internet Mail Access Protocol (IMAP)
d Functionality
Provide access to a users mailbox
Permit user to view headers, download, delete, or send
individual messages
Client runs on users personal computer
Server runs on a computer that stores users mailbox

Computer Networks and Internets -- Module 2 55 Spring, 2014

Copyright 2014. All rights reserved.


RFC2822 Mail Message Format

d Email representation standard


d Name derived from the Internet standard in which it is
defined
d Specifies
Email message consists of text file
Blank line separates header from body
Header lines have the form:

Keyword: information

Computer Networks and Internets -- Module 2 56 Spring, 2014

Copyright 2014. All rights reserved.


RFC2822 Mail Message Format
(continued)

d Some keywords have defined meanings:


From:
To:
Subject:
Cc:
d Keywords starting with uppercase X have no effect

Computer Networks and Internets -- Module 2 57 Spring, 2014

Copyright 2014. All rights reserved.


RFC2822 Mail Message Format
(continued)

d Some keywords have defined meanings:


From:
To:
Subject:
Cc:
d Keywords starting with uppercase X have no effect
d Examples:
X-Best-networking-Course: CS422 at Purdue
X-Spam-Check-Results: bulk spam 90% likely
X-Worst-TV-Shows: any reality show

Computer Networks and Internets -- Module 2 57 Spring, 2014

Copyright 2014. All rights reserved.


Multimedia Email

Computer Networks and Internets -- Module 2 58 Spring, 2014

Copyright 2014. All rights reserved.


Multimedia Email

d Observe
Email was standardized when computers only had
character-oriented (textual) interfaces
SMTP is limited to transferring plain text messages
Users want to email photos, spreadsheets, messages with
special fonts and color

Computer Networks and Internets -- Module 2 58 Spring, 2014

Copyright 2014. All rights reserved.


Multimedia Email

d Observe
Email was standardized when computers only had
character-oriented (textual) interfaces
SMTP is limited to transferring plain text messages
Users want to email photos, spreadsheets, messages with
special fonts and color
d Question: can SMTP be used to transfer such email?

Computer Networks and Internets -- Module 2 58 Spring, 2014

Copyright 2014. All rights reserved.


Multimedia Email

d Observe
Email was standardized when computers only had
character-oriented (textual) interfaces
SMTP is limited to transferring plain text messages
Users want to email photos, spreadsheets, messages with
special fonts and color
d Question: can SMTP be used to transfer such email?
d Answer: it is possible because one can encode arbitrary
binary items in plain text (think of a hex dump)

Computer Networks and Internets -- Module 2 58 Spring, 2014

Copyright 2014. All rights reserved.


Sending Non-Text Email

d Standard is MIME (Multimedia Internet Mail Extensions)


d Backward compatible with RFC2822 mail and SMTP
d Sender
Encodes arbitrary binary item in plain text
Adds lines to email header to specify MIME
Places additional headers before each item in the
message (including plain text items)
d Sender can specify content type and encoding
d Standard includes Base64 encoding

Computer Networks and Internets -- Module 2 59 Spring, 2014

Copyright 2014. All rights reserved.


Examples Of Mime Headers

d MIME header lines added to other RFC2822 headers

MIME-Version: 1.0
Content-Type: Multipart/Mixed; Boundary=xyz123

d Each part of the message has a MIME header that starts


with the separator and specifies content type and encoding
d Example

--xyz123
Content-Type: image/jpeg
blank line ends header

Computer Networks and Internets -- Module 2 60 Spring, 2014

Copyright 2014. All rights reserved.


Application Protocol Examples

d Web browsing
d Email
d File transfer
d Remote login and remote desktop
d Domain Name System (name lookup)

Computer Networks and Internets -- Module 2 61 Spring, 2014

Copyright 2014. All rights reserved.


File Transfer

d Standard is the File Transfer Protocol (FTP)


d Once accounted for the most packets on the Internet
d Interesting communication paradigm
Client forms a control connection to send requests
Server forms data connection for each file transferred
Server closes data connection after transfer complete
d Notes
Using a separate connection allows arbitrary data
transfer
For data connections, the server becomes a client and the
client becomes a server (important for NAT)
Computer Networks and Internets -- Module 2 62 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of FTP Communication
client server

client forms a control connection

client sends directory request over the control connection

server forms a data connection

server sends directory listing over the data connection

server closes the data connection

client sends download request over the control connection

server forms a data connection

server sends a copy of the file over the data connection

server closes the data connection

client sends a QUIT command over control connection

client closes the control connection

Computer Networks and Internets -- Module 2 63 Spring, 2014

Copyright 2014. All rights reserved.


Application Protocol Examples

d Web browsing
d Email
d File transfer
d Remote login and remote desktop
d Domain Name System (name lookup)

Computer Networks and Internets -- Module 2 64 Spring, 2014

Copyright 2014. All rights reserved.


Remote Login And Remote Desktop

d Remote login
Intended for systems with command-line interface
Internet standard is TELNET
Secure shell (ssh) encrypts transfers
To appreciate the complexity of application protocols
look at the TELNET standard

Computer Networks and Internets -- Module 2 65 Spring, 2014

Copyright 2014. All rights reserved.


Remote Login And Remote Desktop

d Remote login
Intended for systems with command-line interface
Internet standard is TELNET
Secure shell (ssh) encrypts transfers
To appreciate the complexity of application protocols
look at the TELNET standard
d Remote desktop
Intended for systems that have a Graphical User
Interface (GUI)
No Internet standards
Move to thin client has revived interest
Computer Networks and Internets -- Module 2 65 Spring, 2014

Copyright 2014. All rights reserved.


Application Protocol Examples

d Web browsing
d Email
d File transfer
d Remote login and remote desktop
d Domain Name System (name lookup)

Computer Networks and Internets -- Module 2 66 Spring, 2014

Copyright 2014. All rights reserved.


Domain Name System (DNS)

d Important piece of Internet infrastructure


d Runs at the application layer
d Translates human-readable names into the binary addresses
used by the Internet Protocol
d Example
Computer www . cs . purdue . edu
Has the IP address 128.10.19.20

Computer Networks and Internets -- Module 2 67 Spring, 2014

Copyright 2014. All rights reserved.


DNS Terminology

d Names are hierarchical


d Each name divided into segments by period character, which
is read dot
d Most significant segment is on the right
d Rightmost segment known as a top-level domain (TLD)
d Client program known as a resolver
Used by web browser, email, etc

Computer Networks and Internets -- Module 2 68 Spring, 2014

Copyright 2014. All rights reserved.


Top-Level Domains
2222222222222222222222222222222222222222222222222222
1 Domain Name 1 Assigned To 1
2222222222222222222222222222222222222222222222222222
1 1 1
1 aero 1 Air transport industry 1
2222222222222222222222222222222222222222222222222222
1 1 1
1 arpa 1 Infrastructure domain 1
2222222222222222222222222222222222222222222222222222
1 1 1
12222222222222222222222222222222222222222222222222222
asia 1 For or about Asia 1
1 1 1
12222222222222222222222222222222222222222222222222222
biz 1 Businesses 1
1 1 1
12222222222222222222222222222222222222222222222222222
com 1 Commercial organizations 1
1 1 1
coop
12222222222222222222222222222222222222222222222222222 1 Cooperative associations 1
1 1 1
edu
12222222222222222222222222222222222222222222222222222 1 Educational institutions 1
1 1 1
gov
12222222222222222222222222222222222222222222222222222 1 United States government 1
1 info 1 Information 1
12222222222222222222222222222222222222222222222222222 1 1
1 int 1 International treaty organizations 1
2222222222222222222222222222222222222222222222222222
1 1 1
1 jobs 1 Human resource managers 1
2222222222222222222222222222222222222222222222222222
1 1 1
1 mil 1 United States military 1
2222222222222222222222222222222222222222222222222222
1 1 1
112222222222222222222222222222222222222222222222222222
mobi 11 Mobile content providers 11

Computer Networks and Internets -- Module 2 69 Spring, 2014

Copyright 2014. All rights reserved.


Top-Level Domains
(continued)
22222222222222222222222222222222222222222222222222
1 Domain Name 1 Assigned To 1
21 2222222222222222222222222222222222222222222222222
1 1
1 museum 1 Museums 1
21 2222222222222222222222222222222222222222222222222
1 1
1 name 1 Individuals 1
21 2222222222222222222222222222222222222222222222222
1 1
122222222222222222222222222222222222222222222222222
net 1 Major network support centers 1
1 1 1
122222222222222222222222222222222222222222222222222
org 1 Non-commercial organizations 1
1 1 1
122222222222222222222222222222222222222222222222222
pro 1 Credentialed professionals 1
1 1 1
travel 1 Travel and tourism
122222222222222222222222222222222222222222222222222 1
1 1 1
xxx Adult
122222222222222222222222222222222222222222222222222
1 entertainment (porn) 1
1 1 1
country code 1 A sovereign nation
122222222222222222222222222222222222222222222222222 1

d In 2014, ICANN decided to allow many new TLDs

Computer Networks and Internets -- Module 2 70 Spring, 2014

Copyright 2014. All rights reserved.


Domain Registration

d Organization
Applies under a specific top-level domain
Can choose an internal hierarchy
Assigns each computer a name
d Geographic registration is possible

cnri . reston . va . us

d Some countries impose conventions


Universities in Great Britain register under

ac . uk

Computer Networks and Internets -- Module 2 71 Spring, 2014

Copyright 2014. All rights reserved.


Domains With Most Hosts (July 2013)
2 2222222222222222222222222222222222222222222
1 1
21 Domain Hosts Explanation
2222222222222222222222222222222222222222222 1
1 net 366592151 Networks 1
1 com 163634309 Commercial 1
1 jp 74461142 Japan 1
1 1
1 de 34904481 Germany 1
1 br 33691951 Brazil 1
1 it 26136473 Italy 1
1 cn 19976554 China 1
1 1
1 mx 17658991 Mexico 1
1 fr 17437386 France 1
1 au 16900586 Australia 1
1 ru 15122103 Russian Federation 1
1 1
1 nl 14011944 Netherlands 1
1 pl 14011944 Poland 1
1 ar 13335042 Argentina 1
1 1
1 edu 12251571 Educational 1
1 ca 9004861 Canada 1
1 uk 8116718 United Kingdom 1
1 in 7429638 India 1
1 1
1 tr 7146979 Turkey 1
tw 6429021 Taiwan
12 22222222222222222222222222222222222222222221

d See domain survey at www . isc . org for details


Computer Networks and Internets -- Module 2 72 Spring, 2014

Copyright 2014. All rights reserved.


Host Names and Services Offered

d Many organizations choose a host name to match the service


a computer offers

mail . foobar . com


ftp . foobar . com
www . foobar . com

d Although convenient for humans, a host name does not


specify which servers are running (e,g., a computer named
mail could run a web server)

Computer Networks and Internets -- Module 2 73 Spring, 2014

Copyright 2014. All rights reserved.


DNS Servers

d Names divided into a hierarchy of servers


d Multiple groupings possible
d Hypothetical example

com root server com root server

server for server for


server for foobar foobar . com foobar
candy . foobar . com foobar . com

candy soap candy soap

peanut almond walnut peanut almond walnut


server for
walnut . candy . foobar . com

(a) (b)

Computer Networks and Internets -- Module 2 74 Spring, 2014

Copyright 2014. All rights reserved.


Name Resolution And Caching

d Resolver
Acts as a client
Is configured with address of local DNS server
Contacts local server first
Socket library resolver is gethostbyname
d Caching
Follows locality of reference principle
Each DNS server caches results
Cached item never kept when stale

Computer Networks and Internets -- Module 2 75 Spring, 2014

Copyright 2014. All rights reserved.


DNS Server Algorithm Part 1
2222222222222222222222222222222222222222222222222222222222
1 11
1 Given:
1
1 A request message from a DNS name resolver 1
1 1
1 Provide:
1
1 A response message that contains the address 1
1 1
1 Method: 1
1 1
1 Extract the name, N, from the request
1
1 if ( server is an authority for N ) { 1
1 1
1 Form and send an authoritative response
1
1 to the requester;
1
1 else if ( answer for N is in the cache ) { 1
1 1
1 Form and send a nonauthoritative response
1
1 to the requester; 1
11 1
Computer Networks and Internets -- Module 2 76 Spring, 2014

Copyright 2014. All rights reserved.


DNS Server Algorithm Part 2
1 1
1 else { /* Need to look up an answer */ 1
1 1
1 if ( authority server for N is known ) { 1
1 Send request to authority server; 1
1 } else { 1
1 1
1 Send request to root server; 1
1 } 1
1 1
1 Receive response and place in cache; 1
1 Form and send a response to the requester; 1
1 } 1
1 1
122222222222222222222222222222222222222222222222222222222221

Computer Networks and Internets -- Module 2 77 Spring, 2014

Copyright 2014. All rights reserved.


Summary

d Applications provide all Internet services


d Internet offers connection-oriented stream communication or
connectionless message communication
d Most applications follow client-server approach
Server starts first and awaits client
Client contacts server
d Socket API is a de facto standard
d Application-layer protocol can define
Data and message formats (representation)
Rules for message exchange (transfer)

Computer Networks and Internets -- Module 2 78 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d Applications reviewed include


Web (URL, HTML, HTTP)
Email (SMTP, RFC2822, MIME)
File transfer (FTP)
Remote login and remote desktop (TELNET)
Domain Name System (DNS)

Computer Networks and Internets -- Module 2 79 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
MODULE III

Foundations Of Data Communications


And The Physical Layer

Computer Networks and Internets -- Module 3 1 Spring, 2014


Copyright 2014. All rights reserved.
Topics

d Motivation and model


d Information sources and signals
d Transmission media
d Reliability and channel coding
d Transmission modes
d Modulation and demodulation
d Multiplexing and demultiplexing (channelization)

Computer Networks and Internets -- Module 3 2 Spring, 2014

Copyright 2014. All rights reserved.


Motivation And Model
What Is Data Communications?

d Broad field of study


d Usually associated with the Physical Layer
d Touches on
Physics
Mathematics
Engineering
d Includes
Transmission of signals
Encoding data
Modulation and multiplexing
Computer Networks and Internets -- Module 3 4 Spring, 2014

Copyright 2014. All rights reserved.


Motivation

d Find ways to transmit analog and digital information


Using natural phenomena (e.g., electromagnetic
radiation)
Allow multiple senders to share a transmission medium
d Data communications provides
A conceptual framework
Mathematical basis

Computer Networks and Internets -- Module 3 5 Spring, 2014

Copyright 2014. All rights reserved.


Key Concept

Although we tend to think of analog and digital communication


separately, ultimately, all communication uses the same
physical phenomena, usually electromagnetic energy.

d Differences lie in the way the physical phenomena are used


Analog: use all values in a continuous range
Digital: restrict use to a fixed set of values, usually two
d Data communications covers both analog and digital

Computer Networks and Internets -- Module 3 6 Spring, 2014

Copyright 2014. All rights reserved.


Conceptual Framework For Data Communications
Information Source 1 Information Source N

Source Encoder Source Encoder


. . .
Encryptor (Scrambler) Encryptor (Scrambler)

Channel Encoder Channel Encoder


Multiplexor

Modulator

Physical Channel
(noise & interference)

Demodulator

Demultiplexor
Channel Decoder Channel Decoder

Decryptor (Unscrambler) Decryptor (Unscrambler)


. . .
Source Decoder Source Decoder

Destination 1 Destination N

Computer Networks and Internets -- Module 3 7 Spring, 2014

Copyright 2014. All rights reserved.


Information Sources
And Signals
Sources Of Information

d An input signal can arise from


Transducer such as a microphone
Receiver such as an Ethernet interface
d We use the term signal processing to describe the
recognition and transformation of signals

Computer Networks and Internets -- Module 3 9 Spring, 2014

Copyright 2014. All rights reserved.


Sine Waves

Computer Networks and Internets -- Module 3 10 Spring, 2014

Copyright 2014. All rights reserved.


Sine Waves

d Fundamental because sine waves characterize many natural


phenomena
d Examples
Audible tones
Radio waves
Light energy

Computer Networks and Internets -- Module 3 10 Spring, 2014

Copyright 2014. All rights reserved.


Fourier Analysis

d Multiple sine waves can be added together


Result is known as a composite wave
Corresponds to combining multiple signals (e.g., playing
two musical tones at the same time)
d Mathematician named Fourier discovered how to decompose
an arbitrary composite wave into individual sine waves
d Fourier analysis provides the mathematical basis for signal
processing
d Bad news: according to Fourier, a digital wave decomposes
into an infinite set of sine waves

Computer Networks and Internets -- Module 3 11 Spring, 2014

Copyright 2014. All rights reserved.


Sine Wave Characteristics

d Three important characteristics are used in networks:


frequency, amplitude, and phase

1
1 sec
2 sec
0 t

-1

(a) Original sine wave: sin(2t)

Computer Networks and Internets -- Module 3 12 Spring, 2014

Copyright 2014. All rights reserved.


Sine Wave Characteristics

d Three important characteristics are used in networks:


frequency, amplitude, and phase

1 1 0.5 sec
1 sec
2 sec 2 sec
0 t 0 t

-1 -1

(a) Original sine wave: sin(2t) (b) Higher frequency: sin(22t)

Computer Networks and Internets -- Module 3 12 Spring, 2014

Copyright 2014. All rights reserved.


Sine Wave Characteristics

d Three important characteristics are used in networks:


frequency, amplitude, and phase

1 1 0.5 sec
1 sec
2 sec 2 sec
0 t 0 t

-1 -1

(a) Original sine wave: sin(2t) (b) Higher frequency: sin(22t)

1 sec 2 sec
0 t

-1

(c) Lower amplitude: 0.4 sin(2t)

Computer Networks and Internets -- Module 3 12 Spring, 2014

Copyright 2014. All rights reserved.


Sine Wave Characteristics

d Three important characteristics are used in networks:


frequency, amplitude, and phase

1 1 0.5 sec
1 sec
2 sec 2 sec
0 t 0 t

-1 -1

(a) Original sine wave: sin(2t) (b) Higher frequency: sin(22t)

1 1

1 sec 2 sec 1 sec 2 sec


0 t 0 t

-1 -1

(c) Lower amplitude: 0.4 sin(2t) (d) New phase: sin(2t+1.5)

Computer Networks and Internets -- Module 3 12 Spring, 2014

Copyright 2014. All rights reserved.


Definition Of Analog Bandwidth

d Decompose a signal into a set of sine waves and take the


difference between the highest and lowest frequency
d Easy to compute from a frequency domain plot
d Example signal with bandwidth of 4 Kilohertz (KHz):

amplitude

bandwidth
1

0
1 2 3 4 5 6

frequency (in KHz)

Computer Networks and Internets -- Module 3 13 Spring, 2014

Copyright 2014. All rights reserved.


Digital Signals And Signal Levels

d A digital signal level can represent multiple bits


d Example
amplitude

1 1 1 1
+5

0 0 0 0
0
time

8 bits sent

two levels with a


single bit per level

Computer Networks and Internets -- Module 3 14 Spring, 2014

Copyright 2014. All rights reserved.


Digital Signals And Signal Levels

d A digital signal level can represent multiple bits


d Example
amplitude amplitude

1 1 1 1 11 11
+5 +5

10 10
+2
0 0 0 0
0
time 01 01 time
-2

00 00
-5
8 bits sent 16 bits sent

two levels with a four levels with


single bit per level two bits per level

Computer Networks and Internets -- Module 3 14 Spring, 2014

Copyright 2014. All rights reserved.


Digital Signals And Signal Levels

d A digital signal level can represent multiple bits


d Example
amplitude amplitude

1 1 1 1 11 11
+5 +5

10 10
+2
0 0 0 0
0
time 01 01 time
-2

00 00
-5
8 bits sent 16 bits sent

two levels with a four levels with


single bit per level two bits per level

d Baud rate is number of times signal changes per second;


data rate in bits per second = baud JQ log2 ( levels ) JP

Computer Networks and Internets -- Module 3 14 Spring, 2014

Copyright 2014. All rights reserved.


Converting Digital To Analog

d Approximate digital signal with a composite of sine waves:


t
......................
... ...
... ...
... ... ...
... ... ...
... ...
.................... ........................

(a) digital signal (b) sin(2t/2)

...................... ......................
... ... ... ...
.... ...
... .... ...
...
... ... ... ... ... ...
... ... ... ... ... ...
... . ... ... . ...
.................. . .
................... .................. . .
...................

(c) sin(2t/2)+ sin(23t/2) (d) sin(2t/2)+ sin(23t/2)+ sin(25t/2)

d Mathematically, the bandwidth of a digital signal is infinite

Computer Networks and Internets -- Module 3 15 Spring, 2014

Copyright 2014. All rights reserved.


Converting Analog To Digital

d Three steps taken during conversion


PCM encoder

analog digital
signal sampling quantization encoding data

d Example sampling using eight levels

time

Computer Networks and Internets -- Module 3 16 Spring, 2014

Copyright 2014. All rights reserved.


Converting Analog To Digital

d Three steps taken during conversion


PCM encoder

analog digital
signal sampling quantization encoding data

d Example sampling using eight levels

time

Computer Networks and Internets -- Module 3 16 Spring, 2014

Copyright 2014. All rights reserved.


Converting Analog To Digital

d Three steps taken during conversion


PCM encoder

analog digital
signal sampling quantization encoding data

d Example sampling using eight levels

quanta

7 .....................................................................................................................................................
6 .....................................................................................................................................................
5 .....................................................................................................................................................
4 .....................................................................................................................................................
3 .....................................................................................................................................................
2 .....................................................................................................................................................
1 .....................................................................................................................................................
0 .....................................................................................................................................................
time

Computer Networks and Internets -- Module 3 16 Spring, 2014

Copyright 2014. All rights reserved.


Sampling Rate And Nyquist Theorem

d How many samples should be taken per second?

Computer Networks and Internets -- Module 3 17 Spring, 2014

Copyright 2014. All rights reserved.


Sampling Rate And Nyquist Theorem

d How many samples should be taken per second?


d Mathematician named Nyquist discovered the answer:

sampling rate = 2 f max

where f max is highest frequency in the composite signal

Computer Networks and Internets -- Module 3 17 Spring, 2014

Copyright 2014. All rights reserved.


Sampling Rate And Nyquist Theorem

d How many samples should be taken per second?


d Mathematician named Nyquist discovered the answer:

sampling rate = 2 f max

where f max is highest frequency in the composite signal


d Example: to capture audio frequencies up to 4000 Hertz, a
digital telephone system samples at 8000 samples per
second
d Amount of data generated by a single digitized voice call:

samples
3 333333 3 bits
333333 3 bits
33333
data rate = 8000 8 = 64,000
second sample second

Computer Networks and Internets -- Module 3 17 Spring, 2014

Copyright 2014. All rights reserved.


Nonlinear Encoding

d Linear sampling does not work well for voice


d Researchers created nonlinear sampling that modify
dynamic range to reproduce sounds to which the human ear
is sensitive
d Mu-law (-law)
Used in North America and Japan
More dynamic range, but more sensitive to noise
d A-law
Used in Europe
Less sensitive to noise, but less dynamic range

Computer Networks and Internets -- Module 3 18 Spring, 2014

Copyright 2014. All rights reserved.


Synchronization Errors And Line Coding

d Synchronization error occurs when receiver and sender


disagree about bit boundaries (clocks differ)
.. .. .. .. .. .. .. ..
1 .. 0 .. 0 .. 1 .. 1 .. 0 .. 1 .. 0 ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
... ... ... ... ... ... ... ...

sent
.. .. .. .. .. .. .. .. .. ..
1 .. 0 .. 0 .. 0 .. 1 .. 1 .. 0 .. 1 .. 1 .. 0 ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
... ... ... ... ... ... ... ... ... ...

received

d Line coding techniques prevent synchronization errors

Computer Networks and Internets -- Module 3 19 Spring, 2014

Copyright 2014. All rights reserved.


Example Line Coding: Manchester Encoding

d Used with Ethernet


d Synchronizes receiver with sender (transition represents bit)
d Example of (a) Manchester Encoding, and (b) differential
Manchester Encoding:
.. .. .. .. .. .. .. ..
0 ... 1 ... 0 ... 0 ... 1 ... 1 ... 1 ... 0 ...
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
... ... ... ... ... ... ... ...
.. .. .. .. .. .. .. ..
. . . . . . . .
(a)

.. .. .. .. .. .. .. ..
0 .. 1 .. 0 .. 0 .. 1 .. 1 .. 1 .. 0 ..
... ... ... ... ... ... ... ...
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
... ... ... ... ... ... ... ...
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..
. . . . . . . .
(b)

Computer Networks and Internets -- Module 3 20 Spring, 2014

Copyright 2014. All rights reserved.


Transmission Media
A Taxonomy Of Transmission Media

Twisted Pair

Electrical

Coaxial Cable

Optical Fiber

Energy Types Light InfraRed

Laser

Terrestrial
Radio
Electromagnetic
(Radio)
Satellite

d Is anything omitted?
Computer Networks and Internets -- Module 3 22 Spring, 2014

Copyright 2014. All rights reserved.


Some Really Bad News

d In the real world, entropy rules


d Transmission is plagued with problems

Computer Networks and Internets -- Module 3 23 Spring, 2014

Copyright 2014. All rights reserved.


Loss, Interference, And Electrical Noise

d Problems in the electrical and electromagnetic worlds


Resistance (leads to loss)
Capacitance (leads to distortion)
Inductance (leads to interference)
d Random electromagnetic radiation is called noise
Can be generated by specific sources such as electric
motor
Background radiation is an inescapable feature of the
universe

Computer Networks and Internets -- Module 3 24 Spring, 2014

Copyright 2014. All rights reserved.


Examples

d When electrical signals propagate down a wire,


electromagnetic energy is radiated (i.e., the wire acts like an
antenna)
d When electromagnetic radiation encounters metal, a small
electrical current is induced that can interfere with signals
being carried on the wire
d When an electrical pulse is sent down an unterminated wire,
reflection comes back
d When a signal passes across the connection between two
wires, reflection and loss occur
d Note: a network diagnostic tool uses reflection to find the
distance to the point where a cable has been cut

Computer Networks and Internets -- Module 3 25 Spring, 2014

Copyright 2014. All rights reserved.


How Can We Reduce The Effect Of Noise
On Copper Wiring

d Several techniques have been invented


Unshielded Twisted Pair (UTP)
Coaxial cable
Shielded Twisted Pair (STP)
d All are used in computer networks

Computer Networks and Internets -- Module 3 26 Spring, 2014

Copyright 2014. All rights reserved.


How Twisted Pair Helps

Computer Networks and Internets -- Module 3 27 Spring, 2014

Copyright 2014. All rights reserved.


How Twisted Pair Helps
source of radiation

+5 +5 +5 +5

difference +8

+3 +3 +3 +3

d In an untwisted pair of wires, more current is generated in


first wire the interference hits

Computer Networks and Internets -- Module 3 27 Spring, 2014

Copyright 2014. All rights reserved.


How Twisted Pair Helps
source of radiation

+5 +5 +5 +5

difference +8

+3 +3 +3 +3

d In an untwisted pair of wires, more current is generated in


first wire the interference hits
source of radiation

+5 +5 +5 +5

difference 0

+3 +3 +3 +3

d Twisting exposes each wire equally

Computer Networks and Internets -- Module 3 27 Spring, 2014

Copyright 2014. All rights reserved.


Coaxial Cable And Shielding

d Better protection: wrap a metal shield around the wire


outer plastic covering
braided metal shield
plastic insulation
inner wire for signal

d Shielding can be added to twisted pair


Around entire cable containing many pairs
Around each pair as well as around cable
d Shielding determines maximum data rate

Computer Networks and Internets -- Module 3 28 Spring, 2014

Copyright 2014. All rights reserved.


Wiring Standards And Data Rates

2 222222222222222222222222222222222222222222222222222222222222222222222
1 Category 1 Description 1 Data Rate 1
1 1 1 1
12 222222222222222222222222222222222222222222222222222222222222222222222
1 1 (in Mbps) 1
12CAT 1 1 Unshielded twisted pair used for telephones
222222222222222222222222222222222222222222222222222222222222222222222 1 < 0.1 1
1 1 1 1
21 CAT 2 Unshielded twisted pair used for
222222222222222222222222222222222222222222222222222222222222222222222
1 T1 data 1 2 1
12CAT 3 1 Improved CAT2 used for computer networks
222222222222222222222222222222222222222222222222222222222222222222222 1 10 1
1 1 1 1
CAT 4 Improved CAT3 used
12 222222222222222222222222222222222222222222222222222222222222222222222
1 for Token Ring networks 1 20 1
12CAT 5 1 Unshielded twisted pair used for networks
222222222222222222222222222222222222222222222222222222222222222222222 1 100 1
1 1 1 1
CAT 5E Extended CAT5 for more
12 222222222222222222222222222222222222222222222222222222222222222222222
1 noise immunity 1 125 1
1 CAT 6 1 Unshielded twisted pair tested for 200 Mbps 1 200 1
21 222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 CAT 7 1 Shielded twisted pair with a foil shield 1 600 1
1 1 around the entire cable plus a shield around 1 1
1 1 each twisted pair 1 1
12 222222222222222222222222222222222222222222222222222222222222222222222
1 1 1

d What common data rate is missing from the list?

Computer Networks and Internets -- Module 3 29 Spring, 2014

Copyright 2014. All rights reserved.


Media Using Light Energy

d InfraRED transmission (short range and low data rate)


d Point-to-point lasers (useful between buildings)
d Optical fiber (high data rate and long distance)

Computer Networks and Internets -- Module 3 30 Spring, 2014

Copyright 2014. All rights reserved.


Media Using Light Energy

d InfraRED transmission (short range and low data rate)


d Point-to-point lasers (useful between buildings)
d Optical fiber (high data rate and long distance)
d Why light stays in a fiber:

Refraction Absorption Reflection


low
density

high
critical
density angle

(a) (b) (c)

Computer Networks and Internets -- Module 3 30 Spring, 2014

Copyright 2014. All rights reserved.


Electromagnetic Spectrum And Properties

100 102 104 106 108 1010 1012 1014 1016 1018 1020 1022 1024
Low Radio & TV Micro- InfraRed UV X ray Gamma
frequencies wave ray

1 KHz 1 MHz 1 GHz 1 THz visible light

2222222222222222222222222222222222222222222222222222222222222222222222
1 Classification 1 Range 1 Type Of Propagation 1
21 222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 Low 1 1 Wave follows earths curvature, but 1
1 Frequency 1 < 2 MHz 1 can be blocked by unlevel terrain 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 Medium 1 1 Wave can reflect from layers of the 1
1 1 2 to 30 MHz 1 1
Frequency atmosphere,
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 especially the ionosphere 1
1 1 1 1
1 High 1 > 30 MHz 1 Wave travels in a direct line, and will 1
112222222222222222222222222222222222222222222222222222222222222222222222
Frequency 11 11 be blocked by obstructions 11

Computer Networks and Internets -- Module 3 31 Spring, 2014

Copyright 2014. All rights reserved.


Satellite Communication
d Three types of communication satellites
2222222222222222222222222222222222222222222222222222222222222222222222
1 Orbit Type 1 Description 1
2222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 Low 1 Has the advantage of low delay, but the disadvantage 1
1 Earth Orbit 1 that from an observers point of view on the earth, 1
1 1 1
( LEO ) 1 the satellite appears to move across the sky
12222222222222222222222222222222222222222222222222222222222222222222222 1
1 1 1
1 Medium 1 An elliptical (rather than circular) orbit primarily 1
1 Earth Orbit 1 used to provide communication at the North and 1
1 1 1
1 ( MEO ) 1 South Poles 1
2222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 Geostationary 1 Has the advantage that the satellite remains at a fixed 1
1 Earth Orbit 1 position with respect to a location on the earths 1
1 ( GEO ) 1 surface, but the disadvantage of being farther away 1
1 2222222222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 3 32 Spring, 2014

Copyright 2014. All rights reserved.


GEO Satellites

d Figure below shows the earths atmosphere drawn to scale


d Where would a GEO satellite be in the figure?

atmosphere

Earth

Computer Networks and Internets -- Module 3 33 Spring, 2014

Copyright 2014. All rights reserved.


GEO Satellites
(continued)

d Distance to GEO satellite is 35,785 km or 22,236 miles


d Approximately 3 times earths diameter or one-tenth of the
distance to the moon

Computer Networks and Internets -- Module 3 34 Spring, 2014

Copyright 2014. All rights reserved.


GEO Satellites
(continued)

d Distance to GEO satellite is 35,785 km or 22,236 miles


d Approximately 3 times earths diameter or one-tenth of the
distance to the moon
d In other words: the satellite is far off the page

Computer Networks and Internets -- Module 3 34 Spring, 2014

Copyright 2014. All rights reserved.


GEO Satellites
(continued)

d Distance to GEO satellite is 35,785 km or 22,236 miles


d Approximately 3 times earths diameter or one-tenth of the
distance to the moon
d In other words: the satellite is far off the page
d A consequence for networking: a long round-trip time, even
at the speed of light:

2 35.8 10 6 meters
Round trip time = 33333333333333333333 = 0.238 sec
3 10 meters/sec
8

Computer Networks and Internets -- Module 3 34 Spring, 2014

Copyright 2014. All rights reserved.


Measures Of Transmission Media

d Propagation delay - time required for a signal to traverse a


medium
d Channel capacity - maximum data rate

Computer Networks and Internets -- Module 3 35 Spring, 2014

Copyright 2014. All rights reserved.


Channel Capacity

d Nyquists Theorem gives theoretical bound on maximum


data rate for hardware bandwidth B and K signal levels

D = 2 B log2 K

d Mathematical result known as Shannons Theorem gives the


maximum channel capacity, C, in the presence of noise

C = B log2 ( 1 + S/N)

d Quantity S / N is known as the signal-to-noise ratio

Computer Networks and Internets -- Module 3 36 Spring, 2014

Copyright 2014. All rights reserved.


Assessment

d Nyquists Theorem gives us hope: using more signal levels


can increase the data rate
d Shannons Theorem is sobering: electrical noise in the
universe limits the effective channel capacity of any
practical communication system

Computer Networks and Internets -- Module 3 37 Spring, 2014

Copyright 2014. All rights reserved.


Reliability And Channel Coding
Sources Of Errors And Types

d Error sources: interference, distortion, and attenuation


d Resulting error types:
222222222222222222222222222222222222222222222222222222222222222222222222
1 Type Of Error 1 Description 1
21 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Single Bit Error 1 A single bit in a block of bits is changed and 1
1 1 all other bits in the block are unchanged (often 1
1 1 1
results
1222222222222222222222222222222222222222222222222222222222222222222222222
1 from very short-duration interference) 1
1 1 1
1 Burst Error 1 Multiple bits in a block of bits are changed 1
1 1 (often results from longer-duration interference) 1
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Erasure (Ambiguity) 1 The signal that arrives at a receiver is ambiguous 1
1 1 1
1 1 (does not clearly correspond to either a logical 1 1
1 1 or a logical 0; can result from distortion 1
1 1 or interference) 1
1222222222222222222222222222222222222222222222222222222222222222222222222
1 1

d Channel coding used to detect and correct errors

Computer Networks and Internets -- Module 3 39 Spring, 2014

Copyright 2014. All rights reserved.


Concept Of Forward Error Correction (FEC)
ORIGINAL MESSAGE ORIGINAL MESSAGE

encoder decoder

add extra bits check and Discard


for protection optionally correct

output codeword receive codeword

transmission over channel

d Examples:
Single parity bit
Row And Column (RAC)
Cyclic Redundancy Check (CRC)
Computer Networks and Internets -- Module 3 40 Spring, 2014

Copyright 2014. All rights reserved.


Example: Row And Column Code

d To send 12 bits, arrange the bits in a matrix, compute a


parity for each row and column, and send 20 bits

1 0 1 1 1
bits from parity for
dataword 0 0 1 0 1 each row

1 0 1 0 0
parity for
0 0 1 1 0 each column

Computer Networks and Internets -- Module 3 41 Spring, 2014

Copyright 2014. All rights reserved.


Example: Row And Column Code

d To send 12 bits, arrange the bits in a matrix, compute a


parity for each row and column, and send 20 bits

1 0 1 1 1
bits from parity for
dataword 0 0 1 0 1 each row

1 0 1 0 0
parity for
0 0 1 1 0 each column

d Receiver computes same parity for the 12 bits and compares


to the parity bits received
single bit
changed during 1 0 1 1 1
transmission
0 1 1 0 1 locations where
calculated parity
bits disagree,
1 0 1 0 0 indicating the
row and column
0 0 1 1 0 of the error

Computer Networks and Internets -- Module 3 41 Spring, 2014

Copyright 2014. All rights reserved.


Hamming Distance

d Used to assess codes resistance to errors


d Defined to be number of bit changes to transform bit string
S1 into bit string S2
d Can be computed as number of 1 bits in the exclusive or of
S1 and S2
d To assess codes strength, compute Hamming distance
among all possible pairs of codewords, and take the
minimum
d If minimum Hamming distance is n, an error that changes
fewer than n bits will be detected

Computer Networks and Internets -- Module 3 42 Spring, 2014

Copyright 2014. All rights reserved.


Internet Checksum Computation
22222222222222222222222222222222222222222222222222222222
1 Given: 1
1 1
1 A message, M, of arbitrary length 1
1 1
1
Compute: 1
1 A 16-bit 1s complement checksum, C 1
1 1
1 Method: 1
1 Pad M to an exact multiple of 16 bits; 1
1 Set a 32-bit checksum integer, C, to zero; 1
1 1
for ( each 16-bit group in M ) { 1
1
1 Treat the 16 bits as an integer and add to C; 1
1 } 1
1 Extract high-order 16 bits of C and add to C; 1
1 1
Checksum is inverse of the low-order 16 bits; 1
1 If the checksum is zero, substitute all 1s;
1 1
21 22222222222222222222222222222222222222222222222222222221
Computer Networks and Internets -- Module 3 43 Spring, 2014

Copyright 2014. All rights reserved.


Cyclic Redundancy Code (CRC)

d Used with Ethernet and other high-speed networks


d Properties:

As with a checksum, the size of a dataword is not fixed,


Arbitrary Length
which means a CRC can be applied to an arbitrary length
Message
message

Because the value computed depends on the sequence


Excellent Error
of bits in a message, a CRC provides excellent error
Detection
detection capability

Despite its sophisticated mathematical basis, a CRC


Fast Hardware
computation can be carried out extremely fast by
Implementation
hardware

Computer Networks and Internets -- Module 3 44 Spring, 2014

Copyright 2014. All rights reserved.


Explanation Of CRC

d Mathematicians explain CRC computation as the remainder


from polynomial division
d Theoretical computer scientists explain CRC as the
remainder from a division of binary numbers
d Cryptographers explain CRC as an operation in a Galois
field of order 2
d Computer programmers explain CRC as an algorithm that
iterates through a message and uses table lookup
d Hardware architects explain CRC computation as a small
hardware pipeline unit that uses exclusive or

Computer Networks and Internets -- Module 3 45 Spring, 2014

Copyright 2014. All rights reserved.


Question

d Can you explain the following?


Fact 1: it is possible to write a function that computes
the 32-bit CRC used with Ethernet
Fact 2: commercial Ethernet products use hardware
instead of software to compute a CRC

Computer Networks and Internets -- Module 3 46 Spring, 2014

Copyright 2014. All rights reserved.


Transmission Modes
Terminology

d Serial - one bit at a time


d Parallel - multiple bits at a time

Computer Networks and Internets -- Module 3 48 Spring, 2014

Copyright 2014. All rights reserved.


Terminology

d Serial - one bit at a time


d Parallel - multiple bits at a time
d Taxonomy of transmission methods:

Transmission Mode

Parallel Serial

Asynchronous Synchronous Isochronous

Computer Networks and Internets -- Module 3 48 Spring, 2014

Copyright 2014. All rights reserved.


Serial Ordering Of Bits And Bytes

d Both sides must agree on order in which bits are transmitted


d Two approaches known as big-endian and little-endian
d Example: Ethernet uses byte big-endian and bit little-endian
order

byte 1 byte 2 byte 3 byte 4

x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x

2 1
4 3 11 10 9 17
6 5 13 12 20 19 18 27 26
25
8 7 14 21 28
16 15 24 23
22 30 29
32 31

Computer Networks and Internets -- Module 3 49 Spring, 2014

Copyright 2014. All rights reserved.


Asynchronous And Synchronous Transmission
d Asynchronous: line idle when not in use; data starts at
arbitrary time
voltage
+15 .. .. ..
.. .. ..
.. .. ..
.. .. ..
.. .. .. time
0 .. .. ..
.. .. ..
.. .. ..
arbitrary .. .. .. arbitrary
.. .. ..
.. .. ..
-15 . . .
idle start 1 1 0 1 1 0 1 0 stop idle

d Synchronous: each bit slot used


receiver must know how
to group bits into bytes
voltage
+15 ... ... ... ... ...
.. .. .. .. ..
.. .. .. .. ..
.. .. .. .. .. time
.. .. .. .. ..
0 .. .. .. .. ..
.. .. .. .. ..
.. .. .. .. ..
.. .. .. .. ..
.. .. .. .. ..
-15 .. .. .. .. ..
1 1 0 1 1 0 1 1 0 1 0 1 1 0

Computer Networks and Internets -- Module 3 50 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Simplex And Duplex Modes

send receive

(a) simplex

send receive

receive send
(b) full-duplex

send receive

receive send
(c) half-duplex

Computer Networks and Internets -- Module 3 51 Spring, 2014

Copyright 2014. All rights reserved.


Modulation And Demodulation
Illustration Of Amplitude Modulation

Computer Networks and Internets -- Module 3 53 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Amplitude Modulation

carrier

Computer Networks and Internets -- Module 3 53 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Amplitude Modulation

carrier

signal

Computer Networks and Internets -- Module 3 53 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Amplitude Modulation

carrier

signal

modulated carrier

Computer Networks and Internets -- Module 3 53 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Frequency Modulation

signal

modulated carrier

Computer Networks and Internets -- Module 3 54 Spring, 2014

Copyright 2014. All rights reserved.


Shift Keying

d Like modulation except signal is digital

carrier

0 1 0 0 1 1 0
digital signal

carrier with amplitude shift keying

Computer Networks and Internets -- Module 3 55 Spring, 2014

Copyright 2014. All rights reserved.


A Challenge

Write a computer program that takes as input a series of points


defining a signal and produces plots of sine waves that show
amplitude and frequency modulation as in the previous
diagrams

Computer Networks and Internets -- Module 3 56 Spring, 2014

Copyright 2014. All rights reserved.


Other Modulation Topics

d Phase shift modulation


d Increasing bits per second by combining amplitude and
phase shift (QAM techniques)
d Constellation diagrams to represent combinations
d Modems (modulator / demodulator)

Computer Networks and Internets -- Module 3 57 Spring, 2014

Copyright 2014. All rights reserved.


Multiplexing And Demultiplexing
(Channelization)
Concept Of Multiplexing And Types
multiplexor demultiplexor

sender 1 shared medium receiver 1

sender 2 receiver 2

. .
. .
. .
sender N receiver N

Computer Networks and Internets -- Module 3 59 Spring, 2014

Copyright 2014. All rights reserved.


Concept Of Multiplexing And Types
multiplexor demultiplexor

sender 1 shared medium receiver 1

sender 2 receiver 2

. .
. .
. .
sender N receiver N

d Types:
Frequency division multiplexing
Wavelength division multiplexing
Time division multiplexing
Code division multiplexing

Computer Networks and Internets -- Module 3 59 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Division Multiplexing (FDM)
d Used in broadcast radio and cable TV
multiplexor demultiplexor

sender 1 channel 1 receiver 1

sender 2 channel 2 receiver 2


.. .. ..
. . .
sender N channel N receiver N

d Demultiplexing implemented with sets of filters


demultiplexor each output has
frequencies for
one channel
frequencies
for all
channels filter 1

filter 2
..
.
filter N

Computer Networks and Internets -- Module 3 60 Spring, 2014

Copyright 2014. All rights reserved.


FDM In Practice

d Each channel assigned a range of frequencies


222222222222222222222222222222222
1 Channel 1 Frequencies Used 1
21 22222222222222222222222222222222
1 1
1 1 1 100 KHz - 300 KHz 1
1 2 1 320 KHz - 520 KHz 1
1 3 1 540 KHz - 740 KHz 1
1 1 1
1 4 1 760 KHz - 960 KHz 1
1 5 1 980 KHz - 1180 KHz 1
11222222222222222222222222222222222
6 11 1200 KHz - 1400 KHz 11

d A guard band separates adjacent channels

guard band

1 2 3 4 5 6 KHz

0 200 400 600 800 1000 1200 1400

Computer Networks and Internets -- Module 3 61 Spring, 2014

Copyright 2014. All rights reserved.


Wavelength Division Multiplexing (WDM)

d Form of FDM used with light (i.e., on an optical fiber)


d Separate frequencies called colors or lambdas
d Prisms used to separate frequencies

optical fiber
prism carrying a beam of light
1 1
2 2

k k

d Current technology is Dense WDM (DWDM); an individual


channel can provide 10 Gbps

Computer Networks and Internets -- Module 3 62 Spring, 2014

Copyright 2014. All rights reserved.


Time Division Multiplexing
d Senders take turns transmitting
multiplexor demultiplexor

sender 1 data flow receiver 1

sender 2 . . . 3 2 1 N . . . 3 2 1 receiver 2
. .
. .
. .
sender N receiver N

d Synchronous TDM
Each sender assigned a slot (typically round-robin)
Used by the telephone company
d Statistical TDM
Sender only transmits when ready (e.g., Ethernet)
Computer Networks and Internets -- Module 3 63 Spring, 2014

Copyright 2014. All rights reserved.


Code Division Multiplexing

d Mathematical form of multiplexing used with cell phones


d Algorithm
Each sender/receiver pair is assigned a unique number
called a chip sequence
Senders multiply the data value by their chip sequence
(orthogonal vector spaces)
Transmitted value is a sum of all senders
Each receiver multiplies incoming value by its chip
sequence to extract data
d Advantage over statistical TDM: lower delay when network
loaded

Computer Networks and Internets -- Module 3 64 Spring, 2014

Copyright 2014. All rights reserved.


Hierarchical Multiplexing

d Hierarchies used with FDM and TDM to combine multiple


lower-capacity channels
d Example of TDM hierarchy used by the phone system

7 DS-2 digital phone


channels (6.312 Mbps each)

6 DS-3 digital phone


channels (44.736 Mbps each)

4 DS-1 digital phone


channels (1.544 Mbps each)

24 DS-0 digital phone 1 DS-4 digital phone


channels (64 Kbps each) channel (274.176 Mbps total)

Computer Networks and Internets -- Module 3 65 Spring, 2014

Copyright 2014. All rights reserved.


Inverse Multiplexing

d Divides data from a single channel into several lower-speed


channels
d Used when high-speed channel is unavailable or too
expensive
d Some ISPs use inverse multiplexing to combine several 10
Gbps channels into a higher-speed channel

single high-speed single high-speed


input output

multiple low-speed connections

Computer Networks and Internets -- Module 3 66 Spring, 2014

Copyright 2014. All rights reserved.


Summary

d Data communications deals with the Physical Layer and


data transmission
d Concepts include
Signals and conversion between digital and analog
Transmission media
Reliability and channel coding
Modulation and demodulation
Multiplexing and demultiplexing

Computer Networks and Internets -- Module 3 67 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
MODULE IV

Computer Network Technologies:


Access, Wired And Wireless LANs,
Extensions, Bridging, And
Layer 2 Switching

Computer Networks and Internets -- Module 4 1 Spring, 2014


Copyright 2014. All rights reserved.
Topics

d Access technologies
d Interconnection technologies
d Local area network packets, frames, and topologies
d Media access mechanisms and the IEEE MAC sub-layer
d Wired LAN technologies (Ethernet and 802.3)
d Wireless Networking Technologies
d LAN Extensions
d Switches and switched networks

Computer Networks and Internets -- Module 4 2 Spring, 2014

Copyright 2014. All rights reserved.


Access Technologies
Definition Of Access

d Used in the last mile between a provider and a subscriber


d Informally classified as either narrowband or broadband
d May not be the bottleneck
d Many are asymmetric with higher data rate downstream
providers
facility
eam
downstr

subscribers
location
upstream

d Note: party that is downstream pays a fee for service

Computer Networks and Internets -- Module 4 4 Spring, 2014

Copyright 2014. All rights reserved.


Access Technology Types

d Narrowband (less than 128 Kbps)


Dialup
Integrated Services Digital Network (ISDN)
Is disappearing
d Broadband (more than 128 Kbps)
Digital Subscriber Line (DSL)
Cable modems
Wireless (e.g., Wi-Fi and 4G)

Computer Networks and Internets -- Module 4 5 Spring, 2014

Copyright 2014. All rights reserved.


Digital Subscriber Line (DSL) Technologies

d Use frequency-division multiplexing to share local loop


between data and POTS
d Head-end equipment is DSL Access Multiplexor (DSLAM)
d Asymmetric Digital Subscriber Line (ADSL)
255 downstream carrier frequencies, 31 upstream
Maximum downstream data rate is 8.45 Mbps
Adaptive selection of carrier frequencies
POTS upstream downstream

KHz

0 4 26 138 1100

Computer Networks and Internets -- Module 4 6 Spring, 2014

Copyright 2014. All rights reserved.


Cable Modem Technology

d Sends data over CATV coaxial cable system


d Standard is DOCSIS (Data-Over-Cable Service Interface
Specification)
d Head-end equipment known as Cable Modem Termination
System (CMTS)
d Version 1.x uses frequency-division multiplexing
d Maximum downstream data rate is 52 Mbps
d Bandwidth shared among multiple subscribers

Computer Networks and Internets -- Module 4 7 Spring, 2014

Copyright 2014. All rights reserved.


Cable Modem Technology

d Sends data over CATV coaxial cable system


d Standard is DOCSIS (Data-Over-Cable Service Interface
Specification)
d Head-end equipment known as Cable Modem Termination
System (CMTS)
d Version 1.x uses frequency-division multiplexing
d Maximum downstream data rate is 52 Mbps
d Bandwidth shared among multiple subscribers
1
33
Each subscriber receives of the bandwidth
N

Computer Networks and Internets -- Module 4 7 Spring, 2014

Copyright 2014. All rights reserved.


Cable Modem Technology

d Sends data over CATV coaxial cable system


d Standard is DOCSIS (Data-Over-Cable Service Interface
Specification)
d Head-end equipment known as Cable Modem Termination
System (CMTS)
d Version 1.x uses frequency-division multiplexing
d Maximum downstream data rate is 52 Mbps
d Bandwidth shared among multiple subscribers
1
33
Each subscriber receives of the bandwidth
N

Cable company chooses N


Computer Networks and Internets -- Module 4 7 Spring, 2014

Copyright 2014. All rights reserved.


Other Access Technologies

d Hybrid systems include optical fiber plus copper


Fiber To The Curb (FTTC)
Fiber To The Building (FTTB)
Fiber To The Premises (FTTP)
Fiber To The Home (FTTH)
d Key question: how much capacity is needed at each point
downstream?
d Answer: it depends on whether endpoints have traffic in
common
Broadcasts are shared
Individual communications are not
Computer Networks and Internets -- Module 4 8 Spring, 2014

Copyright 2014. All rights reserved.


Other Access Technologies
(continued)

d Wireless
Wi-Fi
WIMAX
Satellite
3G and 4G cellular services
d Leased point-to-point circuits (e.g., T1 or fractional T1)

Computer Networks and Internets -- Module 4 9 Spring, 2014

Copyright 2014. All rights reserved.


Interconnection Technologies
Interconnections At The Core Of The Internet

d Typically needed by large ISPs


d Circuits leased from common carriers (phone companies)
d Terminated with a Data Service Unit / Channel Service Unit
(DSU/ CSU)
d Upstream interface aggregates many lower-speed access
connections
d Key idea: data rates based on voice
Basic data rate: single digital voice channel (64 Kbps)
Higher data rate circuits created from multiples of voice
channels
d SONET encoding and framing used

Computer Networks and Internets -- Module 4 11 Spring, 2014

Copyright 2014. All rights reserved.


Example Data Rates Of Leased Circuits
222222222222222222222222222222222222222222222222222222222222
1 Name 1 Bit Rate 1 Voice Circuits 1 Location 1
222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 basic rate 1 0.064 Mbps 1 1 1 1
222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 T1 1 1.544 Mbps 1 24 1 North America 1
222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 T2 1 6.312 Mbps 1 96 1 North America 1
222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 T3 1 44.736 Mbps 1 672 1 North America 1
222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 E1 1 2.048 Mbps 1 30 1 Europe 1
1222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 E2 1 8.448 Mbps 1 120 1 Europe 1
222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 E3 1 34.368 Mbps 1 480 1 Europe 1
1222222222222222222222222222222222222222222222222222222222222
1 1 1 1

d T-standards used in North America


d E-standards used in Europe
d Note: T prefix specifies encoding as well as data rate; data
rate alone is given by Digital Signal Level (DS) standards
Computer Networks and Internets -- Module 4 12 Spring, 2014

Copyright 2014. All rights reserved.


High Capacity Data Circuits
2 2222222222222222222222222222222222222222222222222222222222222222
1 Copper Name 1 Optical Name 1 Bit Rate 1 Voice Circuits 1
21 2222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 STS-1 1 OC-1 1 51.840 Mbps 1 810 1
21 2222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 STS-3 1 OC-3 1 155.520 Mbps 1 2430 1
21 2222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 STS-12 1 OC-12 1 622.080 Mbps 1 9720 1
21 2222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 STS-24 1 OC-24 1 1,244.160 Mbps 1 19440 1
21 2222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 STS-48 1 OC-48 1 2,488.320 Mbps 1 38880 1
12 2222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 STS-192 1 OC-192 1 9,953.280 Mbps 1 155520 1
12 2222222222222222222222222222222222222222222222222222222222222222
1 1 1 1

d STS standards specify copper interface


d OC standards specify optical fiber interface
d Suffix C on OC-standards means single channel

Computer Networks and Internets -- Module 4 13 Spring, 2014

Copyright 2014. All rights reserved.


Local Area Networks:
(Packets, Frames, Topologies)
Networks

d Distinct from physical communication systems


d Attach multiple endpoints
d Two broad categories
Circuit switched
Packet switched

Computer Networks and Internets -- Module 4 15 Spring, 2014

Copyright 2014. All rights reserved.


Circuit Switched Networks

d Provide point-to-point communication between pairs of


endpoints
d Establish path between sender and receiver
d Separate steps for circuit creation, use, and termination
d Performance equivalent to an isolated physical path
d Circuit can be
Permanent/ provisioned (left in place for long periods)
Switched (created on demand)
d Concept: user leases piece of underlying infrastructure for a
time period

Computer Networks and Internets -- Module 4 16 Spring, 2014

Copyright 2014. All rights reserved.


Packet Switched Networks

d Form the basis for the Internet


d Multiplex communication over shared media
d All data divided into packets (maximum size fixed)
d After sending one packet, sender allows others a chance to
transmit before sending a second packet
d Arbitrary, asynchronous communication
d No set-up required before communication begins
d Performance varies due to statistical multiplexing
d Concept: underlying infrastructure is shared among users

Computer Networks and Internets -- Module 4 17 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Circuit And Packet Switching
d Circuit switching
circuit-switched network

Computer Networks and Internets -- Module 4 18 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Circuit And Packet Switching
d Circuit switching provides 1-to-1 dedicated connections
circuit-switched network

Computer Networks and Internets -- Module 4 18 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Circuit And Packet Switching
d Circuit switching provides 1-to-1 dedicated connections
circuit-switched network

d Packet switching
packet-switched network

... 3 2 1 2 1

Computer Networks and Internets -- Module 4 18 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Circuit And Packet Switching
d Circuit switching provides 1-to-1 dedicated connections
circuit-switched network

d Packet switching provides statistical TDM sharing


packet-switched network

... 3 2 1 2 1

Computer Networks and Internets -- Module 4 18 Spring, 2014

Copyright 2014. All rights reserved.


Categories Of Packet Switched Networks
2222222222222222222222222222222222222222222222222222222222222222222222
1 Name 1 Expansion 1 Description 1
2222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 LAN 1 Local Area Network 1 Least expensive; spans a single 1
1 1 1 room or a single building 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1 1
1 MAN 1 Metropolitan Area Network 1 Medium expense; spans a major 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 city or a metroplex 1
1 1 1 1
1 WAN 1 Wide Area Network 1 Most expensive; spans sites in 1
1 1 1 multiple cities 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 1

Computer Networks and Internets -- Module 4 19 Spring, 2014

Copyright 2014. All rights reserved.


Categories Of Packet Switched Networks
2222222222222222222222222222222222222222222222222222222222222222222222
1 Name 1 Expansion 1 Description 1
2222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 LAN 1 Local Area Network 1 Least expensive; spans a single 1
1 1 1 room or a single building 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1 1
1 MAN 1 Metropolitan Area Network 1 Medium expense; spans a major 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 city or a metroplex 1
1 1 1 1
1 WAN 1 Wide Area Network 1 Most expensive; spans sites in 1
1 1 1 multiple cities 1
12222222222222222222222222222222222222222222222222222222222222222222222
1 1 1

d Everyone loves names that end in AN


2222222222222222222222222222222222222222222222222222222222222222222222222
1 Name 1 Expansion 1 Description 1
2222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 PAN 1 Personal Area Network 1 Spans the area around an individual 1
1 1 1 used for earphones 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1 1
1 SAN 1 Storage Area Network 1 Spans the distance between a disk 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1 farm and processors in a data center 1
1 1 1 1
1 CAN 1 Chip Area Network 1 Spans a single chip and connects 1
1 1 1 processor, memories, etc. 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1

Computer Networks and Internets -- Module 4 19 Spring, 2014

Copyright 2014. All rights reserved.


Standards Bodies And Their Bias

d Standards bodies and academic departments each emphasize


certain layers of a protocol stack, leading to the following
views

Application

Transport
TRANSPORT
APPLICATION
DATA LINK
Internet

INTERNET
Data Link
PHYSICAL

Physical

textbooks W3C IETF IEEE

Computer Networks and Internets -- Module 4 20 Spring, 2014

Copyright 2014. All rights reserved.


IEEE 802 Model And Standards

d IEEE (Institute of Electrical and Electronics Engineers)


Professional society of engineers
Standardizes vendor-independent technologies
d Project 802
LAN/ MAN standards committee
Organized in 1980
Focuses on layer 1 and layer 2 standards
Divides layer 2 into two sublayers
* Logical Link Control (LLC)
* Media Access Control (MAC)
Computer Networks and Internets -- Module 4 21 Spring, 2014

Copyright 2014. All rights reserved.


Example IEEE Standards
2222222222222222222222222222222222222222222222222222222222
1 ID 1 Topic 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 802.1 1 Higher layer LAN protocols 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 802.2 1 Logical link control 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 802.3 1 Ethernet 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
802.4
12222222222222222222222222222222222222222222222222222222222
1 Token bus (disbanded) 1
1 1 1
12222222222222222222222222222222222222222222222222222222222
802.5 1 Token Ring 1
1 1 1
1 802.6 1 Metropolitan Area Networks (disbanded) 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 802.7 1 Broadband LAN using Coaxial Cable (disbanded) 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 802.9 1 Integrated Services LAN (disbanded) 1
12222222222222222222222222222222222222222222222222222222222
1 1
1 802.10 1 Interoperable LAN Security (disbanded) 1
12222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
12802.11 Wireless LAN (Wi-Fi)
2222222222222222222222222222222222222222222222222222222221
1
1 1 1
112222222222222222222222222222222222222222222222222222222222
802.12 11 Demand priority 11

Computer Networks and Internets -- Module 4 22 Spring, 2014

Copyright 2014. All rights reserved.


More Example IEEE Standards
222222222222222222222222222222222222222222222222
1 ID 1 Topic 1
222222222222222222222222222222222222222222222222
1 1 1
1 802.13 1 Category 6 - 10Gb LAN 1
222222222222222222222222222222222222222222222222
1 1 1
1 802.14 1 Cable modems (disbanded) 1
222222222222222222222222222222222222222222222222
1 1 1
1 802.15 1 Wireless PAN 1
1 1 1
1 1 802.15.1 (Bluetooth) 1
1 1 802.15.4 (ZigBee) 1
222222222222222222222222222222222222222222222222
1 1 1
1 802.16 1 Broadband Wireless Access 1
1 1 802.16e (Mobile) Broadband Wireless 1
1222222222222222222222222222222222222222222222222
1 1
1 1 1
802.17
1222222222222222222222222222222222222222222222222
1 Resilient packet ring 1
1 1 1
1222222222222222222222222222222222222222222222222
802.18 1 Radio Regulatory TAG 1
1 1 1
1 802.19 1 Coexistence TAG 1
222222222222222222222222222222222222222222222222
1 1 1
1 802.20 1 Mobile Broadband Wireless Access 1
222222222222222222222222222222222222222222222222
1 1 1
1 802.21 1 Media Independent Handoff 1
222222222222222222222222222222222222222222222222
1 1 1
1 802.22 1 Wireless Regional Area Network 1
1222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 4 23 Spring, 2014

Copyright 2014. All rights reserved.


Standards Define

d Network topology (shape)


d Endpoint addressing scheme
d Frame (packet) format
d Media access mechanism
d Physical layer aspects and wiring

Computer Networks and Internets -- Module 4 24 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of The Four LAN Topologies

Bus Ring

Star Mesh

d Each topology has advantages and disadvantages


Computer Networks and Internets -- Module 4 25 Spring, 2014

Copyright 2014. All rights reserved.


Endpoint Addressing Scheme

d Each station on a LAN is assigned a unique address


d Each packet specifies a destination address
d LAN hardware uses the address in a packet to determine
which station(s) receive a copy

Computer Networks and Internets -- Module 4 26 Spring, 2014

Copyright 2014. All rights reserved.


IEEE Standard For Addressing

d Formal name: IEEE Media Access Control address (MAC


address)
d Informally called an Ethernet address
d Each address is 48 bits long
d Assigned to Network Interface Card (NIC) when device
manufactured
d Divided into subfields
3-byte Organizationally Unique ID (OUI)
3-byte Network Interface Controller (NIC)

Computer Networks and Internets -- Module 4 27 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Fields In An IEEE 48-Bit Address

3 bytes 3 bytes

Organizationally Unique Network Interface Controller


Identifier (OUI) (NIC) specific

bits of most significant byte


1 2 3 4 5 6 7 8
0 unicast, 1 multicast
0 global, 1 local

d Address types
222222222222222222222222222222222222222222222222222222222222222222222
1 Address Type 1 Meaning And Packet Delivery 1
1 222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 unicast 1 Destination is a single computer; only that computer 1
1 1 should receive a copy of the packet 1
1222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 broadcast 1 Destination is all computers on a network; they 1
1222222222222222222222222222222222222222222222222222222222222222222222
1 should each receive a copy of the packet 1
1 1 1
1 multicast 1 A subset of the computers on a network should 1
1 1 receive a copy of the packet 1
1222222222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 4 28 Spring, 2014

Copyright 2014. All rights reserved.


Algorithm For Processing An Incoming Packet
2222222222222222222222222222222222222222222222222222222222222
1 11
1 Purpose:
1
1 Handle a packet that has arrived over a LAN 1
1 1
1 Method: 1
1 1
1 Extract destination address, D, from the packet;
1
1 if ( D matches my address ) { 1
1 accept and process the packet; 1
1 1
1 } else if ( D matches the broadcast address ) {
1
1 accept and process the packet; 1
1 } else if ( D matches one of the multicast addresses for a 1
1 1
1 multicast group of which I am a member ) {
1
1 accept and process the packet; 1
1 } else { 1
1 1
1 ignore the packet;
1
1 } 1
1122222222222222222222222222222222222222222222222222222222222221
Computer Networks and Internets -- Module 4 29 Spring, 2014

Copyright 2014. All rights reserved.


Frame Format

d Layer 2 packet is called a frame


d General layout of a frame
optional prelude optional postlude

HEADER PAYLOAD

d Header usually has fixed fields


d Each technology imposes a maximum payload size
d Note: we will see specific frame formats later

Computer Networks and Internets -- Module 4 30 Spring, 2014

Copyright 2014. All rights reserved.


Framing And Serial Communications Systems

Computer Networks and Internets -- Module 4 31 Spring, 2014

Copyright 2014. All rights reserved.


Framing And Serial Communications Systems

d Consider sending packets over a leased circuit

Computer Networks and Internets -- Module 4 31 Spring, 2014

Copyright 2014. All rights reserved.


Framing And Serial Communications Systems

d Consider sending packets over a leased circuit


d Circuit hardware either provides a stream of bits or a stream
of bytes (characters)
d We will consider hardware that provides a byte stream
No frame boundaries
Any 8-bit value can appear in the data

Computer Networks and Internets -- Module 4 31 Spring, 2014

Copyright 2014. All rights reserved.


Framing And Serial Communications Systems

d Consider sending packets over a leased circuit


d Circuit hardware either provides a stream of bits or a stream
of bytes (characters)
d We will consider hardware that provides a byte stream
No frame boundaries
Any 8-bit value can appear in the data
d How can we send packets over such a system?
d Answer: sender and receiver must agree on framing

Computer Networks and Internets -- Module 4 31 Spring, 2014

Copyright 2014. All rights reserved.


Example Framing Used With A Leased Circuit

d Use SOH and EOT characters to mark the start and end of a
frame

6 bytes arbitrary bytes

SOH HEADER PAYLOAD EOT

Computer Networks and Internets -- Module 4 32 Spring, 2014

Copyright 2014. All rights reserved.


Example Framing Used With A Leased Circuit

d Use SOH and EOT characters to mark the start and end of a
frame

6 bytes arbitrary bytes

SOH HEADER PAYLOAD EOT

d Use byte stuffing within the payload


22222222222222222222222222222222222
1 Byte In Payload 1 Sequence Sent 1
21 2222222222222222222222222222222222
1 1
1 SOH 1 ESC A 1
21 2222222222222222222222222222222222
1 1
1 EOT 1 ESC B 1
122222222222222222222222222222222222
1 1
1 ESC 1 ESC C 1
122222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 4 32 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Byte Stuffing

original data

ESC SOH EOT ESC

ESC C ESC A ESC B ESC C

stuffed data

d Internet uses SLIP or PPP (standards) for transmission over


serial circuits
d Bit stuffing techniques are also available for systems that
transfer a stream of bits

Computer Networks and Internets -- Module 4 33 Spring, 2014

Copyright 2014. All rights reserved.


Media Access Mechanisms
(IEEE MAC Sublayer)
MAC Protocols

d Control access to shared medium


d Two types of channel allocation
Static
Dynamic
d General principle:

Static channel allocation suffices when the set of


communicating entities is known in advance and does not
change; most networks require a form of dynamic channel
allocation.

Computer Networks and Internets -- Module 4 35 Spring, 2014

Copyright 2014. All rights reserved.


Taxonomy Of Media Access Mechanisms

Reservation

Controlled Access Polling


Protocols

Token passing

ALOHA

Multi-Access Random Access CSMA / CD


Protocols Protocols

CSMA / CA

FDMA

Channelization TDMA
Protocols

CDMA

Computer Networks and Internets -- Module 4 36 Spring, 2014

Copyright 2014. All rights reserved.


Channelization Protocols

d Employ and extend basic multiplexing techniques


d May be static or dynamic
d Three basic types

222222222222222222222222222222222222222222222
1 Protocol 1 Expansion 1
222222222222222222222222222222222222222222222
1 1 1
1 FDMA 1 Frequency Division Multi-Access 1
1222222222222222222222222222222222222222222222
1 1
1 TDMA 1 Time Division Multi-Access 1
1222222222222222222222222222222222222222222222
1 1
1 CDMA 1 Code Division Multi-Access 1
1222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 4 37 Spring, 2014

Copyright 2014. All rights reserved.


Controlled Access Protocols

d Three principal forms

22222222222222222222222222222222222222222222222222222222222222222
1 Type 1 Description 1
21 2222222222222222222222222222222222222222222222222222222222222222
1 1
1 Polling 1 Centralized controller repeatedly polls stations 1
1 1 and allows each to transmit one packet 1
122222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 Reservation 1 Stations submit a request for the next round of 1
122222222222222222222222222222222222222222222222222222222222222222
1 data transmission 1
1 1 1
1 Token Passing 1 Stations circulate a token; each time it receives 1
1 1 the token, a station transmits one packet 1
122222222222222222222222222222222222222222222222222222222222222222
1 1

d All three have been used in practice

Computer Networks and Internets -- Module 4 38 Spring, 2014

Copyright 2014. All rights reserved.


Algorithm For Polled Access

22222222222222222222222222222222222222222222222222222222
1 1
1 Purpose: 1
1 1
Control transmission of packets through polling 1
1
1 Method: 1
1 1
1 Controller repeats forever { 1
1 Select a station, S, and send a polling message to S; 1
1 Wait for S to respond by sending a packet or passing; 1
1 1
}
1 1
21 22222222222222222222222222222222222222222222222222222221

Computer Networks and Internets -- Module 4 39 Spring, 2014

Copyright 2014. All rights reserved.


Algorithm For Reservation-Based Access

d Often used with satellite systems


d Stations inform a controller if they have data to send
22222222222222222222222222222222222222222222222222222222
1 1
1 Purpose: 1
1 Control transmission of packets through reservation 1
1 1
1 Method: 1
1 1
1 Controller repeats forever {
1
1 Form a list of stations that have a packet to send; 1
1 Allow each station on the list to transmit; 1
1 1
1 }
1
1222222222222222222222222222222222222222222222222222222221

Computer Networks and Internets -- Module 4 40 Spring, 2014

Copyright 2014. All rights reserved.


Algorithm For Token Passing Access

d Special packet known as a token passed among senders


d Station sends one packet each time token arrives
22222222222222222222222222222222222222222222222222222222
1 1
1 Purpose: 1
1 1
Control transmission of packets through token passing 1
1
1 Method: 1
1 1
Each computer on the network repeats { 1
1
1 Wait for the token to arrive; 1
1 Transmit a packet if one is waiting to be sent; 1
1 Send the token to the next station; 1
1 1
} 1
1
21 22222222222222222222222222222222222222222222222222222221

Computer Networks and Internets -- Module 4 41 Spring, 2014

Copyright 2014. All rights reserved.


Example Random Access Protocols

22222222222222222222222222222222222222222222222222222222222222222222
1 Type 1 Description 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 ALOHA 1 Historic protocol used in an early radio network in 1
1 1 Hawaii; popular in textbooks and easy to analyze, 1
1 1 1
but not used in real
122222222222222222222222222222222222222222222222222222222222222222222
1 networks 1
1 1 1
1 CSMA / CD 1 Carrier Sense Multi-Access with Collision Detection 1
1 1 The basis for the original Ethernet, and the most widely 1
1 1 used random access protocol 1
122222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 CSMA / CA 1 Carrier Sense Multi-Access with Collision Avoidance 1
1122222222222222222222222222222222222222222222222222222222222222222222
11 The basis for Wi-Fi wireless networks 11

Computer Networks and Internets -- Module 4 42 Spring, 2014

Copyright 2014. All rights reserved.


Aloha

d Used in early network in Hawaii (ALOHAnet)


d Two carrier frequencies, inbound and outbound
d Central transmitter rebroadcast each incoming packet

outbound frequency

inbound frequency
central
transmitter
outlying station

d If inbound packets collide, each sender waits a random time


and retransmits
d Channel utilization under 20%
Computer Networks and Internets -- Module 4 43 Spring, 2014

Copyright 2014. All rights reserved.


CSMA / CD

d Used in original Ethernet (1973)


d Provides access to shared medium
d Principle features
Carrier Sense (CS)
Multiple Access (MA)
Collision Detection (CD)
d Uses binary exponential backoff

Computer Networks and Internets -- Module 4 44 Spring, 2014

Copyright 2014. All rights reserved.


CSMA / CD Algorithm
22222222222222222222222222222222222222222222222222222222
1 11
1 Method: 1
1 1
1 When a packet is ready, perform CS (wait for access); 1
1 Delay for the interpacket gap; 1
1 1
1 Set variable x to the standard backoff range, d ;
1
1 Attempt to transmit the packet and perform CD; 1
1 1
1 While (collision occurred during transmission) {
1
1 Choose q to be a random delay between 0 and x ; 1
1 1
1 Delay for q microseconds;
1
1 Double x in case needed for the next round; 1
1 Attempt to retransmit the packet and perform CD; 1
1 1
1 } 1
121 22222222222222222222222222222222222222222222222222222221
Computer Networks and Internets -- Module 4 45 Spring, 2014

Copyright 2014. All rights reserved.


CSMA / CA

d Alternative to CSMA / CD
d Used in wireless networks (Wi-Fi)
d Needed because signals have limited distance,
d Example: computer 1 cannot receive transmission when
computers 2 and 3 communicate

computer 1 computer 2 computer 3

d All computers in range of computers 2 and 3 must be


informed that a transmission will occur

Computer Networks and Internets -- Module 4 46 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of CSMA / CA

1: ready to send (RTS)

2: clear to send (CTS) 2: clear to send (CTS)

3: packet transmission

computer 1 computer 2 computer 3

d Communicating pair exchange RTS and CTS before packet


transmission
d Any computer less than away from either computer 2 or 3
hears at least one of the RTS / CTS messages

Computer Networks and Internets -- Module 4 47 Spring, 2014

Copyright 2014. All rights reserved.


Wired LAN technologies
(Ethernet and 802.3)
Wired LAN Technologies

Computer Networks and Internets -- Module 4 49 Spring, 2014

Copyright 2014. All rights reserved.


Wired LAN Technologies

d Explosion of technologies and products during 1980s

Computer Networks and Internets -- Module 4 49 Spring, 2014

Copyright 2014. All rights reserved.


Wired LAN Technologies

d Explosion of technologies and products during 1980s


d Consolidation during the 1990s

Computer Networks and Internets -- Module 4 49 Spring, 2014

Copyright 2014. All rights reserved.


Wired LAN Technologies

d Explosion of technologies and products during 1980s


d Consolidation during the 1990s
d Currently: one de facto wired LAN standard

Ethernet

Computer Networks and Internets -- Module 4 49 Spring, 2014

Copyright 2014. All rights reserved.


Ethernet Technology

d Invented at Xerox PARC in 1973


d Standardized by Digital, Intel, and Xerox (DIX) in 1978
d Frame has a 14-byte header followed by payload of 46 to
1500 bytes
d Frame format and addressing have survived virtually
unchanged

header 46 - 1500 bytes of payload

4-byte CRC

6-byte 6-byte 2-byte


destination address source address type header details

Computer Networks and Internets -- Module 4 50 Spring, 2014

Copyright 2014. All rights reserved.


Ethernet Address Filtering

d Recall: station accepts a copy of the frame if destination


address matches
The stations unicast address
The broadcast address (all 1s)
A multicast address to which station is listening
d Other frames are ignored
d Promiscuous mode allows a station to receive all frames
regardless of address
Basis of protocol analyzer software such as Wireshark

Computer Networks and Internets -- Module 4 51 Spring, 2014

Copyright 2014. All rights reserved.


Question

If one is looking at the bits of an Ethernet frame as the frame is


transmitted across a wire, which bit specifies whether the frame
has been sent to a unicast destination address? Hint: look at the
48-bit MAC address format, the Ethernet header format and the
byte and bit ordering (Module 2).

Computer Networks and Internets -- Module 4 52 Spring, 2014

Copyright 2014. All rights reserved.


Frame Type Field

d 2-octet field in frame header


d Set by sender to identify contents of frame
d Used by receiver to determine how to process the frame
d Values are standardized
d Examples:
Type 0x0800 used for IPv4 datagram
Type 0x86DD used for IPv6 datagram
Type 0x0806 used for ARP

Computer Networks and Internets -- Module 4 52 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Frame Demultiplexing

IPv4 IPv6
module module

0800 86DD

frame
demultiplexing arrives

d Performed when frame arrives


d Usually handled by protocol software
d Frame type field examined and frame passed to appropriate
protocol module; unrecognized types are discarded
Computer Networks and Internets -- Module 4 53 Spring, 2014

Copyright 2014. All rights reserved.


IEEEs Version Of Ethernet

d Standardized in 1983 as IEEE standard 802.3


d Not widely adopted
d Header type field reinterpreted as a frame length
d Eight bytes of payload occupied by LLC / SNAP header

header new 46 - 1492 bytes of payload


hdr.

4-byte CRC

IEEE LLC / SNAP Header

48-bit destination 48-bit source 16-bit 24-bit 24-bit 16-bit


address address length LLC OUI type

Computer Networks and Internets -- Module 4 54 Spring, 2014

Copyright 2014. All rights reserved.


Ethernet Wiring

d Evolved through three generations


Thicknet
Thinnet
Twisted pair
d Illustrate a range of possible network wiring schemes

Computer Networks and Internets -- Module 4 55 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Thicknet Wiring

terminator
transceiver thick Ethernet cable

AUI cable

computer with NIC

d Heavy coaxial cable typically in the ceiling


d Each computer attached to the cable

Computer Networks and Internets -- Module 4 56 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Thinnet Wiring

computer with NIC


Thinnet cable
terminator

d Flexible coaxial cable


d Connections run point-to-point among computers
d Disadvantage: user can disconnect the network

Computer Networks and Internets -- Module 4 57 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Twisted Pair Ethernet Wiring

twisted pair wiring

computer with NIC

hub

d Unshielded or shielded twisted pairs using RJ45 connectors


d Multiple pairs allows full-duplex operation
d Each computer connects to central hub
d Topology is physical star, but logical bus
d Hub is known as bus in a box
Computer Networks and Internets -- Module 4 58 Spring, 2014

Copyright 2014. All rights reserved.


Evolution Of Twisted Pair Ethernet Technologies

d Several variants of twisted pair Ethernet have been created


d Variants differ in data rate and wiring required

22222222222222222222222222222222222222222222222222222222
1 Designation 1 Name 1 Data Rate 1 Cable Used 1
21 2222222222222222222222222222222222222222222222222222222
1 1 1 1
1 1 Twisted Pair 1 1 1
1 10BaseT 1 Ethernet 1 10 Mbps 1 Category 5 1
122222222222222222222222222222222222222222222222222222222
1 1 1 1
1 1 1 1 1
1 100BaseT 1 Fast 1 100 Mbps 1 Category 5E 1
122222222222222222222222222222222222222222222222222222222
1 Ethernet 1 1 1
1 1 1 1 1
1 1 Gigabit 1 1 1
1 1000BaseT 1 Ethernet 1 1 Gbps 1 Category 6 1
122222222222222222222222222222222222222222222222222222222
1 1 1 1

Computer Networks and Internets -- Module 4 59 Spring, 2014

Copyright 2014. All rights reserved.


Wireless Networking
Technologies
Wireless Networks

d Many types exist


d Technologies differ in
Distance spanned
Data rates
Physical characteristics of electromagnetic energy
* Ability to permeate obstructions like walls
* Susceptibility to interference
Isolated channel vs. shared channel

Computer Networks and Internets -- Module 4 61 Spring, 2014

Copyright 2014. All rights reserved.


A Taxonomy Of Wireless Networks

d We use a basic taxonomy to help classify wireless


technologies

Wireless Networks

Local Area Metropolitan Area Wide Area Personal Area


Networks (LANs) Networks (MANs) Networks (WANs) Networks (PANs)

d Note: the terminology is qualitative because some


technologies span multiple categories

Computer Networks and Internets -- Module 4 62 Spring, 2014

Copyright 2014. All rights reserved.


Personal Area Network (PAN)

d Terminology used primarily with wireless networks


d Spans short distance
d Dedicated to a single user (not shared)

Computer Networks and Internets -- Module 4 63 Spring, 2014

Copyright 2014. All rights reserved.


Personal Area Network (PAN)

d Terminology used primarily with wireless networks


d Spans short distance
d Dedicated to a single user (not shared)
d Example PAN technologies
222222222222222222222222222222222222222222222222222222222222222222222
1 Type 1 Purpose 1
21 22222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 Communication over a short distance between a 1
1 Bluetooth 1 small peripheral device such as a headset or mouse 1
1 1 1
and a system such
1222222222222222222222222222222222222222222222222222222222222222222222
1 as a cell phone or a computer 1
1 1 1
1 1 Line-of-sight communication between a small device, 1
1 InfraRed 1 often a hand-held controller, and a nearby system such 1
1 1 as a computer or entertainment center 1
1222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 1 Communication over distances about as large as a 1
1 ZigBee 1 residence, which allows electrical appliances to connect 1
1 1 to the Smart Grid 1
1222222222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 4 63 Spring, 2014

Copyright 2014. All rights reserved.


ISM Wireless Bands

d ISM stands for Industrial, Scientific, and Medical


d Region of the electromagnetic spectrum available for use
without license
d Used for wireless LANs and PANs (e.g., cordless phones)
d Three separate bands
83.6 MHz
26 MHz bandwidth 125 MHz
bandwidth bandwidth

902 928 2.4 2.484 5.725 5.850


MHz MHz GHz GHz GHz GHz

Unlicensed does not mean unregulated.


Computer Networks and Internets -- Module 4 64 Spring, 2014

Copyright 2014. All rights reserved.


Wireless LANs And Wi-Fi
d Variety of wireless LANs have been created
d Vendors moved to open standards in 1990s, with IEEE
providing most of the standards under 802.11
d In 1999, vendors formed Wi-Fi Alliance

Computer Networks and Internets -- Module 4 65 Spring, 2014

Copyright 2014. All rights reserved.


Wireless LANs And Wi-Fi
d Variety of wireless LANs have been created
d Vendors moved to open standards in 1990s, with IEEE
providing most of the standards under 802.11
d In 1999, vendors formed Wi-Fi Alliance
d Example IEEE wireless standards
22222222222222222222222222222222222222222222222222222222222222222222222
1 IEEE 1 Frequency 1 Data 1 Modulation 1 Multiplexing 1
1 1 1 1 1 1
Standard 1 Band
122222222222222222222222222222222222222222222222222222222222222222222222
1 Rate 1 Technique 1 Technique 1
1 1 2.4 GHz 1 1 or 2 Mbps 1 FSK 1 DSSS 1
1 1222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 original 1 1 1 1 1
2.4 GHz 1
1 802.11 1222222222222222222222222222222222222222222222222222222222222 1 or 2 Mbps 1 FSK 1 FHSS 1
1 1 1 1 1 1
InfraRed
122222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 or 2 Mbps 1 PPM 1 none 1
1 1 1 1 1 1
1 802.11b 1 2.4 GHz 1 5.5 and 11 Mbps 1 PSK 1 DSSS 1
22222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1
1 802.11g 1 2.4 GHz 1 22 and 54 Mbps 1 various 1 OFDM 1
22222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1
1 802.11n 1 2.4 GHz 1 54 to 600 Mbps 1 various 1 OFDM 1
122222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1

Computer Networks and Internets -- Module 4 65 Spring, 2014

Copyright 2014. All rights reserved.


Spread Spectrum Transmission

d Uses multiple frequencies for a single channel


d Can increase performance or provide immunity to noise

Computer Networks and Internets -- Module 4 66 Spring, 2014

Copyright 2014. All rights reserved.


Spread Spectrum Transmission

d Uses multiple frequencies for a single channel


d Can increase performance or provide immunity to noise
d Major spread spectrum techniques
2 222222222222222222222222222222222222222222222222222222222222222222
1 Name 1 Expansion 1 Description 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 Direct 1 Similar to CDMA where a sender multiplies 1
1 DSSS 1 Sequence 1 the outgoing data by a sequence to form 1
1 1 1 1
1 1 Spread 1 multiple frequencies and the receiver 1
1 1 Spectrum 1 multiplies by the same sequence to decode 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 Frequency 1 A sender uses a sequence of frequencies 1
1 FHSS 1 Hopping 1 to transmit data, and a receiver uses the 1
1 1 1 1
1 1 Spread 1 same sequence of frequencies to extract 1
1 1 Spectrum 1 data 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 Orthogonal 1 A frequency division multiplexing scheme 1
1 OFDM 1 Frequency 1 where the transmission band is divided 1
1 1 1 1
1 1 Division 1 into many carriers in such a way that 1
1 1 Multiplexing 1 the carriers do not interfere 1
12 222222222222222222222222222222222222222222222222222222222222222222
1 1 1

Computer Networks and Internets -- Module 4 66 Spring, 2014

Copyright 2014. All rights reserved.


More IEEE Wireless LAN Standards
2222222222222222222222222222222222222222222222222222222222222222222
1 Standard 1 Purpose 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 Improved quality of service, such as a guarantee of 1
1 802.11e 1 low jitter 1
12222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 802.11h 1 Like 802.11a, but adds control of spectrum and power 1
12222222222222222222222222222222222222222222222222222222222222222222
1 (primarily intended for use in Europe) 1
1 1 1
1 1 Enhanced security, including Advanced Encryption 1
1 802.11i 1 Standard; the full version is known as WPA2 1
12222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 Will provide radio resource management, including 1
1 802.11k 1 1
1 transmission power
12222222222222222222222222222222222222222222222222222222222222222222 1
1 1 1
1 1 Data rate over 100 Mbps to handle multimedia (video) 1
1 802.11n 1 applications (may be 500 Mbps) 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 Dedicated Short-Range Communication (DSRC) among 1
1 802.11p 1 1
vehicles on a highway and vehicle-to-roadside
21 222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 802.11r 1 Improved ability to roam among access points without 1
1 1 losing connectivity 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 Proposed for a mesh network in which a set of nodes 1
1 802.11s 1 automatically form a network and pass packets 1
12222222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 4 67 Spring, 2014

Copyright 2014. All rights reserved.


Wireless LAN Architecture

d IEEE defines two possible modes for wireless LAN


communication

Computer Networks and Internets -- Module 4 68 Spring, 2014

Copyright 2014. All rights reserved.


Wireless LAN Architecture

d IEEE defines two possible modes for wireless LAN


communication
d Infrastructure mode
Wireless devices communicate through an access point
(AP)
APs connect to each other and (usually) the Internet
Typical uses: corporate wireless LAN, Internet cafe

Computer Networks and Internets -- Module 4 68 Spring, 2014

Copyright 2014. All rights reserved.


Wireless LAN Architecture

d IEEE defines two possible modes for wireless LAN


communication
d Infrastructure mode
Wireless devices communicate through an access point
(AP)
APs connect to each other and (usually) the Internet
Typical uses: corporate wireless LAN, Internet cafe
d Ad hoc mode
Direct communication among wireless devices
Forwarding possible
Seldom used

Computer Networks and Internets -- Module 4 68 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Infrastructure Mode Wireless LAN

d Basic Service Set (BSS) for an AP is defined as set of devices


that can hear the AP
d APs interconnect through wired network
range of
interconnect such as a switch access point

wireless access point


computer

AP AP AP

BSS #1 BSS #2 BSS #3

Computer Networks and Internets -- Module 4 69 Spring, 2014

Copyright 2014. All rights reserved.


Practical Considerations And Association

d In practice BSSs can overlap (given wireless device can hear


more than one AP)
switch
router
to Internet

computer
in range
of two APs

AP AP AP

BSS #1 BSS #2 BSS #3

d To solve the problem each device associates with one AP at


any time

Computer Networks and Internets -- Module 4 70 Spring, 2014

Copyright 2014. All rights reserved.


Practical Considerations: Wi-Fi Channels

Computer Networks and Internets -- Module 4 71 Spring, 2014

Copyright 2014. All rights reserved.


Practical Considerations: Wi-Fi Channels

d 11 channels defined for North America in 2.4 GHz range

Computer Networks and Internets -- Module 4 71 Spring, 2014

Copyright 2014. All rights reserved.


Practical Considerations: Wi-Fi Channels

d 11 channels defined for North America in 2.4 GHz range


d Bad news: 22 MHz bandwidth means channels overlap

1: 2.412 3: 2.422 5: 2.432 7: 2.442 9: 2.452 11: 2.462


2: 2.417 4: 2.427 6: 2.437 8: 2.447 10: 2.457

22 MHz

Computer Networks and Internets -- Module 4 71 Spring, 2014

Copyright 2014. All rights reserved.


Practical Considerations: Wi-Fi Channels

d 11 channels defined for North America in 2.4 GHz range


d Bad news: 22 MHz bandwidth means channels overlap

1: 2.412 3: 2.422 5: 2.432 7: 2.442 9: 2.452 11: 2.462


2: 2.417 4: 2.427 6: 2.437 8: 2.447 10: 2.457

22 MHz

d Good news: channels 1, 6, and 11 can operate simultaneously


with no interference

Computer Networks and Internets -- Module 4 71 Spring, 2014

Copyright 2014. All rights reserved.


Addresses In 802.11 Frame Format

d 802.11 frame is not the same as an Ethernet frame


d Each 802.11 frame includes four MAC addresses
Source (e.g., wireless device)
Destination AP (associated AP)
Router along the path to the Internet
Extra address for ad hoc mode

CTL DUR Address 1 Address 2 Address 3 SEQ Address 4 Payload CRC


(destination) (source) (dest. 2) (0 to 2312 bytes)

AP or wireless senders routers used in


computers MAC MAC address MAC address ad hoc mode

Computer Networks and Internets -- Module 4 72 Spring, 2014

Copyright 2014. All rights reserved.


Coordination Among Access Points

d Coordinated approach
Initial design
Similar to cellular telephone
APs communicate to achieve smooth handoff
d Uncoordinated approach
Later alternative
APs do not communicate
Wireless device changes association when communication
with an AP lost
Lower overall cost

Computer Networks and Internets -- Module 4 73 Spring, 2014

Copyright 2014. All rights reserved.


CSMA/ CA Protocol (Review)

d Alternative to CSMA/CD used in wireless LANs


d Allows stations within range of communicating pair to know
when communication starts
d Requires exchange of Ready-To-Send (RTS) and Clear-To-
Send (CTS) messages
d Delay associated with each message to ensure protocol is
efficient and correct

Computer Networks and Internets -- Module 4 74 Spring, 2014

Copyright 2014. All rights reserved.


CSMA/ CA Protocol Details
d SIFS Short Inter-Frame Space of 10 sec
d DIFS Distributed Inter-Frame Space of 50 sec
d Slot Time of 20 sec

DIFS
RTS

SIFS
CTS

SIFS
data

SIFS
ACK

time time

Computer Networks and Internets -- Module 4 75 Spring, 2014

Copyright 2014. All rights reserved.


Wireless MAN Technology (WiMax)

d WiMax standard, IEEE 802.16, provides two types


Fixed (802.16-2004) endpoint does not move
Mobile (802.16e-2005) endpoint moves
d Uses 22222222222222222222222222222222222222222222222222222
1 1
1 Access 1
1 1
1 Last-mile alternative to DSL or cable modems 1
1 High-speed interconnection for nomadic users 1
1 1
1 Unified data and telecommunications access 1
1 1
As a backup for a sites Internet connection
122222222222222222222222222222222222222222222222222222 1
1 1
1 Interconnect 1
1 1
1 Backhaul from Wi-Fi access points to a provider 1
1 1
1 Private connections among sites of a company 1
1 Connection between small and large ISPs 1
1222222222222222222222222222222222222222222222222222221

Computer Networks and Internets -- Module 4 76 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of WiMax Uses

d Fixed type of WiMax used for high-capacity backhaul


requires Line-Of-Sight (LOS)

service
provider

NLOS access

LOS
backhaul wired connection

Wi-Fi region

Computer Networks and Internets -- Module 4 77 Spring, 2014

Copyright 2014. All rights reserved.


Standards For Wireless PANs

d Used in industrial as well as consumer products


d Remote control protocols optimized for short commands
(do not need high data rate)

2 22222222222222222222222222222222222222222222222222222222222222222222
1 Standard 1 Purpose 1
21 22222222222222222222222222222222222222222222222222222222222222222222
1 1
1 802.15.1a 1 Bluetooth technology (1 Mbps; 2.4 GHz) 1
21 22222222222222222222222222222222222222222222222222222222222222222222
1 1
1 802.15.2 1 Coexistence among PANs (noninterference) 1
21 22222222222222222222222222222222222222222222222222222222222222222222
1 1
1 802.15.3 1 High rate PAN (55 Mbps; 2.4 GHz) 1
12 22222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
802.15.3a Ultra Wideband (UWB) high rate PAN
12 22222222222222222222222222222222222222222222222222222222222222222222
1 (110 Mbps; 2.4 GHz) 1
1 1 1
12 22222222222222222222222222222222222222222222222222222222222222222222
802.15.4 1 ZigBee technology low data rate PAN for remote control 1
1 1 1
1 802.15.4a 1 Alternative low data rate PAN that uses low power 1
12 22222222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 4 78 Spring, 2014

Copyright 2014. All rights reserved.


Other Short-Distance Wireless Technologies

Computer Networks and Internets -- Module 4 79 Spring, 2014

Copyright 2014. All rights reserved.


Other Short-Distance Wireless Technologies

d Infrared Data Association (IrDA)


Family of standards (data rate of 2.4 Kbps to 16 Mbps)
Range of several meters
Directional transmission with cone covering 30 degrees
Generally low power consumption

Computer Networks and Internets -- Module 4 79 Spring, 2014

Copyright 2014. All rights reserved.


Other Short-Distance Wireless Technologies

d Infrared Data Association (IrDA)


Family of standards (data rate of 2.4 Kbps to 16 Mbps)
Range of several meters
Directional transmission with cone covering 30 degrees
Generally low power consumption
d Radio Frequency IDentification (RFID) tags
Over 140 RFID standards exist
Passive RFID tags draw power from readers signal
Active RFID tags contain a multi-year battery
Frequencies from less than 100 MHz to 868-954 MHz

Computer Networks and Internets -- Module 4 79 Spring, 2014

Copyright 2014. All rights reserved.


Wireless WAN Technologies

d Cellular communication systems


d Satellite communication systems

Computer Networks and Internets -- Module 4 80 Spring, 2014

Copyright 2014. All rights reserved.


Cellular Telephones And Data Networking

d There are more cell phones in the world than computers

d The smart phone is now the network interface of choice in


emerging countries

d Cell phone providers have switched to the Internet protocols

Computer Networks and Internets -- Module 4 81 Spring, 2014

Copyright 2014. All rights reserved.


Cellular Telephones And Data Networking

d There are more cell phones in the world than computers

d The smart phone is now the network interface of choice in


all emerging countries
d Cell phone providers have switched to the Internet protocols

Computer Networks and Internets -- Module 4 81 Spring, 2014

Copyright 2014. All rights reserved.


Current Cellular System Architecture

d Cell has a tower that connects to mobile switching system


d Each mobile switching system connects to PSTN or Internet

Public Switched Telephone Network plus a connection to the Internet

Mobile
Switching
Centers cell
wired connection

... ...

d Handoff decision made by infrastructure

Computer Networks and Internets -- Module 4 81 Spring, 2014

Copyright 2014. All rights reserved.


Theoretical And Actual Cells

theoretical

Computer Networks and Internets -- Module 4 82 Spring, 2014

Copyright 2014. All rights reserved.


Theoretical And Actual Cells

theoretical actual

d Problems include: overlap and gaps

Computer Networks and Internets -- Module 4 82 Spring, 2014

Copyright 2014. All rights reserved.


Cell Size And Expected Cell Phone Density

d Textbook diagrams show equal-size cells


d In practice, cell size related to expected number of cell
phones
d Smaller cells used in high-population areas
d Larger cells used in rural areas

Computer Networks and Internets -- Module 4 83 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Assignment

Computer Networks and Internets -- Module 4 84 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Assignment

d Goal: minimize interference

Computer Networks and Internets -- Module 4 84 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Assignment

d Goal: minimize interference


d Principle

Interference can be minimized if an adjacent pair of cells do not


use the same frequency.

Computer Networks and Internets -- Module 4 84 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Assignment

d Goal: minimize interference


d Principle

Interference can be minimized if an adjacent pair of cells do not


use the same frequency.

d Method: devise an assignment of frequencies such that two


adjacent cells are not assigned the same frequency

Computer Networks and Internets -- Module 4 84 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Assignment

d Goal: minimize interference


d Principle

Interference can be minimized if an adjacent pair of cells do not


use the same frequency.

d Method: devise an assignment of frequencies such that two


adjacent cells are not assigned the same frequency
d Technique: create a pattern that can be repeated

Computer Networks and Internets -- Module 4 84 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Assignment

d Goal: minimize interference


d Principle

Interference can be minimized if an adjacent pair of cells do not


use the same frequency.

d Method: devise an assignment of frequencies such that two


adjacent cells are not assigned the same frequency
d Technique: create a pattern that can be repeated
d Known as a cluster approach

Computer Networks and Internets -- Module 4 84 Spring, 2014

Copyright 2014. All rights reserved.


Example Clusters That Are Used

3-cell 4-cell 7-cell 12-cell

d Each cell in cluster assigned a unique frequency


d When replicated, clusters cover 2-dimensional surface
d Mathematically, the concept is tiling the plane

Computer Networks and Internets -- Module 4 85 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Cluster Replication

A
A F B
A F B G
F B G E C
G E C D
E C D A
D A F B
A F B G
F B G E C
G E C D
E C D A
D A F B
A F B G
F B G E C
G E C D
E C D
D

d No pair of adjacent cells assigned the same frequency

Computer Networks and Internets -- Module 4 86 Spring, 2014

Copyright 2014. All rights reserved.


Four Generations Of Cellular Networks

d 1G used analog (1970s - 1980s)


d 2G and 2.5G use digital signals for voice (1990s-)
d 3G and 3.5G also include data transfer at rates of 400 Kbps
through 2 Mbps (2000s-)
d 4G offers higher data rates and support for real-time
multimedia such as television (2008-)

Computer Networks and Internets -- Module 4 87 Spring, 2014

Copyright 2014. All rights reserved.


Cellular Technologies

d Many competing standards


d European Conference Of Postal and Telecommunications
Administrators chose a TDMA technology known as Global
System for Mobile Communications (GSM) for Europe
d In US, each carrier created its own standards
Motorola created iDEN using TDMA
Others adopted IS-95A, which uses CDMA
d Japan chose PDC, which uses TDMA

Computer Networks and Internets -- Module 4 88 Spring, 2014

Copyright 2014. All rights reserved.


Summary Of 2G Wireless Standards
22222222222222222222222222222222222222222222
1 Approach 1 Standard 1 Generation 1
21 2222222222222222222222222222222222222222222 1 1 1
1 1 GSM 1 2G 1
1 1 22222222222222222222222222222222
1 1
1 1 GPRS 1 2.5G 1
1 1 22222222222222222222222222222222
1 1
1 GSM 1 EDGE (EGPRS) 1 2.5G 1
1 122222222222222222222222222222222 1 1
1 1 1 1
1 EDGE Evolution
122222222222222222222222222222222 1 2.5G 1
1 1 1 1
122222222222222222222222222222222222222222222 1 HSCSD 1 2.5G 1
1 1 1 1
1 1 IS-95A 1 2G 1
1 CDMA 122222222222222222222222222222222 1 1
1 1 IS-95B 1 2.5G 1
21 22222222222222222222222222222222222222222221 1 1
1 1 iDEN 1 2G 1
1 TDMA 122222222222222222222222222222222 1 1
1 1 IS-136 1 2G 1
1 122222222222222222222222222222222 1 1
1 1 1 1
11 PDC
1122222222222222222222222222222222222222222222 11 2G 11

d Note: 2.5G standards extend 2G standards by adding some


features of 3G
Computer Networks and Internets -- Module 4 89 Spring, 2014

Copyright 2014. All rights reserved.


Third Generation Standards

d 2G standards were consolidated and extended:


222222222222222222222222222222222222222222222222222222
1 Approach 1 Standard 1 Successor To 1
222222222222222222222222222222222222222222222222222222
1 1 1 1
1 1 UMTS 1 IS-136, IS-95A, EDGE, PDC 1
1 WCDMA 12222222222221 1
1 1 HSDPA 1 UMTS 1
222222222222222222222222222222222222222222222222222222
1 1 1 1
1 1 1xRTT 1 IS-95B 1
1 12222222222222222222222222222222222222222
1 1
1 1 1 1
1 CDMA 2000 EVDO 1xRTT
12222222222222222222222222222222222222222
1 1
1 1 1 1
1 1 EVDV 1 1xRTT 1
1222222222222222222222222222222222222222222222222222222
1 1 1

d EVDO and EVDV data transfer standards evolved at


approximately the same time to deliver data at 2.4 Mbps or
3.1 Mbps
d HSDPA can achieve 14 Mbps

Computer Networks and Internets -- Module 4 90 Spring, 2014

Copyright 2014. All rights reserved.


Fourth Generation Standards

d Initially, the ITU insisted on high performance before using


the term 4G
d Eventually, the ITU allowed intermediate technologies to be
advertised as 4G
2222222222222222222222222222222222222222222222222222222222222222
1 Classification 1 Standard 1
2222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 Can be advertised as 4G 1 HSPA+, HTC Evo 4G, LTE, WiMAX 1
2222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 Adheres to IMT-Advanced 1 LTE Advanced, WiMAX Advanced 1
112222222222222222222222222222222222222222222222222222222222222222
11 11

Computer Networks and Internets -- Module 4 91 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Satellite Types

d Low Earth Orbit (LEO)


Appears to move across the sky
Requires a cluster of 66 satellites to cover the earth
surface
d Medium Earth Orbit (MEO)
Covers the poles
Seldom used for general communication
d Geostationary Earth Orbit (GEO)
Appears to remain stationary in the sky
Requires only three satellites to cover the earths surface

Computer Networks and Internets -- Module 4 92 Spring, 2014

Copyright 2014. All rights reserved.


GEO Coverage Of The Earths surface
d In the best case, only three satellites needed

EARTH

satellite
coverage
(footprint)

satellites

d Surface area covered known as footprint


d Ratio of distance to earths diameter approximately to scale

Computer Networks and Internets -- Module 4 93 Spring, 2014

Copyright 2014. All rights reserved.


VSAT Satellite Technology

d Stands for Very Small Aperture Terminal


d Parabolic antenna focuses incoming signal
incoming energy
cross section
of dish antenna

receiver

d Example use: connect a companys retail stores

Computer Networks and Internets -- Module 4 94 Spring, 2014

Copyright 2014. All rights reserved.


Frequency Bands Used With VSAT Technology

d Multiple bands available


d Each band has disadvantages
222222222222222222222222222222222222222222222222222222222222222222222
1 Band 1 Frequency 1 Footprint 1 Signal Strength 1 Effect Of Rain 1
222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1
1 C Band 1 3 - 7 GHz 1 Large 1 Low 1 Medium 1
222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1
1 Ku 1 10 - 18 GHz 1 Medium 1 Medium 1 Moderate 1
1222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 Ka 1 18 - 31 GHz 1 Small 1 High 1 Severe 1
1222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1

Computer Networks and Internets -- Module 4 95 Spring, 2014

Copyright 2014. All rights reserved.


Global Positioning System (GPS)

Computer Networks and Internets -- Module 4 96 Spring, 2014

Copyright 2014. All rights reserved.


Global Positioning System (GPS)

d 24 satellites

Computer Networks and Internets -- Module 4 96 Spring, 2014

Copyright 2014. All rights reserved.


Global Positioning System (GPS)

d 24 satellites
d Arranged in 6 orbital planes

Computer Networks and Internets -- Module 4 96 Spring, 2014

Copyright 2014. All rights reserved.


Global Positioning System (GPS)

d 24 satellites
d Arranged in 6 orbital planes
d Civilian version has accuracy between 20 and 2 meters

Computer Networks and Internets -- Module 4 96 Spring, 2014

Copyright 2014. All rights reserved.


Global Positioning System (GPS)

d 24 satellites
d Arranged in 6 orbital planes
d Civilian version has accuracy between 20 and 2 meters
d Relevance to data networking

Computer Networks and Internets -- Module 4 96 Spring, 2014

Copyright 2014. All rights reserved.


Global Positioning System (GPS)

d 24 satellites
d Arranged in 6 orbital planes
d Civilian version has accuracy between 20 and 2 meters
d Relevance to data networking
Provides accurate time
Can be used to synchronize remote points in a data
network (needed by some protocols)

Computer Networks and Internets -- Module 4 96 Spring, 2014

Copyright 2014. All rights reserved.


Software Defined Radio

d Also known as a software programmable radio


d New approach emerging from research
d Exciting possibilities
d Replaces fixed radio components with mechanism that can be
controlled by a programmable processor
d Can make better use of spectrum
d Potential downside: user might choose parameters that
interfere with police or emergency vehicles

Computer Networks and Internets -- Module 4 97 Spring, 2014

Copyright 2014. All rights reserved.


Features Controlled In A Software Radio
22222222222222222222222222222222222222222222222222222222222222222222222
1 Feature 1 Description 1
21 2222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Frequency 1 The exact set of frequencies used at a given time 1
21 2222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Power 1 The amount of power the transmitter emits 1
122222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Modulation 1 The signal and channel coding and modulation 1
21 2222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
Multiplexing Any combination of
122222222222222222222222222222222222222222222222222222222222222222222222
1 CDMA, TDMA, FDMA and others 1
1 1 1
122222222222222222222222222222222222222222222222222222222222222222222222
Signal Direction 1 Antennas can be tuned for a specific direction 1
1 1 1
1 MAC Protocol 1 All aspects of framing and MAC addressing 1
122222222222222222222222222222222222222222222222222222222222222222222222
1 1

d Enabling technologies
Tunable analog filters to select frequencies and control
power
Multiple antenna management to select direction

Computer Networks and Internets -- Module 4 98 Spring, 2014

Copyright 2014. All rights reserved.


Multiple Antenna Management

d Needed because
No single antenna handles all frequencies
Directional signals important in focusing communication
d Multiple-Input Multiple-Output (MIMO) technology can aim
transmission or reception

Computer Networks and Internets -- Module 4 99 Spring, 2014

Copyright 2014. All rights reserved.


LAN Extensions
Network Design Tradeoffs

Computer Networks and Internets -- Module 4 101 Spring, 2014

Copyright 2014. All rights reserved.


Network Design Tradeoffs

d Network technology engineered for


Distance spanned
Maximum data rate
Cost

Computer Networks and Internets -- Module 4 101 Spring, 2014

Copyright 2014. All rights reserved.


Network Design Tradeoffs

d Network technology engineered for


Distance spanned
Maximum data rate
Cost
d LAN technologies maximize data rate and minimize cost

Computer Networks and Internets -- Module 4 101 Spring, 2014

Copyright 2014. All rights reserved.


Network Design Tradeoffs

d Network technology engineered for


Distance spanned
Maximum data rate
Cost
d LAN technologies maximize data rate and minimize cost
d General principle

A maximum length specification is a fundamental part of LAN


technology; LAN hardware will not work correctly over wires
that exceed the bound.

Computer Networks and Internets -- Module 4 101 Spring, 2014

Copyright 2014. All rights reserved.


Technologies That Extend LANs

d Variety of techniques have been invented to extend LANs


d Three key extension technologies
Fiber modems
Repeaters
Bridges

Computer Networks and Internets -- Module 4 102 Spring, 2014

Copyright 2014. All rights reserved.


Fiber Modems

d Communicate over an optical fiber


d Can span long distance
d Provide standard network interface (e.g., Ethernet)
d Can be used to extend connection between computer and
network
d Illustration of an extended network connection
connection
from computer optical fiber
Ethernet hub
or switch

fiber modem fiber modem

Computer Networks and Internets -- Module 4 103 Spring, 2014

Copyright 2014. All rights reserved.


Repeaters

d Operate at layer 1 (do not understand packets)


d Repeat and amplify signals
d Low cost
d Example use: extended infrared sensor on a cable box

connection to
cable box extended connection

remote
Cable box sensor
repeater

d Disadvantage: amplifies and repeats noise

Computer Networks and Internets -- Module 4 104 Spring, 2014

Copyright 2014. All rights reserved.


Switches and
Switched Networks
Bridge

d Originally sold as stand-alone device to extend two LAN


segments
d Operates at layer 2
d Can connect two or more segments
d Listens in promiscuous mode on each segment and sends
copy of each frame to other segments
d Does not copy noise, collisions, or frames that are incorrectly
formed
d Makes connected segments appear to be a single, large LAN
d Uses source MAC address in frames to learn computer
locations automatically, and uses destination MAC address to
filter frames
Computer Networks and Internets -- Module 4 106 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots
A sends to B A Both Segments

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots
A sends to B A Both Segments
B sends to A A, B Segment 1 only

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots
A sends to B A Both Segments
B sends to A A, B Segment 1 only
X broadcasts A, B X Both Segments

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots
A sends to B A Both Segments
B sends to A A, B Segment 1 only
X broadcasts A, B X Both Segments
Y sends to A A, B X, Y Both Segments

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots
A sends to B A Both Segments
B sends to A A, B Segment 1 only
X broadcasts A, B X Both Segments
Y sends to A A, B X, Y Both Segments
Y sends to X A, B X, Y Segment 2 only

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots
A sends to B A Both Segments
B sends to A A, B Segment 1 only
X broadcasts A, B X Both Segments
Y sends to A A, B X, Y Both Segments
Y sends to X A, B X, Y Segment 2 only
C sends to Z A, B, C X, Y Both Segments

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Bridge Learning
LAN segment
hub 1 hub 2
bridge

A B C X Y Z

Event Segment 1 Segment 2 Frame Sent


Bridge boots
A sends to B A Both Segments
B sends to A A, B Segment 1 only
X broadcasts A, B X Both Segments
Y sends to A A, B X, Y Both Segments
Y sends to X A, B X, Y Segment 2 only
C sends to Z A, B, C X, Y Both Segments
Z sends to X A, B, C X, Y, Z Segment 2 only

Computer Networks and Internets -- Module 4 107 Spring, 2014

Copyright 2014. All rights reserved.


General Principle

Because a bridge permits simultaneous activity on attached


segments, a pair of computers on one segment can communicate
at the same time as a pair of computers on another segment.

d Each segment forms a separate collision domain

Computer Networks and Internets -- Module 4 108 Spring, 2014

Copyright 2014. All rights reserved.


A Problem With Bridges

Computer Networks and Internets -- Module 4 109 Spring, 2014

Copyright 2014. All rights reserved.


A Problem With Bridges

d A bridge always forwards broadcast and multicast frames

Computer Networks and Internets -- Module 4 109 Spring, 2014

Copyright 2014. All rights reserved.


A Problem With Bridges

d A bridge always forwards broadcast and multicast frames


d Consider four bridges used to connect four LAN segments in
a loop
hub 1 hub 2 hub 3 hub 4

Bridge 1 Bridge 2 Bridge 3

Bridge 4

Computer Networks and Internets -- Module 4 109 Spring, 2014

Copyright 2014. All rights reserved.


A Problem With Bridges

d A bridge always forwards broadcast and multicast frames


d Consider four bridges used to connect four LAN segments in
a loop
hub 1 hub 2 hub 3 hub 4

Bridge 1 Bridge 2 Bridge 3

Bridge 4

d What happens if a computer attached to one of the segments


sends a broadcast frame?

Computer Networks and Internets -- Module 4 109 Spring, 2014

Copyright 2014. All rights reserved.


A Problem With Bridges

d A bridge always forwards broadcast and multicast frames


d Consider four bridges used to connect four LAN segments in
a loop
hub 1 hub 2 hub 3 hub 4

Bridge 1 Bridge 2 Bridge 3

Bridge 4

d What happens if a computer attached to one of the segments


sends a broadcast frame?
Copies of the frame cycle around the bridges forever!

Computer Networks and Internets -- Module 4 109 Spring, 2014

Copyright 2014. All rights reserved.


Distributed Spanning Tree

d Prevents a packet from circulating around a cycle of bridges


d Initial protocol developed by Perlman at Digital Equipment
Corporation
d Executed by each bridge when the bridge boots
d Allows bridges to break a forwarding cycle
d Name Spanning Tree Protocol (STP) applies to basic
protocol
d Many variants have been created with extended names

Computer Networks and Internets -- Module 4 110 Spring, 2014

Copyright 2014. All rights reserved.


How STP Works

d Executed at startup
d Distributed algorithm
Each bridge runs it independently
No central coordination
d Algorithm guaranteed to converge quickly
d No data packets forwarded until STP finishes

Computer Networks and Internets -- Module 4 111 Spring, 2014

Copyright 2014. All rights reserved.


Steps Taken By STP

d Bridges exchange a series of STP messages (frames) that are


used to
Elect a root bridge
Select a shortest path to the root
d Each bridge disables forwarding broadcast or multicast
except along the selected path
d Result is a tree

Computer Networks and Internets -- Module 4 112 Spring, 2014

Copyright 2014. All rights reserved.


Bridging Is Alive And Well

d Stand-alone bridge devices are seldom used


d Bridge technology is now incorporated into other devices
DSL modems
Cable modems
Wi-Fi repeaters
Satellite systems

Computer Networks and Internets -- Module 4 113 Spring, 2014

Copyright 2014. All rights reserved.


Switching
Layer 2 Switch

d Physically similar to a layer 2 hub


Network device
Connects multiple computers
Computers appear to be attached to a LAN segment
d Logically similar to a set of bridged networks
Switch understands packets, not just signals
No contention, and no need for CSMA / CD
Ports operate in parallel
Switch can include services that examine packets

Computer Networks and Internets -- Module 4 115 Spring, 2014

Copyright 2014. All rights reserved.


Logical Function Of A Switch

port on
computers the switch switch

simulated
bridge

simulated Ethernet segment

d Switch offers same advantage as bridged networks: multiple


transfers can occur simultaneously

Computer Networks and Internets -- Module 4 116 Spring, 2014

Copyright 2014. All rights reserved.


Actual Switch Architecture

interfaces
computers switch

fabric
(interconnect)

d Switching fabric used for high throughput

Computer Networks and Internets -- Module 4 117 Spring, 2014

Copyright 2014. All rights reserved.


Thought Problem

Suppose a computer is unplugged from a port on a Layer 2


switch and plugged into another port. Suppose the computer
does not send any packets. Will the computer continue to
receive unicast frames that are sent to it? Why or why not?

Computer Networks and Internets -- Module 4 118 Spring, 2014

Copyright 2014. All rights reserved.


Virtual Local Area Network (VLAN) Switch

d Physically
Similar to a conventional Layer 2 switch
Has ports to which computer can connect
d Logically
Manager can configure one or more broadcast domains
Each port assigned to one broadcast domain
d Frame sent to broadcast or multicast address only propagated
to ports in the same broadcast domain

Computer Networks and Internets -- Module 4 119 Spring, 2014

Copyright 2014. All rights reserved.


Networking Technologies:
Past And Present
A Wide Variety of Networking Technologies

Computer Networks and Internets -- Module 4 121 Spring, 2014

Copyright 2014. All rights reserved.


A Wide Variety of Networking Technologies

d LAN technologies
Token ring (esp., IBM Token Ring)
FDDI/ CDDI

Computer Networks and Internets -- Module 4 121 Spring, 2014

Copyright 2014. All rights reserved.


A Wide Variety of Networking Technologies

d LAN technologies
Token ring (esp., IBM Token Ring)
FDDI/ CDDI
d WAN technologies
X.25
Frame Relay
ATM
ISDN
MPLS
d See Chapter 19 for a longer list
Computer Networks and Internets -- Module 4 121 Spring, 2014

Copyright 2014. All rights reserved.


Asynchronous Transfer Mode (ATM)

d Created by phone companies in 1990s


d Intended as replacement for the Internet
d Paradigm was connection-oriented
d Used small cells (53 octets)
d Network guaranteed per-connection Quality of Service (QoS)
Throughput
Bound on delay
Bound on jitter

Computer Networks and Internets -- Module 4 122 Spring, 2014

Copyright 2014. All rights reserved.


Asynchronous Transfer Mode (ATM)
(continued)

d QoS in ATM
Specified for each transfer (i.e., each TCP connection)
Required setup time
Meant each switch maintained state
Was difficult/impossible to enforce at high speed
d Despite the failure of ATM, proponents still argue that
Internet needs QoS

Computer Networks and Internets -- Module 4 123 Spring, 2014

Copyright 2014. All rights reserved.


Summary

d Packet switching divides data into small packets


d Each packet (frame) specifies destination
d Access technologies are used in the last mile
d Media access can be controlled, random, or channelized
d IEEE specifies Local Area Network standards
d Topologies used with LANs: bus, star, ring, and mesh
d Ethernet is the de facto standard for wired LANs
d Current Ethernets use twisted pair wiring

Computer Networks and Internets -- Module 4 124 Spring, 2014

Copyright 2014. All rights reserved.


Summary

d Wireless networks include PANs, LANs, and WANs,


d Cellular telephones are using packet technology
d Satellite can deliver data through a dish antenna
d Software-defined radio adds flexibility to wireless devices
d LAN extensions include repeaters and bridges
d Once stand-alone devices, bridges are now incorporated into
other devices
d Layer 2 switch acts like bridged networks

Computer Networks and Internets -- Module 4 125 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
MODULE V

Internetworking:
Concepts, Addressing, Architecture,
Protocols, Datagram Processing,
Transport-Layer Protocols, And
End-To-End Services

Computer Networks and Internets -- Module 5 1 Spring, 2014


Copyright 2014. All rights reserved.
Topics

d Internet concept and architecture


d Internet addressing
d Internet Protocol packets (datagrams)
d Datagram forwarding
d Address resolution
d Error reporting mechanism
d Configuration
d Network address translation

Computer Networks and Internets -- Module 5 2 Spring, 2014

Copyright 2014. All rights reserved.


Topics
(continued)

d Transport layer protocol characteristics and techniques


d Message transport with the User Datagram Protocol (UDP)
d Stream transport with the Transmission Control Protocol
(TCP)
d Routing algorithms and protocols
d Internet multicast and multicast routing

Computer Networks and Internets -- Module 5 3 Spring, 2014

Copyright 2014. All rights reserved.


Internet Concept
And Internet Architecture
What Is The Internet?

Computer Networks and Internets -- Module 5 5 Spring, 2014

Copyright 2014. All rights reserved.


What Is The Internet?

d Users see it as services and applications


Web and e-commerce
Email, texting, instant messenger
Social networking and blogs
Music and video download (and upload)
Voice and video teleconferencing

Computer Networks and Internets -- Module 5 5 Spring, 2014

Copyright 2014. All rights reserved.


What Is The Internet?

d Users see it as services and applications


Web and e-commerce
Email, texting, instant messenger
Social networking and blogs
Music and video download (and upload)
Voice and video teleconferencing
d Networking professionals see it as infrastructure
Platform on which above services run
Grows rapidly

Computer Networks and Internets -- Module 5 5 Spring, 2014

Copyright 2014. All rights reserved.


Growth Of The Internet

1000M
.
..
.. .
.
900M ..
.. .
.
..
.. .
800M ..
.
.. .
.
..
700M .. .
.
..
.. .
.
600M ..
.. .
.
..
.. .
.
500M ..
.. .
..
..
. ..
400M ..
.. .
..
..
300M .. .
.
..
.. .
.
200M ..
...
...
...
. ..
..
100M ..
.
..
...
. . ..
.. .....
0M ...............................................................

1981 1985 1990 1995 2000 2005 2010

d Plot shows number of computers on the Internet each year

Computer Networks and Internets -- Module 5 6 Spring, 2014

Copyright 2014. All rights reserved.


Growth Of The Internet (log scale)

10 10

10 9 ............
.... ........
........
.....
.....
.. . . . .
10 8 .....
....
.. ...
....
...
.. ...
10 7 . ...
.. ...
.. ...
.. ...
10 6 ....
...
. ....
...
..
..
10 5 .
.. .
..
...
.
..
.. .
10 4 ..
.
. . .
.
.... ...
...
10 3 . ...
.
. .. .
..
. . . . ..
10 2

1981 1985 1990 1995 2000 2005 2010

d Plot shows number of computers on the Internet each year


Computer Networks and Internets -- Module 5 7 Spring, 2014

Copyright 2014. All rights reserved.


Actual Size Of The Internet

d Previous plots are somewhat misleading


Derived by walking the Domain Name System
Only report hosts with IP addresses
d Since around 2000, many Internet devices
Do not have a fixed IP address
Connect behind a NAT box (e.g., wireless router)
d Actual size is difficult to measure

Computer Networks and Internets -- Module 5 8 Spring, 2014

Copyright 2014. All rights reserved.


Internet Architecture And Design

Computer Networks and Internets -- Module 5 9 Spring, 2014

Copyright 2014. All rights reserved.


Internet Architecture And Design

d If one were to design a global communication system from


scratch
How should it be organized?
Which technology or technologies should be used?

Computer Networks and Internets -- Module 5 9 Spring, 2014

Copyright 2014. All rights reserved.


Internet Architecture And Design

d If one were to design a global communication system from


scratch
How should it be organized?
Which technology or technologies should be used?
d The challenges
Which applications should it support?
Which network technologies should it use
* PANs / LANs / MANs / WANs
* Wired / wireless
* Terrestrial / satellite

Computer Networks and Internets -- Module 5 9 Spring, 2014

Copyright 2014. All rights reserved.


Internet Architecture And Design
(continued)

d Key principles
Internet is designed to accommodate extant services plus
new services that will be invented
Internet is designed to accommodate any network
technology, allowing each technology to be used where
appropriate

Computer Networks and Internets -- Module 5 10 Spring, 2014

Copyright 2014. All rights reserved.


Internet Philosophy

d Infrastructure
Provides a packet communication service
Treats all attached endpoints as equal (any endpoint can
send a packet to any other endpoint)
Does not restrict or dictate packet contents
Does not restrict or dictate underlying network
technologies
d Attached endpoints
Run applications that use the network to communicate
with applications on other endpoints
Control all content and provide all services

Computer Networks and Internets -- Module 5 11 Spring, 2014

Copyright 2014. All rights reserved.


Advantages Of The Internet Philosophy

d Accommodates heterogeneous underlying networks


d Accommodates arbitrary applications and services
d Separates communication from services

Computer Networks and Internets -- Module 5 12 Spring, 2014

Copyright 2014. All rights reserved.


Internet

d Follows a network of networks approach


d Allows arbitrary networks to be included
d Uses IP routers to interconnect individual networks
d Permits each router to connect two or more networks
networks

routers

Computer Networks and Internets -- Module 5 13 Spring, 2014

Copyright 2014. All rights reserved.


Internet Architecture: Logical View

host
computers

d Computers attached to Internet known as host computers


d To a host, Internet appears to be one giant network
Computer Networks and Internets -- Module 5 14 Spring, 2014

Copyright 2014. All rights reserved.


Internet Architecture: Physical View

net 2
net 1

net 4
net 3

net 5 host
router computers

physical net

d Network of heterogeneous networks connected by routers


d Each host attaches to a network
Computer Networks and Internets -- Module 5 15 Spring, 2014

Copyright 2014. All rights reserved.


Before We Discuss
Internet Addressing
The Situation

d Internet addressing is defined by the Internet Protocol (IP)


d IP is changing
Current version is 4 (IPv4)
New version is 6 (IPv6)

Computer Networks and Internets -- Module 5 17 Spring, 2014

Copyright 2014. All rights reserved.


History Of The Internet Protocol

d IP separated from TCP in 1978


d Version 1-3 discarded quickly; version 4 was the first
version used by researchers
d By early 1990s, a movement started that clamored for a new
version of IP because the 32-bit address space would run out
soon
d In 1993, the IETF received proposals, and formed a working
group to find a compromise
d By 1995, a new version had been proposed and documents
written

Computer Networks and Internets -- Module 5 18 Spring, 2014

Copyright 2014. All rights reserved.


Background Of The New Version Of IP

d Various groups offered opinions about the features

Computer Networks and Internets -- Module 5 19 Spring, 2014

Copyright 2014. All rights reserved.


Background Of The New Version Of IP

d Various groups offered opinions about the features


Cable companies wanted support for broadcast delivery

Computer Networks and Internets -- Module 5 19 Spring, 2014

Copyright 2014. All rights reserved.


Background Of The New Version Of IP

d Various groups offered opinions about the features


Cable companies wanted support for broadcast delivery
Telephone companies argued that everyone would soon
be using a connection-oriented network technology
(ATM)

Computer Networks and Internets -- Module 5 19 Spring, 2014

Copyright 2014. All rights reserved.


Background Of The New Version Of IP

d Various groups offered opinions about the features


Cable companies wanted support for broadcast delivery
Telephone companies argued that everyone would soon
be using a connection-oriented network technology
(ATM)
Several groups wanted mobility

Computer Networks and Internets -- Module 5 19 Spring, 2014

Copyright 2014. All rights reserved.


Background Of The New Version Of IP

d Various groups offered opinions about the features


Cable companies wanted support for broadcast delivery
Telephone companies argued that everyone would soon
be using a connection-oriented network technology
(ATM)
Several groups wanted mobility
The military pushed for better security

Computer Networks and Internets -- Module 5 19 Spring, 2014

Copyright 2014. All rights reserved.


Background Of The New Version Of IP

d Various groups offered opinions about the features


Cable companies wanted support for broadcast delivery
Telephone companies argued that everyone would soon
be using a connection-oriented network technology
(ATM)
Several groups wanted mobility
The military pushed for better security
d A compromise was reached: IP version 6 includes all the
above

Computer Networks and Internets -- Module 5 19 Spring, 2014

Copyright 2014. All rights reserved.


The Uphill Battle To Change IPv4

d IP is difficult to change because


IP lies at the heart of the Internet protocols
Version 4 of IP has a proven track record

The success of the current version of IP is incredible the


protocol has accommodated changes in hardware technologies,
heterogeneous networks, and extremely large scale.

Computer Networks and Internets -- Module 5 20 Spring, 2014

Copyright 2014. All rights reserved.


The Hourglass Model

Appl1 Appl2 . . . Appln

IP

Net1 Net2 . . . Netm

d IP lies in the middle changing it means changing all


hosts and routers in the Internet
Computer Networks and Internets -- Module 5 21 Spring, 2014

Copyright 2014. All rights reserved.


Our Approach

d In the current Internet, both IPv4 and IPv6 are relevant and
important
d Throughout the course, we will
Discuss general concepts
See how IPv4 and IPv6 implement the concepts

Computer Networks and Internets -- Module 5 22 Spring, 2014

Copyright 2014. All rights reserved.


Internet Addressing
Addressing In The Internet

Computer Networks and Internets -- Module 5 24 Spring, 2014

Copyright 2014. All rights reserved.


Addressing In The Internet

d Can we use MAC addresses across an internet?

Computer Networks and Internets -- Module 5 24 Spring, 2014

Copyright 2014. All rights reserved.


Addressing In The Internet

d Can we use MAC addresses across an internet?


d No: heterogeneity means
Multiple types of MAC addresses
MAC address meaningful on one network not
meaningful on another

Computer Networks and Internets -- Module 5 24 Spring, 2014

Copyright 2014. All rights reserved.


Addressing In The Internet

d Can we use MAC addresses across an internet?


d No: heterogeneity means
Multiple types of MAC addresses
MAC address meaningful on one network not
meaningful on another
d Solution
Create new addressing scheme that is independent of
MAC addresses

Computer Networks and Internets -- Module 5 24 Spring, 2014

Copyright 2014. All rights reserved.


The Two Forms Of Addresses

d Identity
Unique number assigned to each endpoint
Analogous to Ethernet address
d Locator
Endpoint address encodes location information, such as
* Geographic location
* Location relative to a service provider
* Computer on a given physical network

Computer Networks and Internets -- Module 5 25 Spring, 2014

Copyright 2014. All rights reserved.


Two Principles To Keep In Mind

Both identify and locator forms have advantages in


some situations; no form is best in all cases

Addressing is inherently linked to routing; the


choice of an addressing scheme affects the cost of
computing and maintaining routes

Computer Networks and Internets -- Module 5 26 Spring, 2014

Copyright 2014. All rights reserved.


The IPv4 Addressing Scheme

d Unique number is assigned to each Internet host


d 32-bit binary value known as IPv4 address
d Virtual address, not derived from MAC address
d Divided into two parts
Prefix identifies physical network (locator)
Suffix identifies a host on the network (identity)

Computer Networks and Internets -- Module 5 27 Spring, 2014

Copyright 2014. All rights reserved.


Dotted Decimal Notation (IPv4)

d Convenient for humans


d Divides IPv4 address into octets of eight bits each
d Represents each octet in decimal separated by dots

Computer Networks and Internets -- Module 5 28 Spring, 2014

Copyright 2014. All rights reserved.


Dotted Decimal Notation (IPv4)

d Convenient for humans


d Divides IPv4 address into octets of eight bits each
d Represents each octet in decimal separated by dots
d Examples
22222222222222222222222222222222222222222222222222222222222222222222222222
1 32 -b i t Bi nary Number 1 Equ i va l ent Dot t ed Dec ima l 1
1 22222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 10000001 00110100 00000110 00000000 1 129 . 52 . 6 . 0 1
122222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 11000000 00000101 00110000 00000011 1 192 . 5 . 48 . 3 1
1 22222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 00001010 00000010 00000000 00100101 1 10 . 2 . 0 . 37 1
122222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 10000000 00001010 00000010 00000011 1 128 . 10 . 2 . 3 1
122222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
10000000 10000000 11111111 00000000 128 . 128 . 255 . 0
12222222222222222222222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 5 28 Spring, 2014

Copyright 2014. All rights reserved.


Division Between Prefix And Suffix

d Original scheme (classful addressing)


Each address divided on octet (8-bit) boundary
Division could be computed from the address
d Current scheme (classless addressing)
Formal name Classless Inter-Domain Routing (CIDR)
Division permitted at arbitrary bit position
Boundary must be specified external to the address

Computer Networks and Internets -- Module 5 29 Spring, 2014

Copyright 2014. All rights reserved.


Classful Addressing

d Now historic
d Explains IPv4 multicast range
Bits 0 1 2 3 4 8 16 24 31
Class A 0 prefix suffix

Class B 1 0 prefix suffix

Class C 1 1 0 prefix suffix

Class D 1 1 1 0 multicast address

Class E 1 1 1 1 reserved (not assigned)

Computer Networks and Internets -- Module 5 30 Spring, 2014

Copyright 2014. All rights reserved.


Address Mask

d Required with classless addressing


d Associated with a network
d Specifies division of addresses into network prefix and host
suffix for that network
d 32-bit binary value
1-bits correspond to prefix
0-bits correspond to suffix
d Example mask that specifies six bits of prefix

11111100 00000000 00000000 00000000

Computer Networks and Internets -- Module 5 31 Spring, 2014

Copyright 2014. All rights reserved.


CIDR Notation

d Used by humans to enter address mask


d Avoids dotted decimal errors
d Follows address with slash and integer X, where X is the
number of prefix bits
d Example
In dotted decimal, a 26-bit mask is

255 . 255 . 255 . 192


CIDR merely writes

/26

Computer Networks and Internets -- Module 5 32 Spring, 2014

Copyright 2014. All rights reserved.


Table Of CIDR And Dotted Decimal Equivalences

Length (CIDR) Address Mask Notes

/0 0 . 0 . 0 . 0 All 0s (equivalent to no mask)


/1 128 . 0 . 0 . 0
/2 192 . 0 . 0 . 0
/3 224 . 0 . 0 . 0
/4 240 . 0 . 0 . 0
/5 248 . 0 . 0 . 0
/6 252 . 0 . 0 . 0
/7 254 . 0 . 0 . 0
/8 255 . 0 . 0 . 0 1-octet boundary
/9 255 . 128 . 0 . 0
/ 10 255 . 192 . 0 . 0
/ 11 255 . 224 . 0 . 0
/ 12 255 . 240 . 0 . 0
/ 13 255 . 248 . 0 . 0
/ 14 255 . 252 . 0 . 0
/ 15 255 . 254 . 0 . 0
/ 16 255 . 255 . 0 . 0 2-octet boundary

Computer Networks and Internets -- Module 5 33 Spring, 2014

Copyright 2014. All rights reserved.


Table Of CIDR And Dotted Decimal Equivalences

Length (CIDR) Address Mask Notes

/ 17 255 . 255 . 128 . 0


/ 18 255 . 255 . 192 . 0
/ 19 255 . 255 . 224 . 0
/ 20 255 . 255 . 240 . 0
/ 21 255 . 255 . 248 . 0
/ 22 255 . 255 . 252 . 0
/ 23 255 . 255 . 254 . 0
/ 24 255 . 255 . 255 . 0 3-octet boundary
/ 25 255 . 255 . 255 . 128
/ 26 255 . 255 . 255 . 192
/ 27 255 . 255 . 255 . 224
/ 28 255 . 255 . 255 . 240
/ 29 255 . 255 . 255 . 248
/ 30 255 . 255 . 255 . 252
/ 31 255 . 255 . 255 . 254
/ 32 255 . 255 . 255 . 255 All 1s (host specific mask)

Computer Networks and Internets -- Module 5 34 Spring, 2014

Copyright 2014. All rights reserved.


Why CIDR Is Useful

d ISPs assign IP addresses


d Corporate customer with N computers needs N addresses
d CIDR permits ISP to round to nearest power of two
d Example
Assume ISP owns address block 128.211.0.0/ 16
Customer has 12 computers
ISP assigns 4 bits of suffix to customer
Mask used is /28
Example: customer is assigned 128.211.0.16/ 28
Each computer at customer site has unique final 4 bits

Computer Networks and Internets -- Module 5 35 Spring, 2014

Copyright 2014. All rights reserved.


Example Of A /28 Address Block

0 Network Prefix 128.211.0.16 / 28 28 31


. . .
. . .
. . .
. . .
. . .
1 0 0 0 0 0 0 0 .
.
1 1 0 1 0 0 1 1 .
.
0 0 0 0 0 0 0 0 .
.
0 0 0 1 0 0 0 0
. . .
. . .

0 Address Mask 255.255.255.240 28 31


. . .
. . .
. . .
. . .
. . .
1 1 1 1 1 1 1 1 .
.
1 1 1 1 1 1 1 1 .
.
1 1 1 1 1 1 1 1 .
.
1 1 1 1 0 0 0 0
. . .
. . .

0 Lowest Host Address 128.211.0.17 28 31


. . .
. . .
. . .
. . .
. . .
1 0 0 0 0 0 0 0 .
.
1 1 0 1 0 0 1 1 .
.
0 0 0 0 0 0 0 0 .
.
0 0 0 1 0 0 0 1
. . .
. . .

0 Highest Host Address 128.211.0.30 28 31


. . .
. . .
. . .
. . .
. . .
1 0 0 0 0 0 0 0 .
.
1 1 0 1 0 0 1 1 .
.
0 0 0 0 0 0 0 0 .
.
0 0 0 1 1 1 1 0
. . .
. . .

Computer Networks and Internets -- Module 5 36 Spring, 2014

Copyright 2014. All rights reserved.


Special IPv4 Addresses

d Some address forms are reserved


22222222222222222222222222222222222222222222222222222222222222222222
1 Prefix 1 Suffix 1 Type Of Address 1 Purpose 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 all-0s 1 all-0s 1 this computer 1 used during bootstrap 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 network 1 all-0s 1 network 1 identifies a network 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 network 1 all-1s 1 directed broadcast 1 broadcast on specified net 1
1 1 1
22222222222222222222222222222222222222222222222222222222222222222222 1 1
1 1 1 1 1
all-1s all-1s limited broadcast
122222222222222222222222222222222222222222222222222222222222222222222
1 1 1 broadcast on local net 1
1 1 1 1 1
1122222222222222222222222222222222222222222222222222222222222222222222
127 / 8 11 any 11 loopback 11 testing 11

d Loopback address ( 127.0.0.1 ) used for testing


Packets never leave the local host
d Addresses 240.0.0.0/ 8 and above are multicast

Computer Networks and Internets -- Module 5 37 Spring, 2014

Copyright 2014. All rights reserved.


Host Address Count

d For a given network prefix, the all-0s and all-1s suffixes


have special meaning
N
d Consequence: if a suffix has N bits, 2 2 hosts can be
present

Computer Networks and Internets -- Module 5 38 Spring, 2014

Copyright 2014. All rights reserved.


IP Addressing Principle

An IP address does not identify a specific computer. Instead,


each IP address identifies a connection between a computer and
a network.

Computer Networks and Internets -- Module 5 39 Spring, 2014

Copyright 2014. All rights reserved.


IP Addressing Principle

An IP address does not identify a specific computer. Instead,


each IP address identifies a connection between a computer and
a network.

d Consequence

A router or a host with multiple network connections must be


assigned one IP address for each connection.

d Note: host with multiple network connections is called a


multi-homed host

Computer Networks and Internets -- Module 5 39 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of IPv4 Address Assignment
Wired Ethernet 131.108.0.0 / 16

router 1
Wi-Fi Net
223.240.129.0 / 24
131.108.99.5 223.240.129.2

223.240.129.17

router 2

78.0.0.17

WAN 78.0.0.0 / 8

d Each network assigned a unique prefix


d Each host on a network assigned a unique suffix

Computer Networks and Internets -- Module 5 40 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Host Addresses

d Like IPv4
Binary value
Divided into locator prefix and unique ID suffix
Identifies a connection to a network
d Unlike IPv4
128 bits long
Suffix can be derived from MAC address
3-level address hierarchy

Computer Networks and Internets -- Module 5 41 Spring, 2014

Copyright 2014. All rights reserved.


The IPv6 3-Level Hierarchy

K bits 64K bits 64 bits

GLOBAL PREFIX SUBNET INTERFACE (COMPUTER)

d Prefix size chosen by ISP


d Subnet area allows organization to have multiple networks

Computer Networks and Internets -- Module 5 42 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Address Types

22222222222222222222222222222222222222222222222222222222222222222
1 Type 1 Purpose 1
22222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1
1 unicast 1 The address corresponds to a single computer. A 1
1 1 datagram sent to the address is routed along a 1
1 1 shortest path to the computer. 1
122222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 multicast 1 The address corresponds to a set of computers, and 1
1 1 membership in the set can change at any time. IPv6 1
1 1 delivers one copy of the datagram to each member of 1
1 1 1
122222222222222222222222222222222222222222222222222222222222222222
1 the set. 1
1 1 1
1 anycast 1 The address corresponds to a set of computers that 1
1 1 1
1 1 share a common prefix. A datagram sent to the 1
1 1 address is delivered to exactly one of the computers 1
1 1 (e.g., the computer closest to the sender). 1
122222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 5 43 Spring, 2014

Copyright 2014. All rights reserved.


Colon Hex Notation

d Syntactic form used by humans to enter addresses


d Replacement for IPv4s dotted decimal
d Expresses groups of 16 bits in hexadecimal separated by
colons
d Example:

105.220.136.100.255.255.255.255.0.0.18.
128.140.10.255.255

becomes

69DC:8864:FFFF:FFFF:0:1280:8C0A:FFFF

Computer Networks and Internets -- Module 5 44 Spring, 2014

Copyright 2014. All rights reserved.


Colon Compression

d Many IPv6 addresses contain long strings of zeroes


d Successive zeros can be replaced by two colons
d Example

FF0C:0:0:0:0:0:0:B1

can be written:

FF0C::B1

Computer Networks and Internets -- Module 5 45 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

d More addresses

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

d More addresses
Eventually, IPv4 addresses will be depleted

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

d More addresses
Eventually, IPv4 addresses will be depleted
IPv6 provides more addresses than we will ever need
340,282,366,920,938,463,463,374,607,431,768,211,456

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

d More addresses
Eventually, IPv4 addresses will be depleted
IPv6 provides more addresses than we will ever need
340,282,366,920,938,463,463,374,607,431,768,211,456
1024 addresses per square meter of the Earths surface!

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

d More addresses
Eventually, IPv4 addresses will be depleted
IPv6 provides more addresses than we will ever need
340,282,366,920,938,463,463,374,607,431,768,211,456
1024 addresses per square meter of the Earths surface!
d Hype and excitement

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

d More addresses
Eventually, IPv4 addresses will be depleted
IPv6 provides more addresses than we will ever need
340,282,366,920,938,463,463,374,607,431,768,211,456
1024 addresses per square meter of the Earths surface!
d Hype and excitement
Researchers view IPv6 as an opportunity to be part of
the action

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


Two Major Reasons To Adopt IPv6

d More addresses
Eventually, IPv4 addresses will be depleted
IPv6 provides more addresses than we will ever need
340,282,366,920,938,463,463,374,607,431,768,211,456
1024 addresses per square meter of the Earths surface!
d Hype and excitement
Researchers view IPv6 as an opportunity to be part of
the action
Industries view IPv6 as an opportunity for revenue
enhancement

Computer Networks and Internets -- Module 5 46 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 And Children

Computer Networks and Internets -- Module 5 47 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 And Children

Child Of Famous Parent Internet Protocol version 6


3333333333333333333333333333333333333333333333333333333333333333333333
d Greatness is anticipated and
expectations run high

d Childs success is often


compared to the parents

d To achieve acclaim, the child


must outperform the parent

d We say that the child grows up


in the shadow of the parent

Computer Networks and Internets -- Module 5 47 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 And Children

Child Of Famous Parent Internet Protocol version 6


3333333333333333333333333333333333333333333333333333333333333333333333
d Greatness is anticipated and
expectations run high

d Childs success is often


compared to the parents

d To achieve acclaim, the child


must outperform the parent

d We say that the child grows up


in the shadow of the parent

d Bad news: guiding genetic


principle is known as the
tendency toward the mean

Computer Networks and Internets -- Module 5 47 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 And Children

Child Of Famous Parent Internet Protocol version 6


3333333333333333333333333333333333333333333333333333333333333333333333
d Greatness is anticipated and d Greatness is anticipated and
expectations run high expectations run high

d Childs success is often d IPv6s success is often


compared to the parents compared to IPv4s

d To achieve acclaim, the child d To achieve acclaim, IPv6


must outperform the parent must outperform IPv4

d We say that the child grows up d IPv6 has been growing up


in the shadow of the parent in the shadow of IPv4

d Bad news: guiding genetic


principle is known as the
tendency toward the mean

Computer Networks and Internets -- Module 5 47 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 And Children

Child Of Famous Parent Internet Protocol version 6


3333333333333333333333333333333333333333333333333333333333333333333333
d Greatness is anticipated and d Greatness is anticipated and
expectations run high expectations run high

d Childs success is often d IPv6s success is often


compared to the parents compared to IPv4s

d To achieve acclaim, the child d To achieve acclaim, IPv6


must outperform the parent must outperform IPv4

d We say that the child grows up d IPv6 has been growing up


in the shadow of the parent in the shadow of IPv4

d Bad news: guiding genetic d Bad news: guiding engineering


principle is known as the principle is known as the
tendency toward the mean second-system syndrome

Computer Networks and Internets -- Module 5 47 Spring, 2014

Copyright 2014. All rights reserved.


Internet Protocol Packets
(IP datagrams)
Internet Packets

Because it includes incompatible networks, the Internet cannot


adopt a particular hardware packet format. To accommodate
heterogeneity, the Internet Protocol defines a hardware-
independent packet format.

Computer Networks and Internets -- Module 5 49 Spring, 2014

Copyright 2014. All rights reserved.


IP Datagram

d Virtual packet format used in the Internet


d Same general layout as a network frame

Header Data Area (known as a payload area)

d Format of header determined by protocol version (IPv4 or


IPv6)
d Size of payload determined by application
Maximum payload is almost 64K octets
Typical datagram size is 1500 octets

Computer Networks and Internets -- Module 5 50 Spring, 2014

Copyright 2014. All rights reserved.


IPv4 Datagram Header

d Most header fields have fixed size and position


d Header specifies source, destination, and content type

0 4 8 16 19 24 31

VERS H. LEN SERVICE TYPE TOTAL LENGTH

IDENTIFICATION FLAGS FRAGMENT OFFSET

TIME TO LIVE TYPE HEADER CHECKSUM

SOURCE IP ADDRESS

DESTINATION IP ADDRESS

IP OPTIONS (MAY BE OMITTED) PADDING

BEGINNING OF PAYLOAD (DATA BEING SENT)


.
.
.

Computer Networks and Internets -- Module 5 51 Spring, 2014

Copyright 2014. All rights reserved.


A Few Details

d SOURCE IP ADDRESS field gives the IPv4 address of the


original source
d DESTINATION IP ADDRESS field gives the IPv4 address of
the ultimate destination
d Intermediate router addresses do not appear in header
d Header size
Almost no Internet datagrams contain options
Therefore header length is usually 20 octets

Computer Networks and Internets -- Module 5 52 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Header Arrangement

d Multiple headers used: base plus zero or more extension(s)

optional

Base Extension Extension


Header Header 1
... Header N
Payload (Data)

d The figure is not to scale: extension headers and/or the


payload can be much larger than the base header

Computer Networks and Internets -- Module 5 53 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Base Header Format
0 4 12 16 24 31

VERS TRAFFIC CLASS FLOW LABEL

PAYLOAD LENGTH NEXT HEADER HOP LIMIT

SOURCE ADDRESS

DESTINATION ADDRESS

d Flow Label field allows datagram to be associated with a


flow

Computer Networks and Internets -- Module 5 54 Spring, 2014

Copyright 2014. All rights reserved.


Identifying Headers

d Each header contains a NEXT HEADER field


d Value specifies the type of the next item
d Each layer 4 protocol (UDP, TCP, etc) is also assigned a
type

Computer Networks and Internets -- Module 5 55 Spring, 2014

Copyright 2014. All rights reserved.


Example Use Of Next Header Field

d Illustration of headers when a datagram contains a base


header and transport protocol

Base Header
TCP Data
NEXT=TCP

d Illustration of headers when a datagram also contains an


optional route header

Base Header Route Header


TCP Data
NEXT=ROUTE NEXT=TCP

Computer Networks and Internets -- Module 5 56 Spring, 2014

Copyright 2014. All rights reserved.


The Size Of An Extension Header

d Fixed length headers


Size is specified in the standards document
Protocol software contains size constant
d Variable length headers
Size is determined by sender
Header contains an explicit length field
0 8 16 31

NEXT HEADER HEADER LEN

ONE OR MORE OPTIONS

Computer Networks and Internets -- Module 5 57 Spring, 2014

Copyright 2014. All rights reserved.


Consequences For Packet Processing

d Consider a host or router that receives an IPv6 datagram


d The datagram contains a set of extension headers
d Each extension header can contain an explicit length field
d To parse the datagram, IP software must iterate through
headers
d Conclusion: processing IPv6 can entail extra overhead

Computer Networks and Internets -- Module 5 58 Spring, 2014

Copyright 2014. All rights reserved.


Datagram Forwarding
Internet Communication Paradigm

d Each datagram handled independently


d Datagram formed on source computer
d Source sends datagram to nearest router
d Router forwards datagram to next router along path to
destination
d Final router delivers datagram to destination
d Datagram passes across a single physical network at each
step

Computer Networks and Internets -- Module 5 60 Spring, 2014

Copyright 2014. All rights reserved.


Datagram Forwarding

d Performed by initial host and each router along path


d Selects next hop for the datagram as either
Next router along the path
Ultimate destination
d Uses a forwarding table with one entry per network
d Important point: size of forwarding table proportional to
number of networks in the Internet

Computer Networks and Internets -- Module 5 61 Spring, 2014

Copyright 2014. All rights reserved.


Forwarding Table Entry

d Uses IP addresses only (no MAC addresses)


d Contains
Destination network IP prefix
Address mask for the destination network
IP address of next hop

Computer Networks and Internets -- Module 5 62 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of An IPv4 Forwarding Table
router R1 router R2 router R3
30.0.0.7 40.0.0.8 128.1.0.9

30.0.0.0 / 8 40.0.0.0 / 8 128.1.0.0 /16 192.4.10.0 /24

40.0.0.7 128.1.0.8 192.4.10.9

(a)

Destination Mask Next Hop


30.0.0.0 255.0.0.0 40.0.0.7
40.0.0.0 255.0.0.0 deliver direct
128.1.0.0 255.255.0.0 deliver direct
192.4.10.0 255.255.255.0 128.1.0.9

(b)

d In practice, table usually contains a default entry

Computer Networks and Internets -- Module 5 63 Spring, 2014

Copyright 2014. All rights reserved.


Prefix Extraction

d Forwarding paradigm
Use network prefix when forwarding
Use host when delivering
d Conceptual forwarding step
Compare destination in each forwarding table entry with
datagrams destination address, D
During comparison, only examine network prefix
d Note: mask in forwarding table makes comparison efficient

if ( (Mask[i] & D) == Destination[i] ) forward to NextHop[i];

Computer Networks and Internets -- Module 5 64 Spring, 2014

Copyright 2014. All rights reserved.


Longest Prefix Match

d Classless addressing means forwarding table entries can be


ambiguous
d Example: consider destination 128.10.2.3 and a table that
includes the following two entries:

128.10.0.0 / 16 next hop A


128.10.2.0 / 24 next hop B

d The destination matches both of them!


d Solution: select the match that has the longest prefix (in the
example, take next hop B)
d Known as longest prefix match

Computer Networks and Internets -- Module 5 65 Spring, 2014

Copyright 2014. All rights reserved.


Datagram Encapsulation

d Needed because underlying network hardware does not


understand datagrams
d Entire datagram travels in payload area of frame

IP Header IP Payload

Frame Header Frame Payload

d Frame header contains MAC address of next hop


d Frame only used for trip across one network: when frame
arrives at next hop, datagram is extracted and frame is
discarded
d Datagram remains intact end-to-end

Computer Networks and Internets -- Module 5 66 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Encapsulation

Source host datagram

Net 1 Frame Hdr 1 datagram

Router 1 datagram

Net 2 Frame Hrd 2 datagram

Router 2 datagram

Net 3 Frame Hdr 3 datagram

Destination host datagram

Computer Networks and Internets -- Module 5 67 Spring, 2014

Copyright 2014. All rights reserved.


Semantics Of Internet Communication

d IP uses best effort delivery semantics

Computer Networks and Internets -- Module 5 68 Spring, 2014

Copyright 2014. All rights reserved.


Semantics Of Internet Communication

d IP uses best effort delivery semantics


d IP attempts to deliver each datagram, but specifies that a
datagram can be
Lost
Duplicated
Delayed
Delivered out-of-order
Delivered with bits scrambled

Computer Networks and Internets -- Module 5 68 Spring, 2014

Copyright 2014. All rights reserved.


Semantics Of Internet Communication

d IP uses best effort delivery semantics


d IP attempts to deliver each datagram, but specifies that a
datagram can be
Lost
Duplicated
Delayed
Delivered out-of-order
Delivered with bits scrambled
d Motivation: accommodate any underlying network

Computer Networks and Internets -- Module 5 68 Spring, 2014

Copyright 2014. All rights reserved.


Semantics Of Internet Communication

d IP uses best effort delivery semantics


d IP attempts to deliver each datagram, but specifies that a
datagram can be
Lost
Duplicated
Delayed
Delivered out-of-order
Delivered with bits scrambled
d Motivation: accommodate any underlying network
d Note: in practice, IP works and it works well

Computer Networks and Internets -- Module 5 68 Spring, 2014

Copyright 2014. All rights reserved.


MTU And Network Heterogeneity

d Each network technology specifies a Maximum Transfer


Unit (MTU) that is the largest amount of data that can be
sent in a packet
d Example: Ethernet MTU is 1500 octets
d Datagram can be as large as the network MTU
d Consider a 1500-octet datagram set from H1 to H2 in the
following network
H1 R H2

Net 1 (MTU=1500) Net 2 (MTU=1000)

d Datagram can reach router R, but cannot traverse Net 2

Computer Networks and Internets -- Module 5 69 Spring, 2014

Copyright 2014. All rights reserved.


Datagram Fragmentation

d Technique for accommodating heterogeneous MTUs


d Needed if datagram exceeds MTU
d Original datagram divided into smaller datagrams called
fragments
d Header of fragment derived from original datagram header
d Each fragment is forwarded independently
d IPv4 allows routers to perform fragmentation
d IPv6 requires sending host to perform fragmentation
d Important principle for both IPv4 and IPv6:

The ultimate destination reassembles fragments.

Computer Networks and Internets -- Module 5 70 Spring, 2014

Copyright 2014. All rights reserved.


The General Idea Of Fragmentation

d Divide the payload into a series of datagrams


... ...
.. ..
IP Header original datagram payload
.. ..
. .

IP Hdr 1 payload 1 IP Hdr 2 payload 2 IP Hdr 3 pay. 3

d Note: the tail fragment may be smaller than the others

Computer Networks and Internets -- Module 5 71 Spring, 2014

Copyright 2014. All rights reserved.


IPv4 Fragmentation Details

d Datagram header contains fixed fields that control


fragmentation
d A bit in FLAGS field specifies whether given datagram is a
fragment or complete datagram
d An additional FLAGS bit specifies whether the fragment
carries the tail of the original datagram
d OFFSET field specifies where the payload belongs in the
original datagram

Computer Networks and Internets -- Module 5 72 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Fragmentation Details

d Always performed by the original source, never by routers


d Rule: no header changes are allowed as an IPv6 datagram
traverses the Internet
d Consequences
Source must discover path MTU
Separate extension header contains fragmentation
information (same items as IPv4)
d Fragmentable part of datagram may include some extension
headers

Computer Networks and Internets -- Module 5 73 Spring, 2014

Copyright 2014. All rights reserved.


Illustration of IPv6 Fragmentation
P1 P2 P3

Unfragmentable Fragmentable Part


Part (can include headers as well as data)

(a)

Unfragmentable Frag. 1
P1
Part Header

(b)

Unfragmentable Frag. 2
P2
Part Header

(c)

Unfragmentable Frag. 3
P3
Part Header

(d)

d A datagram (a) divided into fragments (b through d)

Computer Networks and Internets -- Module 5 74 Spring, 2014

Copyright 2014. All rights reserved.


Collecting Fragments

d Destination collects incoming fragments


d IDENTIFICATION field used to group related fragments
d OFFSET field allows receiver to recreate the original
payload
d LAST FRAGMENT bit allows receiver to know when all
fragments have arrived
d If a fragment fails to arrive within a timeout period, entire
datagram is discarded
d Note: if an IPv4 fragment is divided into subfragments,
reassembly does not require reassembling subfragments

Computer Networks and Internets -- Module 5 75 Spring, 2014

Copyright 2014. All rights reserved.


Thought Problem

d Suppose
A vendor sells a network security appliance that fits
between a computer and an Ethernet switch
The appliance encrypts each IP datagram that the
computer sends
Encryption adds only three bytes of extra data to the
payload
d Measurements show that throughput decreases dramatically
whenever the appliance is enabled
d Explain the lower throughput

Computer Networks and Internets -- Module 5 76 Spring, 2014

Copyright 2014. All rights reserved.


Address Resolution
Review Of Datagram Transmission

Computer Networks and Internets -- Module 5 78 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Datagram Transmission

d Host or router has datagram to send

Computer Networks and Internets -- Module 5 78 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Datagram Transmission

d Host or router has datagram to send


d IP uses longest-prefix match to look up datagrams
destination address in forwarding table and obtains
IP address of next hop
Network over which to send (in case there is more than
one network connection)

Computer Networks and Internets -- Module 5 78 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Datagram Transmission

d Host or router has datagram to send


d IP uses longest-prefix match to look up datagrams
destination address in forwarding table and obtains
IP address of next hop
Network over which to send (in case there is more than
one network connection)
d IP encapsulates datagram in frame (entire datagram placed
in payload area of frame)

Computer Networks and Internets -- Module 5 78 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Datagram Transmission

d Host or router has datagram to send


d IP uses longest-prefix match to look up datagrams
destination address in forwarding table and obtains
IP address of next hop
Network over which to send (in case there is more than
one network connection)
d IP encapsulates datagram in frame (entire datagram placed
in payload area of frame)
d Is the resulting frame ready to send to the next hop?

Computer Networks and Internets -- Module 5 78 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Datagram Transmission

d Host or router has datagram to send


d IP uses longest-prefix match to look up datagrams
destination address in forwarding table and obtains
IP address of next hop
Network over which to send (in case there is more than
one network connection)
d IP encapsulates datagram in frame (entire datagram placed
in payload area of frame)
d Is the resulting frame ready to send to the next hop?

No!

Computer Networks and Internets -- Module 5 78 Spring, 2014

Copyright 2014. All rights reserved.


Hardware And Protocol Addressing

Computer Networks and Internets -- Module 5 79 Spring, 2014

Copyright 2014. All rights reserved.


Hardware And Protocol Addressing

d Underlying network hardware


Only understands MAC addresses
Requires each outgoing frame to contain the MAC
address of the next hop

Computer Networks and Internets -- Module 5 79 Spring, 2014

Copyright 2014. All rights reserved.


Hardware And Protocol Addressing

d Underlying network hardware


Only understands MAC addresses
Requires each outgoing frame to contain the MAC
address of the next hop
d IP forwarding
Deals only with (abstract) IP addresses
Computes the IP address of the next hop

Computer Networks and Internets -- Module 5 79 Spring, 2014

Copyright 2014. All rights reserved.


Hardware And Protocol Addressing

d Underlying network hardware


Only understands MAC addresses
Requires each outgoing frame to contain the MAC
address of the next hop
d IP forwarding
Deals only with (abstract) IP addresses
Computes the IP address of the next hop
d Conclusion

The IP address of the next hop must be translated to a MAC


address before a frame can be sent.

Computer Networks and Internets -- Module 5 79 Spring, 2014

Copyright 2014. All rights reserved.


Address Resolution

d Translates IP address to equivalent MAC address that the


hardware understands
d IP address is said to be resolved
d Restricted to a single physical network at a time
d Example: consider computer X sending to computer Y

X B Y
R1 R2

A C D

d A MAC address is needed at each hop

Computer Networks and Internets -- Module 5 80 Spring, 2014

Copyright 2014. All rights reserved.


An Example With MAC Addresses
X MAC: 3A-12-C9 MAC: 04-CF-47 Y
IP: 128.10.0.1 IP: 192.168.0.1

R1 R2

128.10.0.0 /16 10.0.0.0 /8 192.168.0.0 /16

MAC: 59-61-33 MAC: 97-27-D3 MAC: 8E-1A-7F MAC: 54-DB-31


IP: 128.10.0.100 IP: 10.0.0.100 IP: 10.0.0.200 IP: 192.168.0.200

Sender NEXT-HOP SRC MAC DST MAC SRC IP DST IP


2 22222222222222222222222222222222222222222222222222222222222222222222222
X 128.10.0.100 3A-12-C9 59-61-33 128.10.0.1 192.168.0.1
R1 10.0.0.200 97-27-D3 8E-1A-7F 128.10.0.1 192.168.0.1
R2 192.168.0.1 54-DB-31 04-CF-47 128.10.0.1 192.168.0.1

d How can a host or router find the MAC address of the next
hop?

Computer Networks and Internets -- Module 5 81 Spring, 2014

Copyright 2014. All rights reserved.


Address Resolution Protocol (ARP)

d Designed for IPv4 over Ethernet


d Used by two computers on the same physical network
d Allows a computer to find the MAC address of another
computer
d Operates at layer 2
d Uses network to exchange messages
d Computer seeking an address sends request to which another
replies

Computer Networks and Internets -- Module 5 82 Spring, 2014

Copyright 2014. All rights reserved.


Example Of ARP Exchange

d Assume
Four computers attached to an Ethernet
Computer B has a datagram to send
d Computer B
Uses forwarding table to find next-hop address IC
Broadcasts an ARP request: Im looking for a computer
with IP address IC
d Computer C
Receives the request and replies; Im the computer with
IP address IC

Computer Networks and Internets -- Module 5 83 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of The ARP message Exchange
Ethernet switch Ethernet switch

W X Y Z W X Y Z

(a) (a)

d Request is broadcast to all computers


d Only the intended recipient replies
d Reply is sent unicast

Computer Networks and Internets -- Module 5 84 Spring, 2014

Copyright 2014. All rights reserved.


ARP Message Format

Computer Networks and Internets -- Module 5 85 Spring, 2014

Copyright 2014. All rights reserved.


ARP Message Format

d Sufficiently general to permit


Arbitrary high-level protocol address
Arbitrary hardware address

Computer Networks and Internets -- Module 5 85 Spring, 2014

Copyright 2014. All rights reserved.


ARP Message Format

d Sufficiently general to permit


Arbitrary high-level protocol address
Arbitrary hardware address
d In practice, only used with IP and 48-bit Ethernet addresses

Computer Networks and Internets -- Module 5 85 Spring, 2014

Copyright 2014. All rights reserved.


ARP Message Format

d Sufficiently general to permit


Arbitrary high-level protocol address
Arbitrary hardware address
d In practice, only used with IP and 48-bit Ethernet addresses
0 8 16 24 31

HARDWARE ADDRESS TYPE PROTOCOL ADDRESS TYPE

HADDR LEN PADDR LEN OPERATION

SENDER HADDR (first 4 octets)

SENDER HADDR (last 2 octets) SENDER PADDR (first 2 octets)

SENDER PADDR (last 2 octets) TARGET HADDR (first 2 octets)

TARGET HADDR (last 4 octets)

TARGET PADDR (all 4 octets)

Computer Networks and Internets -- Module 5 85 Spring, 2014

Copyright 2014. All rights reserved.


ARP Encapsulation

d ARP message is placed in payload area of hardware frame


d When used with Ethernet, type is 0x0806
d Source and destination MAC addresses must be added to
frame header before sending

ARP MESSAGE

FRAME
HEADER FRAME PAYLOAD CRC

Computer Networks and Internets -- Module 5 86 Spring, 2014

Copyright 2014. All rights reserved.


ARP Algorithm And Caching
2222222222222222222222222222222222222222222222222222222222
1 Given: 1
1 1
1 An incoming ARP request or response 1
1 Purpose: 1
1 1
1 Process the message and update the ARP cache 1
1 Method: 1
1 1
1 Extract senders IP address, I, and MAC address, M 1
1 If ( address I is already in the ARP cache ) { 1
1 1
Replace corresponding MAC address with M; 1
1 }
1 1
1 if ( message is a request and target is me ) { 1
1 Add senders entry to the ARP cache providing 1
1 1
1 no entry exists; 1
1 Generate and send a response; 1
1 } 1
122222222222222222222222222222222222222222222222222222222221
Computer Networks and Internets -- Module 5 87 Spring, 2014

Copyright 2014. All rights reserved.


Boundary Between Protocol And MAC Addressing

d ARP isolates hardware addresses, allowing layers above to


use only IP

Application

IP addresses Transport
used

conceptual
Internet boundary

address resolution
Network Interface
MAC addresses
used

Physical

Computer Networks and Internets -- Module 5 88 Spring, 2014

Copyright 2014. All rights reserved.


Thought Problem

d ARP is sometimes cited as a security weakness


d If someone gains access to a given network, how can they
exploit ARP to intercept packets?

Computer Networks and Internets -- Module 5 89 Spring, 2014

Copyright 2014. All rights reserved.


Address Binding With IPv6

d IPv6 does not use ARP


d Instead, IPv6 defines a new address binding mechanism
known as IPv6 Neighbor Discovery (IPv6-ND)
d IPv6-ND
Maintains a neighbor cache
Keeps the cache up-to-date at all times
d IPv6-ND operation
Sends a multicast request to find neighbors and populate
the cache
Polls neighbors periodically, even if no datagrams are
being sent to the neighbor

Computer Networks and Internets -- Module 5 90 Spring, 2014

Copyright 2014. All rights reserved.


Error Reporting Mechanism
IP Error Detection And Reporting

d Recall that IP allows datagrams to be


Lost
Duplicated
Delayed
Delivered out-of-order

Computer Networks and Internets -- Module 5 92 Spring, 2014

Copyright 2014. All rights reserved.


IP Error Detection And Reporting

d Recall that IP allows datagrams to be


Lost
Duplicated
Delayed
Delivered out-of-order
d Why is error reporting needed?

Computer Networks and Internets -- Module 5 92 Spring, 2014

Copyright 2014. All rights reserved.


IP Error Detection And Reporting

d Recall that IP allows datagrams to be


Lost
Duplicated
Delayed
Delivered out-of-order
d Why is error reporting needed?
d Answer: best-effort does not mean careless the design
is intended to tolerate errors in the underlying networks, not
to introduce them
d IP reports problems when they are detected

Computer Networks and Internets -- Module 5 92 Spring, 2014

Copyright 2014. All rights reserved.


General Error Detection

d A variety of basic error detection mechanisms exist


d Examples
Parity bits and other forward error codes can detect
transmission errors
A CRC can detect an incorrect frame
The IP header checksum can detect an incorrect
datagram header
IPs TTL (hop limit) can detect a routing loop
A reassembly timer can detect lost fragments
d Only some types of errors can be reported

Computer Networks and Internets -- Module 5 93 Spring, 2014

Copyright 2014. All rights reserved.


Internet Control Message Protocol (ICMP)

d Required and integral part of IP


d Reports errors back to the original source
d Uses IP to carry messages
d Defines many types of messages, each with a specific format
and contents
d Includes information messages as well as error reports
d ICMPv4 and ICMPv6 share many messages

Computer Networks and Internets -- Module 5 94 Spring, 2014

Copyright 2014. All rights reserved.


Example ICMP Messages

22222222222222222222222222222222222222222222222222222222222222222222
122222222222222222222222222222222222222222222222222222222222222222222
Number 1 Type 1 Purpose 1
1 1 1 1
1 0 1 Echo Reply 1 Used by the ping program 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 3 1 Dest. Unreachable 1 Datagram could not be delivered 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 5 1 Redirect 1 Host must change a route 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 8 1 Echo Request 1 Used by the ping program 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 11 1 Time Exceeded 1 TTL expired or fragments timed out 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 12 1 Parameter Problem 1 IP header is incorrect 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 30 1 Traceroute 1 Used by the traceroute program 1
122222222222222222222222222222222222222222222222222222222222222222222
1 1 1

d Most heavily-used ICMP messages are 8 and 0, which are


sent and received by the ping program

Computer Networks and Internets -- Module 5 95 Spring, 2014

Copyright 2014. All rights reserved.


ICMP Encapsulation

d Two levels of encapsulation


ICMP message encapsulated in an IP datagram
IP datagram encapsulated in a network frame

ICMP Hdr ICMP Payload

IP Header IP Payload

Frame Header Frame Payload

Computer Networks and Internets -- Module 5 96 Spring, 2014

Copyright 2014. All rights reserved.


Example Of An ICMP Error Report

d Host S creates a datagram for destination D


d S sets the TTL to 255 and sends the datagram
d Datagram reaches a loop in the middle of the Internet
d Datagram circulates around the loop until the TTL reaches
zero
d Router that decrements the TTL to zero
Sends a type 11 ICMP message to S
Discards the datagram that caused the problem

Computer Networks and Internets -- Module 5 97 Spring, 2014

Copyright 2014. All rights reserved.


Configuration
Protocol Configuration

d Many items must be set before protocols can be used


IP address of each network interface
Address mask for each network
Initial values in the forwarding table
d Process is known as protocol configuration
d Usually occurs when operating system boots
d Two basic approaches
Manual
Automatic

Computer Networks and Internets -- Module 5 99 Spring, 2014

Copyright 2014. All rights reserved.


Manual Configuration

d Used for IP routers or host that has a permanent IP address


d Manager
Enters configuration once
Specifies that the configuration be saved in non-volatile
storage
Interfaces include Command Line Interface (CLI) and
web
d OS
Fetches values from non-volatile storage whenever the
device boots

Computer Networks and Internets -- Module 5 100 Spring, 2014

Copyright 2014. All rights reserved.


Automatic Configuration

d Used primarily for hosts


d Initially created for diskless workstations
d Basic idea
Use network to obtain configuration information
Configure protocol software, and then start to run
applications
d A seeming paradox

Automatic configuration requires a computer to


be able to use a network before the computers
protocol parameters have been configured.

Computer Networks and Internets -- Module 5 101 Spring, 2014

Copyright 2014. All rights reserved.


Ways To Solve The Paradox

d Use layer 2 protocols to obtain layer 3 parameters, then use


layer 3 to obtain higher layers
Historic approach
Relied on Ethernet broadcast
One computer on a network responded to requests
d Use layer 3 to obtain all parameters
Current approach
Relies on IP broadcast (IPv4) or multicast (IPv6)
Means routers can forward requests to a remote server

Computer Networks and Internets -- Module 5 102 Spring, 2014

Copyright 2014. All rights reserved.


Dynamic Host Configuration Protocol (DHCP)

d The standard protocol for automatic configuration


d Popular in private enterprises as well as with service
providers
d Host broadcasts/multicasts a request and receives a reply
d Single message exchange allows a host to obtain
An IP address and address mask to use
The IP address of a default router
The address of a DNS server
A DNS name
The location of an image to boot (optional)

Computer Networks and Internets -- Module 5 103 Spring, 2014

Copyright 2014. All rights reserved.


DHCP Message Format

d Same message format used for requests and responses


0 8 16 24 31

OP HTYPE HLEN HOPS

TRANSACTION IDENTIFIER

SECONDS ELAPSED FLAGS

CLIENT IP ADDRESS

YOUR IP ADDRESS

SERVER IP ADDRESS

ROUTER IP ADDRESS

CLIENT HARDWARE ADDRESS (16 OCTETS)


.
.
.

SERVER HOST NAME (64 OCTETS)


.
.
.

BOOT FILE NAME (128 OCTETS)


.
.
.

OPTIONS (VARIABLE)
.
.
.

Computer Networks and Internets -- Module 5 104 Spring, 2014

Copyright 2014. All rights reserved.


DHCP Protocol

d Significant features of the protocol


Recovers from loss or duplication
Avoids synchronized flooding of requests after a power-
failure and restart
Host discovers DHCP server once and caches server
address for future interaction
d Derived from BOOTstrap Protocol (BOOTP), but adds
dynamic address assignment

Computer Networks and Internets -- Module 5 105 Spring, 2014

Copyright 2014. All rights reserved.


Address Lease Paradigm

d DHCP server
Owns a set of IP addresses
Chooses an address from the set when a request arrives
Issues a lease for the address for specified time, T
d Client
Obtains an address and starts a timer for T time units
Uses the address to communicate
When the timer expires, requests the server renew the
lease
Either receives a renewal and restarts timer or stops
using the address
Computer Networks and Internets -- Module 5 106 Spring, 2014

Copyright 2014. All rights reserved.


Thought Problem

d Consider how addresses are assigned


d An ISP using DHCP can choose which IP address to assign
to a customer at a given time
d There are two approaches
The ISP can remember which address was previously
assigned to each customer and use the same address
The ISP can assign addresses at random, meaning the
customer will not retain the same address
d Many ISPs try to change the address frequently
d Why?

Computer Networks and Internets -- Module 5 107 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Configuration

d DHCPv6 has been defined, but...


d IPv6 prefers a new procedure known as
IPv6 autoconfiguration
d General idea: host can generate an address without using a
server
d Motivation: allow two hosts to communicate without further
infrastructure

Computer Networks and Internets -- Module 5 108 Spring, 2014

Copyright 2014. All rights reserved.


Steps In IPv6 Autoconfiguration

d Obtain a network prefix


Convention is to use a /64 prefix
Globally-valid prefix can be obtained from a router
Local-scope prefix created if no router available
d Generate a unique suffix
d Verify that no one else on the network is using the resulting
address

Computer Networks and Internets -- Module 5 109 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Autoconfiguration in Practice

d Need a unique host suffix


d For /64 network, a 64-bit host suffix is needed
d Recommended approach
Start with MAC address (globally unique, but only 48
bits)
Create a 64-bit value
d IEEE standard EUI-64 specifies how 48 bits of an IEEE
MAC address are placed in a 64-bit host suffix

Computer Networks and Internets -- Module 5 110 Spring, 2014

Copyright 2014. All rights reserved.


Network Address Translation
(NAT)
NAT Motivation

d IPv4 was running out of addresses


d ISPs only want to limit a customer to one IP address at any
time, but customers want multiple devices to be online
d Engineers invented Network Address Translation (NAT) as a
way to solve both problems

Computer Networks and Internets -- Module 5 112 Spring, 2014

Copyright 2014. All rights reserved.


NAT Operation

d Conceptually, NAT device is located between computers at


a site and the rest of the Internet
d Site
Only needs one globally-valid IP address
Can have multiple local hosts using the Internet
d Local host has full Internet access
d Service is transparent
No change in protocols on local hosts
No change in protocols on Internet servers

Computer Networks and Internets -- Module 5 113 Spring, 2014

Copyright 2014. All rights reserved.


Conceptual Organization Of NAT

Internet site with


multiple computers

NAT Device

Internet

from the Internet,


site appears to
be a single host

d NAT is said to be in-line


d From the Internet, site appears to be a single computer
d From within the site, each computer appears to have an
independent connection to the Internet

Computer Networks and Internets -- Module 5 114 Spring, 2014

Copyright 2014. All rights reserved.


Addresses Used by NAT

d NAT device runs a DHCP server to hand out IP addresses to


computers at the site
d Addresses assigned are IPv6 link-local or IPv4 private
2 222222222222222222222222222222222222222222222222
1 Block 1 Description 1
12 222222222222222222222222222222222222222222222222
1 1
1 10.0.0.0/8 1 Class A private address block 1
21 222222222222222222222222222222222222222222222222
1 1
1 169.254.0.0/16 1 Class B private address block 1
12 222222222222222222222222222222222222222222222222
1 1
1 172.16.0.0/12 1 16 contiguous Class B blocks 1
21 222222222222222222222222222222222222222222222222
1 1
1 1 1
112192.168.0.0/16 1 256 contiguous Class C blocks 1
222222222222222222222222222222222222222222222222
1 1

NAT translates source and/or destination addresses in


datagrams that pass between the site and the Internet

Computer Networks and Internets -- Module 5 115 Spring, 2014

Copyright 2014. All rights reserved.


NAT Variants

d Basic NAT
Only translates IP addresses
Seldom used in practice
d NAPT
Translates IP address and transport-layer port numbers
Most widely-used type of NAT
d Twice NAT
Works with DNS server
Provides NAPT plus ability to accept incoming
communication

Computer Networks and Internets -- Module 5 116 Spring, 2014

Copyright 2014. All rights reserved.


Example Of Basic NAT

d Suppose
NAT box has globally-valid IP address of 128.210.24.6
Computer at a site has private address 192.168.0.1
Computer contacts Internet site 198.133.219.25
d Resulting translation is:
SRC = 128 . 210 . 24 . 6 SRC = 192 . 168 . 0 . 1
DST = 198 . 133 . 219 . 25 DST = 198 . 133 . 219 . 25
NAT
to the
Internet

SRC = 198 . 133 . 219 . 25 SRC = 198 . 133 . 219 . 25


DST = 128 . 210 . 24 . 6 DST = 192 . 168 . 0 . 1
valid address host at site with
128 . 210 . 24 . 6 private address
192 . 168 . 0 . 1

Computer Networks and Internets -- Module 5 117 Spring, 2014

Copyright 2014. All rights reserved.


Implementation Of NAT

d NAT device keeps an internal translation table


d Table stores translations for both outgoing and incoming
datagrams
d Values filled in automatically when computer at site first
sends datagram to the Internet
d Translation table for previous example
2 2222222222222222222222222222222222222222222222222222222222222
1 Direction 1 Field 1 Old Value 1 New Value 1
21 2222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 1 IP Source 1 192 . 168 . 0 . 1 1 128 . 210 . 24 . 6 1
1 out 1222222222222222222222222222222222222222222222222222
1 1 1
1 1 IP Destination 1 198 . 133 . 219 . 25 1 -- no change -- 1
21 2222222222222222222222222222222222222222222222222222222222222
1 1 1 1
1 1 IP Source 1 198 . 133 . 219 . 25 1 -- no change -- 1
1 in 1222222222222222222222222222222222222222222222222222
1 1 1
1 1 1 1 1
IP Destination 128 . 210
112 2222222222222222222222222222222222222222222222222222222222222
11 11 . 24 . 6 11 192 . 168 . 0 . 1 11

Computer Networks and Internets -- Module 5 118 Spring, 2014

Copyright 2014. All rights reserved.


Transport-Layer NAT (NAPT)

d Handles TCP, UDP, and ICMP


d Translates TCP/ UDP protocol port numbers as well as IP
addresses
d Permits multiple computers at a site to contact the same
Internet service simultaneously without interference
d Examples:
Two computers at a site download songs from iTunes
Three computers at a site contact Google simultaneously

Computer Networks and Internets -- Module 5 119 Spring, 2014

Copyright 2014. All rights reserved.


Example Of NAPT Translation

d Suppose
Computers at site have private addresses assigned from
private address block 192.168 / 16
Two computers at the site each contact TCP port 30000
on computer 128 210.19.20
d NAPT chooses a new port number for each and translates
22222222222222222222222222222222222222222222222222222222222222222222
1 Dir. 1 Fields 1 Old Value 1 New Value 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 out 1 IP SRC:TCP SRC 1 192.168.0.1 :30000 1 128.10.24.6 :40001 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 out 1 IP SRC:TCP SRC 1 192.168.0.2 :30000 1 128.10.24.6 :40002 1
22222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1
1 in 1 IP DEST:TCP DEST 1 128.10.24.6 :40001 1 192.168.0.1 :30000 1
1 1 1
22222222222222222222222222222222222222222222222222222222222222222222 1 1
1 1 1 1 1
in IP DEST:TCP DEST 128.10.24.6 :40002
1122222222222222222222222222222222222222222222222222222222222222222222
11 11 11 192.168.0.2 :30000 11

Computer Networks and Internets -- Module 5 120 Spring, 2014

Copyright 2014. All rights reserved.


NAT In Practice

d Many consumer products have NAT built in


d Examples:
Cable and DSL modems
Wireless routers
d Note that most wireless routers provide both wired and
wireless network connections; they provide NAT on all
connections
Internet connection
wireless router

DSL or cable modem

Computer Networks and Internets -- Module 5 121 Spring, 2014

Copyright 2014. All rights reserved.


Transport Layer Protocols:
Characteristics And Techniques
What Should A Network Provide?

Computer Networks and Internets -- Module 5 123 Spring, 2014

Copyright 2014. All rights reserved.


What Should A Network Provide?

d One possibility: network centric


Network offers all services, such as email, web, etc
Host accesses services
Network authenticates user, handles reliability
Know as customer-provider communication

Computer Networks and Internets -- Module 5 123 Spring, 2014

Copyright 2014. All rights reserved.


What Should A Network Provide?

d One possibility: network centric


Network offers all services, such as email, web, etc
Host accesses services
Network authenticates user, handles reliability
Know as customer-provider communication
d Another possibility: network provides communication
Network only transfers packets
Applications handle everything else, including
reliability, flow control, and authentication
Known as end-to-end communication

Computer Networks and Internets -- Module 5 123 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Principle

d Fundamental concept in the Internet


d Network provides best-effort packet transport
d Endpoints
Control communication
Provide all reliability
d Consequence

Some of the most complex protocols in the Internet protocol


suite run in hosts rather than in routers.

Computer Networks and Internets -- Module 5 124 Spring, 2014

Copyright 2014. All rights reserved.


Transport Layer

d Layer between applications and IP

Application
LAYER 5

Transport
LAYER 4

Internet
LAYER 3

Network Interface
LAYER 2

Physical
LAYER 1

d Allows multiple applications on a given host to


communicate with applications on other hosts

d Uses IP to carry messages

Computer Networks and Internets -- Module 5 125 Spring, 2014

Copyright 2014. All rights reserved.


Problems A Transport Protocol Can Handle

d Accommodate speed mismatch between sender and receiver


d Detect and recover from datagram loss
d Eliminate duplicate packets
d Guarantee that messages arrive in order
d Respond to congestion in the Internet
d Prevent delayed packets from being misinterpreted
d Verify that data was not corrupted during transit
d Ensure that each party has agreed to communicate
d Note: a given transport protocol may not handle all
problems

Computer Networks and Internets -- Module 5 126 Spring, 2014

Copyright 2014. All rights reserved.


Techniques Transport Protocols Use

d Application demultiplexing
Sender places a value in each outgoing packet that
identifies an application on the receiving host
Receiver uses the value to determine which application
should receive the packet

Computer Networks and Internets -- Module 5 127 Spring, 2014

Copyright 2014. All rights reserved.


Techniques Transport Protocols Use

d Application demultiplexing
Sender places a value in each outgoing packet that
identifies an application on the receiving host
Receiver uses the value to determine which application
should receive the packet
d Flow-control mechanisms
Receiver informs sender of acceptable data rate
Sender limits rate to prevent overrunning the receiver

Computer Networks and Internets -- Module 5 127 Spring, 2014

Copyright 2014. All rights reserved.


Techniques Transport Protocols Use
(continued)

d Congestion control mechanisms


Receiver or network informs sender about congestion in
the network
Sender reduces data rate (packet rate) until congestion
subsides

Computer Networks and Internets -- Module 5 128 Spring, 2014

Copyright 2014. All rights reserved.


Techniques Transport Protocols Use
(continued)

d Congestion control mechanisms


Receiver or network informs sender about congestion in
the network
Sender reduces data rate (packet rate) until congestion
subsides
d Sequence numbers
Sender places a sequence number in each packet
Receiver uses the sequence numbers to ensure no
packets are missing and that packets are delivered in the
correct order

Computer Networks and Internets -- Module 5 128 Spring, 2014

Copyright 2014. All rights reserved.


Techniques Transport Protocols Use
(continued)

d Positive acknowledgement with retransmission


Receiver sends acknowledgement to inform sender when
a packet arrives
Sender retransmits packet if acknowledgement fails to
arrive within a specified time

Computer Networks and Internets -- Module 5 129 Spring, 2014

Copyright 2014. All rights reserved.


Techniques Transport Protocols Use
(continued)

d Positive acknowledgement with retransmission


Receiver sends acknowledgement to inform sender when
a packet arrives
Sender retransmits packet if acknowledgement fails to
arrive within a specified time
d Sliding window
Instead of transmitting a packet and waiting for an
acknowledgement, a sender transmits K packets and
each time an acknowledgement arrives, transmits another

Computer Networks and Internets -- Module 5 129 Spring, 2014

Copyright 2014. All rights reserved.


Transport Protocols Used In The Internet

d Two primary transport protocols used in the Internet


User Datagram Protocol (UDP)
Transmission Control Protocol (TCP)
d Choice determined by application protocol
Many applications specify the use of a single transport
(e.g., email transfer uses TCP)
Some applications allow the use of either (e.g., DNS
queries can be sent via UDP or TCP)
d Recall: each transport protocol has some surprising
characteristics

Computer Networks and Internets -- Module 5 130 Spring, 2014

Copyright 2014. All rights reserved.


Message Transport With
The User Datagram Protocol
User Datagram Protocol (UDP)

d Used
During startup
For VoIP and some video applications
d Accounts for less than 10% of Internet traffic
d Blocked by some ISPs

Computer Networks and Internets -- Module 5 132 Spring, 2014

Copyright 2014. All rights reserved.


UDP Characteristics

d End-to-end
d Connectionless communication
d Message-oriented interface
d Best-effort semantics
d Arbitrary interaction
d Operating system independence
d No congestion or flow control

Computer Networks and Internets -- Module 5 133 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Communication

d UDP provides communication among applications


d Sending UDP
Accepts outgoing message from application
Places message in a User Datagram
Encapsulates User Datagram in an IP datagram and
sends
d Receiving UDP
Accepts incoming User Datagram from IP
Extracts message and delivers to receiving application
d Note: message is unchanged by the network

Computer Networks and Internets -- Module 5 134 Spring, 2014

Copyright 2014. All rights reserved.


Connectionless Communication

d An application using UDP can


Send a message to any receiver (universal)
Send at any time (asynchronous)
Stop sending at any time (unterminated)
d That is, a sender does not
Inform the network before sending (i.e., does not
establish a communication channel)
Inform the other endpoint before sending
Inform the network or other endpoint that no more
messages will be sent

Computer Networks and Internets -- Module 5 135 Spring, 2014

Copyright 2014. All rights reserved.


Message-Oriented Interface

d UDP
Accepts and delivers messages (blocks of data)
Does not require all messages to be the same size, but
does define a maximum message size
Places each outgoing User Datagram in a single IP
datagram for transmission
Always delivers a complete message to receiving
application
d Sending application must divide outgoing data into
messages; UDP sends what it is given (or reports an error if
the message is too large)

Computer Networks and Internets -- Module 5 136 Spring, 2014

Copyright 2014. All rights reserved.


UDP Message Size

d UDP allows up to 64K octet messages


d As a practical limit, the size of a User Datagram is limited
by payload area in IP datagram
d Maximum IP payload is 64K octets minus size of IP header
d Therefore, the maximum UDP payload is 64K octets minus
size of IP and UDP headers (usually 64K octets minus 28)
d Application can choose any message size up to the
maximum UDP payload

Computer Networks and Internets -- Module 5 137 Spring, 2014

Copyright 2014. All rights reserved.


Large And Small Messages

d What happens if an application sends a 10K octet message?

Computer Networks and Internets -- Module 5 138 Spring, 2014

Copyright 2014. All rights reserved.


Large And Small Messages

d What happens if an application sends a 10K octet message?


d The message fits into an IP datagram, but...

Computer Networks and Internets -- Module 5 138 Spring, 2014

Copyright 2014. All rights reserved.


Large And Small Messages

d What happens if an application sends a 10K octet message?


d The message fits into an IP datagram, but... network frames
have a smaller MTU (typically 1500 octets)

Computer Networks and Internets -- Module 5 138 Spring, 2014

Copyright 2014. All rights reserved.


Large And Small Messages

d What happens if an application sends a 10K octet message?


d The message fits into an IP datagram, but... network frames
have a smaller MTU (typically 1500 octets)
d So, the result of sending a large message is

Computer Networks and Internets -- Module 5 138 Spring, 2014

Copyright 2014. All rights reserved.


Large And Small Messages

d What happens if an application sends a 10K octet message?


d The message fits into an IP datagram, but... network frames
have a smaller MTU (typically 1500 octets)
d So, the result of sending a large message is

IP Fragmentation!

Computer Networks and Internets -- Module 5 138 Spring, 2014

Copyright 2014. All rights reserved.


Large And Small Messages

d What happens if an application sends a 10K octet message?


d The message fits into an IP datagram, but... network frames
have a smaller MTU (typically 1500 octets)
d So, the result of sending a large message is

IP Fragmentation!

d What happens if an application chooses a small message


size, such as 20 octets?

Computer Networks and Internets -- Module 5 138 Spring, 2014

Copyright 2014. All rights reserved.


Large And Small Messages

d What happens if an application sends a 10K octet message?


d The message fits into an IP datagram, but... network frames
have a smaller MTU (typically 1500 octets)
d So, the result of sending a large message is

IP Fragmentation!

d What happens if an application chooses a small message


size, such as 20 octets?

Inefficiency!

Computer Networks and Internets -- Module 5 138 Spring, 2014

Copyright 2014. All rights reserved.


Choosing An Optimal Message Size

Computer Networks and Internets -- Module 5 139 Spring, 2014

Copyright 2014. All rights reserved.


Choosing An Optimal Message Size

d What size messages should an application send?

Computer Networks and Internets -- Module 5 139 Spring, 2014

Copyright 2014. All rights reserved.


Choosing An Optimal Message Size

d What size messages should an application send?


d Optimal UDP message size is S = M H
M is the path MTU (i.e., minimum MTU on the path)
H is the size of IP and UDP headers

Computer Networks and Internets -- Module 5 139 Spring, 2014

Copyright 2014. All rights reserved.


Choosing An Optimal Message Size

d What size messages should an application send?


d Optimal UDP message size is S = M H
M is the path MTU (i.e., minimum MTU on the path)
H is the size of IP and UDP headers
d Finding M requires an application to
Violate layering and obtain forwarding information from
IP
Note: for IPv4, only the local MTU is known
d Bottom line: it may be difficult/ impossible for an
application to compute S

Computer Networks and Internets -- Module 5 139 Spring, 2014

Copyright 2014. All rights reserved.


UDP Semantics

d UDP uses IP for delivery

Computer Networks and Internets -- Module 5 140 Spring, 2014

Copyright 2014. All rights reserved.


UDP Semantics

d UDP uses IP for delivery and offers the same semantics!

Computer Networks and Internets -- Module 5 140 Spring, 2014

Copyright 2014. All rights reserved.


UDP Semantics

d UDP uses IP for delivery and offers the same semantics!


d UDP packet can be
Lost
Duplicated
Delayed
Delivered out of order
Delivered with data bits altered

Computer Networks and Internets -- Module 5 140 Spring, 2014

Copyright 2014. All rights reserved.


UDP Semantics

d UDP uses IP for delivery and offers the same semantics!


d UDP packet can be
Lost
Duplicated
Delayed
Delivered out of order
Delivered with data bits altered
d Note 1: UDP does not introduce such errors; the errors arise
from the underlying networks

Computer Networks and Internets -- Module 5 140 Spring, 2014

Copyright 2014. All rights reserved.


UDP Semantics

d UDP uses IP for delivery and offers the same semantics!


d UDP packet can be
Lost
Duplicated
Delayed
Delivered out of order
Delivered with data bits altered
d Note 1: UDP does not introduce such errors; the errors arise
from the underlying networks
d Note 2: UDP does include an optional checksum to protect
the data (but the checksum may be disabled)

Computer Networks and Internets -- Module 5 140 Spring, 2014

Copyright 2014. All rights reserved.


Using Best-Effort Semantics

d Questions
Do best-effort semantics make any sense for
applications?
Why would a programmer choose UDP?

Computer Networks and Internets -- Module 5 141 Spring, 2014

Copyright 2014. All rights reserved.


Using Best-Effort Semantics

d Questions
Do best-effort semantics make any sense for
applications?
Why would a programmer choose UDP?
d Answers
Retransmitting a lost message does not make sense for
real-time audio and video applications because a
retransmitted packet arrives too late to be used
Additional real-time protocols can be added to UDP to
handle out-of-order delivery (we will cover later in the
course)

Computer Networks and Internets -- Module 5 141 Spring, 2014

Copyright 2014. All rights reserved.


Arbitrary Interaction

d UDP permits arbitrary interaction among applications


1-to-1
1-to-many
Many-to-1
Many-to-many

d Application programmer chooses interaction type


d Ability to send a single message to multiple recipients can
be valuable

Computer Networks and Internets -- Module 5 142 Spring, 2014

Copyright 2014. All rights reserved.


Efficient Implementation Of Interaction

d Key point: UDP can use IP broadcast or multicast to deliver


messages
d Provides efficient delivery to a set of hosts
d Example: UDP packet sent to IPv4 destination address
255.255.255.255 is delivered to all hosts on the local
network (IPv6 has an all nodes multicast address)
d No need for sender to transmit individual copies
d Allows application to find a server without knowing the
computer on which the server runs
d Broadcast is a significant advantage of UDP over TCP for
some applications

Computer Networks and Internets -- Module 5 143 Spring, 2014

Copyright 2014. All rights reserved.


Operating System Independence

d Goal is to allow applications on heterogeneous computers to


interact
d Must avoid OS-specific identifiers, such as
Process IDs
Task names
d Instead, create application identifiers that are not derived
from any OS

Computer Networks and Internets -- Module 5 144 Spring, 2014

Copyright 2014. All rights reserved.


UDP Application Identifiers

d 16-bit integer known as UDP protocol port number


d Each application using UDP must obtain a port number
d Sending UDP
Places a port number in UDP header to identify
destination application on receiving host
Also includes port number of sending application
d Receiving UDP
Uses value in header to select appropriate application

UDP protocol port numbers are universal across all computers,


and do not depend on the operating system.

Computer Networks and Internets -- Module 5 145 Spring, 2014

Copyright 2014. All rights reserved.


Identifying An Application

d Both sending and receiving applications need a port number


d Assignment of port numbers depends on the type of
application
d Application that offers a standardized service (server)
Uses a well-known port number for the service
Value is less than 1024
Example: TFTP service uses UDP port 69
d Other applications (client)
Request a port number from the local operating system
Value is greater than 49151

Computer Networks and Internets -- Module 5 146 Spring, 2014

Copyright 2014. All rights reserved.


Steps Taken To Contact A Service

d Request an unused local port number from the local


operating system
d Obtain the IP address of the local computer from the
operating system
d Look up the port number of the service to be contacted
d Obtain the domain name of a computer that runs the service
and map to an IP address
d Form a UDP datagram with a source port field set to the
local port number and the destination port field set to the
port number of the service
d Request that the UDP datagram be encapsulated in an IP
datagram and sent using the source and destination IP
addresses obtained above
Computer Networks and Internets -- Module 5 147 Spring, 2014

Copyright 2014. All rights reserved.


Examples Of Well-Known UDP Ports
222222222222222222222222222222222222222222222222222222
1 Port Number 1 Description 1
222222222222222222222222222222222222222222222222222222
1 1 1
1 0 1 Reserved (never assigned) 1
1 7 1 Echo 1
1 9 1 Discard 1
1 1 1
1 11 1 Active Users 1
1 13 1 Daytime 1
1 15 1 Network Status Program 1
1 17 1 Quote of the Day 1
1 1 1
1 19 1 Character Generator 1
1 37 1 Time 1
1 42 1 Host Name Server 1
1 43 1 Who Is 1
1 1 1
1 53 1 Domain Name Server 1
1 67 1 BOOTP or DHCP Server 1
1 68 1 BOOTP or DHCP Client 1
1 1 1
1 69 1 Trivial File Transfer 1
1 88 1 Kerberos Security Service 1
1 111 1 Sun Remote Procedure Call 1
1 123 1 Network Time Protocol 1
1 1 1
1 161 1 Simple Network Management Protocol 1
1 162 1 SNMP Traps 1
1 514 1 System Log 1
1222222222222222222222222222222222222222222222222222222 1 1

Computer Networks and Internets -- Module 5 148 Spring, 2014

Copyright 2014. All rights reserved.


UDP Datagram Format

d Extremely thin layer


d User Datagram is divided into header and payload
d Header contains only 8 octets:
0 16 31

UDP SOURCE PORT UDP DESTINATION PORT

UDP MESSAGE LENGTH UDP CHECKSUM

PAYLOAD (MESSAGE DATA)

...

d Question: why is length needed?

Computer Networks and Internets -- Module 5 149 Spring, 2014

Copyright 2014. All rights reserved.


UDP Checksum

Computer Networks and Internets -- Module 5 150 Spring, 2014

Copyright 2014. All rights reserved.


UDP Checksum

d 16-bit 1s-complement checksum

Computer Networks and Internets -- Module 5 150 Spring, 2014

Copyright 2014. All rights reserved.


UDP Checksum

d 16-bit 1s-complement checksum


d Covers entire UDP packet, including data (recall: IP does
not checksum the payload)

Computer Networks and Internets -- Module 5 150 Spring, 2014

Copyright 2014. All rights reserved.


UDP Checksum

d 16-bit 1s-complement checksum


d Covers entire UDP packet, including data (recall: IP does
not checksum the payload)
d Is optional: value of zero means sender did not compute a
checksum

Computer Networks and Internets -- Module 5 150 Spring, 2014

Copyright 2014. All rights reserved.


UDP Checksum

d 16-bit 1s-complement checksum


d Covers entire UDP packet, including data (recall: IP does
not checksum the payload)
d Is optional: value of zero means sender did not compute a
checksum
d Includes extra pseudo header that contains IP addresses
d Example of IPv4 pseudo header:
0 16 31

IP SOURCE ADDRESS

IP DESTINATION ADDRESS

ZERO PROTO UDP LENGTH

Computer Networks and Internets -- Module 5 150 Spring, 2014

Copyright 2014. All rights reserved.


Purpose Of A Pseudo Header

d Receiver can verify that message arrived at correct computer


as well as correct application on that computer
d Consequence for NAT: if it changes the IP source or
destination address, NAT must recompute UDP checksum
d Note: pseudo headers provide another example of layering
violations

Computer Networks and Internets -- Module 5 151 Spring, 2014

Copyright 2014. All rights reserved.


UDP Encapsulation

d User Datagram travels in IP datagram


d Two levels of encapsulation occur

UDP Hdr UDP Payload

IP Header IP Payload

Frame Header Frame Payload

d Note: the message the application places in the UDP


Payload field may also have header and payload fields

Computer Networks and Internets -- Module 5 152 Spring, 2014

Copyright 2014. All rights reserved.


Transmission Control Protocol
(Stream Transport)
Transmission Control Protocol (TCP)

d The primary transport-layer protocol used in the Internet


d Accounts for about 90% of all Internet traffic (some
estimates are higher)
d Provides reliability
d Appeals to programmers

Computer Networks and Internets -- Module 5 154 Spring, 2014

Copyright 2014. All rights reserved.


TCP Characteristics

d End-to-end communication
d Connection-oriented paradigm
d Point-to-point connections
d Complete reliability
d Full-duplex communication
d Stream interface
d Reliable connection startup
d Graceful connection shutdown

Computer Networks and Internets -- Module 5 155 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Communication

d TCP provides communication among pairs of applications


d Allows an application on one host to communicate with an
application on another host
d Permits multiple applications on a given computer to
communicate simultaneously without interference
d Uses protocol port numbers to distinguish among
applications
d Note: TCP ports are completely independent of UDP ports

Computer Networks and Internets -- Module 5 156 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Principle And Transport Protocols

Computer Networks and Internets -- Module 5 157 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Principle And Transport Protocols

d Transport protocols operate in end systems, and view the


underlying Internet as a virtual network

Computer Networks and Internets -- Module 5 157 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Principle And Transport Protocols

d Transport protocols operate in end systems, and view the


underlying Internet as a virtual network

Host A communication system Host B


as viewed by TCP
appl. appl.

TCP TCP

IP router IP

net iface. net iface.


IP
ThenetInternet
iface.

net 1 net 2

Computer Networks and Internets -- Module 5 157 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Principle And Transport Protocols

d Transport protocols operate in end systems, and view the


underlying Internet as a virtual network

Host A communication system Host B


as viewed by TCP
appl. appl.

TCP TCP

IP router IP

net iface. net iface.


IP
net iface.

net 1 net 2

d IP does not read or interpret TCP packets

Computer Networks and Internets -- Module 5 157 Spring, 2014

Copyright 2014. All rights reserved.


End-To-End Principle And Transport Protocols

d Transport protocols operate in end systems, and view the


underlying Internet as a virtual network

Host A communication system Host B


as viewed by TCP
appl. appl.

TCP TCP

IP router IP

net iface. net iface.


IP
net iface.

net 1 net 2

d IP does not read or interpret TCP packets


d When forwarding datagrams, router only processes layers 1
through 3
Computer Networks and Internets -- Module 5 157 Spring, 2014

Copyright 2014. All rights reserved.


TCP Protocol Port Numbers

d 16-bit integers used to identify applications


d Each application needs a port number
d TCP well-known port assignments are independent of UDP
assignments
d However, to help humans, the same value chosen if service
available via either transport
d Examples
Both UDP and TCP assign port 53 to the Domain Name
System (DNS)
Both UDP and TCP assign port 7 to the echo service

Computer Networks and Internets -- Module 5 158 Spring, 2014

Copyright 2014. All rights reserved.


Protocol Ports, The Four-Tuple, And Flows

d Key concept: because a TCP connection corresponds to a


pair of endpoints, the connection is identified by four items
IP source address
TCP source port
IP destination address
TCP destination port
d Commonly called the four-tuple
d Explains how an application such as a web server can
communicate with multiple clients at the same time
d Interestingly, more than four values must be extracted from
a frame to identify a TCP flow

Computer Networks and Internets -- Module 5 159 Spring, 2014

Copyright 2014. All rights reserved.


TCPs Connection-Oriented Paradigm

d Analogous to a telephone call


d Pair of applications must
Establish a TCP connection before communicating
Terminate the connection when finished
d Important insights
A TCP connection is virtual because only the two
endpoints know a connection is in place
TCP does not have keep-alive messages: no packets are
exchanged unless applications are sending data

Computer Networks and Internets -- Module 5 160 Spring, 2014

Copyright 2014. All rights reserved.


Limited Interaction

d A TCP connection only provides communication between a


pair of applications
d Known as a point-to-point communication
d TCP connection does not support
Reception from an arbitrary set senders
Multi-point connections with more than two endpoints
Broadcast or multicast delivery

Computer Networks and Internets -- Module 5 161 Spring, 2014

Copyright 2014. All rights reserved.


The TCP Reliability Guarantee

d TCP provides full reliability


d Compensates for
Loss
Duplication
Delivery out of order
d Does so without overloading the underlying networks and
routers
d TCP makes the following guarantee

Data will be delivered or sender will (eventually) be notified.

Computer Networks and Internets -- Module 5 162 Spring, 2014

Copyright 2014. All rights reserved.


TCP Reliability

d Uses timeout-and-retransmission
d Receiver returns an acknowledgement (ACK) to sender
when data arrives
d Sender waits for acknowledgement and retransmits data if
no acknowledgement arrives

Computer Networks and Internets -- Module 5 163 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of TCP Retransmission

Events at Host 1 Events at Host 2

send message 1
receive message 1
send ack 1
receive ack 1
send message 2
receive message 2
send ack 2
receive ack 2
send message 3

packet lost
retransmission timer expires
retransmit message 3
receive message 3
send ack 3

Computer Networks and Internets -- Module 5 164 Spring, 2014

Copyright 2014. All rights reserved.


Why TCP Retransmission Is Hard

d TCP designed for Internet


Round-trip delays differ among connections
Round-trip delays vary over time
d Waiting too long introduces unnecessary delay
d Not waiting long enough sends unnecessary copies
d Key to TCPs success: adaptive retransmission

Computer Networks and Internets -- Module 5 165 Spring, 2014

Copyright 2014. All rights reserved.


How Bad Is The Internet?
d In the old days: delays in seconds, high variability

Computer Networks and Internets -- Module 5 166 Spring, 2014

Copyright 2014. All rights reserved.


How Bad Is The Internet?
d In the old days: delays in seconds, high variability
d Now:

Computer Networks and Internets -- Module 5 166 Spring, 2014

Copyright 2014. All rights reserved.


How Bad Is The Internet?
d In the old days: delays in seconds, high variability
d Now: delays in seconds, high variability

Computer Networks and Internets -- Module 5 166 Spring, 2014

Copyright 2014. All rights reserved.


How Bad Is The Internet?
d In the old days: delays in seconds, high variability
d Now: delays in seconds, high variability

Example round-trip measurements from Ireland to California, 2009

Computer Networks and Internets -- Module 5 166 Spring, 2014

Copyright 2014. All rights reserved.


Adaptive Retransmission

d Continually estimate round-trip time of each connection


d Set retransmission timer from round-trip estimate
d Illustration of timeout on two connections:

est 1 .
.
.
est 1
est 2
est 2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

timeout
. . . . . . . . . . . . . . . . . . . . . . . . .
packet lost
timeout
packet lost

. . . . . . . . . . . . . . . . . . . . . . . . .

Computer Networks and Internets -- Module 5 167 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Sliding Window

d Transport protocols use sliding window mechanism


d Idea is to send multiple packets before waiting for an
acknowledgment
d Window size is relatively small (tens of packets, not
millions)
d Motivation is to increase throughput

Computer Networks and Internets -- Module 5 168 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of TCPs Sliding Window

window

12 11 10 9 8 7 6 5 4 3 2 1

initial position

still unsent already acknowledged

window

12 11 10 9 8 7 6 5 4 3 2 1

intermediate position
window moves as
acknowledgements arrive
window

12 11 10 9 8 7 6 5 4 3 2 1

final position

Computer Networks and Internets -- Module 5 169 Spring, 2014

Copyright 2014. All rights reserved.


How Sliding Window Improves Data Rate

host 1 host 2

send
packet
send
ack
send
packet
send
ack
send
packet
send
ack
send
packet
send
ack
done

stop-and-go

Computer Networks and Internets -- Module 5 170 Spring, 2014

Copyright 2014. All rights reserved.


How Sliding Window Improves Data Rate

host 1 host 2 host 1 host 2

send
packet send
four
send packets
send
ack four
send acks
packet
done
send
ack
send
packet
send
ack
send
packet
send
ack
done

stop-and-go sliding window

d Window size of K improves data rate by a factor of K

Computer Networks and Internets -- Module 5 170 Spring, 2014

Copyright 2014. All rights reserved.


TCP Flow Control And TCP Window

d Flow control mechanism coordinates data being sent with


receivers speed
d Buffer size used instead of data rate
d Receiver tells sender size of initial buffer
d Each acknowledgement specifies space remaining in buffer
d Known as window advertisement

Computer Networks and Internets -- Module 5 171 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of TCP Flow Control
Sender Events Receiver Events

advertise window=2500

send data octets 1-1000


send data octets 1001-2000
send data octets 2001-2500 ack up to 1000, window=1500
ack up to 2000, window=500
receive ack for 1000 ack up to 2500, window=0
receive ack for 2000
receive ack for 2500

application reads 2000 octets


ack up to 2500, window=2000

send data octets 2501-3500


send data octets 3501-4500
ack up to 3500, window=1000
ack up to 4500, window=0
receive ack for 3500
receive ack for 4500 application reads 1000 octets
ack up to 4500, window=1000

receive ack for 4500


.
.
.

Computer Networks and Internets -- Module 5 172 Spring, 2014

Copyright 2014. All rights reserved.


TCP Congestion Control And Slow Start

d TCP uses loss or changes in delay to infer congestion in the


network
d When congestion is detected, sending TCP temporarily
reduces the size of the window
d When a packet is lost, TCP temporarily reduces the effective
window to one half its current value
d Later, TCP slowly increases the window again
d Congestion avoidance also used when a connection starts
Temporarily use a window size of one segment
Double the window size when ACK arrives
Known as slow start

Computer Networks and Internets -- Module 5 173 Spring, 2014

Copyright 2014. All rights reserved.


Full-Duplex Communication

d TCP connection between A and B provides two independent


data streams, one from A to B and the other from B to A
d Each side
Has a receive buffer
Advertises a window size for incoming data
Uses sequence numbers to number outgoing data bytes
Implements timeout-and-retransmission for data it sends
d Application can choose to shut down communication in one
direction

Computer Networks and Internets -- Module 5 174 Spring, 2014

Copyright 2014. All rights reserved.


Full-Duplex Communication
(continued)

d Each TCP packet contains fields for both forward and


reverse data streams
Sequence number for data being sent in the forward
direction
Acknowledgement number for data that has been
received

Computer Networks and Internets -- Module 5 175 Spring, 2014

Copyright 2014. All rights reserved.


Stream Interface

d After connection is established, TCP accepts a


stream of data bytes from the sending application and
transfers them
d Sending application can choose amount of data to pass on
each request
d Surprise: TCP decides how to group bytes into packets
d Known as stream interface
d Consequence

Data may be passed to a receiving application in chunks that


differ from the chunks that the sending application generated.

Computer Networks and Internets -- Module 5 176 Spring, 2014

Copyright 2014. All rights reserved.


Connection Startup And Shutdown

d Difficult problem
d Packets can be
Lost
Duplicated
Delayed
Delivered out-of-order
d Either end can crash and reboot
d Need to know that both sides have agreed to start/ terminate
the connection

Computer Networks and Internets -- Module 5 177 Spring, 2014

Copyright 2014. All rights reserved.


Reliable Connection Startup

d TCP guarantees reliable connection startup that avoids


replay problems
d Performed with 3-way handshake

Events at Host 1 Events at Host 2

send SYN

receive SYN
send SYN + ACK

receive SYN + ACK


send ACK

receive ACK

d Each side chooses starting sequence number at random

Computer Networks and Internets -- Module 5 178 Spring, 2014

Copyright 2014. All rights reserved.


Graceful Connection Shutdown

d Analogous to 3-way handshake for startup


d Guarantees no ambiguity about connection termination

Events at Host 1 .. Events at Host 2


.
send FIN + ACK

receive FIN + ACK


send FIN + ACK

receive FIN + ACK


send ACK

receive ACK

Computer Networks and Internets -- Module 5 179 Spring, 2014

Copyright 2014. All rights reserved.


TCP Segment Format

d TCP packet is called a segment


d Segment is encapsulated in IP for transmission
d Single format used for SYNs, FINs, ACKs, and data
0 4 10 16 24 31

SOURCE PORT DESTINATION PORT

SEQUENCE NUMBER

ACKNOWLEDGEMENT NUMBER

HLEN NOT USED CODE BITS WINDOW

CHECKSUM URGENT POINTER

OPTIONS (if any)

BEGINNING OF DATA
.
.
.

Computer Networks and Internets -- Module 5 180 Spring, 2014

Copyright 2014. All rights reserved.


Routing Algorithms
And Routing Protocols
Historical Perspective

d Computing in the 1960s


Mainframes
Batch processing with punched cards
Usually one computer per organization
d Computing in the 1970s
Minicomputers
A few computers per organization
Dumb terminals

Computer Networks and Internets -- Module 5 182 Spring, 2014

Copyright 2014. All rights reserved.


Traditional Wide Area Networks

d Developed during 1960s mainframe era


d Predate
LANs
PCs
d Basic motivation
Interconnect mainframe at one site to mainframes at
other sites
Allow resource sharing
d First to employ dynamic routing

Computer Networks and Internets -- Module 5 183 Spring, 2014

Copyright 2014. All rights reserved.


Traditional WAN Architecture

d Dedicated device known as packet switch placed at each site


d Packet switch provides
Local connections for host computer(s) at the site
Long-distance connections to other sites
d Connection among sites
Leased digital circuits
Leased raw copper or fiber with customer supplying
modems

Computer Networks and Internets -- Module 5 184 Spring, 2014

Copyright 2014. All rights reserved.


Packet Switch Used In Traditional WAN

d Special-purpose, stand-alone device


d Dedicated to packet forwarding
d Small computer with
Processor
Memory
Program on stable storage
I/ O interfaces

Computer Networks and Internets -- Module 5 185 Spring, 2014

Copyright 2014. All rights reserved.


Conceptual View Of Traditional Packet Switch
I/O interfaces I/O interfaces
for local computers for remote sites leased circuits
packet switch to remote
local sites
computers
internal
interconnects

processor

memory

d Memory needed to store packets

Computer Networks and Internets -- Module 5 186 Spring, 2014

Copyright 2014. All rights reserved.


Store And Forward Paradigm

d Key paradigm used in packet switching


d Operation
Interface hardware places each arriving packet in a
queue in memory
Processor continually removes next packet from the
queue and forwards toward its destination
d Motivation: memory is a buffer that accommodates a short
burst of packets that arrive back-to-back

Important point: packet traffic tends to be bursty.

Computer Networks and Internets -- Module 5 187 Spring, 2014

Copyright 2014. All rights reserved.


Example Of Traditional WAN Architecture

d Packet switch at each site connects to other sites


d Circuits accommodate traffic and desired robustness

packet packet
switch switch
at at
site 1 site 2

digital circuits
between switches

each computer
connects to a
packet switch
packet packet
switch switch
at site 3 at site 4

Computer Networks and Internets -- Module 5 188 Spring, 2014

Copyright 2014. All rights reserved.


Traditional WAN Addressing

Computer Networks and Internets -- Module 5 189 Spring, 2014

Copyright 2014. All rights reserved.


Traditional WAN Addressing

d Hierarchical model analogous to Internet addressing

Computer Networks and Internets -- Module 5 189 Spring, 2014

Copyright 2014. All rights reserved.


Traditional WAN Addressing

d Hierarchical model analogous to Internet addressing


d Conceptual two-level hierarchy

( site, computer at the site )

Computer Networks and Internets -- Module 5 189 Spring, 2014

Copyright 2014. All rights reserved.


Traditional WAN Addressing

d Hierarchical model analogous to Internet addressing


d Conceptual two-level hierarchy

( site, computer at the site )

d In practice, one packet switch per site and K connections for


local computers means the address hierarchy is:

( packet switch, local connection on the switch )

Computer Networks and Internets -- Module 5 189 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Traditional WAN Addressing

1 1 address is [2,1]
address is [1,2] 2 2
packet packet 3
3
switch switch 4
4 1 2
address is [1,5] 5 5

6 6 address is [2,6]

d The two parts of an address are combined to form a single


binary number

Computer Networks and Internets -- Module 5 190 Spring, 2014

Copyright 2014. All rights reserved.


Next-Hop Forwarding

d Analogous to IP datagram forwarding


d Each packet contains a destination address
d Forwarding uses only the packet switch portion of an
address; delivery uses the rest of the address
d If packet has reached the destination packet switch, deliver
to locally-connected computer
d Otherwise, forward to another packet switch that is closer to
the destination site

Computer Networks and Internets -- Module 5 191 Spring, 2014

Copyright 2014. All rights reserved.


Algorithm For Packet Forwarding
22222222222222222222222222222222222222222222222222222222
1 Given: 1
1 1
1 An incoming packet arriving at a packet switch 1
1 1
Perform:
1 1
1 The next-hop forwarding step 1
1 Method: 1
1 1
1 Extract the destination address from the packet and 1
1 divide into packet switch, P, and computer, C; 1
1 1
if ( P is the same as my packet switch number ) {
1 1
1 Deliver the packet to local computer C; 1
1 } else { 1
1 Use P to select a next hop, and forward the packet 1
1 1
over the selected link to the next hop; 1
1
1 } 1
21 22222222222222222222222222222222222222222222222222222221
Computer Networks and Internets -- Module 5 192 Spring, 2014

Copyright 2014. All rights reserved.


WAN Forwarding Table

d Analogous to IP forwarding table


d Each entry in table refers to a switch, not an individual
computer

interface 1
interface 4

[1,2] [3,2]
packet packet
switch switch
1 3 [3,5] to reach send to
[1,5]
switch 1 interface 1
packet
switch 2 switch 2 local delivery

switch 3 interface 4
[2,1] [2,6]

Example WAN with three packet switches Forwarding table for switch 2

Computer Networks and Internets -- Module 5 193 Spring, 2014

Copyright 2014. All rights reserved.


Modern WAN Architecture

d Uses IP technology
d Router at site has
Local connections to networks at the site
Long-distance connections to routers at other sites
d Typical use: connect all sites of an organization

Computer Networks and Internets -- Module 5 194 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Modern WAN Connections

LAN (e.g., Ethernet) Router

connections
to other sites
local computers

d Uses conventional IP router


d Typical remote connection is a leased data circuit
d Router can also provide connection to the Internet

Computer Networks and Internets -- Module 5 195 Spring, 2014

Copyright 2014. All rights reserved.


Routing Algorithms
And Internet Routing
Constructing A Forwarding Table

d Two basic approaches


d Static routing
Used in Internet hosts
Entries inserted when system boots and do not change
d Dynamic routing
Used in packet switches and IP routers
Initial entries inserted when system boots
Routing software continually monitors network,
computes shortest paths, and updates forwarding table

Computer Networks and Internets -- Module 5 197 Spring, 2014

Copyright 2014. All rights reserved.


Static Routing

d Used in most hosts


d Only K+1 entries in forwarding table if host has K network
connections
d K entries, one per network connection
IP prefix for the network
Address mask for the network
Interface for the network
d Final entry: default route
default IP router address
Interface for the default router

Computer Networks and Internets -- Module 5 198 Spring, 2014

Copyright 2014. All rights reserved.


Dynamic Routing

d Routing Software
Runs on each packet switch or router
Computes shortest paths and installs entries in local
forwarding table
d Models the network as a graph

1 2 1 nodes edges or links 2

3 4 3 4

Example WAN Equivalent graph

Computer Networks and Internets -- Module 5 199 Spring, 2014

Copyright 2014. All rights reserved.


Example Graph And Next-Hop Forwarding Tables

1 2

3 4

2222222222222222 2222222222222222 2222222222222222 2222222222222222


1 to send 1 1 to send 1 1 to send 1 1 to send 1
1 1 1 1 1 1 1 1
reach over
122222222222222221 reach over
122222222222222221 reach over
122222222222222221 reach over
122222222222222221
1 1 1 1 1 (2,3) 1 1 1 (3,1) 1 1 1 (4,3) 1
122222222222222221 122222222222222221 122222222222222221 122222222222222221
1 2 (1,3) 1 1 2 1 1 2 (3,2) 1 1 2 (4,2) 1
122222222222222221 122222222222222221 122222222222222221 122222222222222221
1 1 1 1 1 1 1 1
3 (1,3) 1
12222222222222222 3 (2,3) 1
12222222222222222 3
12222222222222222 1 3 (4,3) 1
12222222222222222
1 1 1 1 1 1 1 1
4 (1,3) 1
121 2222222222222221 4 (2,4)
11222222222222222211 4 (3,4)
11222222222222222211 4
11222222222222222211

node 1 node 2 node 3 node 4

Computer Networks and Internets -- Module 5 200 Spring, 2014

Copyright 2014. All rights reserved.


Dynamic Routing

d Goals
Consistent, optimal routes
Automatic route change to accommodate failures
d Each node (packet switch or router) participates
d Routing software on a node exchanges information with
routing software on other nodes
d Distributed computation
d Two basic algorithms employed
Distance-Vector (DV)
Link-State Routing (LSR)

Computer Networks and Internets -- Module 5 201 Spring, 2014

Copyright 2014. All rights reserved.


Distance-Vector (DV) Routing

d Approach used in many early routing protocols


d Also known as Bellman Ford
d Node
Receives information from neighbors
Combines information from all neighbors with local
information
Sends copy of processed information to all neighbors

Computer Networks and Internets -- Module 5 202 Spring, 2014

Copyright 2014. All rights reserved.


How DV Works

d A participant periodically sends route advertisement to each


neighbor
d Advertisement specifies reachable sites and distance to each

I can reach site X, and its distance from me is Y.


I can reach site Z, and its distance from me is W.
.
.
.
d Neighbor receives advertisement and updates its forwarding
table
d In next round, neighbors each send advertisements to their
neighbors

Computer Networks and Internets -- Module 5 203 Spring, 2014

Copyright 2014. All rights reserved.


Distance-Vector Algorithm

d Used when advertisement arrives


d Examine each item in advertisement
If neighbor can reach site X and I cannot, add an entry
to my forwarding table for X with the neighbor as the
next hop
If I already have a route to X with the neighbor as the
next hop, replace the distance in the route with the
advertised distance
If I have a route to X that is more expensive than going
through the neighbor, change the next hop to the
neighbor

Computer Networks and Internets -- Module 5 204 Spring, 2014

Copyright 2014. All rights reserved.


Measuring The Distance Of A Route

d Possible measures
Hops
Delay
Throughput
Economic or administrative cost
d Many protocols use hops, but routing software often permits
a manager to assign administrative hop counts

Computer Networks and Internets -- Module 5 205 Spring, 2014

Copyright 2014. All rights reserved.


Link-State Routing (LSR)

d Chief alternative to distance-vector


d Each node
Sends link status information
Computes shortest paths independently
Does not rely on computation performed by others
d Name
Formal name is Link-State or Link-Status Routing
Also called Shortest Path First (SPF), a somewhat
misleading term derived from underlying algorithm

Computer Networks and Internets -- Module 5 206 Spring, 2014

Copyright 2014. All rights reserved.


How LSR Works

d Each pair of directly-connected nodes periodically


Tests connection between them
Broadcasts one of the following messages:

The link between X and Y is up.


or
The link between X and Y is down.

d Each node
Collects incoming broadcast messages and creates a
graph
Uses Dijkstras SPF algorithm to compute a forwarding
table (see text for details and example)
Computer Networks and Internets -- Module 5 207 Spring, 2014

Copyright 2014. All rights reserved.


Review Of Internet Forwarding

d Hosts
Use static routing
Entries placed in forwarding table when system boots
and remain unchanged
d Routers
Use dynamic routing
Initial entries placed in forwarding table when system
boots and routing software updates entries continually

Computer Networks and Internets -- Module 5 208 Spring, 2014

Copyright 2014. All rights reserved.


Example Of Host Routing

Ethernet 128.10.0.0 / 16
Router R1

router address
128.10.0.100 to rest of
Internet
hosts on a network

Net Mask Next hop

128.10.0.0 255.255.0.0 direct

default 0.0.0.0 128.10.0.100

forwarding table in each host

d Next hop in default route is known as a default router

Computer Networks and Internets -- Module 5 209 Spring, 2014

Copyright 2014. All rights reserved.


Why Dynamic Internet Routing Is Needed

d Router
Only has direct connections to a few networks
Must know how to forward datagram to arbitrary
destination
d Example

network 3

R1 R2

network 1 network 2

d Router R1 must learn about network 2 and R2 must learn


about network 1

Computer Networks and Internets -- Module 5 210 Spring, 2014

Copyright 2014. All rights reserved.


Important Principle

No single routing protocol can be used across the entire


Internet because the overhead is too high.

Computer Networks and Internets -- Module 5 211 Spring, 2014

Copyright 2014. All rights reserved.


Autonomous System Concept

d Internet divided into a set of routing domains


d Each routing domain is
Known as an autonomous system (AS)
Assigned a unique number
d Generally, an AS is a contiguous set of routers and networks
under one administrative authority
d No exact definition; think of a large ISP or a large
corporation
d AS gathers and summarizes routing information before
passing it to another AS

Computer Networks and Internets -- Module 5 212 Spring, 2014

Copyright 2014. All rights reserved.


Two Types Of Internet Routing Protocols

Computer Networks and Internets -- Module 5 213 Spring, 2014

Copyright 2014. All rights reserved.


Two Types Of Internet Routing Protocols

d Interior Gateway Protocols (IGPs)


Used within an autonomous system
Choice of IGP is made by each AS
Relatively easy to install and manage

Computer Networks and Internets -- Module 5 213 Spring, 2014

Copyright 2014. All rights reserved.


Two Types Of Internet Routing Protocols

d Interior Gateway Protocols (IGPs)


Used within an autonomous system
Choice of IGP is made by each AS
Relatively easy to install and manage
d Exterior Gateway Protocols (EGPs)
Used between autonomous systems
More complex to install and configure
Include policy constraints that control which information
is revealed

Computer Networks and Internets -- Module 5 213 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of IGPs and EGPs

R2 R5
EGP used
.....
..... .........
..... .
..... ........
..... ....
..... R1 R4 .......
..... .
........
IGP1 used
........ ..... IGP2 used
..... .....
.... .....
R3 ........ .....
..... R6
..... .....
..... ..

Autonomous Autonomous
System 1 System 2

d Because metrics used in each AS may differ, direct


comparison is impossible

Computer Networks and Internets -- Module 5 214 Spring, 2014

Copyright 2014. All rights reserved.


Principle Of Route And Data Flow

d Data flows in opposite direction of routes


d Example: ISP1 advertises route to customer Q and receives
traffic for customer Q

Routes for customers


of ISP1

R1 R2
ISP1 ISP2

Data to customers
of ISP1

Computer Networks and Internets -- Module 5 215 Spring, 2014

Copyright 2014. All rights reserved.


Internet Routing Protocols
Border Gateway Protocol (BGP)

d Primary Exterior Gateway Protocol used in the Internet


d Used by Tier 1 ISPs at the center of the Internet
d Current version is 4 (BGP-4)
d Characteristics
Provides routing among autonomous systems
Includes provisions for policies
Distinguishes transit routes from terminal routes
Uses reliable transport (TCP)
Sends path information

Computer Networks and Internets -- Module 5 217 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of BGP Paths

d Modified Distance-Vector protocol


d Advertisement contains a path in place of a distance
d Path lists the autonomous systems to destination
d Example

To reach network X, I send along path Z, Y, W,...

d Path information means receiver can apply policies (e.g.,


receiver can choose to ignore all routes that pass through AS
number N)

Computer Networks and Internets -- Module 5 218 Spring, 2014

Copyright 2014. All rights reserved.


Routing Information Protocol (RIP)

d Among the earliest Interior Gateway Protocols


d Characteristics
Distance-Vector that uses hop-count metric
Sent over UDP (unreliable transport)
Advertises CIDR prefixes
Includes facility for default route propagation
Broadcast or multicast delivery
d Current version is 2 (RIP2)

Computer Networks and Internets -- Module 5 219 Spring, 2014

Copyright 2014. All rights reserved.


RIP2 Packet Format
0 8 16 24 31

COMMAND (1-5) VERSION (2) MUST BE ZERO

FAMILY OF NET 1 ROUTE TAG FOR NET 1

IP ADDRESS OF NET 1

ADDRESS MASK FOR NET 1

NEXT HOP FOR NET 1

DISTANCE TO NET 1

FAMILY OF NET 2 ROUTE TAG FOR NET 2

IP ADDRESS OF NET 2

ADDRESS MASK FOR NET 2

NEXT HOP FOR NET 2

DISTANCE TO NET 2

...

d Note: routing protocols run at application layer (layer 5)


Computer Networks and Internets -- Module 5 220 Spring, 2014

Copyright 2014. All rights reserved.


Open Shortest Path First Protocol (OSPF)

d Created by the IETF to be an open standard (reaction to


proprietary protocols)
d Characteristics
Interior Gateway Protocol
Advertises CIDR prefixes
Authenticated message exchange
Can import routes from BGP
Link-state algorithm
Provides for multi-access networks
Divides large network into areas

Computer Networks and Internets -- Module 5 221 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of An OSPF Graph

R1 R2
R1 R2

R3 R3

R4
R4

R5 R6 R5 R6

a network the OSPF graph

d Graph shows a link between each pair of routers even


though some connections cross a shared network

Computer Networks and Internets -- Module 5 222 Spring, 2014

Copyright 2014. All rights reserved.


Intermediate System - Intermediate System (IS-IS)

d Originally part of DECNET V protocols


d Uses LSR approach
d Initially
Considered somewhat over featured
Not widely accepted in the Internet
Overshadowed by OSPF
d Eventually
OSPF became complex as features were added
IS-IS started to gain acceptance

Computer Networks and Internets -- Module 5 223 Spring, 2014

Copyright 2014. All rights reserved.


Routing Problems
Where Intuition Fails

d Routing is not like water flowing through pipes or traffic on


highways
Multi-path routing is difficult
Capacity can go unused if not along shortest path
d Fewest hops may not always be best
Compare two Ethernet hops and one satellite hop
d Routing around congestion is not straightforward, and does
not always yield a big improvement
Can cause out-of-order packets (TCP reacts)
Can result in route flapping

Computer Networks and Internets -- Module 5 225 Spring, 2014

Copyright 2014. All rights reserved.


Loops And Convergence

d Routing loop
Circular routes
Can be caused if good news flows backward
d Slow convergence (count to infinity) problem arises
Routes fail to converge after a change
Can cause a routing loop to persist

Computer Networks and Internets -- Module 5 226 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


How Good News Can Backwash

d A story with three routers and a network

network N A B C

d In practice, modern DV protocols employ heuristics that


Eliminate backflow
Lock down changes after a failure

Computer Networks and Internets -- Module 5 227 Spring, 2014

Copyright 2014. All rights reserved.


Other Routing Problems

d Black hole
Routing system sends packets for a set of destinations to
a location where they are silently discarded
Can be caused if routing update packets are lost
d Route flapping (lack of convergence)
Routes continue to oscillate
Can be caused by equal-length paths

Computer Networks and Internets -- Module 5 228 Spring, 2014

Copyright 2014. All rights reserved.


Routing Overhead

d Traffic from routing protocols is overhead


d Specific cases
DV advertisements tend to be large
LSR uses broadcast
d Fundamental tradeoff
Decreasing frequency of routing exchanges lowers
overhead
Increasing frequency of routing exchanges reduces the
time between a failure and rerouting around the failure

Computer Networks and Internets -- Module 5 229 Spring, 2014

Copyright 2014. All rights reserved.


Internet Multicast
And Multicast Routing
IPv4 Multicast

d Defined early; informally called Deering multicast


d Provides Internet-wide multicast dissemination
d Uses IPv4 addresses 224.0.0.0 through 239.255.255.255 (the
original Class D address space)
d In theory, any host in the Internet can
Join or leave any group at any time
Send a datagram to any group at any time

Computer Networks and Internets -- Module 5 231 Spring, 2014

Copyright 2014. All rights reserved.


IPv4 Multicast

d Defined early; informally called Deering multicast


d Provides Internet-wide multicast dissemination
d Uses IPv4 addresses 224.0.0.0 through 239.255.255.255 (the
original Class D address space)
d In theory, any host in the Internet can
Join or leave any group at any time
Send a datagram to any group at any time

Internet-wide multicast is not widely deployed

Computer Networks and Internets -- Module 5 231 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Multicast

d Fundamental part of IPv6


d IPv6 prohibits broadcast, but defines multicast groups that
are equivalent
All routers
All nodes

Computer Networks and Internets -- Module 5 232 Spring, 2014

Copyright 2014. All rights reserved.


Internet Group Multicast Protocol (IGMP)

d Allows a host to join or leave a multicast group


d Restricted to a single network (host talks to local router)
d When first host on a network joins a new group or last host
on a network leaves a group, router(s) on the network
change multicast routes accordingly

Computer Networks and Internets -- Module 5 233 Spring, 2014

Copyright 2014. All rights reserved.


IP Multicast And Ethernet Delivery

d When sending IP multicast across Ethernet


Can use Ethernet multicast capability
IP multicast address is mapped to an Ethernet multicast
address
d Problem
Most interface hardware limits the number of Ethernet
multicast addresses that can be used simultaneously
Trick: use a few multicast addresses and allow software
to decide how a given packet should be processed

Computer Networks and Internets -- Module 5 234 Spring, 2014

Copyright 2014. All rights reserved.


Multicast Routing Protocols

d Needed to propagate multicast routes throughout the Internet


d Goals
Ensure all participants in a group receive packets sent to
the group
Avoid flooding multicast across a network unless a host
is listening
d General approach
Form a graph-theoretic tree for each multicast group
Forward multicast along links of the tree
d Trick: send a request for group X toward the center of the
Internet until it reaches a router that knows about group X

Computer Networks and Internets -- Module 5 235 Spring, 2014

Copyright 2014. All rights reserved.


Example Multicast Routing Protocols

d Many multicast routing protocols have been proposed


d A few examples
2222222222222222222222222222222222222222222222
12222222222222222222222222222222222222222222222
Protocol 1 Type 1
1 1 1
1 DVMRP 1 Configuration-and-Tunneling 1
2222222222222222222222222222222222222222222222
1 1 1
1 CBT 1 Core-Based-Discovery 1
2222222222222222222222222222222222222222222222
1 1 1
1 PIM-SM 1 Core-Based-Discovery 1
2222222222222222222222222222222222222222222222
1 1 1
1 PIM-DM 1 Flood-And-Prune 1
12222222222222222222222222222222222222222222222
1 1
1 MOSPF 1 Link-State (within an organization) 1
12222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 5 236 Spring, 2014

Copyright 2014. All rights reserved.


Summary

d Internet
Consists of a network of heterogeneous networks
Separates communication from content and services
Accommodates arbitrary network technologies and
applications
d IPv4 uses 32-bit addresses; IPv6 uses 128-bit addresses
d Internet packet is known as an IP datagram
d Datagram is encapsulated for transmission
d Fragmentation and reassembly accommodate heterogeneous
MTUs

Computer Networks and Internets -- Module 5 237 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d IPv4 uses ARP for address resolution and IPv6 uses ND


d ICMP (Internet Control Message Protocol) reports errors
back to the original source
d Ping uses ICMP echo request and echo response
d DHCP allows automatic configuration
d NAT hides multiple computers behind a single address
d Internet follows the end-to-end principle

Computer Networks and Internets -- Module 5 238 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d Transport protocols that provide end-to-end service run in


hosts
d Internet has two main transport protocols
UDP provides unreliable, connectionless message
delivery
TCP provides reliable, stream-oriented delivery
d Dynamic routing was created for WANs and is used in the
Internet
d Two basic approaches
Distance Vector
Link State (also called SPF)
Computer Networks and Internets -- Module 5 239 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d Internet is divided into Autonomous Systems


d EGPs used between Autonomous Systems
d IGPs used within an Autonomous System
d Internet routing protocols include
Border Gateway Protocol (BGP)
Routing Information Protocol (RIP)
Open Shortest Path First (OSPF)
Intermediate System-Intermediate System (IS-IS)
d Multicast routing protocols defined, but are not in wide use

Computer Networks and Internets -- Module 5 240 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
MODULE VI

Other Topics

Computer Networks and Internets -- Module 6 1 Spring, 2014


Copyright 2014. All rights reserved.
Topics

d Measuring network performance


d Quality of Service (QoS) and provisioning
d Multimedia and IP telephony
d Network security
d Traffic engineering and MPLS
d Network management (SNMP)

Computer Networks and Internets -- Module 6 2 Spring, 2014

Copyright 2014. All rights reserved.


Measuring
Network Performance
Why Measure Network Performance?

d Optimization
d Planning (anticipating future needs)
d Assessing and understanding traffic
Trends in applications and network use
Detecting anomalous traffic patterns
d Contract (SLA) enforcement
d Bragging rights
IT staff in an organization
Marketing department in an equipment vendor

Computer Networks and Internets -- Module 6 4 Spring, 2014

Copyright 2014. All rights reserved.


Qualitative Terminology And Marketing

Computer Networks and Internets -- Module 6 5 Spring, 2014

Copyright 2014. All rights reserved.


Qualitative Terminology And Marketing

d Marketing seems to love qualitative terms


High-speed
Fast
Powerful
High bandwidth

Computer Networks and Internets -- Module 6 5 Spring, 2014

Copyright 2014. All rights reserved.


Qualitative Terminology And Marketing

d Marketing seems to love qualitative terms


High-speed
Fast
Powerful
High bandwidth
d Unfortunately
Qualitative terminology is vague
Networking technologies change rapidly

Computer Networks and Internets -- Module 6 5 Spring, 2014

Copyright 2014. All rights reserved.


Qualitative Terminology That Faded

d A high-speed leased line


Was once defined to run at 9.6 Kbps
d The Internets Very high-speed Backbone Network System
(VBNS)
Used OC-12 links, that are no longer considered very
high speed
d Fast Ethernet
Runs at 100 Mbps and is only one-tenth as fast as
Gigabit Ethernet technology
d Broadband
Was once defined by the FCC to start at 128 Kbps

Computer Networks and Internets -- Module 6 6 Spring, 2014

Copyright 2014. All rights reserved.


Quantitative Measures

d Quantifiable measurement is surprisingly difficult


d Routes and data rates can be asymmetric, making
measurements in one direction differ from measurements in
the other
d Inserting measurement probes can affect the performance of
the system being measured
d Conditions can change rapidly

Computer Networks and Internets -- Module 6 7 Spring, 2014

Copyright 2014. All rights reserved.


Aggregate Traffic Analysis

Computer Networks and Internets -- Module 6 8 Spring, 2014

Copyright 2014. All rights reserved.


Aggregate Traffic Analysis

d Short-term variation
Packets tend to arrive in clumps called bursts
d Long-term variation
Diurnal and annual patterns exist

Computer Networks and Internets -- Module 6 8 Spring, 2014

Copyright 2014. All rights reserved.


Aggregate Traffic Analysis

d Short-term variation
Packets tend to arrive in clumps called bursts
d Long-term variation
Diurnal and annual patterns exist
d Interestingly, data traffic is unlike voice traffic
Aggregate of voice telephone calls is smooth average
Aggregate of data traffic is bursty

Computer Networks and Internets -- Module 6 8 Spring, 2014

Copyright 2014. All rights reserved.


Self-Similarity

Unlike voice telephone traffic, data traffic is bursty. Data


traffic is said to be self-similar because aggregates of data
traffic exhibit a pattern of burstiness that is statistically similar
to the burstiness on a single link.

The point: data traffic is not easy to analyze

Computer Networks and Internets -- Module 6 9 Spring, 2014

Copyright 2014. All rights reserved.


Practical Measures Of Network Performance

d Three primary quantitative measures

2222222222222222222222222222222222222222222222222222222222222222222
1 Measure 1 Description 1
2222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 Latency (delay) 1 The time required to transfer a bit across 1
1 1 1
a network
12222222222222222222222222222222222222222222222222222222222222222222
1 from one end to another 1
1 1 1
1 Throughput (capacity) 1 The amount of data that can be transferred 1
1 1 over a network per unit time 1
12222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 Jitter (variability) 1 The changes in delay that occur and the 1
1 1 duration of the changes 1
12222222222222222222222222222222222222222222222222222222222222222222
1 1

d We will see that the three are not completely independent

Computer Networks and Internets -- Module 6 10 Spring, 2014

Copyright 2014. All rights reserved.


Latency Or Delay

d Time required for data to travel across a network


d Think of latency as the time required for a single bit to
traverse a network
d Depends on
Physical properties of the universe (the speed of light)
Traffic on the network

Computer Networks and Internets -- Module 6 11 Spring, 2014

Copyright 2014. All rights reserved.


Latency And Perceived Response Time

d Users are interested in response time


d Several components of delay contribute to overall response
time a user perceives
2222222222222222222222222222222222222222222222222222222222222222222
1 Type 1 Explanation 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Access Delay 1 The time needed to obtain access to a 1
1 1 transmission medium (e.g., a cable) 1
12222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 Propagation Delay 1 The time required for a signal to travel across 1
12222222222222222222222222222222222222222222222222222222222222222222
1 a transmission medium 1
1 1 1
1 Switching Delay 1 The time required to forward a packet 1
21 222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Queuing Delay 1 The time a packet spends in the memory of a 1
1 1 switch or router waiting to be selected for 1
1 1 1
1 transmission
12222222222222222222222222222222222222222222222222222222222222222222 1
1 1 1
1 Server Delay 1 The time required for a server to respond to a 1
1 1 request and send a response 1
12222222222222222222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 6 12 Spring, 2014

Copyright 2014. All rights reserved.


Bottlenecks

d Any part of a communication system can be a bottleneck


that causes the most delay
d Examples
Access delay: acquiring a wireless channel
Propagation delay: a satellite transmission
Switching delay: deep packet inspection
Server delay: a news agency web site overloaded during
a crisis
Queuing delay: packets arriving faster than they depart

Computer Networks and Internets -- Module 6 13 Spring, 2014

Copyright 2014. All rights reserved.


Assessing Delay

d Make multiple measurements over an interval


d Report minimum, maximum, mean, and standard deviation
d Divide delay into constituent components if possible
d Choose small intervals to look for repeated patterns

Computer Networks and Internets -- Module 6 14 Spring, 2014

Copyright 2014. All rights reserved.


Throughput

d Maximum amount of data a network can transport per unit


time
d Expressed as data rate in bits per second (e.g., 100 megabits
per second)
d Mistakenly cited as network speed, but really a measure
of network capacity
d Gives an upper-bound on performance, not a guarantee

Computer Networks and Internets -- Module 6 15 Spring, 2014

Copyright 2014. All rights reserved.


Assessing Throughput

d Several possible measures


Capacity of a single communication channel
Capacity along a path through the network
Aggregate capacity of all channels
Capacity among pairs of ingress and egress points when
used simultaneously

Computer Networks and Internets -- Module 6 16 Spring, 2014

Copyright 2014. All rights reserved.


The Concept Of Goodput

d Invented to provide meaningful assessment of network


performance
d Defined as the effective rate at which an application receives
data
d Can differ from throughput for any of the following reasons
Application protocol overhead
Channel coding overhead
Packet header overhead
Receiver buffer limitations
Congestion avoidance mechanisms
Packet retransmission

Computer Networks and Internets -- Module 6 17 Spring, 2014

Copyright 2014. All rights reserved.


Assessing Goodput

d Measure data that arrives successfully, and compute the


amount of data per unit time
d Goodput measurements also include the overhead introduced
by
Operating system
Transport protocol
Lower layer encodings and protocols
Application protocol and implementation
d Note: although they use the term throughput, most
measurement tools report goodput

Computer Networks and Internets -- Module 6 18 Spring, 2014

Copyright 2014. All rights reserved.


Jitter

d Another prominent measure of network performance


d Especially important in transmission of streaming audio and
video
d Measures variation in delay
d Example
Suppose network has average delay D
If each packet takes exactly D time units to traverse the
network, jitter is zero
If packets alternate between delays of D+ and D ,
average delay remains D, but jitter increases

Computer Networks and Internets -- Module 6 19 Spring, 2014

Copyright 2014. All rights reserved.


Key Observation

In the Internet, congestion is the single most significant


cause of packet loss, high jitter, and long delays.

Computer Networks and Internets -- Module 6 20 Spring, 2014

Copyright 2014. All rights reserved.


Handling Jitter

d Replace the Internet with an isochronous network


Approach used in the original telephone network
All parallel paths have exactly the same delay
d Change the Internet to reserve capacity
Discussed later in the module
d Keep the current Internet design and add protocols that
compensate for jitter
Basic technique is a jitter buffer
Discussed later in the module

Computer Networks and Internets -- Module 6 21 Spring, 2014

Copyright 2014. All rights reserved.


Understanding Throughput And Delay

d An analogy
Think of a network as a road between two locations
Propagation delay determines how long it takes a single
car to traverse the road
Throughput determines how many cars can enter the
road per unit time
d Observe
Adding a lane doubles the throughput (i.e., capacity), but
leaves the delay unchanged
It is possible to have arbitrarily high throughput, even if
the delay is long (imagine a long road with hundreds of
lanes)
Computer Networks and Internets -- Module 6 22 Spring, 2014

Copyright 2014. All rights reserved.


Understanding Throughput And Delay
(continued)

d The analogy helps us understand network measures

Computer Networks and Internets -- Module 6 23 Spring, 2014

Copyright 2014. All rights reserved.


Understanding Throughput And Delay
(continued)

d The analogy helps us understand network measures

Propagation delay specifies the time a single bit remains in


transit in a network. Throughput, which specifies how many
bits can enter the network per unit time, measures network
capacity.

Computer Networks and Internets -- Module 6 23 Spring, 2014

Copyright 2014. All rights reserved.


Understanding Throughput And Delay
(continued)

d The analogy helps us understand network measures

Propagation delay specifies the time a single bit remains in


transit in a network. Throughput, which specifies how many
bits can enter the network per unit time, measures network
capacity.

d The key consequence is incorporated in an aphorism

You can always buy more throughput, but you cannot buy
lower delay.

Computer Networks and Internets -- Module 6 23 Spring, 2014

Copyright 2014. All rights reserved.


Delay-Throughput Product

d Specifies the maximum amount of data in flight

Bits present in a network = D T


where
D is delay measured in seconds
T is throughput measured in bits per second
d Specifies how many bits can be transmitted before the first
bit arrives at the receiver
d Often incorrectly labeled the delay-bandwidth product

Computer Networks and Internets -- Module 6 24 Spring, 2014

Copyright 2014. All rights reserved.


Delay-Throughput Terminology And Examples

d Ethernet
Although it has high throughput, the short delay limits
the delay-throughput product
d Satellite link
Usually has a high delay-throughput product because
delay is long and throughput is high
d Informally, we use an analogy
A network with a long delay is called a long pipe
A network with high throughput is called a fat pipe
A satellite is known as a long, fat pipe

Computer Networks and Internets -- Module 6 25 Spring, 2014

Copyright 2014. All rights reserved.


Delay, Throughput,
and Utilization
Relationship Between Delay And Throughput

d In theory, delay and throughput are independent


d In practice, they are related
d Reason
Throughput determines rate at which traffic can pass
across a communication link
A switch or router queues packets until they can be sent
If data arrives at a switch or router faster than it leaves,
queue length grows, which means increased delay
(congestion)

Computer Networks and Internets -- Module 6 27 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of How Congestion Occurs

d Consider a router with three 1 Gbps connections, and


assume that traffic is arriving over two connections destined
for the third

input 1 (1 Gpbs) router

output (1 Gbps)

input 2 (1 Gbps)

d If the capacity of the red link is doubled, all links can


experience more congestion, which increases delay

Computer Networks and Internets -- Module 6 28 Spring, 2014

Copyright 2014. All rights reserved.


Utilization

d Measure of the current load on a network link


d Given as a percentage of capacity being used, and expressed
as a real value between 0.0 and 1.0
d Example: if a link capable of 1 Gbps has traffic of 500
Mbps, link utilization is 0.5
d Because utilization changes over time, it is reported over an
interval by giving
Peak (i.e., maximum)
Average (i.e., mean)

Computer Networks and Internets -- Module 6 29 Spring, 2014

Copyright 2014. All rights reserved.


Utilization As Estimate Of Delay

d Packet traffic is bursty


d Key discovery: the effective queuing delay can be estimated
from the utilization as follows:

D0
D = 3333333
(1 U)

d Where
D 0 is delay when the network is idle
U is current utilization between 0 and 1

Computer Networks and Internets -- Module 6 30 Spring, 2014

Copyright 2014. All rights reserved.


Delay As A Function Of Utilization
relative
delay

idle delay
1

25% 50% 75% 100%


utilization

Computer Networks and Internets -- Module 6 31 Spring, 2014

Copyright 2014. All rights reserved.


Practical Interpretation Of Utilization

d Delay increases rapidly as utilization climbs


d When utilization reaches 50%, delay is double
d When utilization reaches 80%, delay is five times higher
than average

Computer Networks and Internets -- Module 6 32 Spring, 2014

Copyright 2014. All rights reserved.


The 50-80 Rule

d Heuristic managers follow


When utilization reaches 50%, plan an upgrade
When utilization reaches 80%, an upgrade is overdue
d Note: alternative consists of partitioning a network (e.g.,
separating VLANs)

Computer Networks and Internets -- Module 6 33 Spring, 2014

Copyright 2014. All rights reserved.


Line Speed And Packets Per Second

d Networking equipment is said to operate at line speed if the


equipment can handle a sequence of back-to-back packets
d Observe
Per-packet overhead is often the bottleneck in equipment
For a given data rate, equipment processes
* Fewer packets per second if packets are large
* More packets per second if packets are small
d Conclusion: line speed is meaningless without a
specification of packet size

Computer Networks and Internets -- Module 6 34 Spring, 2014

Copyright 2014. All rights reserved.


Quality of Service (QoS)
and Provisioning
Quality of Service (QoS)

d Set of technologies that can be used to provide service


guarantees
Bound on latency
Guarantee on throughput
Bound on jitter
d Marketing
Tries to equate QoS and quality
Implies that lack of QoS means lack of quality

Computer Networks and Internets -- Module 6 36 Spring, 2014

Copyright 2014. All rights reserved.


QoS In The Internet

d Motivation
Make it possible to run applications such as streaming
video with no interruptions
Allow service providers to charge (much) more for
better service
d Three approaches have been proposed and studied
Priority
Fine-grain QoS
Coarse-grain QoS

Computer Networks and Internets -- Module 6 37 Spring, 2014

Copyright 2014. All rights reserved.


Priority Approach

d Each packet assigned a priority, and multiplexing selects


packets in priority order
d Popular among ISPs, and used by some corporations to give
voice and video traffic priority
d Advantages
Easy to implement
Can assign priority to a customer rather than to a
specific type of data
d Disadvantages
No quantitative guarantees
Can lead to starvation

Computer Networks and Internets -- Module 6 38 Spring, 2014

Copyright 2014. All rights reserved.


Fine-grain QoS Approach

d Pursued by the IETF under the name Integrated Services


(IntServ) and adopted in ATM networks
d QoS parameters negotiated for each flow (e.g., each TCP
connection)
Maximum delay
Minimum throughput
Maximum jitter
d Difficult/ impossible to implement

After many years of research and standards work, the fine-


grain approach to QoS has been relegated to a few special
cases.

Computer Networks and Internets -- Module 6 39 Spring, 2014

Copyright 2014. All rights reserved.


QoS Terminology That Has Survived
d Derived from ATM
22222222222222222222222222222222222222222222222222222222222222222222222222
1 Abbreviation 1 Expansion 1 Meaning 1
21 2222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1 Data enters the flow at a fixed rate, 1
1 CBR 1 Constant Bit Rate 1 such as data from a digitized voice 1
1 1 1 1
122222222222222222222222222222222222222222222222222222222222222222222222222
1 1 call entering at exactly 64 Kbps 1
1 1 1 1
1 1 1 Data enters the flow at a variable 1
1 VBR 1 Variable Bit Rate 1 rate within specified statistical 1
1 1 1 bounds 1
122222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1 1
1 1 1 The flow agrees to use whatever 1
1 ABR 1 Available Bit Rate 1 data rate is available at a given 1
1 1 1 time 1
21 2222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1
1 1 1 No bit rate is specified for the flow; 1
1 1 1 1
1 UBR 1 Unspecified Bit Rate 1 the application is satisfied with 1
1122222222222222222222222222222222222222222222222222222222222222222222222222
11 11 best-effort service 11

d Bounds specified statistically (e.g., average and peak


throughput and burst size)
Computer Networks and Internets -- Module 6 40 Spring, 2014

Copyright 2014. All rights reserved.


Coarse-grain QoS Approach

d Current approach approved by the IETF under the name


Differentiated Services (DiffServ)
d Divides traffic into classes
d Service guaranteed for each class rather than per flow
d Easier to implement than fine-grain approach
d Usually implemented as a proportional guarantee rather than
absolute quantities
d Example policy

At least 10% of the underlying network


capacity is reserved for voice traffic

Computer Networks and Internets -- Module 6 41 Spring, 2014

Copyright 2014. All rights reserved.


Steps A Router Takes To Implement QoS
packets packets
arrive leave
router implementing QoS

Classification Forwarding Output Traffic


and Policing Computation Queuing Scheduling

d Policing enforces rules on incoming traffic


d Forwarding can select among multiple paths (router may
have many output queues)
d Queuing may use Random Early Discard (RED)

Computer Networks and Internets -- Module 6 42 Spring, 2014

Copyright 2014. All rights reserved.


Traffic Scheduling

d Algorithm used to select packets from queues


d Principal types
222222222222222222222222222222222222222222222222222222222222222222222222
1 Algorithm 1 Description 1
21 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Leaky Bucket 1 Allows a queue to send packets at a fixed rate by 1
1 1 incrementing a packet counter periodically and using 1
1 1 1
the
1222222222222222222222222222222222222222222222222222222222222222222222222
1 counter to control transmission 1
1 1 1
1 Token Bucket 1 Allows a queue to send data at a fixed rate by 1
1 1 incrementing a byte counter periodically and using the 1
1 1 counter to control transmission 1
1222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 Weighted 1 Selects packets from a set of queues according to a 1
1 Round Robin 1 set of weights that divide the capacity into fixed 1
1 1 percentages, assuming a uniform packet size 1
21 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Deficit 1 A variant of the round-robin approach that accounts for 1
1 1 1
1 Round Robin 1 bytes sent rather than packets transferred, and allows 1
11222222222222222222222222222222222222222222222222222222222222222222222222
11 a temporary deficit caused by a large packet 11

Computer Networks and Internets -- Module 6 43 Spring, 2014

Copyright 2014. All rights reserved.


Traffic Engineering
(MPLS)
Traffic Engineering

d An approach to networking that allows a manager to


establish and control routes through a network and assign
specific types of data to each
d Implies
Non-standard forwarding mechanism
All traffic of a given type sent along a specified path
d Most popular technology: MPLS

Computer Networks and Internets -- Module 6 45 Spring, 2014

Copyright 2014. All rights reserved.


Multi-Protocol Label Switching (MPLS)

d Widely deployed among tier-1 ISPs


d Requires participating routers to have MPLS module
d MPLS tunnel created by configuring routers along a path
d Router may allow manager to assign a portion of link
capacity to each tunnel
Term multi-protocol arises because an MPLS packet can
contain arbitrary content

Computer Networks and Internets -- Module 6 46 Spring, 2014

Copyright 2014. All rights reserved.


Label Rewriting

d Concept came from ATM and is used in MPLS


d Each link in path has different integer label
d Router rewrites label in MPLS datagram before forwarding
to next hop
d Known as label switching
d Motivation: avoid global coordination and allow local
assignment of labels
d Disadvantages:
No general protocol available to configure an MPLS
path
Can be difficult to debug

Computer Networks and Internets -- Module 6 47 Spring, 2014

Copyright 2014. All rights reserved.


How MPLS Works

d Datagram encapsulated in MPLS header by router at the


start of a tunnel
d MPLS datagram tagged with label of path over which it
must pass
d Each router along the path
Uses label to make forwarding decision
Replaces label with value used on next hop
d MPLS encapsulation removed when datagram reaches end
of tunnel

Computer Networks and Internets -- Module 6 48 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Label Rewriting

A C
R4

A B
H1 A
H2

B B
A B A C A
R1 R2 R3

Computer Networks and Internets -- Module 6 49 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of Label Rewriting

12 3 C

A C
R4

A B
H1 A
H2
send to label 4
receive from
B B label 3
A B A C A
R1 R2 R3

4 32 B 32 12 B

d Labels along the path are: 4, 32, 12, 3

Computer Networks and Internets -- Module 6 49 Spring, 2014

Copyright 2014. All rights reserved.


Multimedia
A Few Definitions

d Multimedia combines two or more forms of information,


such as
Photos and music
Audio and video
d Real-time refers to information that must be presented in a
predetermined timed sequence, such as
Audio
Video
d An individual source provides one particular sequence of
real-time information

Computer Networks and Internets -- Module 6 51 Spring, 2014

Copyright 2014. All rights reserved.


A Few Definitions
(continued)

d Playback refers to the output of real-time information for a


user (e.g., video display or audio output)
d Sample rate refers to the rate at which real-time information
has been converted to digital form (e.g., audio sampled 8000
times per second)
d Synchronization refers to the coordination of playback
information from multiple sources (e.g., a movie requires
synchronization between audio and video)

Computer Networks and Internets -- Module 6 52 Spring, 2014

Copyright 2014. All rights reserved.


Real-Time Sample Rates

d Each source of real-time data can choose a sample rate and


encoding
d Examples
A video stream might contain 30 frames per second,
with an encoding that uses compression
An audio stream might contain 8000 audio samples per
second using a PCM encoding
d Important concept

Because each source of real-time information can choose a


sample rate, playback and synchronization must know the
sample rate and encoding that was selected.

Computer Networks and Internets -- Module 6 53 Spring, 2014

Copyright 2014. All rights reserved.


Transfer Of Streamed Real-Time Data

d Source
Samples information at regular intervals
Generates data continuously
Prepares data for transmission
d Ideal transmission channel
Accepts input at rate source produces
Delivers output at same rate as input

Computer Networks and Internets -- Module 6 54 Spring, 2014

Copyright 2014. All rights reserved.


Quantitative Network Performance
Needed For Real-Time Streaming

d QoS type: Constant Bit Rate (CBR)


d Throughput sufficient to accommodate senders data rate
(known in advance)
d Latency within a specified bound, usually 200 msec
d Jitter of zero or near-zero

Computer Networks and Internets -- Module 6 55 Spring, 2014

Copyright 2014. All rights reserved.


Buffering

d Especially important in a packet transmission system


d Combines multiple samples into a single transmission
d Advantage
Increases transmission efficiency
d Disadvantage
Introduces delay

Computer Networks and Internets -- Module 6 56 Spring, 2014

Copyright 2014. All rights reserved.


Buffering Example

d Consider PCM audio


d One eight-bit audio sample taken every 125 seconds
d Ethernet has 1500 octet payload
d Waiting to fill an entire frame takes

125 106 seconds/byte 1500 bytes = 0.188 seconds

d Filling a packet incurs delay at the source

Computer Networks and Internets -- Module 6 57 Spring, 2014

Copyright 2014. All rights reserved.


Buffering Compromise

d Choose buffer size according to application


d Example: send 128 audio samples in each packet
d Tradeoffs
Packet size is larger than one sample per packet, but
generates more packets than absolutely necessary
Header overhead is a smaller percentage of total bits
than with one sample per packet, but a greater
percentage than for larger packets
Latency is better than with many samples per packet, but
not as good as with one sample per packet

Computer Networks and Internets -- Module 6 58 Spring, 2014

Copyright 2014. All rights reserved.


Jitter Buffers
Streaming Of Real-Time Data
Across The Internet

d Must handle
Lost packets
Duplicated packets
Packets delivered out of order
Variance in delay (jitter)
d Key facts
Conventional retransmission is useless
Jitter is unavoidable

Computer Networks and Internets -- Module 6 60 Spring, 2014

Copyright 2014. All rights reserved.


Two Useful Techniques

d Timestamps
Provided by sender
Assigned to each piece of data
Allow receiver to know when data should be played
Use relative values to avoid need for clock
synchronization
d Jitter buffer
Used by receiver
Accommodates small variance in delay

Computer Networks and Internets -- Module 6 61 Spring, 2014

Copyright 2014. All rights reserved.


Jitter Buffer

d Used by receiver to assemble incoming real-time data


d Timestamp on an item determines where item is placed in
the playback sequence
d General principle: ensure information will be available in
time to play without delay
d Trick: to compensate for maximum jitter of d, delay
playback for d time units
d Result: jitter buffer holds just enough data so playback can
proceed uninterrupted

Computer Networks and Internets -- Module 6 62 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of A Jitter Buffer

packets arrive packets extracted


in bursts at a uniform rate

jitter buffer
playback display
d process

connection
to Internet

d During normal operation, playback can continue for d time


units while waiting for delayed packets

Computer Networks and Internets -- Module 6 63 Spring, 2014

Copyright 2014. All rights reserved.


Real-Time Transport Protocol (RTP)

d Widely used for voice and video


d Despite the name, not really a transport protocol
d Does not contain a jitter buffer and does not control
playback
d Provides three basic mechanisms
Sequence number on each packet that allows a receiver
to handle loss and out-of-order delivery
Timestamp used for playback of the data
Series of source identifiers that tell a receiver the
source(s) of the data

Computer Networks and Internets -- Module 6 64 Spring, 2014

Copyright 2014. All rights reserved.


RTP Details

d Allows sender and receiver to choose sample rate and


encoding
d Specifies a header for each message transferred
d Uses UDP for transport
d Separates timestamp from packet sequence number
d Includes a marker bit that allows some frames to be marked
d Companion protocol allows receivers to inform sender about
transfer

Computer Networks and Internets -- Module 6 65 Spring, 2014

Copyright 2014. All rights reserved.


Motivation For RTP Design

d Marking
Permits differential encoding with a full frame followed
by incremental changes
Example use: video I-frame followed by B-frames
d Separation of timestamp and packet sequence
Means timestamps do not need to be linearly related to
packets
Allows compression schemes that vary the rate at which
data is sent

Computer Networks and Internets -- Module 6 66 Spring, 2014

Copyright 2014. All rights reserved.


RTP Header Format

0 1 3 8 16 31

VER P X CC M PAYTYPE SEQUENCE NUMBER

TIMESTAMP

SYNCHRONIZATION SOURCE IDENTIFIER

CONTRIBUTING SOURCE IDENTIFIER

...

d TIMESTAMP is interpreted by sender and receiver


d PAYTYPE specifies the payload type
d Initial SEQUENCE NUMBER chosen at random
d CONTRIBUTING SOURCE IDENTIFIERS allow sender to
mix streams from multiple sources

Computer Networks and Internets -- Module 6 67 Spring, 2014

Copyright 2014. All rights reserved.


RTP Encapsulation

d Three levels of encapsulation

RTP Hdr RTP Payload

UDP Hdr UDP Payload

IP Header IP Payload

Frame Header Frame Payload

d Use of UDP permits sending one multicast instead of


multiple unicast copies

Computer Networks and Internets -- Module 6 68 Spring, 2014

Copyright 2014. All rights reserved.


IP Telephony (VoIP)
IP Telephony

d Known as Voice over IP (VoIP)


d Two groups have created standards
International Telecommunications Union (ITU)
Internet Engineering Task Force (IETF)
d Standards agree on two basics
Audio encoded using Pulse Code Modulation (PCM)
RTP used to transfer digitized audio
d Standards disagree on
Signaling
Public Switched Telephone Network (PSTN) interaction

Computer Networks and Internets -- Module 6 70 Spring, 2014

Copyright 2014. All rights reserved.


Signaling

d Telco term for the process of establishing and terminating a


call
d Includes
Mapping a phone number to a location
Finding a route to the called party
Recording information used for accounting and billing
Handling functions such as call forwarding
d Standard call management facility for the traditional
telephone system is known as Signaling System 7 (SS7)

Computer Networks and Internets -- Module 6 71 Spring, 2014

Copyright 2014. All rights reserved.


IETF Approach

d Known as Session Initiation Protocol (SIP)


d Domain Name System used to map a telephone number to
an IP address
d SIP signaling system
User agent makes or terminates calls (e.g., an IP phone)
Location server consults a database of users, services to
which they subscribe, and preferences
Proxy server forwards requests and optimizes routing
Redirect server handles tasks such as call forwarding
and 800-number connections
Registrar server allows users to register for service

Computer Networks and Internets -- Module 6 72 Spring, 2014

Copyright 2014. All rights reserved.


ITU Approach

d Standard is H.323
d Differs substantially from terminology used by SIP
d Terminal provides IP telephone functions and may also
include facilities for video and data transmission
d Gatekeeper provides location and signaling functions, and
establishes connections to the PSTN
d Gateway interconnects the IP phone system and PSTN, and
handles both signaling and media translation
d Multipoint Control Unit (MCU) provides services such as
multipoint conferencing

Computer Networks and Internets -- Module 6 73 Spring, 2014

Copyright 2014. All rights reserved.


International Softswitch Consortium (ISC)

d Formed by vendors to consolidate terminology from


multiple standards and create a single conceptual model
d Defined a list of 10 functions that are sufficient to explain
all others
d Invented new terms for each function

Computer Networks and Internets -- Module 6 74 Spring, 2014

Copyright 2014. All rights reserved.


Summary Of VoIP Protocols And Layering

Layer Call User User Support Routing Signal


Process. multimedia Data Transport

H.323 RTP T.120 RTCP ENUM SIGTRAN


5 Megaco RTSP TRIP
MGCP NTP
SIP SDP

4 TCP UDP TCP TCP SCTP


UDP UDP

3 IP, RSVP, and IGMP

d Each protocol can be complex


d H.323 is an umbrella

Computer Networks and Internets -- Module 6 75 Spring, 2014

Copyright 2014. All rights reserved.


H.323

d Large set of protocols collected together


d Provides voice, video, and data transfer
d Summary of major protocols

Layer Signaling Registration Audio Video Data Security

5 H.225.0-Q.931 H.225.9-RAS G.711 H.261 T.120 H.235


H.250-Annex G H.263 H.323
H.245 G.722
H.250 G.723
G.728

RTP, RTCP

4 TCP, UDP UDP TCP TCP, UDP

3 IP, RSVP, and IGMP

Computer Networks and Internets -- Module 6 76 Spring, 2014

Copyright 2014. All rights reserved.


Telephone Number Mapping And Routing

d Two standards proposed by IETF


TRIP relies on location servers to exchange information
ENUM (E.164 NUMbers) uses arpa top-level domain in
the Domain Name System
d ENUM example
Phone number is 1-800-555-1234
Domain name is constructed as the string

4.3.2.1.5.5.5.0.0.8.1.e164.arpa

Computer Networks and Internets -- Module 6 77 Spring, 2014

Copyright 2014. All rights reserved.


Network Security
Network Security
d Large subject with many aspects
d Major problems include
2 22222222222222222222222222222222222222222222222222222222222222222222222
1 Problem 1 Description 1
1 2 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Phishing 1 Masquerading as a well-known site such as a bank 1
1 1 to obtain a users personal information, typically an 1
1 1 1
12 22222222222222222222222222222222222222222222222222222222222222222222222
1 account number and access code 1
1 1 1
1 Misrepresentation 1 Making false or exaggerated claims about goods or 1
1 1 services, or delivering fake or inferior products 1
21 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Scams 1 Various forms of trickery intended to deceive naive 1
1 1 1
1 users into investing money or abetting a crime
12 22222222222222222222222222222222222222222222222222222222222222222222222 1
1 1 1
1 Denial of Service 1 Intentionally blocking a particular Internet site to 1
1 1 prevent or hinder business activities and commerce 1
21 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Loss of Control 1 An intruder gains control of a computer system 1
1 1 and uses the system to perpetrate a crime 1
12 22222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
1 Loss of Data 1 Loss of intellectual property or other valuable 1
112 22222222222222222222222222222222222222222222222222222222222222222222222
11 proprietary business information 11

Computer Networks and Internets -- Module 6 79 Spring, 2014

Copyright 2014. All rights reserved.


Examples Of Techniques Attackers Use
2222222222222222222222222222222222222222222222222222222222222222222222222
1 Technique 1 Description 1
2
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Wiretapping 1 Making a copy of packets 1
2
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Replay 1 Sending packets captured from a previous session 1
2
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Buffer Overflow 1 Overflowing a memory buffer to overwrite values 1
1 222222222222222222222222222222222222222222222222222222222222222222222222
2 1 1
1 1 1
Address Spoofing
12222222222222222222222222222222222222222222222222222222222222222222222222
1 Faking the IP source address in a packet 1
1 1 1
12222222222222222222222222222222222222222222222222222222222222222222222222
Name Spoofing 1 Using a misspelling of a well-known name 1
1 1 1
1 DoS and DDoS 1 Flooding a site with packets to prevent access 1
2
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 SYN Flood 1 Sending a stream of random TCP SYN segments 1
2
1 222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Key Breaking 1 Guessing a decryption key or password 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 Port Scanning 1 Probing ports to find a vulnerable application 1
12222222222222222222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
Packet Interception 1 Removing a packet from the Internet
112222222222222222222222222222222222222222222222222222222222222222222222222 11
1

Computer Networks and Internets -- Module 6 80 Spring, 2014

Copyright 2014. All rights reserved.


Indirect Attacks

d Attacker commandeers computers of unwitting users


d Bots running on commandeered computers launch attack
d Example: Distributed Denial of Service (DDoS)

attacker commandeers
multiple computers
and streams packets
aggregate traffic to target
overwhelms server

Internet

Computer Networks and Internets -- Module 6 81 Spring, 2014

Copyright 2014. All rights reserved.


Packet Interception

d Extreme vulnerability
d Can be exploited for many attacks
d Permits man-in-the-middle attacks
d Example attacks

can impersonate a host or can wiretap, replay, spoof,


pass altered packets on to break keys, scan ports, and
any Internet destination impersonate a server

server man-in-the-middle source

Computer Networks and Internets -- Module 6 82 Spring, 2014

Copyright 2014. All rights reserved.


Security Policy

d No absolutely secure network exists


d Before security mechanisms are meaningful, organization
must define a security policy
Data integrity (no unauthorized change)
Data availability (no disruption of service)
Data confidentiality (no unauthorized access)
Privacy (no disclosure of senders identity)
Accountability (record keeping and audit trail)
Authorization (who is permitted to access information)

Computer Networks and Internets -- Module 6 83 Spring, 2014

Copyright 2014. All rights reserved.


Authorization And Authentication

d Authorization is intertwined with authentication


Authorization meaningless without authentication
Must know identity of a requester
d There is no point in defining a security policy that cannot be
enforced

Computer Networks and Internets -- Module 6 84 Spring, 2014

Copyright 2014. All rights reserved.


Enforcement Mechanisms

2 222222222222222222222222222222222222222222222222222222222222222222222
1 Technique 1 Purpose 1
21 222222222222222222222222222222222222222222222222222222222222222222222 1 1
1 Hashing 1 Data integrity 1
21 222222222222222222222222222222222222222222222222222222222222222222222 1 1
1 Encryption 1 Confidentiality 1
21 222222222222222222222222222222222222222222222222222222222222222222222 1 1
1 Digital Signatures 1 Message authentication 1
21 222222222222222222222222222222222222222222222222222222222222222222222 1 1
1 1 1
Digital Certificates
12 222222222222222222222222222222222222222222222222222222222222222222222 1 Sender authentication 1
1 1 1
12 222222222222222222222222222222222222222222222222222222222222222222222
Firewalls 1 Site integrity 1
1 1 1
1 Intrusion Detection Systems 1 Site integrity 1
21 222222222222222222222222222222222222222222222222222222222222222222222 1 1
1 Deep Packet Inspection & Content Scanning 1 Site integrity 1
21 222222222222222222222222222222222222222222222222222222222222222222222 1 1
1 1 1
1 Virtual Private Networks (VPNs) 1 Data confidentiality and 1
1 1 trusted access 1
12 222222222222222222222222222222222222222222222222222222222222222222222 1 1

Computer Networks and Internets -- Module 6 85 Spring, 2014

Copyright 2014. All rights reserved.


Hash

d Used to guarantee message arrives with no


Changes
Additions
d Sender and receiver share a key
d Sender uses key to compute a small value, H, called a
Message Authentication Code (MAC)
Hash of the message
d Sender transmits H with the message
d Receiver uses same key to compute hash of received
message and compares to H

Computer Networks and Internets -- Module 6 86 Spring, 2014

Copyright 2014. All rights reserved.


Encryption

d Fundamental security technique


d Predates computers and computer networks
d Extensive mathematical analysis
d Definitions
Plaintext: original, unencrypted message
Cyphertext: message after encryption
Encryption key: short bit string used for encryption
Decryption key: short bit string used for decryption
d Note: in some schemes, the encryption and decryption keys
differ; in others, they are identical

Computer Networks and Internets -- Module 6 87 Spring, 2014

Copyright 2014. All rights reserved.


Mathematics Of Encryption

d Encryption and decryption viewed as functions


d Encrypt takes key, K1, and plaintext message, M, as
arguments and produces cyphertext, C, as a result

C = encrypt ( K1 , M )

d Decrypt takes a key, K2, and cyphertext, C, as arguments,


and produces a plaintext message, M, as a result

M = decrypt ( K2 , C )

d Mathematically, decrypt is the inverse of encrypt

M = decrypt ( K2 , encrypt ( K1 , M ) )

Computer Networks and Internets -- Module 6 88 Spring, 2014

Copyright 2014. All rights reserved.


Two Main Types Of Encryption

d Private or secret key encryption (symmetric)


Encryption and decryption use same key
Key is a shared secret

M = decrypt ( K , encrypt ( K , M ) )

d Public key encryption (asymmetric)


Encryption and decryption use different keys
Public key is widely disseminated
Private key is known only to one party
Knowing a users public key does not help one guess the
corresponding private key
Computer Networks and Internets -- Module 6 89 Spring, 2014

Copyright 2014. All rights reserved.


Authentication With Digital Signatures

d Uses encryption (works well with public key methods)


d Allows receiver to verify the identity of the sender
d Example
Bob sends message to Alice
* Uses his private key to encode message
* Includes specific information such as Alices name
and a date to avoid a replay attack
Alice
* Uses Bobs public key to decrypt message
* Knows that only Bob could have sent the message

Computer Networks and Internets -- Module 6 90 Spring, 2014

Copyright 2014. All rights reserved.


Authentication With Digital Signatures
(continued)

d Can use additional level of encryption to guarantee


confidentiality
d Bob signs message and encrypts using Alices public key

X = encrypt ( alice_pub , encrypt ( bob_priv, M ) )

d Alice decrypts message with her private key, and then


authenticates the sender by decrypting with Bobs public
key

M = decrypt ( bob_pub , decrypt ( alice_priv , X ) )

Computer Networks and Internets -- Module 6 91 Spring, 2014

Copyright 2014. All rights reserved.


Key Distribution

d Everyone needs to obtain a copy of each users public key


d If an attacker distributes an incorrect key, the entire
encryption scheme is compromised
d Question: how can public keys be distributed in a way that
guarantees each copy is correct?
d Several solutions have been proposed; most rely on key
authority organizations that hand out public keys
d Message containing keys signed by well-known authority is
a digital certificate
d Note: knowing the public key of an authority makes it
possible to obtain other public keys securely

Computer Networks and Internets -- Module 6 92 Spring, 2014

Copyright 2014. All rights reserved.


Firewall Technology

d Inserted between site and Internet


d Filters packets according to policy
d Controls both incoming and outgoing traffic
d General approach: prevent all communication unless
explicitly allowed by policy

Computer Networks and Internets -- Module 6 93 Spring, 2014

Copyright 2014. All rights reserved.


Firewall Example

d Consider a site with three servers


web sever
( 192.5.48.1 )

firewall in switch
email sever
( 192.5.48.2 )

Internet

DNS sever
( 192.5.48.3 )

d Firewall only allows packets to/ from each server

Computer Networks and Internets -- Module 6 94 Spring, 2014

Copyright 2014. All rights reserved.


Firewall Example
(continued)

d Example of firewall rules for the site:

22222222222222222222222222222222222222222222222222222222222222222222222222222
1 Dir 1 Frame Type 1 IP Src 1 IP Dest 1 IP Type 1 Src Port 1 Dst Port 1
2
1 2222222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1 1
1 in 1 0800 1 * 1 192.5.48.1 1 TCP 1 * 1 80 1
2
1 2222222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1 1
1 in 1 0800 1 * 1 192.5.48.2 1 TCP 1 * 1 25 1
2
1 2222222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1 1
122222222222222222222222222222222222222222222222222222222222222222222222222222
in 1 0800 1 * 1 192.5.48.3 1 TCP 1 * 1 53 1
1 1 1 1 1 1 1 1
in 1 0800
122222222222222222222222222222222222222222222222222222222222222222222222222222
1 * 1 192.5.48.3 1 UDP 1 * 1 53 1
1 1 1 1 1 1 1 1
out 0800 192.5.48.1
122222222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 * 1 TCP 1 80 1 * 1
1 out 1 0800 1 192.5.48.2 1 * 1 TCP 1 25 1 * 1
122222222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1 1
1 out 1 0800 1 192.5.48.3 1 * 1 TCP 1 53 1 * 1
2
1 2222222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1 1
1 out 1 0800 1 192.5.48.3 1 * 1 UDP 1 53 1 * 1
122222222222222222222222222222222222222222222222222222222222222222222222222222
1 1 1 1 1 1 1

Computer Networks and Internets -- Module 6 95 Spring, 2014

Copyright 2014. All rights reserved.


Other Network Security Systems

d Intrusion Detection System (IDS)


Watches incoming packet stream
Attempts to identify unusual activity
d Deep Packet Inspection (DPI)
Looks beyond header into packet contents
Requires significant processing
d File inspection systems
Examine whole data file (e.g., email)
Can detect more problems than systems that examine
individual packets

Computer Networks and Internets -- Module 6 96 Spring, 2014

Copyright 2014. All rights reserved.


Virtual Private Network (VPN)

d Emulates a dedicated network connection


d Sends traffic across commodity Internet
d Uses encryption to guarantee confidentiality
d Technique known as tunneling
d Can be used
Among sites of an organization
Between individual and organization

Computer Networks and Internets -- Module 6 97 Spring, 2014

Copyright 2014. All rights reserved.


Encryption And Tunneling Used In VPNs

d Three basic approaches used


Payload encryption
IP-in-IP tunneling
IP-in-TCP tunneling
d Original data is encrypted in all three
d For additional security, pad datagram length

Computer Networks and Internets -- Module 6 98 Spring, 2014

Copyright 2014. All rights reserved.


Illustration Of IP-in-IP Tunneling
Used For A Secure VPN

src = X
Original (Unencrypted) Payload
dst = Y

encrypt

Encrypted Version Of Original Datagram

src = R1
Encrypted Datagram Encapsulated For Transmission
dst = R2

Computer Networks and Internets -- Module 6 99 Spring, 2014

Copyright 2014. All rights reserved.


Examples Of Security Technologies

d PGP (Pretty Good Privacy)


d SSH (Secure Shell)
d SSL (Secure Socket Layer)
d TLS (Transport Layer Security)
d HTTPS (HTTP Security)
d IPsec (IP security)
d RADIUS (Remote Authentication Dial-In User Service)
d WEP (Wired Equivalent Privacy)
d WPA (Wi-Fi Protected Access)

Computer Networks and Internets -- Module 6 100 Spring, 2014

Copyright 2014. All rights reserved.


Network Management
Terminology

d Network manager or network administrator is a person


responsible for network
Planning
Installation
Operation
Monitoring
d Network refers to intranet
Owned and operated by a single organization
Contains many managed items such as routers, switches,
servers, and hosts
May span multiple sites

Computer Networks and Internets -- Module 6 102 Spring, 2014

Copyright 2014. All rights reserved.


An Interesting Problem

d Many protocol mechanisms have been created to overcome


problems automatically
Forward error correction
Retransmission
Routing protocols
d Consequence: protocols may hide problems from a manager!

Computer Networks and Internets -- Module 6 103 Spring, 2014

Copyright 2014. All rights reserved.


The Industry Standard Model

d Derived from ITU recommendation M.3400


d Known by abbreviation, FCAPS
d Acronym refers to five aspects of management
2 222222222222222222222222222222222222222222222222222222222
1 Abbreviation 1 Meaning 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 F 1 Fault detection and correction 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 C 1 Configuration and operation 1
12 222222222222222222222222222222222222222222222222222222222
1 1
1 A 1 Accounting and billing 1
21 222222222222222222222222222222222222222222222222222222222
1 1
1 1 1
P 1 Performance assessment and optimization 1
12 222222222222222222222222222222222222222222222222222222222
1 1 1
112 222222222222222222222222222222222222222222222222222222222
S 11 Security assurance and protection 11

Computer Networks and Internets -- Module 6 104 Spring, 2014

Copyright 2014. All rights reserved.


Fault Isolation And Root-Cause Analysis

d Users report high-level symptoms


Example: I lost access to a shared file system
d Manager must relate symptoms to underlying cause
Cable cut
Power supply has failed or disk has crashed
Software configuration changed (e.g., file system renamed
or moved)
Security changed (e.g., password expired)

Computer Networks and Internets -- Module 6 105 Spring, 2014

Copyright 2014. All rights reserved.


Network Element

d Generic term for a managed entity


Physical device
Service (e.g., DNS)
d Examples
222222222222222222222222222222222222222222222222222
1 Manageable Network Elements 1
222222222222222222222222222222222222222222222222222
1 1
1 Layer 2 Switch 1 1
1 IP router
222222222222222222222222222222222222222222222222222
1 1
1 VLAN Switch 1 1
1
12222222222222222222222222222222222222222222222222221
Firewall
1 Wireless Access Point 1 Digital Circuit (CSU/DSU) 1
1
1222222222222222222222222222222222222222222222222222 1
1 1 1
Head-End DSL Modem 1
12222222222222222222222222222222222222222222222222221 DSLAM
1 1 1
Server 1
12222222222222222222222222222222222222222222222222221
DHCP DNS Server
1 1 1
1 Web Server 1 Load Balancer 1
1222222222222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 6 106 Spring, 2014

Copyright 2014. All rights reserved.


Element Management System

d Management tool that can manage one element at a time


d Typically, supplied by vendor of the network element
d Limitation of element management systems
When configuring MPLS tunnel across multiple routers,
element management system only allows manager to
configure one router at a time
If routers sold by multiple vendors, each vendor may have
its own element management system
d Unfortunately, many networks only have element management

Computer Networks and Internets -- Module 6 107 Spring, 2014

Copyright 2014. All rights reserved.


Types Of Network Management Tools

Physical Layer Testing Performance Monitoring

Reachability And Connectivity Flow Analysis

Packet Analysis Routing And Traffic Engineering

Network Discovery Configuration

Device Interrogation Security Enforcement

Event Monitoring Network Planning

Computer Networks and Internets -- Module 6 108 Spring, 2014

Copyright 2014. All rights reserved.


How Should Management Systems Operate?

d Some possibilities
Use a parallel physical network
Use a parallel logical network
Use a special link-layer protocol
Use the same links, equipment, and protocols as data
d Surprise: modern network management follows the last
approach

Computer Networks and Internets -- Module 6 109 Spring, 2014

Copyright 2014. All rights reserved.


Simple Network Management Protocol (SNMP)

d Internet standard
d Allows software in a managers computer (manager) to interact
with software that runs in an element (agent)
d Specifies format and meaning of messages exchanged
d Runs as an application protocol over TCP or UDP
d Uses fetch-store paradigm

Computer Networks and Internets -- Module 6 110 Spring, 2014

Copyright 2014. All rights reserved.


SNMP Fetch-Store Paradigm

d Set of conceptual variables defined


d Each variable given a name
d Set of variables known as Management Information Base
(MIB)
d SNMP offers two basic operations
GET to read the value of a variable
PUT to store a value into a variable
d All management functions are defined as side-effects of GET or
PUT to a MIB variable
d Example: reboot defined as side-effect of PUT

Computer Networks and Internets -- Module 6 111 Spring, 2014

Copyright 2014. All rights reserved.


SNMP Encoding

d SNMP uses a standard known as Abstract Syntax Notation.1


(ASN.1)
d Variable-length encoding
d Example: integer encoded as length and value
2 22222222222222222222222222222222222222222222222222222
1 Decimal 1 Hexadecimal 1 Length 1 Bytes Of Value 1
1 1 1 1 1
Integer Equivalent
21 22222222222222222222222222222222222222222222222222222
1 1 Byte 1 (in hex) 1
1 27 1 1B 1 01 1 1B 1
12 22222222222222222222222222222222222222222222222222222
1 1 1 1
1 1 1 1 1
792 318
12 22222222222222222222222222222222222222222222222222222
1 1 02 1 03 18 1
1 1 1 1 1
24,567 5FF7
12 22222222222222222222222222222222222222222222222222222
1 1 02 1 5F F7 1
1 1 1 1 1
1 190,345 1 2E789 1 03 1 02 E7 89 1
12 22222222222222222222222222222222222222222222222222222
1 1 1 1

Computer Networks and Internets -- Module 6 112 Spring, 2014

Copyright 2014. All rights reserved.


MIB Variable Names

d Are hierarchical
d Begin with standard prefix
d Identify a specific protocol and variable
d Example: counter for IP packets received has name

iso.org.dod.internet.mgmt.mib.ip.ipInReceives

d Name is encoded as integers:

1.3.6.1.2.1.4.3

Computer Networks and Internets -- Module 6 113 Spring, 2014

Copyright 2014. All rights reserved.


Arrays In A MIB

d ASN.1 does not define an array type


d Many MIB variables correspond to conceptual array
Routing table
ARP cache
Set of network interfaces
d Trick
The index is appended onto variable name
Manager software uses GET-NEXT operation to move
through array

Computer Networks and Internets -- Module 6 114 Spring, 2014

Copyright 2014. All rights reserved.


Example Of Indexing

d IP routing table assigned variable name

standard-prefix.ip.ipRoutingTable

d Each field has a name


d Issuing GET_NEXT operation gets first routing table entry
d For example, name of destination address field variable is

standard-prefix.ip.ipRoutingTable.ipRouteEntry.field.IPdestaddr

Computer Networks and Internets -- Module 6 115 Spring, 2014

Copyright 2014. All rights reserved.


A Plethora Of MIBs

d Initially
One MIB
Defined variables for IP, TCP, UDP, ICMP
d Now
Many MIBs
Variables for routers, switches, modems, printers, hosts,
and other network elements

Computer Networks and Internets -- Module 6 116 Spring, 2014

Copyright 2014. All rights reserved.


Summary

d Streamed transfer of real-time data incompatible with Internets


best-effort delivery
d Two approaches
Isochronous network
Timestamps and jitter buffer
d Real-Time Transport Protocol (RTP) uses timestamps and
sequence numbers

Computer Networks and Internets -- Module 6 117 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d Many IP telephony standards proposed


d Connection to PSTN causes debate
d H.323 and SIP standards are most widely used
d ENUM system uses DNS to convert phone number to IP
address

Computer Networks and Internets -- Module 6 118 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d Quantitative measures of networks include delay, throughput,


goodput, and jitter
d Delay increases as utilization increases
d One can purchase more throughput, but not less delay
d Quality of Service (QoS) technologies provide guarantees on
performance
d The industry has moved away from fine-grain QoS (per-flow as
in ATM and IntServ) to coarse-grain QoS (DiffServ)
d Multi-Protocol Label Switching (MPLS) is used by tier-1 ISPs
to provide circuit-oriented networking

Computer Networks and Internets -- Module 6 119 Spring, 2014

Copyright 2014. All rights reserved.


Summary
(continued)

d Network security is complex and difficult


d No network is completely secure
d Life goes on anyway
d Network management is complex and difficult
d Current tools are fairly primitive
d Life goes on anyway

Computer Networks and Internets -- Module 6 120 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
MODULE VII

Emerging Technologies

Computer Networks and Internets -- Module 7 1 Spring, 2014


Copyright 2014. All rights reserved.
Topics

d Software Defined Networking


d The Internet Of Things
d Other trends in networking

Computer Networks and Internets -- Module 7 2 Spring, 2014

Copyright 2014. All rights reserved.


Software Defined Networking
(SDN)
What Is Software Defined Networking?

d One of the hottest topics in networking


d According to marketing SDN is
A way to eliminate all human error
A technology that improves overall routing
An approach that eliminates 66% to 80% of operational
costs
d In reality SDN is
A technology that gives programmers more control over
network equipment
An approach with the potential to make some
improvements in network configuration and management

Computer Networks and Internets -- Module 7 4 Spring, 2014

Copyright 2014. All rights reserved.


Motivation For SDN

d Switch from element management to network management


d Move from proprietary to open standards
d Automate and unify network-wide configuration
d Change from per-layer to cross-layer control
d Accommodate virtualization used in data centers

Computer Networks and Internets -- Module 7 5 Spring, 2014

Copyright 2014. All rights reserved.


Background And Definitions

d Terminology adopted from network equipment engineers


d Data plane
Refers to packet processing mechanisms
Typical functions include packet classification and
packet forwarding
Operates at wire speed
d Control plane
Refers to management
Typical functions include interacting with network
manager and modifying forwarding tables
Operates slowly and only when changes are needed

Computer Networks and Internets -- Module 7 6 Spring, 2014

Copyright 2014. All rights reserved.


Conceptual Organization Of Network Devices

control plane
(software)
data plane passes control plane loads
management packets new configuration
up to control plane into the hardware

packets data plane packets


arrive (hardware) leave

d Data plane may use ASIC hardware for speed


d Control plane includes a TCP/IP stack

Computer Networks and Internets -- Module 7 7 Spring, 2014

Copyright 2014. All rights reserved.


Control Plane Interface Modules

CLI WEB SNMP ...

common interface (internal)

packets data plane packets


arrive (hardware) leave

d Managers can choose among command line interface, web


interface, and SNMP
Computer Networks and Internets -- Module 7 8 Spring, 2014

Copyright 2014. All rights reserved.


The SDN Approach: An External Controller
External
Controller

CLI WEB SNMP sdn

PC running Linux
common interface (internal)

packets data plane packets


arrive (hardware) leave

Computer Networks and Internets -- Module 7 9 Spring, 2014

Copyright 2014. All rights reserved.


In Practice

Controller 1 Controller 2 Controller 3 Controller 4 Controller 5

controller
to element
controller
to controller

Domain 1 Domain 2 Domain 3 Domain 4 Domain 5

d Each controller can operate multiple devices


d Controllers coordinate to provide consistent configuration

Computer Networks and Internets -- Module 7 10 Spring, 2014

Copyright 2014. All rights reserved.


SDN Communication

d Two conceptually separate types


Controller to network element
Controller to controller
d Protocols used can differ

Computer Networks and Internets -- Module 7 11 Spring, 2014

Copyright 2014. All rights reserved.


OpenFlow

d Specification for controller-to-element communication


d Devised at Stanford
d Now a de facto industry standard for SDN
d Defines
Secure communication (over SSL)
Message format
Items to be managed
d Completely unlike SNMP

Computer Networks and Internets -- Module 7 12 Spring, 2014

Copyright 2014. All rights reserved.


OpenFlow Model

d Uses flow table abstraction


Data plane is assumed to have a sequence of flow tables
Each flow table specifies how to parse packets and
handle them
d OpenFlow allows manager to set values in each flow table
d Important note: flow table model closely matches
classification hardware found in Ethernet switches

Computer Networks and Internets -- Module 7 13 Spring, 2014

Copyright 2014. All rights reserved.


Classification

d Alternative to packet demultiplexing


d Examines headers from multiple layers at the same time
d Uses an array of pairs
(pattern, action)

d Where
Pattern is a pattern that is matched against packets
Action specifies steps to be taken if the match succeeds

Computer Networks and Internets -- Module 7 14 Spring, 2014

Copyright 2014. All rights reserved.


Classification Hardware
classification engine

packet to be matched

pattern 1 action 1

pattern 2 action 2

pattern 3 action 3

.. ..
. .
pattern N (default that matches any packet) action N

d Hardware checks all patterns in parallel


d Result is extremely high speed classification

Computer Networks and Internets -- Module 7 15 Spring, 2014

Copyright 2014. All rights reserved.


TCAM

d Acronym for Ternary Content Addressable Memory


d Hardware technology used for high-speed classification
d Pattern is ternary because value for each bit can be 0, 1, or
dont care
d TCAM matches all patterns at once, and performs the action
on the first matching table entry

Computer Networks and Internets -- Module 7 16 Spring, 2014

Copyright 2014. All rights reserved.


Example Of IPv4 Classification

d The challenge
A frame arrives
What is the minimum number of steps needed to
determine whether the frame carries an IPv4 datagram
destined for a web server?
d The answer
Check whether the frame type field specifies IPv4
(0x0800)
Check whether the IP protocol field specifies TCP (6)
Check whether the TCP destination port specifies a web
server (80)

Computer Networks and Internets -- Module 7 17 Spring, 2014

Copyright 2014. All rights reserved.


IPv6 Classification

d Simplest case (only a base header)


Frame type field specifies IPv6 (0x86DD)
Next Header field specifies TCP (6)
TCP destination port specifies a web server (80)
d Additional patterns needed for extension headers
d Example: base header plus a route header
Frame type field specifies IPv6 (0x86DD)
Next Header field specifies Route Header (43)
Next Header field specifies TCP (6)
TCP destination port specifies a web server (80)

Computer Networks and Internets -- Module 7 18 Spring, 2014

Copyright 2014. All rights reserved.


Example Items In An OpenFlow Pattern
222222222222222222222222222222222222222222222222222222222222222222
Field Meaning
Layer 2 fields
Ingress Port Switch port over which the packet arrived
Metadata 64-bit field of metadata used in the pipeline
Ether src 48-bit Ethernet source address
Ether dst 48-bit Ethernet destination address
Ether Type 16-bit Ethernet type field
VLAN id 12-bit VLAN tag in the packet
VLAN priority 3-bit VLAN priority number
ARP opcode 8-bit ARP opcode
Layer 3 fields
MPLS label 20-bit MPLS label
MPLS class 3-bit MPLS traffic class
IPv4 src 32-bit IPv4 source address
IPv4 dst 32-bit IPv4 destination address
IPv6 src 128-bit IPv6 source address
IPv6 dst 128-bit IPv6 destination address
IPv4 Proto 8-bit IPv4 protocol field
IPv6 Next Header 8-bit IPv6 next header field
TOS 8-bit IPv4 or IPv6 Type of Service bits

Computer Networks and Internets -- Module 7 19 Spring, 2014

Copyright 2014. All rights reserved.


Example Items In An OpenFlow Pattern
(continued)
222222222222222222222222222222222222222222222222222222222222222
Field Meaning
Layer 4 fields
TCP/UDP/SCTP src 16-bit TCP/UDP/SCTP source port
TCP/UDP/SCTP dst 16-bit TCP/UDP/SCTP destination port
ICMP type 8-bit ICMP type field
ICMP code 8-bit ICMP code field

Computer Networks and Internets -- Module 7 20 Spring, 2014

Copyright 2014. All rights reserved.


Examples Of SDN Functionality

d End-to-end layer 2 paths


d Forwarding based on source as well as destination
d All traffic from a specific MAC address sent along a specific
path
d Segregation of traffic based on application type
d Multipath forwarding based on hash of 4-tuple
d Transport of nonstandard layer 3 protocols

Computer Networks and Internets -- Module 7 21 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
The Internet Of Things
Internet Of Things

d Awkward term used for embedded systems on the Internet


Generally not operated by humans
Can access one another or cloud services
d Examples
Scientific sensor systems
Home automation systems
Smart grid
Retail systems

Computer Networks and Internets -- Module 7 24 Spring, 2014

Copyright 2014. All rights reserved.


Technology Characteristics

d Low power
Energy harvesting (e.g., door latch)
Multi-year battery life
d Wireless communication
Necessary in many situations
Enables mobility

Computer Networks and Internets -- Module 7 25 Spring, 2014

Copyright 2014. All rights reserved.


Wireless Mesh Network

d Useful when individual nodes have very low power (limited


range)
d Allows a set of nodes to communicate even if some nodes
cannot communicate directly
d Each node agrees to forward packets on behalf of neighbors

Computer Networks and Internets -- Module 7 26 Spring, 2014

Copyright 2014. All rights reserved.


Example Wireless Mesh Technology

d ZigBee IP
Created by ZigBee Alliance
Uses IEEE 802.15.4 wireless radios
Intended for smart grid
d ZigBee protocol stack
Goal is to run IPv6, TCP, and HTTP
Includes many other protocols

Computer Networks and Internets -- Module 7 27 Spring, 2014

Copyright 2014. All rights reserved.


802.15.4 Wireless Characteristics

d Goal is low power, and result is


Extremely low data rate
Extremely small MTU
Limited distance
222222222222222222222222222222222222222222
1222222222222222222222222222222222222222222
Property 1 Value 1
1 1 1
1 Networking paradigm 1 Packet switching 1
222222222222222222222222222222222222222222
1 1 1
1 Maximum data rate 1 250 Kbps 1
222222222222222222222222222222222222222222
1 1 1
1 Payload size (MTU) 1 102 octets 1
222222222222222222222222222222222222222222
1 1 1
1 Maximum distance 1 10 meters 1
1222222222222222222222222222222222222222222
1 1

Computer Networks and Internets -- Module 7 28 Spring, 2014

Copyright 2014. All rights reserved.


ZigBee IP Mesh Routing

d One or more border routers


Connect to global Internet
Are more powerful than other nodes
d Set of ZigBee IP routers (ZIP routers)
Attach to appliances
Form a mesh
Forward traffic to border router

Computer Networks and Internets -- Module 7 29 Spring, 2014

Copyright 2014. All rights reserved.


Choosing A Path

d ZIP router must choose a path to a border router


d Cannot simply choose node with the strongest transmission
signal

Internet

B1 B2

d Additional protocol used to find which node receives


strongest signal (MLE)
Computer Networks and Internets -- Module 7 30 Spring, 2014

Copyright 2014. All rights reserved.


Running IPv6 Over A ZigBee Network

d IPv6 can only run over networks that offer an MTU of 1280
or higher, but 802.15.4 has an MTU of 102
d Solution
Additional protocol named 6LoWPAN
Shim layer between IP and device driver

Computer Networks and Internets -- Module 7 31 Spring, 2014

Copyright 2014. All rights reserved.


6LoWPAN Operation

d Sending side
Divides datagram into series of blocks
Transmits each block in a packet
d Receiving side
Joins blocks into a datagram
Delivers entire datagram to IPv6
d Notes
Division into block does not use IP fragmentation
Unlike fragmentation, division and regrouping is
performed at each hop

Computer Networks and Internets -- Module 7 32 Spring, 2014

Copyright 2014. All rights reserved.


ZigBee IP Mesh Routing

d ZIP nodes forward packets toward the border router


d Border router
Can send outgoing packets to the Internet
Forwards other packets across the mesh
d If two ZIP nodes communicate
Packet goes to border router first
Border router forwards to destination

Computer Networks and Internets -- Module 7 33 Spring, 2014

Copyright 2014. All rights reserved.


Border Router Operation

d To forward across the mesh the border router


Learns the topology of the mesh
Computes a path through the mesh to each ZIP node
Uses IPv6 source routing
d IPv6 source routing
Requires IP-in-IP tunneling (header modification
prohibited)
Places an extension header on outer datagram with series
of hops
Each ZIP node only needs to know its neighbors

Computer Networks and Internets -- Module 7 34 Spring, 2014

Copyright 2014. All rights reserved.


Computing Source Routes

d All nodes run Routing Protocol for lossy and Low power
networks (RPL)
d Each node reports its parent to the border router
d RPL code on border router creates a Destination Oriented
Directed Acyclic Graph (DODAG)
d DODAG is used to compute source routes

Computer Networks and Internets -- Module 7 35 Spring, 2014

Copyright 2014. All rights reserved.


Example DODAG

Border router

3 4
2

5 7

6
9
8

d Arcs in DODAG point to parent (path toward border router)


d Source route to node X is reverse of the path from X to
border router

Computer Networks and Internets -- Module 7 36 Spring, 2014

Copyright 2014. All rights reserved.


Does ZigBee IP Make Sense?

d Choosing IPv6 instead of IPv4 means


Much larger datagram headers
The use of 6LoWPAN to divide a datagram into MTU-
size pieces
Sending more data over a slow network
The need for RPL routing protocols
Larger memories (and lower battery life)
d Using TCP and HTTP over IPv6 means
Using DNS to resolve names
Unnecessary overhead
Unnecessary memory footprint
Computer Networks and Internets -- Module 7 37 Spring, 2014

Copyright 2014. All rights reserved.


But Wait, Theres More!

d Smart grid applications must be secure, so ZigBee IP


includes security protocols, including TLS
d IPv6 Neighbor Discovery doesnt work in a mesh network,
so ZigBee IP includes a modification known as 6LoWPAN-
ND
d IEEE 802.15.4 allows short (16-bit) MAC addresses, so
ZigBee IP includes a mechanism that allows a border router
to prevent address collisions

Computer Networks and Internets -- Module 7 38 Spring, 2014

Copyright 2014. All rights reserved.


Major Items In The ZigBee Protocol Stack

Application Protocols

TLS PANA mDNS and DNS-SD MLE

TCP and UDP

IPv6, ICMPv6, and 6LoWPAN-ND RPL

6LoWPAN adaptation

IEEE 802.15.4

d Resulting stack is large


d Design is more general-purpose than necessary
d Technology may be a triumph of politics and economics

Computer Networks and Internets -- Module 7 39 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
Other Trends
In Networking
A Few Key Technologies

d Content Caching
d Peer-To-Peer Communication
d Universal Representation (XML)
d Wireless networks that support mobility
d Higher-speed access technologies (1 Gbps)
d Cloud computing and cloud data centers

Computer Networks and Internets -- Module 7 42 Spring, 2014

Copyright 2014. All rights reserved.


Web Load Balancers
physical severs

site running a web server

shared
database

Internet
connection
..
.

load balancer

d Load balancer distributes HTTP requests across servers


d Path from servers back to client may be higher speed

Computer Networks and Internets -- Module 7 43 Spring, 2014

Copyright 2014. All rights reserved.


Overlay Networking

C C

B D B D

A E A E
Internet

I F I F

H G H G

(a) (b)

(a) Physical connection of computers to the Internet


(b) Logical network imposed by overlay routing

Computer Networks and Internets -- Module 7 44 Spring, 2014

Copyright 2014. All rights reserved.


Other Trends

d Switch to digital telephony and digital video


d Increased use of social networking and social media
d Distributed data centers and migration

Computer Networks and Internets -- Module 7 45 Spring, 2014

Copyright 2014. All rights reserved.


Questions?
STOP

You might also like