E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
1
EE 586 Communication andSwitching Networks
Lecture 6
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Chapter 1: introduction
our goal:
get feel andterminology
more depth, detaillater in course
approach:
use Internet asexample
overview:
history
whats the Internet?
whats a protocol?
network edge; hosts, access net,physical media
network core: packet/circuitswitching, Internet structure
performance: delay, loss,throughput
protocol layers, service models
underline_base
1-2
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Packet loss
queue (aka buffer) preceding link in buffer has finitecapacity
packet arriving to full queue dropped (aka lost)
lost packet may be retransmitted by previous node,by source end system, or not at all
A
B
packet being transmitted
packet arriving to
full buffer is lost
buffer
(waiting area)
underline_base
desktop_computer_stylized_medium
desktop_computer_stylized_medium
1-3
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
desktop_computer_stylized_medium
Throughput
throughput: rate (bits/time unit) at which bitstransferred between sender/receiver
instantaneous: rate at given point in time
average: rate over longer period of time
server, with
file of F bits
to send to client
link capacity
 Rs bits/sec
link capacity
 Rc bits/sec
server sends bits
(fluid) into pipe
 pipe that can carry
fluid at rate
 Rs bits/sec)
 pipe that can carry
fluid at rate
 Rc bits/sec)
underline_base
1-4
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Throughput: Internet scenario
10 connections (fairly) sharebackbone bottleneck link R bits/sec
Rs
Rs
Rs
Rc
Rc
Rc
R
per-connection end-end throughput:min(Rc,Rs,R/10)
in practice: Rc or Rsis often bottleneck
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
1-5
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
underline_base
Protocol layers
Networks are complex,
with many pieces:
hosts
routers
links of variousmedia
applications
protocols
hardware,software
Question:
is there any hope oforganizing structure ofnetwork?
…. or at least ourdiscussion of networks?
1-6
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
underline_base
Why layering?
Dealing with complex systems:
explicit structure allows identification,relationship of complex systems pieces
layered reference model for discussion
modularization eases maintenance, updating ofsystem
change of implementation of layers servicetransparent to rest of system
Other approaches?
Layering considered harmful?
1-7
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
underline_base
Internet protocol stack
application: supporting networkapplications (message)
FTP, SMTP, HTTP
transport: process-process datatransfer (segment)
TCP, UDP
network: routing of (datagrams)from source to destination
IP, routing protocols
link: (frame) data transfer betweenneighboring  network elements
Ethernet, 802.11 (WiFi)
physical: (bits) on the wire
application
transport
network
link
physical
1-8
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
ISO/OSI reference model
presentation: allow applicationsto interpret meaning of data,e.g., encryption, compression,machine-specific conventions
session: synchronization,checkpointing, recovery of dataexchange
Internet stack missing theselayers!
these services, if needed, must beimplemented in application
application
presentation
session
transport
network
link
physical
underline_base
1-9
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
underline_base
source
application
transport
network
link
physical
Ht
Hn
M
segment
Ht
datagram
destination
application
transport
network
link
physical
network
link
physical
link
physical
Ht
Hn
Hl
M
Ht
Hn
M
Ht
M
M
Ht
Hn
Hl
M
Ht
Hn
M
Ht
Hn
M
Ht
Hn
Hl
M
router
switch
Encapsulation
message
M
Ht
M
Hn
frame
desktop_computer_stylized_medium
desktop_computer_stylized_medium
1-10
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
2-11
Chapter 2: outline
Syllabus for this chapter
2.1 Principles
2.2 Web and HTTP
2.7 Socket Programming
2.5 DNS
2.6 P2P applications
underline_base
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
2-12
access_point_stylized_small
antenna_radiation_stylized
cell_tower_radiation_gray
access_point_stylized_gray_small
access_point_stylized_gray_small
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
car_icon_small
iphone_stylized_small
antenna_radiation_stylized
antenna_stylized
laptop_keyboard
screen
antenna_stylized
laptop_keyboard
screen
antenna_stylized
laptop_keyboard
screen
desktop_computer_stylized_medium
antenna_stylized
laptop_keyboard
screen
underline_base
Creating a network app
write programs that:
run on (different) end systems
communicate over network
e.g., web server softwarecommunicates with browsersoftware
no need to write software fornetwork-core devices
network-core devices do notrun user applications
applications on end systemsallows for rapid appdevelopment, propagation
application
transport
network
data link
physical
application
transport
network
data link
physical
application
transport
network
data link
physical
(modified by Cheung for EE586; based on K&R original)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Application architectures
1.Client-server
2.Peer-to-peer (P2P)
3.Hybrid of client-server and P2P
The application architecture is designed by theapplication developer and dictates how theapplication is structured over the various endsystems.
underline_base
(modified by Cheung for EE586; based on K&R original)
2-13
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
2-14
access_point_stylized_small
antenna_radiation_stylized
cell_tower_radiation_gray
access_point_stylized_gray_small
access_point_stylized_gray_small
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
car_icon_small
iphone_stylized_small
antenna_radiation_stylized
antenna_stylized
laptop_keyboard
screen
antenna_stylized
laptop_keyboard
screen
antenna_stylized
laptop_keyboard
screen
desktop_computer_stylized_medium
antenna_stylized
laptop_keyboard
screen
Client-server architecture
server:
always-on host
permanent IP address
data centers for scaling
clients:
communicate with server
may be intermittentlyconnected
may have dynamic IPaddresses
do not communicate directlywith each other
underline_base
client/server
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
2-15
access_point_stylized_small
antenna_radiation_stylized
cell_tower_radiation_gray
access_point_stylized_gray_small
access_point_stylized_gray_small
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
car_icon_small
iphone_stylized_small
antenna_radiation_stylized
antenna_stylized
laptop_keyboard
screen
antenna_stylized
laptop_keyboard
screen
antenna_stylized
laptop_keyboard
screen
desktop_computer_stylized_medium
antenna_stylized
laptop_keyboard
screen
P2P architecture
no always-on server
arbitrary end systemsdirectly communicate
peers request service fromother peers, provide servicein return to other peers
self scalability – newpeers bring new servicecapacity, as well as newservice demands
peers are intermittentlyconnected and change IPaddresses
complex management
underline_base
peer-peer