--- a/CHANGES.txt Thu Aug 22 15:00:40 2013 -0700
+++ b/CHANGES.txt Thu Aug 22 15:32:33 2013 -0700
@@ -49,24 +49,49 @@
\subsection ch-ns-3-18-new New API:
+ - New features have been added to the LTE module:
+ - PHY support for UE measurements (RSRP and RSRQ)
+ - RRC support for UE measurements (configuration, execution, reporting)
+ - Automatic Handover trigger based on RRC UE measurement reports
- Data collection components have been added in the src/stats module.
Data collection includes a Probe class that attaches to ns-3 trace
sources to filter their output, and two Aggregator classes for
marshaling probed data into text files or gnuplot plots. The ns-3
tutorial has been extended to illustrate basic functionality. </li>
+ - In \c src/wifi, several changes were made to enable partial 802.11n support:
+ - A new helper (HtWifiMacHelper) was added to set up a high
+ throughput (HT) MAC entity
+ - New attributes were added to help the user setup a high throughput
+ (HT) PHY entity. These attributes can be set using the YansWifiPhyHelper.
+ - A new standard value has been added that enables the new 11n data rates.
+ - New 11n preambles has been added (Mixed format and greenfield). To be
+ able to change Tx duration according to the preamble used, a new class
+ TxVector has been added to carry the transmission parameters (mode,
+ preamble, stbc,..). Several functions have been updated to allow
+ the passage of TxVector instead of WifiMode in MacLow,
+ WifiRemoteStationManager, WifiPhy, YansWifiPhy,..
+ - A new information element has been added: HTCapabilities. This
+ information element is added to the MAC frame header if the node
+ pis an HT node. This HTCapabilites information element is used
+ to advertise the HT capabilites of the node to other nodes in
+ the network
+ - InternetStackHelper has two new functions:
+ <tt>SetIpv4ArpJitter (bool enable)</tt> and
+ <tt>SetIpv6NsRsJitter (bool enable)</tt> to enable/disable
+ the random jitter on the tranmission of IPv4 ARP Request and IPv6 NS/RS.
- Time attributes can now be bounded. See attribute-test-suite.cc
- for an example.</li>
+ for an example.
- New generic hash function interface. Two hash functions are provided:
murmur3 (default), and the venerable FNV1a. See the Hash Functions
- section in the Manual.</li>
+ section in the Manual.
- New Mac16Address has been added. It can be used with IPv6 to make
- an Autoconfigured address.</li>
+ an Autoconfigured address.
- Mac64Address support has been extended. It can now be used with
- IPv6 to make an Autoconfigured address.</li>
+ IPv6 to make an Autoconfigured address.
- IPv6 can now detect and use Path-MTU. See
- examples/ipv6/fragmentation-ipv6-two-MTU.cc for an example.</li>
+ examples/ipv6/fragmentation-ipv6-two-MTU.cc for an example.
- Radvd application have a new Helper. See the updated
- examples/ipv6/radvd.cc for an example.</li>
+ examples/ipv6/radvd.cc for an example.
\subsection ch-ns-3-18-old Changes to existing API:
@@ -199,17 +224,17 @@
\subsection ch- ns-3-17-old Changes to existing API:
- - ns3::Object and subclasses DoStart has been renamed to DoInitialize</li>
- - ns3::Object and subclasses Start has been renamed to Initialize</li>
- - EnergySource StartDeviceModels renamed to InitializeDeviceModels</li>
+ - ns3::Object and subclasses DoStart has been renamed to DoInitialize
+ - ns3::Object and subclasses Start has been renamed to Initialize
+ - EnergySource StartDeviceModels renamed to InitializeDeviceModels
- A typo was fixed in an LTE variable name. The variable
ns3::AllocationRetentionPriority::preemprionVulnerability was changed
to preemptionVulnerability.
- Changes in TestCase API
- TestCase has new enumeration TestDuration containing QUICK, EXTENSIVE,
- TAKES_FOREVER</li>
+ TAKES_FOREVER
- TestCase constructor now requires TestDuration, old constructor marked
- deprecated</li>
+ deprecated
- Changes in LTE API
- User-visible LTE API
- The previous LteHelper method ActivateEpsBearer has been now replaced
@@ -217,82 +242,82 @@
the EPC model is not used) and ActivateDedicatedEpsBearer (to be used
when the EPC model is used). In the case where the EPC model is used,
the default EPS bearer is not automatically activated without the need
- for a specific method to be called.</li>
+ for a specific method to be called.
- Internal LTE API
- EpcHelper added methods AddUe, AddX2Interface. Method AddEnb now
requires a cellId. Signature of ActivateEpsBearer changed to
void ActivateEpsBearer (Ptr<NetDevice> ueLteDevice, uint64_t imsi,
- Ptr<EpcTft> tft, EpsBearer bearer)</li>
+ Ptr<EpcTft> tft, EpsBearer bearer)
- LteHelper added methods EnableDlPhyTraces, EnableUlPhyTraces,
EnableDlTxPhyTraces, EnableUlTxPhyTraces, EnableDlRxPhyTraces,
- EnableUlRxPhyTraces</li>
+ EnableUlRxPhyTraces
- LteHelper removed methods EnableDlRlcTraces, EnableUlRlcTraces,
- EnableDlPdcpTraces, EnableUlPdcpTraces</li>
+ EnableDlPdcpTraces, EnableUlPdcpTraces
- RadioBearerStatsCalculator added methods (Set/Get)StartTime,
- (Set/Get)Epoch, RescheduleEndEpoch, EndEpoch</li>
- - RadioBearerStatsCalculator removed methods StartEpoch, CheckEpoch</li>
+ (Set/Get)Epoch, RescheduleEndEpoch, EndEpoch
+ - RadioBearerStatsCalculator removed methods StartEpoch, CheckEpoch
- RadioBearerStatsCalculator methods UlTxPdu, DlRxPdu now require a
- cellId</li>
+ cellId
- EpcEnbApplication constructor now requires Ipv4Addresses enbS1uAddress
- and sgwS1uAddress as well as cellId</li>
+ and sgwS1uAddress as well as cellId
- EpcEnbApplication added methods SetS1SapUser, GetS1SapProvider,
- SetS1apSapMme and GetS1apSapEnb</li>
- - EpcEnbApplication removed method ErabSetupRequest</li>
+ SetS1apSapMme and GetS1apSapEnb
+ - EpcEnbApplication removed method ErabSetupRequest
- EpcSgwPgwApplication added methods SetS11SapMme, GetS11SapSgw,
- AddEnb, AddUe, SetUeAddress</li>
+ AddEnb, AddUe, SetUeAddress
- lte-common.h new structs PhyTransmissionStatParameters and
- PhyReceptionStatParameters used in TracedCallbacks</li>
- - LteControlMessage new message types DL_HARQ, RACH_PREAMBLE, RAR, MIB</li>
+ PhyReceptionStatParameters used in TracedCallbacks
+ - LteControlMessage new message types DL_HARQ, RACH_PREAMBLE, RAR, MIB
- LteEnbCmacSapProvider new methods RemoveUe, GetRachConfig,
- AllocateNcRaPreamble, AllocateTemporaryCellRnti</li>
+ AllocateNcRaPreamble, AllocateTemporaryCellRnti
- LteEnbPhy new methods GetLteEnbCphySapProvider, SetLteEnbCphySapUser,
- GetDlSpectrumPhy, GetUlSpectrumPhy, CreateSrsReport</li>
+ GetDlSpectrumPhy, GetUlSpectrumPhy, CreateSrsReport
- LteEnbPhy methods DoSendMacPdu, DoSetTransmissionMode,
DoSetSrsConfigurationIndex, DoGetMacChTtiDelay,
- DoSendLteControlMessage, AddUePhy, DeleteUePhy made private</li>
+ DoSendLteControlMessage, AddUePhy, DeleteUePhy made private
- LteEnbPhySapProvider removed methods SetBandwidth, SetTransmissionMode,
- SetSrsConfigurationIndex, SetCellId</li>
+ SetSrsConfigurationIndex, SetCellId
- LteEnbPhySapUser added methods ReceiveRachPreamble,
- UlInfoListElementHarqFeeback, DlInfoListElementHarqFeeback</li>
- - LtePdcp added methods (Set/Get)Status</li>
- - LtePdcp DoTransmitRrcPdu renamed DoTransmitPdcpSdu</li>
+ UlInfoListElementHarqFeeback, DlInfoListElementHarqFeeback
+ - LtePdcp added methods (Set/Get)Status
+ - LtePdcp DoTransmitRrcPdu renamed DoTransmitPdcpSdu
- LteUeRrc new enum State. New methods SetLteUeCphySapProvider,
GetLteUeCphySapUser, SetLteUeRrcSapUser, GetLteUeRrcSapProvider,
GetState, GetDlEarfcn, GetDlBandwidth, GetUlBandwidth, GetCellId,
- SetUseRlcSm. GetRnti made const.</li>
+ SetUseRlcSm. GetRnti made const.
- LteUeRrc removed methods ReleaseRadioBearer, GetLcIdVector,
- SetForwardUpCallback, DoRrcConfigurationUpdateInd</li>
+ SetForwardUpCallback, DoRrcConfigurationUpdateInd
- LtePdcpSapProvider struct TransmitRrcPduParameters renamed
TransmitPdcpSduParameters. Method TransmitRrcPdu renamed
- TransmitPdcpSdu </li>
+ TransmitPdcpSdu
- LtePdcpSapUser struct ReceiveRrcPduParameters renamed
ReceivePdcpSduParameters. Method ReceiveRrcPdu renamed
- TransmitPdcpSdu</li>
+ TransmitPdcpSdu
- LtePdcpSpecificLtePdcpSapProvider method TransmitRrcPdu
- renamed TransmitPdcpSdu</li>
+ renamed TransmitPdcpSdu
- LtePdcpSpecificLtePdcpSapUser method ReceiveRrcPdu
- renamed ReceivePdcpSdu. Method ReceiveRrcPdu renamed ReceivePdcpSdu</li>
- - LtePhy removed methods DoSetBandwidth and DoSetEarfcn</li>
- - LtePhy added methods ReportInterference and ReportRsReceivedPower</li>
+ renamed ReceivePdcpSdu. Method ReceiveRrcPdu renamed ReceivePdcpSdu
+ - LtePhy removed methods DoSetBandwidth and DoSetEarfcn
+ - LtePhy added methods ReportInterference and ReportRsReceivedPower
- LteSpectrumPhy added methods SetHarqPhyModule, Reset,
SetLtePhyDlHarqFeedbackCallback, SetLtePhyUlHarqFeedbackCallback,
- AddRsPowerChunkProcessor, AddInterferenceChunkProcessor</li>
+ AddRsPowerChunkProcessor, AddInterferenceChunkProcessor
- LteUeCphySapProvider removed methods ConfigureRach,
StartContentionBasedRandomAccessProcedure,
- StartNonContentionBasedRandomAccessProcedure</li>
- - LteUeMac added method AssignStreams</li>
- - LteUeNetDevice methods GetMac, GetRrc, GetImsi made const</li>
- - LteUeNetDevice new method GetNas</li>
+ StartNonContentionBasedRandomAccessProcedure
+ - LteUeMac added method AssignStreams
+ - LteUeNetDevice methods GetMac, GetRrc, GetImsi made const
+ - LteUeNetDevice new method GetNas
- LteUePhy new methods GetLteUeCphySapProvider, SetLteUeCphySapUser,
GetDlSpectrumPhy, GetUlSpectrumPhy, ReportInterference,
- ReportRsReceivedPower, ReceiveLteDlHarqFeedback</li>
+ ReportRsReceivedPower, ReceiveLteDlHarqFeedback
- LteUePhy DoSendMacPdu, DoSendLteControlMessage,
- DoSetTransmissionMode, DoSetSrsConfigurationIndex made private</li>
+ DoSetTransmissionMode, DoSetSrsConfigurationIndex made private
- LteUePhySapProvider removed methods SetBandwidth, SetTransmissionMode,
- SetSrsConfigurationIndex</li>
- - LteUePhySapProvider added method SendRachPreamble</li>
+ SetSrsConfigurationIndex
+ - LteUePhySapProvider added method SendRachPreamble
- AnimationInterface method EnableIpv4RouteTracking returns reference
- to calling AnimationInterface object</li>
+ to calling AnimationInterface object
- To make the API more uniform across the various
PropagationLossModel classes, the Set/GetLambda methods of the
FriisPropagationLossModel and TwoRayGroundPropagationLossModel
@@ -300,7 +325,7 @@
attribute is exported which replaces the pre-existing Lambda
attribute. Any previous user code setting a value for Lambda should
be changed to set instead a value of Frequency = C / Lambda, with C
- = 299792458.0. </li>
+ = 299792458.0.
\subsection ch- ns-3-17-build Changes to build system:
@@ -318,7 +343,7 @@
the link layer notification mechanism; specifically, looking into the
trace file to find packet receive events. If the model finds one
receive event for the data packet, it is used as the indicator for
- successful data delivery.</li>
+ successful data delivery.
<hr>
@@ -327,19 +352,19 @@
\subsection ch-ns-3-16-api New API:
- In the Socket class, the following functions were added:
- - (Set/Get)IpTos - sets IP Type of Service field in the IP headers.</li>
+ - (Set/Get)IpTos - sets IP Type of Service field in the IP headers.
- (Set/Is)IpRecvTos - tells the socket to pass information about IP ToS
- up the stack (by adding SocketIpTosTag to the packet).</li>
- - (Set/Get)IpTtl - sets IP Time to live field in the IP headers.</li>
+ up the stack (by adding SocketIpTosTag to the packet).
+ - (Set/Get)IpTtl - sets IP Time to live field in the IP headers.
- (Set/Is)RecvIpTtl - tells the socket to pass information about IP TTL
- up the stack (by adding SocketIpTtlTag to the packet).</li>
- - (Set/Is)Ipv6Tclass - sets Traffic Class field in the IPv6 headers.</li>
+ up the stack (by adding SocketIpTtlTag to the packet).
+ - (Set/Is)Ipv6Tclass - sets Traffic Class field in the IPv6 headers.
- (Set/Is)Ipv6RecvTclass - tells the socket to pass information about IPv6
- TCLASS up the stack (by adding SocketIpv6TclassTag to the packet).</li>
- - (Set/Get)Ipv6HopLimit - sets Hop Limit field in the IPv6 headers.</li>
+ TCLASS up the stack (by adding SocketIpv6TclassTag to the packet).
+ - (Set/Get)Ipv6HopLimit - sets Hop Limit field in the IPv6 headers.
- (Set/Is)Ipv6RecvHopLimit - tells the socket to pass information about
IPv6 HOPLIMIT up the stack (by adding SocketIpv6HoplimitTag to the
- packet).</li>
+ packet).
A user can call these functions to set/get the corresponding socket
option. See examples/socket/socket-options-ipv4.cc and
examples/socket/socket-options-ipv6.cc for examples.
@@ -352,13 +377,13 @@
than standard C++ ostreams. The purpose of this change was to make
them behave analogously to other helpers in ns-3 that generate ascii
traces. Now, the file stream that is open in MobilityHelper is closed
- nicely upon asserts and program exits.</li>
+ nicely upon asserts and program exits.
\subsection ch- ns-3-16-build Changes to build system:
- It's now possible to use distcc when building ns-3. See tutorial for
- details.</li>
+ details.
\subsection ch- ns-3-16-diff Changed behavior:
@@ -367,7 +392,7 @@
Ipv4Header. It is still not possible to manually put in arbitrary
checksum as the checksum is automatically calculated at Ipv4L3Protocol.
The user has to enable checksum globally for this to work. Simply calling
- Ipv4Header::EnableChecksum() for a single Ipv4Header will not work.</li>
+ Ipv4Header::EnableChecksum() for a single Ipv4Header will not work.
- Now MultiModelSpectrumChannel allows a SpectrumPhy instance to change
SpectrumModel at runtime by issuing a call to
MultiModelSpectrumChannel::AddRx (). Previously, MultiModelSpectrumChannel
@@ -382,7 +407,7 @@
- A RandomVariableStreamHelper has been introduced to assist with
using the Config subsystem path names to assign fixed stream numbers
- to RandomVariableStream objects.</li>
+ to RandomVariableStream objects.
\subsection ch- ns-3-15-old Changes to existing API:
@@ -391,12 +416,12 @@
implementations) have been ported to a new RandomVariableStream base class.
- For a given distribution DistributionVariable (such as UniformVariable),
the new class name is DistributionRandomVariable (such as
- UniformRandomVariable). </li>
+ UniformRandomVariable).
- The new implementations are also derived from class ns3::Object and
- are handled using the ns-3 smart pointer (Ptr) class. </li>
+ are handled using the ns-3 smart pointer (Ptr) class.
- The new variable classes also have a new attributed called "Stream"
which allows them to be assigned to a fix stream index when assigned
- to the underlying pseudo-random stream of numbers.</li>
+ to the underlying pseudo-random stream of numbers.
\subsection ch-ns-3-15-diff Changed behavior:
@@ -405,7 +430,7 @@
may exhibit changed output for a given run number or seed, due to a
possible change in the order in which random variables are assigned
to underlying pseudo-random sequences. Consult the manual for more
- information regarding this.</li>
+ information regarding this.
<hr>
@@ -556,10 +581,10 @@
\subsection ch-ns-3-13-new New API:
- In the mobility module, there is a new MobilityModel::GetRelativeSpeed()
- method returning the relative speed of two objects. </li>
+ method returning the relative speed of two objects.
- A new Ipv6AddressGenerator class was added to generate sequential
addresses from a provided base prefix and interfaceId. It also will detect
- duplicate address assigments. </li>
+ duplicate address assigments.
\subsection ch-ns-3-13-old Changes to existing API:
@@ -907,7 +932,7 @@
are <em>Ofdm</em> and <em>Dsss</em>. For modulation classes where
optional reduced-bandwidth transmission is possible, this is captured
in the final part of the form above, with <em>b</em> specifying the
- nominal signal bandwidth in megahertz. </li>
+ nominal signal bandwidth in megahertz.
- <b>Consolidation of classes support Wi-Fi Information Elements: </b><br/>
When the <em>mesh</em> module was introduced it added a class
@@ -916,7 +941,7 @@
the base classes (WifiInformationElement and
WifiInformationElementVector) into the <em>wifi</em> module. This
change is intended to ease the addition of support for modelling of
- further Wi-Fi functionality. </li>
+ further Wi-Fi functionality.
- <b>Changed for {Ipv4,Ipv6}PacketInfoTag delivery:</b><br/>
In order to deliver ancillary information to the socket interface
@@ -958,7 +983,7 @@
\endcode
- The method OutputStreamWrapper::SetStream (std::ostream *ostream) was
- removed.</li>
+ removed.
\subsection ch-ns-3-9-diff Changed behavior:
@@ -1182,20 +1207,20 @@
Method added to support checks of whether a destination address should be
accepted 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>
+ class Ipv4.
- <b>Net-anim interface</b><br/>
Provides an interface to net-anim, a network animator for point-to-point
links in ns-3. The interface generates a custom trace file for use with
- the NetAnim program.</li>
+ the NetAnim program.
- <b>Topology Helpers</b><br/>
New topology helpers have been introduced including PointToPointStarHelper,
- PointToPointDumbbellHelper, PointToPointGridHelper, and CsmaStarHelper.</li>
+ PointToPointDumbbellHelper, PointToPointGridHelper, and CsmaStarHelper.
- <b>IPv6 extensions support</b><br/>
Provides API to add IPv6 extensions and options. Two examples
- (fragmentation and loose routing) are available.</li>
+ (fragmentation and loose routing) are available.
\subsection ch-ns-3-7-old Changes to existing API:
@@ -1327,7 +1352,7 @@
YansWifiPhy::CcaModelThreshold from -140.0 dBm to -99.0 dBm. Rationale
can be found \bugid{689} here.
- - Default TTL of IPv4 broadcast datagrams changed from 1 to 64.</li>
+ - Default TTL of IPv4 broadcast datagrams changed from 1 to 64.
- Changed DcfManager::UpdateBackoff (): using flooring instead of rounding
in calculation of remaining slots. See \bugid{695}.
@@ -1524,11 +1549,11 @@
you must now use CreateObjectWithAttributes.
- <b>packet byte tags renaming</b><br/>
- - Packet::AddTag to Packet::AddByteTag</li>
- - Packet::FindFirstMatchingTag to Packet::FindFirstMatchingByteTag</li>
- - Packet::RemoveAllTags to Packet::RemoveAllByteTags</li>
- - Packet::PrintTags to Packet::PrintByteTags</li>
- - Packet::GetTagIterator to Packet::GetByteTagIterator</li>
+ - Packet::AddTag to Packet::AddByteTag
+ - Packet::FindFirstMatchingTag to Packet::FindFirstMatchingByteTag
+ - Packet::RemoveAllTags to Packet::RemoveAllByteTags
+ - Packet::PrintTags to Packet::PrintByteTags
+ - Packet::GetTagIterator to Packet::GetByteTagIterator
- <b>YansWifiPhyHelper::EnablePcap* methods not static any more</b><br/>
To accommodate the possibility of configuring the PCAP format used for
@@ -1704,7 +1729,7 @@
- <b>New WifiMacHelper objects</b><br/>
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>
+ They are passed as argument to WifiHelper::Install methods.
\code{.cc}
- void WifiHelper::SetMac (std::string type, std::string n0 = "", const AttributeValue &v0 = EmptyAttributeValue (),...)
@@ -1734,37 +1759,37 @@
added for ns-3.4 -- the ns-3-allinone feature. This allows a user to
get the most common options for ns-3 downloaded and built with a minimum
amount of trouble. See the ns-3 tutorial for a detailed explanation of
- how to use this new feature.</li>
+ how to use this new feature.
- The build system now runs build items in parallel by default. This includes
- the regression tests.</li>
+ the regression tests.
\subsection ch-ns-3-4-new New API:
- - XML support has been added to the ConfigStore in src/contrib/config-store.cc</li>
+ - XML support has been added to the ConfigStore in src/contrib/config-store.cc
- - The ns-2 calendar queue scheduler option has been ported to src/simulator</li>
+ - The ns-2 calendar queue scheduler option has been ported to src/simulator
- - A ThreeLogDistancePropagationLossModel has been added to src/devices/wifi</li>
+ - A ThreeLogDistancePropagationLossModel has been added to src/devices/wifi
- ConstantAccelerationMobilityModel in
- src/mobility/constant-acceleration-mobility-model.h</li>
+ src/mobility/constant-acceleration-mobility-model.h
- A new emulation mode is supported with the TapBridge net device (see
- src/devices/tap-bridge)</li>
+ src/devices/tap-bridge)
- A new facility for naming ns-3 Objects is included (see
- src/core/names.{cc,h})</li>
+ src/core/names.{cc,h})
- - Wifi multicast support has been added in src/devices/wifi</li>
+ - Wifi multicast support has been added in src/devices/wifi
\subsection ch-ns-3-4-old Changes to existing API:
- Some fairly significant changes have been made to the API of the
random variable code. Please see the ns-3 manual and
- src/core/random-variable.cc for details.</li>
+ src/core/random-variable.cc for details.
- The trace sources in the various NetDevice classes has been completely
reworked to allow for a consistent set of trace sources across the
@@ -1775,25 +1800,25 @@
like functionality and are plumbed up into the helper classes. The
user-visible changes are the trace source name changes and the ability
to do promiscuous-mode pcap tracing via helpers. For further information
- regarding these changes, please see the ns-3 manual</li>
+ regarding these changes, please see the ns-3 manual
- StaticMobilityModel has been renamed ConstantPositionMobilityModel
- StaticSpeedMobilityModel has been renamed ConstantVelocityMobilityModel</li>
+ StaticSpeedMobilityModel has been renamed ConstantVelocityMobilityModel
- The Callback templates have been extended to support more parameters.
- See src/core/callback.h</li>
+ See src/core/callback.h
- Many helper API have been changed to allow passing Object-based parameters
- as string names to ease working with the object name service.</li>
+ as string names to ease working with the object name service.
- The Config APIs now accept path segments that are names defined by the
- object name service.</li>
+ object name service.
- Minor changes were made to make the system build under the Intel C++
- compiler.</li>
+ compiler.
- Trace hooks for association and deassociation to/from an access point were
- added to src/devices/wifi/nqsta-wifi-mac.cc</li>
+ added to src/devices/wifi/nqsta-wifi-mac.cc
\subsection ch-ns-3-4-diff Changed behavior:
@@ -1807,7 +1832,7 @@
is transmitted over the channel medium. The scope of the changes is too
large to be included here. If you have concerns regarding trace semantics,
please consult the net device documentation for details. As is usual,
- the ultimate source for documentation is the net device source code.</li>
+ the ultimate source for documentation is the net device source code.
<hr>
@@ -1822,18 +1847,18 @@
- NetDevice::IsBridge ()
- 17-11-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/4c1c3f6bcd03">4c1c3f6bcd03</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/4c1c3f6bcd03">4c1c3f6bcd03</a>
- The PppHeader previously defined in the point-to-point-net-device code
has been made public.
- 17-11-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/16c2970a0344">16c2970a0344</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/16c2970a0344">16c2970a0344</a>
- An emulated net device has been added as enabling technology for
ns-3 emulation scenarios. See src/devices/emu and
examples/emu-udp-echo.cc for details.
- 17-11-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/4222173d1e6d">4222173d1e6d</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/4222173d1e6d">4222173d1e6d</a>
- Added method InternetStackHelper::EnableAsciiChange to allow allow
a user to hook ascii trace to the drop trace events in Ipv4L3Protocol
and ArpL3Protocol.
@@ -1842,33 +1867,33 @@
\subsection ch-ns-3-3-old Changes to existing API:
- NetDevice::MakeMulticastAddress() was renamed to NetDevice::GetMulticast()
- and the original GetMulticast() removed </li>
+ and the original GetMulticast() removed
- Socket API changes:
- - Return type of SetDataSentCallback () changed from bool to void </li>
- - Socket::Listen() no longer takes a queueLimit argument</li>
+ - Return type of SetDataSentCallback () changed from bool to void
+ - Socket::Listen() no longer takes a queueLimit argument
- As part of the Wifi Phy rework, there have been several API changes
- at the low level and helper API level. </li>
+ at the low level and helper API level.
- At the helper API level, the WifiHelper was split to three classes:
a WifiHelper, a YansWifiChannel helper, and a YansWifiPhy helper. Some
functions like Ascii and Pcap tracing functions were moved from class
WifiHelper to class YansWifiPhyHelper.
- At the low-level API, there have been a number of changes to
- make the Phy more modular:</li>
- - Composite-propagation-loss-model.h is removed</li>
- - DcfManager::NotifyCcaBusyStartNow() has changed name</li>
+ make the Phy more modular:
+ - Composite-propagation-loss-model.h is removed
+ - DcfManager::NotifyCcaBusyStartNow() has changed name
- Fragmentation related functions (e.g. DcaTxop::GetNFragments()) have
- changed API to account for some implementation changes</li>
- - Interference helper and error rate model added </li>
- - JakesPropagationLossModel::GetLoss() moved to PropagationLoss() class</li>
- - Base class WifiChannel made abstract </li>
- - WifiNetDevice::SetChannel() removed </li>
- - A WifiPhyState helper class added </li>
- - Addition of the YansWifiChannel and YansWifiPhy classes </li>
+ changed API to account for some implementation changes
+ - Interference helper and error rate model added
+ - JakesPropagationLossModel::GetLoss() moved to PropagationLoss() class
+ - Base class WifiChannel made abstract
+ - WifiNetDevice::SetChannel() removed
+ - A WifiPhyState helper class added
+ - Addition of the YansWifiChannel and YansWifiPhy classes
- 17-11-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/dacfd1f07538">dacfd1f07538</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/dacfd1f07538">dacfd1f07538</a>
- Change attribute "RxErrorModel" to "ReceiveErrorModel" in CsmaNetDevice
for consistency between devices.
@@ -1876,12 +1901,12 @@
\subsection ch-ns-3-3-diff changed behavior:
- 17-11-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/ed0dfce40459">ed0dfce40459</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/ed0dfce40459">ed0dfce40459</a>
- Relax reasonableness testing in Ipv4AddressHelper::SetBase to allow the
assignment of /32 addresses.
- 17-11-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/756887a9bbea">756887a9bbea</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/756887a9bbea">756887a9bbea</a>
- Global routing supports bridge devices.
@@ -1891,14 +1916,14 @@
\subsection ch-ns-3-2-new New API:
- 26-08-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/5aa65b1ea001">5aa65b1ea001</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/5aa65b1ea001">5aa65b1ea001</a>
- Add multithreaded and real-time simulator implementation. Allows for
emulated net devices running in threads other than the main simulation
thread to schedule events. Allows for pacing the simulation clock at
1x real-time.
- 26-08-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/c69779f5e51e">c69779f5e51e</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/c69779f5e51e">c69779f5e51e</a>
- Add threading and synchronization primitives. Enabling technology for
multithreaded simulator implementation.
@@ -1906,7 +1931,7 @@
\subsection ch-ns-3-2-newcl New API in existing classes:
- 01-08-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/a18520551cdf">a18520551cdf</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/a18520551cdf">a18520551cdf</a>
- class ArpCache has two new attributes: MaxRetries
and a Drop trace. It also has some new public methods but these are
mostly for internal use.
@@ -1915,7 +1940,7 @@
\subsection ch-ns-3-2-diff Changes to existing API:
- 05-09-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/aa1fb0f43571">aa1fb0f43571</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/aa1fb0f43571">aa1fb0f43571</a>
- Change naming of MTU and packet size attributes in CSMA and
Point-to-Point devices
@@ -1927,7 +1952,7 @@
ns3::PointToPointNetDevice::SetFrameSize for a detailed description.
- 25-08-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/e5ab96db540e">e5ab96db540e</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/e5ab96db540e">e5ab96db540e</a>
- \bugid{273}: constify packet pointers.<br>
The normal and the promiscuous receive callbacks of the NetDevice API
have been changed from:
@@ -1948,7 +1973,7 @@
of their SetReceiveCallback and SetPromiscReceiveCallback methods.
- 04-08-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/cba7b2b80fe8">cba7b2b80fe8</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/cba7b2b80fe8">cba7b2b80fe8</a>
- Cleanup of MTU confusion and initialization in CsmaNetDevice<br>
The MTU of the CsmaNetDevice defaulted to 65535. This did not
correspond with the expected MTU found in Ethernet-like devices.
@@ -1964,7 +1989,7 @@
issues and solution.
- 21-07-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/99698bc858e8">99698bc858e8</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/99698bc858e8">99698bc858e8</a>
- class NetDevice has added a pure virtual method that
must be implemented by all subclasses:
\code{.cc}
@@ -1988,7 +2013,7 @@
when the m_promiscRxCallback is called.
- 03-07-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/d5f8e5fae1c6">d5f8e5fae1c6</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/d5f8e5fae1c6">d5f8e5fae1c6</a>
- Miscellaneous cleanup of Udp Helper API, to fix \bugid{234}
\code{.cc}
class UdpEchoServerHelper
@@ -2013,7 +2038,7 @@
\endcode
- 03-07-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/3cdd9d60f7c7">3cdd9d60f7c7</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/3cdd9d60f7c7">3cdd9d60f7c7</a>
- Rename all instances method names using "Set..Parameter" to
"Set..Attribute" (\bugid{232})
- How to fix your code: Any use of helper API that was using a method
@@ -2029,7 +2054,7 @@
\subsection ch-ns-3-2-diff2 Changed behavior:
- 07-09-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/5d836ab1523b">5d836ab1523b</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/5d836ab1523b">5d836ab1523b</a>
- Implement a finite receive buffer for TCP<br>
The native TCP model in TcpSocketImpl did not support a finite
receive buffer. This changeset adds the following functionality
@@ -2055,7 +2080,7 @@
See \bugid{239} for more.
- 07-09-2008; changeset
- <a href="http://code.nsnam.org/ns-3-dev/rev/7afa66c2b291">7afa66c2b291</a></li>
+ <a href="http://code.nsnam.org/ns-3-dev/rev/7afa66c2b291">7afa66c2b291</a>
- Add correct FIN exchange behavior during TCP closedown<br>
The behavior of the native TcpSocketImpl TCP model was such that the
final FIN exchange was not correct, i.e. calling Socket::Close didn't