AUTOSAR_CP_SWS_TcpIp
FIG-73f23e28d158ac42
822 × 1042 px
1 Release(s)
Figure 10.24: TcpIpLocalAddr
SHA-256 Inhalts-Fingerabdruck:
73f23e28d158ac42edb05c989fa553cc74c6141f5f9692b8f9086716c33adbb8
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Klassendiagramm / AUTOSAR ECUC-Parameter-Konfigurations-Metamodell (
EcucParamConfContainerDef). - Funktionale Einordnung: Definiert die Konfigurationsstruktur für lokale logische IP-Adressinstanzen (
TcpIpLocalAddr) innerhalb des BSW-ModulsTcpIp(Communication Services Layer, AUTOSAR Classic Platform). Es modelliert die Adressierung (IPv4/IPv6, Adresstyp), die statische Zuweisung, die Bindung an physische bzw. logische Netzwerk-Controller (TcpIpCtrl), die Adressvergabe-Mechanismen sowie spezifische IPv6-Filterketten.
2. Komponenten, Entitäten & Schnittstellen
Hauptcontainer
TcpIpLocalAddr(EcucParamConfContainerDef, Multiplizität:1..*): Repräsentiert eine logische lokale IP-Adress-Entität auf dem Steuergerät.
Konfigurationsparameter (Attribute)
TcpIpAddrId(EcucIntegerParamDef):- Wertebereich:
min = 0,max = 65535,withAuto = true,symbolicNameValue = true. - Dient als generierter symbolischer Handle (
TcpIp_LocalAddrIdType) für obere Schichten (z. B. SoAd).
- Wertebereich:
TcpIpDomainType(EcucEnumerationParamDef):- Adressfamilie/Protokolldomäne; Literale:
TCPIP_AF_INET(IPv4)TCPIP_AF_INET6(IPv6)
- Adressfamilie/Protokolldomäne; Literale:
TcpIpAddressType(EcucEnumerationParamDef):- Übertragungs-/Routing-Kategorie; Literale:
TCPIP_UNICASTTCPIP_MULTICASTTCPIP_ANYCAST
- Übertragungs-/Routing-Kategorie; Literale:
Referenzen (EcucReferenceDef)
TcpIpCtrlRef(Multiplizität:1):- Referenziert Ziel-Container
TcpIpCtrl(EcucParamConfContainerDef, Multiplizität1..*). - Verknüpft die logische IP-Adresse fest mit einem konkreten Ethernet-/TcpIp-Controller (EthIf-Controller-Instanz).
- Referenziert Ziel-Container
TcpIpLocalAddrIPv6ExtHeaderFilterRef(Multiplizität:0..1):- Referenziert Ziel-Container
TcpIpIpV6ConfigExtHeaderFilter(EcucParamConfContainerDef, Multiplizität0..*). - Ermöglicht optionales Filtern von IPv6 Extension Headern spezifisch für diese lokale Adresse.
- Referenziert Ziel-Container
Sub-Container
TcpIpAddrAssignment(EcucParamConfContainerDef, Multiplizität:1..*):- Konfiguriert die zulässigen Adressierungs- und Akquisitionsmethoden (z. B. STATIC, DHCPv4, DHCPv6, LINK_LOCAL, AUTOIP, ROUTER_ADVERTISEMENT / SLAAC) sowie Prioritäten und Trigger-Reihenfolgen.
TcpIpStaticIpAddressConfig(EcucParamConfContainerDef, Multiplizität:0..1):- Nimmt statische IP-Parameter auf, wenn die manuelle Adressvergabe aktiv ist:
TcpIpStaticIpAddress(EcucStringParamDef): Statische IPv4- (Dotted-Decimal) oder IPv6-Adresse (Hex/Kolon).TcpIpNetmask(EcucIntegerParamDef,min = 0,max = 128, Multiplizität:0..1): Subnetzmaske bzw. CIDR-Präfixlänge (Wertebereich 0 bis 128 deckt IPv4- und IPv6-Präfixe ab).TcpIpDefaultRouter(EcucStringParamDef, Multiplizität:0..1): Gateway-Adresse für das zugeordnete Subnetz.
- Nimmt statische IP-Parameter auf, wenn die manuelle Adressvergabe aktiv ist:
3. Dynamisches Verhalten & Sequenzablauf
Da es sich um ein Konfigurations-Metamodell handelt, steuern diese Metadaten die deterministische Laufzeit-Initialisierung und Zustandsübergänge des Stacks:
- Initialisierungsphase (
TcpIp_Init):- Der Post-Build- oder Link-Time-Konfigurationssatz baut interne Datenstrukturen pro
TcpIpAddrIdauf und initialisiert die Interfaces gemäßTcpIpDomainTypeundTcpIpCtrlRef.
- Der Post-Build- oder Link-Time-Konfigurationssatz baut interne Datenstrukturen pro
- Adressanforderung (
TcpIp_RequestComMode):- Die Applikation bzw. der Socket-Adaptor (
SoAd) fordert über die APITcpIp_RequestComMode(LocalAddrId, TCPIP_STATE_ONLINE)die Netzwerkverbindung an. - Der Stack durchläuft die unter
TcpIpAddrAssignmentdefinierten Verfahren (z. B. Start DHCP Client oder Setzen der Parameter ausTcpIpStaticIpAddressConfig).
- Die Applikation bzw. der Socket-Adaptor (
- Zustandsrückmeldung (Asynchroner Callback):
- Sobald die Adresse akquiriert und validiert wurde (inkl. ARP/DAD-Prüfung), erfolgt der Callback
SoAd_LocalIpAddrAssignmentChg(LocalAddrId, TCPIP_IPADDR_STATE_ASSIGNED). - Bei Link-Down oder Ablauf von Leases wechselt der Status auf
TCPIP_IPADDR_STATE_UNASSIGNED.
- Sobald die Adresse akquiriert und validiert wurde (inkl. ARP/DAD-Prüfung), erfolgt der Callback
- Fehlerbehandlung (DET):
- Aufruf von Stack-APIs mit unkonfigurierter oder fehlerhafter
LocalAddrIdlöst den DET-FehlerTCPIP_E_INV_ARGaus.
- Aufruf von Stack-APIs mit unkonfigurierter oder fehlerhafter
4. Normative Relevanz & Entwickler-Hinweise
- Symbolic Name Generation: Durch
symbolicNameValue = truefürTcpIpAddrIdgeneriert der ECUC-Generator zwingend Pre-Compile-Makros (z. B.TcpIpConf_TcpIpLocalAddr_TcpIpLocalAddr_Eth0_IPv4), die in oberen Schichten (z. B.SoAd,DoIP,Sd) typsicher alsTcpIp_LocalAddrIdTypereferenziert werden müssen. - Dual-Stack-Konsistenz: Da
TcpIpNetmaskbis 128 definiert ist, muss der Code-Generator beiTcpIpDomainType == TCPIP_AF_INETprüfen, dass der Wert 32 nicht überschritten wird; bei IPv6 (TCPIP_AF_INET6) sind Werte bis 128 zulässig. - Kardinalitäts-Restriktionen: Mindestens eine
TcpIpLocalAddrmuss im Stack definiert sein (lowerMultiplicity = 1). Jede Adresse erfordert zwingend mindestens eine Zuweisungsmethode (TcpIpAddrAssignment[1..*]). - Socket-Bindung & Routing: Obere BSW-Module binden Sockets über
TcpIp_Bindan die überTcpIpAddrIddefinierte IP-Adresse. Sockets für Multicast-Empfang (TCPIP_MULTICAST) dürfen nur anTcpIpLocalAddrgebunden werden, derenTcpIpAddressTypeexplizit als Multicast typisiert ist.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.