데이터 프레임 보호(Data Protection / Framing) — 송신자와 수신자(들) 사이에서 데이터가 정확히 전송되도록 보장하기 위한 프레이밍 구조와 오류 대응 메커니즘. 물리 계층 보호와 프로토콜(Data Link) 계층 보호 두 축으로 구성된다.

프레임 구조 (Framing)

물리 비트 스트림은 세 블록으로 구분된다:

  1. Header (헤더) — 프레임 시작부. 프레임에 담긴 정보를 기술하거나, 목적지/소스를 식별할 주소 정보를 포함.
  2. Payload (페이로드) — 헤더 뒤에 따라오는 실제 데이터.
  3. Trailer (트레일러) — 프레임 끝부에 덧붙는 Redundancy(체크섬). 페이로드를 압축된 형태로 한 번 더 담아 데이터 보호에 사용.

수신자는 동일한 압축 알고리즘으로 자체 Redundancy를 계산해 수신된 것과 비교 (→ Cyclic Redundancy Check, CRC).

계층별 헤더/트레일러 추가 과정은 Encapsulation과 Decapsulation 참조. TCP Segment·IP Datagram·Ethernet Frame 등 각 계층의 프레임은 동일 원리로 Header + Payload + (Trailer) 구조를 갖는다.

PCI (Protocol Control Information)

프레임의 제어 정보 필드(헤더 등)는 PCI로 불리며, Identifier, 데이터(Signals), 체크섬 등을 포함한다.

물리 계층 데이터 보호 (OSI Layer 1)

목적: 통신 매체의 외란 감소 및 매체로부터의 방사(emission) 감소 — 신호 왜곡 방지.

수단비고
Optical Fiber드물게 사용 (광학계 연결기 복잡)
Shielded Wires, Coaxial Cable고비용
Twisted Pairs자동차 표준
Proper Ground Connections접지 대책
Symmetrical Differential Signals차동 신호 전송
Less Steep Edges of Bits에지 완만화
Lower Data Rate대역폭 타협
Short Bus Lines and Stubs스터브 길이 축소
Avoid Reflections반사 방지 (종단 저항 등)

선택 시 제약:

  • 광학계의 복잡한 연결기
  • 높은 비용
  • 필요한 데이터 전송률 미달

3단계 보호 전략 (CAN 관점)

CAN은 데이터 보호를 다음 3단계로 체계화한다:

  1. Prevent Bit ErrorsPhysical Means (L1 물리 수단)
  2. Handle remaining Bit ErrorsLogical means in the protocol (L2 프로토콜 수단)
  3. Fault ConfinementTx/Rx Error Counter (누적 페널티에 의한 결함 노드 격리)

전자기 방해가 많은 차량 환경에서 물리·논리 대책으로 에러 민감도를 줄이고, 남은 에러는 모든 수신자가 놓칠 수 없는 방식으로 표시해 데이터 일관성을 보장한다. 비정상 노드는 누적 페널티로 단계적 격리.

데이터 링크 계층 데이터 보호 (OSI Layer 2)

물리 계층으로도 걸러내지 못한 오류를 논리 레벨에서 감지·신호·대응한다. 3가지 축:

1. Recognize Errors (오류 감지)

  • Monitoring either bits or bytes
  • Check on Protocol
  • Redundancy Check — 송신자가 포함시킨 Redundancy를 수신자가 자체 계산해 비교.
  • 전체 데이터를 한 번 더 전송하면 대역폭 소모가 크므로 압축된 redundancy를 사용.

대표적인 Redundancy 알고리즘은 검출 능력·구현 복잡도 순으로 계층을 이룬다:

알고리즘검출 능력대표 적용
Parity1비트 검출, 짝수 오류 missUART
Checksum합 기반, 순서·all-zero 취약LIN
CRC다항식 나눗셈, 버스트에 강함CAN, CAN FD, 차량 Ethernet, FlexRay
Hamming Code1비트 정정 + 2비트 검출MCU 메모리 (ECC)

CRC의 성능은 **최소 해밍 거리**(HD)로 평가되며, CAN 15bit CRC는 목표 HD=6이지만 스터핑 포함 시 실제 HD=2.

2. Signaling Errors (오류 신호)

오류를 감지한 노드가 다른 모든 노드에게 이를 신호. 송신자는 자신의 전송에 대한 피드백을 받는다.

  • Response Error Bit — LIN
  • Send Error FrameCAN
  • Negative AcknowledgementCAN

3. Correct / Treat Errors (오류 수정·처리)

두 가지 방식:

  • 수신 측 복원 — 복잡한 재구성 메서드 필요. 우주 통신처럼 대량 지연을 수반하는 장거리 통신에 사용.
  • 송신 측 재전송짧은 버스 시스템에서 일반적. CAN은 프레임을 반복 전송.

Error Frame (CAN 구현)

CAN에서 에러 감지 시 송신·수신 노드가 메시지를 파괴·오염 표시하기 위해 송출하는 프레임 형태:

부분크기
Error Flag6 bitdominant (0)
Error Delimiter8 bitrecessive (1)
  • Error Flag 6 dominant 비트는 어느 위치에 끼어들든 stuff 규칙 또는 고정 recessive 포맷 규칙 중 하나를 위반 → 모든 노드가 Stuff/Form Check로 감지 → 로컬 에러가 글로벌화.
  • Primary Error Flag(최초 감지 노드) / Secondary Error Flag (뒤따르는 노드, 1~6 비트 지연).
  • 예외: CRC Check 실패만은 Error Flag 대신 Negative Acknowledgement 로 신호.

자세한 에러 시나리오와 TEC/REC 기반 Fault Confinement는 CAN 에러 처리 참조.

Synchronization과 Re-synchronization

프레임 보호의 전제는 송·수신자 사이의 동기다. 구분:

  • 초기 동기화(initial synchronization) — 프레임 시작 시점. CAN은 SOF의 1→0 falling edge가 기준.
  • 재동기화(re-synchronization) — 프레임 전송 도중. 프레임 내 falling edge(스터프 비트 포함)로 수신자 비트 타이밍을 지속 보정.

CAN의 구체 메커니즘(Bit-Time-Interval SYNC/TSEG_1/TSEG_2, 샘플 포인트, Data Rate vs Bus Length 관계)은 CAN 동기화 참조.

시간 제약

데이터가 정확히 전송되는 것만으로는 부족하다. 데이터는 시간 제약을 만족하며 송·수신되어야 한다. 이는 자동차 전자 시스템의 정상 동작을 위한 근본 전제 중 하나. 이 맥락에서 event-triggeredtime-triggered 시스템이 구별된다 (버스 접근 방식 참조).

같이 보기