Wireless Network Politecnico di Milano 2014

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Wireless Network Politecnico di Milano 2014"

Transcript

1 Wireless Network Politecnico di Milano 2014

2 2

3 Prefazione Questo libro è stato scritto da studenti di Ingegneria delle Telecomunicazioni del Politecnico di Milano per tutti coloro che seguono il corso di Wireless Network tenuto dal prof. Antonio Capone. Un particolare ringraziamento per la realizzazione di questo libro va a Sebastian Troìa, Denny Tremolada, Andrea Mola e Nicola Pignatelli. Have fun! 3

4 4

5 Indice 1 Introduzione Wireless channel Spettro radio Antenne Modello di Friis propagazione in spazio libero Line-of-sight Propagation effects Modello a due raggi Modelli empirici (Cenni) Okumura-Hata: urban area Okumura-Hata: sub-urban & rural areas Okumura-Hata: propagation factor η Multipath fading Rayleigh fading Rice fading Shadowing Basic concepts Location update Paging Accesso multiplo

6 INDICE I Mobile Radio Network 27 2 Cell dimensioning Cell radius Trasmissione su un canale radio Voice coding Waveform codecs Source codecs (vocoders) Hybrid codecs Radio resources Multiplexing e accesso multiplo Modelli di condivisione delle risorse Traffic theory basics Performance delle mobile radio network Capacità e gestione delle risorse nei sistemi CDMA Single cell - uplink Multiple cells - uplink Downlink Capacità nei sistemi CDMA Mobility Handover Location update Reuse Frequency Reuse Modelli e algoritmi per assegnare le frequenze Planning Coverage planning

7 INDICE 7 GSM Architettura di sistema Radio interface Normal burst Access Burst Frequency Correction Burst Synchronization Burst Dummy Burst Logical channels Connection setup Voice coding Signaling User signaling Network signaling GSM signaling Numeri e identità Servizi di comunicazione in GSM Procedure di signaling Registrazione e Location Update Call setup Handover GPRS Gestione della mobilità Gestione delle sessioni Esempi di procedure UMTS Core network UMTS network Rel UMTS network Rel

8 INDICE UMTS network Rel UMTS protocol Radio interface LTE 173 II Wireless Internet WLAN Allocazione dello spettro WLAN basics IEEE standard Componenti IEEE Medium Access Control (MAC) Accesso al canale Controllo degli errori Interframe spacing Distributed Coordination Function (DCF) Point Coordination Function (PCF) (cenni) Procedura di accesso PCF (cenni) Syntax of IEEE MAC layer Network management Scanning Associazione Sincronizzazione Gestione della potenza Autenticazione Cifratura Physical layer Evoluzione del layer fisico b

9 INDICE a g n e Mesh networking WPAN Bluetooth Formato del pacchetto Versioni di BT ZigBee WMAN Protocolli PHY Duplexing MAC sublayer MAC header Bandwidth Request MAC header Network topologies IEEE OFDM MultiPoint-to-MultiPoint (Mesh) Centralizzata Distributed IEEE e OFDMA Multiple access Accesso schedulato Exhaustive polling Gated polling Limited polling

10 INDICE Polling in Bluetooth Accesso random Protocollo Aloha Protocollo Aloha a singolo buffer CSMA (Carrier Sense Multiple Access) Scheduling centralizzato Wireless fair queuing IP mobility Gestione della mobilità a livello applicativo DDNS (Dynamic Domain Name System) SIP (Session Initiation Protocol) Gestione della mobilità a livello di rete Mobile IP TCP wireless Ad-hoc Routing nelle MANET Flooding per inviare i dati Flooding del controllo dei pacchetti Protocolli Reattivi

11 Capitolo 1 Introduzione 1.1 Wireless channel In generale le comunicazioni wireless sono peggiori di quelle via cavo, a causa di alcuni fattori: attenuazione dovuta alla distanza; attenuazione dovuta agli ostacoli; propagazione su percorsi multipli Spettro radio Dato un generico segnale s(t) = cos(2πft + ϕ) è possibile calcolare la sua lunghezza d onda λ = c f, dove: Velocità della luce c = m/s; Frequenza f del segnale; Le onde radio si possono classificare per il proprio colore (Figura 1.1) e a seconda della frequenza vengono utilizzate in diversi campi (Figura 1.2). 11

12 CAPITOLO 1. INTRODUZIONE Figura 1.1: Divisione delle lunghezze d onda Figura 1.2: Utilizzo delle lunghezze d onda Mobile radio network Operano nell intervallo di frequenze [ ]M Hz (VHF - UHF), vengono utilizzate piccole (pochi cm) e semplici antenne, con una massima emissione di potenza intorno ad 1W così da poter coprire pochi km di superficie e penetrare i muri degli edifici. Collegamenti Point-to-point e satellitari Sfruttano un largo intervallo di frequenze [3 30]GHz (SHF), abbondante banda, ma alta attenuazione a causa degli eventi atmosferici e bassa penetrabilità. 12

13 CAPITOLO 1. INTRODUZIONE Frequenze Basse Bassa disponibilità di banda Grandi antenne Molte interferenze a causa di altri sistemi Alte Grande disponibilità di banda Spettro meno popolato Propagazione difficile a causa di ostacoli opachi Data wireless network (WLAN, WPAN, ecc.) Operano a 2.4GHz e 5GHz e subiscono interferenze da altri sistemi (forno a microonde, controlli remoti, ecc); in particolare intorno a 5GHz si ha anche attenuazione per pioggia e nebbia. 1.2 Antenne Le antenne sono dispositivi in grado di irradiare e catturare energia elettromagnetica; nelle comunicazioni bidirezionali la stessa antenna può essere usata per trasmettere e ricevere. Trasmissione Un antenna isotropica (puntiforme) trasmette un segnale di potenza P T uniformemente in tutte le direzioni (Figura 1.3). Figura 1.3: Antenna istropica 13

14 CAPITOLO 1. INTRODUZIONE La densità di potenza sulla superficie di una sfera centrata nella sorgente e con raggio d, è data da: F (d) = P T [ ] W 4πd 2 m 2 Consideriamo antenne in grado di concentrare la potenza soprattutto in alcune direzioni, mediante il guadagno g(θ) in direzione θ: dove P T g(θ) = P (θ)4π P T è la potenza trasmessa e P (θ) è la densità di potenza nella direzione θ alla distanza d = 1. Convenzionalmente assumiamo che, il guadagno massimo nella direzione principale dell antenna si ha per θ = 0. Guadagno dell antenna (Gain) É il rapporto tra la densità di potenza nella direzione di massima radiazione e la densità di potenza di un radiatore isotropo F (d) (sorgente puntiforme) alla distanza d = 1, di solito si misura in decibel over isotropic [dbi]. Direttività dell antenna (Directivity) É il rapporto tra la densità di potenza nella direzione di massima radiazione e la densità di potenza media alla distanza di riferimento escludendo le perdite. Quindi le antenne direzionali, aumentano la potenza ricevuta P T interferenze, ma sono difficili da implementare. e riducono le Detto g T il guadagno dell antenna, la densità di potenza nella direzione principale si calcola come: F (d) = P [ ] T g T W 4πd 2 m 2 dove il prodotto P T g T viene chiamato EIRP (Effective Isotropically Radiate Power), e rappresenta la potenza necessaria ad un radiatore isotropo per avere la stessa densità di potenza dell antenna direzionale. 14

15 CAPITOLO 1. INTRODUZIONE Ricezione La potenza catturata da un antenna dipende dalla densità di potenza e dalla sua area efficace A e = λ2, nel caso di un radiatore isotropo si ha: 4π P R = F (d)a e Assumendo che g(θ) sia uniforme nell angolo dell antenna (lobo principale della potenza di radiazione), questa formula può essere usata nei sistemi radio mobili dove trasmettitore e ricevitore non sono sempre allineati nella massima potenza di radiazione. Un antenna direzionale ha una capacità maggiore di catturare la potenza, e si esprime mediante un guadagno g R, da cui deriva la formula di Friis Modello di Friis propagazione in spazio libero ( ) 2 ( λ c P R = F (d)g R A e = P T g T g R = P T g T g R 4πd 4πfd P T è la potenza irradiata dal trasmettitore; g T e g R sono i rispettivi guadagni dell antenna di trasmissione e ricezione; λ è la lunghezza d onda; d è la distanza. L attenuazione della propagazione in spazio libero è rappresentata da: ( ) 2 λ L = 4πd Questa formula è valida in assenza di ostacoli e riflessioni tra il trasmettitore e il ricevitore. ) Line-of-sight Uno dei casi pratici in cui la formula della propagazione in spazio libero è valida: è la propagazione in linea di vista (Line-Of-Sight, LOS). La propagazione in spazio libero 15

16 CAPITOLO 1. INTRODUZIONE viene usata per le propagazioni satellitari (oltre 30 MHz, altrimenti avrei riflessioni dovute alla ionosfera) e nelle comunicazioni terrestri che usano antenne direzionali nell orizzonte radio. L orizzonte radio è diverso da quello ottico a causa della deviazione delle onde radio nella bassa atmosfera. L orizzonte ottico è pari a d = 3, 57 h, mentre quello radio è pari a d = 3, 57 k h, dove d è espressa in km, h è l altezza dell antenna in metri e k è una costante pari a 4/ Propagation effects La propagazione radio vicina alla superficie è affetta da attenuazione in spazio libero dovuta all atmosfera, agli ostacoli,... Inoltre ha altre differenze rispetto allo spazio libero: riflessioni, zone in ombra (shadowing), diffrazione (se incontra un ostacolo, si comporta come un emettitore lineare), diffusione (scattering, si comporta come una sorgente puntiforme). Figura 1.4: Effetti di propagazione (a) Diffrazione (b) Riflessione (c) Shadowing (d) Scattering 16

17 CAPITOLO 1. INTRODUZIONE 1.5 Modello a due raggi Se, per questi motivi, arrivano diverse copie dello stesso segnale, queste si combinano vettorialmente ( ritardo). In caso di propagazione con due raggi, uno diretto e uno completamente riflesso, è possibile calcolare in forma chiusa l attenuazione del segnale ricevuto. Per ipotesi, d >> h t, h R. La distanza coperta dal raggio diretto è pari a: Figura 1.5: Modello a due raggi d direct = d 2 + (h t h r ) 2, mentre quello riflesso è pari a d reflect = d 2 + (h t + h r ) 2. La differenza tra i 2 raggi è pari a 2 hth R, mentre la differenza di fase è ϕ = 4π hth R. d d La potenza ricevuta è pari a λ P R (d) = 4P T g T g R 4πd 2 sin 2 ( 2πh th R ) λd. Se 2πhth R λd 0, allora P R (d) = P T g T g R h 2 t h 2 R d 4 Il rapporto tra la potenza ricevuta e quella trasmessa è dato da: P R P T = g R g T h 2 t h 2 R d 4 Pertanto la potenza ricevuta decresce in maniera più veloce ( 1 d 4 ) con la distanza rispetto alla propagazione in spazio libero ( 1 d 2 ). La propagazione wireless viene modellizzata con un parametro η: P R = P T g T g R λ 2 16π 2 1 d η Si usano quindi modelli empirici con tecniche di simulazione. 17

18 CAPITOLO 1. INTRODUZIONE 1.6 Modelli empirici (Cenni) Ci sono diverse tecniche più complicate per la stima della potenza ricevuta che sono basate sulla modellizzazione dettagliata delle caratteristiche dell area in cui il segnale si propaga e sulla simulazione della propagazione (tecniche di ray tracing). Queste tecniche sono di solito molto complesse in termini di calcolo e difficoltà di utilizzo a causa della modellizzazione non accurata dell ambiente di propagazione. Per questo motivo, molto spesso si adottano modelli empirici che calcolano l attenuazione dovuta alla distanza con formule approssimate che catturano solo caratteristiche generali dell area di propagazione. Gli scenari di riferimento considerati sono le aree urbane (città piccole-medie-grandi) e aree rurali, combinazioni di modelli elementari (LOS, raggi riflessi,...) e usando un insieme di paramenti basati su un gran numero di misure empiriche. Si considerano parametri quali la frequenza, l altezza dell antenna, la distanza,..., e si introducono parametri di correzione dovuti a montagne, laghi, strade. Il primo modello è quello di Hata (1968), molto complesso con parecchi parametri. Il più famoso modello empirico che modellizza l attenuazione dovuta alla distanza è quello di Okumura-Hata (1980). Fornisce le formule di attenuazione in diversi scenari di riferimento: città grandi, medio-piccole e rurali, con distanze superiori al chilometro Okumura-Hata: urban area L p = logf 13.82logh T a(h R ) + (44.9 6, 55logh T )logd[db] dove f = frequenza in MHz (valida da 150 a 1500 MHz); h T = altezza della base station (in m); h R = altezza del terminale mobile (in m); a(h R ) = parametro correttivo dovuto al tipo di area: 18

19 CAPITOLO 1. INTRODUZIONE Grandi città: a(h R ) = 3.2[log 10 (11, 75h R )] Città medio-piccole: a(h R ) = [1.1 log 10 f 0, 7]h R [1.56 log 10 f 0, 8] d = distanza in km Okumura-Hata: sub-urban & rural areas Si calcola partendo dalla formula delle aree urbane (da cui ottengo L P ): Sub-urban: L path = L P 2[log 10 f 28 ]2 5.4 Rural: L path = L P 4, 78[log 10 f] log 10 f Okumura-Hata: propagation factor η Il fattore di propagazione dipende solo dall altezza della base station: ( log h T ) = 10η Altri modelli empirici sono: Modello di Lee si usa per frequenze intorno a 900 MHz, con distanze superiori a 1 km, ed è più complesso del modello di Okumura-Hata; Modello di Walfish-Ikegami si usa per frequenze tra 800 e 2000 MHz, è valido per distanze tra 20 metri e 5 chilometri, è il modello di riferimento per i sistemi 3G. Modelli indoor ci sono diversi modelli, includono l attenuazione per la penetrazione dei muri, è basato su zone (spazi piccoli, medi, grandi) Riepilogo Riassumendo, un comune approccio per il modello di propagazione nei sistemi wireless è dato da una formula simile a quella di Friis con un coefficiente di propagazione η, che sta ad indicare in quali circostanze avviene la trasmissione; il valore η varia da 2 a 5, rispettivamente 2 quando siamo a spazio libero e 5 nelle zone urbane. 19

20 CAPITOLO 1. INTRODUZIONE 1.7 Multipath fading Nella propagazione tra trasmettitore e ricevitore, i segnali possono seguire percorsi differenti a causa della riflessione: in generale le basse frequenze attraversano oggetti (con bassa attenuazione), mentre quelle alte (oltre 5 GHz) vengono riflesse. Come detto per il modello a 2 raggi, le repliche si combinano al ricevitore. Il segnale risultante dipende dal numero di repliche (N), dalle fasi relative (ϕ k ), dalle ampiezze (a k ) e dalla frequenza (f 0 ). Il risultato è: N e R (t) = a k cos(2πf 0 t + ϕ k ) k=1 Il segnale può essere attenuato, oppure amplificato. Se il terminale si muove, le caratteristiche del segnale composto variano con il tempo. I buchi dovuti al fading tendono a verificarsi regolarmente ad intervalli corrispondenti al tempo necessario per coprire metà della lunghezza d onda. In alcuni scenari semplificati è possibile dare una rappresentazione statistica del multi-path fading: da cui dalla fase si ottiene: e R (t) = N a k cos(2πf 0 t + ϕ k ) k=1 e R (t) = Xcos(2πf 0 t) Y sin(2πf 0 t) Rayleigh fading Per ipotesi non ci sono componenti dominanti (quindi non c è un path diretto, cioè non c è line-of-sight), ci sono un numero infinito di path e una fase casuale uniforme in [0:2π]. Le 2 componenti del segnale X e Y sono variabili gaussiani indipendenti: 1 f X (x) = f Y (x) 2πσ 2 (x m)2 e 2σ 2 La potenza P del segnale con ampiezza distribuita secondo Rayleigh ha una distribuzione esponenziale: f P (x) = 1 x 2σ 2 e 2σ 2, F P (x) = 1 e x 2σ 2 20

21 CAPITOLO 1. INTRODUZIONE dove 2σ 2 è la potenza media. La probabilità di outage (è sempre nell ordine di qualche punto percentuale) è la probabilità che la potenza del segnale sia sotto una data soglia di ricezione γ: F p (γ) = 1 e γ P 0 dove P 0 è la potenza media; da notare che è anche la probabilità di non ricevere il segnale Rice fading C è una componente dominante (cioè un path diretto), e un numero infinito di altri componenti con la stessa potenza. In questo caso solitamente l ampiezza del segnale è rappresentata da una variabile casuale di Rice: p(r) = r r2 + r 2 σ 2 e s rr s I 2σ 2 0 σ 2 dove r 2 s = potenza del raggio diretto e σ 2 = potenza totale degli altri raggi e I 0 è la funzione di Bessel del primo tipo e ordine 0. Il fattore K = r2 s σ 2 indica quanto le componenti dirette dominano le altre: se K = 0, allora abbiamo una distribuzione di Rayleigh. Riepilogo Il Rayleigh fading si usa quando non si ha una componente dominante e ne abbiamo molte. Il Rice fading si usa quando si ha una componente dominante e ce ne sono altre, ma non dominanti. 1.8 Shadowing Nella propagazione, il segnale attraversa gli ostacoli o ne è parzialmente riflesso e diffratto. Ciò genera un ulteriore attenuazione che è solitamente indicata con il nome di shadowing. Questo è un fading lentamente variabile che cambia solo quando il movimento è sufficientemente grande da modificare le componenti del segnale. In 21

22 CAPITOLO 1. INTRODUZIONE pratica lo shadowing è usato per modellizzare tutti gli altri effetti non catturati dai modelli basati sulla distanza e dal multi-path. Lo shadowing è solitamente modellato come una variabile casuale log-normale x. Così la potenza in db (valor medio P db ) ha una componente di attenuazione Z = log(x), che è una variabile gaussiana con deviazione standard σ db, che ha solitamente valore compreso tra 0 e 12 db. f z (x) = 1 2πσdB e (x P db) 2 /2σ 2 db Probabilità di outage: dobbiamo convertire la soglia in un altra per la distribuazione normale: g = P db γ 2σdB P rob = [1 erf(g)] 2 = erfg(g) Basic concepts Le reti wireless sono soprattutto reti di accesso. Le reti backbone composte da collegamenti radio point-to-point non sono solitamente considerate reti wireless. Le reti di accesso wireless sono più impegnative e hanno molte differenze fondamentali rispetto alle reti di accesso cablate. La prima differenza principale è che il mezzo trasmissivo è broadcast. Nel centralized broadcast channel (Figura 1.6a) sarebbe sempre possibile comunicare direttamente, ma alcune comunicazioni vengono proibite a priori (ad esempio le chiamate tra cellulari, che devono comunque passare per la base station). L access point è fisso (a sua volta connesso a una rete cablata), e i terminali accedono mediante punti mobili di accesso. La copertura cellulare è ottenuta dalle BS (o Access point), che forniscono accesso radio alle Mobile Station (MS), all interno di un area di servizio chiamata cella. Nel distributed broadcast channel (Figura 1.6b), tutti parlano con tutti (connessioni mobile-mobile), ad esempio le reti a sensori. Nelle operazioni multi-hop, ogni nodo fa da router (cioè invia informazioni). Tra le principali differenze tra reti cablate e wireless, ci sono: 22

23 CAPITOLO 1. INTRODUZIONE Figura 1.6: Broadcast Channel (a) Centralized (b) Distributed Condivisione del mezzo trasmissivo : ci sono quindi meccanismi di accesso multiplo (bisogna evitare overlapping) e il riutilizzo delle risorse radio (in aree differenti, altrimenti non avrei abbastanza spettro); Canale radio : il canale è caratterizzato da caratteristiche variabili, e schemi avanzati di modulazione e coding. Inoltre sono possibili interferenze se segnali provenienti da altre BS, e che utilizzano le stesse frequenze, colpiscono la BS; Mobilità dell utente : bisogna garantire che la connessione rimanga attiva anche quando l utente si muove e passa da una cella all altra. La gestione della mobilità adotta procedure differenti in base allo stato dell utente: IDLE (nessuna chiamata attiva): viene tracciata la posizione dell utente (selezione della cella, location update, paging = comunicazione tra la base station e il dispositivo); ACTIVE: handover (viene cambiato il canale - cioè frequenza e slot di tempo - mantenendo attiva la comunicazione); Location update Nelle reti wireless, gli utenti possono muoversi nelle aree di servizio, muovendosi tra le celle. Ciò richiede un routing adattivo delle informazioni basato sulla posizione dell utente nella rete. Tutte le reti wireless hanno un insieme di meccanismi di gestione della mobilità per tracciare la posizione dell utente. Le base station trasmettono 23

24 CAPITOLO 1. INTRODUZIONE periodicamente informazioni generali di sistema su un canale broadcast, i terminali scansionano i canali e ricevono le trasmissioni, quindi scelgono la cella migliore, di solito in base alla potenza del segnale. Un insieme di celle formano una Location Area, su cui si basa il tracciamento della posizione dell utente (viene salvata la LA in un database): quando un terminale (nello stato IDLE) si muove in una LA differente, inizia una procedura di location update. Le informazioni nel database vengono usate per instradare le chiamate in ingresso nei dispositivi Paging Quando bisogna instradare una chiamata a un terminale, si recupera dal database la LA attualmente visitata, quindi comincia la procedura di paging, in cui tutte le base station nella LA inviano in broadcast un messaggio di paging contenente l ID dell utente chiamato: quando il terminale risponde, la chiamata viene instradata. La gestione della mobilità avviene a livello 2 (se siamo nella stessa rete) o a livello 3 (se siamo in reti differenti), ad esempio usando MobileIP Accesso multiplo Ci sono diversi flussi informativi che condividono lo stesso canale fisico: se c è una sola stazione trasmissiva, c è multiplazione (tipico problema nel downlink - BS utenti mobili - dei sistemi cellulari), se invece ci sono diverse stazioni (una per flusso), si parla di accesso multiplo (tipico problema in uplink - utenti BS - nei sistemi cellulari). E inoltre necessaria una tecnica di duplexing per condividere i canali di uplink e downlink. Le risorse radio sono limitate e non possono essere dedicate esclusivamente a un canale in una cella, e le stesse risorse vengono usate in celle sufficientemente lontane per non avere interferenza. Rimane comunque il problema del tradeoff tra numero di canali e qualità dei canali. L accesso multiplo include anche multiplazione e duplexing e avviene a: LIVELLO FISICO: un canale è diviso in sottocanali usando parametri fisici (frequenza, tempo, codice), si ha una gestione statica delle risorse; 24

25 CAPITOLO 1. INTRODUZIONE LIVELLO LOGICO: i pacchetti sono distribuiti in base alle informazioni logiche contenute nell header dei pacchetti, si ha una gestione dinamica delle risorse. Di solito si usano tecniche combinate a livello fisico e logico. FDM/FDMA : la banda disponibile viene divisa in sottobande e assegnata a diversi sottocanali. E una tecnica semplice utilizzata in tutti i sistemi; TDM/TDMA : il tempo è diviso in slot, gruppi di N slot consecutivi sono organizzati in frame, e un sottocanale può usare un dato slot in tutti i frame. Serve un tempo di protezione (guard time) per evitare interferenza. Per ridurlo, si può inviare in anticipo se si conosce il ritardo di propagazione τ (lo si stima in modo dinamico e lo si segnala in risposta al dispositivo mobile); CDM/CDMA : i simboli sono moltiplicati per un codice (ortogonale in CDM, con una correlazione limitata in CDMA), che, nel caso di CDMA, espande la banda del segnale di un fattore n (detto spreading factor). Al ricevitore il segnale viene moltiplicato per il codice (DE-SPREADING), e l interferenza degli altri segnali si riduce di un fattore 1/n. A livello logico l accesso multiplo può essere gestito in maniera dinamica e distribuita usando protocolli di accesso multiplo. I primi protocolli sono stati disegnati per le LAN, al giorno d oggi i protocolli sono soprattutto usati nelle reti wireless (non più LAN cablate con un mezzo condiviso). 25

26 CAPITOLO 1. INTRODUZIONE 26

27 Parte I Mobile Radio Network 27

28

29 Capitolo 2 Cell dimensioning 2.1 Cell radius Quando dimensioniamo la rete, e calcoliamo il raggio di copertura di una base station radio, dobbiamo tener conto del maximum path loss L p = P T P T H (P T = potenza trasmessa (L p è la massima perdita accettata); P T H = soglia di ricezione, cioè la sensibilità del ricevitore). Il raggio viene calcolato a partire dalla formula di L p in funzione della distanza e si può calcolare in due modi: 1. L p (d) = 10η log 10 d d 0 ; 2. L p (d) = modello di Okumura-Hata. Dove d 0 è la distanza di riferimento sulla quale noi vogliamo dimensionare il raggio d della cella, da ricordare che non è il raggio di massima propagazione. Esempio 1 Dimensionamento del raggio della cella: VEDI SLIDE MRN-EN-1 PAG 3 In generale, non si considera lo shadowing, che causa deviazioni dal valore stimato dai modelli di propagazione basati sulla distanza. E possibile considerare lo shadowing riducendo il raggio della cella, in modo da avere un margine di sicurezza sulle variazioni della potenza ricevuta. Si definisce quindi un margine di fading (M), pari 29

30 CAPITOLO 2. CELL DIMENSIONING alla differenza tra la potenza al limite della cella e la soglia di ricezione (entrambe espresse in dbm). Figura 2.1: Margine di fading (a) Densità di probabilità del Path loss (b) Esempio Poichè lo shadowing ha una distribuzione lognormale, che in db è gaussiana, abbiamo: f PdB (r)(x) = 1 2πσdB e (x P db (r)) 2 /2σ 2 db dove P db (r) è la potenza alla distanza r, e P db (r) è il valore medio. Si verifica outage quando la potenza è < P th (db): P out (r) = Pth f PdB (r)(x)dx = 1 2 erfc P db (r) P th 2σdB Riscrivendo la potenza in funzione del suo valore al limite della cella (r = R), si ottiene che: P out (r) = 1 2 erfc(m 10η log 10 r R ) 2σdB un valore tipico di P out (r) è pari a 0,05. Per calcolare l area di outage in un area circolare di raggio R, dobbiamo soltanto integrare: Pout(R) A = 1 R P out (r)2πrdr πr 2 0 Dopo una serie di passaggi e cambi di variabile, si dimostra che: P A out(r) = 1 2 erfc(q 1) 1 2 erfc(q 1 + Q 2 )e 2Q 2Q 1 Q

31 CAPITOLO 2. CELL DIMENSIONING dove Q 1 = ln(m) 2σ e Q 2 = 2σ η Quest area rappresenta la frazione di area non coperta. Per calcolare il raggio della cella: 1. Partendo dalla probabilità di outage richiesta, calcolata al limite della cella o sull intera area, e dai valori di σ e η, si calcola il margine M; 2. Dalla soglia in ricezione P th e dalla potenza trasmessa (o la potenza a una distanza di riferimento), si calcola il raggio R; Esempio 2 Dimensionamento del raggio della cella a partire da un margine di fading M dato: VEDI SLIDE MRN-EN-1 PAG DA 5 A 14 Bisogna ora affrontare il problema del fading: esistono 2 tipologie di fading: slow fading : si verifica quando il tempo di coerenza del canale è grande rispetto ai vincoli di ritardo del canale. In questo regime, il cambiamento di ampiezza e fase imposto dal canale può essere considerato costante nel periodo in questione. Lo slow fading può essere causato dallo shadowing, in cui una grande costruzione (collina, edificio,...) oscura il path principale del segnale tra il trasmettitore e il ricevitore. La variazione nella potenza ricevuta causata dallo shadowing viene spesso modellata da una distribuzione lognormale. Questa situazione si affronta semplicemente prendendo un margine nella soglia di potenza. fast fading : si verifica quando il tempo di coerenza del canale è piccolo rispetto ai vincoli di ritardo del canale. In questo regime, l ampiezza e la fase cambiano notevolmente in base alle variazioni del canale. Questo problema si affronta usando codici di correzione a livello fisico, che fanno riferimento al valore medio e non a quello istantaneo; 31

32 CAPITOLO 2. CELL DIMENSIONING 2.2 Trasmissione su un canale radio Aumentare la potenza significa aumentare anche l interferenza. I codici correttivi FEC permettono di correggere i bit errati aggiungendo bit ridondanti al flusso trasmesso. Se trasmetto n bit, di cui k sono di informazione e (n-k) sono ridondanti, si definisce rate del codice il rapporto k/n. I codici FEC aumentano le performance BER. Se tutti gli errori sono concentrati in una parola, probabilmente supererò il valore e, se li divido, ottimizzo la correzione, quindi posso correggerne di più. Inoltre, se trovo un errore, probabilmente ce ne sono altri nelle vicinanze. I codici possono essere usati anche solo per rivelare gli errori, senza correggerli: ad esempio, se troviamo errori in un segmento di voce codificata, è possibile cancellare il segmento e utilizzare i campioni corretti per interpolare il segnale. Se il tipo di servizio e il sistema lo permettono, è possibile utilizzare tecniche di ritrasmissione (ARQ). Nei sistemi cellulari la presenza di elevata interferenza e di altre fluttuazioni di potenza dovute alla propagazione hanno spinto verso un uso basso di codici FEC. L uso di codici FEC permette di ridurre il valore minimo di SNR e SIR (Interference Ratio) tollerato dalle trasmissioni, al costo di una ridondanza aggiuntiva nel flusso di bit. La capacità del canale può essere raggiunta solo utilizzando codici, tuttavia il canale radio mobile è variabile nel tempo, e non è possibile ottenere facilmente conclusioni generali. Le performance dei codici dipendono dalla statistica degli errori. Le curve BER ideali dei codici FEC assumono un rumore gaussiano bianco con errori indipendenti (canali memoryless). In realtà i canali radio dei sistemi cellulari tendono a generare errori correlati, dovuti alle variazioni di canale, fluttuazioni del segnale e interferenze (se la potenza ricevuta è alta, ci sono pochi errori, se diminuisce, gli errori aumentano). L efficienza dei codici diminuisce se gli errori sono correlati: per questo si usano meccanismi per lo shuffling dei bit trasmessi (bit interleaving, Figura??). Nel caso di trasmissione digitale, la propagazione su cammini multipli causa altri problemi: i differenti ritardi delle repliche dei segnale che raggiungono il ricevitore (delay spread) allargano nel tempo l impulso di risposta del canale, e ciò può generare 32

33 CAPITOLO 2. CELL DIMENSIONING Figura 2.2: Bit interleaving ISI. L impatto del delay spread può essere valutato calcolando il suo valore efficace: 1 n τ RMS = n (τi 2P i) τd 2 τ d = τ i = ritardo del path i; P i = potenza ricevuta dal path i; n = numero di path. P i i=1 i=1 n τ i P i i=1 n P i i=1 L inverso del delay spread fornisce la banda coerente: se è maggiore della banda del segnale, allora il delay spread non ha impatto sulla ricezione. Se invece la banda coerente ha dimensione comparabile o minore di quella del segnale, allora il delay spread genera ISI, con la degradazione in ricezione (il canale distorce il segnale). In questo caso, per superare la distorsione di frequenza del canale, è necessario equalizzarlo con un filtro appropriato in ricezione. L equalizzazione può basarsi sulla stima 33

34 CAPITOLO 2. CELL DIMENSIONING del canale basata su sequenze di simboli noti (come nel GSM), ma può anche essere cieca. 2.3 Voice coding Esistono diversi tipi di codec: Waveform codecs Non ci sono informazioni a priori sul segnale generato. Si richiedono la banda B del segnale, e il massimo rumore di quantizzazione tollerabile. Alta qualità, bassa complessità, basso ritardo (un solo campione), robustezza agli errori e al rumore di fondo. Pulse Code Modulation (PCM) : C = 64 kb/s; Figura 2.3: Tipologie di PCM (a) Differential PCM (b) Adaptive PCM Differential PCM (DPCM) : i campioni sono correlati, è possibile stimare i campioni successivi conoscendo i precedenti, e trasmettere solo la differenza tra il valore predetto e quello reale. A causa della correlazione, la varianza della differenza è minore, e richiede meno bit per la codifica; Adaptive PCM (APCM) : in questo caso lo step di quantizzazione varia, per permettere una successiva riduzione della banda richiesta per un dato SNR. 34

35 CAPITOLO 2. CELL DIMENSIONING Sub Band Coding (SBC) : il segnale vocale viene suddiviso in sottobande mediante filtri, il segnale di ogni sottobanda viene codificato con tecniche come ADPCM (Adaptive Differential Pulse Code Modulation). Il vantaggio è che è possibile usare meno bit per quelle bande in cui l orecchio umano è meno sensibile (è tollerabile un maggior rumore di quantizzazione). Una buona qualità è kb/s, con ritardo e complessità maggiori. Figura 2.4: Sub Band Coding (SBC) Source codecs (vocoders) É basata su modelli di generazione della voce umana. I modelli permettono di rimuovere la ridondanza fino all informazione minima necessaria per riprodurre la voce. E caratterizzata da alta complessità, alto ritardo (i processori non sono abbastanza veloci), ed è sensibile agli errori, al rumore di fondo e ai suoni non umani. La voce umana viene modellizzata (fonema), approssimata tramite un filtro i cui parametri variano periodicamente. Il segnale di ingresso può essere una sequenza di impulsi (vocal sounds) o un rumore bianco. Un esempio di vocoder sono i vocoder lineari (LPC), che usano modelli con parametri discreti con un filtro lineare. Ad intervalli regolari (10-20 ms) i parametri dei modelli vengono stimati e trasmessi. La stima dei parametri è basata sulla varianza dell errore. Il decoder usa i parametri ricevuti per sintetizzare un filtro e riprodurre la voce. Ciò comporta un alto ritardo, dovuto alla segmentazione, all analisi e alla sintesi. La qualità è accettabile, anche se non naturale (limitazione nei modelli + problemi con il rumore di fondo), i suoni sono metallici, ma il vantaggio è che c è un basso bit rate (2,4 kb/s). 35

36 CAPITOLO 2. CELL DIMENSIONING Hybrid codecs I codici ibridi riempiono il gap tra i vocoder e le waveform. I più popolari usano lo stesso approccio dei LPC, ma ottimizzano alcuni parametri, come i segnali di ingresso (usando il segnale di errore). Esempi: MPLP (Multipulse-Excited Linear Prediction); RPE (Regular Pulse Excitation, usato nel GSM, 13 kb/s); CELP (Code Excited Linear Prediction): la sequenza di input viene scelta da un insieme di sequenze precodificate (code-book), ottenute da processi gaussiani. Il problema principale è il lungo ritardo dovuto alla procedura di ricerca della sequenza ottima nel database: si cerca nel codebook la parola che minimizza l errore, e si invia il suo ID, il ricevitore cerca la parola con quell ID e ottiene il segnale. 36

37 Capitolo 3 Radio resources Lo spettro assegnato dalle autorità di regolazione per i sistemi di accesso radiomobile è condiviso tra tutte le comunicazioni tra i terminali e le base station. Questa risorsa condivisa deve essere divisa in qualche modo tra i flussi informativi (FDMA, per creare le portanti, e TDMA). Dividendo lo spettro radio, otteniamo canali radio fisici. Nel caso di traffico voce (GSM), si usa un approccio a divisione di circuito (nei sistemi 2G e 3G), e ad ogni cella è assegnato un canale fisico (canale traffico dedicato). Lo stesso approccio è usato per i servizi dati a commutazione di circuito. Per i pacchetti dei servizi data (GPRS), i canali possono essere condivisi in modo dinamico tra i diversi flussi (canale di traffico condiviso). Altri canali sono usati per scopi di controllo (informazioni tra terminali e dispositivi di controllo, signaling,...). Diversi flussi di informazione condividono lo stesso canale fisico: se c è solo una stazione che trasmette, si parla di multiplexing, se ci sono parecchie stazioni che trasmettono (una per flusso), si parla di accesso multiplo. 3.1 Multiplexing e accesso multiplo Al layer fisico, l accesso multiplo consiste nel dividere un singolo canale in sottocanali usando parametri fisici (frequenza, codice,...), attraverso una gestione statica delle risorse. Invece, al livello logico, l accesso è basato sulle informazioni logiche dell header del pacchetto, e utilizza meccanismi distribuiti di coordinazione, con una gestione 37

38 CAPITOLO 3. RADIO RESOURCES dinamica delle risorse. Nei sistemi reali, si combinano tecniche differenti di accesso multiplo, a livello fisico e logico. F DM/F DMA: la banda viene divisa in sottobande e assegnata a diversi sottocanali, è una tecnica semplice usata sostanzialmente in tutti i sistemi; T DM/T DMA: il tempo è diviso in slot, gruppi di N slot consecutivi sono organizzati in frame, ogni sottocanale usa un dato slot in tutti i frame. Figura 3.1: TDMA Viene usata nei segnali digitali, per cui, dato un canale digitale di rate C (bit/s), otteniamo timeslot multipli del tempo di bit t b = 1/C. La durata del frame è pari a T = Nn i /C, se ci sono N slot in un frame. Uno slot, se è composto da n i bit, ha una durata pari a T i = n i /C. Il rate del sottocanale è c = C/N(bit/s). Un problema è rappresentato dal guard time T g, ovvero un periodo di tempo successivo alla trasmissione durante il quale il terminale non trasmette al fine di evitare interferenze con le trasmissioni degli altri terminali. Per ridurlo, possiamo compensare il ritardo di propagazione τ anticipando la trasmissione (ovviamente devo conoscere τ, stimandolo in modo dinamico e segnalandolo al terminale mobile). 38

39 CAPITOLO 3. RADIO RESOURCES Figura 3.2: GUARD TIME Possiamo utilizzare canali distribuiti, in cui le trasmissioni possono essere sincronizzate a un ricevitore e sovrapposte ad un altro. In questo caso si ha che T g = 2max[τ ij ]. Figura 3.3: GUARD TIME 2 L efficienza η è pari a η = T i T i +T g, cioè η = 1. L efficienza dipende quindi dal 1+ Tg T i rapporto Tg T i : diminuisce quando aumenta la distanza (poiché aumenta T g, aumenta il rate del canale o diminuisce la durata dello slot). I canali possono avere rate differenti: se ad ogni sottocanale viene assegnato un solo slot per frame, i rate di trasmissione sono gli stessi, se invece si usano frame più complessi, in cui ad un canale possono essere assegnati più slot, i rate di trasmissione possono variare. Ciò si 39

40 CAPITOLO 3. RADIO RESOURCES ottiene utilizzando una gerarchia di frame (con frame e superframe), attraverso una struttura gerarchica. CDM/CDMA: i simboli (bit) nel canale sono moltiplicati per un codice: in CDM i codici sono ortogonali, in CDMA hanno correlazione limitata. Figura 3.4: CDM In CDMA, il codice espande la banda del segnale di un fattore n (n = numero di chip nel codice = SPREADING FACTOR, SF). Figura 3.5: SPREADING FACTOR 40

41 CAPITOLO 3. RADIO RESOURCES Al ricevitore, il segnale viene moltiplicato per il codice, e ciò riporta la banda alla dimensione originale, riducendo di un fattore 1/n l interferenza degli altri segnali. Le risorse radio sono condivise tra i diversi flussi di comunicazione tra le base station e i terminali (utenti). In downlink, abbiamo la multiplazione di flussi verso gli utenti mobili, in uplink abbiamo l accesso multiplo alle stazioni mobili. 3.2 Modelli di condivisione delle risorse Indipendentemente dal modo in cui le risorse condivise vengono suddivise, il numero di sottocanali per cella è limitato. Tranne casi speciali (allocazione dinamica dei canali e CDMA), il numero di canali è fisso. Il numero di chiamate simultanee in una cella è limitato e, quindi, è possibile che quando arriva una nuova chiamata, non ci siano più canali disponibili nell interfaccia radio (quindi la chiamata viene rifiutata). Questo caso è diverso dal classico sistema telefonico, dove le chiamate non possono essere respinte all interfaccia di accesso. Per valutare le performance a livello di chiamata sono necessari strumenti di teoria del traffico 3.3 Traffic theory basics Il traffico al tempo t è il numero di chiamate (oppure messaggi, pacchetti,...) a(t) attivi sul canale al tempo t. Il traffico medio in T è A(t) = 1 a(t)dt Abbiamo T T Figura 3.6: Traffico medio quindi che T a(t)dt = i A(T ) = 41 a(t)dt T = T X i i n. n T X i in T. Quindi si ha che A(T ) = λ(t )X(T ), indicando con λ

42 CAPITOLO 3. RADIO RESOURCES la frequenza media di arrivo delle chiamate (chiamate/s) e X la durata media delle chiamate (s). Nel caso in cui le trasmissioni non possono sovrapporsi, il traffico è la frazione di tempo in cui il canale è occupato. In realtà, il traffico istantaneo a(t) è un processo casuale. A(T) è una variabile casuale, di solito consideriamo la media statistica (valore atteso) E[A(T)]. In condizioni di stazionarietà la media non dipende da T: E[A(T )] = A, quindi A = λx. A è adimensionale (è un numero), ma convenzionalmente si misura in Erlang. Il traffico massimo che può essere servito dal sistema è un parametro importante. Nel caso di canale singolo, il massimo traffico permesso dal protocollo (tra 0 e 1) è anche l efficienza nell uso del canale. In un sistema di servizio, le richieste di servizio arrivano secondo un processo di arrivo casuale. Ogni richiesta è caratterizzata da un tempo di servizio richiesto al servente per servire la richiesta. In aggiunta, può essere presente un sistema di attesa (coda), dove le richieste attendono che un servente diventi disponibile. I sistemi di servizio sono caratterizzati in base al processo di arrivo e di servizio, e alle policy di servizio e gestione delle code. Il processo di arrivo descrive gli istanti in cui gli utenti (o le richieste) arrivano al sistema. Il processo è un insieme di punti con distanza Y 1, Y 2,...,Y n,... La ddp dell interarrivo Y è a(y), la funzione di ripartizione è A(y) e la trasformata di Laplace è A (S). L interarrivo medio è m y = E[Y], e quindi la frequenza media di arrivo è λ = 1 m y. Non tutte le richieste che arrivano al sistema possono essere accettate: alcune di queste possono essere rifiutate a causa della congestione del sistema. λ a è la frequenza delle richieste accettare nel sistema, λ p è la frequenza delle richieste rifiutate. Il tempo di servizio è il tempo necessario per un servente che lavora a velocità costante per completare il suo servizio. Il processo di servizio è descritto dai tempi di servizio X 1, X 2,...,X n,..., con ddp b(x), funzione di ripartizione B(x), trasformata di Laplace B (s) e valor medio m x = E[x]. Il processo di Poisson è il più semplice processo che descrive un insieme di punti (ad esempio gli arrivi di richieste di servizio) nell asse dei tempi. E descritto da N(t, t+τ), cioè il numero di punti nell intervallo [t, t+ τ]. Il processo di Poisson è descritto da 3 assiomi: 1. La probabilità che ci sia un punto in un intervallo infinitesimo dt è: 42

43 CAPITOLO 3. RADIO RESOURCES P [N(t, t + dt) = 1] = λdt + ω(dt), dove λ indica la frequenza del processo (punti/unità di tempo), e ω(dt) è un infinitesimo di ordine superiore di dt; 2. La probabilità che ci sia più di un punto in un intervallo infinitesimo dt è: P [N(t, t + dt) > 1] = ω(dt); 3. Il numero di punti in intervalli disgiunti sono variabili casuali indipendenti; La probabilità che il numero di eventi in un intervallo tra t e t+τ è data da: P [N(t, t + τ) = k] = (λτ)k k! e λτ. Gli intervalli T tra punti di Poisson sono variabili casuali indipendenti con ddp esponenziale: p T (t) = λe λt. Se un processo ha questa proprietà, è un processo di Poisson (questa è una condizione necessaria e sufficiente). Il servizio può essere gestito in maniera differente, ad esempio: Singolo servente con velocità costante, o velocità variabile; Serventi multipli in parallelo, con diverse regole di assegnamento serventerichieste; Scenari più complesse con serventi multipli; La coda può avere capacità finita o infinita: in caso di coda finita, le richieste possono essere scartate quando la coda è piena. Le policy possibili includono: FCFS (first come first served); LCFS (last come first served); RO (Random Order); Policy più complesse basate sulle classi di richiesta; I parametri principali delle performance per i sistemi di servizio sono: 43 il processo di conteggio, dato il numero di richieste N(t) nel sistema al tempo t; il processo di conteggio della coda N c (t) (numero di richieste in attesa nella coda al tempo t);

44 CAPITOLO 3. RADIO RESOURCES N s (t) = N(t) N c (t), numero di richieste nel servizio al tempo t; V i, tempo speso nel sistema dalla richiesta i; W i, tempo di attesa della richiesta i (ovviamente V i = W i + X i ); La maggior parte dei sistemi di servizio sono descritti completamente dal processo N(t): il processo N(t) è continuo nel tempo, cioè le transizioni possono accadere in ogni istante di tempo. N(t) ha valori discreti. La probabilità di stato π i (t) è definito come la probabilità che al tempo t ci siano i richieste nel sistema, ed è formalmente scritto come π i (t) = P [N(t) = i]. Il vettore Π(t) = π i (t) è il vettore delle probabilità di stato del sistema di servizio. Un processo con valori discreti è chiamato catena. Una catena è detta catena di Markov (Markov Chain, MC) se vale la seguente proprietà: P {X(t n ) = x n X(t 1 ) = x 1, X(t 2 ) = x 2,..., X(t n 1 ) = x n 1 } = P {X(t n ) = x n X(t n 1 ) = x n 1 }. Ciò significa che se il processo al tempo t n 1 è noto, allora la descrizione statistica del processo nel futuro t n è indipendente dall evoluzione passata, cioè dai valori negli istanti precedenti. Per questo motivo, le MC sono dette processi senza memoria. Per le MC vale la seguente proprietà: P {X(t 3 ) = x 3 X(t 1 ) = x 1 } = P {X(t 3 ) = x 3 X(t 2 ) = x 2 }P {X(t 2 ) = x 2 X(t 1 ) = x 2 x x 1 }, cioè il teorema della probabilità totale applicato ai processi senza memoria. Al fine di descrivere l evoluzione del processo, si usa la matrice stocastica. La matrice stocastica è definita come P (t 1, t 2 ), e il suo generico elemento p jk (t 1, t 2 ) è la probabilità che si verifichi una transizione dallo stato j al tempo t 1 allo stato k al tempo t 2 : p jk (t 1, t 2 ) = P {X(t 2 ) = k X(t 1 ) = j}. La matrice P è detta stocastica perché tutte le righe hanno per somma 1. In generale, si ha che P (t 1, t 3 ) = P (t 1, t 2 )P (t 2, t 3 ). Usando il teorema della probabilità totale, abbiamo che π k (t 2 ) = π i (t 1 )p ik (t 1, t 2 ), che in i notazione matriciale diventa: Π(t 2 ) = Π(t 1 )P (t 1, t 2 ) Questo rapporto rappresenta l equazione dell evoluzione del processo da cui possiamo ottenere il vettore Π(t), che lo descrive completamente. Le catene tempo-omogenee sono caratterizzate da una matrice di transizione che non cambia nel tempo, cioè la probabilità di transizione non dipende dal tempo di inizio 44

45 CAPITOLO 3. RADIO RESOURCES ma solo dalla durata della transizione: Π(t 2 ) = Π(t 1 )P (t 1, t 2 ) Π(t 0 + t) = Π(t 0 )P (t 0, t 0 + t) Π( t) = Π(0)P ( t) Nel caso di catene tempo-omogenee, l equazione P (t 1, t 3 ) = P (t 1, t 2 )P (t 2, t 3 ) diventa P ( t + τ) = P ( t)p ( τ). Le equazioni della soluzione di una catena si ottengono dalla definizione: dp (t) dt = lim t 0 P (t+ t) P (t) dp (t), da cui t dt = P (t) lim t 0 P ( t) I t, dove Q è detta matrice delle fre- Dalla definizione abbiamo che Q = lim t 0 quenze di transizione. L equazione della soluzione è quindi: analogo abbiamo: dπ(t) dt P ( t) I, dove I è la matrice identità. t dp (t) dt = P (t)q. In modo = Π(t)Q. Questa equazione permette di ottenere l evoluzione transitoria del sistema dallo stato iniziale. Di solito siamo interessati allo stato stazionario: Π = lim t Π(t). Potremmo scrivere equazioni differenziali e poi risolvere il limite. Tuttavia, in alternativa, possiamo ricordarci che in condizioni di stazionarietà, la derivata del vettore delle probabilità è 0, cioè ΠQ = 0, che è un sistema di equazioni lineari. Dobbiamo soltanto identificare la matrice Q. Q è definita come P ( t) I p Q = lim. q t 0 t ij = lim ij ( t) p, e q t 0 t ii = lim ii ( t) 1. Assumendo che i processi t 0 t di arrivo e di servizio siano di Poisson, abbiamo che: q ij = λ ij, e q ii = λ ij. j i Usando i valori di q, possiamo scrivere il sistema lineare di equazioni per ottenere il vettore delle probabilità stazionarie. Notare che Q è singolare, quindi dobbiamo aggiungere un equazione addizionale, che è la relazione di coerenza: π i = 1. Data una MC con N stati, possiamo scrivere N-1 equazioni usando l equilibrio dei flussi (flow balance). Data una superficie chiusa in una MC, in condizioni di stazionarietà, il flusso di probabilità che entra nella superficie è uguale a quello uscente. 45 i

46 CAPITOLO 3. RADIO RESOURCES Questa proprietà ci permette di scrivere equazioni valide semplicemente analizzando la catena. Molti sistemi di servizio possono essere descritti usando processi di nascita e morte (birth-and-death). Usando il flow balance, possiamo facilmente scrivere: π k λ k = π k+1 µ k+1. Da ciò ricaviamo il sistema di soluzioni: π k = π k 1 0 π 0 = [1 + Ω j 1 j=1 i=0 i=0 λ i µ i+1 ; λ i µ i+1 ] 1, dove Ω è il numero di stati. Il risultato di Little è molto importante e di validità quasi generale: è una relazione tra il numero medio di richieste in ogni sistema (o sottosistema), e il tempo medio speso nel sistema stesso: E[N] = λ a E[T ] (T = tempo, N = numero di richieste nel sistema, λ a = rate di arrivo di richieste). Per un sistema di servizio completo: E[N] = λ a E[V ], per una coda E[N c ] = λ a E[W ], per i serventi E[S] = ρ = λ a, E[X s ] = l a m x. Il fattore di utilizzo (o fattore di carico) ρ di un server è la frazione di tempo in cui è occupato. Il fattore di utilizzo è pari alla probabilità di osservare il server occupato in un istante casuale. Dal risultato di Little, abbiamo che ρ = λ s m x. Nel caso di m server identici, il fattore di utilizzo di ogni server è ρ = λ s m x /m, poiché ogni server ha una frazione 1/m di 46

47 CAPITOLO 3. RADIO RESOURCES richieste. 3.4 Performance delle mobile radio network Per modellizzare l arrivo di chiamate in una cella con n canali disponibili, possiamo usare un sistema di servizio senza coda (sistema a pura perdita) e n server, simile a una coda M/M/n/0. La catena associata è la seguente: Figura 3.7 Da ciò si ricava che: λπ k 1 = kµπ k, π k = λ 1 µ k π k 1 = A k π k 1 = Ak k! π 0 Dall equazione di coerenza: n π k = 1, abbiamo che: k=0 e quindi n k=1 A k k! π 0 = 1 π 0 = n 1 π i = n A i i! k=1 La probabilità di scartare una chiamata è uguale alla probabilità di blocking del A k k! k=1 sistema (server pieni), ed è data dalla formula Erlang-B: A k k! B(n, A) = n A n n! k=0 A k k! 47

48 CAPITOLO 3. RADIO RESOURCES dove A = λt, λ è la frequenza di arrivo (chiamate/s) e T è la durata media della chiamata. La formula Erlang-B può essere scritta anche in modo ricorsivo: B(n, A) = AB(n 1, A) n + B(n 1, A) Il traffico scartato (rifiutato) è A p = AB(n, A), quello servito è A s = A(1 B(n, A)) = A A p, il fattore di carico dei server è ρ = A s n A(1 B(n, A)) =, 0 ρ 1 n Abbiamo considerato la multiplazione e le tecniche di accesso multiplo che permettono di dividere il canale in sottocanali. Per TDMA è possibile ottenere sottocanali con rate differenti, e ciò è particolarmente utile nelle reti radiomobili, dove vengono forniti servizi a rate differenti (voce, videochiamate,...). Per modellizzare il sistema a livello di chiamata, dove abbiamo servizi e sottocanali con rate differenti, si possono usare i sistemi multiservizio. Considero un sistema (cella) con capacità totale C. Le richieste di chiamata offerte al sistema sono divise in m classi di traffico (categorie) basate sul rate e sul tipo di sottocanale (ad esempio richieste di tipo 1 e richieste di tipo 2). La generica classe k usa un sottocanale che occupa la capacità d k. Ad esempio, la capacità C può essere data in numero di slot nel caso di TDMA, e d k può essere il numero di slot per frame usati dal sottocanale. 48

49 CAPITOLO 3. RADIO RESOURCES Esempio 3 Nell esempio, C = 2 (è la capacità del sistema, ad esempio il sistema può soddisfare al massimo 2 chiamate), d 1 = 1 (è il numero di slot utilizzati da un chiamata di tipo 1), d 2 = 2 (è il numero di slot utilizzati da un chiamata di tipo 2), λ 1, λ 2, µ 1, µ 2 (sono i rate rispettivamente di chiamata e di servizio). Figura 3.8 Per definizione non si possono avere transizione simultanee, ed ogni stato indica la capacità occupato dalle chiamata, si può notare che se si riceve una chiamata di tipo d 2, non è possibile ricevere altre chiamate in quanto la capacità C è saturata, invece è possibile ricevere fino a 2 chiamate di tipo d 1. Si ha che le probabilità di trovarsi in uno di questi stati sono pari a: π 1,0 = λ 1 µ 1 π 0,0, π 0,1 = λ 2 µ 2 π 0,0, π 2,0 = 1 2 π 0,0 = Invece le probabilità di rifiuto sono pari a: 1 ( 1 + λ 1 µ λ1 ) 2 2 µ 1 + λ 2 µ 2 ( λ1 µ 1 ) 2 π 0,0 Π r1 = π 0,1 + π 2,0, Π r2 = π 1,0 + π 2,0 + π 0,1 = 1 π 0,0 Π r = A 1Π r1 + A 2 Π r2 A 1 + A 2 dove A i = λ i µ i 49

50 CAPITOLO 3. RADIO RESOURCES E possibile mostrare che, anche nel caso generale, la catena ha una soluzione in forma chiusa per la distribuzione stazionaria: il vettore degli stati è n = {n 1, n 2,..., n m } le probabilità di stato stazionario sono dove G = n Ω m i=1 Π(n) = 1 G A i n i!, m i=1 A i n i! m Ω = {n n i d i C} G è una costante di normalizzazione e si ottiene calcolando l equazione di coerenza, invece in Ω non troviamo vettori con capacità superiore alla nostra capacità C. In seguito, le probabilità di blocking (e di dropping) per le diverse classi di traffico sono date da: dove B i = {n Ω Π ri = n B i π(n) i=1 m n k d k > C d i } k=1 è lo stato per il quale non si può accettare una chiamata aggiuntiva di tipo i La probabilità media di dropping è: Π r = m A i Π r1 i=1 m A i i=1 3.5 Capacità e gestione delle risorse nei sistemi CD- MA Nei sistemi TDMA multiportante come GSM, il numero di canali disponibili per cella, e quindi la capacità del sistema, dipende dal numero totale di canali, e dal fattore di riutilizzo di canale permesso dai limiti del SIR (Signal Interference Ratio, ovvero il rapporto segnale/interferenza). Se abbiamo un fattore di riutilizzo (reuse) Z (numero 50

51 CAPITOLO 3. RADIO RESOURCES di canali / K celle), il numero massimo di chiamate simultanee per cella è dato dal numero di canali N diviso per K. Lo schema di riutilizzo è tale da garantire il SIR (quindi la qualità) in ogni scenario. Quando i canali possibili per cella sono tutti occupati, nessuna chiamata può più essere accettata. Nei sistemi CDMA ogni canale condivide la stessa banda, e non c è schema di riutilizzo, e quindi la qualità (SIR minimo) deve essere garantita limitando il numero di chiamate simultanee per cella. Questo numero dipende dai limiti del SIR e dai parametri della trasmissione a spettro espanso. La probabilità di errore dipende dal rapporto tra l energia per bit E b e la densità spettrale di rumore N 0 : P e = 1 2 Q( E b N 0 ). Il rapporto tra E b e N 0 dipende dall allargamento della banda: E b = S R b [S è la potenza del segnale; R b = bit-rate]; N 0 = N B [N = potenza del rumore nella banda del segnale; B = banda del segnale]; E b N 0 = SNR G p [G p = processing gain]; G p = B R b (se il sistema non usa tecniche di spreading, B e R b sono comparabili, quindi G p 1); In CDMA B R b a causa del codice di allargamento (DS - Direct Sequence). Inoltre il codice FEC aumenta ulteriormente la banda (k bit di informazione e n > k bit trasmessi), quindi G p 1. Figura 3.9 Il rumore nei sistemi CDMA non è solo termico, ma soprattutto dovuto alle interferenze. Prima dello spreading il segnale è di poco superiore alle interferenze, ma dopo 51

52 CAPITOLO 3. RADIO RESOURCES elimino quella parte che va al di fuori della banda del segnale. Quindi il SNR (Signal Noise Ratio) deve essere rimpiazzato con il SINR (Signal Interference Noise Ratio): E b N 0 = SINR G p = S I + N G p, (I = interferenza; N = rumore) La potenza del segnale è data da S i = g i p i (g i = guadagno del canale; p i = potenza trasmessa), la potenza dell interferenza è data da I i = k i g k p k e quindi ( Eb N 0 ) i = g i p i g k p k + N G p k i Se aumentiamo p i per avere g i p i alto, allora anche E b N 0 è grande, e quindi il BER è basso, ma anche la potenza di interferenza è alta, quindi il BER degli altri segnali è alto. La situazione migliore è quella in cui la potenza ricevuta è la stessa per tutti i segnali: per avere ciò, devo regolare la potenza trasmessa, quindi i terminali vicini alla stazione (g i alto) trasmettono a bassa potenza, e quelli lontani ad alta potenza. Nei sistemi CDMA, il power control è fondamentale per garantire a tutti una buona qualità. Ci sono 2 opzioni per farlo: OPEN-LOOP: il terminale stima l attenuazione del canale ascoltando il canale broadcast a potenza fissa e regolando di conseguenza la potenza (si assume che il canale sia simmetrico); CLOSED-LOOP: il controllo viene eseguito dalla stazione ricevente, che invia comandi (aumentare o diminuire) in direzione opposta; L obiettivo è quello di mantenere costante il rapporto E b N 0 o la potenza ricevuta (i 2 obiettivi sono equivalenti nell uplink per singole celle) Single cell - uplink Se g i p i = g k p k = P r, i, k 52

53 CAPITOLO 3. RADIO RESOURCES allora: ( Eb N 0 ) i g i p i = g k p k + N G G p p = (n 1) + N P r k i dove n = numero di chiamate nella cella (cella isolata - solo accesso multiplo). Se n è grande, il rumore può essere trascurabile. Dato un vincolo minimo di qualità (in termini di BER), possiamo impostare il minimo E b N 0 e quindi calcolare il numero massimo di utenti per cella: n max 1 + G p ( E b N 0 ) min Tuttavia la voce ha anche intervalli di silenzio, durante i quali è possibile ridurre l interferenza interrompendo le trasmissioni. In questo caso, introduciamo il parametro ν f 1 = fattore di attività della voce n max Multiple cells - uplink G p ν f ( E b N 0 ) min In scenari con celle multiple, la stima della capacità è più complicata perché le potenze ricevute non sono uguali: ( Eb N 0 ) i = P R I intra + I inter + N G p (il CDMA espande il segnale e la banda, e ciò vale anche per i segnali trasmessi in celle differenti, quindi bisogna calcolare anche l interferenza tra celle differenti). Figura

54 CAPITOLO 3. RADIO RESOURCES ( Eb N 0 ) i = k M i,k i g i p i g k p k + l / M i g l p l + N G p = P R (n 1)P R + [M i = cella in cui c è la stazione i, l,k = indice della stazione]. l / M i g l p l + N G p In scenari semplificati è possibile calcolare l interferenza tra le celle. A volte può essere utile usare una formula approssimata, dove l interferenza tra le celle viene assunta pari a una frazione f dell interferenza all interno della cella stessa: ( ) Eb P R (n 1)P R (1 + f) + N G P N 0 i Downlink In downlink, i segnali sono trasmessi da una singola stazione, e quindi sono sincronizzati. Ciò permette di usare codici ortogonali per cancellare l interferenza da accesso multiplo al ricevitore (generato dai segnali nella stessa cella). In pratica, tuttavia, la propagazione in cammini multipli influenza l ortogonalità dei segnali a causa dello spread dei ritardi, quindi una parte di interferenza nella stessa cella è comunque presente: ( Eb N 0 ) i = P R αi intra + I inter + N G p(0 α 1) Se α è piccolo, allora le performance dipendono solo dall interferenza tra le celle e dal rumore. L espressione della capacità è complessa, e può essere ottenuta in forma chiusa solo in scenari semplificati. In generale, la capacità di downlink è molto maggiore di quella in uplink, e quindi per i servizi simmetrici (come la voce), l uplink limita la capacità totale del sistema. Il numero di codici ortogonali disponibili è pari al numero di chips per bit (spreading factor - SF) Capacità nei sistemi CDMA La capacità dei sistemi CDMA dipende dal SIR, e quindi dalle caratteristiche della propagazione radio e dal power control. Il power control limita la potenza trasmessa e può ottimizzare sia le condizioni di interferenza (se grido, gli altri non riescono a parlare) sia il consumo energetico. Il controllo closed-loop ha l obiettivo di mantenere 54

55 CAPITOLO 3. RADIO RESOURCES costante il SINR (o equivalentemente E b N 0 ), aggiustando la potenza trasmessa in modo che tutti i segnali abbiano le stesse qualità (BER) [questo approccio minimizza le potenze trasmesse]. Per farlo si utilizzano comandi di controllo (up, down), trasmessi in direzione opposta. Con questo approccio, la potenza di ogni segnale è dipendente da quella di tutti gli altri. Possiamo scrivere il SINR in questo modo: ( ) Eb g ib(i) P = i N 0 i α g kb(i) P k + g lb(i) P l + N G p k M b(i),k i l / M b(i) [g ij = fattore di guadagno del canale tra la stazione i e la base station j]. Possiamo riscrivere l espressione come: ( ) Eb g ib(i) P i G p [α g kb(i) P k + g lb(i) P l ] = N( E b ) i N 0 i N 0 k M b(i),k i l / M b(i) Questo è un sistema lineare di n equazioni e n variabili. Se il sistema ha una soluzione compatibile con i limiti di potenza di trasmissione, il controllo closed-loop converge alla soluzione. Se la soluzione esiste, ma alcuni limiti di potenza vengono superati, il closed-loop converge a un punto dove le potenze corrispondenti sono impostate al valore massimo, e il ( E b N 0 ) sarà più basso di quello richiesto. Se la soluzione non esiste, il closed-loop tenterà di aumentare le potenze fino al limite (un esempio è quello in cui le sorgenti sono vicine alla base station, e quindi trasmettono a bassa potenza, poi arriva una nuova stazione che trasmette con una potenza molto maggiore). Se il traffico (cioè il numero di utenti) aumenta, il sistema non è in grado di garantire le qualità ( E b N 0 ) a causa delle limitazioni in potenza (la soluzione esiste, ma non è raggiungibile), ed è detto limitato in potenza (aree rurali con grandi celle dove la copertura è limitata soprattutto dal rumore termico agli estremi della cella). Se, all aumentare del traffico, il sistema non ha più soluzione, il sistema è limitato dall interferenza (aree urbane con celle piccole e poca attenuazione). Quando il traffico è troppo alto, alcuni collegamenti hanno qualità bassa e la chiamata viene scartata: per evitare ciò, è necessaria una gestione delle risorse radio per limitare il traffico accettato. Lo stesso approccio è necessario anche per le sessioni di dati, anche se i servizi di commutazione di pacchetto sono più robusti, poiché possono usare la ritrasmissione in risposta alle basse qualità. 55

56 CAPITOLO 3. RADIO RESOURCES Nell open-loop power control, p i g ij = P target è costante per tutti. Da ciò ricavo che: p i = Ptarget g ij, quindi possiamo regolare p i in modo indipendente per ogni stazione. Invece, in uno schema closed-loop, SINR i = SINR target, quindi bisogna risolvere un sistema di n equazioni. Per farlo, diventa importante il ruolo di g ij. I terminali devono stimare l attenuazione, la BS invia periodicamente beacon di potenza costante, il terminale conosce il valore di questa potenza, quindi misurando la potenza ricevuta può ricavare l attenuazione. Riassumendo, per le single cell-uplink: p i g ij = costante = P target ; SRN = costante l SNR. P target (n 1)P target+n G p = d mantenere costante la potenza è uguale a mantenere Per le multiple cell-uplink: SNR = P target P target(n 1)+I inter +N G p. Sotto alcune condizioni, è uguale al single-cell. In generale, questo ragionamento non va bene per il downlink; se n è troppo grande, allora il sistema closed-loop non ha soluzioni. Se invece n è piccolo, allora raggiungiamo una soluzione con open-loop. In generale, c è il problema di come calcolare n max : se la nuova richiesta va oltre la capacità massima, la rifiuto (in questo caso devo calcolare in ogni momento la capacità utilizzata). Dobbiamo inoltre tenere conto anche dell interferenza. Nel caso di CDMA, non è facile capire quanti canali utilizzare (non c è una formula, ce n è una per il caso single cell, e una approssimata nel caso di multiple cell). Per questo motivo, si usa il CAC (Call Admission Control): si regola l accesso per garantire qualità alle connessioni attive e anche al nuovo utente. Nei sistemi cellulari, le risorse radio sono usate da connessioni multiple, e la qualità è associata al SIR (Signal-to-Interference Ratio). Nei sistemi TDMA (come GSM) con FCA (Fixed Channel Allocation), il controllo della qualità è basato su 2 meccanismi: nella fase di planning, un numero fissato di canali viene assegnato ad ogni cella in base allo schema di riutilizzo delle frequenze, in modo da garantire il SIR in tutte le condizioni; 56

57 CAPITOLO 3. RADIO RESOURCES nella fase operativa, il CAC semplicemente rifiuta le richieste di nuove chiamate quando tutti i canali sono occupati; Nei sistemi CDMA non c è uno schema di riutilizzo delle frequenze. Tutti i segnali condividono la stessa banda, e l interferenza è il principale fattore limitante per la qualità. L interferenza viene sia dalle altre celle (come nel TDMA) sia dai segnali nella stessa cella. La qualità dipende quindi dal SIR: SIR = SF P αi N +I OUT. La capacità non ha un limite rigido, ma dipende dal livello di interferenza, cioè il CAC deve garantire il SIR. Per farlo, significa che deve essere garantito sia a una nuova chiamata (se viene accettata), sia alle chiamate già attive. I limiti sono la disponibilità delle informazioni e i punti di decisione, ovvero il sistema che decide se accettare o meno la chiamata (non esiste un singolo punto centralizzato, ma uno in ogni BS, in quanto questo permette di impiegare meno tempo). I vantaggi sono la flessibilità delle risorse, e l adattabilità nelle condizioni di propagazione e distribuzione di traffico. Il meccanismo di power control è basato sull algoritmo closed-loop, per cui le potenze vengono aggiustate in modo che il SIR sia uguale al valore obiettivo. Perciò, in condizioni normali, il SIR è uguale al valore obiettivo per tutte le chiamate. Il power control e il CAC hanno lo stesso obiettivo: garantire il SIR prefissato. Tuttavia il power control può mantenere il SIR al valore obiettivo finché il traffico non diventa troppo alto. L obiettivo del CAC è quindi quello di accettare solo il traffico che il Power Control può gestire. Esistono diversi possibili stili di CAC: IDEAL CAC: calcola l equilibrio di potenza, e quando c è un altro utente, se la soluzione è accettabile, lo accetta. Per farlo, deve conoscere tutti i g ij (condizioni di propagazione) in un decision point, ma questo può diventare troppo complicato a causa delle troppe informazioni. Quindi si usano dei trucchi: si ammette l utente per poco tempo (secondi) e si valuta l evoluzione della rete [tuttavia non viene usato]; HARD LIMIT: si stima la capacità e si stabilisce un limite al numero di connessioni. Per ogni nuovo utente, viene aggiunto rumore addizionale (noise rise). 57

58 CAPITOLO 3. RADIO RESOURCES Un valore più alto di noise rise implica che più utenti sono stati ammessi alla rete, e ogni utente deve trasmettere una potenza maggiore per superare il livello di rumore. Ciò significa un path loss minore, e quindi una riduzione del raggio della cella [noise rise alto alta capacità minor area occupata]. Nel caso di CAC basato su un hard limit sul numero di celle, è possibile usare le formule della capacità di CDMA e i modelli di livello di chiamate già usati in TDMA. Nel caso di singolo servizio (voce), si può usare la formula Erlang-B per le probabilità di blocking della chiamata. Nel caso invece di servizio multiplo, bisogna analizzare nel dettaglio le formule della capacità. Esempio 4 Nel caso di singola cella, si può ricavare il numero di utenti a partire dal rate R: B 1 n max = 1 + ( E b N 0 ) min R R è variabile in base ai servizi, quindi lo si rende multiplo rispetto al rate base r: R = {r 1, r 2,..., r m } = {d 1 r, d 2 r,..., d m r} Se l interferenza ( E b N 0 ) è costante, dobbiamo modificare P, perché aumentare il rate significa trasmettere più potenza. Facendo riferimento alla potenza ricevuta: P I = b P 1 = ( E b N 0 ) min d 1 r B I P 2 = ( E b N 0 ) min d 2 r B I etc... Per una connessione di rate r: P j n jd j P P b quindi n j d j b, con C = b j Abbiamo sistemi limitati con servizi multipli [valeva anche con TDMA (timeslot)] lo possiamo usare con CDMA. C è calcolata con la formula di Viterbi al rate r. 58

59 Capitolo 4 Mobility Nelle MRN, gli utenti possono muoversi liberamente nell area del sistema cambiando la cella a cui sono associati: ciò pone ovviamente problemi di routing (sia per le chiamate sia per le sessioni dati). Tutte le procedure adottate dal sistema per permettere la mobilità agli utenti senza perdere la connessione prendono il nome di gestione della mobilità. Gli utenti, durante il movimento nell area di servizio, possono chiamare, essere chiamati e avere una sessione dati/chiamata attiva. Servono dunque meccanismi per tracciare la posizione degli utenti nella rete, e adattare di conseguenza il routing. Nel caso di servizi a voce, le procedure di gestione della mobilità differiscono in base allo stato dell utente: IDLE (nessuna chiamata in corso): l utente deve essere localizzato in modo da poter essere raggiunto nel caso di chiamata in entrata (Location Update, selezione della cella, reselection della cella = cambio della cella in modalità idle); ATTIVO (chiamata in corso): c è una connessione attiva che deve essere reinstradata ad ogni cambiamento di cella in modo da garantire una connettività continua, senza interruzioni. Il terminale sceglie in modo autonomo la BS in base al livello di segnale ricevuto dalle BS. Le BS periodicamente trasmettono messaggi broadcast su un canale di controllo comune: i messaggi includono informazioni di sistema e l ID della cella. Il 59

60 CAPITOLO 4. MOBILITY terminale scansiona le frequenze per ricevere messaggi in broadcast dalle BS vicine e sceglie la BS da cui riceve il segnale più forte. Il terminale continua a scansionare le frequenze, e ogni volta che viene ricevuto un segnale più forte, viene scelta la nuova cella. Nella selezione e reselection della cella vengono considerate anche altre informazioni di sistema (come l identificazione della rete). 4.1 Handover Questa è la procedura che permette a un terminale con una sessione attiva di cambiare la BS senza perdere la connettività. L handover comincia sempre a partire dalla rete, in base a misurazioni (potenza del segnale, qualità,...) effettuate sia dal lato rete sia da quello utente. Al fine di garantire connettività ed evitare perdita di informazioni, le procedure di handover devono essere veloci ed efficienti. La scelta delle soglie di attivazione dell handover è un elemento critico: Figura 4.1 RECEIVER TH : potenza minima del segnale per essere ricevuto (non è facile da calcolare, a causa di rumore,...); HANDOVER TH : valore della potenza per cui parte l handover; Se h è troppo piccolo, possiamo perdere la connessione, in quanto non c è abbastanza tempo per cambiare, se h è troppo grande, può accadere di eseguire troppe procedure di handover, anche quando non è necessario. 60

61 CAPITOLO 4. MOBILITY Figura 4.2 C è overlapping tra le varie celle. La cella è l area in cui una data BS è il server migliore (se mi baso solo sulla potenza del segnale). Nel disegno, la cella è l esagono evidenziato, di conseguenza la dimensione della cella è minore dell area di copertura (cerchio evidenziato). Un terminale rimane connesso alla BS finché arriviamo al limite del cerchio (punto rosso), ma lì subisce tanta interferenza. Se c è il rischio di dropping, la rete può scegliere per l handover. Sono possibili diversi approcci: SEGNALE PIÙ FORTE: se il terminale trova un segnale più forte, inizia la procedura di handover (vedi Figura 4.3 punto A). Il problema di questa soluzione è che, a causa delle fluttuazioni della connessione (interferenza, rumore,...) possono esserci passaggi ripetuti tra le BS (effetto ping-pong). SEGNALE PIÙ FORTE CON SOGLIA: se il segnale della BS precedente è sotto una data soglia, e la potenza della nuova BS è maggiore, inizia l handover (se la soglia è T 2, vedi Figura 4.3 punto B). Anche in questo caso, però, c è il rischio del ping-pong effect. SEGNALE PIÙ FORTE CON ISTERESI: se la potenza della nuova BS è maggiore, con una differenza h, inizia l handover (vedi Figura 4.3 punto C). 61

62 CAPITOLO 4. MOBILITY Figura 4.3 Ogni BS ha una lista di vicini, con il broadcast channel. Un altro criterio di scelta è la qualità delle chiamate (la potenza del segnale è buona, ma la chiamata no, a causa dell interferenza). Per misurare la distanza dalla BS, usiamo il ritardo di propagazione. Esistono 2 tipi di handover: HARD HANDOVER(GSM-2G): prima dell assegnazione della nuova risorsa, è necessario rilasciare quella vecchia (quindi una sola connessione attiva alla volta), la QoS è legata alla velocità con cui avviene l operazione ( 400 ms); SOFT HANDOVER(UMTS-3G): possibilità di ricevere segnali da più celle contemporamente (l utente è connesso contemporaneamente a più di una BS uso meno potenza e ho meno interferenza), quindi la riallocazione di risorse avviene senza rilascio delle precedenti. Quando è necessario un handover, un canale è rilasciato nella cella precedente, e un altro deve essere disponibile. Definiamo probabilità di fallimento dell handover (P hf ) la probabilità che una richiesta di handover sia rifiutata perché non ci sono canali disponibili, e probabilità di blocco (P b ) la probabilità che una nuova chiamata sia rifiutata. Se un sistema non fa distinzione tra richieste di handover e richieste di chiamata, allora P hf = P b [in generale, in una chiamata possiamo avere diversi handover, in quanto si ha handover quando la durata della chiamata è maggiore del tempo trascorso nella cella]. In generale, è più tollerabile bloccare le nuove chiamate piuttosto che scartare quelle già attive, quindi bisogna provare a privilegiare gli han- 62

63 CAPITOLO 4. MOBILITY dover. Alcuni canali vengono riservati per le richieste di handover: P hf viene ridotta, ma anche la capacità del sistema per le nuove chiamate viene ridotta (P b aumenta). Il dimensionamento dei guard channels può essere critico, e richiede stima di traffico e mobilità (quanti canali servono?). Se non usiamo guard channels, assumendo che i flussi siano di Poisson e indipendenti, se abbiamo m canali disponibili, il traffico è dato dalla formula Erlang-B: λ i = rate delle nuove chiamate; λ h = rate delle richieste di handover; A = λ i + λ h µ c 1 µ c = tempo medio di occupazione del canale (< della durata media del canale); Ipotizzo ora di avere g guard channels (quindi m g = c canali): definendo ρ i = λ i µ c, ρ h = λ h µ c, il sistema si sviluppa come una MC fino a c: Figura 4.4 π k = 1 k! (ρ h + ρ i ) k π 0 1 k c [accetto nuove e handover requests] 63 π k = 1 k! (ρ h + ρ i ) c ρ k c h π 0 c < k m [accetto solo handover requests] π 0 = c k=0 c+g P b = π k = k=c 1 (ρ h +ρ i ) k k! + c+g c k=0 k=c+1 (ρ h + ρ i ) c ρk c h k! (ρ h + ρ i ) c c+g (ρ h +ρ i ) k k! + c+g k=c+1 k=c ρ k c h k! (ρ h + ρ i ) c ρk c h k!

64 CAPITOLO 4. MOBILITY P hf = π c+g = c k=0 (ρ h + ρ i ) c ρ g h (c+g)! (ρ h +ρ i ) k + c+g k! k=c+1 (ρ h + ρ i ) c ρk c h k! Il modello per valutare le performance prende in ingresso i parametri λ h, λ i, µ c. Purtroppo questi parametri sono dipendenti tra loro, e dipendono dall intensità del traffico e dalla mobilità dell utente. Definisco: τ c = 1 µ c = media del tempo X c di occupazione del canale; τ h = 1 η = media del tempo X h speso dall utente in una cella; τ = 1 µ = media della durata X della chiamata. Se X e X h sono esponenziali, allora X c = min{x, X h } τ c = 1 µ c = 1 µ + η La probabilità che una chiamata richieda un handover è P h = µ µ + η Definisco ν il numero medio di handover per chiamata: ν = η µ Calcolo ora λ h (handover request) in funzione di λ i (nuove chiamate): per avere un handover request, le chiamate devono venire dai nodi vicini. Per ipotesi il traffico è uniforme: il numero di nuove chiamate accettate è pari a λ i (1 P b ). Se moltiplico per P h, ottengo la frazione di nuove chiamate nella cella che si muovono verso altre celle. La frequenza di arrivo di handover da altre celle è λ h, di queste ne vengono accettate λ h (1 P hf ), e la frazione di tempo che passa per fare un altro handover è P h [(1 P hf )λ h ]. Di conseguenza il rate con cui ricevo le richieste di handover è la somma del numero di utenti della cella che durante la chiamata necessitano di un handover, più 64

65 CAPITOLO 4. MOBILITY Figura 4.5 il numero di utenti che provenendo da altre celle richiedono l handover verso un altra cella. Da ciò: cioè λ h = P h [(1 P b )λ i + (1 P hf )λ h ] λ h = λ i P h (1 P b ) [1 P h (1 P hf )] Il problema è che P b e P hf sono i valori che vogliamo calcolare dalla MC. Per risolvere il problema, si adotta un approccio iterativo: 1. si assegnano valori iniziali a P b e P hf, e si calcola λ h ; 2. si risolve la MC e si comparano i risultati; 3. se la differenza rispetto ai valori iniziali è maggiore di una certa soglia, si settano i valori di P b e P hf secondo lo step 2, e si ritorna al punto 1, altrimenti mi fermo. In molti casi P b e P hf sono piccoli (cioè non rifiuto troppe chiamate/risposte di handover), per cui λ h ν λ i [l ipotesi va verificata risolvendo la catena]. La probabilità di fallimento dell handover non è però un parametro legato alla qualità del servizio (l utente non si accorge dell handover, a differenza di altre situazioni come la call drop). Dobbiamo calcolare la probabilità che una chiamata sia scartata a causa del 65

66 CAPITOLO 4. MOBILITY fallimento dell handover: P h P hf, [fallimento al 1 handover] P h P hf (1 P hf )P h, [fallimento al 2 handover] [...] Da ciò ricavo la probabilità di drop a causa del fallimento dell handover: P d = P h P hf i=0 (P h ) i (1 P hf ) i = P h P hf 1 P h (1 P hf ) ν P hf Dobbiamo ancora calcolare il parametro η come una funzione della velocità del terminale e della dimensione della cella, considerando un caso semplice con celle quadrate: Figura 4.6 Il numero di handover γ è dato dal numero di linee (orizzontali e verticali) attraversate. Si dimostra che γ = 4r πl, η = γ V r = 4V πl dove V è la velocità. Nel caso generale, con V = velocità media del terminale, L = perimetro della cella e S = area della cella, si ha che η = V L πs. 66

67 CAPITOLO 4. MOBILITY 4.2 Location update La Location Area è un entità topologica posta gerarchicamente al di sopra delle celle (è quindi un gruppo di celle). Un terminale IDLE è localizzato in base alla Location Area [e non in base alla cella], l ultima LA visitata viene salvata nel database della rete. Se un terminale idle si muove da una LA ad un altra, inizia una procedura di location update: l informazione sulla LA attualmente visitata da un terminale è usata dalla rete per instradare le chiamate in entrata. Ogni volta che cambiamo LA, quindi, il terminale informa di questo la rete (non le dice le coordinate, ma la LA). Per farlo, il terminale capisce la sua posizione leggendo il LOCATION AREA ID nel massaggio broadcast inviato dalla BS. PAGING: quando arriva una nuova chiamata, viene cercata nel DB la LA attualmente visitata, quindi comincia una procedura di paging. Ogni BS nella LA comincia a trasmettere un messaggio di paging con l ID del terminale in un canale broadcast: quando il terminale risponde sul canale di accesso, viene identificata la cella esatta e la chiamata viene instradata. Quant è la dimensione (in termini di numero di celle) più conveniente della LA? piccola: non serve paging, ma c è molto overhead e serve molto tempo per il location update; grande: poco location update, ma molto paging; Valuto ora come dimensionare le LA: un semplice metodo è basato sul calcolo del costo del signaling per utente. Considero celle quadrate di lato l, e LA quadrate con k k celle. Definisco ora: 67 C p = costo per messaggio di paging per cella per utente [ C u = costo per location update [ bytes update ]; bytes ]; mess celle λ = frequenza d arrivo di chiamate in ingresso (non in uscita) [ chiamate ora utente ]; U k = frequenza di location update per utente [ update ]; ora utenti

68 CAPITOLO 4. MOBILITY Il signaling cost risulta pari a: C(k, λ, u k ) = k 2 λc p + U k C u. Definisco ora altri parametri: m = numero medio di utenti che escono dalla location area nell unità di tempo; ρ = densità di utenti per unità di area; ν = velocità degli utenti (V = E[ν]); Si dimostra che: Ponendo allora m = ρ4klv π c(k, λ) = k 2 λγ + u 1 k, U k = m ρ(kl) = 4V 2 klπ = u 1 k C u = 1 e c(k, λ) = C(k, λ) C u [ho definito γ = C p C u, u 1 = 4V lπ ] A questo punto definisco (k, λ, u 1 ) = c(k, λ, u 1 ) c(k 1, λ, u 1 ). Il valore ottimo di k è il valore massimo per cui è negativo: Figura 4.7 La scelta di come dimensionare le LA dipende dalla tipologia di utente. Ecco qualche esempio: utenti che non si muovono: la miglior soluzione è un unica cella per LA (quindi LA piccole); 68

69 CAPITOLO 4. MOBILITY utenti che si muovono velocemente (car driver): un unica LA (LA grandi); utenti che ricevono poche chiamate al giorno: un unica LA (LA grandi); In generale bisogna tenere conto della velocità e del numero di chiamate [paging vs handover]. In generale abbiamo due categorie di utenti: utenti fermi e utenti in movimento. Possiamo avere due scenari: uno con pochi LA, l altro con tante LA. Se l utente conosce la propria categoria, la cella invia nei suoi messaggi broadcast i messaggi per entrambi gli scenari, e l utente accetta solo quello che appartiene alla propria categoria. Di conseguenza una cella appartiene ad una LA in uno scenario, e ad un altra nell altro scenario [una cella può appartenere a diverse LA, l utente deve sapere verso quale LA guardare]. 69

70 CAPITOLO 4. MOBILITY 70

71 Capitolo 5 Reuse 5.1 Frequency Reuse Le tecniche di accesso multiplo nei sistemi cellulari permettono non solo di creare sottocanali per differenti flussi/chiamate, ma anche di assegnare canali a celle differenti nella rete. Pensando alle migliaia di celle presenti nelle aree di copertura, le risorse dovrebbero essere divise in tanti piccoli pezzi. In realtà, dato il numero totale di canali disponibili per le diverse tipologie, non ci sono abbastanza canali anche assegnando un canale per cella (per le chiamate vocali abbiamo canali disponibili per 60 milioni di utenti in Italia). Per questo motivo è necessario il reuse, riuso delle risorse in regioni differenti, ma ciò genera interferenza con gli altri utenti che usano lo stesso canale (non solo rumore, ma anche interferenza). Per ipotesi le celle sono esagonali, ovviamente, a causa della posizione delle BS, della propagazione non uniforme dei segnali e degli ostacoli, la forma reale della cella è molto diversa, vedi Figura 5.1. L uso della forma esagonale è comunque un buon approccio, al fine di capire i principi base del reuse. Dopo aver pianificato la copertura della rete, la pianificazione della capacità avviene assegnando le risorse radio, ovvero le frequenze, ad ogni cella, quindi la quantità delle risorse assegnate alle celle determina la capacità del sistema. Da notare che le frequenze possono essere riutilizzate (reuse), ma devono essere sempre rispettati i vincoli sulla qualità del segnale, il che vuol dire mantenere il SIR 71

72 CAPITOLO 5. REUSE Figura 5.1: Rappresentazione grafica delle celle (a) Forma reale (b) Forma ideale (Signal to Interference Ratio) al di sopra di una soglia (threshold). Possiamo considerare un semplice modello con celle esagonali e traffico omogeneo, in questo caso le frequenze sono divise in K gruppi e assegnate a un gruppo di K celle, chiamato cluster. Il cluster è ripetuto nell area in modo regolare, un esempio è mostrato in Figura 5.4. Figura 5.2: Esempio di cluster (a) con K = 3 (b) con K = 4 Solo alcuni valore di K sono ammissibili, K = 1, 3, 4, 7, 9, 12, 13,..., dove l efficienza del riuso è pari a 1. K Dato il minimo valore del SIR, SIR min, noi ora ci possiamo calcolare il minimo valore di K, partendo dalla potenza ricevuta P r che è pari a: P r = P t G d η (5.1) 72

73 CAPITOLO 5. REUSE dove G è pari al guadagno d antenna. Adesso possiamo calcolare il SIR, ovvero il rapporto tra la potenza ricevuta P r e l interferenza ricevuta I, si assuma per ipotesi che il rumore è molto minore rispetto all interferenza, quindi trascurabile. Dalla Figura 5.3, è possibile notare che alcuni utenti appartenenti alla stessa cella K di un altro cluster, possono interferire con l utente all interno della cella centrale posto a distanza d dalla BS. Figura 5.3: Cluster model La potenza ricevuta di quest ultimo è: P r = P t G d η (5.2) quindi al fine di calcolare il SIR, calcoliamo l interferenza causata dagli utenti delle altre celle: con il SIR pari a: 6 i=1 SIR = P t G d η i (5.3) P t G d η 6 P t G d η i Per ipotesi si assuma inoltre che P t e G sono uguali si ha che i=1 (5.4) SIR = d η 6 i=1 d η i (5.5) 73

74 CAPITOLO 5. REUSE Supponiamo ora il caso pessimo approssimando quindi d i D e d = r, ottenendo: SIR r η 6D = 1 ( ) η 1 (5.6) η 6 R R è quindi un rapporto tra distanze, quindi un numero puro. Grazie ad una proprietà delle celle esagonali, risulta che: e quindi si ha che K min = K = R2 3 ( 6SIR ) 2 η 3 (5.7) (5.8) Come già detto in precedenza, il reuse viene effetuato perché non ci sono abbastanza canali, che vanno usati in regioni differenti per avere capacità sufficiente. Le comunicazioni radio sono dunque basate su schemi di modulazione e coding che lavorano correttamente se il SINR è sopra la soglia. In questo caso, sono possibili comunicazioni simultanee negli stessi canali in regioni differenti, si ha dunque che la capacità del sistema è data dal grado di parallelizzazione raggiunto, questo è un problema chiave nelle comunicazioni wireless, ed è diverso dal collegamento punto-punto dei canali dedicati. Questa è una caratteristica specifica delle reti wireless usate per l accesso; di solito, si riusano intere portanti dei sistemi TDMA, ma in generale si parla di riuso di risorse. Nel nostro caso semplificato, si può calcolare come dimensionare il riuso di frequenza semplicemente dimensionando il numero di celle in un cluster. semplificative fatte sono: Le ipotesi le distanze; solo il primo anello di interferenze; assenza di rumore termico; propagazione con solo path loss. L obbiettivo del dimensionamento è quello di garantire un buon SIR a tutti gli utenti e per questa ragione dobbiamo considerare i casi critici. Per includere il fast 74

75 CAPITOLO 5. REUSE fading e lo shadowing possiamo considerare un margine sul SIR min, come è stato fatto nel capitolo 2 (CELL DIMENSIONING). L approssimazione non è poi troppo lontana dalla realtà, bisogna capire perché la formula di K dipende solo da η e SIR (K min = (6SIR) 2 η 3 ). Come si misura la capacità di una rete di accesso wireless? Non possiamo basarci solo sul valore di K. Un modo migliore per calcolare la capacità potrebbe permettere di dimensionare il sistema quindi bisogna conoscere i flussi di traffico. Per calcolarlo devo conoscere il numero di utenti per area, e quindi K non è sufficiente. Una definizione di capacità è bit/s oppure numero di canali per unità di area. Chiaramente si può essere più precisi considerando altri fattori, come ad esempio il tempo o le variazioni di traffico. Come si passa da K alla capacità per unità di area? Devo conoscere l area della cella. Infatti nella formula non abbiamo il raggio della cella, e anche lo stesso numero di canali, in celle di aree differenti, porta a valori diversi di unità di area. Se aumento il numero di access point, non aumento la capacità del sistema. Ad esempio, se metto in stanza due access point impostati sullo stesso canale, non raddoppio la capacità rispetto ad un singolo dispositivo, ma rimane uguale. Si verifica che il carrier sense funziona quando uno è attivo e l altro non lo è. Nelle stesse condizioni di impostazione la capacità non varia anche mettendone 10. Si ha dunque che solo se utilizzo una corretta divisione delle frequenze, aumentando il numero di celle, aumenta anche la capacità. Posso aumentare la capacità senza limiti, ossia se la cella diventa un punto, la capacità è infinità? NO! Nelle ipotesi fatte, la legge di attenuazione per la distanza è sempre quella, ma in realtà ad un certo punto cambia. Riuso con settori Un altro approccio è quello di considerare antenne settoriali anzichè omnidirezionali, ossia antenne direttive che irradiano energia solo in un angolo, solitamente nei sistemi cellullari è molto comune utilizzare un angolo pari a 120 (Figura 5.4a). 75

76 CAPITOLO 5. REUSE Questo approccio, permette di modificare il layout e ridurre le interferenze, irradiando l energia in una sola area, così facendo, all interno del cluster posso creare delle sottoaree. Figura 5.4: Sottoaree con antenne direzionali (a) Sottoarea di una cella (b) con K = 7, reuse pattern= 7 21 In alternativa le antenne possono essere messe non nel centro, ma sui bordi dell esagono ed è anche l alternativa più usata. Valuto ora l impatto sulle formule. Per il SIR possiamo usare la stessa Formula (5.6), con una piccola modifica: SIR = r η MD = 1 ( ) η 1 (5.9) η M R dove M è il numero di interferenti visibili dal singolo settore (primo anello), e quindi: ( ) 2η M SIR 6 K min =, dove M = (5.10) 3 #settori Esempio 5 In generale possiamo aumentare la capacità quanto vogliamo, tenendo comunque il limite del rumore anche senza interferenza? Non abbiamo limiti fondamentali; se abbiamo un antenna estremamente direttiva (come in LTE), possiamo riutilizzare le stesse risorse in ogni antenna, è come avere un cavo tra base station e utente. 76

77 CAPITOLO 5. REUSE Figura 5.5: Creazione di sottoaree in un cluster con antenne sui bordi Esempio 6 Ci sono limiti di capacità in una rete di accesso cablata? No, basta aggiungere un cavo nuovo quando arriva un nuovo utente. La capacità è quindi data dalla capacità del canale dedicato all utente. Gli unici limiti che abbiamo non sono teorici, ma pratici, ossia legati alla tecnologia. Se dobbiamo aumentare la capacità è sufficiente migliorare la tecnologia; quindi, nelle reti wireless conviene sempre cercare di migliorare anche se di poco la tecnologia. Dunque, in teoria, la capacità può essere aumentata per soddisfare qualunque requisito di traffico senza aumentare troppo la densità delle base stations, ed è ciò che avviene oggi. Tipicamente abbiamo canali ortogonali, divisi in K gruppi, e assegniamo un gruppo ad ogni base station: tuttavia le porzioni rispetto ad ogni portante non sono completamente separate nel dominio delle frequenze e quindi c è overlapping tra canali adiacenti; ciò comporta che si verifichi interferenza non solo tra trasmissioni alle stesse frequenze, ma anche in frequenze vicine. Ciò è trascurabile, tranne quando uso gli stessi canali nelle stesse base stations; il trasmettitore e il ricevitore sono fisicamente nello stesso dispositivo e quindi l interferenza non è trascurabile. Il problema si risolve lasciando spazi tra le portanti, ossia non si assegnano quelle vicine; il layout delle celle può essere adattato alla capacità, dipende da dove e quante base stations mettere, ma è fondamentale perché la formula del reuse non dipende dal raggio. Per questo 77

78 CAPITOLO 5. REUSE motivo possiamo scegliere quante celle avere nell area e nei centri città, utilizzando raggi delle celle corti (centinaia di metri), così facendo si creano reti eterogenee, ossia una cella grande con al suo interno sottocelle. Ci sono chiari criteri per dimensionare la rete. Non c è nessun rapporto tra K e il raggio, né tra K e la potenza; se aumento la potenza la capacità non cambia. In generale la potenza è l elemento principale per dimensionare una rete, qui apparentemente la potenza non conta. Ciò è strano, poiché la capacità dipende dal rapporto tra segnale e interferenza, ma se aumento la potenza aumento l interferenza e nulla cambia. La potenza è importante solo se il rumore è importante, ma se noi trascuriamo il rumore (assumiamo per ipotesi che l interferenza è molto maggiore del rumore), allora la potenza non conta infatti non dimensioniamo le reti di accesso wireless attraverso la potenza. Sappiamo che il controllo della potenza è importante, ma solo per compensare il near-far effect, non per dimensionare il sistema Modelli e algoritmi per assegnare le frequenze Se siamo in aree molto grandi (km), il rumore non è trascurabile e al bordo della cella è maggiore dell interferenza, dunque la formula in questo caso non è accurata perché bisogna introdurre il numero e quindi considerare la potenza. Assumiamo di avere una cella isolata, quindi dimensioniamo la potenza per dimensionare l area di copertura della cella. Se abbiamo interferenza, la cella ha un raggio minore perché, essendoci altre base stations nelle vicinanze, i terminali si connetteranno alla più forte. In generale non si può usare il cluster model in pratica, ma altri modelli che si adottano a diverse forme della cella e profili di propagazione, e quindi si usano modelli che ottimizzano l assegnamento delle frequenze e che si basano sul graph coloring. La rete viene rappresentata tramite un grafo, e ottimizzata mediante la teoria del graph coloring. Dato un grafo, si assegna un colore ad ogni vertice del grafo, in modo che due vertici adiacenti non abbiano lo stesso colore, cioè i nodi connessi hanno colori differenti. I colori rappresentano le frequenze e il link rappresenta un vincolo del sistema, come ad esempio un interferenza troppo alta. 78

79 CAPITOLO 5. REUSE Una variante è il minimum cardinality colouring, cioè colorare il grafo con il numero minimo di colori, ossia frequenze. Il graph colouring non è un problema facile da risolvere, e infatti si usano modelli euristici. In realtà si usano modelli generalizzati, definendo una matrice di compatibilità: C = {c ij }, i, j BS dove i, j sono generiche BS e le frequenze sono numerate in base alla posizione dello spettro. Bisogna assegnare un gruppo di frequenze F j ad ogni BS j, il numero di frequenze è pari ad un numero m j, cioè ci sono base stations che hanno bisogno di più canali e altre meno. Vincoli del traffico: F j = m j, j BS (5.11) Ci sono dei vincoli sulla compatibilità: f i f j c ij, i, j BS, f i F i, f j F j (5.12) Frequency Assignment Problem (FAP) Adesso, dopo aver definito i vincoli, affrontiamo il problema dell assegnamento delle frequenze. Il problema diventa trovare l insieme delle frequenze F j per ogni j BS in modo che siano rispettati i vincoli. c ij rappresenta il coefficiente di compatibilità nella matrice: se c ij = 0, i e j sono compatibili, posso assegnare le stesse frequenze a i e j; se c ij = 1, sono incompatibili, non posso assegnare le stesse frequenze; se c ij = 2 non posso usare né le stesse frequenze, né quelle adiacenti. Per trovare una soluzione si può usare una tecnica di ILP (Integer Linear programming) che restituisce la soluzione ottima, o una soluzione euristica, che restituisce una soluzione accettabile. Tra questi algoritmi c è il greedy algorithm. 79

80 CAPITOLO 5. REUSE Algoritmo greedy L algoritmo prende in ingresso alcuni parametri: matrice delle compatibilità C di dimensione n xn, dove n = #BS; vettore che indica il numero di frequenze necessarie per ogni BS M; vettore delle frequenze disponibili F. Ora si calcola la soluzione step-by-step: 1. Calcoliamo il vettore G, che corrisponde alla somma delle righe (o colonne) della matrice C: G = g i = n i=0 c i dove n è il numero delle BS; 2. Calcoliamo il vettore L, ovvero il vettore G riordinato dal numero più grande a quello più piccolo, e come elementi ha le BS; 3. Si valuta M, se gli elementi di M sono più grandi di 1 si espande la matrice copiando la colonna e la riga, tante volte quanto è il numero maggiore di 1, corrispondente alla posizione del numero, come nell esempio: Figura

81 CAPITOLO 5. REUSE Figura 5.7 Adesso lo facciamo per l altro 2: Figura 5.8 Consideriamo questo esempio, dove C è la matrice di compatibilità, F è il vettore delle frequenze disponibili, G il vettore delle somme di ogni riga della matrice, M il vettore che rappresenta il numero di frequenze richieste per ogni BS, L il vettore 81

82 CAPITOLO 5. REUSE G ordinato, F j il vettore finale dove abbiamo assegnato le frequenze. Di seguito è illustrato l applicazione dell algoritmo. M = {m i } = {1, 1, 1, 1, 1, 1, 1} F = {1, 2, 3} G = {4, 4, 3, 4, 2, 3, 4} C = c ij = [ ] F j = L = {1, 2, 4, 7, 3, 6, 5} Applicazione dell algoritmo: Il primo elemento del vettore L è 1, quindi la prima BS, e assegno la frequenza più alta o la frequenza più bassa, decidiamo di assegnare la frequenza più alta, quindi 3; Vado avanti con il secondo elemento del vettore L, quindi la seconda BS, e scrivo la disequazione: F i F j c ij F 1 F 2 c 12 3 F 2 1, e valuto i possibili valori di F 2 che soddisfano la disequazione, quindi 2 e 1, e scelgo il numero più grande, ovvero 2 (ovviamente il numero deve essere scelto nel range delle frequenze disponibili da 1 a 3, e non dimentichiamo di far partire le righe e le colonne della matrice C da 1 e non da 0); 82

83 CAPITOLO 5. REUSE Andiamo avanti con l elemento del vettore L numero 3, quindi la BS numero 4, calcolando due disequazioni, perchè fino ad ora abbiamo trovato solo due frequenze: F 1 F 4 c 14 3 F 4 1 F 4 = (2, 1) F 2 F 4 c 24 2 F 4 1 F 4 = (1, 3) Infine scegliamo il numero più grande in comune tra le due soluzioni delle due disequazioni, quindi 1; Andiamo avanti scrivendo tante disequazioni quante sono le frequenze trovate e scegliendo il numero in comune più grande. Da ricordare che nel vettore F j le frequenze sono messe in ordine di BS, quindi BS numero 1,2,3,4,5,6,7 F j = (3, 2,, 1,,, ), che sono quelle che abbiamo trovato nei punti precedenti; Di seguito rappresentiamo il grafo di compatibilità: Figura 5.9: Grafo di compatibilità 83

84 CAPITOLO 5. REUSE Un ulteriore esempio: C = G = [ ] F = L = {8, 9, 10, 1, 2, 6, 3, 5, 7, 4} STEP1: base station = 8; non ho vincoli f 8 = 1 STEP2: base station = 9 1 f 9 > 1; f 9 = 2 STEP3: base station = 10, 1 f 10 > 2; 2 f 10 > 2; f 10 = 4 STEP4: base station = 1, 1 f 1 > 1; 2 f 4 > 2; f 1 = 3 STEP5: base station = 2, 1 f 2 > 1; 2 f 2 > 2; 4 f 1 > 1; f 2 = 3 STEP6: base station = 6, f 6 = 4 STEP7: base station = 3, f 3 = 1 STEP8: base station = 5, f 5 = 1 STEP9: base station = 7, f 7 = 2 STEP10: base station = 4, f 4 = 2 Come si può dimostrare che il numero di frequenze usate, 3, è il minimo? 84

85 CAPITOLO 5. REUSE C = G = [ ] F = L = {1, 2, 3, 4, 5, 6} La risposta è basata sul concetto di clique di un grafo, cioè quel sottografo in cui ogni nodo è collegato direttamente a tutti gli altri: il minimo di frequenza è pari al numero di nodi della clique. In generale i modelli basati sui grafi non considerano esplicitamente i vincoli del SIR, perché non tengono conto dell effetto cumulativo dell interferenza. Il problema è quello di trovare il numero massimo di collegamenti attivi simultaneamente, mantenendo il vincolo SINR > threshold, e prende il nome di MI-FAP (Minimum Interference Frequency Assignement Problem). Si utilizza un parametro P uwfg, detto penalità, che è una stima dell interferenza quando alla base station V viene associata la frequenza f, e alla base station W viene associata la frequenza q, ed è riferita all interferenza di W rispetto alla base station V. Se f e g sono ortogonali, o se W e V sono molto lontane, allora p=0. Viene introdotta la variabile x vf che viene posta ad 1 se la frequenza f viene assegnata alla base station v, e a 0 altrimenti. La funzione obiettivo sarà quindi pari a: min P vwfg x vf v,w S f,g F x wg, che può essere linearizzato mediante la variabile Z vwfg, pari a 1 se f è assegnata a v e g è assegnata a w, e 0 altrimenti, per cui x vf + x wg 1 + Z vwfg. Se linearizzo il problema diventa min P vwfg Z vwfg, con il vincolo x vf + x wg 1 + Z vwfg. v,w S f,g F Il problema può essere ampliato, tenendo conto anche dell interferenza, mediante la variabile I vwfg, per cui vale il seguente vincolo: min I vwfg x vf x wg w Sw v f,g F L; v S, dove L rappresenta la soglia. L assegnamento statico delle frequenze è usato nella maggior parte dei sistemi (anche in GSM), tuttavia è possibile ottenere dei vantaggi con un assegnamento dinamico. Considero un sistema con un traffico 85

86 CAPITOLO 5. REUSE normalmente omogeneo in ogni cella, ma che in determinati istanti presenta un picco in una delle celle: sarebbe meglio avere più canali in questa cella. Inoltre tipicamente, ad un picco in una cella corrisponde un numero minore di utenti nelle altre. Dato che ci sono pochi utenti nelle altre celle, l interferenza che arriva da queste è minore, ma con un assegnamento fisso delle frequenze non posso goderne. L idea è quindi quella di assegnare più frequenze alla cella con maggior traffico in modo dinamico, in base alle necessità. Ci sono diverse tecniche per assegnare dinamicamente i canali alle BS. Con il FCA ho un insieme fisso di canali assegnati ad ogni BS, ora non abbiamo un insieme fisso (potremmo avere un piccolo insieme fisso), ma in generale possiamo ottenere altre frequenze in base alle richieste dagli utenti, da un insieme comune. In generale non c è un preassegnamento, ma ottengo i canali quando ricevo le richieste. Non posso ovviamente prendere un canale qualsiasi, rimane il problema dell interferenza, quindi devo prenderne uno compatibile con gli altri. Questa versione del problema, basata su un insieme comune e che modellizza l interferenza con una matrice di compatibilità C, è detta Geometric DCA. Per prendere una decisione su quale canale prendere, devo sapere quali canali sono già utilizzati dai nodi vicini, quindi ogni BS deve avere una tabella di informazioni, almeno locali (cioè riferite ai suoi vicini), riferite all utilizzo dei canali. Si usa una tabella, in cui ogni colonna corrisponde ai canali disponibili, e ogni riga corrisponde ai suoi vicini, che contiene un informazione su quali canali sono usati. Ovviamente devo conoscere i vincoli di compatibilità (cioè i coefficienti C ij ). Considerando i canali compatibili, sono tutti equivalenti (ne scelgo uno a caso, scelgo secondo un criterio,...). Valuto ora la situazione in uno scenario dinamico: se le richieste non sono omogenee, ho un vantaggio (concentro i canali nella BS più affollata). Se il traffico è omogeneo, ho un vantaggio? Nel caso statico, prendo un unica decisione, in quello dinamico prendo decisioni una alla volta. Se il traffico è perfettamente omogeneo, posso avere performance peggiori, ma in media posso avere un vantaggio. - ESEMPIO - 86

87 Capitolo 6 Planning Sappiamo come dimensionare la dimensione delle celle, il numero di canali, come assegnare le frequenze alle celle in modo da soddisfare i vincoli del SIR. Dobbiamo decidere ora dove mettere le BS, e come configurarle (orientamento, angolo, potenza,...). Gli operatori devono scegliere come sviluppare le reti (network planning), è anche una questione economica (affitto, costo dei dispositivi,...). Chiaramente lo studio va fatto tenendo conto dell area specifica in cui verrà sviluppata la rete (si usano mappe 3D,...). Il numero di possibilità è enorme (le variabili sono il numero di posizioni, l orientamento delle antenne,...), e quindi si cerca di ottimizzare (costi minimi, aree di copertura massime,...). Un problema è dal punto di vista pratico, non matematico, a causa dell incertezza dei parametri (si fanno stime su traffico, propagazione,...). Il problema rimane quello di dove installare le BS (e in seguito a come configurarle). Per semplificare lo studio delle predizioni di propagazione, si discretizza il traffico in un insieme discreto I di punti (si assume che in ognuno di questi punti si concentri il traffico): questi punti sono detti Test Points (T P ). Il problema principale è il posizionamento delle antenne. Anche in questo caso non considero uno spazio continuo, ma discretizzo mediante un insieme discreto S di candidati (CS). Non mi serve conoscere la situazione generale della propagazione nello spazio, ma solo la situazione g ij del canale tra 2 qualsiasi punti dei 2 insiemi (1 T P i e 1 BS j ). A questo punto configuro l antenna: esistono diversi tipi in base all angolo (è possibile modificarlo anche da remoto, un angolo maggiore comporta un area più piccola), all altezza,... 87

88 CAPITOLO 6. PLANNING La configurazione dell antenna è un altro parametro nella propagazione tra i e j: per ogni configurazione k ho un guadagno diverso, quindi g ij = g ijk. Inizialmente si semplifica la propagazione: considero il problema del covering traffic, cioè se il segnale è abbastanza forte, allora i è coperto, altrimenti non lo è. Creo quindi una matrice 3D, con i, j, k, dove 1 significa coperto e 0 non coperto, da cui ricavo l insieme dei punti coperti. Al momento supponiamo di gestire l interferenza e il riutilizzo delle frequenze. Dopo aver fatto il planning, pianifico la capacità (assegno frequenze,...): questi 2 problemi sono tipicamente separati, tranne in CDMA (non ho reuse, tutte le trasmissioni si sovrappongono, anche nell accesso, e l interferenza non può essere studiata successivamente). 6.1 Coverage planning Nel caso più semplice, riguarda solo dove installare le BS. Si usa una variabile di decisione y j, pari 1 se la BS viene installata nel CSj, e 0 altrimenti (al momento è l unica decisione). Questa decisione è ovviamente soggetta a vincoli: il più semplice è la copertura (coverage), vogliamo essere sicuri che tutti i punti T P di un area in questione siano coperti (non tutti i punti della superficie, abbiamo discretizzato il problema con il concetto di T P ). Per farlo uso un parametro di propagazione a ij, basato su valori ottenuti da processi esterni, pari a 1 se la CSj copre il T P i (cioè se il segnale è sufficientemente buono), e 0 altrimenti. Se l unico vincolo è il coverage, e con l ipotesi che il costo della BSj sia c j, allora il problema diventa minimizzare c j y j, con il vincolo della piena copertura: j J a ij y j 1 (ogni punto deve essere coperto da almeno 1 BS) j S Per studiarlo, per ogni j, definisco un insieme P j, che include tutti i T P i coperti da j. Considero un sottoinsieme di CS, e l unione di tutti i P j : l unione di questi insiemi è l insieme dei T P i (copro tutti i punti). Questo problema è il Minimum Set Covering problem (minimizzo il costo della copertura), e può essere facilmente approssimato, e studiato mediante euristiche. Esistono come detto k possibili configurazioni: posso 88

89 CAPITOLO 6. PLANNING quindi includerle nell insieme delle possibili soluzioni, estendendo la variabile y j a y jk, pari a 1 se installiamo una BS in j con la configurazione k, e 0 altrimenti. Chiaramente ci sono dei costi c jk associati alle varie possibili soluzioni, e quindi bisogna espandere anche i parametri a ij, includendo a ijk. Per cui: con i vincoli: j S j S k K j c jk y jk k K j a ijk y jk 1, i I k K j y jk 1, j S (una configurazione per sito) Sono stati proposti alcuni algoritmi efficienti, alcuni greedy (non sono usati direttamente dagli operatori, come accadeva con l assegnamento delle frequenze, perché sono più complicati e non è facile definire a priori il planning del network, e inoltre lo sviluppo del network avviene in modo incrementale, aggiungendo BS a network già esistenti). Uno è il seguente: 1. Parto da una soluzione con un insieme S* vuoto, e calcolo il numero dei punti coperti da ogni BS, cioè l insieme P j ; 2. Se P j è vuoto, mi fermo, altrimenti per ogni j non ancora nella soluzione calcolo P j c j conveniente); (è come il costo per punto coperto), e prendo il massimo (cioè il più 3. Escludo dal problema i punti già coperti, e ricalcolo il rapporto; 4. Torno al punto 2; AGGIUNGERE ESEMPIO Ovviamente l algoritmo può essere usato anche con le configurazioni: invece che considerare un altro indice ( matrice 3D), espando una dimensione, ottenendo linee multiple per diverse configurazioni della stessa dimensione. L algoritmo prosegue come prima, ma quando includo una configurazione nel sistema, devo togliere tutte le altre (una sola configurazione per sito). 89

90 CAPITOLO 6. PLANNING Come tutti gli algoritmi greedy, la soluzione ottenuta può non essere ottima (a volte con il greedy, quella ottima non può essere trovata, ad esempio in questo caso). E difficile trovare soluzioni che diano piena copertura: ci sono ad esempio aree impossibili da coprire. Quindi è possibile a volte rilassare alcuni vincoli: ne tengo conto attraverso la variabile z i, pari a 1 se il T P i è coperto, altrimenti è 0 (quindi non ha impatto sulla soluzione). Quindi ho un tradeoff tra la copertura e il costo: max λ z i c jk y jk i I j S k K j dove la costante λ serve a relazionare la copertura massima e il costo minimo, cioè un ottimizzazione multi-oggetto j S a ijk y jk z i, i I k K j y jk 1, j S k K j Per ogni punto i, conto le BS che lo coprono (il numero deve essere 1). Se è > 1, non sappiamo veramente a quale BS il punto è stato assegnato (che quindi può essere connesso a una qualunque delle BS in questione). In pratica è connesso ad una sola BS: se ci occupiamo solo del planning, non dobbiamo preoccuparci di quale sia. Se invece vogliamo fare una simulazione, dobbiamo tenerne conto: la decisione viene fatta mediante una variabile x ij, pari a 1 se il TP i è assegnato alla BS j, e 0 altrimenti. A questo punto riscrivo i vincoli: c jk y jk j S k K j x ij = 1, i I (una BS per punto) j S y jk 1, j S k K j x ij k K j a ijk y jk 90

91 CAPITOLO 6. PLANNING Al momento le variabili y ottenute con entrambe le situazioni (con i 2 insiemi di vincoli) sono le stesse. Il motivo è che la variabile x non influisce nella funzione obiettivo, una volta che la soluzione è ottima nel punto di vista del costo e ho almeno una BS che copre, la variabile x non ha più effetto su vincoli e funzione obiettivo (posso prenderne una a caso), quindi sono inutili. Le variabili diventano utili quando includo il concetto di capacità. Conto il numero di punti assegnati (non quelli coperti) alla BS, mediante la variabile d i (domanda di traffico associata a i, in Erlang,...): con d i x ij conto tutto il traffico della BS j, che deve essere minore della capacità i I di j: ν jk y jk k K j Non possiamo quindi assegnare i TP alle BS a caso, ma abbiamo introdotto un vincolo (che ad esempio riguarda la capacità di un collegamento, non il planning). Questo è un problema di accesso: la selezione delle celle è fatta dai terminali (quindi non centralizzato), che scelgono la BS più potente (cioè la più vicina in potenza), pertanto la variabile x deve seguire questo vincolo. Come posso essere sicuro di scegliere una determinata BS? Per ogni punto i, creo una lista di BS e configurazioni, dalla più forte alla più debole. Non sappiamo quale BS e configurazione verranno in realtà usate, dobbiamo solo assicurare che il primo nella soluzione è il primo a cui è assegnato il TP i (se la prima BS non è installata, considero la seconda; se la seconda non è installata, prendo la terza, e così via... quando ho trovato la prima installata, devo forzare x ij a questa scelta). Creo un gruppo (l-1 elementi) di vincoli, per il TP i: per l = 1, scelgo la prima della lista. Se la prima è installata, allora y jl k l = 1. Il vincolo da rispettare è: L y jl k l + x ijh 1, 1 l L 1 h=l+1 In pratica scorro tutta la lista finché trovo una y da porre uguale a 1, e da lì setto la variabile x corrispondente pari a 0. LA PARTE RIMANENTE DEL CAPITOLO LA FARA 91

92 CAPITOLO 6. PLANNING 92

93 Capitolo 7 GSM Ogni tecnologia viene usata per circa anni, invece GSM c è da circa 30 anni. Prima di GSM erano disponibili reti radiomobili, ma erano sistemi analogici basati su modulazione FM. Negli anni 80 l UE ha deciso di avere un nuovo sistema di generazione e ha coordinato un attività di standardizzazione in Europa. É stato creato un gruppo, detto Groupe Spécial Mobile (GSM), per definire uno standard europeo per le comunicazioni digitali mobili radio (digital mobile radio communication). E stato poi creato un altro gruppo, l ETSI (European Telecommunications Standards Institute), con il compito di continuare le attività di standardizzazione del GSM. Anche se nato come standard europeo, GSM è poi diventato uno standard mondiale, e attualmente significa Global System for Mobile Communications. GSM è un sistema TDMA multiportante, in cui ogni portante ha la sua modulazione e il suo TDMA. C è un range di frequenze intorno a 900 MHz, diviso in 2 porzioni: 1 per l uplink e 1 per il downlink. Abbiamo quindi un FDD (Frequency Division Duplexing). Lo spacing tra uplink e downlink è fisso: ho coppie di portanti up-down separate da una distanza costante (quindi il numero della portante identifica una coppia di frequenze). Esiste inoltre un altra parte di spettro utilizzata, intorno a 1800 MHz, chiamata DCS/1800 (non è un sistema diverso, è solo GSM che lavora a frequenze diverse). Questa era l allocazione iniziale delle frequenze (ora è cambiata, ad esempio a causa di nuove tecnologie come UMTS e LTE): 93

94 CAPITOLO 7. GSM C è anche un altra porzione di spettro disponibile, in determinate zone del mondo, intorno a 1900 MHz (a volte in sostituzione di quella a 1800 MHz). Lo spacing tra le diverse portanti è 200 khz, ma lo spettro occupato dal segnale modulato è maggiore, quindi c è un leggero overlap tra portanti adiacenti ( non possiamo assegnare portanti adiacenti alle stesse BS). Su ogni portante abbiamo una singola modulazione (FM), detta GMSK (Gaussian Minimum Shift Keying), una modulazione in frequenza con fase continua (in questo modo le transizioni tra simboli, che si verificano con la FM, sono smussate, e si usa un impulso gaussiano, giustificato dal meccanismo di equalizzazione che riduce l influenza dell ISI). Abbiamo coppie (up-down) di portanti, quindi UL e DL sono perfettamente bilanciati. Su ogni portante abbiamo TDMA, quindi un numero di timeslot in cui inviare informazioni (8 timeslot per frame) Ogni timeslot è sufficiente per un voice channel (1 timeslot per uplink e 1 timeslot per downlink, numerati allo stesso modo). Uplink e downlink sono anche sincronizzati, grazie alla BS, tuttavia c è un offset fisso, pari a 3 timeslot. Il motivo è che, se fossero allineati, i dispositivi dovrebbero trasmettere e ricevere allo stesso tempo ( non potrei usare lo stesso dispositivo per trasmettere e ricevere). La durata del frame è 4,615 ms, e il singolo timeslot dura 577 µs. Il controllo di potenza non è fondamentale in TDMA (lo è in CDMA), ma lo facciamo, perché riduce l interferenza ed è usato 94

95 CAPITOLO 7. GSM per regolare la potenza ricevuta. Abbiamo inoltre trasmissioni discontinue: non si codifica durante le pause per ridurre l interferenza (senza impatto sulla capacità come in CDMA) e il consumo energetico. 7.1 Architettura di sistema Questa è l architettura generale delle reti radiomobili basate su GSM (e anche UMTS): Tra i vari componenti abbiamo le Mobile Station (MS, con cui si indicano i terminali in GSM), che possono lavorare in bande differenti e sono composte da 2 elementi: il Mobile Equipment (ME, cioè il telefono) e la SIM (Subscriber Identity Module, ad oggi il proprietario della SIM card è l operatore). La ME è identificata da un codice, l IMEI (International Mobile Equipment Identifier), mentre la SIM identifica l utente, e include funzioni per eseguire procedure di sicurezza, tra cui l autenticazione (la chiave segreta è nella SIM card). La SIM card è una smart card (con memoria e un microprocessore), da inserire nell apposito slot nel ME: ha un numero seriale, usato per identificarla, e al suo interno c è l IMSI (International Mobile Subscriber Identity, usato per identificare l utente nella rete). Tipicamente il numero di telefono non è scritto nella SIM card: nei database viene fatta la connessione tra IMSI e numero di telefono. Nella SIM card ci sono inoltre gli algoritmi per autenticazione 95

96 CAPITOLO 7. GSM e cifratura, e le chiavi usate per queste funzioni ( portabilità del numero). Nella SIM card sono contenute informazioni temporanee sulla rete, grazie al LAI (Location Area Identifier, con cui viene salvata l ultima LA visitata) e a un Temporary Mobile Subscriber Identifier (TMSI), usato al posto dell IMSI, per evitare di trasmetterlo (invece di inviare l IMSI, si invia il TMSI, per motivi di sicurezza). Infatti, se cambio il codice di identità ogni volta, è più difficile tracciare un utente, rispetto ad utilizzare sempre lo stesso codice. Nella SIM è presente poi una memoria locale per rubrica, SMS, PIN,... Abbiamo poi il Base Station System (BSS), che include le unità funzionali che hanno a che fare con l accesso radio: Copertura radio e comunicazione con le MS attraverso l interfaccia radio; Gestione delle risorse radio; Il BSS include: Base Transceiver Station (BTS): implementano solo il livello fisico del sistema (sia nella parte rete che cablata), cioè sono solo dispositivi a livello fisico, non ripetitori a livello fisico. Eseguono i comandi ricevuti dal BSC; Base Station Controller (BSC): implementano i protocolli più alti; Perciò, ciò che chiamavamo BS, è ora diviso in BTS e BSC. BSC, che controlla fino a centinaia di BTS, è quindi la parte intelligente della rete: riceve informazioni sullo stato dell interfaccia radio dalle BTS e invia comandi di configurazione e gestione. BSC e BTS sono connessi tramite collegamenti point-to-point (cablati o wireless). Questa parte della rete è detta backhauling part: è quindi la parte della rete che connette le BS che coprono l area connessa alle antenne alla prima stazione nella parte cablata. Esiste poi il Network Switching Subsystem (NSS), la rete a commutazione di circuito del sistema mobile, usata solo per i servizi basati su circuito (voce): in pratica è una rete telefonica con funzionalità aggiuntive, nodi e database per gestire gli utenti mobili, creare circuiti e interconnettere queste reti al resto del mondo. Il NSS include: 96

97 CAPITOLO 7. GSM Mobile Switching Center (MSC): il nome Switching Center (SC, senza Mobile) è il nome usato per indicare le stazioni telefoniche, quindi MSC è una stazione telefonica per sistemi mobili (stessi dispositivi della vecchia rete telefonica, ma specializzati per il mobile) e funzioni aggiuntive. Sono stazioni in grado di switchare connessioni a commutazione di circuito, e implementano funzioni di gestione della mobilità (handover, LU,...). Diversi BSC sono quindi connessi ad un MSC. Uno degli MSC funge da gateway (GMSC), in grado di connettere la rete al resto del mondo (cioè alle altre reti telefoniche). Tutti gli SC degli operatori mobili e VoIP sono interconnessi. Tutti i MSC sono connessi ad altri elementi della rete (i database della rete, VLR, HLR) mediante un signaling network; Visitor Location Register (VLR): è un database, solitamente integrato nel MSC, che include informazioni temporanee sugli utenti che visitano l area MSC (ogni nodo ha un database locale). Nel VLR tutti i dati rilevanti degli utenti visitatori sono duplicati dal HLR; Home Location Register (HLR): è il database principale della rete e include tutte le informazioni sugli utenti mobili e sui VLR attualmente visitati. Ce n è uno per rete (operatore), e può essere fisicamente diviso. E un database permanentemente associato a un GMSC, e memorizza i dati di tutte le MS associate al GMSC (attraverso il MSISDN). L HLR memorizza inoltre informazioni permanenti come IMSI MSISDN, servizi registrati,... L HLR memorizza informazioni temporanee come l indirizzo del VLR attualmente visitato e le chiavi temporanee per autenticazione e cifratura; Authentication Center (AuC): è connesso all HLR, ed è un database usato dal sistema per l autenticazione dell utente (ha funzioni aggiuntive); Equipment Identity Register (EIR): è un database che include l IMEI dei dispositivi autorizzati (utenti e dispositivi sono separati). E un database opzionale, include ID e caratteristiche (paese, costruttore,...) di tutti i dispositivi mobili, 97

98 CAPITOLO 7. GSM e può essere usato per prevenire l utilizzo di dispositivi rubati; In GSM tutto è su misura per i servizi telefonici (se vogliamo utilizzare connessioni dati, dobbiamo sostituire qualcuno di questi componenti). Abbiamo poi l Operation and Maintenence Subsystem (OMSS), presente in ogni rete complessa, cioè un sistema usato dagli operatori per gestire la rete da remoto attraverso il signaling network (intervenire in caso di errori, allarmi, modificare le configurazioni,...). OMSS è quindi una piattaforma di gestione della rete, che si basa su un architettura gerarchica per gestire le diverse porzioni, composta da OMC (Operation and Maintenance Centre) e NMC (Network Management Centre). Tutti i meccanismi di gestione della rete si basano sulla definizione di area. Abbiamo la cella, definita come l area gestita come un unica entità a livello fisico da un dispositivo. La cella è identificata da un BSIC (Base Station Identity Code), trasmesso sul canale broadcast. A livello superiore abbiamo la LA, un entità logica composta da un insieme di celle: se un utente è idle e si muove nella LA, non deve informare la rete della sua attuale posizione. La LA è identificata da un LAI (Location Area Identifier), trasmesso da tutte le BTS nell area su un canale broadcast. Al di sopra c è la MSC/VLR Area: tipica di GSM, è l area gestita da un MSC, che è connesso a multiple BSC, ognuna connessa a diverse BTS. I dati degli utenti in quest area sono memorizzati nel 98

99 CAPITOLO 7. GSM VLR associato al MSC. Abbiamo quindi un grande insieme di celle sotto un unico MSC: se consideriamo l unione di tutte le celle sotto i diversi MSC, abbiamo un area detta MSCArea, che può essere divisa in diverse LA. Abbiamo quindi l area della rete, detta Public Land Mobile Network (PLMN) Area: è l area coperta da uno specifico operatore (ci sono vincoli nell uso dello spettro, legati alla qualità della copertura,...). La BTS implementa i protocolli di livello basso dell interfaccia radio. Da un lato, trasmette e riceve il segnale modulato nell interfaccia radio (gestisce le comunicazioni tra MS e la rete a livello fisico, con funzioni di modulazione, coding e multiplazione), dall altro fa controlli sulla connessione (a livello fisico, effettua misure sulla qualità dei canali fisici e raccoglie quelle effettuate dalle MS) e comunica i risultati al BSC. É quindi un dispositivo a livello fisico, che implementa 2 layer fisici: 1 per l interfaccia radio, 1 per l interfaccia con il BSC (le interfacce sono standardizzate). Tipicamente nell interfaccia radio abbiamo voice channels con un coding di voce compressa di 13 kb/s. I canali dall altra parte (BSC) sono gli stessi circuiti usati nelle reti telefoniche (PCM a 64 kb/s). Le BTS connettono i canali PCM con quelli dell interfaccia radio (traffico e signaling), mappando in qualche modo canali a 13 kb/s sull interfaccia radio in canali a 64 kb/s dall altra parte: è un processo che avviene solo a livello fisico. Il transcoding GSM/PCM (consiste nel rendere analogico il segnale, per poi ricodificarlo) è effettuato da un dispositivo detto Transcoder Rate Adaptation Unit (TRAU). Il TRAU è fisicamente posizionato in una BTS o (più spesso) in una BSC (cambia la quantità di risorse utilizzate per il mapping). Il meccanismo di interconnessione tra i 2 circuiti (interfaccia radio e interfaccia BSC) dipende dal modo in cui si vuole gestire il voice coding: in questo caso dal lato radio, al fine di risparmiare risorse, si usa voce compressa (flussi a 13 kb/s), dall altra parte si usa PCM, cioè un coding a 64 kb/s. La sua funzione è quindi quella di tradurre il coding a 13 kb/s in un coding a 64 kb/s e viceversa. Se devo passare da 13 kb/s a 64 kb/s, aggiungo bit in modo da arrivare a 16 kb/s, e poi mappo 4 canali voce in 1 canale PCM (comprimo 4 canali in 1). Per ogni portante GSM (8 canali a 13 kb/s), sono necessari 3 canali PCM a 64 kb/s: 1 per il signaling trasportato con il protocollo di collegamento LAPD, e 2 per 99

100 CAPITOLO 7. GSM gli 8 canali di traffico. BTS è solitamente diviso in TRX (Transceiver), elementi radio per la trasmissione e la ricezione di una singola portante radio, e BCF (Base Common Function), elemento di controllo di un insieme di TRX che inoltre controlla l interfaccia della connessione con il BSC. La BSC controlla un gran numero di BTS: le funzioni principali sono: Configurazione della cella con assegnamento di traffico e di canali di controllo; Setup e rilascio di canali nell interfaccia A e Abis; Gestione dell handover; Gestione del paging; Analisi delle misurazioni ricevute da BTS e MS per l attivazione dell handover; Il BSC si occupa inoltre del Radio Resource Management (RRM), ed è anche un nodo di switching: anche se non implementa routing (è fatto dal MSC), connette circuiti BTS con circuiti MSC effettuando spesso il transcoding (TRAU), e fa switch dei circuiti durante l handover (intra-bsc). Le BSC possono essere colocate con i MSC, o messe in posizione differente. Il MSC è la stazione telefonica di commutazione della rete radio mobile e ha funzionalità aggiuntive per la gestione della mobilità. É associato a un VLR per la memorizzazione delle informazioni sugli utenti visitatori. Il MSC è collegato ai suoi 100

101 CAPITOLO 7. GSM BSC e altri MSC della rete mediante canali PCM (multiplati con PDH o SDH). Alcune risorse vengono utilizzate per il signaling network SS7. Uno o più MSC (chiamati Gateway MSC) sono collegati alle reti telefoniche esterne. Una MS può essere raggiunta dalle linee telefoniche fisse attraverso il numero MSISDN (è il classico numero di telefono). La chiamata viene instradata al GMSC, che identifica l HLR e recupera da esso le informazioni dell utente attraverso il MSISDN. L HLR fornisce il MSRN (Mobile Station Number Roaming), un numero telefonico temporaneo (stessa struttura del MSISDN) assegnato dal VLR visitato. MSRN permette al GMSC di instradare chiamate al MSC attualmente visitato dall utente. Il MSC implementa le funzioni di: Connection Management (CM), che si occupa di originare e terminare le chiamate e del gateway; Mobility Management, che si occupa di aggiornamento di posizione, registrazione periodica e autenticazione. Il protocollo di segnalazione per la comunicazione con altri elementi di rete contiene: DTAP (Transfer Direct Part Application) per la comunicazione diretta con MS; BSSMAP (BSS Management Application Part) per comunicazione con BSC; MAP (Mobile Application Part) per la comunicazione con altri MSC, VLR, HLR, EIR, AuC; Le procedure di sicurezza consistono in: Autenticazione: verifica l identità dell utente e protegge il sistema da accessi non autorizzati; Cifratura: codifica il flusso di dati in modo da non poter essere decodificati da altri; In GSM autenticazione e cifratura sono fortemente correlati alla gestione della chiave. Gli ingredienti sono: 101

102 CAPITOLO 7. GSM K i : chiave di autenticazione di 128 bit memorizzata nell AuC e nella SIM; RAND: numero random di 128 bit generato dall AuC e poi inviato al MSC, si usa durante la procedura di accesso; A3: algoritmo per l autenticazione memorizzato nell AuC e nella SIM; A8: algoritmo per generare la chiave di cifratura K c, memorizzata nell AuC e nella SIM; I risultati dei processi di sicurezza sono la chiave di cifratura K c e il risultato SRES dell algoritmo di autenticazione. Le triple (RAND, SRES, K c ) sono generate per ogni IMSI e memorizzate nell HLR. L AuC memorizza le chiavi segrete K i di tutti gli utenti, genera numeri casuali e calcola SRES e chiavi di cifratura K C, e fornisce triple agli altri elementi della rete. L idea è quella di avere una chiave segreta memorizzata nel dispositivo dell utente (non come PIN o una sequenza segreta nota all utente come WiFi, per motivi di sicurezza, ma una chiave di 128 bit salvata nella SIM card). Non c è un metodo semplice per estrarre questa chiave dalla SIM card. Nella SIM card sono salvati anche gli algoritmi utilizzati per autenticazione e cifratura, che tuttavia sono pubblici (sono salvati nella SIM card semplicemente perché devono interagire con la SIM card). L idea è quella, in particolare per la parte di accesso, di partire dalla chiave segreta K i, dall algoritmo A3 e dal numero casuale RAND. Se diamo in input all algoritmo A3 la chiave segreta K i e RAND, otteniamo SRES. Posso far eseguire l algoritmo parecchie volte, cambiando ogni volta il numero casuale, e ottengo diversi risultati posso precalcolare diversi risultati. In realtà si esegue anche l algoritmo A8, che fornisce un altra chiave, K c, usata per la cifratura. Quindi con gli stessi 2 input (chiave segreta e numero casuale), ho 2 risultati, SRES e K c. Cambiando un solo parametro, ottengo una nuova coppia di risultati. Il meccanismo è un meccanismo di challenge-response: l AuC è l unico che ha la chiave K i (è la stessa che c è nella SIM). Per evitare di portare la chiave K i al di fuori dell AuC, si fornisce agli altri elementi della rete la tripla precalcolata (RAND, SRES, K c ), ad esempio al VLR del MSC 102

103 CAPITOLO 7. GSM dove l utente sta cercando di autenticarsi. Quando l utente chiama/riceve (quindi c è bisogno della procedura di accesso), bisogna prima autenticarlo. La procedura è locale, e viene verificata l identità dell utente: RAND viene trasmesso all utente, in base a questo numero e a K i si usa l algoritmo A3 per calcolare SRES (128 bit), che viene trasmesso alla rete. Confrontando i valori di SRES calcolati dal terminale e dall AuC, si decide se autenticare o meno l utente. Figura 7.1: Autenticazione Usando i 2 valori nella tripla, ricaviamo anche K c in contemporanea a SRES. Se i valori di SRES calcolati dal terminale e dalla rete sono identici, assumiamo anche che K c calcolata dal terminale sia la stessa di quella calcolata dalla rete, quindi cominciamo a trasmettere informazioni cifrate con l algoritmo A5 (cifra flussi) usando K c. Figura 7.2: Cifratura Gli algoritmi si basano sulla cifratura simmetrica, è meno sicura ma più semplice da implementare. Le debolezze del GSM riguardano principalmente il meccanismo di cifratura: una volta che abbiamo la chiave segreta K c, che cambia ogni volta, questa rimane la stessa per tutta la durata della chiamata. Se un attaccante riuscisse ad 103

104 CAPITOLO 7. GSM ottenere il flusso cifrato, potrebbe tentare di calcolare la chiave (forza bruta, algoritmi noti,...). Non è facile clonare una SIM: è difficile calcolare K i, perché la quantità di dati disponibile per tentare di calcolare K i (quella all inizio della chiamata) è molto minore di quella disponibile per calcolare K c. E possibile ad oggi ascoltare le conversazioni in pochi secondi (usando appositi dispositivi). Non c è un entità centrale che autentica tutti, ma abbiamo l AuC (uno per operatore, uno per zona), che però non fa operazioni real-time, ma fornisce le triple all HLR. Le triple sono quindi inviate al VLR (c è una funzione che si occupa dell autenticazione), e ogni volta che c è bisogno, una tripla viene usata e poi eliminata. Se il VLR termina le triple, le chiede all AuC. Figura 7.3: Authentication Center Dal punto di vista della cifratura, non lavoriamo nel MSC, ma nell interfaccia radio (l unica parte cifrata è l interfaccia radio): l algoritmo A5 viene eseguito a livello fisico, per la trasmissione dei bit dal terminale alla BS e viceversa. Abbiamo quindi un meccanismo di cifratura real-time dei dati trasmessi sul canale, ma ciò avviene fornendo la chiave K c alla BS, in chiaro ma all interno del network. Quando si chiede l autenticazione, bisogna fornire la propria identità alla rete (altrimenti non saprebbe quale tripla usare): per farlo si usa l IMSI, diverso dal numero di telefono. Tutte le comunicazioni iniziano da una MS che trasmette il suo ID per attivare la procedura di autenticazione. In questo modo, potrei in teoria seguire l utente, accumulare abbastanza dati e rompere l algoritmo, calcolando K i. Per evitare di trasmettere l IMSI in modo chiaro, l utente trasmette una chiave temporanea (TM- 104

105 CAPITOLO 7. GSM SI), che cambia ad ogni chiamata, generata dalla rete e associata all IMSI. Questa chiave temporanea viene memorizzata nella SIM, e quando faccio un altra chiamata, viene usata. Solo in casi eccezionali (prima chiamata,...) si usa la chiave permanente. Perciò il VLR alloca un TMSI (Temporary Mobile Subscriber Identity) ad ogni MS. Ad ogni location update, il VLR può allocare un nuovo TMSI alla MS. L IMSI è il numero interno di identificazione dell utente: è composto da 3 campi: MCC: Mobile Country Code (3 cifre); MNC: Mobile Network Code (2 cifre); MSIC: Mobile Subscriber Identification Number (fino a 10 cifre); Il numero di telefono (MSISDN) è completamente indipendente dall IMSI, e l associazione tra i 2 viene fatta nell HLR (posso cambiare uno dei 2 senza modificare l altro). L altro valore usato è l IMEI, che riguarda il dispositivo (non l utente). L identità del telefono può essere usata per un controllo nell EIR (Equipment Identity Register), ad esempio per bloccare l accesso ai telefoni rubati (poiché gli operatori hanno registri divisi, non è molto usato). 7.2 Radio interface Modulazione: MGSK (Minimum Gaussian Shift Keying): modulazione di fase continua con impulso gaussiano (ISI); Coding del canale: convoluzionale (con diversi rate); Equalizzazione: sequenze note di bit trasmesse in ogni burst fisico. c è un filtro di equalizzazione sintetizzato al ricevitore; Coding della voce: 13 kb/s (codec RPE); L interfaccia radio è basata su un meccanismo sincrono per organizzare i canali, si usa TDMA nelle diverse portanti è fondamentale la sincronizzazione. Abbiamo bisogno di diversi livelli di sincronizzazione: 105

106 CAPITOLO 7. GSM portanti : per decodificare i simboli trasmessi, si usa un apposito canale e pilot signals (c è una sequenza nota) trasmessi a intervalli periodici dalla BS su un canale broadcast; timeslot : i frame hanno 8 timeslot; frame : c è la possibilità di avere canali con un rate minore di un timeslot per frame struttura gerarchica con frame e multiframe, serve una numerazione dei frame; BS : opzionale, le diverse BS possono essere sincronizzate, in termini di frame e timeslot, è utile durante l handover; E possibile ridurre il guard time (il tempo aggiunto nei sistemi TDMA per compensare il ritardo di propagazione): nel caso di un solo ricevitore (la BS), in uplink, il guard time va da 0 - terminale attaccato alla BS - a 2τ, con τ = d c. Si usa un meccanismo che in GSM è detto timing advance: il raggio massimo stabilito per GSM è 35.8 km, pari a un guard time di 233 µs, equivalente a bit (rate della portante = 270,8 kb/s). Questo valore viene usato per la prima trasmissione (all inizio non possiamo stimare nè quindi compensare). Considerata la mobilità dell utente, il possibile allargamento del ritardo e la propagazione multipath, possiamo ridurre il guard time a 8.25 bit (30.46 µs) in ogni time slot. GSM definisce i burst per la trasmissione a livello fisico. I physical transmission unit sono le strutture fisiche usate per trasmettere informazioni a livello fisico, cioè i PDU usati per la trasmissione a livello fisico in un sistema TDMA. Un burst fisico è la singola trasmissione in un timeslot da parte di una stazione (BS oppure MS). Abbiamo diversi tipi di burst: normal (i più diffusi, usati per trasmettere dati - voce,...), access (usati solo per la prima trasmissione, sono più corti, perchè abbiamo bisogno di un guard time maggiore), Frequency Correction Burst (usati per la sincronizzazione a livello di bit, è una sequenza nota di bit trasmessa in downlink dalla BS), Synchronization Burst (serve per la sincronizzazione a livello di frame, NON di bit, riguarda ad esempio il numero di sequenza del frame usato per creare un canale 106

107 CAPITOLO 7. GSM GSM), Dummy Burst (non portano informazioni, servono solo a riempire gli spazi vuoti, ci sono canali speciali che devono avere sempre trasmissioni attive, ad esempio per misurare la potenza ricevuta, per ricevere informazioni dalle BS) Normal burst Figura 7.4: Normal burst Nel normal burst (livello fisico) abbiamo 114 bit di dati: 57 da un lato e 57 dall altro, divisi da una Training Sequence (TS) di 26 bit nota al ricevitore (sempre gli stessi), usata per stimare il canale (abbiamo distorsione dovuta al canale e può creare ISI, dobbiamo compensare la funzione di trasferimento del canale con un filtro di equalizzazione al ricevitore). Ciò è molto comune nella modulazione a singola portante, non avviene ad esempio in OFDM/OFDMA. L equalizzazione è continua, il canale cambia velocemente e dobbiamo stimarlo di continuo. Abbiamo 3 bit agli estremi usati come rampa per l energia usata per la trasmissione, e 1 bit per lato della TS (stealing bit, se pari a 1 il burst è usato per trasmettere informazioni di controllo quando la capacità normale non è sufficiente, si usano durante l handover). Assumiamo che il guard time (8.25 bit, cioè µs) sia lo stesso per tutti Access Burst Figura 7.5: Access burst 107

108 CAPITOLO 7. GSM Abbiamo bisogno di un guard time maggiore, di lunghezza pari a bit. Questa è la prima trasmissione in uplink, quindi abbiamo bisogno di sincronizzazione (si usa una sequenza nota di 91 bit). Abbiamo ora solo 36 bit usati per trasmettere informazioni, che però non sono sufficienti per trasmettere l identità dell utente: per questo motivo si trasmette una sequenza casuale temporanea. Dopo aver ricevuto la risposta dalla rete e aver compensato il ritardo, si usa la trasmissione normale (normal burst), comunicando la propria identità. Per questo motivo, questa parte è particolarmente critica per quanto riguarda la sicurezza Frequency Correction Burst Figura 7.6: Frequency Correction Burst E una sequenza nota di 142 bit Synchronization Burst Figura 7.7: Synchronization Burst Si usa per trasmettere informazioni logiche (numero di frame e la struttura del frame) Dummy Burst E una sequenza casuale che si usa per riempire gli spazi vuoti nei timeslot nel downlink dei broadcast channel. 108

109 CAPITOLO 7. GSM 7.3 Logical channels Figura 7.8: Dummy Burst I canali fisici sono gli 8 timeslot che abbiamo per un frame in ogni portante, e possono essere organizzati in modo tale da trasmettere vari tipi di informazione (logical channel). Il GSM classico (cioè senza considerare la parte dati) è basato solo su commutazione di circuito, quindi anche i canali logici hanno capacità costante e rate costante. I canali logici (messaggi broadcast, voce codificata, informazioni di sincronizzazione,...) sono mappati nei canali fisici usando un meccanismo per cui ogni canale logico ha il suo rate di trasmissione. Figura 7.9: Logical channel Ci sono 2 grandi famiglie: common channel: sono comuni tra tutti gli utenti di una stessa cella. All interno abbiamo: Broadcast CONTROL CHANNELS: canali broadcast usati per trasmettere informazioni generali sul sistema (sincronizzazione, slot, frame, identità dell utente); 109

110 CAPITOLO 7. GSM Common CONTROL CHANNELS: sono usati da tutti gli utenti della cella, ma sono specifici per alcune funzioni (meccanismo di paging - trasmette l identità degli utenti, downlink -, Random Access - trasmette l access burst, uplink -, Access Grant - si riceve l assegnamento dei canali); DEDICATED CHANNELS: ; All interno abbiamo: Dedicated CONTROL CHANNELS: in parallelo ai canali di traffico, si usano quelli di controllo (con capacità minore), usati per power control, trasmissione di misure,..., e dedicati ad una specifica chiamata (SACCH). In una procedura di handover c è bisogno di una capacità maggiore FACCH (si allarga la capacità del control channel e si riduce quella del traffic channel impostando in modo opportuno gli stealing bit). SDCCH ha un rate 16 volte minore di un traffic channel, e si usa solo durante il setup di una chiamata, e serve a scambiare informazioni di signaling senza sprecare capacità; TRAFFIC CHANNELS: ; Frequency Correction CHannel: sincronizzazione a livello fisico; Synchronisation Channel: sincronizzazione logica (frame, timeslot); Broadcast Control CHannel: altre informazioni di sistema (identificatore di LA, cella, operatore,...) legate alla rete; Paging CHannel: annunci di paging; Random Access CHannel: richiesta di accesso; Access Grant CHannel: replica alla richiesta di accesso; Tra i control channel dedicati, abbiamo il SACCH (slow) e quello FACCH (fast), attivati quando la chiamata è in corso. Il SACCH è dedicato alla continua interazione tra BS e MS, trasmettiamo informazioni sul power control e misurazioni prese dalla MS su altri canali e altre celle e BS. Queste informazioni sono usate ad esempio durante l handover: per l handover il decision point è nella rete, quindi le misurazioni vanno raccolte dalla BS e inviate alla rete. C è quindi un processo continuo di raccolta e invio di informazioni, trasmesse nell SACCH. Ad esempio, in downlink le BS dicono 110

111 CAPITOLO 7. GSM alle MS quali sono le celle vicine (mediante la lista dei vicini, che viene configurata e trasmessa alle MS). Per ogni cella vicina, abbiamo il numero di frequenza (se noto alle MS, possono impostare il ricevitore su quella frequenza e misurare). In uplink, le MS trasmettono periodicamente le misure alla BS: ci crea un vettore di n componenti, che contiene la lista degli n vicini (è quindi una lista di misure effettuate dalle MS e trasmesse alla BS). Inoltre abbiamo la qualità (probabilità di errore nel blocco) misurata sul canale attuale e il livello del segnale attuale ricevuto dalla MS. In base alle informazioni riguardo l attuale canale e le celle potenziali per l handover, la rete può decidere di implementare l algoritmo di handover o meno (viene fatto continuamente, la gestione della mobilità avviene così c è bisogno di misure sempre aggiornate). Un insieme completo di informazioni viene trasmesso in 480 ms. 7.4 Connection setup Quando si stabilisce una connessione, si comincia sempre con questa procedura di setup della connessione: Figura 7.10: Connection setup Si assume che la MS stia ascoltando il canale broadcast: nel canale broadcast la MS ha tutte le informazioni relative al sistema (LA, cella,...) e la struttura TDMA di quella specifica cella (8 timeslot, più complicato di quanto sembra, ci sono varianti che portano ad avere i canali in posizioni differenti). Ricevendo il canale broadcast, la MS decodifica le informazioni inviate dalla BS e ad esempio localizza il timeslot 111

112 CAPITOLO 7. GSM per trasmettere in uplink. Solo se la MS è perfettamente sincronizzata, la procedura di setup può cominciare. A questo punto possiamo cominciare la connessione con una comunicazione dalla MS alla rete. La prima trasmissione è un access burst sul RACH (usato per trasmettere pacchetti corti, è un canale ALOHA con accesso causale, solo uplink, su cui la MS trasmette la prima richiesta). Se la BS riceve la richiesta, abbiamo una risposta immediata usando il AGCH (canale logico solo in downlink). Ovviamente la MS deve sapere dove ascoltare (frequenza e slot): per farlo si basa sulla mappa dalla struttura TDMA trasmessa nel canale broadcast. La risposta contiene un etichetta casuale da matchare con quella inclusa nella richiesta (possono esserci diverse trasmissioni da diverse MS e bisogna identificare la singola richiesta), e l assegnamento di un particolare signaling channel (SDCCH), uno di quelli disponibili (si invia un numero, a cui corrisponde un canale, con cui la MS si imposta - frequenza e posizione nella struttura). Questo SDCCH è usato per un qualche tempo, per trasmettere tutti i messaggi di signaling a livello 3 (usati per stabilire una specifica connessione: setup della chiamata, data channel,...): la procedura stabilisce un canale fisico tra la MS e la rete. Solo alla fine di questa procedura, il traffic channel viene assegnato e la voce può essere trasmessa. Infatti prima allochiamo il signaling channel (SDCCH), su cui scambiamo informazioni necessarie per capire che cosa sta chiedendo l utente (servizio da stabilire,...), dopo si assegna un traffic channel TCH per trasmettere voce, dati,... Oltre al traffic channel, si assegna anche un SACCH, e vengono attivati in simultanea fino alla fine della chiamata. Se durante la chiamata abbiamo un handover, possiamo modificare il SACCH, e renderlo veloce (FACCH), modificandone la capacità. Dobbiamo ora mappare i canali logici su quelli fisici: i canali fisici sono noti (gli 8 timeslot in un frame), ogni timeslot ripetuto in ogni frame forma un canale fisico. Come mappiamo tutti i canali logici in questi 8 timeslot per portante? Questo esempio rappresenta un multiplexing tra traffic channel e control channel. La coppia TCH-SACCH rimane sempre unita, e occupano lo spazio di un canale fisico (1 timeslot). Come fanno a stare nello stesso slot? Trasmettiamo informazioni usando 112

113 CAPITOLO 7. GSM Figura 7.11: TCH+SACCH i normal burst, quindi 114 bit per slot: la durata del timeslot è 577 µs, e quella del frame è 4.6 ms (sono 8 timeslot). Se trasmettiamo un normal burst per frame (1 slot per frame), abbiamo un rate medio di 114bit 4.6ms = 24.7 kbit/s. Il coding della voce parte da 13 kb/s, aggiungendo ridondanza si arriva a 22,8 kb/s la capacità in un timeslot per frame è maggiore di quella necessaria (di 1.9 kb/s), e la capacità in più viene usata per il SACCH. In realtà questa capacità è pari a 1 slot ogni 13: se usiamo 12 slot per la voce, e poi ne saltiamo 1 (e lo usiamo per trasmettere il SACCH), in media andiamo bene. In realtà non usiamo tutta questa capacità in più, ma solo la metà: ogni 26 timeslot, 24 sono per la voce, 1 per il SACCH e 1 viene lasciato vuoto. Figura 7.12: TCH+SACCH Possiamo numerare i frame: 0, 1, 2,..., 25, e assumiamo di ricominciare da 0. Questo gruppo di 26 frame è il multiframe (o superframe), cioè il frame di gerarchia superiore. Se consideriamo solo lo slot nel frame 0, 1,..., creiamo una struttura come quella in figura, con una gerarchia con frame e multiframe (26 frame, è lungo 120 ms). Ovviamente le MS devono conoscere questa numerazione dei frame, altrimenti non so quale e quando verranno trasmesse le varie informazioni. Nel canale di sincronizzazione SCH ho anche informazioni sull attuale numero di frame (la MS non 113

114 CAPITOLO 7. GSM saprebbe decodificare le informazioni). La capacità di una portante è data dal rate medio di informazione trasmessa a una data frequenza. Se trasmetto 114 bit in tutti gli slot, questo è il rate di informazione (intorno a 200 kb/s, cioè ). Il rate in un singolo slot è 24.7 kb/s. Nell esempio la capacità del control channel è C/26, quella del traffic channel è 24C/26. Dobbiamo inoltre gestire molti altri canali (broadcast,...): dove li mettiamo? Assumiamo di allocare tutti gli altri canali (tranne SDCCH) nello slot 1. Dobbiamo quindi creare la nostra struttura. La struttura usata non è lunga 26 frame (come nel traffic channel): Figura 7.13: Common control channels Abbiamo gli 8 timeslot che si ripetono continuamente, e sono organizzati in modo gerarchico in modo da avere, nel caso di traffic channel, 26 frame che si ripetono. Ma se guardiamo gli slot usati per trasmettere i signaling channel, la periodicità non è 26, ma 51 (la multiframe è composta da 51 frame), quindi la capacità va divisa per 51 (e non 26). Poiché ci riferiamo a diversi timeslot, la periodicità dei layer superiori è completamente indipendente (non dobbiamo per forza avere la stessa lunghezza del superframe). Se rimaniamo nello stesso canale fisico nello stesso timeslot, possiamo avere 51 qua e 26 là. La regola generale è che, per quegli slot usati per i common channel, si usa la periodicità di 51, per gli slot usati per i traffic channel, si usa la periodicità di 26. Questa flessibilità semplifica il modo di organizzare i canali: in questo caso, usando un solo upper layer, il numero totale di frame da considerare sarebbe 51 26, che è troppo. Nella superframe di 51 frame, serviamo FCCH, SCH, BCCH, CCH, con diverse dimensioni in base al canale. Questi canali sono solo in downlink, nello stesso slot usato per questi canali in downlink, serviamo il RACH in uplink (tutti i frame sono dedicati al RACH). Poiché 114

115 CAPITOLO 7. GSM Figura 7.14: Common control channels il canale è simmetrico, abbiamo abbondanza di capacità per il RACH (in condizioni normali, la probabilità di collisioni in questo sistema, che è ALOHA, è bassa, perché il traffico è molto minore della capacità). Se la cella è piccola (non troppe portanti), è sufficiente un timeslot per tutti i signaling channel, in casi speciali si usano 2 slot. SDCCH è associato a uno o più timeslot, abbiamo un multiframe di 26 frame, in uno slot abbiamo 8 canali è 8 volte più lento del traffic channel. Figura 7.15: SDCCH Usiamo 24 slot su 26 per trasmettere 8 canali (diverso colore = diverso canale). 7.5 Voice coding Figura 7.16: Voice coding Partiamo da voce codificata ogni 20 ms, a 13 kb/s, abbiamo 260 bit (non sono tutti uguali, stiamo usando un vocoder, e quindi dipendono dai parametri che gli diamo), abbiamo diverse classi di bit, codificate in modo differente. Alla fine abbiamo un blocco codificato di 456 bit, che corrispondono quindi a 20 ms (22,8 kb/s). Il problema è che non posso trasmettere 456 bit in un frame (114 bit), quindi devo usarne 4 (1 segmento di voce in 4 timeslot, tipicamente in frame differenti). Il blocco basic è 115

116 CAPITOLO 7. GSM un blocco di 4 burst (blocco di informazione logica). A causa delle variazioni nelle caratteristiche del canale, per avere un coding efficace del canale, dobbiamo allargare (spread) gli errori, usando interleaving, non bit a bit ma blocco a blocco (abbiamo 4 blocchi). Figura 7.17: Voice coding Usiamo lo stesso canale usato per la voce anche per trasmettere dati: ovviamente il processo di coding è diverso. Creiamo gruppi di 240 bit (ogni blocco contiene 48 bit di informazioni e 12 di header) e li codifichiamo per avere un blocco di 456 bit. Il rate medio è 9.6 kb/s, basso ma ancora usato in alcuni casi. Figura 7.18: Data channel coding Esiste un modo analogo anche per codificare i signaling: 116

117 CAPITOLO 7. GSM Figura 7.19: Signaling coding 7.6 Signaling Nei sistemi telefonici, abbiamo 2 tipi di signaling: User signaling: si usa per chiedere informazioni alla rete e ricevere informazioni sullo stato delle richieste, è l interfaccia tra la rete e l utente; Network signaling: si usa nella rete per comunicazioni tra i diversi nodi, per accordarsi su come allocare risorse per i servizi; User signaling L user signaling era analogico all inizio della telefonia, oggi è ancora usato, a meno di avere un telefono IP. L interfaccia utente può essere anche digitale. Il signaling IDSN è il più diffuso. Considero un esempio in cui un utente vuole fare una chiamata (signaling analogico): Figura 7.20: User signaling: analog interface 117

118 CAPITOLO 7. GSM Abbiamo una comunicazione analogica tra il dispositivo e la switching station (local exchange station), e lo stesso per la destinazione. Quando l utente alza la cornetta, una corrente informa la rete che ho alzato la cornetta, e la rete gli trasmette il tono occupato (viene inviato anche al microfono lo sentiamo). L utente seleziona il numero, che viene ricevuto dalla rete (non è analogica, quindi lo converte in informazioni digitali e setta il circuito). A questo punto la rete invia al chiamato un segnale, il ringing tone, e il telefono comincia a squillare. Se l interfaccia è digitale, il tipo di informazione da trasferire è più o meno quella, ma usiamo pacchetti (informazioni codificate) invece dei segnali analogici. Abbiamo in realtà una pila protocollare per definire i messaggi, detti messaggi di livello 3: abbiamo il livello fisico (livello fisico della rete ISDN o del GSM), sopra abbiamo un protocollo di livello 2, uno dei protocolli che derivano da HDSL, e poi abbiamo i messaggi di livello 3, usati per stabilire la chiamata. Abbiamo diversi tipi di messaggi (non entriamo nei dettagli...), usati per la comunicazione tra il terminale utente e la prima stazione telefonica: Figura 7.21: IDSN messages La telefonata in contesto digitale avviene così: Alzo la cornetta e trasmetto un pacchetto SETUP alla rete. Quando la stazione lo riceve, risponde con un SETUP ACK (suona il telefono del chiamante, generato localmente), il chiamante compone il numero (segnale multitono), e vengono trasmessi pacchetti contenenti il numero composto. La rete riceve ed elabora CALL 118

119 CAPITOLO 7. GSM Figura 7.22: Basic call PROCEEDING, e quando ha terminato invia un pacchetto SETUP al chiamato, che risponde con CALL PROCEEDING e ALERTING (avverte che il telefono sta suonando). Questo pacchetto viene replicato nella rete, e anche il chiamante lo sente (ringing tone, può essere generato dalla stazione e non dal telefono). Infine, quando il chiamato alza la cornetta, c è un messaggio di CONNECT, a cui corrisponde un messaggio CONNECT ACK, CONNECT viene replicato dalla rete al telefono, che risponde con un CONNECT ACK. A questo punto si comincia a trasmettere voce: usiamo un canale per scambiare informazioni e un canale fisico separato per la voce. Nel caso precedente (caso analogico), usavamo la stessa interfaccia analogica per trasmettere voce e signaling analogico. Quando finisce la chiamata, rilascio la chiamata usando questi messaggi: Figura 7.23: Basic call 2 Oltre alle telefonate, si possono fare anche altre cose con la rete telefonica. Ci sono servizi supplementari, tra cui identificare il chiamante, chiamare numeri interni e fare conferenze. 119

120 CAPITOLO 7. GSM Network signaling Il network signaling è l insieme di protocolli, messaggi e funzioni usati dalla rete per organizzare e assegnare risorse per i servizi specifici che devono essere forniti agli utenti. Si usa l interfaccia tra l utente e il network per accedere e richiedere i servizi, e usiamo il network signaling per fornirli (circuiti per le telefonate,...). L intera rete telefonica è basata su questo concetto di Common Channel Signaling (CCS) (common channel = packet switching). Il signaling per un servizio orientato al circuito è in realtà un servizio basato su pacchetti (servizio datagramma). Quindi control plane signaling e data plane sono completamente separati e usano approcci completamente differenti: il signaling è basato sul packet switching, i servizi voce sono basati su circuiti fisici. Control plane (network) e user plane hanno alcuni collegamenti, ma sono servizi abbastanza separati e indipendenti, che possono essere gestiti in modo differente. C è uno stack protocollare, detto SS7, usato per il signaling nelle reti telefoniche. Figura 7.24: SS7 Il data plane è dove creiamo i circuiti per le chiamate telefoniche, e abbiamo stazioni telefoniche di switching che switchano i canali fisici per creare i collegamenti end-toend. É quindi un insieme di link con un gran numero di sottocanali, e le stazioni interconnettono uno specifico circuito input con uno specifico circuito output. Al di sopra abbiamo la signaling network (parte logica): è la parte della rete che controlla la parte fisica. La parte logica ha il compito di scambiare pacchetti, in modo che la rete possa trovare circuiti in grado di trasportare le chiamate. Perciò il routing è un compito del signaling network. I nodi che capiscono la pila protocollare del signaling 120

121 CAPITOLO 7. GSM sono diversi (STP, sono una specie di routers, in grado di inviare e ricevere pacchetti, non sono SSP). Se dobbiamo usare un circuito tra 2 stazioni, perchè stiamo creando il circuito end-to-end per una telefonata, e dobbiamo scegliere uno dei circuiti nei collegamenti tra i due, dobbiamo avere un cambio in uno dei 2 router a sinistra con uno dei 2 router a destra, in modo da essere d accordo sullo specifico circuito da usare. Una volta che sono d accordo, inviano un comando alla switching fabric per connettere input e output. La rete che connette la parte logica può essere, in teoria, fisicamente separata: in realtà tendiamo a prendere parte della banda dei collegamenti tra gli switching nodes e usare questa capacità per interconnettere i router. Non abbiamo solo questi nodi speciali per trasferire pacchetti, abbiamo anche Service Control Point (SCP). Sono end-points di signaling, fanno parte della signaling network ma non instradano traffico (è come se fossero gli utenti della rete). Figura 7.25: SS7 Una volta che ho creato la struttura, se sostituisco questi 2, e invece che usare circuiti fisici, uso IP tunnels,..., l architettura di rete non cambia molto. Se cambio il modo di trasportare bit o voce, non devo cambiare molto l architettura di signaling, perché alla fine devo creare un flusso di informazioni da una parte all altra. Come detto, i router tendono ad avere una piccola parte della capacità disponibile tra gli switching nodes per il trasporto di pacchetti. I collegamenti, che hanno un gran numero di circuiti, sono detti transport trunks. Un trunk è quindi un link di comunicazione con un numero di sottocanali multiplati insieme. 121

122 CAPITOLO 7. GSM Il signalink network è diverso dall IP network, è basato su una pila protocollare a 3 livelli: fisico, layer 2 e layer 3. Il livello 3 non è IP, ma si chiama MTP-3 (Message Tranfer Part-3). Senza entrare nei dettagli, i principi di base sono gli stessi di IP (il meccanismo di fondo non cambia), con piccole differenze (a noi non ci interessa): il layer 2 è il layer di collegamento, con il compito di creare frame (come HDLC), il layer-3 è simile a IP (commutazione di datagramma). Figura 7.26: SS7-2 Al di sopra dei 3 layer, c è un protocollo: con IP posso usare protocolli di trasporto (TCP), e poi protocolli applicativi (HTTP), qua, usando ISDNUP, posso trasmettere messaggi direttamente a livello 3, incapsulando messaggi ISUP direttamente in MTP- 3. L altra possibilità è quella di usare protocolli più complessi, in particolare ASE (livello applicativo): il layer applicativo usa SCCP (Signaling Connection Control Part), equivalente a TCP, basato su connessioni e non su datagramma (apriamo e chiudiamo una connessione SCCP). C è inoltre TCAP (Transaction Capabilities Application Part), una sorta di protocollo di sessione (sessione = è un metodo per collegare messaggi di livello applicativo che appartengono alla stessa sessione e che forniscono lo stesso servizio, ad esempio video streaming). Ho poi la parte applicativa, con OMAP (Operation, Maintenance and Administration Part) e ASE (Application Service Element). Ho quindi 2 possibilità: applicazioni: ASE (nome generico), poi TCAP e SCCP e il resto dello stack; 122

123 CAPITOLO 7. GSM Figura 7.27: SS7 stack messaggi diretti nel data field: ISUP, si usa per le basic call (settare e chiudere una chiamata); Per tutto il resto (IN = intelligent network), si usa la pila completa. Con ISUP dobbiamo soltanto trovare un path nella rete, con un circuito disponibile, riservare il circuito e attivarlo. E facile fare il mapping perché per ogni messaggio dell user signaling (parte sx), abbiamo un messaggio simile anche per il network signaling (parte dx): Figura 7.28: ISUP Dobbiamo quindi soltanto usare questi messaggi per creare un circuito. Espandiamo ora quanto visto prima: Quando la rete riceve il messaggio INFORMATION, inizia a instradare la chiamata (trasmette IAM per trovare la destinazione finale, riservando il circuito fisico nel frattempo). Quando poi il chiamato alza la cornetta, abbiamo la connessione e viene stabilita la chiamata. Quando viene ricevuto il CONNECT ACK, la signaling part termina, e abbiamo il circuito che può essere usato. Tutti i messaggi visti sono messaggi ISUP (siamo in una basic call). 123

124 CAPITOLO 7. GSM Figura 7.29: Basic call in SS7 In generale i servizi applicativi delle IN sono semplicemente applicazioni (WEB, ,...) che viaggiano al di sopra della signaling network. Un applicazione è end-to-end, quindi è come un host connesso con un altro host in grado di scambiare messaggi a livello applicativo per l implementazione di servizi specifici. Figura 7.30: IN application services Nel caso del signaling network, abbiamo diversi nomi: abbiamo una periferia intelligente (IP, non è Intelligent Peripheral), l elemento che interpreta i messaggi dell utente da elaborare a livello applicativo della rete. Dall altra parte abbiamo il Service Control Point: una sorta di server dei servizi (i messaggi sono peer-to-peer, non clientserver). I messaggi scambiati sono uniti in una sessione e collegati mediante messaggi TCAP che creano una lista di messaggi che appartengono alla stessa transazione (sessione). In ogni sessione abbiamo un inizio, una fine, messaggi intermedi e di errore. All interno di una sessione, possiamo avere specifici elementi di risposta (scambio di messaggi domanda-risposta). Questi elementi hanno i loro messaggi specifici, in 124

125 CAPITOLO 7. GSM particolare invoke-returnresults sono i messaggi principali nel caso tutto vada bene: invoke serve a invocare l esecuzione di una funzione remota, returnresults è il risultato dell esecuzione di una funzione remota. Vediamo un esempio: Figura 7.31: IN service example: 800 mapping Questo è il mapping di un numero verde (call center, gratuito): il numero è lo stesso per tutti quelli che chiamano il call center. Facciamo il numero, che non è un vero numero di telefono (non è uno specifico operatore nel call center), è un alias (non posso usarlo nei messaggi ISUP per instradare una chiamata, è come usare un nome alfanumerico in Internet). Dobbiamo quindi mappare questo alias in un numero reale. Il mapping non è 1 a 1: in base all ora, al luogo,..., la chiamata viene inviata in un determinato call center fisico, e da lì a uno specifico operatore. Alla fine di tutto è come avere una chiamata tra te e l operatore fisico. Digitiamo il numero, e l IP (Intelligent Peripheral) nella stazione telefonica di accesso con cui siamo connessi riconosce che il numero non è reale, quindi non inizia il setup di una sessione ISUP, ma invia la chiamata al servizio specifico presente nell IP (il messaggio viene ricevuto e processato dall IP). Quindi comincia il processo: il numero deve essere mappato in un numero reale: il mapping viene eseguito dal SCP in un qualche punto della rete. Il primo messaggio della sessione è un messaggio BEGIN. All interno della sessione, ora invochiamo la funzione di mapping nel database, e gli passiamo come parametro il numero 800-xxxxxx per ricevere il numero vero. Ora SCP non risponde con un numero, ma con un altra richiesta (non può fornire subito il numero). Il risultato è 125

126 CAPITOLO 7. GSM l invocazione di un altra funzione, stavolta nell IP, necessaria per prendere cifre addizionale. Per farlo, l IP chiama un ricevitore automatico, che comincia a fare domande (premi la cifra in base al servizio che vuoi): alla fine otteniamo delle cifre, che sono il risultato della seconda funzione, e che vengono mandate all IP. Con tutte queste informazioni, inviate al SCP, viene fatto il mapping, da cui si ricava il numero dell operatore, che viene passato all IP, che fa una basic call all operatore. Il mapping è molto comune nelle reti telefoniche, in Internet, nella gestione della mobilità (non può essere fatta indipendentemente dalla posizione dell utente, durante una chiamata chiedo di chiamare un numero, il server localizza l utente e mi fornisce una sorta di numero reale che dipende dalla posizione dell utente, con cui posso trovare un path con l utente e raggiungerlo. Quando l utente si muove e riceve un altra chiamata, l HLR fornisce un nuovo numero. In seguito vedremo che succede quando si cambia operatore...), GSM signaling In GSM, l user signaling è in sostanza lo stesso del network tradizionale, tuttavia c è una differenza tra utente mobile e fisso: quello mobile non è sempre connesso alla stazione telefonica, quello fisso sì. Nel caso mobile, i canali signaling vengono assegnati solo quando sono necessari. Inoltre tra MS e MSC abbiamo il BTS e BSC: per essere connessi alla stazione, dobbiamo avere un canale sull interfaccia radio e una sorta di circuito virtuale tra il MS e il MSC in grado di far comunicare l interfaccia utente direttamente. Dobbiamo trovare il modo di ricreare con un circuito virtuale l equivalente di un circuito fisico come quelli delle linee fisse. A parte ciò, i messaggi che scambiamo solo gli stessi. Il network signaling del GSM è uguale a quello del servizio telefonico tradizionale, tuttavia abbiamo funzioni speciali per la gestione della mobilità (c è un applicazione apposita, MAP = Mobile Application Part) Ovviamente abbiamo anche ISUP: se facciamo una basic call, abbiamo lo stesso signa- 126

127 CAPITOLO 7. GSM Figura 7.32: GSM SS7 ling della telefonia tradizionale. C è una funzione aggiuntiva, BSSAP = Base Station Sub-system Application Part, che è l interfaccia tra la signaling network e la rete di accesso (access network), detta BSS. Nelle reti mobili, a differenza delle reti tradizionali, non abbiamo un cavo tra MS e MSC: se vogliamo fare una chiamata, dobbiamo comunque mandare i messaggi di SETUP, ALERTING,... Come possiamo farlo con tutti questi elementi in mezzo? Usiamo un numero di piccoli protocolli: Figura 7.33: Access Network Signaling Tra la MS e BTS usiamo un livello fisico (quello del GSM), al di sopra abbiamo signaling channel (SDCCH, SACCH,..., in generale un dedicated signaling channel), 127

128 CAPITOLO 7. GSM poi un protocollo di livello 2, LAPDm, derivato da HDSL. Tra BTS e BSC abbiamo un canale fisico (di solito un circuito PDH), e al di sopra un protocollo di livello 2 (LAPD), che crea i frame. Abbiamo 2 collegamenti separati: come li uniamo? Usando un tunnel tra i 2 collegamenti. Tra il BSC e il MSC abbiamo la parte inferiore del SS7 (MTP, layer 1, 2 e 3). Tra questo (?) e questo (?) abbiamo la signaling network, usata solo per trasportare pacchetti. I pacchetti vengono trasportati usando lo stack del sistema di segnaling SS7, aggiungendo un tunnel TCP (equivale a una connessione TCP). Trasferiamo usando DTAP (Direct Transfer Application Part), un modo di creare un tunnel tra MSC e MS (è come IP tunnel). In realtà DTAP si usa solo tra MSC e BSC. Ciò che trasferiamo su questo tunnel sono messaggi appartenenti a 2 funzioni principali, CM e MM. CM è identico all user signaling visto in precedenza (SETUP, ALERTING,...), ma ora i messaggi viaggiano non direttamente ma attraverso un tunnel, MM include i messaggi usati per la gestione della mobilità (Location Update, paging). Questa è la pila protocollare in HLR: Figura 7.34: Protocol Stack in HLR Poiché ciò avviene gestendo i canali fisici sull interfaccia radio (facciamo signaling, quindi ci vengono assegnati i canali fisici), ciò è fatto mediante la funzione RR (Radio Resource management) localmente (il MSC non è coinvolto, è solo una funzione della parte radio). Per creare la connessione e gestire i canali, ho questa componente RRM che è trasportata dagli stessi protocolli di livello inferiore tra MS, BTS e BSC. Come detto, la logica per la RR è nel BSC, tuttavia per allocare fisicamente e usare i canali, serve la cooperazione del BTS e delle MS. Questa parte non è presente nelle reti tradizionali. 128

129 CAPITOLO 7. GSM BSC deve mandare messaggi di configurazione al BTS (ricevere feedback e mandare comandi di configurazione, switching,... necessari per creare e allocare risorse). Ciò avviene attraverso questo protocollo locale, BTSM (BTS Management). C è un altro protocollo di gestione tra MSC e BSC: BSC non è come uno schiavo di MSC. Mentre BTS ha un intelligenza limitata e semplicemente esegue i comandi provenienti dal BSC, ora abbiamo 2 elementi intelligenti, tuttavia abbiamo la BSSMAP (BSS Mobile Appl. Part), usata solo per scambiare i messaggi usati per la coordinazione dello switching eseguito da BSC e quello eseguito da MSC (ad esempio durante un handover, serve un protocollo per gestire le funzionalità di switching). Questo è uno schema conclusivo: Figura 7.35: Signaling Protocols Come sono gestiti i vari elementi? Abbiamo da un lato la rete di accesso (BSC, BTS, MS) e il resto (core network) dall altra parte. Il controllo avviene mediante BSSAP: a destra abbiamo MAP (per gestire la mobilità a livello applicativo, ad esempio interconnette switching stations con HLR) e ISUP (signaling part tradizionale usata per le basic call). Combinando le diverse procedure in momenti differenti della chiamata, combiniamo signaling a livello applicativo (MAP) e signaling a livello 3 (ISUP). 7.8 Numeri e identità Abbiamo un numero di identificatori, usati nelle diverse procedure: 129

130 CAPITOLO 7. GSM MSISDN (Mobile Station ISDN Number): il numero di telefono dell utente; MSRN (Mobile Station Roaming Number): quando siamo in luoghi specifici, il numero di telefono viene mappato in un altro numero, per essere raggiungibile. Handover Number (se necessario): numero aggiuntivo, usato durante un handover (è usato per concludere il re-routing nella nuova posizione). Il formato (cifre, operator code,...) è lo stesso di un numero di telefono. Oltre a questi ci sono gli identificatori: hanno una struttura differente e sono specifici di questo sistema. Tutte le reti radiomobili standardizzate a livello internazionale hanno la stessa struttura. Abbiamo: IMSI: è un identità, con un formato differente dal numero di telefono; TMSI; IMEI; Se facciamo una procedura di signaling, usiamo sia il numero di telefono sia le identità. Inoltre esistono anche gli ID per la rete: LAI (Location Area Identity); CGI (Cell Global Identity): è l ID della cella, è diverso da quello della BS in quanto una BS può servire più celle (1 antenna con 3 o più celle); RSZI (Regional Subscription Zone Identity); BSIC (Base Station Identity Code); Quindi ogni BS ha il suo codice, trasmesso in broadcast, ogni regione può averlo (una volta si usava di più, oggi poco). 7.9 Servizi di comunicazione in GSM I servizi di comunicazione in GSM sono classificati in 2 categorie: 130

131 CAPITOLO 7. GSM Basic Services: possono essere suddivisi in: Teleservices: servizio completo fornito dalla rete, che include il layer applicativo (servizi voce, SMS); Bearer Services: solo un servizio per trasferire bit da una parte all altra, indipendentemente dall applicazione che li ha generati; Supplementary services: sono gli stessi della rete fissa (PSTN); La divisione tra Teleservices e Bearer Services è fondamentale: i primi sono l esempio di rete non neutrale (la rete fornisce tutto, anche il servizio), nei secondi, almeno in teoria, la rete non può controllare i bit che stiamo trasferendo. Le reti sono state disegnate per i teleservices (3-4 anni fa l 80-90% dei guadagni degli operatori veniva dalle telefonate, cioè teleservices), oggi il traffico dati, cioè bearer services, è l 85% (ad oggi LTE fa solo bearer services, quindi niente telefonate classiche, nel caso di chiamata si usa GSM/UMTS). SMS: è il servizio dati più costoso, è un teleservice, ci sono server speciali (come quelli delle mail, ma dedicati agli SMS) che interagiscono diversamente con la rete, attraverso protocolli di signaling. I messaggi vengono trasferiti tra terminali mobili e Service center usando canali di signaling (se non siamo connessi, otteniamo un SDCCH, su cui riceviamo l SMS). Figura 7.36: SMS 131

132 CAPITOLO 7. GSM 7.10 Procedure di signaling Esempi di procedure di signaling sono: Network access: Come accediamo alla rete?; Mobility: LU; Originated Call Setup: quando facciamo una chiamata; Handover; Terminated Call Setup: quando riceviamo una chiamata; Registrazione e Location Update Abbiamo una MS, e lo accendiamo: la prima operazione eseguita dalla rete è la selezione della cella, e poi la registrazione (setup di una sessione di signaling per informare la rete che la MS è attiva). Selezione della cella: sappiamo che abbiamo il BCCH su uno specifico timeslot di una specifica portante nella rete GSM. Questa portante, detta c0 e usata per la selezione della cella, in downlink usa dummy burst per riempire gli slot vuoti (non usiamo power control, abbiamo un profilo costante di potenza in modo da stimare l attenuazione del canale). La selezione della cella si basa sull analisi della portante c0 di ogni cella della rete: la MS comincia a fare scanning delle frequenze per trovare i signaling channel per tutte le BS disponibili nel vicinato. All inizio siamo solo a livello fisico: si identifica il FCCH (sincronizza con la portante BTS), poi decodifico il BCCH e ottengo l identità della rete (operatore e identità della BS). A questo punto mi muovo su un altra portante e ripeto: creo una lista di tutte le BS che posso raggiungere, con informazioni su potenza ricevuta, cell-id, operatore,... In base a questa lista, facciamo la selezione: tipicamente si sceglie tra le BS del proprio operatore e, se ce ne sono, prendo la più forte in termini di potenza di segnale. La velocità di scanning dipende dall algoritmo utilizzato dalla MS. Registrazione: una volta scelta la cella, la MS inizia una procedura di IMSI attach, 132

133 CAPITOLO 7. GSM con cui informa la rete di essere disponibile e attiva. La procedura è molto semplice: si fa un accesso al canale (richiesta di accesso casuale, risposta con grant di accesso, assegnamento di un SDCCH, autenticazione), quindi comincia la procedura di signaling, che consiste in uno scambio di messaggi (questa è la mia identità, confermato, sei attivo). La procedura può essere associata a un LU: nella SIM viene memorizzato il LAI. Quando accendiamo il telefono, legge il LAI e lo confronta con quello trasmesso dalla cella scelta: se è lo stesso, faccio un IMSI attach, altrimenti faccio anche un LU. Possiamo avere diversi tipi di LU: La nuova LA e quella vecchia sono nella stessa MSC/VLR Area: in questo caso modifico l informazione nel VLR senza informare l HLR (modifico l informazione localmente ma non globalmente). Figura 7.37: Location Update - Intra MSC La procedura inizia a partire dalla MS (come ogni call setup): invio una richiesta di accesso casuale sul RACH, ricevo l assegnamento sull AGCH, e sul canale ottenuto per il signaling (SDCCH) comincio ad inviare messaggi di signaling. Una volta che viene fornito il signaling channel alla MS, abbiamo un tunnel diretto tra MS e MSC (sull interfaccia radio ci viene assegnato un signaling channel, nel frattempo la rete crea un tunnel verso il MSC). Trasmettiamo richieste di LU (è il primo messaggio dopo l autenticazione, include TMSI e la precedente LA) al MSC, associato direttamente con il database (VLR). Una volta che viene ricevuta la richiesta, il MSC aggiorna il database con l informazione sulla nuova LA. Come fa il MSC a sapere che il LU è locale e non globale? Viene trasmessa 133

134 CAPITOLO 7. GSM la vecchia LA, lui conosce quella nuova (ha ricevuto il messaggio da uno specifico Station Controller), confrontandole, vede se l aggiornamento è globale o locale (aggiorniamo localmente). Dal TMSI recuperiamo l identità permanente (IMSI), perchè il TMSI è assegnato dal VLR. Una volta identificato il terminale, generiamo una nuova identità, che viene trasmessa al MS con un messaggio di ACK. Figura 7.38: Location Update - Intra MSC Se guardiamo il canale radio e i messaggi scambiati, vediamo un meccanismo di request-reply (con cui viene assegnato uno specifico SDCCH, su cui inviamo richieste di LU contenenti TMSI). Prima di proseguire dobbiamo identificare l utente: comincia la procedura di autenticazione, con una richiesta e la risposta. In questo modo l utente è autenticato, e attiviamo la modalità cifrata (algoritmo A5 per la cifratura), dopo di ciò cominciamo la trasmissione (ACK e TMSI, valida una sola volta). Infine abbiamo il messaggio finale, per essere certi di aver ricevuto correttamente TMSI, e la release (messaggio finale per chiudere la connessione). D ora in poi la trasmissione è terminata e il canale è libero; Le 2 LA sono in MSC/VLR Area differenti: dobbiamo modificare l informazione anche nell HLR. In sostanza è solo un aggiornamento in un database. 134

135 CAPITOLO 7. GSM Figura 7.39: Location Update - Inter MSC Quando ci accorgiamo di essere in una nuova LA, veniamo connessi al nuovo MSC, quindi la comunicazione tra MS e network avviene attraverso il nuovo MSC/VLR. Facciamo una channel request fornendo il LAI: in base a questo, il nuovo MSC si accorge che la LA è di un altro MSC, quindi bisogna comunicare tra il nuovo VLR e il vecchio VLR. Un informazione importante da comunicare è il mapping tra TMSI e IMSI: il nuovo VLR non conosce l IMSI (è memorizzato nel vecchio VLR), quindi bisogna ottenerlo dal vecchio VLR. Con la nuova identità bisogna informare l HLR che la LA è cambiata, in particolare la prima operazione da fare, dato che non c è il dato nel nuovo VLR, è la sua creazione con informazioni essenziali sull utente (servizi disponibili, informazioni generali), che vanno recuperate dall HLR. Abbiamo poi le procedure di sicurezza e il LU, e, in caso di operazioni eseguite correttamente, c è l aggiornamento dell HLR con l ACK di risposta. Infine si invia un comando per cancellare il dato vecchio. Nulla è cambiato da prima per quanto riguarda l interfaccia tra utente e network: la differenza è ciò che succede dietro il MSC, in quanto dobbiamo aggiornare anche globalmente. Il protocollo utilizzato per questi scambi di messaggi è MAP. 135

136 CAPITOLO 7. GSM Call setup Figura 7.40: Location Update - Inter MSC Abbiamo meccanismi diversi per chiamate originated (il chiamante è il terminale mobile) e terminated (il chiamato è il terminale mobile) (ovviamente esistono le chiamate mobile-to-mobile). Mobile terminated call Assumiamo di avere un terminale fisso che chiama un terminale mobile: Figura 7.41: Mobile terminated call É più difficile perché dobbiamo localizzare l utente chiamato (non sappiamo dov è, sappiamo solo il numero di telefono). Quando chiamiamo un numero mobile, non dobbiamo sapere dov è, ci basta conoscere il numero (MSISDN, associato con la SIM nella MS), e usiamo quello. La struttura del numero è quella classica: prefisso nazionale (+39), prefisso di destinazione nazionale (347) e numero del subscriber ( ). Questa è l unica informazione che serve al chiamante. Il call setup per un utente fisso comincia con le procedure viste in precedenza (scambio di informazioni tra utente e il primo switching center nella rete). Dopo il primo scambio di signaling (analogico/digitale), il primo switching center dell operatore fisso (quindi la rete) analizza il 136

137 CAPITOLO 7. GSM numero di telefono. Per una basic call, il numero di telefono è l unico parametro delle procedure di routing, attivate dall ISUP signaling (usato per instradare chiamate nella rete step-by-step, cioè stazione per stazione fino alla fine, seguendo un path). Durante questo processo (basic call SS7), noi riserviamo un circuito (nella telefonia tradizionale). La destinazione del processo di routing per creare un path (circuito fisico o flusso di pacchetti) è il Gateway MSC dell operatore dove è l utente. Non raggiungiamo l utente (non possiamo completare il routing della chiamata in questo processo), ma dobbiamo fermarci in un punto intermedio, il GMSC. Prima del GMSC, la chiamata è instradata come una chiamata regolare utilizzando l ISUP signaling SS7 (niente servizi intelligenti). Come fa la rete ad instradare la chiamata esattamente in quel gateway? Il GMSC è identificato dal national destination code (347), tutte le chiamate con queste 3 cifre verranno instradate allo stesso GMSC (ogni GMSC è identificato univocamente da 3 cifre). Prima del gateway, creiamo fisicamente il path, poi sospendiamo il call setup prima di ricevere informazioni aggiuntive per completare il routing. Comincia quindi un processo per identificare la posizione attuale dell utente: il GMSC è sempre quello, indipendentemente dalla posizione dell utente. Dobbiamo perciò continuare il routing della chiamata fino al MSC nell area in cui è presente l utente. Come identifichiamo uno specifico GMSC? Abbiamo solo il numero di telefono, il GMSC invia una query all HLR (diversa dall ISUP signaling, vedi mapping dei numeri verdi), chiedendo un mapping con un altro numero da instradare. Figura 7.42: Mobile terminated call 2 Il numero di telefono dell utente NON può essere instradato perché, da qua in poi, dobbiamo sapere esattamente dov è l utente (non può completare il routing, come i numeri verdi, se non abbiamo il numero vero). La query è a livello applicativo, quindi 137

138 CAPITOLO 7. GSM MAP query, un livello applicativo del sistema di signaling SS7, all HLR. L HLR riceve questo numero, cerca nel database il mapping con l IMSI, e cerca con questo dato nel database delle posizioni (Location database), dove per ogni Subscriber Identity è indicato il MSC/VLR dove è attualmente l utente. Se viene fatta LU, l HLR conosce sempre esattamente la posizione dell utente (in termini di MSC/VLR). Ciò non è sufficiente: abbiamo bisogno di un numero per il routing. L HLR, prima di rispondere al GMSC, invia un messaggio MAP al VLR con una richiesta di informazioni di routing (Routing information request), avente come parametro IMSI. Quando VLR riceve la richiesta, fornisce/assegna un Mobile Station Roaming Number (MSRN), un numero di telefono adatto al routing (ha una struttura che corrisponde alla topologia fisica della rete e può essere usato per il routing fino a quella switching station). Il numero è come se fosse il numero esatto dell utente al momento, nell attuale posizione. Il VLR associa questo numero all utente (momentaneamente o permanentemente), e quindi risponde all HLR con questo numero (MSRN), che ora può rispondere al GMSC fornendo questo numero. Quindi il GMSC fornisce un numero permanente, e l HLR replica con uno temporaneo (è un mapping 1 a 1, come i numeri verdi). Tutte le query tra GMSC e HLR, e tra HLR e VLR sono gestite dal livello applicativo MAP (sono messaggi di signaling a livello applicativo della rete intelligente). Ora il GMSC ha un altro numero, e il call setup può riprendere, continuando il routing con un altro numero (MSRN). Se proseguiamo con il routing, finiamo nel MSC dove è l utente. La seconda parte del routing è uguale alla prima, basata su ISUP signaling (non a livello applicativo, ma classico signaling, quindi messaggi di livello 3). In qualche modo, alla fine, la parte ISUP è un semplice call setup, ma la controlliamo con questo servizio intelligente usato per gestire la mobilità degli utenti (li localizza). Ora il GMSC può instradare completamente fino all attuale MSC: abbiamo quindo un call setup parzialmente (fino all MSC) completo, ci manca l ultima parte. Il MSC, usando VLR (informazione locale), conosce la LA attualmente visitata (posso avere più LA nella stessa MSC/VLR area): usando il BSSAP e poi giù al BSC, e poi la parte di gestione del BTS per controllare BTS (quindi MSC BSC BTS), cominciamo il processo di paging (cercate voi di capire esattamente ciò che ha detto, io non ce l ho 138

139 CAPITOLO 7. GSM fatta, è a circa 22:00). Diciamo a tutte le BTS di cominciare a inviare sul canale di paging l informazione C è una chiamata in ingresso per l utente, e il numero TMSI. D ora in poi, periodicamente, sul canale di paing, tutte le BS della LA trasmetteranno l informazione C è una chiamata per l utente specifico. Il processo di paging termina quando l utente setta un canale. Come detto, la procedura di paging è una procedura broadcast, non è usata per iniziare il setup (che inizia sempre a partire da una MS). La MS che riceve il messaggio di paging comincia il setup, uguale a quello visto in precedenza per LU. Le MS inviano un messaggio casuale di accesso sul RACH channel, la BTS risponde sull Access Grant Channel assegnando un SDCCH, e una volta che il SDCCH è attivo, la MS invia una richiesta di setup, che contiene l indicazione che il setup è una risposta ad un paging. Quindi il call setup inizia sempre nella parte radio, a partire da una MS. Una volta che il SDCCH è attivo, tutta la catena nella rete di accesso è attiva, cioè abbiamo anche il tunnel tra MS e MSC. Su questo canale abbiamo tutti i protocolli usati per la parte di applicazione di trasferimento diretto. E come se la MS è direttamente connessa a questo canale di signaling fino al MSC. Ora che il SDCCH è attivo, abbiamo una connessione tra MSC in una specifica cella, e connesso con specifiche BS, e MSC. Ora abbiamo una chiamata instradata fino all ultimo MSC, e un link di signaling creato tra MSC e MS (è come le linee fisse, abbiamo una chiamata in entrata e un interfaccia di accesso). In questa interfaccia di accesso, possiamo inviare i messaggi basic usati per il call setup (come in tutte le procedure di user signaling per le basic cal). Usando queto canale, inviamo setup, alerting,..., usati per cominciare la chiamata (il telefono squilla,...). Quando rispondiamo, riceviamo il canale di traffico, e quindi possiamo trasmettere voce sotto forma di pacchetti, e la chiamata è attiva. C è una leggera differenza con quanto visto prima, e riguarda il modo di gestire il timing dell assegnamento dei canali di traffico. Tipicamente, invece che attendere che l utente mobile risponda alla chiamata, viene assegnato il canale di traffico prima che la MS inizi a suonare (early assignment), serve solo ad evitare l attesa di ricevere il canale. 139

140 CAPITOLO 7. GSM Figura 7.43: Mobile terminated call 3 La prima parte è un classico call setup, con un utente fisso che chiama un numero MSISDN (numero telefonico permanente dell utente mobile) tra un utente fisso e il GMSC. La prima parte è gestita dall user signaling (analogico/digitale), e poi abbiamo ISUP signaling nella rete fino al GMSC. Quindi sospendiamo l ISUP routing, e facciamo una query all HLR usando MAP (signaling a livello applicativo), con MSIDSN. L HLR recupera l informazione legata all IMSI, e replica anche con l ultima MSC/VLR visitata dall utente. Con queste informazioni e questi parametri, HLR invia un query routing information request allo specifico VLR in cui c è l utente. VLR assegna un MSRN all utente, che può essere usato per il routing fino al MSC, e lo restituisce all HLR. L HLR lo passa ancora al GMSC (replica alla richiesta): usando questo numero, continua l ISUP part (core routing) attraverso un insieme di Switching Center fino al MSC in cui c è l utente. Abbiamo ora un circuito dal chiamante al MSC del chiamato attraverso il GMSC. Dobbiamo solo completare l ultima parte: abbiamo paging (il comando parte da MSC e arriva a BSC, e poi da BSC a BTS o LA), poi call setup (parte di user signaling modificata per le reti radiomobili), e infine, dopo aver completato la parte user, abbiamo il circuito disponibile fino al chiamante, e la chiamata inizia. Vediamo ora che succede nel caso di roaming internazionale: L utente è in un altra rete (di un altro operatore), e in quel caso il problema è che la prima parte del core routing (fino al GMSC) è la stessa. GMSC fa una query all HLR, 140

141 CAPITOLO 7. GSM Figura 7.44: Mobile terminated call international roaming e questa query è utilizzata per fornire al GMSC un MSRN: ciò avviene perchè di solito c è un roaming agreement, un operatore può fare una query e richiede informazioni sulle altre reti, quindi un HLR può fare una query ad un VLR di un altro operatore. Il MSRN può essere usato per continuare il routing fino al MSC dove c è l utente. Le reti di operatori differenti che hanno accordi di roaming devono scambiarsi signaling per tutti gli utenti che visitano l altra rete. Gli operatori hanno tipicamente parti dedicate di HLR e dell interfaccia di signaling per il traffico internazionale. Ci sono inoltre meccanismi specifici per intercettare e attivare procedure addizionali quando c è un utente in roaming, e ciò è fatto dalla rete locale (messaggi di benvenuto, raccolta statistiche,...). Questo è uno schema riassuntivo: Figura 7.45: Mobile terminated call recap 141

142 CAPITOLO 7. GSM Figura 7.46: Mobile terminated call recap-2 Mobile originated call La procedura in questo caso è più semplice, perché il processo è simile ad un call setup in una rete telefonica fissa. L utente digita il numero del chiamato, e ciò attiva il call setup. La prima parte nell interfaccia radio è sempre la stessa (vedi parti precedenti...). Un caso interessante è quando chiamato e chiamante sono dello stesso operatore mobile: il MSC del chiamante fa direttamente una query all HLR, senza andare al gateway (in tutti gli altri casi ci andiamo, e poi usciamo dalla rete, e continuiamo il setup). Semplicemente analizzando il numero di telefono, il MSC fa una query all HLR. L HLR replica con un MSRN, e quindi la chiamata viene instradata internamente dal MSC del chiamante al MSC del chiamato, e quindi continua come sappiamo (paging,...). Il core routing viene fatto usando ISUP signaling, le queries sono basate su MAP. Quando facciamo una call setup, facciamo anche una query locale per controllare se l utente può accedere a quel particolare servizio (blocchi per numeri specifici,...). L unica differenza è la parte di routing, per il resto è sempre uguale. Se la rete non è una classica rete telefonica, ma è basata ad esempio su IP, si usa un gateway per la traduzione del signaling da SS7 a qualcos altro (vedi corso di Giacomazzi). Questo è lo schema per il call setup: L unica differenza è che abbiamo messaggi SETUP e REPLY a livello 2: dopo questo, 142

143 CAPITOLO 7. GSM Figura 7.47: Mobile originated call Figura 7.48: Mobile originated call-2 il tunnel di livello 2 tra MS e MSC è attivo. Quando chiudiamo la chiamata (tear down), il signaling è trasmesso sul SACCH (durante la chiamata è usato anche per power control,...). Portabilità del numero La flessibilità di questo meccanismo, basato sul mappping di numeri, fornisce servizi aggiuntivi: uno è la portabilità del numero. E un servizio stabilito dall autorità internazionale. Il problema è che il meccanismo basic di routing visto fin ora è basato completamente sull analisi della struttura del numero, e se mi muovo la procedura non funziona. Per gli utenti fissi, una cosa semplice è la call forwarding: 143

144 CAPITOLO 7. GSM Figura 7.49: Number portability - call forwarding Ci sono 2 utenti, il chiamato ha cambiato operatore. Il network donor è quello a cui apparteneva inizialmente il numero. Non ottimizziamo il routing, ma semplicemente instradiamo il traffico fino al donor network, e poi nella switching station configuriamo un call forwarding, che invia la chiamata al nuovo operatore. Ovviamente nello switch del nuovo operatore c è il mapping vecchio-nuovo numero, e completo il call setup. Abbiamo comunque un mapping, il numero usato quando ci muoviamo tra gli operatori lo usiamo come un alias, lo usiamo per instradare chiamate, ma poi lo mappiamo in un numero reale (nel range del network del nostro operatore). Il mapping è locale, quindi continuiamo con il routing finchè non arriviamo alla fine (lo switch nel disegno è semplicemente un database locale, molto semplice). L altra possibilità è un database della portabilità dei numeri: c è bisogno di un database comune e della volontà di crearlo e mantenerlo. Figura 7.50: Number portability - common database Si comincia la chiamata, e si va dal donor network, e invece che completare la chiamata, viene rilasciata la chiamata, e nel messaggio di release è inclusa l informazione che l utente è al momento in un altra rete (questa parte di routing è usata solo per 144

145 CAPITOLO 7. GSM controllare se l utente è ancora). Dopo aver completato questa parte, lo switch emette una query (a livello applicativo) al database comune, riceve l informazione sul numero vero e continua con il call setup (è come avere un HLR permanente per tutti i numeri che hanno subito la portabilità). L altra possibilità è quella di non instradare la chiamata al donor network, ma semplicemente fare una query per tutti i call setup: Figura 7.51: Number portability - all query La differenza con il secondo caso è nella dimensione del database comune (deve supportare tutte le query, tranne quelle nello stesso operatore). Per gli utenti mobili, la procedura è simile, con qualche differenza: Figura 7.52: Number portability mobile - call forwarding Abbiamo una chiamata in entrata, che va nel GMSC del donor network, poi GMSC ha bisogno di inviare una query all HLR del receipent network (quello nuovo), che restituisce un numero. In base all implementazione, può essere il MSRN (se c è un accordo che lo permette, uso il GMSC del vecchio operatore e faccio una query al database del nuovo, è come fare una chiamata nella stessa rete) oppure il IRN (Intermediate Routing Number): in questo caso non riceviamo il numero di destinazione 145

146 CAPITOLO 7. GSM finale, che permette di andare al MSC, ma semplicemente un numero che permette di instradare la chiamata fino al GMSC del recepient network. Da qua in poi, la chiamata continua come sappiamo (query all HLR, con cui riceviamo il MSRN e completiamo la chiamata). Figura 7.53: Number portability mobile - all query In questo caso per tutte le chiamate in ingresso, si fa una query al number portability database, che contiene gli IRN, usato per instradare chiamate al GMSC corretto (mapping 1), poi c è una query all HLR (mapping 2), con cui riceve MSRN e va al MSC. C è una terza possibilità: Figura 7.54: Number portability mobile - all query 2 In questo caso, il number portability database può fare direttamente una query all HLR del recipient network. In questo caso, saltiamo un passaggio e ricevo direttamente da questo database (usato da tutti gli operatori), e non dal HLR, il MSRN, e vado direttamente al MSC dove è l utente. In Italia abbiamo un database comune, con entrambe le soluzioni. 146

147 CAPITOLO 7. GSM Handover Come viene fatto un handover? Con una procedura di signaling. Tutto è basato sulle misure continue, scambiate tra MS e BSC (i punti estremi della parte di gestione delle risorse radio, che si occupa delle misure). Anche nelle BTS abbiamo la parte di gestione delle risorse radio, per creare e cancellare canali e ricevere le misure, che arrivano dalle MS verso le MSC, e arrivano da BTS verso le BSC, che quindi ricevono misure da entrambi i lati (MS e BS). Il BSC è la parte intelligente per la gestione dell handover, ed è quello a cui è associato l utente prima dell handover. Ovviamente il tipo di handover dipende dalla propria posizione. Tutte le configurazioni includono una parte di riconfigurazione manuale della lista di vicini (l algoritmo di handover viene fatto quindi solo per queste celle). Ogni operatore/costruttore ha i suoi algoritmi per l handover. La procedura è diversa in base alla cella obiettivo: la decisione è facciamo un handover ora, verso questa specifica cella (gli elementi sono quando? e dove?). In base a dove sono la cella attuale e quella obiettivo, abbiamo diverse procedure di handover: Figura 7.55: Intra Cell - Intra BSC Se la cella è la stessa, facciamo un handover all interno della stessa cella (è in sostanza un cambio di canale). Viene fatto per bilanciare il carico o liberare determinati canali (qualità bassa, se non posso cambiare cella provo a cambiare il canale). Semplicemente ricevo il comando di cambiare canale (utile in GSM, inutile in UMTS e LTE). 147

148 CAPITOLO 7. GSM Figura 7.56: Inter Cell - Intra BSC Ci muoviamo da una cella all altra, nella stessa area e gestite dallo stesso BSC (mi muovo di un solo livello gerarchico). Abbiamo 2 BTS e 1 BSC. Abbiamo un circuito che arriva dalla rete e va al MSC, BSC e MS usando anche l interfaccia radio, dove cambiamo i canali. Il BSC deve reinstradare (rerouting) le chiamate. Creare matrici di switching che switchano canali a 16 kb/s era complicato, perché gli switch digitali telefonici erano basati su matrici a 64 kb/s. In realtà, ci sono elementi speciali in grado di gestire lo switching. La procedura è controllata completamente dal BSC, che invia un comando al nuovo BTS per creare il canale. Una volta creati e riservati i canali, il BTS invia le informazioni del canale (identificato da frequenza e slot) assegnato all utente, quindi il BSC invia un comando usando il vecchio BTS e il vecchio canale al MSC, che riceve il comando sull interfaccia radio usando SACCH o FACCH per cambiare dall attuale canale a quello nuovo (l unica informazione passata alla MS è cambia a questa frequenza in questo slot). La MS non sa ciò che succede nella rete, ma semplicemente esegue un comando. Per la MS, l handover è semplicemente lo switch da un canale ad un altro. Una volta eseguito lo switch, l handover è terminato, e i vecchi canali vengono rilasciati. Rimaniamo nello stesso MSC, ma ci muoviamo da una cella controllata da un BSC ad un altra controllata da un altro BSC. La creazione del nuovo canale e lo switch del circuito da un area all aaltra viene fatto dal MSC (il decision point non può fare direttamente lo switch). Come detto, abbiamo 2 protocolli di signaling per la gestione della rete di accesso radio: uno è quello per il controllo del BTS, l altro è per la comunicazione tra BSC e MSC (BSS application part). Attraverso questo 148

149 CAPITOLO 7. GSM Figura 7.57: Inter Cell - Inter BSC protocollo, il BSC invia al MSC una richiesta di handover, che include la cella obiettivo. In base a ciò, il MSC può inviare il comando di handover al BSC, che a sua volta invia il comando al BTS per creare il canale (nella nuova cella). La notifica del nuovo canale viene inviata indietro al BSC, e poi al MSC e al BSC (il BSC della posizione precedente è sempre il decision point). Quando il BSC riceve la notizia del nuovo canale, invia un comando al MS per fare uno switch sul nuovo canale. La MS risponde con una notifica: quando viene ricevuta dal MSC, questo libera il vecchio circuito. Il meccanismo è dunque basato su protocolli locali di signaling tra BTS e BSC, e tra BSC e MS. Qua c è un vero switching, inteso come cambiamento di circuito. Figura 7.58: Inter MSC Ci muoviamo da una cella nell area di un MSC a una cella nell area di un altro MSC. Quando rimaniamo in un area controllata da un singolo MSC, la rete di accesso radio è controllata da MSC e BSC. Quando ci muoviamo tra aree di diversi MSC, dobbiamo coivolgere la switching network, che interconnette MSC (è una modifica 149

150 CAPITOLO 7. GSM non solo locale, ma anche nella core network). La decisione viene presa dal BSC, come negli altri casi, e include la cella obiettivo (BTS e cell identifier). Il BSC inizia il processo, passando l informazione al MSC (comando di handover). Analizzando l identificatore, il MSC vede che la cella non è nella sua area. Abbiamo ora bisogno di modificare il circuito esterno per raggiungere il nuovo MSC. Per farlo, in base all identificatore, MSC può usare un database per trovare quale MSC ha quella specifica cella. Usando MAP, facciamo una query al nuovo MSC per un handover (richiesta di handover tra MSC). La richiesta implica una risposta, che include un handover number (HN), un altro numero di telefono che identifica l utente nella nuova MSC/VLR area. Il motivo è che dobbiamo fare un routing di circuito tra i 2 MSC. Non modifichiamo la parte iniziale del circuito entrante, ma creiamo un segmento aggiuntivo che comprende i 2 MSC: l HN è usato per fare un ISUP call setup (per creare circuiti, si usa ISUP), ed è un numero valido per questa specifica topologia. Il MSC invia una richiesta di handover a BSC, e quindi BTS, per allocare un traffic channel e creare il circuito. Una volta creato il canale, viene inviato al MSC l informazione su frequenza e timeslot, il MSC lo invia al precedente MSC, e a sua volta invia alla MS un comando di cambia su questa portante e questo slot. La MS cambia e invia una conferma, e viene rilasciato il vecchio circuito. In sostanza è uguale a prima, con l aggiunta della comunicazione tra i 2 MSC. Il vecchio MSC fa parte del data path della chiamata, quindi il routing non è ottimizzato. Se la chiamata è lunga e io faccio tanti handover, rischio che la chiamata venga scartata (il sistema può supportare un numero limitato di questi handover). 150

151 Capitolo 8 GPRS GPRS è il primo sistema per i servizi dati che usa le reti mobili (permette l accesso a Internet usando un cellulare, prima era possibile ma usando circuiti). Oggi non lo usiamo per le chiamate (c è sempre GSM, con commutazione di circuito), ma ci sono alcune connessioni dati (macchinette dei caffè,...) basate su GPRS. Oggi si usa una nuova versione, EDGE, con una rate di modulazione maggiore a livello fisico. GPRS è un servizio a pacchetti dati (packet data service). In questo caso packet significa che nell interfaccia radio (la stessa del GSM, a livello fisico non cambia nulla per quanto riguarda la struttura TDMA), le risorse radio sono condivise tra i diversi utenti (alcuni timeslot sono condivisi): non assegno un timeslot per utente come nelle chiamate, ma i timeslot sono condivisi in maniera dinamica tra gli utenti. A livello fisico trasmettiamo pacchetti da/verso i diversi utenti, e per identificarli dobbiamo leggere l header dei pacchetti (come in ogni tecnica a commutazione di pacchetto). I timeslot GPRS sono mischiati con quelli del GSM (ad oggi possiamo avere intere portanti - 8 timeslot - dedicate a GPRS). Dietro la rete di accesso radio, non abbiamo la vecchia rete telefonica (quindi con MSC,...), ma una rete parallela (rete IP, con router,..., e funzioni aggiuntive) che gestisce le informazioni trasmesse (GSM e GPRS condividono la stessa rete fisica di accesso, quindi BS, BSC,... sono gli stessi). Il core network (la parte dietro il BSC e la rete di accesso) di GSM è solo per servizi telefonici (è una rete telefonica, con MSC,...), quella del GPRS è una rete IP dedicata dagli operatori ai servizi(è la stessa di UMTS). 151

152 CAPITOLO 8. GPRS L architettura di rete è la seguente: Figura 8.1: Architettura di rete GPRS Sappiamo di avere MS, BTS e BSC (come GSM), dietro BSC non abbiamo più solo la rete telefonica, ma in parallelo anche la rete IP degli operatori. Abbiamo una rete IP composta da router IP con funzioni aggiuntive, detti GSN (GPRS Supporting Nodes). Ne abbiamo 2 tipi: Service GSN (SGSN) e Gateway GSN (GGSN, supportano i nodi). Gestiscono traffico IP, in più hanno lo stack protocollare del GPRS per controllare signaling e data (come MSC). Nella signaling part, abbiamo funzioni specifiche, tra cui la gestione della mobilità: c è un registro locale, usato per gestire LU (ora si chiamano Routing Area Update, quindi non più LA, ma Routing Areas). Gestiamo la mobilità sia per i servizi dati sia per quelli voce, in modo abbastanza differente (rete parallela). Il gateway è un GW classico, che interconnette il core network con il resto della rete IP degli operatori o direttamente con gli altri operatori con cui ci sono accordi di peering. I GSN possono avere accesso al registro globale della rete (HLR e EIR), e devono quindi poter scambiare messaggi di signaling con gli elementi della rete in GSM usati in comune con GPRS. C è un altro elemento, il PCU (Packet Control Unit), all interno del BSC, che si occupa della gestione a livello fisico: è la vera parte intelligente della rete di accesso dati (in GSM, BTS è stupido e gestisce solo il livello fisico), in quanto ora dobbiamo gestire una sorta di stack protocollare per la gestione dei pacchetti (ci serve MAC,..., per gestire le trasmissioni sull in- 152

153 CAPITOLO 8. GPRS terfaccia radio, non possiamo avere solo il livello fisico). Il PCU è quindi il punto di terminazione del protocollo di accesso presente nelle stazioni mobili (gestisce le risorse radio, i timeslot,...). Le varie interfacce tra i componenti sono standardizzate. Figura 8.2: Protocolli GPRS Non abbiamo un mapping fisso tra timeslot e canali logici (non c è un circuito dedicato come GSM). Dobbiamo avere un meccanismo per gestire le risorse condivise, quindi un MAC. Il layer fisico è lo stesso del GSM (portanti e timeslot), per gestire l accesso usiamo un MAC, che termina nel BSC (in particolare PDU, possiamo avere controllori remoti). Al di sopra c è Radio Link Controller (RLC), semplicemente un link layer (in tutti gli standard IEEE 802.xx, abbiamo layer fisico, MAC e LLC) usato per creare i frame e per la ritrasmissione. Questa è l interfaccia radio. Abbiamo però una complessa architettura di accesso radio, dove abbiamo diviso le funzionalità in BSC e SGSN. Ciò è usato per accedere a Internet, e ciò avviene attraverso lo stack TCP/IP. Nelle MS, lo stack TCP/IP è messo al di sopra dello stack GPRS. Al di sopra del RLC c è un LLC (2 link layer) e un convergence protocol (SNDCP, poco importante, si usa solo per un adattamento tra identificatori). Al di sopra dello stack di accesso radio (credo fino a RLC), c è un altro link control, e poi lo stack TCP/IP. Perché abbiamo anche LLC? Un altra cosa strana è nel GGSN (è un router): c è il livello fisico e il livello 2 (qualsiasi tipo), poi c è IP, TCP/UDP e GTP (GPRS Tunnelling Protocol) e quindi un altro layer IP (cioè ho 2 layer IP). Il motivo è il tunneling (IP in IP oppure IP in TCP, se vi va, provate a sentire l esempio). Qui abbiamo 153

154 CAPITOLO 8. GPRS un tunnel con GTP (servizio addizionale), usato solo per creare un layer aggiuntivo gestito per creare il tunnel tra i 2 router. In questa rete, quando ci muoviamo da un area all altra, dobbiamo cambiare routing (come con l handover in GSM). GTP è stato creato per far avvenire con facilità il movimento tra una parte e l altra (quindi GTP gestisce facilmente la mobilità). Abbiamo il network IP dell operatore, ai lati abbiamo un numero di SGSN (come un numero di MSC in GSM), la rete con router intermedi e da qualche parte abbiamo il gateway GGSN. Abbiamo un tunnel usando GTP tra qua e qua, poi abbiamo BSC, BTS e MS. Per inviare pacchetti in Internet, possiamo usare GTP per inviare pacchetti da qua a qua e viceversa. Come passiamo da qua alla MS dall altra parte? Usiamo un link (virtuale), usando un LLC, che come facevamo con i protocolli di signaling, permette di raggiungere direttamente la MS (tunnel di livello 2 tra il router e la MS, con signaling era tra MSC e MS). Il LLC è un modo per creare un link logico virtuale tra questo router e la MS (il telefono). Invio pacchetti IP qua, vanno nel primo tunnel (usiamo il protocollo SNCDP) e raggiungono direttamente il primo router. Il router semplicemente invia i pacchetti nell altro tunnel, e vanno direttamente al limite della rete. I pacchetti IP dell end host (il nostro telefono) sono in realtà consegnati direttamente al GGSN (edge router della rete) attraverso 2 tunnel e vanno in Internet. Questo schema complicato è utile per fare rerouting del traffico verso un altra cella (faccio rerouting dei tunnel), e se mi muovo in un altro router faccio rerouting anche del tunnel GTP. La gestione della mobilità avviene quindi creando e distruggendo canali (a livello 2 se la mobilità, altrimenti riconfiguro anche il tunnel GTP). Si usano tunnel per seguire il movimento degli utenti nella rete (anche in LTE). L unico elemento aggiuntivo è che abbiamo questo (quale?) protocollo che è un servizio locale per l interconnessione tra BSC e SGSN: in questo caso abbiamo questo protocollo perché non è specificato il servizio di livello inferiore. Tipicamente ciò è basato sulla rete di trasporto del servizio telefonico (riutilizzo della rete di trasporto GSM, quindi dobbiamo avere questo protocollo qua). L indirizzo IP che abbiamo qua non ha nulla a che vedere con quello usato per accedere a Internet con il nostro telefono (possiamo avere un indirizzo privato nella rete IP, e uno pubblico assegnato dal GGSN nell o- 154

155 CAPITOLO 8. GPRS verlay network). Per questo motivo, col cellulare ci connettiamo ad un gateway che configura il nostro stack TCP/IP (assegna un indirizzo IP). Per riassumere: GSN (entrambi) sono router con funzionalità aggiuntive: gestione dello stack protocollare GPRS e gestione della mobilità. Abbiamo un numero di SGSN e tipicamente 1 GG- SN. Poiché in questa architettura non abbiamo MSC, le funzioni che questo aveva in GSM sono eseguite dal SGSN: ciò include autenticazione e cifratura del traffico (quindi deve essere connesso all HLR). Inoltre si occupa della gestione del routing (IP routing e routing dei tunnel per la gestione della mobilità). Abbiamo un tunnel per utente, c è un tunnel identifier (TID) mappato nell identificatore dell utente (IMSI). La gestione della mobilità avviene usando il Location Register locale (è come il VLR in GSM per il MSC), c è il concetto di LA ma ora si chiama Routing Area (update delle informazioni,..., simile a GSM). GGSN crea i tunnel con SGSN e ha funzionalità aggiuntive, dette PDN e PDP context (set di funzioni per mantenere la connettività con gli utenti finali, ad esempio assegnamento dell indirizzo IP). PCU gestisce il protocollo radio (trasmissione dei pacchetti, scheduling,...). Questo è lo schema generale del GPRS: Figura 8.3: GPRS scheme Il layer fisico del GPRS è lo stesso del GSM (la struttura di divisione del tempo è la stessa), ma in ogni timeslot abbiamo funzionalità aggiuntive per il servizio dati. Anche ora abbiamo lo stesso burst fisico del GSM, ma anche altri aggiuntivi: il normal burst del GSM è sempre disponibile, ma in versioni più avanzate, con schemi di coding e modulazione differenti dal GSM. Con GSM avevamo GMSK, con schemi di 155

156 CAPITOLO 8. GPRS coding basati su codici convoluzionali. Qua ne abbiamo anche altri, con schemi di coding con rate e costellazioni differenti. Abbiamo ad esempio schemi di coding ottenuti modificando solo il coding del canale. Arriviamo al massimo a 20 kb/s. Cambiando modulazione, con più di 4 punti nella costellazione, e combinando con diversi codici di canale, si è arrivati a 59 kb/s per TDMA slot. Se combino più timeslot, ho un rate ancora maggiore (oggi si arriva a combinare 6 timeslot): ciò avviene modificando solo il livello fisico. Abbiamo il MAC e il RLC (il LLC si usa per creare un tunnel tra MS e SGSN). Il link radio è un classico link layer per un mezzo condiviso. A differenza del WiFi, dove la ritrasmissione è nel MAC layer, qua è nel link layer. Il meccanismo di ritrasmissione è basato sul Selective Reject (è quindi uno schema avanzato). Avendo un meccanismo di scheduling, usiamo ACK e NACK signaling, oppure usare una modalità senza ACK. Il MAC si occupa di regolare l accesso al mezzo condiviso (i timeslot). C è un meccanismo di multiplazione dinamica in downlink, e MAC in uplink (abbiamo quindi 2 flussi da regolare). Nel GSM mappavamo canali logici in canali fisici in modo statico (la capacità dei canali logici è fissa). In GPRS abbiamo lo stesso concetto di canali logici e fisici, tuttavia il mapping non è fisso: è un servizio a pacchetto, quindi abbiamo un insieme di risorse e diversi tipi di informazioni che possono essere trasmesse su queste risorse comuni, ma senza un allocazione fissa come in GSM (accesso e multiplazione dinamici, in base alle dinamiche di traffico). Non sappiamo a priori se un dato messaggio di paging GPRS verrà trasmesso in un dato timeslot, possiamo capirlo solo leggendo le informazioni di controllo trasmesse con i dati (sono trasmesse nel PDU direttamente nel MAC layer). Il mapping viene fatto dal MAC layer RLC: non abbiamo una trasmissione equivalente ad un pacchetto (in GSM univamo 4 normal burst per trasmettere 1 segmento voce). Qui un pacchetto è composto da Radio Block con 456 bit codificati (nella versione base, come GSM). Non trasmettiamo un pacchetto per timeslot, ma raggruppiamo 4 timeslot e trasmettiamo un Radio Block. Questo è il MAC PDU (Packet Data Unit): all interno abbiamo l header e tutte le informazioni necessarie per identificare le specifiche informazioni logiche trasmesse a livello fisico (canale fisico). I canali logici sono più o meno equivalenti a quelli del GSM (hanno una P davanti al nome, P = Packet). 156

157 CAPITOLO 8. GPRS PTACCH (Packet Timing Advance Control Channel): dato che siamo in uno schema a pacchetti, che quindi vengono inviati solo quando servono, si rischia di non avere informazioni aggiornate per il timing advance, quindi si usa un meccanismo periodico per trasmettere un numero minimo di pacchetti su questo canale (se non ho altre trasmissioni) per stimare il ritardo di propagazione e ricavare la compensazione. Il canale principale per la trasmissione è PDTCH, in realtà raggruppa le risorse e può essere usato per la trasmissione. Il mapping dinamico dei canali è gestito dal PCU (BS): abbiamo un numero di portanti e timeslot usati dal servizio GPRS (sono una parte di quelli del GSM, in pratica c è una separazione statica tra risorse GSM e GPRS). Il mapping è basato su 52 frame (multiframe), all interno usiamo 12 Radio Block (quindi 48 frame), 2 frame per PTACCH e 2 idle. Per i 48 frame usiamo le informazioni logiche trasportate nel pacchetto dati per identificare lo specifico canale logico che stiamo mappando. Ciò avviene con un meccanismo di signaling, gestito dal PCU. Abbiamo un meccanismo per identificare i diversi flussi di pacchetti usando l identificatore di flusso, e poi, nel downlink Radio Block, abbiamo 3 flag, detti USF (Uplink State Flag), per regolare la trasmissione in uplink. In DL quindi dobbiamo regolare anche la trasmissione in UL, mediante USF, composto da 3 bit. Questi bit sono assegnati temporaneamente a diversi utenti: ogni utente attivo nella cella ha una configurazione per gli USF. Con questi bit, possiamo identificare quale terminale (MS) può trasmettere in UL. Se usiamo 111, significa free slot, cioè accesso casuale (UL basato su contesa, come ALOHA). Abbiamo un offset di 3 timeslot tra DL e UL, che viene trasmesso ritardato di 3 timeslot. Figura 8.4: MAC: access control 157

158 CAPITOLO 8. GPRS In questo esempio, abbiamo USF della MS1: dopo 3 timeslot, la MS1 può trasmettere in UL. Nello stesso timeslot, in DL, la BS sta trasmettendo a MS2. Quindi, un pacchetto viene trasmesso a MS2, ma il grant per la trasmissione in UL è assegnato a MS1 le trasmissioni in DL sono indipendenti da questa sorta di schema di polling in UL, cioè trasmettiamo in DL in base al meccanismo di scheduling locale, e poi regoliamo l UL usando USF (c è uno schema di scheduling, dipende dal produttore). USF = 111 è diverso da RACH (per essere connessi alla rete GPRS, bisogna essere già attivi nella rete). Questo accesso casuale serve per trasmettere richieste di banda. Quando abbiamo il timeslot free, possiamo trasmettere: abbiamo pacchetti in coda, informiamo il PCU, quando riceve la notizia, le trasmissioni vengono schedulate. Abbiamo dunque un meccanismo di accesso multiplo schedulato (il PCU è il controllore centrale che regola l accesso), le trasmissioni in DL e grant trasmessi in DL e che sono usati per regolare l UL (siamo in frequenze separate per UL e DL) (le MS possono trasmettere solo se l USF - contenuto nell header del DL - è uguale al loro). Per poter trasmettere, le MS devono trasmettere le richieste nel PRACH (simile a WiMax, ma più semplice), con uno schema di accesso casuale (ALOHA) Gestione della mobilità Non entriamo troppo nel dettaglio. Dipende dallo stato della connessione GPRS: se l utente è attivo, dobbiamo modificare il routing cella a cella (come con l handover), se è stand-by (connessione attiva ma al momento nessuna trasmissione/ricezione) può ricevere messaggi di paging, se è idle non possiamo trasmettere/ricevere nulla (non dobbiamo tracciarlo). Se è attivo, dobbiamo seguirlo cella per cella, se è in stand-by dobbiamo seguirlo in base ad alcune aree (come LA, dette Routing Area - RA), se riceve traffico si usano pacchetti di paging per avvertire l utente e riattivare la connessione. Se l utente è pronto (ready), sappiamo esattamente in quale cella si trova l utente, abbiamo un tunnel attivo con l utente e possiamo consegnare traffico direttamente. Se l utente è attivo, abbiamo 2 tunnel attivi, se ci muoviamo in un altra cella, dob- 158

159 CAPITOLO 8. GPRS Figura 8.5: Mobility management biamo riconfigurare il tunnel, se ci muoviamo in un altra area dobbiamo riconfigurare anche il link layer tunnel. Apparentemente è come GSM, ma in realtà è più semplice, non avendo vincoli di ritardo così stringenti come quelli legati al traffico voce. Se siamo in stand-by, abbiamo solo l active GTP (è un tunnel, l altro no): quando necessario, attiviamo il paging, e quando riceviamo la risposta, riattiviamo il link layer tunnel. Quando ci muoviamo in un altra routing area, dobbiamo adattare il tunnel. C è quindi un discorso di macromobilità (LU) e micromobilità (cella-cella). Ci muoviamo da IDLE a READY con una procedura di signaling (GPRS attach, equivalente al call setup, non ritorniamo in IDLE a meno di disattivare la connessione GPRS). Da READY a STAND-BY c è un timer (inactivity timer, se non faccio nulla passo in STAND-BY, se genero traffico torno in READY). Il trigger è attivato da traffico UL o pacchetti di paging in DL. Le transizioni hanno bisogno di messaggi di signaling per riattivare le connessioni Gestione delle sessioni Tipicamente, per avere accesso dati ad Internet, riceviamo una connessione all IP network dell operatore, che però non usiamo direttamente. Usiamo la rete dell operatore per creare una connessione overlay tra la MS e GGSN, l unico nodo della rete che vediamo direttamente con l IP layer e che attiva la connettività IP. Questa connettività è detta PDP (Packet Data Protocol) context. E un insieme di parametri di configurazione usati per gestire la connettività a livello IP tra MS e il GGSN. Ciò include ad esempio la configurazione dell indirizzo IP. Nell attivazione iniziale (scambio 159

160 CAPITOLO 8. GPRS di signaling), la MS negozia l assegnamento di un indirizzo IP con il GGSN. In base a come è configurato il GGSN (cioè in base alla SIM card), riceviamo un indirizzo IP e una configurazione all interno del GW. Se usiamo un accesso pubblico a Internet, riceviamo un indirizzo IP disponibile per la connessione con la rete esterna (Internet degli altri operatori). La rete packet data è una rete generica packet data in grado di consegnare il traffico. In questo modo siamo connessi con il nostro indirizzo IP a Internet. Quando ci connettiamo a Internet, abbiamo un livello di sicurezza che è quello della SIM card (come GSM, abbiamo cifratura e autenticazione). Una volta connessi al GW, abbiamo in teoria un servizio addizionale di autenticazione (certificati, login/password,...). Il PDP context è configurato in modo da poter incorporare nello scambio di signaling qualsiasi protocollo di autenticazione (tipicamente non si usa nei casi comuni, si usa invece ad esempio con le macchinette, che devono autenticarsi). Se si usa, prima di attivare la connessione, il GW contatta l autentication server nella nostra rete (privata, ad esempio quella della compagnia delle macchinette, nell esempio si usa un server RADIUS) Figura 8.6: GPRS: application scenario Anche il router può essere connesso con l edge router della rete interna, e l indirizzo IP assegnato può essere quello fornito dalla nostra rete. Quindi possiamo usare la rete mobile con un estensione della nostra rete privata. Nell esempio abbiamo link layer tunnel, tunnel GTP, usando un terzo tunnel entriamo nella rete privata. Quindi il modem nella macchinetta è come un host connesso direttamente alla rete privata 160

161 CAPITOLO 8. GPRS della compagnia delle macchinette Esempi di procedure 161

162 CAPITOLO 8. GPRS 162

163 Capitolo 9 UMTS 3GPP è l autorità di standardizzazione (è internazionale, non europea come ETSI). HSUPA (High-Speed Uplink Packet Access) e HSDPA (High-Speed Downlink Packet Access) sono basati su CDMA (come UMTS). Il processo di standardizzazione di UMTS, iniziato a metà degli anni 90, ha impiegato anni per essere completato. UMTS si basa sul concetto di celle: inizialmente solo celle piccole (picocell, indoor cell), da oggi si sta cominciando ad avere celle eterogenee (macrocelle, in città, con antenne messe sui tetti, e microcelle, con raggio di mt). UMTS offre diversi servizi, che vanno oltre il servizio voce: tra gli altri abbiamo il servizio TV broadcast (poco successo), i messaggi multimediali, le videochiamate (poco successo), il Location Based Service (non usato per le applicazioni end-user, consiste in una localizzazione basata sulla potenza del segnale e sulla triangolazione). In UMTS è chiara la definizione dei domini di rete: Figura 9.1: Network domains 163

164 CAPITOLO 9. UMTS Mentre il GSM/GPRS avevamo architetture monolitiche, ora i domini differenti permettono di far evolvere le architetture in modo indipendente. User domain: in GSM è il terminale dell utente, ora la questione è più complessa (i terminali sono più complessi, ci sono più servizi,..., è come se fossero dei PC, cioè Internet host), c è un middleware per la connessione/interazione SW/HW. La MS si divide in dominio ME e dominio USIM. Il dispositivo è diviso in Mobile Termination (MT, gestisce le interfacce radio) e Terminal Equipment (TE, gestisce le applicazioni); Radio Access Domain (ora chiamato UTRAN = UMTS Terrestrial Radio Access Network): gestisce l interfaccia radio (BS,...), dipende dalla tecnologia usata (GSM, UMTS, LTE,...). Abbiamo i Mobile Terminals (ciò che prima chiamavamo MS), i Node B (le BS, non lavorano solo a livello fisico) e i Radio Network Controller (RNC, i BSC del GSM) Figura 9.2: UTRAN C è un collegamento logico tra i RNC (non presente in GSM), usato per gestire l elaborazione in banda base della connessione e il soft handover); Core Network: è una parte fissa che gestisce l accesso all interfaccia radio (in GSM era composta da MSC, VLR,..., in GPRS da GW, registri,...); 164

165 CAPITOLO 9. UMTS Le varie interfacce sono state divise e standardizzate in modo che potessero evolvere in modo indipendente (ad esempio con l integrazione del WiFi nelle core network). Una novità è rappresentata dall implementazione del transport layer (in GSM: rete telefonica con PDH) basato su ATM (quindi packet switching) anche nell access network. In questo modo possiamo avere capacità variabile e modificabile in base alle esigenze. Non ci sono quindi più circuiti tra i nodi, ma si usa ATM e servizi virtuali. I servizi di comunicazione si dividono in: Bearer service: ora sono più importanti rispetto a GSM/GPRS (servizi dati ad alta velocità,...); Teleservice: sono gli stessi visti prima (senza successo); Supplementary service: SMS,...; Tutto ha una flessibilità maggiore, e ciò si traduce in una maggiore flessibilità nelle classi di traffico, e nel concetto di QoS (prima volta che viene introdotto), con 4 classi usate ancora oggi, anche se raramente nelle user applications. Come detto, i Bearer services (in sostanza un trasporto di bit) sono più complessi di GSM/GPRS: ce ne sono di diversi tipi in base alla terminazione: Figura 9.3: Bearer services in UMTS 165 End-to-end service: c è un solo servizio specificato (voce, video,...);

166 CAPITOLO 9. UMTS UMTS bearer service: MT CN gateway (=GWGPRS). Servizio di trasporto di. Include tutte le configurazioni necessarie; Radio access bearer service: usa solo BS per accedere alle reti IP degli operatori (=RB + RAB), combinazione di ; Ora il signaling è molto difficile. La backbone usa tunnel IP (siamo in una situazione CN-CN). 9.1 Core network Questa è la situazione nelle reti GSM/GPRS: Figura 9.4: GSM/GPRS network Lo split ha permesso di introdurre UMTS senza modificare troppo (ad esempio PCU = GPRS). Abbiamo 2 reti prima : e una rete a commutazione di pacchetto (GPRS/EDGE). Alcuni componenti sono condivisi UMTS network Rel. 99 La UMTS network Rel. 99 ha modificato l accesso radio (ci sono una nuova interfaccia radio e una nuova RAN), ma ha mantenuto la stessa core network (in comune 166

167 CAPITOLO 9. UMTS Figura 9.5: UMTS network Rel. 99 con GSM/GPRS le interfacce UMTS e GSM/GPRS sono attaccate). In base al servizio, si accede a una delle 2 reti (voce, dati,...). É ancora usata oggi (la core network è sempre la stessa). 2G: 2G radio interface a 3G radio access interface. Gli aggiornamenti sono MSC e SGSN (diventati rispettivamente 3G MSC e 3G SGSN), con alcuni aggiornamenti SW (AuC,...). Figura 9.6: Core network Rel UMTS network Rel. 4 La nuova release è uscita nel Combina solo a livello di trasporto. L idea è quella di creare una rete separata per gestire il signaling (classico signaling telefonico). MGW: media GW, divide la rete in flussi di pacchetti. SGW: signaling GW. Le BS GSM erano interconnesse alla nuova core network a pacchetti. Come unire le 167

168 CAPITOLO 9. UMTS Figura 9.7: UMTS network Rel. 4 tecnologie? SS7/TCP nei pacchetti IP. ISUP: invece che MTP, useremo IP Diversi metodi di trasporto, non di intelligenza. Packet Switch (PS) core network UMTS network Rel. 5 Figura 9.8: UMTS network Rel. 5 La nuova release unifica il core network, e sostituisce anche il signaling. C è una sola core network basata su IP, IMS è un architettura basata su, anche per l accesso fisso (VoIP): gestisce tutti i tipi di connessione (fissa e mobile) ed è lo step finale del processo evolutivo. Non tutti gli operatori la usano. L evoluzione del core network è molto importante: 99: stesso core network di GSM/GPRS Rel 4: il trasporto è basato su pacchetti IP, i servizi voce hanno la stessa architettura 168

169 CAPITOLO 9. UMTS di signaling della Release 99 (non PCM, cioè canali fisici usando RTP, ma flussi di pacchetti da MGW) Rel 5: tutto è basato su IP (il trasporto e il signaling = IMS, l implementazione di SIP invece che SS7). 9.2 UMTS protocol Abbiamo stack protocollari differenti per il control plane (trasporto di signaling) e user plane (trasporto di dati). In GPRS user e control plane sono lo stesso, ora c è uno split tra i 2 piani. User plane (commutazione di circuito): abbiamo uno stack simile a GPRS (nell interfaccia radio). Abbiamo MAC per WCDMA: livello fisico, è un meccanismo per il controllo delle trasmissioni come packet switching. Figura 9.9: User plane (Circuit Switched) Abbiamo un core network come una rete IP (GPRS stack), non emulazione di circuito. In entrambi i casi il livello più basso è lo stesso. 3GMSC GMSC: possiamo avere canali fisici, Possiamo cambiare interfaccia e In questa architettura, ora le BS sono connesse usando un interfaccia ATM. 169

170 CAPITOLO 9. UMTS Figura 9.10: User plane (Packet Switched) 9.3 Radio interface UMTS FDD = 2,1 GHz. Gli operatori possono riallocare le porzioni di spettro come vogliono (alcune porzioni a 900 MHz, si parla di UMTS 900). L allocazione è a livello mondiale e molto complicata (competizione tra gli operatori, ingresso di nuovi,...) e costosa (2-5 miliardi di euro). Per questo motivo gli operatori non avevano soldi per sviluppare la rete, e ciò ha contribuito al ritardo di UMTS. Figura 9.11: Spreading La sequenza trasmessa è a spettro espanso. SF è il numero di chips nel fattore di spreading. Lo spacing tra le portanti è di 5 MHz (in GSM 200 KHz). Il rate fisico è 3.84 Mc/s (c = chips). Il primo codice è per lo spettro espanso, il secondo per lo scrambling. Lo scrambling ha lo stesso rate dello spettro espanso, con differenti codici per trasmettitore (1 per 170

171 CAPITOLO 9. UMTS Figura 9.12: Scrambling trasmissione). I codici sono ortogonali, quindi i codici di spreading sono ortogonali, tutti gli stessi per BS e MS. Le proprietà di ortogonalità rimangono, ma abbiamo diversi codici di scrambling, è come sequenze pseudocasuali. Figura 9.13: Orthogonal codes tree I codici sono mutualmente ortogonali (anche se hanno un numero diverso di bit), il numero di bit è potenza di 2. Se usiamo un codice, non possiamo usarne uno più grande nello stesso branch (SF = 128 al massimo 64 codici). La struttura è basata su CDMA, ma con un meccanismo simile a uno basato su pacchetti. RAB = canale CDMA stabilito all interfaccia radio e usato da Non abbiamo un mapping fisso generale (flessibilità). La flessibilità è anche nei canali di trasporto (un numero differente di canali logici sono mappati in ogni canale di trasporto): 171

172 CAPITOLO 9. UMTS Figura 9.14: Logical/Transport/Physical channels 172

173 Capitolo 10 LTE 173

174 CAPITOLO 10. LTE 174

175 Parte II Wireless Internet 175

176

177 Capitolo 11 WLAN 11.1 Allocazione dello spettro Il sistema wireless è ancora oggi il metodo più importante per accedere ad Internet. Lo spettro è una risorsa limitata e insufficiente, quindi è necessario regolarlo. Viene data priorità di accesso ad applicazioni specifiche (come ad esempio mediche, militari, ecc..) e la maggior parte della banda viene utilizzata dietro pagamento alle autorità nazionali. L utilizzo dello spettro è regolamentato a livello internazionale dalla FCC (Federal Communications Commission) in Nord America, ed ETSI (European Telecommunications Standards Institute) in Europa, in modo da regolare la costruzione e l interoperabilità dei dispositivi. Ci sono tre importanti bande non licensed: intorno a 900 MHz, a 2,4 GHz e a 5 GHz. Ad esempio le bande ISM (Industrial Scientific and Medical) sono porzioni di spettro non licensed allocate per le comunicazioni individuali: banda da 2,4 a 2,4835 GHz (83,5 MHz): allocata a livello mondiale (sia da FCC che da ETSI); banda da 902 a 928 MHz (26 MHz): allocata da FCC (ETSI usa la banda intorno ai 900 MHz per sistemi cellulari come GSM); Queste bande sono caratterizzate da basso costo ed alta interferenza perchè sono molto affollate mentre le altre porzioni sono invece più costose per quanto riguarda la 177

178 CAPITOLO 11. WLAN gestione. Per ridurre l impatto dell interferenza e rendere possibile la comunicazione tra molti utenti nella stessa area si utilizzano tecniche di spread spectrum, espandendo la banda e in seguito ricomprimendola, e limitando la potenza dei dispositivi per evitare che una potenza troppo alta renda impossibile la trasmissione per gli altri dispositivi. Ad esempio in Europa è limitata dallo ETSI a 100 mw e a 1 W in Nord America dalla FCC. Inoltre nella banda intorno a 5 GHz, ci sono solo limiti nella potenza massima di trasmissione. Vantaggi delle bande a 5 GHz: Bassa interferenza; Disponibilità maggiore; Maggior velocità di trasmissione; Svantaggi delle bande a 5 GHz: Attenuazione più alta dovuta alla propagazione; Maggior potenza di TX richiesta; Range radio più corto rispetto ai sistemi a 2,4 GHz; Servono più AP per coprire un area; In Nord America la banda a 5 GHz è detta UNII, con 300 MHz tra 5,2 e 5,8 GHz con limiti abbastanza liberi. In Europa non è permesso utilizzare la banda a 5 GHz, che inizialmemnte era regolamentato dallo standard IEEE a, perchè sono le frequenze dei radar di navi e aerei. Ma si usa una variante regolamentata dallo standard IEEE h, che aggiunge funzionalità per il controllo della potenza in trasmissione, per evitare interferenza non voluta, e della selezione dinamica della frequenza. 178

179 CAPITOLO 11. WLAN 11.2 WLAN basics La prima WLAN fu ALOHA, ed era wireless, ma dopo aver costruito la rete, è stata utilizzata una piattaforma fisica (rete cablata). La maggior parte delle local area networks (LAN) sono basate sulla tecnologia Ethernet (usata per condividere il mezzo). Anche se non è più utilizzato, c è una parte di controllo di accesso al mezzo per la condivisione di un bus comune. L idea delle wireless LAN era quella di replicare lo stesso approccio nello scenario delle comunicazioni radio nelle aree locali. Gli standard WLAN sono distribuiti dall IEEE (il gruppo responsabile delle WLAN è ). Oggi il WiFi è usato solo per accedere alla rete. Il Logical Link Control è lo stesso per ogni rete. Il MAC layer è indipendente dai componenti del layer fisico. La WECA (Wireless Ethernet Compatibility Alliance) garantisce interoperabilità tra i prodotti basati sulla tecnologia (mediante il marchio Wi-Fi) IEEE standard IEEE definisce un insieme di standard di trasmissione per le reti WLAN, sotto forma di varie release, sviluppato dal gruppo 11 dell IEEE 802, con particolare riguardo al livello fisico e MAC del modello ISO/OSI specificando sia l interfaccia tra client e base station (o access point) sia tra client wireless. Il simbolo Wi-Fi, termine con cui si identificano in genere i dispositivi indica l appartenenza del dispositivo 179

180 CAPITOLO 11. WLAN stesso alla Wi-fi Alliance Wi-Fi Alliance: Home, che raccoglie numerosi costruttori di hardware (Cisco, Netgear, Nokia, Intel, Broadcom, Philips, Asus, ecc.). L organizzazione è nata con l obiettivo di certificare l interoperabilità di prodotti , portando ad una comune (o comunque interoperabile) implementazione di quelle parti dello standard lasciate libere al costruttore. La famiglia consta di quattro protocolli dedicati alla trasmissione delle informazioni (a, b, g, n), la sicurezza è stata inclusa in uno standard a parte, i. Gli altri standard della famiglia (c, d, e, f, h,... ) riguardano estensioni dei servizi base e miglioramenti di servizi già disponibili. Il primo protocollo largamente diffuso è stato il b; in seguito si sono diffusi il protocollo a e soprattutto il protocollo g. Gli obbiettivi del gruppo 11 dello standard IEEE 802 sono: Un singolo MAC in grado di supportare differenti layer fisici; Robustezza alle interferenze; Robustezza al problema del terminale nascosto; Lo standard specifica: Il sublayer MAC; I protocolli di gestione MAC e i servizi; Il layer fisico: IR (Infrared); FHSS (Frequency Hopping Spread Spectrum, tecnica usata per aumentare la banda di un segnale variando in modo predefinito la frequenza di trasmissione); DSSS (Direct Sequence Spread Spectrum, ogni bit viene trasmesso come una sequenza ridondante di valori); 180

181 CAPITOLO 11. WLAN Componenti I componenti per una rete wireless sono: STAZIONI (STA): sono i terminali; ACCESS POINT (AP): dispositivo che, collegato a una rete cablata o anche a un router, permette all utente mobile di accedervi in modalità wireless direttamente tramite il terminale, trasmette periodicamente pacchetti contenenti informazioni come SSID; BASIC SERVICE SET (BSS); EXTENDED SERVICE SET (ESS); DISTRIBUTION SYSTEM (DS). Basic Service Set (BSS) Figura 11.1: Basic service set (BSS) (a) Infrastructure BSS (BSS) (b) Indipendent BSS (IBSS) Un BSS è formato da un AP e almeno una STA associate a quest ultimo, ovvero l AP controlla le stazioni nel suo BSS. Un BSS esiste anche con un qualsiasi dispositivo connesso all AP: se c è un AP, c è un BSS.; Il BSS è l insieme delle stazioni controllate dalla stessa funzione di coordinazione (funzione logica che gestisce l accesso a un canale radio condiviso), è simile al concetto di cella nelle MRN. Esistono 2 tipi differenti di BSS: 181

182 CAPITOLO 11. WLAN INFRASTRUCTURE BSS: si basa su un AP centrale, collegato a una LAN cablata, che funge da unico tramite per il traffico delle STA nel suo range di copertura, inoltre l AP trasmette beacon per pubblicizzare le caratteristiche della rete (tra cui il nome); INDIPENDENT BSS (IBSS): insieme di stazioni che possono comunicare direttamente senza AP (ovviamente non sono presenti comunicazioni simultanee nè contemporaneamente si può trasmettere e ricevere); Extended Service Set (ESS) Figura 11.2: Extended service set (ESS) (a) con distribution system (DS) (b) con wireless distribution system (WDS) L ESS è l insieme di due o più Infrastructure BSS connessi mediante un DS (Distribution System), che può essere wired oppure wireless WDS (Wireless Distribution System).Non c è uno standard preciso in merito alla composizione e gestione dei DS o WDS. Vediamo nel dettaglio che cos è un DS. Distribution System (DS) Parliamo di associazione alla rete quando uno o più terminali o uno o più switch si connettono via cavo o via wireless. Ad esempio l associazione può avvnire tra due o più AP per collegare più sottoreti IP sotto un unico indirizzo IP, oppure tra una STA e un AP. E importante ricordare che una STA può essere associata ad un solo AP. Quindi un ESS è una rete di livello 2 (non lavora con pacchetti del layer IP, ma con frame di livello 2) e quindi è una sottorete IP con il proprio spazio di indirizzamento. 182

183 CAPITOLO 11. WLAN L AP agisce come un bridge (switch di livello 2) e gestisce le tabelle di associazione che usa per il processo di bridging. Ad esempio, i frame Ethernet ricevuti dal DS che contengono indirizzi di stazioni wireless vengono inviati all interfaccia wireless, dopo essere stati trasformanti in trame secondo lo standard IEEE Esempio 7 Come può un pacchetto IP con indirizzo IP di destinazione della stazione B, andare dal router R alla stazione di destinazione? Grazie al protocollo ARP (Address Resolution Protocol). La stazione B riceve due richieste ARP (gli AP hanno trasformato una ARP request in Ethernet in una ARP request con Wi-Fi) una dall AP 1 e l altra dall AP 2. La stazione B crea una ARP reply e la passa al layer 2 per la trasmissione. Il pacchetto ha Source Address (SA) uguale all indirizzo MAC della stazione B e Destination Address (DA) uguale all indirizzo MAC del router R, e viene inviato via radio(over the air), e raggiunge sia AP1 che AP2. Gli indirizzi degli switch non sono scritti nei pacchetto ma vengono aggiunti all header da questi ultimi. Quando questo accade si dice che gli switch sono trasparenti (si attraversano switch senza indicarne l indirizzo nel pacchetto). Tuttavia gli AP non sono trasparenti: il pacchetto inviato da B include l informazione sull access point a cui è collegato (quindi AP2). Anche l AP1 riceve il pacchetto inviato da B, ma poichè il suo indirizzo non è nel pacchetto, lo scarta. L AP2 riceve il pacchetto, lo traduce in Ethernet (rimuove il proprio indirizzo), lo invia, e il pacchetto raggiunge il router R. A questo punto il router può creare un frame, che ha DA = indirizzo MAC di B (l ha appena imparato) e SA = indirizzo MAC del router R, che viene inviato al layer 2 e trasmesso sulle porte. Il pacchetto inviato raggiunge tutti gli AP (anche l AP1 lo 183

184 CAPITOLO 11. WLAN riceve ma lo scarta perchè non lo riconosce come proprio). Gli AP hanno una lista dei MAC address associati, se il DA non è tra questi, scartano il pacchetto. L AP2 non scarta il pacchetto (perchè il MAC address di B è nella sua lista) e lo invia sull interfaccia corretta, dopo averlo tradotto in un frame Wi-Fi. L AP2 crea il pacchetto che invia a B aggiungendo il proprio MAC address nel frame, perchè B è associato solo all AP2, e tutti i frame che arrivano da altri AP (e che quindi non hanno il MAC address di AP2) vengono scartati. Esempio 8 Che succede quando A si muove dall AP1 all AP2? Prima dello spostamento, i pacchetti arrivano ad A attraverso l AP1 (nel modo visto prima). Ogni AP nella propria switch table ha una lista di MAC address a cui è associata la porta corrispondente. Se l AP vede arrivare un pacchetto con SA = MAC address A attraverso una porta, allora posso utilizzarla per inviare pacchetti con DA = MAC address A (backward learning, lavora solo con gli alberi). Se ricevo un pacchetto di cui ho già la voce nella switch table, ma da una porta diversa da quella che ho in tabella, aggiorno il dato con la nuova porta (è come fare unplug da una porta, e plug in un altra in ethernet). A questo punto bisogna aggiornare il resto della rete; l AP invia una speciale ARP reply in broadcast in rete comunicando che a lui è collegata la stazione A, in questo modo tutti gli switch imparano la nuova posizione della stazione A. L adattamento non è istantaneo (gli Ethernet switch non lo usano), ma la transizione è veloce (nell ordine dei ms). 184

185 CAPITOLO 11. WLAN 11.4 IEEE Medium Access Control (MAC) Le funzioni e i servizi del MAC layer sono: Accesso al canale; Controllo degli errori; Frammentazione e riassemblamento; Power saving; Indirizzamento (è più complesso di Ethernet, bisogna identificare gli end-point); Framing (c è molta flessibilità); IEEE ha 2 versioni del MAC layer: una versione base (che è la più diffusa) e una versione avanzata (quality MAC definita nello standard IEEE e, che fornisce qualità) Accesso al canale L accesso al canale è regolato mediante funzioni logiche, chiamate funzioni di coordinazione e ne esistono due: Distributed Coordination Function (DCF), simile all Ethernet e basato sul CSMA con backoff ; Point Coordination Function (PCF), approccio senza collisioni basato sul paradigma poll-response; Controllo degli errori Il controllo degli errori è definito solo per le trasmissioni unicast ed è basato su ACK e timer. Si ha un mezzo condiviso e non particolarmente affidabile (gli errori sono difficili da trovare), per cui si usa un meccanismo di ACK (tipicamente per ogni frame, utilizzando un protocollo ARQ chiamato stop and wait). Altri MAC layer 185

186 CAPITOLO 11. WLAN con ritrasmissione utilizzano un meccanismo di tipo CSMA-CD, ma senza ACK, ad esempio in Ethernet abbiamo ritrasmissione, ma senza ACK packet appunto perchè si ha collision detection. Esempio 9 Ci sono gli ACK in Ethernet? Perchè? Interframe spacing Nel caso dei Wi-Fi (IEEE ), il controllo viene fatto utilizzando intervalli temporali diversi, che regolano l accesso. Si inizia facendo sensing del canale per vedere se è occupato o libero. Per trasmettere i frame, si può usare il tempo minimo tra la trasmissione precedente e quella successiva, in modo che una stazione pronta ad inviare attenda il minimo. Dobbiamo differenziare l accesso in base al tipo di pacchetto da inviare, quindi introdurremo la priorità (ad esempio l ACK viene inviato subito dopo aver ricevuto un pacchetto). Per farlo si utilizzano spazi detti interframe differenti in base alla tipologia di messaggio da inviare. Esistono quattro tipi di interframe: Short Inter Frame Spacing (SIFS): usato per le trasmissioni ad alta priorità (come ad esempio per gli ACK); PCF Inter Frame Spacing (PIFS): tempo minimo che deve essere libero prima di accedere in modalità PCF; DCF Inter Frame Spacing (DIFS): tempo minimo che deve essere libero prima di cominciare una trasmissione in modalità DCF; Extended Inter Frame Spacing (EIFS): tempo usato dopo che non è stato possibile decodificare una trasmissione (ad esempio dopo una collisione); 186

187 CAPITOLO 11. WLAN Figura 11.3: Interframes Distributed Coordination Function (DCF) DCF permette la coordinazione nell accesso delle stazioni senza un controller centrale, si può utilizzare sia in IBSS che infrastracture BSS ed è basato su CSMA-CA. Funzionamento del DCF Prima di trasmettere attende un tempo pari a un DIFS e se il canale è libero la stazione trasmette, altrimenti attende un tempo calcolato con una procedura di backoff. Se il canale è occupato, ogni stazione che vuole trasmettere, attende un numero di slot pari a DIFS più un numero casuale compreso tra 1 e Congestion Window (CW). Se durante il backoff il canale diventa occupato, il conteggio del backoff si interrompe, per riprendere quando il canale ritorna libero. Se una stazione deve inviare più pacchetti consecutivi, usa comunque il backoff anche se il canale è libero (si evita il capture effect). Figura 11.4: Funzionamento DCF 187

188 CAPITOLO 11. WLAN Algoritmo di backoff Il tempo di attesa viene misurato in slot, ovvero in tick dell orologio locale, quindi dipende dal layer fisico. Il numero di slot di backoff viene scelto casualmente nell intervallo [1, CW], e aumentato in caso di ritrasmissione. Il valore di CW viene settato, dopo una trasmissione senza successo, pari a 2*(CW+1)-1 (dopo la 5 ritrasmissione, il valore non viene più aumentato, oppure il pacchetto viene direttamente scartato), mentre dopo una trasmissione corretta viene impostato a 31. Controllo degli errori in DCF Le stazioni possono recuperare le trasmissioni che non hanno avuto successo attraverso la ritrasmissione (e gli ACK). Il controllo degli errori è basato su ACK. Per ogni frame unicast deve essere inviato un ACK, e se questo non viene ricevuto, allora il frame viene ritrasmesso, ma si deve anche tenere conto che c è un numero massimo di ritrasmissioni per frame. Esistono 2 contatori di retry: uno per i frame corti, l altro per quelli lunghi. 188

189 CAPITOLO 11. WLAN Figura 11.5: Controllo degli errori in DCF Per trasmettere l ACK, la stazione deve inviarlo prima che la successiva stazione invii il proprio pacchetto, quindi trasmetterò dopo un tempo di SIFS, in modo tale che assegno all ACK la priorità maggiore, perchè il tempo di SIFS è minore rispetto tutti gli altri (in questo caso SIF S < DIF S). Il carrier sensing in wireless è più complicato, perchè devono esserci dei meccanismi per capire se c è una trasmissione in uscita nel canale; per poterlo fare si deve misurare la potenza del segnale nel canale e se ricevo potenza vuol dire che c è una trasmissione in corso. Per quanto riguarda l attenuazione, in un cavo coassiale usato per Ethernet, è trascurabile, date le brevi distanze considerate (circa 100 metri), invece nel caso wireless l attenuazione può raggiungere i 70 db, e in base alla posizione dove ci troviamo possiamo ricevere segnali forti o deboli, quindi la scelta nel considerare un canale come libero o occupato dipende da una soglia. La capacità di carrier sensing è limitata alla zona in cui il segnale è sufficientemente alto da poter essere rilevato, quindi si parla di limited broadcast, ovvero non ricevo i segnali da tutte le stazioni, ma solo dalle stazioni presenti nel range del terminale. Le reti wireless fanno CSMA-CA (CA = Collision avoidance), invece che CSMA-CD in cui il trasmettitore rileva una collisione durante la trasmissione. Nel CSMA-CD il terminale ascolta il canale mentre trasmette e così rileva se c è solo una trasmissione o di più. Nel caso wireless questo non è possibile farlo perchè le antenne possono essere usate sia per trasmettere che per ricevere, ma non allo stesso momento. Il motivo per cui non possono sia trasmettere che ricevere in contemporanea è duvuto al livello di potenza che sarebbe troppo elevato perchè in trasmissione invia una potenza elevata ed in ricezione dovrei rilevare una potenza 189

190 CAPITOLO 11. WLAN molto minore, ma in questo caso si saturerebbero i circuiti; applicando ad un caso umano sarebbe come avere una luce puntata nell occhio. Infatti si dice che il ricevitore è accecato dal trasmettitore (oggi si cerca di fare qualcosa, utilizzando filtri). Utilizzando il CSMA-CD si risparmiano i pacchetti ACK perchè il protocollo è stato creato apposta per questo motivo, sfruttando l ipotesi che il mezzo sia affidabile, quindi la collisione è l unica occasione per cui può perdersi un pacchetto (quindi in Ethernet abbiamo ritrasmissione senza ACK). Nel caso wireless bisogna usare gli ACK perchè appunto il mezzo non è affidabile, e non usiamo CSMA-CD perchè potrebbe capitare che un terminale non sia visibile dagli altri. Esempio 10 Problema del terminale nascosto La stazione A è nascosta alla stazione C e quindi possono capitare collisioni. Poichè l AP B è nel range sia di A che di C, ciò crea interferenza e una collisione anche se la trasmissione da parte di A e di C avviene verso un altra stazione. Questo accade perchè il terminale risulta nascosto a causa del carrier sense limitato di cui parlavamo sopra. Solo l AP B si accorge di A, ma non la stazione C che continua a trasmettere (e ad avere collisioni). Soluzione Per risolvere il problema si usa un carrier sense addizionale non fisico (dove per fisico si intende misurare la potenza), ma logico (dove per logico si intende utilizzare informazioni di controllo) chiamato Virtual Carrier Sense (VCS); Queste informazioni sono salvate in un Network Allocation Vector (NAV), che include timeslot e indica se il canale è libero o meno. Quindi possiamo dire che le stazioni fanno due carrier 190

191 CAPITOLO 11. WLAN sense: uno fisico, e uno logico (NAV) e se almeno uno dei due indica che il canale è occupato, allora è occupato, altrimenti è libero. Figura 11.6: Virtual carrier sense Prima di trasmettere pacchetti di dati, si trasmettono due pacchetti di segnalazione, RTS e CTS (Request To Send e Clear To Send). In questi pacchetti c è un campo detto duration, che indica la durata della trasmissione in termini di timeslot, non si esprime la durata in termini di lunghezza dei pacchetti, perché esistono rate multipli di trasmissione, e non possiamo conoscere qual è il rate utilizzato. Tutte le stazioni che ricevono RTS e CTS usano le informazioni del campo duration per stabilire il loro NAV. Prima di trasmettere, la stazione A invia un pacchetto RTS, quindi tutte le stazioni nel range di A lo riceveranno, e imposteranno il proprio NAV. Successivamente, l AP B replica con un CTS, che viene ricevuto da tutte le stazioni nel range di B, quindi anche dalla stazione C, e settano così il NAV. Ora la trasmissione C-B non può avvenire, perché il NAV di C indica che il canale è occupato, quindi non ci possono essere altre trasmissioni. Questo meccanismo funziona anche nel caso in cui ci troviamo in un IBSS. Infatti siamo in grado di affrontare anche un altro problema: 191

192 CAPITOLO 11. WLAN Esempio 11 Problema del exposed terminal In questo caso abbiamo una IBSS, dove abbiamo A che trasmette a B, e C trasmette a D, ma poichè B e C sono nello stesso range, anche in questo caso come in quello precedente si ha interferenza e quindi collisione. Come prima si utilizza il VCS, ovvero A invia un pacchetto RTS, quindi tutte le stazioni nel range di A settano il proprio NAV e poi B risponde con una CTS, la quale viene ricevuta anche da C ed anch esso setta il proprio NAV. In questa situazione, la trasmissione da C a D non può avvenire, perchè appunto C sa che qualcun altro ha già occupato il canale, quindi non possono esserci altre connessioni. Ora nasce il problema del terminale esposto, per D il canale è libero, perchè non ha ricevuto nè l RTS da A nè il CTS da B quindi supponiamo che D ora vuole trasmettere a C, e gli invia una RTS, ma C non gli risponde, perché non può, visto che il NAV di C indica che il canale è occupato. D continua a inviare RTS a C, senza nessuna risposta da C, e il backoff continua ad aumentare. Tipicamente l interference area è maggiore della communication area. C non risponde a D a causa di B, ma D è troppo lontano da B, e quindi la trasmissione poteva comunque avvenire. In generale alcune trasmissioni che non causerebbero interferenza sono quindi bloccate, questo è un problema minore rispetto al terminale nascosto, consiste solo in un aumento del tempo per la trasmissione che comporta un efficienza minore. Possiamo quindi dire che il VCS in parallelo non funziona molto bene ed il riutilizzo delle risorse è limitato. Possono avvenire comunque trasmissioni simultanee, ma in aree differenti usando anche gli stessi canali, 192

193 CAPITOLO 11. WLAN logicamente solo se le stazioni sono sufficientemente lontane; bisogna quindi gestire le risorse per evitare interferenze. Il VCS (con RTS e CTS) comporta inoltre una riduzione della capacità del sistema, a causa degli overhead dei frame di controllo. L efficienza del NAV dipende dalle caratteristiche del canale e dalla dimensione del frame di dati. Lo standard IEEE definisce una soglia della dimensione d dei frame di dati, chiamata RT ST reshold: se d > RT ST reshold: non si usa NAV perchè l overhead sarebbe molto più grande dei dati, ma la comunicazione non è protetta dalle collisioni; se d < RT ST reshold: viene usato NAV ed in questo modo, anche se la comunicazione è broadcast (perchè è wireless), alla fine, a causa di RTS e CTS, è come avere una situazione Point2Point ed è protetta dalle collisioni Point Coordination Function (PCF) (cenni) L accesso al canale è gestito da un point coordinator (PC) implementato nell AP, PCF funziona solo in architetture centralizzate (Infrastructure BSS), ma non è mai stato implementato in un dispositivo reale. Le stazioni associate possono trasmettere data frame dopo un grant esplicito dal PC, che funge quindi da central station, in pratica la trasmissione non avviene finchè l AP non dà le risorse per farla avvenire. Il meccanismo ricorda l accesso token based, e non può essere utilizzato in una rete a sensori. Il tempo è diviso in due periodi alternati, gestiti da DCF basato sulla contesa (CSMA-CA), e da PCF senza contesa basato su un meccanismo di polling. Figura 11.7: Super frame Il timing dei super frame, ovvero l unione dei frame gestiti da DCF e PCF vedi Figura 11.7, è fornito dai beacon frame trasmessi dall AP. 193

194 CAPITOLO 11. WLAN Procedura di accesso PCF (cenni) Figura 11.8: Content Free Period CFP All inizio di un periodo senza contesa (CFP, Contention Free Period), l AP invia un beacon con l indicazione della durata massima del CFP, e tutte le stazioni settano il NAV ad un tempo pari a CFP e viene inibito DCF. A questo punto il PC invia pacchetti POLL ST1, ovvero la stazione ST1 può trasmettere, quindi dopo un SIFS la ST1 invia frame e ACK (tecnica di piggybacking), poi PC invia POLL ST2, che a sua volta risponde, finchè il PC invia un pacchetto di CF end, con cui informa le stazioni della fine del CFP. Questo metodo è stato pensato per garantire QoS, ad esempio per garantire la banda. Banda = Rate [ bit ] ma solo in teoria, perchè non conosciamo la durata della s trasmissione. Il problema è il tempo al denominatore del rate, e anche non conosciamo il numero di bit da trasmettere. PCF non viene comunemente usato a causa della sua gestione complessa e della inefficienza nella gestione dei servizi realtime: non c è limitazione nella durata delle trasmissioni, e ci sono ritardi nella trasmissione dei beacon. In realtà nessun meccanismo di gestione della qualità può essere implementato con PCF, perciò c è stata un evoluzione dello standard, il nuovo MAC layer e. 194

195 CAPITOLO 11. WLAN 11.5 Syntax of IEEE MAC layer L approccio dello standard IEEE è quello di definire un MAC comune in grado di supportare diversi layer fisici, con l obiettivo di replicare le funzionalità e i servizi disponibili con Ethernet, perchè ricordiamo che l idea del Wi-Fi è quella di essere la versione wireless di Ethernet. Il formato della trama IEEE MAC è complessa per l alto numero di frame e la sua complessa interpretazione. (Figura 11.9). Figura 11.9: MAC Header e Frame Control Field I primi 2 byte dell header MAC sono il frame control che contiene l argomento del pacchetto, poi ci sono 2 byte Duration ID che indicano la durata della trasmissione e 4 campi per indirizzi da 48 bit ciascuno. Invece per quanto riguarda il frame control a sua volta è composto come: Protocol version (2 bit): esiste quello legacy (classico) o l IEEE e (nuovo); Type (2 bit): Data (type=10), Control (type=01) e Management (type=00); Subtype (4 bit): in base al type selezionato ci sono diverse combinazioni (Figura 11.10); Esistono 4 tipologie di indirizzi da inserire nella trama, e sono: Destination Address (DA): indirizzo della destinazione finale; Source Address (SA): sorgente originale del frame; 195

196 CAPITOLO 11. WLAN Figura 11.10: Sottotipi di pacchetti dell Receiver Address (RA): indirizzo dell interfaccia wireless di ricezione; Transmitter Address (TA): indirizzo dell interfaccia wireless di trasmissione; Definiamo ora il Basic Service Set ID (BSSID) consiste nell indirizzo che identifica il BSS, e consiste nel MAC address dell AP in un Infrastructure BSS o in un numero pseudocasuale dentro l IBSS. Figura 11.11: Esempio 196

197 CAPITOLO 11. WLAN 11.6 Network management Le funzioni per il network management sono: Scanning: scoperta di BSS disponibili; Autenticazione: riconoscimento delle stazioni all interno di un BSS; Associazione: viene stabilita l associazione STA-BSS; Gestione potenza: per gli stati a bassa energia; Sincronizzazione: procedure distribuite per la sincronizzazione del layer fisico; Scanning L obiettivo appunto è quello di trovare BSS disponibili a cui connettersi e a svolgere questa procedura sono le stazioni. Logicamente questa funzione nelle reti cablate non esiste. L unico modo per risparmiare energia è spegnersi spesso e solitamente l AP non ha batteria perchè è attaccato alla corrente elettrica (a volte sì, ad esempio quando usiamo un telefono in tethering). Esistono due modalità di scanning passiva e attiva. Modalità passiva La stazione ascolta tutti i canali disponibili in sequenza, e memorizza tutti i beacon ricevuti. Modalità attiva Per ogni canale disponibile, la stazione usa i frame probe request, che possono essere unicast o broadcast, per sollecitare la trasmissione dei beacon. Dopo la fase di scanning, la stazione crea un report con una voce per ogni BSS trovato, contenente informazioni varie (BSSID, SSID, frequenza dei beacon, informazioni di: sincronizzazione, layer fisico e periodicita dei frame DTIM). A questo punto la stazione sceglie il BSS, la modalità di scelta non è standardizzata, e può essere 197

198 CAPITOLO 11. WLAN Figura 11.12: Funzionamento modalità attiva anche manuale. Dopo lo scanning, vediamo l ESS e non il singolo AP, perchè diversi AP hanno lo stesso nome (ad esempio polimi) Associazione Consiste nell azione equivalente ad attaccare (plug) un cavo nella rete. Con questa procedura, l AP memorizza le informazioni della stazione nel database di associazione, così la stazione può cominciare a usare i servizi del DS. L IEEE non permette associazioni multiple, ovvero una sola associazione tra BSS e stazione. La procedura di associazione inizia a partire dalla stazione, mediante frame unicast di gestione: l AP che riceve una richiesta di associazione assegna alla stazione un Association ID (AID) univoco (unico per ogni stazione) Sincronizzazione La sincronizzazione viene gestita in base al tipo di BSS. Nell Infrastructure BSS è gestita dall AP che include le sue informazioni di clock locale nel beacon e nel probe response: RTS,CTS. Invece in Independent BSS (IBSS), le stazioni si sincronizzano al clock dell IBSS initiator, che consiste in una stazione che invia frame beacon Gestione della potenza Se la modalità è quella attiva, la stazione è sempre attiva e sempre pronta a inviare e ricevere; in questo caso il bit del campo Power management presente nel CFC (Header 198

199 CAPITOLO 11. WLAN MAC) è pari a 0. Invece, quando la modalità è quella a risparmio energetico, chiamata power save mode, il transceiver è spento e il bit Power management è pari a 1. In questa modalità, la stazione informa l AP che si sta spegnendo e così facendo l AP inizia a bufferizzare tutto il traffico verso questa stazione. Esistono azioni differenti, in base all architettura utilizzata (ad-hoc oppure infrastructure). Quando il traffico viene bufferizzato, l AID delle stazioni che hanno traffico nel buffer appare nella Traffic Indication Map (TIM) nel beacon (in pratica, TIM è una bitmap che elenca tutte le stazioni che hanno traffico in attesa). Successivamente i beacon sono trasmessi a intervalli regolari (Target Beacon Trasmission Time, TBTT). Le stazioni possono dormire per più di un beacon. Quando una stazione si sveglia e fa check dei beacon, verifica se c è il proprio AID nella TIM. Se c è il suo AID, la stazione invia un frame POLLING PACKET all AP, che inizia ad inviare il traffico bufferizzato. Finchè il campo more data è pari a 1, significa che ci sono dati aggiuntivi da inviare. Quando tale campo diventa 0, allora significa che non c è più traffico, e l AID viene rimosso dalla TIM. Esiste un tipo particolare di messaggio, detto DTIM (Delivery Traffic Indication Message), usato per svegliare le stazioni per traffico broadcast e multicast. Figura 11.13: Esempio di Power save mode 199 In un IBSS, non c è un AP centrale, per cui il risparmio energetico avviene in modo

200 CAPITOLO 11. WLAN differente. Le stazioni informano le altre che sono in power save mode mettendo a 1 il campo, per cui le altre stazioni bufferizzano il traffico. Periodicamente tutte le stazioni si svegliano per controllare se c è traffico bufferizzato: le stazioni invieranno alle altre stazioni un frame ATIM (Ad-hoc Traffic Indication Message) per notificare i frame bufferizzati Autenticazione In un ambiente wireless, il mezzo di trasmissione è condiviso, per cui potenzialmente qualsiasi stazione può accedere alla rete, quindi l autenticazione è necessaria per verificare l identità delle stazioni, e per il controllo dell accesso. Esistono 2 approcci per l autenticazione: Open System Authentication (OSA) che è obbligatoria e Shared Key Authentication (SKA) che è opzionale. Open System Authentication L AP autentica qualsiasi STA che fa una richiesta. Non c è controllo, quindi può essere utilizzato un MAC address filtering. Se voglio entrare in una rete con MAC filtering, prendo il MAC address di un utente autorizzato facendo packet sniffing (ad esempio con wireshark). Figura 11.14: Esempi di autenticazione (a) OSA (b) SKA 200

201 CAPITOLO 11. WLAN Shared Key Authentication L autenticazione basata su una chiave segreta condivisa si basa su un meccanismo di challenge/response, usando un algoritmo crittografico con chiave simmetrica basata su WEP (Wired Equivalent Privacy). La stazione invia un authentication request all AP, che risponde con un challenge text (una sequenza casuale di bit), a cui risponde la STA (cifrando il challenge text), permettendo all AP di verificare la correttezza della richiesta Cifratura La cifratura avviene mediante uno XOR tra il testo in chiaro (da cui si estrae il CRC, Cyclic Redundancy Check) e una keystream (64 bit, data da 24 bit di IV e 40 bit di una chiave WEP). L IV viene poi aggiunto al testo cifrato, e cambiato in modo casuale per ogni frame da inviare. I problemi di WEP sono che usa la stessa chiave cambiando solo l IV, per cui è possibile trovare in poco tempo messaggi codificati con la stessa chiave e lo stesso IV. Inoltre CRC è lineare e debole (vulnerabile all integrità), per cui un attaccante può facilmente cambiare i bit nel pacchetto cifrato e i corrispondenti bit nel CRC: in questo modo il pacchetto è valido, anche se non ha senso. In più ci sono parti del pacchetto (MAC address,...) che sono le stesse e rimangono nella stessa posizione, per cui si può trovare facilmente la corrispondenza tra bit. Esistono inoltre problemi di autenticazione, poichè solo le stazioni devono autenticarsi, e non gli AP (posso creare una rete chiamata polimi, e la gente si collega a me e non a quella ufficiale), e in più questo approccio è vulnerabile ad attacchi di tipo man in the middle (è un AP truffaldino che può intercettare traffico di autenticazione). Ci sono poi problemi di privacy, in quanto WEP può essere facilmente violato in poco tempo. E necessaria un autenticazione robusta, oltre ad algoritmi crittografici avanzati (IEEE i). Questo standard fornisce autenticazione gestita ai layer più alti (non al link layer), introduce nuovi protocolli e infrastrutture per l autenticazione, e migliora la privacy e i meccanismi di integrità, mediante WPA (Wireless Protected Access). La privacy è garantita mediante Temporary Key Integrity Protocol (TKIP), 201

202 CAPITOLO 11. WLAN basato su RC4 e che cambia la chiave per ogni pacchetto, e Counter Mode/CBC MAC Protocol (CCMP), basato su AES e più robusto di TKIP. L autenticazione è basata sull Extensible Authentication Protocol (EAP), in cui il richiedente invia una richiesta all AP, che si basa su un Authenticate Server e un meccanismo di challengeresponse: se supera il controllo, allora il richiedente può accedere alle risorse di rete. Figura 11.15: Extensible Authentication Protocol (EAP) Lo scambio delle chiavi avviene in questo modo: 1. Si usa RADIUS (protocollo di sicurezza) per inviare la PMK (Pairwise Master Key, chiave segreta condivisa) dall AS all AP; 2. Si usa la PMK e la 4-Way Handshake per derivare e verificare la PTK (Pairwise Transient Key, si ottiene concatenando PMK, nonce di AP e STA e i loro indirizzi MAC); 3. Si usa il Group Key Handshake per inviare GTK (Group Terminal Key) dall AP alla STA; 202

203 CAPITOLO 11. WLAN WPA permette 2 tipi di EAP: Lightweight EAP (LEAP): è proprietà di Cisco, è basato su password; EAP Transport Layer Security (EAP-TLS): basato su certificati; Esistono poi soluzioni ibride (basate su password e certificato): EAP Tunneled TLS (EAP-TTLS), Protected EAP (PEAP) Physical layer Il primo layer fisico faceva riferimento a un canale radio condiviso, in grado di operare in uno spettro senza autorizzazioni, con interferenza altamente variabile, quindi era necessario avere un layer fisico robusto verso le interferenze degli altri sistemi. Tra il livello MAC (gestito da un apposita entità) e il layer fisico c è un layer intermedio detto Physical Layer Convergence Procedure (PLCP), che adatta il frame MAC alla trasmissione nel layer fisico. Esiste inoltre il Physical Medium Dependent (PMD), un layer usato per la trasmissione (modulazione e signaling a livello fisico). Il layer fisico si occupa di carrier sense e stima della qualità. Esistono differenti layer fisici (per motivi storico-politici), con 3 modalità di trasmissione: Infrarossi (obsoleto); Frequency Hopping Spread Spectrum (FHSS, usato in ambienti particolari); 203 Direct Sequence Spread Spectrum (DSSS);

204 CAPITOLO 11. WLAN Sia DSSS che FHSS sono modulazioni a spettro espanso che hanno come obiettivo quello di limitare l impatto dell interferenza nelle performance del sistema di trasmissione, perchè il canale radio è soggetto a interferenze variabili. DSSS allarga l energia del segnale in una banda più grande di quella originale, mentre FHSS divide la banda in sottocanali di 1 MHz ciascuno, quindi ad ogni trasmissione il trasmettitore salta in un sottocanale secondo una sequenza predefinita (le sequenze sono ortogonali). DSSS: si usa una sequenza, detta sequenza di Barker, per l operazione di allargamento dello spettro (è uguale per tutti, non come CDMA). Il segnale originale viene allargato, poi riportato alla banda originale, in questo modo tutti gli altri segnali vengono allargati (quindi abbassati in potenza/energia). Lo standard definisce 14 canali distanti 5 MHz a partire da 2,412 GHz. Il problema è l overlapping, quindi non posso usare tutti i canali (lo spettro WiFi è 20 MHZ, l occupazione di energia è per la maggior parte contenuta in 22 MHz). Per questo motivo posso usare solo 3 canali, per i quali l overlapping è minimo (canali 1, 6, 11). Alcuni canali sono usati per creare un canale a 40 MHz. Esistono 2 tipi di modulazione: Differential PSK (DPSK): datarate di 1Mb/s, con 1 bit per simbolo Differential Quadrature Phase Shift Keying (DQPSK): datarate di 2 Mb/s, 2 bit per simbolo Per rate più alti, si possono usare modulazioni differenti, differenti layer fisici e un diverso approccio di trasmissione/ricezione. PLCP (Physical Layer Convergence Protocol) è il protocollo del layer fisico di diverse reti di trasmissione dati, e aggiunge un ulteriore protezione verso le interferenze e il controllo degli errori (scrambling e CRC). La struttura varia in diverse versioni del layer fisici. La parte dati è rappresentata dal MAC frame, mentre l header è composto da SYNC (128 bit usati per la sincronizzazione) e da altri campi. Le 2 parti del frame (header e data) possono usare 2 diversi schemi di modulazione, e quindi avere 2 rate differenti. PLCP rappresenta il PDU (Protocol Data Unit) del layer fisico, cioè l unità base. Il frame MAC ( byte) può essere più lungo dell Ethernet frame (1512 byte). 204

205 CAPITOLO 11. WLAN Figura 11.16: BOH 11.8 Evoluzione del layer fisico b (Highrate-DSSS): introduce una modifica al PMD (Physical Medium Dependant), con nuovi sistemi di modulazione che garantiscono un rate fino a 11 Mb/s, una modifica al PLCP, con un nuovo header e un nuovo preambolo, ed è compatibile con gli standard legacy. Si usa una modulazione QPSK con spreading, il rate di trasmissione è 1,375 Msymbol/s, con 2 data rate (5,5 Mb/s con 4 bit/simbolo, 11 Mb/s con 8 bit/simbolo). Solo il datapart permette diversi schemi di modulazione (DQPSK, CCK) a : il motivo è quello di risolvere la congestione della banda a 2,4 GHz, e il bisogno di rate maggiori di 11 Mb/s. Per farlo si usano la banda U-NII (intorno a 5 GHz) e la modulazione OFDM (Orthogonal Frequency-Division Multiplexing). I vantaggi sono un rate dati più alto (fino a 54 Mb/s) e interferenza più bassa (la banda è meno popolata), ma c è una copertura minore, un costo più alto, una compatibilità minore e un maggior consumo energetico. OFDM converte un flusso di bit ad alto rate in flussi multipli a rate minori, che vengono multiplati in portanti ortogonali. Ciò permette efficienti tecniche numeriche di modulazione e demodulazione. Si usa uno schema di modulazione a multiportante. Sono possibili interferenze tra simboli adiacenti. OFDM usa sottoportanti, su cui viene diviso il simbolo in trasmissione. 205

206 CAPITOLO 11. WLAN g : il motivo è quello di aumentare il datarate dell b nella banda a 2,4 GHz, e la compatibilità con i dispositivi b. Per farlo sono state proposte 2 soluzioni in concorrenza: PBCC e DSSS-OFDM. Si utilizza un layer fisico obbligatorio (Extended Rate Physical OFDM), in sostanza lo stesso dell a, e 2 soluzioni fisiche alternative (PBCC, DSSS-OFDM) g è in grado di rilevare i preamboli b e a, è possibile fare carrier sensing g usa PHY b nello scambio dei frame RTS/CTS (stesso data rate, modulazione e durata dello slot). I dispositivi b non sono in grado di ricevere le trasmissioni g n : l obiettivo è quello di raggiungere data rate molto alti. L approccio è quello di modificare il layer fisico OFDM e quello MAC. Per aumentare il data rate sono stati proposti differenti approcci: multiplazione spaziale, banda maggiore, dimensione maggiore della costellazione, code rate maggiore e minor tempo di guardia. Si usa la banda a 2,4 GHz, 4,9 GHz e 5 GHz. Le modifiche principali sono MIMO-OFDM, multiplazione spaziale di differenti flussi usando 2 antenne (obbligatorie) o 4 antenne (facoltative) e canali più grandi (20 MHz obbligatori, 40 MHz opzionali). Altre modifiche sono un tempo di guardia minore tra i simboli OFDM, una modulazione fino a 64QAM, codici convoluzionali e un coding ottimizzato per MIMO. Questo porta ad avere un data rate fino a 600 Mb/s. C è supporto per il QoS: lo standard incorpora e (un nuovo MAC), ci sono funzionalità aggiuntive come il frame aggregation, e viene estesa l entità di gestione MAC per supportare funzioni avanzate di gestione delle risorse radio e : i problemi con PCF sono l assenza di meccanismi per la differenziazione dei flussi di traffico (c è una singola coda di pacchetti nel layer MAC), possibili ritardi nel timing delle superframe e nessun controllo sulla trasmissione (una stazione che riceve 206

207 CAPITOLO 11. WLAN un frame poll dal PC può trasmettere diversi frame o un frame di lunghezza arbitraria) e permette la differenziazione dei flussi (ogni dispositivo ha 4 code per 4 categorie di traffico), vengono introdotte le opportunità di trasmissione (ad ogni trasmissione viene assegnato un tempo massimo per essere completata). E possibile la trasmissione diretta tra stazioni anche nell Infrastructure BSS, e viene utlizzato il block ACK (un singolo ACK per diversi frame, non 1 ACK = 1 frame). L accesso al canale è gestito dalla Hybrid Coordination Function (HCF), che opera in 2 modi: EDCA (Enhanced Distributed Channel Access): basato sulla contesa, definisce 4 categorie di accesso (AC), che corrispondono a 4 tipi di traffico: voce, video, best effort, background. Ogni AC ha differenti parametri di backoff. HCCA (HCF Controlled Channel Access): basato sull accesso controllato. HCCA ha un approccio simile a PCF. L Hybrid Controller (HC) può decidere di eleggere una stazione per trasmettere un frame CF-POLL o un frame dati, e può accedere al canale, dopo un PIFS, senza backoff (alta priorità). A differenza di PCF, sono possibili operazioni ibride con alternanza di periodi con e senza contesa. Possibili ulteriori miglioramenti sono il block ACK (su canali ad alta qualità) e il Direct Link Protocol (DLP), un protocollo per la comunicazione diretta tra le stazioni in architetture infrastructure (aumenta la capacità, ma è un operazione complessa - servono sincronizzazione, risparmio energetico,...). Sebbene il Power Save Mode (PSM) allevi in modo significativo il problema del consumo energetico, si introduce una dipendenza tra il ritardo nel downlonk (AP stazione) e l intervallo di ascolto. Di conseguenza, da alcuni valori nell intervallo di ascolto possono conseguire ritardi nel downlink, che sono inaccettabili per alcune applicazioni sensibili alla QoS (ad esempio VoIP) e definisce un miglioramento del PSD , detto Automatic PSD (APSD). Sono possibili 2 modalità: unscheduled APSD (U-APSD): la principale idea nuova di U-APSD è quella di eleggere in modo anticipato l AP per richiedere i frame bufferizzati, invece di attendere la notifica nei beacon frame. I frame in direzione uplink possono essere usati come attivatori per cominciare un Service Period (SP). Ogni categoria 207

208 CAPITOLO 11. WLAN di accesso può essere configurata in modo separato. Un SP viene terminato dalla ricezione di un apposito frame, detto End of Service Period Flag (EOSP). Durante un SP, uno o più data frame possono essere inviati, fino a un valore massimo. scheduled APSD (S-APSD): la principale idea nuova di S-APSD è quella che l AP può schedulare il tempo di wakeup per ricevere i frame bufferizzati. Lo schedule è basato sui parametri Service Start Time (SST) e Service Interval (SI), definiti per ogni categoria di accesso per cui è attivato S-APSD Mesh networking L obiettivo è quello di estendere la dimensione dell hot-spot WiFi attraverso un infrastruttura mesh senza fili, e di estendere lo scenario della tecnologia WLAN alle reti metropolitane. La soluzione è un infrastruttura distribuita con reti mesh di Infrastructure BSS, con AP connessi mediante sistemi wireless. Gli scenari applicativi sono gli accessi residenziali (in competizione con WiMax), uffici, reti militari e di sicurezza pubblica. Lo standard è rappresentato dall s, che aveva l obiettivo di definire un ESS per supportare servizi multicast, broadcast e unicast in reti multihop s fornisce un routing robusto ed efficiente, sicurezza, 208

209 CAPITOLO 11. WLAN flessibilità dei MAC layer, trasparenza verso i layer superiori e compatibilità con i dispositivi legacy. Il routing è basato sull Hybrid Wireless Mesh Protocol (HWMP), una combinazione di AODV e protocolli basati sui tree. Diverse compagnie producono dispositivi mesh, basati su hardware e software proprietari. 209

210 CAPITOLO 11. WLAN 210

211 Capitolo 12 WPAN Le reti WPAN (Wireless Personal Area Networks) è una PAN (Personal Area Network) che utilizza come mezzo trasmissivo le onde radio invece degli usuali cavi. La rete Bluetooth forma una WPAN e questa tipologia di rete è definita nell IEEE Figura 12.1: Wireless standard In telecomunicazioni una rete personale è una rete informatica utilizzata per permettere la comunicazione tra diversi dispositivi (telefono, PC tascabile, ecc.) vicini a un singolo utente. I singoli dispositivi possono anche non appartenere all utente in questione. Il raggio di azione di una PAN è tipicamente di alcuni metri e sono carat- 211

212 CAPITOLO 12. WPAN Figura 12.2: IEEE family terizzate da un range corto, poca potenza, basso costo, reti piccole e da dispositivi di comunicazione che operano all interno di uno spazio operativo personale. Una PAN può essere realizzata con collegamenti via cavo come per esempio USB o FireWire Bluetooth E uno standard industriale per le WPAN, che il Working Group IEEE ha adattato per i livelli 1 e 2. E caratterizzato da una tecnologia radio, basso costo, corto raggio (10-20 m), bassa complessitá, piccola dimensione, che opera nella banda 2,4 GHz, standardizzando solo i primi 2 livelli. Esempi applicativi sono gli headset (microfono + cuffie), la sincronizzazione dei dati (PC-telefono-tablet-ecc...), access point, ecc.. Bluetooth usa la banda ISM a 2,4 GHz (ricordiamo che a Banda ISM (Industrial, Scientific and Medical) è il nome assegnato dall Unione Internazionale delle Telecomunicazioni (ITU) ad un insieme di porzioni dello spettro elettromagnetico riservate alle applicazioni di radiocomunicazioni non commerciali, ma per uso industriale, scientifico e medico), con 79 canali spaziati tra loro da 1 MHz ( MHz). 212

213 CAPITOLO 12. WPAN La modulazione utilizzata è la G-FSK (Gaussian frequency-shift keying è un tipo di modulazione che utilizza filtri gaussiani), ed esistono 3 classi: Figura 12.3: Classi Si usa un Frequency Hopping (FH), con 1660 hop/s, in base a una sequenza pseudocasuale, determinata dal clock e dall indirizzo del dispositivo master che regola l accesso al canale. Gli altri dispositivi sono slaves e seguono la sequenza f k definita dal master. Figura 12.4: Frequency hopping La trasmissione può essere più lunga di 1 singolo timeslot, può espandersi in 3 o 5 timeslot (rimane comunque l alternanza master-slave). I vantaggi sono che bisogna conoscere solo il tempo e la sequenza, senza dover stare sempre accesi. 213

214 CAPITOLO 12. WPAN Figura 12.5: Frequency hopping L architettura di rete più semplice definita in Bluetooth è detta piconet, una rete ad-hoc composta da almeno 2 dispositivi: 1 agisce da master, gli altri da slave. La comunicazione può avvenire solo tra master e slave, non direttamente tra slave. In una piconet possono essere attivi fino a 7 slave, gli altri possono essere in standby (non fanno parte della piconet) o parcheggiati (ne fanno parte, ma non sono attivi, fino a un massimo di 256). La piconet ha una topologia a stella. Gli indirizzi usati sono i MAC (48 bit), AMA (Active Member Address, 3 bit) e PMA (Parked Member Address, 8 bit). Bluetooth considera 2 tipi di connessioni: SCO (Synchronous Connection Oriented): connessione bidirezionale a rate fisso (circuito), si usa FEC per migliorare la qualità, il rate è di 64 kb/s ACL (Asynchronous ConnectionLess): connessione a commutazione di pacchetto condivisa tra master e slave attivi basata su uno schema di accesso ad elezione (polling). Ci sono parecchie opzioni per i formati del pacchetto e per i codec del layer fisico (1, 3, 5 slot). Il rate è fino a 433 kb/s simmetrici e 723,2 / 57,6 kb/s asimmetrici. Abbiamo un meccanismo di FH, 79 canali fisici con un rate di trasmissione all interfaccia radio di 1 Mb/s. Non tutti i canali vengono usati, ma si usano in base a una sequenza pseudorandom, ogni 625 ms si cambia il canale. La comunicazione tra elementi della rete continua secondo la sequenza di hopping. Ogni trasmissione 214

215 CAPITOLO 12. WPAN Figura 12.6: SCO/ACL avviene tipicamente su canali differenti. Possiamo rappresentare diverse trasmissioni sullo stesso asse dei tempi perchè tutte le stazioni adottano un FH (non è come FDMA/TDMA, in WiFi,...). Tutte le stazioni che hanno la chiave di generazione e l algoritmo possono seguire lo stesso pattern (sequenza di FH). L accesso multiplo si basa su un polling scheme: c è sempre una trasmissione alternata tra master (che genera l hopping sequence) e slaves. Se il master trasmette allo slave 1, solo lo slave 1 può replicare, e solo se ha ricevuto dal master: quindi un pacchetto inviato dal master può anche essere un pacchetto vuoto, usato per sollecitare la trasmissione dallo slave (il pacchetto è detto poll packet, o null packet, se lo slave riceve un pacchetto dal master, ma non ha nulla da rispondergli). Lo schema polling include ritrasmssione (è un meccanismo facile da implementare, dopo la trasmissione c è sempre l opportunità di trasmettere un ACK). Lo slave non ha subito questa possibilità, ma quando il master trasmette ancora, chiede allo slave se ha ricevuto correttamente il pacchetto precedente. Se il pacchetto ricevuto dal master non è corretto, il master chiede di trasmetterlo di nuovo utilizzando un protocollo Stop&wait. Questo schema lavora nella banda ISM (come WiFi,...), quindi la tecnologia deve essere robusta verso le interferenze (interne - dello stesso tipo - ed esterne - da altre tecnologie). 215

216 CAPITOLO 12. WPAN Se ci sono problemi in determinate aree dello spettro, poichè si cambiano di continuo le frequenze, il problema non si pone. Inoltre il meccanismo di ritrasmissione permette di considerare lo schema robusto verso le interferenze esterne. Come possiamo essere sicuri che lo schema sia robusto anche verso le interferenze da altri sistemi? In una stanza possono esserci connessioni BT simultanee (quindi diverse piconet) attivate da vari utenti, che usano gli stessi 79 canali e che appartengono ovviamente a reti differenti (piconet indipendenti). Figura 12.7: Piconet Che meccanismo viene usato per rendere lo schema robusto? In ogni rete c è un diverso schema di hopping, quindi i dispositivi saltano tra i canali in modo indipendente e casuale. I dispositivi possono collidere in alcuni canali e quindi avere interferenza, ma l hop successivo permette di cambiare canale (probabilmente in 2 diversi), quindi è possibile la ritrasmissione. Perchè usare una sequenza casuale, invece che dare un canale fisso per piconet? In caso di interferenza esterna, alcuni canali potrebbero esserne più colpiti e altri meno, inoltre c è un problema di coordinazione (serve qualcuno che decida i canali, che scambi le informazioni nella rete,...), quindi serve un protocollo, un punto centrale di decisione, quindi non ne vale la pena (randomness è più economica della coordinazione). Sono reti che si creano in base alla necessità e che non ci sono sempre. Le comunicazioni BT devono essere semplici, e costruire lo stack protocollare è facile e compatto (serve poca memoria per memorizzare l intera pila). Ad esempio, lo schema command-response è molto + semplice del CSMA perchè il terminale deve solamente 216

217 CAPITOLO 12. WPAN ricevere ed eseguire comandi. La tecnologia BT è stata sviluppata a livello industriale e poi standardizzata dall IEEE. La pila protocollare non rimanda allo stack della tecnologia 802 (non c è physical layer, MAC layer, LLC,...). Figura 12.8 E stata standardizzata solo la parte inferiore del protocollo (ciò che corrisponde a PHY e MAC layer), cioè RF (Radio Frequency) e Baseband. RF è la parte del dispositivo che si occupa di trasmissione e ricezione delle frequenze radio (2,4 GHz), Baseband gestisce le informazioni per il coding. Questa parte di elaborazione viene ovviamente fatta dopo il campionamento del segnale, in parte siamo a livello fisico (si aggiungono sequenze di error check,...), in parte siamo in MAC (polling scheme). Il protocol stack si rifà alla struttura fisica del dispositivo. Solitamente la parte RF è solo hw, mentre la parte superiore può essere implementata in sw. Oggi l intero stack è implementato in hw. Link manager è il protocollo di controllo che crea e gestisce le piconet e si occupa di sicurezza (scambia informazioni con gli altri). Al di sopra possono esserci diverse cose: se ad esempio uso una cuffia, la parte dati è una trasmissione basata su circuito (i pacchetti audio sono trasmessi direttamente nel protocol stack nel Baseband, quindi i pacchetti a 64 kb/s generati dal voice coder vengono trasmessi direttamente). Per il resto dell informazione (data application), abbiamo un protocollo convergente, che adatta i diversi format di dati al livello inferiore. L a- 217

218 CAPITOLO 12. WPAN dattamento consiste nel creare pacchetti a lunghezza fissa, quindi bisogna decidere come usare questi pacchetti. Il protocollo poi serve diverse applicazioni. Le informazioni sono pacchettizzate, e i pacchetti sono messi nel payload di diversi pacchetti BT. Esistono applicazioni particolarmente importanti: RFCOMM è l emulazione di una lunea seriale di un PC; TCS si occupa della trasmissione dei comandi per la gestione delle telefonate (i comandi hanno un apposito formato); SDP è un protocollo generale per gestire le sessioni real-time (musica,...); La parte inferiore è standardizzata da IEEE, quella superiore no. In WiFi ci sono reti generiche, che servono ogni tipo di applicazione, in BT (e ZigBee) non è supportato tutto, solo un sottoinsieme di applicazioni specificate dai produttori. Ci sono application profiles: ogni dispositivo può avere diversi profili (non tutti) ad esempio una cuffia può lavorare solo come cuffia. Le tecnologie sono quindi semplici e verticali e specificano tutta la pila protocollare fino all applicazione (non tutte le applicazioni sono supportate, e i dispositivi sono specializzati). Se un dispositivo è specializzato, la sua costruzione è più semplice (non bisogna implementare tutti i possibili casi offerti dallo standard). Oggi si cerca di definire tecnologie (come 6LOWPAN) generiche (che supportano diverse applicazioni). Una possibile applicazione è la sincronizzazione della rubrica, che può avvenire mediante appositi comandi che vengono trasmessi sulla linea seriale (o direttamente). In teoria, potrei avere anche una pila TCP/IP su BT, ma per farlo ho bisogno di un link protocol come il LLC in WiFi. IP vuole un LLC come supporto perchè si basa sul concetto di subnetting. Per questo motivo si crea un PPP protocol (Point2Point), cioè un link protocol e un SDP (Session Description Protocol) utilizzato per descrivere le sessioni. C è inoltre un interfaccia interna, un interfaccia host-control (tra Link Manager/Baseband/radio e la parte superiore), standard perchè possiamo avere un implementazione sui chip (lower part),quindi serve l interfaccia standard per controllare la parte inferiore della pila. Ci sono inoltre diverse interfacce interne standardizzate. L architettura è uguale per tutte le versioni di BT. Una nuova versione è ibeacon. 218

219 CAPITOLO 12. WPAN 12.2 Formato del pacchetto Figura 12.9 C è un unico formato di pacchetto che si adatta a diversi scopi: ACCESS CODE: è una sequenza nota al ricevitore usata per la sincronizzazione (come il preambolo in Wi-Fi), quindi physical layer, ma non solo, perchè è derivata dal MAC address del master (quindi è lo stesso per le trasmissioni in una piconet), e cambia da piconet a piconet; HEADER: usata per il controllo del link; PAYLOAD: è variabile (dipende dal numero di slot, dalla presenza di bit di correzione degli errori,...); L access code è usato per la sincronizzazione, quindi ci sono: un preambolo, una parola di sincronizzazione e un trailer. La parola di sincronizzazione è l indirizzo MAC del dispositivo e possiamo avere 3 tipi di access code: Figura 12.10: Payload Channel access code (CAC): definisce la piconet ed è derivata dall indirizzo MAC del master node; Device Access Code (DAC): è usato per indirizzare un utente della rete durante il processo di associazione ed è ricavato dall indirizzo MAC del master node; 219

220 CAPITOLO 12. WPAN Inquiry Access Code (IAC): è fissa per tutti i dispositivi è ed usata per scoprire tutti gli utenti nel range di trasmissione; L header è invece formato da più campi: Figura L header è formato da: Active Member Address (AMA): è l indirizzo dello slave; Type: è il tipo di pacchetto, ci sono 16 tipi di pacchettiche si differenziano per lunghezza, tipo di layer fisico e tipo di connessione; Flow: campo che fa controllo di flusso; ARQ: gestisce la ritrasmissione (Stop&wait); SQN: numero di sequenza del pacchetto; HEC: checksum, campo che tiene traccia degli errori all interno del pacchetto; La parola di sincronizzazione è formata da 64 bit (ci sono 2 standard per gli indirizzi MAC, uno con 48 bit e l altro a 64 bit, ottenuto aggiungendo 2 byte). L header è piuttosto corto: 3 bit di AMA, è sempre l indirizzo dello slave (ho al massimo 7 slaves, il master non ce l ha), le trasmissioni master-slave hanno l AMA dello slave. Come posso identificare il master, se non ho un indirizzo come faccio a capire se ho comunicato con quello corretto? Uso l access code, ogni trasmissione è identificata mediante l access code. Il FEC usato qui è molto semplice: è un repetition coding, si ripete semplicemente la sequenza 3 volte, quindi lo stesso bit è ripetuto 3 volte, e dall altra parte si usa uno schema a maggioranza (se ricevo 3 1, allora è 1, se ricevo 2 1 e 1 0 allora è 1,...). C è uno 220

221 CAPITOLO 12. WPAN speciale pacchetto usato durante il network setup, e trasmesso per informare le altre stazioni della capacità e delle informazioni di sincronizzazione del dispositivo mittente (ad esempio, un master invia questo pacchetto FHS quando vuole creare una piconet, per informare le altre stazioni del suo indirizzo e del meccanismo di sincronizzazione per generare la sequenza pseudocasuale). Il pacchetto Digital Voice (DV) è usato per trasmettere la voce codificata a 64 kb/s. ARQ è come Stop&wait, ma con un importante differenza: abbiamo un FEC per l header (dovuto al codice ripetuto), quindi potremmo decodificare l header, ma non la parte dati (sono protetti in modo differente), quindi FEC code per l header e un codice separato (facoltativo) per la parte dati. E possibile che solo l header sia corretto, quindi è possibile richiedere la ritrasmissione anche senza decodificare il pacchetto quindi possiamo usare il NACK. La tecnologia è molto più semplice del WiFi. Come si crea una rete? La rete è gestita dal link controller. Il link può avere diversi stati: Stand-by: il dispositivo non è attivo; Connection: il dispositivo è attivo e connesso a una piconet; Inquiry: il dispositivo sta cercando altri dispositivi nel range; Inquiry Scan: il dispositivo sta ascoltando in attesa di ricevere richieste di inquiry durante piccoli intervalli di tempo; Page: il dispositivo cerca un dispositivo specifico; Page Scan: il dispositivo ascolta in attesa della richiesta di page da un determinato dispositivo; Posso muovermi da uno stato all altro: Un dispositivo in standby si muove in page scan oppure inquiry scan (cioè si attiva), e se non riceve nulla torna in standby (sleep mode). Se voglio creare una connessione con uno specifico dispositivo, allora forzo il dispositivo ad andare in page, se voglio cercare dispositivi lo forzo nello stato inquiry. Dallo stato page vado in uno stato 221

222 CAPITOLO 12. WPAN Figura intermedio, detto master response, e poi in connection (quindi significa che il setup della rete ha avuto successo). Nello stato inquiry posso andare direttamente nello stato connection, ma tipicamente torno in standby e da lì in page, e poi in connection. Come mi muovo dallo stato standby allo stato connection? Assumiamo di conoscere esattamente il dispositivo con cui vogliamo connetterci: dall indirizzo ricava il DAC, e quindi entra nella procedura di page trasmettendo richieste (che consistono nel DAC) su alcuni dei 79 canali. Nel caso in cui l altro dispositivo sta dormendo, come faccio ad essere sicuro che l altro dispositivo riceva la richiesta? L altro si sveglia periodicamente,e ascolta. Il periodo di sleeping è nell ordine dei secondi (3-4 secondi), il periodo di ascolto è 10 ms. Il problema è che non sappiamo su quale canale si sveglia il dispositivo, non possiamo usare un canale specifico perchè ci sarebbero problemi in caso di interferenza, o violeremmo le regole della banda ISM. Quindi il dispositivo si sveglia su 1 dei 32 canali (32 a causa della minima diversità possibile). Quindi per scansionare tutti i canali ci impiega minuti. Come possono incontrarsi (stesso canale) i 2 dispositivi? In 10 ms, il dispositivo invia il DAC su 16 canali: se durante questi 10 ms l altro dispositivo si sveglia su uno dei 16 canali, riceve il DAC e risponde, quindi il primo 222

223 CAPITOLO 12. WPAN invia il FHS. Il dispositivo continua a inviare sui 16 canali per un periodo di sleeping: se durante il periodo non trovo nulla, invio sugli altri 16 canali. Quindi, nella maggior parte dei casi, in massimo 2 sleeping periods (6-8 secondi), trovo il dispositivo. Per collegarmi a una rete WiFi, ci metto molto meno (circa 100 ms). I dispositivi tendono a dormire (sono alimentati a batteria), quindi devono risparmiare energia. Tuttavia, il dispositivo in stato page è sempre sveglio durante la fase di setup, e alla fine trasmette il pacchetto FHS (che contiene le informazioni di sincronizzazione). Dopo questa fase, il dispositivo page diventa il master, e gli altri gli slave, quindi ho creato una piconet. Se si vuole aggiungere un nuovo dispositivo, il master sospende la piconet, e ripete la procedura. Il dispositivo che diventerà master continua a trasmettere finchè non trova i futuri slave, mentre gli altri dormono per la maggior parte del tempo, quindi il master consuma molta più energia degli slave, creando così una situazione asimmetrica. In base a come viene settata la piconet, un dispositivo può essere master o slave (è solo un ruolo, non uno standard predefinito). Perchè c è questa soluzione asimmetrica? Per la maggior parte del tempo il dispositivo è in modalità page scan al fine di risparmiare energia perchè il dispositivo resta in questo stato per la maggior parte del tempo. Spendo solo 8 secondi della vita del dispositivo per la connessione quindi anche se spendo più energia in quei secondi, per il resto del tempo ne spendo meno, quindi è molto più importante nello stato in cui resto per la maggior parte del tempo piuttosto che in quello in cui rimango poco, quindi per questo la soluzione non è simmetrica. Una volta che ho creato la rete, viene assegnato l AMA al page scan device, e da ora in poi la rete è attiva. All inizio la rete è fatta da 2 dispositivi. In WiFi la rete c è sempre, in BT no. Il motivo è che la rete BT è creata ad-hoc, solo quando è necessario (non c è un dispositivo che trasmette periodicamente beacon frame e che pubblicizza la rete), quindi è più lenta la connessione a una rete BT. In BT il futuro master non trasmette beacon frame, ma cerca gli altri dispositivi, non c è una rete fatta da un solo dispositivo, ne servono almeno 2 (la rete viene creata on-purpose). Attualmente è l unica tecnologia che ha questo comportamento (pure ad-hoc network). 223

224 CAPITOLO 12. WPAN La procedura di inquiry è simile a quanto detto sopra, la differenza è che viene trasmesso l IAC (un generico access code), e tutti i dispositivi nel range rispondono alla richiesta, quindi non interrompono lo scanning quando ricevo una risposta, ma continuo lo scanning trasmettendo l IAC su tutti i canali. Quando ricevo una risposta, creo una lista con tutti i dispositivi nel range, usata dai layer superiori (ad esempio per cominciare una procedura di paging). Quindi la procedura di inquiry ricorda quella di paging. La differenza sta nella risposta; ad una richiesta di inquiry non rispondo con lo stesso access code (ma con un pacchetto FHS), quindi la lista creata è ricca, in quanto per ogni dispositivo ci sono dettagli di indirizzo e sincronizzazione. Se dopo la fase di inquiruy voglio collegarmi a uno o più dispositivi (fase di page), avendo ricevuto l informazione di sincronizzazione, invece che trasmettere su tutti i possibili 32 canali, so esattamente la pseudorandom sequence e quindi so su quale canale si sveglierà il dispositivo, quindi la trasmissione del DAC può essere fatta su un particolare canale, e quindi la procedura di setup è più breve. Nella stessa area possono esserci più piconet, identificate da uno specifico master: non possiamo avere più piconet con lo stesso master. Come detto, le reti BT sono ad-hoc (non come WiFi), fino a 8 dispositivi. Il consumo energetico è più importante rispetto a WiFi (i dispositivi sono alimentati a batteria) di conseguenza ci poniamo il problema del risparmio energetico. Ci sono meccanismi per risparmiare energia. Il più semplice meccanismo di controllo di accesso è molto più efficiente del carrier sense (WiFi, ZigBee,...). Ci sono inoltre low power modes: HOLD: lo slave negozia con il master un periodo in cui non ascolta e i pacchetti verso quello slave sono salvati in un buffer nel master; SNIFF: si negozia un meccanismo periodico di sleeping e ascolto; PARK: l AMA viene rilasciato (negli altri casi rimane), e si assegna un PMA al nodo, che non può più partecipare alle comunicazioni nella piconet, finchè il master fa un operazione di unparking, mediante uno speciale messaggio. Il vantaggio è quello di avere parecchi dispositivi parcheggiati, che vengono riattivati quando è necessario. Un applicazione possibile è il data gathering, in cui ho 224

225 CAPITOLO 12. WPAN diversi sensori sparsi, da cui periodicamente raccolgo informazioni (dopo averli riattivati), e poi li parcheggio di nuovo. Anche in questo caso il dispositivo deve ascoltare il canale periodicamente (per ricevere il messaggio di unparking); Sicurezza Tutti questi meccanismi sono gestiti dal link management protocol. E un protocollo di controllo che gestisce tutti gli aspetti. Per farlo usa messaggi speciali con alta priorità. La sicurezza ha un meccanismo molto semplice, per autenticazione e cifratura si usano chiavi a 128 bit (più lunghe del WiFi), il meccanismo è simmetrico (non usiamo un meccanismo asimmetrico perchè sarebbe troppo esoso in termini di complessità di calcolo). La chiave di autenticazione è solo per l autenticazione, e dopo questa fase la stessa chiave viene usata per generare una chiave usata per la cifratura. Il vantaggio del meccanismo simmetrico è che in questo modo si autenticano entrambi i lati. Per l autenticazione si usano chiavi simmetriche (come in WiFi), con un meccanismo challenge-response (si cifra un testo e si invia il testo in chiaro all altro, che lo cifra e lo restituisce al primo, che confronta i testi). Dopo questa fase, la chiave viene utilizzata per generare altre chiavi (usate per cifrare). Come vengono messe le chiavi nei dispositivi? Per uno smartphone è facile (si usa la tastiera), ma per un headset? I costruttori scrivono una sequenza fissa (ad esempio 1234 ) nel manuale delle istruzioni. Inoltre c è un meccanismo per disabilitare per qualche tempo i meccanismi di sicurezza al fine di scambiare le chiavi in chiaro. Durante questa fase i dispositivi sono vulnerabili ad attacchi, ma se fatto a casa non c è nessun problema. Oltre a questo c è il Logical Link Control and Adaptation Protocol (L2CAP), che ha il compito di creare Packet Data Unit adatte alla trasmissione nei formati del pacchetto del Baseband del BT. 225

226 CAPITOLO 12. WPAN Figura Profili Le applicazioni sono in un certo senso parte della tecnologia BT (non dei protocolli standard), in quanto i produttori specificano le applicazioni in modo da garantire interoperabilità a livello applicativo. Per far questo ci sono gli application profiles che specificano cone la tecnologia è usata da una altra applicazione e l applicazione stessa (come si comporta, come scambia messaggi,...). I livelli inferiori sono sicuramente standardizzati, per il livello applicativo bisogna leggere quali profili sono supportati (ovviamente non tutti sono supportati). La topologia base in BT è la piconet, che inizia da un link tra un master e uno slave. Due slave non possono comunicare tra loro, nè direttamente nè tramite il master. C è un altra possibilità, che aumenta le capacità del BT: la scatternet (è una generalizzazione della piconet). BT agisce mediante FH in modo che, se ho diverse piconet nella stessa area, possono coesistere dal punto di vista dell interferenza. In altri casi, però, voglio avere piconet indipendenti che vengono connesse, per scambiare informazioni tra nodi di piconet differenti. Ciò è possibile, mediante il concetto di scatternet. Anche nella più semplice piconet, non è possibile mandare messaggi tra 2 slave neanche passando per il master di conseguenza la connessione tra piconet apparentemente non serve a nulla. Si assume però che la scatternet utilizzi un meccanismo esterno di routing (esterno = upper layer) ovvero, al di sopra del layer 2, c è un layer 3 che fornisce routing ad-hoc. A livello 2, se vado nel master, non possiamo andare in un altro slave, se però saliamo a livello 3 possiamo poi scendere ed essere connesso. Il livello 3 non è standardizzato, quindi possiamo 226

227 CAPITOLO 12. WPAN aggiungerlo (BT si ferma a 1 2, con un layer aggiuntivo posso fare 1 3 1). Le scatternet sono utili anche per scopi più pratici ad esempio ho una piconet e voglio comunicare direttamente tra 2 slaves, invece che usare un protocollo di routing fino al master, posso creare un altra piconet, in cui il secondo slave diventa master della seconda piconet. In questo modo ho uno slave che è slave in entrambe le piconet, e l altro che è slave nella prima e master nella seconda di conseguenza ho una scatternet molto semplice. Come possono 2 dispositivi appartenere a 2 piconet? Non ci sono limiti che impediscono di creare diverse piconet. Come posso essere attivo in diverse piconet contemporaneamente? Rimango in uno stato sleep in una piconet, e active nell altra, e poi cambio condividendo il tempo tra diverse reti. L unica regola da rispettare è che un dispositivo può essere master in una sola piconet. Il motivo è legato al livello fisico: la sequenza di FH è legata al master, se fossi master in 2 piconet avrei 2 reti praticamente identiche (stanno sugli stessi canali). L access point di un WiFi può esserlo di più reti? Sì Versioni di BT BT v2.0 (2,1 dal 2007) : maggior rate trasmissivo (fino a 3 Mb/s), il sistema è più o meno lo stesso (ho messaggi di controllo che sono diversi,...), ma le differenze maggiori sono a livello fisico (ho un numero maggiore di livelli nello schema di modulazione); BT v3.0 : rate molto maggiore (24 Mb/s), si usa BT per creare i link ma si trasmette usando WiFi. Non si usa WiFi direttamente perchè BT crea link in modo semplice (in WiFi è molto più difficile: password,...), e si configura il link WiFi usando messaggi BT. Quindi uso una tecnologia (BT) per configurarne un altra (WiFi); 227

228 CAPITOLO 12. WPAN BT v4.0 (BLE, BT Low Energy) : non è esattamente la stessa tecnologia, ma i formati dei pacchetti non sono gli stessi, e i meccanismi di creazione della rete non sono gli stessi. Ad esempio è possibile scambiare messaggi anche senza creare il link (c è una procedura per inviare beacon, in broadcast). Dopo aver ricevuto un beacon, posso chiedere al dispostiivo di creare una connessione, cioè un link BT, a cui segue il classico scambio di messaggi (se non mi servono altre informazioni, non creo il link). E quindi un meccanismo simile a BT, ma basato sui beacon meccanismo ibrido (beacon come WiFi, ma BT). Il rate di trasmissione è 256 kb/s, quindi ho basso consumo energetico (formula di Shannon). Questa tecnologia è una possibile concorrente di ZigBee nell ambito delle tecnologie a bassa potenza; 12.4 ZigBee E un altra tecnologia del gruppo Il nome ufficiale è Low Rate - WPAN (LR- WPAN), il nome commerciale è ZigBee. A parte BT v4.0 (BLE), le altre tecnologie (BT, WiFi, WiMax,...) hanno un rate abbastanza alto, quindi il consumo energetico è alto: non abbiamo quindi una tecnologia con basso rate, basso consumo energetico, di conseguenza è stato creato ZigBee (IEEE ). C è uno standard per il livello fisico e il livello 2, ma ZigBee include altri livelli che sono standardizzati da ZigBee (livello 3 e livello applicativo). ZigBee ha un basso costo (pochi dollari), corto range (circa 10 mt, ma può essere esteso fino a 200). Può lavorare in altre zone dello spettro ( MHz), in cui posso trasmettere a 20 kb/s bassa frequenza e basso rate comportano un range ancora maggiore (chilometri, in teoria). Le possibili applicazioni sono in ambito domestico, medico, industriale. Non ci sono ad oggi molti sviluppatori per questa tecnologia. Ho una classica tecnologia di livello 2 standardizzata da IEEE (PHY&MAC layer). A livello fisico ho la banda a 2,4 GHz (250 kb/s, 16 canali), ma ho anche a 950 MHz (10 canali) e 868 MHz (1 canale) (20 kb/s). Al di sopra ho altri protocolli (a livello di rete e applicativo), standardizzati da ZigBee Alliance (che controlla anche la compatibilità a livello inferiore). Questa è la prima 228

229 CAPITOLO 12. WPAN tecnologia completa (livelli 1 e 2, network layer e interfaccia applicativa). ZigBee non è compatibile con IP, anche se puo essere utilizzato aggiungendo qualcosa, infatti viene usata una versione di IP chiamata 6LOWPAN. Non c è un protocollo di routing classico, ma è stato ottimizzato per queste reti adhoc. Le 2 alternative sono quindi ZigBee stack o 6LOWPAN stack. La distanza tra i canali è grande (5 MHz), quindi l energia viene espansa e viene ridotto il consumo energetico. ZigBee ha un rate minore rispetto a BT, ma servono 30 ms per il join alla rete (3 s in BT), c è un PAN coordinator che invia beacon frame (c è sempre almeno un dispositivo a cui connettersi) di conseguenza i dispositivi possono essere attivi tutto il tempo (e quindi saranno alimentati a corrente, mentre gli altri vanno a batteria) quindi ho tempi di transizione sleep-active molto veloci (non come BT). Tutto è più veloce, ma bisogna creare e mantenere un infrastruttura. In BT abbiamo master e slave (sono soltanto ruoli), qui abbiamo 2 tipi di dispositivi: Full Function Device (FFD) e Reduced Function Device (RFD). FFD possono essere coordinators o router della rete, RFD non lo possono essere, e possono comunicare solo con FFD. Quindi solitamente si usano FFD per controllare la rete, e RFD per il resto. Esistono diverse topologie possibili: STAR: PAN coordinator e gli altri collegati a questo, tipo piconet in BT; MESH: i dispositivi sono in una rete mesh e possono comunicare direttamente mediante un multi-hop path, con i vincoli di RFD e FFD, è la topologia più diffusa ma più difficile da gestire; CLUSTERED: è un albero formato da star, in cui il PAN coordinator, non potendo controllare i dispositivi più lontani, viene aiutato dali altri FFFD a gestire la rete (ritrasmettono i beacon frame); Il layer fisico è basato su CSMA (come WiFi), non c è interframe space, ma c è una procedura basata sulla sincronizzazione, che controlla lo stato del canale solo in istanti specifici di tempo, e decide di conseguenza quando iniziare a trasmettere. Inoltre non si usano RTS/CTS. A livello MAC ci sono 2 possibili modi operativi: 229

230 CAPITOLO 12. WPAN Non-beacon enabled: CSMA, con meccanismi per ridurre il tempo di ascolto, è l unico usato nelle topologie mesh, spendo più energia non essendoci coordinazione; Beacon-enabled: slotted CSMA, con un periodo di tempo in cui ho polling scheme con una trasmissione periodica di beacon frame (come WiFi). Nell intervallo di tempo tra 2 beacon, ho il canale usato per le trasmissioni. Ho un periodo di tempo in cui il network è attivo, e uno in cui è in sleeping. Quando è attivo, ho 2 regioni: CAP (Contention Access Period, in cui uso CSMA) e CFP (Contention Free Period, in cui uso uno schema di polling che utilizza Guaranteed Time Slot, riservandoli per determinare stazioni). La negoziazione avviene mediante pacchetti di controllo scambiati con la stazione. Ho un numero fisso di timeslot (16), e la trasmssione può cominciare solo all inizio di un timeslot di conseguenza ho un numero basso di trasmissioni durante il CFP che possono anche essere più corte di un timeslot. La durata totale va da ms a secondi in base alle esigenze. Dato che per un certo intervallo di tempo il dispositivo è sleeping, la capacità si riduce proporzionalmente in base all intervallo. La capacità è 250 kb/a, e riducendola ulteriormente significa che la tecnologia si usa solo per applicazioni che scambiano una piccola quantità di dati (non è un problema la capacità del sistema, come in WiFi). In ZigBee c è il network layer (non fa parte dello standard IEEE), usato per cercare una rete in grado di trasferire informazioni tra 2 nodi qualsiasi. Gli FFD possono essere routers a livello di rete, e quindi partecipano ai protocolli di routing, creando routing table. Come fa il sistema a gestire la rete? Bisogna creare la rete a livello di rete (sapere quali nodi ne fanno parte) e far girare i protocolli di routing. Possiamo combinare routing e formazione del network: il PAN coordinator deve annunciare la presenza della rete (beacon frame, inviati anche in una situazione non-beacon enabled). Una stazione che vuol far parte della rete invia una richiesta al PAN coordinator, gestita al livello 3. A questo punto, una stazione 230

231 CAPITOLO 12. WPAN che vuole far parte della rete può inviare la richiesta sia al PAN coordinator sia ad un altra stazione che ne fa già parte di conseguenza si crea una CLUSTERED-STAR topology basata sulle richieste di join (la rete si espande in base a come vengono gestite le richieste di join). Gli indirizzi a livello di rete sono diversi dagli indirizzi MAC (come in IP) e si creano spazi di indirizzi in modo da essere diviso in base alla topologia della rete (struttura gerarchica, che segue la topologia del network). Se conosco come è diviso lo spazio degli indirizzi, posso muovermi nella rete semplicemente analizzando gli indirizzi (non servono routing table). Al di sopra posso aggiungere un altro protocollo di routing (in realtà ho anche le mesh topology), uno dei più usati è AODV (protocollo ad-hoc). 231

232 CAPITOLO 12. WPAN 232

233 Capitolo 13 WMAN WiMax (Worldwide Interoperability for Microwave Access) nasce come alternativa al WiFi in ambiente urbano per i sistemi cellulari access-based. Sembrava un WiFi più potente, con un alternativa alla costosa e complessa tecnologia degli operatori mobili. In realtá questa tecnologia non è cosi diffusa (su PC, smartphone, tablet,...), non per un motivo tecnico perchè WiMax è una tecnologia ben disegnata, infatti la tecnologia LTE ha copiato lo standard WiMax, ma per motivi commerciali, gli operatori non hanno voluto utilizzarla. Ciò nonostante, si usa in alcune applicazioni in cui le reti mobili tradizionali non vanno bene per motivi legati all utilizzo, in quanto connettono end-users. Ad esempio in aree legate all energia, comunicazioni macchina-macchina e non end-users. L idea originale era molto ambiziosa, e legata al concetto di Broadband Wireless Access (BWA), in particolare per accessi fissi utilizzando il wireless non per connettere utenti mobili ma per connettere terminali con posizioni fisse (edifici, case,...), che non possono essere raggiunti dalla rete cablata a banda larga, quindi si usa wireless per mitigare il digital divide (dove non arriva il cavo, arriva wireless con WiMax). WiMax si usa anche in topologie di rete complesse quindi le base station non solo connettono utenti fissi, ma distribuiscono il segnale e la rete in grandi aree di conseguenza è come una mesh network, ma basate su una diversa tecnologia. WiMax era quindi nata come alternativa alle reti mobili, meglio dei sistemi 3G e semplice 233

234 CAPITOLO 13. WMAN Figura 13.1: Broadband Wireless Access (BWA) come WiFi. L idea era quella di avere un range molto più grande della decina di metri tipica del WiFi con il conseguente aumento della dimensione della base station e dimensione delle celle fino a qualche chilometro. La convinzione iniziale era quella di coprire una città intera con una o due base station, ma il problema è che non si può fare perchè ci sono porzioni di spettro riservate. E quelle riservate a WiMax (3,5 GHz), ottenute a pagamento, anche se hanno abbastanza potenza e non c è interferenza (c è una sola cella), avrebbe un rate di 100Mb/s che diviso per utenti è un rate troppo basso (10kb/s) di conseguenza dobbiamo avere un numero di base station tale che la capacità per area (o per utente) sia sufficiente a garantire un rate soddisfacente a tutti gli utenti. A tal fine si è pensato di creare celle più piccole e riutilizzare lo spettro, con potenza minore (il che vuol dire minor interferenza), in modo che in ogni piccola cella la capacità serva un area minore aumentando la capacità per utente. Ciò non è facile perchè si introduce interferenza, ma l interferenza non è il problema principale delle reti mobili, per avere capacità sufficiente per gli usi tipici delle reti 234

235 CAPITOLO 13. WMAN mobili dobbiamo per forza introdurre interferenza. WiMax è basato su IP, ed è stato disegnato solo per Internet access (è detta tecnologia native IP, non come le reti mobili, che hanno tanti servizi, tra cui Internet access), se voglio fare qualcosa di diverso, devo trovare il modo di metterlo su IP. Ad esempio, non è possibile avere su WiMax la classica telefonia basata su circuito, al massimo posso avere VoIP (Voice over IP) infatti è l unica opzione possibile con LTE. La tecnologia è stata standardizzata dall IEEE senza specificare la banda operativa infatti la stessa tecnologia può essere implementata in porzioni differenti dello spettro (da 2,4 GHz a 6 GHz) di conseguenza anche la parte HW deve supportare la possibilità di lavorare a frequenze differenti. Se trasmettiamo a frequenze alte (10 GHz), gli ostacoli sono opachi, quindi posso avere solo propagazione diretta, e la base station deve avere potenza sufficiente per garantire abbastanza segnale. A frequenze più basse (2-10 GHz) posso avere una propagazione multi-path, quindi posso avere segnale sufficiente anche con una propagazione NLOS (Non Line Of Sight). Figura 13.2: Label Il layer fisico è simile a quello del WiFi perchè è basato su OFDM (1 versione, fixed version) e OFDMA (2 versione, mobile version, ibrido tra livello fisico e MAC). La prima versione è detta IEEE , la seconda IEEE e. WiMax è il nome 235

236 CAPITOLO 13. WMAN commerciale perchè è gestito da un consorzio industriale, economico e semplice come WiFi, ma potente e in grado di fornire diversi servizi come le reti mobili Protocolli WiMax è una tecnologia più complessa del WiFi: alcune scelte nel design della tecnologia forniscono maggior controllo della rete. L approccio di WiFi è la semplicità e la gestione della rete in modo distribuito, in WiMax, per avere servizi che garantiscono una certa qualità, bisogna avere un maggior controllo, che diventa centralizzato (tutte le risorse della rete sono gestite dalla rete stessa, in particolare da questi AP intelligenti, che sono soprattutto base stations come nelle reti mobili). Figura 13.3: Protocol stack Il Physical layer: è già definito ed è basato dalla frequenza usata e dal numero di portanti; Il Privacy sub-layer: fornisce autenticazione e meccanismo di scambio delle chiavi; Il Common Part sublayer: fornisce le funzionalità base del livello MAC; 236

237 CAPITOLO 13. WMAN Il Service Specific Convergence sub-layer: funge da livello logico adattando il frame per i livelli più alti; Il layer fisico è indipendente dagli altri (possiamo modificarne alcune parametri senza introdurre grandi effetti sui layer superiori). La cifratura e gli aspetti di sicurezza sono direttamente in contatto con il layer fisico (in modo da essere più efficienti) di conseguenza abbiamo un alto livello di sicurezza (approccio simile alle reti mobili, l autenticazione è basata su chiavi asimmetriche, la cifratura su algoritmi che utilizzano chiavi di 128 bit). La parte MAC è un accesso multiplo gestito a livello centrale (punto centrale di scheduling). Tutte le trasmissioni nella rete sono regolate, non c è accesso random come in WiFi. Infine c è un Convergence layer, importante perchè il MAC layer non è orientato ai singoli pacchetti ma per servire flussi di pacchetti, che crea una connessione tra i layer in modo da creare questi flussi di pacchetti che sono gestiti come flussi singoli dal sistema di conseguenza la gestione dei singoli pacchetti nell interfaccia radio è basata sul concetto di circuito virtuale (e non datagramma, come in WiFi e nelle altre tecnologie viste) quindi si identificano i pacchetti di un circuito virtuale mediante un identificatore del circuito. In teoria, il meccanismo può lavorare a diverse frequenze, in pratica solo poche porzioni sono usate: sia in porzioni senza licenza (ISM band, 5 GHz, usate anche in WiFi), sia in una porzione riservata in alcuni stati a 3,5 GHz e ottenute a pagamento. Figura 13.4: Frequency 237

238 CAPITOLO 13. WMAN 13.2 PHY Questo è il primo sistema simile al mobile che usa un approccio a multiportante, usato in modo molto avanzato. Si usa un approccio basato su OFDM e OFDMA, tuttavia personalizzato per un sistema in cui il MAC è centralizzato, quindi le base station distribuiscono informazioni in broadcast e le subscriber station (secondarie) si connettono alle base station. Nella porzione di spettro in questione si trasmettono un numero di portanti, e alcune trasmettono segnali pilot con informazioni e meccanismi di sincronizzazione per acquisire la sincronizzazione con le base station. C è un numero di portanti trasmesse in parallelo (basate sul principio di OFDM e OFDMA), e al loro interno posso definire un insieme di sottocanali (alcune fanno parte di un sottocanale, altre di un altro sottocanale, ecc..), usando portanti consecutive o saltando in base a uno schema in questo modo la flessibilità è dovuta al fatto che l accesso a questa parte dello spettro è gestita completamente dalle base station. Se ho una propagazione multipath (NLOS), devo tenere conto della dispersione del tempo quindi uso il guard time per evitare collisioni. Il livello fisico fornisce al livello MAC un numero di possibilità di dividere le risorse tra i vari pacchetti da trasmettere sull interfaccia radio (in base alla versione di WiMax utilizzata). Ad esempio una versione dinamica di TDMA dove le trasmissioni sono regolate dalle base station (schema centralizzato), invece che avere una sequenza periodica di timeslot assegnate ai diversi sottocanali, c è uno scheduling, e la sequenza di trasmissione non è periodica, ma è gestita in tempo reale dalle base station, che prendono decisioni dinamiche sulla sequenza di trasmissione (in downlink e in uplink). La decisione delle base station viene notificata alle stazioni subscriber con una trasmissione broadcast (è un TDMA che cambia di periodo in periodo). Ciò vale per la prima versione IEEE (legacy), ma nella IEEE e (mobile), oltre che il tempo (timeslot) lo scheduling tiene conto della frequenza (numero di portanti). In OFDM si usa solo il tempo infatti in un timeslot posso assegnare tutte le portanti ad un utente (l intero spettro ad un utente, come in TDMA e WiFi), in OFDMA (IEEE e) in un timeslot posso assegnare le singole portanti a utenti 238

239 CAPITOLO 13. WMAN differenti (mappa 2D) di conseguenza opero realmente a divisione di tempo e di frequenza. OFDMA è il primo sistema ad usare un accesso multiplo dinamico a divisone di tempo e di frequenza Duplexing Per quanto riguarda il duplexing, possiamo usare sia la tecnica TDD (Time Division Duplexing) che la tecnica FDD (Frequency Division Duplexing). In FDD, uplink e downlink occupano differenti porzioni dello spettro, in TDD occupano le stesse porzioni. Ma in FDD possono esserci problemi con terminali half-duplex (o trasmettono o ricevono), quindi bisogna schedulare le trasmissioni in modo che i terminali halfduplex non siano forzati a trasmettere e ricevere allo stesso tempo. Inoltre in FDD ho uno spettro bilanciato (stessa quantità di risorse per uplink e downlink, cioè stessa capacità e stesso rate), in TDD i limiti sono adattivi (si adattano alle necessità) MAC sublayer Al di sopra del layer fisico, c è il MAC layer, che gestisce le trasmissioni (è basato sullo scheduling, quindi tutte le trasmissioni sono regolate), ed è connection-oriented, cioè gestiamo flussi di pacchetti secondo un circuito virtuale. Le MAC PDU vengono create e trasmesse, abbiamo MAC PDU per la trasmissione dati e MAC PDU per la gestione. Dai layer superiori riceviamo SDU (Service Data Unit), e creiamo MAC frame, per la trasmissione sull interfaccia di WiMax, che dipendono dallo specifico servizio richiesto dal layer superiore (connection-oriented). Come nelle altre tecnologie già viste, abbiamo un generico MAC PDU, cioè abbiamo diversi tipi di pacchetto, ma che alla fine sono generati a partire da uno stesso formato (in base all informazione che mettiamo nel MAC header abbiamo diversi tipi di pacchetto). 239

240 CAPITOLO 13. WMAN Figura 13.5: Packets Figura 13.6: MAC PDU Tuttavia, abbiamo un pacchetto completamente diverso per una funzione speciale, la richiesta di banda Bandwidth Request, è un pacchetto signaling tipico del MAC basato su scheduling. Abbiamo un dispositivo, la base station, che è come se raccogliesse tutto il traffico e poi prendesse decisionidi conseguenza possiamo dire alla base staion di prendere decisioni, e tutte le stazioni nel sistema operano di conseguenza. Tuttavia dobbiamo portare tutte le informazioni alla base station in particolare quelle riferite alle necessità di trasmissione delle subscriber stations è l obiettivo del bandwidth 240

241 CAPITOLO 13. WMAN request, piccoli pacchetti trasmessi dalle subscriber alla base station per informarla delle necessità di trasmissione (coda dei pacchetti, ecc..). Ciò è ovviamente presente in tutti i sistemi basati su scheduling centralizzato. Esistono poi frame di gestione MAC, usati per l accesso alla rete (join alla rete, simile a WiFi) e scheduling (diverso da WiFi, ora è centralizzato) MAC header Figura 13.7: MAC header L header MAC contiene: HT: Header Type (diversi tipi di pacchetto); EC: Encryption Control (usato nell apposito sublayer); TYPE: Payload Type (tipo di pacchetto che stiamo usando); CI: CRC indicator; EKS: Encrypted Key Sequence; LEN: Length; CID: Connection Identifier; HCS: Header Check Sequence; 241

242 CAPITOLO 13. WMAN Non ci sono SA e DA, perchè è connection-oriented, basato su circuito virtuale, o virtual circuit (VC), (ci sono etichette apposite, Circuit IDentifier, CID). Prima di ottenere un CID, devo settare un circuito grazie a una procedura di setup del VC per stabilire il VC ed assegnare il CID. Una volta ottenuto il CID, tutti i pacchetti del fliusso sono identificati dal CID. Non posso trasmettere senza aver settato il circuito diversamente da WiFi Bandwidth Request MAC header Figura 13.8: Bandwidth Request MAC header BR: Bandwidth Request, indica la quantità di risorse richieste, dipende dal servizio a cui è associato - quantità di byte, richiesta periodica, ecc..; CID: Connection Identifier, richiesta di risorse per una specifica connessione; EC: Encryption Control; HCS: Header Check Sequence; HT: Header Type; TYPE: Bandwidth Request Type; Ciò dimostra che WiMax è moltò più complesso di WiFi, tutto viene stabilito prima dell utilizzo. 242

243 CAPITOLO 13. WMAN Dato che il MAC layer è più complesso che in altre tecnologie, è stato diviso in moduli come ad esempio moduli per l accesso alla rete, meccanismi per accesso multiplo, scheduling, Quality of service (QoS), Power control, ecc.. Ognuno con i suoi specifici meccanismi e pacchetti. Un aspetto interessante è il mapping dei connection identifier con le classi di qualità gestite da WiMax. Perchè identificare i flussi invece che i singoli pacchetti? Per garantire diversi trattamenti ai diversi flussi. Ciò avviene in seguito al concetto di service flow dove mappo diversi connections identifier in service flows, che vengono poi assegnati a specifiche classi di QoS (i servizi possono riferiti a voce, video, traffico elastico, Web Browsing, ecc..). IP è detto traffico elastico in teoria a causa del controllo di congestione, ma in pratica è a causa del protocollo TCP perchè fa controllo di flusso e congestione della rete trasmettendo a volte più velocemente a volte più lentamente Network topologies Abbiamo 2 tipi di topologie, tra loro compatibili, e possiamo metterle entrambe nelle stessa rete. Tipicamente l accesso è basato sul mobile, quindi OFDMA, mentre i link fissi sono basati su OFDM: Point-to-MultiPoint (PMP): classica topologia a stella, con base station e subscriber station; MultiPoint-to-MultiPoint (Mesh): topologià più complessa, ad oggi non viene usata (poco); Figura 13.9: Point-to-MultiPoint (PMP) 243

244 CAPITOLO 13. WMAN Figura 13.10: MultiPoint-to-MultiPoint (Mesh) Figura 13.11: Typical network 13.8 IEEE OFDM I bit prima di essere trasmessi attraversano una catena che comprende diversi step: Figura 13.12: Trasmettitore Tipicamente si usa channel coding, con randomizer, Forward Error Correction (FEC) ed interleaving, usato per mischiare i bit e diminuire l effetto di errori concentrati nel canale. Su ogni portante si usa una modulazione, da BPSK a 64QAM, se il canale è buono, possiamo avere un rate maggiore (e uno schema di modulazione migliore), altrimenti ne uso uno più semplice. E un insieme di schema di coding e 244

245 CAPITOLO 13. WMAN modulazione, ance se l insieme è predefinito, l uso è dinamico. Le trasmissioni sono regolate dalle base station attraverso timeslot, o transmission bursts dove le unità basic di informazione usate dal MAC layer per regolare le trasmissioni (burst è il nome usato per identificare una trasmissione a livello fisico, in questo caso le trasmissioni di bursts sono gestite dal MAC layer e poi trasferire al physical layer). Figura Nel caso di FDD (Figura 1.13) la trasmissione inizia a partire dalla base station (quindi in downlink) quindi la subscriber station può acquisire la sincronizzazione grazie ad un preambolo, una sequenza nota usata per acquisire la sincronizzazione a livello fisico. Poi c è il Frame Control Header dove frame non fa riferimento al frame di livello 2, ma è il periodo di trasmissione (che include una parte di downlink e una di uplink), avendo un frame con il FCH decidiamo come impiegarlo in downlink e uplink. Dopo abbiamo una sequenza di burst, indirizzati a stazioni differenti. In downlink abbiamo multiplexing, non multiple access quindi non abbiamo bisogno di guard times, non ci sono vincoli tra i bit del burst 1 e i bit del burst 2. Questa porzione del frame FDD è detta porzione TDM del frame perchè non c è spazio tra i burst, e vengono trasmessi uno alla volta come una lunga sequenza di bit dal preambolo all ultimo burst. Dopo questa porzione, se necessario, la base station può trasmettere altri burst (siamo quindi ancora in downlink), ma ora siamo in TDMA, quindi i burst sono separati 245

246 CAPITOLO 13. WMAN Figura Figura (sono trasmissioni indipendenti). In TDM, ho solo una sequenza di pacchetti, inviati uno dopo l altro (se serve, metto del padding) e per capire a quale subscriber è indirizzato ogni burst, devo leggere le informazioni scritte nel primo burst, che include uplink map e downlink map. In TDMA i pacchetti sono indipendenti, e hanno il proprio preambolo di sincronizzazione quindi se voglio ricevere uno di questi burst, bisogna sincronizzare il proprio ricevitore. Non abbiamo nulla di simile in WiFi (lì abbiamo solo trasmissioni indipendenti). L uplink map è usata per schedulare le trasmissioni in uplink (indica quale stazione può trasmettere in ogni burst). Nel caso di TDD, non abbiamo la parte TDMA: Nell uplink abbiamo una trasmissione dopo l altra, in base all uplink map. I burst sono ovviamente indipendenti (arrivano da stazioni differenti), quindi ognuna ha il 246

247 CAPITOLO 13. WMAN suo preambolo. Oltre a ciò, all inizio del periodo di uplink, ho 2 burst speciali: Initial Ranging (RNG): usato per la compensazione del ritardo mediante una stima del ritardo di propagazione per ridurre il guard time e consiste in piccoli pacchetti inviati ogni tanto; Bandwidth Request (BW-REQ): con cui la subscriber trasmette richieste di banda; Ciò spiega come fa la base station a prendere decisioni per l uplink map infatti esiste un algoritmo basato sulle richieste che arrivano dalle subscriber stations. Abbiamo quindi piccoli pacchetti usati per trasmettere in uplink. Come possiamo trasmettere questi pacchetti? Possiamo avere diverse subscriber station, e dobbiamo ricevere tutti questi pacchetti di richiesta dinamicamente per continuare a schedulare le trasmissioni. Queste trasmissioni sono l unica parte del frame dove posso avere random access perchè in generale non posso assegnare uno slot per ogni subscriber, quindi la trasmissione dei pacchetti avviene con un meccanismo di accesso casuale come ALOHA. Abbiamo quindi un meccanismo centralizzato per lo scheduling gestito dalle BS, e le SS (subscriber stations) possono trasmettere solo quando è permesso dalle BS. Abbiamo un meccanismo basato su frame, e all inizio di ogni frame abbiamo informazioni di controllo inviate da BS alle SS con cui informa dello scheduling (DL-map e UL-map). Per ogni transmission grant nella map abbiamo un burst nel frame. Ogni frame può cambiare lo scheduling. Nell uplink, poiché conosciamo tutte le stazioni, semplicemente potremmo seguire la sequenza, ma abbiamo altre necessità infatti lo scheduling funziona solo se si sa quali SS hanno qualcosa da trasmettere, ed è importante conoscere la quantità di risorse che necessità ogni stazione. Ciò avviene grazie al campo Bandwidth Request, diviso in minislot, usati per trasmettere pacchetti per richiedere opportunità di trasmissione (se una SS in uplink ha pacchetti da trasmettere, usa una Bandwidth Request in quella parte del frame per richiedere risorse alla BS). In base alle richieste ricevute, la BS organizza le risorse, e riempie la uplink map. E come le reti cablate, dove però abbiamo lì tutte le componenti (coda fisica 247

248 CAPITOLO 13. WMAN dei pacchetti, ecc..), qua invece bisogna portare le informazioni alla BS affinché possa prendere decisioni. In teoria potrei portare abbastanza informazioni alla BS per avere una situazione più chiara della rete (quanti pacchetti ho, ecc..), tuttavia ciò è troppo, e avviene in modo semplificato grazie alla Bandwidth negotiation, che dipende dal servizio attivato dalle SS. Come detto, il meccanismo è orientato alla connessione con un flusso di pacchetti, si chiedono risorse per una sola volta o in modo periodico (dipende dal tipo di servizio). Le diverse classi negoziano la banda in modo differente. Abbiamo puntatori nelle mappe UL e DL che indicano dove verranno trasmessi i pacchetti (come una lista di puntatori). La differenza con le altre tecnologie è che qui abbiamo la definizione esplicita di classe di traffico, e in base a questa abbiamo un meccanismo per fornire risorse. La principale differenza tra le classi è che, nella gestione delle risorse, le risorse vengono allocate in modo differente come ad esempio la banda garantita (assegnamento periodico di risorse a ritmo costante, ad esempio VoIP), polling (videostreaming, transizioni tra diversi rate trasmissivi, la quantità di risorse varia nel tempo in alcuni specifici punti di transizione, non serve una banda costante ma serve la possibilità di rinegoziare risorse) contesa (Web Browsing, dipende dall interazione con gli utenti, si negozia la banda in tempo reale dato che non si può sapere a priori). Bisogna quindi considerare queste caratteristiche quando si prendono decisioni su come organizzare le risorse in sequenza al fine di garantire QoS mediante banda e ritardo. Ciò avviene in modo solo parzialmente standard, solo il modo in cui chiedo risorse e notifico le decisioni, non i processi di decisione che sono interni e decisi dal costruttore. Perciò bisogna definire i flussi di servizio. Nei sistemi con circuito virtuale, assegniamo un etichetta e settiamo il circuito, che è quindi un flusso di pacchetti gestito dallo scheduler. Nello scheduler (che è un algoritmo) abbiamo una lista di flussi di servizio attivi nel sistema, per ognuno abbiamo una serie di richieste pendenti di banda, in base alle quali l algoritmo prende decisioni. Il flusso ha un profilo QoS associato grazie ad un identificier mappato nell identificatore della connessione (l unico incluso nei pacchetti MAC di WiMax). Abbiamo solo una lista di flussi attivi (non destination address o source address). I 248

249 CAPITOLO 13. WMAN flussi possono essere attivati real-time (con un apposita procedura, come le chiamate telefoniche) o essere permanenti (connessione Internet, attivata manualmente senza messaggi di signaling). In generale abbiamo 4 classi che possiamo anche a estendere: Unsolicited Grant Service (UGS): fornisce opportunità di trasmissione senza richieste (chiedo solo una volta, e ho un assegnamento periodico); Real-time polling service (rtps): ho un assegnamento periodico, con un meccanismo per trasmettere richieste di modifica della banda fornite direttamente dalla BS (so esattamente quando è possibile inviare queste richieste), si usa per servizi come video; Non-real-time polling service (nrtps): posso ancora inviare queste richieste, che però sono per modifiche non real-time; Best effort (BE): assegnamento ogni volta che devo trasmettere, se non chiedo non ho opportunità; Come implemento ciò? Tutto avviene nel Bandwidth Request, ma il meccanismo per trasmettere le richieste viene adattato alle classi di traffico. Abbiamo un meccanismo di backup nel caso in cui non riesco a trasmettere le richieste. Se sto già trasmettendo data packet, posso usare un meccanismo di piggybagging invece dei pacchetti di Bandwidth Request (chiaramente c è l opzione classica di pacchetti Bandwidth Request). Ma per la trasmissioni di tali richieste non ho abbastanza minislot per tutte le stazioni di conseguenza si usa un meccanismo basato sulla contesa, anche se tutto è schedulato, infatti in questa porzione posso avere un meccanismo di accesso casuale, basato su questi intervalli discreti di tempo, simile a slotted ALOHA. C è quindi una contesa per trasmettere le richieste di banda. Non tutti i minislot sono usati in questo contesto perchè alcuni sono riservati per alcune stazioni (polling part), così come avviene con PCF e DCF in WiFi. Il meccanismo utilizzato è ALOHA con un tempo di backoff in caso di collisione. In 249

250 CAPITOLO 13. WMAN Figura questo caso sarebbe molto utile avere un feedback in modo da garantire QoS. Per fare ciò il canale grant (quello nel downlink, all inizio del frame, che include DL e UP map) ha informazioni per conoscere i pacchetti ricevuti in uplink (c è packet retrasmission, e nel frame successivo la stazione sa se il pacchetto è stato correttamente ricevuto). La parte di contesa è gestita come un classico sistema ALOHA dove abbiamo una sequenza di timeslot e quando finiscono continuo nel successivo frame, è come avere una sequenza continua di slot, anche se in realtà sono divisi in frame. Se la trasmissione non ha successo (collisione), ho un backoff, e trasmetto dopo un periodo di tempo. Abbiamo minislot in un frame, poi minislot in un altro e così via, senza considerare il tempo tra i frame. L altro meccanismo è basato su polling e dipende da come sono gestite le diverse classi di traffico. Possiamo avere un meccanismo per ogni stazione, uno per gruppi di stazione. Al momento abbiamo un totale di 14 MHz intorno alla frequenza di 3.5 GHz assegnati a WiMax, e abbiamo versioni che operano in altre frequenze e le applicazioni specifiche sono dette profili MultiPoint-to-MultiPoint (Mesh) Mesh significa che non ho soltanto trasmissioni tra SS e BS in una topologia a stella, ma SS possono trasmettere pacchetti ad altre BS estendendo il range delle BS in 250

251 CAPITOLO 13. WMAN un area più grande, quindi creo una rete più grande attraverso un meccanismo hopby-hop attraverso SS. Infatti WiMax è usato anche per accesso wireless per posizioni fisse (in aree rurali), che possono essere una sorta di BS che possono trasmettere pacchetti da/verso BS anche se in realtà è usata poco come in Figura Esistono sono 2 topologie: centralizzata e distribuita Centralizzata Non è come in WiFi, abbiamo uno scheduler centralizzato, la difficoltà rispetto a WiFi è che abbiamo anche trasmissioni direttamente tra SS. L idea è che abbiamo comunque scheduling, con periodi che possono essere usati per diversi tipi di trasmissioni. Ci sono frame dedicati al controllo della rete, e frame dedicati alla trasmissione dei pacchetti. Il meccanismo è una semplice estensione di quanto visto, dove abbiamo richieste in arrivo dalle SS alle BS, e grant che vanno dalle BS alle SS (ciò è quanto avviene nelle star topology). Qui abbiamo una topologia ad albero, abbiamo ancora request e grant, solo che invece che usare un unica trasmissione con cui raggiungiamo BS e SS, qua potremmo avere bisogno di trasmissioni multiple (multi hop). Ciò è solo per il signaling dove le richieste vengono ricevute, aggregate (se possibile) e inviate alla BS. L altra differenza è che quando richiedo qualcosa, le risorse vengono riservate in tutti i link necessari (non posso usare un burst contemporaneamente in 2 punti diversi della rete), ho quindi uno scheduling globale, tutte le trasmissioni sono ortogonali (in timeslot differenti) e organizzate nell intera rete, per cui 2 trasmissioni non sono mai simultanee. 251

252 CAPITOLO 13. WMAN Figura 13.17: Topologia centralizzata Distributed Le cose sono più complicate, non c è un punto di decisione che fa rispettare lo scheduling dovunque, abbiamo comunque BS, e il meccanismo di scheduling è distribuito (non centralizzato) quindi alla prima stazione che chiede viene assegnato il timeslot, le altre stazioni ricevono la notizia, il timeslot viene preso e rilasciato alla fine della trasmissione. Se ogni nodo prende decisioni su quale timeslot usare, le stazioni devono conoscere la disponibilità di ogni slot e dato che la disponibilità dipende dalla vista locale di ogni SS, ogni SS trasmette la lista delle disponibilità, in cui indica quali slot sono liberi e quali occupati dal suo punto di vista locale. Se deve essere assegnato un ulteriore slot, la richiesta deve arrivare da una specifica stazione, ad esempio il grant può arrivare dalla SS che riceve la request. Una volta che viene assegnato il timeslot, viene modificata la lista della disponibilità e inviata alle altre stazioni, che ora sanno che quel timeslot è occupato. Questo approccio in WiMax si usa poco ed è l unico esempio di scheduling distribuito. 252

253 CAPITOLO 13. WMAN Figura 13.18: Topologia distribuita IEEE e OFDMA Quanto detto per l OFDM vale anche per OFDMA, cambia il modo in cui viene gestito lo scheduling, non solo nel tempo, ma anche nella frequenza. Prima consideravamo solo il tempo, cioè consideravamo solo quando inviare pacchetti e assegnavamo timeslot (periodi di burst) per la trasmissione, ora abbiamo un numero di portanti (nel dominio delle frequenze) e un numero di simboli (nel dominio del tempo). Se seguo lo stesso approccio, non considero le frequenze (uso tutte le frequenze per uno stesso utente e gli assegno tutte le risorse), qua posso assegnare ad un utente solo una parte di risorse. I canali si riferiscono ad un gruppo di portanti (ne abbiamo 124, sono organizzate in canali), lo slot è l unità minima che posso assegnare ad un utente specifico, e posso organizzare in data region (area assegnata ad un utente per la trasmissione). Come sono creati e usati i canali? I canali sono creati con il concetto di permutation zone. In OFDM, abbiamo oltre 100 portanti usate per formare gruppi detti canali, unendo portanti consecutive oppure non adiacenti. Se sono adiacenti, possiamo immaginare che abbiano caratteristiche simili, se non lo sono hanno caratteristiche di propagazione differenti. Se considero la funzione di trasferimento di un canale tra una BS e una SS, a causa dell effetto multipath abbiamo una funzione non costante (alcune portanti sono più attenuate di altri, se uso un unica modulazione dobbiamo equalizzare a causa della distorsione), 253

254 CAPITOLO 13. WMAN in OFDMA non equalizziamo perché usiamo portanti singole, che però hanno caratteristiche differenti a causa della propagazione a frequenze differenti. Se prendiamo le portanti in zone differenti, è come fare un mix tra differenti caratteristiche di propagazione e prendere la media. Se scegliamo frequenze consecutive, probabilmente abbiamo portanti con caratteristiche simili e in termini di propagazione sono o tutte buone o tutte non buone. Perché possiamo sfruttare questo approccio? Se usiamo portanti consecutive, e sappiamo per ogni utente (SS) quali gruppi di portanti sono buoni e quali no, possiamo assegnare all utente solo i canali che sono buoni per lui di conseguenza in teoria potrei assegnare agli utenti solo i canali buoni (in OFDM non posso farlo). Se conosco il modo di misurare le caratteristiche del canale in ogni portante, posso scegliere in modo intelligente lo scheduling. Posso sfruttare la diversità dell utente (perchè un canale è diverso da un altro e hanno caratteristiche diverse in base a tempo e frequenza, quindi attendo che il canale diventi buono per ogni singolo utente) e la diversità delle frequenze. Ciò ha un prezzo perchè la misura delle caratteristiche dei canali è costosa, quindi posso usarlo solo se il canale è abbastanza stabile. L allocazione dei frame diventa una matrice in OFDMA (tempo e frequenza), e creo gli assegnamenti riempiendo una matrice (gli algoritmi sono ovviamente più complicati rispetto a OFDM). Figura Il preambolo è usato per trasmettere informazioni di controllo e i pilot signals. Abbiamo sequenze di burst, non solo in tempo, ma anche in frequenza. Possiamo avere regioni con assegnamenti differenti, e possiamo assegnare anche solo un sottoinsieme di 254

255 CAPITOLO 13. WMAN portanti alle BS (ciò può anche essere usato per un meccanismo statico di assegnazione di frequenze): Figura Quindi OFDMA è più flessibile (così come vedremo in LTE...). 255

256 CAPITOLO 13. WMAN 256

257 Capitolo 14 Multiple access Qui parliamo di packet access, non consideriamo direttamente le componenti del multiple access a livello fisico (divisione delle risorse tra i canali come in WiFi). L accesso multiplo nasce negli anni 70 con le reti cablate, oggi però sono usate solo nelle reti wireless. Gli schemi di accesso multiplo sono divisi in: Accesso schedulato: le trasmissioni sono ordinate in modo da non potersi sovrapporre. Non abbiamo trasmissioni simultanee nel canale, non c è conflitto o collisioni. Due esempi sono gli schemi polling e quelli scheduling; Accesso casuale: le trasmissioni possono sovrapporsi, non sono coordinate, possono esserci collisioni, quando abbiamo una collisione cerchiamo di evitare che si ripeta con meccanismi basati sulla ritrasmissione dopo un tempo casuale; La differenza tra accesso multiplo e scheduling è che in scheduling abbiamo solo un trasmettitore e un ricevitore, per cui il trasmettitore conosce perfettamente lo stato dei pacchetti e decide lo schema di trasmissione, nell accesso multiplo abbiamo diverse stazioni che prendono decisioni, perché l informazione è in diversi luoghi fisici (stazioni) che condividono lo stesso mezzo fisico. In teoria, possiamo portare tutta l informazione in un solo punto, e creare un unica coda virtuale (con le informazioni sui pacchetti), per poi usare un algoritmo per 257

258 CAPITOLO 14. MULTIPLE ACCESS prendere decisioni che vengono inoltrate alle stazioni. Ciò ha ovviamente un costo, legato al portare informazioni al punto centrale e notificare le decisioni. Per ora non consideriamo il caso di avere un unico punto di decisione, e consideriamo solo i contesti distribuiti. Considero uno scenario semplificato con M stazioni identiche (stesso traffico): il traffico globale che arriva al sistema per unità di tempo è λ, e ogni stazione riceve una frazione λ di traffico. Lo stato di sistema è descritto dal vettore n = (n M 1, n 2,..., n M ), dove n i è l numero di pacchetti nella coda i. Il processo analizzato è l evoluzione nel tempo del vettore n Accesso schedulato Il meccanismo di polling è molto semplice: abbiamo le code delle diverse stazioni, e per ipotesi possono trasmettere a turno (quando sono elette). Se una stazione ha un pacchetto da trasmettere lo fa, poi tocca alle altre. E simile a TDMA, ma quando mi muovo in una stazione che non ha nulla da trasmettere, passo a quella dopo, di conseguenza è come un TDMA dinamico e peridico. Il problema è che per implementare questo schema distribuito, c è bisogno di informazioni di coordinazione (come pacchetti di signaling), per muovere questo grant (permesso di trasmettere, ovvero un piccolo pacchetto, detto token, trasmesso nel canale) da una stazione all altra. Posso avere un unica stazione che muove il token, o avere un sistema distribuito, in cui ogni stazione lo invia direttamente all altra. L unica differenza tra gli schemi è il modo in cui sono gestite le trasmissioni una volta ricevuto il token. Possiamo avere tre casi: la stazione trasmette tutti i pacchetti in coda (exhaustive polling); la stazione trasmette tutti i pacchetti in coda al momento dell arrivo del token (gated polling); la stazione trasmette al massimo k pacchetti (se k = 1, si parla di round robin) (limited polling); 258

259 CAPITOLO 14. MULTIPLE ACCESS Exhaustive polling Partiamo con delle assunzioni (per studiare meglio il modello), ovvero la durata dei pacchetti è costante, la dimensione è fissa e il rate di trasmissione è uguale (λ). Qui non teniamo conto di come il token viene passato alle stazioni ma studiamo solo cosa succede dopo averlo ricevuto. In questo caso la stazione, quando riceve il token, trasmette tutti i pacchetti che ha in coda e infine rilascia il token per permettere alle altre stazioni di trasmettere. La probabilità che il canale è occupato (e che quindi una stazione stia trasmettendo) è semplicemente uguale a ρ = λt. Alla fine il sistema è basato su un processo degli arrivi e di servizio, non di una sola coda ma di molteplici code che rappresentano le stazioni che devono trasmettere, con un rate che può essere quello di Poisson. Quindi per la valutazione delle performance dobbiamo calcolare quanto devono aspettare i pacchetti in coda il che significa calcolare il tempo medio di attesa nelle code. Per esempio: Figura 14.1 Abbiamo un pacchetto in arrivo nella coda numero 8, ma prima di essere trasmesso dobbiamo aspettare che il token arrivi alla coda numero 8 perchè in questo momento si trova nella coda numero 3. Solo dopo aver trasmesso un pacchetto della coda numero 4, 3 della coda numero 6 e 1 della coda numero 7, la coda numero 8 può trasmettere. Ma non può trasmettere il pacchetto che era arrivato perchè ne ha un altro in coda, quindi solo dopo aver trasmesso quel pacchetto può finalmente trasmettere quello che 259

260 CAPITOLO 14. MULTIPLE ACCESS aveva ricevuto. Il tempo totale che trascorre prima di trasmettere il pacchetto arrivato nella coda 8 è composto da tre componenti: il primo componente dovuto al tempo necessario alla trasmissione dei pacchetti delle varie code, il secondo componente è il tempo necessario per trasmettere quella parte di pacchetto che deve essere ancora trasmesso, nel momento in cui arriva il pacchetto da trasmettere nella coda 8, e infine il tempo dovuto allo spostamento del token tra le varie code. Quindi alla fine il tempo medio di attesa è la somma del tempo medio di attesa del primo componente, del secondo e infine del terzo: E[W ] = E[W 1 ] + E[W 2 ] + E[W 3 ] ma per semplicità indichiamo il risultato in questo modo: E[W ] = W 1 + W 2 + W 3 In generale possiamo usare il risultato di little per calcolare il tempo medio di attesa delle varie componenti del tempo di attesa generale. Anche se non è del tutto corretto perchè per il risultato di little noi sappiamo come calcolare il tempo medio d attesa perchè sappiamo il rate di arrivo ma soprattutto il tempo necessario a soddisfare la singola richiesta: Figura 14.2 quindi il tempo medio di attesa in coda è uguale al numero medio di utenti nel sistema per il tempo necessario a processare il singolo utente. E[W ] = E[N c ]T In questo caso non sappiamo la quantità di tempo necessaria per processare le richieste perchè non sappiamo quanti pacchetti devono inviare le stazioni. Perchè in generale il risultato di little è valido se possiamo bilanciare la quantità di tempo necessario per svolgere il lavoro in ingresso e la quantità di tempo necessaria per svolgere il lavoro in uscita. 260

261 CAPITOLO 14. MULTIPLE ACCESS In questo tipo di risultato la definizione del tempo T è arbitraria, quindi lo prendiamo uguale a E[W ] che è il tempo necessario a completare il lavoro (ovvero il tempo necessario a mandare i pacchetti provenienti dalle varie code). Al fine di bilanciare il sistema consideriamo E[W ] questo perchè alla fine il sistema deve essere in equilibrio quindi se stiamo aspettando per un tempo E[W ] sicuramente la quantità di lavoro in ingresso sarà sicuramente uguale a quella di uscita altrimenti il sistema non è bilanciato. Quindi usiamo il risultato di little per calcolare il numero medio di utenti nel sistema, che è uguale a: E[N c ] = λe[w ] Qui λe[w ] è il numero medio dei pacchetti trasmessi prima del pacchetto considerato quando arriva il token (come nell esempio precedente). Non possiamo accumulare pacchetti nel sistema quindi il numero di pacchetti in ingresso deve essere uguale al numero di pacchetti in uscita. Quindi possiamo definire: W 1 = λt E[W ] = ρe[w ] Il calcolo degli altri componenti è più semplice. W 2 è il tempo necessario a completare la trasmissione dell eventuale pacchetto nel canale, perchè è possibile che ci sia un pacchetto in trasmissione oppure che ci sia un token che sta andando verso un altra stazione, quindi abbiamo due possibilità: con probabilità ρ c è un pacchetto che è in trasmissione e quindi dobbiamo attendere il tempo di trasmissione di un pacchetto che in media è T/2, con probabilità 1 ρ c è un token che sta transitando e quindi dobbiamo attendere il tempo di trasmissione di un token che in media è h/2: W 2 = ρ T + (1 ρ) h 2 2 W 3 è il tempo medio di attesa del token che transita tra le varie code. Dato un pacchetto casuale in arrivo alle code, nel migliore dei casi non deve aspettare il token, nel peggiore dei casi il pacchetto arriva proprio quando il token è già stato rilasciato. In media, se M è il numero di stazioni, W 3 è uguale a: W 3 = M 1 2 h questo perchè W 3 è una variabile casuale con distribuzione di probabilità omogenea. 261

262 CAPITOLO 14. MULTIPLE ACCESS Alla fine abbiamo la somma: E[W ] = ρe[w ] + ρ T 2 + (1 ρ) h 2 + M 1 2 h Risolvendo l equazione otteniamo: E[W ] = ρ 2(1 ρ) T + M ρ 2(1 ρ) h possiamo notare che abbiamo due componenti, una dipendente dal tempo di trasmissione di un pacchetto l altra dipendente dal tempo di trasmissione di un token. Se h=0 abbiamo solo la prima componente, che è il tempo di attesa di una coda M/D/1 perchè utilizziamo T che è costante, altrimenti nel caso reale sarebbe M/G/1. Questo è un caso strano ed importante perchè anche se abbiamo un sistema con molte code c è un caso in cui possiamo approssimare il sistema ad una coda soltanto. Ma cosa vuol dire avere h=0? Significherebbe che la distanza tra le stazioni è zero, quindi il token passa da una stazione all altra senza ritardi non trascurabili, quindi fisicamente sono la stessa stazione. Questo risultato ci permettere di studiare il sistema come una coda con del ritardo addizionale che dipende da h. Un altro risultato importante è che il massimo traffico che possiamo avere è per ρ = 1 portando ovviamente il tempo di attesa in coda ad infinito. Ma finchè il valore di ρ è minore di 1 allora abbiamo un tempo di attesa finito, inoltre non è possibile usare il canale al 100% perchè dobbiamo permettere la trasmissione del token. Come è possibile avere il 100% del tempo disponibile solo per la trasmissione di pacchetti dati? Quando λ è cosi alto da portare ρ a 1, praticamente i pacchetti stanno in ogni coda per un lungo periodo di tempo, perchè stiamo accumulando molti pacchetti nel sistema. Alla fine quando ρ = 1 i pacchetti stanno per sempre dentro la coda, quindi stiamo utilizzando il canale solo per la trasmissione di pacchetti dati non pagando nessun overhead dovuto ad h. Questo non è affatto un buon comportamento del sistema perchè vuol dire che se una coda ha una grossa quantità di pacchetti da trasmettere questa cattura il canale predominando sugli altri, non rilasciando mai il token. Ed è proprio questo l inconveniente del meccanismo exhaustive polling, e vedremo anche nell accesso random una situazione di questo tipo. Una situazione equivalente si ha 262

263 CAPITOLO 14. MULTIPLE ACCESS quando il token viene perso a causa di errori sul canale, infatti porterebbe comunque il sistema ad una condizione di infinito traffico anche se non c è nessun pacchetto che sta transitando. Il sistema così non è per niente sicuro e resistente agli errori dovuti alla condizione del canale. Un altro parametro importante è la durata media di un ciclo del token, che è dato dal tempo totale di trasmissione dei pacchetti durante un ciclo più il tempo di passaggio di un token: Figura 14.3 Questo risultato è generale, non abbiamo fatto nessuna considerazione riguardo la politica di servizio o sulla priorità. Qual è la probabilità che un pacchetto arrivi quando il token è in stazione? La probabilità è ρ, la probabilità che il token è in una stazione è ρ mentre la probabilità che sia in transizione è 1 ρ. Invece la probabilità che il token è in una particolare stazione è ρ, M Gated polling Il meccanismo gated polling permette alle stazioni di inviare tutti i pacchetti che hanno in coda quando arriva il token. L espressione del tempo di attesa in coda è simile al caso precedente ma con l aggiunta di un termine dovuto al tempo che intercorre quando il token è già in stazione e il pacchetto deve ancora arrivare. Ed è uguale al tempo necessario a trasmettere un token per la probabilità che il token sia in stazione: W 4 = hρ Quindi in totale E[W ] = 263 ρ T + M+ρ h 2(1 ρ) 2(1 ρ)

264 CAPITOLO 14. MULTIPLE ACCESS Ma anche in questo caso non stiamo risolvendo il problema perchè stiamo aggiungendo overhead Limited polling Limited polling può essere davvero difficile da analizzare, perchè con questo meccanismo la stazione trasmette al massimo k pacchetti e se k è maggiore di 1 dobbiamo sapere la distribuzione del numero di pacchetti all interno di ogni coda e non possiamo semplicemente prendere il numero medio di pacchetti all interno. Qui consideriamo solo il caso di k=1, quindi se il pacchetto c è o non c è, questo caso è riconducibile al caso del round robin. Se non c è nessun pacchetto in coda il token è rilasciato, se c è almeno un pacchetto questo viene trasmesso, sicuramente se il pacchetto arriva quando il token è già in stazione, il pacchetto deve aspettare un ciclo, considerando il pacchetto che in quel momento sta per essere trasmesso, e se ci sono diversi pacchetti in coda deve aspettare tanti cicli quanti sono i pacchetti in coda. Il tempo di attesa in coda è uguale al caso precedente, con la sola aggiunta di un termine che considera i cicli che il pacchetto deve aspettare quando arriva e trova già un pacchetto che sta per essere servito. Il termine è uguale a: Figura 14.4 Quindi grazie all uso del risultato di little: Figura

265 CAPITOLO 14. MULTIPLE ACCESS Figura 14.6 In questo caso il valore massimo di ρ è determinato dal tempo impiegato a trasmettere i pacchetti e i token. Anche se abbiamo migliorato la situazione abbiamo però aumentato il tempo medio di attesa in coda. Ci sono molti esempi reali dove il meccanismo di polling è usato. Ad esempio in WiFi con PCF (Point Coordination Function) e HCF (Hybrid Coordination Function), oppure in Bluetooth. La maggior differenza è che la sequenza delle stazioni può essere cambiata dinamicamente Polling in Bluetooth Il meccannismo di polling in bluetooth prevede un nodo master che comunica con tutti gli altri, e possono rispondere al master solo i nodi slave che hanno ricevuto l autorizzazione. I nodi slave possono comunicare con il master solo dopo aver ricevuto il pacchetto token. La differenza qui è che se la trasmissione di un pacchetto prende uno slot di tempo, anche per il pacchetto token è necessario uno slot. Figura 14.7 La domanda qui è: possiamo applicare i meccanismi di polling visti in precedenza? Dov è T e h? 265

266 CAPITOLO 14. MULTIPLE ACCESS La risposta è no, perchè Quindi le code non sono visitate in ordine sequenziale, i token prendono uno slot di tempo come per i pacchetti dati e il bluetooth usa pacchetti di lunghezza differente (1,3 o 5 slot). Noi deriviamo il tempo di attesa in due casi speciali. Assumiamo che il master abbia una coda separata per ognuno degli slave e che questi vengono visitati con una sequenza fissata. Gli arrivi nelle code sono degli arrivi di Poisson dove: m: numero di dispositivi BT; m-1: slave; : M=2(m-1): code; γ: rate di arrivo per ogni coda; λ: rate totale di arrivo; T: durata dello slot; Figura 14.8 Per il prima caso consideriamo: servizio limitato con k=1 (round robin) e pacchetti che occupano solo uno slot. Possiamo osservare che in questo caso questo sistema è equivalente a un sistema TDMA con 2(m-1) slot per frame perchè noi usiamo uno slot per stazione anche se non ci sono pacchetti da inviare (infatti in questo caso si invia un null packet). Quindi come calcoliamo il tempo di attesa in coda? Ci sono molte possibilità per fare questo, possiamo usare lo stesso approccio che abbiamo usato per il meccanismo di polling in precedenza. Ricordiamo le componenti che dobbiamo considerare quando dobbiamo calcolare il tempo medio di attesa: 266

267 CAPITOLO 14. MULTIPLE ACCESS W 1 : è il numero medio dei pacchetti trasmessi prima del pacchetto considerato quando arriva il token; W 2 : è il tempo necessario a completare la trasmissione dell eventuale pacchetto nel canale, perchè è possibile che ci sia un pacchetto in trasmissione oppure che ci sia un token che sta andando verso un altra stazione; W 3 : è il tempo medio di attesa del token che transita tra le varie code; W 4 : è il tempo che intercorre quando il token è già in stazione e il pacchetto deve ancora arrivare; W 5 : sono i cicli che il pacchetto deve aspettare quando arriva e trova già un pacchetto che sta per essere servito; Figura 14.9 Questo però non è il modo migliore per far accedere i terminali BT. Possiamo ottimizzare il meccanismo con il secondo caso: Assumiamo che i pacchetti hanno una dimensione che varia e che impieghino 1, 3 o 5 slots e servizio limitato con k=1. Il sistema è equivalente ad un polling system. Il passaggio del token è equivalente a 1 slot e possiamo avere diverse probabilità in base al tipo di pacchetto che transita sul canale. 267

268 CAPITOLO 14. MULTIPLE ACCESS Figura Quindi per studiare questo modello dobbiamo scrivere qualche notazione in modo da avere tutti gli strumenti per calcolare il tempo medio di attesa: Figura Figura

269 CAPITOLO 14. MULTIPLE ACCESS Applicare questo meccanismo su WiFi è molto difficile perchè è un insieme di tecniche ad accesso schedulato e random access, come nel caso di IEEE e. Figura Accesso random Con la modalità di accesso random al canale la prima differenza sostanziale che possiamo notare con l accesso schedulato è che qui possiamo avere dei conflitti tra le trasmissioni fra le stazioni, ovvero si possono verificare delle collisioni. Si verifica una collisione quando due o più terminali trasmettono dati sullo stesso canale e il ricevitore non è in grado di decodificare ciò che riceve. In realtà non è sempre detto che quando due o più stazioni trasmettono sullo stesso canale si genera collisione perchè se una stazione trasmette con valore dell SNR alto rispetto alle altre stazioni allora il ricevitore riesce a decodificare il contenuto del canale (questo effetto è chiamato capture effect of the channel). Per risolvere i conflitti, quindi per cui le collisioni, si usano tecniche di feedback del canale e tempi di attesa casuali prima di ritentare la ritrasmissione. Il feedback che le stazioni ricevono dal canale è sapere se la trasmissione è andata a buon fine o meno. Il primo e più semplice protocollo di accesso random al canale è chiamato Aloha che utilizza questo tipo di feedback sul canale. 269

270 CAPITOLO 14. MULTIPLE ACCESS Protocollo Aloha Come abbiamo detto, il protocollo Aloha è stato il primo protocollo che regolava l accesso al canale secondo il meccanismo della contesa. Inoltre è anche stato il primo protocollo di rete su canale radio, perchè ricordiamo che oggigiorno il canale radio è utilizzato per la maggior parte dei casi come accesso alla rete e non come rete in se. Il meccanismo è molto semplice, se c è un pacchetto da trasmette lo trasmetto, se la trasmissione fallisce ritento dopo un periodo di tempo casuale. Questo tipo di tecnica non riceve nessun feedback dal canale, infatti Aloha è chiamato anche no feedback protocol. Ovviamente la distribuzione del tempo di ritrasmissione è molto importante perchè ci permette di portare a termine la trasmissione dati senza problemi, ma per il tipo di analisi che facciamo noi per il momento non importa. Il protocollo Aloha è asincrono, il che significa che una stazione trasmette quando vuole. Assumiamo che il tempo di trasmissione di un pacchetto è costante (come in precedenza per le tecniche di polling) e uguale a T, come facciamo a stimare la probabilità di successo della nostra trasmissione? Ovviamente la trasmissione è andata a buon fine quando non c è nessun altro pacchetto che si sovrappone a quello che c è già sul canale. Figura Al fine di portare a termine la trasmissione sul canale senza collisioni è importante non avere altre trasmissioni contemporanee T secondi prima e T secondi dopo dall inizio della trasmissione. Il modello che normalmente si usa quando si studiano le performance del protocollo Aloha (anche se non molto utile) è caratterizzato dalle seguenti caratteristiche: Abbiamo trasmissioni sul canale secondo un processo di Poisson, con rate λ; 270

271 CAPITOLO 14. MULTIPLE ACCESS Normalizziamo il rate di arrivo dei pacchetti con il tempo necessario a trasmetterne uno: G = λt, che è anche la definizione di traffico sul canale (Borgonovo docet); Quindi la probabilità di successo è la probabilità che nell intervallo di tempo 2T non ci sia nessun arrivo di Poisson. Quindi partendo dalla formula della densità di probabilità di poisson: P s = (λ2t )n n! e λ2t = e 2G mentre il throughput S è definito da: S = Ge 2G che la frequenza di trasmissioni avvenute correttamente, ed è compreso tra 0 e 1. Ovviamente se S è vicino a uno il protocollo è molto efficiente mentre se è vicino allo zero l opposto. Si è potuto constatare però che l efficienza del protocollo Aloha non supera mai il 18%, come possiamo vedere dal grafico: Figura La fine di aumentare il throughput del protocollo possiamo renderlo sincrono e quindi introdurre un quanlche tipo di sincronizzazione. Anche se aumentiamo l efficienza non è comunque molto alta da poter essere realmente usato come protocollo di accesso al canale. Questa variante è chiamata Slotted-Aloha (S-Aloha) e l unica differenza sta nella decisione di trasmissione, ovvero, una stazione può trasmettere 271

272 CAPITOLO 14. MULTIPLE ACCESS soltanto all inizio di un time slot assegnato da una sorgente esterna. Il che diventa del tutto uguale ad accesso al canale di tipo TDMA. In questa caso il periodo di vulnerabilità si riduce a T, di conseguenza la probabilità di successo aumenta, pertanto anche l efficienza, che diventa del 36% circa. Quindi il throughput diventa: P s = Ge G Come possiamo capire se questa formula (e quindi il grafico) è sufficiente per descrivere il comportamento del sistema sotto un qualche tipo di punto di lavoro? In realtà non è sufficiente perchè prima di tutto abbiamo fatto l assunzione che il processo degli arrivi è stazionario del tipo di poisson, e questo potrebbe andare bene (perchè dalla teoria delle probabilità sappiamo che la somma di numerosi processi casuali possono essere descritti da un unica distribuzione di Poisson teorema del limite centrale) fino a che non consideriamo che nel canale interviene anche un altro processo, ovvero il processo delle ritrasmissioni, e le ritrasmissioni dipendono dal sistema stesso, quindi possono incrementare o decrementare la probabilità di successo. Consideriamo ad esempio di individuare un punto di lavoro nel sistema nella seconda parte del grafico dove la curva sta decrementando e si avvicina allo zero (Figura 1.16): Figura quel punto è dato ovviamente da un numero fissato G e una certa probabilità di successo. Questo è vero nel caso in questione solo perchè abbiamo fatto l assunzione che λ è un valore fissato e costante, perchè altrimenti dovremmo considerare la varianza che avremmo nel caso reale di diversi rate che dipendono dal tempo e dalla 272

273 CAPITOLO 14. MULTIPLE ACCESS sorgente. Ma se ci troviamo all apice della curva e per qualche ragione il traffico aumenta di poco per un periodo di tempo, allora andremo inevitabilmente al blocco del sistema con throughput tendente a zero e quindi l esplosione del numero di ritrasmissioni. Quindi in realtà non sappiamo se il comportamento del sistema converge verso un punto di lavoro costante, sappiamo solo che se stiamo dalla parte sinistra del grafico questo porta inevitabilmente ad un grossa inefficienza del sistema. Quello che cerchiamo è ovviamente un sistema che in qualche modo porti si porti ad una condizione di stazionarietà per fare in modo che sia affidabile e facile da mantenere. Quello che vogliamo è avere un sistema stabile, in genere si parla di stabilità per sistemi dinamici mentre qui abbiamo sistemi stocastici, di conseguenze non è molto corretto parlare di stabilità nella sua vera definizione perchè dovremmo definire un complicato modello matematico, quindi ci limiteremo a pensare alla stabilità nel suo significato intuitivo senza scendere troppo nei particolari. Per migliorare il modello dobbiamo quindi introdurne un altro un po più complicato chiamato: Aloha a singolo buffer (Aloha single buffer) Protocollo Aloha a singolo buffer Come abbiamo detto prima il traffico sul canale è caratterizzato dalla combinazione delle nuove trasmissioni e delle ritrasmissioni. Per valutare il comportamento dinamico di Aloha consideriamo un modello diverso. Possiamo considerare questo modello come un caso del S-Aloha perchè il tempo è discreto e consideriamo slot di tempo. Assumiamo di avere M stazioni identiche (come nel caso del polling) e la dimensione del buffer è al massimo di 1 pacchetto. Se il buffer ha già un pacchetto memorizzato vuol dire che non ci sono altri pacchetti che stanno arrivando e se il buffer è vuoto abbiamo il processo degli arrivi. Quindi, se il buffer è vuoto, la probabilità di un nuovo arrivo è α che è anche la probabilità di trasmettere della stazione quando arriva il suo turno (slot). Se la trasmissione va a buon fine il buffer si svuota, ma se non va a buon fine il pacchetto resta li fino a quando non viene ritrasmesso. Ovviamente non possiamo tentare tentare la ritrasmissione ad ogni slot di tempo che è stato assegnato alla stazione, perchè avremo sempre collisioni con le altre che si comportano 273

274 CAPITOLO 14. MULTIPLE ACCESS allo stesso modo. Quindi dobbiamo introdurre un fattore di casualità al processo di ritrasmissione che avviene con probabilità β, e che può essere definita anche come il tempo medio di attesa prima della ritrasmissione. Definiamo quindi un sistema dato da n(t), ovvero il numero di buffer pieni al tempo t. n(t) è una catena di Markov e la probabilità che in uno slot ci siano i arrivi, dati n buffer pieni, è: Figura mentre la probabilità che ci siano i ritrasmissioni è: Figura Quindi dobbiamo soltanto analizzare una catena di Markov di questo tipo: Figura Cominciamo con il definire dei parametri che ci aiuteranno a studiare la catena: a(i, n): è la probabilità che dati n buffer pieni ci siano i nuovi arrivi; b(i, n): è la probabilità che dati n buffer pieni ci siano i ritrasmissioni; 274

275 CAPITOLO 14. MULTIPLE ACCESS Nella Figura 1.19 consideriamo l arco che va da n a n + i, quindi l arco a(i, n), i è maggiore o uguale a 2, il che significa che abbiamo almeno due o più trasmissioni simultanee che provocano collisione. Questo vuol dire che il pacchetto deve essere ritrasmesso. Cosa succede se i = 1? se abbiamo solo un arrivo possiamo avere più di un risultato. Il nuovo arrivo può dover essere ritrasmesso anche in questo caso, e così andiamo da n a n + 1. Qual è la probabilità di avere almeno una ritrasmissione? E 1 b(0, n), e la probabilità di andare nello stato n + 1 è la probabilità di avere un arrivo per la probabilità di avere una ritrasmissione: a(1, n)(1 b(0, n)). Mentre quando andiamo da n a n 1 vuol dire che abbiamo una ritrasmissione e 0 arrivi. E la probabilità che accada questo è: a(0, n)b(1, n). Infine possiamo stare in n in due occasioni: la prima quando ho un arrivo e zero ritrasmissioni e la seconda quando ho zero arrivi e: zero ritrasmissioni o più di una ritrasmissione. E ovviamente possibile risolvere la catena numericamente, ricordando che non è una catena a stati finiti, possiamo scrivere: Figura dove S è il throughput. Il traffico sul canale è: Figura e i nuovi arrivi sono: Figura

276 CAPITOLO 14. MULTIPLE ACCESS esprimendo n come funzione di g: Figura e calcolare a in funzione di g: Figura Lo stesso possiamo farlo per s(n) s(g), e considerare i punti di incontro tra s(g) e a(g) come i punti di equilibrio del sistema: Figura Il primo punto a partire da sinistra è un punto di equilibrio perchè all aumentare del traffico aumenta anche il throughput. Ciò non succede con il secondo punto perchè un piccolo movimento dalla sua condizione di equilibrio causerebbe la decrescita del throughput. Il caso del terzo punto è uguale al primo. Se esiste più di un punto non possiamo garantire che il sistema abbia un throughput stabile. Solo quando il traffico è basso (quindi basso numero di stazioni online) il throughput è stabile. Al fine di 276

277 CAPITOLO 14. MULTIPLE ACCESS stabilizzare Aloha il solo modo di farlo è limitare il traffico sul canale rendendolo fuori servizio se necessario. Possiamo avere condizioni di funzionamento in cui il throughput è molto basso e quindi sistemi che non sono adoperabili in pratica. Aloha e le diverse varianti di aloha sono largamente usate nelle tecnologie wireless. Com è possibile lavorare con questi sistemi? Sappiamo a priori che il traffico sarà minore rispetto alla capacità del canale e non è mai possibile aumentare il traffico. Se invece siamo molto vicini alla sorgente, traffico che è il 10% della capacità del canale, non si hanno problemi (come nel caso dei RAC Random Access Channel del GSM). Il modo in cui creiamo i canali nella struttura TDMA per i canali RAC è tale che il numero di timeslot disponibili per la trasmissione di pacchetti random access in GSM è piccolo se confrontato con il numero di richieste di instaurazione del canale da parte degli utenti, e in pratica il problema della stabilità del sistema non esiste per il GSM. In tutti gli altri casi non possiamo essere sicuri che il punto di lavoro si sposti in questi tipi di regioni in cui il throughput è basso, quindi dobbiamo trovare un modo per limitare il traffico e possibilmente mantenerlo vicino al valore di massimo. Ci sono diversi modi per fare ciò: limitare il traffico significa mantenerlo fuori dalla rete, tra cui si includono sia le nuove trasmissioni che le ritrasmissioni. Vediamo adesso due modi possibili per stabilizzare Aloha e quello che otterremo alla fine non sarà il protocollo originale ma qualcosa di differente e ci sono una serie di tecnologie random access basate su queste tecniche di stabilizzazione, ma quello che si ottiene alla fine è un diverso protocollo. Se vogliamo limitare il traffico, la prima osservazione importante è che non possiamo farlo con il feedback minimo che abbiamo per l Aloha classico, feedback sul canale che è limitato ai risultati della trasmissione in cui la stazione è coinvolta; la stazione quindi può sapere solo dopo la trasmissione se la sua trasmissione è andata a buon fine o meno. Con questo feedback non si può limitare il traffico semplicemente perchè non sappiamo qual è il traffico nel canale. Se vogliamo limitare il traffico abbiamo bisogno di un modo per capire il livello atteso di traffico nel canale (qui abbiamo a che 277

278 CAPITOLO 14. MULTIPLE ACCESS fare con sistemi puramente distribuiti, in cui non c è nessun punto centrale in grado di vedere cosa sta succedendo nel sistema e dare parametri o comandi alla stazione). Ogni stazione che è indipendente può solo coordinarsi con le altre stazioni osservando il canale e prendendo informazioni da esso, non c è altro modo. Assumiamo che per ogni trasmissione, non solo per quella in cui la stazione è coinvolta, siamo in grado di sapere se lo slot, l intervallo di tempo, è vuoto e se ha avuto successo o se necessita di ritrasmissione. Assumiamo che ogni stazione è in grado di ascoltare il canale e osservarlo, riconoscendo se in ogni intervallo c è un periodo vuoto e una trasmissione riuscita o una collisione. Questo è detto feedback ternario dal canale, qui sappiamo cosa sta succedendo nel canale per ogni intervallo di tempo ed abbiamo quindi più informazioni rispetto al feedback dell Aloha. Consideriamo il caso di un buffer singolo nello slotted Aloha, per ogni timeslot ogni stazione non può sapere cosa è successo in quell intervallo di tempo. Assumiamo anche, invece di considerare la probabilità di un nuovo arrivo α e β la probabilità di ritrasmissione, di avere un unica probabilità β con cui trasmettiamo sul canale sia una nuova trasmissione che una ritrasmissione. Ovviamente non possiamo trasmettere se non abbiamo pacchetti nel buffer, quindi la probabilità è solo per stazioni che hanno β dei pacchetti da trasmettere (non importa se sono nuovi o se sono ritrasmissioni). Per le stazioni che hanno un pacchetto lo trasmetteranno sul canale con probabilità β. Vediamo ora se è possibile stabilizzare Aloha usando questa probabilità β che è l unico parametro che abbiamo per regolare la probabilità di accesso del canale. Se conosciamo il numero N di stazioni che hanno dei pacchetti e che quindi sono pronte a trasmettere, possiamo impostare β = 1 N G = 1. e il traffico medio sul canale sarà Questo è una sorta di traffico ideale; se limitiamo l accesso al canale limitiamo il traffico nel canale semplicemente adattando la probabilità di trasmissione basata sul numero di stazioni che hanno pacchetti da trasmettere (backlogged). Il problema è che non sappiamo il valore di N e quindi dobbiamo basarci sull osservazione del canale. Dobbiamo creare un filtro, un estimatore di N che in base all osservazione del canale che viene aggiornato. Ad ogni timeslot k aggiorniamo l estimatore basandoci sui k 1 278

279 CAPITOLO 14. MULTIPLE ACCESS slot precedenti e poi settiamo durante il time slot k il valore della probabilità β = 1 Nk. Come possiamo creare un estimatore per N k? Ci sono molti approcci, ne mostrerò uno basato su diverse assunzioni per semplificare il problema. La prima assunzione che facciamo è che la distribuzione a priori del valore reale di N k, il numero di stazioni backlogged durante il timeslot k, segue una distribuzione di Poisson con il valore medio dato dall estimatore N k; poi creiamo l estimatore per essere sicuri che l assunzione fatta inizialmente sia accurata. Questa è la distribuzione a priori, il che significa che è la distribuzione che abbiamo assunto senza osservare il canale. Ovviamente dopo aver presupposto quest assunzione iniziamo ad osservare il canale, slot dopo slot, così da poter correggere il valore dell estimatore. Possiamo correggere le informazioni in base all osservazione degli eventi che condizionano questo parametro e aggiornare l estimatore. Slot dopo slot facciamo una correzione del valore dell estimatore. Dobbiamo definire una regola per l aggiornamento della stima di N k data l osservazione degli eventi nel canale. Come potremmo aggiornare l informazione se il timeslot ha avuto una trasmissione andata a buon fine? Dal momento che c è stata una trasmissione riuscita c è un pacchetto che ha lasciato il sistema e ci aspettiamo quindi di avere N(k 1) pacchetti rimasti nel sistema, di conseguenza decrementiamo l estimatore di uno. La regola di aggiornamento è molto semplice, N(k 1) più una costante perchè possiamo avere degli arrivi e non sappiamo effettivamente quanti pacchetti arrivano nel sistema e dobbiamo quindi aggiungere una costante che tenga conto di qualsiasi arrivo, arrivi che devono essere in media minori di 1. Sappiamo che il caso migliore è che questi arrivi siano in numero pari alla massima capacità del sistema. Per il momento non specifichiamo il valore di questa costante s, basta ricordarsi che è necessario aggiungerla e dev essere idealmente uguale alla quantità di traffico che viene trasmessa. La condizione di equilibrio è che la quantità di traffico in ingresso sia uguale a quella in uscita dal sistema. Se abbiamo uno slot vuoto possiamo provare a calcolare direttamente la probabilità condizionata. Qual è la distribuzione di N k se osserviamo uno slot vuoto? Invece 279

280 CAPITOLO 14. MULTIPLE ACCESS di considerare la probabilità a priori consideriamo la probabilità condizionata dopo l evento. Possiamo usare la definizione di probabilità condizionata, la probabilità congiunta diviso la probabilità non condizionata. Possiamo scrivere la probabilità congiunta come la probabilità di avere uno slot vuoto 1 βi (con i l elemento della lista) moltiplicata per la probabilità βi non condizionata. Anche nel caso di uno slot vuoto la regola di aggiornamento è la stessa N(k 1) + s, bisogna decrementare di uno il valore medio dell estimatore e aggiungere la costante s. Dal momento che quindi la regola non cambia non c è veramente bisogno di un feedback ternario, di sapere quando osserviamo il canale, ma è sufficiente un feedback binario: collisione o non collisione; nel caso di non collisione non è necessario distinguere tra slot vuoti e trasmissione riuscita perchè la regola di aggiornamento che applichiamo è la stessa. Dobbiamo mantenere la condizione di equilibrio: il traffico in uscita dal sistema deve essere uguale al valore del throughput nel punto di lavoro che dobbiamo avere. Il throughput è e 1 e se sommiamo queste regole di aggiornamento il loro valore medio deve essere e 1. Il sistema è stabile se manteniamo un valore di update e 1, altrimenti stiamo facendo una stima sbagliata. Abbiamo un update x e = 1 nel caso di uno slot vuoto (con probabilità p e ) e anche nel caso di trasmissione riuscita (con probabilità p s ), mentre nel caso di collisione (probabilità p c ) abbiamo un update che non conosciamo x c, e in media sappiamo che deve essere e 1. Ora l unico valore sconosciuto è x c e la regola di aggiornamento nel caso di collisione. La probabilità di uno slot vuoto è e G = e 1 con un traffico di Poisson e G=1 che è il nostro punto di lavoro, la probabilità di successo Ge G = e 1 che è la distribuzione di Poisson nel caso i = 1. La probabilità di collisione è 1 e G Ge G = 1 2e 1 che è la probabilità di non aver nessun evento di Poisson in un timeslot. A questo punto si sostituisce nell equazione e si calcola il valore di x c : 280

281 CAPITOLO 14. MULTIPLE ACCESS Figura E la regola aggiornata è: Figura Adesso abbiamo due regole una nel caso di collisione e una nel caso di non collisione, si inizia da un punto, da un valore e poi si inizia ad aggiornarlo. Il sistema ovviamente può lavorare con qualsiasi punto di partenza se lo si esegue per un lungo periodo, questo punto è una stima ottenuta considerando il traffico medio, cioè il numero medio di stazioni, il valore di s può essere 1 anche la stima del throughput nel e punto massimo ha lo stesso valore, quindi alla fine il sistema è effettivamente stabile ed è stato provato che ha un throughput molto vicino al valore massimo (circa 0.3). Possiamo dunque usare realmente questo approccio per mantenere il sistema in condizioni di stabilità. Questo meccanismo è molto semplice, non serve applicare regole complicate ed eseguire algoritmi complessi, ma semplicemente eseguire un semplice estimatore ad ogni timeslot e osservare il canale. Tuttavia dopo questo tipo di approcci, ce ne sono altri che sono stati studiati e che si è dimostrato fossero più efficaci e hanno diversi ingredienti base. L obbiettivo è sempre quello di mantenere il traffico fuori dal sistema se c è troppo traffico. Questa classe di algoritmi è conosciuta come algoritmi di risoluzione della collisione. Qui il meccanismo è differente, non abbiamo la probabilità β da regolare ma abbiamo un algoritmo distribuito che è eseguito al fine di decidere per ogni stazione 281

282 CAPITOLO 14. MULTIPLE ACCESS quando trasmettere. Il nome risoluzione delle collisioni deriva dall approccio usato per regolare queste trasmissioni. Questi algoritmi assumono che tutte le stazioni coinvolte nella trasmissione che risultano in collisione, che entrano in conflitto per lo stesso canale, inizino un algoritmo per risolvere la collisione, il che significa riprogrammare le trasmissioni in modo tale che tutte vengano eseguite con successo. Successivamente il sistema va avanti con altre trasmissioni. Ogni volta dunque che si ha una collisione, per prima cosa la si risolve e poi si continua; di preciso si dice accesso bloccato il che significa che durante la risoluzione della collisione non è permesso trasmettere. Tuttavia questo è un vincolo che non è necessario. Come lavorano questi tipi di algoritmi? Assumiamo comunque di avere accessi bloccati perchè è più facile da analizzare e da capire. Ogni volta che si ha una collisione si inizia un processo per dividere in gruppi di stazioni che sono entrate in collisione, si dividono i gruppi in sottogruppi e così via finchè per ogni gruppo non si ha al massimo una stazione, alla fine quando si ha una stazione per gruppo si può avere trasmissione tra i gruppi che non entrano in conflitto. Si divide un gruppo in due: un gruppo trasmette immediatamente e l altro aspetta. Successivamente se nel primo gruppo si hanno più stazioni ci sarà ancora collisione e si dividerà nuovamente, il primo gruppo trasmette immediatamente e l altro aspetta. Si continua a dividere finchè non si avrà una sola stazione che trasmette e si percorre l albero ramo per ramo; questo è un albero binario (ognuno si divide in due gruppi). Ci sono varianti di questo algoritmo che dividono anche in più gruppi. Figura

283 CAPITOLO 14. MULTIPLE ACCESS Qual è l algoritmo che ogni stazione deve eseguire per sapere quanto deve aspettare prima di ritrasmettere? Ogni stazione lancia una moneta se esce 0 trasmette se esce 1 invece deve aspettare, come fa a sapere fino a quale timeslot deve aspettare? Non ci sono canali di segnalazione separati, ogni stazione ha bisogno solo di osservare il canale, poi lancia una moneta e prende la decisione; non può comunicare con le altre. Deve aspettare che gli altri trasmettano, ma non sa chi sono questi altri e non sa quali e quante stazioni sono in conflitto, l unica informazione che ha è che lei stessa è coinvolta nella collisione insieme a qualcun altra. L unica informazione che abbiamo è un feedback del canale; sappiamo che abbiamo una collisione, abbiamo la variabile casuale 0,1 e adesso iniziamo ad osservare il canale. Inizio dal valore uno dopo aver lanciato la moneta e lo uso per inizializzare un contatore: la regola è aggiungo uno per le collisioni e sottraggo uno per le trasmissioni riuscite e gli slot vuoti. Questo sistema ha un throughput stabile che è paragonabile a quello massimo di Aloha, non è ottimo per la dipendenza dal numero di stazioni e dai traffici individuali, la suddivisione in due rami dell albero binario non è necessariamente la scelta migliore. Esiste un meccanismo basato sulla stima del traffico medio tale che si ha una partizione in gruppi che non è basata su alberi ma su intervalli di tempo, questo è il più efficiente algoritmo di risoluzione delle collisioni inventato. L algoritmo ottimizzato, che è una variante di questo, può raggiungere un throughput che è addirittura più alto dell Aloha originale perchè non si hanno realmente trasmissioni puramente casuali, ma si crea in modo distribuito un ordine tra le trasmissioni. Questo è il modo migliore per stabilizzare l Aloha ed è usato nella realtà in diverse aree di applicazione, non nel GSM per esempio, ma in altre tecnologie sì. Il feedback binario e il feedback ternario non sono gli unici che si possono ottenere dal canale, c è un altra classe di feedback che è importante per le nostre tecnologie, sono i feedback che si possono ottenere se il ritardo di propagazione sul canale è piccolo (short delay feedback). 283

284 CAPITOLO 14. MULTIPLE ACCESS CSMA (Carrier Sense Multiple Access) Nel caso in cui il tempo di trasmissione fosse più lungo del ritardo di propagazione, osservare il canale può darci l informazione se il canale è occupato o disponibile: questo è una sorta di feedback del canale. Se non è possibile osservare il canale e capire se è occupato o libero, questo è ancora un modo per ottenere un feedback. Quindi nel caso di un breve ritardo di propagazione possiamo riusare il carrier sense. Possiamo usare questo feedback del canale, perciò è importante al fine di migliorare l efficienza del meccanismo di trasmissione. Nel caso di CSMA (Carrie Sense Multiple Access), usato per Ethernet e sistemi come WiFi o Zigbee, si può trasmettere solo quando il canale è disponibile; si osserva dunque il canale, esiste un modo fisico per osservare il canale e capire se è occupato o meno, e se è libero si trasmette. Ovviamente le trasmissioni possono entrare in collisione in ogni caso a causa del ritardo di propagazione (τ). Ci possono essere altre stazioni che possono trasmettere τ prima o τ dopo la trasmissione di una stazione e quindi si può avere collisione. Perchè? un altra stazione inizia a trasmettere un attimo prima di della stazione in questione, dal momento che la propagazione porta l informazione sulla trasmissione dal lato della stazione che vuole trasmettere, l informazione sull altra trasmissione la raggiunge quando ha già iniziato a trasmettere e quindi non può annullare la trasmissione, così quando controlla se il canale è disponibile la stazione sta osservando il canale libero ma in realtà è occupato di conseguenza si ha collisione. 2τ è il periodo di vulnerabilità del nostro sistema, che è equivalente al periodo di vulnerabilità dell Aloha. Se τ < T (il ritardo di propagazione è minore del tempo di trasmissione e questo periodo di vulnerabilità è minore di quello dell Aloha) ci aspettiamo performance migliori. Ecco perchè ci guadagniamo solo se τ < T. Consideriamo il tempo di propagazione normalizzato a = τ se a << 1 il carrier sense T è un buon sistema, altrimenti è inutile. Infatti se abbiamo τ = T o τ > T, stiamo osservando il canale e vediamo per esempio che è occupato, la trasmissione che stiamo osservando sicuramente è già finita dal momento che il tempo di propagazione è 284

285 CAPITOLO 14. MULTIPLE ACCESS maggiore del tempo di trasmissione. Quindi osservare la propagazione se il ritardo di propagazione è troppo grande è inutile e a volte anche un male dal punto di vista dell efficienza. Come si può calcolare l efficienza di questo sistema? Per il carrier sense non ripetiamo l analisi con single buffer fatta per Aloha perchè è più complicata e non particolarmente utile. Se a è veramente piccolo come in molte delle nostre tecnologie, il sistema è nella maggior parte delle situazioni stabile di per sè e quindi non ci dobbiamo preoccupare della stabilità. Usiamo l ipotesi di popolazione infinita che significa traffico di poisson nel canale come abbiamo fatto per il primo modello di Aloha, invece di considerare modelli single buffer più sofisticati. Calcoliamo il throughput s come funzione del traffico sul canale G, normalizziamo rispetto alla durata della trasmissione T e assumiamo che tutte le trasmissioni abbiano la stessa durata T. Possiamo calcolare il throughput s in questo caso come il rapporto tra che α (che è il numero medio di trasmissioni riuscite in un busy period T del canale) e il valor medio di due intervalli di tempo, busy period (B) e idle period (I). Se osserviamo il canale vedremo alcuni periodi di tempo in cui il canale è occupato (BUSY) e alcuni in cui il canale è disponibile (IDLE) e avremo continuamente busy-idle-busy-idle-busy-idle... Consideriamo busy+idle un ciclo; il throughput può essere calcolato come il numero medio di trasmissioni in un ciclo, α, diviso la durata media del ciclo (def. di throughput: numero di pacchetti diviso il tempo). Numero medio di trasmissioni riuscite in un periodo di ciclo fratto la lunghezza del ciclo. In un periodo busy si può avere al massimo la trasmissione di un pacchetto riuscita, si può avere 0 o 1; dopo una collisione si ha un periodo idle e dopo un successo si ha un periodo idle. Allora α è la probabilità di trasmissione riuscita all inizio di un periodo busy. Se il canale è idle e iniziamo una trasmissione che è l unica, se ci sono anche altre trasmissioni ci sarà collisione e α = 0. Infatti α è la probabilità di successo. Dobbiamo calcolare α, b, i. α è la probabilità che non ci siamo altre trasmissioni che possono entrare in collisione con una stazione: α = e ag (probabilità che non ci sia nessun punto di Poisson, cioè l inizio di una 285

286 CAPITOLO 14. MULTIPLE ACCESS trasmissione in un intervallo a). Perchè non è α = e 2aG? Il tempo di idle è il tempo tra la fine del periodo precedente e l inizio di un altro periodo busy, e dal momento che idle è un processo di Poisson, gli interarrivi sono esponenziali e la durata è 1. G Il periodo busy è un po più complicato. Nel caso di trasmissione riuscita e ag, abbiamo un successo, la durata è una trasmissione più a perchè dopo la trasmissione dobbiamo aspettare che il segnale si propaghi verso tutti gli altri, altrimenti gli altri non possono trasmettere; assumiamo quindi di avere lo stesso tempo di propagazione per tutte le stazioni. La durata del periodo busy visto dagli altri è 1 + a. Se abbiamo una trasmissione riuscita la durata del busy period è 1 + a e la probabilità di successo è α = e ag. Se abbiamo una trasmissione non riuscita 1 e ag, la durata del busy period è di poco più lunga, 1 + a + z dove z è la sovrapposizione parziale tra due pacchetti. Si può mostrare che z è uguale a: Figura Quindi la formula finale per l efficienza è: Figura Questa è l equivalente della formula del throughput dell Aloha nel caso CSMA, se la disegnamo otteniamo differenti curve a seconda dei parametri di a: 286

287 CAPITOLO 14. MULTIPLE ACCESS Figura Tipicamente questi valori sono molto comuni nei sistemi reali, ovviamente a seconda della durata della trasmissione. Quando Gigabit ethernet è stato inventato il problema era che aumentando il rate di trasmissione e mantenendo la durata dei pacchetti la stessa sarebbe diminuita la durata della trasmissione, questo è il motivo per cui il tempo minimo di trasmissione fu esteso a 150 bytes. In teoria possiamo eseguire anche qua un analisi basata su buffer singoli, ma avremmo una curva di carico per calcolare il punto di equilibrio, a differenza dell Aloha dove abbiamo più di un punto di equilibrio, qua è molto difficile raggiungere l area della curva e se la curva è molto alta è difficile avere punti di equilibrio multipli quindi in pratica il sistema è stabile. Ecco perchè non ci dobbiamo preoccupare della stabilità nel carrier sense se il ritardo di propagazione è piccolo, se non è breve ovviamente la stabilità è un problema anche per il carrier sense multiple access. Se a = 1 CSMA è addirittura peggio dell Aloha. Non consideriamo la vulnerabilità nella prima metà e la probabilità di successo è e ag e non e 2aG, consideriamo solo un intervallo perchè prima abbiamo un altro periodo. α non è la probabilità incondizionata, è la probabilità di successo del pacchetto che inizia il periodo, quindi se è il primo pacchetto non ce ne sono altri prima di esso; la probabilità di successo di qualsiasi altro pacchetto è e 2aG, ma la probabilità di successo del primo pacchetto è e ag. 287

288 CAPITOLO 14. MULTIPLE ACCESS Ci sono molte tecnologie che sono basate su varianti del protocollo CSMA, come nel caso ethernet dove viene applicato il CSMA/CD. Oggi è molto famoso l uso del CSMA nella tecnologia WiFi. Quindi, come possiamo applicare questo sistema al caso specifico del WiFi? Figura A causa della complessità del sistema, prima di studiare il modello dobbiamo fare delle assunzioni che ci permettono di ricavare le performance. Il sistema non è completamente broadcast, il che vuol dire che oltre ad utilizzare il carrier sense a livello fisico lo utilizziamo anche a livello logico, virtual carrier sense (livello MAC, vedi pag. 182) perchè non tutte le stazioni possono percepire i vicini. Quindi l unico punto vulnerabile è l invio del pacchetto RTS, che nelle nostre assunzioni consideriamo essere ricevuto da tutte le stazioni. Inoltre non consideriamo il ritardo di propagazione perchè è molto più piccolo dell interframe spaces e la dimensione dei pacchetti RTS, CTS, ACK sono tutti uguali. Il minimo valore dell interframe spaces è considerato come il tempo minimo tra due trasmissioni. Allo stesso modo possiamo quindi derivare un modello per il WiFi: α = e ag : stesso comportamento del modello originale; 288

289 CAPITOLO 14. MULTIPLE ACCESS a: durata dell interframe space; b: durata dei pacchetti RTS e CTS; I = 1 : idle period; G B = α(1 + 3a + 2b) + (1 α)(b + a + z): il busy period è uguale alla probabilità di successo per la durata di: un pacchetto trasmesso (1), dell interframe space prima di dell RT S, tra l RT S e il CT S, e del pacchetto CT S (3a) e infine la durata dell RT S e del CT S (2b); più la probabilità di collisione per la durata dell RT S, l interframe dopo l RT S e z (come nel caso precedente); Infine il throughput è uguale a: Figura Scheduling centralizzato Nel caso di scheduling centralizzato (come in Wimax) c è una stazione centrale che controlla e stabilisce l accesso al canale condiviso. Questo richiede l uso del signaling per: Informare la stazione centrale sullo stato delle code delle altre stazioni; Per garantire il permesso di trasmettere alle stazioni; Il controller centrale può implementare diverse tecniche per lo scheduling basata sul controllo dell informazione. La maggior differenza tra lo scheduling centralizzato su wired e quello su wireless è che in quest ultimo possiamo avere differenti canali tra la stazione centrale e le altre stazioni, e questi canali non hanno le stesse caratteristiche. 289

290 CAPITOLO 14. MULTIPLE ACCESS A volte possono essere buoni a volte no (a causa dell attenuazione, multipath ecc..), e variano nel tempo indipendentemente. Quindi abbiamo scheduling centralizzato su differenti canali. Analizziamo uno specifico caso chiamato fair scheduling Wireless fair queuing Il fair queuing è un meccanismo per assicurare che il canale (o per meglio dire le risorse) sia equamente diviso tra le stazioni che devono trasmettere. Ovviamente questo meccanismo cambia nel tempo in base alle stazioni online che devono trasmettere. L assegnamento delle risorse è fatto in maniera corretta per ogni periodo di tempo (t 1, t 2, ecc..), dove viene assegnato un numero di bit da trasmettere, quindi: Figura dove w è il peso secondo la quale la stazione centrale decide di dividere il canale. Quindi possiamo avere due possibili stati in cui la stazione utente può trovarsi: se ha qualcosa da trasmettere o no. Comunque in WiFi a causa delle condizioni del canale le risorse assegnate possono non essere usate per la corretta trasmissione dei pacchetti. Quindi per semplificare il modello del canale possiamo avere due condizioni: canale buono alto bitrate, canale cattivo no trasmissione. Ma questo è vero se a livello fisico abbiamo soltanto uno schema di modulazione, invece se abbiamo diverse modulazioni, e quindi diversi valori di SNR minimi per poter trasmettere, possiamo abbassare il bitrate e trasmettere. Ma per il momento assumiamo di avere solo una modulazione possibile. Consideriamo un esempio: Abbiamo 3 stazioni che devono trasmettere; nell intervallo (0,1) il canale della stazione 3 non è buono e quindi le trasmissioni non vanno a buon fine, mentre i canali della stazione 1 e della stazione 2 sono buoni e quindi possono trasmettere. Di conseguenza, dato che la stazione centrale conosce solo lo stato delle code e non lo stato del canale, 290

291 CAPITOLO 14. MULTIPLE ACCESS le risorse del canale sono divise in tre: Figura Nell intervallo (1,2) invece i canali sono tutti buoni, quindi: Figura Quindi in totale nell intervallo (0,2): Figura Se lo stato del canale è conosciuto in anticipo (stimandolo grazie ai beacon o alle trasmissioni precedenti) possiamo ottimizzare il processo dividendo in un altro modo le risorse del canale in modo da favorire le stazioni 1 e 2 nel primo caso: Figura C è un altro metodo per compensare l assegnamento delle risorse del canale alla stazione, ed è quello di assegnare più risorse successivamente quando il canale diventa buono: 291

292 CAPITOLO 14. MULTIPLE ACCESS Figura Ci sono diversi algoritmi per compensare le risorse tra le diverse stazioni chiamati modelli lead e lag. L obbiettivo del Wireless fair queuing è proprio quello di dividire le risorse del canale tra le stazioni in qualunque situazione si trovi il canale. Se invece abbiamo uno schema di modulazione che si adatta alle condizioni del canale allora la situazione diventa più complicata. Anche la definizione della capacità del canale non è semplice. Esempio 1 : siamo in grado di ottenere la capacità massima del canale anche se in media il canale è al di sotto della qualità massima. Questo metodo è chiamato user diversity in quanto dato che i canali sono in differenti condizioni, possiamo sfruttare questo e assegnare quanta più capacità possibile. Se abbiamo in ogni istante almeno un utente con un buon canale, allora assegniamo tutta la capacità disponibile alla stazione. Quindi tutte le stazioni con un buon canale avranno la massima capacità di trasmissione, mentre quelle con canali cattivi non potranno mai trasmettere. Esempio 2 : regolare le trasmissioni in modo tale che sul lungo periodo il rate medio sia uguale per tutte le stazioni. Molto più complicato del primo esempio, il trucco è compensare. Ma questo presuppone la conoscenza dello stato del canale in anticipo. E ancora non siamo in grado di prevedere il futuro quindi abbiamo bisogno di stimare, e anche in quel caso il problema di ottimizzazione non è facile. Esempio 3 : regolare le trasmissioni in modo tale che il rate medio delle trasmissioni sia proporzionale al rate medio del canale. Il trucco è quello di favorire la trasmissione di pochi bit in ugual modo alle trasmissioni che devono trasmettere tanti bit, cosi in media una stazione trasmetterà un numero di bit che è proporzionale alla qualità media del suo canale. Questo schema è molto popolare. 292

293 Capitolo 15 IP mobility La gestione della mobilità di un terminale permette a quest ultimo di mantenere lo stesso indirizzo/identificatore e di mantenere attiva la sessione a livello applicativo, anche se non è strettamente necessario mantenere lo stesso indirizzo/identificatore. I terminali possono cambiare quando vogliono l indirizzo e richiedere la continuità del servizio ai server, purchè quest ultima non sia un problema. Figura 15.1 La mobilità può essere gestita anche a livello 3, quindi al livello IP. Se vogliamo essere raggiunti con lo stesso indirizzo IP dobbiamo in qualche modo tenere traccia della nostra connessione, quindi ci deve essere qualche database che memorizza questo tipo di informazioni. 293

294 CAPITOLO 15. IP MOBILITY 15.1 Gestione della mobilità a livello applicativo A livello applicativo la gestione della mobilità può avvenire tramite due servizi: DDNS (Dynamic Domain Name System); SIP (Session Initiation Protocol); DDNS (Dynamic Domain Name System) E una tecnologia che permette di associare un nome DNS ad un indirizzo IP anche se quest ultimo tende a cambiare. Un servizio DNS dinamico è costituito da una popolazione di client con IP dinamici, da uno o più server DDNS e da un protocollo di comunicazione tra le due parti. Quando un client dinamico ottiene un indirizzo IP, contatta uno dei server e lo informa del suo IP attuale. Il server inserisce allora un record DNS che punta al nuovo indirizzo del cliente. In questo modo, altri host sono in grado di ottenere l indirizzo IP attuale del client dinamico utilizzando il normale servizio DNS, e quindi senza essere consci che l host che contattano ha un indirizzo IP registrato dinamicamente. Figura SIP (Session Initiation Protocol) E un protocollo di controllo del livello applicativo usato per creare, modificare, e terminare sessioni tra uno o più partecipanti. Queste sessioni includono chiamate telefoniche via Internet, distribuzioni multimediali, e conferenze multimediali. SIP 294

295 CAPITOLO 15. IP MOBILITY viene comunemente usato per instaurare o terminare chiamate video o vocali e permette di modificare le caratteristiche di chiamate in corso come l indirizzo e la porta, l invito di ulteriori partecipanti e aggiungere o cancellare media stream. Figura Gestione della mobilità a livello di rete Noi abbiamo già visto la gestione della mobilità a livello data link, ovvero quando un terminale si muove verso un altro AP le informazioni all interno delle bridging table di tutti i nodi della rete vengono aggiornate individuando la nuova posizione del terminale in questione. Adesso ci poniamo una domanda, possiamo fare lo stesso a livello IP? Il routing IP è basato sugli indirizzi di rete quindi ci chiediamo se è possibile usare il meccanismo del per host routes anche a livello 3 il che significa aggiungere uno specifico indirizzo IP alle tabelle di routing dei router, proprio come si fa a livello 2 con gli indirizzi MAC. Ovviamente utilizzare questo meccanismo richiede una grande memoria e se la rete è molto grande diventa molto difficile e non è possibile usare il per host routes. Invece di aggiornare continuamente i router della rete si può utilizzare il mobile IP. 295

296 CAPITOLO 15. IP MOBILITY Mobile IP Mobile IP è un protocollo che è stato creato dall Internet Engineering Task Force (IETF) al fine di supportare la mobilità dei terminali a livello IP e di permettere agli utenti di mantenere lo stesso indirizzo. Solo alcuni router della rete devono essere aggiornati e solo i mobile host richiedono qualche funzionalità in più, per il resto la rete può continuare a lavorare senza problemi. In alcune versioni di mobile IP c è ovviamente il supporto per la sicurezza. Introduciamo adesso alcuni concetti e termini che ci torneranno utili: Permanent IP Address (PIP): indirizzo IP permanente del terminale; Home Agent (HA): è un server che ha il compito di gestire la mobilità; Home Network (HN): è la rete dove si trova il terminale con indirizzo IP permanente; Foreign Network (FN): è il range di indirizzi IP dove si trova il mobile host; Care Of Address (COA): è un indirizzo IP che corrisponde all indirizzo corrente del terminale che è all interno del range del foreign network; Il meccanismo di gestione della mobilità sta in un mapping tra l indirizzo permanente e il COA. Figura

297 CAPITOLO 15. IP MOBILITY Quando il corresponding host vuole mandare dei pacchetti al mobile host che si trova già nella foreign network, manda tutti i pacchetti con destination address=pip che vanno all home network e di conseguenza all home agent. Quest ultimo tramite il COA manda tutto il contenuto al mobile host nella foreign network all interno di un altro pacchetto IP. Quando il mobile host vuole rispondere, nei pacchetti inserirà il PIP nel campo source address, in questo modo il corresponding host non deve sapere l indirizzo nuovo assegnato al mobile host di volta in volta. Qual è la differenza con la mobilità nelle mobile radio network? La differenza più importante è che in questo caso la tabella riferita ai nuovi indirizzi del mobile host è all interno degli home agent, considerando che abbiamo un home agent per rete abbiamo un database distribuito. Mentre nell altro caso l informazione sulla posizione del terminale è registrata all interno di un home location register (HLR) che traccia la mobilità del terminale. Ovviamente ci sono pro e contro, ad esempio nel caso del mobile IP non abbiamo bisogno di un database unico e centralizzato, d altra parte però abbiamo un sub-optimal routing perchè prima che i pacchetti arrivino a destinazione devono passare per l home network. Un altra differenza è che nelle cellular networks le comunicazioni avvengono sempre tra gateway e local router, e possiamo anche avere un routing diretto quando due host comunicano nella stessa rete. Anche se nella maggior parte dei casi si utilizza un gateway per stabilire la connessione tra due host. Ci possono essere due tipi di COA: Foreign agent care-of address: in questo caso il COA è il COA del foreign network; Co-located care-of address: in questo caso invece il COA è quello del mobile host ottenuto tramite il DHCP (Dynamic Host Configuration Protocol); 297 In ogni caso il COA deve essere registrato come home agent.

298 CAPITOLO 15. IP MOBILITY Foreign agent care-of address I pacchetti vengono mandati dall home agent della home network, all home agent della foreign network, e da qui, tramite una richiesta ARP viene a conoscenza dell indirizzo IP del mobile host, reindirizza i pacchetti a destinazione. Figura 15.5 Co-located care-of address Mentre in questo caso il COA di partenza manda direttamente i pacchetti al mobile host. Ma quando il mobile host manda i pacchetti con source address diverso dal range della foreign network (quindi con il PIP), il router potrebbe droppare i pacchetti perchè provenienti da un altra rete. In questo caso bisogna attuare delle misure di sicurezza. Figura

299 CAPITOLO 15. IP MOBILITY I pacchetti vengono incapsulati in un altro pacchetto IP: Figura 15.7 Il procedimento di associazione tra il mobile host e il foreign agent avviene in questo modo: prima di tutto i foreign agent mandano pacchetti in broadcast alla rete per informare tutti della loro presenza, i mobile host possono sollecitare i foreign agents mandando anche loro dei pacchetti broadcast per sapere se sono presenti. Quando i mobile host ricevono questa informazione mandando il loro COA all HA o direttamente o tramite il FA. Infine abbiamo l operazione di tunneling dei pacchetti. Più nel dettaglio: se il MH riceve il pacchetto broadcast riguardo la sua presenza da un HA e se sta tornando alla HNm allora fa cancellate il COA dal HA, altrimenti se lo riceve dal FA allora il MH richiede o un FA COA o un co-located COA e possibilmente registra il suo COA attraverso il FA. Figura

300 CAPITOLO 15. IP MOBILITY Figura 15.9 Route optimization Ci chiediamo adesso se non sia possibile ottimizzare il routing dal corresponding host. Una soluzione può essere quella di inviare il COA al corresponding host per far si che crei una tabella di COAs, in questo modo i pacchetti vengono mandati tramite tunneling direttamente al MH. Per implementare questo meccanismo, prima l HA invia un primo pacchetto al MH per informarlo che c è un CH che vuole parlare con lui: Figura

301 CAPITOLO 15. IP MOBILITY e dopo il MH manda al CH il suo indirizzo di COA al CH in modo da poter comunicare direttamente: Figura Il problema in questo approccio è che spesso i routers droppano il traffico che arriva da sorgenti che non sono colegati alla loro rete (come detto in precedenza) quindi si pone un problema di sicurezza. Questo meccanismo di sicurezza viene attuato a causa di richieste fake di registrazione, quindi per risolvere questo e altri problemi di sicurezza bisogna introdurre un meccanismo di autenticazione per la registrazione. La route optimization è una parte fondamentale per il mobile IPv6, mentre in mobile IPv4 è solo optional perchè è un set di estensioni che può non essere supportato da tutti i nodi. FA non servono in mobile IPv6 perchè dal momento che abbiamo indirizzi più lunghi è più facile implementare il co-located COA. E per quanto riguarda la sicurezza ci si aspetta che i nodi operino dei meccanismi di autenticazione e crittografia. In questo caso, quando i MH si muovono hanno bisogno di registrarsi ogni volta con l HA e quando quest ultimo è molto lontano potrebbe comportare un ritardo non trascurabile. Per questo motivo si è pensato ad una registrazione gerarchica: 301

302 CAPITOLO 15. IP MOBILITY Figura ogni FA ha il COA del destinatario e quando l HA deve mandare informazioni, li instrada ad un FA che a sua volta li passa ad altri FA fino a quando non arrivano a destinazione. Questo meccanismo rende la mobilità soltanto una questione locale e il cambiamento del COA resta locale. 302

303 Capitolo 16 TCP wireless 303

304 CAPITOLO 16. TCP WIRELESS 304

305 Capitolo 17 Ad hoc networks Le Mobile Ad Hoc Netowrk (MANET), sono delle reti di nodi mobili, i quali sono equipaggiati con un interfaccia di rete wireless per poter comunicare tra di loro. Queste reti non hanno bisogno di instaurare un infrastruttura per comunicare, ma sono semplicemente in grado di comunicare tramite multihop tra i peer, questo implica che i nodi devono essere attivi e comportarsi sia come host, sia come router. Quindi ogni nodo può comunicare direttamente con un sottoinsieme di nodi mobili, chiamati vicini (neighbors). Supponendo che le antenne dei nodi siano isotropiche, noi possiamo calcolare la potenza ricevuta dai vicini e se è sufficiente si può instaurare il collegamento. Il numero dei vicini varia a seconda del range di comunicazione che a sua volta dipende dalla loro posizione fisica. Figura 17.1: Esempio di una MANET (a) Range di copertura dei nodi (b) Possibile topologia 305

306 CAPITOLO 17. AD HOC NETWORKS Da notare che possono essere mobili questi nodi, quindi anche la topologia della rete è dinamica, ovvero si adatta ai movimenti dei nodi, vedi Figura Figura 17.2: Nodo spostato (a) Nuovo range di copertura dei nodi (b) Nuova topologia Vantaggi delle MANET Sono di facile implementazione e hanno un infrastruttura indipendente e non necessitano quindi di una disposizione iniziale. Sono flessibili, ovvero è possibile aggiungere, rimuovere e ricollocare i nodi automaticamente, ed è possibile abilitare nuove applicazioni do il numero dei partecipanti è dinamico e non predicibile. Alcune possibili applicazioni: ripristino dei disastri, emergenze e applicazioni di sicurezza; civili; militari. Le MANET possono essere di due tipi, omogenee o eterogenee, questo comporta a delle differenze. Omogenee : tutti i nodi hanno le stesse proprietà, ovvero stessa scheda di rete e quindi stesso range di copertura, capacità di processising, memoria e risorse energetiche. Logicamente hanno anche le stesse funzionalità, tutti i nodi sono host e router, non esiste una organizzazione gerarchica. 306

307 CAPITOLO 17. AD HOC NETWORKS Eterogenee : in questo caso i nodi possono avere hardware differente, ovvero differenti risorse, range differente, e di conseguenza possono esistere organizzazioni gerarchiche con nodi aventi diverse funzioni, host o router. In seguito a questo, dobbiamo sviluppare soluzioni che possono essere utilizzate in tutte le reti ad hoc, soddisfare i vincoli dei vari livelli delle applicazioni, adattare a possibili cambiamenti topologici, integrare diversi tipi di nodi e infine interagire con le infrastrutture fisse Routing nelle MANET Il routing in queste reti dovrebbe supportare la mobilità, ovvero una topologia dinamica, purtroppo i protocolli di routing sono progettati per reti statiche o lentamente variabili. Quindi nessun protocollo è ottimale per le MANET, allora iniziamo a definirne alcuni possibili: Protocolli Reattivi determinano il percorso on-demand, ovvero quando devono inviare, prima instauro il percorso e poi invio, una volta utilizzato posso anche eliminare il percorso; basso overhead e basso traffico, ma solitamente si ha un largo ritardo dovuto all instaurazione del percorso. Protocolli Proattivi simili ai protocolli di internet (distant vector o link state), mantengono il percorso senza guardare le condizioni del traffico; non è presente nessun ritardo, ma abbiamo un alto overhead per mantenere i percorsi. Protocolli Ibridi sono un misto tra i primi due, e generalmente mantengono i percorsi proattivi e creano altri percorsi reattivi, ottenendo un ritardo e overhead medi. Protocolli Geografici completamente diverso dai precedenti, e si basa sulle posizioni geografiche, ovvero le coordinate, ma può essere usato solo se la localizzazione è disponibile. 307

308 CAPITOLO 17. AD HOC NETWORKS Flooding per inviare i dati Il nodo S vuole inviare un pacchetto P al nodo di destinazione D, vedi Figura 17.3a. Figura 17.3 (a) (b) Per inviare il pacchetto P, S effettua un broadcast, così tutti i vicini possono ricevere il pacchetto, vedi Figura 17.3b. Ogni nodo che riceve P, a sua volta effettua un broadcast, ma ci sono da analizzare delle situazioni (Figura 17.4a. Ad esempio il nodo H riceve il pacchetto P da due vicini, questo vuol dire una potenziale collissione, un altro caso analogo è il nodo S e credo, ma non lo so C ed E. Figura 17.4 (a) (b) 308

309 CAPITOLO 17. AD HOC NETWORKS É possibile utilizzare una sequenza di numeri per evitare la possibilità di inoltrare lo stesso pacchetto più di una volta (credo che voglia intendere la frase successiva). Infatti, nella Figura 17.4b si può notare che il nodo C riceve ancora il pacchetto P da G e H, ma in questo caso C non inoltra più il pacchetto, perchè lo ha già inoltrato una volta. Successivamente il nodo J e K inoltrano il pacchetto P, al nodo D, ovvero la destinazione, ma dato che J e K sono nascosti a vicenda, la loro trasmissione potrebbe collidere, quindi il pacchetto si potrebbe non ricevere nonostante si usa il flooding, Figura 17.5a. IIn questo modo D è ha conoscenza che S è raggiungibile. Per comple- Figura 17.5 (a) (b) (c) tare il flooding, D essendo il destinatario non inoltra più il pacchetto, ma M effettua nuovamente il broadcast (Figura 17.5b). L ultimo step, ovvero L inoltra il pacchetto, Figura 17.5c, ma si può notare che alcuni nodi non possono raggiungere S, come Z, Y e N. Z e Y non sono stati raggiungi perchè non vi era nessun link, invece per N l unico collegamento possibile era tramite D, ma D essendo la destinazione non ha inoltrato il pacchetto. Vantaggi La sua semplicità è sicuramente un vantaggio, e può anche essere molto più efficiente di altri protocolli, come quando il rate di trasmissione delle informazioni è sufficientemente basso, che l overhead per scoprire e mantenere i percorsi degli altri protocolli 309

2 - Canali e Multiplazione

2 - Canali e Multiplazione Università degli studi di Bergamo Università degli studi di Bergamo Dipartimento di Ingegneria dell Informazione e Metodi Matematici Reti di Calcolatori prof. F. Martignon 2 - Canali e Multiplazione 1

Dettagli

Coperture cellulari. Marco Listanti. Reti cellulari - Prof. Marco Listanti - A.A. 2008/2009. INFOCOM Dept

Coperture cellulari. Marco Listanti. Reti cellulari - Prof. Marco Listanti - A.A. 2008/2009. INFOCOM Dept Coperture cellulari Marco Listanti Reti cellulari - Prof. Marco Listanti - A.A. 008/009 Indice Le reti cellulari Architettura di una rete cellulare Coperture cellulari Motivazioni Il canale radiomobile

Dettagli

Tecnologie Radio Cellulari. Reti Cellulari. Forma e Dimensione delle Celle. Organizzazione di una Rete Cellulare

Tecnologie Radio Cellulari. Reti Cellulari. Forma e Dimensione delle Celle. Organizzazione di una Rete Cellulare I semestre 04/05 Tecnologie Radio Cellulari Reti Cellulari Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica

Dettagli

Classificazione delle tecniche di accesso multiplo

Classificazione delle tecniche di accesso multiplo Classificazione delle tecniche di accesso multiplo Le tecniche di accesso multiplo si dividono in tre classi: Protocolli deterministici o senza contesa: evitano la possibilità che due utenti accedano al

Dettagli

Sistemi di Telecomunicazione

Sistemi di Telecomunicazione Sistemi di Telecomunicazione Parte 12: Concetti di Planning Radiomobile Universita Politecnica delle Marche A.A. 2013-2014 A.A. 2013-2014 Sistemi di Telecomunicazione 1/32 Sistemi cellulari Sistemi cellulari:

Dettagli

Politecnico di Milano. Facoltà di Ingegneria dell Informazione. Reti Radiomobili. Prof. Antonio Capone. 2 Concetti preliminari

Politecnico di Milano. Facoltà di Ingegneria dell Informazione. Reti Radiomobili. Prof. Antonio Capone. 2 Concetti preliminari Politecnico di Milano Facoltà di Ingegneria dell Informazione eti adiomobili Prof. Antonio Capone Concetti preliminari Canale Wireless Canale wireless vedi corsi di di propagazione per questo argomento

Dettagli

Parte II: Reti di calcolatori Lezione 23

Parte II: Reti di calcolatori Lezione 23 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 23 Giovedì 22-05-2014 1 Reti wireless Una

Dettagli

Descrizione della struttura e delle funzioni di una stazione radio base TACS

Descrizione della struttura e delle funzioni di una stazione radio base TACS c.so Duca degli Abruzzi 4 1019 Torino (Italy) Fax +39 011 564 4099 pag. /34 Premessa Il seguente capitolo illustra i principi tecnici fondamentali a cui si ispirano le tecnologie utilizzate per i serivizi

Dettagli

Appunti di telecomunicazione

Appunti di telecomunicazione Servizio radiomobile GSM Cenni storici Il primo sistema telefonico radiomobile della storia nacque negli USA nel 1964 e funzionava nella gamma di frequenza dei 160/450 MHz con soli 23 canali bidirezionali.

Dettagli

Parte II: Reti di calcolatori Lezione 23

Parte II: Reti di calcolatori Lezione 23 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Pietro Frasca Parte II: Reti di calcolatori Lezione 23 Martedì 26-05-2015 1 Confronto tra switch

Dettagli

Politecnico di Milano. Facoltà di Ingegneria dell Informazione. Reti Radiomobili. Prof. Antonio Capone

Politecnico di Milano. Facoltà di Ingegneria dell Informazione. Reti Radiomobili. Prof. Antonio Capone Politecnico di Milano Facoltà di Ingegneria dell Informazione Reti Radiomobili Prof. Antonio Capone Politecnico di Milano Facoltà di Ingegneria dell Informazione 1 - Introduzione al corso Reti Radiomobili

Dettagli

Reti di Telecomunicazioni 1

Reti di Telecomunicazioni 1 Reti di Telecomunicazioni 1 Corso on-line - AA2005/06 Blocco 2 (v2) Ing. Stefano Salsano e-mail: stefano.salsano@uniroma2.it 1 Richiami sul concetto di multiplazione 2 Riprendendo il discorso sulle diverse

Dettagli

PROBLEMA SU COLLEGAMENTO WIRELESS CON ACCESS POINT

PROBLEMA SU COLLEGAMENTO WIRELESS CON ACCESS POINT PROBLEMA SU COLLEGAMENTO WIRELESS CON ACCESS POINT Il gestore di un ipermercato richiede l' installazione di un access point da utilizzare per il collegamento wireless delle casse automatiche alla rete

Dettagli

Perché Codificare i Dati? Codifica dei Dati. Tecniche di Codifica del Segnale. Cooperazione Trasmettitore- Ricevitore

Perché Codificare i Dati? Codifica dei Dati. Tecniche di Codifica del Segnale. Cooperazione Trasmettitore- Ricevitore Università degli studi di Salerno Laurea in Informatica I semestre 03/04 Codifica dei Dati Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ 2 Perché Codificare i

Dettagli

Protocolli di accesso multiplo

Protocolli di accesso multiplo Protocolli di accesso multiplo Quando l accesso ad una risorsa può avvenire da parte di più utenti indipendenti, si parla di risorsa condivisa ed è necessaria l implementazione di particolari protocolli

Dettagli

LTE Long Term Evolution Late To Evolve

LTE Long Term Evolution Late To Evolve LTE Long Term Evolution Late To Evolve 0 Overview della tecnologia 1 Driver del 4G: la domanda di banda del mobile 2 LTE (3GPP Rel.8): ingredienti tecnologici del 4G Architettura Evoluta (E-UTRAN) di tipo

Dettagli

SISTEMI DI TELECOMUNICAZIONI

SISTEMI DI TELECOMUNICAZIONI SISTEMI DI TELECOMUNICAZIONI MODI DI TRASFERIMENTO SERVIZI DI TRASFERIMENTO DELL INFORMAZIONE L informazione da trasferire si ipotizza strutturata in IU Costituita da b bit Da consegnare in t secondi Se

Dettagli

Reti di Telecomunicazioni Studio delle prestazioni

Reti di Telecomunicazioni Studio delle prestazioni Reti di Telecomunicazioni Studio delle prestazioni Le reti locali si differenziano da quelle geografiche e dai sistemi multiprocessore dalla velocità di trasmissione (data rate) R usata e dalla distanza

Dettagli

D SISTEMI, COPERTURE, PIANIFICAZIONE

D SISTEMI, COPERTURE, PIANIFICAZIONE D SISTEMI, COPERTURE, PIANIFICAZIONE Tecniche di trasmissione spread-spectrum Sistemi radiomobili cellulari Coperture cellulari in sistemi a canali limitati, geometria, cluster, settorizzazione Tecniche

Dettagli

Programmazione in Rete

Programmazione in Rete Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 102 Sommario della

Dettagli

GSM - GSM - parte IV

GSM - GSM - parte IV GSM - parte IV Argomenti della lezione Il livello fisico dell interfaccia radio (Um) Frequenze assegnate al GSM (Europa) GSM primario downlink GSM primario uplink GSM esteso downlink GSM esteso uplink

Dettagli

Introduzione al Corso di Reti di Telecomunicazioni pag. 1. Network Organization pag. 1 2. NETWORK ORGANIZATION pag. 2

Introduzione al Corso di Reti di Telecomunicazioni pag. 1. Network Organization pag. 1 2. NETWORK ORGANIZATION pag. 2 RETI DI TELECOMUNICAZIONI INDICE CAPIITOLO 1 Introduzione al Corso di Reti di Telecomunicazioni pag. 1 Presentazione del corso di Reti di Telecomunicazioni pag. 2 Argomenti trattati nel corso di Reti di

Dettagli

SIMULATORI PER RETI AD HOC

SIMULATORI PER RETI AD HOC SIMULATORI PER RETI AD HOC Ing. Alessandro Leonardi Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università degli Studi di Catania Modelli di simulazione per Reti Ad Hoc Le reti Ad-Hoc

Dettagli

CAPITOLO 3 EVOLUZIONE DEI SISTEMI CELLULARI DAL TACS ALL UMTS

CAPITOLO 3 EVOLUZIONE DEI SISTEMI CELLULARI DAL TACS ALL UMTS CAPITOLO 3 EVOLUZIONE DEI SISTEMI CELLULARI DAL TACS ALL UMTS 3.1 EVOLUZIONE DEI SISTEMI CELLULARI Nel campo della comunicazione wireless si individuano successive generazioni di sistemi che si distinguono

Dettagli

Corso di Fondamenti di Telecomunicazioni

Corso di Fondamenti di Telecomunicazioni Corso di Fondamenti di Telecomunicazioni 1 - INTRODUZIONE Prof. Mario Barbera 1 Argomenti della lezione Cenni storici Definizioni: Sorgente di informazione Sistema di comunicazione Segnali trasmissivi

Dettagli

Sistemi di Telecomunicazione

Sistemi di Telecomunicazione Sistemi di Telecomunicazione Tecniche di Accesso Multiplo e Concetti di Planning Radiomobile Universita Politecnica delle Marche A.A. 2014-2015 A.A. 2014-2015 Sistemi di Telecomunicazione 1/42 Tecniche

Dettagli

DIRECT SEQUENCE CDMA... 2 1 DESCRIZIONE DELLA TECNICA DI SPREADING A SEQUENZA DIRETTA... 2 2 PROPRIETÀ DELLE SEQUENZE DI CODICE PN...

DIRECT SEQUENCE CDMA... 2 1 DESCRIZIONE DELLA TECNICA DI SPREADING A SEQUENZA DIRETTA... 2 2 PROPRIETÀ DELLE SEQUENZE DI CODICE PN... DRCT SQUNC CDMA... 2 DSCRZON DLLA TCNCA D SPRADNG A SQUNZA DRTTA... 2 2 PROPRTÀ DLL SQUNZ D CODC PN... 4 L CONTROLLO D POTNZA LA CAPACTÀ D UNA RT CLLULAR CDMA... 5 L CONTROLLO D POTNZA... 5 2 LA CAPACTÀ

Dettagli

LABORATORIO DI RETI. 02 La Multiplazione Statistica nelle Reti a Paccchetto

LABORATORIO DI RETI. 02 La Multiplazione Statistica nelle Reti a Paccchetto LABORATORIO DI RETI 02 La Multiplazione Statistica nelle Reti a Paccchetto La multiplazione La capacità dei mezzi trasmissivi fisici può essere suddivisa per ottenere più canali di velocità più bassa La

Dettagli

802.11: modulazioni a confronto

802.11: modulazioni a confronto 802.11: modulazioni a confronto Normando Marcolongo 20 dicembre 2003 Tivoli 1 Obiettivi dell intervento Cenni sulle tecniche di Spread Spectrum Quali modulazioni vengono impiegate nello strato fisico dei

Dettagli

I protocolli wireless della famiglia IEEE 802

I protocolli wireless della famiglia IEEE 802 I protocolli wireless della famiglia IEEE 802 Davide Quaglia Reti di Calcolatori - Ethernet e 802.X 1 Problemi delle wireless LAN Interferenza e caduta di potenza del segnale Alta probabilità che il frame

Dettagli

Orthogonal Frequency-Division Multiplexing

Orthogonal Frequency-Division Multiplexing Università degli Studi di Firenze Dipartimento di Elettronica e Telecomunicazioni Firenze, 20 Gennaio 2005 Corso di Sistemi Wireless in Area Locale Orthogonal Frequency-Division Multiplexing Un approccio

Dettagli

01CXGBN Trasmissione numerica. parte 1: Introduzione ai sistemi di trasmissione numerica. Grandezze fondamentali.

01CXGBN Trasmissione numerica. parte 1: Introduzione ai sistemi di trasmissione numerica. Grandezze fondamentali. 01CXGBN Trasmissione numerica parte 1: Introduzione ai sistemi di trasmissione numerica. Grandezze fondamentali. 1 TRASMISSIONE NUMERICA Trasmissione da un utente TX a un utente RX di informazione discreta

Dettagli

Tab. 1. Gamma di frequenze [GHz]

Tab. 1. Gamma di frequenze [GHz] 58 Ponti radio Per ponte radio si intende un sistema di collegamento, bidirezionale, a larga banda, che utilizza le onde elettromagnetiche per trasmettere informazioni sia analogiche sia digitali. I ponti

Dettagli

Modulazioni. Vittorio Maniezzo Università di Bologna. Comunicazione a lunga distanza

Modulazioni. Vittorio Maniezzo Università di Bologna. Comunicazione a lunga distanza Modulazioni Vittorio Maniezzo Università di Bologna Vittorio Maniezzo Università di Bologna 06 Modulazioni 1/29 Comunicazione a lunga distanza I segnali elettrici si indeboliscono quando viaggiano su un

Dettagli

LAUREA MAGISTRALE INGEGNERIA ELETTRONICA. Acquisizione e Sincronizzazione Iniziale di Codice in Sistemi 3G (UMTS)

LAUREA MAGISTRALE INGEGNERIA ELETTRONICA. Acquisizione e Sincronizzazione Iniziale di Codice in Sistemi 3G (UMTS) LAUREA MAGISTRALE INGEGNERIA ELETTRONICA Anno Accademico 2006/2007 Acquisizione e Sincronizzazione Iniziale di Codice in Sistemi 3G (UMTS) ing. Francesco Benedetto (fbenedet@uniroma3.it) Digital Signal

Dettagli

Esercizi Multiplazione TDM Accesso Multiplo TDMA

Esercizi Multiplazione TDM Accesso Multiplo TDMA Esercizi Multiplazione TDM Accesso Multiplo TDMA Esercizio 1 Un sistema di multiplazione TDM presenta una trama di 10 slot e in ciascuno slot vengono trasmessi 128 bit. Se il sistema è usato per multiplare

Dettagli

Dipendenza delle misure di segnali GSM dai parametri di impostazione dell analizzatore di spettro digitale

Dipendenza delle misure di segnali GSM dai parametri di impostazione dell analizzatore di spettro digitale Dipendenza delle misure di segnali GSM dai parametri di impostazione dell analizzatore di spettro digitale Barellini A. 1,Bogi L. 2, Licitra G. 3, Silvi A.M. 2 1 ARPA Toscana Dip. Prov.le Pisa via V.Veneto,

Dettagli

GPRS: General Packet Radio Service

GPRS: General Packet Radio Service GPRS: General Packet Radio Service Sommario Introduzione Architettura di rete Tecnologia radio Procedure Introduzione Introduzione Internet: trasmissione dati rappresenta una grossa parte del traffico

Dettagli

Sistemi di Telecomunicazione

Sistemi di Telecomunicazione Sistemi di Telecomunicazione Parte 7: Propagazione Radio Universita Politecnica delle Marche A.A. 2013-2014 A.A. 2013-2014 Sistemi di Telecomunicazione 1/36 Trasmissione radio dell informazione Ci occuperemo

Dettagli

UNIVERSITÀ DEGLI STUDI DI TRIESTE FACOLTÀ DI INGEGNERIA. Tesi di Laurea in TRASMISSIONE NUMERICA

UNIVERSITÀ DEGLI STUDI DI TRIESTE FACOLTÀ DI INGEGNERIA. Tesi di Laurea in TRASMISSIONE NUMERICA UNIVERSITÀ DEGLI STUDI DI TRIESTE FACOLTÀ DI INGEGNERIA Dipartimento di Ingegneria Industriale e dell Informazione Tesi di Laurea in TRASMISSIONE NUMERICA Laureando: Serge TcheguemTango Relatore: Chiar.mo

Dettagli

Fondamenti teorici dello SS

Fondamenti teorici dello SS Tecniche a spettro espanso Un sistema a spettro espanso è realizzato sulla base di tecniche per cui il segnale trasmesso ha un occupazione spettrale maggiore (10 3 10 6 ) di quella che avrebbe il convenzionale

Dettagli

WLAN 802.11. Local Area Network (LAN)

WLAN 802.11. Local Area Network (LAN) WLAN 802.11 1 Local Area Network (LAN) Ethernet Server Hub Internet 2 1 Wireless Local Area Network (WLAN) Ethernet Server Access Point Internet 3 Perchè le Wireless LAN Riduzione costi di manutenzione

Dettagli

Modulazione DMT* (Discrete Multitone Modulation) sulla banda ADSL (up to 1104 KHz)

Modulazione DMT* (Discrete Multitone Modulation) sulla banda ADSL (up to 1104 KHz) LA MODULAZIONE DMT Modulazione DMT* (Discrete Multitone Modulation) sulla banda (up to 1104 KHz) Consente di suddividere la banda di trasmissione in un determinato numero di sottobande (BINS) a ciascuna

Dettagli

Reti di Telecomunicazione

Reti di Telecomunicazione Università di ergamo Dipartimento di Ingegneria dell Informazione e Metodi Matematici Reti di Telecomunicazione Prof. Fabio Martignon Università di ergamo Dipartimento di Ingegneria dell Informazione e

Dettagli

TECNICHE DI TRASMISSIONE- DATI DIGITALE BASATE SUL CONCETTO DI SPREAD SPECTRUM

TECNICHE DI TRASMISSIONE- DATI DIGITALE BASATE SUL CONCETTO DI SPREAD SPECTRUM Corso di Tecniche e Sistemi di Trasmissione Fissi e Mobili TECNICHE DI TRASMISSIONE- DATI DIGITALE BASATE SUL CONCETTO DI SPREAD SPECTRUM Prima Parte: Generalità Prof. Carlo Regazzoni RIFERIMENTI BIBLIOGRAFICI

Dettagli

Reg. No: 8167-A UNI EN ISO 9001:2008. Versione 1v0

Reg. No: 8167-A UNI EN ISO 9001:2008. Versione 1v0 Reg. No: 8167-A UNI EN ISO 9001:2008 Ricevitore Soft diversity Versione 1v0 Sede legale e operativa: Via Ponte Nuovo 8-20128 Milano MI Email: radio.activity@fastwebnet.it Tel. 0236 514 205 Fax 0236 514

Dettagli

R. Cusani, F. Cuomo: Telecomunicazioni Strato Fisico: Campionamento e Multiplexing, Marzo 2010

R. Cusani, F. Cuomo: Telecomunicazioni Strato Fisico: Campionamento e Multiplexing, Marzo 2010 1 8: Strato fisico: campionamento, multiplexing FDM e TDM Dati analogici, segnali numerici 2 Per poter trasmettere un dato analogico con una trasmissione digitale è necessario trasformare il dato analogico

Dettagli

Wireless LAN IEEE 802.11

Wireless LAN IEEE 802.11 Reti non cablate Wireless LAN IEEE 802.11 Eliminazione del cablaggio Riduzione costi infrastrutturali Reti temporanee Mario Baldi Politecnico di Torino mario.baldi@polito.it staff.polito.it/mario.baldi

Dettagli

Per essere inviato il dato deve essere opportunamente codificato in modo da poter essere trasformato in SEGNALE, elettrico oppure onda luminosa.

Per essere inviato il dato deve essere opportunamente codificato in modo da poter essere trasformato in SEGNALE, elettrico oppure onda luminosa. La trasmissione dell informazione N.R2 La comunicazione tra due calcolatori si realizza tramite lo scambio di dati su un canale di comunicazione, esiste quindi un TRASMETTITORE che invia dei dati e un

Dettagli

Modulo TLC:TRASMISSIONI Accesso multiplo

Modulo TLC:TRASMISSIONI Accesso multiplo 1 11.. Accesso A multiplo 2 Modalità di trasmissione (1/3) Ad una via (unidirezionale): dalla sorgente S verso la destinazione S A due vie (bidirezionale): tra 2 terminali T1, T2 T1 T2 3 Modalità di di

Dettagli

Introduzione: scelta della tecnica di accesso multiplo

Introduzione: scelta della tecnica di accesso multiplo Sistema UMTS Tecnica di accesso W-CDMA Introduzione: scelta della tecnica di accesso multiplo... 1 Concetti generali sul CDMA... 3 L operazione di spreading... 6 Parametri caratteristici dell operazione

Dettagli

Standard delle reti wireless

Standard delle reti wireless Standard delle reti wireless Pubblicati dalla IEEE, 802 LAN-MAN standards committee. ISO OSI 7-layer model Application Presentation Session Transport Network Data Link Physical IEEE 802 standards Logical

Dettagli

Università degli studi di Napoli Federico II - Facoltà d Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni

Università degli studi di Napoli Federico II - Facoltà d Ingegneria Corso di Laurea in Ingegneria delle Telecomunicazioni Questo è lo spettro di un segnale FM a 50 MHz. La fm è 10kHz, di conseguenza fp=2,4x10khz =24kHz Siccome si può settare con precisione la frequenza modulata usando un analizzatore di spettro e siccome

Dettagli

Svantaggi della Commutazione di Circuito. Commutazione di Pacchetto. Struttura di un Pacchetto

Svantaggi della Commutazione di Circuito. Commutazione di Pacchetto. Struttura di un Pacchetto Università degli studi di Salerno Laurea in Informatica I semestre / Commutazione di Pacchetto Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Svantaggi della Commutazione

Dettagli

Le reti radio cellulari

Le reti radio cellulari Le reti radio cellulari Giacomo Bacci, Luca Giugno, Marco Luise In questo documento sono presentate le principali caratteristiche dei sistemi di radiocomunicazione con mezzi mobili (in breve, sistemi radiomobile),

Dettagli

RETI CELLULARI. La copertura cellulare. Copyright. Definizioni. La copertura cellulare teorica. La copertura cellulare teorica

RETI CELLULARI. La copertura cellulare. Copyright. Definizioni. La copertura cellulare teorica. La copertura cellulare teorica Copyright RETI CELLULARI Principi generali (T.S. Rappaport, Wireless Communications: Principles and Practice, Prentice Hall, 1996) Quest opera è protetta dalla licenza Creative Commons NoDerivs-NonCommercial.

Dettagli

Sottolivello MAC - Medium Access Protocol

Sottolivello MAC - Medium Access Protocol Sottolivello MAC - Medium Access Protocol Sottolivello del data link Regola l accesso al mezzo per reti broadcast LAN e WAN satellitari allocazione statica - a priori allocazione dinamica - in base allo

Dettagli

Dispense per il Corso di Reti di Telecomunicazioni. Ing. Giovanni Giambene

Dispense per il Corso di Reti di Telecomunicazioni. Ing. Giovanni Giambene Dispense per il Corso di Reti di Telecomunicazioni Ing. Giovanni Giambene Indice Capitolo 1: Introduzione alle reti di telecomunicazione... 1 1.1 Caratteristiche generali dei segnali e dei sistemi di telecomunicazione...

Dettagli

Programmazione in Rete

Programmazione in Rete Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 Sommario della

Dettagli

5 Architettura protocollare

5 Architettura protocollare 5 Architettura protocollare L architettura protocollare del GPRS è basata sul principio della stratificazione dei protocolli, in accordo col modello ISO/OSI; lo standard GPRS distingue due tipi di piani

Dettagli

Reti di Calcolatori:

Reti di Calcolatori: Reti di Calcolatori: Internet, Intranet e Mobile Computing a.a. 2007/2008 http://www.di.uniba.it/~lisi/courses/reti/reti0708.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì

Dettagli

Glossario Wireless Network

Glossario Wireless Network Glossario Wireless Network 802.11 Lo standard IEEE per la connettivita wireless a 1 o 2 Mbps nella banda 2.4 GHz 802.11 a Lo standard IEEE per la connettivita wireless a 54 Mbps nella banda 5 GHz 802.11

Dettagli

Dispensa del Corso Comunicazioni Wireless

Dispensa del Corso Comunicazioni Wireless UNIVERSITÀ DEGLI STUDI DI UDINE DIPARTIMENTO DI INGEGNERIA ELETTRICA, GESTIONALE E MECCANICA UNIVERSITÀ DEGLI STUDI DI UDINE DIPARTIMENTO DI INGEGNERIA ELETTRICA, GESTIONALE E MECCANICA Dispensa del Corso

Dettagli

Comunicazioni Radiomobili

Comunicazioni Radiomobili Università degli Studi di Siena Facoltà di Ingegneria Dipartimento di Ingegneria dell Informazione Comunicazioni Radiomobili Autore Abrardo Andrea Anno Accademico 2001/2002 Indice 1 Propagazione in ambiente

Dettagli

Modelli di Propagazione in Ambiente Urbano

Modelli di Propagazione in Ambiente Urbano Modelli di Propagazione in Ambiente Urbano 1 Valeria Petrini, Ph.D. Student DEIS/ARCES - Fondazione Ugo Bordoni valeria.petrini@unibo.it Modelli di Previsione (1) I moderni sistemi di telecomunicazione

Dettagli

Spostamento = Velocità utente Frequenza della portante Velocità della luce

Spostamento = Velocità utente Frequenza della portante Velocità della luce 1 Spostamento = Velocità utente Frequenza della portante Velocità della luce 2 3 4 5 6 7 WiMAX : Worldwide Interoperability for Microwave Access Consorzio no-profit di aziende creato per promuovere e certificare

Dettagli

Modulo 8 Ethernet Switching

Modulo 8 Ethernet Switching Modulo 8 Ethernet Switching 8.1 Ethernet Switching 8.1.1 Bridging a livello 2 Aumentando il numero di nodi su un singolo segmento aumenta la probabilità di avere collisioni e quindi ritrasmissioni. Una

Dettagli

A.1 Rappresentazione geometrica dei segnali

A.1 Rappresentazione geometrica dei segnali Appendice A Rappresentazione dei segnali A.1 Rappresentazione geometrica dei segnali Scomporre una generica forma d onda s(t) in somma di opportune funzioni base è operazione assai comune, particolarmente

Dettagli

GSM/GPRS/UMTS/HSDPA: evoluzione delle tecnologie e nuovi scenari applicativi

GSM/GPRS/UMTS/HSDPA: evoluzione delle tecnologie e nuovi scenari applicativi www.telit.com GSM/GPRS/UMTS/HSDPA: evoluzione delle tecnologie e nuovi scenari applicativi Sergio Sciarmella I sistemi di telecomunicazione e le reti wireless in particolare sono cambiate in modo radicale

Dettagli

COMUNICAZIONI ELETTRICHE + TRASMISSIONE NUMERICA COMPITO 13/7/2005

COMUNICAZIONI ELETTRICHE + TRASMISSIONE NUMERICA COMPITO 13/7/2005 COMUNICAZIONI ELETTRICHE + TRASMISSIONE NUMERICA COMPITO 13/7/005 1. Gli esercizi devono essere risolti su fogli separati: uno per la prima parte del compito (esercizi 1/4), uno per la seconda parte (esercizi

Dettagli

Algoritmo Nazionale per il GSM

Algoritmo Nazionale per il GSM Algoritmo Nazionale per il GSM Storia (1) Esistono numerosi metodi per la pianificazione e la copertura dei sistemi di telefonia cellulare. Ogni operatore sceglie quello che ritiene più opportuno anche

Dettagli

GSM Global System for Mobile communications. Architettura di rete

GSM Global System for Mobile communications. Architettura di rete GSM Global System for Mobile communications Architettura di rete Architettura GSM (1/2) MS SIM MS: Mobile Station SIM: Subscriber Identity Module ME: Mobile Equipment BSS OMC OSS NMC NSS OSS: Operation

Dettagli

Direct Sequence o Frequency Hopping

Direct Sequence o Frequency Hopping Direct Sequence o Frequency Hopping Questo documento vuole essere un punto di riferimento per aiutare quanti si avvicinano per la prima volta alla tecnologia delle wireless Fidelity LAN Wi-Fi. Un confronto

Dettagli

Wireless LAN. Scritto da BigDaD

Wireless LAN. Scritto da BigDaD Una Wireless local area network, WLAN, è un sistema di comunicazione flessibile e implementabile nella sua estensione, o alternativo, ad una rete fissa (wired LAN). In una W-LAN viene utilizzata una tecnologia

Dettagli

2. SINCRONIZZAZIONE (CENNI)

2. SINCRONIZZAZIONE (CENNI) 2. SINCRONIZZAZIONE (CENNI) INTRODUZIONE AL PROBLEMA DELLA SINCRONIZZAZIONE SINCRONISMO DI BIT SCRAMBLING SINCRONISMO DI FRAME INTRODUZIONE Abbiamo visto diverse tecniche in grado di convertire e di trasmettere

Dettagli

SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet )

SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) PARTE 2 SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) Parte 2 Modulo 1: Stack TCP/IP TCP/IP Protocol Stack (standard de facto) Basato su 5 livelli invece che sui 7 dello stack ISO/OSI Application

Dettagli

Introduzione alle onde Elettromagnetiche (EM)

Introduzione alle onde Elettromagnetiche (EM) Introduzione alle onde Elettromagnetiche (EM) Proprieta fondamentali L energia EM e il mezzo tramite il quale puo essere trasmessa informazione tra un oggetto ed un sensore (e.g. radar) o tra sensori/stazioni

Dettagli

Rumore Elettronico. Sorgenti di rumore in Diodi, BJTs, MOSFETs Rumore equivalente all ingresso di amplificatori Rumore nel dominio del tempo

Rumore Elettronico. Sorgenti di rumore in Diodi, BJTs, MOSFETs Rumore equivalente all ingresso di amplificatori Rumore nel dominio del tempo umore Elettronico Sorgenti di rumore in Diodi, Js, MOSFEs umore equivalente all ingresso di amplificatori umore nel dominio del tempo 1 umore della Giunzione PN: Shot Noise La corrente che fluisce attraverso

Dettagli

Parte II: Reti di calcolatori Lezione 24

Parte II: Reti di calcolatori Lezione 24 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 24 Martedì 27-05-2014 1 Una volta che una

Dettagli

3.3 - GPRS-EDGE. Architetture e Protocolli per Reti Wireless - R. Bolla 1. Università di Genova Facoltà di Ingegneria. dist. Prof.

3.3 - GPRS-EDGE. Architetture e Protocolli per Reti Wireless - R. Bolla 1. Università di Genova Facoltà di Ingegneria. dist. Prof. Università di Genova Facoltà di Ingegneria 3. Reti Radio-mobili Cellulari 3.3 GPRS-EDGE Prof. Raffaele Bolla Architetture e Protocolli per Reti Wireless dist La trasmissione dati su reti radio mobili cellulari

Dettagli

TRASMETTITORI E RICEVITORI

TRASMETTITORI E RICEVITORI Esempio: Un ricevitore ha un resistore di polarizzazione del valore di 10 kω e una capacità di giunzione del fotodiodo del valore di 4 pf. Il fotodiodo è accoppiato in continua con un amplificatore ad

Dettagli

Programmazione in Rete

Programmazione in Rete Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 Sommario della

Dettagli

Ogni stazione base viene collegata via cavo ad altri nodi della rete fissa.

Ogni stazione base viene collegata via cavo ad altri nodi della rete fissa. Reti cellulari La rete cellulare è una rete per cui la copertura geografica è realizzata con una tassellazione a celle: porzioni di area geografica che unite ricoprono perfettamente una zona. La prerogativa

Dettagli

Internet, così come ogni altra rete di calcolatori possiamo vederla suddivisa nei seguenti componenti:

Internet, così come ogni altra rete di calcolatori possiamo vederla suddivisa nei seguenti componenti: Pagina 1 di 8 Struttura di Internet ed il livello rete Indice Struttura delle reti Estremità della rete Il nucleo della rete Reti a commutazione di pacchetto e reti a commutazione di circuito Funzionalità

Dettagli

Elementi di Telelocalizzazione

Elementi di Telelocalizzazione Elementi di Telelocalizzazione Ing. Francesco Benedetto - Prof. Gaetano Giunta Laboratorio di Telecomunicazioni (COMLAB) Università degli Studi Roma Tre 1 Introduzione Proprietà della sequenza di spreading:

Dettagli

Simulazione n. 2 della seconda prova scritta di Telecomunicazioni per l Esame di Stato (a cura del prof. Onelio Bertazioli)

Simulazione n. 2 della seconda prova scritta di Telecomunicazioni per l Esame di Stato (a cura del prof. Onelio Bertazioli) Simulazione n. 2 della seconda prova scritta di Telecomunicazioni per l Esame di Stato (a cura del prof. Onelio Bertazioli) Lo sviluppo delle applicazioni Internet ha posto il problema della velocità nella

Dettagli

Compressione del Segnale (Audio)

Compressione del Segnale (Audio) Compressione del Segnale (Audio) Carlo Caini e Alessandro Vanelli Coralli Argomenti della Presentazione Introduzione Perché comprimere Come comprimere Esempi di Algoritmi di compressione Codifiche predittive

Dettagli

WiFi: Connessione senza fili. di Andreas Zoeschg

WiFi: Connessione senza fili. di Andreas Zoeschg WiFi: Connessione senza fili di Andreas Zoeschg Introduzione Le tecnologie wireless risultano particolarmente adatte qualora sia necessario supportare la mobilità dei dispositivi utenti o per il deployment

Dettagli

Prefazione all edizione italiana

Prefazione all edizione italiana Sommario Prefazione all edizione italiana XIII Capitolo 1 Introduzione 1.1 Applicazioni delle reti di calcolatori 2 1.1.1 Applicazioni aziendali 3 1.1.2 Applicazioni domestiche 5 1.1.3 Utenti mobili 8

Dettagli

Reti di calcolatori. Riferimenti: Curtin cap. 9 Console cap. 6 (vecchia ed.) o cap. 8 (nuova ed.)

Reti di calcolatori. Riferimenti: Curtin cap. 9 Console cap. 6 (vecchia ed.) o cap. 8 (nuova ed.) Reti di calcolatori Riferimenti: Curtin cap. 9 Console cap. 6 (vecchia ed.) o cap. 8 (nuova ed.) Reti di calcolatori Inizialmente, con l avvento dei PC, il mondo dell elaborazione dati era diviso in due

Dettagli

TEORIA DEI SEGNALI. Introduzione. La Comunicazione

TEORIA DEI SEGNALI. Introduzione. La Comunicazione TEORIA DEI SEGNALI Introduzione L obiettivo principale di un servizio di telecomunicazione è il trasferimento dell'informazione emessa da una sorgente agli utenti cui è destinata, nell'ambito di una particolare

Dettagli

CARATTERISTICHE COMUNI A ETACS E GSM

CARATTERISTICHE COMUNI A ETACS E GSM Page 1 of 10 CENNI STORICI Il primo sistema telefonico radiomobile della storia nacque negli USA nel 1964 e funzionava nella gamma di frequenza dei 160/450 MHz con soli 23 canali bidirezionali. Nel nostro

Dettagli

LO STANDARD IEEE 802.11

LO STANDARD IEEE 802.11 LO STANDARD IEEE 802.11 1.. i terminali sono in continua evoluzione. 2 1 Esempi 3 Standard Comitato IEEE, Giugno 1997: Standard 802.11 4 2 IEEE 802 5 IEEE 802.11 Livello fisico: due metodi di utilizzo

Dettagli

SISTEMI DI TELECOMUNICAZIONI

SISTEMI DI TELECOMUNICAZIONI SISTEMI DI TELECOMUNICAZIONI RETI TELEFONICHE Generalità Nessuna dipendenza dall estensione della rete Copertura locale Interconnessione a lunga distanza Trasporto della voce a commutazione di circuito

Dettagli

CLASSIFICAZIONE DELLE RETI

CLASSIFICAZIONE DELLE RETI CLASSIFICAZIONE DELLE RETI A seconda dei ruoli dei computer le reti si classificano in: Reti Client Server in cui sono presenti computer con ruoli diversi, alcuni funzionano da client e uno o più da server

Dettagli

Il collegamento delle reti aziendali: DHCP, DSL, PPPoE

Il collegamento delle reti aziendali: DHCP, DSL, PPPoE Il collegamento delle reti aziendali: DHCP, DSL, PPPoE Contenuti del corso La progettazione delle reti Il routing nelle reti IP Il collegamento agli Internet Service Provider e problematiche di sicurezza

Dettagli

Le funzioni di una rete (parte 1)

Le funzioni di una rete (parte 1) Marco Listanti Le funzioni di una rete (parte 1) Copertura cellulare e funzioni i di base di una rete mobile Strategia cellulare Lo sviluppo delle comunicazioni mobili è stato per lungo tempo frenato da

Dettagli

Metodi di realizzazione di una stazione radio base compatibile con i limiti di esposizione Vallone Laura

Metodi di realizzazione di una stazione radio base compatibile con i limiti di esposizione Vallone Laura Metodi di realizzazione di una stazione radio base compatibile con i limiti di esposizione Vallone Laura 01/06/2007 dei Campi Elettromagnetici 1 Normativa tecnica di riferimento Guida CEI 211-10: Guida

Dettagli

COLLEGAMENTI IN PONTE RADIO

COLLEGAMENTI IN PONTE RADIO COLLEGAMENTI IN PONTE RADIO Il ponte radio è un sistema di radiocomunicazione punto-punto che impiega frequenze nel campo delle microonde, in grado di convogliare informazioni telefoniche, televisive e

Dettagli

INTEGRAZIONE ED ESPANSIONE DEL SISTEMA DI VIDEOSORVEGLIANZA DEL COMUNE DI CASTELLAMMARE DI STABIA TITOLO ELABORATO: MODULO ISOLE WI-FI HOT SPOT

INTEGRAZIONE ED ESPANSIONE DEL SISTEMA DI VIDEOSORVEGLIANZA DEL COMUNE DI CASTELLAMMARE DI STABIA TITOLO ELABORATO: MODULO ISOLE WI-FI HOT SPOT INTEGRAZIONE ED ESPANSIONE DEL SISTEMA DI VIDEOSORVEGLIANZA DEL COMUNE DI CASTELLAMMARE DI STABIA TITOLO ELABORATO: MODULO ISOLE WI-FI HOT SPOT INDICE 1. PREMESSA 4 2. ARCHITETTURA RETI MESH 5 3. DISPOSITIVI

Dettagli