CHANGES.html
author Tom Henderson <tomh@tomh.org>
Fri, 05 Dec 2008 13:11:26 -0800
changeset 3982 4f370a1b637c
parent 3949 016c554c4f6d
child 4260 29587ce02a57
permissions -rw-r--r--
add some things to release notes and changes.html; revise README
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     1
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     2
<html>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     3
<head>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     4
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     5
   <title>ns-3 Change Log</title>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     6
</head>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     7
<body>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     8
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
     9
<h1>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    10
ns-3: API and model change history</h1>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    11
<!--
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    12
This ChangeLog is updated in the reverse order 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    13
with the most recent changes coming first.  Date format:  DD-MM-YYYY
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    14
-->
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    15
<p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    16
ns-3 is an evolving system and there will be API or behavioral changes
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    17
from time to time.   Users who try to use scripts or models across
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    18
versions of ns-3 may encounter problems at compile time, run time, or
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    19
may see the simulation output change.  </p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    20
<p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    21
We have adopted the development policy that we are going to try to ease
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    22
the impact of these changes on users by documenting these changes in a
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    23
single place (this file), and not by providing a temporary or permanent
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    24
backward-compatibility software layer.  </p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    25
<p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    26
The goal is that users who encounter a problem when trying to use older
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    27
code with newer code should be able to consult this file to find
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    28
guidance as to how to fix the problem.  For instance, if a method name
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    29
or signature has changed, it should be stated what the new replacement
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    30
name is. </p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    31
<p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    32
Note that users who upgrade the simulator across versions, or who work
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    33
directly out of the development tree, may find that simulation output
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    34
changes even when the compilation doesn't break, such as when a
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    35
simulator default value is changed.  Therefore, it is good practice for
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    36
_anyone_ using code across multiple ns-3 releases to consult this file,
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    37
as well as the RELEASE_NOTES, to understand what has changed over time.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    38
</p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    39
<p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    40
This file is a best-effort approach to solving this issue; we will do
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    41
our best but can guarantee that there will be things that fall through
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    42
the cracks, unfortunately.  If you, as a user, can suggest improvements
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    43
to this file based on your experience, please contribute a patch or drop
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    44
us a note on ns-developers mailing list.  </p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    45
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    46
<hr>
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    47
<h1>changes from ns-3.2 to ns-3.3</h1>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    48
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    49
<h2>new API:</h2>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    50
<ul>
3982
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    51
<li> ns-3 ABORT macros in src/core/abort.h</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    52
<li> Config::MatchContainer </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    53
<li> ConstCast and DynamicCast helper functions for Ptr casting</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    54
<li> StarTopology added to several topology helpers </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    55
<li> NetDevice::IsBridge () </li>
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    56
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    57
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    58
<a href="http://code.nsnam.org/ns-3-dev/rev/4c1c3f6bcd03">4c1c3f6bcd03</a></li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    59
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    60
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    61
The PppHeader previously defined in the point-to-point-net-device code has been 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    62
made public.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    63
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    64
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    65
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    66
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    67
<a href="http://code.nsnam.org/ns-3-dev/rev/16c2970a0344">16c2970a0344</a></li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    68
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    69
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    70
An emulated net device has been added as enabling technology for ns-3 emulation
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    71
scenarios.  See src/devices/emu and examples/emu-udp-echo.cc for details.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    72
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    73
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    74
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    75
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    76
<a href="http://code.nsnam.org/ns-3-dev/rev/4222173d1e6d">4222173d1e6d</a></li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    77
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    78
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    79
Added method InternetStackHelper::EnableAsciiChange to allow allow a user to 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    80
hook ascii trace to the drop trace events in Ipv4L3Protocol and ArpL3Protocol.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    81
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    82
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    83
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    84
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    85
<h2>changes to existing API:</h2>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    86
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
    87
3982
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    88
<li> NetDevice::MakeMulticastAddress() was renamed to NetDevice::GetMulticast()
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    89
and the original GetMulticast() removed </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    90
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    91
<li> Socket API changes:
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    92
<ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    93
<li> return type of SetDataSentCallback () changed from bool to void </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    94
<li> Socket::Listen() no longer takes a queueLimit argument</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    95
</ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    96
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    97
<li> As part of the Wifi Phy rework, there have been several API changes
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    98
at the low level and helper API level.  </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
    99
<ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   100
<li>  At the helper API level, the WifiHelper was split to three classes: 
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   101
a WifiHelper, a YansWifiChannel helper, and a YansWifiPhy helper.  Some
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   102
functions like Ascii and Pcap tracing functions were moved from class
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   103
WifiHelper to class YansWifiPhyHelper. 
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   104
<li>  At the low-level API, there have been a number of changes to
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   105
make the Phy more modular:</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   106
<ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   107
<li> composite-propagation-loss-model.h is removed</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   108
<li> DcfManager::NotifyCcaBusyStartNow() has changed name</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   109
<li> fragmentation related functions (e.g. DcaTxop::GetNFragments()) have
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   110
changed API to account for some implementation changes</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   111
<li> Interference helper and error rate model added </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   112
<li> JakesPropagationLossModel::GetLoss() moved to PropagationLoss() class</li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   113
<li> base class WifiChannel made abstract </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   114
<li> WifiNetDevice::SetChannel() removed </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   115
<li> a WifiPhyState helper class added </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   116
<li> addition of the YansWifiChannel and YansWifiPhy classes </li>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   117
</ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   118
</ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   119
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   120
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   121
<a href="http://code.nsnam.org/ns-3-dev/rev/dacfd1f07538">dacfd1f07538</a></li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   122
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   123
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   124
Change attribute "RxErrorModel" to "ReceiveErrorModel" in CsmaNetDevice for 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   125
consistency between devices.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   126
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   127
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   128
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   129
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   130
<h2>changed behavior:</h2>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   131
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   132
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   133
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   134
<a href="http://code.nsnam.org/ns-3-dev/rev/ed0dfce40459">ed0dfce40459</a></li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   135
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   136
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   137
Relax reasonableness testing in Ipv4AddressHelper::SetBase to allow the 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   138
assignment of /32 addresses.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   139
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   140
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   141
3949
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   142
<li>17-11-2008; changeset 
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   143
<a href="http://code.nsnam.org/ns-3-dev/rev/756887a9bbea">756887a9bbea</a></li>
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   144
<ul>
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   145
<li>
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   146
Global routing supports bridge devices.
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   147
</li>
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   148
</ul>
3982
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
   149
</ul>
3949
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
   150
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
   151
