Automotive/Autosar

E2E (End-to-End) Protocol

코딩쪼앙 2025. 5. 27. 22:20

🚦 End-to-End Protocol

E2E Protocol은 제어기 간 메시지를 주고받을 때, 데이터가 전송 중에 변조되거나 누락되거나 순서가 바뀌지 않도록 오류를 감지하여 데이터 무결성을 보장하는 통신 보호 메커니즘이다.


✨ E2E Protocol의 필요성

네트워크를 통해 데이터를 주고받는 동안 다음과 같은 문제가 발생할 수 있다:

데이터 변조: 전송 중 비트가 바뀌는 오류
메시지 누락: 특정 메시지가 도착하지 않음
메시지 순서 변경: 순서가 뒤바뀌어 수신됨
 
이러한 문제를 감지하고 대응하기 위해 E2E 프로토콜이 사용된다. 특히 내가 진행 중인 Functional Safety와 같이 안전에 직결되는 기능의 경우 통신과정에서 무결성을 꼭 보장해야 하기에 중요한 역할을 수행한다.


🔎 E2E 오류 검출 메커니즘

여러가지 메커니즘이 있지만 가장 보편적으로 쓰이는 세 가지를 정리해보았다.

1. CRC (Cyclic Redundancy Check)

  • 역할: 데이터가 전송 중에 변조되었는지 확인한다.
  • 동작 방식: 송신 측에서 CRC 값을 계산해 메시지에 포함하고, 수신 측에서 동일한 방식으로 계산한 값과 비교한다.
  • 장점: 빠르고 오류 검출률이 높다.

 
💡 CRC는 비트 단위의 오류를 감지하는 데 매우 효과적이며, 대부분의 통신 프로토콜에서 기본적으로 사용된다.


2. 🔄 Alive Counter (Sequence Counter)

  • 역할: 메시지의 순서 오류 및 누락을 감지한다.
  • 동작 방식: 송신 측에서 메시지마다 증가하는 카운터 값을 포함하고, 수신 측에서 이전 값과 비교한다.
  • 장점: 메시지 누락, 중복, 순서 오류를 감지할 수 있다.

 
💡 예를 들어, 이전 메시지의 카운터가 3이었는데 다음 메시지가 5라면, 중간에 메시지 하나가 누락되었음을 알 수 있다.


3. ⏱Timeout

  • 역할: 메시지 수신 지연 또는 누락을 감지한다.
  • 동작 방식: 일정 시간 내에 메시지가 도착하지 않으면 오류로 간주한다.
  • 장점: 송신 중단이나 네트워크 장애를 감지할 수 있다.

 
💡 실시간 시스템에서는 주기적으로 메시지를 수신해야 하므로, Timeout은 매우 중요한 요소이며, CAN Routing 수행 시 필수적으로 테스트를 수행해야한다.


📦 E2E Profile이란?

E2E 프로토콜을 사용하려면, 네트워크에 참여하는 모든 제어기들이 동일한 E2E Profile을 사용해야 한다.

E2E Profile

  • E2E 기능을 표준화한 템플릿이다.
  • 어떤 오류 검출 메커니즘을 사용할지, 어떤 필드를 포함할지 등을 정의한다.
  • AUTOSAR에서 여러 표준 E2E Profile을 정의하고 있다.

 
💡 제어기 간 호환성을 위해서는 동일한 Profile을 사용해야 하며, 설계 단계에서 이를 명확히 정의해야 한다.


🧭 E2E Protocol을 사용해야 하는 경우

  • 제어기 간 주기적 메시지 통신이 필요한 경우
  • 실시간성과 무결성이 중요한 시스템
  • AUTOSAR 기반 ECU 통신 설계 시

'Automotive > Autosar' 카테고리의 다른 글

CAN Routing  (1) 2025.06.11
[Autosar] ASW 및 RTE  (0) 2024.10.07
[Autosar] BSW 계층 및 Component  (6) 2024.10.04
[Autosar] Autosar 기초 개념  (3) 2024.09.20