Skip to content

Commit 162ac36

Browse files
authored
docs: mi/3294/peers-update (#3360)
* docs: mi/3294/peers-update - Reorient Prerequisites list on Peers page into sections - Added context for authTokens * docs: mi/3294/peers-update * docs: mi/3294/peers-update Fixes broken links as a result of renaming H2 title from Prerequisites to Perform prerequisites * docs: mi/3294/peers-update * docs: mi/3294/peers-update
1 parent 5884618 commit 162ac36

File tree

3 files changed

+36
-13
lines changed

3 files changed

+36
-13
lines changed

packages/documentation/src/content/docs/integration/deployment/services/backend-service.mdx

+2-2
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Some of the responsibilities of a connector include:
3939

4040
- Authenticating packets against ILP account credentials.
4141
- Forwarding packets to a sender or receiver.
42-
- Rejecting a packet for any number of reasons, including expiration, insufficient liquidity, rate limit exceeded, or if the amount exceeds the `maxPacketAmount` [agreed to](/integration/requirements/peers#prerequisites) by the connector and its peer.
42+
- Rejecting a packet for any number of reasons, including expiration, insufficient liquidity, rate limit exceeded, or if the amount exceeds the `maxPacketAmount` [agreed to](/integration/requirements/peers#perform-prerequisites) by the connector and its peer.
4343
- Converting currencies.
4444
- Fulfilling packets with an internal STREAM server.
4545

@@ -48,7 +48,7 @@ The `backend` service includes an HTTP server listening on the configured `CONNE
4848
Similarly, if a packet's destination address corresponds to a peer, your connector forwards the packet to your peer over HTTP, along with your peer's outgoing HTTP `authToken`.
4949

5050
:::note[Auth tokens]
51-
You and your peer should have exchanged incoming and outgoing auth tokens as part of establishing your [peering relationship](/integration/requirements/peers#prerequisites).
51+
You and your peer should have exchanged incoming and outgoing auth tokens as part of establishing your [peering relationship](/integration/requirements/peers#perform-prerequisites).
5252
:::
5353

5454
A packet can either continue on to your peer via HTTP or end at your Rafiki instance's STREAM server. If the packet terminates at your STREAM server, your connector attempts to extract and decode the payment tag from the packet's destination address. When your connector successfully matches the tag with a locally managed wallet address or incoming payment, the connector does not forward the packet. Instead, it credits the corresponding balance and track the total amount received in Redis to support STREAM receipts. Packets addressed to a wallet address happen via SPSP.

packages/documentation/src/content/docs/integration/requirements/peers.mdx

+33-10
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ title: Peers
33
---
44

55
import { CodeBlock, LinkOut } from '@interledger/docs-design-system'
6+
import { Badge } from '@astrojs/starlight/components'
67

78
To join the Interledger network and be able to send and receive payments, you must add one or more peers to your Rafiki instance. Peering establishes the connections needed for your Rafiki instance to interact with another account servicing entity (ASE). The purpose of this guide is to help you set up and manage peers.
89

@@ -14,25 +15,47 @@ Refer to the [Rafiki Admin user guide](/admin/admin-user-guide#peers) for detail
1415
Whether you are using the Backend Admin API or the Rafiki Admin application, the underlying configurations and requirements remain the same. Choose the interface that best suits your individual workflow.
1516
:::
1617

17-
## Prerequisites
18+
## Perform prerequisites
1819

1920
:::note
2021
Peering is not required unless you want to participate in transactions with another ASE on the Interledger network. For foundational peering concepts, refer to the Peers section of [Interledger Concepts](/overview/concepts/interledger/#peers).
2122
:::
2223

2324
Before adding a peer, you and the account servicing entity you intend to peer with must both:
2425

25-
- Run an implementation of an [Interledger connector](/integration/deployment/services/backend-service#interledger-connector) (ideally Rafiki).
26-
- Agree on an [asset](/overview/concepts/accounting#assets) for the peering relationship. You can set up multiple peering relationships with the same peer based on different assets. At least one asset shared by you and your peer must be added to your Rafiki instance prior to setting up the peering relationship. For more information, refer to [Assets](/integration/requirements/assets/).
27-
- Exchange static <LinkOut href="https://interledger.org/developers/rfcs/ilp-addresses/">Interledger (ILP) addresses</LinkOut> with your peer. Your ILP address is self-assigned during Rafiki setup and stored locally as the `ILP_ADDRESS` environment variable for the `backend` service.
28-
- Communicate a connection endpoint for the other peer to send packets to.
29-
- Exchange `auth` tokens for the connection endpoint.
30-
- Agree on a settlement mechanism (a means of paying one another for the successful forwarding and delivery of packets), which is outside the scope of Interledger and Rafiki.
26+
### Run an Interledger connector
3127

32-
### Optional settings
28+
While you and your peer may run any implementation of an [Interledger connector](/integration/deployment/services/backend-service#interledger-connector) such as the <LinkOut href="https://github.com/interledger/interledgerjs">TypeScript implementation</LinkOut>, it is recommended to use Rafiki.
3329

34-
- Deposit an `initialLiquidity` for your peer. You can deposit liquidity later using the `depositPeerLiquidity` mutation.
35-
- Define a `maxPacketAmount` value, which specifies the maximum packet size you are willing to accept from the peer. Your peer's `maxPacketAmount` value does not need to match, as this value is independently set by each ASE. If omitted, payments will not be broken into smaller packets.
30+
### Agree on an asset
31+
32+
Both you and your peer must agree on an [asset](/overview/concepts/accounting#assets) for the peering relationship. You can set up multiple peering relationships with the same peer based on different assets. At least one asset shared by you and your peer must be added to your Rafiki instance prior to setting up the peering relationship. For more information, refer to [Assets](/integration/requirements/assets/).
33+
34+
### Exchange static Interledger (ILP) addresses
35+
36+
Your <LinkOut href="https://interledger.org/developers/rfcs/ilp-addresses/">ILP address</LinkOut> is self-assigned during Rafiki setup and stored locally as the `ILP_ADDRESS` environment variable for the `backend` service.
37+
38+
### Communicate a connection endpoint
39+
40+
The connection endpoint will be a url that the other peer will send packets to.
41+
42+
### Exchange auth tokens for the connection endpoint
43+
44+
Incoming `authtokens` allow you to authenticate that packets sent from your peer originated from your peer's Interledger connector and were not tampered en route. The outgoing `authtoken` allows your peer to authenticate that received packets originated from your Interledger connector and were not tampered with en route. The use of auth tokens is not required when [autopeering with the Test Network](/integration/playground/autopeering).
45+
46+
### Agree on a settlement mechanism
47+
48+
The settlement mechanism you both agree to use is what facilitates the transfer of actual funds between you and your peer. Neither Interledger nor Rafiki provide a settlement mechanism.
49+
50+
## Perform optional prerequisites
51+
52+
### Deposit an initial liquidity for your peer
53+
54+
While you may deposit an `initiaLiquidity` for your peer, you can deposit liquidity later using the `depositPeerLiquidity` mutation.
55+
56+
### Define a maxPacketAmout value
57+
58+
The `maxPacketAmount` specifies the maximum packet size you are willing to accept from the peer. Your peer's `maxPacketAmount` value does not need to match, as this value is independently set by each ASE. If omitted, payments will not be broken into smaller packets.
3659

3760
## Set up peering in Rafiki
3861

packages/documentation/src/content/docs/overview/concepts/interledger.mdx

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Each packet represents a conditional IOU which affects financial accounting bala
1818

1919
Interledger itself is a network of computers that enables sending payment messages across payment networks. Each computer on the network is a node.
2020

21-
For two nodes on the Interledger network to exchange ILP packets with one another, the two nodes must be peers. There are a number of [requirements](/integration/requirements/peers#prerequisites) that both you and your potential peer must meet to form a peering relationship.
21+
For two nodes on the Interledger network to exchange ILP packets with one another, the two nodes must be peers. There are a number of [requirements](/integration/requirements/peers#perform-prerequisites) that both you and your potential peer must meet to form a peering relationship.
2222

2323
Since the purpose of peering is to facilitate payments, which often involves extending lines of credit, your peer should be someone you trust. We strongly recommend you and your potential peer define your expectations and outline your agreements in a legally binding document peering with one another.
2424

0 commit comments

Comments
 (0)