You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adding this here as it was discussed off-band. Right now libp2p isn't capable of giving the amount of total raw data exchanged between two nodes (after the muxer and crypto framings). The only bandwidth measurement available is at a stream level through go-libp2p-core/metrics/bandwidth.go: TotalBandwidth(). A wire-level measurement could come pretty handy, especially when debugging implementations after the muxer.
@raulk: To achieve this we may want to implement a transport wrapper that wraps connections and reports physical bytes read and written to the Reporter. For this we’d need to enhance the Reporter interface (or add a secondary Reporter interface that we can type assert against to know if the implementation has that feature).
Thus we will have two levels of bandwidth measurements in libp2p:
The transport would tell us how many bytes were written/read off the wire (disregarding the L3/L4 protocol framing), per connection (which we can then map to the peer).
The higher-up component can tell us how many bytes were written/read per protocol and per stream.
We probably want a single sink for these stats, with various reporting sources.
Adding this here as it was discussed off-band. Right now libp2p isn't capable of giving the amount of total raw data exchanged between two nodes (after the muxer and crypto framings). The only bandwidth measurement available is at a stream level through
go-libp2p-core/metrics/bandwidth.go: TotalBandwidth()
. A wire-level measurement could come pretty handy, especially when debugging implementations after the muxer.cc @aarshkshah1992
The text was updated successfully, but these errors were encountered: