Transcript lecture3

EEC-484/584
Computer Networks
Lecture 3
Wenbing Zhao
[email protected]
(Part of the slides are based on Drs. Kurose & Ross’s slides
for their Computer Networking book)
2
Outline
• Connection-oriented and connectionless
services
• Switching
• Reference models
• Networking Standards
• Application layer protocols
– Overview
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
3
Connection-Oriented Services
• Modeled after telephone system – establish
connection before communication
• Some service allows a negotiation among
sender, receiver and subnet regarding the
parameters to be used, such as max
message size, etc.
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
4
Connectionless Services
• Modeled after postal system – a message
carries full destination address, and each
one is routed through the system
independent of all the others
• Ordering of messages are not guaranteed
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
5
Quality of Services
• Quality of service – characterize each
service
• Reliable service – it does not lose data
– Implemented by having the receiver
acknowledge the receipt of each message
– Possible for both connection-oriented and
connectionless services
• Connection-oriented service is not necessarily a
reliable service!
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
6
Connection-Oriented and
Connectionless Services
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
7
Switching
• Circuit switching
• Packet switching
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
8
Circuit Switching and Packet Switching
(a) Circuit switching
(b) Packet switching
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
9
Circuit Switching
• Circuit switching – physical path set up from
source to destination before any data
transmitted, e.g., phone system
– Adv: no congestion problem, only delay is
propagation time
– Disadv: unused bandwidth on allocated circuit is
wasted
• Will go back on this in lecture 11 (network layer)
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
10
Packet Switching
• Packet switching – store-and-forward, one
hop at a time, uses pipelining, each packet
has limited size
– Adv: low overhead – no setup required, high
utilization
– Disadv: packets may be received out of order,
packets may be lost due to buffer overflow
• Will go back on this in lecture 11 (network layer)
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
11
Reference Models
• The OSI Reference Model
– ISO – International Standards Organization
– OSI – Open Systems Interconnection
• Open: open for communication with other systems
• The TCP/IP Reference Model
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
The OSI Reference Model
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
12
13
Principles Applied in Deriving Layers
• A layer should be created where a different
level of abstraction is needed
• Each layer should perform a well-defined
function
• The layer boundaries should be chosen to
minimize info flow across interfaces
• The number of layers should be
– large enough to separate distinct functions
– small enough to have a manageable architecture
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
14
TCP/IP Reference Model
• TCP – Transmission Control Protocol
• IP – Internet Protocol
• Used in Internet and its predecessor
ARPANET
• TCP/IP invented by Cerf and Kahn in
1974, became official protocol of
ARPANET in 1983
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
15
TCP/IP Reference Model
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
16
TCP/IP Reference Model
• Internet Layer
– Connectionless (packet switched)
– Injects packets into the network; delivers them
to the destination
– May be delivered out-of-order
– Packet routing and congestion control are key
issues
– Uses Internet Protocol
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
17
TCP/IP Reference Model
• Transport layer, two protocols
• TCP – Transmission Control Protocol
– Point-to-point
– Connection-oriented
– Reliable (no message loss or corruption)
– Source ordered (sequenced)
– Flow control
– Byte stream, does not maintain message
boundary
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
18
TCP/IP Reference Model
• UDP – User Datagram Protocol
– Point-to-point
– Connectionless
– Unreliable
– Not source ordered
– No flow control
– Preserve message boundary
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
19
TCP/IP Reference Model
• Application Layer – contains higher-level
protocols
– DNS – Domain Name Service
• Maps host names onto their network addresses
– HTTP – HyperText Transfer Protocol
• Fetches pages on the World Wide Web
– FTP – File Transfer Protocol
• Allows user to transfer files efficiently from one
machine to another
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
20
TCP/IP Reference Model
• Host-to-Network Layer
– Host has to connect to the network using
some protocol so it can send IP packets to it
– No protocol is defined
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
21
Network Standardization
• Why standard?
– Only way to achieve interoperability
– Standards also increase the market for
products adhering to them
– Two kinds of standards
• De facto – from the fact (standards that just
happened)
• De jure – by law (formal, legal standards adopted
by authorized organization)
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
Treaty Organization between
Nations
United Nations
ITU - International Telecommunications Union
CCITT/ITU-T – telephone and data
communications
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
22
23
Voluntary, Nontreaty Organization
ISO (International Standards Organization)
issues standards on wide range of topics
200 TC (Technical Committees)
TC97 – computers and info processing
SC (Subcommittees)
WG (Working Groups)
ANSI (American National Standards Institute)
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
IEEE 802 Standards
Spring Semester 2007
EEC-484/584: Computer Networks
24
Wenbing Zhao
25
Internet Standard Body
• Internet Society (used to be Internet Architecture
Board)
– Internet Research Task Force (IRTF)
• Concentrate on long term research
– Internet Engineering Task Force (IETF)
• Deal with short term engineering issues
• Standardization process
– Proposed standard: request for comments (RFCs)
– Draft standard: > 4 month test
– Internet standard: if convinced the idea is sound
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
26
Application Layer Protocols
• Principles of networked applications
– Client server model
– Sockets
– Addressing
– Protocol
– What do we need from transport layer?
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
27
Creating a Network Application
• Write programs that
– run on different end
systems and
– communicate over a
network
application
transport
network
data link
physical
• No need to write code
for devices in subnet
– Subnet devices do not run
user application code
– application on end systems
allows for rapid app
development, propagation
Spring Semester 2007
application
transport
network
data link
physical
EEC-484/584: Computer Networks
application
transport
network
data link
physical
Wenbing Zhao
28
Inter-Process Communications
• Process: program
running within a host
• Processes in different
hosts communicate
by exchanging
messages
Spring Semester 2007
• Client process:
process that initiates
communication
• Server process:
process that waits to
be contacted
EEC-484/584: Computer Networks
Wenbing Zhao
29
Sockets
• Process sends/receives
messages to/from its
socket
• For each point-to-point
connection, there are two
sockets, one on each side
• API: (1) choice of transport
protocol; (2) ability to fix a
few parameters
Spring Semester 2007
host or
server
host or
server
Controlled by
app developer
process
process
socket
socket
TCP with
buffers,
variables
Internet
TCP with
buffers,
variables
Controlled
by OS
EEC-484/584: Computer Networks
Wenbing Zhao
30
Addressing
• To receive messages, process must have
identifier
• Host device has unique 32-bit IP address
• Question: Does IP address of host on which
process runs suffice for identifying the process?
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
31
Addressing
• Identifier includes both IP address and port
numbers (16-bit) associated with process on
host
• Example port numbers:
– HTTP server: 80
– SSH server: 22
• To send HTTP request to academic.csuohio.edu
Web server:
– IP address: 137.148.49.46
– Port number: 80
Spring Semester 2007
EEC-484/584: Computer Networks
Wenbing Zhao
32
Application Layer Protocol Defines
• Types of messages exchanged
– e.g., request, response
• Message syntax
– what fields in messages & how
fields are delineated
• Message semantics
– meaning of information in fields
• Rules for when and how
processes send & respond to
messages
Spring Semester 2007
Public-domain protocols:
• defined in RFCs
• allows for
interoperability
• e.g., HTTP, SMTP
Proprietary protocols:
• e.g., KaZaA
EEC-484/584: Computer Networks
Wenbing Zhao
What Transport Service Does an
Application Need?
Data loss
• some apps (e.g., audio) can
tolerate some loss
• other apps (e.g., file
transfer, telnet) require
100% reliable data transfer
Timing
• some apps (e.g.,
Internet telephony,
interactive games)
require low delay to be
“effective”
Spring Semester 2007
Bandwidth
• some apps (e.g.,
multimedia) require
minimum amount of
bandwidth to be
“effective”
• other apps (“elastic
apps”) make use of
whatever bandwidth
they get
EEC-484/584: Computer Networks
Wenbing Zhao
33
34
Transport Service Requirements of
Common Applications
Data loss
Bandwidth
Time Sensitive
file transfer
e-mail
Web documents
real-time audio/video
no loss
no loss
no loss
loss-tolerant
no
no
no
yes, 100’s msec
stored audio/video
interactive games
instant messaging
loss-tolerant
loss-tolerant
no loss
elastic
elastic
elastic
audio: 5kbps-1Mbps
video:10kbps-5Mbps
same as above
few kbps up
elastic
Application
Spring Semester 2007
EEC-484/584: Computer Networks
yes, few secs
yes, 100’s msec
yes and no
Wenbing Zhao