KR102352527B1 - Method for communication based on automotive safety integrity level in automotive network and apparatus for the same - Google Patents

Method for communication based on automotive safety integrity level in automotive network and apparatus for the same Download PDF

Info

Publication number
KR102352527B1
KR102352527B1 KR1020170095218A KR20170095218A KR102352527B1 KR 102352527 B1 KR102352527 B1 KR 102352527B1 KR 1020170095218 A KR1020170095218 A KR 1020170095218A KR 20170095218 A KR20170095218 A KR 20170095218A KR 102352527 B1 KR102352527 B1 KR 102352527B1
Authority
KR
South Korea
Prior art keywords
message
ethernet
communication node
asil
authentication information
Prior art date
Application number
KR1020170095218A
Other languages
Korean (ko)
Other versions
KR20180029846A (en
Inventor
김동옥
윤진화
유상우
한정석
Original Assignee
현대자동차주식회사
기아 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대자동차주식회사, 기아 주식회사 filed Critical 현대자동차주식회사
Priority to CN201710811289.9A priority Critical patent/CN107819736B/en
Priority to DE102017121049.0A priority patent/DE102017121049A1/en
Priority to US15/702,370 priority patent/US10382221B2/en
Publication of KR20180029846A publication Critical patent/KR20180029846A/en
Application granted granted Critical
Publication of KR102352527B1 publication Critical patent/KR102352527B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Small-Scale Networks (AREA)

Abstract

차량 네트워크에서 ASIL에 기초한 통신 방법 및 장치가 개시된다. 제1 통신 노드의 동작 방법은 이더넷 기반의 네트워크에 속한 제2 통신 노드로부터 이더넷 메시지를 수신하는 단계, 상기 이더넷 메시지에 포함된 제1 ASIL 인증 정보에 대한 무결성 검증 동작을 수행하는 단계, 무결성 검증이 완료된 상기 이더넷 메시지에 기초하여 CAN 메시지를 생성하는 단계, 및 상기 CAN 메시지를 CAN에 속한 제3 통신 노드에 전송하는 단계를 포함한다. 따라서 차량 네트워크의 성능이 향상될 수 있다.A communication method and apparatus based on ASIL in a vehicle network are disclosed. The operation method of the first communication node includes the steps of receiving an Ethernet message from a second communication node belonging to an Ethernet-based network, performing an integrity verification operation on the first ASIL authentication information included in the Ethernet message, and integrity verification generating a CAN message based on the completed Ethernet message, and transmitting the CAN message to a third communication node belonging to CAN. Accordingly, the performance of the vehicle network may be improved.

Description

차량 네트워크에서 ASIL에 기초한 통신 방법 및 장치{METHOD FOR COMMUNICATION BASED ON AUTOMOTIVE SAFETY INTEGRITY LEVEL IN AUTOMOTIVE NETWORK AND APPARATUS FOR THE SAME}ASIL-based communication method and device in vehicle network

본 발명은 차량 네트워크에서 통신 기술에 관한 것으로, 더욱 상세하게는 CAN(controller area network) 및 이더넷 기반의 네트워크를 포함하는 차량 네트워크에서 ASIL(automotive safety integrity level)에 기초한 통신 기술에 관한 것이다.The present invention relates to a communication technology in a vehicle network, and more particularly, to a communication technology based on an automotive safety integrity level (ASIL) in a vehicle network including a controller area network (CAN) and an Ethernet-based network.

차량용 부품의 전자화가 급속도로 진행됨에 따라 차량에 탑재되는 전자 장치(예를 들어, ECU(electronic control unit))의 종류와 수가 크게 증가되고 있다. 전자 장치는 크게 파워트레인(power train) 제어 시스템, 바디(body) 제어 시스템, 새시(chassis) 제어 시스템, 차량 네트워크(network), 멀티미디어(multimedia) 시스템 등에서 사용될 수 있다. 파워트레인 제어 시스템은 엔진 제어 시스템, 자동 변속 제어 시스템 등을 의미할 수 있다. 바디 제어 시스템은 바디 전장품 제어 시스템, 편의 장치 제어 시스템, 램프(lamp) 제어 시스템 등을 의미할 수 있다. 새시 제어 시스템은 조향 장치 제어 시스템, 브레이크(brake) 제어 시스템, 서스팬션(suspension) 제어 시스템 등을 의미할 수 있다. 차량 네트워크는 CAN(controller area network), 플렉스레이(FlexRay) 기반의 네트워크, MOST(media oriented system transport) 기반의 네트워크 등을 의미할 수 있다. 멀티미디어 시스템은 항법 장치 시스템, 텔레메틱스(telematics) 시스템, 인포테이먼트(infortainment) 시스템 등을 의미할 수 있다.2. Description of the Related Art As electronic components for vehicles are rapidly becoming electronic, the types and numbers of electronic devices (eg, electronic control units (ECUs)) mounted on vehicles are greatly increased. The electronic device may be largely used in a power train control system, a body control system, a chassis control system, a vehicle network, a multimedia system, and the like. The powertrain control system may refer to an engine control system, an automatic shift control system, or the like. The body control system may refer to a body electronic device control system, a convenience device control system, a lamp control system, and the like. The chassis control system may mean a steering system control system, a brake control system, a suspension control system, or the like. The vehicle network may refer to a controller area network (CAN), a FlexRay-based network, a media oriented system transport (MOST)-based network, and the like. The multimedia system may mean a navigation device system, a telematics system, an infotainment system, or the like.

이러한 시스템들 및 시스템들 각각을 구성하는 전자 장치들은 차량 네트워크를 통해 연결되어 있으며, 전자 장치들 각각의 기능을 지원하기 위한 차량 네트워크가 요구되고 있다. CAN은 최대 1Mbps의 전송 속도를 지원할 수 있으며, 충돌된 프레임의 자동 재전송, CRC(cycle redundancy check) 기반의 오류 검출 등을 지원할 수 있다. 플렉스레이 기반의 네트워크는 최대 10Mbps의 전송 속도를 지원할 수 있으며, 2채널을 통한 데이터의 동시 전송, 동기 방식의 데이터 전송 등을 지원할 수 있다. MOST 기반의 네트워크는 고품질의 멀티미디어를 위한 통신 네트워크로, 최대 150Mbps의 전송 속도를 지원할 수 있다.These systems and electronic devices constituting each of the systems are connected through a vehicle network, and a vehicle network for supporting each function of the electronic devices is required. CAN can support a transmission rate of up to 1Mbps, and can support automatic retransmission of a collided frame and error detection based on a cycle redundancy check (CRC). A FlexRay-based network can support a transmission rate of up to 10 Mbps, and can support simultaneous data transmission through two channels, synchronous data transmission, and the like. The MOST-based network is a communication network for high-quality multimedia and can support transmission rates of up to 150Mbps.

한편, 차량의 텔레메틱스 시스템, 인포테이먼트 시스템, 향상된 안전 시스템 등은 높은 전송 속도, 시스템 확장성 등을 요구하며, CAN, 플렉스레이 기반의 네트워크 등은 이를 충분히 지원하지 못한다. MOST 기반의 네트워크는 CAN 및 플렉스레이 기반의 네트워크에 비해 높은 전송 속도를 지원할 수 있으나, 차량의 모든 네트워크에 MOST 기반의 네트워크가 적용되기 위해서는 많은 비용이 소모된다. 이러한 문제들에 의해, 차량 네트워크로 이더넷(ethernet) 기반의 네트워크가 고려될 수 있다. 이더넷 기반의 네트워크는 한 쌍의 권선을 통한 양방향 통신을 지원할 수 있으며, 최대 10Gbps의 전송 속도를 지원할 수 있다.On the other hand, a vehicle's telematics system, infotainment system, and improved safety system require high transmission speed and system scalability, and CAN and FlexRay-based networks do not sufficiently support this. A MOST-based network can support a higher transmission speed than a CAN- and FlexRay-based network, but it consumes a lot of cost to apply the MOST-based network to all networks of a vehicle. Due to these problems, an Ethernet-based network may be considered as a vehicle network. An Ethernet-based network can support bidirectional communication through a pair of windings, and can support transmission rates of up to 10 Gbps.

차량 네트워크는 서로 다른 통신 프로토콜들을 지원할 수 있다. 예를 들어, 차량 네트워크는 CAN, 이더넷 기반의 네트워크 등을 포함할 수 있다. 이 경우, CAN과 이더넷 기반의 네트워크 간의 통신을 지원하기 위한 프로토콜이 필요할 것이다. 또한, CAN과 이더넷 기반의 네트워크 간의 통신에서 통신 신뢰성의 향상을 위한 기술들이 필요할 것이다.The vehicle network may support different communication protocols. For example, the vehicle network may include CAN, an Ethernet-based network, and the like. In this case, a protocol to support communication between CAN and Ethernet-based networks will be required. In addition, technologies for improving communication reliability in communication between CAN and Ethernet-based networks will be required.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 CAN(controller area network)과 이더넷 기반의 네트워크를 포함하는 차량 네트워크에서 ASIL(automotive safety integrity level)에 기초한 통신 방법 및 장치를 제공하는 데 있다.An object of the present invention for solving the above problems is to provide a communication method and apparatus based on an automotive safety integrity level (ASIL) in a vehicle network including a controller area network (CAN) and an Ethernet-based network.

상기 목적을 달성하기 위한 본 발명의 제1 실시예에 따른 이더넷 기반의 네트워크와 CAN 간의 통신을 지원하는 제1 통신 노드의 동작 방법은, 상기 이더넷 기반의 네트워크에 속한 제2 통신 노드로부터 이더넷 메시지를 수신하는 단계, 상기 이더넷 메시지에 포함된 제1 ASIL 인증 정보에 대한 무결성 검증 동작을 수행하는 단계, 무결성 검증이 완료된 상기 이더넷 메시지에 기초하여 CAN 메시지를 생성하는 단계, 및 상기 CAN 메시지를 상기 CAN에 속한 제3 통신 노드에 전송하는 단계를 포함한다.In order to achieve the above object, the method for operating a first communication node supporting communication between an Ethernet-based network and CAN according to a first embodiment of the present invention for achieving the above object is to receive an Ethernet message from a second communication node belonging to the Ethernet-based network. Receiving, performing an integrity verification operation on the first ASIL authentication information included in the Ethernet message, generating a CAN message based on the Ethernet message on which integrity verification has been completed, and sending the CAN message to the CAN and transmitting to a third communication node to which it belongs.

여기서, 상기 제2 통신 노드는 엔드 노드일 수 있고, 상기 제1 ASIL 인증 정보는 상기 엔드 노드에 의해 생성될 수 있다.Here, the second communication node may be an end node, and the first ASIL authentication information may be generated by the end node.

여기서, 상기 무결성 검증 동작은 상기 이더넷 메시지의 목적지가 상기 CAN인 경우에 수행될 수 있다.Here, the integrity verification operation may be performed when the destination of the Ethernet message is the CAN.

여기서, 상기 무결성 검증 동작은 상기 이더넷 메시지가 제어 정보 또는 관리 정보를 포함하는 경우에 수행될 수 있다.Here, the integrity verification operation may be performed when the Ethernet message includes control information or management information.

여기서, 상기 CAN 메시지는 제2 ASIL 인증 정보를 포함할 수 있고, 상기 제2 ASIL 인증 정보는 상기 CAN 메시지의 무결성 검증을 위해 사용될 수 있고, 상기 제2 ASIL 인증 정보는 상기 제1 통신 노드에 의해 생성될 수 있다.Here, the CAN message may include second ASIL authentication information, the second ASIL authentication information may be used for integrity verification of the CAN message, and the second ASIL authentication information may be transmitted by the first communication node. can be created

여기서, 상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛들 중에서 라우팅 테이블에 의해 지시되는 적어도 하나의 데이터 유닛을 포함할 수 있으며, 상기 라우팅 테이블은 상기 CAN으로 전송될 데이터 유닛들을 지시할 수 있다.Here, the CAN message may include at least one data unit indicated by a routing table among a plurality of data units included in the Ethernet message, and the routing table may indicate data units to be transmitted to the CAN. have.

여기서, 상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛들 중에서 상기 제1 통신 노드의 메모리에 저장된 데이터 유닛들에 비해 업데이트된 정보를 포함하는 적어도 하나의 데이터 유닛을 포함할 수 있다.Here, the CAN message may include at least one data unit including updated information compared to data units stored in the memory of the first communication node among a plurality of data units included in the Ethernet message.

여기서, 상기 CAN 메시지는 상기 CAN의 전송 주기에 따라 전송될 수 있다.Here, the CAN message may be transmitted according to a transmission period of the CAN.

상기 목적을 달성하기 위한 본 발명의 제2 실시예에 따른 이더넷 기반의 네트워크와 CAN 간의 통신을 지원하는 제1 통신 노드의 동작 방법은, 상기 CAN에 속한 제2 통신 노드로부터 CAN 메시지를 수신하는 단계, 상기 CAN 메시지에 포함된 제1 ASIL 인증 정보에 대한 무결성 검증 동작을 수행하는 단계, 무결성 검증이 완료된 상기 CAN 메시지에 기초하여 이더넷 메시지를 생성하는 단계, 및 상기 이더넷 메시지를 상기 이더넷 기반의 네트워크에 속한 제3 통신 노드에 전송하는 단계를 포함할 수 있다.In order to achieve the above object, there is provided an operating method of a first communication node supporting communication between an Ethernet-based network and CAN according to a second embodiment of the present invention, the method comprising: receiving a CAN message from a second communication node belonging to the CAN; , performing an integrity verification operation on the first ASIL authentication information included in the CAN message, generating an Ethernet message based on the CAN message on which integrity verification has been completed, and sending the Ethernet message to the Ethernet-based network It may include transmitting to a third communication node to which it belongs.

여기서, 상기 제2 통신 노드는 엔드 노드일 수 있고, 상기 제1 ASIL 인증 정보는 상기 엔드 노드에 의해 생성될 수 있다.Here, the second communication node may be an end node, and the first ASIL authentication information may be generated by the end node.

여기서, 상기 이더넷 메시지는 제2 ASIL 인증 정보를 포함할 수 있고, 상기 제2 ASIL 인증 정보는 상기 이더넷 메시지의 무결성 검증을 위해 사용될 수 있고, 상기 제2 ASIL 인증 정보는 상기 제1 통신 노드에 의해 생성될 수 있다.Here, the Ethernet message may include second ASIL authentication information, the second ASIL authentication information may be used for integrity verification of the Ethernet message, and the second ASIL authentication information may be transmitted by the first communication node. can be created

여기서, 상기 이더넷 메시지는 상기 CAN 메시지에 포함된 복수의 데이터 유닛들 중에서 라우팅 테이블에 의해 지시되는 적어도 하나의 데이터 유닛을 포함할 수 있으며, 상기 라우팅 테이블은 상기 이더넷 기반의 네트워크로 전송될 데이터 유닛들을 지시할 수 있다.Here, the Ethernet message may include at least one data unit indicated by a routing table among a plurality of data units included in the CAN message, and the routing table identifies data units to be transmitted to the Ethernet-based network. can direct

상기 목적을 달성하기 위한 본 발명의 제3 실시예에 따른 이더넷 기반의 네트워크와 CAN 간의 통신을 지원하는 제1 통신 노드는 프로세서 및 상기 프로세서에 의해 수행되는 적어도 하나의 명령이 저장된 메모리를 포함하며, 상기 적어도 하나의 명령은, 상기 이더넷 기반의 네트워크에 속한 제2 통신 노드로부터 이더넷 메시지를 수신하고, 상기 이더넷 메시지에 포함된 제1 ASIL 인증 정보에 대한 무결성 검증 동작을 수행하고, 무결성 검증이 완료된 상기 이더넷 메시지에 기초하여 CAN 메시지를 생성하고, 그리고 상기 CAN 메시지를 상기 CAN에 속한 제3 통신 노드에 전송하도록 실행된다.A first communication node supporting communication between an Ethernet-based network and CAN according to a third embodiment of the present invention for achieving the above object includes a processor and a memory in which at least one command executed by the processor is stored, The at least one command receives an Ethernet message from a second communication node belonging to the Ethernet-based network, performs an integrity verification operation on the first ASIL authentication information included in the Ethernet message, and completes the integrity verification and generate a CAN message based on the Ethernet message, and transmit the CAN message to a third communication node belonging to the CAN.

여기서, 상기 제2 통신 노드는 엔드 노드일 수 있고, 상기 제1 ASIL 인증 정보는 상기 엔드 노드에 의해 생성될 수 있다.Here, the second communication node may be an end node, and the first ASIL authentication information may be generated by the end node.

여기서, 상기 무결성 검증 동작은 상기 이더넷 메시지의 목적지가 상기 CAN인 경우에 수행될 수 있다.Here, the integrity verification operation may be performed when the destination of the Ethernet message is the CAN.

여기서, 상기 무결성 검증 동작은 상기 이더넷 메시지가 제어 정보 또는 관리 정보를 포함하는 경우에 수행될 수 있다.Here, the integrity verification operation may be performed when the Ethernet message includes control information or management information.

여기서, 상기 CAN 메시지는 제2 ASIL 인증 정보를 포함하고, 상기 제2 ASIL 인증 정보는 상기 CAN 메시지의 무결성 검증을 위해 사용될 수 있고, 상기 제2 ASIL 인증 정보는 상기 제1 통신 노드에 의해 생성될 수 있다.Here, the CAN message includes second ASIL authentication information, the second ASIL authentication information may be used for integrity verification of the CAN message, and the second ASIL authentication information is to be generated by the first communication node. can

여기서, 상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛들 중에서 라우팅 테이블에 의해 지시되는 적어도 하나의 데이터 유닛을 포함할 수 있으며, 상기 라우팅 테이블은 상기 CAN으로 전송될 데이터 유닛들을 지시할 수 있다.Here, the CAN message may include at least one data unit indicated by a routing table among a plurality of data units included in the Ethernet message, and the routing table may indicate data units to be transmitted to the CAN. have.

여기서, 상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛들 중에서 상기 메모리에 저장된 데이터 유닛들에 비해 업데이트된 정보를 포함하는 적어도 하나의 데이터 유닛을 포함할 수 있다.Here, the CAN message may include at least one data unit including updated information compared to data units stored in the memory among a plurality of data units included in the Ethernet message.

여기서, 상기 CAN 메시지는 상기 CAN의 전송 주기에 따라 전송될 수 있다.Here, the CAN message may be transmitted according to a transmission period of the CAN.

본 발명에 의하면, CAN(controller area network) 또는 이더넷 기반의 네트워크에 속하는 엔드 노드(예를 들어, ECU(electronic control unit))는 ASIL(automotive safety integrity level)에 따른 요구 사항들(requirements)을 만족시키는 인증 알고리즘을 사용하여 ASIL 인증 정보를 생성할 수 있고, 페이로드(payload), ASIL 인증 정보 등을 포함하는 메시지(예를 들어, CAN 메시지, 이더넷 메시지)를 생성할 수 있고, 생성된 메시지를 전송할 수 있다.According to the present invention, an end node (eg, an electronic control unit (ECU)) belonging to a controller area network (CAN) or an Ethernet-based network satisfies requirements according to an automotive safety integrity level (ASIL). It is possible to generate ASIL authentication information using an authentication algorithm that can be transmitted

CAN과 이더넷 기반의 네트워크 간의 통신을 지원하는 게이트웨이는 엔드 노드로부터 메시지를 수신할 수 있고, ASIL 인증 정보에 기초하여 메시지에 대한 무결성 검증 동작을 수행할 수 있다. 메시지에 대한 무결성 검증이 성공적으로 완료된 경우, 게이트웨이는 무결성 검증이 완료된 데이터 유닛을 포함하는 새로운 메시지를 생성할 수 있고, 생성된 메시지를 CAN 또는 이더넷 기반의 네트워크에 전송할 수 있다. CAN 또는 이더넷 기반의 네트워크로 전송되는 메시지는 해당 메시지를 위한 ASIL 인증 정보를 더 포함할 수 있다. 반면, 메시지에 대한 무결성 검증이 실패한 경우, 게이트웨이는 해당 메시지를 폐기할 수 있다. 따라서 CAN과 이더넷 기반의 네트워크 간의 통신에서 통신 신뢰성이 향상될 수 있고, 차량 네트워크의 성능이 향상될 수 있다.A gateway supporting communication between CAN and Ethernet-based networks may receive a message from an end node and may perform an integrity verification operation on the message based on ASIL authentication information. When the integrity verification of the message is successfully completed, the gateway may generate a new message including the data unit for which the integrity verification has been completed, and may transmit the generated message to a CAN or Ethernet-based network. The message transmitted to the CAN or Ethernet-based network may further include ASIL authentication information for the message. On the other hand, if the integrity verification of the message fails, the gateway may discard the message. Accordingly, communication reliability may be improved in communication between CAN and an Ethernet-based network, and the performance of a vehicle network may be improved.

도 1은 차량 네트워크의 제1 실시예를 도시한 블록도이다.
도 2는 차량 네트워크의 제2 실시예를 도시한 블록도이다.
도 3은 차량 네트워크에서 이더넷 메시지의 제1 실시예를 도시한 블록도이다.
도 4는 이더넷 메시지에 포함된 헤더의 제1 실시예를 도시한 블록도이다.
도 5는 차량 네트워크에서 CAN 메시지의 제1 실시예를 도시한 블록도이다.
도 6은 차량 네트워크에서 CAN 메시지의 제2 실시예를 도시한 블록도이다.
도 7은 차량 네트워크에 속하는 통신 노드의 제1 실시예를 도시한 블록도이다.
도 8은 차량 네트워크에 속하는 통신 노드의 제2 실시예를 도시한 블록도이다.
도 9는 차량 네트워크에 속하는 게이트웨이의 제1 실시예를 도시한 블록도이다.
도 10은 차량 네트워크에서 통신 노드의 동작 방법의 제1 실시예를 도시한 순서도이다.
도 11은 차량 네트워크에서 이더넷 메시지의 제2 실시예를 도시한 블록도이다.
도 12는 파싱 동작 및 후보 페이로드의 생성 동작의 제1 실시예를 도시한 개념도이다.
도 13은 최종 페이로드의 생성 동작의 제1 실시예를 도시한 개념도이다.
도 14는 차량 네트워크에서 CAN 메시지의 제3 실시예를 도시한 블록도이다.
도 15는 차량 네트워크에서 CAN 메시지의 제4 실시예를 도시한 블록도이다.
도 16은 차량 네트워크에서 통신 노드의 동작 방법의 제2 실시예를 도시한 순서도이다.
1 is a block diagram illustrating a first embodiment of a vehicle network.
2 is a block diagram illustrating a second embodiment of a vehicle network.
3 is a block diagram illustrating a first embodiment of an Ethernet message in a vehicle network.
4 is a block diagram illustrating a first embodiment of a header included in an Ethernet message.
5 is a block diagram illustrating a first embodiment of a CAN message in a vehicle network.
6 is a block diagram illustrating a second embodiment of a CAN message in a vehicle network.
7 is a block diagram illustrating a first embodiment of a communication node belonging to a vehicle network.
8 is a block diagram illustrating a second embodiment of a communication node belonging to a vehicle network.
9 is a block diagram illustrating a first embodiment of a gateway belonging to a vehicle network.
10 is a flowchart illustrating a first embodiment of a method of operating a communication node in a vehicle network.
11 is a block diagram illustrating a second embodiment of an Ethernet message in a vehicle network.
12 is a conceptual diagram illustrating a first embodiment of a parsing operation and an operation of generating a candidate payload.
13 is a conceptual diagram illustrating a first embodiment of an operation of generating a final payload.
14 is a block diagram illustrating a third embodiment of a CAN message in a vehicle network.
15 is a block diagram illustrating a fourth embodiment of a CAN message in a vehicle network.
16 is a flowchart illustrating a second embodiment of a method of operating a communication node in a vehicle network.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail. However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, a second component may also be referred to as a first component. and/or includes a combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When an element is referred to as being “connected” or “connected” to another element, it is understood that it may be directly connected or connected to the other element, but other elements may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. In describing the present invention, in order to facilitate the overall understanding, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.

도 1은 차량 네트워크의 제1 실시예를 도시한 블록도이다.1 is a block diagram illustrating a first embodiment of a vehicle network.

도 1을 참조하면, 차량 네트워크를 구성하는 통신 노드(communication node)는 게이트웨이(gateway), 스위치(switch)(또는, 브릿지(bridge)) 또는 엔드 노드(end node) 등을 의미할 수 있다. 게이트웨이(100)는 적어도 하나의 스위치(110, 110-1, 110-2, 120, 130)와 연결될 수 있으며, 서로 다른 네트워크를 연결할 수 있다. 예를 들어, 게이트웨이(100)는 CAN(controller area network)(또는, 플렉스레이(FlexRay), MOST(media oriented system transport), LIN(local interconnect network) 등) 프로토콜을 지원하는 스위치와 이더넷(ethernet) 프로토콜을 지원하는 스위치 간을 연결할 수 있다. 스위치들(110, 110-1, 110-2, 120, 130) 각각은 적어도 하나의 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)와 연결될 수 있다. 스위치들(110, 110-1, 110-2, 120, 130) 각각은 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)를 상호 연결할 수 있고, 자신과 연결된 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)를 제어할 수 있다.Referring to FIG. 1 , a communication node constituting a vehicle network may mean a gateway, a switch (or a bridge), an end node, or the like. The gateway 100 may be connected to at least one switch 110 , 110 - 1 , 110 - 2 , 120 , and 130 , and may connect different networks. For example, the gateway 100 includes a switch supporting a controller area network (CAN) (or FlexRay, media oriented system transport (MOST), local interconnect network (LIN), etc.) protocol and Ethernet (ethernet). You can connect between switches that support the protocol. Each of the switches 110 , 110 - 1 , 110 - 2 , 120 , and 130 may be connected to at least one end node 111 , 112 , 113 , 121 , 122 , 123 , 131 , 132 , and 133 . Each of the switches 110, 110-1, 110-2, 120, and 130 may interconnect the end nodes 111, 112, 113, 121, 122, 123, 131, 132, 133, and an end connected thereto The nodes 111 , 112 , 113 , 121 , 122 , 123 , 131 , 132 and 133 may be controlled.

엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)는 차량에 포함된 각종 장치를 제어하는 ECU(electronic control unit)를 의미할 수 있다. 예를 들어, 엔드 노드(111, 112, 113, 121, 122, 123, 131, 132, 133)는 인포테인먼트(infortainment) 장치(예를 들어, 디스플레이(display) 장치, 내비게이션(navigation) 장치, 어라운드 뷰 모니터링(around view monitoring) 장치) 등을 구성하는 ECU를 의미할 수 있다.The end nodes 111 , 112 , 113 , 121 , 122 , 123 , 131 , 132 , and 133 may refer to an electronic control unit (ECU) that controls various devices included in the vehicle. For example, the end nodes 111 , 112 , 113 , 121 , 122 , 123 , 131 , 132 , 133 may include an infotainment device (eg, a display device, a navigation device, and an around view). It may mean an ECU constituting an around view monitoring device).

도 2는 차량 네트워크의 토폴로지의 제2 실시예를 도시한 블록도이다.2 is a block diagram illustrating a second embodiment of a topology of a vehicle network.

도 2를 참조하면, 차량 네트워크는 이더넷 기반의 네트워크, CAN 등을 포함할 수 있다. 차량 네트워크에 속한 게이트웨이(200)는 이더넷 기반의 네트워크와 CAN 간의 통신을 지원할 수 있다. 이더넷 기반의 네트워크는 스위치#1(210), 스위치#2(220), 엔드 노드#1(211), 엔드 노드#2(212), 엔드 노드#3(213), 엔드 노드#4(221), 엔드 노드#5(222) 등을 포함할 수 있다. 엔드 노드#1(211), 엔드 노드#2(212) 및 엔드 노드#3(213)은 스위치#1(210)에 연결될 수 있고, 엔드 노드#4(221) 및 엔드 노드#5(222)는 스위치#2(220)에 연결될 수 있고, 스위치#1(210) 및 스위치#2(220)는 게이트웨이(200)에 연결될 수 있다. 이더넷 프로토콜에 기초한 메시지는 "이더넷 메시지"로 지칭될 수 있고, 이더넷 메시지는 "이더넷 프레임", "이더넷 신호", "이더넷 패킷" 등으로 지칭될 수 있다. 이더넷 기반의 네트워크에 속한 통신 노드들(210, 211, 212, 213, 220, 221, 222)은 이더넷 메시지를 사용하여 통신을 수행할 수 있고, 이더넷 기반의 네트워크와 게이트웨이(200) 간의 통신도 이더넷 메시지를 사용하여 수행될 수 있다.Referring to FIG. 2 , the vehicle network may include an Ethernet-based network, CAN, and the like. The gateway 200 belonging to the vehicle network may support communication between an Ethernet-based network and CAN. Ethernet-based networks include switch #1 (210), switch #2 (220), end node #1 (211), end node #2 (212), end node #3 (213), and end node #4 (221). , end node #5 (222), and the like. End node #1 (211), end node #2 (212), and end node #3 (213) may be connected to switch #1 (210), end node #4 (221) and end node #5 (222) may be connected to switch #2 220 , and switch #1 210 and switch #2 220 may be connected to the gateway 200 . Messages based on the Ethernet protocol may be referred to as "Ethernet messages", and Ethernet messages may be referred to as "Ethernet frames", "Ethernet signals", "Ethernet packets", and the like. The communication nodes 210 , 211 , 212 , 213 , 220 , 221 , and 222 belonging to the Ethernet-based network may perform communication using an Ethernet message, and communication between the Ethernet-based network and the gateway 200 is also Ethernet This can be done using messages.

CAN은 엔드 노드#6(231), 엔드 노드#7(232), 엔드 노드#8(233) 등을 포함할 수 있고, 엔드 노드#6(231), 엔드 노드#7(232) 및 엔드 노드#8(233)은 버스 라인(bus line)을 통해 게이트웨이(200)에 연결될 수 있다. CAN 프로토콜에 기초한 메시지는 "CAN 메시지"로 지칭될 수 있고, CAN 메시지는 "CAN 프레임", "CAN 신호", "CAN 패킷" 등으로 지칭될 수 있다. CAN에 속한 통신 노드들(231, 232, 233)은 CAN 메시지를 사용하여 통신을 수행할 수 있고, CAN과 게이트웨이(200) 간의 통신도 CAN 메시지를 사용하여 수행될 수 있다.CAN may include end node #6 (231), end node #7 (232), end node #8 (233), etc., end node #6 (231), end node #7 (232) and end node #8 ( 233 ) may be connected to the gateway 200 through a bus line. A message based on the CAN protocol may be referred to as a “CAN message”, and a CAN message may be referred to as a “CAN frame”, “CAN signal”, “CAN packet”, and the like. Communication nodes 231 , 232 , and 233 belonging to CAN may perform communication using a CAN message, and communication between CAN and the gateway 200 may also be performed using a CAN message.

한편, 본 발명에 따른 실시예들은 앞서 설명된 차량 네트워크에 적용될 수 있으며, 본 발명에 따른 실시예들이 적용되는 차량 네트워크는 이에 한정되지 않고 다양하게 구성될 수 있다. 본 발명에 따른 실시예들이 적용되는 차량 네트워크에서 이더넷 메시지 및 CAN 메시지 각각은 다음과 같이 구성될 수 있다.Meanwhile, the embodiments according to the present invention may be applied to the vehicle network described above, and the vehicle network to which the embodiments according to the present invention are applied is not limited thereto and may be configured in various ways. In the vehicle network to which the embodiments according to the present invention are applied, each of the Ethernet message and the CAN message may be configured as follows.

도 3은 차량 네트워크에서 이더넷 메시지의 제1 실시예를 도시한 블록도이다.3 is a block diagram illustrating a first embodiment of an Ethernet message in a vehicle network.

