IMS重要协议
事件通知 - RFC3265
增加了消息SUBSCRIBE、NOTIFY,SIP頭Allow-Events、Subscription State,響應202Accept、489等;該機制獨立于dialog;
SUBSCRIBE發起訂閱,訂閱擁有狀態(激活、等待、終止);收到2xx響應或NOTIFY消息時創建一個對話(與INVITE類似的對話?),后續SUBSCRIBE與NOTIFY在對話中傳遞;對話有一個expire時間,超時前需要重新訂閱;SUBSCRIBE的超時及取消機制與REGISTER類似;
事件包,一種擴展機制;事件模板包,一種特殊的事件包;事件包定義自己的MIME類型;在NOTIFY的payload中攜帶狀態信息;
狀態發布 - RFC3903
PUBLISH方法,用于client主動向狀態代理發布狀態,使用payload攜帶;
Event head;
IM - RFC3428、RFC3862
兩種消息交互方式:頁面模式與session模式;
頁面模式:每個消息是獨立的,與它之前或之后的IM在protocol層無關;RFC3428定義的MESSAGE消息用于其實現,消息內容置于payload中,MIME正文填寫text/plain;RFC3862定義了與SIP客戶間的互操作,MIME使用message/cpim;
Session模式:使用SIP建立session,之后使用MSRP來攜帶消息內容;
PRACK - RFC3262
與傳統電信網絡中呼叫建立前信令對應的SIP臨時消息,如180,在某些場景下不可缺少,故增加了臨時消息可靠傳輸能力——對SIP基本狀態機會產生什么影響?
僅適用于INVITE的臨時響應;
本擴展的標識100rel;
RSeq頭,類似CSeq;PRACK的RACK頭,依次包括RSeq與CSeq頭的值;
不能對100 Trying使用可靠傳輸機制,因為100只是用于終止INVITE等的重傳;
UPDATE - RFC3311
用于不影響當前dialog情況下更新會話描述,僅用于由INVITE產生的dialog,可在dialog的早期階段和確定階段發送,但不能在dialog建立前發送——如創建dialog的臨時響應發送、應答前;
早期階段(early INVITE-initiated):client獲得1xx(非100)應答后,dialog可能在早期階段后直接終結;
確定階段:得到2XX應答后;
UPDATE僅用于dialog;
UPDATE攜帶SDP offer,其2xx應答攜帶answer;
Precondition - RFC3312
用于session建立前的資源預留,對應SIP擴展標簽precondition;
Caller在初始SDP中指明本次會話的約束,called對其響應(IMS中好像使用183),但既不建立會話也不提交給用戶;在主被叫已知前提已經獲得滿足時主叫方再發送一個新的SDP offer,被叫方發送answer后session才建立;這在IMS中使用UPDATE;
SDP中的約束信息如:a=des:qos sptimal e2e send
REFER - RFC3515
發送者指引接收者去訪問REFER請求中所標識的資源;Refer-To、Referred-By頭域,202 Accepted響應;
REFER與NOTIFY綜合使用,實現呼叫轉移功能;NOTIFY被用于Transferee通知Transferor第二個呼叫的狀態;從NOTIFY看出,REFER創建了一個訂閱,該訂閱不帶expire參數,expire值由接收方決定;發起方可以發送SUBSCRIBE來延長該時間;由事件通知框架的要求,接收到REFER后需要立即產生和發送NOTIFY;
呼轉的類型:
Unattended transfer,即盲轉blind transfer,Transferor與Transferee之間存在一個呼叫,但與Transfer Target之間不存在呼叫;
可能的過程:Transferor向Transferee發送REFER,Transferee回送202 Accepted;Transferee向Transferor發NOTIFY(100 Trying),并向Transfer Target發起INVITE,在收到200 OK時使用NOTIFY(100 OK)通知Transferor,然后Transferor或Transferee任一方BYE掛斷primary call;
Attended transfer,即supervised transfer,Transferor與Transferee及Transfer Target間都存在呼叫;
成功的呼轉并不改變Transferor與Transferee間的媒體流,并不影響原有的session;任一方都可以在REFER后通過發送BYE消息來結束原有的session;
Path head – RFC3327
Path擴展可用于記錄REGISTER從UA到registrar所經過的路徑,即經過的proxy;IMS中用于歸屬網絡向UA發請求;Path語法與record-route頭類似;擴展標識“path”;
如果UA支持path擴展,如果proxy希望發往UA的任何后續請求都通過自己或某個URI,則它在UA的REGISTER中加入一個path頭記錄該URI;registrar記錄path及AOR及contact,在后續發往UA的請求中,path記錄的URI被放到route頭中,以使消息發送經過所指定的URI;
Private - RFC3325
用于可信網絡中判斷終端用戶、系統的身份;及提供終端用戶指示其隱私要求的機制;
信令壓縮 - RFC3486
RFC3320,信令壓縮規范,將文本信令壓縮成二進制流;
URI參數 comp=SigComp
使用request URI與via、route頭,指示節點的壓縮支持;
INFO - RFC2976
提供一種在sip session執行建立操作開始后,獨立于sip信令路徑發送session相關“控制”信息的機制——文獻[2];INFO的發送時機與UPDATE一樣;
SIP-T – RFC3372
在SIP消息體中包裝ISUP消息;使用INFO(RFC 2976)消息傳輸呼叫中的信令;
SIP消息分段 – RFC3420
MIME類型message/sipfrag;
SIP-Sec-Agree – RFC3329
安全協商,允許UA與其第一跳服務器之間就后續通信中所使用的安全機制進行協商;
Media authorization – RFC3313
P-Media-Authorization
服務路由發現 - RFC3608
UA可以在發出的請求中包含一系列Route頭,來使請求經過特定的proxy,從而獲得相應服務;
Service-Route頭,用于UA學習服務路由;registrar在響應REGISTER的200 OK中使用Service-Route頭,從而提供給UA;
IMS擴展頭 – RFC3455
專用于3GPP IMS;
P-Charging-Vector,IMS計費ID(ICID)和相關接入網計費信息;
P-Charging-Function-Address,歸屬網絡中計費功能的地址;
P-Visited-Network-ID,注冊時傳遞拜訪網絡的標識;
P-Access-Network-Info,拜訪網絡向歸屬網絡傳遞信息;
P-Called-Party-ID,
P-Associated-URI,與用戶相關聯的其他URI;
其他SIP相關RFC介紹
RFC3665
Session Initiation Protocol (SIP) Basic Call Flow Examples
3PCC - RFC3725
3rd party call control in sip
SDP – RFC2327 RFC3264 RFC4566
新的SDP標準是RFC4566(2006.7),替換了RFC2327與RFC3266;
RFC3960
Early Media and Ringing Tone Generation in the Session Initiation
服務器定位 –RFC3263
Session Initiation Protocol (SIP): Locating SIP Servers
RFC2806
URLS for telephone calls
RFC3108
Conventions for the use of the Session Description Protocol (SDP) for ATM Bearer Connections
RFC3204
MIME media types for ISUP and QSIG Objects
RFC3323
A Privacy Mechanism for SIP
RFC3326
The Reason Header Field
相關規范列表
RFC 3261: SIP Session initiation protocol.
RFC 3263: Session Initiation Protocol (SIP): Locating SIP Servers.
RFC 2327: SDP Session Description Protocol.
RFC 3420: Internet Media Type message/ipfrag.
RFC 2976: The SIP INFO Method
RFC 2806: URLS for telephone calls
RFC 3108: Conventions for the use of the Session Description Protocol (SDP) for ATM Bearer Connections
RFC 3204: MIME media types for ISUP and QSIG Objects
RFC 3262: Reliability of Provisional Responses in SIP
RFC 3264: An Offer/Answer Model with the Session Description Protocol (SDP)
RFC 3265: SIP-Specific Event Notification
RFC 3310: HTTP Digest Authentication Using AKA
RFC 3311: The SIP UPDATE method
RFC 3313: Media Authorization
RFC 3323: A Privacy Mechanism for SIP
RFC 3325: Asserted Identity within Trusted Networks
RFC 3326: The Reason Header Field
RFC 3327: Extension Header Field for Registering Non-Adjacent Contacts (Path)
RFC 3372 : SIP for Telephones (SIP-T): Context and Architectures
RFC 3428: The SIP MESSAGE method
RFC 3455: Private Header Extensions to SIP for 3GPP
RFC 3515: The SIP REFER method
RFC 3581: An Extension to SIP for Symmetric Response Routing.
RFC 3608: SIP Extension Header Field for Service Route Discovery During Registration
RFC 3842: A Message Summary and Message Waiting Indication Event Package for SIP
RFC 3856: SIP Extensions for Presence
RFC 3891: The SIP “Replaces” Header
RFC 3892: The SIP Referred-By Mechanism
RFC 3959: early session disposition type for SDP
RFC 4028: Session Timers in SIP
ITU-T T.38 Annex D (04/2004) and RFC 3362 for support of T.38 in SIP
IETF draft-levy-sip-diversion-08.
draft-ietf-sipping-kpml-07.
參考文獻
[1] Miikka Poikselka等,The IMS IP Multimedia Concepts and Services,機械工業,2007.7;
[2] Dialogic,Dialogic Global Call IP,2008.3;
總結
- 上一篇: 夏令营面试常见英文问题回答_回答有关5合
- 下一篇: 【数据库】分布式数据库设计