author | Gustavo J. A. M. Carneiro <gjc@inescporto.pt> |
Tue, 10 Aug 2010 10:55:05 +0100 | |
changeset 6540 | d2768932d6c3 |
parent 6529 | dd982eaf6026 |
child 6557 | 970e1627b308 |
permissions | -rw-r--r-- |
3505 | 1 |
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> |
2 |
<html> |
|
3 |
<head> |
|
4 |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
5 |
<title>ns-3 Change Log</title> |
|
6 |
</head> |
|
7 |
<body> |
|
8 |
||
9 |
<h1> |
|
10 |
ns-3: API and model change history</h1> |
|
11 |
<!-- |
|
12 |
This ChangeLog is updated in the reverse order |
|
13 |
with the most recent changes coming first. Date format: DD-MM-YYYY |
|
14 |
--> |
|
15 |
<p> |
|
16 |
ns-3 is an evolving system and there will be API or behavioral changes |
|
17 |
from time to time. Users who try to use scripts or models across |
|
18 |
versions of ns-3 may encounter problems at compile time, run time, or |
|
19 |
may see the simulation output change. </p> |
|
20 |
<p> |
|
21 |
We have adopted the development policy that we are going to try to ease |
|
22 |
the impact of these changes on users by documenting these changes in a |
|
23 |
single place (this file), and not by providing a temporary or permanent |
|
24 |
backward-compatibility software layer. </p> |
|
25 |
<p> |
|
26 |
The goal is that users who encounter a problem when trying to use older |
|
27 |
code with newer code should be able to consult this file to find |
|
28 |
guidance as to how to fix the problem. For instance, if a method name |
|
29 |
or signature has changed, it should be stated what the new replacement |
|
30 |
name is. </p> |
|
31 |
<p> |
|
32 |
Note that users who upgrade the simulator across versions, or who work |
|
33 |
directly out of the development tree, may find that simulation output |
|
34 |
changes even when the compilation doesn't break, such as when a |
|
35 |
simulator default value is changed. Therefore, it is good practice for |
|
36 |
_anyone_ using code across multiple ns-3 releases to consult this file, |
|
37 |
as well as the RELEASE_NOTES, to understand what has changed over time. |
|
38 |
</p> |
|
39 |
<p> |
|
40 |
This file is a best-effort approach to solving this issue; we will do |
|
41 |
our best but can guarantee that there will be things that fall through |
|
42 |
the cracks, unfortunately. If you, as a user, can suggest improvements |
|
43 |
to this file based on your experience, please contribute a patch or drop |
|
44 |
us a note on ns-developers mailing list. </p> |
|
45 |
||
46 |
<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
|
47 |
<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
|
48 |
|
bd1da3a75496
bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents:
6273
diff
changeset
|
49 |
<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
|
50 |
|
bd1da3a75496
bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents:
6273
diff
changeset
|
51 |
<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
|
52 |
<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
|
53 |
<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
|
54 |
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
|
55 |
<pre> |
283c83f1f7be
Update RELEASE_NOTES and CHANGES.html since ns-3.8
Tom Henderson <tomh@tomh.org>
parents:
6300
diff
changeset
|
56 |
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
|
57 |
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
|
58 |
</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
|
59 |
</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
|
60 |
<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
|
61 |
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
|
62 |
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
|
63 |
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
|
64 |
</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
|
65 |
<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
|
66 |
"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
|
67 |
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
|
68 |
</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
|
69 |
<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
|
70 |
easily handle comparison, subtraction, etc. for sequence numbers. |
dd982eaf6026
release notes and changes updates
Josh Pelkey <jpelkey@gatech.edu>
parents:
6459
diff
changeset
|
71 |
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
|
72 |
NUMERIC_TYPE and SIGNED_TYPE. For instance, <tt>SequenceNumber<uint32_t, int32_t></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
|
73 |
gives you a 32-bit sequence number, while <tt>SequenceNumber<uint16_t, int16_t></tt> |
6529
dd982eaf6026
release notes and changes updates
Josh Pelkey <jpelkey@gatech.edu>
parents:
6459
diff
changeset
|
74 |
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
|
75 |
<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
|
76 |
</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
|
77 |
|
d2768932d6c3
Add SO_BROADCAST to CHANGES.html, fix the html a bit
Gustavo J. A. M. Carneiro <gjc@inescporto.pt>
parents:
6529
diff
changeset
|
78 |
<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
|
79 |
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
|
80 |
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
|
81 |
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
|
82 |
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
|
83 |
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
|
84 |
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
|
85 |
</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
|
86 |
|
6529
dd982eaf6026
release notes and changes updates
Josh Pelkey <jpelkey@gatech.edu>
parents:
6459
diff
changeset
|
87 |
</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
|
88 |
|
bd1da3a75496
bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents:
6273
diff
changeset
|
89 |
<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
|
90 |
|
6360
d8975477ff6a
Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents:
6317
diff
changeset
|
91 |
<ul> |
d8975477ff6a
Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents:
6317
diff
changeset
|
92 |
<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
|
93 |
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
|
94 |
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
|
95 |
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
|
96 |
Bug 871. |
d8975477ff6a
Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents:
6317
diff
changeset
|
97 |
|
d8975477ff6a
Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents:
6317
diff
changeset
|
98 |
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
|
99 |
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
|
100 |
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
|
101 |
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
|
102 |
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
|
103 |
(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
|
104 |
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
|
105 |
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
|
106 |
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
|
107 |
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
|
108 |
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
|
109 |
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
|
110 |
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
|
111 |
|
4dc3cdb53559
Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents:
6360
diff
changeset
|
112 |
<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
|
113 |
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
|
114 |
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
|
115 |
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
|
116 |
the base classes (WifiInformationElement and |
4dc3cdb53559
Bug 881: Update RELEASE_NOTES and CHANGES.html
Dean Armstrong <deanarm@gmail.com>
parents:
6360
diff
changeset
|
117 |
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
|
118 |
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
|
119 |
further Wi-Fi functionality. </li> |
6360
d8975477ff6a
Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents:
6317
diff
changeset
|
120 |
</ul> |
d8975477ff6a
Bug 871: Rework construction of Wi-Fi rates
Dean Armstrong <deanarm@gmail.com>
parents:
6317
diff
changeset
|
121 |
|
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
|
122 |
<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
|
123 |
<ul> |
6308
2ca5ef07be74
update CHANGES.html for Queue::Enqueue trace behavior change
Craig Dowell <craigdo@ee.washington.edu>
parents:
6306
diff
changeset
|
124 |
<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
|
125 |
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
|
126 |
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
|
127 |
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
|
128 |
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
|
129 |
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
|
130 |
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
|
131 |
|
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
|
132 |
<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
|
133 |
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
|
134 |
|
d5cfe99001f0
Change default OFDM error rate model to NistErrorRateModel (issue 944)
Tom Henderson <tomh@tomh.org>
parents:
6383
diff
changeset
|
135 |
<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
|
136 |
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
|
137 |
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
|
138 |
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
|
139 |
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
|
140 |
</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
|
141 |
|
bd1da3a75496
bug 861: Log drop traces for forwarding failures into IPv4 and IPv6 ascii traces
Tom Henderson <tomh@tomh.org>
parents:
6273
diff
changeset
|
142 |
<hr> |
5933
2fc170de5400
Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents:
5868
diff
changeset
|
143 |
<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
|
144 |
|
2fc170de5400
Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents:
5868
diff
changeset
|
145 |
<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
|
146 |
|
2fc170de5400
Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents:
5868
diff
changeset
|
147 |
<h2>New API:</h2> |
6113
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
148 |
|
6111
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
149 |
<ul> |
6117
bf5e05fe051b
Changes and release notes updated
Pavel Boyko <boyko@iitp.ru>
parents:
6113
diff
changeset
|
150 |
<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
|
151 |
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
|
152 |
|
6111
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
153 |
<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
|
154 |
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
|
155 |
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
|
156 |
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
|
157 |
The model is mainly composed of three layers: |
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
158 |
<ul> |
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
159 |
<li>The convergence sublayer (CS) |
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
160 |
<li>The MAC Common Part Sublayer (MAC-CPS) |
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
161 |
<li>The Physical layer |
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
162 |
</ul> |
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
163 |
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
|
164 |
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
|
165 |
the publicly visible attributes of the model. |
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
166 |
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
|
167 |
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
|
168 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
169 |
<li><b>MPI Interface for distributed simulation:</b> Enables access |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
170 |
to necessary MPI information such as MPI rank and size. |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
171 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
172 |
<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
|
173 |
connection between net-devices on different simulators, for use |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
174 |
with distributed simulation. |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
175 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
176 |
<li><b>GetSystemId in simulator:</b> For use with distributed |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
177 |
simulation, GetSystemId returns zero by non-distributed |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
178 |
simulators. For the distributed simulator, it returns the |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
179 |
MPI rank. |
6165
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
180 |
|
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
181 |
<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
|
182 |
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
|
183 |
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
|
184 |
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
|
185 |
|
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
186 |
<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
|
187 |
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
|
188 |
will affect ALL stations |
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
189 |
|
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
190 |
<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
|
191 |
<pre> |
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
192 |
ParetoVariable (std::pair<double, double> params); |
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
193 |
ParetoVariable (std::pair<double, double> params, double b); |
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
194 |
</pre> |
6111
0b22ae082153
Merge WiMAX module
Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
parents:
6054
diff
changeset
|
195 |
</ul> |
6113
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
196 |
|
5933
2fc170de5400
Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents:
5868
diff
changeset
|
197 |
<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
|
198 |
<ul> |
6018
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
199 |
<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
|
200 |
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
|
201 |
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
|
202 |
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
|
203 |
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
|
204 |
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
|
205 |
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
|
206 |
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
|
207 |
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
|
208 |
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
|
209 |
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
|
210 |
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
|
211 |
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
|
212 |
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
|
213 |
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
|
214 |
been developed to hold streams for ascii traces.<br> |
6032
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
215 |
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
|
216 |
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
|
217 |
files.<br> |
6018
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
218 |
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
|
219 |
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
|
220 |
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
|
221 |
Before: |
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
222 |
<pre> |
6032
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
223 |
CsmaHelper::EnablePcapAll (); |
5933
2fc170de5400
Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents:
5868
diff
changeset
|
224 |
|
6032
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
225 |
std::ofstream ascii; |
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
226 |
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
|
227 |
CsmaHelper::EnableAsciiAll (ascii); |
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
228 |
|
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
229 |
InternetStackHelper::EnableAsciiAll (ascii); |
6018
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
230 |
</pre> |
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
231 |
After: |
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
232 |
<pre> |
6032
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
233 |
CsmaHelper csmaHelper; |
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
234 |
InternetStackHelper stack; |
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
235 |
csmaHelper.EnablePcapAll (); |
6018
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
236 |
|
6032
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
237 |
AsciiTraceHelper ascii; |
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
238 |
csma.EnableAsciiAll (ascii.CreateFileStream ("csma-one-subnet.tr")); |
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
239 |
|
a31949e0f1ed
update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
6018
diff
changeset
|
240 |
stack.EnableAsciiIpv4All (stream); |
6018
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
241 |
</pre> |
92c388406dbe
update CHANGES ns-3.7 to ns-3.8
Craig Dowell <craigdo@ee.washington.edu>
parents:
5868
diff
changeset
|
242 |
|
5933
2fc170de5400
Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents:
5868
diff
changeset
|
243 |
|
6113
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
244 |
<li><b>Serialization and Deserialization</b> in buffer, nix-vector, |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
245 |
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
|
246 |
buffers, rather than the Buffer class |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
247 |
<pre> |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
248 |
+ uint32_t Buffer::GetSerializedSize (void) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
249 |
+ 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
|
250 |
+ uint32_t Buffer::Deserialize (uint8_t* buffer, uint32_t size); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
251 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
252 |
- void NixVector::Serialize (Buffer::Iterator i, uint32_t size) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
253 |
+ 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
|
254 |
- uint32_t NixVector::Deserialize (Buffer::Iterator i); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
255 |
+ uint32_t NixVector::Deserialize (uint32_t* buffer, uint32_t size); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
256 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
257 |
- void PacketMetadata::Serialize (Buffer::Iterator i, uint32_t size) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
258 |
+ 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
|
259 |
- uint32_t PacketMetadata::Deserialize (Buffer::Iterator i); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
260 |
+ uint32_t PacketMetadata::Deserialize (uint8_t* buffer, uint32_t size); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
261 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
262 |
+ uint32_t Packet::GetSerializedSize (void) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
263 |
- Buffer Packet::Serialize (void) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
264 |
+ 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
|
265 |
- void Packet::Deserialize (Buffer buffer); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
266 |
+ 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
|
267 |
</pre> |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
268 |
<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
|
269 |
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
|
270 |
for distributed simulations. For non-distributed simulations, the |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
271 |
upper 32 bits are simply zero. |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
272 |
<pre> |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
273 |
- inline PacketMetadata (uint32_t uid, uint32_t size); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
274 |
+ inline PacketMetadata (uint64_t uid, uint32_t size); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
275 |
- uint32_t GetUid (void) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
276 |
+ uint64_t GetUid (void) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
277 |
- PacketMetadata::PacketMetadata (uint32_t uid, uint32_t size); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
278 |
+ PacketMetadata::PacketMetadata (uint64_t uid, uint32_t size); |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
279 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
280 |
- uint32_t Packet::GetUid (void) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
281 |
+ uint64_t Packet::GetUid (void) const; |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
282 |
</pre> |
6165
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
283 |
|
55762ca33a99
update CHANGES and RELEASE_NOTES
Josh Pelkey <jpelkey@gatech.edu>
parents:
6117
diff
changeset
|
284 |
<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
|
285 |
|
3bb39c179947
update CHANGES.html for Mtu move
Tom Henderson <tomh@tomh.org>
parents:
6165
diff
changeset
|
286 |
<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
|
287 |
now found in all NetDevice subclasses. |
6113
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
288 |
</ul> |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
289 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
290 |
<h2>Changed behavior:</h2> |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
291 |
<ul> |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
292 |
|
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
293 |
</ul> |
0ce37bf4f1c1
Merge distributed simulation code
Josh Pelkey <jpelkey@gatech.edu>
parents:
6111
diff
changeset
|
294 |
|
5933
2fc170de5400
Update release notes and changes for ns-3.8
Josh Pelkey <jpelkey@gatech.edu>
parents:
5868
diff
changeset
|
295 |
<hr> |
5497
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
296 |
<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
|
297 |
|
5526
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
298 |
|
5497
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
299 |
<h2>Changes to build system:</h2> |
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
300 |
|
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
301 |
<h2>New API:</h2> |
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
302 |
|
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
303 |
<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
|
304 |
<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
|
305 |
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
|
306 |
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
|
307 |
<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
|
308 |
socket option has been introduced to class Socket: <pre>virtual void Socket::BindToNetDevice (Ptr<NetDevice> netdevice);</pre> |
5526
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
309 |
<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
|
310 |
'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
|
311 |
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
|
312 |
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
|
313 |
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
|
314 |
<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
|
315 |
can override this virtual method, perform their adhoc setup, and then, must chain up to their parent. |
5990 | 316 |
<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
|
317 |
<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
|
318 |
<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
|
319 |
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
|
320 |
|
5814
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
321 |
<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
|
322 |
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
|
323 |
|
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
324 |
<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
|
325 |
PointToPointDumbbellHelper, PointToPointGridHelper, and CsmaStarHelper.</li> |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
326 |
|
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
327 |
<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
|
328 |
and loose routing) are available.</li> |
5497
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
329 |
</ul> |
d8b1b591839b
Document changes to YansWifiPhy defaults
Tom Henderson <tomh@tomh.org>
parents:
5407
diff
changeset
|
330 |
|
5507
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
331 |
<h2>Changes to existing API:</h2> |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
332 |
<ul> |
5856
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
333 |
<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
|
334 |
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
|
335 |
subclasses of Ipv4RoutingProtocol. |
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
336 |
<pre> |
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
337 |
- virtual Ptr<Ipv4Route> RouteOutput (Ptr<Packet> 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
|
338 |
+ virtual Ptr<Ipv4Route> RouteOutput (Ptr<Packet> p, const Ipv4Header &header, Ptr<NetDevice> oif, Socket::SocketErrno &sockerr) = 0; |
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
339 |
</pre> |
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
340 |
<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
|
341 |
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
|
342 |
subclasses of Ipv6RoutingProtocol. |
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
343 |
<pre> |
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
344 |
- virtual Ptr<Ipv6Route> RouteOutput (Ptr<Packet> 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
|
345 |
+ virtual Ptr<Ipv6Route> RouteOutput (Ptr<Packet> p, const Ipv6Header &header, Ptr<NetDevice> oif, Socket::SocketErrno &sockerr) = 0; |
7fd20c798a7d
bug 742: Implementation of SO_BINDTODEVICE
Antti M?kel? <zarhan@cc.hut.fi>
parents:
5817
diff
changeset
|
346 |
</pre> |
5526
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
347 |
<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
|
348 |
<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
|
349 |
<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
|
350 |
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
|
351 |
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
|
352 |
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
|
353 |
For example, before: |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
354 |
<pre> |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
355 |
void |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
356 |
SimpleChannel::Send (Ptr<Packet> p, uint16_t protocol, |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
357 |
Mac48Address to, Mac48Address from, |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
358 |
Ptr<SimpleNetDevice> sender) |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
359 |
{ |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
360 |
for (std::vector<Ptr<SimpleNetDevice> >::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
|
361 |
{ |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
362 |
Ptr<SimpleNetDevice> tmp = *i; |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
363 |
if (tmp == sender) |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
364 |
{ |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
365 |
continue; |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
366 |
} |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
367 |
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
|
368 |
} |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
369 |
} |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
370 |
</pre> |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
371 |
After: |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
372 |
<pre> |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
373 |
void |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
374 |
SimpleChannel::Send (Ptr<Packet> p, uint16_t protocol, |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
375 |
Mac48Address to, Mac48Address from, |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
376 |
Ptr<SimpleNetDevice> sender) |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
377 |
{ |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
378 |
for (std::vector<Ptr<SimpleNetDevice> >::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
|
379 |
{ |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
380 |
Ptr<SimpleNetDevice> tmp = *i; |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
381 |
if (tmp == sender) |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
382 |
{ |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
383 |
continue; |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
384 |
} |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
385 |
Simulator::ScheduleWithContext (tmp->GetNode ()->GetId (), Seconds (0), |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
386 |
&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
|
387 |
} |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
388 |
} |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
389 |
</pre> |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
390 |
|
5507
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
391 |
<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
|
392 |
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
|
393 |
updated to use this new method.<br> |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
394 |
Before: |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
395 |
<pre> |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
396 |
Ptr<Scheduler> sched = CreateObject<ListScheduler> (); |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
397 |
Simulator::SetScheduler (sched); |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
398 |
</pre> |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
399 |
After: |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
400 |
<pre> |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
401 |
ObjectFactory sched; |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
402 |
sched.SetTypeId ("ns3::ListScheduler"); |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
403 |
Simulator::SetScheduler (sched); |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
404 |
</pre> |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
405 |
|
5742
19c79550b371
CHANGES.html, AUTHORS and RELEASE_NOTES updated after AODV merge
Pavel Boyko <boyko@iitp.ru>
parents:
5532
diff
changeset
|
406 |
<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
|
407 |
sizes and time intervals (via new attributes) |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
408 |
|
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
409 |
<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
|
410 |
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
|
411 |
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
|
412 |
different topology helper classes now exist including PointToPointStarHelper, PointToPointGridHelper, |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
413 |
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
|
414 |
point-to-point star network:<br> |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
415 |
Before: |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
416 |
<pre> |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
417 |
NodeContainer hubNode; |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
418 |
NodeContainer spokeNodes; |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
419 |
hubNode.Create (1); |
5868
ed1e2ad4c0b9
Fix angle braces in CHANGES.html.
Andrey Mazo <mazo@iitp.ru>
parents:
5858
diff
changeset
|
420 |
Ptr<Node> hub = hubNode.Get (0); |
5814
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
421 |
spokeNodes.Create (nNodes - 1); |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
422 |
|
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
423 |
PointToPointHelper pointToPoint; |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
424 |
pointToPoint.SetDeviceAttribute ("DataRate", StringValue ("5Mbps")); |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
425 |
pointToPoint.SetChannelAttribute ("Delay", StringValue ("2ms")); |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
426 |
NetDeviceContainer hubDevices, spokeDevices; |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
427 |
pointToPoint.InstallStar (hubNode.Get (0), spokeNodes, hubDevices, spokeDevices); |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
428 |
</pre> |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
429 |
After: |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
430 |
<pre> |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
431 |
PointToPointHelper pointToPoint; |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
432 |
pointToPoint.SetDeviceAttribute ("DataRate", StringValue ("5Mbps")); |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
433 |
pointToPoint.SetChannelAttribute ("Delay", StringValue ("2ms")); |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
434 |
PointToPointStarHelper star (nSpokes, pointToPoint); |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
435 |
</pre> |
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
436 |
|
5214623658f2
Update CHANGES.html.
Sebastien Vincent <sebastien.vincent@turnserver.org>
parents:
5812
diff
changeset
|
437 |
</li> |
5742
19c79550b371
CHANGES.html, AUTHORS and RELEASE_NOTES updated after AODV merge
Pavel Boyko <boyko@iitp.ru>
parents:
5532
diff
changeset
|
438 |
|
5507
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
439 |
</ul> |
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
440 |
|
5526
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
441 |
<h2>Changed behavior:</h2> |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
442 |
<ul> |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
443 |
<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
|
444 |
-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
|
445 |
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
|
446 |
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
|
447 |
here</a>. |
5817
87aaf687f869
updated CHANGES.html after fixing bug 695
Kirill Andreev <andreev@iitp.ru>
parents:
5814
diff
changeset
|
448 |
</li> |
87aaf687f869
updated CHANGES.html after fixing bug 695
Kirill Andreev <andreev@iitp.ru>
parents:
5814
diff
changeset
|
449 |
<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
|
450 |
<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
|
451 |
See bug 695.</a></li> |
5526
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
452 |
</ul> |
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
453 |
|
d70ac1951ae4
document API changes for release
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
5507
diff
changeset
|
454 |
|
5507
915abd2b907b
Simulator::SetScheduler now takes an ObjectFactory
Guillaume Seguin <guillaume@segu.in>
parents:
5497
diff
changeset
|
455 |
<hr> |
4681
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
456 |
<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
|
457 |
|
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
458 |
<h2>Changes to build system:</h2> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
459 |
<ul> |
5407
4ad0d23af431
update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents:
5224
diff
changeset
|
460 |
<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
|
461 |
<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
|
462 |
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
|
463 |
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
|
464 |
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
|
465 |
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
|
466 |
</p> |
4681
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
467 |
</ul> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
468 |
|
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
469 |
<h2>New API:</h2> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
470 |
<ul> |
4761
8c0b3a413f4b
Add metric and longest prefix match support for IPv6.
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4747
diff
changeset
|
471 |
<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
|
472 |
<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
|
473 |
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
|
474 |
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
|
475 |
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
|
476 |
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
|
477 |
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
|
478 |
</p> |
3dc675bb8b20
Static routing with support for metrics and longest prefix match
Antti Makela <zarhan@cc.hut.fi>
parents:
4745
diff
changeset
|
479 |
</li> |
4745
a0e27af57c8d
Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents:
4735
diff
changeset
|
480 |
<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
|
481 |
<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
|
482 |
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
|
483 |
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
|
484 |
</p> |
a0e27af57c8d
Allow injection of routes to Ipv4GlobalRouting
Antti Makela <zarhan@cc.hut.fi>
parents:
4735
diff
changeset
|
485 |
</li> |
5184 | 486 |
|
4735 | 487 |
<li><b>Athstats</b> |
488 |
<p>New classes AthstatsWifiTraceSink and AthstatsHelper. |
|
489 |
</p> |
|
490 |
</li> |
|
491 |
<li><b>WifiRemoteStationManager </b> |
|
492 |
<p>New trace sources exported by WifiRemoteStationManager: MacTxRtsFailed, MacTxDataFailed, MacTxFinalRtsFailed and MacTxFinalDataFailed. |
|
493 |
</p> |
|
494 |
</li> |
|
5184 | 495 |
|
4731
510db8599bfb
second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4681
diff
changeset
|
496 |
<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
|
497 |
<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
|
498 |
<ul> |
510db8599bfb
second phase of IPv6 checkins from Univ. of Strasbourg team
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4681
diff
changeset
|
499 |
<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
|
500 |
<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
|
501 |
<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
|
502 |
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
|
503 |
<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
|
504 |
<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
|
505 |
<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
|
506 |
<li> examples: icmpv6-redirect.cc, ping6.cc, radvd.cc, radvd-two-prefix.cc, simple-routing-ping6.cc |
5184 | 507 |
</ul> |
508 |
</p> |
|
509 |
</li> |
|
510 |
||
511 |
<li><b>Wireless Mesh Networking models</b> |
|
512 |
<ul> |
|
513 |
<p> |
|
514 |
<li> General multi-interface mesh stack infrastructure (devices/mesh module). |
|
515 |
<li> IEEE 802.11s (Draft 3.0) model including Peering Management Protocol and HWMP. |
|
516 |
<li> Forwarding Layer for Meshing (FLAME) protocol. |
|
517 |
</ul> |
|
518 |
</p> |
|
519 |
</li> |
|
520 |
||
521 |
<li><b>802.11 enhancements</b> |
|
522 |
<p> |
|
523 |
<ul> |
|
524 |
<li> 10MHz and 5MHz channel width supported by 802.11a model (Ramon Bauza and Kirill Andreev). |
|
525 |
</ul> |
|
5189 | 526 |
<ul> |
527 |
<li> Channel switching support. YansWifiPhy can now switch among different channels (Ramon Bauza and Pavel Boyko). |
|
528 |
</ul> |
|
5184 | 529 |
</p> |
530 |
</li> |
|
531 |
||
5224
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
532 |
<li><b> Nix-vector Routing</b> |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
533 |
<p> Add nix-vector routing protocol |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
534 |
<ul> |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
535 |
<li> new helper class Ipv4NixVectorHelper |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
536 |
</ul> |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
537 |
<ul> |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
538 |
<li> examples: nix-simple.cc, nms-p2p-nix.cc |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
539 |
</ul> |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
540 |
</p> |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
541 |
</li> |
06f639d05b8f
Merge NixVector Routing code
Josh Pelkey <jpelkey@gatech.edu>
parents:
5189
diff
changeset
|
542 |
|
5407
4ad0d23af431
update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents:
5224
diff
changeset
|
543 |
<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
|
544 |
<p> Add TestCase, TestSuite classes |
4ad0d23af431
update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents:
5224
diff
changeset
|
545 |
<ul> |
4ad0d23af431
update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents:
5224
diff
changeset
|
546 |
<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
|
547 |
</ul> |
4ad0d23af431
update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents:
5224
diff
changeset
|
548 |
</p> |
4ad0d23af431
update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents:
5224
diff
changeset
|
549 |
</li> |
4ad0d23af431
update CHANGES.html and RELEASE_NOTES for release
Craig Dowell <craigdo@ee.washington.edu>
parents:
5224
diff
changeset
|
550 |
|
4681
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
551 |
</ul> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
552 |
|
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
553 |
<h2>Changes to existing API:</h2> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
554 |
<ul> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
555 |
<li><b>InterferenceHelper</b> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
556 |
<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
|
557 |
<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
|
558 |
<pre> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
559 |
static WifiMode GetPlcpHeaderMode (WifiMode, WifiPreamble); |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
560 |
static uint32_t GetPlcpHeaderDurationMicroSeconds (WifiMode, WifiPreamble); |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
561 |
static uint32_t GetPlcpPreambleDurationMicroSeconds (WifiMode, WifiPreamble); |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
562 |
static uint32_t GetPayloadDurationMicroSeconds (size, WifiMode); </pre> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
563 |
<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
|
564 |
<pre> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
565 |
void Configure80211aParameters (void); |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
566 |
void Configure80211bParameters (void); |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
567 |
void Configure80211_10MhzParameters (void); |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
568 |
void Configure80211_5MhzParameters (void);</pre> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
569 |
</li> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
570 |
<li><b>WifiMode</b> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
571 |
<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
|
572 |
</li> |
4764
e90e1ef585b0
[Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4761
diff
changeset
|
573 |
<li><b>NetDevice</b> |
e90e1ef585b0
[Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4761
diff
changeset
|
574 |
<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
|
575 |
<pre> |
e90e1ef585b0
[Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4761
diff
changeset
|
576 |
- virtual void SetLinkChangeCallback (Callback<void> callback); |
e90e1ef585b0
[Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4761
diff
changeset
|
577 |
+ virtual void AddLinkChangeCallback (Callback<void> callback);</pre> |
e90e1ef585b0
[Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4761
diff
changeset
|
578 |
Now each NetDevice subclasses have a TracedCallback<> object (list of callbacks) instead of Callback<void> ones. |
e90e1ef585b0
[Bug 653] NetDevice link change callback (SetLinkChangeCallback -> AddLinkChangeCallback).
Sebastien Vincent <vincent@clarinet.u-strasbg.fr>
parents:
4761
diff
changeset
|
579 |
</li> |
4681
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
580 |
</ul> |
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
581 |
|
8558474b6149
made InterferenceHelper::CalculateTxDuration () static
Nicola Baldo <nbaldo@cttc.es>
parents:
4643
diff
changeset
|
582 |
<hr> |
4385 | 583 |
<h1>Changes from ns-3.4 to ns-3.5</h1> |
584 |
||
585 |
<h2>Changes to build system:</h2> |
|
586 |
<ul> |
|
587 |
</ul> |
|
588 |
||
589 |
<h2>New API:</h2> |
|
4492
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
590 |
|
4385 | 591 |
<ul> |
4492
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
592 |
<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
|
593 |
<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
|
594 |
<pre> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
595 |
+ void SetPcapFormat (enum PcapFormat format); |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
596 |
</pre> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
597 |
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
|
598 |
</li> |
4502 | 599 |
|
4475
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
600 |
<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
|
601 |
<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
|
602 |
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
|
603 |
</li> |
4502 | 604 |
|
605 |
<li> <b>packet tags</b> |
|
606 |
<p>class Packet now contains AddPacketTag, RemovePacketTag and PeekPacketTag |
|
607 |
which can be used to attach a tag to a packet, as opposed to the old |
|
608 |
AddTag method which attached a tag to a set of bytes. The main |
|
609 |
semantic difference is in how these tags behave in the presence of |
|
610 |
fragmentation and reassembly. |
|
611 |
</li> |
|
4505 | 612 |
|
4385 | 613 |
</ul> |
614 |
||
615 |
<h2>Changes to existing API:</h2> |
|
616 |
<ul> |
|
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
617 |
|
4572
e5dcdf2868df
Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents:
4568
diff
changeset
|
618 |
<li><b>Ipv4Interface::GetMtu () deleted</b> |
e5dcdf2868df
Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents:
4568
diff
changeset
|
619 |
<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
|
620 |
was just a pass-through to GetDevice ()->GetMtu (). |
4572
e5dcdf2868df
Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents:
4568
diff
changeset
|
621 |
</p> |
e5dcdf2868df
Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents:
4568
diff
changeset
|
622 |
</li> |
e5dcdf2868df
Remove Ipv4Interface::GetMtu ()
Tom Henderson <tomh@tomh.org>
parents:
4568
diff
changeset
|
623 |
|
4635
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
624 |
<li><b>GlobalRouteManager::PopulateRoutingTables () and RecomputeRoutingTables () are deprecated </b> |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
625 |
<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
|
626 |
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
|
627 |
<pre> |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
628 |
Ipv4GlobalRoutingHelper::PopulateRoutingTables (); |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
629 |
Ipv4GlobalRoutingHelper::RecomputeRoutingTables (); |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
630 |
</pre> |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
631 |
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
|
632 |
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
|
633 |
<pre> |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
634 |
GlobalRouteManager::DeleteGlobalRoutes (); |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
635 |
GlobalRouteManager::BuildGlobalRoutingDatabase (); |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
636 |
GlobalRouteManager::InitializeRoutes (); |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
637 |
</pre> |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
638 |
</p> |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
639 |
</li> |
b40170d32073
document global routing API changes
Tom Henderson <tomh@tomh.org>
parents:
4629
diff
changeset
|
640 |
|
4568
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
641 |
<li><b>CalcChecksum attribute changes</b> |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
642 |
<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
|
643 |
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
|
644 |
value in class Node. These four calls: |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
645 |
<pre> |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
646 |
Config::SetDefault ("ns3::Ipv4L3Protocol::CalcChecksum", BooleanValue (true)); |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
647 |
Config::SetDefault ("ns3::Icmpv4L4Protocol::CalcChecksum", BooleanValue (true)); |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
648 |
Config::SetDefault ("ns3::TcpL4Protocol::CalcChecksum", BooleanValue (true)); |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
649 |
Config::SetDefault ("ns3::UdpL4Protocol::CalcChecksum", BooleanValue (true)); |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
650 |
</pre> |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
651 |
are replaced by one call to: |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
652 |
<pre> |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
653 |
GlobalValue::Bind ("ChecksumEnabled", BooleanValue (true)); |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
654 |
</pre> |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
655 |
</p> |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
656 |
</li> |
8a9c81e59c92
fix examples and documentation for CalcChecksum changes
Tom Henderson <tomh@tomh.org>
parents:
4555
diff
changeset
|
657 |
|
4555
e33c757f790c
update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4505
diff
changeset
|
658 |
<li><b>CreateObject changes</b> |
e33c757f790c
update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4505
diff
changeset
|
659 |
<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
|
660 |
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
|
661 |
</p> |
e33c757f790c
update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4505
diff
changeset
|
662 |
</li> |
e33c757f790c
update for API changes
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4505
diff
changeset
|
663 |
|
4502 | 664 |
<li> <b>packet byte tags renaming</b> |
665 |
<ul> |
|
666 |
<li>Packet::AddTag to Packet::AddByteTag</li> |
|
667 |
<li>Packet::FindFirstMatchingTag to Packet::FindFirstMatchingByteTag</li> |
|
668 |
<li>Packet::RemoveAllTags to Packet::RemoveAllByteTags</li> |
|
669 |
<li>Packet::PrintTags to Packet::PrintByteTags</li> |
|
670 |
<li>Packet::GetTagIterator to Packet::GetByteTagIterator</li> |
|
671 |
</ul> |
|
672 |
</li> |
|
673 |
||
4505 | 674 |
<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
|
675 |
<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
|
676 |
<pre> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
677 |
- 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
|
678 |
+ 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
|
679 |
- static void EnablePcap (std::string filename, Ptr<NetDevice> nd); |
ed1e2ad4c0b9
Fix angle braces in CHANGES.html.
Andrey Mazo <mazo@iitp.ru>
parents:
5858
diff
changeset
|
680 |
+ void EnablePcap (std::string filename, Ptr<NetDevice> nd); |
4492
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
681 |
- 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
|
682 |
+ 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
|
683 |
- 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
|
684 |
+ void EnablePcap (std::string filename, NetDeviceContainer d); |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
685 |
- 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
|
686 |
+ void EnablePcap (std::string filename, NodeContainer n); |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
687 |
- static void EnablePcapAll (std::string filename); |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
688 |
+ void EnablePcapAll (std::string filename); |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
689 |
</pre> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
690 |
</p> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
691 |
</li> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
692 |
|
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
693 |
<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
|
694 |
<p> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
695 |
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
|
696 |
<pre> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
697 |
- void NotifyPromiscSniff (Ptr<const Packet> packet); |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
698 |
+ void NotifyPromiscSniffRx (Ptr<const Packet> 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
|
699 |
+ void NotifyPromiscSniffTx (Ptr<const Packet> packet, uint16_t channelFreqMhz, uint32_t rate, bool isShortPreamble); |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
700 |
- TracedCallback<Ptr<const Packet> > m_phyPromiscSnifferTrace; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
701 |
+ TracedCallback<Ptr<const Packet>, uint16_t, uint32_t, bool, double, double> m_phyPromiscSniffRxTrace; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
702 |
+ TracedCallback<Ptr<const Packet>, uint16_t, uint32_t, bool> m_phyPromiscSniffTxTrace; |
4492
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
703 |
</pre> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
704 |
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
|
705 |
<pre> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
706 |
+ void WriteWifiMonitorPacket(Ptr<const Packet> 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
|
707 |
</pre> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
708 |
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
|
709 |
</p> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
710 |
</li> |
3ebeb7bf3c15
added support for radiotap and prism headers
Nicola Baldo <nbaldo@cttc.es>
parents:
4475
diff
changeset
|
711 |
|
4475
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
712 |
<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
|
713 |
<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
|
714 |
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
|
715 |
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
|
716 |
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
|
717 |
(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
|
718 |
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
|
719 |
protocol): |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
720 |
<pre> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
721 |
- virtual void AddRoutingProtocol (Ptr<Ipv4RoutingProtocol> routingProtocol, int16_t priority) = 0; |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
722 |
+ virtual void SetRoutingProtocol (Ptr<Ipv4RoutingProtocol> routingProtocol) = 0; |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
723 |
+ virtual Ptr<Ipv4RoutingProtocol> GetRoutingProtocol (void) const = 0; |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
724 |
</pre> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
725 |
</li> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
726 |
|
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
727 |
<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
|
728 |
<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
|
729 |
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
|
730 |
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
|
731 |
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
|
732 |
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
|
733 |
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
|
734 |
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
|
735 |
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
|
736 |
<pre> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
737 |
- typedef Callback<void, bool, const Ipv4Route&, Ptr<Packet>, const Ipv4Header&> RouteReplyCallback; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
738 |
+ typedef Callback<void, Ptr<Ipv4Route>, Ptr<const Packet>, const Ipv4Header &> UnicastForwardCallback; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
739 |
+ typedef Callback<void, Ptr<Ipv4MulticastRoute>, Ptr<const Packet>, const Ipv4Header &> MulticastForwardCallback; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
740 |
+ typedef Callback<void, Ptr<const Packet>, const Ipv4Header &, uint32_t > LocalDeliverCallback; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
741 |
+ typedef Callback<void, Ptr<const Packet>, const Ipv4Header &> ErrorCallback; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
742 |
- virtual bool RequestInterface (Ipv4Address destination, uint32_t& interface) = 0; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
743 |
+ virtual Ptr<Ipv4Route> RouteOutput (Ptr<Packet> p, const Ipv4Header &header, uint32_t oif, Socket::SocketErrno &errno) = 0; |
4475
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
744 |
- virtual bool RequestRoute (uint32_t interface, |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
745 |
- const Ipv4Header &ipHeader, |
4475
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
746 |
- Ptr<Packet> packet, |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
747 |
- RouteReplyCallback routeReply) = 0; |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
748 |
+ virtual bool RouteInput (Ptr<const Packet> p, const Ipv4Header &header, Ptr<const NetDevice> idev, |
4475
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
749 |
+ UnicastForwardCallback ucb, MulticastForwardCallback mcb, |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
750 |
+ LocalDeliverCallback lcb, ErrorCallback ecb) = 0; |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
751 |
</pre> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
752 |
|
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
753 |
</li> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
754 |
<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
|
755 |
those same names added</b> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
756 |
<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
|
757 |
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
|
758 |
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
|
759 |
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
|
760 |
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
|
761 |
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
|
762 |
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
|
763 |
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
|
764 |
|
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
765 |
<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
|
766 |
<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
|
767 |
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
|
768 |
<pre> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
769 |
- 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
|
770 |
- 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
|
771 |
+ 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
|
772 |
+ 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
|
773 |
- virtual int32_t FindInterfaceForDevice(Ptr<NetDevice> nd) const = 0; |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
774 |
+ virtual int32_t GetInterfaceForDevice (Ptr<const NetDevice> device) const = 0; |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
775 |
- 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
|
776 |
- virtual bool GetInterfaceForDestination (Ipv4Address dest, |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
777 |
- 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
|
778 |
</pre> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
779 |
|
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
780 |
<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
|
781 |
<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
|
782 |
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
|
783 |
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
|
784 |
|
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
785 |
<pre> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
786 |
- 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
|
787 |
- 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
|
788 |
</pre> |
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
789 |
|
a232dcbbe7a8
api changes and release notes for IPv4 routing rework
Tom Henderson <tomh@tomh.org>
parents:
4426
diff
changeset
|
790 |
|
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
791 |
<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
|
792 |
<p>All function parameters named "ifIndex" that refer |
4385 | 793 |
to an Ipv4 interface are instead named "interface". |
794 |
<pre> |
|
795 |
- static const uint32_t Ipv4RoutingProtocol::IF_INDEX_ANY = 0xffffffff; |
|
796 |
+ static const uint32_t Ipv4RoutingProtocol::INTERFACE_ANY = 0xffffffff; |
|
797 |
||
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
798 |
- bool Ipv4RoutingProtocol::RequestIfIndex (Ipv4Address destination, uint32_t& ifIndex); |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
799 |
+ bool Ipv4RoutingProtocol::RequestInterface (Ipv4Address destination, uint32_t& interface); |
4385 | 800 |
(N.B. this particular function is planned to be renamed to RouteOutput() in the |
801 |
proposed IPv4 routing refactoring) |
|
802 |
||
803 |
- uint32_t Ipv4::GetIfIndexByAddress (Ipv4Address addr, Ipv4Mask mask); |
|
804 |
+ int_32t Ipv4::GetInterfaceForAddress (Ipv4Address address, Ipv4Mask mask) const; |
|
805 |
||
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
806 |
- bool Ipv4::GetIfIndexForDestination (Ipv4Address dest, uint32_t &ifIndex) const; |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
807 |
+ bool Ipv4::GetInterfaceForDestination (Ipv4Address dest, uint32_t &interface) const; |
4385 | 808 |
(N.B. this function is not needed in the proposed Ipv4 routing refactoring) |
809 |
</pre> |
|
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
810 |
|
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
811 |
|
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
812 |
<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
|
813 |
<ul> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
814 |
<li> Add class Ipv4InterfaceAddress: |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
815 |
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
|
816 |
broadcast address, scope, whether primary or secondary, etc. |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
817 |
<pre> |
4385 | 818 |
+ virtual uint32_t AddAddress (uint32_t interface, Ipv4InterfaceAddress address) = 0; |
819 |
+ virtual Ipv4InterfaceAddress GetAddress (uint32_t interface, uint32_t addressIndex) const = 0; |
|
820 |
+ 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
|
821 |
</pre> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
822 |
<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
|
823 |
using the public Ipv4 class interface (e.g.): |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
824 |
<pre> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
825 |
ipv4A->SetAddress (ifIndexA, Ipv4Address ("172.16.1.1")); |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
826 |
ipv4A->SetNetworkMask (ifIndexA, Ipv4Mask ("255.255.255.255")); |
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
827 |
</pre> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
828 |
you now do: |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
829 |
<pre> |
4385 | 830 |
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
|
831 |
ipv4A->AddAddress (ifIndexA, ipv4IfAddrA); |
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
832 |
</pre> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
833 |
<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
|
834 |
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
|
835 |
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
|
836 |
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
|
837 |
We provide also an overloaded variant for the multi-address case: |
4385 | 838 |
|
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
839 |
<pre> |
4385 | 840 |
Ipv4Address Ipv4InterfaceContainer::GetAddress (uint32_t i) |
841 |
+ 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
|
842 |
</pre> |
4413
4726838efe7c
Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents:
4385
diff
changeset
|
843 |
|
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
844 |
</ul> |
4413
4726838efe7c
Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents:
4385
diff
changeset
|
845 |
|
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
846 |
<li><b>New WifiMacHelper objects</b> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
847 |
<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
|
848 |
<pre> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
849 |
- void WifiHelper::SetMac (std::string type, std::string n0 = "", const AttributeValue &v0 = EmptyAttributeValue (),...) |
4413
4726838efe7c
Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents:
4385
diff
changeset
|
850 |
|
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
851 |
- NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &phyHelper, NodeContainer c) const |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
852 |
+ NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &phyHelper, const WifiMacHelper &macHelper, NodeContainer c) const |
4413
4726838efe7c
Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents:
4385
diff
changeset
|
853 |
|
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
854 |
- NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &phy, Ptr<Node> node) const |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
855 |
+ NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &phy, const WifiMacHelper &mac, Ptr<Node> node) const |
4413
4726838efe7c
Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents:
4385
diff
changeset
|
856 |
|
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
857 |
- NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &phy, std::string nodeName) const |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
858 |
+ NetDeviceContainer WifiHelper::Install (const WifiPhyHelper &phy, const WifiMacHelper &mac, std::string nodeName) const |
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
859 |
</pre> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
860 |
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
|
861 |
</p> |
4413
4726838efe7c
Added API changes for wifi helpers
Mirko Banchi <mk.banchi@gmail.com>
parents:
4385
diff
changeset
|
862 |
|
4426
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
863 |
<li><b>Remove Mac48Address::IsMulticast</b> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
864 |
<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
|
865 |
</li> |
c8dd5497e809
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
4413
diff
changeset
|
866 |
|
4385 | 867 |
</ul> |
868 |
||
869 |
<h2>Changed behavior:</h2> |
|
870 |
<ul> |
|
871 |
</ul> |
|
872 |
||
873 |
<hr> |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
874 |
<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
|
875 |
|
4385 | 876 |
<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
|
877 |
<ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
878 |
<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
|
879 |
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
|
880 |
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
|
881 |
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
|
882 |
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
|
883 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
884 |
<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
|
885 |
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
|
886 |
</ul> |
f1c83e54e541
Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents:
4266
diff
changeset
|
887 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
888 |
<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
|
889 |
<ul> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
890 |
<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
|
891 |
|
4301
f1c83e54e541
Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents:
4266
diff
changeset
|
892 |
<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
|
893 |
|
f1c83e54e541
Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents:
4266
diff
changeset
|
894 |
<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
|
895 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
896 |
<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
|
897 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
898 |
<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
|
899 |
src/devices/tap-bridge)</li> |
4266
7b0c4017bc36
Update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
4260
diff
changeset
|
900 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
901 |
<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
|
902 |
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
|
903 |
|
4301
f1c83e54e541
Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents:
4266
diff
changeset
|
904 |
<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
|
905 |
</ul> |
f1c83e54e541
Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents:
4266
diff
changeset
|
906 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
907 |
<h2>Changes to existing API:</h2> |
4266
7b0c4017bc36
Update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
4260
diff
changeset
|
908 |
|
7b0c4017bc36
Update CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
4260
diff
changeset
|
909 |
<ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
910 |
<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
|
911 |
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
|
912 |
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
|
913 |
|
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
914 |
<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
|
915 |
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
|
916 |
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
|
917 |
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
|
918 |
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
|
919 |
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
|
920 |
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
|
921 |
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
|
922 |
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
|
923 |
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
|
924 |
|
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
925 |
<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
|
926 |
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
|
927 |
|
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
928 |
<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
|
929 |
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
|
930 |
|
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
931 |
<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
|
932 |
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
|
933 |
|
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
934 |
<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
|
935 |
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
|
936 |
|
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
937 |
<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
|
938 |
|
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
939 |
<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
|
940 |
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
|
941 |
</ul> |
29587ce02a57
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3982
diff
changeset
|
942 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
943 |
<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
|
944 |
|
f1c83e54e541
Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents:
4266
diff
changeset
|
945 |
<ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
946 |
<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
|
947 |
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
|
948 |
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
|
949 |
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
|
950 |
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
|
951 |
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
|
952 |
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
|
953 |
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
|
954 |
</ul> |
f1c83e54e541
Update CHANGES for ns-3.4 from hg log
Craig Dowell <craigdo@ee.washington.edu>
parents:
4266
diff
changeset
|
955 |
|
4260
29587ce02a57
update CHANGES.html
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3982
diff
changeset
|
956 |
<hr> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
957 |
<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
|
958 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
959 |
<h2>New API:</h2> |
3865
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
960 |
<ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
961 |
<li> |
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
962 |
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
|
963 |
Config::MatchContainer |
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
964 |
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
|
965 |
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
|
966 |
NetDevice::IsBridge () |
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
967 |
</li> |
3865
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
968 |
|
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
969 |
<li>17-11-2008; changeset |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
970 |
<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
|
971 |
<ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
972 |
<li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
973 |
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
|
974 |
made public. |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
975 |
</li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
976 |
</ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
977 |
|
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
978 |
<li>17-11-2008; changeset |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
979 |
<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
|
980 |
<ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
981 |
<li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
982 |
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
|
983 |
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
|
984 |
</li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
985 |
</ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
986 |
|
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
987 |
<li>17-11-2008; changeset |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
988 |
<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
|
989 |
<ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
990 |
<li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
991 |
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
|
992 |
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
|
993 |
</li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
994 |
</ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
995 |
|
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
996 |
</ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
997 |
<h2>Changes to existing API:</h2> |
3865
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
998 |
<ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
999 |
|
3982
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1000 |
<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
|
1001 |
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
|
1002 |
|
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1003 |
<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
|
1004 |
<ul> |
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1005 |
<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
|
1006 |
<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
|
1007 |
</ul> |
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1008 |
|
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1009 |
<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
|
1010 |
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
|
1011 |
<ul> |
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1012 |
<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
|
1013 |
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
|
1014 |
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
|
1015 |
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
|
1016 |
<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
|
1017 |
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
|
1018 |
<ul> |
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1019 |
<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
|
1020 |
<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
|
1021 |
<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
|
1022 |
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
|
1023 |
<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
|
1024 |
<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
|
1025 |
<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
|
1026 |
<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
|
1027 |
<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
|
1028 |
<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
|
1029 |
</ul> |
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1030 |
</ul> |
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1031 |
|
3865
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1032 |
<li>17-11-2008; changeset |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1033 |
<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
|
1034 |
<ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1035 |
<li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1036 |
Change attribute "RxErrorModel" to "ReceiveErrorModel" in CsmaNetDevice for |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1037 |
consistency between devices. |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1038 |
</li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1039 |
</ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1040 |
|
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1041 |
</ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1042 |
<h2>changed behavior:</h2> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1043 |
<ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1044 |
|
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1045 |
<li>17-11-2008; changeset |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1046 |
<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
|
1047 |
<ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1048 |
<li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1049 |
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
|
1050 |
assignment of /32 addresses. |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1051 |
</li> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1052 |
</ul> |
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1053 |
|
3949
016c554c4f6d
CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents:
3865
diff
changeset
|
1054 |
<li>17-11-2008; changeset |
016c554c4f6d
CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents:
3865
diff
changeset
|
1055 |
<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
|
1056 |
<ul> |
016c554c4f6d
CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents:
3865
diff
changeset
|
1057 |
<li> |
016c554c4f6d
CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents:
3865
diff
changeset
|
1058 |
Global routing supports bridge devices. |
016c554c4f6d
CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents:
3865
diff
changeset
|
1059 |
</li> |
016c554c4f6d
CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents:
3865
diff
changeset
|
1060 |
</ul> |
3982
4f370a1b637c
add some things to release notes and changes.html; revise README
Tom Henderson <tomh@tomh.org>
parents:
3949
diff
changeset
|
1061 |
</ul> |
3949
016c554c4f6d
CHANGES.html for global routing supporting bridges
Craig Dowell <craigdo@ee.washington.edu>
parents:
3865
diff
changeset
|
1062 |
|
3865
6647bcafbf3f
overdue changes to CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3686
diff
changeset
|
1063 |
<hr> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
1064 |
<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
|
1065 |
|
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
1066 |
<h2>New API:</h2> |
3686 | 1067 |
<ul> |
3593
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1068 |
|
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1069 |
<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
|
1070 |
<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
|
1071 |
<ul> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1072 |
<li> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1073 |
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
|
1074 |
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
|
1075 |
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
|
1076 |
</li> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1077 |
</ul> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1078 |
|
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1079 |
|
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1080 |
<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
|
1081 |
<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
|
1082 |
<ul> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1083 |
<li> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1084 |
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
|
1085 |
multithreaded simulator implementation. |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1086 |
</li> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1087 |
</ul> |
dfd634417b8d
update AUTHORS, CHANGES, RELEASE_NOTES for ns-3.2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3551
diff
changeset
|
1088 |
|
3686 | 1089 |
</ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
1090 |
<h2>New API in existing classes:</h2> |
3686 | 1091 |
<ul> |
3505 | 1092 |
|
1093 |
<li>01-08-2008; changeset |
|
1094 |
<a href="http://code.nsnam.org/ns-3-dev/rev/a18520551cdf">a18520551cdf</a></li> |
|
1095 |
<ul> |
|
1096 |
<li>class ArpCache has two new attributes: MaxRetries |
|
1097 |
and a Drop trace. It also has some new public methods but these are |
|
1098 |
mostly for internal use. |
|
1099 |
</ul> |
|
1100 |
</li> |
|
3686 | 1101 |
|
3505 | 1102 |
</ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
1103 |
<h2>Changes to existing API:</h2> |
3686 | 1104 |
<ul> |
3505 | 1105 |
|
3667
ba90a28f8c59
prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3645
diff
changeset
|
1106 |
<li>05-09-2008; changeset |
ba90a28f8c59
prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3645
diff
changeset
|
1107 |
<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
|
1108 |
<ul> |
ba90a28f8c59
prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3645
diff
changeset
|
1109 |
<li> |
ba90a28f8c59
prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3645
diff
changeset
|
1110 |
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
|
1111 |
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
|
1112 |
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
|
1113 |
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
|
1114 |
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
|
1115 |
PointToPointNetDevice::SetFrameSize for a detailed description. |
ba90a28f8c59
prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3645
diff
changeset
|
1116 |
</li> |
ba90a28f8c59
prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3645
diff
changeset
|
1117 |
</ul> |
ba90a28f8c59
prep for ns-3.2-RC2
Craig Dowell <craigdo@ee.washington.edu>
parents:
3645
diff
changeset
|
1118 |
|
3551
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1119 |
<li>25-08-2008; changeset |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1120 |
<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
|
1121 |
<ul> |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1122 |
<li> |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1123 |
bug 273: constify packet pointers.<br> |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1124 |
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
|
1125 |
have been changed from: |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1126 |
<pre> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1127 |
Callback<bool,Ptr<NetDevice>,Ptr<Packet>,uint16_t,const Address &> |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1128 |
Callback<bool,Ptr<NetDevice>, Ptr<Packet>, uint16_t, |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1129 |
const Address &, const Address &, enum PacketType > |
3551
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1130 |
</pre> |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1131 |
to: |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1132 |
<pre> |
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1133 |
Callback<bool,Ptr<NetDevice>,Ptr<const Packet>,uint16_t,const Address &> |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1134 |
Callback<bool,Ptr<NetDevice>, Ptr<const Packet>, uint16_t, |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1135 |
const Address &, const Address &, enum PacketType > |
3551
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1136 |
</pre> |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1137 |
to avoid the kind of bugs reported in |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1138 |
<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
|
1139 |
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
|
1140 |
of their SetReceiveCallback and SetPromiscReceiveCallback methods. |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1141 |
</li> |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1142 |
</ul> |
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1143 |
|
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1144 |
|
3508
7a3c6148c22d
actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3505
diff
changeset
|
1145 |
<li>04-08-2008; changeset |
7a3c6148c22d
actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3505
diff
changeset
|
1146 |
<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
|
1147 |
<ul> |
7a3c6148c22d
actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3505
diff
changeset
|
1148 |
<li> |
3551
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1149 |
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
|
1150 |
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
|
1151 |
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
|
1152 |
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
|
1153 |
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
|
1154 |
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
|
1155 |
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
|
1156 |
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
|
1157 |
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
|
1158 |
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
|
1159 |
issues and solution. |
7a3c6148c22d
actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3505
diff
changeset
|
1160 |
</li> |
7a3c6148c22d
actually use CHANGES.html
Craig Dowell <craigdo@ee.washington.edu>
parents:
3505
diff
changeset
|
1161 |
</ul> |
3551
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1162 |
|
3505 | 1163 |
<li>21-07-2008; changeset |
1164 |
<a href=" |
|
1165 |
http://code.nsnam.org/ns-3-dev/rev/99698bc858e8">99698bc858e8</a></li> |
|
1166 |
<ul> |
|
1167 |
<li> class NetDevice has added a pure virtual method that |
|
1168 |
must be implemented by all subclasses: |
|
1169 |
<pre> |
|
1170 |
virtual void SetPromiscReceiveCallback (PromiscReceiveCallback cb) = 0; |
|
1171 |
</pre> |
|
1172 |
All NetDevices must support this method, and must call this callback |
|
1173 |
when processing packets in the receive direction (the appropriate place |
|
1174 |
to call this is device-dependent). An approach to stub this out |
|
1175 |
temporarily, if you do not care about immediately enabling this |
|
1176 |
functionality, would be to add this to your device: |
|
1177 |
<pre> |
|
1178 |
void |
|
1179 |
ExampleNetDevice::SetPromiscReceiveCallback |
|
1180 |
(NetDevice::PromiscReceiveCallback cb) |
|
1181 |
{ |
|
1182 |
NS_ASSERT_MSG (false, "No implementation yet for |
|
1183 |
SetPromiscReceiveCallback"); |
|
1184 |
} |
|
1185 |
</pre> |
|
1186 |
To implement this properly, consult the CsmaNetDevice for examples of |
|
1187 |
when the m_promiscRxCallback is called. |
|
1188 |
</li> |
|
1189 |
</ul> |
|
1190 |
||
1191 |
<li>03-07-2008; changeset |
|
1192 |
<a href="http://code.nsnam.org/ns-3-dev/rev/d5f8e5fae1c6">d5f8e5fae1c6</a></li> |
|
1193 |
<ul> |
|
1194 |
<li> |
|
1195 |
Miscellaneous cleanup of Udp Helper API, to fix bug 234 |
|
1196 |
<pre> |
|
1197 |
class UdpEchoServerHelper |
|
1198 |
{ |
|
1199 |
public: |
|
1200 |
- UdpEchoServerHelper (); |
|
1201 |
- void SetPort (uint16_t port); |
|
1202 |
+ UdpEchoServerHelper (uint16_t port); |
|
1203 |
+ |
|
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1204 |
+ void SetAttribute (std::string name, const AttributeValue &value); |
3505 | 1205 |
ApplicationContainer Install (NodeContainer c); |
1206 |
||
1207 |
class UdpEchoClientHelper |
|
1208 |
{ |
|
1209 |
public: |
|
1210 |
- UdpEchoClientHelper (); |
|
1211 |
+ UdpEchoClientHelper (Ipv4Address ip, uint16_t port); |
|
1212 |
- void SetRemote (Ipv4Address ip, uint16_t port); |
|
4639
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1213 |
- void SetAppAttribute (std::string name, const AttributeValue &value); |
34e6d141c227
escape html special characters
Andrey Hippo<ahippo@yandex.ru>
parents:
4629
diff
changeset
|
1214 |
+ void SetAttribute (std::string name, const AttributeValue &value); |
3505 | 1215 |
ApplicationContainer Install (NodeContainer c); |
1216 |
</pre> |
|
1217 |
</li> |
|
1218 |
</ul> |
|
3551
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1219 |
|
3505 | 1220 |
<li>03-07-2008; changeset |
1221 |
<a href=" |
|
1222 |
http://code.nsnam.org/ns-3-dev/rev/3cdd9d60f7c7">3cdd9d60f7c7</a></li> |
|
1223 |
<ul> |
|
1224 |
<li> |
|
1225 |
Rename all instances method names using "Set..Parameter" to "Set..Attribute" |
|
1226 |
(bug 232) |
|
1227 |
</li> |
|
1228 |
<li> How to fix your code: Any use of helper API that was using a method |
|
1229 |
"Set...Parameter()" should be changed to read "Set...Attribute()". e.g. |
|
1230 |
<pre> |
|
1231 |
- csma.SetChannelParameter ("DataRate", DataRateValue (5000000)); |
|
1232 |
- csma.SetChannelParameter ("Delay", TimeValue (MilliSeconds (2))); |
|
1233 |
+ csma.SetChannelAttribute ("DataRate", DataRateValue (5000000)); |
|
1234 |
+ csma.SetChannelAttribute ("Delay", TimeValue (MilliSeconds (2))); |
|
1235 |
</pre> |
|
1236 |
</li> |
|
1237 |
</ul> |
|
1238 |
</li> |
|
3686 | 1239 |
|
3505 | 1240 |
</ul> |
4305
9ec113d84cc8
prettify CHANGES and add behavior changed section for ns-3.4
Craig Dowell <craigdo@ee.washington.edu>
parents:
4301
diff
changeset
|
1241 |
<h2>Changed behavior:</h2> |
3505 | 1242 |
<ul> |
3645
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1243 |
|
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1244 |
<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
|
1245 |
<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
|
1246 |
<ul> |
3686 | 1247 |
|
3645
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1248 |
<li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1249 |
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
|
1250 |
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
|
1251 |
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
|
1252 |
<ul> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1253 |
<li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1254 |
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
|
1255 |
</li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1256 |
<li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1257 |
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
|
1258 |
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
|
1259 |
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
|
1260 |
window |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1261 |
</li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1262 |
<li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1263 |
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
|
1264 |
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
|
1265 |
buffer. |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1266 |
</li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1267 |
<li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1268 |
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
|
1269 |
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
|
1270 |
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
|
1271 |
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
|
1272 |
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
|
1273 |
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
|
1274 |
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
|
1275 |
</li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1276 |
</ul> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1277 |
See |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1278 |
<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
|
1279 |
more. |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1280 |
</li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1281 |
</ul> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1282 |
|
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1283 |
<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
|
1284 |
<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
|
1285 |
<ul> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1286 |
<li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1287 |
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
|
1288 |
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
|
1289 |
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
|
1290 |
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
|
1291 |
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
|
1292 |
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
|
1293 |
<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
|
1294 |
more. |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1295 |
</li> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1296 |
</ul> |
5a0182408867
Update CHANGES.html to reflect the last two changesets
Raj Bhattacharjea <raj.b@gatech.edu>
parents:
3593
diff
changeset
|
1297 |
|
3505 | 1298 |
<li> 28-07-2008; changeset |
1299 |
<a href="http://code.nsnam.org/ns-3-dev/rev/6f68f1044df1">6f68f1044df1</a> |
|
1300 |
<ul> |
|
1301 |
<li> |
|
1302 |
OLSR: HELLO messages hold time changed to 3*hello |
|
1303 |
interval from hello interval. This is an important bug fix as |
|
1304 |
hold time == refresh time was never intentional, as it leads to |
|
1305 |
instability in neighbor detection. |
|
1306 |
</ul> |
|
1307 |
</li> |
|
3686 | 1308 |
|
3505 | 1309 |
</ul> |
3551
fbf628eb3ca6
document API change
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
3508
diff
changeset
|
1310 |
|
3505 | 1311 |
</body> |
1312 |
</html> |