Computer Network Design - 1 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Review of fundamentals
networking concepts
Andrea Bianco Paolo Giaccone
Telecommunication Networks Group
[email protected]
http://www.telematica.polito.it/
Computer Network Design - 2 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Copyright
• Quest’opera è protetta dalla licenza Creative Commons NoDerivs-NonCommercial. Per vedere una copia di questa licenza, consultare
http://creativecommons.org/licenses/nd-nc/1.0/ oppure inviare una lettera a: Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
• This work is licensed under the Creative Commons NoDerivs-NonCommercial License. To view a copy of this license, visit:
http://creativecommons.org/licenses/nd-nc/1.0/
or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Computer Network Design - 3 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Review
• What is a (modern) telecommunication and computer network? • Topologies
• Multiplexing/multiple access • Switching techniques • User (traffic) characterization
• Properties of telephone and computer networks • Protocol architectures for computer networks
– Physical layer (multiplexing) – Data link layer (multiple access) – Network layer (routing, congestion) – Transport Layer (congestion)
– Application Layer (client server, P2P, CDN, Data Center)
Computer Network Design - 4 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Networks
• Focus on modern telecommunication and computer
networks
– Telephone and Internet
• One possible network definition (service oriented
view)
– Infrastructure that provides services to applications:
• Web, VoIP, email, games, e-commerce, social nets, • phone calls, fax, …
– Internet
• provides programming interface to apps program to “connect” to Internet
• provides service options
Computer Network Design - 5 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Networks
• Another network definition:
– A set of nodes and channels that offer a connection among two or more points to make telecommunication possible among users (i.e. move infos (data/flows)
among nodes)
– Represented as a topology (graph)
• Different levels of detail
– Key issue in networks is resource sharing
• Node is the point where
– Multiplexing /multiple access (link sharing) and switching (node sharing) occurs
Computer Network Design - 6 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Type of channels
• Point-to-point channel
• Only two nodes connected to the channel
• The channel is used by both nodes (often in
the same fashion)
• Sharing the channel among flows is called
multiplexing
Computer Network Design - 7 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Type of channels
• Broadcast channel
– Many Tx and many Rx
• Sometimes one (many) Tx and many (one) Rx
• Single communication channel shared by all nodes
– This room!
• The information sent by one node is received by all
other nodes (with some delay)
• Sharing the channel among flows is called multiple
access
Computer Network Design - 8 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Channel properties
• Many quality indices
– Attenuation, robusteness to mechanical stress, ease of installation, robusteness to interference, cost, etc,
• Mainly interested in
– bit rate [bit/s]
• Also named bandwidth, throughput, with slightly different meaning
– delay [s]
• propagation delay • depends on the channel length
– Bandwidth x delay [bit]
• channel ‘’size’’
• how much we can ‘’push’’ on the channel
Computer Network Design - 9 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Topologies in TLC networks
• The network topology is defined by the relative position of nodes and channels
• A network topology is a graph G=(V,A)
– V = set of vertices (represented as circles - nodes) – A = set of edges (represented as segments - channels)
• Edges may be:
– direct (directed segments (arrow) – unidirectional channels) – undirect (non directed segments – bidirectional channels)
• Abstraction of real networks
– Several levels of abstraction are possible
Computer Network Design - 10 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Many topologies
• Full mesh, mesh, tree, bus, star, …
A E B C D A E B C D A E B C D A E B C D A E B C D A E C B D A E B C D
Computer Network Design - 11 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Physical and logical topology
• It is important to distinguish between the
physical and the logical topology
– Logical topology: logical interconnection among
nodes via logical channels
– Physical topology: takes into account transmission
media constraints
Computer Network Design - 12 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Physical topology
• E.g., satellite network
A B
Computer Network Design - 13 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Logical topology
• Private network over satellite network
A B
C D
Computer Network Design - 14 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Logical topology
• Router interconnection for an ISP
Frame Relay or ATM network Router Router Router Router Node Node Node Node Virtual Circuits
Computer Network Design - 15 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Logical topology
• Overlay among peers in a P2P network
Computer Network Design - 16 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Logical topology
access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net access net ISP B ISP A ISP C IXP IXP regional netComputer Network Design - 17 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Logical topology
access ISP access ISP access ISP access ISP access ISP access ISP access ISP access ISP Regional ISP Regional ISPIXP IXP
Tier 1 ISP Tier 1 ISP Google
IXP
Computer Network Design - 18 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Computer Network Design - 19 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Topologies and performance
• The amount of traffic that can be succesfully
transferred (throughput) in a network is
– for a given channel available capacity
– inversely proportional to the average distance
among node pairs
– weighted by the amount of traffic exchanged
between the two node
• For uniform traffic and regular topologies the
average distance on the topology establish the
throughput
Computer Network Design - 20 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Topologies and performance
• Comparison among topologies, with the same
number of nodes (4) and (almost) the same
number of channels
• Uniform traffic
– Every node pair exchange x bit/s. Total generated
traffic is 12x.
• Every unidirectional channel has capacity B bit/s.
• Compute: average distance, network capacity
(maximum throughput), maximum channel
load,maximum node load
Computer Network Design - 21 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Topologies and performance
• Capacity: 3x2B=6B
• Average distance: 20/12=1.66
• Consider only traffic from left to right (simmetry)
– maximum channel load is 4x. Thus, x <= B/4
• Node 3 (or 2) must handle 7B/4 of traffic unit
• Uniform traffic, non regular topology, unbalanced
channel load, unbalanced node load
1
2
3
4
3x 2x 2x x x xComputer Network Design - 22 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Topologies and performance
• Capacity: 3x2B=6B • Average distance: 1.5
• Considering the traffic from node 4.
– Maximum load on (all) channel is 3x. Thus x <=B/3 – The same holds for the other direction
• Node 4 must handle 3B of traffic unit
• Uniform traffic, non regular topology, balanced channel load, unbalanced node load
x x x x x x x x x 1 2 4 3
Computer Network Design - 23 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Topologies and performance
• Capacity: 4x2B=8B • Average distance: 1.33
• For clockwise traffic the maximum channel load is 2x. Thus x <= B/2.
– The same holds for counter clock wise traffic
• Each node must handle 2B unit of traffic
• Uniform traffic, regular topology, balanced channel load, balanced node load 3x/2 x/2 3x/2 x/2 3x/2 x/2 3x/2 x/2
Computer Network Design - 24 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Channel, sharing
Computer Network Design - 25 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Sharing channel resources
• Sharing of channel resources among data flows comes in two different flavours
– Multiplexing
• All flows access the channel from a single point • Single transmitter scenario
• Centralized problem
• A radio access from an antenna (base station in a cellular network, access point in a WI-FI network, satellite transmission), an output link in a switch or a router
– Multiple-access
• Flows access the channel from different access points • Many transmitters are active
• Distributed problems
• Local area networks (if not switched), mobile phones in a cellulare network, PC accessing via a Wi-FI hot-spot
Computer Network Design - 26 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Channel sharing techniques
• Frequency (FDM - FDMA)
• Time (TDM - TDMA)
• Code (CDM - CDMA)
t
f
channel
Computer Network Design - 27 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Frequency division
• Each flow is transmitted using different frequency
bands
• Need for band guard
f
t
Computer Network Design - 28 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Time division (TDM – TDMA)
• Each flow exploits different time intervals (slots)
• Define frame over which slot allocations are repeated
• Need for time guard
f
t
Computer Network Design - 29 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Code division
(CDM – CDMA)
• Each flow exploits a different code (waveform
with higher frequency than the bit tx rate)
• Need for orthogonal codes
c
t
f
Computer Network Design - 30 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Code division
(CDM – CDMA)
f
Computer Network Design - 31 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Code division
• Example
– Code word used by user i: +1 +1 -1 -1
– Coded sequence = information bit x code word
– Information bit:
-1
-1 1 1 -1
– Coded sequence:
-1-1+1+1 -1-1+1+1 +1+1-1-1 +1+1-1-1 -1-1+1+1Computer Network Design - 32 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Code multiplexing
• Example:
– Code word for user 1: +1 +1 -1 -1
– Code word for user 2: +1 +1 +1 +1
– Code word for user 3: +1 -1 +1 -1
– Code word for user 4: +1 -1 -1 +1
• We are interested in receiving data from user 1
• Over the channel, transmitted signals sum up
(need to equalize power)
– Tx of 1+2+3:
+3 +1
+1
-1
– Tx of 2+3 (noise):
+2 0 +2 0
Computer Network Design - 33 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Code multiplexing
• Reception = correlation with code words
– Reception of user 1 = scalar product of the received
sequence with the code word +1 +1 -1 -1
– Everything we receive
• Transmissions of 1+2+3: +3 +1 +1 -1 • Correlation with +1 +1 - 1 -1 = 4– The noise
• Transmissions of 2+3: +2 0 +2 0 • Correlation with +1 +1 -1 -1 = 0Computer Network Design - 34 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Multiplexing or multiple access
• Time, frequency, code (and space: multiple
parallel wires) are all equivalente alternatives
– Given a channel capacity we can choose one among
the above techniques depending on technological
constraints
• Code division permits to “increase” channel
capacity (by allowing more users) if using
pseudo-orthogonal codes but degrading the
signal to noise ratio at the receiver (increase the
bit error rate)
Computer Network Design - 35 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
FDM and TDM
FDM frequency time TDM frequency time 4 users Example: 125 msComputer Network Design - 36 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Statistical multiplexing
• Multiplexing can be
– deterministic, fixed in time, on the basis of
requirements determined at connection setup
– statistical, variable in time, to adapt to instantaneous
Computer Network Design - 37 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Statistical Multiplexing
• Sequence of A & B packets does not have fixed
pattern, bandwidth shared on demand
• Dynamic TDM scheme
A B C 100 Mb/s Ethernet 1.5 Mb/s D E statistical multiplexing queue of packets waiting for outputlink
Computer Network Design - 38 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Switching techniques
Circuit and packet switching
Computer Network Design - 39 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Switching techniques
• Circuit switching
– Telephone networks
• Packet switching
– Two flavours (datagram and virtual circuit service)
– Internet, computer networks
Computer Network Design - 40 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Circuit switching
• Three phases
– Opening – Data transfer – Closing• Network transparently
forwards user
generated data
– No operation on user data• Fixed bit rate 64kbit/s
U1 N1 N2 U2
t t t t
Computer Network Design - 41 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Space vs time switching
125 ms
125 ms
U1 N1 N2 U2
U1 N1 N2 U2
Computer Network Design - 42 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Switching techniques
• Circuit switching
– Resources allocated uniquely to a circuit
• Physical channel, time-slot in TDM frame
• Resources are shared among connections but are statically allocated to data
– Connection oriented
• Need to open (and close) the circuit prior (after) data transmission • Store state information on each circuit (stateful approach)
– Address (unique for each user in the network) used only when opening the circuit, not carried in data
– Data unit identified by position
– Routing (choice of the best route) performed only when opening the circuit
• Done through routing table lookup
– Data forwarding
• Through forwarding table look-up (one entry for each active circuit) • Static (always the same scheduling, unless circuits are closed or
Computer Network Design - 43 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Packet switching
U1 N1 N2 U2 t t t t Transmission time Propagation time Processing timeComputer Network Design - 44 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Data transfer over virtual circuits
Forwarding table DTE1 1 2 DTE2 3 4 5 1 2 3 4 5 1 2 3 1 2 3 4 5 32 612 1 32 5 612 216 314
In Label Out Label
Computer Network Design - 45 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Grouping virtual circuits
• A virtual circuit is logically identified by a
label
– The label may change value over each link
• Relabeling
• Label = often a pair of identifiers (VCI-VPI in
ATM)
– Virtual channel (VC): identifies a single
connection
– Virtual path (VP): identifies a group of virtual
channels
Computer Network Design - 46 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Grouping virtual circuits
• The grouping allows flow aggregation
– Eases network management
– Increases scalability
• Possible use
– LAN inter-connection to crete a VPN (Virtual
Private Network)
– Multimedia flows (video, audio, data)
Computer Network Design - 47 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
VPI 1
VPI 6
VCI 1 VCI 2 VCI 3 VCI 4 VCI 5Virtual circuits and paths (ATM)
Computer Network Design - 48 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
VP SWITCHING VCI 21 VCI 22 VCI 23 VCI 24 VCI 25 VCI 24 VCI 23 VCI 24 VCI 25 VCI 24 VCI 21 VCI 22 VPI 1 VPI 2 VPI 3 VPI 8 VPI 4 VPI 5
ATM: VP switching
Computer Network Design - 49 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
VCI 25 VCI 25 VCI 21 VCI 21 VCI 23 VCI 24 VCI 23 VCI 24 VC SWITCHING VPI 4 VPI 5 VPI 2
ATM: VC switching
Computer Network Design - 50 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Virtual circuits
• Switched virtual circuit (SVC)
– Established on-demand, through signaling, in real-time – Three phases
• Virtual circuit opening • Data transfer • Virtual circuit closing
– Users (and network) exchange signaling packets (over dedicated VCI/VPI) to establish a virtual circuit; then, data transfer can occur
• Permanent virtual circuit (PVC)
– Established through agreement among user and network provider
• Off-line, through management procedures
– Define a semi-static network
• Logical topology
– Users can immediately exchange data, with no delay
Computer Network Design - 51 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Switching techniques
• Packet switching, with datagram service
– Shared resources
• Ideally the full network is available to a single user
• Resources are “continuously” shared with all other users at the data level
– Connectionless
• Free to send data when available, no need to check network or user availability
• Stateless approach
– Each packet must carry the destination (and source) address – Data unit identified through source and destination addresses
(unique for each pair of users in the network)
– Routing and forwarding performed independently over each packet
• Through routing table look-up
Computer Network Design - 52 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Switching techniques
• Packet switching, with virtual circuit service
– Shared resources
• Resources are shared with all virtual circuits sharing the same link – Connection oriented
• Need to open (and close) the virtual circuit prior (after) data transmission
– Permanent virtual circuits available
• Store state information on each virtual circuit (stateful approach) – Address (unique for each user in the network) used only when opening the
virtual circuit, not carried in data
– Data unit identified through a label (unique for each existing virtual circuit on each link in the network)
• Label is unique on each link, but has a local scope, i.e. the value assumed is different on each link for simplicity
– Routing (choice of the best route) performed only when opening the virtual circuit
• Done through routing table lookup – Data forwarding
• Through forwarding table look-up (one entry for each active virtual circuit) • Re-labelling needed
Computer Network Design - 53 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Fundamentals of packet
switching
• Data sent as packets
• Nodes operate in store&forward (almost always)
– Buffers – Delay
• Many operations on data in the network (not in
circuit switching)
– Error detection, error recovery, flow control, routing, forwarding, congestion control, packet inspection …….. – Need to define a network architecture to organize
functionalities (see later)
Computer Network Design - 54 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Packet size
• Packet size P
– Measured in bit
• Packet size in time T
TX– Transmission time measured in s
– Different on every link
– T
TX= P/V
TXwhere V
TXis the link bit rate
• Packet size in meter M on a given link
Computer Network Design - 55 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Delays
• Delays suffered by each packet from source to destination node
• In each link
– Transmission (and reception) delay
• It is a funciton of the packet size in bit and of the link bit rate
– Propagation delay
• It is a function of the link length in meters
• In each switching node
– Processing time
• Function of the processing speed and of the complexity of the executed procedures on the packet header
• Normally negligible with respect to transmission time
– Queuing delays
• Depend on the traffic generated by all users • Highly variable
Computer Network Design - 56 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Traffic characterization
and QoS Provisioning
Computer Network Design - 57 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
User traffic characterization
• Need to know user behaviour to design a
network
• Traffic sources
– CBR (Constant Bit Rate)
– VBR (Variable Bit Rate)
• Characterized by their rate [bit/s]
Computer Network Design - 58 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
User traffic characterization
• CBR (Constant Bit Rate) sources:
– Rate (bit/s)
• “Perfectly” known
– Call duration (s)
– Call generation process
• Only statistically known
Computer Network Design - 59 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
User traffic characterization
• VBR sources:
– Average rate (bit/s)
• Known? • Over which period?
– Peak rate (bit/s) or
– Burstiness (Peak rate/ average rate)
• Known (worst case)
– Burst duration
• Known?
– Call duration (s) – Call generation process
• Only statistically known
Computer Network Design - 60 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
low speed data alphanumeric terminals LAN alta velocità immagini connectionless data transmission supercomputer interconnection voice audio HDTV VIDEO compressed non compressed B urs ti nes s
Peak rate [bit/s]
103 104 105 106 107 108 109 1010 1000 100 10 1 LAN graphical terminal
Burstiness= Peak rate/ Average rate
Computer Network Design - 61 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Integrated vs dedicated networks
• Telecommunications networks were traditionally
defined to provide a specific service
– one service one network paradigm
• Telephone network for the interactive human voice transportation service
• Internet for data exchange among computers • TV or radio distribution for the TV or radio system
• Integrated networks
– one network for any service
• narrowband ISDN o N-ISDN • broadband ISDN o B-ISDN
Computer Network Design - 62 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Integrated vs dedicated networks
• Dedicated networks
– Easier to optimize for the specific service
– “Optimal” engineering solutions for the specific requirements of the service
• Integrated networks advantages
– No need to create an independent infrastructure for each service
– Supporting different requirements implies sub/optimal choices
• Integrated networks trade flexibility and infrastructure
cost reduction with perfomance and increased control
complexity
Computer Network Design - 63 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Quality of service provided by
networks
• Networks used as examples
– Fixed telephone network: POTS
– Internet
– B-ISDN
• Describe in an informal way the quality of
service provided by these networks
Computer Network Design - 64 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
POTS
• Characteristics
– CBR source completely known (generated by the network)
– Circuit switching
• Constant, dedicated bit rate no congestion
• Minimum possible delay (only propagation): order of tens of ms (real time)
• Zero loss probability
• Requirements
– Error probability smaller than few % – Small or negligible blocking probability
• QoS largely independent of other users (apart from
blocking probability)
• Network utilization can be really low, user
satisfaction very high
Computer Network Design - 65 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Internet
• Characteristics
– Source behavior unknown
– Packet switching with datagram service
• Complete sharing of network resources • Bit rate and delay unknown • Possible congestion
• Loss probability may be significant
• Requirements
– Error probability negligible in wired networks
• Zero blocking probability
• QoS largely dependent of other users
• Network utilization can be very high, user
satisfaction can be very low
Computer Network Design - 66 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
B-ISDN
• Intermediate situation
– Source known (either deterministically or statistically) – Packet switching with virtual circuit service
• May introduce algorithms to control network resources sharing • Bit rate and delay negotiable
• Loss probability negotiable
– Requirements
• Blocking probability reasonably small • Error probability negligible
• QoS dependent of other user behavior and of
algorithms used to manage network resources
• Trade network utilization and user satisfaction
Computer Network Design - 67 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Network design
• Design problem
– Given:
• Network topology (nodes, link speed) • Traffic characterization
– Jointly obtain:
• Guarantee some sort of QoS for user connection • High network utilization
• Without the objective of high network utilization, the
problem becomes “trivial”
– overprovisioning (power line or water distribution networks)
Computer Network Design - 68 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Network design
• Several flavour
• Running at different time scale (with different level of complexity)
• Mainly focus on network design and planning (resource deployment)
• On the basis of traffic estimates and cost constraints • Exploits routing criteria and traffic engineering
• Other examples
– Network management (running a network)
• Measurements
• Fault management (protection and restoration) • Includes re-design and re-planning
• Connection management • Data unit transport
Computer Network Design - 69 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Design to obtain QoS
• Different time scale (with different level of
complexity)
• Network design and planning (resource
deployment)
– On the basis of traffic estimates and cost constraints – Exploits routing criteria and traffic engineering
• Network management (running a network)
– Measurements
– Fault management (protection and restoration) – Includes re-design and re-planning
• Connection management
• Data unit transport
Computer Network Design - 70 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Our definition of QoS
• Assume that a network has been designed and is properly managed
– Available resources are given
• Mainly study algorithms operating at the following time-scale:
– Connection management – Data unit transport
• Also named traffic control problem
• Must define what is meant by connection. Also named data classification problem.
• Two different traffic control principles:
– Preventive control : mainly executed at network ingress, with fairly tight traffic control to avoid congestion insurgence in the network – Reactive control: react when congestion situation occur, to reduce or
eliminate congestion negative effects
Computer Network Design - 71 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Traffic control:
essential elements
• Connection oriented network
• User-network service interface
– Traffic characterization – QoS negotiation
• Resource allocation (bit rate and buffer)
• Algorithms for traffic control
– CAC (Connection Admission Control) and routing – Scheduling and buffer management (allocation, discard)
in switching nodes
– Conformance verification (policing or UPC: Usage Parameter Control)
– Traffic shaping to adapt it to a given model – Congestion control
Computer Network Design - 72 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Traffic control:
connection oriented network
• The connection oriented paradigm permits to know
which are the network elements over which traffic
control algorithms must be executed (path known)
– Circuit switching
– Packet switching with virtual circuit service
• If high utilization is a major objective:
– Packet switching
• As such, the most suited switching technique to
obtain QOS is packet switching with virtual circuit
service
Computer Network Design - 73 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
user-network service interface
• The capability to control the network increases with the knowledge of user traffic. Limiting factor is the complexity. • Over the service interface
– Traffic characterization – QoS parameters negotiation
• Can be defined on a call basis or on a contract basis • POTS: implicit, on a contract basis
• Internet: not existing
• Frame relay: negotiable, normally on a contract basis • B-ISDN: negotiable with traffic contract on both contract and
call basis
• Internet extended to support QoS: negotiable through a SLA (Service Level Agreement) mainly on a contract basis
Computer Network Design - 74 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
resource allocation
• Main resources:
– Bit rate over transmission links – Buffer
• Resources can be allocated
– On a contract basis (booking) – On a call basis
– Packet by packet
• Allocation
– Exclusive (dedicated resource) – Shared
Computer Network Design - 75 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Algorithms: CAC and routing
• Routing
– QoS based path selection to router a connection
• CAC
– Determine whether to accept a connection or not, depending on
• The path chosen by the routing algorithm • Traffic characterization
• QoS requests • Network status
• Constraints
– It is not acceptable to destroy or even reduce the quality of service guaranteed to already accepted connections
• Can be relinquished
– Connection must be refused to avoid network overload or congestion
• Preventive control (but can become reactive)
Computer Network Design - 76 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Algorithms: scheduling and
buffer management
• Scheduling
– Choice of the data unit to be transmitted among data unit stored in the switch
• Buffer management
– Allocation (partial/total, exclusive/shared) of memories in the switch
– Dropping policies
• Mandatory in an heterogeneous environment to support different QOS requests
– FIFO (First In First Out) or FCFS (First Came First Served) policy with drop-tail discard is optimal in a homogeneous environment – Counter for less than 10 pieces at supermarket
• Preventive and reactive
Computer Network Design - 77 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Algorithms: policing e shaping
• Policing (traffic verification)
– Network control of user behavior to guarantee conformance to traffic characterization
• Shaping (traffic conditioning)
– User/network adaptation of data traffic to make it conformant to a given characterization
• Mandatory to control user honesty and to adapt traffic which is difficult to generate as conformant a priori
• Where algorithms must be executed?
– Only at network edge, i.e., when user access network? – Multiplexing point modify traffic shape
• Both at network access and internally to the network
• Mainly preventive, but they can become reactive if QoS level may change over time
Computer Network Design - 78 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Algorithms: congestion control
• Congestion
– Traffic excess over a given channel (link)
• Can occur due to
– Short term traffic variability
– Allocation policies that share resources to increase network utilization
• Congestion effects:
– Buffer occupancy increase – Delay increase
– Data loss
• Needed to obtain high link utilization
• Must execute at network edge, within the network
or….?
Computer Network Design - 79 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Protocol architectures
Computer Network Design - 80 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Architectures and protocols
• Communication requires cooperation
• One abstract description of the communication
paradigm between two or more users requires
the definition of a reference model specifying a
network architecture
• A network architecture defines
– the communication process
– the relation among objects used in
communication
– the functionalities to support the communication
• Layered architectures!
Computer Network Design - 81 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Layered architectures
• Layered architectures are used because of
– simple design – simple management – simple standardization – separation among functions
OSI Application Presentation Session Transport Network Data Link Physical DECNET User Netw. Appl. Session End to End Routing Data Link Physical ARPA Application Service Internetwork Network SNA Transaction Service Presentation Service Data Flow Trans. Control Manag. Service Virtual Route Explicit Route Transm. Group Data Link Physical path control half session
Computer Network Design - 82 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
router 1 router 2 router 3 host 1 host 2 host 3 host 4 subnet 1 subnet 2 subnet 4 subnet 3 packet transfer routing error control applications
Separation among functions:
Internet
Computer Network Design - 83 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Management plane
Control plane User plane
High layers AAL ATM Physical High layers
B - ISDN
Computer Network Design - 84 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Protocols
• Formal definition of the procedures adopted to
guarantee the communication between two or
more objects on the same hierarchical level to
execute a specific function
• Protocol definition:
– semantics
• set of commands and answers
– syntax
• structure of commands and answers
– timing
Computer Network Design - 85 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Layer and entities
• Active elements in a subsystem
• Run the functions of the layer (exploiting service provided by lower layers)
• Interact (cooperate) within the same layer
(N) - layer
System A System B
(N) - entity
transmission media
Computer Network Design - 86 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Services
• A service can be:
– connection-oriented (CO): a preliminary agreement
(connection) is established between the network and
the communication end-points, then the data is
transferred and finally the connection is released
– connectionless (CL): data is sent to the network
without any preliminary agreement and is treated
independently from each other
Computer Network Design - 87 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
(N) - service N+1 N N+1 N (N) – service provider
Black-box for the (N+1) - entity
Services
Computer Network Design - 88 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
N N-1 N N-1 (N-1) - service (N-1) – service provider
Black-box for the (N) - entity
Services
Computer Network Design - 89 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
(N) - layer interface (N-1) - layer (N-1) - SDU (N-1) - PCI (N-1) - SDU (N-1) - PDU
SAP
(N) - PDUPDU creation
Computer Network Design - 90 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Application Presentation Session Transport Network Data link Physical Receiver Transmitter Application Presentation Session Transport Network Data link Physical data APCI ASDU PPCI PSDU SPCI SSDU TPCI TSDU NPCI NSDU DLPCI DLSDU bit or symbols
Information transfer
Computer Network Design - 91 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
application presentation session transport network data link physical transmission media Application protocol Presentation protocol Session protocol Transport protocol Network protocol Data link protocol Physical layer protocol
application presentation session transport network data link physical
The seven OSI layers
Computer Network Design - 92 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Functions (OSI-like)
• Physical layer:
– allows to transfer binary digits exchanged among the data link entities
– deals with bits or symbols
– defines transmission codes, connectors, voltage levels, etc…
• Data link layer
– error detection and error correction – flow control
– data unit (packet, cell, datagram) delimitation – addressing
Computer Network Design - 93 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino
Functions
• Network layer
– routing
– congestion control (moved to layer 4 in the Internet) – pricing
– addressing
• Transport layer
– error control – sequence control – flow control (end to end) – congestion control (Internet)
Computer Network Design - 94 Andrea Bianco & Paolo Giaccone – TNG group - Politecnico di Torino