도 3을 참조하면, 이더넷 메시지(300)는 헤더(header)(310), 적어도 하나의 데이터 유닛(data unit, DU)(321, 322, 323) 등을 포함할 수 있다. DU#1(321), DU#2(322) 및 DU#3(323)은 PDU(protocol data unit), UDP(user datagram protocol) 데이터 유닛 등일 수 있고, 페이로드(payload)를 구성할 수 있다. 또한, 이더넷 메시지(300)는 ASIL(automotive safety integrity level) 인증 정보(330)를 더 포함할 수 있다. ASIL 인증 정보(330)는 ASIL에 따른 요구 사항들(requirements)을 만족시키는 인증 알고리즘에 기초하여 생성될 수 있고, 인증 키, 해시(hash) 값, CRC(cyclic redundancy check) 값, FCS(frame check sequence) 등을 포함할 수 있다. ASIL 인증 정보(330)는 이더넷 메시지(300)를 생성하는 통신 노드(예를 들어, 엔드 노드, 스위치, 브릿지, 게이트웨이 등)에 의해 설정될 수 있다. 이더넷 메시지(300)의 헤더(310)는 다음과 같이 구성될 수 있다.Referring to FIG. 3 , the Ethernet message 300 may include a header 310 , at least one data unit (DU) 321 , 322 , 323 , and the like. DU#1 (321), DU#2 (322), and DU#3 (323) may be a PDU (protocol data unit), UDP (user datagram protocol) data unit, etc., and may constitute a payload. . In addition, the Ethernet message 300 may further include automotive safety integrity level (ASIL) authentication information 330 . The ASIL authentication information 330 may be generated based on an authentication algorithm that satisfies requirements according to ASIL, and an authentication key, a hash value, a cyclic redundancy check (CRC) value, a frame check (FCS) sequence) and the like. The ASIL authentication information 330 may be set by a communication node (eg, an end node, a switch, a bridge, a gateway, etc.) that generates the Ethernet message 300 . The header 310 of the Ethernet message 300 may be configured as follows.

도 4는 이더넷 메시지에 포함된 헤더의 제1 실시예를 도시한 블록도이다.4 is a block diagram illustrating a first embodiment of a header included in an Ethernet message.

도 4를 참조하면, 헤더(310)는 DA(destination address) 필드(310-1), SA(source address) 필드(310-2), 이더넷 타입 필드(310-3), IP(internet protocol) 헤더(310-4), UDP 헤더(310-5), 메시지 ID(identifier) 필드(310-6), 플래그(flag) 필드(310-8), 예비(reserved) 필드(310-9), 시퀀스 번호(sequence number) 필드(310-10) 등을 포함할 수 있다.Referring to FIG. 4 , the header 310 includes a destination address (DA) field 310-1, a source address (SA) field 310-2, an Ethernet type field 310-3, and an Internet protocol (IP) header. (310-4), UDP header (310-5), message ID (identifier) field (310-6), flag (flag) field (310-8), reserved (reserved) field (310-9), sequence number It may include a (sequence number) field 310-10, and the like.

DA 필드(310-1)는 6바이트(byte)의 크기를 가질 수 있으며, 해당 이더넷 메시지(300)를 수신하는 통신 노드의 식별 정보(예를 들어, MAC(medium access control) 주소)를 포함할 수 있다. SA 필드(310-2)는 6바이트의 크기를 가질 수 있으며, 해당 이더넷 메시지(300)를 전송하는 통신 노드의 식별 정보(예를 들어, MAC 주소)를 포함할 수 있다.The DA field 310-1 may have a size of 6 bytes, and may include identification information (eg, medium access control (MAC) address) of a communication node that receives the corresponding Ethernet message 300 . can The SA field 310 - 2 may have a size of 6 bytes and may include identification information (eg, MAC address) of a communication node transmitting the corresponding Ethernet message 300 .

이더넷 타입 필드(310-3)는 2바이트의 크기를 가질 수 있으며, 이더넷 메시지(300)의 타입을 지시할 수 있다. 예를 들어, 이더넷 타입 필드(310-3)에 의해 지시되는 값이 16진수 0x600보다 큰 경우, 이더넷 타입 필드(310-3)는 RFC(request for comments) 894에서 규정된 DIX 포맷(format)을 지시할 수 있다. 이더넷 타입 필드(310-3)에 의해 지시되는 값이 16진수 0x600보다 작은 경우, 이더넷 타입 필드(310-3)는 IEEE(Institute of Electrical and Electronics Engineers)에서 규정된 SANP(subnetwork access protocol) 포맷 또는 SAP(service access point) 포맷을 지시할 수 있다. 여기서, 이더넷 타입 필드(310-3)는 IPv4(internet protocol version 4)를 지시하는 16진수 0x0800으로 설정될 수 있다.The Ethernet type field 310 - 3 may have a size of 2 bytes and may indicate the type of the Ethernet message 300 . For example, if the value indicated by the Ethernet type field 310-3 is greater than hexadecimal 0x600, the Ethernet type field 310-3 uses the DIX format specified in request for comments (RFC) 894. can direct When the value indicated by the Ethernet type field 310-3 is less than hexadecimal 0x600, the Ethernet type field 310-3 is a SANP (subnetwork access protocol) format specified by the Institute of Electrical and Electronics Engineers (IEEE) or A service access point (SAP) format may be indicated. Here, the Ethernet type field 310 - 3 may be set to 0x0800 hexadecimal indicating Internet protocol version 4 (IPv4).

IP 헤더(310-4)는 20바이트 내지 60바이트의 길이를 가질 수 있으며, 프로토콜 ID, 체크섬(checksum) 정보, SA IP 주소, DA IP 주소 등을 포함할 수 있다. UDP 헤더(310-5)는 8바이트의 길이를 가질 수 있으며, 출발지 포트(port) 번호, 목적지 포트 번호, 체크섬 정보 등을 포함할 수 있다. 메시지 ID 필드(310-6)는 4바이트의 길이를 가질 수 있으며, 차량 네트워크에서 해당 이더넷 메시지(300)를 식별하기 위해 사용될 수 있다. 길이 필드(310-7)는 4바이트의 길이를 가질 수 있으며, 이더넷 메시지(300)의 페이로드의 길이를 지시할 수 있다. 플래그 필드(310-8)는 1바이트의 크기를 가질 수 있으며, 특정 정보(또는, 특정 동작의 수행)를 지시하는 특정 값으로 설정될 수 있다. 예비 필드(310-9)는 1바이트의 크기를 가질 수 있다. 시퀀스 번호 필드(310-10)는 2바이트의 크기를 가질 수 있으며, 이더넷 메시지(300)(예를 들어, 이더넷 메시지(300)에 포함된 페이로드)의 시퀀스 번호를 지시할 수 있다.The IP header 310-4 may have a length of 20 to 60 bytes, and may include a protocol ID, checksum information, an SA IP address, a DA IP address, and the like. The UDP header 310-5 may have a length of 8 bytes, and may include a source port number, a destination port number, checksum information, and the like. The message ID field 310 - 6 may have a length of 4 bytes, and may be used to identify the corresponding Ethernet message 300 in the vehicle network. The length field 310 - 7 may have a length of 4 bytes and may indicate the length of the payload of the Ethernet message 300 . The flag field 310 - 8 may have a size of 1 byte and may be set to a specific value indicating specific information (or performance of a specific operation). The reserved field 310 - 9 may have a size of 1 byte. The sequence number field 310 - 10 may have a size of 2 bytes and may indicate a sequence number of the Ethernet message 300 (eg, a payload included in the Ethernet message 300 ).

또한, 헤더(310)는 이더넷 메시지(300)의 페이로드에 포함된 정보의 타입(예를 들어, 제어 정보, 관리 정보, 데이터(예를 들어, 멀티미디어 데이터, AVB 데이터) 등)을 지시하는 지시자를 더 포함할 수 있다. 지시자는 헤더(310)의 이더넷 타입 필드(310-3), 메시지 ID(identifier) 필드(310-6), 플래그 필드(310-8) 또는 예비 필드(310-9)에 포함될 수 있다.In addition, the header 310 is an indicator indicating the type of information (eg, control information, management information, data (eg, multimedia data, AVB data), etc.) included in the payload of the Ethernet message 300 . may further include. The indicator may be included in the Ethernet type field 310 - 3 , the message identifier field 310 - 6 , the flag field 310 - 8 , or the reserved field 310 - 9 of the header 310 .

도 5는 차량 네트워크에서 CAN 메시지의 제1 실시예를 도시한 블록도이다.5 is a block diagram illustrating a first embodiment of a CAN message in a vehicle network.

도 5를 참조하면, CAN 메시지(500)는 CAN FD(flexible data) 포맷에 기초하여 생성될 수 있다. CAN 메시지(500)는 2바이트의 길이를 가지는 CRC(510), 1바이트의 길이를 가지는 얼라이브 카운터(alive counter)(520), 29바이트의 길이를 가지는 페이로드(530) 등을 포함할 수 있다. 얼라이브 카운터(520)는 애플리케이션 레벨(application level)을 지시할 수 있다. 페이로드(530)는 적어도 하나의 데이터 유닛을 포함할 수 있다. CAN 메시지(500)를 위한 ASIL 인증 정보는 페이로드(530)에 포함될 수 있다.Referring to FIG. 5 , a CAN message 500 may be generated based on a CAN flexible data (FD) format. The CAN message 500 may include a CRC 510 having a length of 2 bytes, an alive counter 520 having a length of 1 byte, a payload 530 having a length of 29 bytes, and the like. . The alive counter 520 may indicate an application level. The payload 530 may include at least one data unit. ASIL authentication information for the CAN message 500 may be included in the payload 530 .

도 6은 차량 네트워크에서 CAN 메시지의 제2 실시예를 도시한 블록도이다.6 is a block diagram illustrating a second embodiment of a CAN message in a vehicle network.

도 6을 참조하면, CAN 메시지(600)는 고속 CAN 포맷 또는 저속 CAN 포맷에 기초하여 생성될 수 있다. CAN 메시지(600)는 1바이트의 길이를 가지는 CRC(610), 4비트(bit)의 길이를 가지는 예비 필드(620), 4비트의 길이를 가지는 얼라이브 카운터(630), 6바이트의 길이를 가지는 페이로드(640) 등을 포함할 수 있다. 얼라이브 카운터(630)는 애플리케이션 레벨을 지시할 수 있다. 페이로드(640)는 적어도 하나의 데이터 유닛을 포함할 수 있다. CAN 메시지(600)를 위한 ASIL 인증 정보는 페이로드(640)에 포함될 수 있다.Referring to FIG. 6 , a CAN message 600 may be generated based on a high-speed CAN format or a low-speed CAN format. The CAN message 600 has a CRC 610 having a length of 1 byte, a reserved field 620 having a length of 4 bits, an alive counter 630 having a length of 4 bits, and a length of 6 bytes. payload 640 , and the like. Alive counter 630 may indicate an application level. The payload 640 may include at least one data unit. ASIL authentication information for the CAN message 600 may be included in the payload 640 .

한편, 차량 네트워크를 구성하는 통신 노드들(즉, 게이트웨이, 스위치, 엔드 노드 등)은 스타(star) 토폴로지, 버스(bus) 토폴로지, 링(ring) 토폴로지, 트리(tree) 토폴로지, 메쉬(mesh) 토폴로지 등으로 연결될 수 있다. 또한, 차량 네트워크를 구성하는 통신 노드들 각각은 CAN 프로토콜, 플렉스레이 프로토콜, MOST 프로토콜, LIN 프로토콜, 이더넷 프로토콜 등을 지원할 수 있다. 차량 네트워크에 속한 통신 노드는 다음과 같이 구성될 수 있다.On the other hand, communication nodes (ie, gateways, switches, end nodes, etc.) constituting the vehicle network include a star topology, a bus topology, a ring topology, a tree topology, and a mesh. It can be connected by topology or the like. In addition, each of the communication nodes constituting the vehicle network may support a CAN protocol, a FlexRay protocol, a MOST protocol, a LIN protocol, an Ethernet protocol, and the like. A communication node belonging to the vehicle network may be configured as follows.

도 7은 차량 네트워크에 속하는 통신 노드의 제1 실시예를 도시한 블록도이다.7 is a block diagram illustrating a first embodiment of a communication node belonging to a vehicle network.

도 7을 참조하면, 차량 네트워크(예를 들어, 도 1 또는 도 2에 도시된 차량 네트워크)를 구성하는 통신 노드(700)는 PHY 계층 유닛(physical layer unit)(710) 및 컨트롤러(controller) 유닛(720)을 포함할 수 있다. 또한, 통신 노드(700)는 파워(power)를 공급하는 레귤레이터(regulator)(미도시)를 더 포함할 수 있다. 이때, 컨트롤러 유닛(720)은 MAC(medium access control) 계층을 포함하여 구현될 수 있다. PHY 계층 유닛(710)은 다른 통신 노드로부터 신호를 수신할 수 있거나, 다른 통신 노드로 신호를 전송할 수 있다. 컨트롤러 유닛(720)은 PHY 계층 유닛(710)을 제어할 수 있고, 다양한 기능들(예를 들어, 인포테인먼트 기능 등)을 수행할 수 있다. PHY 계층 유닛(710)과 컨트롤러 유닛(720)은 하나의 SoC(System on Chip)로 구현될 수도 있고, 별도의 칩으로 구성될 수도 있다.Referring to FIG. 7 , the communication node 700 constituting the vehicle network (eg, the vehicle network shown in FIG. 1 or FIG. 2 ) includes a PHY layer unit 710 and a controller unit. 720 may be included. Also, the communication node 700 may further include a regulator (not shown) for supplying power. In this case, the controller unit 720 may be implemented including a medium access control (MAC) layer. The PHY layer unit 710 may receive signals from, or transmit signals to, other communication nodes. The controller unit 720 may control the PHY layer unit 710 and may perform various functions (eg, an infotainment function, etc.). The PHY layer unit 710 and the controller unit 720 may be implemented as one SoC (System on Chip) or may be configured as separate chips.

PHY 계층 유닛(710)과 컨트롤러 유닛(720)은 매체 독립 인터페이스(media independent interface, MII)(730)를 통해 연결될 수 있다. MII(730)는 IEEE 802.3에 규정된 인터페이스를 의미할 수 있으며, PHY 계층 유닛(710)과 컨트롤러 유닛(720) 간의 데이터 인터페이스 및 관리 인터페이스로 구성될 수 있다. MII(730) 대신에 RMII(reduced MII), GMII(gigabit MII), RGMII(reduced GMII), SGMII(serial GMII), XGMII(10 GMII) 중 하나의 인터페이스가 사용될 수 있다. 데이터 인터페이스는 전송 채널(channel) 및 수신 채널을 포함할 수 있으며, 채널들 각각은 독립적인 클럭(clock), 데이터 및 제어 신호를 가질 수 있다. 관리 인터페이스는 2-신호 인터페이스로 구성될 수 있으며, 하나는 클럭을 위한 신호이고 다른 하나는 데이터를 위한 신호일 수 있다.The PHY layer unit 710 and the controller unit 720 may be connected through a media independent interface (MII) 730 . The MII 730 may mean an interface defined in IEEE 802.3, and may be composed of a data interface and a management interface between the PHY layer unit 710 and the controller unit 720 . Instead of the MII 730 , one of reduced MII (RMII), gigabit MII (GMII), reduced GMII (RGMII), serial GMII (SGMII), and XGMII (10 GMII) interfaces may be used instead of the MII 730 . The data interface may include a transmit channel and a receive channel, and each of the channels may have an independent clock, data, and control signal. The management interface may be configured as a two-signal interface, one signal for the clock and the other signal for data.

