Skip to content

Commit 826bd51

Browse files
committed
WHATSNEW: After review, applied several additional changes suggested by AI.
1 parent 14c1972 commit 826bd51

1 file changed

Lines changed: 45 additions & 41 deletions

File tree

WHATSNEW

Lines changed: 45 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,36 @@
11
Recent changes in the INET Framework
22
====================================
33

4-
INET-4.6 (February 2026) - Stable
5-
---------------------------------
4+
INET-4.6 (February 2026) — feature release
5+
------------------------------------------
66

77
This is a new feature release in the INET 4.x branch. Highlights include new
88
protocol implementations for QUIC, Ethernet 10BASE-T1S, IPsec, and MRP; major
99
refinements to the clock model; a reimplementation of IEEE 802.1AS (gPTP); and
1010
an important refactoring of the wireless physical layer's analog domain. The
1111
release continues to focus on improving correctness, accuracy, modularity, and
1212
long-term maintainability while addressing several long-standing limitations.
13-
OMNeT++ 6.2 or later is required.
13+
Requires OMNeT++ 6.2 or later.
14+
15+
For the full list of additions, removals, and changes (features, modules, packet
16+
chunks/tags, signals, statistics, and C++ classes), see ChangeLog in the src
17+
folder.
1418

15-
For a complete list of added, removed, and changed features, folders, modules,
16-
packet chunks, packet tags, signals, statistics, and C++ classes, see the
17-
ChangeLog file in the src folder.
19+
For further questions, detailed explanations, and guided exploration of INET
20+
concepts and features, a dedicated AI-powered wiki is now available at
21+
https://deepwiki.com/inet-framework/inet
1822

1923
Notable backward-incompatible changes include the following:
2024

2125
1. Clock model refinement
2226

2327
The clock and oscillator models were substantially reworked to improve
2428
accuracy, correctness, and robustness. Clock time to simulation time mapping
25-
and clock time interval to number of oscillator ticks conversions were
26-
rewritten for mathematical correctness, with stricter consistency checks.
27-
Accuracy was improved through precise arithmetic and new scaling utilities
28-
such as the NumberNear1 and SimTimeScale classes. The design is prepared for
29-
future 128-bit simulation time support.
29+
and clock-interval to oscillator-tick conversions were rewritten for
30+
mathematical correctness, with stricter consistency checks. Accuracy was
31+
improved using precise arithmetic and new scaling utilities (e.g.,
32+
NumberNear1 and SimTimeScale). The design anticipates future 128-bit
33+
simulation time support.
3034

3135
The updated model now accumulates fractional oscillator compensation for more
3236
accurate timing. The clock's nominal tick interval must be explicitly
@@ -43,11 +47,11 @@ Notable backward-incompatible changes include the following:
4347
StepClockServo module for implementation.
4448

4549
Clock event handling was also refined: overdue events are now processed
46-
immediately in clock-time order, and newly scheduled events are inserted at
47-
the lower bound of the corresponding simulation-time interval while
48-
preserving stable ordering. Clock time to simulation time conversion methods
49-
now accept explicit lower-bound arguments to ensure robust tie-breaking
50-
between adjacent ticks.
50+
immediately, in clock-time order, and newly scheduled events are inserted at
51+
the lower bound of the corresponding simulation-time interval, preserving
52+
stable ordering. Clock time to simulation time conversion methods now accept
53+
explicit lower-bound arguments to ensure robust tie-breaking between adjacent
54+
ticks.
5155

5256
Clock and oscillator documentation was significantly expanded and formalized
5357
to reflect the stricter semantics of the new implementation.
@@ -71,14 +75,14 @@ Notable backward-incompatible changes include the following:
7175

7276
For improved standards compliance, message timestamping now occurs at
7377
transmission start and reception start rather than at completion. As a
74-
result, simulations must use physical layer modules that provide explicit
78+
result, simulations must use physical layer modules that emit explicit
7579
start-of-transmission and start-of-reception signals, such as the
7680
StreamingTransmitter and DestreamingReceiver modules.
7781

