Tento datagram je užíván především pro Morse Aplikační Server (MAS) a ve vnitřním použití Racomu pro IP Retranslaci paketů MORSE (M-IP-M). IPGW = Internet Protocol Gate Way.
UDP datagram zabalený do IP-datagramu má toto složení (včetně příkladu):
| ETH header | IP header | UDP header | MORSE pseudoframe |
08:39:30.663 rsi:52 rx|0002A94B108E |00C09F63CFAB | IP/UDP/MOR/USR/DATA 0002 A94B 108E 00C0 9F63 CFAB 0800 4500 0026 00F2 0000 8011 B47E C0A8 0201 C0A8 0205 1F40 22B8 0012 4535 0000 8982 690F 5609 AAAA
ETH, IP a UDP header jsou popsány v literatuře, zde jsou uvedeny jen pro lepší orientaci. Hlavní část MAS následuje za tímto odstavcem.
V hlavičce monitoringu je uvedena délka celého IPGW rámce, zde 52 byte.
ETH header
| ETH header | | dst eth /48 | src eth /48 | prot/16 | 0002 A94B 108E 00C0 9F63 CFAB 0800
Význam položek:
dst eth /48 | dst ETH – adresa cíle | ||
src eth /48 | src ETH – adresa zdroje | ||
prot/16 | 0800 | následuje IP-datagram | |
0806 | následuje ARP |
IP header
| IP header | |vers/16|IPhlen/16| No/16 |frag/16|par1/16|hchs/16| src IP/32 | dst IP/32| 4500 0026 00F2 0000 8011 B47E C0A8 0201 C0A8 0205
Význam položek:
vers/16 | ver/4 | verze IP protokolu (nyní 4) | |
headlen/4 | délka IP záhlaví (zde 5 slov po 32 bitech) | ||
type serv/8 | typ požadované služby pro přenos datagramu | ||
IPhlen/16 | počet byte v IPGW rámci bez ETH header, hex (zde 26 hex = 38 dec) | ||
No/16 | pořadové číslo, identifikace datagramu, hex | ||
frag/16 | fragmentace: | ||
res/1 | rezerva | ||
zákaz/1 | 1=zákaz fragmentace datagramu | ||
další/1 | 1=následují další fragmenty | ||
offset/13 | fragment offset – pozice začátku datové části fragmentu vzhledem k původnímu datagramu, z něhož tento fragment vznikl (v bytech) | ||
par1/16 | time to live/8 | životnost datagramu v sekundách, při průchodu routerem se dekrementuje alespoň o 1, při =0 se likviduje | |
protocol/8 | specifikuje protokol vyšší vrstvy, jehož zpráva je obsažena v datové části datagramu | ||
hchs/16 | kontrolní součet zahrnující pouze IP záhlaví | ||
src IP/32 | src IP – adresa zdroje, viz menu EPe 0i = (i)p adr | ||
dst IP/32 | dst IP – adresa cíle, viz menu EPe 0i |
UDP header
| UDP header | | src port/16 | dst port/16 | UDPlen/16 | chs/16 | 1F40 22B8 0012 4535
Význam položek:
src port/16 | source port UDP | |
dst port/16 | destin port UDP ( 22B8 hex = 8888 dec ) | |
UDPlen/16 | počet byte UDP paketu (UDP header + pseudoframe),hex (zde 12 hex = 18 dec) | |
chs/16 | kontrolní součet |
MORSE pseudoframe
Podle prvního bitu v pseudoframe se rámec IPGW dělí do 2 skupin:
A – první bit je nula – Morse Aplikační Server
B – první bit je jednička – pro vnitřní potřebu Racomu, UDP rámce pro režim M-IP-M
Pseudoframe (A) – Morse Aplikační Server
| MORSE pseudoframe | |flags/16|PT/8|D/1| R/4 | No/3| addr/32 | data | | 0000 | 89 | 1 | 0000 | 010 |690F 5609| AAAA |
Význam položek:
flags/16 | T/4 | 0x0 = 0000 | typ UDP datagramu MAS | ||
R/4 | 0x0 = 0000 | rezerva | |||
U/8 | subtype | 0x00 – user data | |||
0x01 – seek/delete format, pouze pro interní použití v Racomu | |||||
PT/8 | MORSE packet type | ||||
D/1 | DTE bit | 0- vysílá DCE=CU v síti MORSE | |||
1- vysílá DTE=IP aplikace | tato část je shodou okolností | ||||
R/4 | rezerva (0000) | podobná paketu síťové vrstvy | |||
No/3 | pořadové číslo paketu | protokolu MARS-A | |||
addr/32 | adresa CU v síti MORSE | ||||
data | přenášená data, délka (UDPlen-0x10) byte |
APPENDIX:
MORSE pseudoframe (B), jen pro vnitřní potřebu Racomu. Tyto datagramy se používají při komunikaci M-IP-M, to je ze sítě MORSE přes síť IP opět do sítě MORSE.
B1 – UDP data frames and fragments | 0xD,0xB,0xF,0xE |
B2 – UDP appended frame | 0xA |
B3 – UDP control frame | 0xC |
Pseudoframe (B1) – UDP data frames and fragments
| MORSE pseudoframe | flags/16 | No/16 | to/32 | from/32 |type/16| dest/32 | src/32 | D200 1392 690F8909 690F8101 0B89 690F8909 690F8101 MORSE pseudoframe | | [mob/32] | data | crc/16 | ........ AAAA 2788
Význam položek:
flags/16 | T/4 | 0xD | data frame | |
0xB | fragments begin | |||
0xF | fragment | |||
0xE | fragments end | |||
A/1 | appended frame | |||
r/1 | repeated bit (1 pro opakovaný paket) | |||
S/1 | security bit (1 vyžaduje ACK) | |||
P/1 | transmitter problem bit | |||
R/4 | rezerva | |||
pver/4 | verze protokolu | |||
No/16 | Link No | |||
to/32 | to address | |||
from/32 | from address | |||
type/16 | packet full type | |||
dest/32 | destin. address | |||
src/32 | source address | |||
mob/32 | mobile address, jen pro mobilní provoz, tedy pro (type & 0xE000) nenulové | |||
data | přenášená data, délka (UDPlen-0x20) byte | |||
crc/16 | kontrolní součet |
Pseudoframe (B2) – UDP appended frame
| MORSE pseudoframe | | flags/16 | res/5 | lenA/11 | No/16 | data | crc/16 | AA00 0004 0005 AAAA ....
Význam položek:
flags/16 | T/4 | 0xA appended frame | |
A/1 | appended frame | ||
r/1 | repeated bit (1 pro opakovaný paket) | ||
S/1 | security bit (1 vyžaduje ACK) | ||
P/1 | transmitter problem bit | ||
R/1 | rezerva | ||
pver/4 | verze protokolu | ||
res/5 | rezerva | ||
lenA/11 | délka (No + data), byte | ||
No/16 | Link No | ||
data | přenášená data, délka (UDPlen-0x10) byte | ||
crc/16 | kontrolní součet |
Pseudoframe (B3) – UDP control frame
| MORSE pseudoframe | | flags/16 | CN/16 | Cf/16 | frm/32 | toa/32 | crc/16 | C100 1392 D200 690F8101 690F8909 EE98
Význam položek:
flags/16 | T/4 | 0xC control frame | |
A/1 | appended frame (=0) | ||
R/1 | reserved (=0) | ||
CT/2 | control type | ||
00 NONE | |||
01 ACK | |||
10 REJ | |||
11 NAK | |||
R/4 | reserved | ||
pver/4 | verze protokolu | ||
CN/16 | control link No (link No potvrzovaného rámce) | ||
Cf/16 | control flags (flags potvrzovaného rámce) | ||
frm/32 | from address | ||
toa/32 | to address | ||
crc/16 | kontrolní součet |
Výpis použitého příkladu pro appendix (B1,B3):
14:30:20.090 rsi:68 tx|0002A95AA517 |0002A94AE97E | IP/UDP/MOR/RET/DAT 0002 A95A A517 0002 A94A E97E 0800 4500 0036 0073 4000 4011 88E9 C0A8 1001 C0A8 2009 22B8 22B8 0022 8D3C D200 1392 690F 8909 690F 8101 0B89 690F 8909 690F 8101 AAAA 2788 14:30:20.090 rsi:58 rx|0002A94AE97E |0002A95AA517 | IP/UDP/MOR/RET/CTL/ACK 0002 A94A E97E 0002 A95A A517 0800 4500 002C 000C 4000 4011 895A C0A8 2009 C0A8 1001 22B8 22B8 0018 979C C100 1392 D200 690F 8101 690F 8909 EE98