92 virtual void expire(Event *e);
120 virtual void expire(Event *e);
165 virtual void expire(Event *e);
188 virtual void expire(Event *e);
263 virtual int command(
int,
const char *
const *);
270 virtual void recv(Packet *);
336 static string printIP(
const nsaddr_t &);
345 static string printIP(
const ns_addr_t &);
354 static nsaddr_t
str2addr(
const char *);
368 return (-log(RNG::defaultrng()->uniform_double()) /
389 return std::fabs(value) < std::numeric_limits<double>::epsilon();
653 virtual const double getLoad()
const;
671 static inline const int
682 static inline const int
693 static inline const int
808 const Packet *
const,
const string &position =
"UNDEF___");
815 const int &,
const int &,
const int &,
const int &,
const int &,
816 const int &,
const int &,
const double &,
const int &,
const int &);
897 vector<buffer_element>
941 std::map<uint8_t, uint>
Definition uwicrp-module-node.h:69
**
Definition sun-ipr-node.h:149
BufferTimer(SunIPRoutingNode *m)
Definition sun-ipr-node.h:152
SunIPRoutingNode *virtual void expire(Event *e)
Definition sun-ipr-node-buffermanager.cpp:52
Definition sun-ipr-node.h:104
RemoveHopTableTimer(SunIPRoutingNode *m)
Definition sun-ipr-node.h:107
SunIPRoutingNode *virtual void expire(Event *e)
Definition sun-ipr-node.cpp:71
Definition sun-ipr-node.h:172
SunIPRoutingNode *virtual void expire(Event *e)
Definition sun-ipr-node.cpp:85
SearchPathTimer(SunIPRoutingNode *m)
Definition sun-ipr-node.h:175
Definition sun-ipr-node.h:80
virtual void expire(Event *e)
Definition sun-ipr-node.cpp:78
SinkProbeTimer(SunIPRoutingNode *m)
Definition sun-ipr-node.h:82
Definition sun-ipr-node.h:195
long list_acks_max_time_
Definition sun-ipr-node.h:877
virtual void replyPathEstSearch(Packet *)
Definition sun-ipr-node-pathest-search.cpp:133
static string printIP(const nsaddr_t &)
Definition sun-ipr-node.cpp:279
int pointer_packets_
Definition sun-ipr-node.h:871
double timer_route_validity_
Definition sun-ipr-node.h:910
uint max_retx_
Definition sun-ipr-node.h:967
const long & getPathEstablishmentCount() const
Definition sun-ipr-node.h:764
virtual void writeInTrace(const string &)
Definition sun-ipr-node.cpp:1035
vector< buffer_element > buffer_data
Definition sun-ipr-node.h:898
virtual void printSelectedRoutes() const
Definition sun-ipr-node.cpp:262
double timer_sink_probe_validity_
Definition sun-ipr-node.h:912
ostringstream osstream_
Definition sun-ipr-node.h:927
const long & getNPathsEstablished()
Definition sun-ipr-node.h:324
char trace_separator_
Definition sun-ipr-node.h:930
static const int LISTLENGTH
Definition sun-ipr-node.h:243
bool search_path_enable_
Definition sun-ipr-node.h:856
static long number_of_datapkt_
Definition sun-ipr-node.h:952
virtual int command(int, const char *const *)
Definition sun-ipr-node.cpp:329
const long & getForwardedCount() const
Definition sun-ipr-node.h:727
virtual void initPktDataPacket(Packet *)
Definition sun-ipr-node-data.cpp:49
virtual void createRouteError(const Packet *, Packet *)
Definition sun-ipr-node-ack.cpp:109
virtual void clearHops()
Definition sun-ipr-node.cpp:196
double probe_min_snr_
Definition sun-ipr-node.h:853
static const int getDataPktHeaderSize()
Definition sun-ipr-node.h:683
nsaddr_t * hop_table
Definition sun-ipr-node.h:848
long n_paths_established
Definition sun-ipr-node.h:946
virtual void forwardDataPacket(Packet *)
Definition sun-ipr-node-data.cpp:89
virtual const int getPacketsLastMinute() const
Definition sun-ipr-node-loadmetric.cpp:76
long list_packets_max_time_
Definition sun-ipr-node.h:875
int disable_path_error_
Definition sun-ipr-node.h:858
std::map< uint8_t, uint > paths_selected
Definition sun-ipr-node.h:942
bool trace_
Definition sun-ipr-node.h:923
static long number_of_ackpkt_
Definition sun-ipr-node.h:954
virtual const int & getNumberOfHopToSink() const
Definition sun-ipr-node.cpp:875
static nsaddr_t str2addr(const char *)
Definition sun-ipr-node.cpp:304
virtual void updatePacketsCount()
Definition sun-ipr-node-loadmetric.cpp:46
virtual const int & evaluatePath(const Packet *)
Definition sun-ipr-node-pathest-answer.cpp:318
virtual void bufferManager()
Definition sun-ipr-node-buffermanager.cpp:58
const long & getDataDropsCountBuffer() const
Definition sun-ipr-node.h:739
int hop_table_length
Definition sun-ipr-node.h:849
SinkProbeTimer sinkProbeTimer_
Definition sun-ipr-node.h:918
virtual const bool isMyIpInList(const Packet *) const
Definition sun-ipr-node-pathest-search.cpp:228
virtual void expTimerHopTable()
Definition sun-ipr-node.cpp:951
int data_and_hops[MAX_HOP_NUMBER]
Definition sun-ipr-node.h:934
virtual const int getAcksLastMinute() const
Definition sun-ipr-node-loadmetric.cpp:118
virtual void initPktPathEstSearch(Packet *) const
Definition sun-ipr-node-pathest-search.cpp:94
SunIPRoutingNode(const SunIPRoutingNode &)
virtual void sendRouteBack(Packet *)
Definition sun-ipr-node-pathest-answer.cpp:161
ofstream trace_file_
Definition sun-ipr-node.h:928
char * trace_file_name_
Definition sun-ipr-node.h:925
virtual string createTraceString(const string &, const double &, const int &, const int &, const int &, const int &, const int &, const int &, const int &, const double &, const int &, const int &)
Definition sun-ipr-node.cpp:1011
int reset_buffer_if_error_
Definition sun-ipr-node.h:860
static long number_of_pathestablishment_
Definition sun-ipr-node.h:949
static const int MINUTE
Definition sun-ipr-node.h:245
double snr_to_sink_
Definition sun-ipr-node.h:855
static long number_of_pkt_forwarded_
Definition sun-ipr-node.h:964
virtual void initPktAck(Packet *)
Definition sun-ipr-node-ack.cpp:78
virtual void updateQuality(Packet *)
Definition sun-ipr-node-pathest-search.cpp:245
double period_status_
Definition sun-ipr-node.h:837
BufferTimer bufferTmr_
Definition sun-ipr-node.h:919
nsaddr_t sink_associated
Definition sun-ipr-node.h:850
virtual void updateAcksCount()
Definition sun-ipr-node-loadmetric.cpp:60
static const int getPathEstHeaderSize()
Definition sun-ipr-node.h:694
double timer_buffer_
Definition sun-ipr-node.h:914
virtual void receiveProbe(const Packet *)
Definition sun-ipr-node.cpp:883
virtual const int & setNumberOfHopToSink(const int &)
Definition sun-ipr-node.cpp:856
double period_data_
Definition sun-ipr-node.h:839
virtual void sendBackAck(const Packet *)
Definition sun-ipr-node-ack.cpp:47
double list_acks[LISTLENGTH]
Definition sun-ipr-node.h:868
double alpha_
Definition sun-ipr-node.h:883
SearchPathTimer searchPathTmr_
Definition sun-ipr-node.h:920
SunIPRoutingNode()
Definition sun-ipr-node.cpp:91
bool ack_error_state
Definition sun-ipr-node.h:890
const long & getDataCount() const
Definition sun-ipr-node.h:716
int PoissonTraffic_
Definition sun-ipr-node.h:835
const double getDelay(const double &period_) const
Definition sun-ipr-node.h:365
static const int getAckHeaderSize()
Definition sun-ipr-node.h:672
const long & getAckCount() const
Definition sun-ipr-node.h:705
double quality_link
Definition sun-ipr-node.h:847
virtual void lostSink()
Definition sun-ipr-node.cpp:926
@ SNR
Definition sun-ipr-node.h:828
@ HOPCOUNT
Definition sun-ipr-node.h:827
@ LESSCONGESTED
Definition sun-ipr-node.h:829
virtual void searchPath()
Definition sun-ipr-node-pathest-search.cpp:54
const long & getDataDropsCountMaxRetx() const
Definition sun-ipr-node.h:751
uint32_t buffer_max_size_
Definition sun-ipr-node.h:899
virtual void printHopTable() const
Definition sun-ipr-node.cpp:249
double list_packets[LISTLENGTH]
Definition sun-ipr-node.h:865
virtual int recvSyncClMsg(ClMessage *)
Definition sun-ipr-node.cpp:174
int ack_warnings_counter_
Definition sun-ipr-node.h:889
int max_ack_error_
Definition sun-ipr-node.h:887
virtual void searchPathExpire()
Definition sun-ipr-node.cpp:939
int printDebug_
Definition sun-ipr-node.h:851
virtual void sendRouteErrorBack(Packet *)
Definition sun-ipr-node-ack.cpp:156
virtual ~SunIPRoutingNode()
Definition sun-ipr-node.cpp:160
long pkt_stored_
Definition sun-ipr-node.h:900
virtual void initialize()
Definition sun-ipr-node.cpp:235
static long number_of_drops_buffer_full_
Definition sun-ipr-node.h:956
virtual void tracePacket(const Packet *const, const string &position="UNDEF___")
Definition sun-ipr-node.cpp:964
virtual const double getLoad() const
Definition sun-ipr-node-loadmetric.cpp:156
nsaddr_t ipAddr_
Definition sun-ipr-node.h:833
int pointer_acks_
Definition sun-ipr-node.h:873
virtual const bool addMyIpInList(Packet *)
Definition sun-ipr-node-pathest-search.cpp:205
int metrics_
Definition sun-ipr-node.h:834
virtual int recvAsyncClMsg(ClMessage *)
Definition sun-ipr-node.cpp:182
RemoveHopTableTimer rmhopTableTmr_
Definition sun-ipr-node.h:917
long pkt_tx_
Definition sun-ipr-node.h:902
double timer_search_path_
Definition sun-ipr-node.h:915
virtual void initPktPathEstAnswer(Packet *, const Packet *)
Definition sun-ipr-node-pathest-answer.cpp:91
virtual void recv(Packet *)
Definition sun-ipr-node.cpp:451
static long number_of_drops_maxretx_
Definition sun-ipr-node.h:960
virtual void answerPath(const Packet *)
Definition sun-ipr-node-pathest-answer.cpp:54
const bool isZero(const double &value) const
Definition sun-ipr-node.h:387
int num_hop_to_sink
Definition sun-ipr-node.h:841
int safe_timer_buffer_
Definition sun-ipr-node.h:904
bool acks_array_full
Definition sun-ipr-node.h:881
bool packets_array_full
Definition sun-ipr-node.h:879
Definition sun-hdr-ack.h:52
Definition sun-hdr-data.h:54
Definition sun-hdr-pathestablishment.h:60
Provides the Ack Messages header description.
Provides the Data Messages header description.
Provides the Path Establishment Messages header description.
Common structures and definition used by SUN.
Provides the UWCBR packets header description and the definition of the class UWCBR.
Cross layer messages definition for the UWIP Module.
Provides the UWIP packets header description. Definition of the class that define the network layer.