SIP最初的設計理念,是打破傳統電信的集中式的交換架構,透過IP網路自動路由的概念,直接經由最佳化路徑建立並傳送會談雙方的媒體流(通話內容),不再由電信公司的設備層層轉送,大幅降低了傳統電信架構的服務成本。也因此SIP常被稱為點對點(P2P)的通訊協定,除了源自於RTP媒體流本就是在點對點間直接連接外,亦可以不透過代理伺服器而直接呼叫其他的Peer,但這項特點與我們要討論的P2P SIP(同儕SIP網路)議題不大相同。

雖然導入SIP以後,情況發生了很大的改變,但有一點一直沒變:大多數SIP用戶仍和從前一樣,在建立呼叫之前,緊緊地被束縛在代理伺服器上。換言之,雖然媒體內容的傳輸已經是P2P的架構,但仰賴建立會談的呼叫控制過程,始終還是傳統電信的集中式架構。

P2P顛覆改造傳統應用模式
點對點通信或稱為對等式網路服務,是當今最熱門的應用技術之一,在正式統計中,目前國內網際網路的頻寬已經有超過七成被P2P相關應用給佔用,造成ISP業者不小的困擾。早期認為P2P是盜版軟體、音樂和電影的傳播工具,對於傳媒和軟體商也是一場噩夢。

從技術角度看,P2P能夠解決頻寬不足、資訊的發布與搜索效率不佳等問題,適用於網路上搜尋並點播音樂、視訊及檔案,也可發布軟體與電子雜誌。此外,在某種意義上,P2P實現了可讓內容得以分散式發布的對等網路,改善內容傳輸時的流量分配狀況,解決目前在大量資訊傳播時的效能瓶頸。

傳統的網路應用模式基本是「伺服器-用戶端」方式。服務的提供者通過網路服務器向大眾提供資源,用戶通過用戶端按照規定的協定向伺服器索取所需內容。這也是目前SIP服務、大多數網際網路服務和傳統電信服務的標準運作型態。

P2P技術從根本上顛覆了這一傳統模式。模糊了服務提供者與使用者的界限,甚至不再有傳統意義上的伺服器角色,服務提供者的作用大為減弱。每一個服務的參與使用者同時也成為提供者。在一個P2P的應用網路中,先加入或閒置的使用者很快就會成為服務的提供者,為後來或有需求的使用者提供服務。第一代的P2P應用以檔案分享為主,其中BT、eMule等都是成功的P2P應用,它能夠以超乎想像的速度傳播檔案,對於檔案的發布者和使用者都是便利的工具。但是,也許設計者過於專注技術的完美,以至於除了「免費服務」以外,其他可能的應用幾乎都沒有發展空間。

Skype讓VoIP眾所皆知
Skype的服務模式是在現有網路架構下,利用P2P技術提供優質的語音和會議電話業務吸引消費者。它具有特殊的語音Codec和中繼轉送模式。適用的設備包括PC、PDA、手機或閘道器等。支援的應用平台則包括MacOS、Linux、Windows和WinCE等等。Skype作為用戶端軟體時,可以不斷擴展附加功能,如遊戲、天氣預報、音樂下載或廣告等收費服務,即時通訊(IM)系統也都是朝這個方向發展。

Skype擁有優越的防火牆穿越能力,以及人人誇讚的聲音品質,但也以其會過度的消耗頻寬和處理器資源而聞名,一旦不幸被選擇成為超級節點(Super Note),除了要幫助位於NAT之後的節點代為中繼轉送通話內容、即時訊息或檔案外,還可能要替其他節點轉遞狀態資訊,或替其他進行中的多方會議,進行媒體內容的混音(Mix)運算服務。這也是前述Skype優良的防火牆穿越能力和聲音品質的緣由,藉由各節點的共同奉獻,做到「人人為我,我為人人」。當你閒置時,將會被系統「抽調」資源去服務別人,當你使用優質服務時,背後也是一群節點無私地服務你。

傳統以媒體中繼穿越NAT的服務架構,持續經由第三方轉送封包,造成延遲變大,封包漏失的機會升高,最後得付出聲音品質下降的代價。但是Skype的多重路徑中繼服務架構,透過分散風險的方法,就抵銷了不少這類問題,讓聲音品質獲得明顯的改善,特別在極端惡劣的網路品質下,仍然能夠獲得令人驚訝的聲音品質表現。在這一點上必須承認,現在的SIP架構中,單一媒體中繼路徑的聲音品質,還很難追上Skype這項成就。

