5.7. Aggregation Packets (Pacchetti di aggregazione)
5.7. Aggregation Packets (Pacchetti di aggregazione)
I pacchetti di aggregazione sono lo schema di aggregazione delle NAL unit di questa specifica di payload. Lo schema è introdotto per riflettere le dimensioni MTU fortemente diverse di due reti di destinazione chiave: reti IP cablate (con dimensione MTU spesso limitata dalla MTU Ethernet, circa 1500 byte) e sistemi di comunicazione wireless basati su IP o non basati su IP (ad es. ITU-T H.324/M) con dimensioni preferite dell'unità di trasmissione di 254 byte o meno. Per evitare la transcodifica dei media tra i due mondi e overhead di pacchettizzazione indesiderati, si introduce uno schema di aggregazione delle NAL unit.
Questa specifica definisce due tipi di pacchetti di aggregazione:
- Single-time aggregation packet (STAP): aggrega NAL unit con NALU-time identici. Sono definiti due tipi di STAP, uno senza DON (STAP-A) e l'altro che include DON (STAP-B).
- Multi-time aggregation packet (MTAP): aggrega NAL unit con NALU-time potenzialmente diversi. Sono definiti due MTAP diversi, che differiscono per la lunghezza dell'offset del timestamp della NAL unit.
Ogni NAL unit da trasportare in un pacchetto di aggregazione è incapsulata in un'unità di aggregazione. Di seguito le quattro diverse unità di aggregazione e le loro caratteristiche.
La struttura del formato del payload RTP per i pacchetti di aggregazione è presentata in Figura 3.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|F|NRI| Type | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| |
| one or more aggregation units |
| |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| :...OPTIONAL RTP padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figura 3. Formato del payload RTP per pacchetti di aggregazione
Gli MTAP e gli STAP condividono le seguenti regole di pacchettizzazione:
- Il timestamp RTP DEVE essere impostato al più anticipato tra i NALU-time di tutte le NAL unit da aggregare.
- Il campo type dell'ottetto di tipo di NAL unit DEVE essere impostato al valore appropriato, come indicato nella Tabella 4.
- Il bit F DEVE essere azzerato se tutti i bit F delle NAL unit aggregate sono zero; altrimenti DEVE essere impostato.
- Il valore di NRI DEVE essere il massimo di tutte le NAL unit trasportate nel pacchetto di aggregazione.
Tabella 4. Campo type per STAP e MTAP
| Type | Packet | Timestamp offset field length (in bits) | DON-related fields (DON, DONB, DOND) present |
|---|---|---|---|
| 24 | STAP-A | 0 | no |
| 25 | STAP-B | 0 | yes |
| 26 | MTAP16 | 16 | yes |
| 27 | MTAP24 | 24 | yes |
Il bit marker nell'intestazione RTP è impostato al valore che avrebbe avuto il bit marker dell'ultima NAL unit del pacchetto aggregato se fosse stata trasportata nel proprio pacchetto RTP.
Il payload di un pacchetto di aggregazione consiste in una o più unità di aggregazione. Vedere le Sezioni 5.7.1 e 5.7.2 per i quattro tipi di unità di aggregazione. Un pacchetto di aggregazione può trasportare tutte le unità di aggregazione necessarie; tuttavia, la quantità totale di dati in un pacchetto di aggregazione DEVE ovviamente entrare in un pacchetto IP, e la dimensione DOVREBBE essere scelta in modo che il pacchetto IP risultante sia inferiore alla dimensione MTU. Un pacchetto di aggregazione NON DEVE contenere unità di frammentazione, come specificato nella Sezione 5.8. I pacchetti di aggregazione NON DEVONO essere annidati; cioè, un pacchetto di aggregazione NON DEVE contenere un altro pacchetto di aggregazione.