PhD Thesis

Architetture Grid-Based per Distribuzione di Contenuti Multimediali con Garanzie di Quality of Service

Informazioni Generali

Autore: Giovanni Novelli ORCID: 0000-0003-4796-7596

Anno: 2008 Università: Università degli Studi di Catania Settore: Informatica - Grid Computing, Sistemi Distribuiti Pagine: 157

Abstract

La tesi di dottorato presenta un’architettura innovativa basata su Grid Computing per la distribuzione e provisioning di contenuti multimediali con garanzie di Quality of Service (QoS). Il lavoro si colloca nell’ambito dei sistemi distribuiti per la gestione efficiente di contenuti multimediali su larga scala.

Problematiche Affrontate

  1. Distribuzione Scalabile: Come distribuire contenuti multimediali su infrastrutture Grid mantenendo performance elevate
  2. QoS-Awareness: Garantire livelli di servizio appropriati in base alle esigenze degli utenti
  3. Transcoding Dinamico: Adattamento on-the-fly dei contenuti alle capacità dei dispositivi client
  4. Orchestrazione P2P/Grid: Integrazione tra paradigmi Peer-to-Peer e Grid Computing

Contributi Principali

1. Architettura Grid-Based per Content Distribution

Progettazione di un’infrastruttura che sfrutta le risorse computazionali distribuite del Grid per:

2. Sistema QoS-Aware

Implementazione di meccanismi per:

3. Transcoding Agents

Sviluppo di agenti software per:

4. Integrazione P2P/Grid

Architettura ibrida che combina:

Pubblicazioni Correlate

La ricerca svolta durante il dottorato ha prodotto diverse pubblicazioni scientifiche:

Paper Principali

  1. A Grid-Based Infrastructure to Support Multimedia Content Distribution HPDC-16, UPGRADE-CN ‘07 Workshop DOI: 10.1145/1272980.1272983

  2. A QoS-Aware Architecture for Multimedia Content Provisioning in a GRID Environment WOA 2006 Workshop, Catania

  3. Transcoding Agents for Multimedia Content Delivery in a Grid International Transactions on Systems Science and Applications, 2006

Temi di Ricerca

Architettura Tecnica

1. Architettura a Servizi (Class Diagram)

Architettura a servizi per online transcoding su Grid: TraS (Transcoder Selector) orchestra la selezione risorse consultando CoT (Content Tracer), CET/SET (Computing/Storage Element Tracer), THub (latenze rete), TraM (agenti attivi). I nodi Grid espongono CEM, NM, GM. L'agente di transcoding implementa i behaviour JADE per fetching, transcoding, streaming e QoS.

classDiagram direction TB class TraS { +gestioneRichiesteUtente() +selezioneRisorse(CE, SE) +euristicaProssimita() } note for TraS "Transcoder Selector" class CoT { +trovaRepliche(contenuto) +gestioneReplicazione() } note for CoT "Content Tracer" class THub { +monitoraggioLatenze() +getDistanzeRete() } note for THub "Transcoder Hub" class CET { +monitoraggioCaricoCE() +getInfoHardware() } note for CET "Computing Element Tracer" class SET { +monitoraggioCaricoSE() } note for SET "Storage Element Tracer" class TraM { +tracciaAgentiAttivi() +repositoryAlgoritmi() } note for TraM "Transcoder Monitor" class GridNodeServices note for GridNodeServices "Interface" class CEM { +notificaCarico() } note for CEM "CE Monitor" class NM { +pingAttivo() +misuraLatenza() } note for NM "Network Monitor" class GM { +sottomissioneJob() +trasferimentoDati() } note for GM "Grid Mediator" class TranscodingAgent { +FetchingBehaviour +TranscodingBehaviour +StreamingBehaviour +QoSBehaviour +CachingBehaviour } note for TranscodingAgent "JADE Agent" class Utente { +richiediContenuto() +riceviStream() } Utente --> TraS : PLAY Request TraS --> CoT : Cerca Contenuto TraS --> CET : Verifica CE TraS --> SET : Verifica SE TraS --> THub : Richiede Latenze TraS --> TraM : Cerca Agenti TraS ..> GM : Avvia Agente CET <-- CEM : Dati Carico THub <-- NM : Ping/Latenze GridNodeServices <|.. CEM GridNodeServices <|.. NM GridNodeServices <|.. GM TranscodingAgent --> GM : I/O Grid TranscodingAgent --> THub : Metriche Rete

2. Selezione delle Risorse (Sequence Diagram)

TraS orchestra interrogazioni parallele a CoT, CET, SET, THub, TraM per raccogliere informazioni su repliche, carico CE/SE, latenze rete, agenti disponibili. Applica euristica di prossimità per selezionare coppia ottimale (CE_best, SE_best). Gestisce replicazione se necessaria e rilassamento QoS in caso di risorse insufficienti.

