分項子計畫: P2P Video Streaming Multi-layer Video Distribution and Acquisition in Cloud...

18
Department of Electrical Engineering National Sun Yat-Sen University Computer Communication Network Lab 分分分分分 : P2P Video Streaming Multi-layer Video Distribution and Acquisition in Cloud Computing 1 分分分 : 分分分 分分分 : 分分分 分分分 分分分 分分分 Dept. of Electrical Engineering National Sun Yat-Sen University

description

分項子計畫: P2P Video Streaming Multi-layer Video Distribution and Acquisition in Cloud Computing. 主持人 : 許蒼嶺 研究生 : 林靖辰 簡嘉威 王彥翔 蘇昭文 Dept. of Electrical Engineering National Sun Yat-Sen University. SVC-P2P: 實作與 Demo. SVC-P2P 分為兩大部份 Torrent Reassembly - PowerPoint PPT Presentation

Transcript of 分項子計畫: P2P Video Streaming Multi-layer Video Distribution and Acquisition in Cloud...

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

分項子計畫 : P2P Video Streaming

Multi-layer Video Distribution and Acquisition

in Cloud Computing

1

主持人 : 許蒼嶺 研究生 : 林靖辰 簡嘉威 王彥翔 蘇昭文 Dept. of Electrical Engineering National Sun Yat-Sen University

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

SVC-P2P: 實作與 Demo

SVC-P2P 分為兩大部份 Torrent Reassembly

Segments 被切割成三維空間的 Torrents設計抓取與重組 Torrents 最高層級的演算法

SB (Service Broker) Agent for Service Requests QoS Negotiation and Monitoring

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

SVC-P2P Video StreamingSVC-P2P Video Streaming

3

The“ Clouds”

PeerName Node

& Job Tracker

Data NodeTask Tracker

Task Tracker Data Node

Task Tracker Data Node

Task Tracker Data Node

Service Broker

Peer Peer

Peer Peer

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

Cloud ComputingCloud Computing Cloud 成員

Name Node• 負責接收 QoS service requests

Job Tracker• 負責分配 Tasks 至其它 Task Tracker

Task Tracker• 負責將 Job Tracker 所分配的 Tasks 運算完成• 並回傳結果至 Job Tracker

Data Node• 資料存取點

4

Name Node& Job Tracker

Data NodeTask Tracker

Task Tracker Data Node

Task Tracker Data Node

Task Tracker Data Node

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

Segments vs TorrentsSegments vs Torrents

5

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

SVC Video Segments (1/3)SVC Video Segments (1/3) SVC 使用 Spatial 、 Temporal 和 Quality 三個維度

Spatial 是用來表示畫面大小,藉由改變 Spatial 可以適應不同的螢幕大小

Temporal 是表示 frame rate ,藉由加入或移除中間的 B slice 來達到 frame rate 的變化

Quality 是表示畫面的 SNR ,越高層級的 Quality ,畫面品質越高

6

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

SVC Video Segments (2/3)SVC Video Segments (2/3) SVC 是由連續的 Segments 組成,每個 Segment 為一段

影片播放的時間 ( 大約是 10-20sec) 每個 Segment 依據 SVC 三個維度( Spatial, Temporal,

Quality) 的特性再切割成數個 Torrents Torrents 之間具有相依性

只有 Base Layer 可以獨立解碼其它 Torrent 的解碼必須依賴其它維度較低的 Torrents

•例如 Torrent(1,2,3) 的解碼必須依賴 Torrent(x,y,z)

7

30 ,20 ,10 zyx

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

SVC Video Segments (3/3)SVC Video Segments (3/3) Observations:

每一 Torrent 具有不同的重要性 例如只增加 Quality 而不增加 Temporal 的話,雖然畫面變清晰但是影片播放速度卻不夠順暢

例如當使用者的裝置為 PDA 時,由於設備本身螢幕較小,所以不需使用 Spatial 的較高維度

8

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

