12章経路探索とペイメントの配送

ライトニングネットワークでの支払いは、支払人から受取人へのパスを見つけ出すことにかかっています。このプロセスを経路探索(pathfinding)と呼びます。ルーティングを開始するのは支払人であるため、受取人に到達できるパスは支払人が見つけ出さなければなりません。10章で説明したように、このパスはオニオンにエンコードされます。

本章では、経路探索の問題を取り上げ、チャネルの残高に関する不確実性により、この問題がどのように複雑化するのかを理解します。そして、一般的な経路探索の実装がこの問題をどのように解決するのかを確認します。

12.1 ライトニングプロトコルスイートでの経路探索

ライトニングプロトコルスイートの最上位層であるペイメント層では、経路探索、パスの選択、マルチパートペイメント(MPP)、ペイメントの試行錯誤ループがその大部分を占めています。

図12-1では、枠で囲まれている部分に当たります。

ライトニングプロトコルスイートでのペイメントの転送

図12-1 ライトニングプロトコルスイートでのペイメントの転送

12.1.1 BOLTはどこ?

ここまでは、ライトニングネットワークを構成しているさまざまなテクノロジーを取り上げ、それらの厳密な仕様をBOLT規格の一部として捉えてきました。経路探索がBOLTの一部ではないと知ったら驚くかもしれません。

経路探索がBOLTの一部ではないのは、さまざまな実装間の調整や相互運用の類いがいっさい求められないためです。ここまで見てきたように、パスを選択するのは支払人です。ルーティングの詳細はBOLTで厳密に定義されていますが、パスの発見と選択は支払人に一任されます。このため、ノード実装ごとに、経路探索に異なる戦略やアルゴリズムを選択できます。それどころか、さまざまなノード/クライアント実装やウォレット実装が競い合い、それぞれの経路探索アルゴリズムを「売り」にすることもできます。 ...

Get マスタリング・ライトニングネットワーク ―ビットコインの迅速な支払いを実現するセカンドレイヤーブロックチェーンプロトコル now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.