36
Παρουσίαση Διπλωματικής Εργασίας ΜΔΕ Επιστήμης Υπολογιστών 1 Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ Μπουρσινός Χρήστος

Adaptive multisourcing video streaming in android phones

Embed Size (px)

DESCRIPTION

The high demand for video streaming in mobile phones and the increase of the amount of data transmitted in the Internet creates congestion that results in poor video quality. This thesis develops and experiments with a video streaming application that can transfer video data from multiple servers (multi-source), thus taking advantage of bandwidth available in multiple paths and the capabilities of multiple servers. The application amount of data requested from different servers based on their throughput and includes fault control to tackle the case when a server CV of Christos Boursinos 2 stops being available. In addition to video streaming, the application can be used for general file transfer. The video streaming application was developed for Android Smartphones. Experiments show the performance of the application for different scenarios, which include server faults and very low throughput and cases where servers have different throughputs.

Citation preview

Page 1: Adaptive multisourcing video streaming in android phones

Παρουσίαση Διπλωματικής Εργασίας

ΜΔΕ Επιστήμης Υπολογιστών

1 Διπλωματική Εργασία -

ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ

Μπουρσινός Χρήστος

Page 2: Adaptive multisourcing video streaming in android phones

Εισαγωγή- Πρόβλημα που μελετάτε- Στόχος

Διαφορετικές Προσεγγίσεις

Αρχιτεκτονική Συστήματος ◦ Server

◦ Μέτρηση Ταχύτητας

◦ Υπολογισμός Chunks

◦ Fault control

◦ Media Player

Πειράματα

Συμπεράσματα – Συνεισφορά

Μελλοντικές προσεγγίσεις

Live παρουσίαση εφαρμογής

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 2

Page 3: Adaptive multisourcing video streaming in android phones

Αύξηση της ζήτησης video 90% κάθε χρόνο

Αυξανόμενες απαιτήσεις Real-time ψυχαγωγίας 25% στην Ευρώπη κάθε μήνα

Ανανέωση συσκευών τηλεφώνων

Μέσο σε διάρκεια video είναι 5,6 λεπτά

Single source (χαμηλές ταχύτητες)

Multi source (ταυτόχρονη λήψη)

P2P (αλόγιστη εκμετάλλευση πόρων)

Παρουσιάζει ενδιαφέρον: ◦ Εξάλειψη κολλημάτων κατά το live streaming σε

κινητές συσκευές

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 3

Page 4: Adaptive multisourcing video streaming in android phones

Χρήση Multisource συστήματος

Ταυτόχρονη λήψη δεδομένων

Αξιοποίηση bandwidth-rate του δικτύου

Fault Control

Live Streaming

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 4

Page 5: Adaptive multisourcing video streaming in android phones

Σταθερούς Υπολογιστές/ Wired δίκτυα

Single Source ◦ HTTP

DASH με χρήση πρωτοκόλλου HTTP

◦ Iraqi et al

Εκμετάλλευση μέγιστου bandwidth. Για σταθερούς Υπολογιστές

Multi Source ◦ Hsu et al

Μείωση Διεργασιών σε Servers για καλύτερη ποιότητα σύνδεσης με τους client

◦ Cancela et al

Εκμετάλλευση bandwidth σε σταθερούς Υπολογιστές

Διπλωματική Εργασία -

ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 5

Page 6: Adaptive multisourcing video streaming in android phones

P2P ◦ Venot et al

Αναπαραγωγή video κατά την ολοκλήρωση λήψης

◦ Zhang et al

Symbian p2p video streamer, Κατανάλωση ενέργειας

◦ Peltolato et al

RTSP p2p video Streaming σε Nokia κινητά

◦ Krieger et al

Hybrid p2p streaming prototype πρώτο σε android Smartphone. Προβλήματα με συσκευές.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 6

Page 7: Adaptive multisourcing video streaming in android phones

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 7

File.mp4

chunks

metada.xml

Name of the file

Length of a chunk

Number of chunks

Page 8: Adaptive multisourcing video streaming in android phones

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 8

Requests Metadata.xml

send Metadata.xml

TCP/IP πρωτόκολλο επικοινωνίας

Page 9: Adaptive multisourcing video streaming in android phones

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 9

Requests part0,1,2

send part0,1,2

Merge chunks

