How to contact Acknowledgements

How to contact
Acknowledgements
Prof. Dr. Paul Müller
Raum: 34/312
Telefon: 0631/205−2263
eMail: pmueller@informatik.uni−kl.de
Bernd Reuther
Raum: 32/344
Telefon: 0631/205−2161
eMail: reuther@informatik.uni−kl.de
TU
Darmstadt
Stephan G. Eick
Bell−Labs
Dr. Andreas U. Mauthe
Fa. TecMath
Dr. Peter Thomas
Fa. TecMath
Uni
Mannheim
Technische Universität Kaiserslautern:
Prof. Dr. Hans Irtel
Dipl.−Inform. Bernd Reuther
Dipl.−Ing. Dirk Henrici
Dirk Henrici
Raum: 36/414
Telefon: 0631/205−2891
eMail: henrici@informatik.uni−kl.de
How to contact
Prof. Dr. Ralf Steinmetz
1
Literature
Acknowledgements
2
Sitemap
• Ralf Steinmetz
Multimedia−Technologie. Grundlagen, Komponenten und
Systeme.
3. Auflage Springer−Verlag 2000
• Andreas Holzinger
Basiswissen Multimedia Band 1: Technik
Vogel Buchverlag 2001
• Guojun Lu
Communication and Computing for Distributed Multimedia
Systems
Artech House 1996
• François Fluckinger
Understanding Networked Multimedia, applications and
technology
Prentice Hall 1995
• Andrew S. Tanenbaum
Computer Networks, third edition
Prentice Hall 1994
Literature
3
Sitemap
4
Overview Chapter 4
4.1. Network Basics for Multimedia Data
4.1 Network basics for Multimedia Data
♦ Network types
◊ Switching concepts
♦ ISO/OSI model
◊ Layer Description
◊ Terminology
♦ Network Quality of Service Overview
4.2 Network Technologies Considered for Multimedia
4.3 Protocols Considered for Multimedia
Overview Chapter 4
5
4.1.1. Network Types and Services (1)
Network
Telephone
Telephone (mobile)
Internet
Intranet
Cable TV,
Satellite TV
Broadcast TV
Broadcast Radio
6
Network Types and Services (2)
Services
Voice (1:1 and 1:n), Fax, Video,
Text, Data, ...
Voice, Fax, Text, Data, ...
Physical Type
cable (copper, fiber) wireless,
satellite
wireless + cable
cable (copper, fiber), wireless,
Data, Text, Voice, Audio, Video, ...
satellite
Data, Text, Voice, Audio, Video, ... cable (copper, fiber), wireless
Video, Audio, Videotext, Data
cable (copper)
Video, Audio, Videotext
satellite
Video, Audio, Videotext
wireless
Audio, Text
wireless
4.1.1. Network Types and Services (1)
4.1. Network Basics for Multimedia Data
Additionally very specialized Networks:
• Bank connections
• Controlling (traffic, machines, in house systems, ...)
• Supervising (alarm systems, gas pipes, street lights, ...)
7
Network Types and Services (2)
8
Size versus Time of Transmission
Circuit Switching
Provide a "physical" link:
connection A, B established
connection C, B blocked
Advantages:
Disadvantages:
Size versus Time of Transmission
Circuit Switching
10
Cell Switching
Promises to combine the best of circuit switching and packet switching.
All data is segmented into small cells of fixed size.
Cells are multiplexed as needed.
Handle independent packages:
A+C sending packages of different size to B
Packet may get lost because of congestion
Disadvantages:
• bandwidth not scalable
• bad efficiency (bandwidth usage)
9
Packet Switching
Advantages:
• guaranteed bandwidth and delay
• worldwide available
Advantages:
• high efficiency (bandwidth usage)
• bandwidth is scalable
• no guaranteed delay (bandwidth)
Packet Switching
Disadvantages:
11
• high efficiency (bandwidth usage)
• bandwidth is scalable
• guaranteed bandwidth and delay
• rare availability
Cell Switching
12
4.1.2. ISO / OSI Reference Model (1)
ISO / OSI Reference Model (2)
1
The physical layer defines electric signaling on the transmission channel; how bits are converted
into electric current, light pulses or any other physical form. Serial_line is an example of the
physical layer. A network device for this layer is called a repeater.
2
The data link layer defines how the network layer frames are transmitted as bits. An example of a
data link layer protocol is Ethernet. A network device for this layer is called a bridge.
Technology (usually hardware)
Protocols (usually software)
3
4.1.2. ISO / OSI Reference Model (1)
The network layer defines how information from the transport layer is sent over networks and how
different hosts are addressed. An example of a network layer protocol is the Internet Protocol. A
network device for this layer is called a router.
13
ISO / OSI Reference Model (2)
ISO / OSI Reference Model (3)
14
Layer 1
4
The transport layer takes care of data transfer, ensuring the integrity of data if desired by the upper
layers. TCP and UDP are operating at this layer.
5
The session layer establishes and terminates connections and arranges sessions to logical parts.
TCP and RPC provide some functions at this layer.
6
The presentation layer takes care of data type conversion. Protocols residing at this layer are used
to provide interoperability between heterogeneous computer systems.
7
The application layer defines the protocols to be used between the application programs. Examples
of protocols at this layer are protocols for WWW (http) electronic mail (e.g. SMTP) and file transfer
(e.g. FTP).
Data Types
• electrical or optical signals
Devices
• Repeater
♦ extends physical segments to logical segments
♦ boosts electrical or optical signals
• Hub
♦ is a multiport repeater
♦ is a shared medium like a bus
Connectivity
ISO / OSI Reference Model (3)
15
Layer 1
16
Layer 2 (1)
Layer 2 (2)
Devices
Data Types
• Switch
♦ is a multi−port bridge
♦ provides dedicated connections between all ports, i.e. does not realize a shared medium
• frames
Devices
• Bridge
♦ connects logical segments to broadcast domains
♦ provides connectivity on layer 2 by forwarding frames between two logical
segments
♦ a frame will be forwarded if
◊ the receiver resides on the other segment
◊ the receiver's location is unknown
◊ the destination address is a broadcast address
♦ needs information about directly connected network segments only
♦ automatically collects layer 2 addresses to be able to make forwarding
decision
Layer 2 (1)
Connectivity
17
Layer 2 (2)
Layer 3 (1)
18
Layer 3 (2)
Data Types
Connectivity
• packets
Devices
• provides connectivity on layer 3, by interpreting packets and making routing decisions
• a router port is an endpoint of a network segment
• may connect different types of layer 2 networks
• needs information about the whole network topology
♦ receives external information to make a routing decision
♦ static information may be configured by an administrator
♦ dynamic information may be collected by routing protocols
Layer 3 (1)
19
Layer 3 (2)
20
Layer 4 − 7
Terminology (1)
Data Types
Data types:
• protocol data
• arbitrary application specific data
Repeating:
Applications
Forwarding:
• Client Process
♦ requests some information
♦ receives payload
• Server Process
♦ waiting for information requests
♦ sends payload
• One process may be client and server
♦ on different levels (e.g. FTP)
♦ on the same levels (e.g. peer−to−peer protocols)
Bridging or switching:
• layer 1: signals
• layer 2: frames
• layer 3: packets
• boosting electrical or optical signals
• is the task of moving a frame or packet from one interface (or port)
to another interface
• depending on layer 2 addresses deciding whether a frame needs
to be forwarded, identifying the output port and performing the
forwarding
• bridging/switching is a layer 2 functionality
Connectivity
Layer 4 − 7
21
Terminology (1)
Terminology (2)
Routing:
Combined
devices:
Topologies (1)
• depending on layer 3 addresses and routing information deciding to which output port
a packet needs to be forwarded and performing the forwarding
• forwarding a packet includes the generation of a new frame
• routing is a layer 3 functionality
Complete
mesh:
Ring:
• switching−hubs oder route−switches denote combined devices
Star:
Terminology (2)
22
23
• ideal performance
• high reliability
• only for networks with small expansion
•
connections
• reliability
♦ absorb drop out of one link
• easier cabling
• n connections
• reliability
♦ drop out of one link affects a single endsystem only
♦ node in the middle is single point of failure
• complex cabling for large extent networks
• n connections
Topologies (1)
24
Topologies (2)
Combination:
Tree:
Irregular:
Speed versus Distance
• large networks often combine different topologies
• Example: the B−WIN network of the DFN
(Deutsches Forschungsnetz) uses a combination
of ring and star topology
• is a combination of star topologies
• some applications may require specialized
topologies
Topologies (2)
25
Quality of Service Overview
Speed versus Distance
26
Network QoS
Quality of Servcie (QoS) denotes the well−defined and managable behaviour of a system according to
measurable parameters.
In this chapter we consider the Network−QoS for Layer−2
Quantitative criteria:
The implementation of QoS requires the availability of resource management mechanisms.
Different layers of a system will use different QoS parameters, each layer may also have several sub−layers.
• throughput
• delay
• delay variation
• error rate
Network capabilities:
• isochronism
• multicast capability
Quality of Service Overview
27
Network QoS
28
Throughput
End−to−End Delay
The bit rate between two communication endpoints is the number of binary digits that the network is capable
of delivering and accepting per time unit
The end−to−end delay is the
sum of the following delays:
• access delay
the time between the
request to send a data
block and the emission of
the first bit
• network transit delay
the time between emission
of the first bit of a data
block and its reception at
the destination endsystem
(network transit delay is
also called latency)
• transmission delay
the time between emission
of the first and the last bit
of a data block
• The commonly used time unit is one second, but often the actually observed time unit is another one
♦ ISDN offers a throughput of 8 bit per 125 μs
• distinguish individual and aggregate bit rates
• access speed versus bit rate
♦ access speed refers to the frequency at which bits may be sent or received
• bit rate could be constant or variable
• burstiness
♦ peak bit rate (PBR): maximum bit rate during a short time interval
♦ mean bit rate (MBR): averaged bit rate over a longer time interval
♦ burstiness is the relation between PBR and MBR
Throughput
29
Round−Trip−Delay (RTT)
End−to−End Delay
30
Delay Variation
The Delay variation relates to variation of end−to−end delay
• also called "Jitter"
• distinguish average and maximum delay variation
Originator of delay variation
• the physical environment causes jitter in magnitude of nano seconds
• intermediate switches/routers may cause jitter by
♦ variation of medium access time, e.g. CSMA/CD (usually micro−seconds)
♦ store and forward switching delays, e.g. by internal node congestion
(micro−seconds)
♦ waiting time caused by flow control mechanisms (micro− or even
milli−seconds)
In ISDN there is only a physical jitter, whereby in IP networks all types of jitter occur.
• The RTT is also called response time
• RTT is a good metric for interactive applications
Round−Trip−Delay (RTT)
31
Delay Variation
32
Error Rates 1
Error Rates 2
Error types:
Error types:
• data alternation, i.e. inversion of bits
♦ caused by the physical environment
♦ metrics are: bit error rate (BER), packet error rare (PER), cell error
rate (CER)
• data loss
♦ caused by congestion
♦ or caused by defective physical infrastructure
♦ metrics are: packet loss rate (PLR) or cell loss rate (CLR)
• Data duplication, miss insertion or wrong delivery
♦ is a rare incident, but may be caused by data alternation or loss
♦ also caused by hackers to provoke unusual system behavior
♦ miss insertion and wrong delivery may cause serious problems, therefore some techniques use
countermeasurements especially to avoid these problems
• out−of−order delivery
♦ caused by changing routing paths
Mechanisms to avoid problems:
1. Error detection, e.g. using CRC
2. Error handling methods
• discarding, i.e. handle all error types like data loss
• notification, includes discarding
• recovery, error correction or retransmission
Error Rates 1
33
Isochronism
Error Rates 2
34
Multicasting
An end−to−end network connection is called isochronous if the bit rate and the jitter over the connection life
time is guaranteed and the jitter is also small
Multicasting is the capability to replicate data at certain internal points. Replicated data is forwarded to
endsystems which are part of a multicast group.
Isochronism therefore simply defines the requirements of continuous media streams.
Remark:
• The property of media like audio and video, that must be sampled and played in regular intervals is also
called isochrony
• Isochronism does not define quantitative values for jitter or probabilities refereed to by guaranteed.
• If a jitter may be considered small depends on the application.
• Multicast avoids or minimizes the multiple transport of the same data over the same network segments
• broadcast is a special case of multicast
• data duplication must be supported by forwarding engines in switches
• multicast types
♦ one−to−many unidirectional
♦ one−to−many bi−directional
♦ many−to−many
Note: The mulitcast or broadcast capability on OSI Layer−2 is usually a prerequisite for the realization of
multicast on Layer−3.
Isochronism
35
Multicasting
36
4.2. Networks
4.2.1. Ethernet
Different network characteristics lead to different usability for the transport of multimedia data:
History:
• QoS guarantees:
♦ bandwidth
♦ delay
♦ delay variation
• Xerox Corp.: R. Metcalfe (PHD at the M.I.T.) and D. Boggs
• Standardized by IEEE 802.3
♦ there are vendor specific Ethernet variants, e.g. Ethernet V2
• The original article from Robert M. Metcalfe and David R. Boggs Xerox Palo Alto Research
Center
• Isochronism
• Multicast capability
• Flexibility:
♦ bandwidth
♦ traffic types
♦ distance (LAN, WAN)
♦ physical media
• Efficiency/Utilization of physical media
• Costs
4.2. Networks
37
4.2.1. Ethernet
Ethernet
Ethernet: Usability for Multimedia Data
Characteristics:
QoS parameters:
• Bus topology
Isochronism:
• Several physical media: coax cable, twisted−pair, fiber
Multicast
capability:
• Bus characteristics:
♦ max. segment size
♦ min. distance between nodes
♦ Repeater/Hub/Switches for longer distances
Flexibility:
• access protocol CSMA/CD (Carrier Sense Multiple Access with Collision Detection)
Efficiency:
[ Details ]
Costs:
Ethernet
38
39
• No end−to−end guarantees possible
• No priorities supported
• not available
• Multicast group addressing supported
• Broadcast group addressing supported
• formerly fixed bandwidth of 10 Mbit/s, Ethernat derivatives up to 10 GBit/s
• short distances (a so called "WAN Ethernet" is currently under develope)
• with CSMA/CD: low throughput at high utilization because of collisions
• bad efficieny for small frames because padding is required to ensure the
necessary minimum frame size
• Low cost technology enables dedicate connected systems
10/100 Mbit/s guaranteed bandwidth per host in small LANs
Ethernet: Usability for Multimedia Data
40
4.2.2. Token Ring
Token Ring Usability for Multimedia Data
History:
QoS parameters:
• Introduced by IBM 1985
• Standardized by IEEE 802.5 (ECMA 89, ISO 8802/5)
• No bandwidth guarantees, but “reservation” possible by
use of 4 priority classes, e.g. high priority for continuous−media data
traffic
• Priority Classes
•
Priority
Use
0
normal data transfer
1−3 available for data transfer
4
bridges
5−6
reserved
7
station management
• Bounded delay because of:
♦ Token Holding Time
♦ Deterministic access
Characteristics:
• Ring topology
• Shielded coax cable (double) at 4 or 16 MBit/s
• Ring characteristics:
♦ Maximal 260 stations per ring
♦ Bridges to connect several rings
Isochronism:
• Token controls media access:
♦ Rotates on ring
♦ Owner of token may send data
♦ Priority fields
Multicast capability:
[ Details ]
Flexibility:
• not available
• Multicast group addressing supported
• Broadcast group addressing supported
• bandwidth of 4 or 16 Mbit/s
• short distances
Efficiency:
4.2.2. Token Ring
41
Token Ring Usability for Multimedia Data
• high throughput at high utilization
Costs:
• complex protocol
42
4.2.3. Token Bus
“expensive” hardware
The Token Bus protocol was developed to meet the requirements of factory automation
Characteristics:
• Specified in IEEE 802.4
• Bus topology
• Shielded coax cable
• Defines a logical ring of stations
♦ The order depends on MAC addresses
♦ The MAC protocol is even more complex than for Token Ring
• Frame format is nearly the same than for IEEE 802.5
• Priorities are only used to sort frames before sending
Token Ring Usability for Multimedia Data
43
4.2.3. Token Bus
44
4.2.4. FDDI (Fiber Distributed Data Interface)
FDDI Traffic Types
History:
• Based on IEEE 802.5 (Token Protocol)
• Standardized (ANSI X3T9.5, ISO 9314)
Ring Characteristics:
• Optical LAN at 100 MBit/s
• Up to 200 km in length with up to 2 km distance between two
stations
• Up to 500 stations
FDDI modes:
• Non−restricted mode: residual bandwidth, timed token protocol, 8 priority levels
• Restricted mode: residual bandwidth shared between two stations, “restricted token”
• Synchronous: packet switched, guaranteed bandwidth, limited delay
Protocol Characteristics:
• Timer controlled token protocol
• Bidding process at (re−)configuration time
• Early token release option
FDDI II offers an additional mode:
• Isochronous: circuit switched, guaranteed bandwidth, fixed delay
[ Details ]
4.2.4. FDDI (Fiber Distributed Data Interface)
45
FDDI Traffic Types
FDDI: Usability for Multimedia Data (1)
QoS parameters:
FDDI: Usability for Multimedia Data (2)
Performance guarantees in asynchronous mode:
Multicast capability:
• Similar to Token Ring, but longer latency (20 bit per station instead of 2 bit)
• No guarantees if synchronous and asynchronous traffic on the ring
• Restricted mode for two stations:
♦ Low delay
♦ No other asynchronous traffic on the ring allowed
Flexibility:
Performance guarantees in synchronous mode:
Efficiency:
• Guaranteed bandwidth with maximum delay (variation up to 100 ms)
• Time for reservation of synchronous bandwidth relatively long
• Buffering for packets coming too early: buffer space for TTRT duration,
isochronous mode in FDDI II
Isochronism:
46
Costs:
• Multicast group addressing supported
• Broadcast group addressing supported
• fixed bandwidth of 100 Mbit/s
• suitable for short and long distances
• High throughput at high utilization
• fiber is expensive, especially for short distance connections
• complex protocol “expensive” hardware
• available in FDDI II only
FDDI: Usability for Multimedia Data (1)
47
FDDI: Usability for Multimedia Data (2)
48
4.2.5. DQDB
DQDB: Traffic Types
Queued Arbitrated (QA) Slots:
(Distributed Queue Dual Bus)
• Allocated through “distributed queue” MAC procedure
• Similar to asynchronous data traffic in FDDI
Previously QPSX: Queued Packet Switch
Asynchronous part stable (IEEE 802.6),
Isochronous part not standardized
Pre−Arbitrated (PA) Slots:
• Assigned to a specific node by the Frame Generator
• Identified by VCI in slot header
• Ignored by the distributed queue medium access procedure
• Number and timing of PA slots is variable
• Slot contains:
♦ 48 usable bytes (every 125 μs)
♦ n * 64 Kbit/s channel
Design goals, compatibility with
• IEEE 802.x MAC frame formats
• B−ISDN cell structure and speed
Bus characteristic:
• Dual slotted bus, 125μs frame rate (125 μs = 8000 frames/s)
Traffic modes:
• Asynchronous (packet switching) traffic
• Isochronous (circuit switching) traffic
[ Details ]
4.2.5. DQDB
49
DQDB: Traffic Types
DQDB: Usability for Multimedia Data
QoS parameters:
DQDB: Usability for Multimedia Data (2)
Multicast
capability:
Performance guarantees for asynchronous traffic:
• Four priorities: High priority traffic is always sent before traffic of a lower
priority
• Fairness problems: stations near to a bus head have a better chance to
send data in this direction
Flexibility:
Performance guarantees for isochronous traffic:
• Guaranteed bandwidth, reservation is possible
• Fixed delay
• Few implementations
Isochronism:
Efficiency:
• is available
DQDB: Usability for Multimedia Data
50
Costs:
51
• not available
• usable for LAN and WAN, e.g. DQDB connection between Perth and Melbourne
(3.500 km).
• different physical media with different line speed available (30/45/140/155 Mbit/s,
full−duplex)
• High throughput at high utilization
• High load leads to unfairness
• Data always travels to the bus head, a receiver does not remove data.
If receivers would remove data, then efficiency could be increased.
• no market
DQDB: Usability for Multimedia Data (2)
52
4.2.6. ISDN:
Integrated Services Digital Network
ISDN: Interfaces
ISDN User Interfaces:
Standardization:
Channels:
• Basic Rate Interface
♦ 2 data channels (B channel) with 64 Kbit/s
♦ 1 signaling channel (D channel) with 16
Kbit/s
• Primary Rate Interface:
♦ 30 data channels (B channel) with each 64
Kbit/s in Europe
♦ 1 signaling channel (D channel) with 64
Kbit/s
• ITU recommendations (former CCITT)
• ETSI and ANSI standards
Characteristics:
• Public, digital, end−to−end network
• Implements digital bit pipe
♦ Based on 64 Kbit/s data rate
♦ Multiple full duplex data channels
• Support for multiple media and services within one network:
♦ Voice, low quality video, image data, text data,
♦ supplementary services
• Common signaling channel with common set of signaling protocols
A − 4kHz analog
B − 64 Kbps digital PCM
C − 8 or 16 Kbps digital
D − 16 or 64 Kbps digital signaling
E − 64 Kbps digital internal signaling
H − 384, 1536 or 1920 Kbps digital
ISDN Protocol Reference Model:
• Extensions to ISO/OSI:
• User plane: for user data
• Control plane: for connection management
• Packet oriented D channel signaling
Technology:
• Circuit switching
• Fixed bandwidth channel assignment
[ Details ]
4.2.6. ISDN:Integrated Services Digital Network
53
ISDN: Usability for Multimedia Data
QoS parameters:
ISDN: Interfaces
4.2.7. B−ISDN (Broadband ISDN) / ATM
• guaranteed bandwidth
• low delay and low delay variation (not guaranteed, e.g. Satellite links with
significantly higher delay)
Standardization:
Characteristics:
Isochronism:
Multicast capability:
Flexibility:
Efficiency:
Costs:
54
• guaranteed by design principals
• no multicast capabilities
• fixed bandwidth
• although ISDN is used for end−to−end communications, it is mainly a
WAN technology
• independent of physical media
Technology:
• ITU recommendations (former CCITT)
• ATM Forum (organization of vendors, specifications only)
• For LAN and WAN networks
• For private and public networks
• Support of fine granular Quality of Service
♦ Suitable for all media types
• Low and high bandwidth is supported
• Connection oriented
• Cell Switching
• ATM – Asynchronous Transfer Mode
• low bandwidth utilization
• expensive bandwidth (Telecom ports includes WAN connectivity)
ISDN: Usability for Multimedia Data
55
4.2.7. B−ISDN (Broadband ISDN) / ATM
56
4.2.8. ATM = Asynchronous Transfer Mode
ATM Layer Overview
Examples:
According to ITU−T Recommendation I.113
asynchronous means:
Reference Model
" ... it is asynchronous in the sense that
the recurrence of cells containing
information from an individual user is not
necessarily periodic." (I113)
• Higher layer provide end−to−end services
• ATM Adaption Layer (AAL):
♦ adaption of service data to cells (48
bytes)
• 53 byte cells handled by ATM Layer:
♦ 5 byte header (VPI, VCI, HEC)
♦ switching/multiplexing of cells
[ Details ]
4.2.8. ATM = Asynchronous Transfer Mode
57
ATM: Traffic Contract
ATM Layer Overview
58
ATM: Service Categories 1
No error detection and correction, but ...
... mechanisms to guarantee Quality of Service
ATM: Traffic Contract
59
ATM: Service Categories 1
60
ATM: Service Categories 2
Quality of Service Parameter
Distribution of bandwidth
QoS Acronym
peak−to−peak
maxCTD
CLR
CER
SECBR
CMR
• CBR: fixed constant bandwidth
• VBR: fixed constant bandwidth up to sustained cell rate for a short time (max. burst size) more
bandwidth usage is possible
• ABR: variable bandwidth based on feedback of the network
• UBR: best−effort
Parameter Name
Cell Delay Variation
max. Cell Transfer Delay
Cell Loss Ratio
Cell Error Ratio
Severely Errored Cell Block Ratio
Cell Misinsertion Rate
Negotiated?
YES
YES
YES
NO
NO
NO
Probability for exceeding maxCTD must be less than CLR
ATM: Service Categories 2
61
ATM: Usability for Multimedia Data
QoS parameters:
Isochronism:
Multicast capability:
Flexibility:
Efficiency:
Costs:
Quality of Service Parameter
62
4.3. Protocols (Layer 3−7)
Examples for typical protocol tasks:
• guaranteed bandwidth (fixed, variable, feedback)
• low delay and low delay variation (not guaranteed)
• Layer 3: End−to−end connectivity (host−to−host)
• Layer 4: Process−to−Process connectivity
• Reliable communication
♦ Error detection
♦ Error recovery (forward error correction or retransmission)
• Resource management
♦ avoid congestion, by flow control
◊ within the network
◊ within end systems
♦ Priorization
♦ Resource reservation
• Support for specialized media types
♦ Content description
♦ Timing / Synchronization Information
• And more ...
• is available
• uni−directional point−to−multipoint is available
• bandwidth on demand, limited by physical links and actual system load
• several traffic types CBR, RT−VBR, NRT−VBR, ABR and UBR
• independent of physical media
• mainly used for WAN or in LAN for backbones,
ATM to the desktop was available but was too expensive to be accepted
widely
• high bandwidth utilization
• statistical multiplexing increases utilization, VBR channels:
♦ SUM of "sustained cell rates" must be <= 100%
♦ SUM of "peak cell rates&rdquo; may be > 100%
• a complex and therefore an expensive technology
ATM: Usability for Multimedia Data
63
4.3. Protocols (Layer 3−7)
64
TCP/IP Suite
4.3.1. IP Protocol (RFC 791)
Development of IP
• DARPA: Defense Advanced Research Projects Agency
♦ The research aim was to build a network that is tolerant to extensive damage, e.g. by a nuclear
strike
♦ 1973/1974 development of TCP/IP, a replacement of NCP (Network Control Protocol)
♦ Since 1975 the ARPANET was controlled by the DoD
♦ In the early 80'ies the military part was extracted from the ARPANET
♦ Since 1983 exclusive use of TCP/IP, defining the term Internet
• IP is specified in RFC 791
• "This document is based on six earlier editions of the ARPA Internet Protocol Specification ..."
IP characteristics
• Provides end−to−end communication
• Connection less, i.e. state less protocol
• Provides unreliable transfer of packets
• Packets may be reordered during transmission
• Error messages are handled by the separate protocol ICMP (Internet Control Message Protocol)
[ Details ]
TCP/IP Suite
65
4.3.1. IP Protocol (RFC 791)
IP Header
66
Routing
Routers are used to connect networks
Routing: making a local forwarding decision based on global topology information
How to get topology information:
Version: version of IP header
used for fragmentation
IHL:
Time To Live, decremented
by each machine to pass the
packet
layer 4 protocol, e.g. 1=ICMP,
6=TCP, 17=UDP
TOS:
Length:
ID:
Flags, Frag.
Offset:
IP header length in 32 bit words (5+ no. TTL:
of options)
Protocol:
Type Of Service
precedence ~ priority; D,T,R if set
optimize for Delay, Throughput,
Reliability
length in bytes including the IP header Checksum:
serial number
Options:
IP Header
• Default routing
• Static or non adaptive routing
♦ Does not take into account changes of the network
• Dynamic or adaptive routing, requires routing protocols
♦ Identifies the topology of the network automatically
♦ Different metrics are used to describe distances
◊ Number of hops
◊ Available bandwidth
◊ Error rates
◊ ...
checksum for the IP header
security, record route,
timestamp, source routes
67
Routing
68
4.3.2. UDP (RFC 768) / TCP (RFC 793)
UDP Header
Transport protocols (Layer 4)
• Provides process to process connectivity
• Uses port number to identify processes. An IP address and a port number is a unique identifier for a
service.
Characteristics
Source Port, port number of sender and receiver
Destination Port:
Length: length of the UDP datagram
Checksum: the checksum covers the UDP pseudo header and the UDP data
The UDP pseudo header includes the UDP Header and 12 bytes of the IP header:
• Closely related to IP
• UDP offers a connectionless and unreliable transport service
♦ Nearly the same service as IP
♦ Data unit name: datagram
• TCP offers a connection oriented and reliable transport service
♦ Recognition of lost data
♦ Retransmission of lost data
♦ Reordering of data
♦ Delete duplicate data
♦ Flow control
◊ With respect to network congestion
◊ With respect to buffer overflow at the receiver side
♦ User data is handled as a stream of bytes
◊ User data is split into segments
♦ Data unit name: segment
• 2*4 byte IP source and destination address
• 1 byte 0
• 1 byte protocol
• 2 byte IP header length
4.3.2. UDP (RFC 768) / TCP (RFC 793)
69
TCP Header
UDP Header
70
Options: e.g. maximum segment size
Source Port, port number of sender and receiver
Destination Port:
Sequence Number: TCP counts every byte of a stream
This is the number of the first data byte
Ack Number: If the ACK control bit is set this field contains the value of the next
sequence number the sender expects to receive
Data Offset: number of 32 bit words in the TCP header
Flags:
urg
ack
psh
urg: urgent pointer is valid
psh: push data to level above
syn: synchronize seq. number
rst
syn
ack: ack number is valid
rst: reset connection
fin: close this side of the
connection
fin
Window: amount of data the sender is willing to accept (flow control)
Urgent Pointer: points to last byte of urgent data
TCP Header
71
TCP Header
72
TCP Flow Control (1)
TCP Flow Control (2)
avoid overflow of receiver buffers (sliding window):
Avoid network congestion
If multiple identical ACKs indicate packet loss, then slow start + congestion avoidance:
• ACKs may advance left side of window
• advertised windows size may advance right side of window
If timeout indicate packet loss, then slow start + restart slow start + congestion avoidance:
TCP Flow Control (1)
73
TCP Flow Control (2)
74
TCP Service Mechanisms
Retransmission
• Go−back−n strategy
♦ Simple and robust mechanism
♦ Resource consuming
♦ Causes unpredictable delay
Flow control
• Slow start and congestion avoidance realize considerate resource usage
♦ This enables fair and cooperative bandwidth sharing
♦ May cause high jitter
TCPs service mechanisms were designed for reliable data transfer
TCP is not suitable for real−time communications
TCP Flow Control (2)
75
TCP Service Mechanisms
76
4.3.3. IPv6
IPv6 Header
Development of IPv6
• 1993 the IETF called for the development of an IP next generation IPng (RFC 1550)
• Improvements required
♦ Larger address space
♦ Reduce size of routing tables
♦ Simplification of the protocol, to allow routers to process packets faster
♦ Better security
♦ Pay more attention to Type of Service
♦ Aid multicasting
♦ Support roaming
♦ Easier extension of the protocol
♦ Coexistance with the old IPv4
Version: version of IP header
Priority: 0−7 for non real time data, 8−15 for real−time data
Flow Label: may be used to identify a flow, RFC 1809 discusses how the flow label
could be used
Payload length: length of the datagram without the header
Next header: options are placed in separate extension header; next header identifies an
option or the protocol above IPv6
• 1995 the IETF agreed to specification named IPv6 (RFC1883)
♦ Changes to other protocols of the TCP/IP suite are specified in RFC 1884−1887
[ Details ]
Hop limit: same as Time to Live of IPv4
Addresses: there are 7*1023 IPv6 addresses per square meter of the world enabling well
structured addresses
• Support of provider based addresses
• and geographic based addresses
4.3.3. IPv6
77
IPv6 Header
IP Header Extension
Hop−by−Hop options:
Routing:
Fragmentation:
Authentication:
Encryption security payload:
Destination options:
78
IPv6 Further Topics
Experimental IPv6 networks exist, see the JOIN project of the DFN
• extending the payload length, enabling datagrams of more than
65535 bytes (so called jumbograms)
• Information exchange between routers
IPv6 is supported by most system software: AIX, BSD, HP−UX, Linux, Solaris, Windows
To install the IPv6 Protocol for Windows XP:
• Full or partial routing path of a datagram
at the command prompt, type: "ipv6 install"
• Similar to IPv4 fragmentation but fragmentation is handled only by
endsystems
Many topics are still discussed:
♦ geo based IPv6 addresses
♦ IPv6 over IPv4, IPv4 over IPv6, IPv6 to IPv4 (6to4)
♦ renumbering
♦ auto configuration
♦ use of the flow label field
♦ security
♦ mobility
♦ ...
• Identification of the sender
• Information about encrypted payload
• Information that should be interpreted by the destination only
IP Header Extension
79
IPv6 Further Topics
80
QoS in Data Networks
IP Service Models
QoS
Guarantees
QoS
Parameter
Best Effort
no
DiffServ
aggregated
IntServ
flow based
no
long term
per flow
static
dynamic
within a domain
end−to−end
Traffic−Engineering
Concept
MPLS
flow based and
aggregated
support for:
• DiffServ
• IntServ
• ATM
4.3.4. Integrated Services (RFC 1633)
Network Technology
ATM
flow based and
aggregated
per flow (channel) or
per path
dynamic or static
What is a flow?
• A flow is a stream of packets originated from the same application session
• The term "flow" describes semantical coherence of data
Categories of applications
end−to−end or
within a domain
QoS in Data Networks
Integrated Services (IntServ) is a reservation based model. The intention is to guarantee individual
QoS profiles for each flow.
• Elastic applications, no delivery requirements as long as the packets reach the destination, e.g. TCP
traffic (machine to machine)
• Real Time Tolerant (RTT) applications, demand weak bounds for the maximum transfer delay, also
some packet loss is acceptable, e.g. streamed video (machine to human)
• Real Time Intolerant (RTI) applications, demand minimal delay and jitter, e.g. interactive application or
videoconferences (human to human)
81
IntServ: Service Classes
4.3.4. Integrated Services (RFC 1633)
82
IntServ: Components
Service Classes
• Guaranteed Service for RTI applications
♦ Guaranteed amount of bandwidth
♦ Deterministic upper bound for delay
• Controlled Load Service for RTT applications
♦ Provides a service equivalent to an unloaded network
♦ Most packets will reach the destination
♦ The average delay is guaranteed
• Best Effort Service for all other applications
♦ standard use of IP
The Reservation Setup Agent is the only component that communicates with other nodes.
The Resource Reservation Protocol (RSVP) was designed to meet the signaling requirements of IntServ.
IntServ: Service Classes
83
IntServ: Components
84
IntServ: Packet Classifier
IntServ: Packet Scheduler
Packet Classifier:
Packet Scheduler:
• The QoS capabilities of a Layer−2 network could be utilized to implement the packet scheduler
functionality
• Manages access to the Layer−2 network in order to guarantee the requested QoS
• Some methods for the QoS implementation
♦ Priority queuing (there is one queue for each QoS class)
♦ Weighted fair queuing (place a packet within a queue depending on the QoS class)
♦ Packet level traffic shaping (avoid peaks of traffic)
• Determines the QoS class for each packet
• May cooperate with routing mechanisms, packets of the same flow should always use the same path
• Arbitrary parts of the packet header may be used for classification
♦ IP−addresses and port numbers of the sender and/or receiver
♦ Application data like frame types of a video stream (e.g. MPEG)
• For IPv6 the flow label should be used
Potential problems:
Potential problems:
• IP fragmentation must be avoided
(RSVP compute a minimum MTU for a multicast tree)
• Variable header length may require the interpretation of protocols
• IP−level security prevents access to higher layer protocols
IntServ: Packet Classifier
• The IntServ model can not guarantee QoS if anywhere in the data path
♦ a non IntServ capable router must be passed
♦ a non QoS capable Layer−2 network must be shared with a non IntServ capable node
85
IntServ: Admission and Policy Control
IntServ: Packet Scheduler
86
4.3.5. RSVP − Ressource Reservation Protocol
RFC 2210
Admission Control
RSVP is a general signaling protocol for QoS control services
• resource management
• decides whether the local system is able to support the requested traffic flow
• The signaled objects are opaque for RSVP
Policy Control
A main focus of RSVP is to support multicast communication
• is optional
• determines whether the requester has administrative permissions to make the reservation
• Unicasts are treated as special cases of multicast only
• RSVP performs receiver oriented reservations
♦ Support different requirements of many receivers
♦ Support heterogeneous networks
If either check fails the request is rejected,
PDUs of that flow may be discarded or forwarded with a lower priority
RSVP uses soft−states, i.e. signaled information is valid for a fixed time interval only
• Simplifies cooperation with connection less IP
• Reservations must be refreshed periodically
♦ Resource consuming
♦ Prevents usage of RSVP in large networks
Merging of reservation supports multiple senders in a multicast environment
IntServ: Admission and Policy Control
87
4.3.5. RSVP − Ressource Reservation ProtocolRFC 2210
88
RSVP Receiver oriented Reservation (1)
RSVP Receiver oriented Reservation (2)
A PATH message is sent from sender to receiver
• The sender specifies its traffic characteristic
• Detection of path characteristics
♦ Detected bandwidth limitations, minimum packet size (MTU)
♦ RSVP capable nodes get to know their RSVP capable neighbors
• RSVP does not perform routing; routing is done by standard components which do not know anything
about QoS
A RESV message is sent from receiver to sender
• The RESV message travels the path backward
• The receiver determines the required resource reservation
♦ Traffic specification (Tspec)
♦ Requested Service Specification (Rspec)
RSVP Receiver oriented Reservation (1)
89
RSVP Reservation Types & Merging (1)
RSVP Receiver oriented Reservation (2)
90
RSVP Reservation Types & Merging (2)
Distinct Reservation (or Fixed Filter Style)
Reservations are merged, dependent on their reservation type
• A receiver requests reservations for each sender
• Example: all senders send different types of data in parallel
• Example for distinct reservation:
Shared Reservation
• Wild card Filter Type:
♦ A receiver requests one reservation for all senders within a multicast tree
♦ Senders may be added or removed without changing the reservations for the resource tree
♦ Example: all senders require the same resources but not at the same time
• Shared Explicit Reservation:
♦ A receiver requests one reservation for an explicit defined set of senders
♦ Shared explicit reservation may be combined with distinct reservations
RSVP Reservation Types & Merging (1)
91
RSVP Reservation Types & Merging (2)
92
4.3.6. Differentiated Services RFC 2475
DiffServ Domains
Differentiated Services (DiffServ, DS) is a model to differentiate services on the Internet.
Example:
The key goals are:
• fast determination of a service class for a (IP) packet
• being scalable
The key concepts are:
• traffic classification and service realization are separated
• each DiffServ domain has its own set of services
• traffic classification is done only at the border of a DiffServ domain
• assume that only a few different static services are required
♦ it is sufficient to specify services in long term contracts
♦ many flows will receive the same service, i.e. will share the resources of a service
♦ admission and usage control is necessary in order to guarantee a specific QoS
4.3.6. Differentiated Services RFC 2475
SLA
= Service Level Agreement, between user and provider
Aggregation = all traffic flows that will receive the same service
PHB
= Per Hop Behaviour, is the externally observable forwarding behavior
93
DiffServ Domains
DiffServ Codepoint RFC 2474
94
DiffServ Traffic Classification
Within a DiffServ domain each packet is marked by a 6−bit codepoint.
Logical view of packet classification and conditioning:
All packets with the same codepoint build a so called "Behavior Aggregate" which is also called "Aggregate".
IPv4:
Classification:
• The Codepoint overwrites the TOS field in the IPv4 header
• Some routers use the precedent bits of the TOS field, therefore some DiffServ domains may use a
limited Codepoint of 3 bits
• performed at ingress node
• depends on Service Level Agreement (SLA) between user and provider
• based on packet data or an already assigned codepoint
IPv6:
Meter:
• The Codepoint overwrites the priority field of the IPv6 header
• perform usage control according to a specified traffic profile (average bandwidth, peak−bandwidth,
burstsizes, ...)
Marker:
• assigns a 6−bit codepoint
• different codepoints may be assigned to "in−profile" and "out−of−profile" packets
Shaper/Droper:
DiffServ Codepoint RFC 2474
95
DiffServ Traffic Classification
96
• may delay or drop "out−of−profile" packets (traffic conditioning)
DiffServ Per−Hop−Behavior (1)
The Per−Hop−Behavior (PHB) describes the service of a specific aggregate.
• DiffServ does not define a fixed set of parameters describing a PHB, i.e. DiffServ does not specifiy the
service types which may be supported by a DiffServ domain (except the default PHB)
• A PHB is described by the externally observable forwarding behavior
• A PHB is identified by the codepoint of each IP packet
PHBs may be specified by:
• ressource description (buffer usage, bandwidth, ...)
• priorities relative to other PHBs
• observable traffic characteristics (delay, loss, ...)
• Example: guarantee a minimal bandwidth allocation of X% of a link, with proportional fair sharing of any
excess link capacity
DiffServ Traffic Classification
97
DiffServ Per−Hop−Behavior (1)
DiffServ Per−Hop−Behavior (2)
98
4.3.7. Multiprotocol Label Switching
(MPLS) RFC 3031
Suggested PHB types:
MPLS is a traffic−engineering model
• default PHB, standard IP service = best−effort service
codepoint: 000000
Goal:
• Class−Selector PHB, provides backward compatibility to IPv4 precedent bits
codepoint: xxx000, x = 0 or 1
• replace complex routing decisions by much more simpler packet forwarding (switching) technologies
• Assured Forwarding PHB (RFC 2597), defines four traffic classes and three drop precedence per class.
According to the SLA buffer and bandwidth ressources will be assigned to each class. Out−of−Profile
traffic may be marked with a higher drop precedence
Drop Precedence
Class 1 Class 2 Class 3 Class 4
Low drop precedence
001010
010010
011010
100010
Medium drop precedence
001100
010100
011100
100100
High drop precedence
001110
010110
011110
100110
Basic concepts:
• assume that there are many packets in a network domain that will be treated in an equivalent manner
equivalence = the packets leave the domain at the same (logical) link (and the packets receive the
same QoS)
• classify packets at the domain borders, i.e. assign a packet to a Forward Equivalence Class (FEC)
• packets of the same FEC are marked with a label, within a MPLS domain packets may be forwarded
(switched) based on that label.
• Note: conventional routing is like assigning a packet to an FEC in each router
• Expedited Forwarding PHB (RFC 2598), guarantees a specified bandwidth (according to the SLA)
codepoint 101110
DiffServ Per−Hop−Behavior (2)
99
4.3.7. Multiprotocol Label Switching(MPLS) RFC 3031
100
MPLS Example
MPLS Label Encoding
A label is a short fixed length locally significant identifier for an FEC. For most Layer−3 technologies the label
is encoded in a so called Shim−Header:
exp = experimental, suggestion: use as a diffserv 3−bit codepoint
s = 1 −> bottom of stack
ttl = time to live
Insert Header in Ethernet Frame:
Use VPI/VCI field of ATM for MPLS label
LSR
FEC
= Label Switching Router
= Forwarding Equivalence Class
MPLS Example
101
MPLS Label Assignment & Distribution
MPLS Label Encoding
102
MPLS Label Stack Example
Use of downstream label assignment:
Example, assume the following label bindings:
For FEC 1 and FEC 2:
Label L1 between, LSR7 and LSR 6, LSR 6 and LSR4, LSR4 and LSR3
Label distribution is done by modified routing protocols or with a special Label Distribution Protocol (LDP)
Example:
For FEC 1:
Label L6 between LSR3 and LSR2
Label L9 between LSR2 and LSR1
LSR 3 may inform LSR 2 to use Label "L6" for all packets with an IP destination address of 131.x.x.x
LSR 2 may choose to use the same or another label for the link between LSR1 and LSR 2
What happens when a packet is traveling from LSR1 to LSR7:
LSR1: assign packet to FEC 1 = push label "L9" on Stack
LSR2: swap label "L9" to "L6" and forward packet to LSR3
LSR3: swap label "L6" to "L1" and forward packet to LSR4
LSR4: swap label "L1" to "L1"
push a label "x" of the MPLS domain 2 on stack and
MPLS Label Assignment & Distribution
103
MPLS Label Stack Example
104
forward the packet to LSR 8 or 9 of domain 2
... the apcket travels within domain 2 to LSR 6 ...
LSR6: pop label "x"
swap label "L1" to "L1" and foward packet to LSR 7
LSR7: pop label "L1" and route packet based on IP addresses
MPLS Remarks
MPLS was not designed to support any QoS. Identification of flows or "traffic aggregates" makes QoS
implementation much easier. MPLS may support QoS by
• supporting DiffServ
• utilizing ATM for IP traffic
• extend label distribution with qoS parameters
Advantages of MPLS
• connection setup or connection release is not required
• is limited by domains, i.e. networks belonging to different administrative domains do not need to
cooperate. Therefore MPLS may be utilized in parts of a network only, e.g. WAN or backbones
• MPLS is protocol independent
MPLS Label Stack Example
105
4.3.8. RTP − Real−Time Transport Protocol
RFC 1889
MPLS Remarks
106
RTP − Scenario
Consists of two closely−linked parts:
• the real−time transport protocol (RTP), carries data with real−time properties
• the RTP control protocol (RTCP), monitors QoS and distributes this information to all participants of a
session
RTP makes no reservations and does not guarantee any service
RTP is a protocol framework, not a complete protocol
• a profile specification defines payload types and may extend RTP
• a payload specification defines payload formats and encoding types must be specified
• therefore RTP will typically be part of an application
many−to−many communication (e.g. video conference)
4.3.8. RTP − Real−Time Transport ProtocolRFC 1889
107
RTP − Scenario
108
RTP − Definitions
RTP − Header
RTP−Session:
• is a set of participants
• each participant is identified by a host and a destination port address
• each medium is carried in a separate RTP−session
Mixer:
• is an intermediate system that receives data from one or more sources, possibly changes the data
format and combines packets in some manner
• a mixer will make timing adjustments and generate an own timing for combined data
• the payload type is defined by the applications profile
• the sequence number enables receivers to detect lost RTP−PDUs
• the timestamp reflects a sampling instant. i.e. the timestamp unit depends on the encoding and does not
need to correspond with the system clock
• SSRC identifies the last sync. entity; it is unique within a session
• CCSR identifies the contributor of a source
Translator:
• is an intermediate system that forwards data without changing media or synchronization
• encryption and addresses may be changed
• multicast may be mapped to unicast and vice versa
RTP − Definitions
109
RTP − Header
RTCP − RTP Control Protocol
110
Interesting Links
RTP enables receiver to monitor the QoS:
Routing Basics
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/routing.htm
• Delay, jitter, PDU loss rate
Size of BGB Tables
http://bgp.potaroo.net/
RTCP periodically transmits control packets between all participants of an RTP session:
• the primary function is to provide feedback about the QoS
• carries transport−level identifiers for RTP sources, the canonical name (the SSRC may change over the
time; the canonical name is fixed, e.g. a user name)
• the rate of sent RTCP packets depends on the number of participants in order to make RTCP scalable
• optionally, further information about the participants could be distributed to realize a simple session
control
Internetworking Technology Handbook
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/
Its Latency
http://www.potaroo.net/papers/isoc/2004−01/latency.html
TCP − How it works
http://www.potaroo.net/papers/isoc/2004−07/tcp1.html
Visualroute
http://www.webhits.de/english/index.shtml?visualroute.html
RTCP − RTP Control Protocol
111
Interesting Links
112