Commit Graph

808 Commits

Author SHA1 Message Date
Marten Seemann
090cf31dca add more people to the Interest Group 2021-07-23 18:47:29 +02:00
Max Inden
0134a93277 addressing/README.md: Wrap lines at 80 chars 2021-07-22 12:35:01 +02:00
Marten Seemann
a38dfcc28c fix multiaddr paragraph 2021-07-22 12:18:35 +02:00
Marten Seemann
2751753e5d apply @mxinden's suggestions from code review
Co-authored-by: Max Inden <mail@max-inden.de>
2021-07-22 12:14:49 +02:00
Thomas Eizinger
da57d78c48 rendezvous/: Clarify UNREGISTER behaviour and remove id (#348)
* Remove `id` field from `Unregister` message

All connections in libp2p are authenticated. As such, we don't have
to include the PeerId in the `Unregister` message. We only allow
peers to unregister themselves and therefore, this `id` would always
be equal to the one we are learn from the authentication layer. Having
to compare those and ensure they are equal is an unnecessary error
path.

To be backwards-compatible with existing deployments of the rendezvous
protocol, the field is only commented out. If this record ever gets
extended, the next field should use id `3`.

* Clarify absence of `UNREGISTER` response
2021-07-22 12:00:27 +02:00
Marten Seemann
b6f452b89d remove superflous paragraph about WebSocket addresses 2021-07-21 21:04:12 +02:00
Marten Seemann
0e770a83fe fix stray partial sentence 2021-07-21 21:01:45 +02:00
Marten Seemann
0dd8c50d31 a multiaddr is just a sequence of instructions 2021-07-21 20:51:07 +02:00
Marten Seemann
90e852d9aa apply Raul's suggestion regarding circuit relays 2021-07-21 20:49:12 +02:00
Marten Seemann
31d1a50fdb dnsaddr might return multiple multiaddrs, add example 2021-07-21 20:47:55 +02:00
Marten Seemann
a8ac4da41e add that we're eliminating support for /ipfs/<peer-id> multiaddrs 2021-07-21 20:41:10 +02:00
Marten Seemann
f3df677e41 don't call parts of multiaddr multiaddr 2021-07-21 20:37:04 +02:00
Marten Seemann
41e70c28fd replace contentious use of "encapsulation" 2021-07-21 20:33:20 +02:00
Marten Seemann
b88752aa7c apply suggestions from code review
Co-authored-by: raulk <raul@protocol.ai>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
2021-07-21 15:49:17 +02:00
Max Inden
99a43197d7 ROADMAP.md: Add high level project roadmap (#339)
This documents the libp2p short and long term roadmap based on
previous work (e.g. see [libp2p/libp2p/60], [ipfs/roadmap/18],
[libp2p/specs/archive]).

[libp2p/libp2p/60]: https://github.com/libp2p/libp2p/issues/60
[ipfs/roadmap/18]: https://github.com/ipfs/roadmap/issues/18
[libp2p/specs/archive]: https://github.com/libp2p/specs/tree/master/_archive

Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2021-07-21 13:50:00 +02:00
Thomas Eizinger
512accdd81 rendezvous/: Remove PoW from the spec (#342)
Relates to https://github.com/libp2p/specs/pull/334.
Fixes https://github.com/libp2p/specs/issues/337.
2021-07-11 22:44:40 +02:00
Max Inden
8c967a22bf *: Update Kademlia and Circuit Relay v2 links (#345)
* *: Update links to merged Kademlia specification

* connections/hole-punching: Update links to merged circuit relay v2 spec
2021-07-01 19:18:51 +02:00
raulk
5879eb8ed7 Add minimal Kademlia DHT spec (#108)
Specifies the Kademlia Distributed Hash Table (DHT) subsystem in libp2p.

Co-authored-by: John Hiesey <john@hiesey.com>
Co-authored-by: Steven Allen <steven@stebalien.com>
Co-authored-by: Max Inden <mail@max-inden.de>
2021-06-29 21:21:22 +02:00
vyzo
3d7385294c relay/: Add Circuit Relay v2 specification (#325)
* Specify the Circuit Relay v2 protocol.

* Move README.md specifying the Circuit Relay v1 protocol to circuit-v1.md

Co-authored-by: Max Inden <mail@max-inden.de>
Co-authored-by: raulk <raul@protocol.ai>
2021-06-29 21:06:55 +02:00
Thomas Eizinger
ed021a9980 rendezvous: Change ttl and limit to uint64 (#338)
To be meaningful, TTL has to be a positive integer hence the use of
an signed integer does not bring any value and only introduces
unnecessary error handling.

Limiting the number of responses makes only sense if it is a positive
integer.
2021-06-28 11:00:48 +02:00
Thomas Eizinger
a27dd9e97e RFC/0002-signed-envelopes: Update protobufs to latest version (#333)
These protobuf definitions are taken from the go-libp2p repo.

See https://github.com/libp2p/specs/issues/329 for details.
2021-06-17 09:14:11 +02:00
Max Inden
e8873a3933 RFC/0003-routing-records: Fix dht-spec link (#331) 2021-06-09 12:11:13 +02:00
Max Inden
f36e36371a connections: Add hole punching vision document (#323)
Extend connections specification with a document describing the long
term vision of hole punching in libp2p across transport protocols,
platforms and implementations.

Co-authored-by: Steve Loeppky <stvn@loeppky.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2021-06-08 14:53:47 +02:00
Takashi Matsuda
126fb60dd6 peer-ids/: Fix typo (#332) 2021-06-07 09:08:49 +02:00
Max Inden
d21418638d identify: Document identify behavior for asymetrical protocols (#327)
* identify: Document identify behavior for asymetrical protocols

> Note on asymmetrical protocols: Assume an asymmetrical
request-response style protocol `foo` where some clients only support
initiating requests while some servers (only) support responding to
requests. To prevent clients from initiating requests to other clients,
which given them being clients they fail to respond, clients should not
list `foo` in their `protocols` list.

Question emerged in https://github.com/libp2p/specs/issues/324.

* identify/README: Reword to inbound substreams
2021-05-25 18:37:22 +02:00
Max Inden
a5bbb2fa61 identify: Document identify behavior for asymetrical protocols (#327)
* identify: Document identify behavior for asymetrical protocols

> Note on asymmetrical protocols: Assume an asymmetrical
request-response style protocol `foo` where some clients only support
initiating requests while some servers (only) support responding to
requests. To prevent clients from initiating requests to other clients,
which given them being clients they fail to respond, clients should not
list `foo` in their `protocols` list.

Question emerged in https://github.com/libp2p/specs/issues/324.

* identify/README: Reword to inbound substreams
2021-05-25 17:06:54 +02:00
Max Inden
f922a3e4ff identify: Document identify behavior for asymetrical protocols (#327)
* identify: Document identify behavior for asymetrical protocols

> Note on asymmetrical protocols: Assume an asymmetrical
request-response style protocol `foo` where some clients only support
initiating requests while some servers (only) support responding to
requests. To prevent clients from initiating requests to other clients,
which given them being clients they fail to respond, clients should not
list `foo` in their `protocols` list.

Question emerged in https://github.com/libp2p/specs/issues/324.

* identify/README: Reword to inbound substreams
2021-05-25 17:06:19 +02:00
vyzo
9274d301ba connections: multistream-select 1.0 simultaneous open protocol extension (#196)
> In order to support direct connections through NATs with hole punching, we
> need to account for simultaneous open. In such cases, there is no single
> initiator and responder, but instead both peers act as initiators. This breaks
> protocol negotiation in multistream-select, which assumes a single initator.
>
> This draft proposes a simple extension to the multistream protocol negotiation
> in order to select a single initator when both peers are acting as such.

Co-authored-by: Jacob Heun <jacobheun@gmail.com>
Co-authored-by: bigs <cole@protocol.ai>
Co-authored-by: Max Inden <mail@max-inden.de>
Co-authored-by: Steven Allen <steven@stebalien.com>
2021-05-11 15:27:05 +02:00
Steven Allen
dadddd2094 Merge pull request #316 from libp2p/feat/rsa-deprecate
feat: drop RSA to SHOULD
2021-04-30 10:38:58 -07:00
raulk
458320f95d update revision to r2. 2021-04-30 18:37:59 +01:00
Vasco Santos
fecbe3c189 rendezvous/README: Add recommendations (#302)
This commit adds recommendations to the rendezvous spec regarding how a rendezvous
point should be configured. These were based on the discussions on the go
implementation PR and current code.

Co-authored-by: Max Inden <mail@max-inden.de>
2021-04-30 14:01:20 +02:00
Steven Allen
daf523ed78 Merge pull request #322 from libp2p/fix/mplex-64
Revert "mplex: allow for 28bit stream IDs."
2021-04-27 11:01:37 -07:00
Steven Allen
53306a55a3 fix(mplex): formatting
Co-authored-by: Max Inden <mail@max-inden.de>
2021-04-27 11:01:32 -07:00
Steven Allen
cc7c986a2e Revert "mplex: allow for 28bit stream IDs."
This reverts commit 51ec3e5ab1.

See the discussion starting at:

https://github.com/libp2p/specs/pull/317#issuecomment-826362668
2021-04-27 10:41:34 -07:00
Steven Allen
7cfc6a5010 Merge pull request #320 from mxinden/connections-secio
connections: Replace SECIO with Noise as baseline sec proto
2021-04-27 10:40:39 -07:00
Max Inden
4480efe66c relay/README: Add rust-libp2p to list of implementations (#318) 2021-04-27 15:09:14 +02:00
Max Inden
1d89217215 connections: Replace SECIO with Noise as baseline sec proto 2021-04-27 13:42:53 +02:00
Steven Allen
7e40097629 Merge pull request #317 from libp2p/fix/259
fix: specify max mplex stream ID size
2021-04-23 09:33:28 -07:00
Steven Allen
51ec3e5ab1 mplex: allow for 28bit stream IDs. 2021-04-22 09:53:10 -07:00
Steven Allen
3292c8220d fix mplex spec wording
Co-authored-by: Max Inden <mail@max-inden.de>
2021-04-22 08:50:50 -07:00
Steven Allen
076eec5532 fix: specify max mplex stream ID size
fixes #259
2021-04-21 17:08:21 -07:00
Steven Allen
c3d5c95634 feat: drop RSA to SHOULD
While its important for interop with IPFS, it's not really a
_requirement_ for libp2p. This makes Ed25519 the "standard".
2021-04-21 14:36:48 -07:00
Max Inden
c05edce42a connections/README: Add missing link to resource manager issue (#311) 2021-04-09 16:02:12 +02:00
Max Inden
9f6523988a pubsub/gossipsub/README: Mark rust gossipsub v1.0 as complete (#310) 2021-04-09 16:01:53 +02:00
Sammy
69e57d59dc pnet: Fix typos (#309) 2021-04-01 13:37:25 +02:00
Steven Allen
4a8d520084 Merge pull request #308 from mxinden/deprecate-secio
secio: Transition SECIO spec from Active to Deprecated
2021-03-26 10:28:25 -07:00
Max Inden
7a96e8039e secio: Transition SECIO spec from Active to Deprecated
The SECIO security transport has been deprecated [1]. This commit
updates the specification accordingly.

[1] https://blog.ipfs.io/2020-08-07-deprecating-secio/
2021-03-26 17:42:25 +01:00
Steven Allen
6a8fb7c0b3 Merge pull request #295 from mxinden/plaintext-prefix
plaintext: Clarify only handshake messages being framed
2021-03-14 21:21:37 -07:00
tmakarios
eb094acabe relay: Use SUCCESS instead of OK for relay status code (#293) 2021-03-13 17:52:07 +01:00
Raúl Kripalani
7d02f53b86 gossipsub v1.1 spec: fix anchor links. (#304)
* gossipsub v1.1 spec: fix anchor links.

* fix p3 and p3b links.

* Update gossipsub-v1.1.md
2020-12-10 10:41:05 +00:00