PHY 계층 유닛(710)은 PHY 계층 인터페이스 유닛(711), PHY 계층 프로세서(processor)(712) 및 PHY 계층 메모리(memory)(713) 등을 포함할 수 있다. PHY 계층 유닛(710)의 구성은 이에 한정되지 않으며, PHY 계층 유닛(710)은 다양하게 구성될 수 있다. PHY 계층 인터페이스 유닛(711)은 컨트롤러 유닛(720)으로부터 수신된 신호를 PHY 계층 프로세서(712)로 전송할 수 있고, PHY 계층 프로세서(712)로부터 수신된 신호를 컨트롤러 유닛(720)에 전송할 수 있다. PHY 계층 프로세서(712)는 PHY 계층 인터페이스 유닛(711) 및 PHY 계층 메모리(713) 각각의 동작을 제어할 수 있다. PHY 계층 프로세서(712)는 전송할 신호의 변조 또는 수신된 신호의 복조를 수행할 수 있다. PHY 계층 프로세서(712)는 신호를 입력 또는 출력하도록 PHY 계층 메모리(713)를 제어할 수 있다. PHY 계층 메모리(713)는 수신된 신호를 저장할 수 있고, PHY 계층 프로세서(712)의 요청에 따라 저장된 신호를 출력할 수 있다.The PHY layer unit 710 may include a PHY layer interface unit 711 , a PHY layer processor 712 , and a PHY layer memory 713 , and the like. The configuration of the PHY layer unit 710 is not limited thereto, and the PHY layer unit 710 may be configured in various ways. The PHY layer interface unit 711 may transmit a signal received from the controller unit 720 to the PHY layer processor 712 , and may transmit a signal received from the PHY layer processor 712 to the controller unit 720 . The PHY layer processor 712 may control the operation of each of the PHY layer interface unit 711 and the PHY layer memory 713 . The PHY layer processor 712 may perform modulation of a signal to be transmitted or demodulation of a received signal. The PHY layer processor 712 may control the PHY layer memory 713 to input or output a signal. The PHY layer memory 713 may store the received signal, and may output the stored signal according to the request of the PHY layer processor 712 .

컨트롤러 유닛(720)은 MII(730)를 통해 PHY 계층 유닛(710)에 대한 모니터링 및 제어를 수행할 수 있다. 컨트롤러 유닛(720)은 컨트롤러 인터페이스 유닛(721), 컨트롤러 프로세서(722), 주 메모리(723) 및 보조 메모리(724) 등을 포함할 수 있다. 컨트롤러 유닛(720)의 구성은 이에 한정되지 않으며, 컨트롤러 유닛(720)은 다양하게 구성될 수 있다. 컨트롤러 인터페이스 유닛(721)은 PHY 계층 유닛(710)(즉, PHY 계층 인터페이스 유닛(711)) 또는 상위 계층(미도시)으로부터 신호를 수신할 수 있고, 수신된 신호를 컨트롤러 프로세서(722)에 전송할 수 있고, 컨트롤러 프로세서(722)로부터 수신된 신호를 PHY 계층 유닛(710) 또는 상위 계층에 전송할 수 있다. 컨트롤러 프로세서(722)는 컨트롤러 인터페이스 유닛(721), 주 메모리(723) 및 보조 메모리(724)를 제어하기 위한 독립된 메모리 컨트롤 로직(control logic) 또는 통합 메모리 컨트롤 로직을 더 포함할 수 있다. 메모리 컨트롤 로직은 주 메모리(723) 및 보조 메모리(724)에 포함되어 구현될 수도 있으며, 또는 컨트롤러 프로세서(722)에 포함되어 구현될 수도 있다.The controller unit 720 may perform monitoring and control for the PHY layer unit 710 through the MII 730 . The controller unit 720 may include a controller interface unit 721 , a controller processor 722 , a main memory 723 and an auxiliary memory 724 , and the like. The configuration of the controller unit 720 is not limited thereto, and the controller unit 720 may be configured in various ways. The controller interface unit 721 may receive a signal from the PHY layer unit 710 (ie, the PHY layer interface unit 711 ) or an upper layer (not shown), and transmit the received signal to the controller processor 722 . and may transmit a signal received from the controller processor 722 to the PHY layer unit 710 or an upper layer. The controller processor 722 may further include independent memory control logic or integrated memory control logic for controlling the controller interface unit 721 , the main memory 723 , and the auxiliary memory 724 . The memory control logic may be implemented by being included in the main memory 723 and the auxiliary memory 724 , or may be implemented by being included in the controller processor 722 .

주 메모리(723) 및 보조 메모리(724) 각각은 컨트롤러 프로세서(722)에 의해 처리된 신호를 저장할 수 있고, 컨트롤러 프로세서(722)의 요청에 따라 저장된 신호를 출력할 수 있다. 주 메모리(723)는 컨트롤러 프로세서(722)의 동작을 위해 필요한 데이터를 일시 저장하는 휘발성 메모리(예를 들어, RAM(random access memory) 등)를 의미할 수 있다. 보조 메모리(724)는 운영체제 코드(operating system code)(예를 들어, 커널(kernel) 및 디바이스 드라이버(device driver))와 컨트롤러 프로세서(720)의 기능을 수행하기 위한 응용 프로그램(application program) 코드 등이 저장되는 비휘발성 메모리를 의미할 수 있다. 비휘발성 메모리로 빠른 처리 속도를 가지는 플래쉬 메모리(flash memory)가 사용될 수 있고, 또는 대용량의 데이터 저장을 위한 하드 디스크 드라이브(hard disc drive, HDD), CD-ROM(compact disc-read only memory) 등이 사용될 수 있다. 컨트롤러 프로세서(722)는 통상적으로 적어도 하나의 프로세싱 코어(core)를 포함하는 로직 회로로 구성될 수 있다. 컨트롤러 프로세서(722)로 ARM(Advanced RISC Machines Ltd.) 계열의 코어, 아톰(atom) 계열의 코어 등이 사용될 수 있다.Each of the main memory 723 and the auxiliary memory 724 may store a signal processed by the controller processor 722 , and may output the stored signal according to a request of the controller processor 722 . The main memory 723 may refer to a volatile memory (eg, random access memory (RAM)) that temporarily stores data necessary for the operation of the controller processor 722 . The auxiliary memory 724 includes operating system code (eg, a kernel and a device driver) and an application program code for performing a function of the controller processor 720 , etc. This may mean a non-volatile memory in which it is stored. A flash memory having a fast processing speed may be used as the non-volatile memory, or a hard disk drive (HDD), compact disc-read only memory (CD-ROM), etc. for storing a large amount of data this can be used The controller processor 722 may typically be configured as a logic circuit including at least one processing core. As the controller processor 722 , an ARM (Advanced RISC Machines Ltd.)-based core, an atom-based core, or the like may be used.

도 8은 차량 네트워크에 속하는 통신 노드의 제2 실시예를 도시한 블록도이다.8 is a block diagram illustrating a second embodiment of a communication node belonging to a vehicle network.

도 8을 참조하면, 차량 네트워크(예를 들어, 도 1 또는 도 2에 도시된 차량 네트워크)를 구성하는 통신 노드(800)는 하드웨어(hardware) 계층(810), HAL(hardware abstraction layer)(830), 미들웨어(middleware) 계층(850) 및 애플리케이션 계층(870)을 포함할 수 있다. 하드웨어 계층(810)은 PHY 계층 유닛(811) 및 MAC 계층 유닛(812)을 포함할 수 있다. PHY 계층 유닛(811)은 이더넷 프로토콜을 지원할 수 있으며, 도 7을 참조하여 설명된 PHY 계층 유닛(710)일 수 있다. MAC 계층 유닛(812)은 이더넷 프로토콜(예를 들어, IEEE 802.3 등)을 지원할 수 있으며, 도 7을 참조하여 설명된 컨트롤러 유닛(720)일 수 있다.Referring to FIG. 8 , the communication node 800 constituting the vehicle network (eg, the vehicle network shown in FIG. 1 or FIG. 2 ) includes a hardware layer 810 and a hardware abstraction layer (HAL) 830 . ), a middleware layer 850 and an application layer 870 . The hardware layer 810 may include a PHY layer unit 811 and a MAC layer unit 812 . The PHY layer unit 811 may support the Ethernet protocol, and may be the PHY layer unit 710 described with reference to FIG. 7 . The MAC layer unit 812 may support an Ethernet protocol (eg, IEEE 802.3, etc.), and may be the controller unit 720 described with reference to FIG. 7 .

하드웨어 계층(810)은 AVB(audio video bridging) 프로토콜을 지원할 수 있다. 예를 들어, 하드웨어 계층(810)은 IEEE 802.1AS 타임 스탬핑(time stamping) 프로토콜, IEEE 802.1Q SRP(stream reservation protocol), IEEE 802.1Q FQTSS(forwarding&queuing for time-sensitive stream) 프로토콜 등을 지원할 수 있다. IEEE 802.1AS 타임 스탬핑 프로토콜은 IEEE802.1AS에 따른 메시지의 송수신 시간에 대한 스탬핑 동작 등을 지원할 수 있다. IEEE 802.1Q SRP는 스트림 자원의 예약 동작, 트래픽 쉐이퍼(traffic shaper)의 예약 동작 등을 지원할 수 있다. IEEE 802.1Q FQTSS 프로토콜은 전송되는 메시지의 쉐이핑(shaping) 동작 등을 지원할 수 있다. 하드웨어 계층(810)은 미들웨어 계층(850)이 동작할 수 있도록 HAL(830)을 지원할 수 있다.The hardware layer 810 may support an audio video bridging (AVB) protocol. For example, the hardware layer 810 may support an IEEE 802.1AS time stamping protocol, an IEEE 802.1Q stream reservation protocol (SRP), and an IEEE 802.1Q forwarding & queuing for time-sensitive stream (FQTSS) protocol. The IEEE 802.1AS time stamping protocol may support a stamping operation for transmission/reception time of a message according to IEEE802.1AS. IEEE 802.1Q SRP may support a reservation operation of a stream resource, a reservation operation of a traffic shaper, and the like. The IEEE 802.1Q FQTSS protocol may support a shaping operation of a transmitted message. The hardware layer 810 may support the HAL 830 so that the middleware layer 850 may operate.

하드웨어 계층(810)은 크게 세 가지 상태 모드(mode)를 지원할 수 있다. 예를 들어, 하드웨어 계층(810)은 노멀(normal) 모드, 슬립(sleep) 모드 및 파워 오프(off) 모드를 지원할 수 있다. 노멀 모드에서 이더넷 통신은 수행될 수 있다. 하드웨어 계층(810)의 상태가 노멀 모드인 경우, PHY 계층 유닛(811)은 노멀 모드(예를 들어, INH 핀(pin) 액티브(active) 상태)로 동작할 수 있고, MAC 계층 유닛(812)은 액티브 모드(예를 들어, 메시지를 송수신할 수 있는 상태)로 동작할 수 있다. 슬립 모드에서 이더넷 통신은 최소한의 전력을 사용하여 제한적으로 수행될 수 있다. 하드웨어 계층(810)의 상태가 슬립 모드인 경우, PHY 계층 유닛(811)은 슬립 모드(예를 들어, INH 핀 인액티브(inactive) 상태)로 동작할 수 있고, 리모트 이벤트(event)가 검출된 경우 웨이크업(wakeup) 될 수 있다. 또한, MAC 계층 유닛(812)은 인액티브 모드(예를 들어, 메시지를 송수신할 수 없는 상태)로 동작할 수 있고, 로컬(local) 이벤트가 검출된 경우 웨이크업 될 수 있다.The hardware layer 810 may largely support three state modes. For example, the hardware layer 810 may support a normal mode, a sleep mode, and a power off mode. Ethernet communication may be performed in the normal mode. When the state of the hardware layer 810 is the normal mode, the PHY layer unit 811 may operate in a normal mode (eg, INH pin (active) state), and the MAC layer unit 812 may operate in an active mode (eg, a state in which messages can be transmitted and received). In the sleep mode, Ethernet communication can be performed in a limited manner using minimal power. When the state of the hardware layer 810 is a sleep mode, the PHY layer unit 811 may operate in a sleep mode (eg, INH pin inactive state), and a remote event is detected. It may wake up. In addition, the MAC layer unit 812 may operate in an inactive mode (eg, a state in which a message cannot be transmitted/received), and may wake up when a local event is detected.

하드웨어 계층(810)의 상태가 파워 오프 모드인 경우, PHY 계층 유닛(811)은 슬립 모드(예를 들어, INH 핀 인액티브 상태)로 동작할 수 있고, 리모트 이벤트가 검출된 경우 웨이크업 될 수 있다. 또한, MAC 계층 유닛(812)은 인액티브 모드로 동작할 수 있고, 전력은 MAC 계층 유닛(812)에 공급되지 않을 수 있다. 즉, MAC 계층 유닛(812)은 로컬 이벤트에 의해서 웨이크업 될 수 없다. 하드웨어 계층(810)의 구성은 앞서 설명된 내용에 한정되지 않으며, 하드웨어 계층(810)은 다양하게 구성될 수 있다.When the state of the hardware layer 810 is the power off mode, the PHY layer unit 811 may operate in a sleep mode (eg, INH pin inactive state), and may wake up when a remote event is detected. have. Also, the MAC layer unit 812 may operate in an inactive mode, and no power may be supplied to the MAC layer unit 812 . That is, the MAC layer unit 812 cannot be woken up by a local event. The configuration of the hardware layer 810 is not limited to the above description, and the hardware layer 810 may be configured in various ways.

HAL(830)은 하드웨어 계층(810)과 미들웨어 계층(850)의 사이에 위치할 수 있으며, 복수의 하드웨어 계층(810)들 간의 독립성을 보장하기 위해 사용될 수 있다. HAL(830)은 이후에 설명될 OSAL(operating system abstraction layer)(851)과 독립적인 유닛으로 구성될 수 있고, 또는 HAL(830)은 OSAL(851)과 함께 하나의 유닛으로 구성될 수 있다.The HAL 830 may be located between the hardware layer 810 and the middleware layer 850 , and may be used to ensure independence between the plurality of hardware layers 810 . The HAL 830 may be configured as a unit independent of an operating system abstraction layer (OSAL) 851 to be described later, or the HAL 830 may be configured as a unit together with the OSAL 851 .

미들웨어 계층(850)은 TCP/IP(transfer control protocol/internet protocol)를 기반으로 동작하는 IP 미들웨어 계층, AVB 프로토콜을 기반으로 동작하는 AVB 미들웨어 및 OSAL(851)을 포함할 수 있다. IP 미들웨어 계층은 DoIP(diagnostics over internet protocol) 유닛(852), EthCC 유닛(853), EthNM 유닛(854) 등을 포함할 수 있다. DoIP 유닛(852)은 진단 통신을 수행하도록 구성될 수 있다. EthCC 유닛(853)은 제어 메시지를 송수신하도록 구성될 수 있다. EthNM 유닛(854)은 네트워크 관리를 수행하도록 구성될 수 있다. IP 미들웨어 계층은 IPv4, ICMP(internet control message protocol), ARP(address resolution protocol), TCP, UDP 등을 지원할 수 있다. UDP는 제어 메시지 또는 관리 메시지에 대한 CRC, 얼라이브 카운터 등을 처리할 수 있다.The middleware layer 850 may include an IP middleware layer operating based on transfer control protocol/internet protocol (TCP/IP), AVB middleware operating based on the AVB protocol, and OSAL 851 . The IP middleware layer may include a diagnostics over internet protocol (DoIP) unit 852 , an EthCC unit 853 , an EthNM unit 854 , and the like. The DoIP unit 852 may be configured to perform diagnostic communications. The EthCC unit 853 may be configured to send and receive control messages. The EthNM unit 854 may be configured to perform network management. The IP middleware layer may support IPv4, internet control message protocol (ICMP), address resolution protocol (ARP), TCP, UDP, and the like. UDP may process a CRC for a control message or a management message, an alive counter, and the like.

AVB 미들웨어 계층은 토커(talker) 유닛(855), 리스너(listener) 유닛(856) 등을 포함할 수 있다. 토커 유닛(855)은 AVB 프로토콜을 기반으로 AVB 스트림의 전송을 수행하도록 구성될 수 있다. 리스너 유닛(856)은 AVB 프로토콜을 기반으로 AVB 스트림의 수신을 수행하도록 구성될 수 있다. AVB 미들웨어 계층은 IEEE 802.1AS gPTP(generalized precision time protocol), IEEE 1722 AVTP(AVB transport protocol) 등을 지원할 수 있다. IEEE 802.1AS gPTP는 BMCA(best master clock algorithm) 기반의 그랜드 마스터(grand master) 선정을 위한 동작, 클록(clock) 동기화를 위한 동작, 링크 지연 산출을 위한 동작 등을 지원할 수 있다. IEEE 1722 AVTP는 오디오 데이터 유닛 및 비디오 데이터 유닛을 포함하는 이더넷 메시지를 생성하는 동작 등을 지원할 수 있다.The AVB middleware layer may include a talker unit 855 , a listener unit 856 , and the like. The talker unit 855 may be configured to perform transmission of an AVB stream based on an AVB protocol. The listener unit 856 may be configured to perform reception of the AVB stream based on the AVB protocol. The AVB middleware layer may support IEEE 802.1AS generalized precision time protocol (gPTP), IEEE 1722 AVB transport protocol (AVTP), and the like. IEEE 802.1AS gPTP may support an operation for selecting a grand master based on BMCA (best master clock algorithm), an operation for clock synchronization, and an operation for calculating link delay. IEEE 1722 AVTP may support an operation of generating an Ethernet message including an audio data unit and a video data unit, and the like.

애플리케이션 계층(870)은 소프트웨어 인터페이스(software interface)(871), 애플리케이션(872) 등을 포함할 수 있다. 소프트웨어 인터페이스(871)는 애플리케이션(872)에 대한 신호의 입력 동작 및 출력 동작을 지원할 수 있다. 애플리케이션(872)은 TCP/IP를 기반으로 동작하는 애플리케이션, AVB 프로토콜을 기반으로 동작하는 애플리케이션 등을 포함할 수 있다.The application layer 870 may include a software interface 871 , an application 872 , and the like. Software interface 871 may support input operation and output operation of signals to application 872 . The application 872 may include an application operating based on TCP/IP, an application operating based on the AVB protocol, and the like.

도 9는 차량 네트워크에 속하는 게이트웨이의 제1 실시예를 도시한 블록도이다.9 is a block diagram illustrating a first embodiment of a gateway belonging to a vehicle network.

도 9를 참조하면, 게이트웨이(900)는 도 1의 차량 네트워크에 속한 게이트웨이(100) 또는 도 2의 차량 네트워크에 속한 게이트웨이(200)일 수 있다. 게이트웨이(900)는 CAN과 이더넷 기반의 네트워크 간의 통신을 지원할 수 있다. 예를 들어, 게이트웨이(900)는 CAN으로부터 수신된 CAN 메시지를 이더넷 메시지로 변환할 수 있고, 변환된 이더넷 메시지를 이더넷 기반의 네트워크에 전송할 수 있다. 또한, 게이트웨이(900)는 이더넷 기반의 네트워크로부터 수신된 이더넷 메시지를 CAN 메시지로 변환할 수 있고, 변환된 CAN 메시지를 CAN에 전송할 수 있다.Referring to FIG. 9 , the gateway 900 may be the gateway 100 belonging to the vehicle network of FIG. 1 or the gateway 200 belonging to the vehicle network of FIG. 2 . The gateway 900 may support communication between CAN and an Ethernet-based network. For example, the gateway 900 may convert a CAN message received from CAN into an Ethernet message, and transmit the converted Ethernet message to an Ethernet-based network. Also, the gateway 900 may convert the Ethernet message received from the Ethernet-based network into a CAN message, and transmit the converted CAN message to the CAN.

게이트웨이(900)는 CAN 프로토콜의 기능을 수행하는 CAN 기능 블록(910) 및 이더넷 프로토콜의 기능을 수행하는 이더넷 기능 블록(920)을 포함할 수 있다. CAN 기능 블록(910)은 CAN PHY 계층 유닛(911), CAN 무결성(integrity) 검증 유닛(912), CAN 무결성 처리 유닛(913), CAN 메시지 생성 유닛(914), CAN 메시지 처리 유닛(915), CAN 필터링(filtering) 유닛(916) 등을 포함할 수 있다. CAN PHY 계층 유닛(911)은 버스 라인에 대한 모니터링 동작을 수행함으로써 CAN 메시지를 수신할 수 있고, 버스 라인을 통해 CAN 메시지를 전송할 수 있다. CAN 무결성 검증 유닛(912)은 CAN 메시지에 포함된 ASIL 인증 정보에 대한 무결성 검증 동작을 수행할 수 있고, 무결성 검증이 실패한 경우에 해당 CAN 메시지를 폐기할 수 있다. CAN 무결성 처리 유닛(913)은 CAN 메시지에 포함될 ASIL 인증 정보의 생성 동작을 수행할 수 있다.The gateway 900 may include a CAN function block 910 performing a function of the CAN protocol and an Ethernet function block 920 performing a function of the Ethernet protocol. CAN function block 910 includes a CAN PHY layer unit 911, a CAN integrity verification unit 912, a CAN integrity processing unit 913, a CAN message generation unit 914, a CAN message processing unit 915, a CAN filtering unit 916 and the like. The CAN PHY layer unit 911 may receive the CAN message by performing a monitoring operation on the bus line, and may transmit the CAN message through the bus line. The CAN integrity verification unit 912 may perform an integrity verification operation on the ASIL authentication information included in the CAN message, and may discard the corresponding CAN message when the integrity verification fails. The CAN integrity processing unit 913 may perform an operation of generating ASIL authentication information to be included in the CAN message.

CAN 메시지 생성 유닛(914)은 CRC, 얼라이브 카운터, 페이로드(예를 들어, 데이터 유닛), ASIL 인증 정보 등을 포함하는 CAN 메시지의 생성 동작을 수행할 수 있다. CAN 메시지 처리 유닛(915)은 CAN 메시지의 송수신을 위한 제어 동작을 수행할 수 있다. CAN 필터링 유닛(916)은 CAN 메시지에 포함된 데이터 유닛이 CAN 버퍼(buffer)(예를 들어, 메모리)에 저장된 데이터 유닛과 동일한지를 확인할 수 있다. CAN 메시지에 포함된 데이터 유닛이 CAN 버퍼에 저장된 데이터 유닛과 다른 경우(예를 들어, CAN 메시지에 포함된 데이터 유닛이 업데이트된 제어 정보 또는 업데이트된 관리 정보를 포함하는 경우), 해당 데이터 유닛을 포함하는 CAN 메시지가 전송될 수 있다. 반면, CAN 메시지에 포함된 데이터 유닛이 CAN 버퍼에 저장된 데이터 유닛과 동일한 경우(예를 들어, CAN 메시지에 포함된 데이터 유닛이 기존 제어 정보 또는 기존 관리 정보를 포함하는 경우), CAN 필터링 유닛(916)은 해당 데이터 유닛을 폐기할 수 있다. 따라서 CAN 버퍼에 저장된 데이터 유닛과 동일한 데이터 유닛은 전송되지 않을 수 있다.The CAN message generating unit 914 may generate a CAN message including a CRC, an alive counter, a payload (eg, a data unit), ASIL authentication information, and the like. The CAN message processing unit 915 may perform a control operation for transmitting and receiving CAN messages. The CAN filtering unit 916 may check whether a data unit included in the CAN message is the same as a data unit stored in a CAN buffer (eg, memory). If the data unit contained in the CAN message is different from the data unit stored in the CAN buffer (for example, if the data unit contained in the CAN message contains updated control information or updated management information), the data unit is included A CAN message may be transmitted. On the other hand, when the data unit included in the CAN message is the same as the data unit stored in the CAN buffer (eg, the data unit included in the CAN message includes the existing control information or the existing management information), the CAN filtering unit 916 ) can discard the corresponding data unit. Therefore, the same data unit as the data unit stored in the CAN buffer may not be transmitted.

이더넷 기능 블록(920)은 이더넷 PHY 계층 유닛(921), 이더넷 무결성 검증 유닛(922), 이더넷 무결성 처리 유닛(923), 이더넷 메시지 생성 유닛(924), 이더넷 메시지 처리 유닛(925), 이더넷 라우팅(routing) 유닛(926) 등을 포함할 수 있다. 이더넷 PHY 계층 유닛(921)은 이더넷 링크(link)에 대한 모니터링 동작을 수행함으로써 이더넷 메시지를 수신할 수 있고, 이더넷 링크를 통해 이더넷 메시지를 전송할 수 있다. 이더넷 PHY 계층 유닛(921)은 이더넷 스위치 기능(예를 들어, 라우팅 기능, 필터링 기능 등)을 수행할 수 있다. 이더넷 무결성 검증 유닛(922)은 이더넷 메시지에 포함된 ASIL 인증 정보에 대한 무결성 검증 동작을 수행할 수 있고, 무결성 검증이 실패한 경우에 해당 이더넷 메시지를 폐기할 수 있다. 이더넷 무결성 처리 유닛(923)은 이더넷 메시지에 포함될 ASIL 인증 정보의 생성 동작을 수행할 수 있다.Ethernet function block 920 includes Ethernet PHY layer unit 921, Ethernet integrity verification unit 922, Ethernet integrity processing unit 923, Ethernet message generation unit 924, Ethernet message processing unit 925, Ethernet routing ( routing) unit 926 and the like. The Ethernet PHY layer unit 921 may receive an Ethernet message by performing a monitoring operation on an Ethernet link, and may transmit an Ethernet message through the Ethernet link. The Ethernet PHY layer unit 921 may perform an Ethernet switch function (eg, a routing function, a filtering function, etc.). The Ethernet integrity verification unit 922 may perform an integrity verification operation on the ASIL authentication information included in the Ethernet message, and may discard the corresponding Ethernet message when the integrity verification fails. The Ethernet integrity processing unit 923 may perform an operation of generating ASIL authentication information to be included in the Ethernet message.

이더넷 메시지 생성 유닛(924)은 헤더, 페이로드(예를 들어, 데이터 유닛), ASIL 인증 정보 등을 포함하는 이더넷 메시지의 생성 동작을 수행할 수 있다. 이더넷 메시지 처리 유닛(925)은 이더넷 메시지의 송수신을 위한 제어 동작을 수행할 수 있다. 이더넷 라우팅 유닛(926)은 미리 설정된 라우팅 테이블에 기초하여 이더넷 메시지의 전송 동작을 제어할 수 있다.The Ethernet message generating unit 924 may generate an Ethernet message including a header, a payload (eg, a data unit), ASIL authentication information, and the like. The Ethernet message processing unit 925 may perform a control operation for transmission and reception of an Ethernet message. The Ethernet routing unit 926 may control the transmission operation of the Ethernet message based on a preset routing table.

아래에서는, 차량 네트워크에 속하는 통신 노드와 이에 대응하는 상대(counterpart) 통신 노드에서 수행되는 방법이 설명될 것이다. 이하에서, 제1 통신 노드에서 수행되는 방법(예를 들어, 메시지의 전송 또는 수신)이 설명되는 경우에도 이에 대응하는 제2 통신 노드는 제1 통신 노드에서 수행되는 방법과 상응하는 방법(예를 들어, 메시지의 수신 또는 전송)을 수행할 수 있다. 즉, 제1 통신 노드의 동작이 설명된 경우에 이에 대응하는 제2 통신 노드는 제1 통신 노드의 동작과 상응하는 동작을 수행할 수 있다. 반대로, 제2 통신 노드의 동작이 설명된 경우에 이에 대응하는 제1 통신 노드는 스위치의 동작과 상응하는 동작을 수행할 수 있다.In the following, a communication node belonging to a vehicle network and a method performed in a corresponding counterpart communication node will be described. Hereinafter, even when a method performed in the first communication node (eg, transmission or reception of a message) is described, the corresponding second communication node corresponds to the method performed in the first communication node (eg, a method corresponding to the method performed in the first communication node) For example, the reception or transmission of a message) may be performed. That is, when the operation of the first communication node is described, the corresponding second communication node may perform the operation corresponding to the operation of the first communication node. Conversely, when the operation of the second communication node is described, the corresponding first communication node may perform the operation corresponding to the operation of the switch.

도 10은 차량 네트워크에서 통신 노드의 동작 방법의 제1 실시예를 도시한 순서도이다.10 is a flowchart illustrating a first embodiment of a method of operating a communication node in a vehicle network.

도 10을 참조하면, 게이트웨이(200), 엔드 노드#1(211) 및 엔드 노드#6(231) 각각은 도 2의 차량 네트워크에 속한 게이트웨이(200), 엔드 노드#1(211) 및 엔드 노드#6(231)일 수 있다. 예를 들어, 도 10에 도시된 통신 노드의 동작 방법은 도 2에 도시된 차량 네트워크에서 수행될 수 있고, 게이트웨이(200), 엔드 노드#1(211) 및 엔드 노드#6(231)은 도 7에 도시된 통신 노드(700)(또는, 도 8에 도시된 통신 노드(800))와 동일 또는 유사하게 구성될 수 있다. 또한, 게이트웨이(200)는 도 9에 도시된 게이트웨이(900)와 동일 또는 유사하게 구성될 수 있다.Referring to FIG. 10 , the gateway 200 , the end node #1 211 and the end node #6 231 each belong to the gateway 200 , the end node #1 211 and the end node belonging to the vehicle network of FIG. 2 . It may be #6(231). For example, the operating method of the communication node shown in FIG. 10 may be performed in the vehicle network shown in FIG. 2 , and the gateway 200, end node #1 211 and end node #6 231 are shown in FIG. The communication node 700 illustrated in FIG. 7 (or the communication node 800 illustrated in FIG. 8 ) may be configured in the same or similar manner. Also, the gateway 200 may be configured the same as or similar to the gateway 900 illustrated in FIG. 9 .

엔드 노드#1(211)은 이더넷 메시지(예를 들어, 도 3 및 도 4에 도시된 이더넷 메시지(300))를 생성할 수 있다(S1001). 엔드 노드#1(211)에 의해 생성된 이더넷 메시지는 다음과 같이 구성될 수 있다.The end node #1 211 may generate an Ethernet message (eg, the Ethernet message 300 shown in FIGS. 3 and 4) (S1001). The Ethernet message generated by the end node #1 211 may be configured as follows.

도 11은 차량 네트워크에서 이더넷 메시지의 제2 실시예를 도시한 블록도이다.11 is a block diagram illustrating a second embodiment of an Ethernet message in a vehicle network.

도 11을 참조하면, 엔드 노드#1(211)은 이더넷 메시지#1, 이더넷 메시지#2 및 이더넷 메시지#3을 생성할 수 있다. 이더넷 메시지#1, 이더넷 메시지#2 및 이더넷 메시지#3 각각은 헤더, 페이로드, ASIL 인증 정보 등을 포함할 수 있다. Referring to FIG. 11 , the end node #1 211 may generate Ethernet message #1, Ethernet message #2, and Ethernet message #3. Each of Ethernet message #1, Ethernet message #2, and Ethernet message #3 may include a header, a payload, and ASIL authentication information.

헤더는 이더넷 메시지#1, 이더넷 메시지#2 및 이더넷 메시지#3 각각의 목적지 정보를 포함할 수 있다. 목적지 정보는 이더넷 기반의 네트워크에 속한 스위치#1(210)에 연결된 통신 노드(예를 들어, 엔드 노드#2(212), 엔드 노드#3(213)), 이더넷 기반의 네트워크에 속한 스위치#2(220)에 연결된 통신 노드(예를 들어, 엔드 노드#4(221), 엔드 노드#5(222)) 또는 CAN에 속한 통신 노드(예를 들어, 엔드 노드#6(231), 엔드 노드#7(232), 엔드 노드#8(233))일 수 있다.The header may include destination information of each of Ethernet message #1, Ethernet message #2, and Ethernet message #3. The destination information is a communication node (eg, end node #2 (212), end node #3 (213)) connected to the switch #1 (210) belonging to the Ethernet-based network, and the switch #2 belonging to the Ethernet-based network. A communication node connected to 220 (eg, end node #4 (221), end node #5 (222)) or a communication node belonging to CAN (eg, end node #6 (231), end node # 7 (232), end node #8 (233)).

