Computer Network
Basics
An overview of computer networking
which introduces many key concepts
and terminology. Sets the stage for
future topics.
Components of any Computer
Processor
(active)
Computer
Control
(“brain”)
Datapath
(“brawn”)
Memory
(passive)
(where
programs,
data live
when
running)
Devices
Input
Output
Keyboard,
Mouse
Display,
Printer
Disk,
Network
Communication Devices
Synchronous communication uses a clock
signal separate from the data signal-
communication can only happen during the
‘tick’ of the timing cycle
Asynchronous communication does not use a
clock signal- rather, it employs a start and
stop bit to begin and end the irregular
transmission of data
Connecting to Networks (and
Other I/O)
Bus - shared medium of communication that
can connect to many devices
Hierarchy of Buses in a PC
Operating systems
Developer or manufacturer Operating system
Apple Computers Inc. Mac OS 8/9/X
AT&T Bell Laboratories Unix
Be Inc. beOS
Berkeley University BSD, FreeBSD
Carnegie-Mellon University Mach 3.0
Cisco Systems Inc. IOS
HP HP-UX
IBM AIX and OS/2
Linus Thorvald Linux
Microsoft Windows XP, Vista
Novell NetWare
Santa Cruz Operation Inc. (SCO) SCO XENIX, SCO UNIX, SCO MPX
Siemens SINIX
Silicon Graphics IRIX
Sun Microsystems Solaris, SunOS, JavaOS
Operating Systems Developed for
Portable Devices
Developer or manufacturer Operating system
Microsoft Windows CE
Microsoft Windows Mobile 6.0
Palm PalmOS
Symbian Symbian OS
RIM (Research In Motion Limited) RIM
A closer look at network structure:
network edge:
applications and
hosts
network core:
routers
network of
networks
General Architecture of Computer
Networks
Cloud
External
nodes
Internal nodes
(or stations)
(swithing devices)
The Network Core
mesh of interconnected
routers
the fundamental
question: how is data
transferred through net?
circuit switching:
dedicated circuit per
call: telephone net
packet-switching:
data sent thru net in
discrete “chunks”
Connection of Networks
networks or subnetworks
router or
gateway
node
(host,
station)
Network Topology
a) bus, b) star, c) ring, d) tree structure
a) b) c) d)
Classification of the networks according
to the connection establishing
Line switched network
Packet switched network
Radiating/data disseminating systems
Point-to-point connected networks
Wired media
Telephone line
Thin Coax
Thick Coax
Unshielded Twisted Pair (UTP)
Shielded Twisted Pair (STP)
Fibre
(Data) Reliability
A network service is (data) reliable
if the sender application can rely on
the error-free and ordered delivery
of the data to the destination
In the Internet the reliability can
obtained mainly by
acknowledgements and
retransmission
In such a way the losses in the
underlying layers can be retrieved
Flow-control and Congestion
Prevention
Flow-control: to protect the
receiver against the overload
I.e.: the sender (source) sends more
data than the receiver can process
it is mainly necessary in link and
transport level
Congestion prevention: to prevent
the intermediate nodes against the
overload
it is mainly necessary in network level
Overload and Congestion
Overload: Too many packets occur in a
subnetwork in the same time, which
prevent each other and in such a way
the throughput decreases
Congestion: the queues in the routers
are too long, the buffers are full.
As a consequence some packages are
dropped if the buffers of the routers are
overloaded
In extreme case: grid-lock, lock-up
Deadlock
Deadlock: the most serious situation of the
congestion, the routers wait for each other
Direct store and forward deadlock: the
buffers of two neighbouring routers are
full with the packets to be sent to the
other router
Indirect store and forward deadlock: the
deadlock occurred not between two
neighbouring routers but in a subnetwork,
where any of the routers has not free
buffer space for accepting packets
Network: physical connection that allows two computers to
communicate
Packet: unit of transfer, bits carried over the network
Network carries packets from on CPU to another
Destination gets interrupt when packet arrives
Protocol: agreement between two parties as to how
information is to be transmitted
Broadcast Network: Shared Communication Medium
Delivery: How does a receiver know who packet is for?
Put header on front of packet: [ Destination | Packet ]
Everyone gets packet, discards if not the target
Arbitration: Act of negotiating use of shared medium
Point-to-point network: a network in which every physical
wire is connected to only two computers
Switch: a bridge that transforms a shared-bus
(broadcast) configuration into a point-to-point network
Router: a device that acts as a junction between two
networks to transfer data packets among them
Review: Networking Definitions
The Need for a Protocol Architecture
Procedures to exchange data between
devices can be complex
High degree of cooperation required
between communicating systems
destination addressing, path
readiness to receive
file formats, structure of data
how commands are sent/received and
acknowledged
etc.
Layered Protocol Architecture
Modules arranged in a vertical stack
Each layer in stack:
Performs related functions
Relies on lower layer for more primitive
functions
Provides services to next higher layer
Communicates with corresponding peer layer of
neighboring system using a protocol
Network Layering
Layering: building complex services from simpler ones
Each layer provides services needed by higher layers by utilizing services
provided by lower layers
The physical/link layer is pretty limited
Packets are of limited size (called the “Maximum Transfer Unit or MTU:
often 200-1500 bytes in size)
Routing is limited to within a physical link (wire) or perhaps through a
switch
Our goal in the following is to show how to construct a secure, ordered,
message service routed to anywhere:
Physical Reality: Packets Abstraction: Messages
Limited Size Arbitrary Size
Unordered (sometimes) Ordered
Unreliable Reliable
Machine-to-machine Process-to-process
Only on local area net Routed anywhere
Asynchronous Synchronous
Key Features of a Protocol
Set of rules or conventions to exchange
blocks of formatted data
Syntax: data format
Semantics: control information
(coordination, error handling)
Timing: speed matching, sequencing
Actions: what happens when an event
occurs
Operation of Protocols
(interlayer) protocol layerprotocol
Host Host
Physical connection
(n-1). layer
protocol entity
(n-1). layer
protocol entity
(n+1). layer
protocol entity
n. layer
protocol entity
(n+1). layer
protocol entity
n. layer
protocol entity
... ...
The OSI Model
Physical Layer
(Data) Link Layer
Network Layer
Transport Layer
Session Layer
Presentation Layer
Application Layer
Physical Layer
Transmission of energy onto the
medium
Collection of energy from the medium
This layer is concerned with the physical
transmission of raw bits
This bits are transmitted through
mechanical, electrical, and procedural
interfaces which include
• interface card standard
• modem standards
• certain portions of the ISDN and LAN MAN
standards
(Data) Link Layer
Transmission of frames over one link or network
Often subdivided into the MAC and LLC
It receives bits from the physical layer, converting bits
to frames
frame boundaries
Using protocols (e.g. HDLC), this layer corrects errors
that might have occurred during transmission across a link
In addition this layer provides an “error-free”
transmission channel to the next layer known as the
network layer: error control
ARQ
duplicates
Flow control
The previous two layers were concerned with getting
error-free data across a link
The network layer establishes connections between nodes,
routes data packets through the network, and accounts for
them
End-to-end transmission of packets (possibly over multiple
links)
Controls the operation of the subnet
Routing
static
dynamic
Congestion control
At this stage, there may be congestion due to many packets waiting
to be routed
Some packets may be lost during congestion
Network Layer I
Network Layer II
Accounting
packets
bytes
etc.
Internetworking
This layer is also concerned with internetworking
where there is ‘talking’ between technologies, such as
the traditional Internet connected to ATM
segmentation
addressing
sequencing
accounting
Broadcast subnets: thin network layer
Transport Layer I
This layer presumes the ability to pass
through a network and provides additional
services to end-users, such as and-to-and
packet reliability
End-to-end delivery of a complete message
(end-to-end communication path, usually
reliable)
Isolation from “hardware”
Multiplexing/demultiplexing
Divide message into packets
Reassemble (possibly out of order packets)
into the original message of the distant end
Transport Layer II
End-to-end flow control
Acknowledgments
Types of service
error-free, point-to-point, in sequence,
flow controlled
no correctness guarantees
no sequencing
Establishing/terminating connections
naming/addressing
intra-host addressing (process, ports)
This layer enables users to establish sessions across a
network between machines
In addition, it offers session management services
Set up and management of end-to-end conversation
Establish and terminate sessions
superset of connections
Assignment of logical ports
Dialogue control
Token management
for critical operations
Synchronization
checkpoints/restarts
Session Layer
Presentation Layer
This layer is concerned with the syntax and semantics of
messages, code conversions between machines, and other
data conversion services
Some of these services are data compression and data
encryption
Interface between lower layers and application
Formatting
Syntax & semantics of messages
Data encoding (e.g.: ASCII to EBCDIC)
Compression
Encryption/Decryption
Authentication
Application Layer
This layer provides support for the user's network
applications
Some application layer services have been standardized,
e.g.:
File Transfer and Management (FTAM)
Message Handling Services for electronic mail (X.400)
Directory Services (X.500)
Electronic Data Interchange (EDI)
Program you’re running,applications
file transfer, access & management
e-mail
virtual terminals
WWW
The OSI Protocol Stack
Operation
of the
model
Virtual
transmission
Real data
transmission
Application
layer entity
Session layer
entity
Transport
layer entity
Network
layer entity
Datalink
layer entity
Presentation
layer entity
Intermediate
Network
layer entity
Datalink
layer entity
Intermediate
Network
layer entity
Datalink
layer entity
Endsystem
Application
layer entity
Session layer
entity
Transport
layer entity
Network
layer entity
Presentation
layer entity
Datalink
layer entity
Physical medium
Endsystem
Physical layer
entity
Physical layer
entity
Physical layer
entity
Physical layer
entity
Names of the Nodes, Connections and
Data Units
Layer name Node Connection Data unit
Application layer application network service e.g. file (ADU)
Presentation layer host session data structure (PPDU)
Session layer host transport connection message (SPDU)
Transport layer host network path message (TPDU)
Network layer host, router line (data)packet (NPDU)
(Data)link layer station (physical) channel (data)frame (LLC PDU)
Physical layer switch physical transmission
medium
bit
Communication among the layers
Connection oriented network service
(virtual circuits, eg. ATM)
• Reliable transport service
• Unreliable transport service
Connectionless network service
(datagram service, eg. IP)
• Reliable transport service (eg. TCP)
• Unreliable transport service (eg. UDP)
Network Tools
Repeater: connects network segments
logically to one network
Hub: multiport repeater
Bridge: datalink level connection of two
networks
Switch: multiport bridge
Router: connects networks that are
compatible in transport level
subnetworks are connected to the interfaces of
the repeater
Gateway (proxy server): router between
two individual network. The “Way Out”
Physical Layer Devices
Repeater
Hub
“dumb”
level-1 hub
multi-port repeater
Data Link Layer Devices
Bridge
Cascaded vs. Backbone
Single
Multiple
Switch (switched hub)
Routers
Provide link between networks
Accommodate network differences:
Addressing schemes
Maximum packet sizes
Hardware and software interfaces
Network reliability
Congestion/Traffic Management
Devices of the Network Connection
Application layer
Presentation layer
Session layer
Transport layer
Datalink layer
Network layer
Physical layer
Gateway
or
Proxy server
Router or Gateway
Bridge or Switch
Repeater or Hub
Application layer
Presentation layer
Session layer
Transport layer
Datalink layer
Network layer
Physical layer
Architectural Implementation of the
LANs
Ethernet (IEEE 802.3)
FDDI
Gigabit Ethernet
Token Bus (IEEE 802.4)
Token Ring (IEEE 802.5)
Characteristics of High-Speed LANs
Fast Ethernet Gigabit Ethernet Fibre Channel Wireless LAN
Data Rate 100 Mbps 1 Gbps, 10 Gbps
100 Mbps – 3.2
Gbps
1 Mbps – 2 Gbps
Transmission Mode
UTP,STP, Optical
Fiber
UTP, shielded
cable, optical fiber
Optical fiber,
coaxial cable, STP
2.4 GHz, 5 GHz
Microwave
Access Method CSMA/CD CSMA/CD Switched CSMA/CA Polling
Supporting
Standard
IEEE 802.3 IEEE 802.3
Fibre Channel
Association
IEEE 802.11
Wide Area Network Connections
Solutions for connecting LANs to the
Internet
Ethernet (ring or star topology)
Managed Leased Line Network (MLLN)
ATM (Asynchronous Transfer Mode)
Switched line
ISDN line
Soft and Hard States
State: the data collection, which are necessary for
keeping the connection between two protocol entities
Hard state
If the connection is established once, it is never timed out, even
if it is not in usage
To cancel the connection one of the participants of the connection
must explicitly close it
The history of the state is stored
Soft state
To keep the connection the participants must send occasionally
keep-alive messages, since without keep-alive message the state
information is timed out after a certain period
The state is called as “soft” since in the ordinary operation the
state can change easily
The history of the state is not stored
Packet switching versus circuit switching
Great for bursty data
resource sharing
no call setup (less start-up delay)
However…
Packets can experience delays, so not for “real-time”
applications
excessive congestion leads to packet delay and loss
• protocols (like TCP) are needed for reliable data
transfer, and congestion control
Is packet switching best in every case?
Performance Considerations
Before continue, need some performance metrics
Overhead: CPU time to put packet on wire
Throughput: Maximum number of bytes per second
• Depends on “wire speed”, but also limited by slowest router (routing
delay) or by congestion at routers
Latency: time until first bit of packet arrives at receiver
• Raw transfer time + overhead at each routing hop
Contributions to Latency
Wire latency: depends on speed of light on wire
• about 1–1.5 ns/foot
Router latency: depends on internals of router
• Could be < 1 ms (for a good router)
Router Router
LR1 LR2LW1 LW2 Lw3
Delay in packet-switched networks
packets experience delay
on end-to-end path
four sources of delay
at each hop
Nodal processing:
check bit errors
determine output link
Queueing:
time waiting at output
link for transmission
depends on congestion
level of router
A
B
propagation
transmission
nodal
processing queueing
Delay in packet-switched networks
Transmission delay:
R=link bandwidth (bps)
L=packet length (bits)
time to send bits into
link = L/R
Propagation delay:
d = length of physical link
s = propagation speed in
medium (~2x108
m/sec)
propagation delay = d/s
A
B
propagation
transmission
nodal
processing queueing
Queueing delay (revisited)
R=link bandwidth (bps)
L=packet length (bits)
a=average packet
arrival rate
traffic intensity = La/R
La/R ~ 0: average queueing delay small
La/R -> 1: delays become large
La/R > 1: more “work” arriving than can be
serviced, average delay infinite!
Internet protocol stack
Application: supporting network
applications
ftp, smtp, http
Transport: host-host data transfer
tcp, udp
Network: routing of datagrams from
source to destination
ip, routing protocols
Network access: data transfer between
neighboring network elements
ppp, ethernet
Physical: bits “on the wire”
Layering: logical communication
application
transport
network
link
physical
application
transport
network
link
physical
application
transport
network
link
physical
application
transport
network
link
physical
network
link
physical
data
data
E.g.: transport
take data from app
add addressing,
reliability check
info to form
“datagram”
send datagram to
peer
wait for peer to
ack receipt
analogy: post
office
data
transport
transport
ack
Layering: physical communication
application
transport
network
link
physical
application
transport
network
link
physical
application
transport
network
link
physical
application
transport
network
link
physical
network
link
physical
data
data
Protocol layering and data
Each layer takes data from above
adds header information to create new data unit
passes new data unit to layer below
application
transport
network
link
physical
application
transport
network
link
physical
source destination
M
M
M
M
Ht
HtHn
HtHnHl
M
M
M
M
Ht
HtHn
HtHnHl
message
segment
datagram
frame
IP over ATM
ATM Adaptation
Layer (AAL):
interface to upper
layers
end-system
segmentation/rea
ssembly
ATM Layer: cell
switching
Physical
AAL5
ATM
physical
AAL5
ATM
physical
AAL5
ATM
physical
AAL5
ATM
physical
ATM
physical
application
TCP/UDP
IP
application
TCP/UDP
IP
application
TCP/UDP
IP
application
TCP/UDP
IP
Physical
Data Link
Network
Transport
Session
Presentation
Application
Network Access
IP
TCP UDP
Application
Sockets
The Internet Protocol Stack
Network Protocols
Protocol: Agreement between two parties as to how
information is to be transmitted
Example: system calls are the protocol between the operating
system and application
Networking examples: many levels
• Physical level: mechanical and electrical network (e.g. how are 0 and 1
represented)
• Link level: packet formats/error control (for instance, the CSMA/CD
protocol)
• Network level: network routing, addressing
• Transport Level: reliable message delivery
Protocols on today’s Internet:
Ethernet ATM Packet radio
IP
UDP TCP
RPC
NFS WWW e-mail
ssh
Physical/Link
Network
Transport
Building a messaging service
Process to process communication
Basic routing gets packets from machine→machine
What we really want is routing from process→process
• Example: ssh, email, ftp, web browsing
Several IP protocols include notion of a “port”, which is
a 16-bit identifiers used in addition to IP addresses
• A communication channel (connection) defined by 5 items:
[source address, source port, dest address, dest port, protocol]
UDP: The User Datagram Protocol
UDP layered on top of basic IP (IP Protocol 17)
• Unreliable, unordered, user-to-user communication
UDP Data
16-bit UDP length 16-bit UDP checksum
16-bit source port 16-bit destination port
IP Header
(20 bytes)
Building a messaging service (con’t)
UDP: The Unreliable Datagram Protocol
Datagram: an unreliable, unordered, packet sent from
source user → dest user (Call it UDP/IP)
Important aspect: low overhead!
• Often used for high-bandwidth video streams
• Many uses of UDP considered “anti-social” – none of the “well-
behaved” aspects of (say) TCP/IP
But we need ordered messages
Create ordered messages on top of unordered ones
• IP can reorder packets! P0,P1 might arrive as P1,P0
How to fix this? Assign sequence numbers to packets
• 0,1,2,3,4…..
• If packets arrive out of order, reorder before delivering to
user application
• For instance, hold onto #3 until #2 arrives, etc.
Sequence numbers are specific to particular connection
Message
TCP/IP packet, Ethernet frame
Application sends message
TCP data
TCP Header
IP Header
IP DataEH
Ethernet Hdr
Ethernet Hdr
TCP breaks into 64KB
segments, adds 20B header
IP adds 20B header, sends to
network
If Ethernet, broken into
1500B frames with headers,
trailers (24B)
All Headers, trailers have
length field, destination, ...
Computer network basics

