feat: update bibliography with new references and chapter 4.0
All checks were successful
Build LaTeX Document / build_latex (push) Successful in 2m52s

This commit is contained in:
2025-03-18 18:22:21 +01:00
parent c37719b88f
commit 686a272064
3 changed files with 168 additions and 39 deletions

View File

@@ -1,4 +1,27 @@
@misc{activitypubActivityPubRocks,
@article{Blum2021,
title = {WebRTC - Realtime Communication for the Open Web Platform: What was once a way to bring audio and video to the web has expanded into more use cases we could ever imagine.},
volume = {19},
ISSN = {1542-7749},
url = {http://dx.doi.org/10.1145/3454122.3457587},
DOI = {10.1145/3454122.3457587},
number = {1},
journal = {Queue},
publisher = {Association for Computing Machinery (ACM)},
author = {Blum, Niklas and Lachapelle, Serge and Alvestrand, Harald},
year = {2021},
month = feb,
pages = {7793}
}
@misc{acestreamAnnouncementStream,
author = {},
title = {{A}nnouncement! {A}{C}{E} {S}tream; {N}ew era of {T}{V} and {I}nternet broadcasting --- oldforum.acestream.media},
url = {http://oldforum.acestream.media/index.php?topic=1479.0},
year = {},
note = {[Accessed 28-09-2023]}
}
@misc{activitypubActivityPubRocks,
author = {},
title = {{A}ctivity{P}ub {R}ocks! --- activitypub.rocks},
howpublished = {\url{https://activitypub.rocks/}},
@@ -6,7 +29,7 @@
note = {[Accessed 04-Apr-2023]}
}
@misc{ai4businessDataTroppo,
@misc{ai4businessDataTroppo,
author = {Federica Maria Rita Livelli},
title = {{A}{I} e big data, troppo potere nelle mani di pochi: il dibattito - {A}{I}4{B}usiness --- ai4business.it},
howpublished = {\url{https://www.ai4business.it/intelligenza-artificiale/ai-e-big-data-favoriscono-la-concentrazione-del-potere/}},
@@ -14,7 +37,15 @@
note = {[Accessed 01-Sep-2022]}
}
@misc{ARPANET_2022,
@misc{archiveStream,
author = {},
title = {{A}ce {S}tream --- web.archive.org},
url = {https://web.archive.org/web/20180618052904/http://info.acestream.org/#/about/acestream},
year = {},
note = {[Accessed 28-09-2023]}
}
@misc{ARPANET_2022,
title = {{ARPANET} --- {W}ikipedia{,} The Free Encyclopedia},
rights = {Creative Commons Attribution-ShareAlike License},
url = {https://en.wikipedia.org/w/index.php?title=ARPANET&oldid=1105956998},
@@ -63,6 +94,38 @@
journal = {Peer-to-Peer Networking and Applications}
}
@misc{framablogPeerTubeOut,
author = {},
title = {{P}eer{T}ube v6 is out, and powered by your ideas ! --- framablog.org},
howpublished = {\url{https://framablog.org/2023/11/28/peertube-v6-is-out-and-powered-by-your-ideas/\#-and-there-s-always-more-}},
year = {},
note = {[Accessed 18-03-2025]}
}
@misc{framablogPeerTubeV7,
author = {},
title = {{P}eer{T}ube v7 : offer a complete makeover to your video platform ! --- framablog.org},
howpublished = {\url{https://framablog.org/2024/12/17/peertube-v7-offer-a-complete-makeover-to-your-video-platform/}},
year = {},
note = {[Accessed 18-03-2025]}
}
@misc{githubGitHubWebtorrentbittorrenttracker,
author = {},
title = {{G}it{H}ub - webtorrent/bittorrent-tracker: {S}imple, robust, {B}it{T}orrent tracker (client \& server) implementation --- github.com},
howpublished = {\url{https://github.com/webtorrent/bittorrent-tracker?tab=readme-ov-file}},
year = {},
note = {[Accessed 18-03-2025]}
}
@misc{githubWebtorrentdocsfaqmdMaster,
author = {},
title = {webtorrent/docs/faq.md at master · webtorrent/webtorrent --- github.com},
howpublished = {\url{https://github.com/webtorrent/webtorrent/blob/master/docs/faq.md\#how-does-webtorrent-work}},
year = {},
note = {[Accessed 18-03-2025]}
}
@misc{ipfsIPFSWhitepaper,
doi = {10.48550/ARXIV.1407.3561},
url = {https://arxiv.org/abs/1407.3561},
@@ -82,6 +145,14 @@
note = {[Accessed 04-Apr-2023]}
}
@misc{joinpeertubePeerTubeStress,
author = {},
title = {{P}eer{T}ube stress tests: resilience lies in your peers! | {J}oin{P}eer{T}ube --- joinpeertube.org},
howpublished = {\url{https://joinpeertube.org/news/stress-test-2023}},
year = {},
note = {[Accessed 18-03-2025]}
}
@article{Multi-CDN:TowardsPrivacyinContentDeliveryNetworks,
doi = {10.1109/tdsc.2018.2833110},
url = {https://doi.org/10.1109/tdsc.2018.2833110},
@@ -96,6 +167,14 @@
journal = {{IEEE} Transactions on Dependable and Secure Computing}
}
@misc{novageMediaLoader,
author = {},
title = {{P}2{P} {M}edia {L}oader --- novage.com.ua},
howpublished = {\url{https://novage.com.ua/p2p-media-loader/technical-overview}},
year = {},
note = {[Accessed 18-03-2025]}
}
@article{Parameswaran2001,
doi = {10.1109/2.933501},
url = {https://doi.org/10.1109/2.933501},
@@ -136,6 +215,14 @@
language = {it-IT}
}
@phdthesis{ResearchBasedDataRightsManagementUsingBlockchainOverEthereumNetwork,
author = {Naz, Muqaddas and Javaid, Nadeem and Iqbal, Sohail},
year = {2019},
month = {09},
pages = {},
title = {Research Based Data Rights Management Using Blockchain Over Ethereum Network}
}
@misc{rfc5128,
series = {Request for Comments},
number = 5128,
@@ -159,6 +246,22 @@
note = {[Accessed 02-Apr-2023]}
}
@misc{tailscaleTraversalWorks,
author = {},
title = {{H}ow {N}{A}{T} traversal works --- tailscale.com},
howpublished = {\url{https://tailscale.com/blog/how-nat-traversal-works}},
year = {},
note = {[Accessed 18-03-2025]}
}
@misc{theoryBitTorrentSpecificationTheoryOrg,
author = {},
title = {{B}it{T}orrent{S}pecification - {T}heory{O}rg --- wiki.theory.org},
howpublished = {\url{https://wiki.theory.org/BitTorrentSpecification}},
year = {},
note = {[Accessed 18-03-2025]}
}
@inproceedings{theTwitchCase,
author = {Deng, Jie and Tyson, Gareth and Cuadrado, Félix and Uhlig, Steve},
year = {2017},
@@ -195,7 +298,7 @@
note = {[Accessed 11-Feb-2023]}
}
@misc{w3c,
@misc{w3c,
author = {W3C},
title = {What is the difference between the Web and the Internet?},
howpublished = {\url{https://www.w3.org/Help/}},
@@ -203,6 +306,14 @@
note = {[Accessed 31-Aug-2022]}
}
@misc{webBuildBackend,
author = {},
title = {{B}uild the backend services needed for a {W}eb{R}{T}{C} app  |  {A}rticles  |  web.dev --- web.dev},
howpublished = {\url{https://web.dev/articles/webrtc-infrastructure\#what-is-signaling}},
year = {},
note = {[Accessed 18-03-2025]}
}
@misc{wiki:ActivityPub,
author = {Wikipedia},
title = {{ActivityPub} --- {W}ikipedia{,} The Free Encyclopedia},
@@ -211,7 +322,7 @@
note = {[Online; accessed 05-April-2023]}
}
@misc{wikipediaLicenzainformatica,
@misc{wikipediaLicenzainformatica,
author = {Wikipedia},
title = {{L}icenza (informatica) - {W}ikipedia --- it.wikipedia.org},
howpublished = {\url{https://it.wikipedia.org/wiki/Licenza_(informatica)}},
@@ -235,26 +346,10 @@
note = {[Accessed 09-Feb-2023]}
}
@phdthesis{ResearchBasedDataRightsManagementUsingBlockchainOverEthereumNetwork,
author = {Naz, Muqaddas and Javaid, Nadeem and Iqbal, Sohail},
year = {2019},
month = {09},
pages = {},
title = {Research Based Data Rights Management Using Blockchain Over Ethereum Network}
}
@misc{acestreamAnnouncementStream,
author = {},
title = {{A}nnouncement! {A}{C}{E} {S}tream; {N}ew era of {T}{V} and {I}nternet broadcasting --- oldforum.acestream.media},
url = {http://oldforum.acestream.media/index.php?topic=1479.0},
year = {},
note = {[Accessed 28-09-2023]},
}
@misc{archiveStream,
author = {},
title = {{A}ce {S}tream --- web.archive.org},
url = {https://web.archive.org/web/20180618052904/http://info.acestream.org/#/about/acestream},
year = {},
note = {[Accessed 28-09-2023]},
@misc{wikipediaWebRTCWikipedia,
author = {},
title = {{W}eb{R}{T}{C} - {W}ikipedia --- en.wikipedia.org},
howpublished = {\url{https://en.wikipedia.org/wiki/WebRTC}},
year = {},
note = {[Accessed 18-03-2025]}
}

View File

@@ -11,9 +11,6 @@
\usepackage{colorprofiles}
\usepackage[a-2b,mathxmp]{pdfx}
\usepackage{biblatex}
\bibliography{Biblio.bib}
\usepackage{hyperref}
\hypersetup{
colorlinks,
@@ -22,6 +19,9 @@
urlcolor={blue!100!black}
}
\usepackage{biblatex}
\bibliography{Biblio.bib}
\usepackage{graphicx}
\usepackage{geometry}
@@ -68,8 +68,6 @@
\usetikzlibrary{arrows}
\usepackage{titlesec}
\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{3}
\newenvironment{usecaseenv}{
\def\arraystretch{2}
@@ -544,17 +542,53 @@ Queste metriche possono essere visualizzate attraverso dashboard Grafana o altri
\chapter{Verifica empirica delle prestazioni P2P di PeerTube}
Nel novembre 2023, il team di PeerTube ha pubblicato un articolo in cui sostiene che la loro implementazione P2P può ridurre il carico sul server fino all'80% in condizioni ottimali. L'articolo presenta i risultati di test condotti con diversi numeri di peer e configurazioni.
A dicembre 2023, il team di PeerTube ha pubblicato un articolo in cui va ad analizzarne le prestazioni facendo degli `stress test' per verificare se la tecnologia P2P integrata nel sistema sia effettivamente in grado di ridurre il carico sui server con circa 1000 utenti connessi contemporaneamente, in quanto, secondo i dati raccolti da Twitch nel 2022, coprivano il 99\% dei casi di utilizzo della piattaforma.
Principali affermazioni dell'articolo:
\
Per realizzare test veritieri, il team ha simulato 1.000 spettatori simultanei utilizzando 1.000 browser Chrome, ciascuno con un indirizzo IP pubblico IPv6 dedicato. Questo è stato realizzato tramite `Selenium grid', un software di automazione e testing per i browser, affiancato da Docker su cloud Hetzner e successivamente con un potente server fornito da Octopuce.
La scelta di 1.000 spettatori è significativa poiché copre la stragrande maggioranza delle dirette streaming su piattaforme importanti come Twitch, suggerendo che PeerTube può essere adeguato per un'ampia gamma di casi d'uso.
In condizioni ottimali, l'aspetto P2P di PeerTube dovrebbe ridurre la larghezza di banda necessaria per trasmettere un video in diretta di un fattore da 3 a 4, standa quanto detto degli sviluppatori di PeerTube.
\
Sono stati condotti 4 scenari di test principali:
\begin{itemize}
\item Con 10 peer, il carico sul server viene ridotto del 30-50%
\item Con 50 peer, la riduzione raggiunge il 60-70%
\item Con 100+ peer, si può arrivare all'80% di riduzione
\item L'impostazione "High Latency" migliora ulteriormente l'efficienza P2P
\item Live streaming con impostazione `Normal Latency'
\item Live streaming con impostazione `High Latency'
\item Live streaming con impostazione `High Latency' e 50\% dei peer con P2P disabilitato
\item Un normale video `on-demand'
\end{itemize}
Tuttavia, l'articolo non fornisce dettagli sufficienti sulla metodologia utilizzata né rilascia gli strumenti per riprodurre i test in modo indipendente.
su una macchina virtuale con:
\begin{itemize}
\item 4 vCore i7-8700 CPU @ 3.20GHz
\item 4 GB di RAM
\item 1 Gbps di banda
\end{itemize}
I dati dei test sono stati raccolti tramite OpenTelemetry e Grafana, con metriche come:
\begin{itemize}
\item Percentuale di dati trasferiti via P2P vs. dal server
\item Utilizzo di CPU
\item Comportamento in condizioni di rete variabili
\item Numero di spettatori
\end{itemize}
con i quali, infine, sono stati in grado di dimostrare che PeerTube è in grado di gestire 1.000 spettatori simultanei con un carico minimo sui server, grazie alla tecnologia P2P integrata in quanto la quantità di dati trasferiti via P2P è progressivamente aumentata con il tempo fino a raggiungere un rapporto del 75\% dei dati totali trasferiti per i video in diretta e del 98\% per i video `on-demand'.
\begin{figure}[H]
\centering
\includegraphics[width=\textwidth]{images/chrome_Mqt9TamrBT.png}
\caption{PeerTube conclusioni sullo stress test.}
\end{figure}
Tuttavia, l'articolo non fornisce dettagli sufficienti sulla metodologia utilizzata né rilascia gli strumenti specifici per riprodurre i test in modo indipendente. \cite{joinpeertubePeerTubeStress}
\
Perciò abbiamo deciso di creare un sistema di test automatizzato che possa riprodurre i test descritti nell'articolo originale.
\section{Metodologia per la verifica empirica}

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB