aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElias Summermatter <elias.summermatter@seccom.ch>2021-06-16 19:23:51 +0200
committerElias Summermatter <elias.summermatter@seccom.ch>2021-06-16 19:23:51 +0200
commitaa3d59625b1cf688c268c56caaee65494996cd35 (patch)
tree9b04b0bf62431d5c9c09b071f4b674290135ef6e
parente3331b5f6fff65df491e138dc06ff1b09eeb6ee6 (diff)
downloadlsd0003-aa3d59625b1cf688c268c56caaee65494996cd35.tar.gz
lsd0003-aa3d59625b1cf688c268c56caaee65494996cd35.zip
Fixed some formating for publication
-rw-r--r--draft-summermatter-set-union.xml230
1 files changed, 132 insertions, 98 deletions
diff --git a/draft-summermatter-set-union.xml b/draft-summermatter-set-union.xml
index 6261c39..3548fa9 100644
--- a/draft-summermatter-set-union.xml
+++ b/draft-summermatter-set-union.xml
@@ -1215,7 +1215,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1215 | MSG SIZE | MSG TYPE | ELEMENT COUNT | 1215 | MSG SIZE | MSG TYPE | ELEMENT COUNT |
1216 +-----+-----+-----+-----+-----+-----+-----+-----+ 1216 +-----+-----+-----+-----+-----+-----+-----+-----+
1217 | APX 1217 | APX
1218 +-----+-----+-----+-----+-----+-----+-----+-----+ / 1218 +-----+-----+-----+-----+-----+-----+-----+-----+
1219 / APPLICATION DATA / 1219 / APPLICATION DATA /
1220 / / 1220 / /
1221 ]]></artwork> 1221 ]]></artwork>
@@ -1274,7 +1274,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1274 | OFFSET | SALT | IMCS | 1274 | OFFSET | SALT | IMCS |
1275 +-----+-----+-----+-----+-----+-----+-----+-----+ 1275 +-----+-----+-----+-----+-----+-----+-----+-----+
1276 | IBF-SLICE 1276 | IBF-SLICE
1277 +-----+-----+-----+-----+-----+-----+-----+-----+ / 1277 +-----+-----+-----+-----+-----+-----+-----+-----+
1278 / / 1278 / /
1279 / / 1279 / /
1280 ]]></artwork> 1280 ]]></artwork>
@@ -1417,7 +1417,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1417 | MSG SIZE | MSG TYPE | E TYPE | PADDING | 1417 | MSG SIZE | MSG TYPE | E TYPE | PADDING |
1418 +-----+-----+-----+-----+-----+-----+-----+-----+ 1418 +-----+-----+-----+-----+-----+-----+-----+-----+
1419 | E SIZE | DATA 1419 | E SIZE | DATA
1420 +-----+-----+ / 1420 +-----+-----+-----+-----+-----+-----+-----+-----+
1421 / / 1421 / /
1422 / / 1422 / /
1423 ]]></artwork> 1423 ]]></artwork>
@@ -1482,11 +1482,11 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1482 +-----+-----+-----+-----+-----+-----+-----+-----+ 1482 +-----+-----+-----+-----+-----+-----+-----+-----+
1483 ... ... 1483 ... ...
1484 +-----+-----+-----+-----+-----+-----+-----+-----+ 1484 +-----+-----+-----+-----+-----+-----+-----+-----+
1485 | HASH 1 | HASH 2 1485 HASH 1 | HASH 2
1486 +-----+-----+-----+-----+-----+-----+-----+-----+ 1486 +-----+-----+-----+-----+-----+-----+-----+-----+
1487 ... ... 1487 ... ...
1488 +-----+-----+-----+-----+-----+-----+-----+-----+ 1488 +-----+-----+-----+-----+-----+-----+-----+-----+
1489 | HASH 2 | HASH n 1489 HASH 2 | HASH n
1490 +-----+-----+-----+-----+-----+-----+-----+-----+ 1490 +-----+-----+-----+-----+-----+-----+-----+-----+
1491 / / 1491 / /
1492 / / 1492 / /
@@ -1502,9 +1502,9 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1502 <dd> 1502 <dd>
1503 is SETU_P2P_OFFER as registered in <xref target="gana" format="title" /> in network byte order. 1503 is SETU_P2P_OFFER as registered in <xref target="gana" format="title" /> in network byte order.
1504 </dd> 1504 </dd>
1505 <dt>HASHES</dt> 1505 <dt>HASH n</dt>
1506 <dd> 1506 <dd>
1507 contains one or more successive SHA 512-bit hashes of the elements that are being requested with <em><xref target="messages_inquiry" format="title" /></em> messages. 1507 contains n (one or more) successive SHA 512-bit hashes of the elements that are being requested with <em><xref target="messages_inquiry" format="title" /></em> messages.
1508 </dd> 1508 </dd>
1509 </dl> 1509 </dl>
1510 </section> 1510 </section>
@@ -1533,13 +1533,13 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1533 +-----+-----+-----+-----+-----+-----+-----+-----+ 1533 +-----+-----+-----+-----+-----+-----+-----+-----+
1534 | MSG SIZE | MSG TYPE | SALT | 1534 | MSG SIZE | MSG TYPE | SALT |
1535 +-----+-----+-----+-----+-----+-----+-----+-----+ 1535 +-----+-----+-----+-----+-----+-----+-----+-----+
1536 | IBF KEY 1 | 1536 | IBF KEY 1 |
1537 +-----+-----+-----+-----+-----+-----+-----+-----+ 1537 +-----+-----+-----+-----+-----+-----+-----+-----+
1538 | IBF KEY 2 | 1538 | IBF KEY 2 |
1539 +-----+-----+-----+-----+-----+-----+-----+-----+ 1539 +-----+-----+-----+-----+-----+-----+-----+-----+
1540 ... ... 1540 ... ...
1541 +-----+-----+-----+-----+-----+-----+-----+-----+ 1541 +-----+-----+-----+-----+-----+-----+-----+-----+
1542 | IBF KEY n | 1542 | IBF KEY n |
1543 +-----+-----+-----+-----+-----+-----+-----+-----+ 1543 +-----+-----+-----+-----+-----+-----+-----+-----+
1544 / / 1544 / /
1545 / / 1545 / /
@@ -1557,7 +1557,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1557 </dd> 1557 </dd>
1558 <dt>IBF KEY</dt> 1558 <dt>IBF KEY</dt>
1559 <dd> 1559 <dd>
1560 contains one or more successive ibf keys (64-bit unsigned integer) for which the inquiry is sent. 1560 contains n (one or more) successive ibf keys (64-bit unsigned integer) for which the inquiry is sent.
1561 </dd> 1561 </dd>
1562 </dl> 1562 </dl>
1563 </section> 1563 </section>
@@ -1585,15 +1585,15 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1585 <artwork name="" type="" align="left" alt=""><![CDATA[ 1585 <artwork name="" type="" align="left" alt=""><![CDATA[
1586 0 8 16 24 32 40 48 56 1586 0 8 16 24 32 40 48 56
1587 +-----+-----+-----+-----+-----+-----+-----+-----+ 1587 +-----+-----+-----+-----+-----+-----+-----+-----+
1588 | MSG SIZE | MSG TYPE | HASH 1588 | MSG SIZE | MSG TYPE | HASH 1
1589 +-----+-----+-----+-----+ 1589 +-----+-----+-----+-----+-----+-----+-----+-----+
1590 ... ... 1590 ... ...
1591 +-----+-----+-----+-----+-----+-----+-----+-----+ 1591 +-----+-----+-----+-----+-----+-----+-----+-----+
1592 | HASH 1 | HASH 2 1592 HASH 1 | HASH 2
1593 +-----+-----+-----+-----+-----+-----+-----+-----+ 1593 +-----+-----+-----+-----+-----+-----+-----+-----+
1594 ... ... 1594 ... ...
1595 +-----+-----+-----+-----+-----+-----+-----+-----+ 1595 +-----+-----+-----+-----+-----+-----+-----+-----+
1596 | HASH 2 | HASH n 1596 HASH 2 | HASH n
1597 +-----+-----+-----+-----+-----+-----+-----+-----+ 1597 +-----+-----+-----+-----+-----+-----+-----+-----+
1598 / / 1598 / /
1599 / / 1599 / /
@@ -1609,9 +1609,9 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1609 <dd> 1609 <dd>
1610 the type of SETU_P2P_DEMAND as registered in <xref target="gana" format="title" /> in network byte order. 1610 the type of SETU_P2P_DEMAND as registered in <xref target="gana" format="title" /> in network byte order.
1611 </dd> 1611 </dd>
1612 <dt>HASH</dt> 1612 <dt>HASH n</dt>
1613 <dd> 1613 <dd>
1614 contains one or more successive SHA 512-bit hashes of the elements that are being demanded. 1614 contains n (one or more) successive SHA 512-bit hashes of the elements that are being demanded.
1615 </dd> 1615 </dd>
1616 </dl> 1616 </dl>
1617 </section> 1617 </section>
@@ -1636,8 +1636,10 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1636 <artwork name="" type="" align="left" alt=""><![CDATA[ 1636 <artwork name="" type="" align="left" alt=""><![CDATA[
1637 0 8 16 24 32 40 48 56 1637 0 8 16 24 32 40 48 56
1638 +-----+-----+-----+-----+-----+-----+-----+-----+ 1638 +-----+-----+-----+-----+-----+-----+-----+-----+
1639 | MSG SIZE | MSG TYPE | 1639 | MSG SIZE | MSG TYPE | FINAL CHECKSUM
1640 +-----+-----+-----+-----+-----+-----+-----+-----+ 1640 +-----+-----+-----+-----+-----+-----+-----+-----+
1641 / /
1642 / /
1641 1643
1642 ]]></artwork> 1644 ]]></artwork>
1643 </figure> 1645 </figure>
@@ -1653,7 +1655,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1653 </dd> 1655 </dd>
1654 <dt>FINAL CHECKSUM</dt> 1656 <dt>FINAL CHECKSUM</dt>
1655 <dd> 1657 <dd>
1656 a SHA-512 bit hash of the full set after synchronization. This should ensure that the sets are identical in the end! 1658 a SHA-512 hash XOR sum of the full set after synchronization. This should ensure that the sets are identical in the end!
1657 </dd> 1659 </dd>
1658 </dl> 1660 </dl>
1659 </section> 1661 </section>
@@ -1680,7 +1682,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1680 0 8 16 24 32 40 48 56 1682 0 8 16 24 32 40 48 56
1681 +-----+-----+-----+-----+-----+-----+-----+-----+ 1683 +-----+-----+-----+-----+-----+-----+-----+-----+
1682 | MSG SIZE | MSG TYPE | FINAL CHECKSUM 1684 | MSG SIZE | MSG TYPE | FINAL CHECKSUM
1683 +-----+-----+-----+-----+ 1685 +-----+-----+-----+-----+-----+-----+-----+-----+
1684 / / 1686 / /
1685 / / 1687 / /
1686 ]]></artwork> 1688 ]]></artwork>
@@ -1697,7 +1699,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1697 </dd> 1699 </dd>
1698 <dt> FINAL CHECKSUM</dt> 1700 <dt> FINAL CHECKSUM</dt>
1699 <dd> 1701 <dd>
1700 a SHA-512 bit hash of the full set after synchronization. This should ensure that the sets are identical in the end! 1702 a SHA-512 hash XOR sum of the full set after synchronization. This should ensure that the sets are identical in the end!
1701 </dd> 1703 </dd>
1702 </dl> 1704 </dl>
1703 </section> 1705 </section>
@@ -1855,8 +1857,8 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1855 +-----+-----+-----+-----+-----+-----+-----+-----+ 1857 +-----+-----+-----+-----+-----+-----+-----+-----+
1856 | MSG SIZE | MSG TYPE | SEC | SETSIZE 1858 | MSG SIZE | MSG TYPE | SEC | SETSIZE
1857 +-----+-----+-----+-----+-----+-----+-----+-----+ 1859 +-----+-----+-----+-----+-----+-----+-----+-----+
1858 SETSIZE | SE-SLICES 1860 SETSIZE | SE-SLICES
1859 +-----+-----+-----+-----+ 1861 +-----+-----+-----+-----+-----+-----+-----+-----+
1860 / / 1862 / /
1861 / / 1863 / /
1862 ]]></artwork> 1864 ]]></artwork>
@@ -1873,7 +1875,7 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1873 </dd> 1875 </dd>
1874 <dt>SEC</dt> 1876 <dt>SEC</dt>
1875 <dd> 1877 <dd>
1876 is a 8-bit unsigned integer in networkf byte order, which indicates how many strata estimators 1878 is a 8-bit unsigned integer in network byte order, which indicates how many strata estimators
1877 with different salts are attached to the message. Valid values are 1,2,4 or 8, more details can be found 1879 with different salts are attached to the message. Valid values are 1,2,4 or 8, more details can be found
1878 in the section <xref target="performance_multi_se" format="title" />. 1880 in the section <xref target="performance_multi_se" format="title" />.
1879 </dd> 1881 </dd>
@@ -1902,13 +1904,13 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1902 SE-SLICE 1904 SE-SLICE
1903 0 8 16 24 32 40 48 56 1905 0 8 16 24 32 40 48 56
1904 +-----+-----+-----+-----+-----+-----+-----+-----+ 1906 +-----+-----+-----+-----+-----+-----+-----+-----+
1905 | SE_1->IBF_1 | 1907 | SE_1 -> IBF_1
1906 +-----+-----+-----+-----+-----+-----+-----+-----+ 1908 +-----+-----+-----+-----+-----+-----+-----+-----+
1907 ... ... 1909 ... ...
1908 +-----+-----+-----+-----+-----+-----+-----+-----+ 1910 +-----+-----+-----+-----+-----+-----+-----+-----+
1909 | SE_1->IBF_30 | 1911 | SE_1 -> IBF_30
1910 +-----+-----+-----+-----+-----+-----+-----+-----+ 1912 +-----+-----+-----+-----+-----+-----+-----+-----+
1911 | SE_2->IBF_1 | 1913 | SE_2 -> IBF_1
1912 +-----+-----+-----+-----+-----+-----+-----+-----+ 1914 +-----+-----+-----+-----+-----+-----+-----+-----+
1913 ... ... 1915 ... ...
1914 / / 1916 / /
@@ -1973,8 +1975,8 @@ hashSum | 0x0101 | 0x5151 | 0x5050 | 0x0000 |
1973 +-----+-----+-----+-----+-----+-----+-----+-----+ 1975 +-----+-----+-----+-----+-----+-----+-----+-----+
1974 | MSG SIZE | MSG TYPE | E TYPE | PADDING | 1976 | MSG SIZE | MSG TYPE | E TYPE | PADDING |
1975 +-----+-----+-----+-----+-----+-----+-----+-----+ 1977 +-----+-----+-----+-----+-----+-----+-----+-----+
1976 | SIZE | AE TYPE | DATA 1978 | SIZE | AE TYPE | DATA
1977 +-----+-----+-----+-----+ 1979 +-----+-----+-----+-----+-----+-----+-----+-----+
1978 / / 1980 / /
1979 / / 1981 / /
1980 ]]></artwork> 1982 ]]></artwork>
@@ -2253,22 +2255,23 @@ FUNCTION ibf_get_max_counter(ibf)
2253 max_counter = bucket.counter 2255 max_counter = bucket.counter
2254 END IF 2256 END IF
2255 END FOR 2257 END FOR
2256 # next bigger discrete number of the binary logarithm of the max counter 2258 # next bigger discrete number of the binary logarithm of the
2259 # max counter
2257 RETURN CEILING( LOG2( max_counter ) ) 2260 RETURN CEILING( LOG2( max_counter ) )
2258END FUNCTION 2261END FUNCTION
2259 2262
2260# INPUTS: 2263# INPUTS:
2261# ibf: The IBF 2264# ibf: The IBF
2262# offset: The offset which defines the starting point from which bucket the 2265# offset: The offset which defines the starting point from which bucket
2263# pack operation starts 2266# the pack operation starts
2264# count: The number of buckets in the array that will be packed 2267# count: The number of buckets in the array that will be packed
2265# OUTPUTS: 2268# OUTPUTS:
2266# returns: A byte array of packed counters to send over the network 2269# returns: A byte array of packed counters to send over the network
2267 2270
2268# INPUTS: 2271# INPUTS:
2269# ibf: The IBF 2272# ibf: The IBF
2270# offset: The offset which defines the starting point from which bucket the 2273# offset: The offset which defines the starting point from which bucket
2271# pack operation starts 2274# the pack operation starts
2272# count: The number of buckets in the array that will be packed 2275# count: The number of buckets in the array that will be packed
2273# OUTPUTS: 2276# OUTPUTS:
2274# returns: A byte array of packed counters to send over the network 2277# returns: A byte array of packed counters to send over the network
@@ -2278,7 +2281,7 @@ FUNCTION pack_counter(ibf, offset, count)
2278 store_bits = 0 2281 store_bits = 0
2279 store = 0 2282 store = 0
2280 byte_ctr = 0 2283 byte_ctr = 0
2281 buffer=[] 2284 buf=[]
2282 2285
2283 FOR bucket IN ibf[offset] TO ibf[count] DO 2286 FOR bucket IN ibf[offset] TO ibf[count] DO
2284 counter = bucket.counter 2287 counter = bucket.counter
@@ -2292,7 +2295,7 @@ FUNCTION pack_counter(ibf, offset, count)
2292 bit_to_shift = byte_len - bit_free 2295 bit_to_shift = byte_len - bit_free
2293 store = store << bit_free 2296 store = store << bit_free
2294 END IF 2297 END IF
2295 buffer[byte_ctr] = (( counter >> bit_to_shift) | store) & 0xFF 2298 buf[byte_ctr] = (( counter >> bit_to_shift) | store) & 0xFF
2296 byte_ctr = byte_ctr + 1 2299 byte_ctr = byte_ctr + 1
2297 byte_len -= 8 - store_bits 2300 byte_len -= 8 - store_bits
2298 counter = counter & ((1 << byte_len) - 1) 2301 counter = counter & ((1 << byte_len) - 1)
@@ -2306,11 +2309,11 @@ FUNCTION pack_counter(ibf, offset, count)
2306 2309
2307 # Write the last partial packed byte to the buffer 2310 # Write the last partial packed byte to the buffer
2308 IF store_bits > 0 THEN 2311 IF store_bits > 0 THEN
2309 buffer[byte_ctr] = store << (8 - store_bits) 2312 buf[byte_ctr] = store << (8 - store_bits)
2310 byte_ctr = byte_ctr + 1 2313 byte_ctr = byte_ctr + 1
2311 END IF 2314 END IF
2312 2315
2313 RETURN buffer 2316 RETURN buf
2314FUNCTION END 2317FUNCTION END
2315 2318
2316# INPUTS: 2319# INPUTS:
@@ -2332,7 +2335,7 @@ FUNCTION unpack_counter(ibf, offset, count, cbl, pd)
2332 byte_ctr = 0 2335 byte_ctr = 0
2333 2336
2334 WHILE TRUE 2337 WHILE TRUE
2335 byte_to_read = pd[byte_ctr] 2338 byte_read = pd[byte_ctr]
2336 bit_to_pack_left = 8 2339 bit_to_pack_left = 8
2337 byte_ctr++ 2340 byte_ctr++
2338 2341
@@ -2350,10 +2353,10 @@ FUNCTION unpack_counter(ibf, offset, count, cbl, pd)
2350 store = store << bit_use 2353 store = store << bit_use
2351 END IF 2354 END IF
2352 bytes_to_shift = bit_to_pack_left - bit_use 2355 bytes_to_shift = bit_to_pack_left - bit_use
2353 counter_partial = byte_to_read >> bytes_to_shift 2356 counter_partial = byte_read >> bytes_to_shift
2354 store = store | counter_partial 2357 store = store | counter_partial
2355 ibf.counter[ibf_bucket_ctr + offset] = store 2358 ibf.counter[ibf_bucket_ctr + offset] = store
2356 byte_to_read = byte_to_read & (( 1 << bytes_to_shift ) - 1) 2359 byte_read = byte_read & (( 1 << bytes_to_shift ) - 1)
2357 2360
2358 bit_to_pack_left -= bit_use 2361 bit_to_pack_left -= bit_use
2359 ibf_bucket_ctr++ 2362 ibf_bucket_ctr++
@@ -2363,10 +2366,10 @@ FUNCTION unpack_counter(ibf, offset, count, cbl, pd)
2363 store_bits = store_bits + bit_to_pack_left 2366 store_bits = store_bits + bit_to_pack_left
2364 2367
2365 IF 0 == store_bits THEN 2368 IF 0 == store_bits THEN
2366 store = byte_to_read 2369 store = byte_read
2367 ELSE 2370 ELSE
2368 store = store << bit_to_pack_left 2371 store = store << bit_to_pack_left
2369 store = store | byte_to_read 2372 store = store | byte_read
2370 END IF 2373 END IF
2371 BREAK 2374 BREAK
2372 END IF 2375 END IF
@@ -2408,7 +2411,8 @@ END FUNCTION
2408 2411
2409# Inputs: 2412# Inputs:
2410# value: Input value to salt (needs to be 64 bit unsigned) 2413# value: Input value to salt (needs to be 64 bit unsigned)
2411# salt: Salt to salt value with; Should always be ascending and start at zero 2414# salt: Salt to salt value with; Should always be ascending and start
2415# at zero
2412 i.e. SE1 = Salt 0; SE2 = Salt 1 etc. 2416 i.e. SE1 = Salt 0; SE2 = Salt 1 etc.
2413# Output: 2417# Output:
2414# Returns: Salted value 2418# Returns: Salted value
@@ -2531,15 +2535,20 @@ END FUNCTION
2531 <artwork name="" type="" align="left" alt=""><![CDATA[ 2535 <artwork name="" type="" align="left" alt=""><![CDATA[
2532 2536
2533 2537
2534Chain for elements +---------+ +---------+ +---------+ +---------+ 2538Chain for
2535NOT in IBF decoding | INQUIRY | ---> | OFFER | ===> | DEMAND | ===> | ELEMENT | 2539elements +---------+ +---------+ +---------+ +---------+
2536peers set +---------+ +---------+ +---------+ +---------+ 2540NOT in IBF | INQUIRY |--->| OFFER |===>| DEMAND |===>| ELEMENT |
2541decoding +---------+ +---------+ +---------+ +---------+
2542peers set
2537 2543
2538Chain for elements +---------+ +---------+ +---------+ 2544Chain for
2539in IBF decoding | OFFER | ---> | DEMAND | ===> | ELEMENT | 2545elements +---------+ +---------+ +---------+
2540peers set +---------+ +---------+ +---------+ 2546in IBF | OFFER |--->| DEMAND |===>| ELEMENT |
2541 --->: Answer not mandatory 2547decoding +---------+ +---------+ +---------+
2542 ===>: Always answer needed. 2548peers set
2549
2550 --->: Answer not mandatory
2551 ===>: Always answer needed.
2543 ]]></artwork> 2552 ]]></artwork>
2544 </figure> 2553 </figure>
2545 <t> 2554 <t>
@@ -3029,33 +3038,44 @@ END FUNCTION
3029 <figure anchor="figure_constants"> 3038 <figure anchor="figure_constants">
3030 <artwork name="" type="" align="left" alt=""><![CDATA[ 3039 <artwork name="" type="" align="left" alt=""><![CDATA[
3031Name | Value | Description 3040Name | Value | Description
3032----------------------------+------------+-------------------------- 3041----------------------------+------------+-------------------------------
3033SE_STRATA_COUNT | 32 | Number of IBFs in a strata estimator 3042SE_STRATA_COUNT | 32 | Number of IBFs in a strata
3034IBF_HASH_NUM* | 3 | Number of times an element is hashed to an 3043 estimator.
3035 IBF (from section 4.5.2) 3044IBF_HASH_NUM* | 3 | Number of times an element is
3036IBF_FACTOR* | 2 | The factor by which the size of the IBF is 3045 hashed to an IBF.
3037 increased in case of decoding failure or 3046 (from section 4.5.2)
3038 initially from the set difference. 3047IBF_FACTOR* | 2 | The factor by which the size
3048 of the IBF is increased in
3049 case of decoding failure or
3050 initially from the set
3051 difference.
3039 (from section 4.5.2) 3052 (from section 4.5.2)
3040MAX_BUCKETS_PER_MESSAGE | 1120 | Maximum bucket of an IBF that are 3053MAX_BUCKETS_PER_MESSAGE | 1120 | Maximum bucket of an IBF
3041 transmitted in single message 3054 that are transmitted in
3042IBF_MIN_SIZE* | 37 | Minimal number of buckets in an IBF 3055 single message.
3043 (from section 3.8) 3056IBF_MIN_SIZE* | 37 | Minimal number of buckets
3044DIFFERENTIAL_RTT_MEAN* | 3.65145 | The average RTT that is needed for a 3057 in an IBF. (from section 3.8)
3058DIFFERENTIAL_RTT_MEAN* | 3.65145 | The average RTT that is
3059 needed for a differential
3060 synchronisation.
3061SECURITY_LEVEL* | 2^80 | Security level for
3062 probabilistic security
3063 algorithms. (from section 5.8)
3064PROBABILITY_FOR_NEW_ROUND* | 0.15 | The probability for a IBF
3065 decoding failure in the
3045 differential synchronisation 3066 differential synchronisation
3046SECURITY_LEVEL* | 2^80 | Security level for probabilistic security 3067 mode. (from section 5.4)
3047 algorithms (from section 5.8) 3068DIFFERENTIAL_RTT_MEAN* | 3.65145 | The average RTT that is needed
3048PROBABILITY_FOR_NEW_ROUND* | 0.15 | The probability for a IBF decoding failure 3069 for a differential
3049 in the differential synchronisation mode 3070 synchronisation.
3050 (from section 5.4)
3051DIFFERENTIAL_RTT_MEAN* | 3.65145 | The average RTT that is needed for a
3052 differential synchronisation.
3053 (from section 4.5.3) 3071 (from section 4.5.3)
3054MAX_IBF_SIZE | 1048576 | Maximal number of buckets in an IBF 3072MAX_IBF_SIZE | 1048576 | Maximal number of buckets in
3055AVG_BYTE_SIZE_SE* | 4221 | Average byte size of a single strata 3073 an IBF.
3056 estimator (from section 3.4.3) 3074AVG_BYTE_SIZE_SE* | 4221 | Average byte size of a single
3057VALID_NUMBER_SE* | [1,2,4,8] | Valid number of SE in (from section 3.4) 3075 strata estimator.
3058 3076 (from section 3.4.3)
3077VALID_NUMBER_SE* | [1,2,4,8] | Valid number of SE's
3078 (from section 3.4)
3059 ]]></artwork> 3079 ]]></artwork>
3060 </figure> 3080 </figure>
3061 3081
@@ -3069,29 +3089,43 @@ VALID_NUMBER_SE* | [1,2,4,8] | Valid number of SE in (from section 3
3069 <figure anchor="figure_purposenums"> 3089 <figure anchor="figure_purposenums">
3070 <artwork name="" type="" align="left" alt=""><![CDATA[ 3090 <artwork name="" type="" align="left" alt=""><![CDATA[
3071Type | Name | References | Description 3091Type | Name | References | Description
3072--------+----------------------------+------------+----------------------------------- 3092--------+----------------------------+------------+----------------------
3073 559 | SETU_P2P_REQUEST_FULL | [This.I-D] | Request the full set of the other 3093 559 | SETU_P2P_REQUEST_FULL | [This.I-D] | Request the full set
3074 peer 3094 of the other peer.
3075 710 | SETU_P2P_SEND_FULL | [This.I-D] | Signals to send the full set to the 3095 710 | SETU_P2P_SEND_FULL | [This.I-D] | Signals to send the
3076 other peer 3096 full set to the other
3077 560 | SETU_P2P_DEMAND | [This.I-D] | Demand the whole element from the 3097 peer.
3078 other peer, given only the hash 3098 560 | SETU_P2P_DEMAND | [This.I-D] | Demand the whole
3079 code. 3099 element from the other
3080 561 | SETU_P2P_INQUIRY | [This.I-D] | Tell the other peer to send a list 3100 peer, given only the
3081 of hashes that match an IBF key. 3101 hash code.
3082 562 | SETU_P2P_OFFER | [This.I-D] | Tell the other peer which hashes 3102 561 | SETU_P2P_INQUIRY | [This.I-D] | Tell the other peer
3083 match a given IBF key. 3103 to send a list of
3084 563 | SETU_P2P_OPERATION_REQUEST | [This.I-D] | Request a set union operation from 3104 hashes that match
3085 a remote peer. 3105 an IBF key.
3086 564 | SETU_P2P_SE | [This.I-D] | Strata Estimator uncompressed 3106 562 | SETU_P2P_OFFER | [This.I-D] | Tell the other peer
3087 565 | SETU_P2P_IBF | [This.I-D] | Invertible Bloom Filter slices. 3107 which hashes match
3108 a given IBF key.
3109 563 | SETU_P2P_OPERATION_REQUEST | [This.I-D] | Request a set union
3110 operation from a
3111 remote peer.
3112 564 | SETU_P2P_SE | [This.I-D] | Strata Estimator
3113 uncompressed.
3114 565 | SETU_P2P_IBF | [This.I-D] | Invertible Bloom
3115 Filter slices.
3088 566 | SETU_P2P_ELEMENTS | [This.I-D] | Actual set elements. 3116 566 | SETU_P2P_ELEMENTS | [This.I-D] | Actual set elements.
3089 567 | SETU_P2P_IBF_LAST | [This.I-D] | Invertible Bloom Filter Last Slice. 3117 567 | SETU_P2P_IBF_LAST | [This.I-D] | Invertible Bloom
3090 568 | SETU_P2P_DONE | [This.I-D] | Set operation is done. 3118 Filter Last Slices.
3091 569 | SETU_P2P_SEC | [This.I-D] | Strata Estimator compressed 3119 568 | SETU_P2P_DONE | [This.I-D] | Set operation is
3092 570 | SETU_P2P_FULL_DONE | [This.I-D] | All elements in full synchronisation 3120 done.
3093 mode have been sent is done. 3121 569 | SETU_P2P_SEC | [This.I-D] | Strata Estimator
3094 571 | SETU_P2P_FULL_ELEMENT | [This.I-D] | Send an actual element in full 3122 compressed.
3123 570 | SETU_P2P_FULL_DONE | [This.I-D] | All elements in
3124 full synchronisation
3125 mode have been sent
3126 is done.
3127 571 | SETU_P2P_FULL_ELEMENT | [This.I-D] | Send an actual
3128 element in full
3095 synchronisation mode. 3129 synchronisation mode.
3096 3130
3097 ]]></artwork> 3131 ]]></artwork>