DEENESPTFRRUARHIKOZHNL

clase apext::tsync::FVM

[SWS_TS_14197] Upstream: RS_TS_20072 texto aún no importado

class FVM {...};

A freshness value management interface for ara::tsync.

Header-Datei#include "apext/tsync/fvm.h"
Forwarding-Header#include "apext/tsync/tsync_fwd.h"
Scopenamespace apext::tsync

Guía del usuarioGENERADO POR IA

Proporciona valores de frescura para la autenticación de mensajes transmitidos y recibidos de la sincronización temporal.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 88e47d85a572 Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Proporciona valores de frescura para la autenticación de mensajes transmitidos y recibidos de la sincronización temporal.

La clase apext::tsync::FVM sirve como interfaz del módulo para proporcionar valores de frescura para mensajes protegidos de sincronización temporal [SWS_TS_14199]. Antes de su uso operativo, la instancia debe inicializarse, tras lo cual pueden obtenerse valores de frescura tanto para el envío como para la verificación de mensajes recibidos [SWS_TS_14200]. En la recepción, los valores de frescura truncados se transfieren junto con un contador de intentos fallidos para reconstruir el valor completo para la comprobación del autenticador. Todos los métodos de la interfaz están especificados como seguros frente a excepciones y seguros para subprocesos.

Contexto

La clase apext::tsync::FVM representa una interfaz para la gestión de valores de frescura (Freshness Value Management) dentro del módulo tsync de AUTOSAR Adaptive Platform. Su responsabilidad principal consiste en proporcionar valores de frescura (Freshness Values) actuales para el servicio de sincronización temporal ara::tsync, de modo que los mensajes puedan protegerse criptográficamente contra ataques de repetición y de suplantación (spoofing) [SWS_TS_14198], [SWS_TS_14199].

Como interlocutor central de interacción actúa la funcionalidad TimeSync, la cual invoca a la FVM para obtener contenedores de valores de frescura (apext::tsync::FVContainer) tanto para mensajes protegidos salientes como recibidos [SWS_TS_14198], [SWS_TS_14199]. La declaración de la clase se incluye a través del archivo de encabezado #include "apext/tsync/fvm.h". Todos los métodos especificados están declarados como seguros para subprocesos y seguros frente a excepciones (noexcept), de modo que las llamadas pueden tener lugar en paralelo desde diferentes contextos de ejecución de la sincronización temporal [SWS_TS_14198], [SWS_TS_14199], [SWS_TS_14200].

Ciclo de vida

El ciclo de vida funcional de una instancia de FVM se divide en una fase de inicialización explícita y la posterior fase de operación:

  • Inicialización: antes de utilizar las funciones de consulta, debe invocarse el método Initialize() [SWS_TS_14200]. En caso de finalización correcta, devuelve un ara::core::Result<void> vacío. Si la inicialización falla, devuelve el código de error TsyncFvmErrc::kFVInitializeFailed con semántica de reversión (rollback) [SWS_TS_14200].
  • Estado operativo: una inicialización correcta debería ser el requisito necesario para que las solicitudes posteriores de valores de frescura proporcionen resultados válidos. Pregunta Q-df4ee3e749313b94 (abierta) Una vez completada la inicialización, la instancia permanece en estado operativo y responde a las solicitudes para los ID de valor de frescura configurados.
  • Concurrencia: dado que todos los métodos están marcados como thread-safe, los accesos a los valores de frescura para el envío y la recepción pueden realizarse de manera concurrente sin mecanismos externos de bloqueo [SWS_TS_14198], [SWS_TS_14199].

Ruta de uso