Γύρος Λήψης chunks

Page 10: Adaptive multisourcing video streaming in android phones

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 10

Throughput 6000kb/s

Page 11: Adaptive multisourcing video streaming in android phones

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 11

Requests part9,10,11,12,13,14

send part9,10,11,12,13,14

Merge chunks

Page 12: Adaptive multisourcing video streaming in android phones

1ος γύρος λήψης ίδια ταχύτητα

Στις επόμενες γύρες γίνεται δυναμικά από την εφαρμογή μας η μέτρηση της ταχύτητας

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 12

Page 13: Adaptive multisourcing video streaming in android phones

Ο υπολογισμός αρχίζει από την 2η γύρα λήψης chunks, όπου έχει μετρηθεί η ταχύτητα μετάδοσης

Εάν ο client δεν λάβει chunk από κάποιον server, τότε η ταχύτητά του θεωρείται μηδέν

Ταχύτητα server πολύ χαμηλή σε σχέση με άλλους δεν δίνεται chunk

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 13

Page 14: Adaptive multisourcing video streaming in android phones

Πιθανές πτώσεις server επηρεάζουν την αποστολή των δεδομένων

Backup server όλοι για όλους

Επιλογή του πιο γρήγορου server σαν backup

Τιμωρία Server με κακή συμπεριφορά

Έλεγχος επανέναρξης server μετά από πτώση κάθε 3 γύρους με 1 chunk

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 14

Page 15: Adaptive multisourcing video streaming in android phones

Media Player android Smartphone

Compatible με όλες τις συσκευές

MPEG-4 , 3GPP

Moov Atom

Εκκίνηση Video μόλις ληφθούν 550kb video

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 15

Page 16: Adaptive multisourcing video streaming in android phones

Samsung Galaxy S2 plus ◦ Διπύρηνος επεξεργαστής 1200ΜΗz android 4.0.4

Servers ◦ 3 VMs

◦ Wondershaper για έλεγχο ταχύτητας μετάδοσης

Video σειράς bigbang 480p

Μέγεθος video 25,6mb

Διάρκεια video 5,5 λεπτά

Μέγεθος chunk 100kb

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 16

Page 17: Adaptive multisourcing video streaming in android phones

Χρήση 3 chunk ανά server λόγω player

Επικεντρώθηκαν κυρίως στο robustness της εφαρμογής στα λάθη που μπορούσαν να προκύψουν από διάφορες καταστάσεις στο δίκτυο.

Έγιναν 6 φορές για καλύτερη γενίκευση αποτελεσμάτων

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 17

Page 18: Adaptive multisourcing video streaming in android phones

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 18

Wifi Router

Wifi

Page 19: Adaptive multisourcing video streaming in android phones

0

5000

10000

15000

20000

25000 t1

t2

t3

t4

t5

t6

t7

t8

t9

t10

t11

t12

t13

t14

t15

t16

t17

t18

t19

t20

t21

t22

t23

t24

t25

t26

t27

t28

TH

RO

UG

HPU

T k

b\s

t= timestamps=9 chunks downloaded

Πτώση ενός server κάποια χρονική στιγμή

server1

server2

server3

sumOfThroughput

Πτώση Server 1 στο t16. Παρατηρούμε αύξηση throughput στις ταχύτητες των δύο εναπομενόντων server.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 19

Page 20: Adaptive multisourcing video streaming in android phones

Έναρξη του server2 στο t17. Μείωση throughput από τους δυο αρχικούς server.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 20

0

5000

10000

15000

20000

25000

t1

t2

t3

t4

t5

t6

t7

t8

t9

t10

t11

t12

t13

t14

t15

t16

t17

t18

t19

t20

t21

t22

t23

t24

t25

t26

t27

t28

TH

RO

UG

HPU

T k

b\s

t= timestamps=9 packets downloaded

Εναρξη ενός server όχι απο την αρχή

server1

server2

server3

sumOfThroughput

Page 21: Adaptive multisourcing video streaming in android phones

Παρατηρούμε πτώσεις 2 server. Ο server1 πέφτει στο t12, Ο server2 στο t19. Έχουμε αυξήσεις στις ταχύτητες των server καθώς πέφτουν οι server.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 21

0

2000

4000

6000

8000

10000

12000

14000

16000

18000

20000

