Fora.Rti 20260611.0.0

dotnet add package Fora.Rti --version 20260611.0.0
                    
NuGet\Install-Package Fora.Rti -Version 20260611.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Fora.Rti" Version="20260611.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Fora.Rti" Version="20260611.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Fora.Rti" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Fora.Rti --version 20260611.0.0
                    
#r "nuget: Fora.Rti, 20260611.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Fora.Rti@20260611.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Fora.Rti&version=20260611.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Fora.Rti&version=20260611.0.0
                    
Install as a Cake Tool
---

description: Package-focused documentation for the Fora.Rti NuGet package and its Fora.Rti.Server executable.

Fora.Rti

Fora.Rti is a full capability RTI conforming to IEEE 1516-2025 (a.k.a. HLA 4) used by HLA federation development environments such as SimGe. See [[Release Notes]] for what's new.

Key Features

  • Full IEEE 1516-2025 (HLA 4) Support: Built from the ground up for the latest HLA standard using the official Federate Protocol.
  • Dual-Stack Connectivity: Supports concurrent IPv4 and IPv6 connections on the Federate Protocol port (15164).
  • Headless Production Host: Runs without an interactive UI by default, suitable for Docker, CI, cloud hosts, and background services.
  • High-Performance Architecture: Asynchronous, non-blocking core capable of handling high-frequency updates and complex routing with minimal latency.
  • Transparent Persistence: Built-in save/restore engine to capture and resume simulation states across sessions.

Supported HLA Service Groups

🏛️ Federation Management

  • Full lifecycle management (Create/Join/Resign/Destroy).
  • Federation Save & Restore: Coordinated multi-federate snapshot persistence (IEEE 1516-2025 §4.17) with pluggable storage.
  • Synchronization point coordination and federation-wide state tracking.

📢 Declaration Management

  • Dynamic FOM Merging: Support for loading and merging multiple FOM modules per federation execution.
  • FOM-backed handle resolution with full Object and Interaction class hierarchy support.
  • Advanced Advisory Support: Full implementation of advisory switches (Object/Attribute Relevance, Attribute Scope, etc.) with automatic federate notification.

📦 Object Management

  • Object instance registration and discovery.
  • Attribute updates and interaction sending with best-effort and reliable delivery.
  • Directed interactions and per-receiver attribute filtering.

⏱️ Time Management

  • Logical time regulation and constraint gating.
  • LBTS and GALT calculation for federation-wide synchronization.
  • Message retraction support for pending TSO interactions.

🗺️ Data Distribution Management (DDM)

  • Spatial filtering based on per-dimension region overlap mathematics.
  • Region-filtered attribute updates and interactions.
  • Dynamic region association and modification.

🔑 Ownership Management

  • Attribute ownership acquisition and divestiture.
  • Push and pull-based ownership transfer models.

📊 Management Object Model (MOM)

  • Built-in support for HLAmanager object and interaction hierarchy.
  • Real-time reporting of federate and federation state via MOM attributes.

🛠️ Support Services

  • Handle/Name Resolution: Centralized resolution for Objects, Attributes, Interactions, Parameters, and Regions.
  • FOM Metadata Services: Inspect class hierarchies and available dimensions for simulation objects.
  • Transportation & Order: Support for Reliable/Best-effort and Receive/Timestamped message routing.
  • Version Reporting: Standards compliance reporting (IEEE 1516-2025) and capability discovery.

Error Handling

Fora.Rti implements the complete IEEE 1516-2025 exception matrix. All simulator errors are mapped to standard HLA exception names (e.g., ObjectClassNotPublished, InvalidLogicalTime, FederateInternalError) and delivered to the client with descriptive error messages.

Install

dotnet add package Fora.Rti --version 20260603.0.0

Run

Fora.Rti package name and the executable name are intentionally different:

  • NuGet package: Fora.Rti
  • Server executable inside the package: Fora.Rti.Server.dll / Fora.Rti.Server.exe

Fora.Rti is packaged as a portable simulator runtime under tools/net10.0/any. After restore/install, run the server executable from that package content.

1. Direct Execution (Windows)

Run the executable directly from the package directory:

.\Fora.Rti.Server.exe

2. Using DotNet CLI (Cross-platform)

dotnet Fora.Rti.Server.dll

