
Transcription
INSE 7110 – Winter 2006Value Added Services Engineering in Next Generation NetworksLecture 3, Week #5Roch H. Glitho- Ericsson/Concordia University1January 2006
Outline1.2.3.4.IntroductionCore SIPSelected ExtensionsThird Generation Cellular NetworksRoch H. Glitho- Ericsson/Concordia University2January 2006
SIP: IntroductionA set of IETF specifications including:– SIP core signalling: RFC 2543, March 1999 RFC 3261, June 2002 (Obsoletes RFC 2543)– SIP extensions (e.g. RFC 3265, June 2002 - Event notification) May have nothing to do with signalling– Used in conjunction with other IETF protocols QOS related protocol (e.g. RSVP) Media transportation related protocol (e.g. RTP - RFC 1889) Others (e.g. SDP - RFC 2327)Roch H. Glitho- Ericsson/Concordia University3January 2006
SIP: IntroductionPrime signaling system because adopted by all key nextgeneration networks:– 3GPP– 3GPP2– PacketCable:.Roch H. Glitho- Ericsson/Concordia University4January 2006
Session Initiation Protocol (SIP) - Core1. Introduction2. Functional entities3. Messages4. A digression on SDP5. ExamplesRoch H. Glitho- Ericsson/Concordia University5January 2006
SIP: IntroductionSIP core Signaling– A signalling protocol for the establishment, modification and tear down ofmultimedia sessions– Based on HTTPA few key features– Text based protocol– Client/server protocol (request/response protocol)Roch H. Glitho- Ericsson/Concordia University6January 2006
SIP: The functional entitiesUser agents- End points, can act as both user agent client and as user agent server- User Agent Client: Create new SIP requests- User Agent Server: Generate responses to SIP requests- Dialog: Peer to peer relationship between two user agents, establishedby specific methodsProxy servers- Application level routersRedirect servers- Redirect clients to alternate serversRegistrars- Keep tracks of usersRoch H. Glitho- Ericsson/Concordia University7January 2006
SIP: The functional entitiesState-full proxy- Keep track of all transactions between the initiation and the end of atransaction- Transactions:- Requests sent by a client along with all the responses sent backby the server to the clientStateless proxy- Fire and forgetRoch H. Glitho- Ericsson/Concordia University8January 2006
SIP: The messagesGeneric structure- Start-line- Header field(s)- Optional message bodyRequest message- Request line as start line. Method name. Request URI. Protocol versionResponse message- Status line as start line. Protocol version. Status code. Reason phrase (Textual description of the code)Roch H. Glitho- Ericsson/Concordia University9January 2006
SIP: The messagesRequest messages- Methods for setting up sessions. INVITE. ACK. CANCEL. BYE- Others. REGISTER (Registration of contact information). OPTIONS (Querying servers about their capabilities)Roch. H. Glitho- Ericsson/Concordia University10January 2006
SIP: The messagesResponse message- Provisional- FinalExamples of status code1xx: Provisional2xx: Success6xx: Global failure.Roch H. Glitho- Ericsson/Concordia University11January 2006
A digression on SDP Session Description Protocol- Convey the information necessary to allow a party to join a multimediasessionSession related informationMedia related information- Text based protocol- No specified transport- Messages are embedded in the messages of the protocol used forthe session- Session Announcement Protocol (SAP)- Session Initiation Protocol (SIP)Roch H. Glitho- Ericsson/Concordia University12January 2006
A digression on SDP Session Description Protocol- Type Value - Some examplesSession relatedv (protocol version)s (Session name)Media relatedm (media name and transport address)b (bandwidth information)Roch H. Glitho- Ericsson/Concordia University13January 2006
A digression on SDP Session Description ProtocolUse with SIP- Negotiation follows offer / response model- Message put in the body of pertinent SIP messagesINVITE Request / responseOPTIONS Request / response.Roch H. Glitho- Ericsson/Concordia University14January 2006
SIP: A simplified call case CALLERPROXY APROXY BCALLEEINVITE (1)INVITE (2)100 TRYING (3).INVITE (4)100 TRYING (5)180 RINGING (6)180 RINGING (7)180 RINGING (8)200 OK (9)200 OK (10)200 OK (11)ACK (12)MEDIA SESSIONBYE (13)200 OK (14)Roch H. Glitho- Ericsson/Concordia University15January 2006
SIP: Examples of messages from the RFCAn example of an INVITEINVITE sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch z9hG4bK776asdhdsMax-Forwards: 70To: Bob sip:[email protected] From: Alice sip:[email protected] ;tag 1928301774Call-ID: [email protected]: 314159 INVITEContact: sip:[email protected] Content-Type: application/sdpContent-Length: 142Roch H. Glitho- Ericsson/Concordia University16January 2006
SIP: Examples of messages from the RFCAn example of an OPTIONS messageOPTIONS sip:[email protected] SIP/2.0Via: SIP/2.0/UDP pc33.atlanta.com;branch z9hG4bKhjhs8ass877Max-Forwards: 70To: sip:[email protected] From: Alice sip:[email protected] ;tag 1928301774Call-ID: a84b4c76e66710CSeq: 63104 OPTIONSContact: sip:[email protected] Accept: application/sdpContent-Length: 0Roch. H. Glitho- Ericsson/Concordia University17January 2006
SIP: Examples of messages from the RFCAn example of RESPONSE to the OPTIONS requestSIP/2.0 200 OKVia: SIP/2.0/UDP pc33.atlanta.com;branch z9hG4bKhjhs8ass877;received 192.0.2.4To: sip:[email protected] ;tag 93810874From: Alice sip:[email protected] ;tag 1928301774Call-ID: a84b4c76e66710CSeq: 63104 OPTIONSContact: sip:[email protected] Contact: mailto:[email protected] Allow: INVITE, ACK, CANCEL, OPTIONS, BYEAccept: application/sdpAccept-Encoding: gzipAccept-Language: enSupported: fooContent-Type: application/sdpRoch H. Glitho- Ericsson/Concordia University18January 2006
SDP: Examples of messages from the RFC Session Description ProtocolAn example from the RFC v 0o mhandley 2890844526 2890842807 IN IP4 126.16.64.4s SDP Seminari A Seminar on the session description protocolu http://www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.pse [email protected] (Mark Handley)c IN IP4 224.2.17.12/127t 2873397496 2873404696a recvonlym audio 49170 RTP/AVP 0m video 51372 RTP/AVP 31m application 32416 udp wba orient:portraitRoch H. Glitho- Ericsson/Concordia University19January 2006
SIP – Selected Extensions1. Extensions for ad hoc networks2. Event framework3. OthersRoch H. Glitho- Ericsson/Concordia University20January 2006
Ad hoc networks(Possibly mobile) heterogeneous nodes communicating without fixedinfrastructure and pre-set organization of available links- Wireless technologies (e.g. Bluetooth, IEEE 802.11)- Used in scenarios such as:- Disaster relief operations- Military operations- Hot spots - Considered a a new network of 4G- 4G- Co-existing and cooperating networksRoch H. Glitho- Ericsson/Concordia University21January 2006
Ad hoc networksSignalling-No centralized entityDynamic propagation of session related informationScalabilityLightweightOptimal usage of resourcesRoch H. Glitho- Ericsson/Concordia University.22January 2006
Ad hoc networksSignalling- Possible, but not optimal implementation: Full-mesh.Roch H. Glitho- Ericsson/Concordia University23January 2006
Ad hoc networksSignalling – Extensions made to SIP- Expired IETF drafts- Example of new headers- Also: List the participants already connected to the session or trying toconnect to it- Replace: use in split / merge operation- Listed participants should be treated as if they have sent a BYE to therecipient of the messageRoch H. Glitho- Ericsson/Concordia University24January 2006
Event NotificationMotivation- Necessity for a node to be asynchronously notified of happening (s) inother nodes- Busy / not busy (SIP phones)- A client A can call again a client B when notified that B is now not busy- On-line / Off-line- Buddy listRoch H. Glitho- Ericsson/Concordia University25January 2006
Event NotificationConceptual frameworkRequestorProviderSubscribe (specific event(s))Notify (specific event)Notify (specific event)Notify (specific event)Un-subscribe (specific event(s))Roch H. Glitho- Ericsson/Concordia University.26January 2006
Event NotificationThe SIP Event Notification Framework- Terminology- Event package:- Events a node can report- Not part of the framework – Part of other RFCs- Subscriber- Notifier-New Messages- Subscribe- Need to be refreshed- Used as well for un-subscribing (expiry value put to zero)- NotifyRoch H. Glitho- Ericsson/Concordia University27January 2006
Event NotificationThe SIP Event Notification Framework- More on the methods- New headers- Event- Allow-Events- Subscription stateRoch H. Glitho- Ericsson/Concordia University.28January 2006
Event NotificationAn example of use: REFER Method- Recipient should contact a third party using the URI provided in theCONTACT field- Call transfer- Third party call control-Handled as Subscribe / notify- REFER request is considered an implicit subscription to REFER event- Refer-TO: URI to be contacted- Expiry determined by recipient and communicated to sender in the firstNOTIFY- Recipient needs to inform sender of the success / failure in contactingthe third partyRoch H. Glitho- Ericsson/Concordia University29January 2006
Event NotificationAnother example of use: Presence- Dissemination/consumption of presence information (e.g. on/off,willingness to communicate, device capabilities, preferences)- Numerous applications- Multiparty sessions initiated when a quorum is on-line- News adapted to device capabilities-Several standards including SIMPLE (SIP based)- Handled as Subscribe / notify in SIMPLE- Watchers / presentities- Explicit subscriptions- Explicit notificationsRoch H. Glitho- Ericsson/Concordia University30January 2006
INFO MethodAllow the exchange of non signalling related information during a SIPdialog- Semantic defined at application level- Mid-call signalling information- DTMF digits with SIP phones-Info carried as- Headers and/or- Message bodyRoch H. Glitho- Ericsson/Concordia University31January 2006
3GPP networks1. Essentials2. Key definitions3. Call casesRoch H. Glitho- Ericsson/Concordia University32January 2006
3GPP networksEssentials- Made of:- Legacy- Circuit switched part (GSM)- Packet switched (GPRS)- Next generation part (IP multimedia (IM))- Inter-working- Some of the functional entities are common to both legacy and NGN (e.g.Home Subscriber Server)- Adoption/extension of existing NGN specifications:- SIP instead of H.323- H.248/MegacoRoch H. Glitho- Ericsson/Concordia University33January 2006
IP multimedia portionIP M u ltim e d ia N e tw o r k sL e g a c y m o b iles ig n a llin g N e tw o r k sPSTNM bM bPSTNBGCFCSCFM mPSTNM kM kM wM jC, D,G c, G rBGCFM iCxIM S M GWM GCFM gM nDxM rM bM RFPM RFCPDFM bM bSLFM wP-C S C FDhUEGmM pM bHSSCSCFS h ,S iIS CIM S u b s y s te mGoASRoch H. Glitho- Ericsson/Concordia University34January 2006
IP Multimedia portionSome of the functional entitiesHome Subscriber Server (HSS)- Evolution of the HLR- All user related subscription data (e.g. profile)- A network may contain one or several- Subscriber Location Function (SLF) maps users to specific HSS.Roch H. Glitho- Ericsson/Concordia University35January 2006
IP Multimedia portionMedia Resource Function (MRF)- Source of media (media mixing, announcement playing)- Two partsControl part: MRFCMedia Part: MRFPMegaco / H.248: Protocol used between the twoMedia Gateway Function (MGF):Signaling conversion between PSTN/2G and IMSMedia Gateway (MG)Media conversion between PSTN/2G and IMSMegaco / H.248: Protocol used between the two.Roch H. Glitho- Ericsson/Concordia University36January 2006
IP Multimedia portionSome of the functional entitiesCall Session Control Function (CSCF) “The switch”Proxy-CSCF:- LocationEither visited network or home network- First contact point in the IM network- Outbound / In-bound SIP proxy (All requests from/to IMSterminalsgo through it)- Forward SIP requests in the appropriate direction (Terminals or IMS network)- Several functions- Security- Generation of charging information- Compresssion and decompression of messagesRoch H. Glitho- Ericsson/Concordia University37January 2006
IP Multimedia portionSome of the functional entitiesCall Session Control Function (CSCF)Interrogating CSCF (I-CSCF):SIP proxy located at the edge of an admnistrative domain- Listed in the domain name server (DNS)- There may be several in the same network for scalability reasons.Roch H. Glitho- Ericsson/Concordia University38January 2006
IP Multimedia portionSome of the functional entitiesCall Session Control Function (CSCF)Serving CSCF (S-CSCF):Always located in home domainSIP proxy SIP registrar with possibility of performing sessioncontrol-Binding between IP address (terminal location) and user SIP addressInteracts with application servers for value added service purposeTranslation services (Telephone number / Sip URIs)RoutingRoch H. Glitho- Ericsson/Concordia University39January 2006
IP Multimedia portionSome of the functional entitiesApplication server (AS)Most relevant functional entity in the context of this courseHost services and execute servicesCommunicate using SIPTwo typesSIP AS: Signaling specific architecture (Services can work onlyinSIP environmentOpen Service Architecture – Service Capability Server (OSA/SCS)- Signaling neutral architecture- Happens to work in a SIP environment, but can work in otherenvironmentsRoch H. Glitho- Ericsson/Concordia University40January 2006
IP multimedia portionASASS C IMS SI PI P AAp pp lip lic ac taiot ion nS Se revr ve re rShIS CHHSSSSCxSS-C-CSSCCFFOOSSAAaappppliclicaat iot ionns seer vr veer rO SA A P IIS CSiM APIS COOSSAA s seer vr viciceec caappaabbilitilityy s seer rvveer r(S( SCCSS) )IIMM-S-SSSFFCAPCCaamme el l SSeer vr vi ci ceeEEnnvviriroonnmmeennt tRoch H. Glitho- Ericsson/Concordia University41January 2006
IP Multimedia portion – RegistrationV is ite d N e tw o rkU EH o m e N e tw o rkP -C S C FI-C S C FH S SS -C S C F1 . R e g iste r2 . R e g is te r3 . C x -Q u ery.4 . C x -Q u e ry R e sp5 . C x -S e le c t-p u ll6 . C x -S e le c t-p u ll R e s p7 . R e g is te r8 . C x -p u t9 . C x -p u t R esp1 0 . C x -P u ll1 1 . C x -P u ll R e s p1 2 . S e rv ic e C o n tro l1 3. 2 00 O K1 5. 2 00 O K1 4. 2 00 O KRoch H. Glitho- Ericsson/Concordia University42January 2006
IP Multimedia portion – De-RegistrationV isited N etw orkUE.H om e N etw orkS -C S C FHSSI-C S C FP -C S C F1. R E G IS T E R2. R E G IS T E R3. C x-Q uery4. C x-Q uery-R esp5. R E G IS T E R6. Service C ontrol7. C x -P ut8. C x -P ut R esp9 . 200 O K10. 200 O K11. 200 O KRoch H. Glitho- Ericsson/Concordia University43January 2006
IP Multimedia portion – Call initiation - Same operatorO r ig in a t in g H o m eN e tw o rkO r ig in a t in gN e tw o rkT e r m in a t in g H o m eS -C S C F # 11 . I n v it e( I n it ia l S D P2 . S e r v ic eI-C S C F # 2N e tw o rkH S ST e r m in a t in gN e tw o rkS -C S C F # 2O ffe r)C o n tro l3 . I n v it e ( I n it ia l S D PO ffe r)4 . L o c a tio nQ u e ry5 . R e s p o n s e.6 . I n v it e( I n it ia l S D PO ffe r)7 . S e r v ic eC o n tro l8 . I n v it e( I n it ia l S D PO ffe r)9 . O ffe r R e s p o n s e1 0 . O ffe r R e s p o n s e1 1 a . O ffe r R e s p o n s e1 2 . O ffe r R e s p o n s e1 3 . R e s p o n s e C o n f (O p t S D P )1 4 . R e s p o n s eC o n f (O p t S D P )1 5 . R e s p o n s e C o n f (O p t S D P )1 6 . R e s p o n s eC o n f (O p t S D P )1 7 . C o n f A c k (O p t S D P )1 8 . C o n f A c k (O p t S D P )1 9 . C o n f A c k (O p t S D P )2 0 . C o n f A c k (O p t S D P )2 1 . R e s e r v a t io n C o n f2 2 . R e s e r v a t io nC o n f2 3 . R e s e r v a t io nC o n f2 4 . R e s e r v a t io n C o n f2 5 . R e s e r v a t io n C o n f2 6 . R e s e r v a t io n2 7 . R e s e r v a t io n2 8 . R e s e r v a t io n C o n fC o n fC o n f2 9 . R in g in g3 0 . R in g in g3 1 . R in g in g3 3 . 2 0 03 2 . R in g in gO K3 4 . 2 0 0 O K3 5 . 2 0 03 6 . 2 0 0O KO K3 7 . A C K3 8 . A C K3 9 . A C K4 0 . A C KRoch H. Glitho- Ericsson/Concordia University44January 2006
IP Multimedia portion – Call initiation - Different operatorsO r ig in a t in gO r ig in a tin gN e tw o rkH o m eN e tw o rkI-C S C F # 1(T H IG )S -C S C F # 11 . In v ite( I n it ia l S D P2 . S e r v ic eT e r m in a t in gI-C S C F # 2H o m eN e tw o rkH S ST e r m in a t in gN e tw o rkS -C S C F # 2O ffe r)C o n tro l3 a . I n v it e( In itia l S D P3 b 1 . In v ite( In it ia l S D PO ffe r)O ffe r)3 b 2 . I n v ite( In itia l S D P.O ffe r)4 . L o c a t io nQ u e ry5 . R e s p o n s e6 . I n v it e( I n it ia l S D PO ffe r)7 . S e r v ic eC o n tro l8 . I n v ite( In itia l S D PO ffe r)9 . O ffe r R e s p o n s e1 0 . O ffe r R e s p o n s e1 1 a . O ffe r R e s p o n s e1 1 b 1 . O ffe r R e s p o n s e1 1 b 2 . O ffe r R e s p o n s e1 2 . O ffe r R e s p o n s e1 3 . R e s p o n s eC o n f (O p t S D P )1 4 . R e s p o n s eC o n f (O p t S D P )1 5 . R e s p o n s eC o n f (O p t S D P )1 6 . R e s p o n s e1 7 . C o n f A c k1 8 . C o n f A c k2 0 . C o n f A c k1 9 . C o n f A c k(O p t S D P )2 1 . R e s e r v a tio n(O p t S D P )(O p t S D P )C o n f2 2 . R e s e r v a t io nC o n f2 3 . R e s e r v a t io n2 6 . R e s e r v a t io n2 8 . R e s e r v a tio nC o n f (O p t S D P )(O p t S D P )2 7 . R e s e r v a t io nC o n fC o n f2 4 . R e s e r v a tio nC o n f2 5 . R e s e r v a tio nC o n fC o n fC o n f2 9 . R in g in g3 0 . R in g in g3 1 . R in g in g3 3 . 2 0 03 2 . R in g in g3 4 . 2 0 03 5 . 2 0 03 6 . 2 0 0O KO KO KO K3 7 . A C K3 8 . A C K3 9 . A C K4 0 . A C KRoch H. Glitho- Ericsson/Concordia University45January 2006
ReferencesCore SIP SIP core signalling: H. Schulzrinne, an J. Rosenberg, SIP: Internet Centric Signaling, IEEE Communications Magazine,October 2000RFC 3261, June 2002 (Obsoletes RFC 2543)RFC 2327 (SDP) SIP extensionsNo overview paperRFC 3265, 3515 (Event framework)RFC 2976 (INFO Method)3GPP K. Knightson, N. Morita and T. Towle, NGN Architecture: General Principles, FunctionalArchitecture and Implementation, IEEE Communications Magazine , Ocotber 2005, Vol.43, No10G. Camarillo and M. Garcia-Martin, The 3G IP Multimedia Subsystem, Wiley, 2004 , Part II3GPP TS 23.2283GPP TS 2302Roch H. Glitho- Ericsson/Concordia University46January 2006
Roch H. Glitho- Ericsson/Concordia University January 2006 7 SIP: The functional entities User agents-End points, can act as both user agent client and as user agent server-User Agent Client: Create new SIP requests-User Agent Server: Generate responses to SIP requests-Dialog: Peer to peer relationship