diff options
author | Martin Schanzenbach <schanzen@gnunet.org> | 2022-12-25 22:08:34 +0900 |
---|---|---|
committer | Martin Schanzenbach <schanzen@gnunet.org> | 2022-12-25 22:08:34 +0900 |
commit | 227017efad24f685c47c42d0d098e3316e983862 (patch) | |
tree | cea0cec2f686866c6ddd92920111e8ef636cce7b | |
parent | 2572074e9b4f875e79a8fe070afc375e02e272bb (diff) | |
download | lsd0004-227017efad24f685c47c42d0d098e3316e983862.tar.gz lsd0004-227017efad24f685c47c42d0d098e3316e983862.zip |
Introduce a message header component
-rw-r--r-- | draft-schanzen-r5n.xml | 76 |
1 files changed, 40 insertions, 36 deletions
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml index 037adc5..60c5967 100644 --- a/draft-schanzen-r5n.xml +++ b/draft-schanzen-r5n.xml | |||
@@ -893,7 +893,34 @@ BEGIN | |||
893 | This section describes some data structures and fields shared | 893 | This section describes some data structures and fields shared |
894 | by various message types. | 894 | by various message types. |
895 | </t> | 895 | </t> |
896 | <section anchor="route_flags"> | 896 | <section anchor="msg_hdr"> |
897 | <name>Header</name> | ||
898 | <t> | ||
899 | A message header that identifies the message length and type is shared across | ||
900 | all messages used in the R<sup>5</sup>N protocol. | ||
901 | </t> | ||
902 | <figure anchor="figure_msghdr" title="The common message header."> | ||
903 | <artwork name="" type="" align="left" alt=""><![CDATA[ | ||
904 | 0 8 16 24 | ||
905 | +-----+-----+-----+-----+ | ||
906 | | MSIZE | MTYPE | | ||
907 | +-----+-----+-----+-----+ | ||
908 | ]]></artwork> | ||
909 | </figure> | ||
910 | <t>where:</t> | ||
911 | <dl> | ||
912 | <dt>MSIZE</dt> | ||
913 | <dd> | ||
914 | denotes the size of this message in network byte order. | ||
915 | </dd> | ||
916 | <dt>MTYPE</dt> | ||
917 | <dd> | ||
918 | is the 16-bit message type. Message types are registered in | ||
919 | the GANA "GNUnet Message Type" registry <xref target="gana_message_type"/>. | ||
920 | </dd> | ||
921 | </dl> | ||
922 | </section> | ||
923 | <section anchor="route_flags"> | ||
897 | <name>Flags</name> | 924 | <name>Flags</name> |
898 | <t> | 925 | <t> |
899 | Flags is a 16-bit vector representing binary options. | 926 | Flags is a 16-bit vector representing binary options. |
@@ -1217,7 +1244,7 @@ BEGIN | |||
1217 | <artwork name="" type="" align="left" alt=""><![CDATA[ | 1244 | <artwork name="" type="" align="left" alt=""><![CDATA[ |
1218 | 0 8 16 24 32 40 48 56 | 1245 | 0 8 16 24 32 40 48 56 |
1219 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1246 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1220 | | MSIZE | MTYPE | RESERVED | URL_CTR | | 1247 | | HEADER | RESERVED | URL_CTR | |
1221 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1248 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1222 | | SIGNATURE / | 1249 | | SIGNATURE / |
1223 | / (64 byte) | | 1250 | / (64 byte) | |
@@ -1230,13 +1257,9 @@ BEGIN | |||
1230 | </figure> | 1257 | </figure> |
1231 | <t>where:</t> | 1258 | <t>where:</t> |
1232 | <dl> | 1259 | <dl> |
1233 | <dt>MSIZE</dt> | 1260 | <dt>HEADER</dt> |
1234 | <dd> | ||
1235 | denotes the size of this message in network byte order. | ||
1236 | </dd> | ||
1237 | <dt>MTYPE</dt> | ||
1238 | <dd> | 1261 | <dd> |
1239 | is the 16-bit message type. It must be set to | 1262 | the common message header. Its <tt>MTYPE</tt> field must be set to |
1240 | the value 157 in network byte order. | 1263 | the value 157 in network byte order. |
1241 | </dd> | 1264 | </dd> |
1242 | <dt>RESERVED</dt> | 1265 | <dt>RESERVED</dt> |
@@ -1325,7 +1348,7 @@ BEGIN | |||
1325 | <artwork name="" type="" align="left" alt=""><![CDATA[ | 1348 | <artwork name="" type="" align="left" alt=""><![CDATA[ |
1326 | 0 8 16 24 32 40 48 56 | 1349 | 0 8 16 24 32 40 48 56 |
1327 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1350 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1328 | | MSIZE | MTYPE | BTYPE | | 1351 | | HEADER | BTYPE | |
1329 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1352 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1330 | | FLAGS | HOPCOUNT | REPL_LVL | PATH_LEN | | 1353 | | FLAGS | HOPCOUNT | REPL_LVL | PATH_LEN | |
1331 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1354 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
@@ -1349,15 +1372,9 @@ BEGIN | |||
1349 | </figure> | 1372 | </figure> |
1350 | <t>where:</t> | 1373 | <t>where:</t> |
1351 | <dl> | 1374 | <dl> |
1352 | <dt>MSIZE</dt> | 1375 | <dt>HEADER</dt> |
1353 | <dd> | ||
1354 | denotes the size of this message in network byte order. | ||
1355 | Set by the initiator. | ||
1356 | Modified by processing peers when message contents such as the path lengths change. | ||
1357 | </dd> | ||
1358 | <dt>MTYPE</dt> | ||
1359 | <dd> | 1376 | <dd> |
1360 | is the 16-bit message type. It is set by the initiator to | 1377 | is the common message header. Its <tt>MTYPE</tt> field is set by the initiator to |
1361 | the value 146 in network byte order. Read-only. | 1378 | the value 146 in network byte order. Read-only. |
1362 | </dd> | 1379 | </dd> |
1363 | <dt>BTYPE</dt> | 1380 | <dt>BTYPE</dt> |
@@ -1571,7 +1588,7 @@ BEGIN | |||
1571 | <artwork name="" type="" align="left" alt=""><![CDATA[ | 1588 | <artwork name="" type="" align="left" alt=""><![CDATA[ |
1572 | 0 8 16 24 32 40 48 56 | 1589 | 0 8 16 24 32 40 48 56 |
1573 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1590 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1574 | | MSIZE | MTYPE | BTYPE | | 1591 | | HEADER | BTYPE | |
1575 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1592 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1576 | | FLAGS | HOPCOUNT | REPL_LVL | RF_SIZE | | 1593 | | FLAGS | HOPCOUNT | REPL_LVL | RF_SIZE | |
1577 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1594 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
@@ -1590,16 +1607,9 @@ BEGIN | |||
1590 | </figure> | 1607 | </figure> |
1591 | <t>where:</t> | 1608 | <t>where:</t> |
1592 | <dl> | 1609 | <dl> |
1593 | <dt>MSIZE</dt> | 1610 | <dt>HEADER</dt> |
1594 | <dd> | 1611 | <dd> |
1595 | denotes the size of this message in network byte order. | 1612 | is the common message header. Its <tt>MTYPE</tt> field is set by the initiator to |
1596 | Set by the initiator. | ||
1597 | <!-- FIXME: Is this not fixed-length once set by initiator?--> | ||
1598 | Modified by processing peers when message contents change. | ||
1599 | </dd> | ||
1600 | <dt>MTYPE</dt> | ||
1601 | <dd> | ||
1602 | is the 16-bit message type. It is set by the initiator to | ||
1603 | the value 147 in network byte order. Read-only. | 1613 | the value 147 in network byte order. Read-only. |
1604 | </dd> | 1614 | </dd> |
1605 | <dt>BTYPE</dt> | 1615 | <dt>BTYPE</dt> |
@@ -1793,7 +1803,7 @@ BEGIN | |||
1793 | <artwork name="" type="" align="left" alt=""><![CDATA[ | 1803 | <artwork name="" type="" align="left" alt=""><![CDATA[ |
1794 | 0 8 16 24 32 40 48 56 | 1804 | 0 8 16 24 32 40 48 56 |
1795 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1805 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1796 | | MSIZE | MTYPE | BTYPE | | 1806 | | HEADER | BTYPE | |
1797 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1807 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
1798 | | RESERVED | FLAGS | PUTPATH_L | GETPATH_L | | 1808 | | RESERVED | FLAGS | PUTPATH_L | GETPATH_L | |
1799 | +-----+-----+-----+-----+-----+-----+-----+-----+ | 1809 | +-----+-----+-----+-----+-----+-----+-----+-----+ |
@@ -1819,15 +1829,9 @@ BEGIN | |||
1819 | </figure> | 1829 | </figure> |
1820 | <t>where:</t> | 1830 | <t>where:</t> |
1821 | <dl> | 1831 | <dl> |
1822 | <dt>MSIZE</dt> | 1832 | <dt>HEADER</dt> |
1823 | <dd> | ||
1824 | denotes the size of this message in network byte order. | ||
1825 | Set by the initiator. | ||
1826 | Updated by processing peers. | ||
1827 | </dd> | ||
1828 | <dt>MTYPE</dt> | ||
1829 | <dd> | 1833 | <dd> |
1830 | is the 16-bit message type. It must be set to | 1834 | is the common message header. Its <tt>MTYPE</tt> field must be set to |
1831 | the value 148 in network byte order. | 1835 | the value 148 in network byte order. |
1832 | Set by the initiator. Read-only. | 1836 | Set by the initiator. Read-only. |
1833 | </dd> | 1837 | </dd> |