La secuencia típica de llamadas por parte del componente TimeSync comprende la inicialización, así como la determinación continua de valores de frescura para la ruta de envío y de recepción:

  1. Inicialización del servicio: TimeSync ejecuta al inicio el método Initialize() y comprueba la ausencia de errores en el ara::core::Result devuelto [SWS_TS_14200].
  2. Envío de mensajes protegidos: antes de transmitir un mensaje, TimeSync invoca GetTxFreshness() con el FreshnessValueID correspondiente [SWS_TS_14199]. El objeto FVContainer obtenido proporciona el valor de frescura que se utiliza para calcular el autenticador [SWS_TS_14199].
  3. Recepción de mensajes protegidos: a la llegada de un mensaje, TimeSync invoca GetRxFreshness() y transfiere el FreshnessValueID, el valor truncado TruncatedFreshnessValue contenido en el mensaje, así como el número de intentos de autenticación realizados hasta el momento AuthVerifyAttempts [SWS_TS_14198]. La FVM determina a partir de ello el valor de frescura completo para la verificación del autenticador [SWS_TS_14198].
Inicialización y determinación del valor de frescura en TimeSyncTimeSyncFVMUse Case: InitialisierungInitialize()ara::core::Result<void>Use Case: Envío de un mensajeGetTxFreshness(FreshnessValueID)ara::core::Result<FVContainer>Use Case: Recepción de un mensajeGetRxFreshness(FreshnessValueID, TruncatedFreshnessValue, AuthVerifyAttempts)ara::core::Result<FVContainer>

Diagrama de secuencia: secuencia típica de inicialización y consulta de los valores de frescura de envío y recepción por parte de TimeSync. Fuentes: [SWS_TS_14198], [SWS_TS_14199], [SWS_TS_14200]

Escenarios de error

Todos los métodos de la interfaz señalan errores mediante ara::core::Result y están especificados con noexcept [SWS_TS_14198], [SWS_TS_14199], [SWS_TS_14200]. Los siguientes estados de error y condiciones previas son relevantes:

  • Inicialización fallida (TsyncFvmErrc::kFVInitializeFailed): se produce cuando la FVM no puede inicializarse [SWS_TS_14200]. Gracias a la semántica de reversión, el sistema permanece en el estado inicial definido y no inicializado.
  • Valor de frescura no disponible (TsyncFvmErrc::kFVNotAvailable): es devuelto por GetTxFreshness() o GetRxFreshness() cuando no hay ningún valor de frescura disponible para el ID solicitado [SWS_TS_14198], [SWS_TS_14199]. Las operaciones no modifican su estado en caso de error (semántica de reversión).
  • Intentos repetidos de verificación en la recepción: el parámetro AuthVerifyAttempts comienza en 0 y se incrementa con cada intento fallido de autenticación [SWS_TS_14198]. El incremento debería servir a la FVM para adaptar gradualmente una ventana interna de aceptación, con el fin de tolerar valores de frescura ligeramente desfasados en el tiempo. Pregunta Q-8f151c47d2607f90 (abierta)

Esta guía se basa exclusivamente en los requisitos de especificación de AUTOSAR R25-11 para el módulo tsync y ha sido generada de forma automatizada.

Mapa de miembros

Diagrama de clases

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G napext__tsync__FVM697 FVM + GetRxFreshness() + GetTxFreshness() + Initialize()

Vista de detalle

Selecciona una entrada en el índice.

Métodos

Used by TimeSync to obtain the current freshness value for received messages.

ara::core::Result< FVContainer > GetRxFreshness (std::uint16_t FreshnessValueID, const FVContainer &TruncatedFreshnessValue, std::uint16_t AuthVerifyAttempts) noexcept;

Used by TimeSync to obtain the current freshness value for transmitted messages.

ara::core::Result< FVContainer > GetTxFreshness (std::uint16_t FreshnessValueID) noexcept;
Initialize función

Initializes FVM

ara::core::Result< void > Initialize () noexcept;

Documentación de los métodos

función GetRxFreshness [SWS_TS_14198] Upstream: RS_TS_20072 texto aún no importado

ara::core::Result< FVContainer > GetRxFreshness (std::uint16_t FreshnessValueID, const FVContainer &TruncatedFreshnessValue, std::uint16_t AuthVerifyAttempts) noexcept;

