999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

車載以太網SOME/IP協議及一致性測試系統研究

2023-07-10 11:51:35曹麗平徐維劉敏
汽車電器 2023年6期

曹麗平 徐維 劉敏

【摘? 要】隨著汽車網聯化、智能化、電動化的快速發展,車載以太網已成為新型網絡架構中的骨干網絡。對汽車而言,汽車的自主度越高,系統故障導致的后果也將變得越來越嚴重,并且國內車載以太網技術處于發展的初期,為保證這些系統安全可靠地運行,車載以太網協議一致性測試顯得尤為重要。SOME/IP屬于車載以太網架構中應用層和傳輸層之間的中間件,對于SOME/IP而言,它是面向服務的通信。SOME/IP協議一致性測試包括SOME/IP Server測試及SOME/IP ETS測試,測試結果表明,該測試系統能夠有效檢測出DUT在服務請求及服務應答過程中的錯誤,為供應商及主機廠完善產品協議規范提供幫助。

【關鍵詞】車載以太網;協議一致性;SOME/IP;面向服務

中圖分類號:U463.6? ? 文獻標志碼:A? ? 文章編號:1003-8639( 2023 )06-0055-04

Research on Conformance Testing System for Protocols in Automotive Ethernet SOME/IP

CAO Li-ping,XU Wei,LIU Min

(China Automotive Engineering Research Institute Co.,Ltd.,Chongqing 401120,China)

【Abstract】With the rapid development of automobile networking,intelligence and electrification,vehicle Ethernet has become the backbone network in the new network architecture. For cars,the higher the autonomy of the car,the more serious the consequences of system failures will become,and the domestic vehicle Ethernet technology is in the early stage of development. To ensure the safe and reliable operation of these systems,it is particularly important to test the consistency of on-board Ethernet protocol. SOME/IP belongs to the middleware between the application layer and the transmission layer in the vehicle Ethernet architecture. For SOME/IP,it is service-oriented communication. SOME/IP protocol conformance test includes SOME/IP Server test and SOME/IP ETS test,and the test results show that,the test system can effectively detect errors of DUT in the process of service request and service response,and provide help for suppliers and OEMs to improve product protocol specifications.

【Key words】vehicle Ethernet;protocol conformance test;SOME/IP;service oriented

隨著汽車電動化、智能化、網聯化的快速發展,對傳統汽車電子電氣系統提出了新的需求和挑戰。智能座艙、智能駕駛等技術在車上大規模的應用,使得車內電子電氣系統變得越來越復雜,所需的控制器數目和算力也呈幾何倍數增長。各系統的融合帶來了高帶寬、高速率的通信需求,傳統的CAN(FD)總線已不能完全滿足。車載以太網新型網絡通信技術的引入,已使這一融合變為部分現實,車載以太網將成為車載網絡未來發展的趨勢。

本文主要研究車載以太網應用層SOME/IP協議一致性測試。文中首先介紹SOME/IP的基本內容,包括消息格式、序列化及通信機制,其次介紹SOME/IP SD的消息格式及工作機制,最后基于協議標準介紹一種協議一致性的測試方案。測試用例內容參考OPEN ALLIANCE TC8 3.0,保證測試的標準性和通用性。測試系統以思博倫公司的C50為硬件基礎,TTworkbench為軟件支撐,選用SOME/IP測試套件完成整個測試。

1? SOME/IP協議

1.1? SOME/IP概述

1)服務(Service)是什么?服務是一個離散的功能單元,可遠程訪問并獨立執行和更新。對于SOME/IP而言,它的通信過程不再是面向信號的,是在接收方有需求的時候才發送。這種通信實現的方式是,當某個ECU需要調用并實現其他ECU上的服務時,前ECU扮演Client的角色,后ECU就扮演Server的角色,而SOME/IP就是實現這種遠程服務調用的接口。

