Higher layer protocols

Similar documents
Higher layer protocols

Compliance with RFC 3261

Department of Computer Science. Burapha University 6 SIP (I)

Information About SIP Compliance with RFC 3261

SIP Compliance APPENDIX

13. Internet Applications 최양희서울대학교컴퓨터공학부

Overview of SIP. Information About SIP. SIP Capabilities. This chapter provides an overview of the Session Initiation Protocol (SIP).

DHCP Basics (Dynamic Host Configuration Protocol) BUPT/QMUL

Protocol Classification

TSIN02 - Internetworking

Key Points for the Review

Kommunikationssysteme [KS]

Chapter 10: Application Layer CCENT Routing and Switching Introduction to Networks v6.0

Overview of the Session Initiation Protocol

Multimedia Communication

Real-time Services BUPT/QMUL

The Session Initiation Protocol

Electronic Mail. Three Components: SMTP SMTP. SMTP mail server. 1. User Agents. 2. Mail Servers. 3. SMTP protocol

CS519: Computer Networks. Lecture 9: May 03, 2004 Media over Internet

Session Initiation Protocol (SIP)

Transport protocols Introduction

Tech-invite. RFC 3261's SIP Examples. biloxi.com Registrar. Bob's SIP phone

Paper solution Subject: Computer Networks (TE Computer pattern) Marks : 30 Date: 5/2/2015

Transporting Voice by Using IP

Cisco ATA 191 Analog Telephone Adapter Overview

Computer Networks. More on Standards & Protocols Quality of Service. Week 10. College of Information Science and Engineering Ritsumeikan University

Overview. Slide. Special Module on Media Processing and Communication

More Internet Support Protocols

Mohammad Hossein Manshaei 1393

Operation Manual DHCP. Table of Contents

Application Scenario 1: Direct Call UA UA

Voice over IP (VoIP)

BootP and DHCP. Flexible and Scalable Host Configuration 2005/03/11. (C) Herbert Haas

SIP Session Initiation Protocol

CS 356: Computer Network Architectures. Lecture 15: DHCP, NAT, and IPv6. [PD] chapter 3.2.7, 3.2.9, 4.1.3, 4.3.3

Real-Time Control Protocol (RTCP)

IP - The Internet Protocol

EDA095 Audio and Video Streaming

Multimedia in the Internet

Outline. Multimedia is different Real Time Protocol (RTP) Session Description Protocol (SDP) Session Initiation Protocol (SIP)

Internet protocols: ICMP, ARP, DHCP

VoIP Basics. 2005, NETSETRA Corporation Ltd. All rights reserved.

Multimedia Protocols. Foreleser: Carsten Griwodz Mai INF-3190: Multimedia Protocols

ITTC Communication Networks The University of Kansas EECS 780 Multimedia and Session Control

EITF25 Internet- - Techniques and Applica8ons Stefan Höst. L9 Applica8on layer

Popular protocols for serving media

Session Initiation Protocol (SIP) Ragnar Langseth University of Oslo April 26th 2013

CS 356: Computer Network Architectures. Lecture 14: Switching hardware, IP auxiliary functions, and midterm review. [PD] chapter 3.4.1, 3.2.

RTP. Prof. C. Noronha RTP. Real-Time Transport Protocol RFC 1889

CCNA Exploration1 Chapter 3: Application Layer Functionality and Protocols

Transporting Voice by Using IP

Real-time Services BUPT/QMUL

RTP: A Transport Protocol for Real-Time Applications