Used by TimeSync to obtain the current freshness value for received messages.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 37f7da507510 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La interfaz síncrona GetRxFreshness de la clase apext::tsync::FVM (definida en apext/tsync/fvm.h) sirve a TimeSync para determinar el valor de frescura actual para los mensajes entrantes [SWS_TS_14198].

La llamada requiere tres parámetros [SWS_TS_14198]:

  • FreshnessValueID: Identificador numérico del valor de frescura (std::uint16_t) [SWS_TS_14198].
  • TruncatedFreshnessValue: El contenedor (apext::tsync::FVContainer) con los valores de frescura truncados procedentes del mensaje protegido recibido [SWS_TS_14198].
  • AuthVerifyAttempts: Contador de intentos de autenticación para este mensaje desde su última recepción; el valor comienza en 0 para el primer intento y se incrementa con cada intento de verificación fallido [SWS_TS_14198].

La función devuelve un ara::core::Result<FVContainer> [SWS_TS_14198]. En caso de éxito, este contiene un apext::tsync::FVContainer con el valor de frescura completo que TimeSync requiere para el cálculo posterior del autenticador [SWS_TS_14198]. Si el valor de frescura no está disponible, se notifica un error recuperable con el código de error TsyncFvmErrc::kFVNotAvailable y semántica de reversión [SWS_TS_14198].

La firma está declarada con noexcept; la implementación está especificada como segura contra excepciones (exception safe) y segura para hilos (thread-safe) [SWS_TS_14198].

Este texto ha sido generado por una IA sobre la base de la especificación R25-11 de AUTOSAR.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "apext/tsync/fvm.h"
Scopeclass apext::tsync::FVM
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
FreshnessValueIDTruncatedFreshnessValueAuthVerifyAttemptsthe identifier of the freshness value. the apext::tsync::FVContainer with the values from the received Secured message. the number of authentication verify attempts of this message since the last reception. The value is 0 for the first attempt and incremented on every unsuccessful verification attempt.

Rückgabewert

TypBeschreibung
ara::core::Result<FVContainer >an ara::core::Result containing a ara::core::Result:: value_type containing a apext::tsync::FVContainer that holds the freshness value to be used for the calculation of the authenticator by TimeSync, or recoverable error.

Fehler

FehlercodeBeschreibung
TsyncFvmErrc::kFVNotAvailablerollback_semantics the Freshness Value is not available.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_TS_14198
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14198@rel:R25-11#ec8afa0d
Content hash
ec8afa0d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14198
Status: valid/unmigrated Version: rel:R25-11#5a2df49d Versionshistorie & Revisions (1 transition, 3 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_TS_14198@rel:R25-11#5a2df49d
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#cbec70a42026-09-30
  • R24-11rel:R24-11#8dfc9f262026-10-14
  • R25-11rel:R25-11#5a2df49d2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función GetTxFreshness [SWS_TS_14199] Upstream: RS_TS_20072 texto aún no importado

ara::core::Result< FVContainer > GetTxFreshness (std::uint16_t FreshnessValueID) noexcept;

Used by TimeSync to obtain the current freshness value for transmitted messages.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 9a44eddcc1b0 Procedencia
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

La función GetTxFreshness está definida como interfaz de la clase apext::tsync::FVM en el encabezado apext/tsync/fvm.h ([SWS_TS_14199]). Es llamada por el componente TimeSync para consultar el valor de frescura actual para mensajes transmitidos. Este valor de frescura es requerido obligatoriamente por TimeSync para calcular el autenticador criptográfico para transmisiones salientes.

Durante la llamada, el identificador del valor de frescura se pasa mediante el parámetro FreshnessValueID de tipo std::uint16_t ([SWS_TS_14199]). Como valor de retorno, la interfaz devuelve síncronamente un objeto de tipo ara::core::Result<FVContainer>. En caso de éxito, el tipo de retorno encapsula una instancia de apext::tsync::FVContainer que contiene el valor de frescura concreto.

Si el valor de frescura requerido no está disponible en el momento de la consulta, la operación falla con un error recuperable (recoverable error) ([SWS_TS_14199]). En este escenario, la función devuelve el código de error TsyncFvmErrc::kFVNotAvailable, manteniendo el sistema una semántica de reversión definida.

