【正文】
祝你們 一生 幸福! 。感謝你們對(duì)我論文的支持,在此我表示衷心的感謝。大家互幫互助,營造了一個(gè)良好的學(xué)習(xí) 氛圍。在此謹(jǐn)向劉 老師致以由衷的敬意和最誠 摯的感謝。 她的課堂上信息量大,圖文并茂 ,重點(diǎn)突出 。她和藹可親,在我 學(xué)習(xí)過程中 給予了我 很多 建設(shè)性的意見,使我把握了正確 的 方向。 她使得我在學(xué)術(shù)研究和工作方法上受到了嚴(yán)格的訓(xùn)練,在專業(yè)知識(shí)的廣度和深度上都有較大 的收獲。 這 半 年是我人生中一段寶貴的財(cái)富,我結(jié)識(shí)了很多朋友,受到了老師和同學(xué)們關(guān)懷和愛護(hù),有太多的感動(dòng),有太多的人需要感謝。因此,可以判斷是否為第三方發(fā)來的 3xx信息,只有 From和 To字段中的addressofrecord一致時(shí),代理服務(wù)器才執(zhí)行呼叫轉(zhuǎn)移。 3xx 報(bào)文。 TLS客戶端 (也是 TCP 的客戶端 )在 TCP 鏈接建立之后,發(fā)出一個(gè) ClientHello來發(fā)起握手,這個(gè)消息里面包含了自己可實(shí)現(xiàn)的算法列表和其他一些需要的消息, TLS 的服務(wù)器端會(huì)回應(yīng)一個(gè) ServerHello,這里面確定了這次通信所需要的算法,然后發(fā)過去自己的證書 (里面包含了身份和自己的公鑰 )。 TLS是面向連接即 TCP之上的傳輸層安全,該協(xié)議分為上層 的 TLS Handshake協(xié)議和下層的 TLS Record協(xié)議。解決辦法是在 302 報(bào)文中,加入認(rèn)證字段,并且,在它 第 22 頁 發(fā)送到服務(wù)器端時(shí),對(duì)其進(jìn)行校驗(yàn),如果 response字段不正確,就不接受該請(qǐng)求。攻擊者冒充合法用戶,使用真實(shí)的參數(shù)非法使用網(wǎng)絡(luò)。因?yàn)檫@種攻擊方法,并不要求客戶端支持呼叫轉(zhuǎn)移功能,只要服務(wù)器能對(duì) 302報(bào)文產(chǎn)生正確的回應(yīng)即可。 重定向攻擊防范 通話劫持攻擊雖然原理比較簡單,但很實(shí)用。 2. 8: 0018: 00以外的呼叫接入,如是對(duì)公交車進(jìn)行呼叫,直接由代理服務(wù)器通過位置服務(wù)器進(jìn)行重定向轉(zhuǎn)接。重定向的準(zhǔn)確與否直接影響呼叫中心工作的質(zhì)量 。引入重定向服務(wù)器后,將改變以往單一的呼叫通道,而達(dá)到多通道的備用準(zhǔn)備從而盡最大可能保證信息的無丟失性。本文在查閱了 sip 重定向服務(wù)器的相關(guān)資料后,深入研究了 SIP 協(xié)議的 相關(guān)語法和規(guī)范等,實(shí)現(xiàn)出基于 SIP 協(xié)議的 重定向服務(wù)器的設(shè)計(jì),主要進(jìn)行 SIP 注冊和其重定向服務(wù)器的實(shí)現(xiàn)。 第 20 頁 圖 414 process proxy_ps進(jìn)程塊圖 圖 414 為 proxy 服務(wù)器進(jìn)程塊圖,包括對(duì)主叫用戶的呼叫信號(hào)處理,被叫用戶原有地址的呼叫以及返回的重定向信號(hào)處理,被叫用戶新地址的呼叫以及新地址的呼叫連接。但由于是不能正常接入呼叫所以發(fā)送重定向 sip 信號(hào) pac3 并狀態(tài)轉(zhuǎn)為invite_sent。 圖 411 process ps_ua1進(jìn)程塊圖 圖 411 為 ps_ua1 進(jìn)程塊圖, ps_ua1 由初始到 idle 狀態(tài), idle 狀態(tài)下又 u_ip 信號(hào)的進(jìn)入講 50賦值給 sip! code 再發(fā)出 sip信號(hào) pac,且狀態(tài)由 idle 變成 invite_sent。進(jìn)程 ps_ua2 向 被叫用戶發(fā)送 的信號(hào) u_op 以及 被叫用戶 的應(yīng)答信號(hào) u_ip。 圖 48 UA3功能塊圖 圖 48 為 UA3功能塊圖 ,里面包括 包括由 proxy 服務(wù)器發(fā)送的 pac、 u_ip 信號(hào)以及其應(yīng)答的重定向信號(hào) pac3 和 u_op。 第 16 頁 圖 47 UA1功能塊圖 圖 47 為 UA1 功能塊圖里包括進(jìn)入 主叫用戶向 進(jìn)程 ps_ua1 發(fā)出的 信號(hào) u_ip、進(jìn)程ps_ua1 應(yīng)答信號(hào) u_op。 圖 46 sip重定向服務(wù)器模式系統(tǒng)圖 圖 46 為 SIP重定向服務(wù)器模式 的系統(tǒng)圖,包括 3 個(gè)功能模塊:一個(gè)發(fā)起者 UA一個(gè)原地址接收者 UA一個(gè)新地址的接受者 UA以及集成了代理服務(wù)器和位置服務(wù)器的 Proxy 服務(wù)器。注冊服務(wù)器里的位置服務(wù)器 LS 與 PS 服務(wù)器合成為 Proxy 服務(wù)器。在此期間,當(dāng)用戶 A(用戶 A 為普通用戶)呼叫用戶 C 時(shí),用戶 C 的 SIP話機(jī)將會(huì)發(fā)送重定向( 3**消息),告知網(wǎng)絡(luò)服務(wù)器(軟交換機(jī) 2)將此呼叫接續(xù)到新的地址、網(wǎng)絡(luò)服務(wù)器收到重定向消息后,根據(jù) 3**消息中的內(nèi)容,將呼叫 路 由到新的地址。 用戶終端啟動(dòng)重定向的呼叫模型如圖 44 所示 .該重定向行為由 SIP 終端發(fā)起。這種業(yè)務(wù)類似于目前我們所使用的 呼叫轉(zhuǎn)移業(yè)務(wù)。 對(duì)于完成呼叫轉(zhuǎn)移類業(yè)務(wù),一般是用戶的具體業(yè)務(wù)需求使用重定向功能。 對(duì)于利用重定向完成路由尋址或載荷分擔(dān)一般應(yīng)用于組網(wǎng)環(huán)境下。 SIP 解析器可以處理SIP 起始行 ,SIP 頭域 (如 TO、 FROM、 CSEQ、 VIA 等 ),可以處理 SIP 消息體和狀態(tài)碼 ,其流程如圖 43 所示。其結(jié)構(gòu)如圖 42 圖所示。 OSIP 目前版本源代碼結(jié)構(gòu) 、 定義比較混亂 ,并且缺乏文檔 ,閱讀比較困難 。 OSIP 的解析器提供了較 為完善的 API,包含了消息的構(gòu)造 、 修改和產(chǎn)生等 。 OSIP 的各個(gè)模塊是相對(duì)清晰 、 獨(dú)立的 ,因而去掉某個(gè)模塊時(shí)也比較容易 。 OSIP 沒有給開發(fā)者限定在特定的某個(gè)執(zhí)行模式下 ,能夠使開發(fā)者選定一個(gè)比較適合自己的模式 。 OSIP 協(xié)議棧結(jié)構(gòu)簡單而小巧 ,它并不提供高層的SIP 會(huì)話控制的 API,它主要提供一些解析 SIP/SDP 消息的 API 和事務(wù)處理的狀態(tài)機(jī)。 第 12 頁 代 理 配 置 中 是 否有 r e q u e s t U R I 的 域判 斷 該 域注 冊 沒 有無取 得 請(qǐng) 求 t o 域 的 c o n t a c t s作 為 t a r g e t U R I L i s tt a r g e t U R I L i s t是 否 為 空有 狀 態(tài) 地 轉(zhuǎn) 發(fā) 請(qǐng) 求判 斷 請(qǐng) 求 地r e q u e s t U R I是 否 注 冊t a r g e t U R I = r e q u e s t U R I返 回出 錯(cuò)響 應(yīng)t a r g e t U R I =c o n t a c t無 狀 態(tài) 轉(zhuǎn) 發(fā) 請(qǐng) 求有否已 注 冊否是 空否是 圖 41 重定向服務(wù)流程 重定向服務(wù)器軟件設(shè) 計(jì) OSIP 開發(fā)庫 OSIP是按照 RFC3261(SIP)和 RFC2327(SDP)標(biāo)準(zhǔn) ,并使用標(biāo)準(zhǔn) c編寫的一個(gè) SIP協(xié)議棧。這個(gè)應(yīng)答應(yīng)當(dāng)包含一個(gè) Contact 頭域,包含一些應(yīng)當(dāng)嘗試的新位置。 在 RequestURI 的區(qū)域并非本 proxy 負(fù)責(zé)的區(qū)域的情況下,由于 proxy 之間存在注冊關(guān)系,仍然可以嘗試重定向 服務(wù),如果失敗才把 RequestURI 放在目標(biāo)集合中,并且作為唯一的一個(gè)目標(biāo) URI。 重定向服務(wù)可以歸結(jié)成為訪問一個(gè)絕對(duì)位置服務(wù)來構(gòu)建新的目的地址的形式,該服務(wù)是從 SIP 注冊服務(wù)器創(chuàng)建的位置服務(wù)獲得信息。 然而 ,重定向服務(wù)器決不能將請(qǐng)求重定向到一個(gè)與請(qǐng)求的 Request URI 相同的 URL地址。 Contact 頭字段包含了可供發(fā)送的URL,這些 URL 給出了新的目標(biāo)位置或新的用戶名 ,或者只是簡單地指定了其它的傳輸參數(shù)。當(dāng)重定向服務(wù)器返回某個(gè)請(qǐng)求的 3XX 響應(yīng)時(shí) ,它在 Contact頭字段中裝入一個(gè)地址列表 (含一個(gè)或多個(gè)可選地址 )。重定向服務(wù)器維護(hù)整個(gè) SIP 事務(wù)的狀態(tài)。對(duì)格式正確的 CANCEL 請(qǐng)求 ,重定向應(yīng)返回 2XX 最終響應(yīng)。重定向服務(wù)器自己不發(fā)送任何 SIP 請(qǐng)求。重定向服務(wù)器邏輯上由一個(gè)服務(wù)器端事務(wù)端的事務(wù)層和一個(gè)能夠訪問某種定位服務(wù)的事務(wù)用戶組成。重定向即服務(wù)器用響應(yīng)消息將某一請(qǐng)求的路由信息返回給客戶端 ,從而使服務(wù)器既起到了幫助選路的功能 ,又可以不必處理由該請(qǐng)求所導(dǎo)致的更多消息往來 當(dāng)請(qǐng)求的發(fā)起者收到重定向響應(yīng)后 ,它將基于收到的 URL 發(fā)送新的請(qǐng)求。如圖 33所示: 注 冊 服 務(wù) 器t h e r e . c o m位 置 服 務(wù)P r o x yS i p . c o m . t h e r eU A 2U A 1U A 2 U A 12 . 存 儲(chǔ)4 . 查 詢6 . I N V I T E5 . 響 應(yīng)m ql i s a3 . I N V I T Em q t h e r e . c o m1 . R E G I S T E R 圖 33 用戶注冊 第 11 頁 第四章 重定向服務(wù)器 的設(shè)計(jì)以及在 SDL 上的實(shí)現(xiàn) 重定向服務(wù)器概述 代理服務(wù)器負(fù)責(zé)請(qǐng)求消息的路由。 UA 通過發(fā)送一個(gè) register 消息到注冊服務(wù)器進(jìn)行注冊,注冊信息存儲(chǔ)在位置服務(wù)。因?yàn)槊總€(gè) proxy 主要處理本域的 UA,所以,發(fā)往這些 UA 的消息基本上都是要經(jīng)過他的 proxy。注冊服務(wù)器通過兩種不同的注冊方式來實(shí)現(xiàn),用戶注冊方式和服務(wù)器注冊方式。 注冊服務(wù)器實(shí)現(xiàn)方式 注冊服務(wù)是為了實(shí)現(xiàn)位置的綁定,而這種綁定的目的在于最大可能的搜索到目標(biāo)地址,從