Configuration parameter for number of MAC-layer retransmissions
This commit is contained in:
parent
9c58768b59
commit
4c3b69dc07
1 changed files with 11 additions and 5 deletions
|
@ -33,7 +33,7 @@
|
||||||
*
|
*
|
||||||
* This file is part of the Contiki operating system.
|
* This file is part of the Contiki operating system.
|
||||||
*
|
*
|
||||||
* $Id: collect.c,v 1.43 2010/03/26 12:29:29 nifi Exp $
|
* $Id: collect.c,v 1.44 2010/03/29 21:52:25 adamdunkels Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -85,9 +85,10 @@ struct ack_msg {
|
||||||
static struct recent_packet recent_packets[NUM_RECENT_PACKETS];
|
static struct recent_packet recent_packets[NUM_RECENT_PACKETS];
|
||||||
static uint8_t recent_packet_ptr;
|
static uint8_t recent_packet_ptr;
|
||||||
|
|
||||||
#define REXMIT_TIME CLOCK_SECOND * 2
|
#define MAX_MAC_REXMITS 3
|
||||||
#define FORWARD_PACKET_LIFETIME (6 * (REXMIT_TIME) << 3)
|
#define REXMIT_TIME CLOCK_SECOND * 2
|
||||||
#define MAX_SENDING_QUEUE 6
|
#define FORWARD_PACKET_LIFETIME (6 * (REXMIT_TIME) << 3)
|
||||||
|
#define MAX_SENDING_QUEUE 6
|
||||||
PACKETQUEUE(sending_queue, MAX_SENDING_QUEUE);
|
PACKETQUEUE(sending_queue, MAX_SENDING_QUEUE);
|
||||||
|
|
||||||
#define SINK 0
|
#define SINK 0
|
||||||
|
@ -101,7 +102,11 @@ PACKETQUEUE(sending_queue, MAX_SENDING_QUEUE);
|
||||||
#define COLLECT_ANNOUNCEMENTS COLLECT_CONF_ANNOUNCEMENTS
|
#define COLLECT_ANNOUNCEMENTS COLLECT_CONF_ANNOUNCEMENTS
|
||||||
#endif /* COLLECT_CONF_ANNOUNCEMENTS */
|
#endif /* COLLECT_CONF_ANNOUNCEMENTS */
|
||||||
|
|
||||||
|
#ifdef ANNOUNCEMENT_CONF_PERIOD
|
||||||
|
#define ANNOUNCEMENT_SCAN_TIME ANNOUNCEMENT_CONF_PERIOD
|
||||||
|
#else /* ANNOUNCEMENT_CONF_PERIOD */
|
||||||
#define ANNOUNCEMENT_SCAN_TIME CLOCK_SECOND
|
#define ANNOUNCEMENT_SCAN_TIME CLOCK_SECOND
|
||||||
|
#endif /* ANNOUNCEMENT_CONF_PERIOD */
|
||||||
|
|
||||||
#define DEBUG 0
|
#define DEBUG 0
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
|
@ -277,7 +282,7 @@ send_queued_packet(void)
|
||||||
c->max_rexmits = packetbuf_attr(PACKETBUF_ATTR_MAX_REXMIT);
|
c->max_rexmits = packetbuf_attr(PACKETBUF_ATTR_MAX_REXMIT);
|
||||||
PRINTF("max_rexmits %d\n", c->max_rexmits);
|
PRINTF("max_rexmits %d\n", c->max_rexmits);
|
||||||
packetbuf_set_attr(PACKETBUF_ATTR_RELIABLE, 1);
|
packetbuf_set_attr(PACKETBUF_ATTR_RELIABLE, 1);
|
||||||
packetbuf_set_attr(PACKETBUF_ATTR_MAX_MAC_TRANSMISSIONS, 3);
|
packetbuf_set_attr(PACKETBUF_ATTR_MAX_MAC_TRANSMISSIONS, MAX_MAC_REXMITS);
|
||||||
packetbuf_set_attr(PACKETBUF_ATTR_PACKET_ID, c->seqno);
|
packetbuf_set_attr(PACKETBUF_ATTR_PACKET_ID, c->seqno);
|
||||||
unicast_send(&c->unicast_conn, &n->addr);
|
unicast_send(&c->unicast_conn, &n->addr);
|
||||||
rexmit_time_scaling = c->transmissions;
|
rexmit_time_scaling = c->transmissions;
|
||||||
|
@ -557,6 +562,7 @@ node_packet_sent(struct unicast_conn *c, int status, int transmissions)
|
||||||
tc->transmissions += transmissions;
|
tc->transmissions += transmissions;
|
||||||
|
|
||||||
tx = tc->transmissions;
|
tx = tc->transmissions;
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
/* Punish neighbors that don't hear us by increasing the expeted
|
/* Punish neighbors that don't hear us by increasing the expeted
|
||||||
transmissions by four times the actual amount of transmissions
|
transmissions by four times the actual amount of transmissions
|
||||||
|
|
Loading…
Reference in a new issue