9/26/2011 Computer Network? The “nuts and bolts” view of the Internet

advertisement
9/26/2011
Computer Network?
The “nuts and bolts” view of the Internet
q millions of connected
q “interconnected collection of autonomous
❍
❍
“network of networks”
❍ “collection of networks interconnected by
routers”
❍ “a communication medium used by millions”
❍
q
❍
Email, chat, Web “surfing”, streaming media
q
PCs, workstations, servers
PDAs, phones, toasters
regional ISP
fiber, copper, radio, satellite
links have different
capacities (bandwidth)
routers: forward packets
q packet: piece of a message
q Internet ≠ Web
(basic unit of transfer)
TDDD36: Fundamentals
“internetworking”?
mobile
local ISP
running network apps
communication links
❍
workstation
server
hosts or end-systems
computers connected by a communication
technology”
q What is the Internet?
❍
router
computing devices called
company
network
TDDD36: Fundamentals
What’s a protocol?
q internetwork – interconnection of
networks – also called an “internet”
q subnetwork – a constituent of an internet
q intermediate system – a device used to
connect two networks allowing hosts of the
networks to correspond with each other
Bridge
❍ Router
❍
q Internet is an example of an internetwork.
Protocols:
v The rules used for
communication
v Proper, accepted,
and expected
behavior
Need:
… specific msgs sent
… specific actions taken
when msgs received,
or other events
Network protocols:
v Define the order and
format of messages
exchanged
v Defines the actions to
take in response to
events (e.g., message
arrivals, transmissions,
losses, and timeouts)
TDDD36: Fundamentals
What’s a protocol?
Layered Architecture: Why?
network protocols:
v Machines rather than
humans
v All communication
activity in Internet
governed by protocols
human protocols:
v “What’s the time?”
v “I have a question”
v Introductions
Hi
TCP connection
request
Hi
2:00
q Networks are complex with many pieces
❍ Hosts,
routers, links, applications,
protocols, hardware, software
q Can we organize it, somehow?
q Let’s consider a Web page request:
Browser requests Web page from server
Server should determine if access is privileged
❍ Reliable transfer page from server to client
❍ Physical transfer of “bits” from server to client
❍
TCP connection
response
Get http://www.awl.com/kurose-ross
Got the
time?
Introduction 1-4
❍
<file>
time
Introduction 1-5
TDDD36: Fundamentals
1
9/26/2011
Motivation Continued …
Motivation Continued …
Dealing with complex systems:
Application logic
Application
Services
Communication
Service
Network
Services
Application
Services
Reliable delivery
Transfer “bits”
Communication
Service
Network
Services
q explicit structure allows identification, relationship
of complex system’s pieces
❍ layered reference model for discussion
q modularization eases maintenance, updating of system
❍ change of implementation of layer’s service
transparent to rest of system
❍ e.g., change in network technology doesn’t affect
rest of system
q layering considered harmful? (design vs implemention)
Web Client
Web Server
TDDD36: Fundamentals
Layers, Protocols, Interfaces
Application
Services
Application logic
protocol
Application
Services
Communication
Service
Reliable delivery
protocol
Communication
Service
Network
Services
Transfer “bits”
protocol
Network
Services
Layer
Interface
Layer
Interface
TDDD36: Fundamentals
Layered Architecture
q Networks organized as a stack of layers?
❍ The purpose of a layer is to offer services to
the layer above it using a well-defined interface
(programming language analogy: libraries hide
details while providing a service)
❍ Reduces design complexity
q Protocols: “horizontal” conversations at any
Web Server
Web Client
layer n (i.e., between peer layers)
q Data Transfer: each layer passes data &
control information to the layer below;
eventually physical medium is reached.
TDDD36: Fundamentals
Layered Architecture (cont’d)
TDDD36: Fundamentals
Reference Models
q A set of layers & protocols is called a
Network Architecture. These
specifications enable hardware/software
developers to build systems compliant with
a particular architecture.
❍
E.g., TCP/IP, OSI
TDDD36: Fundamentals
TDDD36: Fundamentals
2
9/26/2011
The Application Layer
The Transport Layer
q Residence of network applications and
q Concerned with end-to-end data transfer
their application control logic
q Examples include:
q Transmission unit is called segment
between end systems (hosts)
HTTP (Hyper-Text Transfer Protocol)
FTP (File Transfer Protocol)
❍ Telnet
❍ SMTP (Simple Mail Transfer Protocol)
❍ DNS (Domain Name Service)
q TCP/IP networks such as the Internet
❍
provides two types of services to
applications
❍
“connection-oriented” service – Transmission
Control Protocol (TCP)
❍ “connectionless” service - User Datagram
Protocol (UDP)
❍
TDDD36: Fundamentals
TDDD36: Fundamentals
TCP: Connection-oriented Service
UDP: Connectionless Service
q Handshaking between client & server
q No handshaking
programs
q Send whenever and however you want
Parameters for ensuing exchange
❍ Maintain connection-state
❍
q Packet switches do not maintain any
connection-state; state is at end systems
❍
q A “best effort” service
❍ No reliability
❍ No congestion & flow control services
q Useful for network applications that
hence “connection-oriented”
q Similar to a phone conversation
q TCP is bundled with reliability, congestion
control, and flow control.
prefer quick delivery of most packets
rather than guaranteed (slow) delivery of
all packets (e.g., VOIP, video streaming)
TDDD36: Fundamentals
Internet protocol stack
Protocol layering and data
q application: supporting network
applications
❍
FTP, SMTP, STTP
application
q transport: host-host data transfer
❍ TCP, UDP
transport
q network: routing of datagrams from
network
source to destination
❍
IP, routing protocols
q link: data transfer between
neighboring network elements
❍
TDDD36: Fundamentals
link
physical
PPP, Ethernet
Each layer takes data from above
q adds header information to create new data unit
q passes new data unit to layer below
source
M
Ht M
Hn Ht M
Hl Hn Ht M
destination
application
transport
network
link
physical
application
Ht
transport
Hn Ht
network
Hl Hn Ht
link
physical
M
message
M
segment
M
M
datagram
frame
q physical: bits “on the wire”
TDDD36: Fundamentals
router
TDDD36: Fundamentals
3
9/26/2011
Network Taxonomy
Network Core: Circuit-Switching
Telecommunication
networks
Circuit-switched
networks
End-to-end resources
reserved for “call”
q Link bandwidth, switch
Packet-switched
networks
capacity
q Dedicated resources
FDM
TDM
Networks
with VCs
Datagram
Networks
with no sharing
q Guaranteed transmission
capacity
q Call setup required
q “Blocking” may occur
TDTS06
TDTS06
1-19
Network Core: Circuit-Switching
Circuit-Switching: FDMA and TDMA
q Capacity of medium exceeds the capacity
FDMA
1-20
Example:
4 users
required for transmission of a single signal
❍
How can we improve “efficiency”? Let’s
multiplex.
frequency
q Divide link bandwidth into “pieces”:
time
❍ frequency
division - FDMA
❍ time division – TDMA
❍ code division - CDMA (cellular networks)
❍ wavelength division - WDM (optical)
TDTS06
TDMA
frequency
Network Core: Packet-Switching
10 Mbs
Ethernet
A
q source breaks long messages into smaller
“packets”
B
share network resources
1-22
statistical multiplexing
C
1.5 Mbs
queue of packets
waiting for output
link
q each packet briefly uses full link bandwidth
q resource contention
❍ aggregate resource demand can exceed amount
available
❍ congestion: packets queue, wait for link use
❍ analogy: rush hour traffic in cities
TDTS06
TDTS06
Packet-Switching: Statistical Multiplexing
q “store-and-forward” transmission
q packets
time
1-21
D
E
Sequence of A & B packets does not have fixed
pattern statistical multiplexing.
In contrast: In TDM each host gets same slot in
revolving TDM frame.
1-23
TDTS06
1-24
4
9/26/2011
How do loss and delay occur?
Connection oriented or not?
packets queue in router buffers
q
q No handshaking
Hand shaking
q packets queue, wait for turn
❍
q if queue is full, arriving packets dropped (Drop-Tail)
❍
Collisions, connectivity, etc. (loss)
Connection less:
Connection oriented:
q packet arrival rate to link exceeds output link capacity
packet being transmitted (delay)
q No (significant) state
Explicit setup phase for
logical connection
Connection release
afterwards
Establishes state information
about the connection
q Mechanisms for
q
A
❍
B
q
packets queueing (delay)
free (available) buffers: arriving packets
dropped (loss) if no free buffers
TDTS06
transport
physical
Which is the best? … It depends on (i)
what it is used for, and (ii) what it is
built ontop of
26
Wireless, mobility: impact on higher layer protocols
E.g., TCP (CO)
UDP (CL)
should be minimal …
best effort service model remains unchanged
❍ TCP and UDP can (and do) run over wireless, mobile
q … but performance-wise:
❍ packet loss/delay due to bit-errors (discarded
packets, delays for link-layer retransmissions), and
handoffs from mobility and transient connectivity
❍ TCP interprets loss as congestion, will decrease
congestion window un-necessarily
❍ delay impairments for real-time traffic
❍ limited bandwidth of wireless links
q logically, impact
❍
E.g., IP (CL)
network
link
Guarantees that data will
arrive (eventually)
1-25
Internet protocol stack
application
reliable data transfer, error
control, flow control, etc.
information (at end points
or in network)
q No guarantees of arrival
(or when)
q No mechanisms for flow
control etc.
q Simpler (and faster?)
E.g., Ethernet (CL)
ATM (CO)
Two notes on the physical layer:
• Guided (e.g., coaxial cable, fiber, etc) vs.
unguided (satellite, wireless, etc.)
• Signaling, modulation, encoding, etc,
27
TDDD36: Fundamentals
Something for next class
Question to think/read about ...
q Which technology is the fastest?
❍ 10 Mbps Ethernet
❍ 11 Mbps 802.11
TDDD36: Fundamentals
5
Download