Chủ đề một số công nghệ mạng lưới phổ biến trang bị trong xe

0
18

Sự đa dạng của các ECU, cảm biến và bộ truyền động đã tạo ra một loạt các công nghệ mạng lưới trong xe đa dạng. Mục tiêu chung của các công nghệ này là nhu cầu giao tiếp đáng tin cậy với hành vi xác định trong điều kiện môi trường khắc nghiệt với chi phí thấp. Phần lớn các ECU dựa vào giao tiếp dựa trên tín hiệu thông qua các hệ thống bus ô tô như Mạng Khu vực Bộ điều khiển (CAN/CAN-FD), FlexRay, Ethernet và Mạng Kết nối Cục bộ (LIN). Nhu cầu băng thông mạng ngày càng tăng đang thúc đẩy các mạng lưới trong xe chuyển đổi sang các giải pháp băng thông cao hơn như Ethernet và GMSL.

Mặc dù việc bảo mật mạng lưới trong xe có những thách thức chung với bảo mật mạng nói chung, nhưng những hạn chế về hiệu suất thời gian thực và kích thước tải trọng hạn chế đặt ra những thách thức riêng cho nhiều giao thức mạng lưới ô tô. Trong phần tiếp theo, chúng ta sẽ khảo sát các công nghệ mạng lưới ô tô phổ biến nhất và đề cập đến những thách thức bảo mật riêng của chúng. Việc hiểu rõ các tính năng chính và các trường hợp sử dụng phổ biến của các giao thức này sẽ là cơ sở để phân tích tính bảo mật của các giao thức mạng lưới trong xe trong các chương tiếp theo.

CAN

Thật khó để làm việc về an ninh xe cộ nếu không tìm hiểu về cách thức hoạt động của CAN và những vấn đề an ninh khác nhau mà nó gặp phải. CAN là một giao thức truyền thông nối tiếp hoàn hảo cho các ứng dụng thời gian thực đòi hỏi giao tiếp đáng tin cậy trong điều kiện môi trường khắc nghiệt. Nó đã và vẫn là một giao thức truyền thông phổ biến nhờ chi phí thấp và độ tin cậy tuyệt vời. CAN được sử dụng trên nhiều loại phương tiện, bao gồm xe tải thương mại, ô tô, xe nông nghiệp, tàu thuyền và thậm chí cả máy bay:

Hình 1.10 – Bố cục bus điển hình với nhiều nút CAN chia sẻ một kênh CAN duy nhất

Lớp vật lý CAN hỗ trợ phân xử bus từng bit, đảm bảo nút CAN truyền với ID CAN thấp nhất sẽ thắng trong phân xử, khiến các nút khác phải đợi cho đến khi bus nhàn rỗi trước khi thử truyền lại. Cơ chế phân xử này có thể gây hại nếu các nút CAN hoạt động không bình thường bằng cách cố gắng giành quyền truy cập bus một cách tham lam.

Một tính năng quan trọng khác của CAN là chiến lược xử lý lỗi tích hợp, đảm bảo rằng các nút gặp lỗi truyền sẽ chuyển sang trạng thái ngắt bus để không làm phiền các nút khác. Điều này giảm thiểu nhiễu bus và cho phép các chiến lược lớp ứng dụng thử lại việc truyền sau một khoảng thời gian chờ. Các quy tắc này được duy trì nếu bộ điều khiển CAN tuân thủ, như trường hợp của các thiết bị dựa trên CAN tiêu chuẩn. Lưu ý rằng trong các chương sau, chúng ta sẽ xem xét mối đe dọa của các bộ điều khiển CAN không tuân thủ, được thiết kế cố ý để vi phạm các giao thức lớp vật lý và lớp liên kết dữ liệu. Trong những trường hợp đó, nút CAN độc hại có thể chèn bit flip, tạo ra các vấn đề liên tục về tính khả dụng với kênh CAN vật lý.

Khi nói đến các phiên bản của CAN, có ba phiên bản: CAN 2.0, CAN-FD và phiên bản mới nhất, CAN XL. CAN 2.0 được sử dụng nhiều nhất vì là giao thức cũ nhưng kích thước tải trọng tối đa của nó là tám byte và tốc độ truyền dữ liệu điển hình là 500 kbps khiến nó không phù hợp với các ứng dụng đòi hỏi nhiều băng thông hơn. Do đó, CAN-FD đã được bổ sung, cung cấp tải trọng lớn hơn lên đến 64 byte và tốc độ dữ liệu tải trọng nhanh hơn, thường là 2 Mbps. Biến thể cuối cùng của CAN là CAN XL, cung cấp kích thước tải trọng tối đa là 2.048 byte và tốc độ lên đến 20 Mbps. Lưu ý rằng mặc dù mỗi giao thức CAN đều quảng cáo giới hạn tốc độ truyền lý thuyết cao hơn, nhưng các yếu tố như chiều dài bus, tải bus, chất lượng tín hiệu và nhiễu EM buộc phải sử dụng tốc độ truyền thông điển hình thấp hơn để đảm bảo độ tin cậy của truyền thông.

FlexRay

