<p>Each channel participant sets their own policy for forwarding HTLCs through the channel. They broadcast a <code>channel_update</code> message containing the policy, which is received and forwarded over the gossip network, and also received by the channel's counter party. The <code>channel_update</code> has a bit flag indicating whether the update belongs to node1 or node2.</p>

<p>A missing policy could mean that one party has not yet broadcast any policy, or that you've missed the broadcast message if you went offline at some point. In the latter case, your node should be able to query the policy over the gossip network with a <code>query_short_channel_ids</code> message.</p>

<p>If it is one of your own channels, it may just be that the channel is private and your node sets a policy regardless of whether or not the node is announced. I'm not sure about the specifics of any implementation in that regard.</p>

CC BY-SA 4.0
2019-02-21T20:43:52.793Z
Thanks for the helpful information. It has been a day and the gossip protocol does not deliver the updates. Neither of the nodes is private and the channels is also not private (from my point of view). So seems like the problem is with broadcasting.
Dmitry Laptev
CC BY-SA 4.0
2019-02-21T07:51:08.003Z
2019-02-21T07:51:08.003Z
Mark H
<p>I randomly stumbled upon an example of a channel for which one of the two sides does not have a channel policy. What could be the reason for that? For example, <code>lncli getchaninfo 620048691895336960</code> returns this (and <code>node1_policy</code> here is <code>null</code>):</p>

<pre><code>{
    "channel_id": "620048691895336960",
    "chan_point": "4857421490e50d3ffed1e31346c8cc56f229f70ad93d800d647db794cc09bb59:0",
    "last_update": 1550695804,
    "node1_pub": "03b9c09d8522d6d6ca3c4fe3e635b65e962fade78437ef2ac46f37df4c0119aa03",
    "node2_pub": "03bb88ccc444534da7b5b64b4f7b15e1eccb18e102db0e400d4b9cfe93763aa26d",
    "capacity": "2000000",
    "node1_policy": null,
    "node2_policy": {
        "time_lock_delta": 144,
        "min_htlc": "1",
        "fee_base_msat": "0",
        "fee_rate_milli_msat": "1",
        "disabled": false
    }
}
</code></pre>

<p>If that is relevant, <code>node1</code> here runs <code>eclair</code>, and <code>node2</code> runs <code>lnd</code>.</p>

<lightning-network><lightning-network-daemon><eclair>
How can channel policy be missing?
Dmitry Laptev
# How can channel policy be missing?

(Asked by: username_0 on 2019-02-20)

I randomly stumbled upon an example of a channel for which one of the two sides does not have a channel policy. What could be the reason for that? For example, `lncli getchaninfo 620048691895336960` returns this (and `node1_policy` here is `null`):

```
{
    "channel_id": "620048691895336960",
    "chan_point": "4857421490e50d3ffed1e31346c8cc56f229f70ad93d800d647db794cc09bb59:0",
    "last_update": 1550695804,
    "node1_pub": "03b9c09d8522d6d6ca3c4fe3e635b65e962fade78437ef2ac46f37df4c0119aa03",
    "node2_pub": "03bb88ccc444534da7b5b64b4f7b15e1eccb18e102db0e400d4b9cfe93763aa26d",
    "capacity": "2000000",
    "node1_policy": null,
    "node2_policy": {
        "time_lock_delta": 144,
        "min_htlc": "1",
        "fee_base_msat": "0",
        "fee_rate_milli_msat": "1",
        "disabled": false
    }
}

```

If that is relevant, `node1` here runs `eclair`, and `node2` runs `lnd`.

**Tags:** lightning-network, lightning-network-daemon, eclair


---

## 1 answers

### Answer by username_1 on 2019-02-21. Score: 1 | Accepted answer

Each channel participant sets their own policy for forwarding HTLCs through the channel. They broadcast a `channel_update` message containing the policy, which is received and forwarded over the gossip network, and also received by the channel's counter party. The `channel_update` has a bit flag indicating whether the update belongs to node1 or node2.

A missing policy could mean that one party has not yet broadcast any policy, or that you've missed the broadcast message if you went offline at some point. In the latter case, your node should be able to query the policy over the gossip network with a `query_short_channel_ids` message.

If it is one of your own channels, it may just be that the channel is private and your node sets a policy regardless of whether or not the node is announced. I'm not sure about the specifics of any implementation in that regard.

> **Comments:**
> **username_0**: Thanks for the helpful information. It has been a day and the gossip protocol does not deliver the updates. Neither of the nodes is private and the channels is also not private (from my point of view). So seems like the problem is with broadcasting.  

---

