⇤ ← Revision 1 as of 2006-09-01 13:51:37
Size: 3258
Comment:
|
Size: 7505
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 20: | Line 20: |
Azonosító Adatblokk-típus | Azonosító Adatblokk-típus |
Line 47: | Line 47: |
=== Hasznos adatok === A DATA adatblokkhoz az alábbi formátumot KELL használni: {{{ 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Típus = 0 | Fenntartva|U|B|E| Hossz | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TSN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Adatfolyam-azonosító S | Adatfolyam sorozatszáma n | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Hasznos adat protokollazonosító | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / / / Felhasználói adatok (S adatfolyam n sorozat) / / / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ }}} === Inicializálás (INIT) === Ez az adatblokk két végpont közötti SCTP társítás kezdeményezésére szolgál. Az INIT adatblokk formátuma az alábbiak szerinti: {{{ 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Típus = 1 |Adatbl. flagek | Adatblokk hossza | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Inicializálási címke | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Meghirdetett vevőablak jóváhagyás (a_rwnd) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kimenő adatfolyamok száma | Bemenő adatfolyamok száma | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kezdeti TSN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / / / Opcionális/változó hosszparaméterek / / / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ }}} === Inicializálás nyugtázása (INIT ACK) === Az INIT ACK adatblokk az SCTP társítási kezdeményezések nyugtázására használatos. Az INIT ACK paraméter részének formátuma az INIT adatblokkéhoz hasonló. Két további változóparamétert használ: Az Állapot Cookie-t és a Nem felismert paramétert: {{{ 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Típus = 2 |Adatbl. flagek | Adatblokk hossza | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Inicializálási címke | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Meghirdetett vevőablak jóváhagyás | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kimenő adatfolyamok száma | Bemenő adatfolyamok száma | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kezdeti TSN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / / / Opcionális/változó hosszparaméterek / / / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ }}} |
SCTP csomagok
Az SCTP protokoll adategységeit (PDU-k) SCTP csomagoknak nevezzük. Ha az SCTP protokoll IP fölött fut (az RFC2960-ban leírtak szerint), akkor egy SCTP csomag egy IP csomag hasznos adattartalmát képezi. Az SCTP csomagok egy közös fejlécből, valamint adatblokkokból (chunk) állnak. Több adatblokk legfeljebb a Path-MTU méretig egyetlen csomagba multiplexálható. Egy adatblokk vezérlési információkat és felhasználói adatokat is tartalmazhat.
attachment:pdu60.png
Több adatblokkot tartalmazó SCTP adategység
A közös fejléc
A közös fejléc 12 bájtot tartalmaz. Az SCTP a társítás azonosításához a TCP és UDP protokollokkal megegyező porthasználatot alkalmazza. Az átviteli hibák észlelése érdekében minden SCTP csomag egy 32-bites ellenőrzőösszeggel van védve (Adler-32 algoritmus), amely robusztusabb, mint a TCP és UDP 16-bites ellenőrzőösszege. Az érvénytelen ellenőrzőösszeggel rendelkező SCTP csomagokat a rendszer csendben figyelmen kívül hagyja. A közös fejléc egy ellenőrző címke (verification tag) nevű 32-bites értéket is tartalmaz. Az ellenőrző címke társításspecifikus, és a társítás kezdetekor megtörténik a végpontok közötti cseréje. Egy társítás tehát két címkeértéket használ. A címkékkel kapcsolatos részletes információk az SCTP állapotok részben találhatók.
Adatblokkok
Minden adatblokk egy adatblokk-típus mezővel kezdődik, amely a különböző adatblokk-típusokat különbözteti meg. Ezt követi egy adatblokk-specifikus flag, majd egy adatblokk-hossz mező, amelyre a különböző hosszúságú adatblokkok miatt van szükség. Az érték mező tartalmazza az adatblokk tényleges hasznos adattartalmát. Eddig 13 adatblokk-típus van normál használathoz definiálva. Ezek az alábbiakban láthatók. Az egyszerűség kedvéért ezek definícióját az RFC2960 dokumentumból másoltuk ki:
Azonosító Adatblokk-típus ----- ---------- 0 - Hasznos adatok (DATA) 1 - Inicializálás (INIT) 2 - Inicializálás nyugtázása (INIT ACK) 3 - Szelektív nyugtázás (SACK) 4 - Heartbeat kérés (HEARTBEAT) 5 - Heartbeat nyugtázás (HEARTBEAT ACK) 6 - Megszakítás (ABORT) 7 - Leállítás (SHUTDOWN) 8 - Leállítás nyugtázása (SHUTDOWN ACK) 9 - Műveleti hiba (ERROR) 10 - Állapot cookie (COOKIE ECHO) 11 - Cookie nyugtázás (COOKIE ACK) 12 - Explicit torlódás-értesítési echo (ECNE) számára fenntartva 13 - Csökkentett torlódási ablak (CWR) számára fenntartva 14 - Leállítás befejezve (SHUTDOWN COMPLETE) 15 - 62 - IETF által fenntartva 63 - IETF által definiált adatblokk-bővítések 64 - 126 - IETF által fenntartva 127 - IETF által definiált adatblokk-bővítések 128 - 190 - IETF által fenntartva 191 - IETF által definiált adatblokk-bővítések 192 - 254 - IETF által fenntartva 255 - IETF által definiált adatblokk-bővítések
Hasznos adatok
A DATA adatblokkhoz az alábbi formátumot KELL használni:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Típus = 0 | Fenntartva|U|B|E| Hossz | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TSN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Adatfolyam-azonosító S | Adatfolyam sorozatszáma n | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Hasznos adat protokollazonosító | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / / / Felhasználói adatok (S adatfolyam n sorozat) / / / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Inicializálás (INIT)
Ez az adatblokk két végpont közötti SCTP társítás kezdeményezésére szolgál. Az INIT adatblokk formátuma az alábbiak szerinti:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Típus = 1 |Adatbl. flagek | Adatblokk hossza | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Inicializálási címke | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Meghirdetett vevőablak jóváhagyás (a_rwnd) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kimenő adatfolyamok száma | Bemenő adatfolyamok száma | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kezdeti TSN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / / / Opcionális/változó hosszparaméterek / / / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Inicializálás nyugtázása (INIT ACK)
Az INIT ACK adatblokk az SCTP társítási kezdeményezések nyugtázására használatos. Az INIT ACK paraméter részének formátuma az INIT adatblokkéhoz hasonló. Két további változóparamétert használ: Az Állapot Cookie-t és a Nem felismert paramétert:
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Típus = 2 |Adatbl. flagek | Adatblokk hossza | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Inicializálási címke | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Meghirdetett vevőablak jóváhagyás | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kimenő adatfolyamok száma | Bemenő adatfolyamok száma | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Kezdeti TSN | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / / / Opcionális/változó hosszparaméterek / / / +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+