6e11f63a68
ns-2.35 Released on Nov 4, 2011 * Provide fixes to the Tmix traffic generator, mainly to the one-way TCP implementation, but some changes to the Full-TCP version as well. Tmix with one-way TCP now performs comparably to Tmix with Full-TCP (albeit with longer running times and higher memory consumption). Includes contributions from David Hayes and DongXia Xu at Swinburne and relevant updates to the documentation and tests. * Add Marcello Caleffi's Multi-path Dynamic Address RouTing (M-DART) protocol. * Add Sidney Doria's Datagram Congestion Control Protocol (DCCP) implementation. * Added the SYN_immediate_ack flag so that a DelAckSink agent will immediately ACK the first (SYN) packet sent by a TcpAgent. The patch contains changes to tcp-sink.{cc,h}, ns-default.tcl, and affected validation tests. All validation tests that use the syn_ in TcpAgent were set to SYN_immediate_ack=false except for the delayed test in test-suite-simple.tcl. * During long simulations (30-60 minutes), ns would sometimes abort with the message "TcpAgent: negative RTO!". The problem was that TcpAgent::t_backoff_ was overflowing and becoming negative, since it was doubled each time a backoff was triggered but maxrto_ prevented the time between doublings from growing beyond 60 seconds. * This patch adds support for using one-way TcpAgents with the Tmix traffic generator, which previously only worked with FullTcp agents. * Protocol for Unified Multicasting Through Announcements (PUMA) has been added. PUMA is a distributed, receiver initiated, mesh based multicast routing protocol. * A new SCTP patch from Nasif Ekiz and the University of Delaware team. * added support for Non-Renegable Selective Acknowledgements (NR-SACK). To enable NR-SACKs, set useNonRenegSacks_ tcl bindable variable to 1 at both the data sender and the data receiver. * Concurrent Multipath Transfer with Potentially Failed(CMT-PF) extension is default now. To use CMT, set useCmtPF tcl bindable variable to 0 at the data sender. * added new feature to support a limited size send buffer at the data receiver. Send buffer size can be specified by setting initialSwnd_ tcl bindable variable to desired value. By default, the variable is set to 0 which means there is no constraint on the send buffer. * congestion window (cwnd) updates are now done as specified at Section 7.2.1, 7.2.2 and 7.2.3 of RFC4960. Also the number of missing reports to trigger fast retransmits is reduced to three as specified in RFC4960. * bug fix. A bug discovered by Eduardo Ribeiro and Igor Gavriloff regarding to memory deallocation is fixed. * new validation tests for NR-SACKs and limited send buffer size are added to the test suite. ns-2.34 Released on June 17, 2009 * bugfix for 802.11Ext model (from Felix-Schmidt-Eisenlohr and team) * mac/wirelessPhyExt: * the power monitor class is responsible to continously track the sum of all reception power values of all frames arriving in parallel and of the noise floor. In the earlier implementation this cumulated power was only decreased in situations where no packet arrived. Otherwise, powers were always further summed up, leading to a wrong setting of this variable, and in consequence, a wrong behavior of physical packet reception calculations. Furthermore, the busy/idle signalling was not correct. * Add AOMDV (On-demand Multipath Distance Vector Routing in Ad Hoc Networks) implementation from Marcello Caleffi * Collection of bug fixes for 802.11Ext model (from Felix-Schmidt-Eisenlohr and team) * mac/mac-802.11Ext: * feedback to higher layers on transmission failure: xmit_failure_data_ is delivered when a unicast packet was finally not sent successfully- corrected NAV update: in case a NAV is active and a new NAV is advertised an updated only occurs in case the new NAV takes longer than the one already running - bugfix: corrected backoff handling when 0 backoff slots are selected:- bugfix: resolved memory leak on broadcast packet transmission- duplicate suppression support: reactivate the feature of duplicate detection on MAC layer as it was done in earlier versions * code cleanup: removed TxTimer_t class * bugfix: ACK frames: explicitly set basic modulation scheme * mac/wirelessPhyExt: * update of modulation table: new threshold values are taken for the different modulation schemes due to newer measurements * bugfix: resched() instead of sched() in PowerMonitor::expire() * code cleanup: removed friend class PowerTimer * code cleanup: updated comment in recordPowerLevel() * new implementation of PowerMonitor (PowerTimer class now obsolete) * clarification of CSThresh variable (see below) * mac/channel.cc: for wirelessPhyExt only: correct calculation of distCST, using PowerMonitorThresh_ as the critical borderline power and including antenna gains. * tools/ranvar.cc: - bugfix: resolved memory leak in Erlang distribution * Bug fixes for 802.11 infrastructure code, posted by Ilango Purushothaman. * Patches for better memory management - use standard C++ lists to maintain AP and client tables, memory leaks fixed in AP scheduling queue * Triggering of handoff in Ad-hoc mode - Bug reported by Mayur - Resolved by adding an if condition for checking the 802.11 mode. * Note: The following traces changed as a result of this, but were verified by Ilango: ./test-all-wireless-infra ./test-all-wireless-infra-mobility ./test-all-wireless-shadowing ./test-all-wireless-lan-aodv ./test-all-wireless-gridkeeper ./test-all-wireless-lan-newnode * Import Tmix synthetic Internet traffic generation tool * Disable string literal warning for gcc version > 4.2
15 lines
501 B
C
15 lines
501 B
C
$NetBSD: patch-linkstate_ls.h,v 1.1 2012/12/15 22:07:32 markd Exp $
|
|
|
|
gcc4.7 fix.
|
|
|
|
--- linkstate/ls.h.orig 2010-03-08 05:54:51.000000000 +0000
|
|
+++ linkstate/ls.h
|
|
@@ -134,7 +134,7 @@ public:
|
|
return ib.second ? ib.first : baseMap::end();
|
|
}
|
|
|
|
- void eraseAll() { erase(baseMap::begin(), baseMap::end()); }
|
|
+ void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }
|
|
T* findPtr(Key key) {
|
|
iterator it = baseMap::find(key);
|
|
return (it == baseMap::end()) ? (T *)NULL : &((*it).second);
|