激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频

P2P-SIP網(wǎng)絡(luò )電話(huà)

時(shí)間:2024-05-02 18:07:43 通信工程畢業(yè)論文 我要投稿
  • 相關(guān)推薦

P2P-SIP網(wǎng)絡(luò )電話(huà)

摘要  由于P2P系統中沒(méi)有中央服務(wù)器并且網(wǎng)絡(luò )能夠自組織所以P2P系統具有高擴展性,健壯性和容錯性。這些特性是通過(guò)在P2P覆蓋網(wǎng)絡(luò )中定位感興趣的源的更高的延遲來(lái)獲得的。網(wǎng)絡(luò )電話(huà)可以看作是參與者自組P2P覆蓋網(wǎng)來(lái)定位其他參與者并與其他參與者交互的一種P2P結構的應用。我們提出一種用于基于會(huì )話(huà)初始化協(xié)議(SIP)的IP電話(huà)系統的純P2P結構。我們的P2P-SIP結構既支持 基礎的用戶(hù)注冊和呼叫建立也支持離線(xiàn)消息發(fā)送、語(yǔ)音/視頻郵件和多方會(huì )議這樣的高級服務(wù)。此外,我們簡(jiǎn)要介紹了執行情況。      關(guān)鍵詞  P2P,網(wǎng)絡(luò )電話(huà),會(huì )話(huà)初始化協(xié)議(SIP) 1 引言      現存的基于會(huì )話(huà)初始化協(xié)議(SIP[1])的用戶(hù)/服務(wù)器網(wǎng)絡(luò )電話(huà)結構為每個(gè)域使用一個(gè)注冊服務(wù)器。主要的系統消費是由一個(gè)專(zhuān)用系統管理器造成的維護和配置。這意味著(zhù)在一個(gè)小型網(wǎng)絡(luò )中迅速地建立系統(例如,緊急通訊或會(huì )議)是很困難的。另一方面,端到端(P2P)系統[2]因為沒(méi)有單點(diǎn)錯誤,所以是可測量和可靠的。P2P系統對全局、災難性失敗是強壯的,雖然單個(gè)的結點(diǎn)可能會(huì )失敗。      我們提出一種使用SIP的P2P網(wǎng)絡(luò )電話(huà)結構。P2P-SIP有兩個(gè)主要的目標:(1)一個(gè)增加健壯性完全的分布式模型;(2)不改變現存的控制結構(如DNS)進(jìn)行配置的能力。分析了許多可選的設計,提出使用Chord[3]作為基本的分布式hash表(DHT)的P2P-SIP端點(diǎn)。新的混合結構既允許傳統的SIP電話(huà)也允許用戶(hù)在本地域沒(méi)有SIP服務(wù)器時(shí)在P2P網(wǎng)絡(luò )中查找。使用SIP在P2P-SIP中執行各種DHT功能,例如端發(fā)現,用戶(hù)登記,結點(diǎn)故障發(fā)現,用戶(hù)定位以及通過(guò)用P2P代替DNS[4]用于SIP中的下一跳查找的呼叫建立。      實(shí)現了一個(gè)P2P-SIP適配器,SIPPEER[5],允許現有的或者新的SIP用戶(hù)代理不改變用戶(hù)代理就可以連接到P2P-SIP網(wǎng)絡(luò )。例如,SIPPEER在同一臺主機上可以作為基于PC的SIP用戶(hù)代理并充當它的輸出代理。SIPPEER也可以作為獨立的SIP用戶(hù)代理商,代理人或有命令行用戶(hù)界面的注冊服務(wù)器。模塊化的設計允許組件的重用和替換。例如,Chord可以替換為另一種DHT而不影響其他部分。開(kāi)放的結構可以不影響現存的設計安裝新的服務(wù)。例如,一個(gè)新的語(yǔ)音郵件模塊可以添加到現存的結點(diǎn)上。除了P2P的擴展性和可靠性,P2P-SIP還有如下優(yōu)點(diǎn):     不需要維護或配置:這個(gè)系統是開(kāi)箱即用的,不需要任何冗余的服務(wù)器安裝(包括NAT和防火墻的配置)。我們的工作將TETF零配置網(wǎng)絡(luò )工作組[6]的目標擴展到多媒體通訊和協(xié)作系統。     協(xié)同工作:不像Skype[7]之類(lèi)的其他P2P系統,我們使用SIP與其他端點(diǎn)通訊。這可以很容易的與任何現存的SIP-PSTN網(wǎng)關(guān)的IP電話(huà)結構或象Asterisk的基于服務(wù)器的IP PBX一起工作。這些優(yōu)點(diǎn)是增加資源查找延遲和安全的威脅來(lái)得到的。一個(gè)不使用集中的元件的用于認證的可靠結構不在這篇文章的討論范圍內。 結構框架      我們改進(jìn)了分布式哈希表(DHT)的設計。一個(gè)極端是,這個(gè)分布式哈希表可以在服務(wù)器中用于服務(wù)器的領(lǐng)域同時(shí)仍然管理客戶(hù)/服務(wù)器結構。另一個(gè)極端,所有的結點(diǎn)成為分布式哈希表的一部分。我們選擇如圖1所示的一種中間設計,具有高的容量(帶寬,CPU,內存)和可用性(正常運行時(shí)間,公共IP地址)的一些結點(diǎn)成為超級結點(diǎn)并組成分布式哈希表,而其他的普通結點(diǎn)與一個(gè)或更多的超級結點(diǎn)相連而不是成為分布式哈希表的一部分。   