2)服務接口(Service Interface)是什么?接口:能夠被其它模塊調用的與應用程序之間使用的標準的API接口;服務接口:服務與外界進行聯系的接口,服務接口(Method、Event和Field)本身與底層通信技術無關。

3)SOME/IP是干什么的?解決服務提供方與服務消費方之間的網絡通信問題,SOME/IP報文打包了服務接口的內容。

4)SOME/IP主要功能?遠程調用(RPC)——基本的通信機制;序列化——定義數據表達方式;服務發現(SD)——服務發現,發布/訂閱處理。

1.2? SOME/IP消息格式(圖1)

1)Service ID:服務的唯一識別號,每個服務都被分配了一個唯一的Service ID。

2)Method ID:服務包含了一系列的方法(Method)、事件(Event)和字段(Field),均有唯一的1個Method ID,其中0—32767為方法(包括Method、Field.Getter以及Field.Setter),32768—65535為事件(包括Event和Field.Notify)。

3)Length:除Message ID和Length字段之外的所有數據長度。

4)Client ID:用來識別一個具體的客戶端,在整車范圍內,Client ID必須是唯一的。

5)Session ID:可以用來識別來自同一客戶端的多次請求。

6)Protocol Version:SOME/IP的版本,目前為1。

7)Interface Version:主版本號,用來識別服務接口,由用戶定義。比如,當服務增加了新的功能或者發生變更,用戶可以定義新的版本號,而客戶端或者服務端可以通過這個版本號來自動判斷兼容性。

8)Message Type:用來識別不同的消息類,其消息類型詳見表1。

9)Return Code:用來指示請求是否被成功處理了,其消息類型詳見表2。

1.3? SOME/IP序列化

序列化是將數據結構或對象依據事先定義好的規格轉換成二進制串的過程;反序列化是將在序列化過程中所生成的二進制串轉換成數據結構或者對象的過程。根據傳輸對象的不同數據類型,有不同的序列化規則。

1)基本數據類型的序列化。SOME/IP支持的基本數據類型見表3。例:unit32類型數據0x12345678的序列化,見表4。

2)結構體的序列化。將結構體的數據元素順序排序,然后將各個元素依次進行序列化,可增加Length Field來指示結構體中數據元素的字節長度,而嵌套的結構體,也同樣需要增加Length Field。結構體的序列化如圖2所示。

3)字符串的序列化。①格式為BOM+數據+結束語(固定長度)。例:Member 1為utf8 18byte,“車載ETH”(E8BDA6,E8BDBD,45,54,48);Member 1為utf16LE 18byte,“序列化ABCA”(5E8F,5217,5316,0041,0042,0043)。字符串的序列化(固定長度)如圖3所示。②格式為BOM+數據+結束語(動態長度)。例:Member 1為“浪費”(E6B5AA,E8B4B9);Member 2為“badguy”(62,61,64,67,75,79)。字符串的序列化(動態長度)如圖4所示。

4)數組的序列化。數組是相同類型數據的集合,依據數組元素的順序排列,并進行序列化。

5)聯合體的序列化。圖5為聯合體的序列化(動態長度)。

1.4? SOME/IP通信機制

SOME/IP是實現遠程服務調用的接口,服務接口有Method、Event和Field。

有響應的方法(Method with response):客戶端發送請求消息(Request)調用某一方法,服務端通過響應消息(Response)將結果返回給客戶端。

無響應的方法(Method fire & forget):客戶端發送請求消息(Request)調用某一方法,服務端不回復響應。

Event——事件。Client端訂閱1個服務,Server端發布該服務。

Field——字段。字段是客戶端可以遠程訪問的服務端中的變量。客戶端可以通過遠程調用Getter方法獲取Field的值,也可以通過遠程調用Setter方法設置Field的值。另外,和Event相似,當客戶端訂閱了某個事件組,若事件組中包含的Field發生了變化,服務端會主動通過Notification消息通知客戶端。

1.5? SOME/IP SD消息格式

