commit a0a4373b3228234eedc28c540ee2519b8e97920f
parent 0b4d0ea799b8fe5a444fca7eceb083a38e53977a
Author: Elias Summermatter <elias.summermatter@seccom.ch>
Date: Thu, 19 Nov 2020 15:47:21 +0100
First commit some change to the basic structure
Diffstat:
2 files changed, 150 insertions(+), 111 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -0,0 +1,4 @@
+/.idea/
+*.xml.swp
+*.html
+*.min.js
+\ No newline at end of file
diff --git a/draft-summermatter-set-union.xml b/draft-summermatter-set-union.xml
@@ -36,9 +36,9 @@
<organization>.</organization>
<address>
<postal>
- <street></street>
- <city></city>
- <code></code>
+ <street>Brunnmattstrasse 44</street>
+ <city>Bern</city>
+ <code>3007</code>
<country>CH</country>
</postal>
<email>elias.summermatter@seccom.ch</email>
@@ -70,7 +70,7 @@
<section anchor="introduction" numbered="true" toc="default">
<name>Introduction</name>
<t>
- Blah.
+ --- TEXT HERE ---
</t>
<t>
This document defines the normative wire format of resource records, resolution processes,
@@ -88,115 +88,149 @@
</t>
</section>
- <section anchor="zones" numbered="true" toc="default">
- <name>Zones</name>
- <t>
- Blah.
- </t>
- <figure anchor="figure_gnsrecord">
- <artwork name="" type="" align="left" alt=""><![CDATA[
-0 8 16 24 32 40 48 56
-+-----+-----+-----+-----+-----+-----+-----+-----+
-| EXPIRATION |
-+-----+-----+-----+-----+-----+-----+-----+-----+
-| DATA SIZE | TYPE |
-+-----+-----+-----+-----+-----+-----+-----+-----+
-| FLAGS | DATA /
-+-----+-----+-----+-----+ /
-/ /
-/ /
- ]]></artwork>
- <!-- <postamble>which is a very simple example.</postamble>-->
- </figure>
- <t>where:</t>
- <dl>
- <dt>EXPIRATION</dt>
- <dd>
- denotes the absolute 64-bit expiration date of the record.
- In microseconds since midnight (0 hour), January 1, 1970 in network
- byte order.
- </dd>
- <dt>DATA SIZE</dt>
- <dd>
- denotes the 32-bit size of the DATA field in bytes and in network byte
- order.
- </dd>
- <dt>TYPE</dt>
- <dd>
- is the 32-bit resource record type. This type can be one of the GNS resource
- records as defined in <xref target="rrecords" /> or a DNS record
- type as defined in <xref target="RFC1035" /> or any of the
- complementary standardized DNS resource record types. This value must be
- stored in network byte order. Note that values
- below 2^16 are reserved for allocation via IANA (<xref target="RFC6895" />),
- while values above 2^16 are allocated by the
- GNUnet Assigned Numbers Authority <xref target="GANA" />.
- </dd>
- <dt>FLAGS</dt>
- <dd>
- is a 32-bit resource record flags field (see below).
- </dd>
- <dt>DATA</dt>
- <dd>
- the variable-length resource record data payload. The contents are defined
- by the
- respective type of the resource record.
- </dd>
- </dl>
- <t>
- Flags indicate metadata surrounding the resource record. A flag
- value of 0 indicates that all flags are unset. The following
- illustrates the flag distribution in the 32-bit flag value of a
- resource record:</t>
- <figure anchor="figure_flag">
- <artwork name="" type="" align="left" alt=""><![CDATA[
-... 5 4 3 2 1 0
-------+--------+--------+--------+--------+--------+
-/ ... | SHADOW | EXPREL | SUPPL | PRIVATE| / |
-------+--------+--------+--------+--------+--------+
- ]]></artwork>
- <!-- <postamble>which is a very simple example.</postamble>-->
- </figure>
- <t>
- where:
- </t>
- <dl>
- <dt>SHADOW</dt>
- <dd>
- If this flag is set, this record should be ignored by resolvers unless all (other)
- records of the same record type have expired. Used to allow zone publishers to
- facilitate good performance when records change by allowing them to put future
- values of records into the DHT. This way, future values can propagate and may be
- cached before the transition becomes active.
- </dd>
- <dt>EXPREL</dt>
- <dd>
- The expiration time value of the record is a relative time (still in microseconds)
- and not an absolute time. This flag should never be encountered by a resolver
- for records obtained from the DHT, but might be present when a resolver looks up
- private records of a zone hosted locally.
- </dd>
- <dt>
- SUPPL
- </dt>
- <dd>
- This is a supplemental record. It is provided in addition to the
- other records. This flag indicates that this record is not explicitly
- managed alongside the other records under the respective name but
- may be useful for the application. This flag should only be encountered
- by a resolver for records obtained from the DHT.
- </dd>
- <dt>PRIVATE</dt>
- <dd>
- This is a private record of this peer and it should thus not be
- published in the DHT. Thus, this flag should never be encountered by
- a resolver for records obtained from the DHT.
- Private records should still be considered just like
- regular records when resolving labels in local zones.
- </dd>
- </dl>
+
+ <section anchor="modeofoperation" numbered="true" toc="default">
+ <name>Mode of operation</name>
+ <section anchor="modeofoperation_full-sync-client-with-bigger-set" numbered="true" toc="default">
+ <name>Full Sync </name>
+ </section>
+ <section anchor="modeofoperation_individual-elements" numbered="true" toc="default">
+ <name>Individual Element Sync</name>
+ </section>
</section>
+
+ <section anchor="messages" numbered="true" toc="default">
+ <name>Messages</name>
+
+ <section anchor="messages_operation_request" numbered="true" toc="default">
+ <name>Operation Request</name>
+
+ <section anchor="messages_operation_request_description" numbered="true" toc="default">
+ <name>Description</name>
+ <t>
+ Some description what this messages does
+ </t>
+ </section>
+ <section anchor="messages_operation_request_structure" numbered="true" toc="default">
+ <name>Structure</name>
+
+ <figure anchor="figure_gnsrecord">
+ <artwork name="" type="" align="left" alt=""><![CDATA[
+ 0 8 16 24 32 40 48 56
+ +-----+-----+-----+-----+-----+-----+-----+-----+
+ | EXPIRATION |
+ +-----+-----+-----+-----+-----+-----+-----+-----+
+ | DATA SIZE | TYPE |
+ +-----+-----+-----+-----+-----+-----+-----+-----+
+ | FLAGS | DATA /
+ +-----+-----+-----+-----+ /
+ / /
+ / /
+ ]]></artwork>
+ <!-- <postamble>which is a very simple example.</postamble>-->
+ </figure>
+ <t>where:</t>
+ <dl>
+ <dt>EXPIRATION</dt>
+ <dd>
+ denotes the absolute 64-bit expiration date of the record.
+ In microseconds since midnight (0 hour), January 1, 1970 in network
+ byte order.
+ </dd>
+ <dt>DATA SIZE</dt>
+ <dd>
+ denotes the 32-bit size of the DATA field in bytes and in network byte
+ order.
+ </dd>
+ <dt>TYPE</dt>
+ <dd>
+ is the 32-bit resource record type. This type can be one of the GNS resource
+ records as defined in or a DNS record
+ type as defined in <xref target="RFC1035" /> or any of the
+ complementary standardized DNS resource record types. This value must be
+ stored in network byte order. Note that values
+ below 2^16 are reserved for allocation via IANA (<xref target="RFC6895" />),
+ while values above 2^16 are allocated by the
+ GNUnet Assigned Numbers Authority <xref target="GANA" />.
+ </dd>
+ <dt>FLAGS</dt>
+ <dd>
+ is a 32-bit resource record flags field (see below).
+ </dd>
+ <dt>DATA</dt>
+ <dd>
+ the variable-length resource record data payload. The contents are defined
+ by the
+ respective type of the resource record.
+ </dd>
+ </dl>
+ <t>
+ Flags indicate metadata surrounding the resource record. A flag
+ value of 0 indicates that all flags are unset. The following
+ illustrates the flag distribution in the 32-bit flag value of a
+ resource record:</t>
+ <figure anchor="figure_flag">
+ <artwork name="" type="" align="left" alt=""><![CDATA[
+ ... 5 4 3 2 1 0
+ ------+--------+--------+--------+--------+--------+
+ / ... | SHADOW | EXPREL | SUPPL | PRIVATE| / |
+ ------+--------+--------+--------+--------+--------+
+ ]]></artwork>
+ <!-- <postamble>which is a very simple example.</postamble>-->
+ </figure>
+ <t>
+ where:
+ </t>
+ <dl>
+ <dt>SHADOW</dt>
+ <dd>
+ If this flag is set, this record should be ignored by resolvers unless all (other)
+ records of the same record type have expired. Used to allow zone publishers to
+ facilitate good performance when records change by allowing them to put future
+ values of records into the DHT. This way, future values can propagate and may be
+ cached before the transition becomes active.
+ </dd>
+ <dt>EXPREL</dt>
+ <dd>
+ The expiration time value of the record is a relative time (still in microseconds)
+ and not an absolute time. This flag should never be encountered by a resolver
+ for records obtained from the DHT, but might be present when a resolver looks up
+ private records of a zone hosted locally.
+ </dd>
+ <dt>
+ SUPPL
+ </dt>
+ <dd>
+ This is a supplemental record. It is provided in addition to the
+ other records. This flag indicates that this record is not explicitly
+ managed alongside the other records under the respective name but
+ may be useful for the application. This flag should only be encountered
+ by a resolver for records obtained from the DHT.
+ </dd>
+ <dt>PRIVATE</dt>
+ <dd>
+ This is a private record of this peer and it should thus not be
+ published in the DHT. Thus, this flag should never be encountered by
+ a resolver for records obtained from the DHT.
+ Private records should still be considered just like
+ regular records when resolving labels in local zones.
+ </dd>
+ </dl>
+ </section>
+ </section>
+ </section>
+
+ <section anchor="states" numbered="true" toc="default">
+ <name>States</name>
+ <section anchor="state_expect-se" numbered="true" toc="default">
+ <name>Expect Strata Estimator</name>
+ <t>
+ Some description what this state does
+ </t>
+ </section>
+ </section>
+
<section anchor="security" numbered="true" toc="default">
<name>Security Considerations</name>
<section anchor="security_crypto" numbered="true" toc="default">