Skype的另一項創舉,是號稱在網路上完全不需要中心端介入,即可進行語音呼叫,這是透過集中式認證和分散式使用者目錄資料庫技術,將大量Skype的註冊用戶資料散置到網路各處,再透過特殊演算法集結,不需集中設置記錄使用者狀態和IP位址的使用者目錄,而是交由節點們協同完成用戶搜索等功能。這就減少了服務提供者在此方面的資源投入,而能夠使運營者更加專注於核心的功能。實際上Skype網路的P2P資料庫是混合配置的,用戶身份認證是Skype網路中唯一集中操作的地方,這部分還是必須擁有固定伺服器,以提供用戶註冊和位址空間管理。

Skype是混合P2P網路的一個典型例子,今天的SIP網路實質上也是一個混合網路。也因此有學者將其命名為半同儕網路(Semi-P2P Network)。但是Skype無庸置疑的在傳統以檔案分享下載為主的P2P應用中,開創了一個P2P通訊系統的新領域。

Skype並未採用開放協定,或說始終未公開其協定,也是一項非常不利於自己的因素。自IT產業蓬勃發展以來,一而再,再而三的案例都顯示:一種封閉或專屬標準的產品,並不能夠永遠主宰市場。從不知凡幾的大型主機到麥金塔電腦、從SNA到AppleTalk協定,網際網路的特性更將這種效應發揮到了極致。有更多人們及廠商能夠參與開發的系統,再再證明擁有更多的成功機會。現在Skype市場極盛而衰的趨勢,也是意料中的事。

P2P SIP的運作原理
想像一下,一個SIP用戶(UA)裝置,不太可能「記得」有需要建立呼叫的其他用戶端IP位址,更何況大多數用戶是動態取得的,因此需要代理伺服器(電信服務商):當SIP用戶開機時向其「註冊」時,代理伺服器才會得知該用戶的所在,當其他用戶要邀請(INVITE)該用戶時,代理伺服器才有能力告知正確的IP位址或回答用戶不存在(未開機)。沒有代理伺服器和它的用戶資料庫,所有的呼叫都不能進行。

在2004年Skype的創意出現之前,其實早已經有一些研究者提出早期的P2P SIP概念,其實現關鍵就是如何動態的、即時的對全球的DNS伺服器更新SIP UA端的位址,有人提出以IETF的動態域名(DDNS)登錄方式,取代SIP UA註冊到代理伺服器的方式,且以DNS的位址解析功能,取代代理伺服器、重導向伺服器及其後方位置伺服器的功用。這種陽春級P2P SIP,其實是一個有趣的概念,實作簡單是它的優勢,但DNS仍然算是一種中心端服務,一旦DNS失效時就不能進行呼叫就是它的缺點。

由於傳統DNS並無法指示類似SIP用戶之類的網路資源,也另外發展了ENUM技術做為DNS的延伸,讓DNS體系能夠提供以電話號碼查找SIP URI資源的能力。此外並發展出DUNDi(Distributed Universal Number Discovery)以及GNUP(Global Numbering Plan for VoIP)的技術,可用於提供與ENUM相同的功能。兩者都也運用了分散式資料庫的概念,但ENUM係以分散各地的ENUM DNS為中心,而DUNDi與GNUP的資料庫則採用點對點(P2P)傳輸技術,不需要Root DNS中央伺服器的角色。其中DUNDi目前已經成為IETF Internet-Draft,相關內容請參考「www.dundi.com」以及「www.gnum.org」網站。

另一方面的發展方向,就是P2P SIP的創意:讓每一個用戶分攤代理伺服器一部份的工作,如此一來就不需要藉由上述的「目錄服務」或稱「網路資源服務」來提供被叫端的定位。

傳統的SIP在呼叫建立時是主從式架構,在開始通話時則搖身一變為P2P架構。它透過REGISTER完成用戶端對伺服器的報到和身份驗證動作,伺服器也得以對用戶端進行定位和狀態識別等。而P2P SIP中揚棄了中心化的想法,但是原來註冊的程序仍然有其功能性與必要性,因此P2P SIP將註冊的方式由「用戶對伺服器」的動作轉變為「端點對群組」的動作(如圖一)。


圖(一) P2P SIP的運作架構和呼叫建立模式


這是通過一種分散式雜湊表(DHT)實現的,通過每個節點的IP位址產生一個唯一的雜湊函數來指向資料。產生了整個網路的DHT之後,在P2P SIP網路的所有節點中分配DHT,每個節點可維護其中一部分用戶列表。新節點希望參加系統,首先必須找到一些在系統上的「引導節點」,並送出REGISTER要求對其註冊,假定引導節點不是負責對這個節點登記的節點,就會通知新節點至下一個「引導節點」試試,重複上面的步驟直到找到負責記錄該新節點的引導節點,新節點會收到引導節點回應一個200 OK訊息,代表允許這個新節點加入到系統裡。

在P2P SIP中重要的一個環節,就是如何搜尋到要邀請建立會談的SIP用戶端,與一台設備向所有其他設備盲目發出查詢不同的是,查詢要求會轉交給另一台節點。當一個節點想要找一個特定使用者的節點時,會先比對本身的註冊記錄,若找不到再送出需求給下一個引導節點,若引導節點也不知道該被叫端的所在位置,就會回送一個302 Moved Temporarily reply訊息,包括它認為最接近的下一個引導節點資訊,重覆這些步驟直到找到目標並收到200 OK的回應為止。

一旦主叫節點知道被叫節點的IP位址後便可以直接建立連線,當他們註銷或者移動節點時才會需要重新進行搜尋。而有新的節點成功加入時,則是用SUBSCRIBE/NOTIFY訊息來進行更新通知,使用者位址的資訊也會被加到Finger Table裡,這個方法也可以用來支援行動裝置發生移動後的更新動作。

有人可能會質疑這種DHT在建立連線時,到底能多快找到對方,會不會造成呼叫等候時間過久的問題,依照DHT的演算法效能,一個P2P網路的DHT演算法設計目標,能夠保證只須要經過6~7次的搜尋與轉送動作,就可以在數萬個上線的使用者中,快速地、成功地找到要呼叫的目標。

幾乎與Skype爆紅的同時,描述P2P SIP協議的Internet草案在2005年由SIPPING工作組提出,但是這項進展表面上似乎就較不為媒體所關注。這個概念被稱之為自我組織的SIP架構SOSIMPLE(Self-Organized SIMPLE)。

而哥倫比亞大學和W&M學院是P2P SIP機制研究發展的重鎮,他們已經實作出符合SOSIMPLE規範的實驗網路,規範了一個真正的去中心化的無伺服器網路。P2P網路的自我組織化架構目前還處於學術界研究階段,如Tapestry、Chord、Pastry和CAN等都是被提出自我組織成為群組的演算法,其中最常被提及的就是Chord的環狀架構,每當有用戶加入或是離開,就好比將節點插入及重新連結一個虛擬的環路。

P2P SIP草案建議有必要對SIP協議進行細微的擴充,以因應新增的P2P需要,但由於並未大幅更動現有SIP協定堆疊的架構和運作慣例,SIP設備供應商只需要通過升級其SIP軟體就可完成這些微幅修訂,這些都不會是太大的障礙。P2P SIP的優勢
目前的P2P SIP處於萌芽階段,P2P SIP草案中的大部分內容仍未明確規範出實作方法,對如何管理P2P網路的描述也付之闕如,因此它是否能在網際網路中大規模的應用還存在疑問。和下層的IPv6網路(第三層)、無線Ad-hoc(MANET)網路(第一/二層)的整合也尚未定義完備,P2P的發展和IPv6的推廣普及是密切相關的,只有採用IPv6才有可能在網路上建設一個誠信、安全的P2P環境,而現行的IPv4是做不到的。同樣的,配合MANET的無線、移動能力也更能彰顯P2P無所不在網路(Ubiquitous Network)的意義。

雖然P2P SIP在其他領域都還存在很多問題,例如如何保證一個無需集中授權的固定唯一的位址空間,所衍生出相關安全性、隱私權的議題。另一方面隨著P2P SIP網路愈來愈龐大,其資料結構和演算法會不會出現效能上的問題,或許是網路流量的行為是否能承載足夠的服務需求,也沒有人能夠保證。

由於在網路中沒有任何伺服器,純P2P網路有望變成一個視規模需求具備高度彈性、同時對故障擁有高度抵抗能力的網路,在該網路上通訊系統不會因為一個節點壞掉而無法運作。這引發P2P SIP在公共安全上的發展空間,隨著國際恐怖活動的活躍,有學者提出藉助於P2P SIP的技術來提供緊急聯絡電話服務,如此才能在發生戰爭或遭受到恐怖攻擊時,中心端機房的代理伺服器可能都已經被摧毀殆盡的狀況下,分散各處的P2P SIP UA還是能儘可能的自我組織起來,進行緊急情況下的呼救求助(SOS)服務;或當電信服務商或大型企業的的代理伺服器發生故障時,P2P SIP還可作為一種備援機制,來保證設備的正常運行。