<hr>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   152
<h1>changes from ns-3.1 to ns-3.2</h1>
3593
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   153
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   154
<h2>new API:</h2>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   155
<ul>
3593
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   156
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   157
<li>26-08-2008; changeset 
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   158
<a href="http://code.nsnam.org/ns-3-dev/rev/5aa65b1ea001">5aa65b1ea001</a></li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   159
<ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   160
<li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   161
Add multithreaded and real-time simulator implementation.  Allows for emulated
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   162
net devices running in threads other than the main simulation thread to schedule
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   163
events.  Allows for pacing the simulation clock at 1x real-time.
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   164
</li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   165
</ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   166
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   167
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   168
<li>26-08-2008; changeset 
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   169
<a href="http://code.nsnam.org/ns-3-dev/rev/c69779f5e51e">c69779f5e51e</a></li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   170
<ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   171
<li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   172
Add threading and synchronization primitives.  Enabling technology for 
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   173
multithreaded simulator implementation.
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   174
</li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   175
</ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
   176
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   177
</ul>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   178
<h2>new API in existing classes:</h2>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   179
<ul>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   180
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   181
<li>01-08-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   182
<a href="http://code.nsnam.org/ns-3-dev/rev/a18520551cdf">a18520551cdf</a></li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   183
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   184
<li>class ArpCache has two new attributes:  MaxRetries 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   185
and a Drop trace.  It also has some new public methods but these are 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   186
mostly for internal use.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   187
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   188
</li>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   189
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   190
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   191
<h2>changes to existing API:</h2>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   192
<ul>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   193
3667
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   194
<li>05-09-2008; changeset 
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   195
<a href="http://code.nsnam.org/ns-3-dev/rev/aa1fb0f43571">aa1fb0f43571</a></li>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   196
<ul>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   197
<li>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   198
Change naming of MTU and packet size attributes in CSMA and Point-to-Point devices<br>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   199
After much discussion it was decided that the preferred way to think about 
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   200
the different senses of transmission units and encapsulations was to call the 
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   201
MAC MTU simply MTU and to use the overall packet size as the PHY-level attribute
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   202
of interest.  See the Doxygen of CsmaNetDevice::SetFrameSize and 
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   203
PointToPointNetDevice::SetFrameSize for a detailed description.
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   204
</li>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   205
</ul>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
   206
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   207
<li>25-08-2008; changeset 
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   208
<a href="http://code.nsnam.org/ns-3-dev/rev/e5ab96db540e">e5ab96db540e</a></li>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   209
<ul>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   210
<li>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   211
bug 273: constify packet pointers.<br>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   212
The normal and the promiscuous receive callbacks of the NetDevice API
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   213
have been changed from:
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   214
<pre>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   215
Callback<bool,Ptr<NetDevice>,Ptr<Packet>,uint16_t,const Address &>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   216
Callback<bool,Ptr<NetDevice>, Ptr<Packet>, uint16_t,
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   217
         const Address &, const Address &, enum PacketType >
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   218
</pre>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   219
to:
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   220
<pre>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   221
Callback<bool,Ptr<NetDevice>,Ptr<const Packet>,uint16_t,const Address &>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   222
Callback<bool,Ptr<NetDevice>, Ptr<const Packet>, uint16_t,
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   223
         const Address &, const Address &, enum PacketType >
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   224
</pre>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   225
to avoid the kind of bugs reported in 
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   226
<a href="http://www.nsnam.org/bugzilla/show_bug.cgi?id=273">bug 273</a>.
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   227
Users who implement a subclass of the NetDevice base class need to change the signature
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   228
of their SetReceiveCallback and SetPromiscReceiveCallback methods.
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   229
</li>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   230
</ul>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   231
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   232
3508
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   233
<li>04-08-2008; changeset 
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   234
<a href="http://code.nsnam.org/ns-3-dev/rev/cba7b2b80fe8">cba7b2b80fe8</a></li>
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   235
<ul>
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   236
<li>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   237
Cleanup of MTU confusion and initialization in CsmaNetDevice<br>
3508
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   238
The MTU of the CsmaNetDevice defaulted to 65535.  This did not correspond with
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   239
the expected MTU found in Ethernet-like devices.  Also there was not clear 
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   240
documentation regarding which MTU was being set.  There are two MTU here, one
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   241
at the MAC level and one at the PHY level.  We split out the MTU setting to make
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   242
this more clear and set the default PHY level MTU to 1500 to be more like
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   243
Ethernet.  The encapsulation mode defaults to LLC/SNAP which then puts the
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   244
MAC level MTU at 1492 by default.  We allow users to now set the encapsulation
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   245
mode, MAC MTU and PHY MTU while keeping the three values consistent.  See the
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   246
Doxygen of CsmaNetDevice::SetMaxPayloadLength for a detailed description of the
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   247
issues and solution.
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   248
</li>
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
   249