Động lực lớn thúc đẩy ngành công nghiệp ô tô chuyển đổi sang FlexRay là mong muốn về một giao thức truyền thông mang tính quyết định hơn, có thể cung cấp băng thông được đảm bảo cho các thông điệp quan trọng về an toàn. Không giống như CAN, giao thức cho phép máy phát có ID CAN thấp nhất luôn thắng kiện, FlexRay phân bổ các khe thời gian dựa trên cấu trúc Đa truy cập Phân chia theo Thời gian (TDMA):

Hình 1.12 – Bố cục khung FlexRay

Một lợi ích khác của FlexRay so với CAN và CAN FD là tải trọng tối đa 254 byte. Hơn nữa, FlexRay cung cấp cấu hình dự phòng cho kênh truyền thông để giảm khả năng lỗi với tốc độ dữ liệu lên đến 10 Mbps trên mỗi kênh truyền thông. Khi truyền thông dự phòng không quan trọng, kênh dự phòng có thể được tận dụng để tăng tốc độ dữ liệu lên 20 Mbps. FlexRay có khe tĩnh và khe động để cho phép truyền các thông điệp cố định trong các khe thời gian được dành riêng, cũng như các thông điệp động có thể được truyền không theo chu kỳ. Độ dài tải trọng có cùng giá trị cho tất cả các thông điệp được truyền trong khe tĩnh. Mặt khác, khe động có thể có chiều dài tải trọng với nhiều kích cỡ khác nhau.

LIN

Bus LIN là kiến trúc mạng đơn chủ, đa vệ tinh dựa trên giao thức thu-phát không đồng bộ phổ biến (UART) và thường được sử dụng cho các ứng dụng mà chi phí thấp quan trọng hơn tốc độ truyền dữ liệu. Trong mạng LIN, chủ gửi một lệnh chứa trường đồng bộ hóa và ID, trong khi vệ tinh phản hồi bằng tải trọng tin nhắn và tổng kiểm tra. Giống như CAN 2.0, kích thước tải trọng lên tới 8 byte nhưng ở tốc độ bit thấp hơn nhiều, thường là 19,2 kbps:

Hình 1.13 – Cấu trúc khung LIN

Giao tiếp LIN dựa trên bảng lịch trình do chủ LIN duy trì, chủ LIN sử dụng bảng này để phát lệnh tiêu đề LIN hướng đến các vệ tinh LIN cụ thể. LIN hoàn hảo cho các ứng dụng mạng cảm biến và bộ truyền động như điều khiển ghế ngồi, nâng cửa sổ, sưởi ấm gương chiếu hậu, v.v. Một mạng lưới xe thông thường sẽ chứa một nút CAN, đồng thời là một nút chủ LIN, hoạt động như một cổng kết nối giữa mạng CAN và mạng con LIN. Điều này cho phép nút chủ này điều khiển các vệ tinh LIN bằng cách gửi cho chúng các lệnh kích hoạt và yêu cầu chẩn đoán. Do đó, nút chủ LIN là một liên kết quan trọng trong việc hiển thị các cảm biến và bộ truyền động được nhúng sâu trong phần còn lại của xe thông qua một nút cổng CAN-LIN.

UART

Giao thức truyền thông UART hỗ trợ truyền bit không đồng bộ và dựa vào bộ thu để thực hiện lấy mẫu bit mà không cần sử dụng tín hiệu xung nhịp đồng bộ. Nút UART truyền sẽ bổ sung cho gói dữ liệu được gửi bằng bit bắt đầu và dừng thay cho tín hiệu xung nhịp. Tốc độ truyền tiêu chuẩn, có thể lên tới 115.200 bps, là 9.600 bps, đủ cho các tác vụ truyền thông tốc độ thấp:

Hình 1.14 – Một gói UART hiển thị các bit bắt đầu, dừng, dữ liệu và chẵn lẻ

UART thường được sử dụng trong các ứng dụng ô tô để mở các shell gỡ lỗi bằng MCU hoặc SoC, điều này tự nhiên khiến nó trở thành một giao thức thú vị để kẻ tấn công lợi dụng.

SENT

Bus Truyền Nibble Cạnh Đơn (SENT), được gọi là SAE J2716, cung cấp một phương tiện chính xác và tiết kiệm để truyền dữ liệu từ các cảm biến đo nhiệt độ, lưu lượng, áp suất và vị trí đến ECU. Bus SENT độc đáo ở chỗ nó có thể đồng thời truyền dữ liệu ở hai tốc độ dữ liệu khác nhau, lên đến 30 kbps, vượt trội hơn bus LIN. Dữ liệu chính thường được truyền trên kênh nhanh, với tùy chọn đồng thời gửi dữ liệu thứ cấp trên kênh chậm.

Một khung SENT điển hình bao gồm 32 bit, như thể hiện trong Hình 1.15, và chia dữ liệu thành các nibble 4 bit, được kết thúc bằng mã CRC để đảm bảo tính toàn vẹn của khung, chống lại các lỗi hỏng:

Hình 1.15 – Định dạng khung SENT

