Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG]: Some/IP-SD session counter issue with ipv6 and local link addresses #605

Open
wennmbj opened this issue Jan 9, 2024 · 3 comments · May be fixed by #608
Open

[BUG]: Some/IP-SD session counter issue with ipv6 and local link addresses #605

wennmbj opened this issue Jan 9, 2024 · 3 comments · May be fixed by #608

Comments

@wennmbj
Copy link
Contributor

wennmbj commented Jan 9, 2024

We discovered an issue in the service discovery module with ipv6 and local link addresses. We use one Linux ECU with vsomeip and an ECU with Autosar Classic. On receiving side of the subscribe ack the session id is incorrect.
Someip-SD

The SD module handles two session counters for one receiving ECU. One for subscribing to a service offered by another ECU and one for the subscribe ack when an ECU subscribed a service from the host ECU.
For the ack in service_discovery_impl::get_session(const boost::asio::ip::address &_address) the address object contains the device e.g. fe80::a8bb:ccff:fedd:2%eth0. For other sd operations the object contains only the address e.g. fe80::a8bb:ccff:fedd:2.

@wennmbj wennmbj linked a pull request Jan 10, 2024 that will close this issue
@BrunoLSilvaCTW BrunoLSilvaCTW linked a pull request Mar 8, 2024 that will close this issue
@wennmbj wennmbj changed the title Some/IP-SD session counter issue with ipv6 and local link addresses [BUG]: Some/IP-SD session counter issue with ipv6 and local link addresses Apr 11, 2024
@wennmbj
Copy link
Contributor Author

wennmbj commented Oct 17, 2024

@fcmonteiro & @duartenfonseca: Are you considering merging my fix into main?

@duartenfonseca
Copy link
Collaborator

@wennmbj yes, we are, but we would need some suggestions in how to reproduce on our side the mentioned bug

@wennmbj
Copy link
Contributor Author

wennmbj commented Oct 18, 2024

@duartenfonseca: It is not that difficult. Use one Linux ECU with vsomeip and one other vsomeip stack vendor e.g. Vector Autosar Classic. Actually it should work if you are setting up a communication between two ECUs with the Covesa stack and monitoring the traffic in Wireshark like I did. Only difference is, that the Vector stack detects reboots due to incorrect session. You just need to use IPv6 local link addresses. Not sure if I can write a unit-test for that case. We are testing this on integration test level with physical hardware.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants