Commit Graph

776 Commits

Author SHA1 Message Date
Marten Seemann
cd75aea095 bump mDNS spec version (#371) 2021-10-12 06:41:34 -07:00
Marten Seemann
9cb161cc44 Merge pull request #368 from libp2p/mdns-random-peer-name
use a random string as peer-name in mDNS
2021-10-12 14:05:45 +01:00
Marten Seemann
08b9a70f60 use a random string as peer-name in mDNS 2021-10-12 14:52:18 +02:00
Marten Seemann
9a3324209c Merge pull request #366 from r-zig/patch-1
Update circuit-v2.md
2021-09-30 15:21:20 +01:00
r-zig
591707373e Update circuit-v2.md
fix gstatus to status
2021-09-30 16:49:49 +03:00
Sönke Hahn
3785e29374 tls/: Fix typo (#365) 2021-09-25 18:41:49 +02:00
Max Inden
7fe1dea162 ROADMAP: Reference Protocol Select specification pull request (#364) 2021-09-25 12:27:58 +02:00
Marten Seemann
b55f9aba0a Merge pull request #363 from libp2p/dcutr-link
add link to DCUtR to README
2021-09-05 15:25:34 +01:00
Marten Seemann
d34653e70d add link to DCUtR to README 2021-09-04 03:08:19 -07:00
Roman
7ee906d6e0 tls/: Define precisely how to marshal SubjectPublicKeyInfo (#358)
Co-authored-by: Max Inden <mail@max-inden.de>
2021-08-23 17:08:17 +02:00
vyzo
689e5cb87c relay/DCUtR: Add Direct Connection Upgrade through Relay protocol (#173)
> In this specification, we describe a synchronization protocol for direct
connectivity with hole punching that eschews signaling servers and utilizes
existing relay connections instead.

Co-authored-by: Raúl Kripalani <raul@protocol.ai>
Co-authored-by: Max Inden <mail@max-inden.de>
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
2021-08-23 16:43:44 +02:00
Max Inden
4b54c64b3c identify/: Don't close connection on protocol version mismatch (#360)
Previous versions of this specification required connections to be
closed on version mismatch. This requirement is revoked to allow
interoperability between protocol families / networks.
2021-08-10 18:31:54 +02:00
Denis Kolegov
d8130f46c1 noise/: Clarify properties of handshake's second message (#356)
Co-authored-by: Max Inden <mail@max-inden.de>
2021-08-06 08:32:57 +02:00
Steven Allen
1544b68658 Merge pull request #357 from kpp/patch-1
Fix tls.md
2021-08-02 08:09:22 -07:00
Roman
f4ed51d5f5 Update tls.md
Fix tls.md to use OCTET STRING instead of BIT STRING for elements of SignedKey
2021-07-30 17:57:52 +03:00
Marten Seemann
98e0ca0e54 Merge pull request #191 from libp2p/addressing-spec
Add spec on addressing & use of multiaddr
2021-07-24 12:35:47 +02:00
Marten Seemann
2b53d89b42 add note about dnslink 2021-07-24 12:33:54 +02:00
Marten Seemann
f243160d18 fix date
Co-authored-by: Steve Loeppky <stvn@loeppky.com>
2021-07-23 18:49:46 +02:00
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