t1 t3 t5 t7 t9 t11 t13 t15 t17 t19 t21 t23 t25 t27

TH

RO

UG

HPU

T k

b\s

t= timestamps=9 packets downloaded

Πτώση 2 server σε κάποιες χρονικές στιγμές

server1

server2

server3

sumOfThroughput

Page 22: Adaptive multisourcing video streaming in android phones

t5 πτώση server1, t10 πτώση server3, t13 επανέναρξη server3, t21 εκκίνηση server1, t25 πτώση server2

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 22

0

2000

4000

6000

8000

10000

12000

14000

16000

18000

20000

t1 t3 t5 t7 t9 t11 t13 t15 t17 t19 t21 t23 t25 t27

TH

RO

UG

HPU

T k

b\s

t= timestamps=9 packets downloaded

Εναλλαγή πτώσεων των servers

server1

server2

server3

sumOfThroughput

Page 23: Adaptive multisourcing video streaming in android phones

0

2000

4000

6000

8000

10000

12000

14000

t1

t2

t3

t4

t5

t6

t7

t8

t9

t10

t11

t12

t13

t14

t15

t16

t17

t18

t19

t20

t21

t22

t23

t24

t25

t26

t27

t28

TH

RO

UG

HPU

T k

b\s

t= timestamps=9 packets downloaded

Περιορισμός ταχυτήτων

server1

server2

server3

sumOfThroughput

Σε αυτό το πείραμα έχουμε τον server1 μέχρι 8000kb/s, τον server2 στα 3000kb/s και τον server3 με όριο ταχύτητας 1000kb/s. Το συνολικό throughput της εφαρμογής μας ήταν 12000kb/s. 6-2-1 chunks

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 23

Page 24: Adaptive multisourcing video streaming in android phones

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

t1 t3 t5 t7 t9 t11 t13 t15 t17 t19 t21 t23 t25 t27

TH

RO

UG

HPU

T k

b\s

t=timestamps = 9 chunks downloaded

throughput os servers

server1

server2

server3

sumOfThroughput

Έχουμε πτώση του server1 στο t2 και μεταφορά της κίνησης στον server2. Εδώ για το λόγω ότι η ταχύτητα σύνδεσης είναι πολύ μικρή στο σύνολό της, έχουμε κολλήματα του video στο t2,t3,t4.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 24

Page 25: Adaptive multisourcing video streaming in android phones

0

1000

2000

3000

4000

5000

6000

7000

8000

9000

t1

t2

t3

t4

t5

t6

t7

t8

t9

t10

t11

t12

t13

t14

t15

t16

t17

t18

t19

t20

t21

t22

t23

t24

t25

t26

t27

TH

RO

UG

HPU

T k

b\s

timestamps=time for downloading window size=9

throughput of servers

server1

server2

server3

sumOfThroughput

Πτώση server1στο t2 αλλά δεν παρατηρούνται κολλήματα. Έχουμε μεγαλύτερη ταχύτητα στο σύνολο σε σχέση με το προηγούμενο πείραμα

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 25

Page 26: Adaptive multisourcing video streaming in android phones

Πτώση server1 t2 εκκίνηση t18, πτώση server2 την t13 εκκίνηση t18.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 26

0

2000

4000

6000

8000

10000

12000

14000

16000

18000

t1

t2

t3

t4

t5

t6

t7

t8

t9

t10

t11

t12

t13

t14

t15

t16

t17

t18

t19

t20

t21

t22

t23

t24

t25

t26

t27

t28

Thro

ughput

kb

\s

t=timestamps = 9 chunks downloaded

throughput of servers

server1

server2

server3

sumOfThroughput

Page 27: Adaptive multisourcing video streaming in android phones

Η εφαρμογή λαμβάνει υπόψη τη χαμηλή ταχύτητα μετάδοσης του server2, και δεν την χρησιμοποιεί στη διαδικασία λήψης.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 27

0

2000

4000

6000

8000

10000

12000

14000

16000

18000

20000

t1 t3 t5 t7 t9 t11 t13 t15 t17 t19 t21 t23 t25 t27

TH

RO

UG

HPU

T k

b\s

t=timestamps = 9 chunks downloaded

Αυτόματη προσαρμογή στις συνθήκες

server1

server2

server3

sumOfThroughput

