@@ -23,7 +23,6 @@ third-party data ownership.
23
23
- [ ⏱ Full Observability] ( #-full-observability )
24
24
- [ 🧪 Automated compatibility testing] ( #-automated-compatibility-testing )
25
25
- [ Stream Migration Protocol] ( #stream-migration-protocol )
26
- - [ WebRTC] ( #webrtc )
27
26
- [ 🤖 libp2p as a Wasm library] ( #-libp2p-as-a-wasm-library )
28
27
- [ 🤝 Low latency, efficient connection handshake] ( #-low-latency-efficient-connection-handshake )
29
28
- [ 🛣️ Peer Routing Records] ( #️-peer-routing-records )
@@ -38,6 +37,7 @@ third-party data ownership.
38
37
- [ 🏹 RPC and other common node communication patterns] ( #-rpc-and-other-common-node-communication-patterns )
39
38
- [ Done] ( #done )
40
39
- [ 🕸 Hole punching on TCP and QUIC] ( #-hole-punching-on-tcp-and-quic )
40
+ - [ WebRTC] ( #webrtc )
41
41
42
42
## Core Tenets
43
43
Before we dive into what libp2p should support and enable, let's outline the core tenets that underpin the project. As maintainers, we commit to ensuring libp2p is:
@@ -265,27 +265,6 @@ connection to a direct connection.
265
265
- Tracking issue https://github.com/libp2p/specs/issues/328
266
266
- Specification draft https://github.com/libp2p/specs/pull/406#discussion_r852835671
267
267
268
- ### WebRTC
269
-
270
- ** Status** : In progress
271
-
272
- ** What?** WebRTC is a transport protocol supported by all major browsers. Those
273
- browsers allow the establishment of connections to remote endpoints that don't
274
- have a TLS certificate signed by a trusted certificate authority. In addition
275
- WebRTC includes hole punching capabilities.
276
-
277
- ** Why?** In most p2p networks the majority of nodes do not have a signed TLS
278
- certificate. With WebRTC browsers will thus be able to connect to these
279
- previously unreachable nodes. In addition, being able to hole punch allows
280
- browsers to connect to nodes behind firewalls and NATs e.g. other browsers. Note
281
- that the former, namely connecting without trusted TLS certificate, can as well
282
- be achieved with the [ WebTransport] ( #✈️-webtransport ) protocol.
283
-
284
- ** Links:**
285
-
286
- - Tracking issue https://github.com/libp2p/specs/issues/220
287
- - Specification draft https://github.com/libp2p/specs/pull/412
288
-
289
268
### 🤖 libp2p as a Wasm library
290
269
291
270
** What?** This point encompasses two things:
@@ -666,3 +645,25 @@ connect to the rest of the libp2p network.
666
645
- [ webtransport-go] ( https://github.com/marten-seemann/webtransport-go/ )
667
646
- [ go-libp2p WebTransport] ( https://github.com/libp2p/go-libp2p/tree/master/p2p/transport/webtransport )
668
647
- [ js-libp2p WebTransport] ( https://github.com/libp2p/js-libp2p-webtransport/ )
648
+
649
+ ### WebRTC
650
+
651
+ ** Status** : In progress
652
+
653
+ ** What?** WebRTC is a transport protocol supported by all major browsers. Those
654
+ browsers allow the establishment of connections to remote endpoints that don't
655
+ have a TLS certificate signed by a trusted certificate authority. In addition
656
+ WebRTC includes hole punching capabilities.
657
+
658
+ ** Why?** In most p2p networks the majority of nodes do not have a signed TLS
659
+ certificate. With WebRTC browsers will thus be able to connect to these
660
+ previously unreachable nodes. In addition, being able to hole punch allows
661
+ browsers to connect to nodes behind firewalls and NATs e.g. other browsers. Note
662
+ that the former, namely connecting without trusted TLS certificate, can as well
663
+ be achieved with the [ WebTransport] ( #✈️-webtransport ) protocol.
664
+
665
+ ** Links:**
666
+
667
+ - Tracking issue https://github.com/libp2p/specs/issues/220
668
+ - [ ` /webrtc ` specification] ( ./webrtc/webrtc.md )
669
+ - [ ` /webrtc-direct ` specification] ( ./webrtc/webrtc-direct.md )
0 commit comments