Lightning Network에서는 보통 송신자가 경로를 구성합니다. 공개 gossip 그래프, 수취인이 제공한 정보, 자체 결과를 바탕으로 목적지까지의 path를 추정하고, 각 hop의 금액·fee·CLTV를 역순으로 계산해 onion packet에 넣으며, 실패하면 다른 경로를 재시도합니다. 공개 그래프는 현재 잔액 분할을 보여주지 않으므로 routing은 불완전하고 빠르게 변하는 정보 위의 확률적 판단입니다.
Routing은 payer에서 시작합니다. wallet 또는 node가 payee까지 후보 path를 고르고 각 중개자에게 다음 channel을 지정합니다. 수취인은 identity, features, 경우에 따라 route hints나 blinded paths를 제공하지만 공개 구간은 대개 송신자가 계산합니다.
BOLT #7은 channel announcements와 방향별 channel updates를 전파하며 base fee, 비례 fee, CLTV delta, 최소·최대와 가용성 flag를 담습니다. 이는 공개 policy와 topology일 뿐 peer의 online 상태나 현재 충분한 유동성을 증명하지 않습니다.
공개 gossip은 channel 양쪽의 balance 분할을 공개하지 않습니다. Router는 알려진 로컬 유동성, capacity, 과거 성공과 실패, penalty, 구현별 scoring을 결합합니다. 이론상 가장 싼 path가 성공 확률이 가장 높지는 않습니다.
금액과 expiry는 payee에서 payer 방향으로 역산합니다. 각 hop의 incoming amount는 다음 hop 금액과 자체 fee를 포함하고 incoming CLTV는 공개 delta만큼 outgoing CLTV보다 커야 합니다. hop이 늘면 총 fee와 timelock 여유도 늘어납니다.
BOLT #4는 onion routing을 사용합니다. payer는 hop마다 별도로 암호화한 payload가 있는 Sphinx packet을 만듭니다. 중개 node는 이웃 peer와 자신의 지시만 알며 전체 path, 길이, 위치는 알지 못하지만 traffic analysis와 공모 위험은 남습니다.
일시적 channel failure, 부족한 fee, 잘못된 CLTV, 알 수 없는 next peer는 제한된 failure signal을 payer에게 돌려줍니다. 구현은 후보를 penalize하고 재계산·재시도할 수 있지만 한 결과가 변하는 channel을 영구히 설명하지 않습니다.
모든 hop이 HTLC를 수락하고 reserve, pending HTLC, htlc_minimum_msat 및 htlc_maximum_msat 이후 올바른 방향의 유동성을 가져야 합니다. 큰 총 capacity나 많은 connections도 하나의 불균형 channel 병목을 없애지 못합니다.
Invoice가 basic MPP를 지원하면 payer는 total_msat를 여러 paths로 나누고 수취인이 한 세트로 결제합니다. MPP는 분산 유동성을 쓰지만 HTLC, 시도, fees를 늘리며 방향별 capacity를 만들지는 않습니다.
BOLT 11 route hints는 마지막 비공개 hops를 보여줄 수 있고 BOLT 12와 route blinding은 introduction point를 통한 암호화된 끝 구간을 제공합니다. Payer는 여전히 첫 지점까지 도달하고 합산 fee와 CLTV를 지켜야 합니다.
구현과 version, amount, 최대 fee와 CLTV, attempt 수, 사용 paths, 완료 시간, 정확한 failure reason을 기록합니다. 같은 node 쌍을 가까운 시점에 비교하십시오. 성공은 특정 결제와 network state의 속성이지 영구 전역 score가 아닙니다. 출처: BOLT #4 — Onion Routing Protocol; BOLT #7 — P2P Node and Channel Discovery; BOLT #11 — Lightning Payment Encoding; Lightning Labs — Pathfinding; LDK — Routing and Route Parameters.
더 정확히 이해하려면 이 항목과 함께 다음도 읽어 보세요 Lightning Network, HTLC, Lightning 유동성, Payment Channel, Bitcoin, Inbound Liquidity. 다음 항목에서도 이 글을 참조합니다 HTLC, Lightning 유동성, BOLT 12, Inbound Liquidity.