7882
Due to the high precision required for time synchronization, accurately
7983
modeling a 1 ppm clock drift with a nominal 10 ns tick interval requires very
8084
fine time granularity. gPTP simulations therefore typically require
81-
femtosecond (fs) simulation time resolution, which can be enabled using the
85+
femtosecond (fs) simulation time resolution, which can be enabled via the
8286
simtime-resolution configuration option.
8387

8488
This change is backward incompatible in that simulations using gPTP may
@@ -88,11 +92,11 @@ Notable backward-incompatible changes include the following:
8892
3. Ethernet module renames
8993

9094
Existing Ethernet MAC modules were renamed to use the MacPhy suffix (e.g.
91-
EthernetMacPhy, EthernetCsmaMacPhy) to reflect that they implement both MAC
92-
and PHY functionality in a single module. This resolves naming conflicts
93-
introduced by the new dedicated EthernetCsmaMac and EthernetCsmaPhy modules,
94-
which provide a modern, state-machine-based implementation of the individual
95-
layers and are primarily used by the new Ethernet 10BASE-T1S model.
95+
EthernetMacPhy, EthernetCsmaMacPhy) to reflect that they combine MAC and PHY
96+
functionality in a single module. This resolves naming conflicts introduced
97+
by the new dedicated EthernetCsmaMac and EthernetCsmaPhy modules, which
98+
provide a modern, state-machine-based implementation of the individual layers
99+
and are primarily used by the new Ethernet 10BASE-T1S model.
96100

97101
These changes are backward incompatible for simulations that directly
98102
reference the old module names.
@@ -102,8 +106,7 @@ Notable backward-incompatible changes include the following:
102106
The wireless physical layer was significantly refactored to simplify how the
103107
analog representation of radio signals is selected. Instead of using separate
104108
module types, radio and medium modules now use a signalAnalogRepresentation
105-
parameter (with values unitDisk, scalar, or dimensional) to control their
106-
behavior.
109+
parameter (unitDisk, scalar, or dimensional) to control their behavior.
107110

108111
Responsibility for computing reception success was partially moved from
109112
receiver modules to their analog model submodules. To reflect broader
@@ -114,7 +117,7 @@ Notable backward-incompatible changes include the following:
114117

115118
Specific wireless technologies, including IEEE 802.11, IEEE 802.15.4, and
116119
APSK, were refactored to align with the new architecture and can now be used
117-
with the unit disk signal analog representation.
120+
with the unitDisk signal analog representation.
118121

119122
5. CRC, FCS, and Checksum
120123

@@ -132,7 +135,7 @@ Notable backward-incompatible changes include the following:
132135
preserving existing behavior by default.
133136

134137
Note that these changes are backward incompatible for simulations that
135-
explicitly configure crcMode or fcsMode parameters.
138+
explicitly configure the old crcMode or fcsMode parameters.
136139

137140
Notable backward compatible changes are the following:
138141

@@ -241,7 +244,7 @@ Notable backward compatible changes are the following:
241244
ad hoc network communicating with a wired Ethernet host through a gateway
242245
router.
243246

244-
7. GPSR multipe network interfaces
247+
7. GPSR multiple network interfaces
245248

246249
The GPSR (Greedy Perimeter Stateless Routing) protocol was updated to support
247250
simultaneous use of multiple network interfaces, with refactored logic and
@@ -275,10 +278,10 @@ Notable backward compatible changes are the following:
275278
and pull-based interfaces. Most modules now treat connected sources and sinks
276279
as optional, enabling these modules to also connect to non-queueing elements.
277280