SOME/IP-SD[4]可以被當做SOME/IP的一種特殊服務,提供了ECU之間服務交互的方法與標準,對Payload里的內容進行定義和實現。

1)報文格式——Event Entry(圖6)。Reboot Flag:重啟/上電時至1,直到Session ID完成1~0xFFFF的1個循環之后,并再次以0x0001開頭,置0;Unicast Flag:是否支持單播接收;Length:包含Length以后的所有長度;Type:報文格式;Options:Option1排在Array里第幾個;Of opt 1:Option1的數目;Service ID:需要查找或公布的服務;Instant ID:服務實例ID;Major Version:服務的主版本號;TTL:發現服務時的搜索時間,提供服務時的有效時間;Minor Version:服務的次版本號。

2)報文格式——Eventgroup Entry(圖7)。Initial Data Requested Flag:在服務端發送的OFFER中,如果Explicit Initial Data Control Flag置位,那么客戶端可通過置位Initial Data Requested Flag來顯示請求初始數據,這樣服務端會立即發送初始數據;Counter:用于區分來自同一訂閱者對同一事件組的不同訂閱,如果沒有使用,填0;Eventgroup ID:事件組ID,包含若干Event和Field的邏輯分組。

3)報文格式——IPv4 Endpoint Option(圖8)。服務端在發送OFFER Entry時使用IPv4 Endpoint Option來指定提供服務的端點地址以及發送Event的源地址;客戶端在發送Subscribe Entry時使用IPv4 Endpoint Option來指定Event的接收地址。

4)報文格式——IPv4 Multicast Option(圖9)。服務端發送SubscribeAck時,如果發送Event的目標地址為組播地址,那么應攜帶IPv4 Multicast Option。

2? SOME/IP一致性測試

2.1? 測試內容

1)SOME/IP Server測試。依賴DUT自身的SOME/IP應用功能,我們會在其中抽取一些典型的服務和方法,用來驗證一些比較基礎的內容,比如報文格式、基本的RPC和SD機制等。在測試中,測試系統Tester仿真客戶端發送的請求,并接收DUT的響應;當觸發應用產生了特定行為時,部分測試可能需要其他特殊手段,例如,當請求了訂閱,需要觸發DUT發送Event時,不要觸發某種條件,如仿真I/O輸入,或者開發1個測試用的軟件接口。SOME/IP Server測試集見表5。

2)SOME/IP ETS測試(表6)。突破被測控制器自身應用的限制,能夠彌補上面提到的Server測試在覆蓋度方面的不足。簡而言之,TC8定義了一個服務,稱為ETS(Enhanced Testability Service)。ETS中包含的各種Method、Event、Field等覆蓋SOME/IP所支持的全部數據類型,并包含了一些特殊的Method,比如ResetInterface(用于重啟ETS服務)等;被測控制器集成了ETS后,我們能夠對SOME/IP以及SOME/IP-SD進行充分而且全面的驗證。

2.2? ?SOME/IP一致性測試實現

本文對車載以太網SOME/IP協議一致性測試平臺選用的是Sprient的C50硬件系統及TTworkbench軟件系統,SOME/IP測試環境如圖10所示。

1)連接測試端口(圖11),根據被測設備的端口類型,將要測試的以太網通信端口接到C50的測試端口上,當前C50包含16個測試端口。

2)通過SSH進入C50的系統內部進行測試端口的IP地址配置等操作,通常使用的軟件有Xshell、Putty、SSH等,本測試系統使用Putty進入C50系統內部進行配置測試端口參數。C50內部系統配置如圖12所示。

3)打開TTworkbench,選擇測試包并加載,配置測試參數,開始測試執行。TTworkbench測試環境配置如圖13所示。

2.3? 測試結果分析

測試Log用wireshark軟件打開,以SOMEIP_ETS_005_ checkByteOrder為例,C50創建一個帶有UINT8和UINT16參數的SOME/IP報文,發送TC8 ETS矩陣里checkByteOrder Method請求,并檢查DUT回復的參數是否和矩陣保持一致。checkByteOrder Method請求與回復如圖14、圖15所示。

