Cross-Layer

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire


Indice

Il Concetto Cross-Layer

Per consentire la comunicazione tra i nodi delle reti, la maggior parte dei sistemi di telecomunicazione sono organizzati in una pila di strati funzionali (stack), disposti uno sull’altro. Lo scopo di ogni strato è di offrire determinati servizi agli strati immediatamente superiori, astraendo i dettagli della pila sottostante e i dettagli funzionali dei servizi offerti [1].

Pur riconoscendo all’architettura stratificata meriti indiscutibili, tuttavia permane il desiderio, oltre alla necessità, di operare su di essa un’ottimizzazione [2]. Al fine di ottenere un miglioramento dell’attuale modello risulta interessante la possibilità di trarre vantaggio da uno scambio di informazioni nell’ambito della stessa pila protocollare, tra gli strati non adiacenti; ovvero abilitare la comunicazione Cross-Layer (CL).

Ciò è rilevante soprattutto nelle comunicazioni radio per la natura stessa del mezzo trasmissivo; tuttavia esistono studi che in passato hanno evidenziato come lo scambio di informazioni CL possa risultare vantaggioso, anche nelle normali reti via cavo [6],[8]. L’idea fondamentale del concetto Cross-Layer è di introdurre la capacità, nei vari protocolli di comunicazione, di scambiarsi informazioni per adattarsi agli specifici stati del collegamento della rete.
Non si vogliono più prendere solo delle contromisure preventive o meccanismi di controllo successivi ad un determinato evento verificatosi nella rete, bensì si cerca di decidere in modo interattivo con essa sfruttando le informazioni di tutti gli strati.

In relazione al punto di osservazione (utente o fornitore dei servizi/operatore di rete) il concetto Cross-Layer assume un significato e delle conseguenze diverse:

  • dalla prospettiva dell’utente, il Cross-Layer è applicato affinché siano rispettati tutti i requisiti di contratto;
  • dal punto di vista dei fornitori di servizi e dell’operatore di rete, il Cross-Layer ha lo scopo di migliorare l’utilizzo delle limitate risorse disponibili della rete di comunicazione e rendere efficiente l’intero sistema.



Classi Di Astrazione

Schematizzando, possiamo dunque suddividere le possibilità d’intervento Cross-Layer in tre principali classi di astrazione [9]:

  1. L’aggiunta di informazioni di scambio quali:
    • Parametri trasmissivi come le tecniche di codifica del canale (Forward Error Correction (FEC) ) e le impostazioni di ritrasmissione per lo strato di Collegamento;
    • Caratteristiche dell’applicazione (es. informazioni di stato o codifica delle sorgenti);
    • Cooperazioni di rete (es. le possibili variazioni di banda disponibile e ritardi);
    • Miglior interazione dell’utente (es. preferenze);
  2. La notifica di eventi, quali:
    • Cambiamenti (es. di un servizio di rete);
    • Previsione dei cambiamenti (es. degrado del QoS );
  3. La configurazione dinamica del sistema tramite interfacce.


Inoltre, ogni strato può interagire con gli strati disposti al di sopra o al di sotto di esso. Può risultare quindi vantaggioso classificare il singolo intervento CL come segue [10]:

  • Interazione dall’alto verso il basso: un qualunque intervento CL in cui l’informazione venga inviata ad un qualsiasi strato disposto inferiormente nella pila di comunicazione. Tipicamente può venire impiegato per orientare la connessione al particolare servizio. Ad esempio, nell’ambito di un’applicazione multimediale, si può comunicare allo strato di Collegamento la quantità accettabile di ritardo e di perdite, per adattare il meccanismo di correzione dell’errore all’interno dello strato di Collegamento stesso.
  • Interazione dal basso verso l’alto: analogamente, un qualunque intervento CL in cui l’informazione venga inviata ad un qualsiasi strato disposto superiormente nella pila di comunicazione. Tipicamente è necessario per adattare il servizio al particolare canale di comunicazione. Ad esempio, il TCP comunicando allo strato Applicativo la quantità di perdita dei pacchetti, può ottenere che lo strato Applicativo adatti al meglio il tasso di trasmissione.



