summaryrefslogtreecommitdiff
path: root/draft-schanzen-r5n.xml
diff options
context:
space:
mode:
Diffstat (limited to 'draft-schanzen-r5n.xml')
-rw-r--r--draft-schanzen-r5n.xml113
1 files changed, 49 insertions, 64 deletions
diff --git a/draft-schanzen-r5n.xml b/draft-schanzen-r5n.xml
index 32ea767..b77eff3 100644
--- a/draft-schanzen-r5n.xml
+++ b/draft-schanzen-r5n.xml
@@ -425,8 +425,9 @@ END
425 <dl> 425 <dl>
426 <dt>Demultiplex everywhere (0)</dt> 426 <dt>Demultiplex everywhere (0)</dt>
427 <dd> 427 <dd>
428 Each peer along the way should look at 'enc'. Otherwise 428 Each peer along the way should process the request. Otherwise
429 only the k-peers closest to the key should look at it. 429 only peers that are locally closest to the key and no longer in the
430 random path mode should process it.
430 </dd> 431 </dd>
431 <dt>Record route (1)</dt> 432 <dt>Record route (1)</dt>
432 <dd> 433 <dd>
@@ -438,14 +439,6 @@ END
438 Indicates a 'FIND-PEER' request. Implies that approximate results are 439 Indicates a 'FIND-PEER' request. Implies that approximate results are
439 acceptable. 440 acceptable.
440 </dd> 441 </dd>
441 <dt>Random key (3)</dt>
442 <dd>
443 Option for query key randomization. (TODO)
444 </dd>
445 <dt>Last hop (4)</dt>
446 <dd>
447 Indicates if this was the last hop for a GET/PUT.
448 </dd>
449 </dl> 442 </dl>
450 </section> 443 </section>
451 <section anchor="p2p_xq" numbered="true" toc="default"> 444 <section anchor="p2p_xq" numbered="true" toc="default">
@@ -458,23 +451,19 @@ END
458 <artwork name="" type="" align="left" alt=""><![CDATA[ 451 <artwork name="" type="" align="left" alt=""><![CDATA[
4590 8 16 24 32 40 48 56 4520 8 16 24 32 40 48 56
460+-----+-----+-----+-----+-----+-----+-----+-----+ 453+-----+-----+-----+-----+-----+-----+-----+-----+
461| MSIZE | MTYPE | OPTIONS | 454| MSIZE | MTYPE | BTYPE |
462+-----+-----+-----+-----+-----+-----+-----+-----+ 455+-----+-----+-----+-----+-----+-----+-----+-----+
463| BTYPE | HOPCOUNT | 456| OPTIONS | HOPCOUNT | REPL_LVL | PATH_LEN |
464+-----+-----+-----+-----+-----+-----+-----+-----+ 457+-----+-----+-----+-----+-----+-----+-----+-----+
465| REPLICATIONLVL | PATH_LEN | 458| EXPIRATION |
466+-----+-----+-----+-----+-----+-----+-----+-----+ 459+-----+-----+-----+-----+-----+-----+-----+-----+
467| EXPIRATION | BLOOMFILTER / 460| BLOOMFILTER /
468+-----+-----+-----+-----+ / 461/ (128 byte) |
469/ (128 byte) / 462+-----+-----+-----+-----+-----+-----+-----+-----+
470/ +-----+-----+-----+-----+ 463| KEY /
471/ | KEY / 464/ (64 byte) |
472+-----+-----+-----+-----+ / 465+-----+-----+-----+-----+-----+-----+-----+-----+
473/ (64 byte) / 466/ PUTPATH (variable length) /
474/ +-----+-----+-----+-----+
475/ | PUTPATH /
476+-----+-----+-----+-----+ /
477/ (variable length) /
478+-----+-----+-----+-----+-----+-----+-----+-----+ 467+-----+-----+-----+-----+-----+-----+-----+-----+
479/ PAYLOAD (variable length) / 468/ PAYLOAD (variable length) /
480+-----+-----+-----+-----+-----+-----+-----+-----+ 469+-----+-----+-----+-----+-----+-----+-----+-----+
@@ -492,28 +481,28 @@ END
492 types but for put messages it must be set to 481 types but for put messages it must be set to
493 the value 146 in network byte order. 482 the value 146 in network byte order.
494 </dd> 483 </dd>
495 <dt>OPTIONS</dt>
496 <dd>
497 is a 32-bit options field (see below).
498 </dd>
499 <dt>BTYPE</dt> 484 <dt>BTYPE</dt>
500 <dd> 485 <dd>
501 is a 32-bit block type field. The block type indicates the content 486 is a 32-bit block type field. The block type indicates the content
502 type of the payload. In network byte order. 487 type of the payload. In network byte order.
503 </dd> 488 </dd>
489 <dt>OPTIONS</dt>
490 <dd>
491 is a 16-bit options field (see below).
492 </dd>
504 <dt>HOPCOUNT</dt> 493 <dt>HOPCOUNT</dt>
505 <dd> 494 <dd>
506 is a 32-bit number indicating how many hops this message has 495 is a 16-bit number indicating how many hops this message has
507 traversed to far. In network byte order. 496 traversed to far. In network byte order.
508 </dd> 497 </dd>
509 <dt>REPLICATIONLVL</dt> 498 <dt>REPL_LVL</dt>
510 <dd> 499 <dd>
511 is a 32-bit number indicating the desired replication level of 500 is a 16-bit number indicating the desired replication level of
512 the data. In network byte order. 501 the data. In network byte order.
513 </dd> 502 </dd>
514 <dt>PATH_LEN</dt> 503 <dt>PATH_LEN</dt>
515 <dd> 504 <dd>
516 is a 32-bit number indicating the length of the PUT path recorded 505 is a 16-bit number indicating the length of the PUT path recorded
517 in PUTPATH. As PUTPATH is optiona, this value may be zero. 506 in PUTPATH. As PUTPATH is optiona, this value may be zero.
518 In network byte order. 507 In network byte order.
519 </dd> 508 </dd>
@@ -552,21 +541,17 @@ END
552 <artwork name="" type="" align="left" alt=""><![CDATA[ 541 <artwork name="" type="" align="left" alt=""><![CDATA[
5530 8 16 24 32 40 48 56 5420 8 16 24 32 40 48 56
554+-----+-----+-----+-----+-----+-----+-----+-----+ 543+-----+-----+-----+-----+-----+-----+-----+-----+
555| MSIZE | MTYPE | OPTIONS | 544| MSIZE | MTYPE | BTYPE |
556+-----+-----+-----+-----+-----+-----+-----+-----+ 545+-----+-----+-----+-----+-----+-----+-----+-----+
557| BTYPE | HOPCOUNT | 546| OPTIONS | HOPCOUNT | REPL_LVL | XQ_SIZE |
558+-----+-----+-----+-----+-----+-----+-----+-----+ 547+-----+-----+-----+-----+-----+-----+-----+-----+
559| REPLICATIONLVL | XQUERY_SIZE | 548| BLOOMFILTER /
549/ (128 byte) |
560+-----+-----+-----+-----+-----+-----+-----+-----+ 550+-----+-----+-----+-----+-----+-----+-----+-----+
561| BF_MUTATOR | BLOOMFILTER / 551| KEY /
562+-----+-----+-----+-----+ / 552/ (64 byte) |
563/ (128 byte) / 553+-----+-----+-----+-----+-----+-----+-----+-----+
564/ +-----+-----+-----+-----+ 554/ BF_MUTATOR | XQUERY /
565/ | KEY /
566+-----+-----+-----+-----+ /
567/ (64 byte) /
568/ +-----+-----+-----+-----+
569/ | XQUERY /
570+-----+-----+-----+-----+ / 555+-----+-----+-----+-----+ /
571/ (variable length) / 556/ (variable length) /
572+-----+-----+-----+-----+-----+-----+-----+-----+ 557+-----+-----+-----+-----+-----+-----+-----+-----+
@@ -586,34 +571,30 @@ END
586 types but for put messages it must be set to 571 types but for put messages it must be set to
587 the value 147 in network byte order. 572 the value 147 in network byte order.
588 </dd> 573 </dd>
589 <dt>OPTIONS</dt>
590 <dd>
591 is a 32-bit options field (see below).
592 </dd>
593 <dt>BTYPE</dt> 574 <dt>BTYPE</dt>
594 <dd> 575 <dd>
595 is a 32-bit block type field. The block type indicates the content 576 is a 32-bit block type field. The block type indicates the content
596 type of the payload. In network byte order. 577 type of the payload. In network byte order.
597 </dd> 578 </dd>
579 <dt>OPTIONS</dt>
580 <dd>
581 is a 16-bit options field (see below).
582 </dd>
598 <dt>HOPCOUNT</dt> 583 <dt>HOPCOUNT</dt>
599 <dd> 584 <dd>
600 is a 32-bit number indicating how many hops this message has 585 is a 16-bit number indicating how many hops this message has
601 traversed to far. In network byte order. 586 traversed to far. In network byte order.
602 </dd> 587 </dd>
603 <dt>REPLICATIONLVL</dt> 588 <dt>REPL_LVL</dt>
604 <dd> 589 <dd>
605 is a 32-bit number indicating the desired replication level of 590 is a 16-bit number indicating the desired replication level of
606 the data. In network byte order. 591 the data. In network byte order.
607 </dd> 592 </dd>
608 <dt>XQUERY_SIZE</dt> 593 <dt>XQ_SIZE</dt>
609 <dd> 594 <dd>
610 is a 32-bit number indicating the length of the optional 595 is a 32-bit number indicating the length of the optional
611 extended query XQUERY. In network byte order. 596 extended query XQUERY. In network byte order.
612 </dd> 597 </dd>
613 <dt>BF_MUTATOR</dt>
614 <dd>
615 The bloomfilter mutator.
616 </dd>
617 <dt>BLOOMFILTER</dt> 598 <dt>BLOOMFILTER</dt>
618 <dd> 599 <dd>
619 A bloomfilter (for peer identities) to stop circular routes. 600 A bloomfilter (for peer identities) to stop circular routes.
@@ -627,7 +608,11 @@ END
627 <dd> 608 <dd>
628 the variable-length extended query. Optional. 609 the variable-length extended query. Optional.
629 </dd> 610 </dd>
630 <dt>BF_RESULT</dt> 611 <dt>BF_MUTATOR</dt>
612 <dd>
613 The 32-bit bloomfilter mutator for the result bloomfilter.
614 </dd>
615 <dt>RESULT_BF</dt>
631 <dd> 616 <dd>
632 the variable-length result bloomfilter. 617 the variable-length result bloomfilter.
633 </dd> 618 </dd>
@@ -639,11 +624,11 @@ END
639 <artwork name="" type="" align="left" alt=""><![CDATA[ 624 <artwork name="" type="" align="left" alt=""><![CDATA[
6400 8 16 24 32 40 48 56 6250 8 16 24 32 40 48 56
641+-----+-----+-----+-----+-----+-----+-----+-----+ 626+-----+-----+-----+-----+-----+-----+-----+-----+
642| MSIZE | MTYPE | OPTIONS | 627| MSIZE | MTYPE | BTYPE |
643+-----+-----+-----+-----+-----+-----+-----+-----+ 628+-----+-----+-----+-----+-----+-----+-----+-----+
644| BTYPE | PUT_PATH_LEN | 629| // | OPTIONS | PUTPATH_L | GETPATH_L |
645+-----+-----+-----+-----+-----+-----+-----+-----+ 630+-----+-----+-----+-----+-----+-----+-----+-----+
646| GET_PATH_LEN | EXPIRATION | 631| EXPIRATION |
647+-----+-----+-----+-----+-----+-----+-----+-----+ 632+-----+-----+-----+-----+-----+-----+-----+-----+
648| KEY / 633| KEY /
649/ (64 byte) | 634/ (64 byte) |
@@ -673,22 +658,22 @@ END
673 </dd> 658 </dd>
674 <dt>OPTIONS</dt> 659 <dt>OPTIONS</dt>
675 <dd> 660 <dd>
676 is a 32-bit options field (see below). 661 is a 16-bit options field (see below).
677 </dd> 662 </dd>
678 <dt>BTYPE</dt> 663 <dt>BTYPE</dt>
679 <dd> 664 <dd>
680 is a 32-bit block type field. The block type indicates the content 665 is a 32-bit block type field. The block type indicates the content
681 type of the payload. In network byte order. 666 type of the payload. In network byte order.
682 </dd> 667 </dd>
683 <dt>PUT_PATH_LEN</dt> 668 <dt>PUTPATH_L</dt>
684 <dd> 669 <dd>
685 is a 32-bit number indicating the length of the PUT path recorded 670 is a 16-bit number indicating the length of the PUT path recorded
686 in PUTPATH. As PUTPATH is optiona, this value may be zero. 671 in PUTPATH. As PUTPATH is optiona, this value may be zero.
687 In network byte order. 672 In network byte order.
688 </dd> 673 </dd>
689 <dt>GET_PATH_LEN</dt> 674 <dt>GET_PATH_LEN</dt>
690 <dd> 675 <dd>
691 is a 32-bit number indicating the length of the GET path recorded 676 is a 16-bit number indicating the length of the GET path recorded
692 in GETPATH. As PUTPATH is optiona, this value may be zero. 677 in GETPATH. As PUTPATH is optiona, this value may be zero.
693 In network byte order. 678 In network byte order.
694 </dd> 679 </dd>