페이로드는 제어 정보, 관리 정보, 데이터(예를 들어, 멀티미디어 데이터, AVB 데이터 등) 등을 포함할 수 있다. 또한, 페이로드는 5개의 DU들(예를 들어, "DU#1, DU#2, DU#3, DU#4 및 DU#5", "DU#6, DU#7, DU#8, DU#9 및 DU#10" 또는 "DU#11, DU#12, DU#13, DU#14 및 DU#15")을 포함할 수 있다. ASIL 인증 정보는 ASIL에 따른 요구 사항들을 만족시키는 인증 알고리즘에 기초하여 생성될 수 있고, 인증 키, 해시 값, CRC 값, FCS 등을 포함할 수 있다. ASIL 인증 정보는 이더넷 메시지에 포함된 DU들 각각에 대해 설정되지 않고, 하나의 이더넷 메시지(예를 들어, 이더넷 메시지에 포함된 페이로드 전체)를 위해 설정될 수 있다.The payload may include control information, management information, data (eg, multimedia data, AVB data, etc.), and the like. In addition, the payload includes five DUs (eg, "DU#1, DU#2, DU#3, DU#4 and DU#5", "DU#6, DU#7, DU#8, DU #9 and DU#10" or "DU#11, DU#12, DU#13, DU#14 and DU#15"). The ASIL authentication information may be generated based on an authentication algorithm that satisfies the requirements according to ASIL, and may include an authentication key, a hash value, a CRC value, an FCS, and the like. The ASIL authentication information may not be set for each of the DUs included in the Ethernet message, but may be configured for one Ethernet message (eg, the entire payload included in the Ethernet message).

이더넷 메시지의 페이로드가 데이터(예를 들어, 멀티미디어 데이터, AVB 데이터 등)를 포함하는 경우, 해당 이더넷 메시지를 위한 ASIL 인증 정보는 생성되지 않을 수 있다. 따라서 데이터의 전송을 위해 사용되는 이더넷 메시지는 ASIL 제어 정보를 포함하지 않을 수 있다. 이더넷 메시지의 페이로드가 제어 정보 또는 관리 정보를 포함하는 경우, 해당 이더넷 메시지를 위한 ASIL 인증 정보는 생성될 수 있다. 따라서 제어 정보 또는 관리 정보의 전송을 위해 사용되는 이더넷 메시지는 ASIL 제어 정보를 포함할 수 있다.When the payload of the Ethernet message includes data (eg, multimedia data, AVB data, etc.), ASIL authentication information for the Ethernet message may not be generated. Therefore, the Ethernet message used for data transmission may not include ASIL control information. When the payload of the Ethernet message includes control information or management information, ASIL authentication information for the Ethernet message may be generated. Accordingly, an Ethernet message used for transmission of control information or management information may include ASIL control information.

다시 도 10을 참조하면, 엔드 노드#1(211)은 이더넷 메시지(예를 들어, 도 11에 도시된 이더넷 메시지#1, 이더넷 메시지#2 및 이더넷 메시지#3)를 전송할 수 있다(S1002). 이더넷 메시지는 이더넷 기반의 네트워크의 전송 주기에 따라 전송될 수 있다. 예를 들어, 이더넷 기반의 네트워크의 전송 주기가 50ms(millisecond)인 경우, 엔드 노드#1(211)은 이더넷 메시지#1의 전송 시점으로부터 50ms 후에 이더넷 메시지#2를 전송할 수 있고, 이더넷 메시지#2의 전송 시점으로부터 50ms 후에 이더넷 메시지#3을 전송할 수 있다.Referring back to FIG. 10 , the end node #1 211 may transmit an Ethernet message (eg, Ethernet message #1, Ethernet message #2, and Ethernet message #3 shown in FIG. 11 ) ( S1002 ). The Ethernet message may be transmitted according to the transmission cycle of the Ethernet-based network. For example, if the transmission period of the Ethernet-based network is 50 ms (millisecond), the end node #1 211 may transmit Ethernet message #2 50 ms after the transmission time of Ethernet message #1, and Ethernet message #2 Ethernet message #3 can be transmitted 50 ms after the transmission time of .

이더넷 메시지의 목적지가 이더넷 기반의 네트워크에 속한 스위치#1(210)에 연결된 엔드 노드#2(212) 또는 엔드 노드#3(213)인 경우, 엔드 노드#1(211)의 이더넷 메시지는 스위치#1(210)을 통해 엔드 노드#2(212) 또는 엔드 노드#3(213)에 전송될 수 있다. 반면, 이더넷 메시지의 목적지가 이더넷 기반의 네트워크에 속한 스위치#2(220)에 연결된 통신 노드 또는 CAN에 속한 통신 노드인 경우, 엔드 노드#1(211)의 이더넷 메시지는 스위치#1(210)을 통해 게이트웨이(200)로 전송될 수 있다.When the destination of the Ethernet message is the end node #2 (212) or the end node #3 (213) connected to the switch #1 (210) belonging to the Ethernet-based network, the Ethernet message of the end node #1 (211) is the switch # It may be transmitted to end node #2 (212) or end node #3 (213) through 1 (210). On the other hand, when the destination of the Ethernet message is a communication node connected to the switch #2 (220) belonging to the Ethernet-based network or a communication node belonging to the CAN, the Ethernet message of the end node #1 (211) is the switch #1 (210). may be transmitted to the gateway 200 through the

게이트웨이(200)는 엔드 노드#1(211)의 이더넷 메시지(예를 들어, 도 11에 도시된 이더넷 메시지#1, 이더넷 메시지#2 및 이더넷 메시지#3)를 수신할 수 있고, 수신된 이더넷 메시지의 헤더에 포함된 정보에 기초하여 이더넷 메시지의 목적지를 확인할 수 있다(S1003). 이더넷 메시지의 목적지가 이더넷 기반의 네트워크에 속한 스위치#2(220)에 연결된 통신 노드인 경우, 게이트웨이(200)는 이더넷 메시지를 스위치#2(220)에 전송할 수 있고, 게이트웨이(200)로부터 이더넷 메시지를 수신한 스위치#2(220)는 해당 이더넷 메시지를 엔드 노드#4(221) 또는 엔드 노드#5(222)에 전송할 수 있다.The gateway 200 may receive the Ethernet message of the end node #1 211 (eg, Ethernet message #1, Ethernet message #2, and Ethernet message #3 shown in FIG. 11 ), and the received Ethernet message It is possible to check the destination of the Ethernet message based on the information included in the header (S1003). When the destination of the Ethernet message is a communication node connected to the switch #2 (220) belonging to the Ethernet-based network, the gateway 200 may transmit the Ethernet message to the switch #2 (220), and the Ethernet message from the gateway 200 The switch #2 (220) receiving the ethernet message may transmit the corresponding Ethernet message to the end node #4 (221) or the end node #5 (222).

