Tag: DoIP
All the articles with the tag "DoIP".
-
Routing Activation은 됐는데 첫 UDS가 실패한다: SA/TA와 재연결 순서를 같이 보자
DoIP에서 Routing Activation까지는 성공했는데 첫 UDS 요청만 간헐적으로 실패하면, ECU 로직보다 먼저 SA/TA와 재연결 이후 상태를 의심해야 한다. ACK/NACK, 무응답, 다른 ECU로 간 것처럼 보이는 증상을 같은 그림으로 정리한다.
-
DoIP는 TCP stream이다: recv()만 믿고 파싱하면 깨지는 이유
DoIP는 UDP처럼 '패킷 단위'로 읽히지 않는다. recv() 결과를 그대로 DoIP 메시지로 간주하면 부하에서 payload length mismatch/NACK/무응답이 터진다. TCP stream 기준으로 DoIP framing을 구현하는 안전한 순서를 정리한다.
-
DoIP는 붙었는데 진단이 안 된다: Entity Status/Power Mode로 상태부터 확인하기
TCP는 붙고 Vehicle Identification도 되는데 Routing Activation/UDS가 안 될 때가 있다. 이때 패킷 필드를 무작정 붙잡기 전에, DoIP의 Entity Status/Power Mode 같은 상태성 정보를 써서 '지금 진단 가능한 상태인지'를 먼저 확인하는 디버깅 흐름을 정리한다.
-
-
DoIP Vehicle Discovery가 가끔 안 잡히는 이유
DoIP Vehicle Discovery가 간헐적으로 실패하는 원인은 UDS보다 UDP broadcast, interface 상태, gateway boot timing, retry 정책, discovery cache 관리에 있는 경우가 많다.
-
DoIP Gateway 구조를 이해해야 ECU가 보인다
DoIP에서는 TCP 연결 endpoint와 실제 진단 대상 ECU가 다를 수 있다. Gateway 기반 차량 네트워크에서 logical address, routing activation, internal forwarding, response source tracking을 어떻게 봐야 하는지 정리한다.
-
DoIP Firmware Download에서 갑자기 문제가 터지는 이유
DoIP firmware download에서는 작은 진단 요청 때 보이지 않던 TCP stream 처리, large payload, timeout, flash latency 문제가 한꺼번에 드러난다. TransferData 흐름과 parser 안정성 관점에서 정리한다.
-
DoIP Negative Acknowledge, UDS 에러랑은 다르다
DoIP Negative Acknowledge와 UDS Negative Response는 완전히 다른 레이어의 신호다. DoIP NACK는 transport/protocol 문제이고, UDS 0x7F는 diagnostic application 문제라는 점을 로그와 파서 관점에서 정리한다.
-
DoIP에서 ACK를 받았는데 UDS 응답이 없다: Diagnostic ACK/NACK를 제대로 쓰는 법
DoIP에서 Diagnostic ACK를 봤는데 UDS 응답이 없으면 보통 'ACK를 UDS 응답으로 착각'한 경우가 많다. DoIP ACK/NACK는 DoIP 레벨 신호고, UDS 응답(Positive/Negative/NRC)은 별개다. ACK/NACK를 디버깅 힌트로 쓰는 관점을 정리한다.
-
DoIP Functional Address는 왜 응답이 이상하게 보일까
DoIP functional request는 특정 ECU 하나를 대상으로 하는 physical request와 다르다. 하나의 요청에 여러 ECU가 응답할 수 있고, 응답 순서도 보장되지 않는다. 그래서 response collection, source tracking, timeout policy가 중요하다.
-
DoIP 통신이 가끔 끊긴다: Alive Check / TCP Keepalive / Tester Present를 분리해서 보자
DoIP는 TCP라서 붙기만 하면 끝인 줄 아는데, 실무에서는 가만히 두면 어느 순간 세션이 끊기는 경우가 많다. Alive Check, TCP Keepalive, UDS Tester Present는 목적이 다르다. 끊김을 줄이려면 이 셋을 분리해서 설계해야 한다.