Format of UDP datagram IPGW for Morse

https//www.racom.eu/eng/support/morse-m3/eth-ipgw.html

Print version

6. Format of UDP datagram IPGW for Morse

This datagram is used above all for Morse Application Server (MAS) and for internal use in Racom for IP Retranslation of Morse packets (M-IP-M). IPGW = Internet Protocol Gate Way.

The UDP datagram wraped in the IP-datagram has this structure (including the example):

| 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 and UDP header are described in the literature, they are mentioned here only for better orientation. The main part MAS follows this paragraph.

The length of all IPGW frame is written in the monitoring header, here 52 bytes.

ETH header

|                 ETH header                |
|   dst eth /48   |  src eth /48  | prot/16 |
   0002 A94B 108E   00C0 9F63 CFAB    0800

Meaning of items:

 dst eth /48dst ETH – destination address
 src eth /48src ETH – source address
 prot/160800IP-datagram follows
  0806ARP follows

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

Meaning of items:

 vers/16ver/4version of IP protocol (now 4)
  headlen/4length of IP header (here 5 words by 32 bits)
  type serv/8type of desired service for datagram transmission
 IPhlen/16number of bytes in IPGW frame without ETH header, hex (here 26 hex = 38 dec)
 No/16order number, datagram identification, hex
 frag/16fragmentation:
  res/1reserve
  no/11=datagram fragmentation forbidden
  next/11=next fragments follow
  offset/13fragment offset- position of beginning of fragment data part in regard of underived datagram(in bytes)
 par1/16time to live/8lifetime of datagram in seconds, by passing through router it is decremented at least by 1, at =0 it is discarded
  protocol/8determines the protocol of higher level, which report is contended in data part of datagram
 hchs/16checksum including IP head only
 src IP/32src IP – source address, see menu EPe 0i = (i)p addr
 dst IP/32dst IP – destination address, see menu EPe 0i

UDP header

|                UDP header                      |
| src port/16 | dst port/16 | UDPlen/16 | chs/16 |
      1F40          22B8         0012      4535

Meaning of items:

 src port/16source port UDP
 dst port/16destin port UDP ( 22B8 hex = 8888 dec )
 UDPlen/16length of UDP packet in bytes(UDP header + pseudoframe),hex (here 12 hex = 18 dec)
 chs/16checksum

MORSE pseudoframe

According to first bit of pseudoframe is IPGW frame divided into 2 groups:

  • A – first bit is zero – Morse Application Server

  • B – first bit is one – proprietary for Racom, UDP frames for M-IP-M mode

Pseudoframe (A) – Morse Application Server

|                MORSE pseudoframe                |
|flags/16|PT/8|D/1|  R/4 | No/3| addr/32 |  data  |
|  0000  | 89 | 1 | 0000 | 010 |690F 5609|  AAAA  |

Meaning of items:

      
 flags/16T/40x0 = 0000UDP datagram type MAS
  R/40x0 = 0000reserve
  U/8subtype0x00 – user data
    0x01 – seek/delete format, for internal use in Racom only
 PT/8MORSE packet type 
 D/1DTE bit0- DCE sending=CU in MORSE net 
   1- DTE sending=IP applicationthis part is coincidently
 R/4reserve (0000)similar like net level packet
 No/3packet order numberof MARS-A protocol
 addr/32CU address in MORSE net 
 datadata transmitted, length (UDPlen-0x10) byte 

APPENDIX:

MORSE pseudoframe B), for internal use only. These datagrams are used for M-IP-M communication i.e. from MORSE network through IP network and to the MORSE again.

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

Meaning of items:

 flags/16T/40xDdata frame
   0xBfragments begin
   0xFfragment
   0xEfragments end
  A/1appended frame
  r/1repeated bit (1 if the packet is repeated)
  S/1security bit (1 requests ACK)
  P/1transmitter problem bit
  R/4reserve
  pver/4protocol version
 No/16Link No
 to/32to address
 from/32from address
 type/16packet full type
 dest/32destin. address
 src/32source address
 mob/32mobile address, for mobile service only, i.e. if (type & 0xE000) is nonzero
 datadata transmitted, length (UDPlen-0x20) byte
 crc/16Cyclic Redundancy Check

Pseudoframe (B2) – UDP appended frame

|                  MORSE pseudoframe                    |
| flags/16 | res/5 | lenA/11 | No/16 |   data  | crc/16 |
    AA00          0004          0005     AAAA     ....

Meaning of items:

 flags/16T/40xA appended frame
  A/1appended frame
  r/1repeated bit (1 if the packet is repeated)
  S/1security bit (1 requests ACK)
  P/1transmitter problem bit
  R/1reserve
  pver/4protocol version
 res/5reserve
 lenA/11length (No + data), byte
 No/16Link No
 datadata transmitted, length (UDPlen-0x10) byte
 crc/16Cyclic Redundancy Check

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

Meaning of items:

 flags/16T/40xC control frame
  A/1appended frame (=0)
  R/1reserved (=0)
  CT/2control type
   00 NONE
   01 ACK
   10 REJ
   11 NAK
  R/4reserved
  pver/4protocol version
 CN/16control link No (link No of confirmed frame)
 Cf/16control flags (flags of confirmed frame)
 frm/32from address
 toa/32to address
 crc/16Cyclic Redundancy Check

Used examples for 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

©  2024 RACOM s.r.o. All Rights Reserved.