이더넷 메시지의 목적지가 CAN에 속한 통신 노드인 경우, 게이트웨이(200)는 이더넷 메시지의 헤더에 포함된 정보에 기초하여 이더넷 메시지의 페이로드에 포함된 정보의 타입을 확인할 수 있다(S1004). 이더넷 메시지의 페이로드가 데이터(예를 들어, 멀티미디어 데이터, AVB 데이터)를 포함하는 것으로 확인된 경우, 게이트웨이(200)는 이더넷 메시지에 기초하여 CAN 메시지(예를 들어, 도 5 또는 도 6에 도시된 CAN 메시지)를 생성할 수 있고, 생성된 CAN 메시지를 해당 통신 노드(예를 들어, 엔드 노드#6(231), 엔드 노드#7(232), 엔드 노드#8(233))에 전송할 수 있다. 여기서, CAN 메시지는 CRC, 얼라이브 카운터, 페이로드 등을 포함할 수 있고, 페이로드는 CAN 메시지를 위한 ASIL 인증 정보를 포함할 수 있다.When the destination of the Ethernet message is a communication node belonging to the CAN, the gateway 200 may check the type of information included in the payload of the Ethernet message based on the information included in the header of the Ethernet message (S1004). When it is determined that the payload of the Ethernet message includes data (eg, multimedia data, AVB data), the gateway 200 performs a CAN message (eg, as shown in FIG. 5 or FIG. 6 ) based on the Ethernet message. generated CAN message) and transmit the generated CAN message to the corresponding communication node (eg, end node #6 (231), end node #7 (232), end node #8 (233)). have. Here, the CAN message may include a CRC, an alive counter, a payload, and the like, and the payload may include ASIL authentication information for the CAN message.

이더넷 메시지의 페이로드가 제어 정보 또는 관리 정보를 포함하는 것으로 확인된 경우, 게이트웨이(200)는 이더넷 메시지(예를 들어, 도 11에 도시된 이더넷 메시지#1, 이더넷 메시지#2 및 이더넷 메시지#3)에 포함된 ASIL 인증 정보에 기초하여 무결성 검증 동작을 수행할 수 있다(S1005). 예를 들어, 도 11의 이더넷 메시지#3의 ASIL 인증 정보에 대한 무결성 검증이 실패한 경우, 게이트웨이(200)는 이더넷 메시지#3을 폐기할 수 있다. 도 11의 이더넷 메시지#1 및 이더넷 메시지#2의 ASIL 인증 정보에 대한 무결성 검증이 성공한 경우, 게이트웨이(200)는 이더넷 메시지#1 및 이더넷 메시지#2에 대한 파싱(parsing) 동작을 수행할 수 있다(S1006). 즉, 게이트웨이(200)는 무결성 검증이 완료된 이더넷 메시지에 대한 파싱 동작을 수행함으로써 CAN으로 전송될 적어도 하나의 DU를 선택할 수 있고, 선택된 적어도 하나의 DU를 포함하는 후보(candidate) 페이로드(예를 들어, CAN 메시지에 포함될 후보 페이로드)를 생성할 수 있다(S1007). 파싱 동작 및 후보 페이로드의 생성 동작은 다음과 같이 수행될 수 있다.When it is confirmed that the payload of the Ethernet message includes control information or management information, the gateway 200 sends an Ethernet message (eg, Ethernet message #1, Ethernet message #2, and Ethernet message #3 shown in FIG. 11 ). ) may perform an integrity verification operation based on the ASIL authentication information included in (S1005). For example, when the integrity verification of the ASIL authentication information of the Ethernet message #3 of FIG. 11 fails, the gateway 200 may discard the Ethernet message #3. When the integrity verification of the ASIL authentication information of the Ethernet message #1 and the Ethernet message #2 of FIG. 11 is successful, the gateway 200 may perform a parsing operation on the Ethernet message #1 and the Ethernet message #2. (S1006). That is, the gateway 200 may select at least one DU to be transmitted to the CAN by performing a parsing operation on the Ethernet message for which integrity verification has been completed, and a candidate payload including the selected at least one DU (eg, For example, a candidate payload to be included in the CAN message) may be generated (S1007). The parsing operation and the generation of the candidate payload may be performed as follows.

도 12는 파싱 동작 및 후보 페이로드의 생성 동작의 제1 실시예를 도시한 개념도이다.12 is a conceptual diagram illustrating a first embodiment of a parsing operation and an operation of generating a candidate payload.

도 12를 참조하면, 게이트웨이(200)는 무결성 검증이 완료된 DU#1 내지 DU#10과 미리 정의된 CAN 라우팅 테이블을 비교할 수 있다. CAN 라우팅 테이블은 CAN으로 전송될 DU를 지시할 수 있다. CAN 라우팅 테이블이 DU#1, DU#2, DU#6, DU#7, DU#9 내지 DU#12, 및 DU#15를 지시하는 경우, 게이트웨이(200)는 무결성 검증이 완료된 DU#1 내지 DU#10 중에서 DU#1, DU#2, DU#6, DU#7, DU#9 및 DU#10을 선택할 수 있고, 선택된 DU들에 기초하여 후보 페이로드를 생성할 수 있다. 따라서 게이트웨이(200)는 DU#1 및 DU#2를 포함하는 CAN 메시지의 후보 페이로드#1, DU#6 및 DU#7을 포함하는 CAN 메시지의 후보 페이로드#2 및 DU#9 및 DU#10을 포함하는 CAN 메시지의 후보 페이로드#3을 생성할 수 있다.Referring to FIG. 12 , the gateway 200 may compare DU#1 to DU#10 for which integrity verification has been completed and a predefined CAN routing table. The CAN routing table may indicate a DU to be transmitted to CAN. When the CAN routing table indicates DU#1, DU#2, DU#6, DU#7, DU#9 to DU#12, and DU#15, the gateway 200 performs the integrity verification of DU#1 to DU#15. DU#1, DU#2, DU#6, DU#7, DU#9, and DU#10 may be selected from among DU#10, and a candidate payload may be generated based on the selected DUs. Accordingly, the gateway 200 performs the candidate payload #1 of the CAN message including DU#1 and DU#2, candidate payload #2 of the CAN message including DU#6 and DU#7, and the candidate payload #2 of the CAN message including DU#9 and DU#. Candidate payload #3 of the CAN message including 10 may be generated.

다시 도 10을 참조하면, 게이트웨이(200)는 후보 페이로드의 DU에 포함된 정보와 CAN 버퍼의 DU에 포함된 정보 간의 동일성을 확인함으로써 최종 페이로드를 생성할 수 있다(S1008). CAN 버퍼에 이전에 CAN으로 전송된 정보가 저장될 수 있다. CAN 버퍼는 도 7에 도시된 메모리(예를 들어, PHY 계층 메모리(713), 주 메모리(723), 보조 메모리(724))일 수 있다. CAN 메시지의 최종 페이로드의 생성 동작은 다음과 같이 수행될 수 있다.Referring back to FIG. 10 , the gateway 200 may generate the final payload by checking the identity between the information included in the DU of the candidate payload and the information included in the DU of the CAN buffer ( S1008 ). Information previously transmitted to CAN may be stored in the CAN buffer. The CAN buffer may be the memory shown in FIG. 7 (eg, PHY layer memory 713 , main memory 723 , auxiliary memory 724 ). The operation of generating the final payload of the CAN message may be performed as follows.

도 13은 최종 페이로드의 생성 동작의 제1 실시예를 도시한 개념도이다.13 is a conceptual diagram illustrating a first embodiment of an operation of generating a final payload.

도 13을 참조하면, 게이트웨이(200)는 후보 페이로드에 포함된 DU#1, DU#2, DU#6, DU#7, DU#9 및 DU#10과 CAN 버퍼에 저장된 DU#1, DU#2, DU#6, DU#7, DU#9 및 DU#10을 비교할 수 있다. 예를 들어, 게이트웨이(200)는 후보 페이로드의 DU들에 포함된 정보(예를 들어, 제어 정보, 관리 정보)의 버전과 CAN 버퍼의 DU들에 포함된 정보(예를 들어, 제어 정보, 관리 정보)의 버전을 비교할 수 있다.Referring to FIG. 13 , the gateway 200 includes DU#1, DU#2, DU#6, DU#7, DU#9, and DU#10 included in the candidate payload and DU#1, DU stored in the CAN buffer. #2, DU#6, DU#7, DU#9, and DU#10 may be compared. For example, the gateway 200 provides a version of information (eg, control information, management information) included in DUs of the candidate payload and information (eg, control information, management information) can be compared.

후보 페이로드의 DU#1, DU#2, DU#6 및 DU#7에 포함된 정보가 CAN 버퍼의 DU#1, DU#2, DU#6 및 DU#7에 포함된 정보와 다른 경우(예를 들어, 후보 페이로드의 DU#1, DU#2, DU#6 및 DU#7에 포함된 정보가 CAN 버퍼의 DU#1, DU#2, DU#6 및 DU#7에 포함된 정보에 비해 업데이트된 정보인 경우), 게이트웨이(200)는 DU#1, DU#2, DU#6 및 DU#7을 포함하는 최종 페이로드를 생성할 수 있다. 따라서 게이트웨이(200)는 DU#1 및 DU#2를 포함하는 CAN 메시지의 최종 페이로드#1 및 DU#6 및 DU#7을 포함하는 CAN 메시지의 최종 페이로드#2를 생성할 수 있다. 반면, 후보 페이로드의 DU#9 및 DU#10에 포함된 정보가 CAN 버퍼의 DU#9 및 DU#10에 포함된 정보와 동일한 경우, 게이트웨이(200)는 DU#9 및 DU#10을 폐기할 수 있다.When the information contained in DU#1, DU#2, DU#6, and DU#7 of the candidate payload is different from the information contained in DU#1, DU#2, DU#6 and DU#7 of the CAN buffer ( For example, information contained in DU#1, DU#2, DU#6, and DU#7 of the candidate payload is information contained in DU#1, DU#2, DU#6, and DU#7 of the CAN buffer. ), the gateway 200 may generate a final payload including DU#1, DU#2, DU#6, and DU#7. Accordingly, the gateway 200 may generate the final payload #1 of the CAN message including DU#1 and DU#2 and the final payload #2 of the CAN message including DU#6 and DU#7. On the other hand, if the information included in DU#9 and DU#10 of the candidate payload is the same as the information included in DU#9 and DU#10 of the CAN buffer, the gateway 200 discards DU#9 and DU#10. can do.

다시 도 10을 참조하면, 게이트웨이(200)는 CAN의 전송 주기를 고려하여 CAN 메시지를 생성할 수 있다(S1009). 예를 들어, 이더넷 메시지의 전송 주기가 50ms이고, CAN 메시지의 전송 주기가 100ms인 경우, 게이트웨이(200)는 100ms 길이를 가지는 전송 구간 동안에 두 개의 이더넷 메시지들을 수신한 경우에도 CAN 메시지의 전송 주기에 따라 이더넷 메시지에 대응하는 한 개의 CAN 메시지를 전송할 수 있다. 따라서 100ms의 길이를 가지는 전송 구간에서 이더넷 메시지#1 및 이더넷 메시지#2가 수신된 경우, 게이트웨이(200)는 이더넷 메시지#2에 속한 DU들을 포함하는 CAN 메시지를 생성할 수 있다. CAN 메시지는 다음과 같이 구성될 수 있다.Referring back to FIG. 10 , the gateway 200 may generate a CAN message in consideration of the CAN transmission period ( S1009 ). For example, if the transmission period of the Ethernet message is 50 ms and the transmission period of the CAN message is 100 ms, the gateway 200 also receives two Ethernet messages during the transmission period having a length of 100 ms. Accordingly, one CAN message corresponding to the Ethernet message can be transmitted. Accordingly, when Ethernet message #1 and Ethernet message #2 are received in a transmission section having a length of 100 ms, the gateway 200 may generate a CAN message including DUs belonging to Ethernet message #2. The CAN message may be configured as follows.

도 14는 차량 네트워크에서 CAN 메시지의 제3 실시예를 도시한 블록도이고, 도 15는 차량 네트워크에서 CAN 메시지의 제4 실시예를 도시한 블록도이다.14 is a block diagram illustrating a third embodiment of a CAN message in a vehicle network, and FIG. 15 is a block diagram illustrating a fourth embodiment of a CAN message in a vehicle network.

도 14 및 도 15를 참조하면, CAN FD 포맷이 사용되는 경우, CAN 메시지(1400)는 CRC(1410), 얼라이브 카운터(1420), DU#6(1430) 및 DU#7(1440)을 포함할 수 있다. 게이트웨이(200)는 CAN 메시지(1400)를 위한 ASIL 인증 정보를 생성할 수 있고, ASIL 인증 정보는 DU#6(1430) 또는 DU#7(1440)에 포함될 수 있다. 또는, ASIL 인증 정보는 DU#6(1430) 및 DU#7(1440)과 독립적으로 CAN 메시지(1400)에 포함될 수 있다.14 and 15 , when the CAN FD format is used, the CAN message 1400 includes a CRC 1410 , an alive counter 1420 , DU#6 1430 and DU#7 1440 . can The gateway 200 may generate ASIL authentication information for the CAN message 1400 , and the ASIL authentication information may be included in DU#6 1430 or DU#7 1440 . Alternatively, the ASIL authentication information may be included in the CAN message 1400 independently of DU#6 1430 and DU#7 1440 .

저속 CAN 포맷 또는 고속 CAN 포맷이 사용되는 경우, CAN 메시지(1500)는 CRC(1510), 예비 필드(1520), 얼라이브 카운터(1530), DU#6(1540) 및 DU#7(1550)을 포함할 수 있다. 게이트웨이(200)는 CAN 메시지(1500)를 위한 ASIL 인증 정보를 생성할 수 있고, ASIL 인증 정보는 DU#6(1540) 또는 DU#7(1550)에 포함될 수 있다. 또는, ASIL 인증 정보는 DU#6(1540) 및 DU#7(1550)과 독립적으로 CAN 메시지(1500)에 포함될 수 있다.When the low-speed CAN format or the high-speed CAN format is used, the CAN message 1500 includes a CRC 1510 , a reserved field 1520 , an alive counter 1530 , DU#6 1540 and DU#7 1550 . can do. The gateway 200 may generate ASIL authentication information for the CAN message 1500 , and the ASIL authentication information may be included in DU#6 1540 or DU#7 1550 . Alternatively, the ASIL authentication information may be included in the CAN message 1500 independently of DU#6 1540 and DU#7 1550 .

다시 도 10을 참조하면, 이더넷 메시지에 포함된 페이로드의 크기는 CAN 메시지에 포함된 페이로드의 크기보다 크기 때문에, 단계 S1009에서 하나의 이더넷 메시지에 기초하여 복수의 CAN 메시지들이 생성될 수 있다. 게이트웨이(200)는 CAN의 전송 주기에 따라 CAN 메시지를 전송할 수 있다(S1010). CAN으로 전송된 CAN 메시지는 게이트웨이(200)의 CAN 버퍼에 저장될 수 있다. 즉, 업데이트된 제어 정보 또는 업데이트된 관리 정보를 포함하는 DU는 CAN 버퍼에 오버라이트(overwrite)될 수 있다. CAN 메시지의 목적지가 엔드 노드#6(231)인 경우, 게이트웨이(200)는 CAN 메시지를 엔드 노드#6(231)에 전송할 수 있다.Referring back to FIG. 10 , since the size of the payload included in the Ethernet message is larger than the size of the payload included in the CAN message, a plurality of CAN messages may be generated based on one Ethernet message in step S1009. The gateway 200 may transmit a CAN message according to a CAN transmission period (S1010). The CAN message transmitted to the CAN may be stored in the CAN buffer of the gateway 200 . That is, the DU including the updated control information or the updated management information may be overwritten in the CAN buffer. When the destination of the CAN message is the end node #6 (231), the gateway 200 may transmit the CAN message to the end node #6 (231).

또는, 게이트웨이(200)는 CAN 전송 주기와 무관하게 CAN 메시지를 생성할 수 있고, 생성된 CAN 메시지를 전송할 수 있다. 이 경우, 게이트웨이(200)는 도 13의 최종 페이로드#1(예를 들어, DU#1, DU#2)을 포함하는 CAN 메시지#1 및 도 13의 최종 페이로드#2(예를 들어, DU#6, DU#7)를 포함하는 CAN 메시지#2를 생성할 수 있고, CAN 메시지#1 및 CAN 메시지#2 각각을 전송할 수 있다.Alternatively, the gateway 200 may generate a CAN message regardless of the CAN transmission period and transmit the generated CAN message. In this case, the gateway 200 transmits the CAN message #1 including the final payload #1 (eg, DU#1, DU#2) of FIG. 13 and the final payload #2 (eg, CAN message #2 including DU#6 and DU#7) may be generated, and each of CAN message #1 and CAN message #2 may be transmitted.

한편, 엔드 노드#6(231)은 버스 라인에 대한 모니터링 동작을 수행함으로써 CAN 메시지를 수신할 수 있고, 수신된 CAN 메시지에 포함된 ASIL 인증 정보에 대한 무결성 검증 동작을 수행할 수 있다. CAN 메시지의 ASIL 인증 정보에 대한 무결성 검증이 성공한 경우, 엔드 노드#6(231)은 CAN 메시지에 포함된 페이로드를 획득할 수 있고, 획득된 페이로드로부터 제어 정보 또는 관리 정보를 확인할 수 있다. 또는, CAN 메시지의 ASIL 인증 정보에 대한 무결성 검증이 실패한 경우, 엔드 노드#6(231)은 CAN 메시지를 폐기할 수 있다.Meanwhile, the end node #6 231 may receive a CAN message by performing a monitoring operation on the bus line, and may perform an integrity verification operation on ASIL authentication information included in the received CAN message. When the integrity verification of the ASIL authentication information of the CAN message is successful, the end node #6 231 may obtain a payload included in the CAN message, and may check control information or management information from the obtained payload. Alternatively, when the integrity verification of the ASIL authentication information of the CAN message fails, the end node #6 231 may discard the CAN message.

도 16은 차량 네트워크에서 통신 노드의 동작 방법의 제2 실시예를 도시한 순서도이다.16 is a flowchart illustrating a second embodiment of a method of operating a communication node in a vehicle network.

도 16을 참조하면, 게이트웨이(200), 엔드 노드#1(211) 및 엔드 노드#6(231) 각각은 도 2의 차량 네트워크에 속한 게이트웨이(200), 엔드 노드#1(211) 및 엔드 노드#6(231)일 수 있다. 예를 들어, 도 16에 도시된 통신 노드의 동작 방법은 도 2에 도시된 차량 네트워크에서 수행될 수 있고, 게이트웨이(200), 엔드 노드#1(211) 및 엔드 노드#6(231)은 도 7에 도시된 통신 노드(700)(또는, 도 8에 도시된 통신 노드(800))와 동일 또는 유사하게 구성될 수 있다. 또한, 게이트웨이(200)는 도 9에 도시된 게이트웨이(900)와 동일 또는 유사하게 구성될 수 있다.Referring to FIG. 16 , the gateway 200 , the end node #1 211 and the end node #6 231 each belong to the gateway 200 , the end node #1 211 and the end node belonging to the vehicle network of FIG. 2 . It may be #6(231). For example, the operation method of the communication node shown in FIG. 16 may be performed in the vehicle network shown in FIG. 2 , and the gateway 200, end node #1 211 and end node #6 231 are shown in FIG. The communication node 700 illustrated in FIG. 7 (or the communication node 800 illustrated in FIG. 8 ) may be configured in the same or similar manner. Also, the gateway 200 may be configured the same as or similar to the gateway 900 illustrated in FIG. 9 .

엔드 노드#6(231)은 CAN 메시지(예를 들어, 도 5에 도시된 CAN 메시지(500) 또는 도 6에 도시된 CAN 메시지(600))를 생성할 수 있다(S1601). CAN 메시지의 목적지는 CAN에 속한 통신 노드(예를 들어, 엔드 노드#7(232), 엔드 노드#8(233)) 또는 이더넷 기반의 네트워크에 속한 통신 노드(예를 들어, 스위치#1(210), 스위치#2(220), 엔드 노드#1(211), 엔드 노드#2(212), 엔드 노드#3(213), 엔드 노드#4(221), 엔드 노드#5(222))일 수 있다. CAN 메시지의 페이로드는 제어 정보, 관리 정보 등을 포함할 수 있다.End node #6 231 may generate a CAN message (eg, the CAN message 500 illustrated in FIG. 5 or the CAN message 600 illustrated in FIG. 6 ) ( S1601 ). The destination of the CAN message is a communication node belonging to CAN (eg, end node #7 (232), end node #8 (233)) or a communication node belonging to an Ethernet-based network (eg, switch #1 (210)). ), switch#2(220), endnode#1(211), endnode#2(212), endnode#3(213), endnode#4(221), endnode#5(222)) can The payload of the CAN message may include control information, management information, and the like.

엔드 노드#6(231)은 CAN 메시지를 게이트웨이(200)에 전송할 수 있다(S1602). 게이트웨이(200)는 엔드 노드#6(231)으로부터 CAN 메시지를 수신할 수 있고, 수신된 CAN 메시지에 포함된 ASIL 인증 정보에 대한 무결성 검증 동작을 수행할 수 있다(S1603). 게이트웨이(200)는 CAN으로부터 수신된 CAN 메시지가 제어 정보 또는 관리 정보를 포함하는 것으로 가정할 수 있다. CAN 메시지의 ASIL 인증 정보에 대한 무결성 검증 동작이 실패한 경우, 게이트웨이(200)는 해당 CAN 메시지를 폐기할 수 있다. 반면, CAN 메시지의 ASIL 인증 정보에 대한 무결성 검증 동작이 성공한 경우, 게이트웨이(200)는 해당 CAN 메시지의 목적지를 확인할 수 있다(S1604).End node #6 (231) may transmit a CAN message to the gateway 200 (S1602). The gateway 200 may receive the CAN message from the end node #6 231 and may perform an integrity verification operation on the ASIL authentication information included in the received CAN message (S1603). The gateway 200 may assume that the CAN message received from the CAN includes control information or management information. When the integrity verification operation for the ASIL authentication information of the CAN message fails, the gateway 200 may discard the corresponding CAN message. On the other hand, when the integrity verification operation for the ASIL authentication information of the CAN message is successful, the gateway 200 may check the destination of the corresponding CAN message (S1604).

CAN 메시지의 목적지가 이더넷 기반의 네트워크에 속한 통신 노드인 경우, 게이트웨이(200)는 해당 CAN 메시지에 기초하여 이더넷 메시지(예를 들어, 도 3 및 도 4에 도시된 이더넷 메시지(300))를 생성할 수 있다(S1605). 예를 들어, 게이트웨이(200)는 이더넷 메시지를 위한 ASIL 인증 정보를 생성할 수 있고, 헤더, 페이로드(예를 들어, 엔드 노드#6(231)의 CAN 메시지에 포함된 페이로드) 및 ASIL 인증 정보를 포함하는 이더넷 메시지를 생성할 수 있다. 또한, 게이트웨이(200)는 이더넷 라우팅 테이블에 기초하여 이더넷 메시지를 생성할 수 있다. 이더넷 라우팅 테이블은 이더넷 기반의 네트워크로 전송될 DU를 지시할 수 있다. 예를 들어, 이더넷 라우팅 테이블은 도 12에 도시된 CAN 라우팅 테이블과 동일 또는 유사하게 구성될 수 있다. 따라서 게이트웨이(200)는 CAN 메시지의 페이로드에 포함된 DU들 중에서 이더넷 라우팅 테이블에 의해 지시되는 적어도 하나의 DU를 포함하는 이더넷 메시지를 생성할 수 있다.When the destination of the CAN message is a communication node belonging to an Ethernet-based network, the gateway 200 generates an Ethernet message (eg, the Ethernet message 300 shown in FIGS. 3 and 4 ) based on the corresponding CAN message. It can be done (S1605). For example, the gateway 200 may generate ASIL authentication information for an Ethernet message, including a header, a payload (eg, a payload included in the CAN message of end node #6 231 ) and ASIL authentication. You can create Ethernet messages that contain information. Also, the gateway 200 may generate an Ethernet message based on the Ethernet routing table. The Ethernet routing table may indicate a DU to be transmitted to an Ethernet-based network. For example, the Ethernet routing table may be configured the same as or similar to the CAN routing table shown in FIG. 12 . Accordingly, the gateway 200 may generate an Ethernet message including at least one DU indicated by the Ethernet routing table among DUs included in the payload of the CAN message.

엔드 노드#6(231)으로부터 수신된 CAN 메시지의 목적지가 엔드 노드#1(211)인 경우, 게이트웨이(200)는 이더넷 메시지를 엔드 노드#1(211)에 전송할 수 있다(S1606). 이더넷 메시지는 스위치#1(210)을 통해 엔드 노드#1(211)로 전송될 수 있다. 엔드 노드#1(211)은 이더넷 링크에 대한 모니터링 동작을 수행함으로써 이더넷 메시지를 수신할 수 있고, 수신된 이더넷 메시지에 포함된 ASIL 인증 정보에 대한 무결성 검증 동작을 수행할 수 있다. 이더넷 메시지의 ASIL 인증 정보에 대한 무결성 검증이 성공한 경우, 엔드 노드#1(211)은 이더넷 메시지에 포함된 페이로드를 획득할 수 있고, 획득된 페이로드로부터 제어 정보 또는 관리 정보를 확인할 수 있다. 또는, 이더넷 메시지의 ASIL 인증 정보에 대한 무결성 검증이 실패한 경우, 엔드 노드#1(211)은 이더넷 메시지를 폐기할 수 있다.When the destination of the CAN message received from the end node #6 (231) is the end node #1 (211), the gateway 200 may transmit an Ethernet message to the end node # 1 (211) (S1606). The Ethernet message may be transmitted to the end node #1 (211) through the switch #1 (210). The end node #1 211 may receive an Ethernet message by performing a monitoring operation on the Ethernet link, and may perform an integrity verification operation on the ASIL authentication information included in the received Ethernet message. When the integrity verification of the ASIL authentication information of the Ethernet message is successful, the end node #1 211 may acquire a payload included in the Ethernet message, and may check control information or management information from the acquired payload. Alternatively, when integrity verification of the ASIL authentication information of the Ethernet message fails, the end node #1 211 may discard the Ethernet message.

본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.The methods according to the present invention may be implemented in the form of program instructions that can be executed by various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the computer-readable medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software.

컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of computer-readable media include hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as at least one software module to perform the operations of the present invention, and vice versa.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although it has been described with reference to the above embodiments, it will be understood by those skilled in the art that various modifications and changes can be made to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. will be able

Claims (20)

이더넷(Ethernet) 기반의 네트워크와 CAN(controller area network) 간의 통신을 지원하는 제1 통신 노드의 동작 방법으로서,
상기 이더넷 기반의 네트워크에 속한 제2 통신 노드로부터 이더넷 메시지를 수신하는 단계;
상기 이더넷 메시지에 포함된 제1 ASIL(automotive safety integrity level) 인증 정보에 대한 무결성 검증 동작을 수행하는 단계;
무결성 검증이 완료된 상기 이더넷 메시지에 기초하여 CAN 메시지를 생성하는 단계; 및
상기 CAN 메시지를 상기 CAN에 속한 제3 통신 노드에 전송하는 단계를 포함하며,
상기 CAN 메시지는 제2 ASIL 인증 정보를 포함하고, 상기 제2 ASIL 인증 정보는 상기 CAN 메시지의 무결성 검증을 위해 사용되고, 상기 제2 ASIL 인증 정보는 상기 제1 통신 노드에 의해 생성되는, 제1 통신 노드의 동작 방법.
As an operating method of a first communication node supporting communication between an Ethernet-based network and a controller area network (CAN),
receiving an Ethernet message from a second communication node belonging to the Ethernet-based network;
performing an integrity verification operation on first automotive safety integrity level (ASIL) authentication information included in the Ethernet message;
generating a CAN message based on the Ethernet message on which integrity verification has been completed; and
transmitting the CAN message to a third communication node belonging to the CAN;
The CAN message includes second ASIL authentication information, the second ASIL authentication information is used for integrity verification of the CAN message, and the second ASIL authentication information is generated by the first communication node. How the node works.
청구항 1에 있어서,
상기 제2 통신 노드는 엔드(end) 노드이고, 상기 제1 ASIL 인증 정보는 상기 엔드 노드에 의해 생성되는, 제1 통신 노드의 동작 방법.
The method according to claim 1,
wherein the second communication node is an end node, and the first ASIL authentication information is generated by the end node.
청구항 1에 있어서,
상기 무결성 검증 동작은 상기 이더넷 메시지의 목적지가 상기 CAN인 경우에 수행되는, 제1 통신 노드의 동작 방법.
The method according to claim 1,
The method of operating the first communication node, wherein the integrity verification operation is performed when the destination of the Ethernet message is the CAN.
청구항 1에 있어서,
상기 무결성 검증 동작은 상기 이더넷 메시지가 제어 정보 또는 관리 정보를 포함하는 경우에 수행되는, 제1 통신 노드의 동작 방법.
The method according to claim 1,
The method of operating the first communication node, wherein the integrity verification operation is performed when the Ethernet message includes control information or management information.
삭제delete 청구항 1에 있어서,
상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛(data unit)들 중에서 라우팅 테이블(routing table)에 의해 지시되는 적어도 하나의 데이터 유닛을 포함하며, 상기 라우팅 테이블은 상기 CAN으로 전송될 데이터 유닛들을 지시하는, 제1 통신 노드의 동작 방법.
The method according to claim 1,
The CAN message includes at least one data unit indicated by a routing table among a plurality of data units included in the Ethernet message, and the routing table includes a data unit to be transmitted to the CAN. A method of operation of the first communication node indicative of those.
청구항 1에 있어서,
상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛들 중에서 상기 제1 통신 노드의 메모리(memory)에 저장된 데이터 유닛들에 비해 업데이트된(updated) 정보를 포함하는 적어도 하나의 데이터 유닛을 포함하는, 제1 통신 노드의 동작 방법.
The method according to claim 1,
The CAN message includes at least one data unit including information updated compared to data units stored in a memory of the first communication node among a plurality of data units included in the Ethernet message , a method of operation of the first communication node.
청구항 1에 있어서,
상기 CAN 메시지는 상기 CAN의 전송 주기에 따라 전송되는, 제1 통신 노드의 동작 방법.
The method according to claim 1,
The method of operation of the first communication node, wherein the CAN message is transmitted according to the transmission period of the CAN.
이더넷(Ethernet) 기반의 네트워크와 CAN(controller area network) 간의 통신을 지원하는 제1 통신 노드의 동작 방법으로서,
상기 CAN에 속한 제2 통신 노드로부터 CAN 메시지를 수신하는 단계;
상기 CAN 메시지에 포함된 제1 ASIL(automotive safety integrity level) 인증 정보에 대한 무결성 검증 동작을 수행하는 단계;
무결성 검증이 완료된 상기 CAN 메시지에 기초하여 이더넷 메시지를 생성하는 단계; 및
상기 이더넷 메시지를 상기 이더넷 기반의 네트워크에 속한 제3 통신 노드에 전송하는 단계를 포함하며,
상기 이더넷 메시지는 제2 ASIL 인증 정보를 포함하고, 상기 제2 ASIL 인증 정보는 상기 이더넷 메시지의 무결성 검증을 위해 사용되고, 상기 제2 ASIL 인증 정보는 상기 제1 통신 노드에 의해 생성되는, 제1 통신 노드의 동작 방법.
As an operating method of a first communication node supporting communication between an Ethernet-based network and a controller area network (CAN),
receiving a CAN message from a second communication node belonging to the CAN;
performing an integrity verification operation on first automotive safety integrity level (ASIL) authentication information included in the CAN message;
generating an Ethernet message based on the CAN message on which integrity verification has been completed; and
Transmitting the Ethernet message to a third communication node belonging to the Ethernet-based network,
The Ethernet message includes second ASIL authentication information, the second ASIL authentication information is used for integrity verification of the Ethernet message, and the second ASIL authentication information is generated by the first communication node. How the node works.
청구항 9에 있어서,
상기 제2 통신 노드는 엔드(end) 노드이고, 상기 제1 ASIL 인증 정보는 상기 엔드 노드에 의해 생성되는, 제1 통신 노드의 동작 방법.
10. The method of claim 9,
wherein the second communication node is an end node, and the first ASIL authentication information is generated by the end node.
삭제delete 청구항 9에 있어서,
상기 이더넷 메시지는 상기 CAN 메시지에 포함된 복수의 데이터 유닛(data unit)들 중에서 라우팅 테이블(routing table)에 의해 지시되는 적어도 하나의 데이터 유닛을 포함하며, 상기 라우팅 테이블은 상기 이더넷 기반의 네트워크로 전송될 데이터 유닛들을 지시하는, 제1 통신 노드의 동작 방법.
10. The method of claim 9,
The Ethernet message includes at least one data unit indicated by a routing table among a plurality of data units included in the CAN message, and the routing table is transmitted to the Ethernet-based network. A method of operation of a first communication node indicating which data units are to be made.
이더넷(Ethernet) 기반의 네트워크와 CAN(controller area network) 간의 통신을 지원하는 제1 통신 노드로서,
프로세서(processor); 및
상기 프로세서에 의해 수행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하며,
상기 적어도 하나의 명령은,
상기 이더넷 기반의 네트워크에 속한 제2 통신 노드로부터 이더넷 메시지를 수신하고;
상기 이더넷 메시지에 포함된 제1 ASIL(automotive safety integrity level) 인증 정보에 대한 무결성 검증 동작을 수행하고;
무결성 검증이 완료된 상기 이더넷 메시지에 기초하여 CAN 메시지를 생성하고; 그리고
상기 CAN 메시지를 상기 CAN에 속한 제3 통신 노드에 전송하도록 실행되며,
상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛(data unit)들 중에서 라우팅 테이블(routing table)에 의해 지시되는 적어도 하나의 데이터 유닛을 포함하며, 상기 라우팅 테이블은 상기 CAN으로 전송될 데이터 유닛들을 지시하는, 제1 통신 노드.
As a first communication node supporting communication between an Ethernet-based network and a controller area network (CAN),
processor; and
At least one instruction executed by the processor comprises a stored memory (memory),
The at least one command is
receiving an Ethernet message from a second communication node belonging to the Ethernet-based network;
performing an integrity verification operation on first automotive safety integrity level (ASIL) authentication information included in the Ethernet message;
generating a CAN message based on the Ethernet message on which integrity verification has been completed; and
is executed to transmit the CAN message to a third communication node belonging to the CAN,
The CAN message includes at least one data unit indicated by a routing table among a plurality of data units included in the Ethernet message, and the routing table includes a data unit to be transmitted to the CAN. A first communication node instructing them.
청구항 13에 있어서,
상기 제2 통신 노드는 엔드(end) 노드이고, 상기 제1 ASIL 인증 정보는 상기 엔드 노드에 의해 생성되는, 제1 통신 노드.
14. The method of claim 13,
and the second communication node is an end node, and the first ASIL authentication information is generated by the end node.
청구항 13에 있어서,
상기 무결성 검증 동작은 상기 이더넷 메시지의 목적지가 상기 CAN인 경우에 수행되는, 제1 통신 노드.
14. The method of claim 13,
The integrity verification operation is performed when the destination of the Ethernet message is the CAN, a first communication node.
청구항 13에 있어서,
상기 무결성 검증 동작은 상기 이더넷 메시지가 제어 정보 또는 관리 정보를 포함하는 경우에 수행되는, 제1 통신 노드.
14. The method of claim 13,
The first communication node, wherein the integrity verification operation is performed when the Ethernet message includes control information or management information.
청구항 13에 있어서,
상기 CAN 메시지는 제2 ASIL 인증 정보를 포함하고, 상기 제2 ASIL 인증 정보는 상기 CAN 메시지의 무결성 검증을 위해 사용되고, 상기 제2 ASIL 인증 정보는 상기 제1 통신 노드에 의해 생성되는, 제1 통신 노드.
14. The method of claim 13,
The CAN message includes second ASIL authentication information, the second ASIL authentication information is used for integrity verification of the CAN message, and the second ASIL authentication information is generated by the first communication node. node.
삭제delete 청구항 13에 있어서,
상기 CAN 메시지는 상기 이더넷 메시지에 포함된 복수의 데이터 유닛들 중에서 상기 메모리에 저장된 데이터 유닛들에 비해 업데이트된(updated) 정보를 포함하는 적어도 하나의 데이터 유닛을 포함하는, 제1 통신 노드.
14. The method of claim 13,
The CAN message includes at least one data unit including information updated compared to data units stored in the memory among a plurality of data units included in the Ethernet message, a first communication node.
청구항 13에 있어서,
상기 CAN 메시지는 상기 CAN의 전송 주기에 따라 전송되는, 제1 통신 노드.
14. The method of claim 13,
The CAN message is transmitted according to the transmission period of the CAN, a first communication node.
KR1020170095218A 2016-09-13 2017-07-27 Method for communication based on automotive safety integrity level in automotive network and apparatus for the same KR102352527B1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201710811289.9A CN107819736B (en) 2016-09-13 2017-09-11 Communication method and device based on automobile safety integrity level in vehicle network
DE102017121049.0A DE102017121049A1 (en) 2016-09-13 2017-09-12 A communication method based on a vehicle safety integrity level in the vehicle network, and apparatus for the same
US15/702,370 US10382221B2 (en) 2016-09-13 2017-09-12 Communication method based on automotive safety integrity level in vehicle network and apparatus for the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160118340 2016-09-13
KR20160118340 2016-09-13

Publications (2)

Publication Number Publication Date
KR20180029846A KR20180029846A (en) 2018-03-21
KR102352527B1 true KR102352527B1 (en) 2022-01-19

Family

ID=61900540

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170095218A KR102352527B1 (en) 2016-09-13 2017-07-27 Method for communication based on automotive safety integrity level in automotive network and apparatus for the same

Country Status (1)

Country Link
KR (1) KR102352527B1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111464272B (en) * 2019-01-22 2023-04-07 中国航天科工飞航技术研究院(中国航天海鹰机电技术研究院) Reliable data interaction method and system and magnetic levitation train electromagnetic propulsion system
DE102019004790A1 (en) * 2019-07-11 2021-01-14 Infineon Technologies Ag Authenticity and security on the data link layer for vehicle communication systems
CN115716455A (en) * 2019-09-12 2023-02-28 华为技术有限公司 System and method for realizing electronic control function in automobile and automobile
KR102246106B1 (en) * 2019-12-11 2021-04-28 주식회사 현대케피코 Can communication data sending and receiving method
KR102202902B1 (en) * 2020-09-02 2021-01-15 (주)티에이치엔 Method and apparatus of securing message in communication controller for a vehicle
CN115118460A (en) * 2022-06-07 2022-09-27 余利华 Block chain-based data integrity verification method and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101334017B1 (en) * 2012-06-29 2013-12-12 주식회사 만도 Apparatus of checking a validity of message on network for a vehicle and method of thereof
US20140023068A1 (en) * 2012-07-23 2014-01-23 Broadcom Corporation Controller area network communications using ethernet
JP5836222B2 (en) * 2012-08-14 2015-12-24 日立オートモティブシステムズ株式会社 Vehicle control apparatus and vehicle control system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101334017B1 (en) * 2012-06-29 2013-12-12 주식회사 만도 Apparatus of checking a validity of message on network for a vehicle and method of thereof
US20140023068A1 (en) * 2012-07-23 2014-01-23 Broadcom Corporation Controller area network communications using ethernet
JP5836222B2 (en) * 2012-08-14 2015-12-24 日立オートモティブシステムズ株式会社 Vehicle control apparatus and vehicle control system

Also Published As

Publication number Publication date
KR20180029846A (en) 2018-03-21

Similar Documents

Publication Publication Date Title
CN107819736B (en) Communication method and device based on automobile safety integrity level in vehicle network
KR102352527B1 (en) Method for communication based on automotive safety integrity level in automotive network and apparatus for the same
KR102400730B1 (en) Method for time synchronization between communication nodes in network
KR102294634B1 (en) Operation method of communication node in network
KR102217255B1 (en) Operation method of communication node in network
KR102357886B1 (en) Operating method of communication node supporting functions of network management in vehicle network
KR102337548B1 (en) Method for diagnosing network and apparatus for the same
KR102452615B1 (en) Method for transmitting data based on priority in network
KR102234210B1 (en) Security method for ethernet based network
KR20170101046A (en) Communication method in divided vehicle network
KR102300764B1 (en) Diagnostic methods and devices in vehicle network
KR102293037B1 (en) Operation method of communication node in network
CN108093028B (en) Method and apparatus for reproducing content based on presentation time in vehicle network
KR102390481B1 (en) Operation method of communication node in network
KR102446092B1 (en) Method for diagnosing link status in network
JP2018061257A (en) First communication node and operation method thereof
KR102342000B1 (en) Method and apparatus for playing contents based on presentation time in automotive network
KR102362611B1 (en) Method for transmitting and receiving data in automotive network and apparatus for the same
KR102355085B1 (en) Operation method of communication node for selective wakeup in vehicle network
KR102313636B1 (en) Operation method of communication node for time sinchronizating in vehicle network
KR102357938B1 (en) Operation method of communication node for mirroring in vehicle network
KR102162288B1 (en) Communication method based on multi path in network
KR102228331B1 (en) Operation method of communication node in network
KR102233213B1 (en) Method for setting communication path of stream in network
CN117749618A (en) Network architecture, corresponding vehicle and method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right