Download presentation
Presentation is loading. Please wait.
1
Location SIP Servers –RFC 3261
유비쿼터스 네트워크 연구센터 이 영
2
Contents Introduction Problem of DNS is Needed to Solve
DNS Records for SIP Client Usage Server Usage Conclusion
3
Introduction(1) Location Server in SIP
4
Introduction(2) Location Server in SIP
5
Introduction(3) Location and Presence
6
Introduction(4) SIP Basic Flow
7
Introduction(5) SIP Basic Flow - Failed
8
Introduction(6) Load balancing
9
Problem of DNS is Needed to Solve
Determine the available address tuple for SIP server of the next hop Client : Resolve address tuple of the next hop Server : If the primary response has failed Provide a scalability and high availability Scale up through clustering Priority and Weights
10
Contents Introduction Problem of DNS is Needed to Solve
DNS Records for SIP Client Usage Server Usage Conclusion
11
DNS Records for SIP(1) DNS lookup procedure for SIP
12
DNS Records for SIP(2) – NAPTR Record(RFC 2915)
Format NAPTR query for dcn.com NAPTR records are returned Rules If SIPS URI, MUST select only “SIPS+D2T” If SIP URI, select “SIPS+D2T” or “SIP+D2D” Flag value Replacement Result Select the Transport Protocol Indexing the SRV Record class type order pref flags service regexp replacement IN NAPTR 70 50 “s” “ftp+I2R” “ ” _ftp._tcp.dcn.com 80 “SIPS+D2T” _sips._tcp.dcn.com 90 “SIP+D2T” _sip._tcp.dcn.com 100 “SIP+D2U” _sip._udp.dcn.com 110 “http+I2R” _http._tcp.dcn.com
13
DNS Records for SIP(3) – SRV Record(RFC 2782)
Format SRV query for _sip._tcp.dcn.com SRV records are returned Result Determine the port of SIP server Provide the Load Balancing Mechanism and Fault Tolerance functions for SIP Server(Proxy Server) class type priority weight port Target (A record) IN SRV 2 10 5060 server3.dcn.com 1 5063 server2.dcn.com
14
DNS Records for SIP(4) – SRV Record(RFC 2782)
SRV Record Load Balancing & Fault Tolerant Mechanism Example Sort Multiple SRV Record based on RFC 2782 The same Priority Arrange in any order, except weight 0 The Running-sum Random number(nRandom) Next Target select (nRandom <= R-sum) Remove the selected RR Until there are no unordered SRV RRs. Repeat for each Priority Address record lookup for the Target in the order class type priority weight port Target (A record) R-Sum IN SRV 2 10 5060 sip3.dcn.com 1 5063 sip2.dcn.com 11 20 5064 sip5.dcn.com 31 100 5061 sip6.dcn.com 131 _sip._tcp.dcn.com
15
DNS Records for SIP(5) – A Record
Format A query for server2.dcn.com A Record are returned server2.dcn.com IN A Result Determine only IP Address for SIP Server Regardless of Service (FTP, SIP, HTTP), target resolution is one
16
Contents Introduction Problem of DNS is Needed to Solve
DNS Records for SIP Client Usage Server Usage Conclusion
17
Client Usage(1) Procedure NAPTR Record SRV Record A Record
Select TARGET Select a Transport Protocol Determine Port and IP Address via:SIP/2.0/xxx host[:port][received=host];branch=…… Case by case, DNS Lookup Step by step, DNS Lookup Numeric IP Address Port Transport Protocol DCN Query Yes / Not Using DNS No A Record Lookup SRV Record Lookup NAPTR Record Lookup NAPTR Record SRV Record A Record
18
Client Usage(2) If the TARGET is a Numeric IP Address Transport
If transport protocol is designated in TARGET, the transport protocol is used If not, UDP for SIP URI and TCP for SIPS URI is Default Port If port is designated in TARGET, the port is used 5060 for UDP or TCP, 5061 for TLS is default port IP Address Use the Numeric IP Address designated in TARGET Numeric IP Address Port Transport Protocol DCN Query Yes / Not Using DNS No A Record Lookup SRV Record Lookup NAPTR Record Lookup
19
Client Usage(3) If a port is provided, but the TARGET is not Numeric IP Address Transport If Transport protocol is designated in TARGET, the transport protocol is used If not, UDP for SIP URI and TCP for SIPS URI is Default Port Use the port designated in TARGET IP Address A record lookup or AAAA record(IPv6) with hostname designated in TARGET Numeric IP Address Port Transport Protocol DCN Query Yes / Not Using DNS No A Record Lookup SRV Record Lookup NAPTR Record Lookup
20
Client Usage(4) If no Transport protocol and port, not Numeric IP Address Transport If Transport protocol is designated in TARGET pass 1 Attempt to NAPTR Query pass 2 If NAPTR record is failed, SRV Record Lookup pass 3 (_sips._tcp.dcn.com, _sip._tcp(_udp).dcn.com) If SRV Record Lookup is failed, SIP URI(UDP) and SIPS URI(TCP) is Default pass 4 Numeric IP Address Port Transport Protocol DCN Query Yes / Not Using DNS No A Record Lookup SRV Record Lookup NAPTR Record Lookup
21
Client Usage(4) IP Address
Case pass 1: SRV Record Lookup A Record Lookup Case pass 2: Selected NAPTR Record SRV Record A Record Lookup Case pass 3: Selected SRV Record A Record Lookup Case pass 4: TARGET host A Record Lookup Port If SRV Record Lookup is successful, use the port designated in SRV Record If not, 5060 for UDP or TCP, 5061 for TLS is default port Numeric IP Address Port Transport Protocol DCN Query Yes / Not Using DNS No A Record Lookup SRV Record Lookup NAPTR Record Lookup
22
Client Usage(5) - Consideration for stateless proxies
Stateless Proxy: Not keep up transaction state Problem 1 Possible that retransmission go to a different server every time Solution - Not adopt SRV Record Sorting algorithm of RFC using any algorithm to be sorted by the same order every time (example : alphabets) Problem 2 Not contacted to the first server successfully, send to the next server, retransmit go to different server if the failed first server recovers between retransmissions Solution - If the first server is not contacted successfully, should act as a stateful proxy.
23
Contents Introduction Problem of DNS is Needed to Solve
DNS Records for SIP Client Usage Server Usage Conclusion
24
Server Usage Response Mechanism
TCP : Sent over the connection the request arrived on UDP : the source IP Address, the port contained in the Via header Problem Response fails “fails”: Any closure of the transport connection or fatal error from the transport layer Solution - examines the value of the sent-by construction in the topmost Via header - A Record Lookup or SRV Record Lookup - It is possible that response sent to a different client - If only Client Group share transaction state, this model is worthy
25
Conclusion Determine the available transport protocol, port, IP Address for SIP server of the next hop through DNS lookup Provide the load balancing mechanism and fault tolerance functions for SIP server(proxy server) through DNS lookup Requirement UA and Proxy server should have the ability to lookup DNS and analyze DNS RRs Administrator should have the ability To load balancing of SIP Servers through control of DNS Server Record To manage Back-up Server
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.