#include "event.h"
#include "sockaddr.h"
#include "sptps.h"
+#include "utcp/utcp.h"
typedef struct node_status_t {
unsigned int unused_active:1; /* 1 if active (not used for nodes) */
typedef struct node_t {
char *name; /* name of this node */
void *priv;
-
+
uint32_t options; /* options turned on for this node */
dev_class_t devclass;
struct connection_t *connection; /* Connection associated with this node (if a direct connection exists) */
time_t last_connect_try;
-
- uint32_t sent_seqno; /* Sequence number last sent to this node */
- uint32_t received_seqno; /* Sequence number last received from this node */
- uint32_t received; /* Total valid packets received from this node */
- uint32_t prev_received_seqno;
- uint32_t prev_received;
- unsigned char* late; /* Bitfield marking late packets */
+ time_t last_successfull_connection;
uint16_t mtu; /* Maximum size of packets to send to this node */
uint16_t minmtu; /* Probed minimum MTU */
uint16_t maxmtu; /* Probed maximum MTU */
int mtuprobes; /* Number of probes */
timeout_t mtutimeout; /* Probe event */
- struct timeval probe_time; /* Time the last probe was sent or received */
- int probe_counter; /* Number of probes received since last burst was sent */
- float rtt; /* Last measured round trip time */
- float bandwidth; /* Last measured bandwidth */
- float packetloss; /* Last measured packet loss rate */
+
+ struct utcp *utcp;
uint64_t in_packets;
uint64_t in_bytes;
extern void init_nodes(struct meshlink_handle *mesh);
extern void exit_nodes(struct meshlink_handle *mesh);
-extern node_t *new_node(void) __attribute__ ((__malloc__));
+extern node_t *new_node(void) __attribute__((__malloc__));
extern void free_node(node_t *);
extern void node_add(struct meshlink_handle *mesh, node_t *);
extern void node_del(struct meshlink_handle *mesh, node_t *);