sequenceDiagram autonumber participant U as 👤 Utente participant TraS as TraS participant CoT as CoT participant CET as CET participant SET as SET participant THub as THub participant TraM as TraM Note over U, TraS: Richiesta Utente U->>TraS: PLAY (Contenuto, QoS Minima) activate TraS par Raccolta Informazioni Parallela TraS->>CoT: Ricerca Repliche CoT-->>TraS: Lista Storage Elements and TraS->>CET: Richiesta Carico CE CET-->>TraS: Lista CE + CPU Load and TraS->>SET: Richiesta Carico SE SET-->>TraS: Stato I/O SE and TraS->>THub: Richiesta Latenze THub-->>TraS: Matrice Distanze and TraS->>TraM: Agenti Disponibili TraM-->>TraS: Lista Agenti Idle end TraS->>TraS: Calcolo Euristica Prossimità Note right of TraS: min[Lat(SE,CE) + Lat(CE,U) + Carico] alt Risorse Trovate TraS->>TraS: Seleziona (CE_best, SE_best) opt Replicazione Necessaria TraS->>CoT: Avvia Replicazione end else Risorse Insufficienti TraS->>TraS: Rilassamento QoS end TraS-->>U: Conferma / Inizio Streaming deactivate TraS

3. Transcoding e Streaming (Sequence Diagram)

Ciclo di vita dell'agente di transcoding: riceve INITIATION da TraS, esegue pipeline asincrona per ogni chunk (fetching parallelo al transcoding), streaming RTP verso utente, caching opzionale su SE vicino. Controllore fuzzy adatta parametri QoS in base a feedback ritardo/jitter.

sequenceDiagram participant U as 👤 Utente participant TraS as TraS participant TA as Transcoding Agent participant SE as Storage Element participant SE_C as SE Cache TraS->>TA: INITIATION (URI, QoS, Params) activate TA loop Per ogni Chunk Video par Fetching Asincrono TA->>SE: Richiesta Chunk n+1 SE-->>TA: Dati Chunk n+1 and Transcoding TA->>TA: Decodifica Chunk n TA->>TA: Encoding (QoS Target) end par Streaming TA->>U: RTP Stream (Chunk n) and Caching Opzionale TA->>SE_C: Salva Chunk Transcodificato end opt Adattamento QoS Dinamico U-->>TA: Feedback (Delay/Jitter) TA->>TA: Fuzzy Controller Adjustment Note right of TA: Regola bitrate/framerate end end TA->>TraS: Completamento + Statistiche TraS->>TA: TERMINATION deactivate TA

4. Casi d'Uso (Flowchart)

Visione di alto livello dell'interazione utente-sistema: richiesta contenuto multimediale innesca selezione intelligente risorse (TraS), avvio agente di online transcoding su Grid, streaming QoS-aware verso utente. Il sistema utilizza Grid gLite per job CPU-intensive, monitoraggio risorse e trasferimento file (GridFTP).

flowchart LR subgraph Actors U((👤 Utente)) G((⚡ Grid gLite)) end subgraph System["Sistema Sinergico MAS-Grid"] UC1[🎬 Richiesta Contenuto
Multimediale] UC2[🧠 Selezione Intelligente
Risorse - TraS] UC3[⚙️ Online Transcoding] UC4[📡 Streaming
QoS-Aware] UC5[📊 Monitoraggio
Risorse e Rete] UC6[📦 Gestione Repliche
CoT] end U --> UC1 UC1 -->|include| UC2 UC2 -->|utilizza| UC5 UC2 -->|avvia| UC3 UC3 -->|genera| UC4 UC4 --> U UC3 -->|job CPU| G UC5 -->|interroga| G UC6 -->|GridFTP| G style UC1 fill:#ffd700,color:#000 style UC2 fill:#ff8c00,color:#fff style UC3 fill:#ff6347,color:#fff style UC4 fill:#9370db,color:#fff style UC5 fill:#4682b4,color:#fff style UC6 fill:#3cb371,color:#fff

Contesto Storico

La tesi è stata sviluppata nel periodo 2005-2008, quando il Grid Computing era una tecnologia emergente per il calcolo scientifico su larga scala. Il lavoro ha anticipato molti concetti che sono oggi alla base del:

Progetti Correlati

Alcuni progetti open source implementano concetti sviluppati nella tesi:

🚀 GAP - Grid Agents Platform

Libreria Java per simulare scenari di integrazione tra Multi-Agent Systems e Grid Computing. Estende GridSim per modellare agenti mobili FIPA-like, risorse distribuite e QoS-awareness.

Repository principale della ricerca di dottorato

💻 GitHub Repository 📖 Documentazione

Tecnologie: Java, GridSim, JADE-inspired agents, Discrete Event Simulation

Altri progetti correlati:

Download

📄 Tesi di Dottorato Completa

Documento PDF (157 pagine, 2.8 MB)

📥 Download PDF

© 2008 Giovanni Novelli - Università degli Studi di Catania
Disponibile per uso accademico e di ricerca

Rilevanza Attuale

Sebbene la tesi risalga al 2008, molti concetti rimangono attuali: