CDN VOD3.docx
《CDN VOD3.docx》由会员分享,可在线阅读,更多相关《CDN VOD3.docx(52页珍藏版)》请在冰豆网上搜索。
![CDN VOD3.docx](https://file1.bdocx.com/fileroot1/2022-12/15/f2bf24f8-a0e0-4997-9734-f0d9aef806de/f2bf24f8-a0e0-4997-9734-f0d9aef806de1.gif)
CDNVOD3
通訊網路與多媒體應用
期末報告
EnablingAdaptionVideo
inP2PSystem
DanJurca,JacobChakareski,Jean-PaulWagner,andPascalFrossard,EcolePolytechniqueFederaledeLausanne(EPFL)
指導教授:
童曉儒博士
組員:
M9656008陳盈君M9656015梁家國
M9656019何政億M9656027蘇軍維
M9656034蔡翌潔M9656036陳建逸
目錄
1、前言1
1.1Client-Server架構2
1.2主從架構的目的4
1.3主從架構的特性4
1.4P2P(peer-to-peer)系統5
2、P2P軟體檔案分割方式及傳輸方式9
2.1檔案切割與傳輸方式9
2.2P2P架構10
2.3P2P架構分類10
3、適用於多媒體串流技術的P2P架構14
3.1多媒體串流P2P系統架構14
4、不穩定P2P系統中多媒體編碼16
4.1何謂H.264/AVC16
4.2網路提取層(NetworkAbstractionLayer,NAL)18
4.3視訊編碼層(VideoCodingLayer,VCL)19
4.4H.264/AVC影像格式階層架構20
4.5Slice的編碼模式21
4.6畫面內預測技術(Intra-framePrediction)23
4.7畫面間預測技術(Inter-framePrediction)23
4.8轉換、量化與熵編碼演算法(Transform,Quantization,andEntropyCoding)25
4.9內嵌式去區塊效應濾波器(In-LoopDe-blockingFilter)25
4.9.1何謂ScalableVideoCodingSCV?
25
4.9.2畫面層級的資料重複使用27
4.9.3時間、空間上的階層式移動估計28
4.10何謂MPE-FEC29
4.10.1DVB-H的定位及重要性30
4.10.2DVB-H標準之技術架構與特色30
4.11MPE-FEC32
4.11.1MPE-FEC傳輸圖框結構與錯誤校正32
4.12MultipleDescriptionCoding33
4.12.1MultipleDescriptionCoding分割34
5、P2P網路之路徑選擇與速率分配37
5.1MULTI-PATHSTREAMINGINMESHNETWORKS37
5.2RECEIVER-DRIVENSTREAMINGSCENARIOS37
5.3DISTRIBUTEDPATHCOMPUTATION38
6、在P2P網路的封包傳遞機制-利率失真效率排程39
6.1VOD介紹41
6.2P2P41
6.2.1P2P的特性:
42
6.3P2PVOD42
6.4P2PTV42
6.5IPTV43
6.6傳統IPTV架構-MediaServerFarm43
6.7傳統IPTV架構-ContentDeliveryNetwork(CDN)44
6.8P2PIPTV架構45
6.9IPTV與P2PTV比較46
6.9.1P2PLiveStreaming46
7、CodingForDistributedDelivery48
7.1Reed-Solomon編解碼原理48
7.1.1RScode數學定義48
7.1.2RS編碼法50
7.1.3RS解碼52
7.2DigitalFountain與RaptorCode介紹56
7.3改良式RaptorCodes57
8、結論60
9、參考文獻61
1、前言
在1999年5月,ShawnFanning的Napster,利用P2P技術,達到MP3音樂的檔案分享。
同年因音樂版權問題,與RIAA官司纏身,當時被迫關站,但在網際網路上已開P2P之門。
在2000年3月後,有許多Napster翻版(Napster-clone)在網路上流通,諸如Gnutella、CuteMX、Scour等等。
2000年中期之後,P2P技術從單純的檔案交換,衍生出其他商業模式和應用,許多公司皆投入P2P開發,諸如CenterSpan、Entropia、Groove等等。
P2P的正式組織和會議也陸續召集舉辦,如Intel的P2PWG(Peer-to-PeerWorkingGroup)第一次會議在2000/10/12以及第二次會議是在2001/2/7-8、O'Reilly在2001/2/14-16的P2PConference、兩屆的於2002/3/7-8及2003/2/20-21舉行的國際對等式系統研討會(InternationalWorkshoponPeer-to-PeerSystems;IPTPS)。
隨著上網人數不斷的激增,寬頻網路的普及,早期廣泛採用的主從式架構,已逐漸不敷使用者在資料量及即時性的強烈需求,是以網際網路的連線模式正逐漸轉型,對等式網路的崛起扮演關鍵的推手。
然而,此強烈需求目前正面臨許多問題,主要歸納有三點,其一最基本的連線問題,目前許多網路設備與對等式連線模式是相衝突的。
緊接著,其二是能負荷多少連線使用者?
對等式網路的運作方式及網路架構夠延展性嗎?
其三是能激發多少不同的應用層面?
對等式網路又有哪些待解決的問題。
可以預期的是,只有對等式網路的相關問題獲得解決,網際網路才更能真正做到無遠弗屆。
P2P技術就是藉由系統間的直接交換,來進行電腦資訊和服務的分享,讓個人電腦同時具備伺服器(Server)與使用者(Client)的功能,且讓線上數以萬計的個人電腦形成一種類似「區域網路」的架構,分享彼此電腦中的運算、記憶體及檔案,共享資源,而有別於早期的網際網路所面對的是一個集中式系統架構的環境。
P2P技術可以減輕伺服器的負擔,讓系統執行更加順暢,對整個系統而言相當有助益。
由於利用P2P進行檔案交換,可省去大筆資料庫建置費用,增加跨國企業及政府內的資訊傳輸效率,可望成為下一代行銷通路。
P2P網路架構今天受到了很多關注,是因為他們使用新的多種應用來做分散式存儲和增加運算資源所提供的網路技術。
此外,P2P系統是一個可擴展和具成本效益的選擇到經典多媒體的傳遞服務,使網路能夠延伸到缺乏IP群播或內容分佈網路上.P2P系統的優勢是在於他們的能力能夠自我組織,以及寬頻擴展性和網路路徑冗餘,這些都是P2P非常有吸引力的特點而且能夠有效地提供多媒體串流網路。
網絡上流行的P2P軟件的架構主要有兩種:
集中式和分佈式。
1.1Client-Server架構
定義:
用戶端(Client)程式:
凡是向伺服端程式提出要求者,都算是用戶端程式。
伺服器(Server)程式:
凡是回應用戶端程式的要求,或是說對用戶端程式"提供服務"的程式,都稱為伺服器程式。
Protocol:
Client與Server溝通所使用的語言:
HTTP;FTP
所謂的「Client-Server架構」便是由以上兩種定義所構成的架構,而連接這兩大部份的便是網路系統。
為了避免因資料傳輸點過多造成網路遲緩的”資料交換處理中心”,就是server(伺服器)。
Server的工作便是處理或執行Client(應用程式)經由網路系統所傳來的指令(圖一),當執行完後再回傳給Client(圖二),以瀏覽器InternetExplorer(簡稱IE)為例,當Clinet也就是IE,向Server要求收尋某個網頁時,Server會先看看內部是否有此網頁的最新版,如果沒有,便擴散式的搜索詢問各個資料的提供者(網站所架設的Server),是否有最新版,如果有便下載來庫存,當下次有人要求尋找同一網站時可以大大縮短時間,直接將資料給予Clinet,而以瀏覽器的Server來說,會設計成每幾秒就搜索各大網站一次,以保持最新資訊,加快整體速度,可以有效率的讓Clinet找到要找的資料,並減輕網路的負擔,而會收尋哪些資料提供者是由Server的架設者所設定的,所以並非每筆資料更新都會下載Server,但是熱門的資訊通常一定會在Server的收尋範圍,可是資訊繁多,過於廣泛或是冷門的資訊,可能不會在Server裡收尋的到,此時Server便會負責向外收尋其他的資料提供者,雖說可能還是需要向外收尋來取得資料,但是已經能夠很有效率的減輕網路負擔,而且由於是採取中心式架構,所以能夠向外擴散收尋,加快資料的收尋,也比較好加以控制。
Client-Server架構最大的好處就是它的效率極高,經由表一的優缺點比較,透過適當的分工處理,前端的應用程式(Client)可以呈現更精緻的畫面給使用者,而後端的伺服器則專注於更高效率的執行處理,包括資料的存取、系統的管理以及安全性的防護等,這樣的架構提供一個更具彈性、更有效率的應用環境。
如下圖:
圖一.client端發送出需求給server端
圖二Server端將查詢結果傳回給client端
通常這樣的網路架構出現在一個小型的資訊交流地點,例如:
公司辦公室、學校...等等,因為整體網路架構過大,無法作出一台Server能夠成為一整個網路的中心,所以仍然只是一個「小型網路」的基本構造,無法成為網路的整體架構。
而大多數Client-Server網路使用者必須先輸入使用者名稱(ID)和密碼(password)才能連接網路﹐ID和password永遠是一對的。
當使用者繼續嘗試使用到網路服務(如檔案﹐程式)的時候﹐不同的ID所擁有的權限是不同的﹐比如﹕有些只能讀取﹐有些則可以修改﹐有些甚至可以刪除和建立。
Client-Server架構是一種較嚴謹的網路架構,可以充分的給予網路管控,而這也是它的最大優點,雖然在P2P架構上面也可設密碼﹐但其設定和管理上面則比C/S鬆散得多。
而Server有許多不同的種類,例如:
DiskServer、FileServer、ApplicationServer…等,因為這不是這次討論的主題就不在此詳述各種Server的差別
圖三.主從式架構圖
如圖三,早期的主從式架構為當每台Client向主伺服器要求資料時,則會將資料繞過臨近的電腦再傳送至Client或由臨近的電腦直接傳資料給Client,這樣的做法幾乎是以一台伺服端提供資料為主,缺點是容易造成伺服端上的負載過重,或者造成網路上大量傳遞資料的雍塞問題.
1.2主從架構的目的
(i)應用系統的擴充性:
提供應用系統縱向和橫向的擴充性
✧縱向:
將應用系統轉移到較大或較小伺服電腦
✧橫向:
增添、移除工作站或是電腦主機
擴充原因:
✧電腦容量、運算能力的不足,或因業務程序的重整,使功能或資料
重新分佈
(ii)交互操作性
◆在不同軟、硬體間彼此互相搭配、協調運作的能力
◆讓使用者可以在網路中不同架構和型態的電腦上,使用應用功能和資料
地點不受限
Ø伺服程式和需求程式可在一台電腦,或透過網路分處不同電腦
Ø故需求程式的位置可以不受限於伺服程式的地理位置
Ø中介軟體(Middleware)提供主從架構的體制目錄、保密、時間服務等
資源共享
Ø一支伺服程式可同時對許多需求程式提供服務,並控制它們彼此間共享資源的使用情形
Ø電腦資源(軟體和硬體)可以透過此方式讓許多需求程式共用
1.3主從架構的特性
(i)充分利用網路資源
◆過去硬體設備貴,主從架構提供充分利用資源的網路作業環境
◆客戶端只需具備基本的運算能力,在硬體設備的要求不高
◆伺服器則須具備強大的運算能力、儲存空間、以及有效率的作業系統以應付多數客戶端需求
(ii)集中管理
◆把所有的雞蛋放在一個籃子裡,是主從架構的風險,但因為集中管理,容易維持網路作業環境的單純與一致,也容易定期進行資料備份的動作
◆Novell網路作業系統
✧在網路作業的同時執行Mirror的動作,將作業的成果同步備份在另一部電腦或硬碟
(iii)利用身份認証管理
◆主從架構的網路作業系統,透過嚴格的身份認證來管理
◆系統管理員
✧會在網路系統上登錄使用者的資料,使用者才能用網路上的資源
✧根據使用者的身份來分配使用的資源
✧一般員工
(iiii)服務範圍
◆主從架構的服務種類
✧檔案、資料庫、應用程式、印表機等
✧除了登錄身份,還需溝通客戶端與伺服器
✧通訊協定
✓電腦間的溝通標準,作業系統有各自標準
✓WindowsNT/2000是NetBIOS/NetBEUI
1.4P2P(peer-to-peer)系統
P2P網路架構是和Client-Server完全不同的網路概念。
取代在網路上建立中央控制的機器,採用每台電腦都保存著自己的程式在本地硬碟上﹐它們也各自有著自己的週邊設備,通過共享﹐每一台電腦都可以是工作平台﹐同時也可以是一個Server﹐它們之間的地位都是平等的,這是P2P的最大優點,如表二內容所示之優缺點比較,可以很容易的進行使用者和使用者間的資訊交流和檔案傳輸,且提供資訊的Server越多,速度也會越快速,達到更有效率的資料傳遞。
P2P軟體開啟時,會去查尋持有所需資訊的資訊分享者,只要工作平台持有所要的資訊,此時則為Server,並從數個有連接的Server取得想要的資訊。
此外同於Client/Server也可以為每一個共享的服務設立密碼保護﹐只有知道密碼的使用者才可以使用,但無法設立多重密碼,來區別使用者的階級。
圖四. P2P分散式架構圖
如圖四,新改良的P2P系統架構為分散式架構,採用多點對多點傳輸方式,比較於之前早期的集中式架構不同的地方是每一台電腦均能當Server及Client,而且平均分灘網路上的傳輸資料上的負載平衡,不會有伺服器負荷過重的問題,這類的概念技術類似於BT,但是在實作上的效能往往極差,畢竟串流媒體與檔案不同,檔案可以下載完再開,但是串流媒體卻有時間的限制–檔案必須要在時間內傳送到使用者手上,否則觀眾看到的檔案就會一頓一頓的.也因此,P2P網路電視在架構設計上需要比BT更有效率的訊息交流方式,以確保不會發生上述的情況.
就像前面所提到的,P2P架構其實非常類似最早期的網路架構,但是此架構會導致網路的負荷過大,所以才開發出Client-Server架構,如今P2P盛行,有賴於網路的通訊更進一步,而以伺服器為依據的系統逐漸發展來應付愈來愈多的使用量。
但是目前,電腦已經具有愈快的處理速度和較大的儲存量,這使得P2P的使用者可透過電腦的直接連結來分享電腦資源和交換資料。
但是速度的延遲仍相當明顯,當開啟P2P軟體時,整體電腦的運作速度會有很明顯的延遲。
目前最廣為人所用的P2P軟體,大概就是P2P續傳軟體與即時通訊(InstantMessenger),P2P技術可以減輕集中式Server的負擔,讓系統執行更加順暢,而P2P技術所急待解決的困難是"強大的電腦硬體能力",一部電腦必須同時兼具Server與Clinet的角色,雖然,P2P具有很大的潛力帶來運算、合作及商業上的新模式,但也如同其他的新興技術一樣,擁有虛擬於實際上的問題,為了成為電子商務有效且有力的工具,P2P必須戰勝這些既存的問題。
本研究整理:
Client-Server架構
優點
缺點
1.可以有效的控制整體的流量效率
2.可對使用者進行管控
資料容易控管
3.只要設定好為數有限的伺服器,即可管理網路上所有的資源
4.每一個使用者都有搜尋檔案的功能,若其中有一個使用者突然離開網路或無法運作,不會影響整體網路的表現,因此擁有較高的可靠性
1.Server會受到很大的負荷
2.管理集中,一旦Server壞損,一切將停擺
主從式的主角是伺服器,價格昂貴,對於許多企業來說,是一筆不小的負擔.
3.伺服器集中管理,安全性及效率堪慮,較難商業化
4.較無效率。
大量的詢問封包會拖垮網路速度,特別是當使用者增加到一定規模時,效益便表現不佳
表一.Client-Server架構
P2P(peer-to-peer)架構
優點
缺點
1.可以減輕Server的負擔,讓系統執行更加順暢,對整個系統而言有相當大的好處
2.檔案共享可以增加資料的流動性,使資訊交流加快,相對代表難以掌控資料動向
3.使用者完全匿名,具有隱密性,相對的代表它無法受到管理
1.需要有強大的硬體能力
2.無法具有可管理性,資料的流通動向、流量難以掌控
3.難以控制
表二.P2P(peer-to-peer)架構
2、P2P軟體檔案分割方式及傳輸方式
2.1檔案切割與傳輸方式
圖五.檔案分割及傳輸方式圖
圖五是假設一部影片,將源頭把一個檔案切成三組,每一組用不同的樹架構來進行傳送,且用不同的方式傳送給A,B,C三個人:
這個方法的好處在於每個人的上傳頻寬都會被用到,而且假如A斷線了,會受到影響的只有檔案片段1,檔案片段2與3的傳輸仍然不受影響.至於檔案片段1~3要怎麼切呢?
有兩種常見的切法:
(i)利用LayeredEncoding來作切割:
LayeredEncoding的概念是,把一個畫質很好的影片切成幾個畫質較差的小檔案,待使用者收到後再組合為原來的影片.舉例來說,有一個檔案畫質較高,取樣頻率有100K,今天切成3個檔,第一個檔的畫質30K,第二個檔畫質45K,第三個檔畫質25K.若使用者3個檔都有收到,則可將三個檔組合還原為100K高畫質影片;若只收到第1與2個檔,則只能組合為畫質30K+45K=75K的檔案.LayeredEncoding的缺點是,每一個檔案片段都是一個patch(補強檔),會需要上一個檔案片段才能作用;檔案3需要檔案2才能作用,檔案2需要檔案1才能作用,因此若今天收到的檔案1&3,則畫質仍然只有30K.若今天收到檔案2&3,則根本連看都不能看.
(ii)MDC
將第n秒的檔案歸類為檔案片段1,第n+1秒的檔案歸類為片段2,第n+3秒的為片段3.這就是所謂MDC(MultipleDescriptionCoding)的概念.假如我們把時間間隔切得非常小,比如說,每個檔案片段只相差0.1秒,那麼若其中一個檔案片段在傳輸過程中不見了,對使用者來講只會覺得停格了0.1秒.
與方法(i)利用LayeredEncoding來作切割與2.MDC兩者比較之下,MDC的作法是比較理想.假設使用者A在於傳輸過程中中斷連線,則B與C兩個人並不會感受到撥放不順,頂多只是在某段時間內定格個零點幾秒而已.
2.2P2P架構
P2P架構其實就是所謂OverlayNetwork,是指我們刻意忽略網路的實體架構,將網路上的每個Peer都視為一個單獨的Peer,並且假設他們可以自由的互相連接。
將這些單獨的Peer採用某種特殊的結構來建置一個網路,一條OverlayNetwork上的連線可能是由數條實體網路的連線所構成;透過互相連接的網路節點,使其能夠達到某種我們期望的效果。
OverlayNetwork是架構在實體網路之上的另一層網路,所以實體網路的連接關係與變動絕對性的影響了OverlayNetwork的穩定性;而任何的P2P網路都有Peer會隨時加入及離線的特性,相當於在其上運作的系統必需有適應高度變化的能力。
2.3P2P架構分類
P2P網路有多種分類方法,從網路結構到應用類型等,這是主要從網路集中化程度對P2P網路進行分類,主要可分為下列三項:
(1)集中式P2P網路:
如下圖六所示,集中式P2P模式中有一個中心伺服器來負責記錄共用資訊以及回答對這些資訊的查詢;每一個對等實體對它將要共用的資訊以及進行的通信負責,根據需要下載它所需要的其他對等實體上的資訊。
圖六集中式P2P網路
(2)分散式P2P網路
如下圖七所示,在分散式對等網中,對等機通過與相鄰對等機之間的連接遍佈整個網路體系。
每個對等機在功能上都是相似的,並沒有專門的伺服器,而對等機必須依靠它們所在的分佈網路來查找檔和定位其他對等機。
圖七分散式P2P網路
(3)混合式P2P網路
集中式P2P形式有利於網路資源的快速檢索,以及只要伺服器能力足夠強大就可以無限擴展,但是其中心化的模式容易遭到直接的攻擊;分散式P2P形式解決了抗攻擊問題,但是又缺乏快速搜索和可擴展性。
混合式的P2P結合了集中式和分散式P2P形式的優點,在設計思想和處理能力上都得到近一步優化。
它在分散式模式基礎上,將用戶節點按能力進行分類,使某些節點擔任特殊的任務。
其系統結構圖如下圖八所示:
●用戶節點(P):
普通的節點就是用戶節點,它不具有任何特殊的功能。
●超級節點(S):
這些節點能夠提供集中式P2P網路中一部分伺服器的功能,這些節點相互間能夠通信,它們可以是專門的超級服務節點,同時也可以具有普通用戶的功能。
超級節點通常都是動態推舉和產生的,一般具有較好的物理性能,能夠提供資源搜索和索引的能力,為其臨近的若干普通節點提供服務。
圖八混合式P2P網路
分散式、集中式與混合式P2P網路架構各有各的優缺點,必須依照使用的環境以及應用的類型,才能評估使用哪一種P2P架構才能取得最大的效益,並沒有哪一種架構是適用於任何環境當中的。
而以上三種P2P架構最主要的差異在於peer發出要求的方式,與中央伺服器的存在。
以分散式P2P網路架構來說,檔案的查詢及交換都在各Peer之間直接進行,無中央伺服器介入,但在混合式與集中式P2P網路架構中,則提供中央伺服器建立資料庫,供peer查詢。
表三為分散式、集中式與混合式P2P網路架構在管理性、效益與可靠性上的比較。
架構
管理性
效益
可靠性
分散式
差
差
佳
集中式
佳
普
差
混合式
普
佳
普
表三分散式、集中式與混合式P2P網路架構比較(本研究整理)
3、適用於多媒體串流技術的P2P架構
3.1多媒體串流P2P系統架構
多媒體串流的技術在P2P網路架構的應用上,主要可分為兩種類型:
(1)樹狀結構為基礎的P2P網路
樹狀結構為基礎的P2P網路又可分為單一分支度的樹狀結構與多分支度的樹狀結構。
在樹狀結構的P2P網路當中,會將資料由Source端經由其他的Peer傳送到Client端,如下圖九所示。
下圖九為一個多分支度的P2P網路,資料會經由Source端經由Peer1與Peer4將資料傳送到Client端,而一般的視訊會議則大多屬於此種P2P網路架構。
圖九樹狀結構為基礎的P2P網路
在樹狀結構為基礎的P2P網路中,也存在著某些缺點,例如Peer的加入與移除在樹狀結構為基礎的P2P網路中的管理是非常複雜且困難的,因為在P2P的網路架構中,Peer本身就充滿各種的不確