CHANGES.html
author Natale Patriciello <natale.patriciello@gmail.com>
Sat, 03 Mar 2018 11:52:38 +0100
changeset 13368 4e18b548c904
parent 13363 81dec099589b
child 13372 950f852a89f9
permissions -rw-r--r--
tcp: Try to take more data from the app before sending
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>
9212
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
    26
A related file is the RELEASE_NOTES file in the top level directory.
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
    27
This file complements RELEASE_NOTES by focusing on API and behavioral
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
    28
changes that users upgrading from one release to the next may encounter.
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
    29
RELEASE_NOTES attempts to comprehensively list all of the changes
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
    30
that were made.  There is generally some overlap in the information 
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
    31
contained in RELEASE_NOTES and this file.  </p>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
    32
<p>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    33
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
    34
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
    35
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
    36
or signature has changed, it should be stated what the new replacement
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    37
name is. </p>
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
Note that users who upgrade the simulator across versions, or who work
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    40
directly out of the development tree, may find that simulation output
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    41
changes even when the compilation doesn't break, such as when a
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    42
simulator default value is changed.  Therefore, it is good practice for
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    43
_anyone_ using code across multiple ns-3 releases to consult this file,
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    44
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
    45
</p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    46
<p>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    47
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
    48
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
    49
the cracks, unfortunately.  If you, as a user, can suggest improvements
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    50
to this file based on your experience, please contribute a patch or drop
7791
21c3495394b4 Enhancement 1393 - IPv6 Routing Helper RT Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7717
diff changeset
    51
us a note on ns-developers mailing list.</p>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    52
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
    53
<hr>
13113
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    54
<h1>Changes from ns-3.27 to ns-3-dev</h1>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    55
<h2>New API:</h2>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    56
<ul>
13232
896e8dc8bd93 internet: add Is[Address,Network]Allocated functions to Ipv[4,6]AddressGenerator
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 13202
diff changeset
    57
  <li> When deserializing Packet contents, <b>Header::Deserialize (Buffer::Iterator start)</b> and <b>Trailer::Deserialize (Buffer::Iterator start)</b> can not successfully deserialize variable-length headers and trailers.  New variants of these methods that also include an 'end' parameter are now provided.</li>
896e8dc8bd93 internet: add Is[Address,Network]Allocated functions to Ipv[4,6]AddressGenerator
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 13202
diff changeset
    58
  <li> Ipv[4,6]AddressGenerator can now check if an address is allocated (<b>Ipv[4,6]AddressGenerator::IsAddressAllocated</b>) or a network has some allocated address (<b>Ipv[4,6]AddressGenerator::IsNetworkAllocated</b>).</li>