Outline Overview Multimedia Applications Signaling Protocols (SIP/SDP, SAP, H.323, MGCP) Streaming Protocols (RTP, RTSP, HTTP, etc.) QoS (RSVP, Diff-S

Multimedia Applications. Classification of Applications. Transport and Network Layer

Provide a generic transport capabilities for real-time multimedia applications Supports both conversational and streaming applications

Chapter 3: IP Multimedia Subsystems and Application-Level Signaling

12. Name & Address 최양희서울대학교컴퓨터공학부

Computer Networking. Chapter #1. Dr. Abdulrhaman Alameer

Internet Applications. Dr Steve Gordon ICT, SIIT

Request for Comments: Category: Standards Track Columbia U. G. Camarillo Ericsson A. Johnston WorldCom J. Peterson Neustar R.

Medical Sensor Application Framework Based on IMS/SIP Platform

Voice over IP Consortium

Manual Configuration Stateful Address Configuration (i.e. from servers) Stateless Autoconfiguration : IPv6

Multimedia networks. Additional references. Jargon. Analog to Digital (S5 4.3) KR: Kurose and Ross chapter 7 (KR3: 3 rd ed)

Internet Technology 4/29/2013

in the Internet Andrea Bianco Telecommunication Network Group Application taxonomy

Multimedia networking: outline

Session Initiation Protocol (SIP) Overview

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

The Application Layer: & SMTP

4 rd class Department of Network College of IT- University of Babylon

Introduction to Network. Topics

Understanding and Troubleshooting DHCP in Catalyst Switch or Enterprise Networks

VoIP. ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2007

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

CCNA 1 Chapter 10 v5.0 Exam Answers 2013

ICS 351: Networking Protocols

SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER

WEB ADMINISTRATION AND MANAGEMENT. Internetworking: Concepts, Principles and Application

Information Network Systems The application layer. Stephan Sigg

Session Initiation Protocol (SIP) Basic Description Guide

File transfer. Internet Applications (FTP,WWW, ) Connections. Data connections

Application Layer -1- Network Tools

Internet Protocol Version 6 (IPv6)

The search being performed may take a significant time so a forking proxy must send a 100 Trying response.

Different Layers Lecture 20

Troubleshooting DHCP server configuration 28

DHCP Technology White Paper

HT801/HT802 Firmware Release Note IMPORTANT UPGRADING NOTE

Multimedia Networking

Business Data Communications and Networking

Multimedia networking: outline

Chapter 10: Application Layer

Internet Streaming Media. Reji Mathew NICTA & CSE UNSW COMP9519 Multimedia Systems S2 2006

SIP System Features. SIP Timer Values. Rules for Configuring the SIP Timers CHAPTER

Mobile Communications Chapter 9: Network Protocols/Mobile IP

2. Introduction to Internet Applications

N-Squared Software SIP Specialized Resource Platform SIP-SDP-RTP Protocol Conformance Statement. Version 2.3

Transcription:

ETSF05/ETSF10 Internet Protocols Higher layer protocols DHCP DNS Real time applications RTP SIP

DHCP Configuring hostsso they can communicate 2015-11-30 ETSF05/ETSF10 - Internet Protocols 2

What to configure IP address Net mask (specifies network id) Default Gateway (at least one) DNS server (at least one) Server s IP address Other stuff TFTP server Configuration file Executable image download ETSF05/ETSF10 - Internet Protocols 3

Obtaining an IP address (bootp Bootstrap protocol) ETSF05/ETSF10 - Internet Protocols 4

Dynamic Host Configuration Protocol (DHCP) BOOTP Not dynamic! Server cannot reclaim IP address DHCP IP address Allocation from pool or static (mapping to e.g. MAC addr) Network mask Default gateway DNS server(s) Lease time ETSF05/ETSF10 - Internet Protocols 5

Dynamic Host Configuration Protocol (DHCP) Internet protocol that enables dynamic allocation of IP addresses to hosts Defined in RFC 2131 Was developed to deal with the shortage of IP addresses Enables a local network to assign IP addresses from a pool of available IP addresses to hosts currently in use When a host is not in use, its IP address is returned to the pool managed by a DHCP server Can also assign permanent IP addresses to some systems, such as servers, so that the address remains the same when the system is rebooted ETSF05/ETSF10 - Internet Protocols 6

Respond with IP address, parameters Request IP address DHCP Server DHCP Database Enterprise Network DNS Server DNS Database Figure 21.14 DHCP Role ETSF05/ETSF10 - Internet Protocols 7

The following DHCP messages are used for protocol operation: (reference only) DHCPDISCOVER Client broadcast to locate available servers DHCPOFFER Server to client in response to DHCPDISCOVER with offer of configuration parameters DHCPREQUEST Client message to servers either (a) requesting offered parameters from one server and implicitly declining offers from all others, (b) confirming correctness of previously allocated address after, for example, system reboot, or (c) extending the lease on a particular network address DHCPACK Server to client with configuration parameters, including committed network address DHCPNACK Server to client indicating client s notion of network address is incorrect (e.g., client has moved to new subnet) or client s lease has expired DHCPDECLINE Client to server indicating network address is already in use. DHCP server should then notify sysadmin DHCPRELEASE Client to server relinquishing network address and canceling remaining lease DHCPINFORM Client to server, asking only for local configuration parameters client already has externally configured network address ETSF05/ETSF10 - Internet Protocols 8

DHCP operation ETSF05/ETSF10 - Internet Protocols 9

How do I know where Google is? DNS 2015-11-30 ETSF05/ETSF10 - Internet Protocols 10

DNS People can t remember 145.55.23.198 People can remember bill.microsoft.com (Almost) Every networked device has identifier Fully Qualified Domain Name (FQDN) 11

FQDN ICANN -Inet Corporation for Assigned Names and Numbers - www.icann.org DNS administration see the FAQ for recent info http://www.internic/net/regist.html accredited list of registrars for.com/.net/.org 12

Generic domains eu Compare Table 24.4 ETSF05/ETSF10 - Internet Protocols 13

Country domains se lth eit eit.lth.se ETSF05/ETSF10 - Internet Protocols 14

DNS Two components: Name server (named) A database front end (can be text file) Resolver Client side library implements gethostbyname(), gethostbyaddr() 15

DNS Hierarchy DNS divided into levels with root servers 2 nd level servers Local servers (organisations) Queries in iterations First local server If not found 2 nd level, then root Root points to 2 nd level server etc. 16

DNS Hierarchy root root 2nd 2nd 2nd 3rd 3rd 3rd 3rd 3rd Host 17

Queries Two versions: Iterative 2nd root 2nd 3rd 3rd Host 18

Queries Two versions: Recursive 2nd root 2nd 3rd 3rd Host 19

Header typically UDP request/reply format request = fixed header + question section reply = fixed header + query + answer sections question = (name, type, class = IP) with name in compressed format reply = set of Resource Records (RR) 20

Records Each entry in database returned as a specific record type A for IPv4 address AAAA for IPv6 address Other types available SRV, TXT etc. 21

Protocol 22

Flags 23

Resource Record format 24

RR format domain name - same format as in query TTL - in seconds, value often 86400, 1 day resource data, the answer, for example if the query was foo.com, the answer might be 192.12.1.2 25

Issues Caching: Server may cache records and return non authoritative answer to resolver. Good for scalability and performance (quick reply) However, load balancing may be broken. 26

Issues DNS can return different addresses to each query in round robin fashion to do server load balancing Caching violates this scheme Security worked on in IETF 27

Application Types App Elast ic Nonelastic Delay sensitive BW critical Errors Telnet X X FTP X X Email X Hmm Streaming X Moderate X X VOIP X X X X 28

Application types Which applications should use TCP? UDP? Point-to-multipoint (multicast) Has to use UDP Streaming and real time Low jitter and no retransmissions, use UDP No errors, no delay constraints Use TCP No errors, delay constraints Use UDP and FEC 29

EMAIL very simple protocol, 7-bit ASCII chars uses TCP, port 25 typically uses DNS MX records MIME Multipurpose Internet Mail Extensions,allow multimedia mail 30

SMTP, Request/response protocol HELO client.dns.name - say hello to other side 250 server-dns Howdy MAIL From: user@dns-site - id originator RCTP To: user@dns-site - id recipient DATA text. - DOT in column 1 for EOF QUIT - end of transmission 31

WWW WWW is one overlaid network architecture of many. Other examples are: P2P apps CDN MBONE 32

HTTP Browsers use two basic components HTML (SGML, XML etc.) HTTP HTML describes content of a web page HTTP shuffles the components across the network 33

HTTP Simple ASCII based protocol commands called methods, but for the most part, just a variation on get file server status and errors similar to error strings found in ftp/email 200 - successful 300 - not done yet; e.g., 301 is moved permanently 400 - client error; e.g., 403 forbidden (server refuses) 500 - server error; 503 service unavailable at the moment 34

RTP Streaming and real time media UDP has two major drawbacks: Lack support for lost or reordered packets Lack support for jitter compensation RTP provides these functions 35

RTP Two network functions with RTP: Mixer, mix different sources to one stream New Synchronisation Source Identifier Add old SSRC as Contributing Source Identifiers Translator, manipulates the content, e.g. a transcoder 36

37 Why is a flow identifier needed?

I multiple flows come from the same process (audio and video), the receiver has to separate them (same IP and port) 38

RTP 1 2 3 4 5 8 910 16 17 32 V P X CC M Payload Type Sequence Number Time-Stamp Synchronisation source (SSRC) Identifier Contributing source (CSRC) Identifier (1) : Contributing source (CSRC) Identifier (N) DATA (1-N audio and/or video frames) V version CC CSRC count (N < 16) P pad M marker bit X extension flag 39

RTCP Out of band control signalling (usually RTP port +1) Used to: Integrate different streams Inform about QoS (delay, jitter, packet loss) Distribute information about participants Who is participating in session Who is speaking now 40

RTCP Reports generated: Frequency inv. Proportional to no members Excellent scalability (BW limited) Initial storm 41

42 Report calculations Estimate total bandwidth of session Sender period T: Receiver period T: #Participants T = avg._rtcp_packet_size 0. 25 0. 05 SessionBW #Participants T = avg._rtcp_packet_size 0. 75 0. 05 SessionBW Next packet = last packet + Max(5s, T) + random (0.5-1.5) Random prevents bunching

SIP Bob wants to call Alice In circuit switched networks easy, send voltage pulse to telephone, it rings. In the Internet? A protocol called SIP SIP is used to invite to New sessions Existing sessions 43

SIP Basics Agnostic about Application Media Description A wrapper protocol for these functions Used to initiate, control and terminate sessions 44

SIP Basics Based on HTML, email, URL Integrating communication Calling card Email: bob@abc.net Phone: +61 2 9531 99865 Fax: +61 2 9531 99844 SIP, single identifier bob@abc.net Web: www.abc.net/~bob 45

SIP Entities SIP server SIP Redirect Server SIP proxy server SIP Registrar SIP User Agents 46

SIP User mobility User move around Users have different devices Devices get dynamic IP addresses Where to locate a user? SIP uses URL (mail addresses) to identify domain 47

SIP User Mobility Registrar accepts user location registrations (SIP) Registrar updates Location Server (other protocol) Peers query Location server (other protocol) 48

SIP User Mobility 1 1.1 Alice is reachable at: SIP:alice@192.168.0.1 Alice s SIP server/registrar Abc.net 1.2 Alice: SIP:alice@192.168.0.1 2.2 Where is SIP:alice@abc,net ABC.net Location server 192.168.0.1 2.4 Invite SIP:alice@192.168.0.1 2.3 SIP:alice@abc,net is at: 192.168.0.1 2.1 Invite SIP:alice@abc,net 2 49

50 SIP* Server The server can operate in two modes: Proxy (this slide) Redirect (previous slide) 1.2 Invite SIP:alice@192.168.0.1 1.1 Invite SIP:alice@abc,net

Proxy location A SIP proxy can be located using a discovery protocol, e.g. Dynamic Host Configuration Protocol, DHCP Service Location Protocol, SLP Or statically entered in the application 51

SIP UA UA is an Application Can have User Interface SIP request processing SIP Servers route SIP messages SIP UA processes SIP messages 52

SIP Operation Request response (client server) User agent client, UAC User agent server, UAS Responses: Range Response class 100-199 Informational 200-299 Success 300-399 Redirection 400-499 Client error 500-599 Server error 600-699 Global failure Contain status code and phrase 53

Example Responses 100 Trying 180 Ringing 200 OK 202 Accepted 305 Use proxy 400 Bad request 403 Forbidden 404 Not found 408 Request timeout 415 Unsupported media type 500 Internal server error 503 Service unavailable 505 SIP version not supported 603 Decline 54

Requests INVITE Carries session description (SDP) Typical scenario: INVITE Alice to phone call BOB 180 Ringing ALICE 200 OK 55

Requests (Methods) ACK Issued by client upon receiving final response Three way handshake (tell server client still there after long delay) CANCEL Cancels pending invite requests Server returns 200 OK 56

Requests (Methods) BYE Two party sessions, terminate session Multi-party sessions, notify leaving session continues Reply 200 OK REGISTER Tell registrar of user location Reply 200 OK OPTIONS List what methods a server supports + misc. info. Reply 200 OK 57

SIP format Text based protocol Flexible inefficient? Request format Request line Several headers Empty line Message body Response format Status line Several headers Empty line Message body 58

SIP format Request line Method, next hop URI, protocol version Alice s UA Bob s Proxy (abc.net) usyd.edu.au telstra.com.au INVITE SIP:bob@abc.net SIP/2.0 INVITE SIP:bob@ usyd.edu.au SIP/2.0 INVITE SIP:bob@ telstra.com.au SIP/2.0 Status line: version, status code, reason string (SIP/2.0 200 OK) 59

SIP declares that final responses have to be transmitted using a reliable transport protocol, but provisional responses not, why? 60

Reliable transmission Simply because the information whether or not a session has been established is vital. Session progress is optional information. 61

SIP Headers Example headers: From: Bjorn Landfeldt bjornl@staff.usyd.edu.au Call-ID: ijnd73nji3978g@192.168.0.1 (distinguish between two sessions with same participants) Contact: Bjorn Landfeldt bjornl@192.168.0.1 (direct route) Record-Route: <SIP:bjornl@staff.usyd.edu.au; maddr=192.168.0.125> (tell that proxy has to be in signalling path) 62

SIP Bodies Separated from headers by blank line Proxies ignore bodies Can be encrypted end-to-end Typically contains session descriptions A SIP message can contain several bodies E.g. SDP description and callers photo 63

SIP Example Alice SIP proxy Bob (1) INVITE (2) INVITE (4) 180 RINGING (3) 180 RINGING (5) 200 OK (6) 200 OK (7) ACK SESSION (8) BYE 64 (9) 200 OK