En cuanto a concurrencia y tolerancia a fallos, GetTxFreshness está especificado como thread-safe así como exception safe y anotado con noexcept ([SWS_TS_14199]). Por consiguiente, la función puede llamarse desde hilos paralelos sin protección mutex externa, sin que se requieran precauciones contra excepciones C++ síncronas.

Esta nota de uso fue generada automáticamente a partir de especificaciones de AUTOSAR.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "apext/tsync/fvm.h"
Scopeclass apext::tsync::FVM
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
FreshnessValueIDthe identifier of the freshness value.

Rückgabewert

TypBeschreibung
ara::core::Result<FVContainer >an ara::core::Result containing a ara::core::Result:: value_type containing a apext::tsync::FVContainer that holds the freshness value to be used for the calculation of the authenticator by TimeSync, or recoverable error.

Fehler

FehlercodeBeschreibung
TsyncFvmErrc::kFVNotAvailablerollback_semantics the Freshness Value is not available.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_TS_14199
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14199@rel:R25-11#92db66d8
Content hash
92db66d8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14199
Status: valid/unmigrated Version: rel:R25-11#09c3542d Versionshistorie & Revisions (1 transition, 3 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_TS_14199@rel:R25-11#09c3542d
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#a86e7a3f2026-09-30
  • R24-11rel:R24-11#1e7ee0612026-10-14
  • R25-11rel:R25-11#09c3542d2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función Initialize [SWS_TS_14200] Upstream: RS_TS_20072 texto aún no importado

ara::core::Result< void > Initialize () noexcept;

Initializes FVM

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: e3e4199a5145 Procedencia Preguntas abiertas (2)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

La función Initialize en el espacio de nombres apext::tsync::FVM sirve para inicializar el Freshness Value Manager (FVM) conforme a [SWS_TS_14200]. La interfaz se pone a disposición a través del archivo de encabezado apext/tsync/fvm.h y presenta la firma ara::core::Result<void> Initialize() noexcept;. La llamada se realiza de forma síncrona y sin parámetros de entrada. En caso de éxito, se proporciona un ara::core::Result con el tipo de retorno vacío void.

Manejo de errores

Si surge un problema durante la ejecución, la función devuelve el código de error específico TsyncFvmErrc::kFVInitializeFailed dentro del objeto de resultado [SWS_TS_14200]. La especificación prevé aquí una semántica de reversión, por lo que en caso de error no deberían quedar estados intermedios inconsistentes. Pregunta Q-0d3c1a8f45444579 (abierta)

Concurrencia y restricciones

Para el contexto de llamada, la función está catalogada explícitamente como thread-safe así como exception safe [SWS_TS_14200]. Debido al identificador noexcept, se garantiza que no se propagan excepciones C++ hacia el exterior. Interpretación: Es de presumir que este paso de inicialización debe haberse completado con éxito antes de que se puedan invocar otros métodos funcionales del componente FVM. Pregunta Q-ba44afb55d21ac38 (abierta)

Esta nota de uso se generó de forma automatizada sobre la base de AUTOSAR R25-11.

Header-Datei#include "apext/tsync/fvm.h"
Scopeclass apext::tsync::FVM
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
ara::core::Result< void >an ara::core::Result containing a ara::core::Result:: value_type containing a void, kFVInitializeFailed otherwise.

Fehler

FehlercodeBeschreibung
TsyncFvmErrc::kFVInitializeFailedrollback_semantics Initialization fails

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_TS_14200
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_TS_14200@rel:R25-11#8874054d
Content hash
8874054d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_TimeSynchronization.pdf#nameddest=SWS_TS_14200
Status: valid/unmigrated Version: rel:R25-11#711e1128 Versionshistorie & Revisions (1 transition, 3 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_TS_14200@rel:R25-11#711e1128
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#55c36e332026-09-30
  • R24-11rel:R24-11#f1f5a9742026-10-14
  • R25-11rel:R25-11#711e11282026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill