State of one virtual link, the abstraction CORE sits on top of. More...
#include <gnunet_transport_monitor_service.h>
Data Fields | |
| const char * | communicators |
| Comma-separated address prefixes of the communicators currently carrying the link ("tcp", "udp", ...), never NULL but possibly the empty string. | |
| enum GNUNET_TRANSPORT_LinkRoute | route |
| How the link is routed. | |
| int | confirmed |
| GNUNET_YES if the link is confirmed, i.e. | |
| unsigned int | distance |
| Hops of the shortest DV path, excluding the next hop and the target itself; so 0 already means two hops. | |
| unsigned int | num_queues |
| Number of queues to the neighbour carrying the link. | |
| int | core_recv_window |
| How many more messages we may hand to CORE before it must acknowledge them. | |
| unsigned int | stalled |
| Number of messages whose flow control ACK transport is withholding because core_recv_window is exhausted. | |
| unsigned int | pending |
| Number of messages queued for transmission to the target. | |
| unsigned int | fc_retransmit_count |
| Number of flow control retransmissions of the running task. | |
| uint64_t | available_fc_window_size |
| RAM transport is willing to spend on this link. | |
| uint64_t | incoming_fc_window_size_ram |
| RAM currently held for this link. | |
| uint64_t | incoming_fc_window_size |
| Window we last granted the other peer. | |
| uint64_t | incoming_fc_window_size_used |
| How much of incoming_fc_window_size the other peer used. | |
| int64_t | incoming_fc_window_size_loss |
| Current estimate of the message loss rate for the sender. | |
| uint64_t | outbound_fc_window_size |
| Window the other peer granted us. | |
| uint64_t | outbound_fc_window_size_used |
| How much of outbound_fc_window_size we used. | |
| struct GNUNET_TIME_Relative | last_fc_rtt |
| RTT of the last flow control exchange. | |
| struct GNUNET_TIME_Relative | other_rtt |
| RTT over all DV paths, as calculated by the target. | |
| struct GNUNET_TIME_Absolute | last_fc_transmission |
| When did we last send a flow control message? | |
State of one virtual link, the abstraction CORE sits on top of.
Definition at line 203 of file gnunet_transport_monitor_service.h.
| const char* GNUNET_TRANSPORT_LinkInformation::communicators |
Comma-separated address prefixes of the communicators currently carrying the link ("tcp", "udp", ...), never NULL but possibly the empty string.
For a DV link these are the communicators to the next hop of the shortest path, not to the target.
Definition at line 211 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), link_cb(), and print_link_verbose().
| enum GNUNET_TRANSPORT_LinkRoute GNUNET_TRANSPORT_LinkInformation::route |
How the link is routed.
Definition at line 216 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and route_to_string().
| int GNUNET_TRANSPORT_LinkInformation::confirmed |
GNUNET_YES if the link is confirmed, i.e.
established.
Definition at line 221 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| unsigned int GNUNET_TRANSPORT_LinkInformation::distance |
Hops of the shortest DV path, excluding the next hop and the target itself; so 0 already means two hops.
Meaningless if route is GNUNET_TRANSPORT_LINK_ROUTE_DIRECT.
Definition at line 228 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and route_to_string().
| unsigned int GNUNET_TRANSPORT_LinkInformation::num_queues |
Number of queues to the neighbour carrying the link.
Definition at line 233 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| int GNUNET_TRANSPORT_LinkInformation::core_recv_window |
How many more messages we may hand to CORE before it must acknowledge them.
At or below zero exactly when transport is withholding flow control credit from the communicators; combined with a non-zero stalled that is a link CORE has stopped draining.
Definition at line 241 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), link_cb(), and print_link_verbose().
| unsigned int GNUNET_TRANSPORT_LinkInformation::stalled |
Number of messages whose flow control ACK transport is withholding because core_recv_window is exhausted.
Definition at line 247 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), link_cb(), and print_link_verbose().
| unsigned int GNUNET_TRANSPORT_LinkInformation::pending |
Number of messages queued for transmission to the target.
Definition at line 252 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), link_cb(), and print_link_verbose().
| unsigned int GNUNET_TRANSPORT_LinkInformation::fc_retransmit_count |
Number of flow control retransmissions of the running task.
Definition at line 257 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| uint64_t GNUNET_TRANSPORT_LinkInformation::available_fc_window_size |
RAM transport is willing to spend on this link.
Definition at line 262 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| uint64_t GNUNET_TRANSPORT_LinkInformation::incoming_fc_window_size_ram |
RAM currently held for this link.
Definition at line 267 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| uint64_t GNUNET_TRANSPORT_LinkInformation::incoming_fc_window_size |
Window we last granted the other peer.
Definition at line 272 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| uint64_t GNUNET_TRANSPORT_LinkInformation::incoming_fc_window_size_used |
How much of incoming_fc_window_size the other peer used.
Definition at line 277 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| int64_t GNUNET_TRANSPORT_LinkInformation::incoming_fc_window_size_loss |
Current estimate of the message loss rate for the sender.
May be negative on out-of-order delivery.
Definition at line 283 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| uint64_t GNUNET_TRANSPORT_LinkInformation::outbound_fc_window_size |
Window the other peer granted us.
Definition at line 288 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| uint64_t GNUNET_TRANSPORT_LinkInformation::outbound_fc_window_size_used |
How much of outbound_fc_window_size we used.
Definition at line 293 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| struct GNUNET_TIME_Relative GNUNET_TRANSPORT_LinkInformation::last_fc_rtt |
RTT of the last flow control exchange.
Definition at line 298 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), link_cb(), and print_link_verbose().
| struct GNUNET_TIME_Relative GNUNET_TRANSPORT_LinkInformation::other_rtt |
RTT over all DV paths, as calculated by the target.
Definition at line 303 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().
| struct GNUNET_TIME_Absolute GNUNET_TRANSPORT_LinkInformation::last_fc_transmission |
When did we last send a flow control message?
Definition at line 308 of file gnunet_transport_monitor_service.h.
Referenced by handle_link_list_response(), and print_link_verbose().