Automotive Software

SOME/IP 기초 본문

이더넷/SOMEIP

SOME/IP 기초

AutoSW 2024. 1. 19. 17:54

Scalable service-Oriented MiddlewarE over IP (SOME/IP)의 약자로 차량 또는 임베디드 환경에서 원격 절차 호출(RPC), 송수신 데이터의 직렬화(Serialization) 그리고 서비스 탐색(Service Discovery) 기능을 지원하기 위해 2011년 BMW 그룹에 의해 정의된 프로토콜로써 이더넷 및 오토사(4.1 이후) 환경에서 서비스 중심 아키텍처(SOA : Service Oriented Architecture, 이벤트 또는 원격 절차 호출)를 지원하기 위해 사용된다.

차량의 지능화에 따라 이더넷과 같은 네트워크상의 통신 부화를 줄이기 위해 고안된 이 프로코토콜은, 브로트캐스트(Broadcast) 방식으로 전달될 수 있는 차량내 정보들을 추가적인 Service Discovery (SOME/IP - SD) 프로토콜을 통해 실 수요자 위주의 유니캐스트(Unicast) 방식으로 관리 함으로써 부하를 줄이고 이를 통해 전체 네트워크상에 충분한 대역폭을 확보하는 그 목적이 있으며, 미들웨어로써의 주 기능중에 하나인 송수신 데이터의 직렬화(Serialization) 도 지원한다.

클래식 오토사에서는 SOME/IP 통신방식이 부분적으로 사용되지만, 아답티브 오토사에서는 프로세스 간 통신의 기본 콘셉트로 사용되며 실제 통신 대상에 따라 내부 IPC 또는 외부 이더넷으로 통신 매체가 결정되며, 실 이더넷 사용 환경에 UDP와 TCP를 하위 전송 계층으로 선택할 수 있다.

SOME/IP에서 서비스 (Service) 란?

통신 객체 간 협의된 인터페이스로 버전화를 통해 해당 인터페이스의 사용법이 구분된다. 정의된 인터페이스를 통해 서버는 구현된 해당 기능 제공하고, 클라이언트는 해당 인터페이스를 통해 해당 기능을 사용하게 된다.

  • 하나의 서비스는 차량내에서 다중 인스턴스(Instance) 로 제공 가능
    • 하나의 서비스 객체는 제공되는 위치(서버)에 따라 독자적인 객체로 구분
    • 같은 서비스는 다중 서버로부터 다른 객체로써 제공 가능
    • 같은 서비스가 하나의 서버로부터 차별화된 객체로써도 제공 가능
  • 클라이언트는 동일 서비스기반의 다중 객체를 소비 가능

SOME/IP 기본 통신 방식

  • 이벤트 (Event) : 데이터 변경 시 또는 주기적으로 서비스 가입자에게 데이터 전달
  • 메서드 (Method) : 서비스 제공자의 기능을 원격지에서 동작시킬 수 있는 방법 제공
    • Request/Response (결과) 기반 : 메서드를 서버에 요청 (Request)하고 서버가 그 메서드의 호출 결괏값을 회신 (Response)
    • Fire&Forget 기반 : 메서드를 서버에 요청하지만 호출 결괏값에 대한 회신은 없음
  • 필드 (Field) : 이벤트와 유사하게 데이터 변경 시 서비스 가입자로부터 데이터를 전달받거나(가입 시 초기값 수신하는 점이 차이점), 명시적으로 데이터 요청할 수 있으며 필요에 따라 해당 데이터 값의 변경을 요청할 수 있는 방법 제공
  • 이벤트 그룹 (Eventgroup) : 이벤트와 필드들의 논리적인 그룹

참조

'이더넷 > SOMEIP' 카테고리의 다른 글

SOME/IP 헤더 포맷  (0) 2024.02.12