networking/005-wireless-frame.md
2025-04-27 12:40:16 +02:00

74 lines
6.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Architettura wireless
L'architettura wireless è dominata dallo standard `IEEE 802.11`, che consente la comunicazione senza fili tra dispositivi. In un contesto di rete locale (LAN), è comune che una componente cablata venga estesa attraverso l'uso di `Access Point` (AP), permettendo così ai dispositivi di connettersi in modalità wireless. Le informazioni vengono trasmesse tramite onde radio, consentendo una maggiore flessibilità e mobilità.
Esistono due principali tipologie di infrastruttura wireless:
- `Ad Hoc (IBSS - Independent Basic Service Set)`: questa configurazione consiste in un insieme di dispositivi opportunamente configurati per comunicare direttamente tra loro tramite le loro schede wireless. Si tratta di una rete peer-to-peer, in cui ogni nodo funge sia da server che da client, permettendo una comunicazione diretta senza la necessità di un punto di accesso centrale.
- `Wireless LAN con Infrastruttura`: in questo modello, l'Access Point funge da punto di coordinamento centrale. L'AP consente la comunicazione tra più dispositivi wireless, noti anche come stazioni o terminali wireless.
![Architettura Wireless](/asset/img/wireless%20architecture.png)
## Concetti chiave
- Il `BSS` (Basic Service Set) rappresenta il gruppo di dispositivi che comunicano tra loro all'interno di una rete wireless.Ogni BSS è identificato da un `BSSID` (Basic Service Set Identifier), che è l'indirizzo MAC dell'Access Point nel caso di un BSS con infrastruttura, o l'indirizzo MAC di uno dei dispositivi nel caso di un BSS Ad Hoc.
- `SSID` (Service Set Identifier): è un identificativo logico della rete, facile da ricordare, che consente agli utenti di riconoscere e connettersi alla rete wireless desiderata.
- `ESSID` (Extended Service Set Identifier) è un'estensione del SSID, utilizzata per identificare reti wireless più ampie che possono includere più Access Point, garantendo una connessione continua e senza interruzioni per gli utenti in movimento.
- `Roaming`: è una funzionalità fondamentale delle reti wireless che consente ai dispositivi di spostarsi automaticamente da un Access Point (AP) a un altro senza interruzioni nella connessione. Quando un dispositivo wireless si allontana dall'AP a cui è attualmente connesso e entra nella copertura di un altro AP, il processo di roaming avviene in modo fluido e automatico. Questo implica la deautenticazione dal primo AP e l'autenticazione sul secondo AP, garantendo così una continuità del servizio.
- `DS` (Distributed System): consente la comunicazione tra dispositivi, sia wireless che cablati, al di fuori del singolo Basic Service Set (BSS). In un sistema distribuito, gli Access Point possono comunicare tra loro e con altri dispositivi (anche non wireless), consentendo una rete più ampia e complessa.
Gli *Access Point* svolgono un ruolo cruciale nella traduzione dei frame di rete. Sono in grado di convertire gli header degli ethernet frame in wireless frame e viceversa. Questo processo di traduzione è fondamentale per garantire che i dati possano essere trasmessi correttamente tra dispositivi cablati e wireless.
## Anatomia del wireless frame
![wireless-frame](/asset/img/wireless-frame.png)
- Frame control: due byte e una marea di sottocampi, come il campo version, che indica la versione dello stnadard 802.11 utilizzato per il frame.
- Type e Subtype: indicano il tipo e il sottotipo del frame. Esistono 3 tipi di frame
- Gestione (type 00): usato per le comunicazioni iniziali tra AP e dispositivi wireless
- Controllo (type 01): si divide in
- Frame RTS, request to send (subtype 1011)
- Frame CTS, clear to send (subtype 1100)
- Frame ACK (subtype 1101)
- Dati: trasporta i dati effettivi (type 02)
- Data: payload incapsulato dal network layer
- FCS (Frame Check Sequence): il trailer termina il frame con un campo di 4 byte, il cui scopo è la verifica dellintegrità dei dati trasmessi.
- Sequence COntrol: contiene due sottocampi
- Framgment number: indica il numero di frammento del frame corrente. Quando il pacchetto di dati e' troppo grande per essere trasmesso, avviene la frammentazione e ogni frammento e' identificato dal fragment number. Utilizzato dal destinatario per riscostruire il pacchetto originario
- Sequence number: indica il numero di seruqenza del frame corrente. Serve per fare in modo che il frame venga trasmesso e ricevuto nell'ordine corretto.
## Anatomia del Wireless Frame
![Wireless Frame](/asset/img/wireless-frame.png)
É composto da diversi campi, ognuno con funzioni specifiche. Di seguito sono descritti i principali componenti di un wireless frame:
### Frame Control
Il campo `Frame Control` occupa due byte e contiene numerosi sottocampi, tra cui:
- **Version**: indica la versione dello standard IEEE 802.11 utilizzato per il frame
- **Type e Subtype**: questi campi specificano il tipo e il sottotipo del frame. Esistono tre categorie principali di frame:
- **Gestione** (Type 00): Utilizzato per le comunicazioni iniziali tra l'Access Point (AP) e i dispositivi wireless
- **Controllo** (Type 01): Questo tipo si suddivide ulteriormente in:
- **Frame RTS** (Request to Send): Sottotipo 1011,
- **Frame CTS** (Clear to Send): Sottotipo 1100
- **Frame ACK** (Acknowledgment): Sottotipo 1101
- **Dati** (Type 02): Questo tipo di frame trasporta i dati effettivi
### Sequence Control
Contiene due sottocampi:
- `Fragment Number`: indica il numero di frammento del frame corrente. Quando un pacchetto di dati è troppo grande per essere trasmesso in un'unica volta, viene frammentato, e ogni frammento è identificato dal suo numero. Questo è essenziale per il destinatario, che utilizza il fragment number per ricostruire il pacchetto originale.
- `Sequence Number`: indica il numero di sequenza del frame corrente. Questo campo è fondamentale per garantire che i frame vengano trasmessi e ricevuti nell'ordine corretto.
### Data
Il campo **Data** rappresenta il payload incapsulato dal livello di rete.
### Trailer
**FCS** (Frame Check Sequence): il trailer termina il frame con un campo di 4 byte, il cui scopo è la verifica dellintegrità dei dati trasmessi.