Problematiche e Difficolta'

Da quanto esposto, dunque, risulta evidente che l’ampiezza e la complessità che introduce l’interazione Cross-Layer non è assolutamente da sottovalutare. Rompendo la stratificazione rigida della pila protocollare, non è più possibile considerare la definizione di un protocollo come un evento isolato, ma è necessario considerare l’effetto globale di ogni singola scelta eseguita in fase di progetto. Sviluppando un’architettura Cross-Layer si possono introdurre “cicli”, con conseguenze disastrose sulla stabilità della comunicazione [4]. Per evitare che ciò si verifichi, è dunque necessario osservare alcune precauzioni di carattere generale [4]:

  1. Legge delle “Unintended Consequences”: una volta infrante le suddivisioni tra gli strati bisogna considerare ogni modifica alla pila protocollare sotto un’ottica globale, poiché si introducono delle retroazioni che possono avere effetti potenzialmente anche disastrosi;
  2. Grafi di dipendenza: nell’identificare le dipendenze introdotte dal Cross-Layer, ci si può avvalere di un grafo di dipendenza, dove i nodi rappresentino i parametri rilevanti e gli archi (orientati) esprimano le dipendenze tra i parametri. Sovrapponendo i grafi di tutte le componenti Cross-Layer all’interno di una stessa architettura, è così possibile ottenere una mappa globale di tutte le dipendenze.
  3. Caoticità potenziale delle interazioni Cross-Layer: al crescere delle interazioni qualsiasi strategia può risultare inefficace. Ne consegue il rischio che il sistema diventi instabile, che aumenti esponenzialmente il sovraccarico software e che il sistema diventi difficile e oneroso da gestire ed ampliare. Occorre dunque selezionare accuratamente ogni singolo intervento CL da inserire.
  4. Separazione della scala temporale e stabilità: secondo la teoria del controllo è possibile assicurare la stabilità di un sistema dinamico su cui agiscono più regolazioni di una stessa variabile, assicurando scale temporali diverse per ogni adattamento retroattivo, in modo tale che tendenze divergenti della variabile controllata in un determinato intervallo, possano essere risolte dopo un determinato periodo di contesa, dipendente dalla prontezza dell’intera architettura CL [11].

Nel valutare l’applicazione della metodologia Cross-Layer, occorre quindi elaborare un compromesso tra miglior prestazione, tipicamente orientata per strategie a breve termine, e maggiore strutturazione architetturale, tipicamente orientata per le strategie a lungo termine. Quindi è necessario fornire all’architettura stratificata un’architettura di supporto per operare il metodo Cross-Layer che sia in grado di fronteggiare il più possibile a priori le problematiche esposte.

Riferimenti

  • [1] Andrew S. Tanenbaum, “Computer Networks 4th edition”, Prentience-Hall.
  • [2] International Telecommunication Union, Information Technology, “Open System Interconnection – Basic Reference Model: The basic model”, TU-T Recommendation X.200 (July 1994).
  • [4] V. Kawadia, P. R. Kumar, “A cautionary perspective on cross layer design”, IEEE Wireless Commun. Mag., 2004,
  • [6] D. Clark, D. Tennenhous, “Architectural Considerations for New Generations of Protocols”, ACM SIGCOMM, Philadelphia, PA, 1990 pp. 200-208 .
  • [8] G. Cooper, “The Argument for Soft Layer of Protocols”, Tech. Rep. TR-300, Massachussets Institute of Technology, Cambidge, MA ( May 1983 ).
  • [9] C. Prehofer, W. Kellerer, R. Hirschfeld, H. Berndt, K. Kawamura, “An Architecture Supporting Adaptation and Evolution in Fourth Generation Mobile Communication Systems”.
  • [11] K. J. Astrom and B. Wittenmark, “Adaptative Control”, Addison-Wesley, 1995.



Collegamenti esterni



This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net