DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_IntrusionDetectionSystemManager FIG-cb3e945ecec1699f 885 × 644 px 1 Release(s)

Figure 7.6: Example of aggregation filter

SHA-256 Inhalts-Fingerabdruck: cb3e945ecec1699f95f91ffa04c1c46c107df5989f8ca47f4f96d415fa7fd754
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07

1. Diagrammtyp & Architektur-Kontext

  • Diagrammtyp: Zeitverlaufs-/Timing-Trace-Diagramm auf diskreter Zeitachse mit parallelen Zustandsspuren.
  • Architektur-Kontext: AUTOSAR Classic Platform (R20-11), BSW Service Layer, Modul Intrusion Detection System Manager (IdsM).
  • Funktionaler Zweck: Veranschaulichung der zeitbasierten Aggregation von Security Events (SEv) gleicher event_id über ein definiertes Aggregationsintervall gemäß [SWS_IdsM_01051]. Der Filter dient der Bandbreiten- und Rechenzeitreduktion für nachgelagerte Instanzen (z. B. IdsR, Threshold-Filter, PduR) bei hochfrequent auftretenden Sicherheitsereignissen.

2. Komponenten, Entitäten & Schnittstellen

  • Ereignis-Datenstrukturen (SEv-Payload):
    • Incoming Events: Asynchron gemeldete Sicherheitsereignisse via IdsM_SetSecurityEvent(EventId, ...) bestehend aus:
      • event_id: Eindeutiger Security-Event-Typidentifikator (hier: 23).
      • count: Lokale Ereignishäufigkeit des Eintreffens (hier jeweils 1).
      • context_data: Diagnose- bzw. forensische Zusatzdaten (hier: Ein-Byte-Kontexte 0x47, 0x11, 0x42).
    • Outgoing Events: Durch die Aggregationsstufe erzeugtes aggregiertes Security Event mit kumulierter Häufigkeit (count = 3) und selektiertem Kontext.
  • Filterparameter & Zeitbasis-Entitäten:
    • T_min (IdsMEventAggregationTimeInterval): Minimale Zeitrastereinheit der Aggregationslogik, getrieben durch den zyklischen Aufruf der IdsM_MainFunction().
    • I_j (hier I_23 = 3): Konfigurierter ereignisspezifischer Aggregationsfaktor als ganzzahliges Vielfaches von T_min.
    • t_j (hier t_23 = I_23 × T_min): Resultierendes physikalisches Aggregationszeitfenster für Event-Typ j.
    • num_timer_calls: Diskreter Inkrementzähler für abgelaufene Basisintervalle T_min.
  • Interne Ereignisse & Callbacks:
    • OnEventAggregationTimer(): Periodischer interner Trigger / Tick der Aggregationszeitüberwachung.
    • EndOfAggregationIntervalReached(23): Schwellwertüberlauf bzw. Ablauf des Intervalls für Event 23.
    • forward(...): Interner Forwarding-Aufruf zur Weiterleitung des konsolidierten Ereignisses an nachgelagerte Filter (z. B. Event Threshold Filter nach [SWS_IdsM_01060]).

3. Dynamisches Verhalten & Sequenzablauf

  1. Initialisierung (t = 0):
    • Start des Intervallzählers mit dem ersten Hauptfunktionszyklus gemäß [SWS_IdsM_01051]. Der Zähler num_timer_calls beginnt bei 0.
  2. Zyklus 1 (0 < t < 1 · T_min bis t = 1 · T_min):
    • Asynchroner Eingang: Event(event_id=23, count=1, context_data={0x47}).
    • Pufferung im Aggregationsspeicher: Akkumulator count = 1, context_data = 0x47.
    • Bei t = 1 · T_min: Ausführung von OnEventAggregationTimer(), num_timer_calls springt auf 1 (1 < I_23).
  3. Zyklus 2 (1 · T_min < t < 2 · T_min bis t = 2 · T_min):
    • Asynchroner Eingang: Event(event_id=23, count=1, context_data={0x11}).
    • Akkumulation: count = 1 + 1 = 2.
    • Gemäß Konfigurationsstrategie use last context data source überschreibt der neue Kontextwert 0x11 den Altwert 0x47.
    • Bei t = 2 · T_min: Ausführung von OnEventAggregationTimer(), num_timer_calls springt auf 2 (2 < I_23).
  4. Zyklus 3 (2 · T_min < t < 3 · T_min bis t = 3 · T_min):
    • Asynchroner Eingang: Event(event_id=23, count=1, context_data={0x42}).
    • Akkumulation: count = 2 + 1 = 3.
    • Kontextdaten-Update: 0x42 überschreibt 0x11.
    • Bei t = 3 · T_min: Ausführung von OnEventAggregationTimer(), num_timer_calls erreicht I_23 = 3.
  5. Intervallabschluss & Emission (t = 3 · T_min):
    • Bedingung EndOfAggregationIntervalReached(23) triggert.
    • Das konsolidierte Ereignis forward({event_id=23, count=3, context_data={0x42}}) wird sofort emittiert.
    • Der Aggregationsstatus für event_id=23 wird auf den Initialzustand zurückgesetzt.

