1 introduction to computer networks foundation ilam university mozafar bag-mohammadi
TRANSCRIPT
2
OutlineIntroductionStatistical MultiplexingInter-Process CommunicationNetwork ArchitecturePerformance Metrics
3
Introduction
Building a network to support diverse ranges of applications Distributed computing. Multimedia. Telecommunication. E-commerce, etc.
What kind of technology do we need? Hardware. Software.
4
First Step
What is computer Network? Different views. Differences from other networks, Its generality.
What is requirements? Different perspective: Network provider Network designer Application programmer
5
Design goals
Connectivity Scalability Simplicity
For designers. Most importantly for users.
Efficiency cost performance
Support for common user services.
6
Building Blocks
Nodes: PC, special-purpose hardware… hosts switches, routers and gateways
Links: coaxial cable, optical fiber… point-to-point
multiple access…
7
Switched Networks
two or more nodes connected by a link, or
two or more networks connected by two or more nodes
A network can be defined recursively as...
8
Strategies
Circuit switching: carry bit streams Connection oriented. Original telephone network Dedicated resource.
Packet switching: store-and-forward messages Connectionless (IP) or connection oriented (ATM) Shared resource.
Packet switching is the focus of computer Networks.
9
Addressing and Routing
Address: byte-string that identifies a node usually unique
Routing: process of forwarding messages to the destination node based on its destination address
Types of addresses unicast: node-specific broadcast: all nodes on the network multicast: some subset of nodes on the network
10
Multiplexing (resource sharing)
Time-Division Multiplexing (TDM) Frequency-Division Multiplexing (FDM)
L1
L2
L3
R1
R2
R3Switch 1 Switch 2
11
Statistical Multiplexing On-demand time-division Schedule link on a per-packet basis Packets from different sources interleaved on link
scheduling fairness, quality of service
Buffer packets that are contending for the link Buffer (queue) overflow is called congestion
…
13
Inter-Process Communication Turn host-to-host connectivity into process-to-process
communication regardless where the process are. Give a unified view and fill gaps between what
applications expect and what the underlying technology provides.
HostHost
Application
Host
Application
Host Host
Channel
14
IPC Abstractions Request/Reply (Client-server)
Guarantee delivering data, and might protect privacy and integrity. distributed file systems (NFS) digital libraries (web) File Transfer (FTP)
Stream-Based- sequence or stream of bits. Video on demand:
sequence of frames. Delay constrained, but can be fetched before hand.
For example, a 1/4 NTSC with 352x240 pixels and 24 bit color. (352 x 240 x 24)/8=247.5KB
Assuming 30 frame per second => 7500KBps = 60Mbps Video Conferencing-
tightly delay bounded. VIC From Berkeley. Both application can tolerate packet loss.
15
Reliability in the network?What Goes Wrong in the Network? Bit-level errors (electrical interference), a bit
is corrupted or a burst error. Packet-level errors (congestion)
Messages are delayed Messages are deliver out-of-order Packet loss Third parties eavesdrop
Link and node failures
16
Performance Metrics Bandwidth (throughput)
data transmitted per time unit link versus end-to-end notation
KB = 210 bytes Mbps = 106 bits per second
Latency (delay) time to send message from point A to point B one-way versus round-trip time (RTT) components
Latency = Propagation + Transmit + QueuePropagation = Distance / c (light speed)Transmit = Size / Bandwidth
17
Bandwidth versus Latency Relative importance
Latency bounded- sending 1-byte by client, 1ms vs 100ms dominates sending a message on a 1Mbps or 100Mbps link
Bandwidth Bounded- sending 25MB image: 1Mbps vs 100Mbps dominates 1ms vs 100ms delayed channel.
Infinite bandwidth RTT dominates
Throughput = TransferSize / TransferTimeTransferTime = RTT + 1/Bandwidth x TransferSize
1-MB file to 1-Gbps link the same as 1-KB packet to 1-Mbps link.
18
Delay x Bandwidth Product
Amount of data “in flight” or “in the pipe” Example: 100ms x 45Mbps = 560KB
Bandwidth
Delay
We are usually more interested in 2 times of this value Since it take RTT to hear from receiver.
19
Layering Use abstractions to hide complexity and
decompose to manageable components. Abstraction naturally lead to layering Alternative abstractions at each layer
Request/replychannel
Message streamchannel
Application programs
Hardware
Host-to-host connectivity
20
Layering
Advantages Modularity – protocols easier to manage and
maintain Abstract functionality –lower layers can be
changed without affecting the upper layers Reuse – upper layers can reuse the functionality
provided by lower layers Disadvantages
Information hiding – inefficient implementations
21
Protocols
Building blocks of a network architecture, or layer abstraction.
Each protocol object has two different interfaces service interface: operations on this protocol peer-to-peer interface: messages exchanged with
peer Term “protocol” is overloaded
specification of peer-to-peer interface module that implements this interface
22
Host 1
Protocol
Host 2
Protocol
High-levelobject
High-levelobject
Serviceinterface
Peer-to-peerinterface
Interfaces
23
Protocol Machinery Protocol Graph
Nodes are protocols and edge are depends on. most peer-to-peer communication is indirect peer-to-peer is direct only at hardware level
Digitallibrary
application
Videoapplication
RRP MSP
HHP
Fileapplication
Host 1Digitallibrary
application
Videoapplication
RRP MSP
HHP
Fileapplication
Host 2
24
Protocol Machinery (cont) Multiplexing and Demultiplexing (demux key) Encapsulation (header/body)
RRP DataHHP
Applicationprogram
Applicationprogram
Host 1 Host 2
Data
RRP
RRP Data
HHP
Data
RRP
RRP Data
HHP
25
ISO OSI Reference Model
ISO – International Standard Organization OSI – Open System Interconnection Started to 1978; first standard 1979
ARPANET started in 1969; TCP/IP protocols ready by 1974
Goal: a general open standard allow vendors to enter the market by using their
own implementation and protocols
26
ISO ArchitectureApplication
Presentation
Session
Transport
End host
One or more nodeswithin the network
Network
Data link
Physical
Network
Data link
Physical
Network
Data link
Physical
Application
Presentation
Session
Transport
End host
Network
Data link
Physical
Telnet, FTP, TFTPMSB, integerManage TCP streamsMessage, P2P(process)Packet, routingFrame, CRCRaw bit pipe
•The last 3 protocols are implemented in all elements in the Network.
27
Encapsulation A layer can use only the service provided by the layer
immediate below it Each layer may change and add a header to data
packet
data
data
data
data
data
data
data
data
data
data
data
data
data
data
28
OSI Model Concepts Service – says what a layer does Interface – says how to access the service Protocol – says how is the service
implemented a set of rules and formats that govern the
communication between two peers
29
Physical Layer (1)
Service: move the information between two systems connected by a physical link
Interface: specifies how to send a bit Protocols: coding scheme used to represent
a bit, voltage levels, duration of a bit
Examples: coaxial cable, optical fiber links; transmitters, receivers
30
Datalink Layer (2) Service:
framing, i.e., attach frame separators send data frames between peers others:
arbitrate the access to common physical media ensure reliable transmission provide flow control
Interface: send a data unit (packet) to a machine connected to the same physical media
Protocols: physical layer addresses, implement Medium Access Control (MAC) (e.g., CSMA/CD)…
31
Network Layer (3)
Service: deliver a packet to specified destination perform segmentation/reassemble others:
packet scheduling buffer management
Interface: send a packet to a specified destination
Protocols: define global unique addresses; construct routing tables
32
Transport Layer (4)
Services: provide an error-free and flow-controlled end-to-end
connection multiplex multiple transport connections to one network
connection split one transport connection in multiple network
connections
Interface: send a packet to specified destination Protocols: implement reliability and flow control Examples: TCP and UDP
33
Session Layer (5) Service:
full-duplex access management, e.g., token control synchronization, e.g., provide check points for long
transfers
Interface: depends on service Protocols: token management; insert checkpoints,
34
Presentation Layer (6)
Service: convert data between various representations
Interface: depends on service Protocol: define data formats, and rules to
convert from one format to another
35
Application Layer (7)
Service: any service provided to the end user Interface: depends on the application Protocol: depends on the application
Examples: FTP, Telnet, WWW browser
36
Internet Architecture Defined by Internet Engineering Task Force
(IETF). Developed in mid 60s in the ARPANET project.
No assumption about the network tech.
…
FTP HTTP NV TFTP
TCP UDP
IP
NET1 NET2 NETn
37
Internet Architecture Hourglass Design, IP is the focal point. Delivery is
separated from end-to-end process channel. No restrict layering Application vs Application Protocol (FTP, HTTP)
Network
IP
TCP UDP
Application