278-
Classifiers and schedulers have been extended to enable pulling from and
279-
pushing to packets, respectively. Typically, however, they are used the other
280-
way around, with packets being pushed into classifiers and pulled from
281-
schedulers.
281+
Classifiers and schedulers have been extended to enable pulling packets from
282+
them and pushing packets to them, respectively. Typically, however, they are
283+
used the other way around, with packets being pushed into classifiers and
284+
pulled from schedulers.
282285

283286
Several new modules and module interfaces have also been added. For example,
284287
the QueueBasedTokenGenerator allows the QueueFiller module to generate
@@ -295,7 +298,7 @@ Notable backward compatible changes are the following:
295298

296299
In addition, passive packet sinks have been extended with optional statistics
297300
to detect duplicate, out-of-order, and missing packets based on packet name
298-
index suffixes. To name a few additonal statistical changes, the
301+
index suffixes. To name a few additional statistical changes, the
299302
MultiTokenBucketMeter and MultiTokenBucketClassifier modules now record
300303
separate statistics for each individual token bucket they contain, and the
301304
SlidingWindowRateMeter and ExponentialRateMeter modules now provide
@@ -318,13 +321,13 @@ Notable backward compatible changes are the following:
318321
FCS headers, and EthernetFcsHeaderChecker, which checks and strips Ethernet
319322
FCS headers.
320323

321-
Added modules for the EtherType Protocol Discrimination (EPD) header
322-
support IEEE 802 LLC implementations.
324+
Added modules to support the EtherType Protocol Discrimination (EPD) header
325+
used by IEEE 802 LLC implementations.
323326

324327
11. Visualizers
325328

326329
The RoutingTableCanvasVisualizer has been extended with a lazy update
327-
mechanism that refreshes visualizations only when needed, grealy improving
330+
mechanism that refreshes visualizations only when needed, greatly improving
328331
performance. Support for multicast routing tables has been added, along with
329332
new filtering parameters to control multicast group, source address, and
330333
source node visualization.
@@ -412,7 +415,7 @@ Notable backward compatible changes are the following:
412415

413416
18. Notable bug fixes and other changes
414417

415-
Introduced new SimpleModule, CompoundModule, and ModuleMixin as standard
418+
Added INET-specific SimpleModule, CompoundModule, and ModuleMixin as standard
416419
bases to derive all modules from. They have a displayStringTextFormat
417420
parameter that supports the old style format directives and also WATCH
418421
variable references. Deriving new or existing modules from these bases is
@@ -443,7 +446,7 @@ Notable backward compatible changes are the following:
443446
controlling the message dispatching mechanism, in contrast with the automatic
444447
learning of protocol and interface registrations.
445448

446-
Improved EIGROP on stability, cleanup, and modernization. Several bugs were
449+
Improved EIGROP stability, cleanup, and modernization. Several bugs were
447450
fixed to prevent dangling pointers, handle dynamic neighbor changes
448451
correctly, and align IPv4 route removal with IPv6 behavior. Core code paths
449452
were refactored to use modern C++ constructs, missing interface parameters
@@ -456,8 +459,9 @@ Notable backward compatible changes are the following:
456459
evaluation, with the index tracked per context component path. The par()
457460
function allows dynamic access to module parameters inside expressions.
458461

459-
All filename module parameters now support substitution, allowing config
460-
name, experiment, iteration, run numbers, etc. to be included in filenames.
462+
All module parameters specifying filenames now support substitution, allowing
463+
config name, experiment, iteration, run number, etc. to be referenced in the
464+
values.
461465

462466
Added the DemuxAppFilter, a result filter that de-multiplexes signals by
463467
their originating application module, making it easy to record
@@ -495,7 +499,7 @@ Notable backward compatible changes are the following:
495499
Removed all per-folder ChangeLog files that summarized local changes, since
496500
they are no longer useful with current AI tools.
497501

498-
Several additional issues documented on GitHub have also been fixed.
502+
Several additional issues reported on GitHub have also been fixed.
499503

500504

501505
INET-4.5 (April 2023) - Stable

0 commit comments

Comments
 (0)