# Dumb Pipe、デバイス間の直接接続を再びシンプルに

Irohベースのこのツールは、NAT越え、暗号化、リレーへのフォールバックを単一のコマンドの背後に隠す。

NeoTechNews編集部

Dumb Pipeは、単純すぎるようにも聞こえる約束を中心に構築されている。まず2台のデバイスを直接接続し、その接続で何をするかは後から決めるというものだ。プロジェクトページによると、Irohの接続はNATを突破し、ネットワーク状況が変化しても接続を維持し、単一のコマンドで作成できる「ダムパイプ」だという。アカウントは不要。設定も不要。ネットワークが許すなら、マシン間に直接の経路を設けるだけだ。

そのシンプルさこそが狙いの一部だ。実際のところ、ピアツーピアのネットワーキングには、多くの場合、セットアップ手順や認証情報、各種の前提条件がつきまとい、ユーザーが本当にしたいことよりも接続自体を難しくしている。Dumb Pipeは、マシンがどこにあっても機能し、2台のコンピューターに素早くインストールして、一方のマシンから他方へデータを流せるとしている。機器同士をただつなぐ回線が欲しいユーザーにとって、これは魅力的な売り文句だ。

その下にある技術層は、なお本格的だ。プロジェクトによると、これらのダムパイプは「マジックソケット」上のQUICを使って構築されたIroh接続であり、UDPベースのストリーム多重化と暗号化を備えている。つまり、このパイプが「ダム」なのは、ユーザーが接続の仕組みを意識する必要がないという意味にすぎない。内部では、経路を維持し安全に保つため、依然として最新のネットワーク処理が行われている。

ページではフォールバックの仕組みも説明している。ツールによると、接続の約10~20%では、2台のデバイスを直接つなぐことがどうしてもできない。その場合、UDPトラフィックをパッケージ化してHTTP経由で送信する、メッシュ状のリレーノード網を使用する。これは重要な詳細だ。プロジェクトがインターネットを理想的な環境だと装ってはいないことを示しているからだ。直接経路が失敗した場合に、実用的な代替手段を提供している。

Dumb Pipeは、より大規模なライブラリを包む小さなラッパーとしても位置づけられている。ページによると、このツールはirohのRustクレートを囲む約200行のコードで構成され、開発者は自分のアプリでiroh Endpointを使い、同じ種類の接続を作成できるという。この点により、プロジェクトはユーザーだけでなく開発者にとっても興味深いものになっている。実際に動作するコマンドラインツールであると同時に、基盤となるネットワークスタックの使い方を示す最小限の実例でもある。

アドオンの存在も、その設計思想を示すもう一つの手がかりだ。ページでは、pubsub、データ転送、同期がオプションの追加機能として挙げられており、それらを追加すればパイプはもはやそれほどダムではなくなるとしている。これは矛盾ではない。意図を表明したものだ。中核となる製品は、信頼できる接続を確立することに焦点を当てており、そのほかのすべては、ユーザーが望めばその接続の上に載せられる。

幅広い魅力があることは明らかだ。人々は常に、NATと格闘したり複雑なインフラを構築したりせずに、データを移動し、セッションを維持し、サービス同士を接続する方法を探している。Dumb Pipeはその問題に簡潔な答えを提供しつつ、必要な場合にはより高度な動作を実現する余地を残している。その結果、遊び心のある名前ながら、直接接続を最良の意味で退屈なものにすることへ極めて真剣に取り組むツールとなっている。