4. Normative Relevanz & Entwickler-Hinweise

  • Konfigurationsverhältnis (BSW-Timing):
    • T_min muss zwingend ein ganzzahliges Vielfaches der Zykluszeit von IdsM_MainFunction() sein (typischerweise identisch). Abweichungen führen zu Jitter und unpräzisen Aggregationsintervallen.
  • **Verlustbehaftete Kontext-Strategie (Use Last):**
    • Frühere Kontextdaten (0x47, 0x11) werden unwiederbringlich verworfen. Für sicherheitsrelevante Ereignisse mit variierenden forensischen Payloads muss evaluiert werden, ob eine Aggregation zulässig ist oder ob unvollständige Angriffsspuren im SIEM/Backend entstehen.
  • RAM- und Pufferallokation:
    • Für jede aggregierbare event_id muss im IdsM statischer Speicher für den Ereigniszähler (count), den Aggregationszeitzähler sowie einen Shadow-Buffer für die maximale context_data-Länge reserviert werden.
  • Zusammenspiel mit dem Schwellwertfilter ([SWS_IdsM_01061]):
    • Der nachgelagerte Event Threshold Filter verarbeitet das weitergeleitete Paket mit count=3. Entwickler müssen sicherstellen, dass IdsMEventThresholdNumber mit dem kumulierten count abgeglichen wird und nicht mit der Häufigkeit der forward-Aufrufe.

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R20-11 → R21-11 keine inhaltliche Änderung Nachfolger: FIG-6654cce968cc171e

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Erkannte Spezifikationsbelege & Anforderungen auf dieser Seite

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

Event({event_id=23, | count=1, context_data ={0x47}}) | Event({event_id=23, | count=1, context_data={0x11}}) | num_timer_calls 2 1 3 | Event({event_id=23, | count=1, context_data ={0x42}}) | num_timer_calls 2 1 3 | OnEventAggregationTimer() OnEventAggregationTimer() OnEventAggregationTimer() | 0 | 0 | num_timer_calls 2 1 3 0 | EndOfAggregationIntervalReached(23) | Event ID 23: | Incoming Events: | forward({event_id=23, | count=3, context_data ={0x42}}) | Outgoing Events: | t | : Minimal interval (in units of me) : Aggregaon interval length of the event with the ID j (in mulples of ) : Aggregaon interval length of the event with the ID j (in units of me) | l 23 = 3 | Tmin | Tmin | l j | tj | t23 | Tmin

Begleitender Spezifikationstext:

Specification of Intrusion Detection System Manager AUTOSAR CP R20-11 [SWS_IdsM_01051] ⌈The counting of the time interval for the aggregation filter IdsMEventAggregationTimeInterval shall start with the first call of the main function.⌋() Figure 7.6 shows an example of the behavior of the aggregation filter for EventId23, with use last context data source: Event({event_id=23, count=1, context_data ={0x47}}) Event({event_id=23, count=1, context_data={0x11}}) num_timer_calls 2 1 3 Event({event_id=23, count=1, context_data ={0x42}}) num_timer_calls 2 1 3 OnEventAggregationTimer() OnEventAggregationTimer() OnEventAggregationTimer() 0 0 num_timer_calls 2 1 3 0 EndOfAggregationIntervalReached(23) Event ID 23: Incoming Events: forward({event_id=23, count=3, context_data ={0x42}}) Outgoing Events: t : Minimal interval (in units of me) : Aggregaon interval length of the event with the ID j (in mulples of ) : Aggregaon interval length of the event with the ID j (in units of me) l 23 = 3 Tmin Tmin l j tj t23 Tmin Figure 7.6: Example of aggregation filter 7.6.3.2 Event Threshold Filter [SWS_IdsM_01060] ⌈The IdsM shall provide a threshold filter.⌋() [SWS_IdsM_01061] Event Dropping Below Threshold ⌈The threshold filter shall drop an SEv of given type if the sum of count parameters of all SEvs of given type that were processed by the event threshold filter in the current threshold interval is smaller than the configured parameter IdsMEventThresholdNumber.⌋(RS_IDS_00350) [SWS_IdsM_01062

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R20-11 AUTOSAR_SWS_IntrusionDetectionSystemManager S. 30 7.6 Figure 7.6: Example of aggregation filter