Page 28: Adaptive multisourcing video streaming in android phones

Η εκκίνηση του video εξαρτάται από τον πιο αργό server.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 28

Page 29: Adaptive multisourcing video streaming in android phones

Βλέπουμε το minimum ρυθμό που θα πρέπει να υπάρχει στο δίκτυο για να γίνει σωστή αναπαραγωγή, χωρίς κολλήματα.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 29

0

10

20

30

40

50

60

70

600 800 1000 1500

Δευτερόλεπ

τα

κολλημά

τω

ν

vid

eo

throughput server kb/s

Δευτερόλεπτα κολλημάτων video ανάλογα με ταχύτητα σύνδεσης

stop video play time

Page 30: Adaptive multisourcing video streaming in android phones

Βλέπουμε ότι όσο πιο καλή η ποιότητα τόσο και περισσότερο θα πρέπει να είναι γρήγορο το δίκτυο.

1080p θα μπορούσαμε να είχαμε 3 servers από 1500kb/s ταχύτητα.

Διπλωματική Εργασία -

ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 30

0

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

360p 480p 720p 1080p

Th

roughp

ut

kb

/s

Ποιότητα Video

Ελάχιστο throughput

Ελάχιστο throughput

Page 31: Adaptive multisourcing video streaming in android phones

Έλεγχος εφαρμογής με μεγαλύτερο σε μέγεθος chunk. Πιο αργή εκκίνηση video με μεγαλύτερο σε μέγεθος video, αλλά πιο γρήγορη ολοκλήρωση λήψης video.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 31

0

5

10

15

20

25

30

1 2 3

second

servers

Χρονική διάρκεια λειτουργίας εφαρμογής

M.O. Με 100kb chunk Χρονου

λειτουργίας ethernet (Number of

Server)

M.O με 500kb chunk σε ethernet

(Number of Server)

Page 32: Adaptive multisourcing video streaming in android phones

Πειράματα σύγκρισης κινητών για έναρξη της αναπαραγωγής αλλά και ολοκλήρωση εφαρμογής

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 32

0

10

20

30

40

50

60

70

htc samsung galaxy s2 samsung galaxy s3

1 2 4

Second

Mobile-processor

timeVIdeo (marka)

endtime (marka)

Page 33: Adaptive multisourcing video streaming in android phones

Σωστή αξιοποίηση της μέγιστης ταχύτητας σύνδεσης που παίρνουμε κάθε φορά από τους servers

Robustness

Με την εφαρμογή μας το live video streaming δεν υποφέρει από κολλήματα ◦ Πτώσεις server

◦ Διαφορετικές ταχύτητες

Αναπαραγωγή κατά την λήψη

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 33

Page 34: Adaptive multisourcing video streaming in android phones

Video on Demand

rendezvous point

Machine Learning αλγόριθμο

Ταυτόχρονη χρήση στις android συσκευές του wifi και 3g για ταυτόχρονη λήψη δεδομένων και όχι μέσο εναλλαγής του τύπου σύνδεσης.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 34

Page 35: Adaptive multisourcing video streaming in android phones

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 35

Page 36: Adaptive multisourcing video streaming in android phones

Cisco Systems. Visual networking index Cisco visual networking index: Forecast and methodology, 2012-2017. White Paper, 2012

Sandvine: 2013 Global Internet Phenomena Report. Available at http://www.sandvine.com/news/global_broadband_trends.asp. Last access June 2012.

Wei-Cheng Xiao, Po-Lin Chou, Tsai-Lin Hsu, and Cheng-Fu Chou. 10th IEEE, ISCE June 2005. Enhancing the Performance of Multi-Source Streaming System Using the MCMCF-Based Algorithm

Pablo Rodriguez-Bocca, Hector Cancela, Gerardo Rubino. LANC’07 October. Video Quality Assurance in Multi-Source Streaming Techniques.

S. Venot and L. Yan. UBICOMM ’07. On-demand mobile peer-to-peer streaming over the jxta overlay.

Philipp M. Eittenberger, Matthias Herbst, Udo R. Krieger. 19th International Packet Video Workshop (PV), 2012. RapidStream: P2P Streaming on Android.

Διπλωματική Εργασία - ΜΠΟΥΡΣΙΝΟΣ ΧΡΗΣΤΟΣ 36