P2P-SIP網(wǎng)絡(luò )電話(huà)

圖1與DHT中超級結點(diǎn)相連的普通結點(diǎn) 

                                              圖2 P2P-SIP結點(diǎn)中的塊算法      圖2給出了P2P-SIP結點(diǎn)中不同部件的算法。結點(diǎn)啟動(dòng)和用戶(hù)用標識符登記時(shí),發(fā)現模塊被激活用于初始化網(wǎng)絡(luò )地址翻譯和防火墻探測[8],點(diǎn)發(fā)現和 SIP注冊。組播SIP注冊、上一引導周期存儲的端地址和預配置的自舉地址被用來(lái)初始化結點(diǎn)集。用戶(hù)界面模塊記錄用戶(hù)的“朋友列表”并調用用戶(hù)定位模塊定位這些朋友。用戶(hù)定位模塊使用SIP模塊,或者,如果這個(gè)結點(diǎn)加入了DHT就使用DHT模塊。DHT模塊維護端信息(例如,Chord指針表)并執行像發(fā)現、加入和離開(kāi)的一些DHT操作。      SIP被用作是定位其他用戶(hù)或結點(diǎn)、加入DHT、注冊用戶(hù)、呼叫建立和即時(shí)消息的基礎協(xié)議。一旦用戶(hù)被定位,呼叫建立或即時(shí)消息就可以直接經(jīng)由SIP模塊發(fā)送到用戶(hù)的電話(huà)。SIP REGISTER更新和OPTIONS消息用于探測結點(diǎn)失敗。當一個(gè)超級結點(diǎn)關(guān)閉或者失敗,注冊被發(fā)送到DHT中的其他適當的超級結點(diǎn)。其他的SIP功能例如第三方呼叫控制和呼叫傳輸可以用相同的方法實(shí)現。媒介路徑(音頻設備,編解碼器和傳輸)獨立于P2P-SIP操作。      一些分布式哈希表允許對多端點(diǎn)并行搜索,不像Chord中的順序搜索。在這種情況下超級結點(diǎn)可以擔當背靠背用戶(hù)代理并向鄰居端點(diǎn)傳播SIP消息。然而,除非是像美國的911這種緊急呼叫路由的情況,應該避免并行搜索以免網(wǎng)絡(luò )中發(fā)生泛洪。       在實(shí)際的實(shí)施中允許多種P2P-SIP網(wǎng)絡(luò )(分布式哈希表)相互連接是非常有用的。我們的混合結構允許P2P-SIP網(wǎng)絡(luò )群和基于服務(wù)器的SIP結構共存。有兩種方法:將一個(gè)網(wǎng)絡(luò )中所有的用戶(hù)與所有其他網(wǎng)絡(luò )交互注冊或者在呼叫建立的過(guò)程中在其余的網(wǎng)絡(luò )中定位用戶(hù)。前一種方法工作在少量的已知的P2P- SIP網(wǎng)絡(luò )。后一種方法可以使用一個(gè)像DNS這樣的全局命名服務(wù)器或層次化的P2P-SIP網(wǎng)絡(luò )實(shí)現。第一種情況,每一個(gè)P2P-SIP網(wǎng)絡(luò )用一個(gè)域名表示。這與基于服務(wù)器的SIP網(wǎng)絡(luò )是沒(méi)有區別的,域名在那個(gè)網(wǎng)絡(luò )中解析一個(gè)或多個(gè)自舉結點(diǎn)[4]。第二種情況,用P2P-SIP代替DNS來(lái)解析域名。例如,單獨的大的組織可以有本地P2P-SIP網(wǎng)絡(luò )與全局(公共)P2P-SIP網(wǎng)絡(luò )連接,如圖3所示。本地特定域的DHT有典型的服務(wù)結點(diǎn),這些結點(diǎn)在全局DHT中也是可達的。例如,         private.com在全局DHT中映射到結點(diǎn)A和C。特定域DHT中的任何結點(diǎn)可以到達全局DHT,全局DHT中的任何結點(diǎn)可以經(jīng)由域中的典型服務(wù)結點(diǎn)到達特定域DHT。                                                        圖3 混合系統舉例 混合結構允許用戶(hù)在她的提供者可用的情況下用她的提供者注冊,也可以用P2P-SIP網(wǎng)絡(luò )。呼叫建立在可以用DNS解析時(shí)被發(fā)送到SIP目的地,同樣也可以用P2P-SIP網(wǎng)絡(luò )。 設計和實(shí)現3.1命名       結點(diǎn)和用戶(hù)標識符是用SIP通用資源標志符(URI)表示的。例如,如果一個(gè)結點(diǎn)在傳輸地址192.1.2.3:8054上監聽(tīng)SIP消息并且Chord 的哈希函數給出的鍵值是17,結點(diǎn)的URI就是sip:17@192.1.2.3:8054。域example.com中的一個(gè)不知道傳輸地址的結點(diǎn)標識符或鍵值(例如10)表示為sip:10@example.com。每一個(gè)局部的P2P-SIP網(wǎng)絡(luò )用一個(gè)DNS域名表示,example.invalid用于沒(méi)有域的鍵,例如全局DHT中的鍵。這樣的結點(diǎn)標識符對于DHT的維護是有用的,例如,查詢(xún)另外一個(gè)結點(diǎn)的傳輸地址來(lái)成為這個(gè)結點(diǎn)的指針表的入口。      用戶(hù)標識符可以由系統隨機分配,或由用戶(hù)選擇一個(gè)鑒定名(如,alice172@sippeer.net)或者用戶(hù)選擇她的有效email地址(如alice@example.com)。前兩種方法允許用戶(hù)選擇密碼,但是不清楚P2P結點(diǎn)怎樣從用戶(hù)那里得到密碼。我們使用最后一種方法,因為它允許系統產(chǎn)生一個(gè)隨機密碼并email給用戶(hù)用作驗證。前兩種方法,如果密碼由系統隨機產(chǎn)生并且SIP REGISTER請求消息的連接頭里有email地址,密碼可以發(fā)給用戶(hù)。3.2認證      當一個(gè)用戶(hù)第一次登陸P2P-SIP網(wǎng)絡(luò )時(shí),我們需要驗證用戶(hù)的標識符是有效的并且確實(shí)屬于該用戶(hù)。沒(méi)有公共密鑰結構(PKI),系統可以產(chǎn)生一個(gè)新的密碼并用email發(fā)送給用戶(hù)。這個(gè)密碼在后來(lái)的撥入當中用于注冊驗證?梢允褂靡粋(gè)可用的生存時(shí)間,比如一個(gè)月。當用戶(hù)隨后再登陸時(shí)這些信息被刷新。3.3 SIP消息      SIP REGISTER消息被結點(diǎn)既用于用戶(hù)注冊也用于DHT的維護。用戶(hù)注冊消息類(lèi)似于基于服務(wù)器的注冊,To頭表示用戶(hù)標識符,Contact頭表示用戶(hù)的聯(lián)系位置。      結點(diǎn)將SIP REGISTER消息用于兩種情況:查詢(xún)和更新。如果消息中有Contact頭,則是更新請求表示發(fā)送者想更新To頭中用戶(hù)標識符的綁定;否則就是一個(gè)查詢(xún)請求,發(fā)送者請求獲得To頭中用戶(hù)標識符的Contact信息;在一個(gè)P2P-SIP結點(diǎn)的Chord網(wǎng)絡(luò )中結點(diǎn)的Contact信息包括它自己的傳輸地址,后繼結點(diǎn)地址和前導結點(diǎn)地址。3.4 DHT發(fā)現和加入      結點(diǎn)發(fā)送SIP REGISTER消息使用sip:224.0.1.75(SIP REGISTER組播IPv4地址)作為請求URI ,To頭作為本地結點(diǎn)標識符來(lái)發(fā)現本地網(wǎng)絡(luò )中的其他P2P-SIP端點(diǎn)。也可以使用像服務(wù)定位協(xié)議(SLP)和預配置的自舉結點(diǎn)地址這樣的額外機制。結點(diǎn)存儲發(fā)現的端點(diǎn)地址列表用于以后的重新啟動(dòng)。      一旦結點(diǎn)發(fā)現一個(gè)端點(diǎn),它通過(guò)發(fā)送一個(gè)以To頭作為此結點(diǎn)標識符的SIP REGISTER查詢(xún)給那個(gè)端點(diǎn)加入DHT。成功的應答包括現存的DHT中的此結點(diǎn)的后繼和前導,結點(diǎn)可以用來(lái)更新它的Chord數據結構。      結點(diǎn)一旦知道它在Chord環(huán)里的鄰居,就向它們(后繼和前導)發(fā)送SIP REGISTER更新,這樣就可以更新它們的數據結構。       Chord的穩定性是通過(guò)周期性的發(fā)送SIP REGISTER消息更新后繼和前導的數據結構以及查詢(xún)指針表入口以校驗本地數據結構來(lái)實(shí)現的。3.5 SIP消息路由        Chord里的每個(gè)結點(diǎn)對基于它在Chord環(huán)里的位置的鍵空間的一個(gè)子集負責。當結點(diǎn)收到一個(gè)SIP請求,它提取出目標鍵作為REGISTER請求的 To頭URI和其他任何請求的請求URI。對REGISTER請求,如果目的鍵值屬于這個(gè)結點(diǎn)的鍵空間,則這個(gè)結點(diǎn)應該是目的鍵的登記者。如果這個(gè)鍵的用戶(hù)記錄存在,則發(fā)送一個(gè)成功的應答,否則就發(fā)送一個(gè)失敗的應答。成功的應答包含用戶(hù)的連接位置或結點(diǎn)聯(lián)系(本地傳輸地址,后繼和前導地址)分別用于用戶(hù)或結點(diǎn)注冊。如果結點(diǎn)收到一個(gè)非REGISTER請求,它為目標用戶(hù)提供代理或將請求重定向到可用的用戶(hù)連接位置。如果目標鍵值不屬于這個(gè)結點(diǎn)的鍵空間,則請求被代理到基于Chord算法和數據結構的下一跳結點(diǎn)。3.6可靠性      Chord通過(guò)存儲N)個(gè)后繼地址以及在K(常量)個(gè)成功的后繼結點(diǎn)中復制鍵來(lái)提供結點(diǎn)失敗時(shí)的可靠性。在P2P-SIP中,結點(diǎn)更新應答包含所有N)后繼地址,并且用戶(hù)注冊信息被復制到K個(gè)后繼結點(diǎn)中。      當一個(gè)結點(diǎn)有序地離開(kāi)網(wǎng)絡(luò )時(shí),它會(huì )注銷(xiāo)它的后繼和前導以便他們可以更新Chord數據結構。并把所有的注冊轉移到它的后繼。當一個(gè)結點(diǎn)異常地失敗時(shí),它的后繼和前導發(fā)現這個(gè)失敗并且更新他們的數據結構。算法的穩定性保證了信息能夠在一段時(shí)間內傳播到Chord中的其他相應的結點(diǎn)。注冊信息由結點(diǎn)A傳到結點(diǎn)B,如果結點(diǎn)B信任結點(diǎn)A就可以鑒定結點(diǎn)A,否則結點(diǎn)B重新生成一個(gè)密碼并發(fā)送給用戶(hù)的email地址。一旦我們擁有一個(gè)P2P名譽(yù)系統,DHT中將只存在可信任的結點(diǎn)。如果注冊結點(diǎn)是惡意的則問(wèn)題仍然存在,而且可能造成拒絕服務(wù)攻擊(DoS)。存儲用戶(hù)注冊信息的P2P-SIP結點(diǎn)也代理到那個(gè)用戶(hù)的呼叫請求。一旦呼叫建立完成,呼叫路徑中就不再需要P2P-SIP結點(diǎn)。3.7現存SIP電話(huà)的適配器       一個(gè)SIP用戶(hù)代理商可以將P2P-SIP結點(diǎn)當作是輸出代理參與P2P-SIP網(wǎng)絡(luò )。用各種各樣的SIP用戶(hù)代理商,例如哥倫比亞大學(xué)的sipc、思科 IP phone 7960、Pingtel IP phone、Xten Network的X-Lite client v2.0和Microsoft Windows Messenger,測試了P2P-SIP適配器SIPPEER。       一些電話(huà)不像SIP規范[1]中說(shuō)的輸出代理應該被當作預裝載的路由集那樣執行輸出代理。實(shí)際上,如果輸出代理不記錄路由最初的INVITE請求,則后來(lái)的對話(huà)中的請求(例BYE)不應該發(fā)送給代理。假定sipc用戶(hù)alice@example.com 使用P2P-SIP邀請思科phone用戶(hù)bob@example.com。呼叫后,bob掛斷。思科phone發(fā)送BYE請求給輸出代理(P2P- SIP結點(diǎn))但是請求URI包含alice@pc2.examole:5060。因為這個(gè)URI可能沒(méi)有在P2P-SIP網(wǎng)絡(luò )中注冊,P2P-SIP結點(diǎn)可能不能代理請求,這將引起DHT查找失敗。在SIPPEER中通過(guò)在這種情況下代理請求到請求URI代替DHT查找來(lái)解決這個(gè)問(wèn)題。 結束語(yǔ)      我們提出了純P2P結構的SIP電話(huà)。除了與現存的SIP結構的互操作性,這個(gè)結構還提供了可靠性和P2P系統固有的擴展性。今后還需要在像使用P2P的大規模應用層組播會(huì )議這樣的高級服務(wù)方面以及像認證和計費之類(lèi)的與PSTN協(xié)同工作的相關(guān)因素方面做更多的研究。參考文獻:[1] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. R. Johnston,J. Peterson, R. Sparks, M. Handley, and E. Schooler. SIP:session initiation protocol. RFC 3261, Internet Engineering Task Force, June 2002.[2] http://www.hpl.hp.com/techreports/2002/HPL-2002-57.html.[3] I. Stoica, R. Morris, D. Karger, F. Kaashoek, and H. Balakrishnan. Chord: A scalable peer-to-peer lookup service for internet applications. In SIGCOMM, San Diego,CA, USA, Aug 2001.[4] J. Rosenberg and H. Schulzrinne. Session initiation protocol(SIP): locating SIP servers. RFC 3263, Internet Engineering Task Force, June 2002.[5] http://www.cs.columbia.edu/ ˜kns10/publication/sip-p2pdesign.pdf.[6] http://www.ietf.org/html.charters/zeroconf-charter.html.[7] http://www.skype.com.[8] J. Rosenberg. Interactive connectivity establishment (ICE): a methodology for nettwork address translator (NAT) traversal for the session initiation protocol (SIP). Internet draft,Internet Engineering Task Force, July 2003. Work in progress.[9] K. Singh and H. Schulzrinne. Peer-to-peer Internet telephony using SIP. Technical Report CUCS-044-04, Department of Computer Science, Columbia University, New York, NY,Oct. 2004.[10] http://www.research.earthlink.net/p2p/.[11] http://www.ctiforum.com/technology/Voip/2005/06/voip0644.htm

【P2P-SIP網(wǎng)絡(luò )電話(huà)】相關(guān)文章:

網(wǎng)絡(luò )電話(huà)技術(shù)簡(jiǎn)單全面介紹03-12

新型的完全分布式P2P-SIP網(wǎng)絡(luò )資源定位方法研究03-07

激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频