user5406: Is there a way to find out what Lightning implementations power which proportion of the Lightning Network? I tried checking a number of websites with statistics about the Lightning Network including 1ml.com, Acinq.co, Amboss.space, Bitcoin Visuals, and Mempool.space, but I couldn't find the statistic anywhere.
This leaves me wondering:

Is it possible to determine from gossip data what implementation a node runs?
Is there any way to find this information without running your own node, e.g. per a website that publishes it?


user133407: A. Mizrahi and A. Zohar developed a way to determine the client type based on the messages sent via the gossip protocol in https://arxiv.org/pdf/2002.06564.pdf. The default values for parameters used by each implementation vary slightly, and some of these settings are helpful in knowing the implementations.





LND
C-Lightning
Eclair
BOLT




max concurrent htlcs
483
30
30
<=483





Bitrefill also tracks implementations for the payments done using lightning to buy gift cards etc. These stats look different and updated:


user27931: I think a naïve, manual approach would be to infer the implementation from the gossip information, as you suggested. In particular, there are various feature flags that are advertised in the node_announcement gossip message, marked with an N in the context column of the table in BOLT 9.
Given a sufficiently recent understanding of which implementation supports which feature, and more importantly, where the implementations diverge in their support, and also assuming that most of the gossiping nodes run reasonably recent versions of their respective software, this might allow you to make an educated guess.
The obvious caveat of this approach is, of course, that once Lightning is done™ and we finally reach feature parity between all implementations (soon!), such distinctions will no longer be possible to be gleamed from gossip data.

5406: <p>Is there a way to find out what Lightning implementations power which proportion of the Lightning Network? I tried checking a number of websites with statistics about the Lightning Network including 1ml.com, Acinq.co, Amboss.space, Bitcoin Visuals, and Mempool.space, but I couldn't find the statistic anywhere.</p>
<p>This leaves me wondering:</p>
<ul>
<li>Is it possible to determine from gossip data what implementation a node runs?</li>
<li>Is there any way to find this information without running your own node, e.g. per a website that publishes it?</li>
</ul>
 133407: <p>A. Mizrahi and A. Zohar developed a way to determine the client type based on the messages sent via the gossip protocol in <a href="https://arxiv.org/pdf/2002.06564.pdf" rel="nofollow noreferrer">https://arxiv.org/pdf/2002.06564.pdf</a>. The default values for parameters used by each implementation vary slightly, and some of these settings are helpful in knowing the implementations.</p>
<div class="s-table-container">
<table class="s-table">
<thead>
<tr>
<th></th>
<th>LND</th>
<th>C-Lightning</th>
<th>Eclair</th>
<th>BOLT</th>
</tr>
</thead>
<tbody>
<tr>
<td>max concurrent htlcs</td>
<td>483</td>
<td>30</td>
<td>30</td>
<td>&lt;=483</td>
</tr>
</tbody>
</table>
</div>
<p><a href="https://i.stack.imgur.com/Um8Jb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Um8Jb.png" alt="ln-implementations-arxiv.org/pdf/2002.06564" /></a></p>
<p><a href="https://www.bitrefill.com/lightning-toplist" rel="nofollow noreferrer">Bitrefill</a> also tracks implementations for the payments done using lightning to buy gift cards etc. These stats look different and updated:</p>
<p><a href="https://i.stack.imgur.com/WlP1e.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/WlP1e.png" alt="ln-implementations-bitrefill" /></a></p>
 27931: <p>I think a naïve, manual approach would be to infer the implementation from the gossip information, as you suggested. In particular, there are various feature flags that are advertised in the <code>node_announcement</code> gossip message, marked with an <code>N</code> in the <code>context</code> column of the table in <a href="https://github.com/lightning/bolts/blob/master/09-features.md#bolt-9-assigned-feature-flags" rel="nofollow noreferrer">BOLT 9</a>.</p>
<p>Given a sufficiently recent understanding of which implementation supports which feature, and more importantly, where the implementations diverge in their support, and also assuming that most of the gossiping nodes run reasonably recent versions of their respective software, this might allow you to make an educated guess.</p>
<p>The obvious caveat of this approach is, of course, that once Lightning is done™ and we finally reach feature parity between all implementations (soon!), such distinctions will no longer be possible to be gleamed from gossip data.</p>
