Skip to content

Commit 575a63e

Browse files
authored
Add the missing links (#395)
1 parent d91210e commit 575a63e

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

src/app/blog/lets-write-a-dht-1/page.mdx

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,11 @@ This is a very hard problem. Existing systems such as bittorrent solve it reason
3535

3636
The standard solution for content discovery in systems such as bittorrent and IPFS is a Distributed Hash Table (DHT). This series of blog posts and the associated repository are an experiment: is it possible to write a high performance distributed hash table using iroh connections?
3737

38-
The code is not yet production ready, but it is an interesting use case for many advanced techniques involving iroh connections, such as connection pools and 0rtt connections. It also is a nice way to show off irpc, both for *local* rpc to control a DHT node and for the DHT protocol itself.
38+
The code is not yet production ready, but it is an interesting use case for many advanced techniques involving iroh connections, such as connection pools and 0rtt connections. It also is a nice way to show off [irpc], both for *local* rpc to control a DHT node and for the DHT protocol itself.
3939

4040
# What is a Distributed Hash Table
4141

42-
Let's see what wikipedia says:
42+
Let's see what [wikipedia](https://en.wikipedia.org/wiki/Distributed_hash_table) says:
4343

4444
"A distributed hash table (DHT) is a distributed system that provides a lookup service similar to a hash table. Key–value pairs are stored in a DHT, and any participating node can efficiently retrieve the value associated with a given key. The main advantage of a DHT is that nodes can be added or removed with minimum work around re-distributing keys."
4545

@@ -235,3 +235,12 @@ You might ask why this is not a streaming response but rather a single Vec. The
235235
And that's it. That is the entire RPC protocol. Many DHT implementations also add a `Ping` call, but since querying the routing table is so cheap, if you want to know if a node is alive, you might as well ask it for the closest nodes to some random key and get some extra information for free.
236236

237237
Please checkout our published DHT code under [`iroh-dht-experiment`](https://github.com/n0-computer/iroh-dht-experiment), but we will explore actually implementing and testing the DHT in later blog posts! Stay tuned.
238+
239+
[Kademlia]: https://en.wikipedia.org/wiki/Kademlia
240+
[metric]: https://en.wikipedia.org/wiki/Metric_space
241+
[irpc]: https://docs.rs/irpc/latest/irpc/
242+
[postcard]: https://docs.rs/postcard/latest/postcard/
243+
[blog post about irpc]: https://www.iroh.computer/blog/irpc
244+
[NodeAddr]: https://docs.rs/iroh/latest/iroh/struct.NodeAddr.html
245+
[node discovery]: https://www.iroh.computer/blog/iroh-global-node-discovery
246+
[bep_0044]: https://www.bittorrent.org/beps/bep_0044.html

0 commit comments

Comments
 (0)