TorrentTorrent 抓取演算法抓取演算法 (1/2)(1/2) 依據使用設備與網路頻寬來決定最高可抓取的層級 判斷抓取 Segment 的時間是否來得及解碼或是否已經抓

完最高層級 假設 Segment 剩餘可抓取的時間為

:正要被抓取的 Segment 之序列號碼 :正在被 Decoding 的 Segment 之序列號碼

9

waitingt

jisegmentwaiting SNSNnntt ,

iSN

jSN

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

TorrentTorrent 抓取演算法抓取演算法 (2/2)(2/2) 計算剩餘的可用連線數

根據 Torrents 的重要性抓取 Torrents 標記 Torrent 為已抓取,抓取下一個 Torrent

10

_

Available BWConnections

BW Connection

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

TorrentTorrent 抓取的演算流程抓取的演算流程

11

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

TorrentTorrent 抓取的實驗拓樸抓取的實驗拓樸 測試抓到維度最高層級的 Torrents ,是否可滿足整個

Segment 的即時性播放需求 使用四個 Peer 的樹狀結構 限制每個 Peer 的上傳與下傳頻寬 預先創造 Torrents 在每一 Peer 的分佈情境

Uniform Hot Spot Random

12

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

SB (Service Broker)SB (Service Broker)

SB 的主要工作 Maintain 加入此 Cloud 中所有成員的資訊

• IP address , video segment…等等 參考 Service Requests (SR) 中的 QoS 參數

• delay , jitter ,和 packet loss ratio 等等 回覆 Peer

• 回送一個在資料庫中最佳的 Segment list 給此 Peer

13

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

QNP (Quality Negotiation Protocol)QNP (Quality Negotiation Protocol)

QoS Negotiation • 當 Cloud 無法提供符合此 QoS 要求的 Segment list

• 為此 Peer 另外選擇 QoS 要求較低 ( 如較少 SVC 維度層級 ) 的 Segment list

14

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

SB & QNP SB & QNP 流程流程

15

1. 發送j oi n message給SB

此j oi n request 是否被SB接受?

NO

2. 週期性傳送PN message至SB

YES

3. 發送buyi ng message至SB

自SB收到的是Sel l i ng message

從接收到的Sel l i ng message中,直接發送Segment request,向指定peer請求segment

傳送

YES

NO

是否繼續要求其它 segment?

YES

滿意此Negoti ati on之結果?

嘗試重新發送j oi n request

修改來自於cl i ent的buyi ng message中的

segment request l i st,並回送給cl i ent

YES

NO

hal tNO

4. 將收到的segments存放於buff er中,等待decoder進行decodi ng動作

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

Handshaking Messages Handshaking Messages

Join Message Peer 發送 Join message 給 SB

PN Message Peer 週期性的發送至 SB Peer 的 Segments information

Buying Message Peer 發送 Buying message 給 SB Buying message 是所需 Segments 的清單

16

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

Buying MessagesBuying Messages

Buying Messages 情況一:

若所需的 Segments 皆存在其它 Peers 中 發送給要求端一個 Selling Message 回傳最佳的 Segments 抓取清單給請求端的 Peer

情況二: 若找不到所需的 Segment 資訊 有較低 QoS 品質的 Segments 可供抓取 透過發送 Modify message 與 Peer 進行 Negotiation

情況三: 若 Peer 接受此 Negotiation 則根據 Modify message 再次進行 segment request 若 Peer 無法接受此 negotiation 則決定是否提出其它不同的 QoS 請求。

17

Department of Electrical EngineeringNational Sun Yat-Sen University

Computer Communication Network Lab

Future Works

在在 LinuxLinux 平台平台 實作實作 TorrentTorrent 抓取與重組演算法抓取與重組演算法 實作實作 SB SB 與 與 QNPQNP 演算法演算法

在在 Cloud ComputingCloud Computing 平台平台 SB: Name Node/Job TrackerSB: Name Node/Job Tracker Peer: Data Node/Task TrackerPeer: Data Node/Task Tracker QNP: Data Node and Name NodeQNP: Data Node and Name Node