Computer network basics

  • 1.
    Computer Network Basics An overviewof computer networking which introduces many key concepts and terminology. Sets the stage for future topics.
  • 2.
    Components of anyComputer Processor (active) Computer Control (“brain”) Datapath (“brawn”) Memory (passive) (where programs, data live when running) Devices Input Output Keyboard, Mouse Display, Printer Disk, Network
  • 3.
    Communication Devices Synchronous communicationuses a clock signal separate from the data signal- communication can only happen during the ‘tick’ of the timing cycle Asynchronous communication does not use a clock signal- rather, it employs a start and stop bit to begin and end the irregular transmission of data
  • 4.
    Connecting to Networks(and Other I/O) Bus - shared medium of communication that can connect to many devices Hierarchy of Buses in a PC
  • 5.
    Operating systems Developer ormanufacturer Operating system Apple Computers Inc. Mac OS 8/9/X AT&T Bell Laboratories Unix Be Inc. beOS Berkeley University BSD, FreeBSD Carnegie-Mellon University Mach 3.0 Cisco Systems Inc. IOS HP HP-UX IBM AIX and OS/2 Linus Thorvald Linux Microsoft Windows XP, Vista Novell NetWare Santa Cruz Operation Inc. (SCO) SCO XENIX, SCO UNIX, SCO MPX Siemens SINIX Silicon Graphics IRIX Sun Microsystems Solaris, SunOS, JavaOS
  • 6.
    Operating Systems Developedfor Portable Devices Developer or manufacturer Operating system Microsoft Windows CE Microsoft Windows Mobile 6.0 Palm PalmOS Symbian Symbian OS RIM (Research In Motion Limited) RIM
  • 7.
    A closer lookat network structure: network edge: applications and hosts network core: routers network of networks
  • 8.
    General Architecture ofComputer Networks Cloud External nodes Internal nodes (or stations) (swithing devices)
  • 9.
    The Network Core meshof interconnected routers the fundamental question: how is data transferred through net? circuit switching: dedicated circuit per call: telephone net packet-switching: data sent thru net in discrete “chunks”
  • 10.
    Connection of Networks networksor subnetworks router or gateway node (host, station)
  • 11.
    Network Topology a) bus,b) star, c) ring, d) tree structure a) b) c) d)
  • 12.
    Classification of thenetworks according to the connection establishing Line switched network Packet switched network Radiating/data disseminating systems Point-to-point connected networks
  • 13.
    Wired media Telephone line ThinCoax Thick Coax Unshielded Twisted Pair (UTP) Shielded Twisted Pair (STP) Fibre
  • 14.
    (Data) Reliability A networkservice is (data) reliable if the sender application can rely on the error-free and ordered delivery of the data to the destination In the Internet the reliability can obtained mainly by acknowledgements and retransmission In such a way the losses in the underlying layers can be retrieved
  • 15.
    Flow-control and Congestion Prevention Flow-control:to protect the receiver against the overload I.e.: the sender (source) sends more data than the receiver can process it is mainly necessary in link and transport level Congestion prevention: to prevent the intermediate nodes against the overload it is mainly necessary in network level
  • 16.
    Overload and Congestion Overload:Too many packets occur in a subnetwork in the same time, which prevent each other and in such a way the throughput decreases Congestion: the queues in the routers are too long, the buffers are full. As a consequence some packages are dropped if the buffers of the routers are overloaded In extreme case: grid-lock, lock-up
  • 17.
    Deadlock Deadlock: the mostserious situation of the congestion, the routers wait for each other Direct store and forward deadlock: the buffers of two neighbouring routers are full with the packets to be sent to the other router Indirect store and forward deadlock: the deadlock occurred not between two neighbouring routers but in a subnetwork, where any of the routers has not free buffer space for accepting packets
  • 18.
    Network: physical connectionthat allows two computers to communicate Packet: unit of transfer, bits carried over the network Network carries packets from on CPU to another Destination gets interrupt when packet arrives Protocol: agreement between two parties as to how information is to be transmitted Broadcast Network: Shared Communication Medium Delivery: How does a receiver know who packet is for? Put header on front of packet: [ Destination | Packet ] Everyone gets packet, discards if not the target Arbitration: Act of negotiating use of shared medium Point-to-point network: a network in which every physical wire is connected to only two computers Switch: a bridge that transforms a shared-bus (broadcast) configuration into a point-to-point network Router: a device that acts as a junction between two networks to transfer data packets among them Review: Networking Definitions
  • 19.
    The Need fora Protocol Architecture Procedures to exchange data between devices can be complex High degree of cooperation required between communicating systems destination addressing, path readiness to receive file formats, structure of data how commands are sent/received and acknowledged etc.
  • 20.
    Layered Protocol Architecture Modulesarranged in a vertical stack Each layer in stack: Performs related functions Relies on lower layer for more primitive functions Provides services to next higher layer Communicates with corresponding peer layer of neighboring system using a protocol
  • 21.
    Network Layering Layering: buildingcomplex services from simpler ones Each layer provides services needed by higher layers by utilizing services provided by lower layers The physical/link layer is pretty limited Packets are of limited size (called the “Maximum Transfer Unit or MTU: often 200-1500 bytes in size) Routing is limited to within a physical link (wire) or perhaps through a switch Our goal in the following is to show how to construct a secure, ordered, message service routed to anywhere: Physical Reality: Packets Abstraction: Messages Limited Size Arbitrary Size Unordered (sometimes) Ordered Unreliable Reliable Machine-to-machine Process-to-process Only on local area net Routed anywhere Asynchronous Synchronous
  • 22.
    Key Features ofa Protocol Set of rules or conventions to exchange blocks of formatted data Syntax: data format Semantics: control information (coordination, error handling) Timing: speed matching, sequencing Actions: what happens when an event occurs
  • 23.
    Operation of Protocols (interlayer)protocol layerprotocol Host Host Physical connection (n-1). layer protocol entity (n-1). layer protocol entity (n+1). layer protocol entity n. layer protocol entity (n+1). layer protocol entity n. layer protocol entity ... ...
  • 24.
    The OSI Model PhysicalLayer (Data) Link Layer Network Layer Transport Layer Session Layer Presentation Layer Application Layer
  • 25.
    Physical Layer Transmission ofenergy onto the medium Collection of energy from the medium This layer is concerned with the physical transmission of raw bits This bits are transmitted through mechanical, electrical, and procedural interfaces which include • interface card standard • modem standards • certain portions of the ISDN and LAN MAN standards
  • 26.
    (Data) Link Layer Transmissionof frames over one link or network Often subdivided into the MAC and LLC It receives bits from the physical layer, converting bits to frames frame boundaries Using protocols (e.g. HDLC), this layer corrects errors that might have occurred during transmission across a link In addition this layer provides an “error-free” transmission channel to the next layer known as the network layer: error control ARQ duplicates Flow control
  • 27.
    The previous twolayers were concerned with getting error-free data across a link The network layer establishes connections between nodes, routes data packets through the network, and accounts for them End-to-end transmission of packets (possibly over multiple links) Controls the operation of the subnet Routing static dynamic Congestion control At this stage, there may be congestion due to many packets waiting to be routed Some packets may be lost during congestion Network Layer I
  • 28.
    Network Layer II Accounting packets bytes etc. Internetworking Thislayer is also concerned with internetworking where there is ‘talking’ between technologies, such as the traditional Internet connected to ATM segmentation addressing sequencing accounting Broadcast subnets: thin network layer
  • 29.
    Transport Layer I Thislayer presumes the ability to pass through a network and provides additional services to end-users, such as and-to-and packet reliability End-to-end delivery of a complete message (end-to-end communication path, usually reliable) Isolation from “hardware” Multiplexing/demultiplexing Divide message into packets Reassemble (possibly out of order packets) into the original message of the distant end
  • 30.
    Transport Layer II End-to-endflow control Acknowledgments Types of service error-free, point-to-point, in sequence, flow controlled no correctness guarantees no sequencing Establishing/terminating connections naming/addressing intra-host addressing (process, ports)
  • 31.
    This layer enablesusers to establish sessions across a network between machines In addition, it offers session management services Set up and management of end-to-end conversation Establish and terminate sessions superset of connections Assignment of logical ports Dialogue control Token management for critical operations Synchronization checkpoints/restarts Session Layer
  • 32.
    Presentation Layer This layeris concerned with the syntax and semantics of messages, code conversions between machines, and other data conversion services Some of these services are data compression and data encryption Interface between lower layers and application Formatting Syntax & semantics of messages Data encoding (e.g.: ASCII to EBCDIC) Compression Encryption/Decryption Authentication
  • 33.
    Application Layer This layerprovides support for the user's network applications Some application layer services have been standardized, e.g.: File Transfer and Management (FTAM) Message Handling Services for electronic mail (X.400) Directory Services (X.500) Electronic Data Interchange (EDI) Program you’re running,applications file transfer, access & management e-mail virtual terminals WWW
  • 34.
  • 35.
    Operation of the model Virtual transmission Real data transmission Application layerentity Session layer entity Transport layer entity Network layer entity Datalink layer entity Presentation layer entity Intermediate Network layer entity Datalink layer entity Intermediate Network layer entity Datalink layer entity Endsystem Application layer entity Session layer entity Transport layer entity Network layer entity Presentation layer entity Datalink layer entity Physical medium Endsystem Physical layer entity Physical layer entity Physical layer entity Physical layer entity
  • 36.
    Names of theNodes, Connections and Data Units Layer name Node Connection Data unit Application layer application network service e.g. file (ADU) Presentation layer host session data structure (PPDU) Session layer host transport connection message (SPDU) Transport layer host network path message (TPDU) Network layer host, router line (data)packet (NPDU) (Data)link layer station (physical) channel (data)frame (LLC PDU) Physical layer switch physical transmission medium bit
  • 37.
    Communication among thelayers Connection oriented network service (virtual circuits, eg. ATM) • Reliable transport service • Unreliable transport service Connectionless network service (datagram service, eg. IP) • Reliable transport service (eg. TCP) • Unreliable transport service (eg. UDP)
  • 38.
    Network Tools Repeater: connectsnetwork segments logically to one network Hub: multiport repeater Bridge: datalink level connection of two networks Switch: multiport bridge Router: connects networks that are compatible in transport level subnetworks are connected to the interfaces of the repeater Gateway (proxy server): router between two individual network. The “Way Out”
  • 39.
  • 40.
    Data Link LayerDevices Bridge Cascaded vs. Backbone Single Multiple Switch (switched hub)
  • 41.
    Routers Provide link betweennetworks Accommodate network differences: Addressing schemes Maximum packet sizes Hardware and software interfaces Network reliability Congestion/Traffic Management
  • 42.
    Devices of theNetwork Connection Application layer Presentation layer Session layer Transport layer Datalink layer Network layer Physical layer Gateway or Proxy server Router or Gateway Bridge or Switch Repeater or Hub Application layer Presentation layer Session layer Transport layer Datalink layer Network layer Physical layer
  • 43.
    Architectural Implementation ofthe LANs Ethernet (IEEE 802.3) FDDI Gigabit Ethernet Token Bus (IEEE 802.4) Token Ring (IEEE 802.5)
  • 44.
    Characteristics of High-SpeedLANs Fast Ethernet Gigabit Ethernet Fibre Channel Wireless LAN Data Rate 100 Mbps 1 Gbps, 10 Gbps 100 Mbps – 3.2 Gbps 1 Mbps – 2 Gbps Transmission Mode UTP,STP, Optical Fiber UTP, shielded cable, optical fiber Optical fiber, coaxial cable, STP 2.4 GHz, 5 GHz Microwave Access Method CSMA/CD CSMA/CD Switched CSMA/CA Polling Supporting Standard IEEE 802.3 IEEE 802.3 Fibre Channel Association IEEE 802.11
  • 45.
    Wide Area NetworkConnections Solutions for connecting LANs to the Internet Ethernet (ring or star topology) Managed Leased Line Network (MLLN) ATM (Asynchronous Transfer Mode) Switched line ISDN line
  • 46.
    Soft and HardStates State: the data collection, which are necessary for keeping the connection between two protocol entities Hard state If the connection is established once, it is never timed out, even if it is not in usage To cancel the connection one of the participants of the connection must explicitly close it The history of the state is stored Soft state To keep the connection the participants must send occasionally keep-alive messages, since without keep-alive message the state information is timed out after a certain period The state is called as “soft” since in the ordinary operation the state can change easily The history of the state is not stored
  • 47.
    Packet switching versuscircuit switching Great for bursty data resource sharing no call setup (less start-up delay) However… Packets can experience delays, so not for “real-time” applications excessive congestion leads to packet delay and loss • protocols (like TCP) are needed for reliable data transfer, and congestion control Is packet switching best in every case?
  • 48.
    Performance Considerations Before continue,need some performance metrics Overhead: CPU time to put packet on wire Throughput: Maximum number of bytes per second • Depends on “wire speed”, but also limited by slowest router (routing delay) or by congestion at routers Latency: time until first bit of packet arrives at receiver • Raw transfer time + overhead at each routing hop Contributions to Latency Wire latency: depends on speed of light on wire • about 1–1.5 ns/foot Router latency: depends on internals of router • Could be < 1 ms (for a good router) Router Router LR1 LR2LW1 LW2 Lw3
  • 49.
    Delay in packet-switchednetworks packets experience delay on end-to-end path four sources of delay at each hop Nodal processing: check bit errors determine output link Queueing: time waiting at output link for transmission depends on congestion level of router A B propagation transmission nodal processing queueing
  • 50.
    Delay in packet-switchednetworks Transmission delay: R=link bandwidth (bps) L=packet length (bits) time to send bits into link = L/R Propagation delay: d = length of physical link s = propagation speed in medium (~2x108 m/sec) propagation delay = d/s A B propagation transmission nodal processing queueing
  • 51.
    Queueing delay (revisited) R=linkbandwidth (bps) L=packet length (bits) a=average packet arrival rate traffic intensity = La/R La/R ~ 0: average queueing delay small La/R -> 1: delays become large La/R > 1: more “work” arriving than can be serviced, average delay infinite!
  • 52.
    Internet protocol stack Application:supporting network applications ftp, smtp, http Transport: host-host data transfer tcp, udp Network: routing of datagrams from source to destination ip, routing protocols Network access: data transfer between neighboring network elements ppp, ethernet Physical: bits “on the wire”
  • 53.
    Layering: logical communication application transport network link physical application transport network link physical application transport network link physical application transport network link physical network link physical data data E.g.:transport take data from app add addressing, reliability check info to form “datagram” send datagram to peer wait for peer to ack receipt analogy: post office data transport transport ack
  • 54.
  • 55.
    Protocol layering anddata Each layer takes data from above adds header information to create new data unit passes new data unit to layer below application transport network link physical application transport network link physical source destination M M M M Ht HtHn HtHnHl M M M M Ht HtHn HtHnHl message segment datagram frame
  • 56.
    IP over ATM ATMAdaptation Layer (AAL): interface to upper layers end-system segmentation/rea ssembly ATM Layer: cell switching Physical AAL5 ATM physical AAL5 ATM physical AAL5 ATM physical AAL5 ATM physical ATM physical application TCP/UDP IP application TCP/UDP IP application TCP/UDP IP application TCP/UDP IP
  • 57.
  • 58.
    Network Protocols Protocol: Agreementbetween two parties as to how information is to be transmitted Example: system calls are the protocol between the operating system and application Networking examples: many levels • Physical level: mechanical and electrical network (e.g. how are 0 and 1 represented) • Link level: packet formats/error control (for instance, the CSMA/CD protocol) • Network level: network routing, addressing • Transport Level: reliable message delivery Protocols on today’s Internet: Ethernet ATM Packet radio IP UDP TCP RPC NFS WWW e-mail ssh Physical/Link Network Transport
  • 59.
    Building a messagingservice Process to process communication Basic routing gets packets from machine→machine What we really want is routing from process→process • Example: ssh, email, ftp, web browsing Several IP protocols include notion of a “port”, which is a 16-bit identifiers used in addition to IP addresses • A communication channel (connection) defined by 5 items: [source address, source port, dest address, dest port, protocol] UDP: The User Datagram Protocol UDP layered on top of basic IP (IP Protocol 17) • Unreliable, unordered, user-to-user communication UDP Data 16-bit UDP length 16-bit UDP checksum 16-bit source port 16-bit destination port IP Header (20 bytes)
  • 60.
    Building a messagingservice (con’t) UDP: The Unreliable Datagram Protocol Datagram: an unreliable, unordered, packet sent from source user → dest user (Call it UDP/IP) Important aspect: low overhead! • Often used for high-bandwidth video streams • Many uses of UDP considered “anti-social” – none of the “well- behaved” aspects of (say) TCP/IP But we need ordered messages Create ordered messages on top of unordered ones • IP can reorder packets! P0,P1 might arrive as P1,P0 How to fix this? Assign sequence numbers to packets • 0,1,2,3,4….. • If packets arrive out of order, reorder before delivering to user application • For instance, hold onto #3 until #2 arrives, etc. Sequence numbers are specific to particular connection
  • 61.
    Message TCP/IP packet, Ethernetframe Application sends message TCP data TCP Header IP Header IP DataEH Ethernet Hdr Ethernet Hdr TCP breaks into 64KB segments, adds 20B header IP adds 20B header, sends to network If Ethernet, broken into 1500B frames with headers, trailers (24B) All Headers, trailers have length field, destination, ...

Editor's Notes

  • #3 That is, any computer, no matter how primitive or advance, can be divided into five parts: 1. The input devices bring the data from the outside world into the computer. 2. These data are kept in the computer’s memory until ... 3. The datapath request and process them. 4. The operation of the datapath is controlled by the computer’s controller. All the work done by the computer will NOT do us any good unless we can get the data back to the outside world. 5. Getting the data back to the outside world is the job of the output devices. The most COMMON way to connect these 5 components together is to use a network of busses.
  • #4 With small amounts of data, synchronous communication is a waste of bandwidth because the clock signals still get sent
  • #10 End-to-end dedicated “circuit…. Like a telephone connection… vs. a point-to-point (e.g. between routers) connection for small chunkc of data. Can you use a packet switching network for classical “circuit oriented” applications???? Voice over the internet…. Streaming video…. Radio on the internet….
  • #26 4
  • #28 5
  • #32 6
  • #40 12
  • #41 13
  • #42 Insert figures 2-7 – 2-10
  • #58 9