</ul>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   250
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   251
<li>21-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   252
<a href="
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   253
http://code.nsnam.org/ns-3-dev/rev/99698bc858e8">99698bc858e8</a></li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   254
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   255
<li> class NetDevice has added a pure virtual method that
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   256
must be implemented by all subclasses:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   257
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   258
virtual void SetPromiscReceiveCallback (PromiscReceiveCallback cb) = 0;
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   259
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   260
All NetDevices must support this method, and must call this callback
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   261
when processing packets in the receive direction (the appropriate place
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   262
to call this is device-dependent).  An approach to stub this out
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   263
temporarily, if you do not care about immediately enabling this
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   264
functionality, would be to add this to your device:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   265
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   266
void
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   267
ExampleNetDevice::SetPromiscReceiveCallback
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   268
(NetDevice::PromiscReceiveCallback cb)
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   269
{ 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   270
  NS_ASSERT_MSG (false, "No implementation yet for
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   271
SetPromiscReceiveCallback");
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   272
}
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   273
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   274
To implement this properly, consult the CsmaNetDevice for examples of
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   275
when the m_promiscRxCallback is called.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   276
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   277
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   278
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   279
<li>03-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   280
<a href="http://code.nsnam.org/ns-3-dev/rev/d5f8e5fae1c6">d5f8e5fae1c6</a></li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   281
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   282
<li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   283
Miscellaneous cleanup of Udp Helper API, to fix bug 234
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   284
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   285
class UdpEchoServerHelper
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   286
{
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   287
public:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   288
- UdpEchoServerHelper ();
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   289
- void SetPort (uint16_t port); 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   290
+ UdpEchoServerHelper (uint16_t port);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   291
+ 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   292
+ void SetAttribute (std::string name, const AttributeValue &value);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   293
ApplicationContainer Install (NodeContainer c);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   294
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   295
class UdpEchoClientHelper
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   296
{
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   297
public:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   298
- UdpEchoClientHelper ();
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   299
+ UdpEchoClientHelper (Ipv4Address ip, uint16_t port);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   300
- void SetRemote (Ipv4Address ip, uint16_t port);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   301
- void SetAppAttribute (std::string name, const AttributeValue &value);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   302
+ void SetAttribute (std::string name, const AttributeValue &value);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   303
ApplicationContainer Install (NodeContainer c);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   304
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   305
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   306
</ul>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   307
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   308
<li>03-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   309
<a href="
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   310
http://code.nsnam.org/ns-3-dev/rev/3cdd9d60f7c7">3cdd9d60f7c7</a></li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   311
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   312
<li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   313
Rename all instances method names using "Set..Parameter" to "Set..Attribute"
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   314
(bug 232)
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   315
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   316
<li> How to fix your code:  Any use of helper API that was using a method
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   317
"Set...Parameter()" should be changed to read "Set...Attribute()".  e.g.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   318
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   319
- csma.SetChannelParameter ("DataRate", DataRateValue (5000000));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   320
- csma.SetChannelParameter ("Delay", TimeValue (MilliSeconds (2)));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   321
+ csma.SetChannelAttribute ("DataRate", DataRateValue (5000000));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   322
+ csma.SetChannelAttribute ("Delay", TimeValue (MilliSeconds (2)));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   323
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   324
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   325
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   326
</li>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   327
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   328
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   329
<h2>changed behavior:</h2>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   330
<ul>
3645
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   331
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   332
<li>07-09-2008; changeset 
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   333
<a href="http://code.nsnam.org/ns-3-dev/rev/5d836ab1523b">5d836ab1523b</a></li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   334
<ul>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   335
3645
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   336
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   337
Implement a finite receive buffer for TCP<br>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   338
The native TCP model in TcpSocketImpl did not support a finite receive buffer.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   339
This changeset adds the following functionality in this regard:
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   340
<ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   341
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   342
Being able to set the receiver buffer size through the attributes system.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   343
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   344
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   345
This receiver buffer size is now correctly exported in the TCP header as the
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   346
advertised window.  Prior to this changeset, the TCP header advertised window
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   347
was set to the maximum size of 2^16 bytes.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   348
window
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   349
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   350
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   351
The aforementioned window size is correctly used for flow control, i.e. the
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   352
sending TCP will not send more data than available space in the receiver's
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   353
buffer.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   354
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   355
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   356
In the case of a receiver window collapse, when a advertised zero-window
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   357
packet is received, the sender enters the persist probing state in which
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   358
it sends probe packets with one payload byte at exponentially backed-off
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   359
intervals up to 60s.  The reciever will continue to send advertised 
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   360
zero-window ACKs of the old data so long as the receiver buffer remains full.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   361
When the receiver window clears up due to an application read, the TCP
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   362
will finally ACK the probe byte, and update its advertised window appropriately.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   363
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   364
</ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   365
See 
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   366
<a href="http://www.nsnam.org/bugzilla/show_bug.cgi?id=239"> bug 239 </a> for
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   367
more.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   368
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   369
</ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   370
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   371
<li>07-09-2008; changeset 
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   372
<a href="http://code.nsnam.org/ns-3-dev/rev/7afa66c2b291">7afa66c2b291</a></li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   373
<ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   374
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   375
Add correct FIN exchange behavior during TCP closedown<br>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   376
The behavior of the native TcpSocketImpl TCP model was such that the final
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   377
FIN exchange was not correct, i.e. calling Socket::Close didn't send a FIN
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   378
packet, and even if it had, the ACK never came back, and even if it had, the
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   379
ACK would have incorrect sequence number.  All these various problems have been
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   380
addressed by this changeset.  See 
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   381
<a href="http://www.nsnam.org/bugzilla/show_bug.cgi?id=242"> bug 242 </a> for
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   382
more.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   383
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   384
</ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
   385
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   386
<li> 28-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   387
<a href="http://code.nsnam.org/ns-3-dev/rev/6f68f1044df1">6f68f1044df1</a>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   388
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   389
<li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   390
OLSR: HELLO messages hold time changed to 3*hello
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   391
interval from hello interval.  This is an important bug fix as
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   392
hold time == refresh time was never intentional, as it leads to
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   393
instability in neighbor detection.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   394
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   395
</li>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
   396
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   397
</ul>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
   398
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   399
</body>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
   400
</html>