Mặc dù SENT mạnh mẽ, dễ tích hợp và có độ chính xác cao, các thông điệp SENT vẫn có thể bị ảnh hưởng bởi nhiễu, các vấn đề về thời gian và những khác biệt nhỏ trong quá trình triển khai, điều này hạn chế việc sử dụng nó cho một số loại cảm biến cụ thể.

GMSL

GMSL (Gigabit Multimedia Serial Link) là giao diện nối tiếp đa gigabit tốc độ cao, ban đầu được sử dụng trong các ứng dụng video trên ô tô như thông tin giải trí và hệ thống hỗ trợ người lái tiên tiến (ADAS). Nó cho phép truyền tín hiệu video và âm thanh độ nét cao giữa các thành phần trong xe, chẳng hạn như camera, màn hình và bộ xử lý âm thanh. Nó sử dụng bộ tuần tự hóa ở phía máy phát để chuyển đổi dữ liệu thành luồng tuần tự, và bộ giải tuần tự hóa ở phía máy thu để chuyển đổi dữ liệu tuần tự trở lại thành các từ song song để xử lý. GMSL có thể truyền video với tốc độ lên đến 6 Gbps:

Hình 1.16 – Sơ đồ trường hợp sử dụng GMSL dựa trên thiết bị tương tự (ADI) Bộ giải tuần tự hóa GMSL

Hình 1.16 cho thấy cấu hình điển hình của một ứng dụng camera, trong đó chip tuần tự hóa (hiển thị bên trái) được kết nối với cảm biến camera, trong khi chip giải tuần tự hóa (hiển thị bên phải) được kết nối với ECU. Ngoài việc sử dụng trong truyền âm thanh và video, công nghệ GMSL còn được sử dụng trong các ứng dụng ô tô để truyền các loại dữ liệu khác, chẳng hạn như dữ liệu cảm biến tốc độ cao và tín hiệu điều khiển.

I2C

Mạch Tích hợp Liên thông (I2C) là một giao thức truyền thông nối tiếp hai dây, chủ yếu được sử dụng để giao tiếp giữa MCU hoặc SoC với thiết bị ngoại vi như cảm biến camera hoặc chip nhớ (EEPROM) được đặt gần bộ điều khiển. I2C hỗ trợ tốc độ dữ liệu lên đến 5 Mbps ở chế độ siêu nhanh và thấp tới 100 kbps ở chế độ tiêu chuẩn. I2C đi kèm với một khung địa chỉ chứa địa chỉ nhị phân của thiết bị vệ tinh, một hoặc nhiều khung dữ liệu có kích thước 1 byte chứa dữ liệu đang được truyền, điều kiện bắt đầu và dừng, các bit đọc/ghi và các bit ACK/NACK giữa mỗi khung dữ liệu:

Hình 1.17 – Bố cục tin nhắn I2C

Ethernet

Nhu cầu băng thông tăng trưởng liên tục do các trường hợp sử dụng nội dung phong phú đã thúc đẩy ngành công nghiệp ô tô dần dần áp dụng Ethernet thông qua một bộ tiêu chuẩn IEEE được gọi là Ethernet Ô tô [9]:

Hình 1.18 – Bố cục khung Ethernet

Giao tiếp dựa trên Ethernet cung cấp băng thông cao với tính linh hoạt cao để tích hợp với các sản phẩm tiêu chuẩn bên ngoài lĩnh vực ô tô. Ethernet Ô tô bao phủ phạm vi tốc độ dữ liệu từ 10 Mbit/giây được chuẩn hóa thông qua 10Base-T1S lên đến 10 Gb/giây được chuẩn hóa thông qua 10Gbase-T1. Điều này làm cho nó phù hợp với nhiều trường hợp sử dụng trong ô tô, từ giao tiếp nhạy cảm với thời gian đến các ứng dụng video thông lượng cao.

Một trong những điểm khác biệt chính giữa Ethernet và Ethernet ô tô là lớp vật lý, được thiết kế để xử lý các yêu cầu EMC nghiêm ngặt của ô tô. Một điểm khác biệt nữa là sự ra đời của tiêu chuẩn mạng nhạy cảm với thời gian (TSN) IEEE, cung cấp khả năng ưu tiên để cho phép dữ liệu quan trọng ưu tiên dữ liệu không quan trọng, định hình nhận biết thời gian để đảm bảo độ trễ xác định khi nhận dữ liệu quan trọng, định thời gian chính xác (PTP) để đồng bộ hóa đồng hồ trong mạng, lọc theo luồng để loại bỏ các khung hình không mong muốn, sao chép và loại bỏ khung hình, cũng như giao thức truyền tải âm thanh-video cho các trường hợp sử dụng liên quan đến thông tin giải trí.

J1939

SAE J1939, do Hiệp hội Kỹ sư Ô tô (SAE) định nghĩa, là một bộ tiêu chuẩn xác định cách thức ECU giao tiếp thông qua bus CAN trên các xe hạng nặng.

Ngoài những công nghệ mạng lưới giao tiếp trên bạn còn tìm thấy mạng lưới ứng dụng trên xe nào nữa không nhé!

Nguồn tham khảo

LEAVE A REPLY

Please enter your comment!
Please enter your name here