lecture3 - Academic Csuohio

Download Report

Transcript lecture3 - Academic Csuohio

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
Second Session Issue
• Available time slot
–
–
–
–
–
–
M W 4-5:50pm
T Th 6-7:50pm
M W 8-9:50pm
M W 2-3:50pm
T Th 2-3:50pm
F 4-7:50pm
• 1st option: to have a second session with at least
16 students
• 2nd option: common lecture time, but 3 sessions
of labs and discussions
Spring Semester 2006
EEC-484/584: Computer Networks
Wenbing Zhao
3
Outline
•
•
•
•
Mock quiz
Reference models
Networking Standards
Application layer protocols
– Overview
• Change of schedule
– Next time will be lecture
– Lab 1 will be deferred to Sept 12
Spring Semester 2006
EEC-484/584: Computer Networks
Wenbing Zhao
4
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
The OSI Reference Model
Spring Semester 2006
EEC-484/584: Computer Networks
Wenbing Zhao
5
6
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
7
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
8
TCP/IP Reference Model
Spring Semester 2006
EEC-484/584: Computer Networks
Wenbing Zhao
9
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
10
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
11
TCP/IP Reference Model
• UDP – User Datagram Protocol
– Point-to-point
– Connectionless
– Unreliable
– Not source ordered
– No flow control
– Preserve message boundary
Spring Semester 2006
EEC-484/584: Computer Networks
Wenbing Zhao
12
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
13
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
14
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 2006
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
15
16
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
IEEE 802 Standards
Spring Semester 2006
EEC-484/584: Computer Networks
17
Wenbing Zhao
18
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
19
Application Layer Protocols
• Principles of networked applications
– Client server model
– Sockets
– Addressing
– Protocol
– What do we need from transport layer?
• WWW and HTTP
Spring Semester 2006
EEC-484/584: Computer Networks
Wenbing Zhao
20
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 2006
application
transport
network
data link
physical
EEC-484/584: Computer Networks
application
transport
network
data link
physical
Wenbing Zhao
21
Inter-Process Communications
• Process: program
running within a host
• Processes in different
hosts communicate
by exchanging
messages
Spring Semester 2006
• Client process:
process that initiates
communication
• Server process:
process that waits to
be contacted
EEC-484/584: Computer Networks
Wenbing Zhao
22
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 2006
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
23
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
24
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 2006
EEC-484/584: Computer Networks
Wenbing Zhao
25
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 2006
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 2006
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
26
27
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 2006
EEC-484/584: Computer Networks
yes, few secs
yes, 100’s msec
yes and no
Wenbing Zhao