免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

SOME/IP協(xié)議棧開發(fā)指南:服務發(fā)現(xiàn)機制、報文結(jié)構(gòu)及避坑實戰(zhàn)

SOME/IP協(xié)議棧開發(fā)指南:服務發(fā)現(xiàn)機制、報文結(jié)構(gòu)及避坑實戰(zhàn) 簡介面向車載以太網(wǎng)與SOA通信開發(fā)者的SOME/IP協(xié)議專題PPT圍繞協(xié)議棧從概念到落地的完整經(jīng)驗展開重點闡述SOME/IP與SOME/IP-SD的關(guān)系、服務發(fā)現(xiàn)與訂閱機制、SD報文關(guān)鍵字段、序列化格式與狀態(tài)機并結(jié)合實際開發(fā)總結(jié)使用技巧、常見問題、以太網(wǎng)抓包分析思路及TC8測試規(guī)范。包內(nèi)共1個PPTX文件大小約3.55MB便于直接閱讀和二次整理內(nèi)容結(jié)構(gòu)從術(shù)語解釋、報文格式到狀態(tài)機與測試框架逐層遞進適合正在入門或已在項目中調(diào)試SOME/IP協(xié)議棧的工程師。已有798人學習下載。通過學習本資源讀者可建立對SOME/IP-SD報文細節(jié)和狀態(tài)流轉(zhuǎn)的系統(tǒng)認識獲得排查服務未發(fā)現(xiàn)、報文丟失、響應延遲等問題的思路同時了解TC8測試的基本框架為車載以太網(wǎng)協(xié)議開發(fā)與驗證提供參考也能為實際項目中的協(xié)議棧問題排查提供依據(jù)。1. SOME/IP協(xié)議是什么為什么說它是汽車以太網(wǎng)的“服務總線”SOME/IPScalable service-Oriented MiddlewarE over IP是汽車以太網(wǎng)里專為服務化通信設計的中間件協(xié)議。過去 ECU 之間通信要么用 UDS 診斷走一問一答要么靠 CanSignal 表去輪詢某個信號到了域控制器和智能座艙時代應用層更想“像調(diào)本地函數(shù)一樣”去調(diào)用另一個節(jié)點上的服務SOME/IP 就是把方法調(diào)用、事件訂閱、字段讀寫封裝成標準報文再配合一套服務發(fā)現(xiàn)機制讓節(jié)點在運行期動態(tài)找到彼此。你如果做過車載網(wǎng)關(guān)、座艙域控或者 SOA 仿真的開發(fā)大概率在抓包里見過成片的 OfferService 和 SubscribeEventgroup那就是它在干活。這篇文章按我從零搭協(xié)議棧的順序展開先拆協(xié)議字段和選型理由再給一套最小可運行的實現(xiàn)骨架最后把服務發(fā)現(xiàn)調(diào)參和五個最容易翻車的坑說透適合正在寫或準備寫服務化通信代碼的嵌入式軟件工程師照著做。2. SOME/IP核心機制拆解從報文到服務調(diào)用2.1 服務接口類型Method、Event、Field到底怎么選SOME/IP 的服務模型說到底是三類Method、Event 和 Field。Method 是最像 RPC 的調(diào)用方式客戶端發(fā)一個請求服務端處理完回一個響應適合“打開座椅加熱”“讀取當前車速”這種天然帶返回值的動作它也支持把響應拆成多幀回傳但要靠 Session ID 把多幀關(guān)聯(lián)回同一個請求復雜度會高一截。Event 是發(fā)布訂閱模式服務端在狀態(tài)變化或周期到來時主動推給已訂閱的客戶端適合“電池電壓變化”“車門狀態(tài)翻轉(zhuǎn)”這類不要求立即響應但要求及時感知的數(shù)據(jù)。Field 更像是讀寫屬性它帶 getter、setter 和 notifier 三種能力客戶端可以主動讀、主動寫也能訂閱變化通知不少協(xié)議棧實現(xiàn)里Field 最終就是被拆成 Method 加 Event 的組合所以底層核心仍然只有前兩類。選型上我一般這樣判斷如果一份數(shù)據(jù)同時被多個節(jié)點消費且變化頻率不高用 Event 最省流量每個消費者只需要訂閱一次如果是高頻主動查詢、且每次結(jié)果都要即時處理用 Method 更直觀。不要把 Method 當 Event 用——那等于把總線變成輪詢現(xiàn)場節(jié)點一多帶寬立刻不夠。也不要把 Event 當 Method 用——Event 沒有返回值調(diào)用方無法判斷這次通知業(yè)務上是否成功。接口設計階段把這些理清楚后面協(xié)議棧寫出來才不會反復返工。序列化方面SOME/IP 使用自帶長度信息的編碼方式承載數(shù)據(jù)標量類型uint8/uint16/uint32/int32/float64默認大端字節(jié)序數(shù)組默認帶一個 32 位長度字段字符串同樣帶 32 位長度字段結(jié)構(gòu)體則按字段順序連續(xù)編碼不自動做對齊。接口的完整布局由 ARXML 這類接口描述文件定義工程上通常從描述文件直接生成序列化代碼不要手寫硬編碼去拼字節(jié)。一旦某個數(shù)組長度字段的位寬理解錯解析出來的整個后續(xù)字段都會串位這種問題藏得很深后面的避坑章節(jié)會專門講。2.2 SOME/IP報文頭16個固定字節(jié)里藏了哪些關(guān)鍵信息SOME/IP 報文頭固定 16 字節(jié)不包含業(yè)務數(shù)據(jù)。第一個字段是 Message ID4 字節(jié)高 16 位是 Service ID低 16 位是 Method ID。比如服務 ID 是 0x0001方法 ID 是 0x8001那報文頭前四個字節(jié)就是 0x00 0x01 0x80 0x01。這里有個網(wǎng)上的約定俗成Method ID 從 0x0000 到 0x7FFF 表示請求/響應方法0x8000 以上一般留給 Event 和 Field 的通知看到 0x8000 以上的 Method ID基本能猜出這是個事件消息。字段長度含義Message ID4 字節(jié)Service ID Method ID標識服務里的具體方法或事件Length4 字節(jié)從 Request ID 字段開始到整個報文末尾的字節(jié)數(shù)Request ID4 字節(jié)高 16 位 Client ID低 16 位 Session IDProtocol Version1 字節(jié)協(xié)議主版本目前主流實現(xiàn)為 0x01Interface Version1 字節(jié)服務接口版本由接口定義決定服務變更時遞增Message Type1 字節(jié)0x00 請求/響應0x01 通知0x02 錯誤響應0x81/0x82 為帶應答的變體Return Code1 字節(jié)0x00 成功非 0 為具體錯誤碼這里最容易被新手忽略的是 Request ID??蛻舳嗣堪l(fā)一個請求都應該自增 Session ID不能把整個客戶端固定成一個值。尤其是走 TCP 長連接時多個未完成的請求會共用一個連接響應返回的順序不能保證和請求一致沒有 Session ID 做關(guān)聯(lián)上層根本不知道手里這個響應對應哪次調(diào)用只能干等超時。Message Type 里的 0x81 和 0x82 值得多說一句0x81 表示“請求需要響應”0x82 表示“通知需要響應”這類變體多用于調(diào)試或要求確認的訂閱場景。協(xié)議棧解析響應包時必須校驗 Message Type 與當前請求期望的類型匹配不匹配直接丟棄不要往業(yè)務層送否則業(yè)務層會拿通知當請求的響應來處理出現(xiàn)各種詭異邏輯。2.3 請求/響應與Fire-and-Forget不是所有消息都要等回包SOME/IP 的調(diào)用模式有三種最常聽到的是 Request/Response也就是一問一答第二種是 Fire-and-Forget發(fā)完即忘協(xié)議棧不會等響應服務端也不用回包適合“下發(fā)一個配置參數(shù)結(jié)果靠后續(xù) Event 確認”的場景第三種是通知就是上一節(jié)說的 Event訂閱后由服務端主動推送。協(xié)議棧內(nèi)部處理請求/響應時流程大致是這樣客戶端業(yè)務層調(diào)用服務方法序列化層把參數(shù)編碼進 Payload傳輸層把報文發(fā)出去服務端從 Socket 收到字節(jié)先解析報文頭再根據(jù) Message ID 找到對應的服務方法反序列化參數(shù)調(diào)用真正的業(yè)務實現(xiàn)拿到返回值后再序列化、封裝成 Response 發(fā)回。這個鏈路里最容易出問題的是線程模型如果業(yè)務邏輯直接在 Socket 收包線程里執(zhí)行一個慢方法就把整個收包通道堵死其他消息全在排隊。我一般會把收包線程和業(yè)務線程解耦中間放一個 ring buffer 或消息隊列收包只負責解析和投遞業(yè)務線程從隊列里取任務執(zhí)行。Fire-and-Forget 的消息比 Request/Response 少一個 Response 包對端不需要維護請求關(guān)系協(xié)議棧實現(xiàn)時可以省掉 Session ID 關(guān)聯(lián)那一套邏輯但要注意服務端如果出錯沒法通過 Response 告訴客戶端只能靠日志和診斷手段查。所以能用 Response 就拿 Response別為了省包把可靠性也省掉了。3. 從零搭一個最小SOME/IP協(xié)議棧分層與代碼骨架3.1 協(xié)議棧總體分層把職責切干凈再動手自己寫協(xié)議棧第一件事不是寫序列化而是先分層。我習慣分三層傳輸層、協(xié)議層、服務層。傳輸層負責 Socket 生命周期、連接狀態(tài)管理、收發(fā)字節(jié)流它不知道字節(jié)流里是 SOME/IP 還是別的協(xié)議協(xié)議層負責拼報文頭、解報文頭、序列化和反序列化 Payload、維護 Message ID 到服務方法的映射表服務層負責服務實例的注冊和注銷、服務發(fā)現(xiàn)、業(yè)務回調(diào)分發(fā)。分層到位以后排查問題會輕松很多。抓包發(fā)現(xiàn)報文頭正確但業(yè)務層沒反應問題大概率在協(xié)議層到服務層的映射沒注冊好如果報文頭本身就錯位那是字節(jié)流切分不對問題在傳輸層。不要把 recv、解包、業(yè)務調(diào)用全部寫進一個大函數(shù)里那樣前期跑通很快后期加功能會想罵人。我見過不少項目翻車都是因為一開始圖省事協(xié)議解析和業(yè)務邏輯纏在一起測新服務時根本分不清瓶頸在哪層。3.2 序列化與反序列化一套能直接跑的最小實現(xiàn)下面給一個 Python 風格的最小協(xié)議棧骨架重點是展示報文頭的組裝和解析以及 Payload 的序列化方式。真實車載棧通常用 C但這里面的字節(jié)序、長度字段、消息類型處理邏輯完全一致只是語法不同。import struct import socket SOMEIP_MSG_TYPE_REQUEST 0x00 SOMEIP_MSG_TYPE_RESPONSE 0x80 SOMEIP_MSG_TYPE_NOTIFICATION 0x01 class SomeipMessage: def __init__(self): self.service_id 0 self.method_id 0 self.client_id 0 self.session_id 0 self.msg_type 0 self.ret_code 0 self.payload b property def msg_id(self): # 高16位服務ID低16位方法ID拼成32位 return (self.service_id 16) | self.method_id property def req_id(self): # 高16位客戶端ID低16位會話ID拼成32位 return (self.client_id 16) | self.session_id def pack(self): # 大端序IIIBBBB # I: 4字節(jié)無符號整型, B: 1字節(jié)無符號整型 header struct.pack( IIIBBBB, self.msg_id, 8 len(self.payload), # Length 從Request ID到末尾 self.req_id, 0x01, # Protocol Version 0x01, # Interface Version self.msg_type, self.ret_code ) return header self.payload classmethod def unpack(cls, data: bytes): if len(data) 16: raise ValueError(SOME/IP報文頭不足16字節(jié)) msg_id, length, req_id, proto_ver, iface_ver, msg_type, ret_code struct.unpack(IIIBBBB, data[:16]) if proto_ver ! 0x01: raise ValueError(fProtocol Version不支持: 0x{proto_ver:02x}) # Length包含Request ID到末尾的長度去掉8字節(jié)后才是Payload expect_payload_len length - 8 if len(data) - 16 ! expect_payload_len: raise ValueError(fPayload長度不匹配: 頭中長度{expect_payload_len}, 實際{len(data)-16}) msg cls() msg.service_id (msg_id 16) 0xFFFF msg.method_id msg_id 0xFFFF msg.client_id (req_id 16) 0xFFFF msg.session_id req_id 0xFFFF msg.msg_type msg_type msg.ret_code ret_code msg.payload data[16:] return msg這段代碼把協(xié)議棧的協(xié)議層核心邏輯寫清楚了。pack 方法負責把業(yè)務字段拼成標準報文unpack 方法負責把收到的字節(jié)流解析成可讀的 SomeipMessage 對象。兩個方法都用 struct 的前綴明確指定大端序這一步是很多人容易漏掉的地方。參數(shù)說明8 len(self.payload)是 Length 字段的標準算法因為 Length 從 Request ID 算到末尾而 Request ID 加上協(xié)議版本和消息類型那一串正好是 8 字節(jié)msg_type里 0x00 表示請求0x80 表示響應0x01 表示通知都是協(xié)議規(guī)定值。接著寫個簡單的發(fā)送端演示序列化一個方法請求。def build_request(service_id, method_id, client_id, session_id, params: list): msg SomeipMessage() msg.service_id service_id msg.method_id method_id msg.client_id client_id msg.session_id session_id msg.msg_type SOMEIP_MSG_TYPE_REQUEST # 序列化參數(shù)先放一個int32再放一個字符串 # 字符串格式4字節(jié)長度 原始字節(jié) payload struct.pack(I, params[0]) str_bytes params[1].encode() payload struct.pack(I, len(str_bytes)) str_bytes msg.payload payload return msg.pack()這里序列化的規(guī)矩是標量直接用對應格式比如 int32 用I字符串前面必須帶 4 字節(jié)長度字段。SOME/IP 標準里數(shù)組、字符串的長度字段默認 32 位協(xié)議棧解析時按這個位寬去切分就能準確知道后面有多少個字節(jié)屬于當前字段。發(fā)送端調(diào)用這個函數(shù)后把返回的 bytes 交給 Socket 發(fā)出去即可。3.3 連接管理與Socket選型UDP還是TCPSOME/IP 既能跑 UDP 也能跑 TCP這個選擇直接影響協(xié)議棧的收發(fā)邏輯。UDP 適合小報文、高頻、允許少量丟失的場景比如周期性事件報文一個包一個事件對端沒收到就等下一拍TCP 適合大報文、不允許丟的場景比如車內(nèi)固件刷寫、大塊診斷數(shù)據(jù)TCP 幫你處理了可靠性和順序問題。但 TCP 也帶來粘包和半包問題后面避坑章節(jié)專門講。端口上有個實際經(jīng)驗SOME/IP 標準推薦的動態(tài)端口范圍在 30490 到 30509 之間SD服務發(fā)現(xiàn)一般固定在 30490普通服務消息用后面的端口。如果同一個節(jié)點上有多個服務建議每個服務分配獨立端口便于抓包過濾和防火墻配置。UDP 模式下一個 Socket 可以服務多個客戶端源地址和端口能區(qū)分是誰發(fā)來的TCP 模式下每個客戶端一個連接協(xié)議棧需要維護連接狀態(tài)表復雜度會明顯上升。我自己的經(jīng)驗是初期原型驗證用 UDP 先把服務調(diào)通再按需求切換到 TCP兩套收發(fā)邏輯盡量共用協(xié)議層代碼只換傳輸層的收發(fā)函數(shù)。4. 服務發(fā)現(xiàn)SD實現(xiàn)服務怎么被找到、怎么被訂閱4.1 三種SD報文Offer、Find、Subscribe各自什么時候發(fā)服務發(fā)現(xiàn)是 SOME/IP 協(xié)議棧里最容易被低估的部分。沒有 SD每個節(jié)點都得靜態(tài)配置對端 IP 和端口換一個網(wǎng)段就全斷。有了 SD 之后服務端啟動時周期性地發(fā) OfferService 公告自己可用客戶端想調(diào)用某個服務時發(fā) FindService 去找服務端收到 FindService 后通常會立刻補發(fā)一次 OfferService??蛻舳擞嗛喪录t發(fā) SubscribeEventgroup服務端同意后回 SubscribeEventgroupAck兩邊建立起實際的數(shù)據(jù)通道。抓包時你會發(fā)現(xiàn)OfferService 是周期報文周期一般在 500ms 到 3s 之間FindService 只在客戶端啟動或服務丟失時發(fā)。這里有個容易踩的誤區(qū)OfferService 不只是一個“通知”它本身也承載了服務的 IP、端口、實例 ID 等信息客戶端收到后要解析出這些信息才能建立連接。解析時注意服務實例 ID 和版本號如果客戶端要求的接口版本與服務端不一致要按協(xié)議回錯誤不要強行握手造成后續(xù)報文對不上。4.2 SD狀態(tài)機與定時器參數(shù)那幾個參數(shù)直接決定總線會不會被打爆SD 的核心是狀態(tài)機。一個服務實例在客戶端側(cè)經(jīng)歷的狀態(tài)大致是未知 - 發(fā)現(xiàn)中 - 可用 - 已訂閱。狀態(tài)之間靠定時器和報文驅(qū)動。以下是幾個必調(diào)的定時器參數(shù)參數(shù)典型值作用SD_OFFER_SERVICE_CYCLE_TIME500ms - 3s服務端周期發(fā)送 OfferService 的間隔SD_INITIAL_DELAY_MIN/MAX0 - 2s服務啟動后首次發(fā)送 Offer 的隨機延遲SD_SUBSCRIBE_TIMEOUT1 - 3s客戶端等待訂閱確認的超時時間SD_REQUEST_RESPONSE_DELAY50 - 200ms收到 FindService 后補發(fā) Offer 的延遲這些參數(shù)設置不當會出大問題。比如整車幾十個 ECU 同時上電如果大家都用 100ms 周期發(fā) OfferService網(wǎng)絡里瞬間鋪滿廣播報文ECU 的接收隊列被打滿連正常的應用消息都會被擠掉。我一般把 SD_INITIAL_DELAY 設成 0 到 2 秒的隨機分布讓節(jié)點錯峰發(fā)首包再把周期提到 1s 以上總線壓力立刻緩解。訂閱超時也很關(guān)鍵設太短會導致重試風暴設太長會讓客戶端等半天才重新訂閱業(yè)務鏈路中斷時間拉長。4.3 多網(wǎng)卡與多IP場景下的SD策略現(xiàn)在的域控制器基本都帶多個以太網(wǎng)口一個口接車機一個口接傳感器甚至一個口做環(huán)網(wǎng)測試。這時候 SD 的 OfferService 該從哪個網(wǎng)卡發(fā)出去直接決定這個服務在哪個網(wǎng)絡里可見。最穩(wěn)妥的做法是按網(wǎng)絡接口劃分獨立的 SD 實例每個接口各配一套 Offer/Subscribe 狀態(tài)表服務在哪個接口實例上注冊就只從哪個接口發(fā)公告。如果整個協(xié)議棧只有一個全局的 SD 控制器多網(wǎng)卡環(huán)境下很容易出現(xiàn)“服務想在車內(nèi)網(wǎng)可見結(jié)果通過另一個接口也發(fā)到了測試網(wǎng)”的尷尬。OS 默認會選擇路由表中優(yōu)先級最高的出口不會替你區(qū)分業(yè)務邊界。解決做法是給 SD 的發(fā)送函數(shù)傳入明確的源 IP 地址而不是讓它走系統(tǒng)路由配置層面要給每個網(wǎng)絡接口綁定獨立的服務的白名單。這一步在開發(fā)階段不驗證到了整車聯(lián)調(diào)時就是典型的玄學問題服務抓包能看到但客戶端就是連不上。5. SOME/IP開發(fā)避坑五個真實的坑與排查方法5.1 坑一字節(jié)序做反所有結(jié)構(gòu)體字段全部串位現(xiàn)象在開發(fā)板上跑服務端客戶端解析出來的 uint16 數(shù)值變成幾千倍錯誤字符串亂碼數(shù)組長度報出 0xFFFF 這種荒謬值。原因SOME/IP 標準規(guī)定大端序但多數(shù) SoC 和 PC 都是小端 CPU。開發(fā)時在 PC 上拼報文直接往內(nèi)存里按小端寫數(shù)據(jù)沒做轉(zhuǎn)換就發(fā)出去接收端按大端讀必然全錯。解決序列化層統(tǒng)一使用struct.pack(...)或htonl/htons這類字節(jié)序轉(zhuǎn)換函數(shù)所有數(shù)據(jù)進 Socket 之前先過序列化層業(yè)務代碼里不要到處手動轉(zhuǎn)。協(xié)議棧寫完后做一輪固定的解析冒煙測試拿一組已知的十六進制報文喂給反序列化函數(shù)打印每個字段的值和預期比對。發(fā)現(xiàn)字節(jié)序錯位只需要改序列化層一個文件即可。5.2 坑二Event高頻生產(chǎn)訂閱端一多CPU立刻被打滿現(xiàn)象服務端有一個 5ms 周期的電壓采樣 Event訂閱了 50 個客戶端運行時 CPU 使用率直接沖到 80% 以上。原因協(xié)議棧給每個客戶端都維護了一份獨立的序列化緩沖區(qū)和發(fā)送隊列Event 每生產(chǎn)一次就復制 50 份 payload 分別發(fā)送。生產(chǎn)頻率 200Hz客戶端數(shù) 50那就是每秒 1 萬次拷貝和發(fā)送。解決把單次序列化結(jié)果做成共享的只讀緩沖區(qū)所有訂閱端引用同一份 payload只在發(fā)送層按連接上下文加不同的頭部或復用同一個 UDP 目標地址。更進一步的方案是引入多播地址一個報文讓網(wǎng)絡層復制但車載網(wǎng)絡對多播支持參差不齊要確認交換機設備支持再上。我一般先在單播模式下共享 payload壓測發(fā)現(xiàn)瓶頸再評估多播。5.3 坑三TCP粘包和半包直接把反序列化打崩現(xiàn)象用 TCP 承載協(xié)議棧客戶端收數(shù)據(jù)時經(jīng)常解出長度不匹配的異常要么 buffer 不夠要么一個包解出來多好幾塊。原因TCP 是字節(jié)流協(xié)議recv返回的數(shù)據(jù)邊界跟 SOME/IP 報文邊界完全沒有對齊。一個完整報文可能分兩三次到達也可能三個報文粘成一個包到達。直接在recv的字節(jié)流上做反序列化等于瞎猜邊界。解決傳輸層必須自己維護一個接收緩沖區(qū)。每次收完字節(jié)先看緩沖里夠不夠 16 字節(jié)夠就解析報文頭拿到 Length 字段再根據(jù) Length8 判斷整個消息是否完整不完整就繼續(xù)等完整才從緩沖區(qū)里一次性切出這個消息。這個邏輯我一般用狀態(tài)機實現(xiàn)核心狀態(tài)就兩個等頭部、等 payload。粘包場景下處理完一個消息后緩沖區(qū)可能還剩字節(jié)要繼續(xù)按同樣流程切割直到不夠一個完整報文為止。5.4 坑四SD重試參數(shù)太激進整車網(wǎng)絡風暴現(xiàn)象一個節(jié)點剛啟動抓包軟件上瞬間刷出幾百條 OfferService 和 FindServiceECU 的網(wǎng)絡負載直線飆升連診斷工具都連不上。原因SD_OFFER_SERVICE_CYCLE_TIME 設成了 50ms初始延遲又設成 0整車幾十個節(jié)點同時啟動時全部在同一時間點瘋狂廣播形成廣播風暴。解決把 Offer 周期調(diào)到 1s 以上初始延遲按節(jié)點隨機錯開。更完善的做法是給 SD 配置指數(shù)退避重試策略連續(xù)幾次發(fā)送無響應后重試周期按 2 倍遞增加一個隨機抖動防止多個失聯(lián)節(jié)點同時恢復正常時再次同步風暴。配套檢查一下 SubscribeEventgroup 超時參數(shù)超時太短也會導致客戶端瘋狂重發(fā)訂閱請求。5.5 坑五自定義類型的長度字段位寬不足數(shù)據(jù)悄悄截斷現(xiàn)象業(yè)務自定義了一個結(jié)構(gòu)體里面有個數(shù)組上線后偶爾出現(xiàn)字段全部錯位但又不報錯的情況重啟后恢復過一陣又出現(xiàn)。原因自定義結(jié)構(gòu)體里數(shù)組長度字段只給了 8 位最大只能表示 255實際一次傳了 300 個元素長度字段回繞成 44反序列化時只讀 44 個元素剩下的字節(jié)被當成下一個字段解析后續(xù)內(nèi)容整體錯位。解決定義自定義數(shù)據(jù)類型前先按最大可能實例大小推算長度字段位寬。能直接用標準 32 位長度字段就用標準的別手欠去省那三個字節(jié)。如果已經(jīng)是 32 位仍然溢出那就不是位寬問題是業(yè)務數(shù)據(jù)體量本身就不適合這種傳輸方式需要改成分片或換其他傳輸通道。排查時先在協(xié)議棧里打印每個字段解析完后的偏移位置對比接口定義就能看到是哪個字段開始串位的。6. 進階用抓包驗證協(xié)議棧行為再壓出吞吐極限6.1 用抓包軟件驗證協(xié)議棧先從報文結(jié)構(gòu)開始查協(xié)議棧寫完第一件事不是上業(yè)務是抓包驗證報文結(jié)構(gòu)。我用 Wireshark 打開保存的 pcap過濾 SOME/IP 協(xié)議逐字段核對 Message ID、Length、Request ID。一個常見的低級錯誤是 Length 字段算錯抓包軟件經(jīng)常直接標紅一眼就能發(fā)現(xiàn)。不要只盯著業(yè)務層說“能跑通”要確認線上抓包里每個字段和協(xié)議規(guī)范完全一致。驗證序列化層更適合用單元測試構(gòu)造已知序列化結(jié)果的字節(jié)序列跑反序列化斷言每個字段的值再反過來構(gòu)造字段值跑序列化斷言字節(jié)序列一致。這樣協(xié)議層的修改能立刻通過回歸把錯誤擋住。6.2 吞吐量壓測的三條優(yōu)化路徑壓測工具可選現(xiàn)成的網(wǎng)絡壓測腳本或者直接用自己的協(xié)議棧寫個循環(huán)發(fā)包的小工具。重點看三個指標報文每秒處理數(shù)、單請求時延、CPU 占用率。優(yōu)化時按順序排查三條路徑第一是序列化開銷能復用的緩沖區(qū)不要每次新建序列化結(jié)果緩存下來給多個訂閱端共享第二是系統(tǒng)調(diào)用次數(shù)UDP 場景用 sendmmsg 這類批量發(fā)送接口把多次小包發(fā)送合并成一次系統(tǒng)調(diào)用第三是鎖競爭收發(fā)線程和業(yè)務線程之間的隊列如果頻繁加鎖在高頻小消息場景下鎖開銷會占掉三成以上 CPU改用無鎖環(huán)形緩沖或者按客戶端分散到不同線程。6.3 生產(chǎn)環(huán)境日志埋點定位問題要靠關(guān)鍵時刻我自己踩過一個教訓某協(xié)議棧上線后偶發(fā)超時一直查不到原因最后是在服務端入口和出口各加一行毫秒級時間戳日志才發(fā)現(xiàn)是業(yè)務實現(xiàn)里一個慢日志打印阻塞了處理線程。從那以后我養(yǎng)成了習慣協(xié)議棧的入口、出口、序列化前后各埋一個帶時間戳的日志點平時按 debug 級別關(guān)掉線上排查時動態(tài)打開。每個日志點帶上 Service ID、Method ID、Session ID 和消息長度這樣排查時能直接串起一次調(diào)用的完整鏈路。SOME/IP 本身并不復雜復雜的是它能搭出來的分布式調(diào)用鏈路。把字節(jié)序、報文邊界、SD 參數(shù)這幾個基本盤守住剩下的就是反復抓包、壓測、看日志的循環(huán)。希望這篇經(jīng)驗總結(jié)能幫你在寫協(xié)議棧的路上少踩幾個坑一次調(diào)通。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色播五月婷婷| 青青草Avb在线| 丁香五月激情性色郤| 色婷小说| 色色国产| 色婷婷大香蕉| 另类综合色| 婷婷月五天在线在线看| 亚洲成人网站在线| 丁香花狠狠婷婷亚洲中文字幕| 六月婷婷之青青草| 九九热中文| 99热传媒| 草草夜夜操| 免费看欧美成人A片无码| 五月婷婷六月丁香免费| 4438激情网| 一本到不卡高清DVD| 成人va视频| 蜜桃婷婷五月| 九九这里只有精品在线视频| 91精品久久久久久| 最新av在线观看| 丁香五月开心七月| 婷婷丁香91综合| 久久女婷| 久久思思热| 激情五月天小说| 99re这里只有精品视频6| 亚洲五月激情| 久久婷丁香五月| 五月色婷婷夜色| 国产AV一区二区三区最新精品| 人人干Av| 五月婷婷激清网| 精热在线综合网| 五月综合丁香婷婷| 五月综合丁香婷婷| 亚洲中文字幕av| 久久久27操| 日韩三级高清无码| 久久一品区| 欧美综合五月天婷婷tin| 日本久久99| 色五月成人| 五月综合婷婷久久在线| 99热这里精品| 五月天操逼网| 六月激情婷婷| 亚洲国产精品二二三三区| 色婷婷www| 激情啪啪五月| 色综合久久久久| 九九AV在线| 91人操人人人操人| 99热这里是精品| 激情婷婷六月天| 9久国产精品| 夜夜资源站| 婷婷五月丁香色综合| 日本操B视频| 久久er99| 99热超碰| 久热99视频在线观看| 日韩黄色中文字幕| 婷婷色六月| 婷婷成人在线| 99在线观看亚洲| 去干网av| 99视频网| 91丨九色丨丰满人妖| 久久99热免费最新版| 人人爱人人草| 99热这里只有精| 99re热视频这里只精品| 人人操大| 激情婷婷内射| 色五月丁香五月| 99热只有| 超碰日韩成人| 天天搞天天色综合| 婷婷天天综合| AA丁香综合激情| 五月丁香婷婷综合| 97艹| 欧日美女Va| 天天日人人| 激情五月婷婷老师| 综合激情视频| 久久亭亭电影| 狠狠肏综合网| 激情伊人| 丁香五月激情五月色综合| 日韩黄色AV无码| 亚洲中文字幕av| 热的国产,热的综合,热的有码 | 五月婷婷深深的爱| www.久久66| 天天婷婷色六月| 欧美色五月| 欧洲色色| 丁香伊人网| 五月情丁香色| 色婷婷AAA| 日本强伦片中文字幕免费看| 丁香五月婷婷激情小说| 99这里| 99色性爰网络| 久久在线大香蕉| 五月花综合网| 99re这里| 大香蕉婷婷丁香视频在线| 四色 爱 婷婷 精品 亚洲 五月天| 九月色婷婷| 亚洲精品性色| 色欲一区二区三区精品A片| 激情伊人网| 99在线观看免费精品视频| 99热这里只有免费精品| 97色吧| .comwww在线观看免费操| 99ri在线| 天天综合色丁香| 成人做爰高潮A片免费视频| 亚洲av成人一区二区电影在线| 99热午夜精品| 欧美激情xxxXX| 婷婷色五天| 久久婷婷丁香花综合网| 狠狠操天天操| 美女激情综合| 人人草人人爱手机视频看看 | 激情视频网址| 九九综合伊人| 91超级碰在线视频| 久热亚洲| 色爱99| 国产日产亚洲系列最新| 婷婷区日本| 伊人色综合久久久| 六月婷久久| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 丁香五月天欧洲在线| 婷婷五月色亚洲| 婷婷色中文字幕| 绿色小导航AV| 婷婷五月天综合网| 久久女人九九| 99热在线观看精品免费| 大香蕉丁香五月| 狠狠草天天草| 五月丁香| 日韩按摩二区| 精品欧美一区二区三区久久久| 岛国在线观看91| 插逼综合网| 色婷婷五月天不卡| 91在线97视频| 丁香五月婷婷超碰在线| 丁香五月性| a九九热www| 九九色综合九九色| 婷婷99丁香| 这里精品| 青996青| 综合一本道| 成人综合视频网址| 五月天婷婷丁香社区| 无码成人AAAAA毛片AI换脸| 丁香五月天AV在线| 超碰在线免费观看日韩| 综合婷婷五月丁香在线观看| 狠狠草网| 97人妻碰碰中文无码久热丝袜| 色欲天天综合| 久99精品视频| 久久伦乱| 五月天亚洲最大成人| 五月综合激情| 五月丁香六月婷婷手机无线| 亚洲精品网址| 九九热免费| aaaaa不卡| 五月婷六月| 婷婷丁香五月天综合AV| 国产精品99久久久久久久女警 | 另类丁香五月天区图| 色综合xx| 综合激情sV| 99免费在线视频| 91日综合欧美| 五月天啪啪啪| 天天狠天天狠| 操婷婷基地| 热99免费在线| 天天日夜夜夜操操操操| 色婷婷91| 色噜噜在线| 极品嫩草| 五月丁香色婷婷| 婷婷伊人激情婷婷| 日本毛片内射| 777精品久无码人妻蜜桃| 久久这里面只有精品视频| 天天爱天天天射AV| 婷婷五月天伊人网| 亚洲激情97五月天| 色婷婷基地在线| 激情五月天久久| 爱婷婷都市激情| 激情综合五月婷| 欧美私人家庭影院| 91婷色| 五月天婷婷自拍图片在线观看| 综合另类视频| 婷婷五月六月丁香综合| 精品人人操| 亚洲精品字幕| 亚州日本欧州韩美高青高潮一| 激情视频网址| 99热这里只有精品国产首页| 久久九九怡红院| www.婷婷com| 国产亚洲精品久久一区二区三区| 成人电影在线免费试看| 99热香港| 婷婷丁香六月天| 婷婷丁香五月亚洲| 91视屏在线观看com.wwwvv| www.99精品视频| 亚洲精品亚洲人成人网| 夜夜 操无码| 婷婷五月综合激情小说| 天天日日人| 大胆伊人久久| 亚洲AV成人精品网站在线播放| 性生活久久人妻| 五月天伊人综合| 天堂在线观看视频| 色婷婷丁香A片区毛片区女人区| 日韩国产在线精品| 99热这里只有精品86| 色综合久久88色综合天天99| 丁香五月婷婷影院| 亚洲日韩操B| 爱草视频在线| 激情av在线| 亚洲第一成人无码A片| 伊人久久艹| 这里只有免费的精品| 中文AV在线播放| 国产成人AV| 九九精品综合| 狠狠干综合网| 天天综合天天做天天综合| 成人AV综合在线| 99热8| 色五月激情婷婷| 婷婷五月天成人在线视频| 亚洲久久天堂| 亚洲精品久久久久久久久久吃药 | 亚洲va日| 99精品久久久久久久| 天天天天操| 激情婷婷六月天| 久久这里只有精品视频26| 四月婷婷五月丁香| 991自拍视频| 激情综合五月丁香| 人妻久久久久久久| 情色婷婷五月天| 激情五月天免费视频| 久久激情五月| 激情图片五月天| 79色色| 成人五月天色天堂| 五月丁香久久| 久久九九视频网站| 亚洲人妻AV| 任你干嘛免费视频播放| 狠狠狠狠狠狠草| www.99视频| av色婷婷| 91婷婷色五月| 色婷久九| 五月丁香激情片| 五月天激情黄色网址| 亚洲国产精品VA在线看黑人| 免费无码毛片一区二区A片| 99热最新| 丁香五月天社区| 美女激情综合| 香蕉综合在线| 婷婷色婷婷| 婷婷五月天Av| 婷婷五月激情欧美| 99操逼| 日韩超碰在线| 五月天久久婷婷| 婷婷九月综合| 久久综合丁香激情五月| 久久久久这里只有精品| 99热官网| 少妇高潮呻吟A片免费看软件| 久久精热| 久久综合影院| www.色综合.com| 五月色婷婷综合| 成人五月天视频播放| 婷婷天天综合| 色丁香影院| 婷婷免费视频| 99色视| 欧美日韩99| 综合色99| va中文资源在线观看| 丁香婷婷大香蕉| 三级三久久线久久99久目本WW| 五月天丁香婷婷视频网址| 97很鲁在线视频| 熟妇内谢69XXXXXA片| 欧洲色| 精国产品一区二区三区A片| 九九在线精品| 97人人操人人插| 色五月婷婷丁香凹凸| 91人妻人人操| 成人丁香色| 九九色图| 麻豆123区| 日日操,夜夜爽| 色丁香婷婷| 国产色五月婷婷| 久久久性爱视频| 五月婷婷免费在线视频| 天天射综合网天天插| 五月丁香 啪啪啪| 五月婷婷丁香色播网| 婷婷色av| 亚洲午夜AV| 国产在这里只有精品| 九九成人| www.com色播五月天| 五月丁香婷婷啪啪网| 欧美色色色色色色色色色色| 色视五月天婷婷| 精品色色色| 婷婷五月天天爽| 天天操综合网| 成人 九九九九| 久久久性爱视频| 丁香色五月婷婷17C| www.十八禁不禁AV.com| 成人av在线网址| 六月婷婷开心| 日韩无码乱轮| 天天操天天爽天天爱| www.深爱激情| 五月香婷婷| 午夜爱爱网站| 国产人妻777人伦精品HD| 婷婷五月天VI| 51XX午夜影福利| 激情五月天在线| 色婷婷婷婷| 9 1超碰九色| 九九综合影音先锋| 婷婷色中文字幕| 婷婷激情丁五月| 中文字幕综合| Aaa久久| 久久久久8888| 亚洲久热无码| 日韩999| 激情五月婷婷她| 丁香五月激情宗合| 99ri精品在线| 蜜乳AV成人| 久久综合婷婷| 天天操天天干天天日| 97婷婷色| 99精品久久久| 久久久这里有精品| 天天日中文| 九九久久综合| 五月天操逼网| 九九激情视频| 九九热视频思思| 婷婷五月成人| 日本系列_4页_777FP| 婷婷激情网五月天| 伊人五月天| 99超碰在线观看| 天天成人综合视频| 色综合色色色| 九月婷婷人人操人人舔人人爱| 美国不卡视频| 九九视频这里只有精品| 男人的天堂婷婷色五月| 二人电影免费版在线观看| 五月狠狠| 五月丁香六月婷婷的女人| 五月丁香六月婷婷亚洲激情综合| 丁香六月婷婷综合在线| 五月综合激情久久| 99亚洲精品视频| 亚洲第二AV| 婷婷五月丁香综合激情小说| 99热99| 色情久久久| 日日色综合| 日日操夜夜擼| 日操五月婷| 97色婷婷| 99爱免费在线观看| 99热久| 五月天啪啪| 成人视频在线免费播放| 久久综合色五月| 热99在线| 大香蕉人人人| 丁香婷五月天开心六月| 丁香五月综合久久综合| 夜夜资源站| 嫩草视频观看| 狠狠色噜噜狠狠狠狠综合| 91操在线观看| 天天综合 99久久婷婷| 日噜噜色| 五月天婷婷丁香| 色婷婷播放| 一本综合丁香日日狠狠色| AA片在线观看视频在线播放| 不卡影院午夜理论片| 搡BBBB搡BBB搡五十| 欧美久久九九| 九九免费精品| 99热久97| 91精品婷婷国产综合久久| 99热新网址| 玖玖爱综合网| 午夜大香蕉| 色综合色色| 天天艹夜夜爽| 色网站9| 深爱激情婷| 毛v一区二区视频| 五月天婷婷成人网| 婷婷五月天色色| 伊人色综合网| www.色婷婷。com| 无码免费人妻A片AAA毛片西瓜| 五月天基地| 天天弄天天操| 欧美情色电影一区二区| 久热视频这里只有精品| www.婷婷,com| 91超级碰| 26UUU亚洲欧美| 婷婷丁香社区| 丁香六月激情综合| 婷婷开心深爱五月天| 91操人| 就去涩涩丁香五月天| 99草在线免费观看视频| 激情综合网址| 亚洲丁香五月美女| 丁香五月手机视频| 色色色综合| 天天五月情| 免费播放片大片| 激情五月天综合网| 拳交大逼| 天天做天天视天天谢| 99婷婷精品推荐在线视频| 99久久玖玖| 日本色婷婷| 国产婷婷婷| 五月天婷婷丁香导航| 97人人射| 五月丁香A片| 色欲av伊人久久大香线蕉影院| 久人操| 国产美女精品| 天堂爱啪啪| 亚洲成av人影院| 五月婷婷真爱激情网| 色啪影院| 日日操无码| www.yw尤物| 久热A| 五月丁香啪啪啪啪| 婷婷中文综合网| 五月天激情小说网| 五月婷网站| 婷婷五月激情综合| 操人精品| 婷婷色色欧美综合网| 色5月婷婷色| 丁香五月综合在线播放| 亚洲成人免费电影| 亚洲成片在线观看| 91久女| 九九综合久久| 久久婷婷视频| 五月丁六月婷| 在线视频色五月| 丁香久久九九99| 婷婷色综合| 激情六月天| 六月丁香成人网| 综合激情五月四射婷婷| 久久婷丁香五月| www,setingting| 香蕉婷婷| 亚洲99综合| 99er久久| 99久久婷婷五月天| 丁香六月天婷婷色| 综合激情开心五月| 久久五月综合| 91色色色18| 97丁香视频| 中文字幕丰满孑伦无码专区| 思思精品视频| 色综合色色| 丁香五月婷婷视频| 亚洲日日操| 精品人妻久久久| 伊人五月天综合网| 99人人干| 日韩一级A片黄色| 五月丁香婷色| 大香AV| 色婷综合| 99艹精品在线观看| 欧美97超碰| 色婷婷基地 | 色五月激情五月天| www久久久| 人妻精品一区二区三区| 六月丁香婷婷综合在线| 日韩无码色色| 99久久6| 99er精品视频| 五月天涩涩| 婷婷五月天综合色| jiqingliuyuetian| 五月综合在线| 婷婷欧美激情综合| 爱久综合| 久久久这里有精品| 在线不卡视频| 亚洲蜜桃精久久久久久久久久久久| 99热无码首页| z色五月播播久久| 99热亚洲精品| 97av在线视频| 激情综合亚洲| 国产91资源在线| 婷婷五月天VI| 婷婷日本色| 五月丁香五月丁香五月丁香五月丁香91| 色五月婷婷五月天| 无码免费人妻A片AAA毛片西瓜| 殴美激情综合网| 久久婷婷五月天懂色| 激情五月综合网| 色播播五月天| 综合aV在线| 碰99在线| www.色9| 久久99视频| 婷婷五月丁香综合亚洲 | 婷婷丁香五月天中文字幕| 久久99久久99精品免观看软件 | 激情性爱五月天网页| 91操片| 欧美色五月| 人妻熟人中文字幕一区二区| 色天使色综合| 五月天婷婷基地综合网| 亚洲小视频免费观看| 五月天婷婷色播综合在线| 丁香花五月天| 天天操婷婷| 深爱开心激情| 伊人免费视频9| 大香蕉九九操| 丁香五月色色色色| 狠狠操性爱av| 成人国产综合| 国产真实乱了老女人视频| 婷婷久久天堂网| 99操久久| A A色色| 天天拍天天操| 色噜噜婷婷| 五月丁香综合网| 人人综合久| 六月丁香五月激情网| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 俺去也综合| 日韩AV免费电影在线播放| 久久久久五月丁香| 99免费成人网| 婷婷婷婷婷婷婷婷| 99在线免费视频| 午夜微拍福利| 精品99这里有| 五月丁香六月婷婷亚洲综合| 激情五月久久| 色噜久| 色婷婷五月天激情久久| 五月婷婷丁香五月 | 婷婷中文字幕| 日本A片一区| www,五月天com| 日本va欧美va欧美va| 婷婷综合激情| 五月天色色色色色| 婷婷狠狠五月综合| 26uuu| 男女激情久久| 婷婷欧美偷拍综合| 五月婷婷成人| 色色色色色九九九九九| 丁香六月婷婷综情欧美| 99热久久最新地址| 国产激情久久| 99久久五月天| 淫水导航| 国产一区二区三区影院| 色九亚洲| 亚洲av骚货| 乱精品一区字幕二区| 9l视频自拍9l视频自拍九色学生| 亚洲婷婷视频| 日韩在线观看亚洲| 视频一区二区在线| 色视五月天婷婷| 亚洲精品视频在线| 在线观看av网站| 五月播播| 亚洲图片 丁香婷婷| 五月丁香激情五月天| 99久久综合网| ′久久99一| 久久欧洲综合网| 99精品久久| 色婷婷激情| A久久| 亚洲123区高清入口| 五月丁香啪啪激情| www.色婷婷| 激情五月婷婷丁香六月| 噜噜噜狠狠色综| 久色88| 五月天婷婷爱| 九九久久腿| 狠狠狠五月婷婷六月丁香| 五月丁香色综合| 国产.亚洲.欧洲视频在线| 色综合色色色| 秋霞AV吧| 五月婷综合网| 色五月婷婷成人| 综合久久五月| 五月婷婷久久大片| 婷婷深爱网| 大香蕉伊人丁香五月| 色五月色综合| 性爱激情五月| 激情五月天无人视频在线| 丁香88AV五月婷婷| 综合综合网| 婷婷丁香中文字幕| 五月婷婷手机在线| 精品五月花| 另类激情首页| 久久久久8888| 婷婷午夜| av婷婷丁香 六月| 五月天com| 色五月激情问网站| av高清无码| 五月婷婷六月婷| 九九九AAA热视频| 天天舔天天操| 久热91精品| 色色色色色色色色五月先| 五月婷婷激情久久| 99网| 日在线V视频在线播放| 色色欧美色色色| 华人在线免费| 五月丁香色婷婷色| 五月天婷婷激情| 精品99爱免费视频在线观看 | 婷婷丁香五月社区亚洲| 五月天色五月| 亭亭五月丁香综合欧美| 内射在线CHINESE| 婷婷丁香五月综合激情小说| 三级毛片7979| 激情综合一| 亚洲AAAA网| av在线不卡播放| 97久久人人| 26uuu四色| 2015在线中文字幕| 99精品性爱| 91人人爽狠狠狠| 婷婷五月花| 五月天色婷婷基地| 欧美天堂久久| 大地9中文在线观看免费高清| 日本久久99| 三级片AAA久久久AAA久久久AAA | 高清一区二区三区日本久| 激情婷婷丁香色五月| 婷丁香五月天| 国产成人网址| 久久久久久人妻久久久久久久久久人妻久久久 | 色一情一乱一乱一区91Av| 欧美99热| 色婷婷综合影院| 婷婷色婷婷| 日本色五月婷婷| 激情婷婷内射| 中文字幕婷婷在线| 99在线观看| 色爱亚洲| 九色PORNY9l原创自拍| 五月丁香激情婷婷综合| 免费婷婷| 91av成人| 婷婷激情五月| 日日操夜夜撸| 欧美丁香五月天| 91久久久久久| 九九热这里只有精品6| 美女丁香五月天| 五月综合丁| av九九| 激情九色| 婷婷精品性性性性性性性| 国产精品成人在线| 久久一伦| wwwav大香蕉| 亚洲色综合| 九九热在线视频观看| 骚五月婷婷| 五月天婷婷激情六月久久 | 久草热在线视频| 色色色.COM| 成人美女网| www.婷婷六月天| 五月天婷婷婷| 婷婷六月丁香久| 久久五月天免费网站| 日韩另类在线观看| 99愛国产| 色99超碰| 亚洲字幕AV一区二区三区四区| 人妻熟妇国产精品| 99日视频在线| 久久99网址| 香蕉99网| 色色色色色日韩午夜激情 | 天天综合插插| 另类专区在线| av第一二区| 激情五月最新网址| 精品亚洲国产成AV人片传媒| 中文字幕在线观看视频www| 五月丁香色综合| 亚洲五月色| 五月天自拍网| 婷婷丁香色五月天久久88| 国産精品| 五月天丁香成人社| 综合久久伊人| 99精品综合在线| 亚洲成人AV电影在线| 日韩AV大全| 色综合久久天天综合网| 亚洲视频图片婷婷五月| 丁香五月停停av| 热99这里只有精品视频| 思思热性操| 无码G高清天| 五月丁香啪啪激情| 99久在线精品| 婷婷伊人久久| 丁香色色网| 99热婷婷| 五月丁香六月久久| 全亚洲最大的婷婷五月天网站COM| 欧美情色一区| 播丁香五月婷婷欧美| 中文字幕乱码亚洲精品一区| 8050一级网| 久久九九激情五月天 | 婷婷五月天激情丁香| 999热成人在线综合网| 综合色色婷婷| 99日韩网站| 夜夜做夜夜愛| 久热这里只有精品在线| 色色网五月激情| 淑女丝袜bi操逼123| 99热只有这里有精品| 丁香五月天激情综合| 99九九在线观看免费| 综合色播| 国产午夜精品一区二区三区嫩草| 久久99婷婷| 九九色热| 免费视频无码| 9视频在线成人网站| 最熟少妇乱码| 婷婷爱爱蜜臀天天操| 激情综合色网| 思思综合热| 五月婷婷丁香综合网| 精品无吗va视频免费观看| 色丁香影院| 噜一噜在线| 97操视频| 国产成人精品一区二三区熟女在线| 夜夜 操无码| 国产一级片| 热99玖玖99玖玖99九九| 狠狠爱婷婷五月天| 小色小蛇伊人婷婷色香五月| 色五月丁香五月| 五月天婷五月天综合网在线观| 色婷婷狠狠爱| 色五月久久成人婷婷| 婷婷无码视频| 日韩狠狠色| 国产精品涩涩涩视频网站| 91五月花丁香| 婷婷婷久久久| 九九热只有这里是精品| 色婷婷五月中文字幕在线dvd| 26UUU精品一区二区Com| 久久小片| 9l视频自拍9l九色成人| 久久色六月| 亚洲一级AV在线免费播放| 天天色播| 影音先锋人妻出差| 79精品视频| 亚洲精品视频在线播放| 欧美性生交A片免费看| 日日噜噜久久婷婷五月天| 亚洲成人免费在线| 战争与艾拉电影免费观看| 激情综合无码| 婷婷中文字幕欧美| 99色色| 五月天全国最大成人网| 中文字幕av在线播放| 国产精品久久久久久妇女6080| 99操逼| 99视频极品在线香蕉| 91碰碰碰| 五月丁香花激情啪啪网| 日日骑夜夜撸| 久热免费| 少妇出轨做爰高潮A片| 久久婷婷东京热大香樵| 欧美激情 日韩无码 婷婷 五月天| 国产99热| 色婷婷瘦婷婷日韩| 99这里只有精品视频在线| 丁香五月天亚洲视频| 午夜性做爰电影| 日本99婷婷| 狠狠肏综合网| 亚洲午夜AV| 人人操91色| 开心五激情网| 久久综合人妻| 五月丁香婷婷综合视频| 五月永久激情| 久九色| 99热日| 五月丁香无码| 天天操综合网| 无码人妻电影| 久久只有18视频| 国产毛片精品一区二区色欲黄A片| 丁香五月婷婷社区| 亚洲人成网亚洲欧洲无码久久| www.十八禁不禁AV.com| 婷婷五月天色播| 婷婷五月天情色| 五月丁香婷婷激情澎湃四射| 色五月大香蕉| 超碰av在线| 99视频这里只有久久精品| 深爱五月婷婷| 99热这里有精品| 色五月激情| 五月天综合色| av在线免费播放观看| 蜜桃婷婷丁香五月天狠狠久久综合| 欧美激情综合色综合色| 亚洲乱码日产精品BD| 婷婷色激情网| 五月色网| 亚洲99综合| 五月丁香激情综合啪啪| 一级韩国产精品毛| 婷婷五月美女直播| 精品热青草| 三级成人网站| 天天射影院| 亚洲丁香婷婷五月天综合色| 五月伊人网| 影视av久久久噜噜噜噜噜三级| 五月色导航| 激情五月久久| 99亚洲综合| 日本三级韩三级99久久| 99 热国产在| 九九热这里| 色五月欧美| 99热精品在线| 香焦网五月天| 色久丁香五| 日韩精品电影| 丁香六月情| 久久九九九九| 亚洲成人超碰| 丁香五月欧美激情| 激情婷婷五月天| 丁香蜜臀黄色婷婷五月天| 丁香久久综合| 亚洲精久久| 九九综合久久| 呦呦v线| av首页在线| 另类激情中文| 九色激情网| 日韩成人中文字幕| 99五月丁香丁| 五月天激情婷婷| 欧美丁香六月激情视频| 国产成人精品一区二区三区视频 | 9久热精品在线视频| 婷婷五月天少妇| 婷婷丁香日韩五月| 97涩涩丁香五月天| 激情AV网| 五月婷婷丁香瑟瑟视频| 97人妻碰碰碰久久| 九热精品| 天天操夜夜啊| 日本V在线观看不卡视频网站| 99五月丁香丁| 五月婷视频| 婷婷色情六月| 91婷婷伊人牛牛| 五月丁香综合激情| 成人网站免费sxj| 中文字幕综合色| 能看的av| 丁香五月综合高清在线| 国产精品第一国产精品| 79精品视频| 九洲一级A片| 91久久婷婷| 丁香五月第四色88| 狠狠爱夜夜| 超碰免费人妻| 色五月在线| 91日综合欧美| 成人日韩欧美| 开心五月丁香啪| 狠狠色丁香久久婷婷综合五月| 五月婷婷网五月在线| 97久久人人| 丰满少妇猛烈A片免费看观看| 欧美色骚婷婷五月天| 久久婷婷九月国产精品| 日韩啊啊啊| 九热在线这里有精品6| 精品国产a| 五月香婷婷| 婷婷五月在线免费| av电影在线播放| 九九激情网| 日本熟女一区二区| 五月大香蕉| 99五丁香月| 91九色国产| 激情激情激情网| 激情久久久久久| 五月天大香蕉av| 久操大| 日韩综合大黄| 色播婷婷五月天| 久久九网| www.夜夜操| 亚洲AV色婷婷人禽五月天| 久碰视频| 激情久久综合网| 日韩九区| 天天拍夜夜爽日日| 一级精品999WWW| 久久大大香| 小视频久久久aaa| 超碰国产AV| 天天色天天干天天插| 色婷婷狠| 99re8热精品免费视频| 色999;丁香五月| 五月丁香人妻| 热久久99视频| 久久久久久久丁香五月天婷婷| 国产精品18久久久| 激情综合99| 99r这里| 第二色AⅤ| 99热加勒比| 丁香深五月婷婷| 99无码| 日韩啪啪网| 婷婷六月天激情| 婷婷激情五月综合丁| 丁香激情五月天| 久草热8精品视频在线观看 | 中文婷婷狠狠| 来吧亚洲综合网| 婷婷五月色网| 亚洲激情亚洲激情 | 99视频九九热| 丁香婷婷五月基地| hd五月婷婷在线| 丁香五月色综合色播五月| 艹色18p| 激情性爱五月天网页| 丁香婷婷影院| 亚洲午夜AV| 五月综合在线| 另类激情网| 色色网五月激情| 久热视频这里只有精品68| 成人必爱视| 99综合视频一体| 伊人成综合五月婷婷| 婷婷无五月无码视频| 三男玩一女三A片| 九月丁香| 91丨九色丨东北熟女| 婷婷丁香成人| 五月综合激情| 操99| 激情综合色| 99色天堂| 色欲天天综合网| 婷婷色六月| 色播五月丁香| 色欲久久综合| 久碰婷婷视频| 婷婷五月大香蕉| 久9无码视频| 色私五月婷婷| 日韩欧美成人片| 91九色精品| 久久婷丁香五月| 超碰9| 色婷网| 99精品在线观看视频| 五月丁香久久久久| 91干| 99操碰| 六月激情婷婷| 色99色| 国产精品久久久久久久久久| 五月婷婷激情综合| 一区二区三区视频| 99激情| 少妇被下春药玩弄A片| 99国产在线精品视频| 色色色色色色综合网| 超碰2021| 国产亚洲精品久久久久苍井松| 亚洲欧美婷婷五月色综合| 久久久婷婷| 五月婷婷色播| 丁香五月五月婷婷欧美大香蕉| 啪啪啪综合网| 国产成人网站在线观看| 亚洲第一成人无码A片| 亚洲久久天堂| 91日精品| 97碰超级人人看| 五月天婷婷六月激情网| 婷婷丁香六月影视| 色五月婷激情| 天天爽夜夜操| 婷婷五月丁香基地| 少妇伦子伦精品无吗| 99热色综合| 色色色五月婷| 人人干天天舔| 天天日夜夜夜操操操操| 色欲天天综合| 天天搞天天色综合| 日本啪啪网| www.久久久久| 午夜伊人大香蕉| 中文字幕成| 人妻性爱av网站| 开心五月天激情| 99综合自拍| 天天插天天射| 日韩精品呦呦va| 亚洲成人av在线| peg 2区三区四区的| 狠狠操性爱av| 99热久草| AA片在线观看视频在线播放| 色综合99色| 九九aV| 99re这里只有精品首页| 99热精品在线播放| 亚洲高清在线| 曰韩五月丁香色婷婷无码| 午夜成人综合| 婷婷丁香五月精品| 丁香激情五月| 另类少妇人与禽zOZZ0性伦| 亚洲图色五月天| 思思热闹这里只有精品| 天天天天天天噜| 激情性爱五月天| 久久精品A片777777| 97干在线看| 五月激情婷婷开心五月| 五月婷婷色激情| 激情综合婷婷| 亚洲中文字幕AV在线| 日本毛片内射| 91免费在线视频6| 婷婷六月激情| 中文字幕丰满孑伦无码专区| 五月婷激情影院| 美女100%露全身无挡网站| 九色PORNY自拍成人精彩视频| 日本一道久久| 九色在线五月婷婷网址| 如何安全看伊人婷婷| 综合五月网| 99精品视频在线观看| 日本操碰碰| 26uuu另类亚洲欧美日本一| 欧美色色色色色色| 婷婷色情 | 五月天丁香六月综合| 超级碰碰91| 伊人丁香五月天丁香在线婷| 成片免费观看视频大全| 五月天播播中文字幕| 91紱請| 婷婷五月中文在线| 97碰超级人人看| 日韩AV一区二区三区| 五月婷丁香久久久| 丁香五月人妻| 五月综合丁香婷婷| xx综合网| 99热一区| 六月丁香中文字幕| 99re这里只有精品在线观看| 九九热精品| 久久9精品| 天天爱天天秀天天做| 欧美日韩成人综合9| 精品九九视频| 久久机热/这里只有精品| 91精品丝袜久久久久久久久粉嫩| 99惹在线精品免费观看| 在线另类视频| 婷婷情色开心五月天99| 婷婷在线观看五月天在线视频| 天天做 天天爱| 江苏少妇性BBB搡BBB爽爽爽| 噜噜噜狠狠色综合| 色色五月婷婷久久| 9一精品视频观看| 五月色欧美| 97色婷| 婷婷五月天视| 丁香六月五月天| 超碰在线人人| 国产午夜精品一区二区| 变态另类色图| 99亚洲色| 五婷婷综合网| 激情五月婷婷色播网| 国产AV一区二区三区日韩| 婷婷欧美偷拍综合| 日本色五月| 九九性视频| 激情综合自拍五月婷婷色五月| 五月婷婷六月奇米网丁香| 女人高潮内射99精品| 五月丁香六月婷婷免费| 五月天婷婷综合网| 欧美色骚婷婷五月天| 第九色区av天堂| 99热精品少| 中文字幕丰满孑伦无码专区| 538久久| 日韩人妻AV在线| 激情 婷婷 插| 欧美激情综合色综合啪啪五月| www.maotanji.com| 91九色视频在线观看| 99狠狠| 国产成人网站在线观看| 亚洲区视频| 国产精品成人网址| www,色中色| 超碰日韩成人| 日本色色视频| av免费在线网站| www.91婷婷| 91人妻人人做人碰人人爽九色| 中文无码精品一区二区三区| 天堂AV在线看| 久久久久久久久久久-久五月天婷婷| 激情综合五月婷| 91丨九色丨大屁股| 婷婷六月插屄激情| 丁香五月亚洲综合丝袜| 五月天激情网页| 婷婷干| 五月婷婷亚洲色视频| 超碰97干| 久久亚洲天堂| 97碰碰人人| 激情内射人妻1区2区3区| 丁香色五月婷婷91桃色| 欧美成人精品三区综合A片 | 熟妇人妻中文字幕无码老熟妇| 变态另类9| 六月丁香网| 日逼免费视频 | 色哟哟www| 人人播| 新激情五月天色播| 91热网址| av色色国产| 婷婷久久婷婷色五月| 玖玖色综合色| 激情网五月天| 婷婷五月丁香花综合| 中文字幕在线日亚州9| 天天五月情|