Download presentation
Presentation is loading. Please wait.
Published byChad Booth Modified over 8 years ago
1
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User SIP User Agent The IRT is the oldest of the New York City subway lines. Subways are a lot like Internet real-time services. Robert V Masango Rhodes University g02m4107@campus.ru.ac.za Supervisors : Afredo Terzoli & Ming Hsieh
2
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User The goal of the project - To find out how difficult or easy it is to Implement a SIP-User agent using JAIN SIP from NIST and Java Media Framework from Sun - Microsystems. NIST* National Institute Of Scientific & Technology
3
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Call Flow Example User Agent A User Agent B INIVITE 200 Okay ACK RTP Media
4
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User What will the user agent do? Make, terminate and cancel SIP phone calls Handle only audio media type of sessions Monitoring packets
5
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Basic functions -- Call The SIP sessions are set up by using a three-way handshake procedure.
6
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Basic functions -- Call
7
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Basic functions -- Call INVITE sip:Robert@cs.ru.ac.za SIP/2.0 Via: SIP/2.0/UDP 146.231.123.44:5060 From: sip:Robert@campus.ru.ac.za To: sip:Robert@cs.ru.ac.za CSeq: 17 INVITE Call-ID: 12345678@cs.ru.ac.za12345678@cs.ru.ac.za ----------- SIP invitations are used to create sessions carry session descriptions which allow participants to agree on a set of compatible media types.
8
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Incoming call handling SIP/2.0 200 Okay Via: SIP/2.0/UDP 146.123.231.44:5060 From: sip:Robert@cs.ru.ac.za To:sip:Robert@campus.ru.ac.za;tag=479737428706.128.59.19.194 Contact: sip:Robert@146.123.231.44:5060 Call-ID: 12345678@cs.ru.ac.za CSeq: 17 INVITE
9
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Call handling SIP/2.0 ACK Via: SIP/2.0/UDP 146.123.231.44:5060 From: sip:Robert@campus.ru.ac.za To:sip:Robert@cs.ru.ac.za;tag=479737428706.128.59.19.194 Contact: sip:Robert@146.123.231.44:5060 Call-ID: 12345678@cs.ru.ac.za CSeq: 17 INVITE
10
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User - After the two user agents have agreed on the set of parameters to use, them a audio media session can be established. Starting The Media Session
11
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Simplifies the construction of SIP components: –User Agents, Proxy Servers, Presence Servers. Overview: JAIN SIP
12
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Provider Listeners Provider Events SIP Messages Events SIP Messages Stack Network JAIN-SIP Architecture
13
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Responsibilities of the Application Application MUST go through the provider for all interactions with the stack (no direct access to the wire protocols). Application registers an implementation of the SipListener interface with the stack.
14
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Responsibilities the Application (Cont.) Application sees all signaling traffic and is responsible for sending responses via the SipProvider. Application is responsible for retransmission processing on timeout for stateless implementation.
15
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Responsibilities of the Stack Provide methods to format and send SIP messages Parse incoming sip messages and allow application to access / modify fields through a standardized JAVA interfaces Invoke appropriate application handlers when protocol significant events occur Provide transaction support Manage transactions on behalf of a user application
16
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User JAIN-SIP Abstractions jain.protocol.ip.sip.SipFactory: –Creates the main Stack object. jain.protocol.ip.sip.SipStack –Event generator: Fields incoming messages and generates events. –Transaction handler: Manages transactions and generates transaction timeout events. Transaction objects are not directly accessible by the application.
17
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User JAIN-SIP Abstractions (Contd.) jain.protocol.ip.sip.ListeningPoint: –Corresponds to a Stack Address (UDP/TCP) – IP address and port from which the stack can receive and send messages. –The stack is configured with one or more listening points. jain.protocol.ip.sip.Provider –Provides helper facilities for the application program (sendRequest, sendResponse, sendAck…)
18
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User Transactions in JAIN-SIP JAIN-SIP identifies transactions by a long integer. Transactions are associated with all sipProvier.sendXXX methods. SipListener.processRequest(SipEvent) SipListener.processResponse(SipEvent) SipListener.processTimeout(SipEvent) The transaction identifier is retrieved from the SipEvent for the Timeout Event.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.