傳統電信的敵人還是夥伴?
P2P SIP對於電信服務業者來說可謂亦友亦敵。「友」的層面是作為PSTN新的加值服務,提高寬頻網路用戶對頻寬的利用,並吸引新的用戶加入各類無線服務網路,為今後可能衍生的加值收費服務打下基礎,P2P SIP是未來網路內容服務提供業者(ICP)的合作夥伴,將有效增加地方電信業者在語音業務外的額外收入。

有學者指出P2P十分適合於現有網路架構下結合SIP實現點播式的視訊業務,而網路無需做太多改造。如果服務提供業者主動利用P2P技術應用在IPTV業務中,與媒體製播公司合作,做好數位版權管理,另與寬頻使用者帳號或行動電話門號等小額付款機制搭配,就會快速形成一個有效的新經營模式,藉由P2P技術把網路變成了營利的媒體商業發布和通信網路。

「敵」的層面是國際電話和傳統市內電話和長途電話收入都普遍受到衝擊,有人形容P2P SIP是VoIP的終結武器,將一舉解構現有的傳統電信產業,成為壓死駱駝的最後一根稻草,電信產業的天平將瞬間移到由設備製造商主導的一方。但是持懷疑論者當然也是大有人在,從長遠角度考慮,新技術和市場需求應該激發網路服務提供業者轉變思路,拓展傳統電信市場,促進Internet和傳統PSTN網路服務融合。

傳統架構於電信基礎設施上的語音服務逐漸消失,轉移到以數據服務為基礎的免費語音服務,終端用戶可在P2P網路中任意選擇或轉換提供PSTN電話下車的服務供應商,而傳統電信服務商可能必須轉型成為以P2P節點的型態提供語音加值服務。由此亦可看出,P2P的SIP和現有所謂透過代理呼叫的非P2P SIP概念,其實是沒有衝突的,兩者間其實可以有效的並存合作,截長補短的。

無可避免的P2P SIP發展趨勢
傳統網路的運作模式從高度集中到逐漸分散的主從架構,發展到完全分散的P2P架構,這和過去以主從架構導向組成網際網路的方式比較,也算是一次大躍進,而這也應該是下一波科技應該深入發展的方向。雖然P2P SIP目前只是一系列發展中的不成熟技術,或有人認為它僅只於學術研究,但是它帶來的全面性開放思維,可以應用到的各個層面又豈止語音服務而已。有人將P2P的P解釋成People,P2P應嘗試著以人為中心去組成網際網路,技術是發展給人使用的,符合人性的技術就會有市場需求,有市場需求的技術,其發展速度可不是能以常態來研判的。

也許在不久之後推出的SIP用戶端裝置(SIP UA),就會兼具有P2P SIP(P2P UA)的角色和傳統標準SIP UA的角色了。傳統電信服務業者若不認同或正視這種發展方向,積極研擬在新的架構下的合理轉型方案,可能就得淪落為只是提供無線頻譜或最後一哩管線的服務供應商而已,白白讓出核心電信業務的市場,交給P2P網路設備製造業者來主導了!

P2P SIP的最新發展議題參考http://www.p2psip.org網站,截至目前為止,P2P SIP的Internet Draft還沒有一份能成為IETF RFC,當第一份P2P SIP RFC出線之時,會引爆網通、電信產業何種震盪,還難以逆料。不少國外設備製造商已經在摩拳擦掌,準備一展身手,可以預料到的是,最後機會總是留給有充分準備的業者。

作者/賈文康
第一線技術顧問、台北市電腦商業同業公會顧問、NICI全國IPv6建置發展計畫,應用推廣分項計畫協同主持人、開放網路電話交換聯盟(IPOX)計畫顧問,專精研究領域為網路系統整合、TCP/IP 通訊協定核心設計、多媒體通訊、NAT穿越、網路流量暨話務量工程,在IT產業擁有15年研究開發、技術支援、產品行銷等經歷,並著有「SIP會談啟始協議操典」、「3G第三代行動通信網路技術」等書籍。

熱門新聞

Advertisement