1
Multimedia Services in the Multimedia Services in the InternetInternet
Multimedia Services in the Multimedia Services in the InternetInternet
Dorgham Sisalem / Sven EhlertFhG Fokus
2
Lecture OverviewLecture OverviewLecture OverviewLecture Overview
• Introduction to the Course– Goals– Administrative Stuff– Topics covered
• Basic Networking Principles Refresh– PSTN– IP Networking– Routing
3
GoalsGoals
• Overview of multimedia service (SIP)• Understanding of multimedia services in the Internet • Understanding of the general pictures
– Transport protocols, signaling, traffic types, QoS
• Practical experience with protocols and applications• Basic knowledge of the different involved protocols and
concepts • We are not dealing with:
– Audio and video compression– Web programming– Image processing or speech recognition– Audio and video hardware– MMS or video over GSM– Where to get the latest movies or how to copy a DVD
4
StructureStructureStructureStructure
• Pre-requirements– Good understanding of IP networking principles
• 2-Hour credit• Written exam on 11.7
– There is no second exam date– There are no other exam means (oral …)
• Office hours: After the lecture• Contact:
• Slides– http://www.tkn.tu-berlin.de/curricula/ss06/vl-mkn/index.html – Basically still valid but will be updated soon
5
ReferencesReferences
• www.ietf.org (RFCs and drafts)• www.iptel.org (SIP tutorial)• www.cs.columbia.edu/~hgs/internet Schulzrinne
Overview• Stevens, „TCP/IP Illustarted, V1“ (basic protocols)• Ferguson, Huston, „Quality of Service“ (general QoS stuff)• Henry Sinnreich and Alan B. Johnston „Internet
Communication Using SIP: Delivering VoIP and Multimedia Services with Session Initiation Protocol“
• Olivier Hersent, David Gurle, Jean-Pierre Petit,“IP Telephony“
• Huitema, „IPv6“• Wikipedia
6
AcknowledgementsAcknowledgementsAcknowledgementsAcknowledgements
• Slides based on work of Henning Schulzrinne, Jim Kurose, Michael Smirnov, Georg Carle, Jiri Kuthan, Heikki Waris, Kevin Fall, Jim Chou, Thinh Nguyen, Vishal Misra, Steve Deering, Geert Heijenk, Ofer Hadar, John Floroiu, Nick McKeown, Eric D. Siegel, Ibrahim Matta, Steven Low, Vincent Roca, Nitin H. Vaidya, Charles Lang as well many other anonymous contributers.
7
Topics: IntroductionTopics: IntroductionTopics: IntroductionTopics: Introduction
• Introduction to Internet– Very brief covering
• Difference between IP and PSTN• Basic concepts• Transport protocols: TCP, UDP, SCTP, RTP
– Why use UDP for VoIP and TCP for signaling?– What are the benefits of SCTP– What is the difference between RTP and RTCP
– You are expected to have visited the networking lecture of Prof. Wolisz
8
Topics: VoIPTopics: VoIPTopics: VoIPTopics: VoIP
• What is VoIP• Signaling• Addressing• Intelligent services• Deployment problems: NAT, emergency• Integration with PSTN
9
Topics: VoIPTopics: VoIPTopics: VoIPTopics: VoIP
What happens during this registration?
10
Topics: VoIPTopics: VoIPTopics: VoIPTopics: VoIP
What does this address mean?
How do we find the other side?
How do we call a PSTN number?
What happens when we press call?
11
VoIP in UMTSVoIP in UMTSVoIP in UMTSVoIP in UMTS
• What does IMS stand for?• Basic concepts of UMTS• What is the difference to normal VoIP?• How does it work?• Why a special version?
12
Problems of VoIPProblems of VoIPProblems of VoIPProblems of VoIP
• Why doesn’t VoIP work over my DLS link– What are the problems of network address
translators?– How to deal with firewalls
• Regulatory issues– How can I call the 110?
• QoS– Is it true that VoIP has bad voice quality
13
StreamingStreamingStreamingStreaming
• How are resource described?• What happens when we press play?
(signaling)• What does it mean when it says “buffering” or
ran out of buffer• What protocols exist and how do they work?
14
Peer-To-Peer NetworkingPeer-To-Peer NetworkingPeer-To-Peer NetworkingPeer-To-Peer Networking
• How do P-2-P solutions work?• What solutions exist?• What is Skype?• Basic concepts and approaches
15
Instant Messaging and Instant Messaging and PresencePresence
Instant Messaging and Instant Messaging and PresencePresence
• What is presence and IM• Basic concepts and approaches• What solutions and technologies exist• What are the current standards
– ICQ, Yahoo, MSN, etc is NOT a standard
• Relation to VoIP
16
Group CommunicationGroup CommunicationGroup CommunicationGroup Communication
• What is the difference between broadcast and multicast
• How does a conference bridge work• What solution is best for which scenario?
17
Quality of Service (QoS) Quality of Service (QoS) ControlControl
Quality of Service (QoS) Quality of Service (QoS) ControlControl
• Why is the voice communication over the Internet not understandable some times?
• What can we do at the end system to improve the QoS?
• What can we do in the network to improve the QoS?
• Why can’t we find a network that deploys QoS concepts
18
Public Switched Transmission Public Switched Transmission NetworkNetwork
PSTNPSTN
Public Switched Transmission Public Switched Transmission NetworkNetwork
PSTNPSTN
19
Public Switched Transport Public Switched Transport Network (PSTN)Network (PSTN)
Public Switched Transport Public Switched Transport Network (PSTN)Network (PSTN)
• Exists now for around 100 years• 800 M Subscribers• Supports Voice and Data (Fax) services• Guaranteed bandwidth share• In one country only a few exist
– usually a big one controlling the whole network• Cost of switching equipment high (A few millions for a carrier
grade switching component• Signaling to session establishment and control based on SS7• Hierarchical address structure (E.164)
InternationalIdentity
1-3 digits
NationalIdentity2-to-5 digits
UserIdentity11 to 5 digits
SubaddressUp to 40 digits
20
PSTN Architecture in PSTN Architecture in GermanyGermany
PSTN Architecture in PSTN Architecture in GermanyGermany
AVStAuslandvermittlungsstelle
Ca. 50 HVStHauptvermittlungsstelle
Ca. 550 KVStKnotenvermittlungsstelle
Ca. 500 OVStOrtvermittlungsstelle
Ca. 40 M Teilnehmer
Fern
netz
Ort
sn
etz
Ref. Prof. Dr.-Ing. Habil. Lutz Winkler, FH Mittweida
21
Routing in PSTNRouting in PSTNRouting in PSTNRouting in PSTN
Ref. Prof. Dr.-Ing. Habil. Lutz Winkler, FH Mittweida
22
Switching in PSTNSwitching in PSTNSwitching in PSTNSwitching in PSTN
Ref. Prof. Dr.-Ing. Habil. Lutz Winkler, FH Mittweida
Capacity 10099 calls
active
busy
23
Resource SharingResource Sharing (TDM) (TDM)Resource SharingResource Sharing (TDM) (TDM)
• Time division multiplexing (TDM)– May under utilize channel with idle senders– Applicable only for a fixed number of flows– Requires precise timers– Resources are guaranteed
Multiplexer1 link, 30kb/s speed
10 kb/s10 kb/s
10 kb/s
24
Intelligent Service in Intelligent Service in PSTNPSTN
Intelligent Service in Intelligent Service in PSTNPSTN
Ref. Prof. Dr.-Ing. Habil. Lutz Winkler, FH Mittweida
25
Intelligent Service in Intelligent Service in PSTNPSTN
Intelligent Service in Intelligent Service in PSTNPSTN
• Service switching point (SSP): A switch enhanced with logic for identifying IN services
• Service Transfer Point (STP): Interface of the switch to the IN environment
• Service Control Point (SCP): Control the execution of the service
• Service Management System (SMS): Control and manage the available services and provide the interface for adding new ones
• Intelligent Peripheral: Additional components for providing certain services such as announcements
• Feature Node: Execute services provided by private entities (similar to SCP)
26
PSTN SummaryPSTN SummaryPSTN SummaryPSTN Summary
• Guaranteed Quality of Service• Intelligence in the Network• Signaling and Media tightly coupled• Scalability and Extension difficulties
27
Introduction to the InternetIntroduction to the InternetIntroduction to the InternetIntroduction to the Internet
28
General WordsGeneral WordsGeneral WordsGeneral Words
• Since 21 Years with the same technology (TCP/IP)
• Moved from 4 sites in 1968 to around 200 M hosts today
• Flat addressing and routing architecture
• Based on packet switching
• (the) Internet: “collection of networks and routers that spans x countries and uses the TCP/IP protocols to form a single, cooperative virtual network”. (Comer)
• intranet: connection of different LANs within an organization– Private
– may use leased lines
– usually small, but possibly hundreds of routers
– may be connected to the Internet (or not), often by firewall
29
Packet Switched Packet Switched CommunicationCommunicationPacket Switched Packet Switched CommunicationCommunication
End Users End Users
Data Packets (Voice, Video, Games, Signaling…)
Router
30
What‘s a network?What‘s a network?What‘s a network?What‘s a network?
• Host: Communication end point (PC, PDA, cell phone, coffee machine ...)
• Link: carry bits from one place to another (or maybe to many other places)
• Switch/gateway/router: move bits between links, forming internetwork– IP router receives a packet from one interface and sends it out
over another12
1
2
31
What‘s a Protocol?What‘s a Protocol?What‘s a Protocol?What‘s a Protocol?
• Protocol: rules by which active network elements communicate with each other
• protocols = “algorithms + data structures”– formats of messages exchanged
– actions taken on receipt of messages
– how to handle errors
– hardware/operating-system independent
• real-life examples:– rules for meetings
– conversational rules (interrupts, request for retransmission, ...)
32
Protocol MechanismsProtocol Mechanisms (What Do (What Do Protocols Do for a Living?)Protocols Do for a Living?)
Protocol MechanismsProtocol Mechanisms (What Do (What Do Protocols Do for a Living?)Protocols Do for a Living?)
• All or some of the following:– addressing/naming: manage identifiers
– fragmentation: divide large message into smaller chunks to fit lower layer
– resequencing: reorder out-of-sequence messages
– error control: detection and correction of errors and losses• retransmission; forward error correction
– flow control: avoid flooding/overwhelming of slower receiver
– congestion control: avoid flooding of slower network nodes/links
33
Architectural Requirements Architectural Requirements of the Internetof the Internet
Architectural Requirements Architectural Requirements of the Internetof the Internet
• Generality– Support ANY set of diverse applications,
• Heterogeneity– Interconnect ANY set of network technologies
• Robustness– More important than efficiency
• Extensibility– More important than efficiency
• Scalability
34
End-to-End PrincipleEnd-to-End PrincipleEnd-to-End PrincipleEnd-to-End Principle
Foundation of the Internet architecture:• Dumb network, smart end systems
– (Exact opposite of telephone network!)
• Dumb networks: require only least common service– Datagram service: no connection state in routers– Best effort: all packets treated equally.– Can lose, duplicate, reorder packets.
• Smart hosts:– Maintain state to enhance service for applications.– “Fate-sharing”-- If a host crashes and loses communication
state, applications that are communicating share this fate.
35
Resource Sharing Resource Sharing (Statistical(Statistical))
Resource Sharing Resource Sharing (Statistical(Statistical))
• Statistical multiplexing– Traffic is sent on demand, so channel is fully
utilized if there is traffic to send– Any number of flows
Multiplexer5 kb/s
1 link, 30kb/s speed
20 kb/s
5 kb/s
36
Resource Sharing Resource Sharing (Statistical(Statistical))
Resource Sharing Resource Sharing (Statistical(Statistical))
• Statistical multiplexing– Resources are NOT guaranteed– Need Mechanisms to prevent congestion and
domination
Multiplexer5 kb/s
1 links, 30kb/s speed, 50% Loss
50 kb/s
5 kb/s
37
Who runs the Internet?Who runs the Internet?Who runs the Internet?Who runs the Internet?
• “nobody”• standards: Internet Engineering Task Force• names: Internet Corporation for Assigned Names and
Numbers (ICANN)• numbers: IANA (Internet Assigned Numbers Authority)• network: ISPs (Internet Service Providers), NAPs
(Network Access Points), DFN, . . .• fibres: telephone companies (mostly)• content: thousands of companies, universities, individuals,
. . .
38
How big is the Internet?How big is the Internet?How big is the Internet?How big is the Internet?
• Many measures:– networks (routed entities)
– domains, host names (but: several names per host!)
– directly (continuously) attached hosts (“ping’able”)
– IP-connected hosts (SLIP, PPP)
– firewalled hosts
– e-mail reachable
• As of January 2006, over 1 billion people use the Internet according to Internet World Stats
39
Host CountHost CountHost CountHost Count
40
What Networks are What Networks are There?There?
What Networks are What Networks are There?There?
• Access (ISP):– Carry data from users
• Core– Carry data from access
• Network peering points– Connect networks together
• Some enterprises might be connected directly to core networks
41
An Example NetworkAn Example NetworkAn Example NetworkAn Example Network
USER Local Loop Carrier
Point of Presence
Backbone
42
RFCs and DraftsRFCs and DraftsRFCs and DraftsRFCs and Drafts
• “Request for Comments”, since 1969• most RFCs are not standards!• Internet drafts: working documents, but often used for
prototypes• edited, but not refereed• numbered sequentially (Jan 2006: more than 4000)• check the April 1 ones. . . (RFC 1149)• ftp://ds.internic.net/rfc
43
TCP/IP StackTCP/IP StackTCP/IP StackTCP/IP Stack
Link Link Link
Network
Transport
ApplicationApplication
Transport
Network Network
TCP/IP
HostHost Router
EthernetCable,UMTS
IP, IPv6
TCP, UDP,SCTP
VoIPEmail ..
44
Internet ProtocolInternet ProtocolInternet ProtocolInternet Protocol
• Deliver an IP packet from host to host(s)• Connectionless, unreliable
– No loss handling– No flow or congestion control
UDPTCP
RTP
VoIP
AALx
GPRS V.xSONETEthernet ATM
PPP
IPv4/IPv6
DNSFTPHTTPSMTP
ICMP
45
Internet NamesInternet NamesInternet NamesInternet Names
• Physical link address– Ethernet, Token Ring, FDDI..– Flat
• IP address– Identify an interface– Topological
• IP Name– Identify the object to reach– Hierarchical
46
IP AddressesIP AddressesIP AddressesIP Addresses
• Identify an interface not host: – A host can have more than 1 address
• IP addresses are 32-bit numbers (4.3 billion of them!)
• Divided into parts: (network prefix, host number)
• 4 decimal numbers, called “dotted quad” • Each (decimal) number is one byte
– Example: 128.32.25.12
• Can generally be used in place of names
47
Special AddressesSpecial AddressesSpecial AddressesSpecial Addresses
• Private addresses: Only of meaning inside an intranet– 172.16 through 172.31 16– 192.168.0 through 192.168.255 256
• Loopback: 127.0.0.1 (local interface)• Local broadcast: all 1 (receive by all members of
link)• Multicast:
– 224.0.0.0 239.255.255.255– Do not describe a host or interface but a group of receivers
• Reserved: 240.0.0.0 255.255.255.255
48
Internet PacketsInternet PacketsInternet PacketsInternet Packets
• A lot of headers describing the different layers
Phy IP UDP/TCP
Body
49
IP HeaderIP HeaderIP HeaderIP Header
• Version: 4 or 6• Header length: number of 32 bit words of header• Type of Service: delay, throughput, reliability, monetary• Total length: length of packet in bytes• Identification: identify packet• Flag:
– Do not fragment– More fragments
• Fragmentation offset: Distance from the first bit of the original packet
• Time-to-Live: Avoid loops• Protocol: Which protocol is used (TCP, UDP, ICMP ..)• Header Checksum: Calculated over IP header• Source address: Address of sender• Destination address: Address of receiver
50
IPv6: Why move to IPv6: Why move to another protocol?another protocol?IPv6: Why move to IPv6: Why move to another protocol?another protocol?
• Lack of IP addresses– Support for nearly endless range of addresses
• Better handling of options– Reduce complexity of IP header
• Better support for management and administration – auto configuration and renumbering– Support plug&play
• Higher Packet sizes (Jumbograms)• Need for better support for mobile and secure communication
– Remove the need for network address translators• Really?
51
IPv4 vs. IPv6 HeaderIPv4 vs. IPv6 Header
• 14 fields, at least 20 octets
• 32 bit addresses
• fragmented packet processing at every hop
• header checksum recalculation at every hop
• variable Options field for extra processing information
• 8 fields, fixed 40 octet size• 128 bit addresses• fragmentation only in endpoints, or lower
layer– Usage of Path MTU discovery
• no checksums– Already in lower layers
• new 20 bit flow label field
• options in Extension Headers
52
IP NamesIP NamesIP NamesIP Names
Oxany.fokus.fhg.de
host name (has IP address)
organization type or country
Organization administering
subnames to left
organization administering
host
53
Getting From A to BGetting From A to BGetting From A to BGetting From A to B
54
Getting from A to BGetting from A to BGetting from A to BGetting from A to B
• Know name: need to know IP address– Domain Name System (DNS)
• Know IP address: need to know the way
55
Getting From A to BGetting From A to BGetting From A to BGetting From A to B
Name to IP Address
56
Domain Name SystemDomain Name SystemDomain Name SystemDomain Name System
• The Domain Name System (DNS) is a distributed database that is used by TCP/IP applications to…– map between hostnames and IP addresses,– and to provide application routing information.
• Distributed database:– No single site on the Internet “knows it all.”– Each site maintains its own database and runs a
server that other systems on the Internet can query.
• DNS is the client/server protocol.
57
DomainsDomainsDomainsDomains
• Top level domains– arpa domain
• Special domain for address-to-name mappings
– generic (organizational) domains• 3-character domains (e.g. edu, com, org, …)
– Country (geographical) domains• 2-character domains• Found in ISO 3166• Some countries form second-level domains
– e.g.: .ac.uk is for academic institutions in the United Kingdom.
– New generic top level domains (gTLD)• .biz, .name, ,info ...
• Note: No single entity manages every node.
58
DNS hierarchical name DNS hierarchical name spacespace
DNS hierarchical name DNS hierarchical name spacespace
arpa
com edu gov int mil net org
de us
unnamed root
wsu
eecs math
gazoo
top level domains
•Node labels up to 63 characters.•Root node has null label.•Comparisons are case insensitive.•Domain name formed as follows:
•start at node and work toward root•use a “dot” to separate labels
Maintained by DeNIC
59
Resolvers and Resolvers and NName ame SServerservers
Resolvers and Resolvers and NName ame SServerservers
• Applications (clients and servers) contact a DNS server by calling functions in a library known as a resolver.– The resolver is accessed through the functions gethostbyname() and gethostbyaddr().
– The resolver code is in a system library and is linked into the application.
60
DNS OperationDNS OperationDNS OperationDNS Operation
• What does a server do when it does not have the requested information?– Every name server must know how to contact the
root name servers (via IP address).– Name server contacts a root server – Root servers know the name and IP address of all
the second-level domains– Each names server caches information from recent
queries.
61
PracticalPracticalPracticalPractical
• nslookup• http://www.internic.org
62
Routing Packets from A to BRouting Packets from A to BRouting Packets from A to BRouting Packets from A to B
63
Hierarchical PSTN Hierarchical PSTN RoutingRouting
Hierarchical PSTN Hierarchical PSTN RoutingRouting
030 040 050 060
64
Distributed IP RoutingDistributed IP RoutingDistributed IP RoutingDistributed IP Routing
Enterprise
AccessAccess
AccessCore
Core
PictureTel
193.175.135.21
195.37.78.225
65
IP RoutingIP RoutingIP RoutingIP Routing
• How to get from A to B?– Different paths are possible!!– Neither A nor B know the best path in advance!!
• Goal: set routing tables for packet forwarding in hosts and routers, typically based on some optimality criterion.
• Questions:– who determines entries?– based on what information (hops, delay, cost, ...) ?– how often does it change (hop vs. delay)?– where is routing information stored?– algorithm used to compute routes?
66
IP Routing: GoalsIP Routing: GoalsIP Routing: GoalsIP Routing: Goals
• scalability
• “safe” interconnection of different organizations
• adopt quickly to changes in topology
• avoid routing loops or at least terminate them quickly
• self-healing, robust
• Distributed: No central component to determine the path
• efficient: can’t use 90% of bandwidth for routing info
• multiple metrics (QOS, price, politics, ...) not yet
• routes should be (near) “optimal”
• can’t have all hosts/networks in single table hierarchical
67
IP RoutingIP RoutingIP RoutingIP Routing
• Every router needs to determine the next hop to which to send the data• Routing database: one entry for every possible destination in the system:
– Destination address: the IP address of the host or network;– Next hop: the first router along the route to the destination;– Interface: the physical network which must be used to reach the first hop– Metric: a number, indicating the distance to the destination;– Timer: the amount of time since the entry was last updated;– Flags and other internal information.
12
1
2
68
Intra-Domain RoutingIntra-Domain RoutingIntra-Domain RoutingIntra-Domain Routing
• Set the routes inside an autonomous system (AS)– AS: a a collection of
routers and system administered by one entity
– Has a AS number assigned by IANA
• Different ASs might use different intra-domain routing schemes
• Changes in one AS do not effect other domains
• AS connects to another AS through one or more border routers
Enterprise
Access Access
AccessCore
Core