The production server starts in headless mode with stdout logging.

Important:

  • This package contains the server host, not the interactive TUI.
  • Fora.Rti.Console is intentionally not included in the NuGet package.
  • The repository host project path is now src/Fora.Rti.Server/Fora.Rti.Server.csproj.
  • Fora.Rti.Console remains the separate in-repo TUI for local development and diagnostics.

If you are running from source instead of the packaged output:

dotnet run --project src\Fora.Rti.Server\Fora.Rti.Server.csproj

The Fora RTI stack is intentionally split into separate pieces:

  • Fora.Rti.Server
    • The headless production-style server host included in this package.
  • Fora.Rti.Console
    • A separate in-repository interactive TUI for local development and diagnostics.
    • Not included in the Fora.Rti NuGet package.
  • Fora.Rti.Admin
    • A separate remote administration CLI for one-off operational commands.
    • Not included in the Fora.Rti NuGet package.

Network & Endpoints

When started, Fora.Rti initializes two concurrent servers:

  1. Simulation Server (TCP/15164):

    • Dedicated to IEEE 1516-2025 Federate Protocol binary traffic.
    • This is the primary endpoint for federate connections.
    • Port and bind address are controlled by ForaRtiServer:FederateProtocolPort and ForaRtiServer:FederateProtocolBindAddress.
  2. Management Web API (HTTP):

    • Runs on the default ASP.NET Core port (usually 5000 or as configured via ASPNETCORE_URLS).
    • GET /: Quick status and protocol check.
    • GET /version: Detailed JSON metadata including capability levels.
    • GET /health: Health probe for container orchestrators (ASP.NET Core IHealthCheck integration; reports FpServer.IsListening and active session count).
    • GET /admin/federations: Lists active federation executions by name.
    • GET /admin/federates: Lists joined federates with name, type, and federation name.
    • GET /admin/sessions: FP session registry snapshot (sessionId, connectionId, lastSeenUtc, isOnline).
    • GET /admin/logs?since=<ISO8601>: Server log entries with optional time filter.
    • POST /admin/shutdown: Initiates graceful server shutdown via IHostApplicationLifetime.
    • POST /admin/snapshot/{label}: Saves full RTI state to ISnapshotStore, bypassing HLA protocol.
    • POST /admin/snapshot/{label}/restore: Restores RTI state from a saved snapshot; returns 404 if label not found.

Package Content

The package contains the standalone RTI simulator and its dependencies:

  • Executable: Fora.Rti.Server.dll / Fora.Rti.Server.exe
  • Standards: Standards/HLAstandardMIM-2025.xml, IEEE1516-FDD-2025.xsd
  • Internal Stack: Fora.Abstractions.dll, Fora.Core.dll, Fora.Protocol.dll, Fora.Rti.Core.dll
  • Configuration: appsettings.json
  • Excluded by design: Fora.Rti.Console.dll, Spectre.Console.dll

Standards Attribution IEEE 1516.2-2025:

"The IEEE hereby grants a general, royalty-free license to copy, distribute, display and make derivative works from this material, for all purposes, provided that any use of the material contains the following attribution: “Reprinted with permission from IEEE 1516.2(TM)-2025”. Should you require additional information, contact the Manager, Standards Intellectual Property, IEEE Standards Association (stds-ipr@ieee.org)."


Disclaimer

Fora environment is a free academic research toolbox provided “as is” without warranty or guaranteed support. It is intended solely for research and educational use and is not suitable for production or mission-critical environments. Backward compatibility is not guaranteed. Users assume all risks associated with its use. Feedback may be submitted via the Contact page.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
20260611.0.0 162 6/4/2026
20260603.0.0 183 6/3/2026
20260522.0.0 198 5/22/2026
20260503.0.0 197 5/3/2026
20260429.0.0 202 4/29/2026
20260426.0.0 210 4/25/2026
20260423.4.0 212 4/23/2026
20260421.2.0 212 4/21/2026
20260420.1.0 216 4/20/2026
20260419.1.0 212 4/18/2026
20260418.0.0 213 4/18/2026
20260417.0.0 214 4/17/2026

20260611.0.0 - Adds telemetry buffer health, overhead metadata, manifest reader/projections, and sender member-count coverage.