From 5c80a55085cc1b45ce100f0a0647b25597d19451 Mon Sep 17 00:00:00 2001 From: markd Date: Sat, 15 Dec 2012 22:07:32 +0000 Subject: Update to version 2.35 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 --- net/ns/Makefile | 6 +++--- net/ns/distinfo | 13 ++++++------- net/ns/patches/patch-af | 32 ++++++++++++++++++++------------ net/ns/patches/patch-ar | 15 --------------- net/ns/patches/patch-as | 18 ------------------ net/ns/patches/patch-linkstate_ls.h | 15 +++++++++++++++ 6 files changed, 44 insertions(+), 55 deletions(-) delete mode 100644 net/ns/patches/patch-ar delete mode 100644 net/ns/patches/patch-as create mode 100644 net/ns/patches/patch-linkstate_ls.h (limited to 'net/ns') diff --git a/net/ns/Makefile b/net/ns/Makefile index ab9dd6f5218..36ea1066b5e 100644 --- a/net/ns/Makefile +++ b/net/ns/Makefile @@ -1,7 +1,7 @@ -# $NetBSD: Makefile,v 1.36 2012/10/23 17:18:42 asau Exp $ +# $NetBSD: Makefile,v 1.37 2012/12/15 22:07:32 markd Exp $ -DISTNAME= ns-2.33 -PKGREVISION= 1 +DISTNAME= ns-src-2.35 +PKGNAME= ns-2.35 CATEGORIES= net MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=nsnam/} diff --git a/net/ns/distinfo b/net/ns/distinfo index 4a78c4fed6b..e169ecc2abf 100644 --- a/net/ns/distinfo +++ b/net/ns/distinfo @@ -1,13 +1,13 @@ -$NetBSD: distinfo,v 1.17 2012/09/29 06:17:29 dholland Exp $ +$NetBSD: distinfo,v 1.18 2012/12/15 22:07:32 markd Exp $ -SHA1 (ns-2.33.tar.gz) = 0efd6aed45b504fcf3f125b0be00a60b87516a03 -RMD160 (ns-2.33.tar.gz) = 54326b8ff4e63c0a9712c517c7ad4d9327a41d39 -Size (ns-2.33.tar.gz) = 41649114 bytes +SHA1 (ns-src-2.35.tar.gz) = 785d4045711d92c0042a6f8f5620d5eb74732980 +RMD160 (ns-src-2.35.tar.gz) = 197e6874b97c56819ce9a722ffab9fe80a5cfe21 +Size (ns-src-2.35.tar.gz) = 43897172 bytes SHA1 (patch-aa) = 3b25eab34d7bdad7d370cea8450eb3c09c18c640 SHA1 (patch-ab) = 7c93e4540faa1b16a9e40bd063ffce510f5bc063 SHA1 (patch-ad) = 5f35152de976c2195dcff20abbe8610321dd9969 SHA1 (patch-ae) = c971d28448ae1b495119e3ec2c8de185468b9be2 -SHA1 (patch-af) = da5772371dd4d754fa8aeb904bdcf29c41552276 +SHA1 (patch-af) = bc29b20fd017d81a5459f6603b4b4013ec5139dd SHA1 (patch-ah) = 51c36d73309d135f89f7d2362835052b304b88bd SHA1 (patch-ai) = b75f36f986ca7c833769de09e6e79f6b87c5564a SHA1 (patch-aj) = 533fa4f1bd1f8bf83882ed5ed2717511283d5ddc @@ -18,9 +18,8 @@ SHA1 (patch-an) = c6dd6b93332a6c6dd169975836df9ef802bfc206 SHA1 (patch-ao) = 2a1fd71686ff206fe2212605f91b8167b998d6e2 SHA1 (patch-ap) = f130c112d7dfe114e637e190750d9caad55e4703 SHA1 (patch-aq) = c46339a81f3f0dea9754f733d567c3c93f7dc19e -SHA1 (patch-ar) = 64dafe254cfd28723422047aecb8086028d9f69e -SHA1 (patch-as) = 5fdd4418db3ee4b189913f1110fb260af710f746 SHA1 (patch-common_packet.cc) = 74835d281febc195c5d1118bc5ceb40107597876 SHA1 (patch-common_packet.h) = 2b8289ee47206f7201ea225d23318202c7b370c5 SHA1 (patch-common_ptypes2tcl.cc) = 2354e030fef92d28c2c4049be30dcb365302068a +SHA1 (patch-linkstate_ls.h) = 5f0fb99db398cf39e9853e7d8e8cd6536d29e44b SHA1 (patch-mac_mac-802_11Exr.cc) = 93e4112025b6e610e76694c6067723f77cd75b84 diff --git a/net/ns/patches/patch-af b/net/ns/patches/patch-af index 162bf59d0ec..6c8fcbfad68 100644 --- a/net/ns/patches/patch-af +++ b/net/ns/patches/patch-af @@ -1,11 +1,19 @@ -$NetBSD: patch-af,v 1.10 2012/09/29 06:17:30 dholland Exp $ +$NetBSD: patch-af,v 1.11 2012/12/15 22:07:32 markd Exp $ - provide pkgsrc's X11 dirs - check for more ethernet headers ---- configure.orig 2008-04-01 02:00:25.000000000 +0000 +--- configure.orig 2011-11-04 17:29:46.000000000 +0000 +++ configure -@@ -5836,7 +5836,7 @@ powerpc-apple-darwin*) +@@ -5548,6 +5548,7 @@ TCL_H_PLACES_D="$d/generic \ + $d/include/tcl$TCL_VERS \ + $d/include/tcl$TCL_ALT_VERS \ + $d/include \ ++ $d/include/tcl/generic \ + /usr/local/include \ + " + TCL_H_PLACES=" \ +@@ -7003,7 +7004,7 @@ powerpc-apple-darwin*) esac @@ -14,8 +22,8 @@ $NetBSD: patch-af,v 1.10 2012/09/29 06:17:30 dholland Exp $ /usr/openwin/lib \ /usr/X11R6/lib \ /usr/lib/X11R6 \ -@@ -5851,7 +5851,7 @@ xlibdirs="\ - /Developer/SDKs/MacOSX10.4u.sdk/usr/X11R6/lib \ +@@ -7020,7 +7021,7 @@ xlibdirs="\ + /Developer/SDKs/MacOSX10.6.sdk/usr/X11R6/lib \ /import/X11R4/usr/lib" -xincdirs="\ @@ -23,16 +31,16 @@ $NetBSD: patch-af,v 1.10 2012/09/29 06:17:30 dholland Exp $ /usr/openwin/include \ /usr/X11R6/include \ /usr/include/X11R6 \ -@@ -6906,7 +6906,7 @@ fi - +@@ -7899,7 +7900,7 @@ $as_echo "#define STDC_HEADERS 1" >>conf + fi -for ac_header in arpa/inet.h fenv.h netinet/in.h string.h strings.h time.h unistd.h net/ethernet.h +for ac_header in arpa/inet.h fenv.h netinet/in.h string.h strings.h time.h unistd.h net/if.h net/ethernet.h netinet/if_ether.h sys/socket.h - do - as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` - if eval "test \"\${$as_ac_Header+set}\" = set"; then -@@ -9667,7 +9667,24 @@ cat >>conftest.$ac_ext <<_ACEOF + do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` + ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" +@@ -8838,7 +8839,24 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ /* end confdefs.h. */ #include @@ -57,7 +65,7 @@ $NetBSD: patch-af,v 1.10 2012/09/29 06:17:30 dholland Exp $ int main () -@@ -9736,7 +9753,24 @@ cat >>conftest.$ac_ext <<_ACEOF +@@ -8877,7 +8895,24 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ /* end confdefs.h. */ #include diff --git a/net/ns/patches/patch-ar b/net/ns/patches/patch-ar deleted file mode 100644 index 345e9b77890..00000000000 --- a/net/ns/patches/patch-ar +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-ar,v 1.4 2011/01/29 22:16:51 markd Exp $ - -Fix build with gcc4.5 - ---- tools/ranvar.cc.orig 2008-04-01 02:00:25.000000000 +0000 -+++ tools/ranvar.cc -@@ -216,7 +216,7 @@ double GammaRandomVariable::value() - // ACM Transactions on mathematical software, Vol. 26, No. 3, Sept. 2000 - if (alpha_ < 1) { - double u = rng_->uniform(1.0); -- return GammaRandomVariable::GammaRandomVariable(1.0 + alpha_, beta_).value() * pow (u, 1.0 / alpha_); -+ return GammaRandomVariable(1.0 + alpha_, beta_).value() * pow (u, 1.0 / alpha_); - } - - double x, v, u; diff --git a/net/ns/patches/patch-as b/net/ns/patches/patch-as deleted file mode 100644 index 454dadc3d43..00000000000 --- a/net/ns/patches/patch-as +++ /dev/null @@ -1,18 +0,0 @@ -$NetBSD: patch-as,v 1.1 2011/01/29 22:16:51 markd Exp $ - -Fix build with gcc4.5 - ---- mobile/nakagami.cc.orig 2008-04-01 02:00:24.000000000 +0000 -+++ mobile/nakagami.cc -@@ -180,9 +180,9 @@ double Nakagami::Pr(PacketStamp *t, Pack - double resultPower; - - if (int_m == m) { -- resultPower = ErlangRandomVariable::ErlangRandomVariable(Pr/m, int_m).value(); -+ resultPower = ErlangRandomVariable(Pr/m, int_m).value(); - } else { -- resultPower = GammaRandomVariable::GammaRandomVariable(m, Pr/m).value(); -+ resultPower = GammaRandomVariable(m, Pr/m).value(); - } - return resultPower; - } diff --git a/net/ns/patches/patch-linkstate_ls.h b/net/ns/patches/patch-linkstate_ls.h new file mode 100644 index 00000000000..5872f5e1567 --- /dev/null +++ b/net/ns/patches/patch-linkstate_ls.h @@ -0,0 +1,15 @@ +$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); -- cgit v1.2.3