853.ns3_s
SPEC CPU®2026 Benchmark Description

Benchmark Name

853.ns3_s

Benchmark Program General Category

Discrete event network simulator for internet systems

Benchmark Authors

Gabriel de Carvalho Ferreira <gabrielcarvfer[at]gmail [dot] com>
Tom Henderson <tomh[at]tomh [dot] org>
Mathieu Lacage <mathieu.lacage[at]inria [dot] fr>
George F. Riley <riley[at]ece [dot] gatech [dot] edu>

853.ns3_s was submitted to the SPEC CPU v8 Benchmark Search Program by Gabriel de Carvalho Ferreira.

Benchmark Description

ns-3 is a discrete-event network simulator, targeted primarily for research and educational use. ns-3 is free software, licensed under the GNU GPLv2 license, and is publicly available for research, development, and use. The goal of the ns-3 project is to develop a preferred, open simulation environment for networking research: it should be aligned with the simulation needs of modern networking research and should encourage community contribution, peer review, and validation of the software.

The ns-3 project has built a solid simulation core that is well documented, easy to use and debug, and that caters to the needs of the entire simulation workflow, from simulation configuration to trace collection and analysis. Furthermore, the ns-3 software infrastructure encourages the development of simulation models which are sufficiently realistic to allow ns-3 to be used as a realtime network emulator, interconnected with the real world and which allows many existing real-world protocol implementations to be reused within ns-3.

The ns-3 simulation core supports research on both IP and non-IP based networks. The large majority of the common usage focuses on wireless/IP simulations which involve models for Wi-Fi, WiMAX, or LTE for layers 1 and 2 and a variety of static or dynamic routing protocols such as Optimized Link State Routing (OLSR) and Ad hoc On-Demand Distance Vector Routing (AODV) for IP-based applications.

For SPEC CPU, we have sampled from the large set of simulation examples and chosen a small set of configurable scenarios which provide a broad set of code coverage from important models. These mostly focus on TCP and WiFi, and exercise examples from those directories. Each scenario is built in its own binary, and has multiple parameters for configurability. The scenarios are explained below along with links to further information.

Scenario Detailed Notes Short Description Sizes
Data Center TCP dctcp-example.txt Data Center TCP is a TCP-like protocol for data center networks, leveraging Explicit Congestion Notification (ECN) to provide multi-bit feedback to the end hosts, to tolerate high burst and low latency for short flows. refrate
FQ-CoDel fqcodel-l4s-example.txt Fair/Flow Queue Control Delay, an active queue management algorithm in network routing, designed to overcome bufferbloat in networking hardware by setting limits on the delay that network packets experience as they pass through buffers. refspeed
LTE radio link failure lena-radio-link-failure.txt Simulation of an LTE radio detaching from a cell. The radio receiver begins within the coverage of the antenna, and a connection is established using the Radio Resource Control protocol. As the receiver moves away from antenna, the signal degrades, the radio link fails, and the receiver begins searching for cell service. refrate
LTE Handoff mobile-scenario.txt Recurring handovers of User Equipment (UE) across nearby LTE cells (evolved NodeB, or eNB). The eNBs are connected to the network core, which is then connected to a remote host on the internet. The application setup simulates the two-way communication between client and server, which gets disrupted by the handover as observed in the flow statistics. refrate, refspeed
TCP Pacing tcp-pacing.txt Enables TCP Pacing on a network socket. Two long-running TCP flows send data over a bottleneck link, exercising congestion control. Packet transmission and reception time is recorded. test, refrate, refspeed
TCP congestion control tcp-validation.txt Test to observe and verify long-running TCP congestion control behavior over a configurable bottleneck link. Clients and Servers are configured for ICMP measurements plus TCP throughput and latency measurements downstream. refspeed
Wi-Fi Aggregation wifi-aggregation.txt Exercises an 802.11n aggregation of four independent Wi-Fi networks. Each network contains one access point (AP) and one station; each station continuously transmits data packets to its respective AP. As the distance increases between an AP and its station, the frame error rate increases and reduces overall network throughput. refspeed
Extremely High Throughput wifi-eht-network.txt Configures an IEEE 802.11be Wi-Fi network with Best Effort Access Class. The simulation outputs the UDP or TCP goodput for every value of Modulation and Coding Set (MCS) for an Extremely High Throughput (EHT) network. refrate, refspeed
Mixed Network wifi-mixed-network.txt Configures mixed Wi-Fi networks such as mixed b/g with High Throughput (HT) versus non-HT. Performance is measured to show how the presence of an 802.11b station strongly impacts 802.11g performance. test, train, refrate, refspeed

Input Description

The first argument to the ns3 binary is the scenario name as described in the above table. Each scenario is self-contained and has its own set of command line parameters; appending --help as the second argument will provide the entire list of parameters for that scenario. A savvy user could craft their own simulation scenarios after studying the parameters and scenario notes. An advanced user can look at the examples directory in the source tree, and build scenarios beyond those chosen for SPEC CPU to exercise other features of the ns-3 framework.

The ns-3 tutorial is available locally in ns-3-tutorial.pdf, as well as online at www.nsnam.org/docs/release/3.38/tutorial/html.

Newer documentation may be available at www.nsnam.org/documentation.

Output Description

The outputs are the stdout of each invocation, along with the trace collateral generated in text form by some of the workloads. The outputs are described in more detail at the links in the table above. These outputs are verified.

ns-3 simulations are completely deterministic, and reproducible when given the same seed values. Thus, the outputs must match exactly to the expected outputs. There is a small absolute tolerance of 0.000001 to accommodate drift in float data-types across architectures.

Programming Language

C++

Threading Model

Both the SPECrate (753.ns3_r) and SPECspeed (853.ns3_s) versions are single-threaded. The SPECspeed version exercises more of the code and runs longer.

Known Portability Issues

ns-3 makes use of std::isnan, and as such, support for infinite math is required.

Sources and Licensing

ns-3 is available to download from www.nsnam.org/releases. The development repository can be found at gitlab.com/nsnam/ns-3-dev. The SPEC CPU version started from version 3.38 with some cherry-picked patches (including MR-1582) to address undefined behavior exposed by SPEC CPU testing.

ns-3 is distributed under the GPL-v2.

SPEC added a version of the Mersenne-Twister PRNG that is licensed by its authors (Makoto Matsumoto, Takuji Nishimura, and Mutsuo Saito) under a BSD license.

Additionally, windowed-filter.h is distributed under a BSD-3 license copyrighted by The Chromium Authors and Google, Inc.

References

Copyright © 2026 Standard Performance Evaluation Corporation (SPEC®)