如何将 DHT 库 dht-example.c 用于分布式哈希表
How to use DHT library dht-example.c for distributed hash tables
我想在 C 程序中使用 BitTorrent DHT library 作为分布式哈希表。因此,我在我的机器上下载并编译了它——工作完美。
现在我有一个可执行的 dht-example 输出:
Usage: dht-example [-q] [-4] [-6] [-i filename] [-b address]...
port [address port]...
我可以用这个例子做什么?
如何使用 DHT:
连接分布式机器,填充它或从中读取哈希表?
非常感谢
阿金
dht-example.c
是上述 DHT 库中提供的一个极简示例。
在 运行 编译 make
之后,您应该 运行 ./example-dht 6882 67.215.246.10 6881
。这将在本地端口 6882 上打开一个侦听 UDP 套接字,用于与 DHT 网络对话。
但是在您的新对等点能够连接到网络之前,它至少需要一个已连接的对等点才能从中获得更多对等点。这是第三个和第四个 parameter/argument 起作用的地方。它是网络上已知良好节点的 IP 地址和端口组合,在本例中为 router.bittorrent.com
。这个过程称为引导。
该程序不接受来自标准输入的指令,而是通过内核信号 SIGINT
、SIGUSR1
和 SIGUSR2
。使用 kill -L
列出您机器上的信号编号,然后命令 ps aux | grep example-dht
而 example-dht
是 运行 获取 example-dht
.
的进程 ID
要开始搜索硬编码在 dht-example.c
中的 infohash 节点,请发出命令 kill -XX YYYYY
,其中 XX
是 SIGUSR1
信号的编号,并且YYYYY
是 dht-example
的进程 ID。观察 dht-example
程序的标准输出。
要转储我们的桶和桶 0 中的其他节点,发出命令 kill -XX YYYYY
,其中 XX
是 SIGUSR2
信号的编号,YYYYY
是dht-example
的进程 ID。观察 dht-example
程序的标准输出。
要停止 dht-exmample
,请发出命令 kill -XX YYYYY
,其中 XX
是 SIGINT
信号的编号,YYYYY
是 dht-example
。观察 dht-example
程序的标准输出。
我想在 C 程序中使用 BitTorrent DHT library 作为分布式哈希表。因此,我在我的机器上下载并编译了它——工作完美。 现在我有一个可执行的 dht-example 输出:
Usage: dht-example [-q] [-4] [-6] [-i filename] [-b address]...
port [address port]...
我可以用这个例子做什么? 如何使用 DHT: 连接分布式机器,填充它或从中读取哈希表?
非常感谢 阿金
dht-example.c
是上述 DHT 库中提供的一个极简示例。
在 运行 编译 make
之后,您应该 运行 ./example-dht 6882 67.215.246.10 6881
。这将在本地端口 6882 上打开一个侦听 UDP 套接字,用于与 DHT 网络对话。
但是在您的新对等点能够连接到网络之前,它至少需要一个已连接的对等点才能从中获得更多对等点。这是第三个和第四个 parameter/argument 起作用的地方。它是网络上已知良好节点的 IP 地址和端口组合,在本例中为 router.bittorrent.com
。这个过程称为引导。
该程序不接受来自标准输入的指令,而是通过内核信号 SIGINT
、SIGUSR1
和 SIGUSR2
。使用 kill -L
列出您机器上的信号编号,然后命令 ps aux | grep example-dht
而 example-dht
是 运行 获取 example-dht
.
要开始搜索硬编码在 dht-example.c
中的 infohash 节点,请发出命令 kill -XX YYYYY
,其中 XX
是 SIGUSR1
信号的编号,并且YYYYY
是 dht-example
的进程 ID。观察 dht-example
程序的标准输出。
要转储我们的桶和桶 0 中的其他节点,发出命令 kill -XX YYYYY
,其中 XX
是 SIGUSR2
信号的编号,YYYYY
是dht-example
的进程 ID。观察 dht-example
程序的标准输出。
要停止 dht-exmample
,请发出命令 kill -XX YYYYY
,其中 XX
是 SIGINT
信号的编号,YYYYY
是 dht-example
。观察 dht-example
程序的标准输出。