Passa al contenuto principale

4.3. Compressione dell'intestazione UDP

Le intestazioni UDP possono essere codificate utilizzando il formato LOWPAN_NHC. Il formato supporta la compressione delle porte sorgente e destinazione e del checksum UDP.

4.3.1. Compressione delle porte UDP

Le porte UDP possono essere compresse se rientrano nell'intervallo da 61616 (0xF0B0) a 61631 (0xF0BF). Questo intervallo viene compresso a 4 bit sottraendo 0xF0B0 dal numero di porta a 16 bit. Le porte possono anche essere compresse se rientrano nell'intervallo da 61440 (0xF000) a 61695 (0xF0FF). Questo intervallo viene compresso a 8 bit sottraendo 0xF000 dal numero di porta a 16 bit.

4.3.2. Compressione del checksum UDP

Il checksum UDP PUÒ (MAY) essere omesso se è presente un meccanismo di controllo dell'integrità del livello superiore (ad es. MIC) che protegge l'integrità dell'intestazione UDP e del carico utile, o se il livello di collegamento (Link Layer) fornisce una protezione dell'integrità sufficiente.

4.3.3. Formato UDP LOWPAN_NHC

    0   1   2   3   4   5   6   7
+---+---+---+---+---+---+---+---+
| 1 | 1 | 1 | 1 | 0 | C | P |
+---+---+---+---+---+---+---+---+

Figura 13: Codifica intestazione UDP

C: Checksum:

  • 0: Tutti i 16 bit del checksum UDP sono trasportati inline.
  • 1: Tutti i 16 bit del checksum UDP sono omessi. Il checksum viene recuperato dal contesto o dal livello superiore al ricevitore.

P: Ports (Porte):

  • 00: Entrambe le porte sono trasportate inline (4 ottetti).
  • 01: La porta sorgente è trasportata inline (2 ottetti). La porta destinazione è compressa (8 bit, intervallo 0xF000-0xF0FF).
  • 10: La porta sorgente è compressa (8 bit, intervallo 0xF000-0xF0FF). La porta destinazione è trasportata inline (2 ottetti).
  • 11: Entrambe le porte sono compresse (4 bit, intervallo 0xF0B0-0xF0BF).

Quando P = 01 o 10, la porta compressa a 8 bit è codificata come un intero senza segno. Quando P = 11, le porte compresse a 4 bit sono codificate come interi senza segno.