blob: eace2c6648f54508072b22f0f8b385b17f9c4b32 [file] [log] [blame]
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +00001.. _types:
2
Davide Pesavento738fd312019-02-07 13:40:16 -05003TLV-TYPE number assignments
4---------------------------
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +00005
Junxiao Shi1082b422017-07-18 23:37:52 +00006+---------------------------------------------+------------------+-----------------+
7| Type | Assigned number | Assigned number |
8| | (decimal) | (hexadecimal) |
9+=============================================+==================+=================+
Alexander Afanasyeve9315e72014-02-12 19:53:49 +000010| **Packet types** |
Junxiao Shi1082b422017-07-18 23:37:52 +000011+---------------------------------------------+------------------+-----------------+
12| Interest | 5 | 0x05 |
13+---------------------------------------------+------------------+-----------------+
14| Data | 6 | 0x06 |
15+---------------------------------------------+------------------+-----------------+
Alexander Afanasyev0bc9f1a2014-02-13 08:05:36 +000016| **Common fields** |
Junxiao Shi1082b422017-07-18 23:37:52 +000017+---------------------------------------------+------------------+-----------------+
18| Name | 7 | 0x07 |
19+---------------------------------------------+------------------+-----------------+
Alexander Afanasyev85f77b12021-10-26 17:44:35 -040020| `Name component types`_ |
21+---------------------------------------------+------------------+-----------------+
Junxiao Shib211da22017-12-14 20:05:35 +000022| GenericNameComponent | 8 | 0x08 |
Junxiao Shi1082b422017-07-18 23:37:52 +000023+---------------------------------------------+------------------+-----------------+
24| ImplicitSha256DigestComponent | 1 | 0x01 |
25+---------------------------------------------+------------------+-----------------+
Alexander Afanasyev9013a562018-08-08 09:48:41 -040026| ParametersSha256DigestComponent | 2 | 0x02 |
27+---------------------------------------------+------------------+-----------------+
Alexander Afanasyev85f77b12021-10-26 17:44:35 -040028| KeywordNameComponent | 32 (non-critical)| 0x20 |
29+---------------------------------------------+------------------+-----------------+
30| SegmentNameComponent | 50 (non-critical)| 0x32 |
31+---------------------------------------------+------------------+-----------------+
32| ByteOffsetNameComponent | 52 (non-critical)| 0x34 |
33+---------------------------------------------+------------------+-----------------+
34| VersionNameComponent | 54 (non-critical)| 0x36 |
35+---------------------------------------------+------------------+-----------------+
36| TimestampNameComponent | 56 (non-critical)| 0x38 |
37+---------------------------------------------+------------------+-----------------+
38| SequenceNumNameComponent | 58 (non-critical)| 0x3a |
39+---------------------------------------------+------------------+-----------------+
Alexander Afanasyeva4397b82013-12-26 05:25:27 +000040| **Interest packet** |
Junxiao Shi1082b422017-07-18 23:37:52 +000041+---------------------------------------------+------------------+-----------------+
Alexander Afanasyeve9f48512018-01-15 23:44:50 -050042| CanBePrefix | 33 | 0x21 |
43+---------------------------------------------+------------------+-----------------+
44| MustBeFresh | 18 | 0x12 |
45+---------------------------------------------+------------------+-----------------+
46| ForwardingHint | 30 | 0x1e |
Junxiao Shi1082b422017-07-18 23:37:52 +000047+---------------------------------------------+------------------+-----------------+
48| Nonce | 10 | 0x0a |
49+---------------------------------------------+------------------+-----------------+
50| InterestLifetime | 12 | 0x0c |
51+---------------------------------------------+------------------+-----------------+
Alexander Afanasyeve9f48512018-01-15 23:44:50 -050052| HopLimit | 34 (non-critical)| 0x22 |
Junxiao Shi1082b422017-07-18 23:37:52 +000053+---------------------------------------------+------------------+-----------------+
Junxiao Shif2bbb902019-03-15 14:36:30 -040054| ApplicationParameters | 36 (non-critical)| 0x24 |
Junxiao Shi1082b422017-07-18 23:37:52 +000055+---------------------------------------------+------------------+-----------------+
Zhiyi Zhang0c04fd82018-09-04 16:29:47 -040056| InterestSignatureInfo | 44 (non-critical)| 0x2c |
57+---------------------------------------------+------------------+-----------------+
58| InterestSignatureValue | 46 (non-critical)| 0x2e |
59+---------------------------------------------+------------------+-----------------+
Alexander Afanasyeva4397b82013-12-26 05:25:27 +000060| **Data packet** |
Junxiao Shi1082b422017-07-18 23:37:52 +000061+---------------------------------------------+------------------+-----------------+
62| MetaInfo | 20 | 0x14 |
63+---------------------------------------------+------------------+-----------------+
64| Content | 21 | 0x15 |
65+---------------------------------------------+------------------+-----------------+
66| SignatureInfo | 22 | 0x16 |
67+---------------------------------------------+------------------+-----------------+
68| SignatureValue | 23 | 0x17 |
69+---------------------------------------------+------------------+-----------------+
Alexander Afanasyeva4397b82013-12-26 05:25:27 +000070| **Data/MetaInfo** |
Junxiao Shi1082b422017-07-18 23:37:52 +000071+---------------------------------------------+------------------+-----------------+
72| ContentType | 24 | 0x18 |
73+---------------------------------------------+------------------+-----------------+
74| FreshnessPeriod | 25 | 0x19 |
75+---------------------------------------------+------------------+-----------------+
76| FinalBlockId | 26 | 0x1a |
77+---------------------------------------------+------------------+-----------------+
Zhiyi Zhang0c04fd82018-09-04 16:29:47 -040078| **Signature** |
Junxiao Shi1082b422017-07-18 23:37:52 +000079+---------------------------------------------+------------------+-----------------+
80| SignatureType | 27 | 0x1b |
81+---------------------------------------------+------------------+-----------------+
82| KeyLocator | 28 | 0x1c |
83+---------------------------------------------+------------------+-----------------+
Junxiao Shi665ccf92018-07-13 13:23:23 -040084| KeyDigest | 29 | 0x1d |
85+---------------------------------------------+------------------+-----------------+
Zhiyi Zhang47e51372019-02-25 13:47:01 -080086| SignatureNonce | 38 (non-critical)| 0x26 |
87+---------------------------------------------+------------------+-----------------+
Zhiyi Zhang0c04fd82018-09-04 16:29:47 -040088| SignatureTime | 40 (non-critical)| 0x28 |
89+---------------------------------------------+------------------+-----------------+
90| SignatureSeqNum | 42 (non-critical)| 0x2a |
Zhiyi Zhang47e51372019-02-25 13:47:01 -080091+---------------------------------------------+------------------+-----------------+
Junxiao Shib211da22017-12-14 20:05:35 +000092| **Link Object** |
93+---------------------------------------------+------------------+-----------------+
94| Delegation | 31 | 0x1f |
95+---------------------------------------------+------------------+-----------------+
96| Preference | 30 | 0x1e |
97+---------------------------------------------+------------------+-----------------+
Alexander Afanasyev85f77b12021-10-26 17:44:35 -040098| `NDN Certificates`_ |
99+---------------------------------------------+------------------+-----------------+
100| ValidityPeriod | 253 | 0xfd |
101+---------------------------------------------+------------------+-----------------+
102| NotBefore | 254 | 0xfe |
103+---------------------------------------------+------------------+-----------------+
104| NotAfter | 255 | 0xff |
105+---------------------------------------------+------------------+-----------------+
106| AdditionalDescription (non-critical) | 258 | 0x0102 |
107+---------------------------------------------+------------------+-----------------+
108| DescriptionEntry | 512 | 0x0200 |
109+---------------------------------------------+------------------+-----------------+
110| DescriptionKey | 513 | 0x0201 |
111+---------------------------------------------+------------------+-----------------+
112| DescriptionValue | 514 | 0x0202 |
113+---------------------------------------------+------------------+-----------------+
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000114
Junxiao Shi78ce2952019-05-07 15:34:00 -0400115.. note::
Davide Pesaventoec746762020-06-24 22:57:31 -0400116 The ABNF grammar of this specification denotes the TLV-TYPE of element ``X`` as ``X-TYPE``.
117 For example, ``INTEREST-TYPE`` means ``%x05``, the TLV-TYPE of ``Interest`` encoded in ``VAR-NUMBER-1`` format.
Junxiao Shi78ce2952019-05-07 15:34:00 -0400118
Alexander Afanasyevca58dc22013-12-28 21:04:59 +0000119.. _type reservations:
120
Junxiao Shi1082b422017-07-18 23:37:52 +0000121TLV-TYPE number reservations
122~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000123
124+----------------+-----------------------------------------------------------+
Junxiao Shi1082b422017-07-18 23:37:52 +0000125| Number range | Designation |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000126+================+===========================================================+
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500127| 9 | Reserved, formerly `Selectors` |
Junxiao Shibdc75012015-01-13 22:09:12 -0700128+----------------+-----------------------------------------------------------+
129| 11 | Reserved, formerly `Scope` |
Alexander Afanasyev718b86a2014-02-16 05:42:20 +0000130+----------------+-----------------------------------------------------------+
Alexander Afanasyeve9f48512018-01-15 23:44:50 -0500131| 13 | Reserved, formerly `MinSuffixComponents` |
132+----------------+-----------------------------------------------------------+
133| 14 | Reserved, formerly `MaxSuffixComponents` |
134+----------------+-----------------------------------------------------------+
135| 15 | Reserved, formerly `PublisherPublicKeyLocator` |
136+----------------+-----------------------------------------------------------+
137| 16 | Reserved, formerly `Exclude` |
138+----------------+-----------------------------------------------------------+
139| 17 | Reserved, formerly `ChildSelector` |
140+----------------+-----------------------------------------------------------+
141| 19 | Reserved, formerly `Any` |
142+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000143| [80, 100] | Reserved for assignments related to local-link data |
Junxiao Shi4406fdd2015-06-10 13:28:10 -0700144| | processing, e.g., `NDNLP`_, etc. (1-byte encoding) |
Alexander Afanasyevb917c0b2014-02-12 19:53:48 +0000145+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000146| all other | |
147| numbers in | |
148| [1, 127] | Reserved for future assignments (1-byte encoding) |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000149+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000150| [128, 252] | For application use (1-byte encoding) |
151+----------------+-----------------------------------------------------------+
152| [800, 1000] | Reserved for assignments related to local-link data |
Junxiao Shi4406fdd2015-06-10 13:28:10 -0700153| | processing, e.g., `NDNLP`_, etc. (3-byte encoding) |
154+----------------+-----------------------------------------------------------+
Alexander Afanasyev85f77b12021-10-26 17:44:35 -0400155| all other | |
Junxiao Shidcb0f372019-04-06 18:45:55 +0000156| numbers in | |
Alexander Afanasyev85f77b12021-10-26 17:44:35 -0400157| [253, 32767] | Reserved for future assignments (3-byte encoding) |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000158+----------------+-----------------------------------------------------------+
Junxiao Shidcb0f372019-04-06 18:45:55 +0000159| >32767 | For application use (3-byte or 5-byte encoding) |
Alexander Afanasyevfffabfb2013-12-11 21:29:05 +0000160+----------------+-----------------------------------------------------------+
Alexander Afanasyev718b86a2014-02-16 05:42:20 +0000161
Junxiao Shi1082b422017-07-18 23:37:52 +0000162.. _NDNLP: https://redmine.named-data.net/projects/nfd/wiki/NDNLPv2
Alexander Afanasyev85f77b12021-10-26 17:44:35 -0400163
164.. _NDN Certificates: https://named-data.net/doc/ndn-cxx/current/specs/certificate-format.html
165
166.. _Name component types: https://redmine.named-data.net/projects/ndn-tlv/wiki/NameComponentType