DLC(Data Length Code)는 CAN 프레임의 제어 필드에 있는 4비트 값으로, 데이터 필드의 바이트 수를 나타낸다. 최상위 비트부터 보낸다.[1]

Classical CAN

DLC 값 0~8은 데이터 필드의 바이트 수와 같다. Bosch CAN 2.0 규격은 DLC로 0~8만 쓰게 한다. 인 프레임을 받았을 때의 동작은 CAN 2.0이 정하지 않았고, Bosch의 Reference CAN Model은 이를 DLC 8로 보고 8바이트를 받는다.[1] MCP2515는 DLC를 로 설정해도 8바이트만 보낸다.[2]

DLC가 알려 주는 것은 데이터 필드의 길이다. 데이터가 무엇을 뜻하는지는 식별자가 나타낸다.[1] J1939에서는 응용 계층 문서(SAE J1939-7X)가 데이터 파라미터와 메시지를 정의하고, J1939-71:2025가 파라미터 그룹 데이터 안에 파라미터를 배치하는 관례를 정한다.[3] classical CAN을 쓰는 CANopen에서는 PDO(Process Data Object) 하나가 CAN 프레임 하나에 응용 데이터를 최대 8바이트 싣고, PDO 매핑이 어떤 응용 객체를 어떤 순서와 길이로 PDO에 넣을지 정한다.[4]

CAN FD

CAN FD 포맷 프레임은 DLC 9~15를 8바이트보다 긴 데이터 필드에 쓴다. Bosch CAN FD 1.0은 classical 포맷에서 DLC 9~15가 모두 8바이트를 뜻한다고 정하고, CAN FD 포맷에서는 아래 길이를 뜻한다고 정한다.[5]

DLC9101112131415
데이터 필드(바이트)12162024324864

그래서 CAN FD 프레임의 데이터 필드 길이는 0~8, 12, 16, 20, 24, 32, 48, 64바이트 가운데 하나다. 8바이트를 넘는 데이터는 이 일곱 길이 가운데 하나로만 보낼 수 있다.[5] 보낼 데이터가 DLC가 나타내는 데이터 필드 길이보다 짧으면, 남는 바이트를 패딩 값으로 채워 보낸다.[6][7] 예를 들어 AUTOSAR CAN 드라이버는 보낼 데이터의 길이가 DLC로 나타낼 수 있는 길이와 맞지 않으면, 그보다 큰 DLC 가운데 가장 작은 것으로 보내고 남는 바이트를 설정한 패딩 값으로 채운다.[7]

CAN FD 포맷 프레임에서는 DLC가 CRC의 길이도 고른다. 데이터 필드의 바이트 수 이 이면 17비트 CRC를, 이면 21비트 CRC를 쓴다.[5]

리모트 프레임

리모트 프레임은 데이터 필드가 없지만 DLC는 있고, DLC에는 요청하는 데이터 프레임의 DLC 값을 넣는다.[1]

[1]
“CAN Specification Version 2.0,” Robert Bosch GmbH, 1991. Accessed: Sep. 25, 2026. [Online]. Available: https://web.archive.org/web/20171215103144/http://www.bosch-semiconductors.de:80/media/ubk_semiconductors/pdf_1/canliteratur/can2spec.pdf
[2]
“MCP2515 Stand-Alone CAN Controller with SPI Interface,” Microchip Technology Inc., 2019. Accessed: Sep. 25, 2026. [Online]. Available: https://ww1.microchip.com/downloads/en/DeviceDoc/MCP2515-Stand-Alone-CAN-Controller-with-SPI-20001801J.pdf
[3]
SAE International, “SAE J1939/71_202502 Vehicle Application Layer.” 2025. Accessed: Sep. 26, 2026. [Online]. Available: https://saemobilus.sae.org/standards/j193971_202502-vehicle-application-layer
[4]
CAN in Automation (CiA), “PDO protocol.” 2026. Accessed: Sep. 27, 2026. [Online]. Available: https://www.can-cia.org/can-knowledge/pdo-protocol
[5]
“CAN with Flexible Data-Rate Specification Version 1.0,” Robert Bosch GmbH, 2012. Accessed: Sep. 25, 2026. [Online]. Available: https://web.archive.org/web/20151211125301/http://www.bosch-semiconductors.de/media/ubk_semiconductors/pdf_1/canliteratur/can_fd_spec.pdf
[6]
“M_CAN Controller Area Network User’s Manual, Revision 3.3.1,” Robert Bosch GmbH, 2023. Accessed: Sep. 25, 2026. [Online]. Available: https://www.bosch-semiconductors.com/media/ip_modules/pdf_2/m_can/mcan_users_manual_v331.pdf
[7]
“Specification of CAN Driver (AUTOSAR CP R25-11),” AUTOSAR, 2025. Accessed: Sep. 27, 2026. [Online]. Available: https://www.autosar.org/fileadmin/standards/R25-11/CP/AUTOSAR_CP_SWS_CANDriver.pdf