3? 結論

本文是針對車載以太網SOME/IP一致性測試提出的針對性測試方案,該測試系統提供的測試集覆蓋了TC8 3.0的所有測試用例。通過對被測件進行實際測試,驗證了測試系統的有效性,測試實例及結果證明:該測試系統能夠完全按照TC8測試用例流程來執行測試,能有效檢測出被測件在SOME/IP通信過程中的基礎格式問題及協議棧自身應用問題,能夠幫助供應商及主機廠完善產品協議。

參考文獻:

[1] 張弛,吳志紅,朱元,等. 基于AUTOSAR標準的ETH基礎通信及SOME/IP通信實現[J]. 信息通信,2020(2):7-12.

[2] 趙剛. 基于車載以太網的協議研究[D]. 天津:河北工業大學,2015.

[3] 張春霞,李旭東,徐濤. 淺談面向服務架構(SOA)的核心理念[J]. 計算機系統應用,2010,19(6):251-256.

[4] 李志濤,姬志博,耿偉峰. 車載以太網SOME/IP測試的研究與分析[J]. 汽車電器,2022(6):95-98.

(編輯? 凌? 波)

主站蜘蛛池模板: 国产一国产一有一级毛片视频| 日韩午夜伦| 国产在线自乱拍播放| 日韩欧美亚洲国产成人综合| 国产流白浆视频| 国产大片喷水在线在线视频| 最新日本中文字幕| 中文天堂在线视频| 日韩av在线直播| 狠狠亚洲婷婷综合色香| 一级毛片基地| 免费一级毛片完整版在线看| 精品人妻一区无码视频| 精品国产福利在线| 中日韩一区二区三区中文免费视频 | 亚洲无码精品在线播放| 久久一色本道亚洲| 华人在线亚洲欧美精品| 欧美不卡二区| 亚洲天堂网站在线| 亚洲国语自产一区第二页| 成年片色大黄全免费网站久久| 毛片网站免费在线观看| 精品无码一区二区在线观看| 亚洲a免费| 国产精品大尺度尺度视频| 亚洲成人一区二区三区| 日韩午夜片| 国产精品 欧美激情 在线播放| 日本高清成本人视频一区| 国产视频一区二区在线观看| 91久久国产成人免费观看| 国产第八页| 亚洲精品无码av中文字幕| 91免费国产在线观看尤物| 精品无码一区二区三区电影| 伊人久久婷婷| 日韩经典精品无码一区二区| 精品免费在线视频| 精品人妻一区无码视频| 成人91在线| 97国产在线观看| 天天综合色天天综合网| 精品国产www| 亚洲欧美另类日本| 夜色爽爽影院18禁妓女影院| 亚洲欧美另类日本| 国产人成在线视频| 久草视频一区| 国产成人高清精品免费| 又爽又黄又无遮挡网站| 五月天在线网站| 日本高清在线看免费观看| 四虎国产永久在线观看| 欧美成人aⅴ| 欧美性猛交xxxx乱大交极品| 成人噜噜噜视频在线观看| 综1合AV在线播放| 亚洲国产在一区二区三区| 不卡视频国产| 青青草原国产av福利网站| 日本成人福利视频| 亚洲看片网| 国产精品久久久久久久久久98| 一级一毛片a级毛片| 久久久亚洲国产美女国产盗摄| 99国产精品国产高清一区二区| 日韩免费中文字幕| 国产自在线播放| 欧美一区福利| 久热中文字幕在线| 精品亚洲麻豆1区2区3区| 免费中文字幕一级毛片| 久久6免费视频| 99久久精品免费看国产免费软件| 大乳丰满人妻中文字幕日本| 久久免费观看视频| 69免费在线视频| 国产精品页| 欧美精品成人| 91小视频版在线观看www| 国产精品亚洲αv天堂无码|