13315
f5eefc5a4fd1 uan: (fixes #2413) Changes in the UAN module to support NS-3 IP stack
Hossam Khader <hossamkhader@gmail.com>
parents: 13278
diff changeset
    59
  <li> LTE UEs can now use IPv6 to send and receive traffic.</li>
f5eefc5a4fd1 uan: (fixes #2413) Changes in the UAN module to support NS-3 IP stack
Hossam Khader <hossamkhader@gmail.com>
parents: 13278
diff changeset
    60
  <li> UAN module now supports IP stack.</li>
13363
81dec099589b traffic-control: Add token bucket filter
Surya Seetharaman <suryaseetharaman.9@gmail.com>
parents: 13360
diff changeset
    61
  <li> Added a FIFO queue disc (FifoQueueDisc) and the Token Bucket Filter (TbfQueueDisc).</li>
13113
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    62
</ul>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    63
<h2>Changes to existing API:</h2>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    64
<ul>
13271
870c436d51fc lte: (fixes #2768) LteUeNetDevice has a null MAC address
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 13232
diff changeset
    65
  <li> Class <b>LrWpanMac</b> now supports extended addressing mode. Both <b>McpsDataRequest</b> and <b>PdDataIndication</b> methods will now use extended addressing if <b>McpsDataRequestParams::m_srcAddrMode</b> or <b>McpsDataRequestParams::m_dstAddrMode</b> are set to <b>EXT_ADDR</b>.</li>
870c436d51fc lte: (fixes #2768) LteUeNetDevice has a null MAC address
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 13232
diff changeset
    66
  <li> Class <b>LteUeNetDevice</b> MAC address is now a 64-bit address and it's set during construction.</li>
13113
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    67
</ul>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    68
<h2>Changes to build system:</h2>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    69
<ul>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    70
</ul>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    71
<h2>Changed behavior:</h2>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    72
<ul>
13358
b0777f871484 network: Add a MaxSize attribute to Queue
Stefano Avallone <stavallo@unina.it>
parents: 13315
diff changeset
    73
  <li>The Mode, MaxPackets and MaxBytes attributes of the Queue class have been deprecated in favor of the
b0777f871484 network: Add a MaxSize attribute to Queue
Stefano Avallone <stavallo@unina.it>
parents: 13315
diff changeset
    74
  MaxSize attribute. Old attributes can still be used, but using them will be no longer possible in one of the next releases. The methods to get/set the old attributes will be removed as well.</li>
13359
d0feae99202f traffic-control: Improve handling of queue disc size
Stefano Avallone <stavallo@unina.it>
parents: 13358
diff changeset
    75
  <li>The attributes of the QueueDisc subclasses that separately determine the mode and the limit of the QueueDisc have been deprecated in favor of the single MaxSize attribute.</li>
13360
2f7675fb756a traffic-control: Convert tests and examples to using MaxSize
Stefano Avallone <stavallo@unina.it>
parents: 13359
diff changeset
    76
  <li>The GetQueueSize method of some QueueDisc subclasses (e.g., Red) has been removed and replaced by the GetCurrentSize method of the QueueDisc base class.</li>
13113
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    77
</ul>
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    78
0192b2260af2 Update release files to start next release
Tom Henderson <tomh@tomh.org>
parents: 13078
diff changeset
    79
<hr>
12363
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
    80
<h1>Changes from ns-3.26 to ns-3.27</h1>
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
    81
<h2>New API:</h2>
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
    82
<ul>
12804
a87af91635ce Document new vector API in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12790
diff changeset
    83
<li>Added <code>Vector{2,3}D.GetLength ()</code>.</li>
a87af91635ce Document new vector API in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12790
diff changeset
    84
<li>Overloaded <code>operator+</code> and <code>operator-</code> for <code>Vector{2,3}D</code>.</li>
12790
8154ca19d840 Document WifiHelper::Install in CHANGES
Alexander Krotov <krotov@iitp.ru>
parents: 12745
diff changeset
    85
<li>Added iterator version of WifiHelper::Install() to install Wi-Fi devices on range of nodes.</li>
12672
10ea1cca0a24 tcp: Advertised Window was still incorrect
Christoph Döpmann <doepmanc@informatik.hu-berlin.de>
parents: 12668
diff changeset
    86
<li>Added a new attribute in TcpSocketBase to track the advertised window.</li>
12668
64600193d9dc tcp: Added TCP Ledbat
Ankit Deepak <adadeepak8@gmail.com>
parents: 12655
diff changeset
    87
<li>Included the model of <b>TCP Ledbat</b>.</li>
64600193d9dc tcp: Added TCP Ledbat
Ankit Deepak <adadeepak8@gmail.com>
parents: 12655
diff changeset
    88
<li>Included the TCP SACK-based loss recovery algorithm outlined in RFC 6675.</li>
12651
4fe9e782a0f6 tcp: updated CHANGES.html and RELEASE_NOTES
Natale Patriciello <natale.patriciello@gmail.com>
parents: 12589
diff changeset
    89
<li>Added <b>TCP SACK</b> and the <b>SACK emulation</b>. Added an Attribute to TcpSocketBase class,
4fe9e782a0f6 tcp: updated CHANGES.html and RELEASE_NOTES
Natale Patriciello <natale.patriciello@gmail.com>
parents: 12589
diff changeset
    90
    called "Sack", to enable or disable the SACK option usage.</li>
12583
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    91
<li>In 'src/wifi', several changes were made to enable partial <b>802.11ax</b> High Effiency (HE) support:
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    92
    <ul>
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    93
      <li>A new standard value has been added that enables the new 11ax data rates.</li>
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    94
      <li>A new 11ax preamble has been added.</li>
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    95
      <li>A new attribute was added to configure the guard interval duration for High Efficiency (HE) PHY entities. This attribute can be set using the YansWifiPhyHelper.</li>
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    96
      <li>A new information element has been added:  HeCapabilities. This information element is added to the MAC frame header if the node is a HE node. This HeCapabilites information element is used to advertise the HE capabilites of the node to other nodes in the network.</li>
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    97
    </ul>
40a9ab9779c6 wifi: Add initial support for 802.11ax
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12571
diff changeset
    98
</li>
12694
5209b094838e wifi: add RRPAA wifi rate control (patch from Matias Richart)
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12672
diff changeset
    99
<li> A new class were added for the RRPAA WiFi rate control mechanism.</li>
12654
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   100
<li>Included carrier aggregation feature in LTE module</li>
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   101
    <ul>
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   102
      <li>LTE model is extended to support carrier aggregation feature according to 3GPP Release 10, for up to 5 component 
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   103
      carriers. </li>
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   104
      <li>InstallSingleEnbDevice and InstalSingeUeDevice functions of LteHelper are now constructing LteEnbDevice and LteUeDevice 
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   105
      according to CA architecture. Each device, UE and eNodeB contains an instance of component carrier manager, and may 
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   106
      have several component carrier instances.</li>
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   107
      <li>SAP interfaces are extended to include CA message exchange funtionality.</li>
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   108
      <li>RRC connection procedure is extended to allow RRC connection reconfiguration for the configuration of the secondary carriers.</li>
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   109
      <li>RRC measurement reporting is extended to allow measurement reporting from the secondary carriers.</li>
12655
a471df71edfe lte: remove empty line from changes.html
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12654
diff changeset
   110
      <li>LTE traces are extended to include component carrier id.</li>
12654
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   111
    </ul>
3866ca3832eb lte: update release notes, changes, and lte 3GPP release version.
Biljana Bojovic <biljana.bojovic@gmail.com>
parents: 12651
diff changeset
   112
</li>
12389
d99ffe039f18 routing: (fixes #2527) Extend PrintRoutingTable to specify the time unit for the report.
Robert Ammon <ammo6818@vandals.uidaho.edu>
parents: 12375
diff changeset
   113
<li>Function <b>PrintRoutingTable</b> has been extended to add an optional Time::Units
d99ffe039f18 routing: (fixes #2527) Extend PrintRoutingTable to specify the time unit for the report.
Robert Ammon <ammo6818@vandals.uidaho.edu>
parents: 12375
diff changeset
   114
    parameter to specify the time units used on the report.  The new parameter is
d99ffe039f18 routing: (fixes #2527) Extend PrintRoutingTable to specify the time unit for the report.
Robert Ammon <ammo6818@vandals.uidaho.edu>
parents: 12375
diff changeset
   115
    optional and if not specified defaults to the previous behavior (Time::S).
d99ffe039f18 routing: (fixes #2527) Extend PrintRoutingTable to specify the time unit for the report.
Robert Ammon <ammo6818@vandals.uidaho.edu>
parents: 12375
diff changeset
   116
</li>
12451
ac1e0cdd5ca9 wifi: (fixes #2463) Add TxopTrace trace source to EdcaTxopN
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12425
diff changeset
   117
<li><b>TxopTrace</b>: new trace source exported by EdcaTxopN.</li>
12745
8d6d77be85bc flow-monitor: Keep track of the DSCP value of packets
Stefano Avallone <stavallo@unina.it>
parents: 12742
diff changeset
   118
<li>A <b>GetDscpCounts</b> method is added to <b>Ipv4FlowClassifier</b> and <b>Ipv6FlowClassifier</b>
8d6d77be85bc flow-monitor: Keep track of the DSCP value of packets
Stefano Avallone <stavallo@unina.it>
parents: 12742
diff changeset
   119
    which returns a vector of pairs (dscp,count), each of which indicates how many packets with the
8d6d77be85bc flow-monitor: Keep track of the DSCP value of packets
Stefano Avallone <stavallo@unina.it>
parents: 12742
diff changeset
   120
    associated dscp value have been classified for a given flow.
8d6d77be85bc flow-monitor: Keep track of the DSCP value of packets
Stefano Avallone <stavallo@unina.it>
parents: 12742
diff changeset
   121
</li>
12889
d9a9fc0dbe01 traffic-control: Add the mq queue disc
Stefano Avallone <stavallo@unina.it>
parents: 12808
diff changeset
   122
<li>MqQueueDisc, a multi-queue aware queue disc modelled after the mq qdisc in Linux, has been introduced.
d9a9fc0dbe01 traffic-control: Add the mq queue disc
Stefano Avallone <stavallo@unina.it>
parents: 12808
diff changeset
   123
</li>
13064
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   124
<li>Two new methods, <b>QueueDisc::DropBeforeEnqueue()</b> and <b>QueueDisc::DropAfterDequeue()</b> have
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   125
    been introduced to replace <b>QueueDisc::Drop()</b>. These new methods require the caller to specify the
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   126
    reason why a packet was dropped. Correspondingly, two new trace sources ("DropBeforeEnqueue" and
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   127
    "DropAfterDequeue") have been added to the QueueDisc class, providing both the items that were dropped
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   128
    and the reason why they were dropped. 
13060
7670ef916b21 traffic-control: (fixes #2751) Ensure queue discs keep correct statistics
Stefano Avallone <stavallo@unina.it>
parents: 13059
diff changeset
   129
</li>
13064
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   130
<li>Added <b>QueueDisc::GetStats()</b> which returns detailed statistics about the operations of
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   131
    a queue disc. Statistics can be accessed through the member variables of the returned object and
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   132
    by calling the <b>GetNDroppedPackets()</b>, <b>GetNDroppedBytes()</b>, <b>GetNMarkedPackets()</b> and <b>GetNMarkedBytes()</b> methods on the returned object. Such methods return the number of packets/bytes
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   133
    dropped/marked for the specified reason (passed as argument). Consequently:
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   134
    <ul>
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   135
      <li>A number of methods of the QueueDisc class have been removed: <b>GetTotalReceivedPackets()</b>,
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   136
      <b>GetTotalReceivedBytes()</b>, <b>GetTotalDroppedPackets()</b>, <b>GetTotalDroppedBytes()</b>,
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   137
      <b>GetTotalRequeuedPackets()</b>, <b>GetTotalRequeuedBytes()</b>.</li>
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   138
      <li>The <b>Stats</b> struct and the <b>GetStats()</b> method of <b>RedQueueDisc</b> and <b>PieQueueDisc</b> have been removed and replaced by those of the QueueDisc base class.</li>
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   139
      <li>The <b>GetDropOverLimit</b> and <b>GetDropCount</b> methods of <b>CoDelQueueDisc</b> have been removed.
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   140
      The values they returned can be obtained by calling, respectively,
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   141
      GetStats ().GetNDroppedPackets (CoDelQueueDisc::OVERLIMIT_DROP) and
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   142
      GetStats ().GetNDroppedPackets (CoDelQueueDisc::TARGET_EXCEEDED_DROP). The "DropCount" trace of
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   143
      <b>CoDelQueueDisc</b> has been removed as well. Packets dropped because the target is exceeded can
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   144
      be obtained through the new "DropAfterDequeue" trace of the QueueDisc class.</li>
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   145
    </ul>
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   146
</li>
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   147
<li> The new <b>QueueDisc::Mark()</b> method has been introduced to allow subclasses to request to mark a packet.
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   148
     The  caller must specify the reason why the packet must be marked. Correspondingly, a new trace source ("Mark")
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   149
     has been added to the QueueDisc class, providing both the items that were marked and the reason why they
9a84814389aa traffic-control: Record reasons for dropping and marking packets
Stefano Avallone <stavallo@unina.it>
parents: 13063
diff changeset
   150
     were marked.
13060
7670ef916b21 traffic-control: (fixes #2751) Ensure queue discs keep correct statistics
Stefano Avallone <stavallo@unina.it>
parents: 13059
diff changeset
   151
</li>
13061
80f47eaeae23 traffic-control: Trace sojourn times within queue discs
Stefano Avallone <stavallo@unina.it>
parents: 13060
diff changeset
   152
<li>A new trace source, <b>SojournTime</b>, is exported by the QueueDisc base class to provide the
80f47eaeae23 traffic-control: Trace sojourn times within queue discs
Stefano Avallone <stavallo@unina.it>
parents: 13060
diff changeset
   153
    sojourn time of every packet dequeued from a queue disc. This has been made possible by adding a
80f47eaeae23 traffic-control: Trace sojourn times within queue discs
Stefano Avallone <stavallo@unina.it>
parents: 13060
diff changeset
   154
    timestamp to QueueDiscItem objects, which can be set/get through the new <b>GetTimeStamp()</b> and
13062
c089c81694ea traffic-control: CoDel uses the QueueDiscItem timestamp
Stefano Avallone <stavallo@unina.it>
parents: 13061
diff changeset
   155
    <b>SetTimeStamp()</b> methods of the QueueDiscItem class. The <b>CoDel</b> queue disc now makes use of such feature of the base class, hence its Sojourn trace source and the CoDelTimestampTag class
c089c81694ea traffic-control: CoDel uses the QueueDiscItem timestamp
Stefano Avallone <stavallo@unina.it>
parents: 13061
diff changeset
   156
    have been removed.
13061
80f47eaeae23 traffic-control: Trace sojourn times within queue discs
Stefano Avallone <stavallo@unina.it>
parents: 13060
diff changeset
   157
</li>
12363
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   158
</ul>
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   159
<h2>Changes to existing API:</h2>
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   160
<ul>
12397
6572761077e5 core: (fixes #2513) - Deprecates Mean attribute in ParetoRandomVariable
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12389
diff changeset
   161
<li><b>ParetoRandomVariable</b> "Mean" attribute has been deprecated, 
6572761077e5 core: (fixes #2513) - Deprecates Mean attribute in ParetoRandomVariable
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12389
diff changeset
   162
    the "Scale" Attribute have to be used instead.
6572761077e5 core: (fixes #2513) - Deprecates Mean attribute in ParetoRandomVariable
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12389
diff changeset
   163
    Changing the Mean attribute has no more an effect on the distribution.
6572761077e5 core: (fixes #2513) - Deprecates Mean attribute in ParetoRandomVariable
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12389
diff changeset
   164
    See the documentation for the relationship between Mean, Scale and Shape. 
6572761077e5 core: (fixes #2513) - Deprecates Mean attribute in ParetoRandomVariable
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12389
diff changeset
   165
</li>
12560
9bf327ae8008 core: (fixes #2490) Change logging timestamp precision
Tom Henderson <tomh@tomh.org>
parents: 12505
diff changeset
   166
<li>The default logging timestamp precision has been changed from 6 digits
9bf327ae8008 core: (fixes #2490) Change logging timestamp precision
Tom Henderson <tomh@tomh.org>
parents: 12505
diff changeset
   167
    to 9 digits, with a fixed format to ensure that 9 digits to the right of
9bf327ae8008 core: (fixes #2490) Change logging timestamp precision
Tom Henderson <tomh@tomh.org>
parents: 12505
diff changeset
   168
    the decimal point are always printed.  Previously, default C++ iostream
9bf327ae8008 core: (fixes #2490) Change logging timestamp precision
Tom Henderson <tomh@tomh.org>
parents: 12505
diff changeset
   169
    precision and formatting was used.
9bf327ae8008 core: (fixes #2490) Change logging timestamp precision
Tom Henderson <tomh@tomh.org>
parents: 12505
diff changeset
   170
</li>
12571
80142e260133 wifi: code refactoring phase 1
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12564
diff changeset
   171
<li>Abstract base class <b>WifiChannel</b> has been removed. As a result, a Channel type instead of a WifiChannel type
80142e260133 wifi: code refactoring phase 1
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12564
diff changeset
   172
is now exported by WifiNetDevice.</li>
12742
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   173
<li> The <b>GetPacketSize</b> method of <b>QueueItem</b> has been renamed <b>GetSize</b>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   174
</li>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   175
<li> The <b>DequeueAll</b> method of <b>Queue</b> has been renamed <b>Flush</b>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   176
</li>
12413
f379a30efa16 wifi: (fixes #2533) Improve 802.11n MIMO PHY abstraction
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12397
diff changeset
   177
<li>The attributes <b>WifiPhy::TxAntennas</b> and <b>WifiPhy::RxAntennas</b>,
f379a30efa16 wifi: (fixes #2533) Improve 802.11n MIMO PHY abstraction
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12397
diff changeset
   178
    and the related accessor methods, were replaced by <b>WifiPhy::MaxSupportedTxSpatialStreams</b>
f379a30efa16 wifi: (fixes #2533) Improve 802.11n MIMO PHY abstraction
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12397
diff changeset
   179
    and <b>WifiPhy::MaxSupportedRxSpatialStreams</b>. A new attribute <b>WifiPhy::Antennas</b>
f379a30efa16 wifi: (fixes #2533) Improve 802.11n MIMO PHY abstraction
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12397
diff changeset
   180
    was added to allow users to define the number of physical antennas on the device.
f379a30efa16 wifi: (fixes #2533) Improve 802.11n MIMO PHY abstraction
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12397
diff changeset
   181
</li>
12936
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   182
<li>Sockets do not receive anymore broadcast packets, unless they are bound to an "Any" address (0.0.0.0)
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   183
    or to a subnet-directed broadcast packet (e.g., x.y.z.0 for a /24 noterok).
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   184
    As in Linux, the following rules are now enforced:
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   185
    <ul>
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   186
    <li> A socket bound to 0.0.0.0 will receive everything.</li>
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   187
    <li> A socket bound to x.y.z.0/24 will receive subnet-directed broadcast (x.y.z.255) and unicast packets.</li>
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   188
    <li> A socket bound to x.y.z.w will only receive unicast packets.</li>
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   189
    </ul> 
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   190
    <b>Previously, a socket bound to an unicast address received also subnet-directed broadcast packets. 
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   191
    This is not anymore possible</b>.
eb1a121ab8bd internet: (fixes #2758) IPv4 sockets bound to unicast receive also subnet-directed broadcasts
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12889
diff changeset
   192
</li>
12958
6e192ac0b562 internet: (fixes #2762) BindToNetDevice behaviour is not coherent with Linux
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12936
diff changeset
   193
<li>You can now Bind as many socket as you want to an address/port, provided that they are bound to different NetDevices.
6e192ac0b562 internet: (fixes #2762) BindToNetDevice behaviour is not coherent with Linux
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12936
diff changeset
   194
    Moreover, BindToNetDevice does not anymore call Bind. In other terms, Bind and BindToNetDevice can be called
6e192ac0b562 internet: (fixes #2762) BindToNetDevice behaviour is not coherent with Linux
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12936
diff changeset
   195
    in any order.
6e192ac0b562 internet: (fixes #2762) BindToNetDevice behaviour is not coherent with Linux
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12936
diff changeset
   196
    However, it is suggested to use BindToNetDevice <i>before</i> Bind in order to avoid conflicts.
6e192ac0b562 internet: (fixes #2762) BindToNetDevice behaviour is not coherent with Linux
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12936
diff changeset
   197
</li>
12808
f2dba79bb5d1 build: (fixes #2630) Add contrib directory in parallel to src
Lauri Sormunen <lauri.sormunen@magister.fi>
parents: 12804
diff changeset
   198
</ul>
f2dba79bb5d1 build: (fixes #2630) Add contrib directory in parallel to src
Lauri Sormunen <lauri.sormunen@magister.fi>
parents: 12804
diff changeset
   199
<h2>Changes to build system:</h2>
f2dba79bb5d1 build: (fixes #2630) Add contrib directory in parallel to src
Lauri Sormunen <lauri.sormunen@magister.fi>
parents: 12804
diff changeset
   200
<ul>
13074
be66adff5d53 bindings: Updates corresponding to project use of CastXML
Tom Henderson <tomh@tomh.org>
parents: 13067
diff changeset
   201
<li> The API scanning process for Python bindings now relies on CastXML, and only 64-bit scans are presently supported (Linux 64-bit systems).  Generation of 32-bit scans is documented in the Python chapter of the ns-3 manual.
be66adff5d53 bindings: Updates corresponding to project use of CastXML
Tom Henderson <tomh@tomh.org>
parents: 13067
diff changeset
   202
</li>
12808
f2dba79bb5d1 build: (fixes #2630) Add contrib directory in parallel to src
Lauri Sormunen <lauri.sormunen@magister.fi>
parents: 12804
diff changeset
   203
<li> Modules can now be located in the 'contrib/' directory in addition to 'src/'
f2dba79bb5d1 build: (fixes #2630) Add contrib directory in parallel to src
Lauri Sormunen <lauri.sormunen@magister.fi>
parents: 12804
diff changeset
   204
</li>
12564
f0e46b2c62df build: (fixes #2518) Suppress module list for Python programs
Ankit Deepak <adadeepak8@gmail.com>
parents: 12560
diff changeset
   205
<li> Behavior for running Python programs was aligned with that of C++ programs; the list of modules built is no longer printed out.
f0e46b2c62df build: (fixes #2518) Suppress module list for Python programs
Ankit Deepak <adadeepak8@gmail.com>
parents: 12560
diff changeset
   206
</li>
12363
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   207
</ul>
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   208
<h2>Changed behavior:</h2>
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   209
<ul>
12375
92983bffd4a0 Describe behavior changes related to #2467 in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12363
diff changeset
   210
<li><b>MultiModelSpectrumChannel</b> does not call StartRx for receivers that
92983bffd4a0 Describe behavior changes related to #2467 in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12363
diff changeset
   211
    operate on subbands orthogonal to transmitter subbands. Models that depend
92983bffd4a0 Describe behavior changes related to #2467 in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12363
diff changeset
   212
    on receiving signals with zero power spectral density from orthogonal bands
92983bffd4a0 Describe behavior changes related to #2467 in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12363
diff changeset
   213
    may change their behavior.
92983bffd4a0 Describe behavior changes related to #2467 in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12363
diff changeset
   214
    See <a href=https://www.nsnam.org/bugzilla/show_bug.cgi?id=2467>bug 2467</a>
92983bffd4a0 Describe behavior changes related to #2467 in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12363
diff changeset
   215
    for discussion.
92983bffd4a0 Describe behavior changes related to #2467 in CHANGES.html
Alexander Krotov <krotov@iitp.ru>
parents: 12363
diff changeset
   216
</li>
12425
1313ad34c26a network: (fixes #2221) Remove size constraint of Tag objects
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 12413
diff changeset
   217
<li><b>Packet Tag objects</b> are no longer constrained to fit within 21 
1313ad34c26a network: (fixes #2221) Remove size constraint of Tag objects
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 12413
diff changeset
   218
    bytes; a maximum size is no longer enforced.
1313ad34c26a network: (fixes #2221) Remove size constraint of Tag objects
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 12413
diff changeset
   219
</li>
12589
5608f5d3d604 wifi: Change default TxGain and RxGain attributes to 0 dB
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12583
diff changeset
   220
  <li> The default value of the <b>TxGain</b> and <b>RxGain</b> attributes in WifiPhy was changed from 1 dB to 0 dB.
5608f5d3d604 wifi: Change default TxGain and RxGain attributes to 0 dB
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12583
diff changeset
   221
  </li>
13078
db3315a68299 wifi: Update documentation for previous two changesets
Tom Henderson <tomh@tomh.org>
parents: 13074
diff changeset
   222
  <li> The reported SNR by WifiPhy::MonitorSnifferRx did not include the RxNoiseFigure, but now does; see <a href=https://www.nsnam.org/bugzilla/show_bug.cgi?id=2783>bug 2783</a> for discussion.
db3315a68299 wifi: Update documentation for previous two changesets
Tom Henderson <tomh@tomh.org>
parents: 13074
diff changeset
   223
  </li>
12742
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   224
<li><b>Queue</b> has been redesigned as a template class object, where the type parameter
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   225
    specifies the type of items to be stored in the queue. As a consequence:
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   226
    <ul>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   227
      <li>Being a subclass of Queue, <b>DropTailQueue</b> is a template class as well.
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   228
      <li>Network devices such as SimpleNetDevice, PointToPointNetDevice and CsmaNetDevice
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   229
      use a queue of type Queue&lt;Packet&gt; to store the packets to transmit. The SetQueue
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   230
      method of their helpers, however, can still be invoked as, e.g.,
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   231
      SetQueue ("ns3::DropTailQueue") instead of, e.g., SetQueue
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   232
      ("ns3::DropTailQueue&lt;Packet&gt;").</li>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   233
      <li>The attributes <b>Mode</b>, <b>MaxPackets</b> and <b>MaxBytes</b> are now
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   234
      defined by the QueueBase class (which Queue is derived from).</li>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   235
    </ul>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   236
</li>
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   237
<li>Queue discs that can operate both in packet mode and byte mode (Red, CoDel, Pie) define their own
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   238
    enum QueueDiscMode instead of using QueueBase::QueueMode.
4edae42e6e6b network: The Queue class holds a list of items
Stefano Avallone <stavallo@unina.it>
parents: 12694
diff changeset
   239
</li>
13063
33a75a2f1b68 traffic-control: Be more restrictive on internal queue size
Stefano Avallone <stavallo@unina.it>
parents: 13062
diff changeset
   240
<li>The CoDel, PIE and RED queue discs require that the size of the internal queue is the same as
33a75a2f1b68 traffic-control: Be more restrictive on internal queue size
Stefano Avallone <stavallo@unina.it>
parents: 13062
diff changeset
   241
    the queue disc limit (previously, it was allowed to be greater than or equal).
13059
037e9046f940 wifi: Enable beacon jitter by default
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12958
diff changeset
   242
</li>
037e9046f940 wifi: Enable beacon jitter by default
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12958
diff changeset
   243
  <li> The default value of the <b>EnableBeaconJitter</b> attribute in ApWifiMac was changed from false to true.
037e9046f940 wifi: Enable beacon jitter by default
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12958
diff changeset
   244
  </li>
13067
7fd6855bb061 tcp: (fixes #2565) Documentation on NotifyNormalClose behavior
Tom Henderson <tomh@tomh.org>
parents: 13064
diff changeset
   245
  <li> The NormalClose() callback of a TcpSocket object used to fire upon leaving TIME_WAIT state (2*MSL after FINs have been exchanged).  It now fires upon entering TIME_WAIT state.  Timing of the callback for the other path to state CLOSED (through LAST_ACK) has not been changed.
7fd6855bb061 tcp: (fixes #2565) Documentation on NotifyNormalClose behavior
Tom Henderson <tomh@tomh.org>
parents: 13064
diff changeset
   246
  </li>
12363
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   247
</ul>
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   248
c1b44cbbebea documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12361
diff changeset
   249
<hr>
12070
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   250
<h1>Changes from ns-3.25 to ns-3.26</h1>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   251
<h2>New API:</h2>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   252
<ul>
12219
a7e5825d00b6 wifi: (closes #2400) Add SpectrumWifiPhy model
Tom Henderson <tomh@tomh.org>
parents: 12215
diff changeset
   253
<li>A <b>SocketPriorityTag</b> is introduced to carry the packet priority. Such a tag
12210
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   254
    is added to packets by sockets that support this mechanism (UdpSocketImpl,
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   255
    TcpSocketBase and PacketSocket). The base class Socket has a new SetPriority
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   256
    method to set the socket priority. When the IPv4 protocol is used, the
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   257
    priority is set based on the ToS. See the Socket options section of the
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   258
    Network model for more information.
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   259
</li>
12219
a7e5825d00b6 wifi: (closes #2400) Add SpectrumWifiPhy model
Tom Henderson <tomh@tomh.org>
parents: 12215
diff changeset
   260
<li>A <b>WifiNetDevice::SelectQueue</b> method has been added to determine the user
12210
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   261
    priority of an MSDU. This method is called by the traffic control layer before
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   262
    enqueuing a packet in the queue disc, if a queue disc is installed on
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   263
    the outgoing device, or passing a packet to the device, otherwise. The
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   264
    user priority is set to the three most significant bits of the DS field
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   265
    (TOS field in case of IPv4 and Traffic Class field in case of IPv6). The
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   266
    packet priority carried by the SocketPriorityTag is set to the user priority.
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   267
</li>
12219
a7e5825d00b6 wifi: (closes #2400) Add SpectrumWifiPhy model
Tom Henderson <tomh@tomh.org>
parents: 12215
diff changeset
   268
<li>The <b>PfifoFastQueueDisc</b> classifies packets into bands based on their priority.
12210
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   269
    See the pfifo_fast queue disc section of the Traffic Control Layer model
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   270
    for more information.
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   271
</li>
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   272
<li>A new class <b>SpectrumWifiPhy</b> has been introduced that makes use of the 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   273
    Spectrum module.  Its functionality and API is currently very similar to that 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   274
    of the YansWifiPhy, especially because it reuses the same InterferenceHelper 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   275
    and ErrorModel classes (for this release).  Some example programs in the 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   276
    'examples/wireless/' directory, such as 'wifi-spectrum-per-example.cc', 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   277
    illustrate how the SpectrumWifiPhy class can be substituted for the default 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   278
    YansWifiPhy PHY model.
12219
a7e5825d00b6 wifi: (closes #2400) Add SpectrumWifiPhy model
Tom Henderson <tomh@tomh.org>
parents: 12215
diff changeset
   279
</li>
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   280
<li>We have added support for generating traces for the
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   281
    <a href="https://wilseypa.github.io/desMetrics">DES Metrics</a> project.
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   282
    These can be enabled by adding <tt>--enable-des-metrics</tt> at configuration;
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   283
    you must also use <tt>CommandLine</tt> in your script.  See the API docs
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   284
    for class <b>DesMetrics</b> for more details.
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   285
</li>
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   286
<li> The traffic control module now includes the <b>FQ-CoDel</b> and <b>PIE</b> queue disc 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   287
    models, and behavior corresponding to Linux <b>Byte Queue Limits (BQL)</b>.
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   288
</li>
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   289
<li> Several new TCP congestion control variants were introduced, including
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   290
    <b>TCP Vegas, Scalable, Veno, Illinois, Bic, YeAH, and H-TCP</b> 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   291
    congestion control algorithms.
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   292
</li>
12070
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   293
</ul>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   294
<h2>Changes to existing API:</h2>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   295
<ul>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   296
<li><b>SocketAddressTag</b> was a long-standing approach to approximate the POSIX
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   297
    socket recvfrom behavior (i.e., to know the source address of a packet) 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   298
    without actually calling RecvFrom.  Experience with this revealed that
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   299
    this option was difficult to use with tunnels (the new tag has to 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   300
    replace the old one).  Moreover, there is no real need 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   301
    to create a new API when there is a an existing one (i.e., RecvFrom).
12139
6869e7e72137 internet: (fixes #231) Remove SocketAddressTag
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12070
diff changeset
   302
    As a consequence, SocketAddressTag has been completely removed from ns-3.
6869e7e72137 internet: (fixes #231) Remove SocketAddressTag
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12070
diff changeset
   303
    Users can use RecvFrom (for UDP), GetPeerName (for TCP), or similar. 
6869e7e72137 internet: (fixes #231) Remove SocketAddressTag
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 12070
diff changeset
   304
</li>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   305
<li><b>InetSockAddress</b> can now store a ToS value, which can be set through its
12210
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   306
    SetTos method. The Bind and Connect methods of UDP (UdpSocketImpl) and
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   307
    TCP (TcpSocketBase) sockets set the socket ToS value to the value provided
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   308
    through the address input parameter (of type InetSockAddress). See the
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   309
    Socket options section of the Network model for more information.
7209087bf8cc documentation: Update CHANGES.html and doxygen
Stefano Avallone <stavallo@unina.it>
parents: 12139
diff changeset
   310
</li>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   311
<li>The <b>QosTag</b> is removed as it has been superseded by the SocketPriorityTag.</li>
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   312
<li>The <b>Ipv4L3Protocol::DefaultTos</b> attribute is removed.</li>
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   313
<li>The attributes <b>YansWifiPhy::Frequency, YansWifiPhy::ChannelNumber, and 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   314
    YansWifiPhy::ChannelWidth</b>, and the related accessor methods, were moved to 
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   315
    base class WifiPhy.  YansWifiPhy::GetChannelFrequencyMhz() was deleted.  
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   316
    A new method WifiPhy::DefineChannelNumber () was added to allow users to 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   317
    define relationships between channel number, standard, frequency, and channel width.
12219
a7e5825d00b6 wifi: (closes #2400) Add SpectrumWifiPhy model
Tom Henderson <tomh@tomh.org>
parents: 12215
diff changeset
   318
</li>
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   319
<li>The class <b>WifiSpectrumValueHelper</b> has been refactored; previously it 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   320
    was an abstract base class supporting the WifiSpectrumValue5MhzFactory spectrum 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   321
    model.  It now contains various static member methods supporting the creation 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   322
    of power spectral densities with the granularity of a Wi-Fi OFDM subcarrier 
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   323
    bandwidth.  The class <b>WifiSpectrumValue5MhzFactory</b> and its API remain but 
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   324
    it is not subclassed.
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   325
 </li>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   326
<li>A new Wifi method <b>InterferenceHelper::AddForeignSignal</b> has been introduced to 
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   327
    support use of the SpectrumWifiPhy (so that non-Wi-Fi signals may be handled 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   328
    as noise power).
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   329
</li>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   330
<li>A new Wifi attribute <b>Dcf::TxopLimit</b> has been introduced to add support for 802.11e TXOP.
12357
f5edea84a92f documentation: Update CHANGES.html for 802.11e TXOP
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12329
diff changeset
   331
</li>
12070
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   332
</ul>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   333
<h2>Changes to build system:</h2>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   334
<ul>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   335
  <li> A new waf build option, <tt>--check-config</tt>, was added to allow users to print the current configuration summary, as appears at the end of ./waf configure.  See bug 2459 for discussion.</li>
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   336
  <li> The <tt>configure</tt> summary is now sorted, to make it easier to check the status of optional features.</li>
12070
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   337
</ul>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   338
<h2>Changed behavior:</h2>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   339
This section is for behavioral changes to the models that were not due to a bug fix.
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   340
<ul>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   341
  <li>The relationship between Wi-Fi channel number, frequency, channel width, 
12308
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   342
      and Wi-Fi standard has been revised (see bug 2412).  Previously, ChannelNumber 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   343
      and Frequency were attributes of class YansWifiPhy, and the frequency was 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   344
      defined as the start of the band.  Now, Frequency has been redefined to be 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   345
      the center frequency of the channel, and the underlying device relies on 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   346
      the pair of frequency and channel width to control behavior; the channel 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   347
      number and Wi-Fi standard are used as attributes to configure frequency 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   348
      and channel width.  The wifi module documentation discusses this change 
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   349
      and the new behavior.
4916e2174a59 aodv: (fixes #2123) AODV doesn't use / honor IP TTL in the RREQ / RREP
Andrea Lupia <alupia@dimes.unical.it>
parents: 12297
diff changeset
   350
  </li>
12361
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   351
  <li>AODV now honors the TTL in RREQ/RREP and it uses a method 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   352
      compliant with <a href="http://www.ietf.org/rfc/rfc3561.txt">RFC 3561</a>.      The node search radius is increased progressively. This could increase 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   353
      slightly the node search time, but it also decreases the network 
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   354
      congestion.
0287b775fa6c update CHANGES.html and RELEASE_NOTES for ns-3.26
Tom Henderson <tomh@tomh.org>
parents: 12357
diff changeset
   355
  </li>
12070
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   356
</ul>
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   357
b250ea441642 documentation: Update for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 12056
diff changeset
   358
<hr>
11670
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   359
<h1>Changes from ns-3.24 to ns-3.25</h1>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   360
<h2>New API:</h2>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   361
<ul>
11730
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   362
  <li> In 'src/internet/test', a new environment is created to test TCP properties.</li>
12038
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   363
  <li> The 'src/traffic-control' module has been added, with new API for adding and configuring queue discs and packet filters.</li>
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   364
  <li> Related to traffic control, a new interface has been added to the
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   365
NetDevice to provide a queue interface to access device queue state and
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   366
register callbacks used for flow control.</li>
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   367
  <li> In 'src/wifi', a new rate control (MinstrelHT) has been added for
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   368
802.11n/ac modes.</li>
11859
b73bc6f93c61 wifi: Update documentation for new helpers and APIs
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11843
diff changeset
   369
  <li> In 'src/wifi', a new helper (WifiMacHelper) is added and is a merged helper from all previously existing MAC helpers (NqosWifiMacHelper, QosWifiMacHelper, HtWifiMacHelper and VhtWifiMacHelper).</li>
11937
fe202d97ae3d Update CHANGES and RELEASE_NOTES
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 11897
diff changeset
   370
  <li> It is now possible to use RIPv2 in IPv4 network simulations.</li>
11670
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   371
</ul>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   372
<h2>Changes to existing API:</h2>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   373
<ul>
11730
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   374
  <li>TCP-related changes:
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   375
    <ul>
11797
838552e9d264 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11739
diff changeset
   376
      <li>Classes TcpRfc793, TcpTahoe, and TcpReno were removed.</li>
838552e9d264 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11739
diff changeset
   377
      <li>The 'TcpNewReno' log component was effectively replaced by 'TcpCongestionOps'
11739
d3dbffe065b2 Release notes and changes updated for Hybla and HighSpeed
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11730
diff changeset
   378
      <li>TCP Hybla and HighSpeed have been added.</li>
11730
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   379
      <li>Added the concept of Congestion State Machine inside TcpSocketBase.</li>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   380
      <li>Merged Fast Recovery and Fast Retransmit inside TcpSocketBase.</li>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   381
      <li>Some member variables have been moved from TcpSocketBase inside TcpSocketState. Attributes are not touched.</li>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   382
      <li>Congestion control splitted from TcpSocketBase as subclass of TcpCongestionOps.</li>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   383
      <li>Added Rx and Tx callbacks on TcpSocketBase.</li>
11897
f347382e0d42 internet: added BytesInFlight trace inside TcpSocketBase
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11859
diff changeset
   384
      <li>Added BytesInFlight trace source on TcpSocketBase. The trace is updated when the implementation requests the value.</li>
11730
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   385
      <li>Added attributes about the number of connection and data retransmission attempts.</li>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   386
    </ul>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   387
  </li>
11859
b73bc6f93c61 wifi: Update documentation for new helpers and APIs
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11843
diff changeset
   388
  <li> ns-3 is now capable of serializing SLL (a.k.a. cooked) headers.
11843
1de7febc2653 network: (fixes #2286) Support for SLL header (de)serialization
Matt <matthieu.coudron@lip6.fr>
parents: 11805
diff changeset
   389
       This is used in DCE to allow the generation of pcap directly readable by wireshark.
1de7febc2653 network: (fixes #2286) Support for SLL header (de)serialization
Matt <matthieu.coudron@lip6.fr>
parents: 11805
diff changeset
   390
  </li>
11859
b73bc6f93c61 wifi: Update documentation for new helpers and APIs
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11843
diff changeset
   391
  <li> In the WifiHelper class in the wifi module, Default has been declared deprecated. This is now immediately handled by the constructor of the class.</li>
b73bc6f93c61 wifi: Update documentation for new helpers and APIs
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11843
diff changeset
   392
  <li> The API for configuring 802.11n/ac aggregation has been modified to be more user friendly. As any MAC layer attributes, aggregation parameters can now also be configured through WifiMacHelper::SetType. </li>
12038
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   393
  <li> The class Queue and subclasses derived from it have been changed in two ways:
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   394
  <ul>
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   395
    <li>Queues no longer enqueue simple Packets but instead enqueue QueueItem objects, which include Packet but possibly other information such as headers.</li>
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   396
    <li>The attributes governing the mode of operation (packets or bytes) and the maximum size have been moved to base class Queue.</li>
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   397
  </ul>
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   398
  </li>
12056
0539652e9551 documentation: Update CHANGES.html for changed behavior
Stefano Avallone <stavallo@unina.it>
parents: 12038
diff changeset
   399
  <li> Users of advanced queues (RED, CoDel) who have been using them directly in the NetDevice will need to adjust to the following changes:
0539652e9551 documentation: Update CHANGES.html for changed behavior
Stefano Avallone <stavallo@unina.it>
parents: 12038
diff changeset
   400
    <ul>
0539652e9551 documentation: Update CHANGES.html for changed behavior
Stefano Avallone <stavallo@unina.it>
parents: 12038
diff changeset
   401
      <li> RED and CoDel are no longer specializations of the Queue classe, but are now specializations of the new QueueDisc class. This means that RED and CoDel can now be installed in the context of the new Traffic Control layer instead of as queues in (some) NetDevices. The reason for such a change is to make the ns-3 stack much more similar to that of real operating systems (Linux has been taken as a reference).  Queuing disciplines such as RED and CoDel can now be tested with all the NetDevices, including WifiNetDevices. </li>
0539652e9551 documentation: Update CHANGES.html for changed behavior
Stefano Avallone <stavallo@unina.it>
parents: 12038
diff changeset
   402
      <li> NetDevices still use queues to buffer packets. The only subclass of Queue currently available for this purpose is DropTailQueue. If one wants to approximate the old behavior, one needs to set the DropTailQueue MaxPackets attribute to very low values, e.g., 1.</li>
0539652e9551 documentation: Update CHANGES.html for changed behavior
Stefano Avallone <stavallo@unina.it>
parents: 12038
diff changeset
   403
      <li> The Traffic Control layer features a mechanism by which packets dropped by the NetDevice are requeued in the queue disc (more precisely: if NetDevice::Send returns false, the packet is requeued), so that they are retransmitted later. This means that the MAC drop traces may include packets that have not been actually lost, because they have been dropped by the device, requeued by the traffic control layer and successfully retransmitted. To get the correct number of packets that have been actually lost, one has to subtract the number of packets requeued from the number of packets dropped as reported by the MAC drop trace. </li>
0539652e9551 documentation: Update CHANGES.html for changed behavior
Stefano Avallone <stavallo@unina.it>
parents: 12038
diff changeset
   404
    </ul>
0539652e9551 documentation: Update CHANGES.html for changed behavior
Stefano Avallone <stavallo@unina.it>
parents: 12038
diff changeset
   405
  </li>
11670
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   406
</ul>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   407
<h2>Changes to build system:</h2>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   408
<ul>
12038
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   409
  <li> Waf was upgraded to 1.8.19</li>
11805
391bf90839ed add waf --check-profile option
Tom Henderson <tomh@tomh.org>
parents: 11797
diff changeset
   410
  <li> A new waf build option, --check-profile, was added to allow users to check the currently active build profile.  It is discussed in bug 2202 in the tracker.</li>
11670
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   411
</ul>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   412
<h2>Changed behavior:</h2>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   413
This section is for behavioral changes to the models that were not due to a bug fix.
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   414
<ul>
11730
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   415
  <li>TCP behavioral changes:
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   416
    <ul>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   417
      <li>TCP closes connection after a number of failed segment retries,
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   418
        rather than trying indefinitely. The maximum number of retries, for both SYN
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   419
        attempts and data attempts, is controlled by attributes.</li>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   420
      <li>Congestion algorithms not compliant with Fast Retransmit
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   421
        and Fast Recovery (TCP 793, Reno, Tahoe) have been removed.</li>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   422
    </ul>
84e170fa754b Updated CHANGES and RELEASE_NOTES after merging GSoC-TCP
Natale Patriciello <natale.patriciello@gmail.com>
parents: 11670
diff changeset
   423
  </li>
11859
b73bc6f93c61 wifi: Update documentation for new helpers and APIs
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11843
diff changeset
   424
  <li> 802.11n/ac MPDU aggregation is now enabled by default for both AC_BE and AC_VI.</li>
12038
ee5a6d04e199 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11937
diff changeset
   425
  <li> The introduction of the traffic control layer leads to some additional buffering by default in the stack; when a device queue fills up, additional packets become enqueued at the traffic control layer.</li>
11670
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   426
</ul>
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   427
28a8a46fbb98 update RELEASE_NOTES and CHANGES.html for next release cycle
Tom Henderson <tomh@tomh.org>
parents: 11656
diff changeset
   428
<hr>
11397
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   429
<h1>Changes from ns-3.23 to ns-3.24</h1>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   430
<h2>New API:</h2>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   431
<ul>
11647
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   432
  <li>In 'src/wifi', several changes were made to enable partial 802.11ac support:
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   433
    <ul>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   434
      <li>A new helper (VhtWifiMacHelper) was added to set up a Very high throughput (VHT) MAC entity.</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   435
      <li>A new standard value has been added that enables the new 11ac data rates.</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   436
      <li>A new 11ac preamble has been added.</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   437
      <li>A new information element has been added:  VhtCapabilities. This information element is added to the MAC frame header if the node is a VHT node. This VhtCapabilites information element is used to advertise the VHT capabilites of the node to other nodes in the network.</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   438
    </ul>
11656
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   439
  </li>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   440
  <li>The ArpCache API was extended to allow the manual removal of ArpCache entries and the addition of permanent (static) entries for IPv4.
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   441
  </li>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   442
  <li> The SimpleChannel in the 'network' module now allows per-NetDevice blacklists, in order to do hidden terminal testcases.
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   443
  </li>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   444
</ul>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   445
<h2>Changes to existing API:</h2>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   446
<ul>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   447
  <li> The signatures on several TcpHeader methods were changed to take const arguments.</li>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   448
  <li> class TcpL4Protocol replaces Send() methods with SendPacket(), and adds new methods to AddSocket() and RemoveSocket() from a node.  Also, a new PacketReceived() method was introduced to get the TCP header of an incoming packet and check its checksum.</li>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   449
  <li> The CongestionWindow and SlowStartThreshold trace sources have been moved from the TCP subclasses such as NewReno, Reno, Tahoe, and Westwood to the TcpSocketBase class.</li>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   450
  <li> The WifiMode object has been refactored:
11647
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   451
    <ul>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   452
      <li>11n data rates are now renamed according to their MCS value. E.g. OfdmRate65MbpsBW20MHz has been renamed into HtMcs7. 11ac data rates have been defined according to this new renaming.</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   453
      <li>HtWifiMacHelper and VhtWifiMacHelper provide a helper to convert a MCS value into a data rate value.</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   454
      <li>The channel width is no longer tied to the wifimode. It is now included in the TXVECTOR.</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   455
      <li>The physical bitrate is no longer tied to the wifimode. It is computed based on the selected wifimode and on the TXVECTOR parameters (channel width, guard interval and number of spatial streams).</li>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   456
    </ul>
4c87d32ffb07 Update changes.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11516
diff changeset
   457
  </li>
11397
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   458
</ul>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   459
<h2>Changes to build system:</h2>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   460
<ul>
11656
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   461
  <li> Waf was upgraded to 1.8.12</li>
64199441c3d6 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11647
diff changeset
   462
  <li> Waf scripts and test.py test runner program were made compatible with Python 3</li>
11397
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   463
</ul>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   464
<h2>Changed behavior:</h2>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   465
This section is for behavioral changes to the models that were not due to a bug fix.
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   466
<ul>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   467
</ul>
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   468
1887754d4504 update RELEASE_NOTES and CHANGES.html for next release
Tom Henderson <tomh@tomh.org>
parents: 11391
diff changeset
   469
<hr>
11216
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   470
<h1>Changes from ns-3.22 to ns-3.23</h1>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   471
<h2>New API:</h2>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   472
<ul>
11287
a0764d24359a update RELEASE_NOTES, CHANGES.html, and AUTHORS
Tom Henderson <tomh@tomh.org>
parents: 11270
diff changeset
   473
  <li> The mobility module includes a GeographicPositions class used to
a0764d24359a update RELEASE_NOTES, CHANGES.html, and AUTHORS
Tom Henderson <tomh@tomh.org>
parents: 11270
diff changeset
   474
convert geographic to cartesian coordinates, and to generate randomly
a0764d24359a update RELEASE_NOTES, CHANGES.html, and AUTHORS
Tom Henderson <tomh@tomh.org>
parents: 11270
diff changeset
   475
distributed geographic coordinates.
a0764d24359a update RELEASE_NOTES, CHANGES.html, and AUTHORS
Tom Henderson <tomh@tomh.org>
parents: 11270
diff changeset
   476
  </li>
a0764d24359a update RELEASE_NOTES, CHANGES.html, and AUTHORS
Tom Henderson <tomh@tomh.org>
parents: 11270
diff changeset
   477
  <li>  The spectrum module includes new TvSpectrumTransmitter classes and helpers to create television transmitter(s) that transmit PSD spectrums customized by attributes such as modulation type, power, antenna type, channel frequency, etc.
a0764d24359a update RELEASE_NOTES, CHANGES.html, and AUTHORS
Tom Henderson <tomh@tomh.org>
parents: 11270
diff changeset
   478
  </li>
11216
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   479
</ul>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   480
<h2>Changes to existing API:</h2>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   481
<ul>
11270
de1a251c80a4 removed LteSpectrumPhy's LtePhyRxDataEndErrorCallback
Nicola Baldo <nbaldo@cttc.es>
parents: 11216
diff changeset
   482
  <li> In LteSpectrumPhy, LtePhyTxEndCallback and the corresponding methods have been removed, since they were unused.
de1a251c80a4 removed LteSpectrumPhy's LtePhyRxDataEndErrorCallback
Nicola Baldo <nbaldo@cttc.es>
parents: 11216
diff changeset
   483
  </li>
11391
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   484
  <li> In the DataRate class in the network module, CalculateTxTime has been declared deprecated.  CalculateBytesTxTime and CalculateBitsTxTime are to be used instead.  The return value is a Time, instead of a double.
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   485
  </li>
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   486
  <li> In the Wi-Fi InterferenceHelper, the interference event now takes the WifiTxVector as an input parameter, instead of the WifiMode.  A similar change was made to the WifiPhy::RxOkCallback signature.
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   487
  </li>
11216
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   488
</ul>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   489
<h2>Changes to build system:</h2>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   490
<ul>
11391
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   491
  <li> None </li>
11216
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   492
</ul>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   493
<h2>Changed behavior:</h2>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   494
This section is for behavioral changes to the models that were not due to a bug fix.
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   495
<ul>
11391
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   496
  <li> In Wi-Fi, HT stations (802.11n) now support two-level aggregation. The InterferenceHelper now distinguishes between the PLCP and regular payload reception, for higher fidelity modeling.  ACKs are now sent using legacy rates and preambles.  Acces points now establish BSSBasicRateSet for control frame transmissions.  PLCP header and PLCP payload reception have been decoupled to improve PHY layer modeling accuracy.  RTS/CTS with A-MPDU is now fully supported.  
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   497
  </li>
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   498
  <li> The mesh module was made more compliant to the IEEE 802.11s-2012 standard and packet traces are now parseable by Wireshark.  
b0cc0d945d36 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11287
diff changeset
   499
  </li>
11216
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   500
</ul>
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   501
cce9772d17c7 update RELEASE_NOTES and CHANGES.html for post-ns-3.22
Tom Henderson <tomh@tomh.org>
parents: 11212
diff changeset
   502
<hr>
10959
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   503
<h1>Changes from ns-3.21 to ns-3.22</h1>
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   504
<h2>New API:</h2>
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   505
<ul>
11212
4db6a4741ec7 update RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11211
diff changeset
   506
  <li> New classes were added for the PARF and APARF WiFi power and rate control mechanisms. 
11209
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   507
  </li>
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   508
  <li> Support for WiFi 802.11n MPDU aggregation has been added.
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   509
  </li>
11212
4db6a4741ec7 update RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11211
diff changeset
   510
  <li> Additional support for modeling of vehicular WiFi networks has been added, including the channel-access coordination feature of IEEE 1609.4.  In addition, a Basic Safety Message (BSM) packet generator and related statistics-gathering classes have been added to the wave module. 
11209
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   511
  </li>
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   512
  <li> A complete LTE release bearer procedure is now implemented which can be invoked by calling the new helper method LteHelper::DeActivateDedicatedEpsBearer ().
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   513
  </li>
10965
14cde591d8e4 Bug 652 - no public API for IPv4 neighbor table - Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10959
diff changeset
   514
  <li> It is now possible to print the Neighbor Cache (ARP and NDISC) by using
14cde591d8e4 Bug 652 - no public API for IPv4 neighbor table - Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10959
diff changeset
   515
       the RoutingProtocolHelper
14cde591d8e4 Bug 652 - no public API for IPv4 neighbor table - Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10959
diff changeset
   516
  </li>
11028
abeb2185bce5 add TimeProbe class to data collection framework
Tom Henderson <tomh@tomh.org>
parents: 11026
diff changeset
   517
  <li> A TimeProbe class has been added to the data collection framework in 
abeb2185bce5 add TimeProbe class to data collection framework
Tom Henderson <tomh@tomh.org>
parents: 11026
diff changeset
   518
       the stats module, enabling TracedValues emitting values of type 
abeb2185bce5 add TimeProbe class to data collection framework
Tom Henderson <tomh@tomh.org>
parents: 11026
diff changeset
   519
       ns3::Time to be handled by the framework.
abeb2185bce5 add TimeProbe class to data collection framework
Tom Henderson <tomh@tomh.org>
parents: 11026
diff changeset
   520
  </li>
11209
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   521
  <li> A new attribute 'ClockGranularity' was added to the TcpSocketBase class,
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   522
to control modeling of RTO calculation.
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   523
  </li>
10959
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   524
</ul>
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   525
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   526
<h2>Changes to existing API:</h2>
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   527
<ul>
11026
19b4146b1d39 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10965
diff changeset
   528
  <li> Several deprecated classes and class methods were removed, including EmuNetDevice, RandomVariable and derived classes, Packet::PeekData(), Ipv6AddressHelper::NewNetwork(Ipv6Address, Ipv6Prefix), Ipv6InterfaceContainer::SetRouter(), Ipv4Route::GetOutputTtl(), TestCase::AddTestCase(TestCase*), and TestCase::GetErrorStatus().
19b4146b1d39 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10965
diff changeset
   529
  </li>
19b4146b1d39 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10965
diff changeset
   530
  <li> Print methods involving routing tables and neighbor caches, in classes Ipv4RoutingHelper and Ipv6RoutingHelper, were converted to static methods.
19b4146b1d39 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10965
diff changeset
   531
  </li>  
19b4146b1d39 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10965
diff changeset
   532
  <li>PointerValue attribute types in class UanChannel (NoiseModel), UanPhyGen (PerModel and SinrModel), UanPhyDual (PerModelPhy1, PerModelPhy2, SinrModelPhy1, and SinrModelPhy2), and SimpleNetDevice (TxQueue), were changed from PointerValue type to StringValue type, making them configurable via the Config subsystem. 
19b4146b1d39 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10965
diff changeset
   533
  </li>
11043
0c1fce0706de update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 11028
diff changeset
   534
  <li> WifiPhy::CalculateTxDuration() and WifiPhy::GetPayloadDurationMicroSeconds () now take an additional frequency parameter.
0c1fce0706de update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 11028
diff changeset
   535
  </li>
11065
2e6f9e4be3a3 fix misspelled attribute and doxygen in YansWifiPhy
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11043
diff changeset
   536
  <li> The attribute 'Recievers' in class YansWifiPhy was misspelled, so
2e6f9e4be3a3 fix misspelled attribute and doxygen in YansWifiPhy
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11043
diff changeset
   537
       this has been corrected to 'Receivers'.
2e6f9e4be3a3 fix misspelled attribute and doxygen in YansWifiPhy
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 11043
diff changeset
   538
  </li>
11087
486e1b0c1df6 Deprecate AddTraceSource without callback signature.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11065
diff changeset
   539
  <li> We have now documented the callback function signatures
486e1b0c1df6 Deprecate AddTraceSource without callback signature.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11065
diff changeset
   540
       for all TracedSources, using an extra (fourth) argument to
486e1b0c1df6 Deprecate AddTraceSource without callback signature.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11065
diff changeset
   541
       TypeId::AddTraceSource to pass the fully-qualified name
486e1b0c1df6 Deprecate AddTraceSource without callback signature.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11065
diff changeset
   542
       of the signature typedef.  To ensure that future TraceSources
11212
4db6a4741ec7 update RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11211
diff changeset
   543
       are similarly documented, the three argument version of 
4db6a4741ec7 update RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11211
diff changeset
   544
       AddTraceSource has been deprecated.
11087
486e1b0c1df6 Deprecate AddTraceSource without callback signature.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11065
diff changeset
   545
  </li>	
11209
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   546
  <li> The "MinRTO" attribute of the RttEstimator class was moved to the TcpSocketBase class.  The "Gain" attribute of the RttMeanDeviation class was replaced 
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   547
by new "Alpha" and "Beta" attributes.  
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   548
  </li>	
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   549
  <li> Attributes of the TcpTxBuffer and TcpRxBuffer class are now accessible through the TcpSocketBase class.
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   550
  </li>	
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   551
  <li> The LrWpanHelper class has a new constructor allowing users to configure a MultiModelSpectrumChannel as an option, and also provides Set/Get API to allow users to access the underlying channel object. 
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   552
  </li>
10959
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   553
</ul>
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   554
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   555
<h2>Changes to build system:</h2>
11087
486e1b0c1df6 Deprecate AddTraceSource without callback signature.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11065
diff changeset
   556
<ul>
11043
0c1fce0706de update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 11028
diff changeset
   557
  <li> waf was upgraded to version 1.7.16
0c1fce0706de update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 11028
diff changeset
   558
  </li>
10959
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   559
</ul>
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   560
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   561
<h2>Changed behavior:</h2>
11209
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   562
This section is for behavioral changes to the models that were not due to a bug fix.
10959
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   563
<ul>
11043
0c1fce0706de update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 11028
diff changeset
   564
  <li> The default value of the `Speed` attribute of ConstantSpeedPropagationDelayModel was changed from 300,000,000 m/s to 299,792,458 m/s (speed of light in a vacuum), causing propagation delays using this model to vary slightly.
0c1fce0706de update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 11028
diff changeset
   565
  </li>
11209
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   566
  <li> The LrWpanHelper object was previously instantiating only a LogDistancePropagationLossModel on a SingleModelSpectrumChannel, but no PropagationDelayModel.  The constructor now adds by default a ConstantSpeedPropagationDelayModel.
2ebe49d34182 updates to RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11087
diff changeset
   567
  </li>
11211
c7f9ed853e60 Add nix-vector lazy flush to RELEASE_NOTES and CHANGES.html
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11209
diff changeset
   568
  <li> The Nix-vector routing implementation now uses a lazy flush mechanism,
c7f9ed853e60 Add nix-vector lazy flush to RELEASE_NOTES and CHANGES.html
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11209
diff changeset
   569
       which dramatically speeds up the creation of large topologies.
c7f9ed853e60 Add nix-vector lazy flush to RELEASE_NOTES and CHANGES.html
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 11209
diff changeset
   570
  </li>
10959
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   571
</ul>
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   572
ccea27fc13e1 update CHANGES.html for new release version
Tom Henderson <tomh@tomh.org>
parents: 10947
diff changeset
   573
<hr>
10815
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   574
<h1>Changes from ns-3.20 to ns-3.21</h1>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   575
<h2>New API:</h2>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   576
<ul>
10842
b1d6e75793bb Add const double& operator[] to SpectrumValue
Sascha Alexander Jopen <jopen@informatik.uni-bonn.de>
parents: 10819
diff changeset
   577
  <li> New "const double& SpectrumValue:: operator[] (size_t index) const".
b1d6e75793bb Add const double& operator[] to SpectrumValue
Sascha Alexander Jopen <jopen@informatik.uni-bonn.de>
parents: 10819
diff changeset
   578
  </li>
10855
7ef081ddfc7f Bug 1831 - TcpSocket SlowStartThreshold is not a TraceSource
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10842
diff changeset
   579
  <li> A new TraceSource has been added to TCP sockets: SlowStartThreshold.
7ef081ddfc7f Bug 1831 - TcpSocket SlowStartThreshold is not a TraceSource
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10842
diff changeset
   580
  </li>
10861
40a485317b1d CommandLine Attribute shorthand
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10855
diff changeset
   581
  <li> New method CommmandLine::AddValue (name, attibutePath) to provide a
40a485317b1d CommandLine Attribute shorthand
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10855
diff changeset
   582
       shorthand argument "name" for the Attribute "path".  This also has
40a485317b1d CommandLine Attribute shorthand
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10855
diff changeset
   583
       the effect of including the help string for the Attribute in the
40a485317b1d CommandLine Attribute shorthand
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10855
diff changeset
   584
       Usage message.
40a485317b1d CommandLine Attribute shorthand
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10855
diff changeset
   585
  </li>
10892
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   586
  <li> The GSoC 2014 project in the LTE module has brought some additional APIs:
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   587
    <ul>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   588
      <li>a new abstract class LteFfrAlgorithm, which every future
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   589
          implementation of frequency reuse algorithm should inherit from</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   590
      <li>a new SAPs: one between MAC Scheduler and FrAlgorithm, one between
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   591
	  RRC and FrAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   592
      <li>new attribute to enable Uplink Power Control in LteUePhy</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   593
      <li>new LteUePowerControl class, an implementation of Uplink Power Control, which is 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   594
          configurable by attributes. ReferenceSignalPower is sent by eNB in SIB2. 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   595
          Uplink Power Control in Closed Loop Accumulative Mode is enabled by default</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   596
      <li>seven different Frequency Reuse Algorithms (each has its own attributes): </li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   597
        <ul>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   598
          <li>LteFrNoOpAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   599
          <li>LteFrHardAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   600
          <li>LteFrStrictAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   601
          <li>LteFrSoftAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   602
          <li>LteFfrSoftAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   603
          <li>LteFfrEnhancedAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   604
          <li>LteFfrDistributedAlgorithm</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   605
        </ul>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   606
      <li>attribute in LteFfrAlgorithm to set FrCellTypeId which is used in automatic 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   607
          Frequency Reuse algorithm configuration</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   608
      <li>LteHelper has been updated with new methods related to frequency reuse algorithm: 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   609
          SetFfrAlgorithmType and SetFfrAlgorithmAttribute</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   610
    </ul>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   611
  </li>
10899
9b501eb7910c Enhancements to SimpleNetDevice and SimpleChannel
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10892
diff changeset
   612
  <li> A new SimpleNetDeviceHelper can now be used to install SimpleNetDevices.
9b501eb7910c Enhancements to SimpleNetDevice and SimpleChannel
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10892
diff changeset
   613
  </li>
10902
527fc624722a Bug 1811 - Basic traffic generator for network module
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10899
diff changeset
   614
  <li> New PacketSocketServer and PacketSocketClient apps, meant to be used in tests.
527fc624722a Bug 1811 - Basic traffic generator for network module
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10899
diff changeset
   615
  </li>
10947
591909663749 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10933
diff changeset
   616
  <li> Tcp Timestamps and Window Scale options have been added and are enabled by default (controllable by attribute).
591909663749 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10933
diff changeset
   617
  </li>
591909663749 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10933
diff changeset
   618
  <li> A new CoDel queue model has been added to the 'internet' module.  
591909663749 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10933
diff changeset
   619
  </li>
11212
4db6a4741ec7 update RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11211
diff changeset
   620
  <li> New test macros NS_TEST_ASSERT_MSG_GT_OR_EQ() and NS_TEST_EXPECT_MSG_GT_OR_EQ() have been added.
4db6a4741ec7 update RELEASE_NOTES and CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 11211
diff changeset
   621
  </li>
10815
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   622
</ul>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   623
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   624
<h2>Changes to existing API:</h2>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   625
<ul>
10819
f49b201c1884 Bug 1921 - Icmpv6L4Protocol::ForgeEchoRequest returns a malformed packet
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10815
diff changeset
   626
  <li> "Icmpv6L4Protocol::ForgeEchoRequest" is now returning a packet with the proper IPv6 header.
f49b201c1884 Bug 1921 - Icmpv6L4Protocol::ForgeEchoRequest returns a malformed packet
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10815
diff changeset
   627
  </li>
10855
7ef081ddfc7f Bug 1831 - TcpSocket SlowStartThreshold is not a TraceSource
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10842
diff changeset
   628
  <li> The TCP socket Attribute "SlowStartThreshold" has been renamed "InitialSlowStartThreshold" to
7ef081ddfc7f Bug 1831 - TcpSocket SlowStartThreshold is not a TraceSource
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10842
diff changeset
   629
       clarify that the effect is only on the initial value.
7ef081ddfc7f Bug 1831 - TcpSocket SlowStartThreshold is not a TraceSource
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10842
diff changeset
   630
  </li>
10892
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   631
  <li> all schedulers were updated to interact with FR entity via FFR-SAP. Only PF, PSS, CQA, 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   632
       FD-TBFQ, TD-TBFQ schedulers supports Frequency Reuse functionality. In the beginning 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   633
       of scheduling process, schedulers ask FR entity for avaiable RBGs and then ask if UE 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   634
       can be scheduled on RB</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   635
  <li> eNB RRC interacts with FFR entity via RRC-FFR SAP</li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   636
  <li> new DL-CQI generation approach was implemented. Now DL-CQI is computed from control channel as signal
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   637
       and data channel (if received) as interference. New attribute in LteHelper was added to specify 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   638
       DL-CQI generation approach. New approach is default one in LteHelper </li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   639
  <li> RadioEnvironmentMap can be generated for Data or Control channel and for specified RbId;
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   640
       Data or Control channel and RbId can be configured by new attributes in RadioEnvironmentMapHelper </li>
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   641
  <li> lte-sinr-chunk-processor refactored to lte-chunk-processor. Removed all lte-xxx-chunk-processor 
3e86fac77082 GSoC 2014 FFR algorithms
Piotr Gawlowicz <gawlowicz.p@gmail.com>
parents: 10861
diff changeset
   642
       implementations</li>
10933
7442f5603ef4 Bug 1824 - L4 protocol sockets should support BindToNetDevice over IPv6
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10902
diff changeset
   643
  <li> BindToNetDevice affects also sockets using IPv6.</li>
7442f5603ef4 Bug 1824 - L4 protocol sockets should support BindToNetDevice over IPv6
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10902
diff changeset
   644
  <li> BindToNetDevice now calls implicitly Bind (). To bind a socket to a NetDevice and to a specific address,
7442f5603ef4 Bug 1824 - L4 protocol sockets should support BindToNetDevice over IPv6
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10902
diff changeset
   645
       the correct sequence is Bind (address) - BindToNetDevice (device). The opposite will raise an error.</li>
10815
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   646
</ul>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   647
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   648
<h2>Changes to build system:</h2>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   649
<ul>
10947
591909663749 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10933
diff changeset
   650
<li> None for this release. </li>
10815
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   651
</ul>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   652
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   653
<h2>Changed behavior:</h2>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   654
<ul>
10947
591909663749 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10933
diff changeset
   655
<li> Behavior will be changed due to the list of bugs fixed (listed in RELEASE_NOTES); users are requested to review that list as well.
10815
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   656
</ul>
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   657
d34be08307d0 start RELEASE_NOTES and CHANGES.html for next version
Tom Henderson <tomh@tomh.org>
parents: 10808
diff changeset
   658
<hr>
10798
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   659
<h1>Changes from ns-3.19 to ns-3.20</h1>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   660
<h2>New API:</h2>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   661
<ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   662
  <li> Models have been added for low-rate, wireless personal area networks
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   663
(LR-WPAN) as specified by IEEE standard 802.15.4 (2006).  The current 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   664
emphasis is on the unslotted mode of 802.15.4 operation for use in Zigbee, 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   665
and the scope is limited to enabling a single mode (CSMA/CA) with basic 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   666
data transfer capabilities. Association with PAN coordinators is not yet 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   667
supported, nor the use of extended addressing. Interference is modeled as 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   668
AWGN but this is currently not thoroughly tested.  The NetDevice Tx queue 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   669
is not limited, i.e., packets are never dropped due to queue becoming full. 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   670
They may be dropped due to excessive transmission retries or channel access 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   671
failure.  </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   672
  <li> A new IPv6 routing protocol has been added: RIPng. This protocol is
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   673
  an Interior Gateway Protocol and it is available in the Internet module. </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   674
  <li> A new LTE MAC downlink scheduling algorithm named Channel and QoS 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   675
  Aware (CQA) Scheduler is provided by the new "ns3::CqaFfMacScheduler" object.
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   676
  </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   677
  <li> Units may be attached to Time objects, to facilitate specific output
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   678
  formats (see Time::As()) </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   679
  <li> FlowMonitor "SerializeToXml" functions are now directly available
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   680
  from the helper.  </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   681
  <li> Access to OLSR's HNA table has been enabled </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   682
</ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   683
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   684
<h2>Changes to existing API:</h2>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   685
<ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   686
  <li> The SixLowPan model can now use uncompressed IPv6 headers. An option to
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   687
  define the minimum compressed packet size has been added.  </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   688
  <li> MinDistance wsa replaced by MinLoss in FriisPropagationLossModel, to
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   689
  better handle conditions outside of the assumed far field region. </li>
10808
8fa02a3cca47 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10798
diff changeset
   690
  <li> In the DSR model, the attribute DsrOptionRerrHeader::ErrorType" has
8fa02a3cca47 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 10798
diff changeset
   691
  been removed. </li>
10798
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   692
</ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   693
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   694
<h2>Changes to build system:</h2>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   695
<ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   696
  <li> Python 3.3 is now supported for Python bindings for ns-3.  Python 3.3 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   697
  support for API scanning is not supported.  Python 3.2 is not supported.</li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   698
  <li>  Enable selection of high precision int64x64_t implementation
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   699
  at configure time, for debugging purposes.</li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   700
  <li> Optimized builds are now enabling signed overflow optimization 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   701
  (-fstrict-overflow) and for gcc 4.8.2 and greater, also warning for cases 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   702
  where an optimizization may occur due to compiler assumption that 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   703
  overflow will not occur. </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   704
</ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   705
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   706
<h2>Changed behavior:</h2>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   707
<ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   708
  <li> The Internet FlowMonitor can now track IPv6 packets.  </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   709
  <li> Ipv6Extension::m_dropTrace has been removed. Ipv6L3Protocol::m_dropTrace
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   710
  is now fired when appropriate.  </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   711
  <li> IPv4 identification field value is now dependent on the protocol 
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   712
  field.  </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   713
  <li> Point-to-point trace sources now contain PPP headers </li>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   714
</ul>
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   715
79b9d13a1ffd update CHANGES.html for release
Tom Henderson <tomh@tomh.org>
parents: 10533
diff changeset
   716
<hr>
10422
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   717
<h1>Changes from ns-3.18.1 to ns-3.19</h1>
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   718
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   719
<h2>New API:</h2>
10459
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   720
<ul>
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   721
  <li> A new wifi extension for vehicular simulation support is available in the
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   722
    src/wave directory.  The current code represents an interim capability to 
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   723
    realize an IEEE 802.11p-compliant device, but without the WAVE extensions 
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   724
    (which are planned for a later patch).  The WaveNetDevice modelled herein 
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   725
    enforces that a WAVE-compliant physical layer (at 5.9 GHz) is selected, and 
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   726
    does not require any association between devices (similar to an adhoc WiFi 
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   727
    MAC), but is otherwise similar (at this time) to a WifiNetDevice.  WAVE 
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   728
    capabililties of switching between control and service channels, or using 
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   729
    multiple radios, are not yet modelled.
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   730
  </li>
10493
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   731
  <li>New SixLowPanNetDevice class providing a shim between 
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   732
    IPv6 and real NetDevices. The new module implements 6LoWPAN:
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   733
    "Transmission of IPv6 Packets over IEEE 802.15.4 Networks" (see
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   734
    <a href="http://www.ietf.org/rfc/rfc4944.txt">RFC 4944</a> and
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   735
    <a href="http://www.ietf.org/rfc/rfc6262.txt">RFC 6262</a>), 
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   736
    resulting in a heavy header compression for IPv6 packets.
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   737
    The module is intended to be used on 802.15.4 NetDevices, but
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   738
    it can be used over other NetDevices. See the manual for
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   739
    further discussion.
ccb3c64e55e8 Fix Changes.html - 6LoWPAN is a new API
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10479
diff changeset
   740
  </li>
10519
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   741
  <li> LteHelper has been updated with some new APIs:
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   742
    <ul>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   743
      <li>new overloaded Attach methods to enable UE to automatically determine
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   744
          the eNodeB to attach to (using initial cell selection);</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   745
      <li>new methods related to handover algorithm: SetHandoverAlgorithmType
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   746
          and SetHandoverAlgorithmAttribute;</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   747
      <li>a new attribute AnrEnabled to activate/deactivate Automatic Neighbour
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   748
          Relation (ANR) function; and</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   749
      <li>a new method SetUeDeviceAttribute for configuring LteUeNetDevice.</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   750
    </ul>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   751
  </li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   752
  <li> The GSoC 2013 project in the LTE module has brought some additional APIs:
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   753
    <ul>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   754
      <li>a new abstract class LteHandoverAlgorithm, which every future
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   755
          implementation of automatic handover trigger should inherit from;</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   756
      <li>new classes LteHandoverAlgorithm and LteAnr as sub-modules of
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   757
          LteEnbNetDevice class; both interfacing with the LteEnbRrc sub-module
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   758
          through Handover Management SAP and ANR SAP;</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   759
      <li>new attributes in LteEnbNetDevice and LteUeNetDevice classes related
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   760
          to Closed Subscriber Group (CSG) functionality in initial cell
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   761
          selection;</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   762
      <li>new attributes in LteEnbRrc for configuring UE measurements' filtering
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   763
          coefficient (i.e., quantity configuration);</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   764
      <li>a new public method AddUeMeasReportConfig in LteEnbRrc for setting up
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   765
          custom UE measurements' reporting configuration; measurement reports
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   766
          can then be captured from the RecvMeasurementReport trace source;
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   767
          and</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   768
      <li>new trace sources in LteUeRrc to capture more events, such as System
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   769
          Information messages (MIB, SIB1, SIB2), initial cell selection, random
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   770
          access, and handover.</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   771
    </ul>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   772
  </li>
10533
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   773
  <li>A new parallel scheduling algorithm based on null messages, a common 
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   774
  parallel DES scheduling algorithm, has been added.  The null message 
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   775
  scheduler has better scaling properties when running on some scenarios
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   776
  with large numbers of nodes since it does not require a global 
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   777
  communication.
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   778
  </li>
10459
f2e90c12a44f base implementation of the IEEE 802.11p standard
Junling Bu <linlinjavaer@gmail.com>
parents: 10446
diff changeset
   779
</ul>
10422
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   780
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   781
<h2>Changes to existing API:</h2>
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   782
<ul>
10528
c1e835b43726 Bug 1796 - Ipv6PacketInfoTag is not filled by UdpSocketImpl::ForwardUp6.
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10519
diff changeset
   783
    <li> It is now possible to use Ipv6PacketInfoTag from UDP applications in the
10531
f23c083bb537 editing in preparation for release
Tom Henderson <tomh@tomh.org>
parents: 10528
diff changeset
   784
      same way as with Ipv4PacketInfoTag. See Doxygen for current limitations in
10528
c1e835b43726 Bug 1796 - Ipv6PacketInfoTag is not filled by UdpSocketImpl::ForwardUp6.
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10519
diff changeset
   785
  	  using Ipv[4,6]PacketInfoTag to set IP properties.</li>
10446
Nicola Baldo <nbaldo@cttc.es>
parents: 10442 10434
diff changeset
   786
    <li>A change is introduced for the usage of the EpcHelper
10442
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   787
      class. Previously, the EpcHelper class included both the API
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   788
      definition and its (only) implementation; as such, users would
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   789
      instantiate and use the EpcHelper class directly in their
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   790
      simulation programs. From now on,
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   791
      EpcHelper is just the base class defining the API, and the
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   792
      implementation has been moved to derived classes; as such,
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   793
      users are now expected to use one of the derived classes in
10519
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   794
      their simulation program. The implementation previously
10442
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   795
      provided by the EpcHelper class has been moved to the new
a420385d5438 make EpcHelper abstract
Nicola Baldo <nbaldo@cttc.es>
parents: 10188
diff changeset
   796
      derived class PointToPointEpcHelper.</li>
10519
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   797
  <li> The automatic handover trigger and ANR functions in LTE module have been
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   798
    moved from LteEnbRrc class to separate classes. As a result, the related
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   799
    attributes, e.g., ServingCellHandoverThreshold, NeighbourCellHandoverOffset,
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   800
    EventA2Threshold, and EventA4Threshold have been removed from LteEnbRrc
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   801
    class. The equivalent attributes are now in A2A4RsrqHandoverAlgorithm and
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   802
    LteAnr classes.</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   803
  <li> Master Information Block (MIB) and System Information Block Type 1 (SIB1)
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   804
    are now transmitted as LTE control messages, so they are no longer part of
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   805
    RRC protocol.</li>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   806
  <li> UE RRC state model in LTE module has been considerably modified and is
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   807
    not backward compatible with the previous state model.</li>
10533
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   808
  <li> Additional time units (Year, Day, Hour, Minute) were added to the time
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   809
  value class that represents simulation time; the largest unit prior to 
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   810
  this addition was Second.
0daa97dec8db add to notes regarding null message parallel scheduler and new time units
Tom Henderson <tomh@tomh.org>
parents: 10531
diff changeset
   811
  </li>
10899
9b501eb7910c Enhancements to SimpleNetDevice and SimpleChannel
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10892
diff changeset
   812
  <li> SimpleNetDevice and SimpleChannel are not so simple anymore. SimpleNetDevice can be now a
9b501eb7910c Enhancements to SimpleNetDevice and SimpleChannel
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10892
diff changeset
   813
       Broadcast or PointToPoint NetDevice, it can have a limited bandwidth and it uses an output
9b501eb7910c Enhancements to SimpleNetDevice and SimpleChannel
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10892
diff changeset
   814
       queue.       
9b501eb7910c Enhancements to SimpleNetDevice and SimpleChannel
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10892
diff changeset
   815
  </li>
10519
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   816
</ul>
f7f72f3cc6e3 updated RELEASE_NOTES and CHANGES.html with GSoC 2013 LTE details
Budiarto Herman <budiarto.herman@magister.fi>
parents: 10514
diff changeset
   817
10422
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   818
<h2>Changes to build system:</h2>
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   819
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   820
<h2>Changed behavior:</h2>
10434
b1850c85be24 update RELEASE_NOTES and CHANGES.html for TapBridge changes
Tom Henderson <tomh@tomh.org>
parents: 10422
diff changeset
   821
<ul>
b1850c85be24 update RELEASE_NOTES and CHANGES.html for TapBridge changes
Tom Henderson <tomh@tomh.org>
parents: 10422
diff changeset
   822
  <li> For the TapBridge device, in UseLocal mode there is a MAC learning function. TapBridge has been waiting for the first packet received from tap interface to set the address of the bridged device to the source address of the first packet. This has caused problems with WiFi.  The new behavior is that after connection to the tap interface, ns-3 learns the MAC address of that interface with a system call and immediately sets the address of the bridged device to the learned one.  See <a href="https://www.nsnam.org/bugzilla/show_bug.cgi?id=1777">bug 1777</a> for more details.</li>
b1850c85be24 update RELEASE_NOTES and CHANGES.html for TapBridge changes
Tom Henderson <tomh@tomh.org>
parents: 10422
diff changeset
   823
  <li> TapBridge device now correctly implements IsLinkUp() method.</li>
10494
69f1d28a831e Pretty-print IPv6 addresses and routing tables
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10493
diff changeset
   824
  <li> IPv6 addresses and routing tables are printed like in Linux "route -A inet6" command.</li>
10531
f23c083bb537 editing in preparation for release
Tom Henderson <tomh@tomh.org>
parents: 10528
diff changeset
   825
  <li> A change in Ipv[4,6]Interface enforces the correct behaviour of IP 
f23c083bb537 editing in preparation for release
Tom Henderson <tomh@tomh.org>
parents: 10528
diff changeset
   826
    when a device do not support the minimum MTU requirements.
f23c083bb537 editing in preparation for release
Tom Henderson <tomh@tomh.org>
parents: 10528
diff changeset
   827
    This is set to 68 and 1280 octects respectively.  IP simulations that
f23c083bb537 editing in preparation for release
Tom Henderson <tomh@tomh.org>
parents: 10528
diff changeset
   828
    may have run over devices with smaller MTUs than 68 or 1280, respectively,
f23c083bb537 editing in preparation for release
Tom Henderson <tomh@tomh.org>
parents: 10528
diff changeset
   829
    will no longer be able to use such devices.</li>
10434
b1850c85be24 update RELEASE_NOTES and CHANGES.html for TapBridge changes
Tom Henderson <tomh@tomh.org>
parents: 10422
diff changeset
   830
</ul>
10422
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   831
114314101699 update RELEASE_NOTES and CHANGES.html for new release
Tom Henderson <tomh@tomh.org>
parents: 10421
diff changeset
   832
<hr>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   833
<h1>Changes from ns-3.18 to ns-3.18.1</h1>
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   834
<h2>New API:</h2>
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   835
<ul>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   836
  <li> It is now possible to randomize the time of the first beacon from an
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   837
  access point.  Use an attribute "EnableBeaconJitter" to enable/disable
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   838
  this feature.
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   839
  </li>
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   840
  <li> A new FixedRoomPositionAllocator helper class is available; it
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   841
  allows one to generate a random position uniformly distributed in the
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   842
  volume of a chosen room inside a chosen building.
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   843
  </li>
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   844
</ul>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   845
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   846
<h2>Changes to existing API:</h2>
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   847
<ul>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   848
  <li> Logging wildcards:  allow "***" as synonym for "*=**" to turn on all logging.
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   849
  </li>
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   850
  <li> The log component list ("NS_LOG=print-list") is now printed alphabetically.
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   851
  </li>
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   852
  <li> Some deprecated IEEE 802.11p code has been removed from the wifi module
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   853
  </li>
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   854
</ul>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   855
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   856
<h2>Changes to build system:</h2>
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   857
<ul>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   858
  <li> The Python API scanning system (./waf --apiscan) has been fixed (bug 1622)
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   859
  </li> 
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   860
  <li> Waf has been upgraded from 1.7.11 to 1.7.13
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   861
  </li> 
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   862
</ul>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   863
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   864
<h2>Changed behavior:</h2>
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   865
<ul>
10421
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   866
  <li> Wifi simulations have additional jitter on AP beaconing (see above) and some bug fixes have been applied to wifi module (see RELEASE_NOTES)
f6cfad75eea5 update RELEASE_NOTES and CHANGES.html for ns-3.18.1 release
Tom Henderson <tomh@tomh.org>
parents: 10188
diff changeset
   867
  </li> 
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   868
</ul>
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   869
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   870
<hr>
9758
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   871
<h1>Changes from ns-3.17 to ns-3.18</h1>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   872
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   873
<h2>New API:</h2>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   874
<ul>
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   875
  <li>New features have been added to the LTE module:
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   876
  <ul>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   877
    <li>PHY support for UE measurements (RSRP and RSRQ)</li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   878
    <li>RRC support for UE measurements (configuration, execution, reporting)</li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   879
    <li>Automatic Handover trigger based on RRC UE measurement reports</li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   880
  </ul>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   881
  <li>Data collection components have been added in the 'src/stats' module.
10119
8d243058531d update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 10101
diff changeset
   882
      Data collection includes a Probe class that attaches to ns-3 trace
8d243058531d update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 10101
diff changeset
   883
      sources to filter their output, and two Aggregator classes for 
8d243058531d update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 10101
diff changeset
   884
      marshaling probed data into text files or gnuplot plots.  The ns-3
8d243058531d update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 10101
diff changeset
   885
      tutorial has been extended to illustrate basic functionality. </li>
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   886
  <li>In 'src/wifi', several changes were made to enable partial 802.11n support:
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   887
    <ul>
12505
20252f9f9406 Fix typo in CHANGES.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12451
diff changeset
   888
      <li>A new helper (HtWifiMacHelper) was added to set up a High Throughput (HT) MAC entity</li>
20252f9f9406 Fix typo in CHANGES.html
Sébastien Deronne <sebastien.deronne@gmail.com>
parents: 12451
diff changeset
   889
      <li>New attributes were added to help the user setup a High Throughput (HT) PHY entity. These attributes can be set using the YansWifiPhyHelper</li>
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   890
      <li>A new standard value has been added that enables the new 11n data rates.</li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   891
      <li>New 11n preambles has been added (Mixed format and greenfield). To be able to change Tx duration according to the preamble used, a new class TxVector has been added to carry the transmission parameters (mode, preamble, stbc,..).  Several functions have been updated to allow the passage of TxVector instead of WifiMode in MacLow, WifiRemoteStationManager, WifiPhy, YansWifiPhy,.. </li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   892
      <li>A new information element has been added:  HTCapabilities. This information element is added to the MAC frame header if the node is an HT node. This HTCapabilites information element is used to advertise the HT capabilites of the node to other nodes in the network</li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   893
    </ul>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   894
  <li>InternetStackHelper has two new functions:<tt>SetIpv4ArpJitter (bool enable)</tt>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   895
      and <tt>SetIpv6NsRsJitter (bool enable)</tt> to enable/disable
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   896
      the random jitter on the tranmission of IPv4 ARP Request and IPv6 NS/RS. </li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   897
  <li>Bounds on valid time inputs for time attributes can now be enabled.  
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   898
      See <tt>attribute-test-suite.cc</tt> for an example.</li>
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   899
  <li>New generic hash function interface provided in the simulation core.  
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   900
      Two hash functions are provided: murmur3 (default), and the venerable 
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   901
      FNV1a.  See the Hash Functions section in the ns-3 manual.</li>
9946
df4a7e93c13d Mac16Address added, Mac64Address refactored, and Mac[16,64]Address can be used in IPv6
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 9944
diff changeset
   902
  <li>New Mac16Address has been added. It can be used with IPv6 to make
df4a7e93c13d Mac16Address added, Mac64Address refactored, and Mac[16,64]Address can be used in IPv6
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 9944
diff changeset
   903
      an Autoconfigured address.</li>
df4a7e93c13d Mac16Address added, Mac64Address refactored, and Mac[16,64]Address can be used in IPv6
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 9944
diff changeset
   904
  <li>Mac64Address support has been extended. It can now be used with 
df4a7e93c13d Mac16Address added, Mac64Address refactored, and Mac[16,64]Address can be used in IPv6
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 9944
diff changeset
   905
      IPv6 to make an Autoconfigured address.</li>
10127
f4cee68de571 Bug 1721 - Path MTU isn't handled properly
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10119
diff changeset
   906
  <li>IPv6 can now detect and use Path-MTU. See 
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   907
      <tt>examples/ipv6/fragmentation-ipv6-two-MTU.cc</tt> for an example.</li>
10160
5bf2fe645784 Update internet-stack-helper API for jitter and CHANGES.html
John Abraham <john.abraham.in@gmail.com>
parents: 10159
diff changeset
   908
  <li>Radvd application has a new Helper. See the updated 
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   909
      <tt>examples/ipv6/radvd.cc</tt> for an example.</li>
9758
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   910
</ul>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   911
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   912
<h2>Changes to existing API:</h2>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   913
<ul>
10131
0dc090fc749d Bug 1702 - A router should't aways add itself as the default router
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10129
diff changeset
   914
  <li> The Ipv6InterfaceContainer functions to set a node in forwarding state (i.e., a router) 
0dc090fc749d Bug 1702 - A router should't aways add itself as the default router
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10129
diff changeset
   915
  and to install a default router in a group of nodes have been extensively changed.
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   916
  The old function <tt>void Ipv6InterfaceContainer::SetRouter (uint32_t i, bool router)</tt>
10131
0dc090fc749d Bug 1702 - A router should't aways add itself as the default router
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10129
diff changeset
   917
  is now DEPRECATED.
0dc090fc749d Bug 1702 - A router should't aways add itself as the default router
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10129
diff changeset
   918
  </li>
9919
5596934962c2 RFC 3849 - IPv6 Address Prefix Reserved for Documentation
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 9892
diff changeset
   919
  <li> The documentation's IPv6 addresses (2001:db8::/32, RFC 3849) are now
5596934962c2 RFC 3849 - IPv6 Address Prefix Reserved for Documentation
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 9892
diff changeset
   920
  dropped by routers.
5596934962c2 RFC 3849 - IPv6 Address Prefix Reserved for Documentation
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 9892
diff changeset
   921
  </li>
9845
ef943f320ea6 update CHANGES.html to reflect the removal of tools module
Tom Henderson <tomh@tomh.org>
parents: 9758
diff changeset
   922
  <li> The 'src/tools' module has been removed, and most files migrated to
ef943f320ea6 update CHANGES.html to reflect the removal of tools module
Tom Henderson <tomh@tomh.org>
parents: 9758
diff changeset
   923
  'src/stats'.  For users of these programs (the statistics-processing 
ef943f320ea6 update CHANGES.html to reflect the removal of tools module
Tom Henderson <tomh@tomh.org>
parents: 9758
diff changeset
   924
  in average.h, or the gnuplot support), the main change is likely to be
ef943f320ea6 update CHANGES.html to reflect the removal of tools module
Tom Henderson <tomh@tomh.org>
parents: 9758
diff changeset
   925
  replacing the inclusion of "tools-module.h" with "stats-module.h".
ef943f320ea6 update CHANGES.html to reflect the removal of tools module
Tom Henderson <tomh@tomh.org>
parents: 9758
diff changeset
   926
  Users of the event garbage collector, previously in tools, will now 
ef943f320ea6 update CHANGES.html to reflect the removal of tools module
Tom Henderson <tomh@tomh.org>
parents: 9758
diff changeset
   927
  include it from the core module.
ef943f320ea6 update CHANGES.html to reflect the removal of tools module
Tom Henderson <tomh@tomh.org>
parents: 9758
diff changeset
   928
  </li>
9849
b3ec74c99612 Bug 1697 - ICMPv6 Redirect trigger contains multiple bugs
Guowang Shi <shiguowang2007@gmail.com>
parents: 9845
diff changeset
   929
  <li> The Ipv6 UnicastForwardCallback and  MulticastForwardCallback 
10131
0dc090fc749d Bug 1702 - A router should't aways add itself as the default router
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 10129
diff changeset
   930
  have a new parameter, the NetDevice the packet has been received from.
9849
b3ec74c99612 Bug 1697 - ICMPv6 Redirect trigger contains multiple bugs
Guowang Shi <shiguowang2007@gmail.com>
parents: 9845
diff changeset
   931
  Existing Ipv6RoutingProtocols should update their RouteInput function
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   932
  accordingly, e.g., from <tt>ucb (rtentry, p, header);</tt> to <tt>ucb (idev, rtentry, p, header);</tt>
9849
b3ec74c99612 Bug 1697 - ICMPv6 Redirect trigger contains multiple bugs
Guowang Shi <shiguowang2007@gmail.com>
parents: 9845
diff changeset
   933
  </li>
10101
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   934
  <li> The previous buildings module relied on a specific MobilityModel called
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   935
    BuildingsMobilityModel, which supported buildings but only allowed
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   936
    static positions. This mobility model has been removed. Now, the
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   937
    Buildings module instead relies on a new class called
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   938
    MobilityBuildingInfo which can be aggregated to any MobilityModel. This
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   939
    allows having moving nodes in presence of buildings with any of
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   940
    the existing MobilityModels. 
9658a01ee462 addressed the comments in https://codereview.appspot.com/11374043/#msg2
Nicola Baldo <nbaldo@cttc.es>
parents: 9946
diff changeset
   941
  </li>
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   942
  <li>All functions in WifiRemoteStationManager named GetXxxMode have been changed to GetXxxTxVector </li>
9758
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   943
</ul>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   944
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   945
<h2>Changes to build system:</h2>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   946
<ul>
10157
02e3d2d7d7e1 Link to bug num in bug database with \bugid{num}
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10143
diff changeset
   947
  <li> Make references to bug id's in doxygen comments with
02e3d2d7d7e1 Link to bug num in bug database with \bugid{num}
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10143
diff changeset
   948
    <tt>\bugid{num}</tt>, where <tt>num</tt> is the bug id number.  This
02e3d2d7d7e1 Link to bug num in bug database with \bugid{num}
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10143
diff changeset
   949
    form will generate a link to the bug in the bug database.
02e3d2d7d7e1 Link to bug num in bug database with \bugid{num}
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents: 10143
diff changeset
   950
  </li>
9758
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   951
</ul>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   952
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   953
<h2>Changed behavior:</h2>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   954
<ul>
10143
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   955
  <li> Now it is possible to request printing command line arguments to the
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   956
desired output stream using PrintHelp or operator &lt;&lt;
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   957
<pre>
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   958
  CommandLine cmd;
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   959
  cmd.Parse (argc, argv);
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   960
...
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   961
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   962
  std::cerr << cmd;
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   963
</pre>
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   964
or
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   965
<pre>
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   966
  cmd.PrintHelp (std::cerr);
48f66512ec9b [PATCH] core: Extending public interface of CommandLine class
Alexander Afanasyev <alexander.afanasyev@ucla.edu>
parents: 10139
diff changeset
   967
</pre>
10163
0595ff454efe align command-line test suite to recent changes
Tom Henderson <tomh@tomh.org>
parents: 10160
diff changeset
   968
  </li>
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   969
  <li>Command line boolean arguments specified with no integer value (e.g. <tt>"--boolArg"</tt>) will toggle the value from the default, instead of always setting the value to true.
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   970
  </li>
10163
0595ff454efe align command-line test suite to recent changes
Tom Henderson <tomh@tomh.org>
parents: 10160
diff changeset
   971
  <li>IPv4's ARP Request and IPv6's NS/RS are now transmitted with a random delay.
0595ff454efe align command-line test suite to recent changes
Tom Henderson <tomh@tomh.org>
parents: 10160
diff changeset
   972
      The delay is, by default, a uniform random variable in time between 0 and 10ms.
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   973
      This is aimed at preventing reception errors due to collisions during wifi broadcasts when the sending behavior is synchronized (e.g. due to applications starting at the same time on several different nodes).
10163
0595ff454efe align command-line test suite to recent changes
Tom Henderson <tomh@tomh.org>
parents: 10160
diff changeset
   974
      This behaviour can be modified by using ArpL3Protocol's 
0595ff454efe align command-line test suite to recent changes
Tom Henderson <tomh@tomh.org>
parents: 10160
diff changeset
   975
      <tt>RequestJitter</tt> and Icmpv6L4Protocol's <tt>SolicitationJitter</tt>
0595ff454efe align command-line test suite to recent changes
Tom Henderson <tomh@tomh.org>
parents: 10160
diff changeset
   976
      attributes or by using the new InternetStackHelper functions.
0595ff454efe align command-line test suite to recent changes
Tom Henderson <tomh@tomh.org>
parents: 10160
diff changeset
   977
  </li>
10165
9d3dc60bada4 update CHANGES.html, cleanup some formatting
Tom Henderson <tomh@tomh.org>
parents: 10163
diff changeset
   978
  <li>AODV Hellos are disabled by default. The performance with Hellos enabled and disabled are almost identical. With Hellos enabled, AODV will suppress hellos from transmission, if any recent broadcast such as RREQ was transmitted. The attribute <tt>ns3::aodv::RoutingProtocol::EnableHello</tt> can be used to enable/disable Hellos.
9758
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   979
</ul>
b7f82950d534 prepare for next release
Tom Henderson <tomh@tomh.org>
parents: 9752
diff changeset
   980
10188
f2177f4b2cb1 update repository to start work on ns-3.19
Tom Henderson <tomh@tomh.org>
parents: 10165
diff changeset
   981
<hr>
9212
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
   982
<h1>Changes from ns-3.16 to ns-3.17</h1>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
   983
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
   984
<h2>New API:</h2>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
   985
<ul>
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
   986
  <li>New TCP Westwood and Westwood+ models
9752
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   987
  <li>New FdNetDevice class providing a special NetDevice that is able to read
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   988
      and write traffic from a file descriptor.  Three helpers are provided
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   989
      to associate the file descriptor with different underlying devices:  
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   990
    <ul> 
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   991
    <li> EmuFdNetDeviceHelper (to associate the |ns3| device with a physical 
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   992
         device in the host machine).  This helper is intended to
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   993
         eventually replace the EmuNetDevice in src/emu. </li>
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   994
    <li> TapFdNetDeviceHelper (to associate the ns-3 device with the file 
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   995
         descriptor from a tap device in the host machine) </li>
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   996
    <li> PlanteLabFdNetDeviceHelper (to automate the creation of tap devices 
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   997
         in PlanetLab nodes, enabling |ns3| simulations that can send and 
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   998
         receive traffic though the Internet using PlanetLab resource.</li>
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
   999
    </ul> 
c2c31a5059d4 update changes.html and release notes for FdNetDevice changes
Tom Henderson <tomh@tomh.org>
parents: 9751
diff changeset
  1000
  </li>
9232
0958cf37fa89 Update CHANGES.html and release notes to reflect ns-3-click defines and random number API additions
Lalith Suresh <suresh.lalith@gmail.com>
parents: 9225
diff changeset
  1001
  <li>In Ipv4ClickRouting, the following APIs were added:
0958cf37fa89 Update CHANGES.html and release notes to reflect ns-3-click defines and random number API additions
Lalith Suresh <suresh.lalith@gmail.com>
parents: 9225
diff changeset
  1002
    <ul>
0958cf37fa89 Update CHANGES.html and release notes to reflect ns-3-click defines and random number API additions
Lalith Suresh <suresh.lalith@gmail.com>
parents: 9225
diff changeset
  1003
      <li>Ipv4ClickRouting::SetDefines(), accessible through ClickInternetStackHelper::SetDefines(), for the user to set Click defines from the ns-3 simulation file.</li>
0958cf37fa89 Update CHANGES.html and release notes to reflect ns-3-click defines and random number API additions
Lalith Suresh <suresh.lalith@gmail.com>
parents: 9225
diff changeset
  1004
      <li>SIMCLICK_GET_RANDOM_INT click-to-simulator command for ns-3 to drive Click's random number generation.</li>
0958cf37fa89 Update CHANGES.html and release notes to reflect ns-3-click defines and random number API additions
Lalith Suresh <suresh.lalith@gmail.com>
parents: 9225
diff changeset
  1005
    </ul>
9714
e15fefdc07f4 Documentation
Brian Swenson <bswenson3@gatech.edu>
parents: 9232
diff changeset
  1006
  </li>  
9736
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1007
  <li>LTE module
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1008
    <ul>
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1009
      <li> New user-visible LTE API
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1010
      <ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1011
        <li>Two new methods have been added to LteHelper to enable the X2-based handover functionality: AddX2Interface, which setups the X2 interface between two eNBs, and HandoverRequest, which is  a convenience method that schedules an explicit handover event to be executed at a given point in the simulation. </li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1012
        <li>the new LteHelper method EnablePhyTraces can now be used to enable the new PHY traces</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1013
      </ul>
9736
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1014
      </li> 
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1015
      <li> New internal LTE API 
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1016
      <ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1017
        <li>New LTE control message classes DlHarqFeedbackLteControlMessage, 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1018
         RachPreambleLteControlMessage, RarLteControlMessage, MibLteControlMessage</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1019
        <li>New class UeManager
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1020
        <li>New LteRadioBearerInfo subclasses LteSignalingRadioBearerInfo, 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1021
         LteDataRadioBearerInfo</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1022
        <li>New LteSinrChunkProcessor subclasses LteRsReceivedPowerChunkProcessor, 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1023
         LteInterferencePowerChunkProcessor</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1024
      </ul>
9736
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1025
      </li>
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1026
    </ul>
da5e3a6c4029 updated CHANGES.html and RELEASE_NOTES for LTE module
Nicola Baldo <nbaldo@cttc.es>
parents: 9714
diff changeset
  1027
  </li>
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1028
  <li>New DSR API
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1029
  <ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1030
    <li>Added PassiveBuffer class to save maintenance packet entry for passive acknowledgment option</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1031
    <li>Added FindSourceEntry function in RreqTable class to keep track of route request entry received from same source node</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1032
    <li>Added NotifyDataReciept function in DsrRouting class to notify the data receipt of the next hop from link layer.  This is used for the link layer acknowledgment.</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1033
  </ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1034
  </li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1035
  <li>New Tag, PacketSocketTag, to carry the destination address of a packet and the packet type</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1036
  <li>New Tag, DeviceNameTag, to carry the ns3 device name from where a packet is coming</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1037
  <li>New Error Model, BurstError model, to determine which bursts of packets are errored corresponding to an underlying distribution, burst rate, and burst size</li>
9212
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1038
</ul>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1039
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1040
<h2>Changes to existing API:</h2>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1041
<ul>
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1042
  <li>ns3::Object and subclasses DoStart has been renamed to DoInitialize</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1043
  <li>ns3::Object and subclasses Start has been renamed to Initialize</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1044
  <li>EnergySource StartDeviceModels renamed to InitializeDeviceModels</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1045
  <li>A typo was fixed in an LTE variable name. The variable ns3::AllocationRetentionPriority::preemprionVulnerability was changed to preemptionVulnerability.</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1046
  <li>Changes in TestCase API
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1047
  <ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1048
    <li>TestCase has new enumeration TestDuration containing QUICK, EXTENSIVE, TAKES_FOREVER</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1049
    <li>TestCase constructor now requires TestDuration, old constructor marked deprecated</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1050
 </ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1051
 </li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1052
  <li>Changes in LTE API
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1053
  <ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1054
    <li> User-visible LTE API 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1055
    <ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1056
      <li>The previous LteHelper method ActivateEpsBearer has been now replaced by two alternative methods: ActivateDataRadioBearer (to be used when the EPC model is not used) and ActivateDedicatedEpsBearer (to be used when the EPC model is used). In the case where the EPC model is used, the default EPS bearer is not automatically activated without the need for a specific method to be called.</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1057
    </ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1058
    </li> 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1059
    <li> Internal LTE API 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1060
    <ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1061
      <li>EpcHelper added methods AddUe, AddX2Interface.  Method AddEnb now requires a cellId.  Signature of ActivateEpsBearer changed to void ActivateEpsBearer (Ptr<NetDevice> ueLteDevice, uint64_t imsi, Ptr<EpcTft> tft, EpsBearer bearer)</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1062
      <li>LteHelper added methods EnableDlPhyTraces, EnableUlPhyTraces, EnableDlTxPhyTraces, EnableUlTxPhyTraces, EnableDlRxPhyTraces, EnableUlRxPhyTraces</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1063
      <li>LteHelper removed methods EnableDlRlcTraces, EnableUlRlcTraces, EnableDlPdcpTraces, EnableUlPdcpTraces</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1064
      <li>RadioBearerStatsCalculator added methods (Set/Get)StartTime, (Set/Get)Epoch, RescheduleEndEpoch, EndEpoch</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1065
      <li>RadioBearerStatsCalculator removed methods StartEpoch, CheckEpoch</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1066
      <li>RadioBearerStatsCalculator methods UlTxPdu, DlRxPdu now require a cellId</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1067
      <li>EpcEnbApplication constructor now requires Ipv4Addresses enbS1uAddress and sgwS1uAddress as well as cellId</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1068
      <li>EpcEnbApplication added methods SetS1SapUser, GetS1SapProvider, SetS1apSapMme and GetS1apSapEnb</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1069
      <li>EpcEnbApplication removed method ErabSetupRequest</li> 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1070
      <li>EpcSgwPgwApplication added methods SetS11SapMme, GetS11SapSgw, AddEnb, AddUe, SetUeAddress</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1071
      <li>lte-common.h new structs PhyTransmissionStatParameters and PhyReceptionStatParameters used in TracedCallbacks</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1072
      <li>LteControlMessage new message types DL_HARQ, RACH_PREAMBLE, RAR, MIB</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1073
      <li>LteEnbCmacSapProvider new methods RemoveUe, GetRachConfig, AllocateNcRaPreamble, AllocateTemporaryCellRnti</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1074
      <li>LteEnbPhy new methods GetLteEnbCphySapProvider, SetLteEnbCphySapUser, GetDlSpectrumPhy, GetUlSpectrumPhy, CreateSrsReport</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1075
      <li>LteEnbPhy methods DoSendMacPdu, DoSetTransmissionMode, DoSetSrsConfigurationIndex, DoGetMacChTtiDelay, DoSendLteControlMessage, AddUePhy, DeleteUePhy made private</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1076
      <li>LteEnbPhySapProvider removed methods SetBandwidth, SetTransmissionMode, SetSrsConfigurationIndex, SetCellId</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1077
      <li>LteEnbPhySapUser added methods ReceiveRachPreamble, UlInfoListElementHarqFeeback, DlInfoListElementHarqFeeback</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1078
      <li>LtePdcp added methods (Set/Get)Status</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1079
      <li>LtePdcp DoTransmitRrcPdu renamed DoTransmitPdcpSdu</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1080
      <li>LteUeRrc new enum State.  New methods SetLteUeCphySapProvider, GetLteUeCphySapUser, SetLteUeRrcSapUser, GetLteUeRrcSapProvider, GetState, GetDlEarfcn, GetDlBandwidth, GetUlBandwidth, GetCellId, SetUseRlcSm .  GetRnti made const.</li> 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1081
      <li>LteUeRrc removed methods ReleaseRadioBearer, GetLcIdVector, SetForwardUpCallback, DoRrcConfigurationUpdateInd</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1082
      <li>LtePdcpSapProvider struct TransmitRrcPduParameters renamed TransmitPdcpSduParameters.  Method TransmitRrcPdu renamed TransmitPdcpSdu </li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1083
      <li>LtePdcpSapUser struct ReceiveRrcPduParameters renamed ReceivePdcpSduParameters.  Method ReceiveRrcPdu renamed TransmitPdcpSdu</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1084
      <li>LtePdcpSpecificLtePdcpSapProvider method TransmitRrcPdu renamed TransmitPdcpSdu</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1085
      <li>LtePdcpSpecificLtePdcpSapUser method ReceiveRrcPdu  renamed ReceivePdcpSdu. Method ReceiveRrcPdu renamed ReceivePdcpSdu</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1086
      <li>LtePhy removed methods DoSetBandwidth and DoSetEarfcn</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1087
      <li>LtePhy added methods ReportInterference and ReportRsReceivedPower</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1088
      <li>LteSpectrumPhy added methods SetHarqPhyModule, Reset, SetLtePhyDlHarqFeedbackCallback, SetLtePhyUlHarqFeedbackCallback,  AddRsPowerChunkProcessor, AddInterferenceChunkProcessor</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1089
      <li>LteUeCphySapProvider removed methods ConfigureRach, StartContentionBasedRandomAccessProcedure, StartNonContentionBasedRandomAccessProcedure</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1090
      <li>LteUeMac added method AssignStreams</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1091
      <li>LteUeNetDevice methods GetMac, GetRrc, GetImsi  made const</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1092
      <li>LteUeNetDevice new method GetNas</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1093
      <li>LteUePhy new methods GetLteUeCphySapProvider, SetLteUeCphySapUser, GetDlSpectrumPhy, GetUlSpectrumPhy, ReportInterference, ReportRsReceivedPower, ReceiveLteDlHarqFeedback</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1094
      <li>LteUePhy DoSendMacPdu, DoSendLteControlMessage, DoSetTransmissionMode, DoSetSrsConfigurationIndex made private</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1095
      <li>LteUePhySapProvider removed methods SetBandwidth, SetTransmissionMode, SetSrsConfigurationIndex</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1096
      <li>LteUePhySapProvider added method SendRachPreamble</li>  
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1097
    </ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1098
   </li>    
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1099
  </ul>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1100
  <li>AnimationInterface method EnableIpv4RouteTracking returns reference to calling AnimationInterface object</li>
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1101
  <li>To make the API more uniform across the various
9748
070273fe1cd5 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9745
diff changeset
  1102
  PropagationLossModel classes, the Set/GetLambda methods of the
070273fe1cd5 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9745
diff changeset
  1103
  FriisPropagationLossModel and TwoRayGroundPropagationLossModel
070273fe1cd5 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9745
diff changeset
  1104
  classes have been changed to Set/GetFrequency, and now a Frequency
070273fe1cd5 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9745
diff changeset
  1105
  attribute is exported which replaces the pre-existing Lambda
070273fe1cd5 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9745
diff changeset
  1106
  attribute. Any previous user code setting a value for Lambda should
070273fe1cd5 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9745
diff changeset
  1107
  be changed to set instead a value of Frequency = C / Lambda, with C
070273fe1cd5 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9745
diff changeset
  1108
  = 299792458.0. </li>
9714
e15fefdc07f4 Documentation
Brian Swenson <bswenson3@gatech.edu>
parents: 9232
diff changeset
  1109
</ul>
9212
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1110
<h2>Changes to build system:</h2>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1111
<ul>
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1112
  <li>Waf shipped with ns-3 has been upgraded to version 1.7.10 and custom
9741
98737f7646a1 update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 9736
diff changeset
  1113
  pkg-config generator has been replaced by Waf's builtin tool.
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1114
  </li>
9212
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1115
</ul>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1116
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1117
<h2>Changed behavior:</h2>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1118
<ul>
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1119
  <li>DSR link layer notification has changed.  The model originally used 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1120
  "TxErrHeader" in Ptr<WifiMac> to indicate the transmission
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1121
  error of a specific packet in link layer; however, it was not working
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1122
  correctly.  The model now uses a different path to implement
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1123
  the link layer notification mechanism; specifically, looking into the 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1124
  trace file to find packet receive events.  If the model finds one 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1125
  receive event for the data packet, it is used as the indicator for 
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1126
  successful data delivery.</li>
9212
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1127
</ul>
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1128
294690720935 start CHANGES.html and RELEASE_NOTES for next ns-3 version
Tom Henderson <tomh@tomh.org>
parents: 9189
diff changeset
  1129
<hr>
9097
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1130
<h1>Changes from ns-3.15 to ns-3.16</h1>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1131
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1132
<h2>New API:</h2>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1133
<ul>
9145
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1134
<li>In the Socket class, the following functions were added: 
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1135
 <ul>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1136
  <li>(Set/Get)IpTos - sets IP Type of Service field in the IP headers.</li>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1137
  <li>(Set/Is)IpRecvTos - tells the socket to pass information about IP ToS up the stack (by adding SocketIpTosTag to the packet).</li>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1138
  <li>(Set/Get)IpTtl - sets IP Time to live field in the IP headers.</li>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1139
  <li>(Set/Is)RecvIpTtl - tells the socket to pass information about IP TTL up the stack (by adding SocketIpTtlTag to the packet).</li>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1140
  <li>(Set/Is)Ipv6Tclass - sets Traffic Class field in the IPv6 headers.</li>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1141
  <li>(Set/Is)Ipv6RecvTclass - tells the socket to pass information about IPv6 TCLASS up the stack (by adding SocketIpv6TclassTag to the packet).</li>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1142
  <li>(Set/Get)Ipv6HopLimit - sets Hop Limit field in the IPv6 headers.</li>
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1143
  <li>(Set/Is)Ipv6RecvHopLimit - tells the socket to pass information about IPv6 HOPLIMIT up the stack (by adding SocketIpv6HoplimitTag to the packet).</li>
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1144
 </ul>  
9145
5752b425cdf5 Bug 1361 - Set TOS from Application level (sockets)
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9113
diff changeset
  1145
A user can call these functions to set/get the corresponding socket option. See examples/socket/socket-options-ipv4.cc and examples/socket/socket-options-ipv6.cc for examples.
9097
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1146
</ul>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1147
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1148
<h2>Changes to existing API:</h2>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1149
<ul>
9098
e507321e9a0d Update changes file again
Mitch Watrous <watrous@u.washington.edu>
parents: 9097
diff changeset
  1150
<li>In the MobilityHelper class, the functions EnableAscii () and EnableAsciiAll () were changed to use output stream wrappers rather than standard C++ ostreams. The purpose of this change was to make them behave analogously to other helpers in ns-3 that generate ascii traces.  Now, the file stream that is open in MobilityHelper is closed nicely upon asserts and program exits.</li>
9097
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1151
</ul>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1152
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1153
<h2>Changes to build system:</h2>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1154
<ul>
9189
b6e9f47c260b Document building with distcc in tutorial, add it to RELEASE_NOTES and CHANGES.html.
Vedran Miletić <rivanvx@gmail.com>
parents: 9145
diff changeset
  1155
<li>It's now possible to use distcc when building ns-3. See tutorial for details.</li>
9097
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1156
</ul>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1157
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1158
<h2>Changed behavior:</h2>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1159
<ul>
9111
e153cd03f531 Updates CHANGES.html and RELEASE_NOTES
Daniel Lertpratchya <nikkipui@gmail.com>
parents: 9098
diff changeset
  1160
<li>Sending a packet through Ipv4RawSocket now supports checksum in the Ipv4Header. It is still not possible to manually put in arbitrary checksum as the checksum is automatically calculated at Ipv4L3Protocol. The user has to enable checksum globally for this to work. Simply calling Ipv4Header::EnableChecksum() for a single Ipv4Header will not work.</li>
9113
63eba52498e1 make MultiModelSpectrumChannel support SpectrumModel changes at run time
Nicola Baldo <nbaldo@cttc.es>
parents: 9111
diff changeset
  1161
<li>Now MultiModelSpectrumChannel allows a SpectrumPhy instance to change SpectrumModel at runtime by issuing a call to MultiModelSpectrumChannel::AddRx (). Previously, MultiModelSpectrumChannel required each SpectrumPhy instance to stick with the same SpectrumModel for the whole simulation. 
63eba52498e1 make MultiModelSpectrumChannel support SpectrumModel changes at run time
Nicola Baldo <nbaldo@cttc.es>
parents: 9111
diff changeset
  1162
</li>
9097
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1163
</ul>
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1164
4d2b28c310db Update changes file
Mitch Watrous <watrous@u.washington.edu>
parents: 8878
diff changeset
  1165
<hr>
8846
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1166
<h1>Changes from ns-3.14 to ns-3.15</h1>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1167
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1168
<h2>New API:</h2>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1169
<ul>
8878
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1170
<li>A RandomVariableStreamHelper has been introduced to assist with 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1171
using the Config subsystem path names to assign fixed stream numbers
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1172
to RandomVariableStream objects.</li>
8846
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1173
</ul>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1174
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1175
<h2>Changes to existing API:</h2>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1176
<ul>
8878
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1177
<li>Derived classes of RandomVariable (i.e. the random variable 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1178
implementations) have been ported to a new RandomVariableStream base class.
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1179
<li>For a given distribution DistributionVariable (such as UniformVariable),
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1180
the new class name is DistributionRandomVariable (such as 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1181
UniformRandomVariable). </li>
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1182
<li>The new implementations are also derived from class ns3::Object and 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1183
are handled using the ns-3 smart pointer (Ptr) class.  </li>
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1184
<li>The new variable classes also have a new attributed called "Stream"
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1185
which allows them to be assigned to a fix stream index when assigned
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1186
to the underlying pseudo-random stream of numbers.</li>
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1187
</li>
8846
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1188
</ul>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1189
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1190
<h2>Changes to build system:</h2>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1191
<ul>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1192
<li></li>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1193
</ul>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1194
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1195
<h2>Changed behavior:</h2>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1196
<ul>
8878
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1197
<li>Programs using random variables or models that include random variables 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1198
may exhibit changed output for a given run number or seed, due to a possible 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1199
change in the order in which random variables are assigned to underlying 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1200
pseudo-random sequences.  Consult the manual for more information regarding 
a007dbfb3189 update CHANGES.html and RELEASE_NOTES for random variable merge
Tom Henderson <tomh@tomh.org>
parents: 8846
diff changeset
  1201
this.</li>
8846
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1202
</ul>
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1203
6e874a0fee27 start new release notes for future releases
Tom Henderson <tomh@tomh.org>
parents: 8839
diff changeset
  1204
<hr>
8839
d7e0dbcc899c update CHANGES.html for ns-3.14
Tom Henderson <tomh@tomh.org>
parents: 8798
diff changeset
  1205
<h1>Changes from ns-3.13 to ns-3.14</h1>
7698
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1206
7847
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1207
<h2>New API:</h2>
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1208
<ul>
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1209
<li>The new class AntennaModel provides an API for modeling the radiation pattern of antennas.
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1210
</li>
8749
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1211
<li>The new buildings module introduces an API (classes, helpers, etc)
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1212
  to model the presence of buildings in a wireless network topology. 
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1213
</li>
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1214
<li>The LENA project's implementation of the LTE Mac Scheduler Interface Specification
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1215
   standardized by the Small Cell Forum (formerly Femto Forum) is now available for
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1216
  use with the LTE module.
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1217
</li>
7847
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1218
</ul>
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1219
7698
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1220
<h2>Changes to existing API:</h2>
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1221
<ul>
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1222
<li> The Ipv6RawSocketImpl "IcmpFilter" attribute has been removed. Six 
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1223
new member functions have been added to enable the same functionality.
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1224
</li>
7717
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1225
<li> IPv6 support for TCP and UDP has been implemented.  Socket functions
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1226
that take an address [e.g. Send (), Connect (), Bind ()] can accept an
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1227
ns3::Ipv6Address or a ns3::Address in addition to taking an ns3::Ipv4Address.
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1228
(Note that the ns3::Address must contain a ns3::Ipv6Address or a ns3::Ipv4Address,
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1229
otherwise these functions will return an error).
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1230
Internally, the socket now stores the remote address as a type "ns3::Address"
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1231
instead of a type "ns3::Ipv4Address".  The IPv6 Routing Header extension is not
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1232
currently supported in ns3 and will not be reflected in the TCP and UDP checksum
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1233
calculations per RFC 2460.  Also note that UDP checksums for IPv6 packets are
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1234
required per RFC, but remain optional and disabled by default in ns3 (in the
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1235
interest of performance).
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1236
</li>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1237
<li>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1238
When calling Bind () on a socket without an address, the behavior remains the
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1239
same: it will bind to the IPv4 "any" address (0.0.0.0).  In order to Bind () to
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1240
the IPv6 "any" address in a similar fashion, use "Bind6 ()".
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1241
</li>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1242
<li>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1243
The prototype for the RxCallback function in the Ipv6EndPoint was changed.
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1244
It now includes the destination IPv6 address of the end point which was
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1245
needed for TCP.  This lead to a small change in the UDP and ICMPv6 L4
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1246
protocols as well.
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1247
</li>
7791
21c3495394b4 Enhancement 1393 - IPv6 Routing Helper RT Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7717
diff changeset
  1248
<li>
21c3495394b4 Enhancement 1393 - IPv6 Routing Helper RT Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7717
diff changeset
  1249
Ipv6RoutingHelper can now print the IPv6 Routing Tables at specific 
21c3495394b4 Enhancement 1393 - IPv6 Routing Helper RT Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7717
diff changeset
  1250
intervals or time. Exactly like Ipv4RoutingHelper do.
21c3495394b4 Enhancement 1393 - IPv6 Routing Helper RT Print functions
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7717
diff changeset
  1251
</li>
7793
1c81a8a91b1e Add SendIcmpv6Redirect attribute to Ipv6L3Protocol
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7791
diff changeset
  1252
<li>
1c81a8a91b1e Add SendIcmpv6Redirect attribute to Ipv6L3Protocol
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7791
diff changeset
  1253
New "SendIcmpv6Redirect" attribute (and getter/setter functions) to 
1c81a8a91b1e Add SendIcmpv6Redirect attribute to Ipv6L3Protocol
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7791
diff changeset
  1254
Ipv6L3Protocol. The behavior is similar to Linux's conf "send_redirects", 
1c81a8a91b1e Add SendIcmpv6Redirect attribute to Ipv6L3Protocol
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7791
diff changeset
  1255
i.e., enable/disable the ICMPv6 Redirect sending.
1c81a8a91b1e Add SendIcmpv6Redirect attribute to Ipv6L3Protocol
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7791
diff changeset
  1256
</li>
7847
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1257
<li> The SpectrumPhy abstract class now has a new method
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1258
<pre>virtual Ptr&#60;AntennaModel&#62; GetRxAntenna () = 0;</pre>
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1259
that all derived classes need to implement in order to integrate properly with the newly added antenna model. In addition, a new member variable "Ptr&#60;AntennaModel&#62; txAntenna" has been added to SpectrumSignalParameters in order to allow derived SpectrumPhy classes to provide information about the antenna model used for the transmission of a waveform.
411299d94e07 updated CHANGES.html and RELEASE_NOTES
Nicola Baldo <nbaldo@cttc.es>
parents: 7793
diff changeset
  1260
</li>
7860
ba8980d77369 Remove Ns2CalendarScheduler event scheduler
Tom Henderson <tomh@tomh.org>
parents: 7847
diff changeset
  1261
<li> The Ns2CalendarScheduler event scheduler has been removed.
ba8980d77369 Remove Ns2CalendarScheduler event scheduler
Tom Henderson <tomh@tomh.org>
parents: 7847
diff changeset
  1262
</li>
7880
f5c22d8411e6 Update CHANGES.html and RELEASE_NOTES for QueueMode and ErrorUnit.
Vedran Miletić <rivanvx@gmail.com>
parents: 7860
diff changeset
  1263
<li>
f5c22d8411e6 Update CHANGES.html and RELEASE_NOTES for QueueMode and ErrorUnit.
Vedran Miletić <rivanvx@gmail.com>
parents: 7860
diff changeset
  1264
ErrorUnit enum has been moved into RateErrorModel class, and symbols EU_BIT, EU_BYTE and EU_PKT have been renamed to RateErrorModel::ERROR_UNIT_BIT, RateErrorModel::ERROR_UNIT_BYTE and RateErrorModel::ERROR_UNIT_PACKET. RateErrorModel class attribute "ErrorUnit" values have also been renamed for consistency, and are now "ERROR_UNIT_BIT", "ERROR_UNIT_BYTE", "ERROR_UNIT_PACKET".
f5c22d8411e6 Update CHANGES.html and RELEASE_NOTES for QueueMode and ErrorUnit.
Vedran Miletić <rivanvx@gmail.com>
parents: 7860
diff changeset
  1265
</li>
f5c22d8411e6 Update CHANGES.html and RELEASE_NOTES for QueueMode and ErrorUnit.
Vedran Miletić <rivanvx@gmail.com>
parents: 7860
diff changeset
  1266
<li>
f5c22d8411e6 Update CHANGES.html and RELEASE_NOTES for QueueMode and ErrorUnit.
Vedran Miletić <rivanvx@gmail.com>
parents: 7860
diff changeset
  1267
QueueMode enum from DropTailQueue and RedQueue classes has been unified and moved to Queueu class. Symbols DropTailQueue::PACKETS and DropTailQueue::BYTES are now named Queue::QUEUE_MODE_PACKETS and DropTailQueue::QUEUE_MODE_BYTES. In addition, DropTailQueue and RedQueue class attributes "Mode" have been renamed for consistency from "Packets" and "Bytes" to "QUEUE_MODE_PACKETS" and "QUEUE_MODE_BYTES".
f5c22d8411e6 Update CHANGES.html and RELEASE_NOTES for QueueMode and ErrorUnit.
Vedran Miletić <rivanvx@gmail.com>
parents: 7860
diff changeset
  1268
</li>
8749
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1269
<li>
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1270
The API of the LTE module has undergone a significant redesign with
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1271
the merge of the code from the LENA project. The new API is not
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1272
backwards compatible with the previous version of the LTE module.
4462ac63d4cf merge of the code from the LENA project into ns-3-dev
Nicola Baldo <nbaldo@cttc.es>
parents: 7880
diff changeset
  1273
</li>
8798
5d8dfd7c6609 bug 1432: Align Ipv6AddressHelper API with Ipv4AddressHelper API
Tom Henderson <tomh@tomh.org>
parents: 8749
diff changeset
  1274
<li> The Ipv6AddressHelper API has been aligned with the Ipv4AddressHelper API. 
5d8dfd7c6609 bug 1432: Align Ipv6AddressHelper API with Ipv4AddressHelper API
Tom Henderson <tomh@tomh.org>
parents: 8749
diff changeset
  1275
The helper can be set with a call to Ipv6AddressHelper::SetBase 
5d8dfd7c6609 bug 1432: Align Ipv6AddressHelper API with Ipv4AddressHelper API
Tom Henderson <tomh@tomh.org>
parents: 8749
diff changeset
  1276
(Ipv6Address network, Ipv6Prefix prefix) instead of NewNetwork
5d8dfd7c6609 bug 1432: Align Ipv6AddressHelper API with Ipv4AddressHelper API
Tom Henderson <tomh@tomh.org>
parents: 8749
diff changeset
  1277
(Ipv6Address network, Ipv6Prefix prefix).  A new NewAddress (void) method
5d8dfd7c6609 bug 1432: Align Ipv6AddressHelper API with Ipv4AddressHelper API
Tom Henderson <tomh@tomh.org>
parents: 8749
diff changeset
  1278
has been added.  Typical usage will involve calls to SetBase (), NewNetwork (),
5d8dfd7c6609 bug 1432: Align Ipv6AddressHelper API with Ipv4AddressHelper API
Tom Henderson <tomh@tomh.org>
parents: 8749
diff changeset
  1279
and NewAddress (), as in class Ipv4AddressHelper. 
5d8dfd7c6609 bug 1432: Align Ipv6AddressHelper API with Ipv4AddressHelper API
Tom Henderson <tomh@tomh.org>
parents: 8749
diff changeset
  1280
</li>
7717
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1281
</ul>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1282
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1283
<h2>Changes to build system:</h2>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1284
<ul>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1285
<li> The following files are removed:
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1286
<pre>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1287
  src/internet/model/ipv4-l4-protocol.cc
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1288
  src/internet/model/ipv4-l4-protocol.h
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1289
  src/internet/model/ipv6-l4-protocol.cc
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1290
  src/internet/model/ipv6-l4-protocol.h
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1291
</pre>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1292
and replaced with:
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1293
<pre>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1294
  src/internet/model/ip-l4-protocol.cc
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1295
  src/internet/model/ip-l4-protocol.h
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1296
</pre>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1297
</li>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1298
</ul>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1299
<h2>Changed behavior:</h2>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1300
<ul>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1301
<li> Dual-stacked IPv6 sockets are implemented.  An IPv6 socket can accept
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1302
an IPv4 connection, returning the senders address as an IPv4-mapped address
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1303
(IPV6_V6ONLY socket option is not implemented).
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1304
</li>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1305
<li>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1306
The following examples/application/helpers were modified to support IPv6:
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1307
<pre>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1308
csma-layout/examples/csma-star [*]
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1309
netanim/examples/star-animation [*]
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1310
point-to-point-layout/model/point-to-point-star.cc
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1311
point-to-point-layout/model/point-to-point-grid.cc
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1312
point-to-point-layout/model/point-to-point-dumbbell.cc
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1313
examples/udp/udp-echo [*]
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1314
examples/udp-client-server/udp-client-server [*]
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1315
examples/udp-client-server/udp-trace-client-server [*]
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1316
applications/helper/udp-echo-helper
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1317
applications/model/udp-client
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1318
applications/model/udp-echo-client
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1319
applications/model/udp-echo-server
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1320
applications/model/udp-server
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1321
applications/model/udp-trace-client
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1322
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1323
[*]  Added '--useIpv6' flag to switch between IPv4 and IPv6
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1324
</pre>
cfa1741013dd Add support for IPv6 transport protocols
Ken Renard <kdrenard2@gmail.com>
parents: 7698
diff changeset
  1325
</li>
7698
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1326
</ul>
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1327
db9d8003b3cf Update Changes.html and Release_notes with the latest -dev info
Tommaso Pecorella <tommaso.pecorella@unifi.it>
parents: 7655
diff changeset
  1328
<hr>
7505
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1329
<h1>Changes from ns-3.12 to ns-3.13</h1>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1330
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1331
<h2>Changes to build system:</h2>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1332
<ul>
7506
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1333
<li> The underlying version of waf used by ns-3 was upgraded to 1.6.7.  
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1334
This has a few changes for users and developers:
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1335
<ul>
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1336
<li> by default, "build" no longer has a subdirectory debug or optimized.  
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1337
To get different build directories for different build types, you can use 
7655
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1338
the waf configure -o <argument> option, e.g.:
7506
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1339
<pre>
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1340
  ./waf configure -o shared
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1341
  ./waf configure --enable-static -o static
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1342
</pre>
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1343
</li>
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1344
<li> (for developers) the ns3headers taskgen needs to be created with a 
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1345
features parameter name:
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1346
<pre>
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1347
  -  headers = bld.new_task_gen('ns3header')
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1348
  +  headers = bld.new_task_gen(features=['ns3header'])
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1349
</pre>
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1350
<li> no longer need to edit src/wscript to add a module, just create your 
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1351
module directory inside src and ns-3 will pick it up
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1352
<li> In WAF 1.6, adding -Dxxx options is done via the DEFINES env. var.
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1353
instead of CXXDEFINES
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1354
<li> waf env values are always lists now, e.g. env['PYTHON'] returns
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1355
['/usr/bin/python'], so you may need to add [0] to the value in some places
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1356
</ul> 
7505
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1357
</ul>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1358
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1359
<h2>New API:</h2>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1360
<ul>
7655
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1361
<li> In the mobility module, there is a new MobilityModel::GetRelativeSpeed() method returning the relative speed of two objects. </li>
7643
ff15b50555ea update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7592
diff changeset
  1362
<li> A new Ipv6AddressGenerator class was added to generate sequential
ff15b50555ea update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7592
diff changeset
  1363
addresses from a provided base prefix and interfaceId.  It also will detect
ff15b50555ea update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7592
diff changeset
  1364
duplicate address assigments. </li> 
7505
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1365
</ul>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1366
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1367
<h2>Changes to existing API:</h2>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1368
<ul>
7581
6ac3fa410583 spectrum API change
Nicola Baldo <nicola@baldo.biz>
parents: 7553
diff changeset
  1369
<li> In the spectrum module, the parameters to SpectrumChannel::StartTx () and SpectrumPhy::StartRx () methods are now passed using the new struct SpectrumSignalParameters. This new struct supports inheritance, hence it allows technology-specific PHY implementations to provide technology-specific parameters in SpectrumChannel::StartTx() and SpectrumPhy::StartRx(), while at the same time keeping a set of technology-independent parameters common across all spectrum-enabled PHY implementations (i.e., the duration and the power spectral density which are needed for interference calculation). Additionally, the SpectrumType class has been removed, since now the type of a spectrum signal can be inferred by doing a dynamic cast on SpectrumSignalParameters. See the <A href="http://mailman.isi.edu/pipermail/ns-developers/2011-October/009495.html" >Spectrum API change discussion on ns-developers</A> for the motivation behind this API change.
6ac3fa410583 spectrum API change
Nicola Baldo <nicola@baldo.biz>
parents: 7553
diff changeset
  1370
</li>
6ac3fa410583 spectrum API change
Nicola Baldo <nicola@baldo.biz>
parents: 7553
diff changeset
  1371
7506
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1372
<li> The WifiPhyStandard enumerators for specifying half- and quarter-channel 
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1373
width standards has had a change in capitalization:
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1374
<ul>
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1375
<li> WIFI_PHY_STANDARD_80211_10Mhz was changed to WIFI_PHY_STANDARD_80211_10MHZ
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1376
<li> WIFI_PHY_STANDARD_80211_5Mhz was changed to WIFI_PHY_STANDARD_80211_5MHZ
59a4713417d9 Start documenting changes for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7505
diff changeset
  1377
</ul>
7553
2b93d333dea6 Bug 1271 - stronger type checking in SpectrumPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 7506
diff changeset
  1378
<li> In the SpectrumPhy base class, the methods to get/set the
2b93d333dea6 Bug 1271 - stronger type checking in SpectrumPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 7506
diff changeset
  1379
  MobilityModel and the NetDevice were previously working with
2b93d333dea6 Bug 1271 - stronger type checking in SpectrumPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 7506
diff changeset
  1380
  opaque Ptr&#60;Object&#62;. Now all these methods have been
2b93d333dea6 Bug 1271 - stronger type checking in SpectrumPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 7506
diff changeset
  1381
  changed so that they work with Ptr&#60;NetDevice&#62;
2b93d333dea6 Bug 1271 - stronger type checking in SpectrumPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 7506
diff changeset
  1382
  and Ptr&#60;MobilityModel&#62; as appropriate. See <A href="https://www.nsnam.org/bugzilla/show_bug.cgi?id=1271">Bug 1271</A> on
2b93d333dea6 Bug 1271 - stronger type checking in SpectrumPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 7506
diff changeset
  1383
  bugzilla for the motivation.
2b93d333dea6 Bug 1271 - stronger type checking in SpectrumPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 7506
diff changeset
  1384
</li>
7505
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1385
</ul>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1386
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1387
<h2>Changed behavior:</h2>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1388
<ul>
7655
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1389
<li> TCP bug fixes
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1390
<ul> 
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1391
<li> Connection retries count is a separate variable with the retries limit, so cloned sockets can reset the count
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1392
<li> Fix bug on RTO that may halt the data flow
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1393
<li> Make TCP endpoints always holds the accurate address:port info
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1394
<li> RST packet is sent on closed sockets
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1395
<li> Fix congestion window sizing problem upon partial ACK in TcpNewReno
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1396
<li> Acknowledgement is sent, rather than staying silent, upon arrival of unacceptable packets
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1397
<li> Advance TcpSocketBase::m_nextTxSequence after RTO
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1398
</ul>
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1399
<li> TCP enhancements
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1400
<ul>
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1401
<li> Latest RTT value now stored in variable TcpSocketBase::m_lastRtt
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1402
<li> The list variable TcpL4Protocol::m_sockets now always holds all the created, running TcpSocketBase objects
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1403
<li> Maximum announced window size now an attribute, ns3::TcpSocketBase::MaxWindowSize
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1404
<li> TcpHeader now recognizes ECE and CWR flags (c.f. RFC3168)
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1405
<li> Added TCP option handling call in TcpSocketBase for future extension
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1406
<li> Data out of range (i.e. outsize acceptable range of receive window) now computed on bytes, not packets
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1407
<li> TCP moves from time-wait state to closed state after twice the time specified by attribute ns3:TcpSocketBase::MaxSegLifeTime
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1408
<li> TcpNewReno supports limited transmit (RFC3042) if asserting boolean attribute ns3::TcpNewReno::LimitedTransmit
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1409
<li> Nagle's algorithm supported. Default off, turn on by calling TcpSocket::SetTcpNoDelay(true)
b60c39fc3abf Update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 7643
diff changeset
  1410
</ul>
7505
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1411
</ul>
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1412
99f36c5bce64 Seed the CHANGES.html and RELEASE_NOTES for ns-3.13
Tom Henderson <tomh@tomh.org>
parents: 7459
diff changeset
  1413
<hr>
7322
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1414
<h1>Changes from ns-3.11 to ns-3.12</h1>
7447
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1415
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1416
<h2>Changes to build system:</h2>
7322
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1417
<ul>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1418
</ul>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1419
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1420
<h2>New API:</h2>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1421
<ul>
7447
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1422
<li> New method, RegularWifiMac::SetPromisc (void), to set the interface
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1423
to promiscuous mode.
7322
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1424
</ul>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1425
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1426
<h2>Changes to existing API:</h2>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1427
<ul>
7447
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1428
<li> The spelling of the attribute 'IntialCellVoltage' from LiIonEnergySource 
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1429
was corrected to 'InitialCellVoltage'; this will affect existing users who 
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1430
were using the attribute with the misspelling.
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1431
<li> Two trace sources in class WifiPhy have had their names changed:
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1432
<ul> 
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1433
<li> 'PromiscSnifferRx' is now 'MonitorSnifferRx'
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1434
<li> 'PromiscSnifferTx' is now 'MonitorSnifferTx'
d246960da42f Update CHANGES.html and RELEASE_NOTES
Tom Henderson <tomh@tomh.org>
parents: 7435
diff changeset
  1435
</ul>
7322
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1436
</ul>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1437
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1438
<h2>Changed behavior:</h2>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1439
<ul>
7459
167fc2274f53 update for ns-3.12 release
Tom Henderson <tomh@tomh.org>
parents: 7447
diff changeset
  1440
<li> IPv4 fragmentation is now supported.
7322
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1441
</ul>
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1442
dd3e0eb91512 update CHANGES.html and RELEASE_NOTES for new release cycle
Tom Henderson <tomh@tomh.org>
parents: 7161
diff changeset
  1443
<hr>
6775
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1444
<h1>Changes from ns-3.10 to ns-3.11</h1>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1445
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1446
<h2>Changes to build system:</h2>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1447
<ul>
7024
4392d52b3536 Make examples not be built by default
Mitch Watrous <watrous@u.washington.edu>
parents: 7003
diff changeset
  1448
<li><b>Examples and tests are no longer built by default in ns-3</b>
6999
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1449
<p>
7024
4392d52b3536 Make examples not be built by default
Mitch Watrous <watrous@u.washington.edu>
parents: 7003
diff changeset
  1450
You can now make examples and tests be built in ns-3 in two ways.
6999
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1451
<ol>
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1452
<li> Using build.py when ns-3 is built for the first time:
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1453
<pre>
7024
4392d52b3536 Make examples not be built by default
Mitch Watrous <watrous@u.washington.edu>
parents: 7003
diff changeset
  1454
    ./build.py --enable-examples --enable-tests
6999
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1455
</pre>
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1456
<li> Using waf once ns-3 has been built:
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1457
<pre>
7024
4392d52b3536 Make examples not be built by default
Mitch Watrous <watrous@u.washington.edu>
parents: 7003
diff changeset
  1458
    ./waf configure --enable-examples --enable-tests
6999
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1459
</pre>
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1460
</ol>
dd78264fda2d Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6969
diff changeset
  1461
</p></li>
7003
a0b1500cdaad Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6999
diff changeset
  1462
<li><b> Subsets of modules can be enabled using the ns-3 configuration file</b>
a0b1500cdaad Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6999
diff changeset
  1463
<p>A new configuration file, .ns3rc, has been added to ns-3 that
a0b1500cdaad Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6999
diff changeset
  1464
specifies the modules that should be enabled during the ns-3 build.
a0b1500cdaad Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6999
diff changeset
  1465
See the documentation for details.
a0b1500cdaad Move tests from core module to its test library and update CHANGES.html
Mitch Watrous <watrous@u.washington.edu>
parents: 6999
diff changeset
  1466
</p></li>
6775
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1467
</ul>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1468
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1469
<h2>New API:</h2>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1470
<ul>
7059
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1471
<li><b>int64x64_t</b>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1472
<p>The <b>int64x64_t</b> type implements all the C++ arithmetic operators to behave like one of the
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1473
C++ native types. It is a 64.64 integer type which means that it is a 128bit integer type with
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1474
64 bits of fractional precision. The existing <b>Time</b> type is now automatically convertible to
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1475
<b>int64x64_t</b> to allow arbitrarily complex arithmetic operations on the content of <b>Time</b>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1476
objects. The implementation of <b>int64x64_t</b> is based on the previously-existing
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1477
<b>HighPrecision</b> type and supercedes it.
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1478
</p></li>
6775
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1479
</ul>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1480
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1481
<h2>Changes to existing API:</h2>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1482
<ul>
7143
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1483
<li><b>Wifi TX duration calculation moved from InterferenceHelper to WifiPhy</b>
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1484
<p>The following static methods have been moved from the InterferenceHelper class to the WifiPhy class:
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1485
   <pre>
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1486
static Time CalculateTxDuration (uint32_t size, WifiMode payloadMode, enum WifiPreamble preamble);
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1487
static WifiMode GetPlcpHeaderMode (WifiMode payloadMode, WifiPreamble preamble);
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1488
static uint32_t GetPlcpHeaderDurationMicroSeconds (WifiMode payloadMode, WifiPreamble preamble);
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1489
static uint32_t GetPlcpPreambleDurationMicroSeconds (WifiMode payloadMode, WifiPreamble preamble);
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1490
static uint32_t GetPayloadDurationMicroSeconds (uint32_t size, WifiMode payloadMode);
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1491
</pre>
0146b1916bc0 wifi tx duration calculations moved from InterferenceHelper to WifiPhy
Nicola Baldo <nicola@baldo.biz>
parents: 7059
diff changeset
  1492
</p></li>
6775
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1493
<li><b>Test cases no longer return a boolean value</b>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1494
<p>Unit test case DoRun() functions no longer return a bool value.  Now, they don't return a value at all.  The motivation for this change was to disallow users from merely returning "true" from a test case to force an error to be recorded.  Instead, test case macros should be used.
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1495
</p></li>
6969
1288d191868b PhyMac --> GenericPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 6775
diff changeset
  1496
<li><b>PhyMac renamed to GenericPhy</b>
1288d191868b PhyMac --> GenericPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 6775
diff changeset
  1497
<p>The PhyMac interface previously defined in phy-mac.h has been
1288d191868b PhyMac --> GenericPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 6775
diff changeset
  1498
  renamed to GenericPhy interface and moved to a new file
1288d191868b PhyMac --> GenericPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 6775
diff changeset
  1499
  generic-phy.h. The related variables and methods have been renamed accordingly. 
1288d191868b PhyMac --> GenericPhy
Nicola Baldo <nbaldo@cttc.es>
parents: 6775
diff changeset
  1500
</p></li>
7059
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1501
<li><b>Scalar</b>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1502
<p>The Scalar type has been removed. Typical code such as:
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1503
<pre>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1504
Time tmp = ...;
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1505
Time result = tmp * Scalar (5);
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1506
</pre>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1507
Can now be rewritten as:
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1508
<pre>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1509
Time tmp = ...;
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1510
Time result = Time (tmp * 5);
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1511
</pre>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1512
</p>
b971a123c861 RELEASE_NOTES, CHANGES.html
Mathieu Lacage <mathieu.lacage@inria.fr>
parents: 7024
diff changeset
  1513
</li>
7161
7cc4506fb853 bug 1047: Multicast routes on nodes with >16 interfaces
Ken Renard <kenneth.renard@arl.army.mil>
parents: 7143
diff changeset
  1514
<li><b>Multicast GetOutputTtl() commands</b>
7cc4506fb853 bug 1047: Multicast routes on nodes with >16 interfaces
Ken Renard <kenneth.renard@arl.army.mil>
parents: 7143
diff changeset
  1515
<p> As part of bug 1047 rework to enable multicast routes on nodes with
7cc4506fb853 bug 1047: Multicast routes on nodes with >16 interfaces
Ken Renard <kenneth.renard@arl.army.mil>
parents: 7143
diff changeset
  1516
more than 16 interfaces, the methods Ipv4MulticastRoute::GetOutputTtl () 
7cc4506fb853 bug 1047: Multicast routes on nodes with >16 interfaces
Ken Renard <kenneth.renard@arl.army.mil>
parents: 7143
diff changeset
  1517
and Ipv6MulticastRoute::GetOutputTtl () have been modified to return
7cc4506fb853 bug 1047: Multicast routes on nodes with >16 interfaces
Ken Renard <kenneth.renard@arl.army.mil>
parents: 7143
diff changeset
  1518
a std::map of interface IDs and TTLs for the route.
7cc4506fb853 bug 1047: Multicast routes on nodes with >16 interfaces
Ken Renard <kenneth.renard@arl.army.mil>
parents: 7143
diff changeset
  1519
</p>
7cc4506fb853 bug 1047: Multicast routes on nodes with >16 interfaces
Ken Renard <kenneth.renard@arl.army.mil>
parents: 7143
diff changeset
  1520
</li>
6775
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1521
</ul>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1522
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1523
<h2>Changed behavior:</h2>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1524
<ul>
13368
4e18b548c904 tcp: Try to take more data from the app before sending
Natale Patriciello <natale.patriciello@gmail.com>
parents: 13363
diff changeset
  1525
  <li> If the data inside the TCP buffer is less than the available window, TCP tries to ask for more data to the application, in the hope of filling the usable transmission window. In some cases, this change allows sending bigger packets than the previous versions, optimizing the transmission.</li>
6775
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1526
</ul>
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1527
0783f42a364b Make test cases not return bool valuesMake all TestSuite instances be static
Mitch Watrous <watrous@u.washington.edu>
parents: 6760
diff changeset
  1528
<hr>
6598
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1529
<h1>Changes from ns-3.9 to ns-3.10</h1>
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1530
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1531
<h2>Changes to build system:</h2>
6624
a071889af159 Remove regression tests from waf
Mitch Watrous <watrous@u.washington.edu>
parents: 6598
diff changeset
  1532
<ul>
a071889af159 Remove regression tests from waf
Mitch Watrous <watrous@u.washington.edu>
parents: 6598
diff changeset
  1533
<li><b>Regression tests are no longer run using waf</b>
6652
2d8de9b3be74 clarify the status of ./waf --regression removal
Tom Henderson <tomh@tomh.org>
parents: 6624
diff changeset
  1534
<p>All regression testing is now being done in test.py.  As a result, a 
2d8de9b3be74 clarify the status of ./waf --regression removal
Tom Henderson <tomh@tomh.org>
parents: 6624
diff changeset
  1535
separate reference trace repository is no longer needed to perform 
2d8de9b3be74 clarify the status of ./waf --regression removal
Tom Henderson <tomh@tomh.org>
parents: 6624
diff changeset
  1536
regression tests.  Tests that require comparison against known good traces
2d8de9b3be74 clarify the status of ./waf --regression removal
Tom Henderson <tomh@tomh.org>
parents: 6624
diff changeset
  1537
can still be run from test.py.  The --regression option for waf has been
6760
9e4859305744 update release notes and CHANGES.html file
Tom Henderson <tomh@tomh.org>
parents: 6735
diff changeset
  1538
removed.  However, the "-r" option to download.py has been kept to 
9e4859305744 update release notes and CHANGES.html file
Tom Henderson <tomh@tomh.org>
parents: 6735
diff changeset
  1539
allow users to fetch older revisions of ns-3 that contain these traces.
6624
a071889af159 Remove regression tests from waf
Mitch Watrous <watrous@u.washington.edu>
parents: 6598
diff changeset
  1540
</p>
6760
9e4859305744 update release notes and CHANGES.html file
Tom Henderson <tomh@tomh.org>
parents: 6735
diff changeset
  1541
<li><b>Documentation converted to Sphinx</b>
9e4859305744 update release notes and CHANGES.html file
Tom Henderson <tomh@tomh.org>
parents: 6735
diff changeset
  1542
<p> Project documentation (manual, tutorial, and testing) have been
9e4859305744 update release notes and CHANGES.html file
Tom Henderson <tomh@tomh.org>
parents: 6735
diff changeset
  1543
converted to Sphinx from the GNU Texinfo markup format.</p>
6624
a071889af159 Remove regression tests from waf
Mitch Watrous <watrous@u.washington.edu>
parents: 6598
diff changeset
  1544
</ul>
6598
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1545
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1546
<h2>New API:</h2>
6678
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1547
<ul>
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1548
<li><b>Pyviz visualizer</b>  
6679
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1549
<p>A Python-based visualizer called pyviz is now integrated with ns-3.
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1550
For Python simulations, there is an API to start the visualizer.  You
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1551
have to import the visualizer module, and call visualizer.start()
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1552
instead of ns3.Simulator.Run().  For C++ simulations, there is no API.
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1553
For C++ simulations (but also works for Python ones) you need to set
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1554
the GlobalValue SimulatorImplementationType to
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1555
"ns3::VisualSimulatorImpl".  This can be set from the command-line,
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1556
for example (add the
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1557
<tt>--SimulatorImplementationType=ns3::VisualSimulatorImpl</tt>
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1558
option), or via the waf option <tt>--visualizer</tt>, in addition to
3496cb66848e Update the pyviz API description
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6678
diff changeset
  1559
the usual <tt>--run</tt> option to run programs.
6678
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1560
</p></li>
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1561
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1562
<li><b>WaypointMobility attributes</b>
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1563
<p>Two attributes were added to WaypointMobility model:  LazyNotify and
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1564
InitialPositionIs Waypoint.  See RELEASE_NOTES for details.  </p> </li>
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1565
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1566
<li><b>802.11g rates for ERP-OFDM added</b>
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1567
<p>New WifiModes of the form ErpOfdmRatexxMbps, where xx is the rate
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1568
in Mbps (6, 9, 12, 18, 24, 36, 48, 54), are available for 802.11g.  
6735
8fda47c85df2 update release notes and changes.html
Tom Henderson <tomh@tomh.org>
parents: 6725
diff changeset
  1569
More details are in the RELEASE_NOTES.  </p> </li>
6678
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1570
6689
e2de571e920a Implement Socket::GetSocketType
Josh Pelkey <jpelkey@gatech.edu>
parents: 6679
diff changeset
  1571
<li><b>Socket::GetSocketType ()</b>
e2de571e920a Implement Socket::GetSocketType
Josh Pelkey <jpelkey@gatech.edu>
parents: 6679
diff changeset
  1572
<p>This is analogous to getsockopt(SO_TYPE). ipv4-raw-socket, ipv6-raw-socket,
6692
591fb1aa0ca4 Avoid enum name collision in socket
Josh Pelkey <jpelkey@gatech.edu>
parents: 6690
diff changeset
  1573
  and packet-socket return NS3_SOCK_RAW. tcp-socket and nsc-tcp-socket return
591fb1aa0ca4 Avoid enum name collision in socket
Josh Pelkey <jpelkey@gatech.edu>
parents: 6690
diff changeset
  1574
  NS3_SOCK_STREAM. udp-socket returns NS3_SOCK_DGRAM.</p></li>
6689
e2de571e920a Implement Socket::GetSocketType
Josh Pelkey <jpelkey@gatech.edu>
parents: 6679
diff changeset
  1575
6690
3fab9a03dacd Add BulkSendApplication
Josh Pelkey <jpelkey@gatech.edu>
parents: 6689
diff changeset
  1576
<li><b>BulkSendApplication</b>
3fab9a03dacd Add BulkSendApplication
Josh Pelkey <jpelkey@gatech.edu>
parents: 6689
diff changeset
  1577
<p>Sends data as fast as possible up to MaxBytes or unlimited if MaxBytes is 
3fab9a03dacd Add BulkSendApplication
Josh Pelkey <jpelkey@gatech.edu>
parents: 6689
diff changeset
  1578
zero.  Think OnOff, but without the "off" and without the variable data rate. 
6692
591fb1aa0ca4 Avoid enum name collision in socket
Josh Pelkey <jpelkey@gatech.edu>
parents: 6690
diff changeset
  1579
This application only works with NS3_SOCK_STREAM and NS3_SOCK_SEQPACKET sockets, 
6690
3fab9a03dacd Add BulkSendApplication
Josh Pelkey <jpelkey@gatech.edu>
parents: 6689
diff changeset
  1580
for example TCP sockets and not UDP sockets. A helper class exists to 
3fab9a03dacd Add BulkSendApplication
Josh Pelkey <jpelkey@gatech.edu>
parents: 6689
diff changeset
  1581
facilitate creating BulkSendApplications. The API for the helper class 
3fab9a03dacd Add BulkSendApplication
Josh Pelkey <jpelkey@gatech.edu>
parents: 6689
diff changeset
  1582
is similar to existing application helper classes, for example, OnOff.
6699
d8909a1fd0ff RV battery model and WiFi energy example
He Wu <mdzz@u.washington.edu>
parents: 6692
diff changeset
  1583
</p></li>
d8909a1fd0ff RV battery model and WiFi energy example
He Wu <mdzz@u.washington.edu>
parents: 6692
diff changeset
  1584
d8909a1fd0ff RV battery model and WiFi energy example
He Wu <mdzz@u.washington.edu>
parents: 6692
diff changeset
  1585
<li><b>Rakhmatov Vrudhula non-linear battery model</b>
d8909a1fd0ff RV battery model and WiFi energy example
He Wu <mdzz@u.washington.edu>
parents: 6692
diff changeset
  1586
<p>New class and helper for this battery model. </p></li>
6690
3fab9a03dacd Add BulkSendApplication
Josh Pelkey <jpelkey@gatech.edu>
parents: 6689
diff changeset
  1587
6703
1204fcdb71c2 Update release notes
Tom Henderson <tomh@tomh.org>
parents: 6699
diff changeset
  1588
<li><b>Print IPv4 routing tables</b>
1204fcdb71c2 Update release notes
Tom Henderson <tomh@tomh.org>
parents: 6699
diff changeset
  1589
<p>New class methods and helpers for printing IPv4 routing tables
1204fcdb71c2 Update release notes
Tom Henderson <tomh@tomh.org>
parents: 6699
diff changeset
  1590
to an output stream. </p></li>
1204fcdb71c2 Update release notes
Tom Henderson <tomh@tomh.org>
parents: 6699
diff changeset
  1591
6717
e041eb593928 DSDV routing protocol
Hemanth Narra <hemanth@ittc.ku.edu>
parents: 6703
diff changeset
  1592
<li><b>Destination-Sequenced Distance Vector (DSDV) routing protocol</b>
e041eb593928 DSDV routing protocol
Hemanth Narra <hemanth@ittc.ku.edu>
parents: 6703
diff changeset
  1593
<p>Derives from Ipv4RoutingProtocol and contains a DsdvHelper class. </p></li>
e041eb593928 DSDV routing protocol
Hemanth Narra <hemanth@ittc.ku.edu>
parents: 6703
diff changeset
  1594
6735
8fda47c85df2 update release notes and changes.html
Tom Henderson <tomh@tomh.org>
parents: 6725
diff changeset
  1595
<li><b>3GPP Long Term Evolution (LTE) models</b>
8fda47c85df2 update release notes and changes.html
Tom Henderson <tomh@tomh.org>
parents: 6725
diff changeset
  1596
<p>More details are in the RELEASE_NOTES. </p></li>
8fda47c85df2 update release notes and changes.html
Tom Henderson <tomh@tomh.org>
parents: 6725
diff changeset
  1597
6678
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1598
</ul>
6598
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1599
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1600
<h2>Changes to existing API:</h2>
6673
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1601
<ul>
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1602
<li><b>Consolidation of Wi-Fi MAC high functionality</b>
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1603
<p>Wi-Fi MAC high classes have been reorganised in attempt to
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1604
consolidate shared functionality into a single class. This new class
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1605
is RegularWifiMac, and it derives from the abstract WifiMac, and is
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1606
parent of AdhocWifiMac, StaWifiMac, ApWifiMac, and
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1607
MeshWifiInterfaceMac. The QoS and non-QoS class variants are no
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1608
longer, with a RegularWifiMac attribute "QosSupported" allowing
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1609
selection between these two modes of operation. QosWifiMacHelper and
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1610
NqosWifiMacHelper continue to work as previously, with a
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1611
behind-the-scenes manipulation of the 'afore-mentioned attribute.
6725
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1612
</p></li>
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1613
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1614
<li><b>New TCP architecture</b>
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1615
<p>TcpSocketImpl was replaced by a new base class TcpSocketBase and
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1616
several subclasses implementing different congestion control.  From 
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1617
a user-level API perspective, the main change is that a new attribute
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1618
"SocketType" is available in TcpL4Protocol, to which a TypeIdValue
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1619
of a specific Tcp variant can be passed.  In the same class, the attribute 
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1620
"RttEstimatorFactory" was also renamed "RttEstimatorType" since it now
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1621
takes a TypeIdValue instead of an ObjectFactoryValue.  In most cases, 
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1622
however, no change to existing user programs should be needed.
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1623
</p></li>
6673
ec22aa763e2d Bug 978: Consolidate Wi-Fi MAC high functionality
Dean Armstrong <deanarm@gmail.com>
parents: 6662
diff changeset
  1624
</ul>
6598
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1625
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1626
<h2>Changed behavior:</h2>
6662
04fb02cefe2a bug 984: change EmuNetDevice encapsulation default to DIX
Tom Henderson <tomh@tomh.org>
parents: 6652
diff changeset
  1627
<ul>
04fb02cefe2a bug 984: change EmuNetDevice encapsulation default to DIX
Tom Henderson <tomh@tomh.org>
parents: 6652
diff changeset
  1628
<li><b>EmuNetDevice uses DIX instead of LLC encapsulation by default</b>
04fb02cefe2a bug 984: change EmuNetDevice encapsulation default to DIX
Tom Henderson <tomh@tomh.org>
parents: 6652
diff changeset
  1629
<p>bug 984 in ns-3 tracker:  real devices don't usually understand LLC/SNAP
04fb02cefe2a bug 984: change EmuNetDevice encapsulation default to DIX
Tom Henderson <tomh@tomh.org>
parents: 6652
diff changeset
  1630
so the default of DIX makes more sense.
6725
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1631
</p></li>
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1632
<li><b>TCP defaults to NewReno congestion control</b>
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1633
<p>As part of the TCP socket refactoring, a new TCP implementation provides
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1634
slightly different behavior than the previous TcpSocketImpl that provided
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1635
only fast retransmit.  The default behavior now is NewReno which provides
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1636
fast retransmit and fast recovery with window inflation during recovery.
62511407485d Update release notes and changelog
Tom Henderson <tomh@tomh.org>
parents: 6717
diff changeset
  1637
</p></li>
6662
04fb02cefe2a bug 984: change EmuNetDevice encapsulation default to DIX
Tom Henderson <tomh@tomh.org>
parents: 6652
diff changeset
  1638
</ul>
6598
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1639
7459bc9f1a3b Start tracking ns-3.10 changes
Tom Henderson <tomh@tomh.org>
parents: 6557
diff changeset
  1640
<hr>
6300
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1641
<h1>Changes from ns-3.8 to ns-3.9</h1>
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1642
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1643
<h2>Changes to build system:</h2>
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1644
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1645
<h2>New API:</h2>
6306
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1646
<ul>
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1647
<li><b>Wifi set block ack threshold:</b> Two methods for setting block ack
6306
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1648
parameters for a specific access class: 
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1649
<pre>
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1650
void QosWifiMacHelper::SetBlockAckThresholdForAc (enum AccessClass accessClass, uint8_t threshold);
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1651
void QosWifiMacHelper::SetBlockAckInactivityTimeoutForAc (enum AccessClass accessClass, uint16_t timeout);
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1652
</pre>
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1653
</li>
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1654
<li><b>Receive List Error Model:</b>  Another basic error model that allows
6306
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1655
the user to specify a list of received packets that should be errored.  The
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1656
list corresponds not to the packet UID but to the sequence of received
283c83f1f7be Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents: 6300
diff changeset
  1657
packets as observed by the error model.   See src/common/error-model.h
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1658
</li>
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1659
<li><b>Respond to interface events:</b> New attribute for Ipv4GlobalRouting,
6317
e4a750adf12c bug 702: make global routing robust to link/device events
Tom Henderson <tomh@tomh.org>
parents: 6308
diff changeset
  1660
"RespondToInterfaceEvents", which when enabled, will cause global routes
e4a750adf12c bug 702: make global routing robust to link/device events
Tom Henderson <tomh@tomh.org>
parents: 6308
diff changeset
  1661
to be recomputed upon any interface or address notification event from IPv4.
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1662
</li>
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1663
<li><b>Generic sequence number:</b> New generic sequence number class to 
6529
dd982eaf6026 release notes and changes updates
Josh Pelkey <jpelkey@gatech.edu>
parents: 6459
diff changeset
  1664
easily handle comparison, subtraction, etc. for sequence numbers.  
dd982eaf6026 release notes and changes updates
Josh Pelkey <jpelkey@gatech.edu>
parents: 6459
diff changeset
  1665
To use it you need to supply two fundamental types as template parameters: 
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1666
NUMERIC_TYPE and SIGNED_TYPE.  For instance, <tt>SequenceNumber&lt;uint32_t, int32_t&gt;</tt> 
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1667
gives you a 32-bit sequence number, while <tt>SequenceNumber&lt;uint16_t, int16_t&gt;</tt> 
6529
dd982eaf6026 release notes and changes updates
Josh Pelkey <jpelkey@gatech.edu>
parents: 6459
diff changeset
  1668
is a 16-bit one.  For your convenience, these are typedef'ed as 
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1669
<tt>SequenceNumber32</tt> and <tt>SequenceNumber16</tt>, respectively.
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1670
</li>
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1671
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1672
<li><b>Broadcast socket option:</b> New Socket
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1673
methods <tt>SetAllowBroadcast</tt> and <tt>GetAllowBroadcast</tt> add
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1674
to NS-3 <tt>Socket</tt>'s the equivalent to the POSIX SO_BROADCAST
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1675
socket option (setsockopt/getsockopt).  Starting from this NS-3
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1676
version, IPv4 sockets do not allow us to send packets to broadcast
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1677
destinations by default; SetAllowBroadcast must be called beforehand
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1678
if we wish to send broadcast packets.
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1679
</li>
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1680
6557
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1681
<li><b>Deliver of packet ancillary information to sockets:</b> A method to deliver ancillary information 
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1682
to the socket interface (fixed in bug 671):  <pre>void Socket::SetRecvPktInfo (bool flag);</pre>
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1683
6529
dd982eaf6026 release notes and changes updates
Josh Pelkey <jpelkey@gatech.edu>
parents: 6459
diff changeset
  1684
</ul>
6300
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1685
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1686
<h2>Changes to existing API:</h2>
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1687
6360
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1688
<ul>
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1689
<li><b>Changes to construction and naming of Wi-Fi transmit rates:</b>
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1690
A reorganisation of the construction of Wi-Fi transmit rates has been
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1691
undertaken with the aim of simplifying the task of supporting further
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1692
IEEE 802.11 PHYs. This work has been completed under the auspices of
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1693
Bug 871.
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1694
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1695
From the viewpoint of simulation scripts not part of the ns-3
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1696
distribution, the key change is that WifiMode names of the form
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1697
wifi<em>x</em>-<em>n</em>mbs are now invalid. Names now take the
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1698
form <em>Cccc</em>Rate<em>n</em>Mbps[BW<em>b</em>MHz],
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1699
where <em>n</em> is the root bitrate in megabits-per-second as before
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1700
(with only significant figures included, and an underscore replacing
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1701
any decimal point), and <em>Cccc</em> is a representation of the
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1702
Modulation Class as defined in Table 9-2 of IEEE
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1703
Std. 802.11-2007. Currently-supported options for <em>Cccc</em>
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1704
are <em>Ofdm</em> and <em>Dsss</em>. For modulation classes where
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1705
optional reduced-bandwidth transmission is possible, this is captured
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1706
in the final part of the form above, with <em>b</em> specifying the
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1707
nominal signal bandwidth in megahertz. </li>
6383
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1708
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1709
<li><b>Consolidation of classes support Wi-Fi Information Elements:</b>
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1710
When the <em>mesh</em> module was introduced it added a class
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1711
hierarchy for modelling of the various Information Elements that were
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1712
required. In this release, this class hierarchy has extended by moving
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1713
the base classes (WifiInformationElement and
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1714
WifiInformationElementVector) into the <em>wifi</em> module. This
4dc3cdb53559 Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents: 6360
diff changeset
  1715
change is intended to ease the addition of support for modelling of
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1716
further Wi-Fi functionality. </li>
6557
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1717
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1718
<li><b>Changed for {Ipv4,Ipv6}PacketInfoTag delivery:</b> In order to
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1719
deliver ancillary information to the socket interface (fixed in bug 671),
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1720
<em>Ipv4PacketInfoTag</em> and <em>Ipv6PacketInfoTag</em> are implemented. 
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1721
For the delivery of this information, the following changes are made into 
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1722
existing class.
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1723
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1724
In Ipv4EndPoint class,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1725
<pre>
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1726
-  void SetRxCallback (Callback&lt;void,Ptr&lt;Packet&gt;, Ipv4Address, Ipv4Address, uint16_t&gt; callback);
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1727
+  void SetRxCallback (Callback&lt;void,Ptr&lt;Packet&gt;, Ipv4Header, uint16_t, Ptr&lt;Ipv4Interface&gt; &gt; callback);
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1728
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1729
-  void ForwardUp (Ptr&lt;Packet&gt; p, Ipv4Address saddr, Ipv4Address daddr, uint16_t sport);
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1730
+  void ForwardUp (Ptr&lt;Packet&gt; p, const Ipv4Header& header, uint16_t sport, 
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1731
+                  Ptr&lt;Ipv4Interface&gt; incomingInterface);
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1732
</pre>
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1733
In Ipv4L4Protocol class,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1734
<pre>
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1735
   virtual enum RxStatus Receive(Ptr&lt;Packet&gt; p, 
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1736
-                                Ipv4Address const &source,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1737
-                                Ipv4Address const &destination,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1738
+                                Ipv4Header const &header,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1739
                                 Ptr&lt;Ipv4Interface&gt; incomingInterface) = 0;
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1740
</pre>
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1741
<pre>
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1742
-Ipv4RawSocketImpl::ForwardUp (Ptr&lt;const Packet&gt; p, Ipv4Header ipHeader, Ptr&lt;NetDevice&gt; device)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1743
+Ipv4RawSocketImpl::ForwardUp (Ptr&lt;const Packet&gt; p, Ipv4Header ipHeader, Ptr&lt;Ipv4Interface&gt; incomingInterface)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1744
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1745
-NscTcpSocketImpl::ForwardUp (Ptr&lt;Packet&gt; packet, Ipv4Address saddr, Ipv4Address daddr, uint16_t port)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1746
+NscTcpSocketImpl::ForwardUp (Ptr&lt;Packet&gt; packet, Ipv4Header header, uint16_t port,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1747
+                             Ptr&lt;Ipv4Interface&gt; incomingInterface)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1748
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1749
-TcpSocketImpl::ForwardUp (Ptr&lt;Packet&gt; packet, Ipv4Address saddr, Ipv4Address daddr, uint16_t port)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1750
+TcpSocketImpl::ForwardUp (Ptr&lt;Packet&gt; packet, Ipv4Header header, uint16_t port,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1751
+                          Ptr&lt;Ipv4Interface&gt; incomingInterface)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1752
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1753
-UdpSocketImpl::ForwardUp (Ptr&lt;Packet&gt; packet, Ipv4Address saddr, Ipv4Address daddr, uint16_t port)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1754
+UdpSocketImpl::ForwardUp (Ptr&lt;Packet&gt; packet, Ipv4Header header, uint16_t port,
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1755
+                          Ptr&lt;Ipv4Interface&gt; incomingInterface)
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1756
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1757
</pre>
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1758
  
970e1627b308 update CHANGES.html for Bug 671
Hajime Tazaki <tazaki@sfc.wide.ad.jp>
parents: 6540
diff changeset
  1759
</li>
6678
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1760
<li>The method OutputStreamWrapper::SetStream (std::ostream *ostream) was removed.</li>
be3da7f1f82a Bring CHANGES.html and RELEASE_NOTES up to date
Tom Henderson <tomh@tomh.org>
parents: 6673
diff changeset
  1761
)
6360
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1762
</ul>
d8975477ff6a Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents: 6317
diff changeset
  1763
6300
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1764
<h2>Changed behavior:</h2>
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1765
<ul>
6308
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1766
<li><b>Queue trace behavior during Enqueue changed:</b> The behavior of the
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1767
Enqueue trace source has been changed to be more intuitive and to agree with
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1768
documentation.  Enqueue and Drop events in src/node/queue.cc are now mutually
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1769
exclusive.  In the past, the meaning of an Enqueue event was that the Queue
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1770
Enqueue operation was being attempted; and this could be followed by a Drop
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1771
event if the Queue was full.  The new behavior is such that a packet is either
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1772
Enqueue'd successfully or Drop'ped.
2ca5ef07be74 update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents: 6306
diff changeset
  1773
6300
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1774
<li><b>Drop trace logged for Ipv4/6 forwarding failure:</b> Fixed bug 861; this 
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1775
will add ascii traces (drops) in Ipv4 and Ipv6 traces for forwarding failures
6459
d5cfe99001f0 Change default OFDM error rate model to NistErrorRateModel (issue 944)
Tom Henderson <tomh@tomh.org>
parents: 6383
diff changeset
  1776
d5cfe99001f0 Change default OFDM error rate model to NistErrorRateModel (issue 944)
Tom Henderson <tomh@tomh.org>
parents: 6383
diff changeset
  1777
<li><b>Changed default WiFi error rate model for OFDM modulation types:</b> 
d5cfe99001f0 Change default OFDM error rate model to NistErrorRateModel (issue 944)
Tom Henderson <tomh@tomh.org>
parents: 6383
diff changeset
  1778
Adopted more conservative ErrorRateModel for OFDM modulation types (a/g).
d5cfe99001f0 Change default OFDM error rate model to NistErrorRateModel (issue 944)
Tom Henderson <tomh@tomh.org>
parents: 6383
diff changeset
  1779
This will require 4 to 5 more dB of received power to get similar results
d5cfe99001f0 Change default OFDM error rate model to NistErrorRateModel (issue 944)
Tom Henderson <tomh@tomh.org>
parents: 6383
diff changeset
  1780
as before, so users may observe a reduced WiFi range when using the defaults.
6540
d2768932d6c3 Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents: 6529
diff changeset
  1781
See tracker issue 944 for more details.
6300
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1782
</ul>
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1783
bd1da3a75496 bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents: 6273
diff changeset
  1784
<hr>
5933
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1785
<h1>Changes from ns-3.7 to ns-3.8</h1>
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1786
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1787
<h2>Changes to build system:</h2>
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1788
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1789
<h2>New API:</h2>
6113
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1790
6111
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1791
<ul>
6117
bf5e05fe051b Changes and release notes updated
Pavel Boyko <boyko@iitp.ru>
parents: 6113
diff changeset
  1792
<li><b>Matrix propagation loss model:</b> This radio propagation model uses a two-dimensional matrix
6165
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1793
of path loss indexed by source and destination nodes.
6117
bf5e05fe051b Changes and release notes updated
Pavel Boyko <boyko@iitp.ru>
parents: 6113
diff changeset
  1794
6111
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1795
<li><b>WiMAX net device</b>: The developed WiMAX model attempts to provide an accurate MAC and
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1796
PHY level implementation of the 802.16 specification with the Point-to-Multipoint (PMP) mode and the WirelessMAN-OFDM 
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1797
PHY layer. By adding WimaxNetDevice objects to ns-3 nodes, one can create models of
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1798
802.16-based networks. The source code for the WiMAX models lives in the directory src/devices/wimax.
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1799
The model is mainly composed of three layers:
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1800
<ul>
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1801
<li>The convergence sublayer (CS)
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1802
<li>The MAC Common Part Sublayer (MAC-CPS)
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1803
<li>The Physical layer
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1804
</ul>
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1805
The main way that users who write simulation scripts will typically
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1806
interact with the Wimax models is through the helper API and through
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1807
the publicly visible attributes of the model.
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1808
The helper API is defined in src/helper/wimax-helper.{cc,h}.
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1809
Three examples containing some code that shows how to setup a 802.16 network are located under examples/wimax/ 
6113
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1810
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1811
<li><b>MPI Interface for distributed simulation:</b> Enables access
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1812
to necessary MPI information such as MPI rank and size.
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1813
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1814
<li><b>Point-to-point remote channel:</b> Enables point-to-point 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1815
connection between net-devices on different simulators, for use 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1816
with distributed simulation.
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1817
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1818
<li><b>GetSystemId in simulator:</b> For use with distributed 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1819
simulation, GetSystemId returns zero by non-distributed 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1820
simulators.  For the distributed simulator, it returns the 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1821
MPI rank.
6165
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1822
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1823
<li><b>Enhancements to src/core/random-variable.cc/h:</b> New Zeta random variable generator. The Zeta random 
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1824
distribution is tightly related to the Zipf distribution (already in ns-3.7). See the documentation, 
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1825
especially because sometimes the Zeta distribution is called Zipf and viceversa. Here we conform to the 
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1826
Wikipedia naming convention, i.e., Zipf is bounded while Zeta isn't. 
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1827
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1828
<li><b>Two-ray ground propagation loss model:</b> Calculates the crossover distance under which Friis is used. The antenna 
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1829
height is set to the nodes z coordinate, but can be added to using the model parameter SetHeightAboveZ, which 
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1830
will affect ALL stations
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1831
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1832
<li><b>Pareto random variable</b> has two new constructors to specify scale and shape:
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1833
<pre>
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1834
ParetoVariable (std::pair<double, double> params);
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1835
ParetoVariable (std::pair<double, double> params, double b);
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1836
</pre>
6111
0b22ae082153 Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents: 6054
diff changeset
  1837
</ul>
6113
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1838
5933
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1839
<h2>Changes to existing API:</h2>
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1840
<ul>
6018
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1841
<li><b>Tracing Helpers</b>: The organization of helpers for both pcap and ascii
6032
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1842
tracing, in devices and protocols, has been reworked.  Instead of each device 
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1843
and protocol helper re-implementing trace enable methods, classes have been 
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1844
developed to implement user-level tracing in a consistent way; and device and 
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1845
protocol helpers use those classes to provide tracing functionality.<br>
6018
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1846
In addition to consistent operation across all helpers, the object name service
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1847
has been integrated into the trace file naming scheme.<br>
6032
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1848
The internet stack helper has been extensively massaged to make it easier to 
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1849
manage traces originating from protocols.  It used to be the case that there 
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1850
was essentially no opportunity to filter tracing on interfaces, and resulting
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1851
trace file names collided with those created by devices.  File names are now
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1852
disambiguated and one can enable traces on a protocol/interface basis analogously
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1853
to the node/device granularity of device-based helpers.<br>
6018
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1854
The primary user-visible results of this change are that trace-related functions
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1855
have been changed from static functions to method calls; and a new object has
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1856
been developed to hold streams for ascii traces.<br>
6032
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1857
New functionality is present for ascii traces.  It is now possible to create
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1858
multiple ascii trace files automatically just as was possible for pcap trace 
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1859
files.<br>
6018
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1860
The implementation of the helper code has been designed also to provide 
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1861
functionality to make it easier for sophisticated users to hook traces of 
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1862
various kinds and write results to (file) streams.
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1863
Before:
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1864
<pre>
6032
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1865
  CsmaHelper::EnablePcapAll ();
5933
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1866
6032
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1867
  std::ofstream ascii;
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1868
  ascii.open ("csma-one-subnet.tr", std::ios_base::binary | std::ios_base::out);
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1869
  CsmaHelper::EnableAsciiAll (ascii);
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1870
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1871
  InternetStackHelper::EnableAsciiAll (ascii);
6018
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1872
</pre>
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1873
After:
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1874
<pre>
6032
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1875
  CsmaHelper csmaHelper;
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1876
  InternetStackHelper stack;
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1877
  csmaHelper.EnablePcapAll ();
6018
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1878
6032
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1879
  AsciiTraceHelper ascii;
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1880
  csma.EnableAsciiAll (ascii.CreateFileStream ("csma-one-subnet.tr"));
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1881
a31949e0f1ed update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 6018
diff changeset
  1882
  stack.EnableAsciiIpv4All (stream);
6018
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1883
</pre>
92c388406dbe update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents: 5868
diff changeset
  1884
5933
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1885
6113
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1886
<li><b>Serialization and Deserialization</b> in buffer, nix-vector, 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1887
packet-metadata, and packet has been modified to use raw character 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1888
buffers, rather than the Buffer class
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1889
<pre>
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1890
+ uint32_t Buffer::GetSerializedSize (void) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1891
+ uint32_t Buffer::Serialize (uint8_t* buffer, uint32_t maxSize) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1892
+ uint32_t Buffer::Deserialize (uint8_t* buffer, uint32_t size); 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1893
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1894
- void NixVector::Serialize (Buffer::Iterator i, uint32_t size) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1895
+ uint32_t NixVector::Serialize (uint32_t* buffer, uint32_t maxSize) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1896
- uint32_t NixVector::Deserialize (Buffer::Iterator i);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1897
+ uint32_t NixVector::Deserialize (uint32_t* buffer, uint32_t size);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1898
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1899
- void PacketMetadata::Serialize (Buffer::Iterator i, uint32_t size) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1900
+ uint32_t PacketMetadata::Serialize (uint8_t* buffer, uint32_t maxSize) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1901
- uint32_t PacketMetadata::Deserialize (Buffer::Iterator i);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1902
+ uint32_t PacketMetadata::Deserialize (uint8_t* buffer, uint32_t size);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1903
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1904
+ uint32_t Packet::GetSerializedSize (void) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1905
- Buffer Packet::Serialize (void) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1906
+ uint32_t Packet::Serialize (uint8_t* buffer, uint32_t maxSize) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1907
- void Packet::Deserialize (Buffer buffer);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1908
+ Packet::Packet (uint8_t const*buffer, uint32_t size, bool magic);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1909
</pre>
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1910
<li><b>PacketMetadata uid</b> has been changed to a 64-bit value. The 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1911
lower 32 bits give the uid, while the upper 32-bits give the MPI rank 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1912
for distributed simulations. For non-distributed simulations, the 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1913
upper 32 bits are simply zero.
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1914
<pre>
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1915
- inline PacketMetadata (uint32_t uid, uint32_t size);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1916
+ inline PacketMetadata (uint64_t uid, uint32_t size);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1917
- uint32_t GetUid (void) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1918
+ uint64_t GetUid (void) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1919
- PacketMetadata::PacketMetadata (uint32_t uid, uint32_t size);
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1920
+ PacketMetadata::PacketMetadata (uint64_t uid, uint32_t size); 
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1921
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1922
- uint32_t Packet::GetUid (void) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1923
+ uint64_t Packet::GetUid (void) const;
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1924
</pre>
6165
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1925
55762ca33a99 update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents: 6117
diff changeset
  1926
<li><b>Moved propagation models</b> from src/devices/wifi to src/common
6184
3bb39c179947 update CHANGES.html for Mtu move
Tom Henderson <tomh@tomh.org>
parents: 6165
diff changeset
  1927
3bb39c179947 update CHANGES.html for Mtu move
Tom Henderson <tomh@tomh.org>
parents: 6165
diff changeset
  1928
<li><b>Moved Mtu attribute from base class NetDevice</b> This attribute is
3bb39c179947 update CHANGES.html for Mtu move
Tom Henderson <tomh@tomh.org>
parents: 6165
diff changeset
  1929
now found in all NetDevice subclasses.  
6113
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1930
</ul>
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1931
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1932
<h2>Changed behavior:</h2>
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1933
<ul>
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1934
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1935
</ul>
0ce37bf4f1c1 Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents: 6111
diff changeset
  1936
5933
2fc170de5400 Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents: 5868
diff changeset
  1937
<hr>
5497
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1938
<h1>Changes from ns-3.6 to ns-3.7</h1>
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1939
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1940
5497
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1941
<h2>Changes to build system:</h2>
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1942
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1943
<h2>New API:</h2>
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1944
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1945
<ul>
5858
afb51c7f34c2 bug 667: Add equal-cost multipath routing (ECMP) to IPv4 global routing
Wilson Thong <wilsonwk@ee.cityu.edu.hk>
parents: 5856
diff changeset
  1946
<li><b>Equal-cost multipath for global routing:</b> Enables quagga's
afb51c7f34c2 bug 667: Add equal-cost multipath routing (ECMP) to IPv4 global routing
Wilson Thong <wilsonwk@ee.cityu.edu.hk>
parents: 5856
diff changeset
  1947
equal cost multipath for Ipv4GlobalRouting, and adds an attribute that
afb51c7f34c2 bug 667: Add equal-cost multipath routing (ECMP) to IPv4 global routing
Wilson Thong <wilsonwk@ee.cityu.edu.hk>
parents: 5856
diff changeset
  1948
can enable it with random packet distribution policy across equal cost routes.
5856
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1949
<li><b>Binding sockets to devices:</b> A method analogous to a SO_BINDTODEVICE
5868
ed1e2ad4c0b9 Fix angle braces in CHANGES.html.
Andrey Mazo <mazo@iitp.ru>
parents: 5858
diff changeset
  1950
socket option has been introduced to class Socket:  <pre>virtual void Socket::BindToNetDevice (Ptr&lt;NetDevice&gt; netdevice);</pre>
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1951
<li><b>Simulator event contexts</b>: The Simulator API now keeps track of a per-event
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1952
'context' (a 32bit integer which, by convention identifies a node by its id). Simulator::GetContext
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1953
returns the context of the currently-executing event while Simulator::ScheduleWithContext creates an
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1954
event with a context different from the execution context of the caller. This API is used
5814
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1955
by the ns-3 logging system to report the execution context of each log line.
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1956
<li><b>Object::DoStart</b>: Users who need to complete their object setup at the start of a simulation
5814
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1957
can override this virtual method, perform their adhoc setup, and then, must chain up to their parent.
5990
20ee319e7e71 a couple of typos.
Andrey Mazo <mazo@iitp.ru>
parents: 5933
diff changeset
  1958
<li><b>Ad hoc On-Demand Distance Vector (AODV)</b> routing model, 
5742
19c79550b371 CHANGES.html, AUTHORS and RELEASE_NOTES updated after AODV merge
Pavel Boyko <boyko@iitp.ru>
parents: 5532
diff changeset
  1959
<a href=http://www.ietf.org/rfc/rfc3561.txt>RFC 3561</a> </li>
5814
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1960
<li><b>Ipv4::IsDestinationAddress (Ipv4Address address, uint32_t iif)</b> Method added to support checks of whether a destination address should be accepted 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1961
as one of the host's own addresses.  RFC 1122 Strong/Weak end system behavior can be changed with a new attribute (WeakEsModel) in class Ipv4.  </li>
5742
19c79550b371 CHANGES.html, AUTHORS and RELEASE_NOTES updated after AODV merge
Pavel Boyko <boyko@iitp.ru>
parents: 5532
diff changeset
  1962
5814
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1963
<li><b>Net-anim interface</b>: Provides an interface to net-anim, a network animator for point-to-point 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1964
links in ns-3.  The interface generates a custom trace file for use with the NetAnim program.</li>
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1965
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1966
<li><b>Topology Helpers</b>: New topology helpers have been introduced including PointToPointStarHelper, 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1967
PointToPointDumbbellHelper, PointToPointGridHelper, and CsmaStarHelper.</li>
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1968
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1969
<li><b>IPv6 extensions support</b>: Provides API to add IPv6 extensions and options. Two examples (fragmentation
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  1970
and loose routing) are available.</li>
5497
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1971
</ul>
d8b1b591839b Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents: 5407
diff changeset
  1972
5507
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  1973
<h2>Changes to existing API:</h2>
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  1974
<ul>
5856
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1975
<li><b>Ipv4RoutingProtocol::RouteOutput</b> no longer takes an outgoing 
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1976
interface index but instead takes an outgoing device pointer; this affects all
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1977
subclasses of Ipv4RoutingProtocol.
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1978
<pre>
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1979
-  virtual Ptr&lt;Ipv4Route&gt; RouteOutput (Ptr&lt;Packet&gt; p, const Ipv4Header &header, uint32_t oif, Socket::SocketErrno &sockerr) = 0;
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1980
+  virtual Ptr&lt;Ipv4Route&gt; RouteOutput (Ptr&lt;Packet&gt; p, const Ipv4Header &header, Ptr&lt;NetDevice&gt; oif, Socket::SocketErrno &sockerr) = 0;
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1981
</pre>
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1982
<li><b>Ipv6RoutingProtocol::RouteOutput</b> no longer takes an outgoing 
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1983
interface index but instead takes an outgoing device pointer; this affects all
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1984
subclasses of Ipv6RoutingProtocol.
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1985
<pre>
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1986
-  virtual Ptr&lt;Ipv6Route&gt; RouteOutput (Ptr&lt;Packet&gt; p, const Ipv6Header &header, uint32_t oif, Socket::SocketErrno &sockerr) = 0;
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1987
+  virtual Ptr&lt;Ipv6Route&gt; RouteOutput (Ptr&lt;Packet&gt; p, const Ipv6Header &header, Ptr&lt;NetDevice&gt; oif, Socket::SocketErrno &sockerr) = 0;
7fd20c798a7d bug 742: Implementation of SO_BINDTODEVICE
Antti Mäkelä <zarhan@cc.hut.fi>
parents: 5817
diff changeset
  1988
</pre>
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1989
<li><b>Application::Start</b> and <b>Application::Stop</b> have been renamed to
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1990
<b>Application::SetStartTime</b> and <b>Application::SetStopTime</b>.
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1991
<li><b>Channel::Send</b>: this method does not really exist but each subclass of the Channel
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1992
base class must implement a similar method which sends a packet from a node to another node.
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1993
Users must now use Simulator::ScheduleWithContext instead of Simulator::Schedule to schedule
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1994
the reception event on a remote node.<br>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1995
For example, before:
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1996
<pre>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1997
void
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  1998
SimpleChannel::Send (Ptr&lt;Packet&gt; p, uint16_t protocol, 
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  1999
         Mac48Address to, Mac48Address from,
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2000
         Ptr&lt;SimpleNetDevice&gt; sender)
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2001
{
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2002
  for (std::vector&lt;Ptr&lt;SimpleNetDevice&gt; &gt;::const_iterator i = m_devices.begin (); i != m_devices.end (); ++i)
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2003
    {
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2004
      Ptr&lt;SimpleNetDevice&gt; tmp = *i;
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2005
      if (tmp == sender)
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2006
  {
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2007
    continue;
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2008
  }
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2009
      Simulator::ScheduleNow (&SimpleNetDevice::Receive, tmp, p->Copy (), protocol, to, from);
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2010
    }
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2011
}
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2012
</pre>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2013
After:
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2014
<pre>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2015
void
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2016
SimpleChannel::Send (Ptr&lt;Packet&gt; p, uint16_t protocol, 
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2017
         Mac48Address to, Mac48Address from,
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2018
         Ptr&lt;SimpleNetDevice&gt; sender)
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2019
{
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2020
  for (std::vector&lt;Ptr&lt;SimpleNetDevice&gt; &gt;::const_iterator i = m_devices.begin (); i != m_devices.end (); ++i)
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2021
    {
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2022
      Ptr&lt;SimpleNetDevice&gt; tmp = *i;
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2023
      if (tmp == sender)
9751
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2024
  {
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2025
    continue;
2d9e9b0ae1b8 improve formatting
Tom Henderson <tomh@tomh.org>
parents: 9748
diff changeset
  2026
  }
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2027
      Simulator::ScheduleWithContext (tmp->GetNode ()->GetId (), Seconds (0),
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2028
                                      &SimpleNetDevice::Receive, tmp, p->Copy (), protocol, to, from);
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2029
    }
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2030
}
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2031
</pre>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2032
5507
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2033
<li><b>Simulator::SetScheduler</b>: this method now takes an ObjectFactory
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2034
instead of an object pointer directly. Existing callers can trivially be
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2035
updated to use this new method.<br>
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2036
Before:
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2037
<pre>
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2038
Ptr&lt;Scheduler&gt; sched = CreateObject&lt;ListScheduler&gt; ();
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2039
Simulator::SetScheduler (sched);
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2040
</pre>
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2041
After:
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2042
<pre>
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2043
ObjectFactory sched;
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2044
sched.SetTypeId ("ns3::ListScheduler");
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2045
Simulator::SetScheduler (sched);
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2046
</pre>
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2047
5742
19c79550b371 CHANGES.html, AUTHORS and RELEASE_NOTES updated after AODV merge
Pavel Boyko <boyko@iitp.ru>
parents: 5532
diff changeset
  2048
<li> Extensions to IPv4 <b>Ping</b> application: verbose output and the ability to configure different ping 
5814
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2049
sizes and time intervals (via new attributes)
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2050
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2051
<li><b>Topology Helpers</b>: Previously, topology helpers such as a point-to-point star existed in the 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2052
PointToPointHelper class in the form of a method (ex: PointToPointHelper::InstallStar).  These topology 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2053
helpers have been pulled out of the specific helper classes and created as separate classes.  Several 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2054
different topology helper classes now exist including PointToPointStarHelper, PointToPointGridHelper, 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2055
PointToPointDumbbellHelper, and CsmaStarHelper.  For example, a user wishes to create a 
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2056
point-to-point star network:<br>
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2057
Before:
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2058
<pre>
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2059
NodeContainer hubNode;
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2060
NodeContainer spokeNodes;
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2061
hubNode.Create (1);
5868
ed1e2ad4c0b9 Fix angle braces in CHANGES.html.
Andrey Mazo <mazo@iitp.ru>
parents: 5858
diff changeset
  2062
Ptr&lt;Node&gt; hub = hubNode.Get (0);
5814
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2063
spokeNodes.Create (nNodes - 1);
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2064
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2065
PointToPointHelper pointToPoint;
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2066
pointToPoint.SetDeviceAttribute ("DataRate", StringValue ("5Mbps"));
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2067
pointToPoint.SetChannelAttribute ("Delay", StringValue ("2ms"));
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2068
NetDeviceContainer hubDevices, spokeDevices;
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2069
pointToPoint.InstallStar (hubNode.Get (0), spokeNodes, hubDevices, spokeDevices);
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2070
</pre>
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2071
After:
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2072
<pre>
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2073
PointToPointHelper pointToPoint;
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2074
pointToPoint.SetDeviceAttribute ("DataRate", StringValue ("5Mbps"));
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2075
pointToPoint.SetChannelAttribute ("Delay", StringValue ("2ms"));
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2076
PointToPointStarHelper star (nSpokes, pointToPoint);
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2077
</pre>
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2078
5214623658f2 Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents: 5812
diff changeset
  2079
</li>
5742
19c79550b371 CHANGES.html, AUTHORS and RELEASE_NOTES updated after AODV merge
Pavel Boyko <boyko@iitp.ru>
parents: 5532
diff changeset
  2080
5507
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2081
</ul>
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2082
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2083
<h2>Changed behavior:</h2>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2084
<ul>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2085
<li> Changed default value of YansWifiPhy::EnergyDetectionThreshold from
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2086
-140.0 dBm to -96.0 dBm.  Changed default value of 
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2087
YansWifiPhy::CcaModelThreshold from -140.0 dBm to -99.0 dBm.  Rationale
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2088
can be found <a href="http://www.nsnam.org/bugzilla/show_bug.cgi?id=689"> 
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2089
here</a>.
5817
87aaf687f869 updated CHANGES.html after fixing bug 695
Kirill Andreev <andreev@iitp.ru>
parents: 5814
diff changeset
  2090
</li>
87aaf687f869 updated CHANGES.html after fixing bug 695
Kirill Andreev <andreev@iitp.ru>
parents: 5814
diff changeset
  2091
<li> Default TTL of IPv4 broadcast datagrams changed from 1 to 64.</li>
87aaf687f869 updated CHANGES.html after fixing bug 695
Kirill Andreev <andreev@iitp.ru>
parents: 5814
diff changeset
  2092
<li> Changed DcfManager::UpdateBackoff (): using flooring instead of rounding in calculation of remaining slots. <a href="http://www.nsnam.org/bugzilla/show_bug.cgi?id=695">
87aaf687f869 updated CHANGES.html after fixing bug 695
Kirill Andreev <andreev@iitp.ru>
parents: 5814
diff changeset
  2093
  See bug 695.</a></li>
5526
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2094
</ul>
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2095
d70ac1951ae4 document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 5507
diff changeset
  2096
5507
915abd2b907b Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents: 5497
diff changeset
  2097
<hr>
4681
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2098
<h1>Changes from ns-3.5 to ns-3.6</h1>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2099
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2100
<h2>Changes to build system:</h2>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2101
<ul>
5407
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2102
<li><b>A new test framework is provided with ns-3.6 that primarilay runs outside waf</b>
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2103
<p>"./waf check" now runs the new unit tests of the core part of ns-3.6.  
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2104
In order to run the complete test package, use "./test.py" which is 
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2105
documented in a new manual -- find it in ./doc/testing.  "./waf check"
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2106
no longer generates the introspected Doxygen.  Now use "./waf doxygen"
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2107
to do this and generate the Doxygen documentation in one step.
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2108
</p>
4681
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2109
</ul>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2110
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2111
<h2>New API:</h2>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2112
<ul>
4761
8c0b3a413f4b Add metric and longest prefix match support for IPv6.
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4747
diff changeset
  2113
<li><b>Longest prefix match, support for metrics, for Ipv4StaticRouting and Ipv6StaticRouting</b>
4747
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2114
<p>When performing route lookup, first match for longest prefix, and then
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2115
based on metrics (default metric = 0).  If metrics are equal, most recent
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2116
addition is picked.  Extends API for support of metrics but preserves
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2117
backward compatibility.  One small change is that the default route
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2118
is no longer stored as index 0 route in the host route table so 
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2119
GetDefaultRoute () must be used.
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2120
</p>
3dc675bb8b20 Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents: 4745
diff changeset
  2121
</li>
4745
a0e27af57c8d Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents: 4735
diff changeset
  2122
<li><b>Route injection for global routing</b>
a0e27af57c8d Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents: 4735
diff changeset
  2123
<p>Add ability to inject and withdraw routes to Ipv4GlobalRouting.  This
a0e27af57c8d Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents: 4735
diff changeset
  2124
allows a user to insert a route and have it redistributed like an OSPF
a0e27af57c8d Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents: 4735
diff changeset
  2125
external LSA to the rest of the topology.
a0e27af57c8d Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents: 4735
diff changeset
  2126
</p>
a0e27af57c8d Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents: 4735
diff changeset
  2127
</li>
5184
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2128
4735
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2129
<li><b>Athstats</b>
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2130
<p>New classes AthstatsWifiTraceSink and AthstatsHelper.
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2131
</p>
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2132
</li>
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2133
<li><b>WifiRemoteStationManager </b>
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2134
<p>New trace sources exported by WifiRemoteStationManager: MacTxRtsFailed, MacTxDataFailed, MacTxFinalRtsFailed and MacTxFinalDataFailed.
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2135
</p>
f011cf863e07 updated release notes
Nicola Baldo <nbaldo@cttc.es>
parents: 4731
diff changeset
  2136
</li>
5184
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2137
4731
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2138
<li><b> IPv6 additions</b>
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2139
<p> Add an IPv6 protocol and ICMPv6 capability.
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2140
<ul>
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2141
<li> new classes Ipv6, Ipv6Interface, Ipv6L3Protocol, Ipv6L4Protocol
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2142
<li> Ipv6RawSocket (no UDP or TCP capability yet)
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2143
<li> a set of classes to implement Icmpv6, including neighbor discovery,
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2144
router solicitation, DAD
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2145
<li> new applications Ping6 and Radvd
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2146
<li> routing objects Ipv6Route and Ipv6MulticastRoute
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2147
<li> routing protocols Ipv6ListRouting and Ipv6StaticRouting
510db8599bfb second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4681
diff changeset
  2148
<li> examples: icmpv6-redirect.cc, ping6.cc, radvd.cc, radvd-two-prefix.cc, simple-routing-ping6.cc
5184
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2149
</ul>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2150
</p>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2151
</li> 
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2152
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2153
<li><b>Wireless Mesh Networking models</b>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2154
<ul>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2155
<p>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2156
<li> General multi-interface mesh stack infrastructure (devices/mesh module).
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2157
<li> IEEE 802.11s (Draft 3.0) model including Peering Management Protocol and HWMP.
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2158
<li> Forwarding Layer for Meshing (FLAME) protocol.
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2159
</ul>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2160
</p>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2161
</li>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2162
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2163
<li><b>802.11 enhancements</b>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2164
<p>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2165
<ul>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2166
<li> 10MHz and 5MHz channel width supported by 802.11a model (Ramon Bauza and Kirill Andreev).
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2167
</ul>
5189
8fcdf87a790a Channel switching support for Wifi
Ramon Bauza
parents: 5184
diff changeset
  2168
<ul>
8fcdf87a790a Channel switching support for Wifi
Ramon Bauza
parents: 5184
diff changeset
  2169
<li> Channel switching support. YansWifiPhy can now switch among different channels (Ramon Bauza and Pavel Boyko).
8fcdf87a790a Channel switching support for Wifi
Ramon Bauza
parents: 5184
diff changeset
  2170
</ul>
5184
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2171
</p>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2172
</li>
a109c38131dd Cosmetics
Pavel Boyko <boyko@iitp.ru>
parents: 4764
diff changeset
  2173
5224
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2174
<li><b> Nix-vector Routing</b>
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2175
<p> Add nix-vector routing protocol
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2176
<ul>
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2177
<li> new helper class Ipv4NixVectorHelper
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2178
</ul>
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2179
<ul>
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2180
<li> examples: nix-simple.cc, nms-p2p-nix.cc
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2181
</ul> 
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2182
</p>
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2183
</li>
06f639d05b8f Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents: 5189
diff changeset
  2184
5407
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2185
<li><b>New Test Framework</b>
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2186
<p> Add TestCase, TestSuite classes
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2187
<ul>
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2188
<li> examples: src/core/names-test-suite.cc, src/core/random-number-test-suite.cc, src/test/ns3tcp/ns3tcp-cwnd-test-suite.cc
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2189
</ul> 
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2190
</p>
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2191
</li>
4ad0d23af431 update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents: 5224
diff changeset
  2192
4681
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2193
</ul>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2194
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2195
<h2>Changes to existing API:</h2>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2196
<ul>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2197
<li><b>InterferenceHelper</b>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2198
<p>The method InterferenceHelper::CalculateTxDuration (uint32_t size, WifiMode payloadMode, WifiPreamble preamble) has been made static, so that the frame duration depends only on the characteristics of the frame (i.e., the function parameters) and not on the particular standard which is used by the receiving PHY. This makes it now possible to correctly calculate the duration of incoming frames in scenarios in which devices using different PHY configurations coexist in the same channel (e.g., a BSS using short preamble and another BSS using long preamble). </p>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2199
<p> The following member methods have been added to InterferenceHelper:</p>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2200
<pre>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2201
  static WifiMode GetPlcpHeaderMode (WifiMode, WifiPreamble);
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2202
  static uint32_t GetPlcpHeaderDurationMicroSeconds (WifiMode, WifiPreamble);
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2203
  static uint32_t GetPlcpPreambleDurationMicroSeconds (WifiMode, WifiPreamble);
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2204
  static uint32_t GetPayloadDurationMicroSeconds (size, WifiMode); </pre>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2205
<p> The following member methods have been removed from InterferenceHelper:</p>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2206
<pre>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2207
  void Configure80211aParameters (void);
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2208
  void Configure80211bParameters (void);
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2209
  void Configure80211_10MhzParameters (void);
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2210
  void Configure80211_5MhzParameters (void);</pre>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2211
</li>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2212
<li><b>WifiMode</b>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2213
<p>WifiMode now has a WifiPhyStandard attribute which identifies the standard the WifiMode belongs to. To properly set this attribute when creating a new WifiMode, it is now required to explicitly pass a WifiPhyStandard parameter to all WifiModeFactory::CreateXXXX() methods. The WifiPhyStandard value of an existing WifiMode can be retrieved using the new method WifiMode::GetStandard().</p>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2214
</li>
4764
e90e1ef585b0 [Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4761
diff changeset
  2215
<li><b>NetDevice</b>
e90e1ef585b0 [Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4761
diff changeset
  2216
<p>In order to have multiple link change callback in NetDevice (i.e. to flush ARP and IPv6 neighbor discovery caches), the following member method has been renamed:</p>
e90e1ef585b0 [Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4761
diff changeset
  2217
<pre>
e90e1ef585b0 [Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4761
diff changeset
  2218
- virtual void SetLinkChangeCallback (Callback&lt;void&gt; callback);
e90e1ef585b0 [Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4761
diff changeset
  2219
+ virtual void AddLinkChangeCallback (Callback&lt;void&gt; callback);</pre>
e90e1ef585b0 [Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4761
diff changeset
  2220
Now each NetDevice subclasses have a TracedCallback&lt;&gt; object (list of callbacks) instead of Callback&lt;void&gt; ones.
e90e1ef585b0 [Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents: 4761
diff changeset
  2221
</li>
4681
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2222
</ul>
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2223
8558474b6149 made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents: 4643
diff changeset
  2224
<hr>
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2225
<h1>Changes from ns-3.4 to ns-3.5</h1>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2226
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2227
<h2>Changes to build system:</h2>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2228
<ul>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2229
</ul>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2230
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2231
<h2>New API:</h2>
4492
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2232
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2233
<ul>
4492
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2234
<li><b>YansWifiPhyHelper supporting radiotap and prism PCAP output</b>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2235
<p>The newly supported pcap formats can be adopted by calling the following new method of YansWifiPhyHelper:</p>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2236
<pre>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2237
 +  void SetPcapFormat (enum PcapFormat format);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2238
</pre>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2239
where format is one of PCAP_FORMAT_80211_RADIOTAP, PCAP_FORMAT_80211_PRISM or  PCAP_FORMAT_80211. By default, PCAP_FORMAT_80211 is used, so the default PCAP format is the same as before.</p>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2240
</li>
4502
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2241
4475
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2242
<li> <b>attributes for class Ipv4</b>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2243
<p> class Ipv4 now contains attributes in ipv4.cc; the first one
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2244
is called "IpForward" that will enable/disable Ipv4 forwarding.  
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2245
</li>
4502
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2246
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2247
<li> <b>packet tags</b>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2248
<p>class Packet now contains AddPacketTag, RemovePacketTag and PeekPacketTag 
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2249
which can be used to attach a tag to a packet, as opposed to the old 
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2250
AddTag method which attached a tag to a set of bytes. The main 
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2251
semantic difference is in how these tags behave in the presence of 
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2252
fragmentation and reassembly.
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2253
</li>
4505
e865dbc1d157 merge with HEAD
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4492 4502
diff changeset
  2254
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2255
</ul>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2256
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2257
<h2>Changes to existing API:</h2>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2258
<ul>
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2259
4572
e5dcdf2868df Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents: 4568
diff changeset
  2260
<li><b>Ipv4Interface::GetMtu () deleted</b>
e5dcdf2868df Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents: 4568
diff changeset
  2261
  <p>The Ipv4Interface API is private to internet-stack module; this method
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2262
was just a pass-through to GetDevice ()-&gt;GetMtu ().
4572
e5dcdf2868df Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents: 4568
diff changeset
  2263
  </p>
e5dcdf2868df Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents: 4568
diff changeset
  2264
</li>
e5dcdf2868df Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents: 4568
diff changeset
  2265
4635
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2266
<li><b>GlobalRouteManager::PopulateRoutingTables () and RecomputeRoutingTables () are deprecated </b>
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2267
  <p>This API has been moved to the helper API and the above functions will
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2268
be removed in ns-3.6.  The new API is:
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2269
<pre>
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2270
Ipv4GlobalRoutingHelper::PopulateRoutingTables ();
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2271
Ipv4GlobalRoutingHelper::RecomputeRoutingTables ();
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2272
</pre>
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2273
Additionally, these low-level functions in GlobalRouteManager are now public,
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2274
allowing more API flexibility at the low level ns-3 API:
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2275
<pre>
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2276
GlobalRouteManager::DeleteGlobalRoutes ();
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2277
GlobalRouteManager::BuildGlobalRoutingDatabase ();
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2278
GlobalRouteManager::InitializeRoutes ();
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2279
</pre>
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2280
  </p>
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2281
</li>
b40170d32073 document global routing API changes
Tom Henderson <tomh@tomh.org>
parents: 4629
diff changeset
  2282
4568
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2283
<li><b>CalcChecksum attribute changes</b>
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2284
  <p>Four IPv4 CalcChecksum attributes (which enable the computation of 
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2285
checksums that are disabled by default) have been collapsed into one global 
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2286
value in class Node.  These four calls: 
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2287
<pre>
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2288
Config::SetDefault ("ns3::Ipv4L3Protocol::CalcChecksum", BooleanValue (true)); 
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2289
Config::SetDefault ("ns3::Icmpv4L4Protocol::CalcChecksum", BooleanValue (true));
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2290
Config::SetDefault ("ns3::TcpL4Protocol::CalcChecksum", BooleanValue (true));
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2291
Config::SetDefault ("ns3::UdpL4Protocol::CalcChecksum", BooleanValue (true));
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2292
</pre>
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2293
are replaced by one call to:
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2294
<pre>
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2295
GlobalValue::Bind ("ChecksumEnabled", BooleanValue (true));
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2296
</pre>
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2297
  </p>
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2298
</li>
8a9c81e59c92 fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents: 4555
diff changeset
  2299
4555
e33c757f790c update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4505
diff changeset
  2300
<li><b>CreateObject changes</b>
e33c757f790c update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4505
diff changeset
  2301
  <p>CreateObject is now able to construct objects with a non-default constructor.
e33c757f790c update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4505
diff changeset
  2302
   If you used to pass attribute lists to CreateObject, you must now use CreateObjectWithAttributes.
e33c757f790c update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4505
diff changeset
  2303
  </p>
e33c757f790c update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4505
diff changeset
  2304
</li>
e33c757f790c update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4505
diff changeset
  2305
4502
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2306
<li> <b>packet byte tags renaming</b>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2307
  <ul>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2308
  <li>Packet::AddTag to Packet::AddByteTag</li>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2309
  <li>Packet::FindFirstMatchingTag to Packet::FindFirstMatchingByteTag</li>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2310
  <li>Packet::RemoveAllTags to Packet::RemoveAllByteTags</li>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2311
  <li>Packet::PrintTags to Packet::PrintByteTags</li>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2312
  <li>Packet::GetTagIterator to Packet::GetByteTagIterator</li>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2313
  </ul>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2314
</li>
07d34c0d8d18 new tags
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4475
diff changeset
  2315
4505
e865dbc1d157 merge with HEAD
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4492 4502
diff changeset
  2316
<li><b>YansWifiPhyHelper::EnablePcap* methods not static any more</b>
4492
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2317
<p>To accommodate the possibility of configuring the PCAP format used for wifi promiscuous mode traces, several methods of YansWifiPhyHelper had to be made non-static:
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2318
<pre>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2319
-  static void EnablePcap (std::string filename, uint32_t nodeid, uint32_t deviceid);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2320
+         void EnablePcap (std::string filename, uint32_t nodeid, uint32_t deviceid);
5868
ed1e2ad4c0b9 Fix angle braces in CHANGES.html.
Andrey Mazo <mazo@iitp.ru>
parents: 5858
diff changeset
  2321
-  static void EnablePcap (std::string filename, Ptr&lt;NetDevice&gt; nd);
ed1e2ad4c0b9 Fix angle braces in CHANGES.html.
Andrey Mazo <mazo@iitp.ru>
parents: 5858
diff changeset
  2322
+         void EnablePcap (std::string filename, Ptr&lt;NetDevice&gt; nd);
4492
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2323
-  static void EnablePcap (std::string filename, std::string ndName);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2324
+         void EnablePcap (std::string filename, std::string ndName);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2325
-  static void EnablePcap (std::string filename, NetDeviceContainer d);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2326
+         void EnablePcap (std::string filename, NetDeviceContainer d);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2327
-  static void EnablePcap (std::string filename, NodeContainer n);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2328
+         void EnablePcap (std::string filename, NodeContainer n);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2329
-  static void EnablePcapAll (std::string filename);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2330
+         void EnablePcapAll (std::string filename);
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2331
</pre>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2332
</p>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2333
</li>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2334
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2335
<li><b>Wifi Promisc Sniff interface modified </b>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2336
<p> 
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2337
To accommodate support for the radiotap and prism headers in PCAP traces, the interface for promiscuos mode sniff in the wifi device was changed. The new implementation was heavily inspired by the way the madwifi driver handles monitor mode. A distinction between TX and RX events is introduced, to account for the fact that different information is to be put in the radiotap/prism header (e.g., RSSI and noise make sense only for RX packets). The following are the relevant modifications to the WifiPhy class:
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2338
<pre>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2339
-  void NotifyPromiscSniff (Ptr&lt;const Packet&gt; packet);
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2340
+  void NotifyPromiscSniffRx (Ptr&lt;const Packet&gt; packet, uint16_t channelFreqMhz, uint32_t rate, bool isShortPreamble, double signalDbm, double noiseDbm);
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2341
+  void NotifyPromiscSniffTx (Ptr&lt;const Packet&gt; packet, uint16_t channelFreqMhz, uint32_t rate, bool isShortPreamble);
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2342
-  TracedCallback&lt;Ptr&lt;const Packet&gt; &gt; m_phyPromiscSnifferTrace;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2343
+  TracedCallback&lt;Ptr&lt;const Packet&gt;, uint16_t, uint32_t, bool, double, double&gt; m_phyPromiscSniffRxTrace;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2344
+  TracedCallback&lt;Ptr&lt;const Packet&gt;, uint16_t, uint32_t, bool&gt; m_phyPromiscSniffTxTrace;
4492
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2345
</pre>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2346
The above mentioned callbacks are expected to be used to call the following method to write Wifi PCAP traces in promiscuous mode:
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2347
<pre>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2348
+  void WriteWifiMonitorPacket(Ptr&lt;const Packet&gt; packet, uint16_t channelFreqMhz, uint32_t rate, bool isShortPreamble, bool isTx, double signalDbm, double noiseDbm);
4492
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2349
</pre>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2350
In the above method, the isTx parameter is to be used to differentiate between TX and RX packets. For an example of how to implement these callbacks, see the implementation of PcapSniffTxEvent and PcapSniffRxEvent in src/helper/yans-wifi-helper.cc
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2351
</p>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2352
</li>
3ebeb7bf3c15 added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents: 4475
diff changeset
  2353
4475
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2354
<li><b> Routing decoupled from class Ipv4</b>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2355
<p> All calls of the form "Ipv4::AddHostRouteTo ()" etc. (i.e. to 
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2356
add static routes, both unicast and multicast) have been moved to a new 
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2357
class Ipv4StaticRouting.  In addition, class Ipv4 now holds only
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2358
one possible routing protocol; the previous way to add routing protocols
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2359
(by ordered list of priority) has been moved to a new class Ipv4ListRouting.
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2360
Class Ipv4 has a new minimal routing API (just to set and get the routing
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2361
protocol):
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2362
<pre>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2363
-  virtual void AddRoutingProtocol (Ptr&lt;Ipv4RoutingProtocol&gt; routingProtocol, int16_t priority) = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2364
+  virtual void SetRoutingProtocol (Ptr&lt;Ipv4RoutingProtocol&gt; routingProtocol) = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2365
+  virtual Ptr&lt;Ipv4RoutingProtocol&gt; GetRoutingProtocol (void) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2366
</pre>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2367
</li>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2368
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2369
<li><b> class Ipv4RoutingProtocol is refactored</b>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2370
<p> The abstract base class Ipv4RoutingProtocol has been refactored to
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2371
align with corresponding Linux Ipv4 routing architecture, and has been
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2372
moved from ipv4.h to a new file ipv4-routing-protocol.h.  The new
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2373
methods (RouteOutput () and RouteInput ()) are aligned with Linux 
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2374
ip_route_output() and ip_route_input().  However,
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2375
the general nature of these calls (synchronous routing lookup for
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2376
locally originated packets, and an asynchronous, callback-based lookup
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2377
for forwarded packets) is still the same.
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2378
<pre>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2379
-  typedef Callback&lt;void, bool, const Ipv4Route&amp;, Ptr&lt;Packet&gt;, const Ipv4Header&amp;&gt; RouteReplyCallback;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2380
+  typedef Callback&lt;void, Ptr&lt;Ipv4Route&gt;, Ptr&lt;const Packet&gt;, const Ipv4Header &amp;&gt; UnicastForwardCallback;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2381
+  typedef Callback&lt;void, Ptr&lt;Ipv4MulticastRoute&gt;, Ptr&lt;const Packet&gt;, const Ipv4Header &amp;&gt; MulticastForwardCallback;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2382
+  typedef Callback&lt;void, Ptr&lt;const Packet&gt;, const Ipv4Header &amp;, uint32_t &gt; LocalDeliverCallback;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2383
+  typedef Callback&lt;void, Ptr&lt;const Packet&gt;, const Ipv4Header &amp;&gt; ErrorCallback;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2384
-  virtual bool RequestInterface (Ipv4Address destination, uint32_t&amp; interface) = 0;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2385
+  virtual Ptr&lt;Ipv4Route&gt; RouteOutput (Ptr&lt;Packet&gt; p, const Ipv4Header &amp;header, uint32_t oif, Socket::SocketErrno &amp;errno) = 0;
4475
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2386
-  virtual bool RequestRoute (uint32_t interface,
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2387
-                            const Ipv4Header &amp;ipHeader,
4475
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2388
-                            Ptr&lt;Packet&gt; packet,
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2389
-                            RouteReplyCallback routeReply) = 0;
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2390
+  virtual bool RouteInput  (Ptr&lt;const Packet&gt; p, const Ipv4Header &amp;header, Ptr&lt;const NetDevice&gt; idev,
4475
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2391
+                             UnicastForwardCallback ucb, MulticastForwardCallback mcb,
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2392
+                             LocalDeliverCallback lcb, ErrorCallback ecb) = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2393
</pre>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2394
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2395
</li>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2396
<li><b> previous class Ipv4Route, Ipv4MulticastRoute renamed; new classes with
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2397
those same names added</b>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2398
<p> The previous class Ipv4Route and Ipv4MulticastRoute are used by 
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2399
Ipv4StaticRouting and Ipv4GlobalRouting to record internal routing table
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2400
entries, so they were renamed to class Ipv4RoutingTableEntry and
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2401
Ipv4MulticastRoutingTableEntry, respectively.  In their place, new
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2402
class Ipv4Route and class Ipv4MulticastRoute have been added.  These
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2403
are reference-counted objects that are analogous to Linux struct
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2404
rtable and struct mfc_cache, respectively, to achieve better compatibility
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2405
with Linux routing architecture in the future.  
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2406
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2407
<li><b> class Ipv4 address-to-interface mapping functions changed</b>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2408
<p>  There was some general cleanup of functions that involve mappings
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2409
from Ipv4Address to either NetDevice or Ipv4 interface index.  
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2410
<pre>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2411
-  virtual uint32_t FindInterfaceForAddr (Ipv4Address addr) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2412
-  virtual uint32_t FindInterfaceForAddr (Ipv4Address addr, Ipv4Mask mask) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2413
+  virtual int32_t GetInterfaceForAddress (Ipv4Address address) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2414
+  virtual int32_t GetInterfaceForPrefix (Ipv4Address address, Ipv4Mask mask) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2415
-  virtual int32_t FindInterfaceForDevice(Ptr&lt;NetDevice&gt; nd) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2416
+  virtual int32_t GetInterfaceForDevice (Ptr&lt;const NetDevice&gt; device) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2417
-  virtual Ipv4Address GetSourceAddress (Ipv4Address destination) const = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2418
-  virtual bool GetInterfaceForDestination (Ipv4Address dest,
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2419
-  virtual uint32_t GetInterfaceByAddress (Ipv4Address addr, Ipv4Mask mask = Ipv4Mask("255.255.255.255"));
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2420
</pre>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2421
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2422
<li><b> class Ipv4 multicast join API deleted</b>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2423
<p> The following methods are not really used in present form since IGMP
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2424
is not being generated, so they have been removed (planned to be replaced
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2425
by multicast socket-based calls in the future):
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2426
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2427
<pre>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2428
- virtual void JoinMulticastGroup (Ipv4Address origin, Ipv4Address group) = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2429
- virtual void LeaveMulticastGroup (Ipv4Address origin, Ipv4Address group) = 0;
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2430
</pre>
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2431
a232dcbbe7a8 api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents: 4426
diff changeset
  2432
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2433
<li><b>Deconflict NetDevice::ifIndex and Ipv4::ifIndex (bug 85).</b>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2434
<p>All function parameters named "ifIndex" that refer 
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2435
to an Ipv4 interface are instead named "interface".
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2436
<pre>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2437
- static const uint32_t Ipv4RoutingProtocol::IF_INDEX_ANY = 0xffffffff;
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2438
+ static const uint32_t Ipv4RoutingProtocol::INTERFACE_ANY = 0xffffffff;
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2439
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2440
- bool Ipv4RoutingProtocol::RequestIfIndex (Ipv4Address destination, uint32_t&amp; ifIndex);
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2441
+ bool Ipv4RoutingProtocol::RequestInterface (Ipv4Address destination, uint32_t&amp; interface);
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2442
(N.B. this particular function is planned to be renamed to RouteOutput() in the
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2443
proposed IPv4 routing refactoring)
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2444
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2445
- uint32_t Ipv4::GetIfIndexByAddress (Ipv4Address addr, Ipv4Mask mask);
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2446
+ int_32t Ipv4::GetInterfaceForAddress (Ipv4Address address, Ipv4Mask mask) const;
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2447
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2448
- bool Ipv4::GetIfIndexForDestination (Ipv4Address dest, uint32_t &amp;ifIndex) const;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2449
+ bool Ipv4::GetInterfaceForDestination (Ipv4Address dest, uint32_t &amp;interface) const;
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2450
(N.B. this function is not needed in the proposed Ipv4 routing refactoring)
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2451
</pre>
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2452
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2453
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2454
<li><b>Allow multiple IPv4 addresses to be assigned to an interface (bug 188)</b>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2455
  <ul>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2456
  <li> Add class Ipv4InterfaceAddress:  
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2457
  This is a new class to resemble Linux's struct in_ifaddr.  It holds IP addressing information, including mask,
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2458
  broadcast address, scope, whether primary or secondary, etc.
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2459
  <pre>
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2460
+  virtual uint32_t AddAddress (uint32_t interface, Ipv4InterfaceAddress address) = 0;
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2461
+  virtual Ipv4InterfaceAddress GetAddress (uint32_t interface, uint32_t addressIndex) const = 0;
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2462
+  virtual uint32_t GetNAddresses (uint32_t interface) const = 0;
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2463
  </pre>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2464
  <li>Regarding legacy API usage, typically where you once did the following,
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2465
  using the public Ipv4 class interface (e.g.):
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2466
  <pre>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2467
  ipv4A-&gt;SetAddress (ifIndexA, Ipv4Address ("172.16.1.1"));
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2468
  ipv4A-&gt;SetNetworkMask (ifIndexA, Ipv4Mask ("255.255.255.255"));
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2469
  </pre>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2470
  you now do:
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2471
  <pre>
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2472
  Ipv4InterfaceAddress ipv4IfAddrA = Ipv4InterfaceAddress (Ipv4Address ("172.16.1.1"), Ipv4Mask ("255.255.255.255"));
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2473
  ipv4A-&gt;AddAddress (ifIndexA, ipv4IfAddrA);
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2474
  </pre>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2475
  <li> At the helper API level, one often gets an address from an interface
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2476
  container.  We preserve the legacy GetAddress (uint32_t i) but it
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2477
  is documented that this will return only the first (address index 0)
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2478
  address on the interface, if there are multiple such addresses. 
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2479
  We provide also an overloaded variant for the multi-address case: 
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2480
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2481
  <pre>
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2482
Ipv4Address Ipv4InterfaceContainer::GetAddress (uint32_t i)
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2483
+ Ipv4Address Ipv4InterfaceContainer::GetAddress (uint32_t i, uint32_t j)
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2484
  </pre>
4413
4726838efe7c Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents: 4385
diff changeset
  2485
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2486
  </ul>
4413
4726838efe7c Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents: 4385
diff changeset
  2487
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2488
<li><b>New WifiMacHelper objects</b>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2489
<p>The type of wifi MAC is now set by two new specific helpers, NqosWifiMacHelper for non QoS MACs and QosWifiMacHelper for Qos MACs. They are passed as argument to WifiHelper::Install methods.</li>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2490
  <pre>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2491
- void WifiHelper::SetMac (std::string type, std::string n0 = "", const AttributeValue &amp;v0 = EmptyAttributeValue (),...)
4413
4726838efe7c Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents: 4385
diff changeset
  2492
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2493
- NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &amp;phyHelper, NodeContainer c) const
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2494
+ NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &amp;phyHelper, const WifiMacHelper &amp;macHelper, NodeContainer c) const
4413
4726838efe7c Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents: 4385
diff changeset
  2495
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2496
- NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &amp;phy, Ptr&lt;Node&gt; node) const
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2497
+ NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &amp;phy, const WifiMacHelper &amp;mac, Ptr&lt;Node&gt; node) const
4413
4726838efe7c Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents: 4385
diff changeset
  2498
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2499
- NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &amp;phy, std::string nodeName) const
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2500
+ NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &amp;phy, const WifiMacHelper &amp;mac, std::string nodeName) const
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2501
  </pre>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2502
  See src/helper/nqos-wifi-mac-helper.h and src/helper/qos-wifi-mac-helper.h for more details.
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2503
  </p>
4413
4726838efe7c Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents: 4385
diff changeset
  2504
4426
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2505
<li><b>Remove Mac48Address::IsMulticast</b>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2506
  <p>This method was considered buggy and unsafe to call. Its replacement is Mac48Address::IsGroup.
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2507
  </li>
c8dd5497e809 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 4413
diff changeset
  2508
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2509
</ul>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2510
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2511
<h2>Changed behavior:</h2>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2512
<ul>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2513
</ul>
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2514
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2515
<hr>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2516
<h1>Changes from ns-3.3 to ns-3.4</h1>
4260
29587ce02a57 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3982
diff changeset
  2517
4385
1114152c44dd update CHANGES.html
Tom Henderson <tomh@tomh.org>
parents: 4305
diff changeset
  2518
<h2>Changes to build system:</h2>
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2519
<ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2520
<li>A major option regarding the downloading and building of ns-3 has been
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2521
added for ns-3.4 -- the ns-3-allinone feature.  This allows a user to
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2522
get the most common options for ns-3 downloaded and built with a minimum
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2523
amount of trouble.  See the ns-3 tutorial for a detailed explanation of
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2524
how to use this new feature.</li>
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2525
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2526
<li>The build system now runs build items in parallel by default.  This includes
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2527
the regression tests.</li>
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2528
</ul>
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2529
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2530
<h2>New API:</h2>
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2531
<ul>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2532
<li>XML support has been added to the ConfigStore in src/contrib/config-store.cc</li>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2533
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2534
<li>The ns-2 calendar queue scheduler option has been ported to src/simulator</li>
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2535
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2536
<li>A ThreeLogDistancePropagationLossModel has been added to src/devices/wifi</li>
4260
29587ce02a57 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3982
diff changeset
  2537
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2538
<li>ConstantAccelerationMobilityModel in src/mobility/constant-acceleration-mobility-model.h</li>
4266
7b0c4017bc36 Update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 4260
diff changeset
  2539
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2540
<li>A new emulation mode is supported with the TapBridge net device (see
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2541
src/devices/tap-bridge)</li>
4266
7b0c4017bc36 Update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 4260
diff changeset
  2542
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2543
<li>A new facility for naming ns-3 Objects is included (see
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2544
src/core/names.{cc,h})</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2545
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2546
<li>Wifi multicast support has been added in src/devices/wifi</li>
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2547
</ul>
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2548
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2549
<h2>Changes to existing API:</h2>
4266
7b0c4017bc36 Update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 4260
diff changeset
  2550
7b0c4017bc36 Update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 4260
diff changeset
  2551
<ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2552
<li>Some fairly significant changes have been made to the API of the
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2553
random variable code.  Please see the ns-3 manual and src/core/random-variable.cc
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2554
for details.</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2555
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2556
<li>The trace sources in the various NetDevice classes has been completely
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2557
reworked to allow for a consistent set of trace sources across the
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2558
devices.  The names of the trace sources have been changed to provide
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2559
some context with respect to the level at which the trace occurred.
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2560
A new set of trace sources has been added which emulates the behavior
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2561
of packet sniffers.  These sources have been used to implement tcpdump-
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2562
like functionality and are plumbed up into the helper classes.  The 
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2563
user-visible changes are the trace source name changes and the ability
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2564
to do promiscuous-mode pcap tracing via helpers.  For further information
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2565
regarding these changes, please see the ns-3 manual</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2566
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2567
<li>StaticMobilityModel has been renamed ConstantPositionMobilityModel
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2568
StaticSpeedMobilityModel has been renamed ConstantVelocityMobilityModel</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2569
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2570
<li>The Callback templates have been extended to support more parameters.
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2571
See src/core/callback.h</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2572
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2573
<li>Many helper API have been changed to allow passing Object-based parameters
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2574
as string names to ease working with the object name service.</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2575
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2576
<li>The Config APIs now accept path segments that are names defined by the
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2577
object name service.</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2578
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2579
<li>Minor changes were made to make the system build under the Intel C++ compiler.</li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2580
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2581
<li>Trace hooks for association and deassociation to/from an access point were
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2582
added to src/devices/wifi/nqsta-wifi-mac.cc</li>
4260
29587ce02a57 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3982
diff changeset
  2583
</ul>
29587ce02a57 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3982
diff changeset
  2584
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2585
<h2>Changed behavior:</h2>
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2586
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2587
<ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2588
<li>The tracing system rework has introduced some significant changes in the
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2589
behavior of some trace sources, specifically in the positioning of trace sources
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2590
in the device code.  For example, there were cases where the packet transmit 
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2591
trace source was hit before the packet was enqueued on the device transmit quueue.
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2592
This now happens just before the packet is transmitted over the channel medium.
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2593
The scope of the changes is too large to be included here.  If you have concerns
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2594
regarding trace semantics, please consult the net device documentation for details.
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2595
As is usual, the ultimate source for documentation is the net device source code.</li>
4301
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2596
</ul>
f1c83e54e541 Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents: 4266
diff changeset
  2597
4260
29587ce02a57 update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3982
diff changeset
  2598
<hr>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2599
<h1>Changes from ns-3.2 to ns-3.3</h1>
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2600
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2601
<h2>New API:</h2>
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2602
<ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2603
<li>
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2604
ns-3 ABORT macros in src/core/abort.h
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2605
Config::MatchContainer
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2606
ConstCast and DynamicCast helper functions for Ptr casting
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2607
StarTopology added to several topology helpers
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2608
NetDevice::IsBridge () 
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2609
</li>
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2610
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2611
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2612
<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
  2613
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2614
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2615
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
  2616
made public.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2617
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2618
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2619
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2620
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2621
<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
  2622
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2623
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2624
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
  2625
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
  2626
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2627
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2628
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2629
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2630
<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
  2631
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2632
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2633
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
  2634
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
  2635
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2636
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2637
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2638
</ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2639
<h2>Changes to existing API:</h2>
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2640
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2641
3982
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2642
<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
  2643
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
  2644
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2645
<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
  2646
<ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2647
<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
  2648
<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
  2649
</ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2650
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2651
<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
  2652
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
  2653
<ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2654
<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
  2655
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
  2656
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
  2657
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
  2658
<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
  2659
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
  2660
<ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2661
<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
  2662
<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
  2663
<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
  2664
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
  2665
<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
  2666
<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
  2667
<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
  2668
<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
  2669
<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
  2670
<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
  2671
</ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2672
</ul>
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2673
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2674
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2675
<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
  2676
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2677
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2678
Change attribute "RxErrorModel" to "ReceiveErrorModel" in CsmaNetDevice for 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2679
consistency between devices.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2680
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2681
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2682
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2683
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2684
<h2>changed behavior:</h2>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2685
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2686
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2687
<li>17-11-2008; changeset 
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2688
<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
  2689
<ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2690
<li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2691
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
  2692
assignment of /32 addresses.
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2693
</li>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2694
</ul>
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2695
3949
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
  2696
<li>17-11-2008; changeset 
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
  2697
<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
  2698
<ul>
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
  2699
<li>
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
  2700
Global routing supports bridge devices.
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
  2701
</li>
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
  2702
</ul>
3982
4f370a1b637c add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents: 3949
diff changeset
  2703
</ul>
3949
016c554c4f6d CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents: 3865
diff changeset
  2704
3865
6647bcafbf3f overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3686
diff changeset
  2705
<hr>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2706
<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
  2707
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2708
<h2>New API:</h2>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2709
<ul>
3593
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2710
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2711
<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
  2712
<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
  2713
<ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2714
<li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2715
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
  2716
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
  2717
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
  2718
</li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2719
</ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2720
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2721
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2722
<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
  2723
<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
  2724
<ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2725
<li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2726
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
  2727
multithreaded simulator implementation.
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2728
</li>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2729
</ul>
dfd634417b8d update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3551
diff changeset
  2730
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2731
</ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2732
<h2>New API in existing classes:</h2>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2733
<ul>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2734
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2735
<li>01-08-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2736
<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
  2737
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2738
<li>class ArpCache has two new attributes:  MaxRetries 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2739
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
  2740
mostly for internal use.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2741
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2742
</li>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2743
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2744
</ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2745
<h2>Changes to existing API:</h2>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2746
<ul>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2747
3667
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
  2748
<li>05-09-2008; changeset 
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
  2749
<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
  2750
<ul>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
  2751
<li>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
  2752
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
  2753
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
  2754
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
  2755
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
  2756
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
  2757
PointToPointNetDevice::SetFrameSize for a detailed description.
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
  2758
</li>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
  2759
</ul>
ba90a28f8c59 prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents: 3645
diff changeset
  2760
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2761
<li>25-08-2008; changeset 
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2762
<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
  2763
<ul>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2764
<li>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2765
bug 273: constify packet pointers.<br>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2766
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
  2767
have been changed from:
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2768
<pre>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2769
Callback&lt;bool,Ptr&lt;NetDevice&gt;,Ptr&lt;Packet&gt;,uint16_t,const Address &amp;&gt;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2770
Callback&lt;bool,Ptr&lt;NetDevice&gt;, Ptr&lt;Packet&gt;, uint16_t,
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2771
         const Address &amp;, const Address &amp;, enum PacketType &gt;
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2772
</pre>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2773
to:
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2774
<pre>
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2775
Callback&lt;bool,Ptr&lt;NetDevice&gt;,Ptr&lt;const Packet&gt;,uint16_t,const Address &amp;&gt;
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2776
Callback&lt;bool,Ptr&lt;NetDevice&gt;, Ptr&lt;const Packet&gt;, uint16_t,
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2777
         const Address &amp;, const Address &amp;, enum PacketType &gt;
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2778
</pre>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2779
to avoid the kind of bugs reported in 
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2780
<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
  2781
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
  2782
of their SetReceiveCallback and SetPromiscReceiveCallback methods.
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2783
</li>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2784
</ul>
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2785
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2786
3508
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
  2787
<li>04-08-2008; changeset 
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
  2788
<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
  2789
<ul>
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
  2790
<li>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2791
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
  2792
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
  2793
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
  2794
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
  2795
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
  2796
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
  2797
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
  2798
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
  2799
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
  2800
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
  2801
issues and solution.
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
  2802
</li>
7a3c6148c22d actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents: 3505
diff changeset
  2803
</ul>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2804
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2805
<li>21-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2806
<a href="
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2807
http://code.nsnam.org/ns-3-dev/rev/99698bc858e8">99698bc858e8</a></li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2808
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2809
<li> class NetDevice has added a pure virtual method that
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2810
must be implemented by all subclasses:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2811
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2812
virtual void SetPromiscReceiveCallback (PromiscReceiveCallback cb) = 0;
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2813
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2814
All NetDevices must support this method, and must call this callback
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2815
when processing packets in the receive direction (the appropriate place
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2816
to call this is device-dependent).  An approach to stub this out
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2817
temporarily, if you do not care about immediately enabling this
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2818
functionality, would be to add this to your device:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2819
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2820
void
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2821
ExampleNetDevice::SetPromiscReceiveCallback
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2822
(NetDevice::PromiscReceiveCallback cb)
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2823
{ 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2824
  NS_ASSERT_MSG (false, "No implementation yet for
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2825
SetPromiscReceiveCallback");
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2826
}
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2827
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2828
To implement this properly, consult the CsmaNetDevice for examples of
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2829
when the m_promiscRxCallback is called.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2830
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2831
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2832
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2833
<li>03-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2834
<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
  2835
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2836
<li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2837
Miscellaneous cleanup of Udp Helper API, to fix bug 234
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2838
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2839
class UdpEchoServerHelper
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2840
{
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2841
public:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2842
- UdpEchoServerHelper ();
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2843
- void SetPort (uint16_t port); 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2844
+ UdpEchoServerHelper (uint16_t port);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2845
+ 
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2846
+ void SetAttribute (std::string name, const AttributeValue &amp;value);
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2847
ApplicationContainer Install (NodeContainer c);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2848
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2849
class UdpEchoClientHelper
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2850
{
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2851
public:
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2852
- UdpEchoClientHelper ();
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2853
+ UdpEchoClientHelper (Ipv4Address ip, uint16_t port);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2854
- void SetRemote (Ipv4Address ip, uint16_t port);
4639
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2855
- void SetAppAttribute (std::string name, const AttributeValue &amp;value);
34e6d141c227 escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents: 4629
diff changeset
  2856
+ void SetAttribute (std::string name, const AttributeValue &amp;value);
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2857
ApplicationContainer Install (NodeContainer c);
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2858
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2859
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2860
</ul>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2861
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2862
<li>03-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2863
<a href="
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2864
http://code.nsnam.org/ns-3-dev/rev/3cdd9d60f7c7">3cdd9d60f7c7</a></li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2865
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2866
<li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2867
Rename all instances method names using "Set..Parameter" to "Set..Attribute"
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2868
(bug 232)
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2869
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2870
<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
  2871
"Set...Parameter()" should be changed to read "Set...Attribute()".  e.g.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2872
<pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2873
- csma.SetChannelParameter ("DataRate", DataRateValue (5000000));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2874
- csma.SetChannelParameter ("Delay", TimeValue (MilliSeconds (2)));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2875
+ csma.SetChannelAttribute ("DataRate", DataRateValue (5000000));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2876
+ csma.SetChannelAttribute ("Delay", TimeValue (MilliSeconds (2)));
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2877
</pre>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2878
</li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2879
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2880
</li>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2881
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2882
</ul>
4305
9ec113d84cc8 prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents: 4301
diff changeset
  2883
<h2>Changed behavior:</h2>
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2884
<ul>
3645
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2885
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2886
<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
  2887
<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
  2888
<ul>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2889
3645
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2890
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2891
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
  2892
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
  2893
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
  2894
<ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2895
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2896
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
  2897
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2898
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2899
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
  2900
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
  2901
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
  2902
window
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2903
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2904
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2905
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
  2906
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
  2907
buffer.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2908
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2909
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2910
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
  2911
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
  2912
it sends probe packets with one payload byte at exponentially backed-off
6273
8d70de29d514 spell check, mostly in comments.
Andrey Mazo <mazo@iitp.ru>
parents: 6184
diff changeset
  2913
intervals up to 60s.  The receiver will continue to send advertised 
3645
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2914
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
  2915
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
  2916
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
  2917
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2918
</ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2919
See 
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2920
<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
  2921
more.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2922
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2923
</ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2924
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2925
<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
  2926
<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
  2927
<ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2928
<li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2929
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
  2930
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
  2931
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
  2932
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
  2933
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
  2934
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
  2935
<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
  2936
more.
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2937
</li>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2938
</ul>
5a0182408867 Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents: 3593
diff changeset
  2939
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2940
<li> 28-07-2008; changeset 
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2941
<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
  2942
<ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2943
<li>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2944
OLSR: HELLO messages hold time changed to 3*hello
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2945
interval from hello interval.  This is an important bug fix as
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2946
hold time == refresh time was never intentional, as it leads to
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2947
instability in neighbor detection.
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2948
</ul>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2949
</li>
3686
9e2dde61057c fix formatting
Tom Henderson <tomh@tomh.org>
parents: 3667
diff changeset
  2950
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2951
</ul>
3551
fbf628eb3ca6 document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 3508
diff changeset
  2952
3505
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2953
</body>
16005bad2e0b Add CHANGES.html
Tom Henderson <tomh@tomh.org>
parents:
diff changeset
  2954
</html>