ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
Computer network basics
1. Computer Network
Basics
An overview of computer networking
which introduces many key concepts
and terminology. Sets the stage for
future topics.
2. 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
3. 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
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 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
6. 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
7. A closer look at network structure:
network edge:
applications and
hosts
network core:
routers
network of
networks
8. General Architecture of Computer
Networks
Cloud
External
nodes
Internal nodes
(or stations)
(swithing devices)
9. 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”
12. Classification of the networks according
to the connection establishing
Line switched network
Packet switched network
Radiating/data disseminating systems
Point-to-point connected networks
14. (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
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 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
18. 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
19. 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.
20. 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
21. 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
22. 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
24. The OSI Model
Physical Layer
(Data) Link Layer
Network Layer
Transport Layer
Session Layer
Presentation Layer
Application Layer
25. 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
26. (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
27. 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
28. 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
29. 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
30. 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)
31. 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
32. 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
33. 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
35. 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
36. 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
37. 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)
38. 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”
40. Data Link Layer Devices
Bridge
Cascaded vs. Backbone
Single
Multiple
Switch (switched hub)
41. Routers
Provide link between networks
Accommodate network differences:
Addressing schemes
Maximum packet sizes
Hardware and software interfaces
Network reliability
Congestion/Traffic Management
42. 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
43. Architectural Implementation of the
LANs
Ethernet (IEEE 802.3)
FDDI
Gigabit Ethernet
Token Bus (IEEE 802.4)
Token Ring (IEEE 802.5)
45. 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
46. 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
47. 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?
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-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
50. 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
51. 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!
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”
55. 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
56. 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
58. 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
59. 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)
60. 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
61. 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, ...
Editor's Notes
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.
With small amounts of data, synchronous communication is a waste of bandwidth because the clock signals still get sent
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….