blob: 7c7f13264d0ec211b307473f452435bb928b3ecc [file] [log] [blame]
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +00001.. _types:
2
Davide Pesaventoacaccaf2022-03-06 19:00:06 -05003TLV Type Registry
4-----------------
5
6Assigned numbers
7~~~~~~~~~~~~~~~~
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +00008
Davide Pesavento23e340c2021-12-03 04:52:22 -05009+---------------------------------------------+--------------------+-----------------+
10| Type | Assigned number | Assigned number |
11| | (decimal) | (hexadecimal) |
12+=============================================+====================+=================+
13| **Packet types** |
14+---------------------------------------------+--------------------+-----------------+
15| Interest | 5 | 0x05 |
16+---------------------------------------------+--------------------+-----------------+
17| Data | 6 | 0x06 |
18+---------------------------------------------+--------------------+-----------------+
19| **Common fields** |
20+---------------------------------------------+--------------------+-----------------+
21| Name | 7 | 0x07 |
22+---------------------------------------------+--------------------+-----------------+
23| |Name components|_ |
24+---------------------------------------------+--------------------+-----------------+
25| GenericNameComponent | 8 | 0x08 |
26+---------------------------------------------+--------------------+-----------------+
27| ImplicitSha256DigestComponent | 1 | 0x01 |
28+---------------------------------------------+--------------------+-----------------+
29| ParametersSha256DigestComponent | 2 | 0x02 |
30+---------------------------------------------+--------------------+-----------------+
31| KeywordNameComponent | 32 (non-critical) | 0x20 |
32+---------------------------------------------+--------------------+-----------------+
33| SegmentNameComponent | 50 (non-critical) | 0x32 |
34+---------------------------------------------+--------------------+-----------------+
35| ByteOffsetNameComponent | 52 (non-critical) | 0x34 |
36+---------------------------------------------+--------------------+-----------------+
37| VersionNameComponent | 54 (non-critical) | 0x36 |
38+---------------------------------------------+--------------------+-----------------+
39| TimestampNameComponent | 56 (non-critical) | 0x38 |
40+---------------------------------------------+--------------------+-----------------+
41| SequenceNumNameComponent | 58 (non-critical) | 0x3a |
42+---------------------------------------------+--------------------+-----------------+
43| **Interest packet** |
44+---------------------------------------------+--------------------+-----------------+
45| CanBePrefix | 33 | 0x21 |
46+---------------------------------------------+--------------------+-----------------+
47| MustBeFresh | 18 | 0x12 |
48+---------------------------------------------+--------------------+-----------------+
49| ForwardingHint | 30 | 0x1e |
50+---------------------------------------------+--------------------+-----------------+
51| Nonce | 10 | 0x0a |
52+---------------------------------------------+--------------------+-----------------+
53| InterestLifetime | 12 | 0x0c |
54+---------------------------------------------+--------------------+-----------------+
55| HopLimit | 34 (non-critical) | 0x22 |
56+---------------------------------------------+--------------------+-----------------+
57| ApplicationParameters | 36 (non-critical) | 0x24 |
58+---------------------------------------------+--------------------+-----------------+
59| InterestSignatureInfo | 44 (non-critical) | 0x2c |
60+---------------------------------------------+--------------------+-----------------+
61| InterestSignatureValue | 46 (non-critical) | 0x2e |
62+---------------------------------------------+--------------------+-----------------+
63| **Data packet** |
64+---------------------------------------------+--------------------+-----------------+
65| MetaInfo | 20 | 0x14 |
66+---------------------------------------------+--------------------+-----------------+
67| Content | 21 | 0x15 |
68+---------------------------------------------+--------------------+-----------------+
69| SignatureInfo | 22 | 0x16 |
70+---------------------------------------------+--------------------+-----------------+
71| SignatureValue | 23 | 0x17 |
72+---------------------------------------------+--------------------+-----------------+
73| **MetaInfo** |
74+---------------------------------------------+--------------------+-----------------+
75| ContentType | 24 | 0x18 |
76+---------------------------------------------+--------------------+-----------------+
77| FreshnessPeriod | 25 | 0x19 |
78+---------------------------------------------+--------------------+-----------------+
79| FinalBlockId | 26 | 0x1a |
80+---------------------------------------------+--------------------+-----------------+
81| **Signature** |
82+---------------------------------------------+--------------------+-----------------+
83| SignatureType | 27 | 0x1b |
84+---------------------------------------------+--------------------+-----------------+
85| KeyLocator | 28 | 0x1c |
86+---------------------------------------------+--------------------+-----------------+
87| KeyDigest | 29 | 0x1d |
88+---------------------------------------------+--------------------+-----------------+
89| SignatureNonce | 38 (non-critical) | 0x26 |
90+---------------------------------------------+--------------------+-----------------+
91| SignatureTime | 40 (non-critical) | 0x28 |
92+---------------------------------------------+--------------------+-----------------+
93| SignatureSeqNum | 42 (non-critical) | 0x2a |
94+---------------------------------------------+--------------------+-----------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -050095| |Certificate|_ |
96+---------------------------------------------+--------------------+-----------------+
97| ValidityPeriod | 253 | 0xfd |
98+---------------------------------------------+--------------------+-----------------+
99| NotBefore | 254 | 0xfe |
100+---------------------------------------------+--------------------+-----------------+
101| NotAfter | 255 | 0xff |
102+---------------------------------------------+--------------------+-----------------+
103| AdditionalDescription | 258 (non-critical) | 0x0102 |
104+---------------------------------------------+--------------------+-----------------+
105| DescriptionEntry | 512 | 0x0200 |
106+---------------------------------------------+--------------------+-----------------+
107| DescriptionKey | 513 | 0x0201 |
108+---------------------------------------------+--------------------+-----------------+
109| DescriptionValue | 514 | 0x0202 |
110+---------------------------------------------+--------------------+-----------------+
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000111
Junxiao Shi78ce2952019-05-07 15:34:00 -0400112.. note::
Davide Pesavento23e340c2021-12-03 04:52:22 -0500113 The ABNF grammar of this specification denotes the TLV-TYPE of element ``X`` as ``X-TYPE``.
114 For example, ``INTEREST-TYPE`` means ``%x05``, the TLV-TYPE of ``Interest`` encoded in ``VAR-NUMBER-1`` format.
Junxiao Shi78ce2952019-05-07 15:34:00 -0400115
Davide Pesaventoacaccaf2022-03-06 19:00:06 -0500116Reserved ranges
117~~~~~~~~~~~~~~~
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000118
119+----------------+-----------------------------------------------------------+
Junxiao Shi1082b422017-07-18 23:37:52 +0000120| Number range | Designation |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000121+================+===========================================================+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500122| 9 | Reserved, formerly *Selectors* |
Junxiao Shibdc75012015-01-13 22:09:12 -0700123+----------------+-----------------------------------------------------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500124| 11 | Reserved, formerly *Scope* |
Alexander Afanasyev718b86a2014-02-16 05:42:20 +0000125+----------------+-----------------------------------------------------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500126| 13 | Reserved, formerly *MinSuffixComponents* |
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500127+----------------+-----------------------------------------------------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500128| 14 | Reserved, formerly *MaxSuffixComponents* |
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500129+----------------+-----------------------------------------------------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500130| 15 | Reserved, formerly *PublisherPublicKeyLocator* |
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500131+----------------+-----------------------------------------------------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500132| 16 | Reserved, formerly *Exclude* |
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500133+----------------+-----------------------------------------------------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500134| 17 | Reserved, formerly *ChildSelector* |
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500135+----------------+-----------------------------------------------------------+
Davide Pesavento23e340c2021-12-03 04:52:22 -0500136| 19 | Reserved, formerly *Any* |
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500137+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000138| [80, 100] | Reserved for assignments related to local-link data |
Davide Pesavento23e340c2021-12-03 04:52:22 -0500139| | processing, e.g., NDNLP_ (1-byte encoding) |
Alexander Afanasyevb917c0b2014-02-12 19:53:48 +0000140+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000141| all other | |
142| numbers in | |
143| [1, 127] | Reserved for future assignments (1-byte encoding) |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000144+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000145| [128, 252] | For application use (1-byte encoding) |
146+----------------+-----------------------------------------------------------+
147| [800, 1000] | Reserved for assignments related to local-link data |
Davide Pesavento23e340c2021-12-03 04:52:22 -0500148| | processing, e.g., NDNLP_ (3-byte encoding) |
Junxiao Shi4406fdd2015-06-10 13:28:10 -0700149+----------------+-----------------------------------------------------------+
Alexander Afanasyev85f77b12021-10-26 17:44:35 -0400150| all other | |
Junxiao Shidcb0f372019-04-06 18:45:55 +0000151| numbers in | |
Alexander Afanasyev85f77b12021-10-26 17:44:35 -0400152| [253, 32767] | Reserved for future assignments (3-byte encoding) |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000153+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000154| >32767 | For application use (3-byte or 5-byte encoding) |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000155+----------------+-----------------------------------------------------------+
Alexander Afanasyev718b86a2014-02-16 05:42:20 +0000156
Junxiao Shi1082b422017-07-18 23:37:52 +0000157.. _NDNLP: https://redmine.named-data.net/projects/nfd/wiki/NDNLPv2
Alexander Afanasyev85f77b12021-10-26 17:44:35 -0400158
Davide Pesavento23e340c2021-12-03 04:52:22 -0500159.. |Name components| replace:: **Name components**
160.. _Name components: https://redmine.named-data.net/projects/ndn-tlv/wiki/NameComponentType
Alexander Afanasyev85f77b12021-10-26 17:44:35 -0400161
Davide Pesavento23e340c2021-12-03 04:52:22 -0500162.. |Certificate| replace:: **Certificate**
163.. _Certificate: https://named-data.net/doc/ndn-cxx/current/specs/certificate-format.html