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

ARTICLE DETAIL

資訊詳情

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

UDS協(xié)議棧開(kāi)發(fā)實(shí)戰(zhàn):車載ECU診斷的核心機(jī)制與集成避坑指南

UDS協(xié)議棧開(kāi)發(fā)實(shí)戰(zhàn):車載ECU診斷的核心機(jī)制與集成避坑指南 做了這么多年車載ECU軟件開(kāi)發(fā)UDS協(xié)議棧幾乎是每個(gè)項(xiàng)目都繞不開(kāi)的坎。每次新項(xiàng)目啟動(dòng)團(tuán)隊(duì)里最常問(wèn)的一句話就是“這次用誰(shuí)家的診斷?!?。這問(wèn)題看著簡(jiǎn)單回答起來(lái)卻特別費(fèi)勁。說(shuō)一個(gè)UDS協(xié)議?!翱孔V”遠(yuǎn)不是它能響應(yīng)“0x10 00 00”這種標(biāo)準(zhǔn)會(huì)話切換那么簡(jiǎn)單。UDS協(xié)議棧的本質(zhì)是把診斷儀與ECU之間那一來(lái)一回的診斷語(yǔ)義、狀態(tài)遷移、超時(shí)節(jié)奏和異常恢復(fù)全部處理干凈而且要在臺(tái)架上測(cè)試不出錯(cuò)、產(chǎn)線上刷不掛、4S店里查得快。這篇文章我不想逐條抄ISO 14229規(guī)范而是想結(jié)合我自己的真實(shí)項(xiàng)目經(jīng)歷聊聊UDS協(xié)議棧放在整車環(huán)境里到底承擔(dān)什么角色、哪些核心機(jī)制決定它靠不靠譜、集成過(guò)程中最常見(jiàn)的坑有哪些。不管是準(zhǔn)備選型、正在集成還是打算自己寫一套的同行應(yīng)該都能從中找到點(diǎn)參考。1. UDS協(xié)議棧放在整車環(huán)境里究竟承擔(dān)什么角色1.1 一條診斷消息從診斷儀到ECU的完整旅程很多剛?cè)腴T的朋友會(huì)把UDS協(xié)議棧理解為“一串處理函數(shù)”這個(gè)理解太窄了。一條診斷請(qǐng)求從診斷儀發(fā)出到ECU給出響應(yīng)沿途要經(jīng)過(guò)好幾層診斷儀應(yīng)用層構(gòu)造UDS報(bào)文比如“讀取ECU當(dāng)前故障碼”的0x19服務(wù)請(qǐng)求然后走到傳輸層如果數(shù)據(jù)長(zhǎng)度超過(guò)單幀CAN報(bào)文能承載的8字節(jié)就需要按ISO 15765-2把數(shù)據(jù)拆成多幀發(fā)送這就是常說(shuō)的CAN TP報(bào)文通過(guò)CAN總線到達(dá)ECU的CAN控制器觸發(fā)接收中斷驅(qū)動(dòng)層把幀收進(jìn)來(lái)CAN TP模塊完成重組再把完整的UDS數(shù)據(jù)交給協(xié)議棧核心解析。UDS協(xié)議棧真正負(fù)責(zé)的就是從“拿到完整應(yīng)用層請(qǐng)求”到“返回完整應(yīng)用層響應(yīng)”這一段。它要判斷服務(wù)標(biāo)識(shí)符是否支持、子功能是否合法、當(dāng)前會(huì)話是否允許執(zhí)行、安全等級(jí)是否足夠、參數(shù)長(zhǎng)度是否匹配然后調(diào)用對(duì)應(yīng)的服務(wù)處理函數(shù)最后把響應(yīng)按同樣的路線傳回去。如果這臺(tái)ECU里面還跑著RTOS那么協(xié)議棧還要考慮消息隊(duì)列從中斷上下文到任務(wù)上下文的切換如果ECU同時(shí)控制多個(gè)總線協(xié)議棧還要能感知到請(qǐng)求是從哪條總線來(lái)的響應(yīng)就該回到哪條總線。這些聽(tīng)著瑣碎但任何一處處理不當(dāng)都會(huì)變成真實(shí)路線上“偶發(fā)無(wú)響應(yīng)”的疑難雜癥。1.2 產(chǎn)線、售后、法規(guī)三個(gè)典型場(chǎng)景對(duì)棧的要求不一樣同一個(gè)UDS協(xié)議棧在不同場(chǎng)景下被“考驗(yàn)”的點(diǎn)是完全不同的。產(chǎn)線刷寫場(chǎng)景要求的是高吞吐和強(qiáng)實(shí)時(shí)。刷寫B(tài)ootloader時(shí)診斷儀會(huì)連續(xù)不斷地發(fā)送0x36請(qǐng)求下載固件每一包數(shù)據(jù)ECU都要盡快寫入Flash而且要通過(guò)CRC校驗(yàn)、合法性校驗(yàn)。這個(gè)場(chǎng)景下協(xié)議棧不能頻繁丟幀不能因?yàn)檎{(diào)度優(yōu)先級(jí)問(wèn)題導(dǎo)致連續(xù)幀接收超時(shí)。售后診斷場(chǎng)景要求的是功能覆蓋和穩(wěn)定性。維修工用診斷儀讀故障碼、做執(zhí)行器測(cè)試、標(biāo)定傳感器可能一整天都在反復(fù)切換會(huì)話、反復(fù)做安全訪問(wèn)。這時(shí)候如果安全訪問(wèn)嘗試計(jì)數(shù)偶爾出錯(cuò)或者會(huì)話切換后服務(wù)可達(dá)性狀態(tài)沒(méi)復(fù)位就會(huì)讓維修工誤以為ECU壞了。法規(guī)檢測(cè)場(chǎng)景也就是我們常說(shuō)的OBD相關(guān)服務(wù)要求的是嚴(yán)格符合排放法規(guī)規(guī)定的服務(wù)集合和報(bào)文時(shí)序。這一塊兒診斷儀通常是法規(guī)認(rèn)證的設(shè)備它會(huì)按照固定的順序輪詢服務(wù)協(xié)議棧多回了不該回的數(shù)據(jù)、少回了某個(gè)DTC狀態(tài)位都可能導(dǎo)致檢測(cè)失敗。我在評(píng)估一個(gè)協(xié)議棧的時(shí)候第一件事就是拿這三個(gè)場(chǎng)景分別過(guò)一遍。不是說(shuō)產(chǎn)品要同時(shí)滿足三條產(chǎn)線才叫靠譜而是說(shuō)協(xié)議棧的對(duì)外表現(xiàn)必須能適配不同應(yīng)用策略而不是寫死了只為一套流程服務(wù)。1.3 正常路徑誰(shuí)都能做異常路徑才見(jiàn)真章我見(jiàn)過(guò)不少協(xié)議棧演示Demo做得花里胡哨正常的0x10、0x22、0x27請(qǐng)求響應(yīng)全都沒(méi)問(wèn)題測(cè)試報(bào)告拉出來(lái)綠油油一片。但真正把它跑進(jìn)一個(gè)復(fù)雜ECU項(xiàng)目之后問(wèn)題才開(kāi)始冒出來(lái)。所謂異常路徑包含這樣幾類診斷儀在ECU處理前一個(gè)請(qǐng)求還沒(méi)結(jié)束時(shí)又發(fā)來(lái)了新的請(qǐng)求多幀診斷報(bào)文中間斷了一幀后面又續(xù)上了一個(gè)不完整的首幀兩個(gè)診斷儀同時(shí)通過(guò)功能尋址廣播訪問(wèn)ECU安全訪問(wèn)密鑰校驗(yàn)失敗連續(xù)多次刷寫過(guò)程中地址超出了合法范圍。這些情況在ISO 14229里都規(guī)定了明確的行為但實(shí)現(xiàn)協(xié)議棧的人有沒(méi)有把每條都做到位測(cè)試的人有沒(méi)有把這些工況都測(cè)進(jìn)來(lái)直接決定了你拿到的棧是“演示級(jí)”還是“量產(chǎn)級(jí)”。我后來(lái)甚至習(xí)慣先不做正向功能驗(yàn)證上來(lái)就故意發(fā)錯(cuò)報(bào)文、亂切會(huì)話、超時(shí)中斷看協(xié)議棧的“抗打擊能力”。抗得住再談別的。2. 會(huì)話、安全訪問(wèn)和傳輸時(shí)序決定協(xié)議棧成色的三塊硬骨頭2.1 會(huì)話狀態(tài)機(jī)不是“切到哪個(gè)會(huì)話”那么簡(jiǎn)單UDS的會(huì)話管理由0x10服務(wù)控制典型的狀態(tài)有默認(rèn)會(huì)話、編程會(huì)話、擴(kuò)展會(huì)話。簡(jiǎn)單理解ECU在默認(rèn)會(huì)話下只開(kāi)放少量診斷服務(wù)進(jìn)入擴(kuò)展會(huì)話或編程會(huì)話后才能碰Flash、標(biāo)定、刷寫這些高風(fēng)險(xiǎn)操作。但“切換會(huì)話”這件事兒麻煩在這些細(xì)節(jié)上切換到編程會(huì)話時(shí)協(xié)議棧應(yīng)當(dāng)同步調(diào)整自己能處理的服務(wù)集合比如禁止一些非診斷應(yīng)用請(qǐng)求打擾Bootloader默認(rèn)會(huì)話下允許的服務(wù)到編程會(huì)話下可能必須拒絕會(huì)話之間切換還要把當(dāng)前會(huì)話相關(guān)的狀態(tài)復(fù)位比如正在進(jìn)行的0x27安全訪問(wèn)解鎖狀態(tài)、臨時(shí)寫入的數(shù)據(jù)緩沖、DTC設(shè)置的抑制狀態(tài)都要一并處理干凈。大多數(shù)“不靠譜”的協(xié)議棧做的是“每個(gè)服務(wù)進(jìn)來(lái)時(shí)查一下當(dāng)前會(huì)話”但沒(méi)有把“會(huì)話切換”本身當(dāng)成一次狀態(tài)遷移事件去處理。結(jié)果就是從擴(kuò)展會(huì)話切回默認(rèn)會(huì)話后之前打開(kāi)的安全訪問(wèn)狀態(tài)依然有效或者從編程會(huì)話跳回默認(rèn)會(huì)話后0x3E維持會(huì)話的計(jì)時(shí)器沒(méi)有被停止導(dǎo)致明明已經(jīng)回默認(rèn)了ECU還在按編程會(huì)話的超時(shí)策略走兩個(gè)狀態(tài)機(jī)互相打架。我自己的習(xí)慣是收到0x10請(qǐng)求、確定切換目標(biāo)會(huì)話合法之后先執(zhí)行“離開(kāi)舊會(huì)話的清理動(dòng)作”再執(zhí)行“進(jìn)入新會(huì)話的初始化動(dòng)作”最后才發(fā)送肯定響應(yīng)。這個(gè)順序是不能反的因?yàn)閰f(xié)議棧內(nèi)部的服務(wù)權(quán)限表、安全等級(jí)、會(huì)話超時(shí)定時(shí)器都依賴一套單一的會(huì)話狀態(tài)作為唯一事實(shí)來(lái)源。2.2 安全訪問(wèn)的種子-密鑰、重試計(jì)數(shù)和延遲鎖定0x27服務(wù)是UDS里最容易出幺蛾子的地方。正常情況下診斷儀發(fā)0x27請(qǐng)求種子ECU返回一串隨機(jī)數(shù)種子診斷儀用約定的算法算出密鑰發(fā)回來(lái)ECU比對(duì)通過(guò)后就把當(dāng)前會(huì)話的安全等級(jí)提到允許執(zhí)行敏感操作的水準(zhǔn)??孔V的協(xié)議棧至少要把這幾件事做對(duì)種子只能一次性使用不能被重放密鑰錯(cuò)誤時(shí)ECU要記錄錯(cuò)誤計(jì)數(shù)連續(xù)錯(cuò)誤達(dá)到一定次數(shù)需要進(jìn)入延遲鎖定狀態(tài)返回NRC 0x36超過(guò)嘗試次數(shù)或者NRC 0x37延遲時(shí)間未過(guò)安全解鎖狀態(tài)只有在當(dāng)前會(huì)話有效切換會(huì)話、ECU復(fù)位后必須強(qiáng)制回到鎖定態(tài)密鑰的校驗(yàn)算法不能放在中斷里跑否則長(zhǎng)密鑰運(yùn)算會(huì)阻塞整個(gè)中斷響應(yīng)。我在實(shí)際項(xiàng)目里見(jiàn)過(guò)一個(gè)典型的坑協(xié)議棧把安全訪問(wèn)的嘗試次數(shù)做成了每個(gè)會(huì)話獨(dú)立計(jì)數(shù)刷寫B(tài)ootloader過(guò)程中診斷儀做了兩次安全訪問(wèn)第一次失敗、第二次成功但那個(gè)失敗計(jì)數(shù)在切換到新會(huì)話后沒(méi)有清零導(dǎo)致第三次真正需要解鎖時(shí)直接被拒。最后查了半天發(fā)現(xiàn)是狀態(tài)遷移沒(méi)做干凈計(jì)數(shù)跟著會(huì)話殘留了。所以好協(xié)議棧一定會(huì)把安全訪問(wèn)狀態(tài)和會(huì)話狀態(tài)綁在一起復(fù)位而不是單獨(dú)維護(hù)一套“永遠(yuǎn)不清零”的歷史計(jì)數(shù)。2.3 P2/P2*和NRC 0x78是診斷儀和ECU的“心跳約定”這一塊兒是區(qū)分“懂UDS”和“真懂UDS”的地方。ISO 14229規(guī)定ECU在收到診斷請(qǐng)求后需要在P2server時(shí)間內(nèi)給出響應(yīng)默認(rèn)是50ms如果ECU真的來(lái)不及處理可以在P2server內(nèi)先回一個(gè)NRC 0x78請(qǐng)求已正確接收響應(yīng)延遲然后ECU和診斷儀之間的響應(yīng)超時(shí)時(shí)間就切換到P2*server通常是5000ms。這是給ECU爭(zhēng)取處理時(shí)間的合法機(jī)制但前提是0x78必須盡早回而不是處理完才發(fā)現(xiàn)超時(shí)了再補(bǔ)一個(gè)0x78。很多協(xié)議棧實(shí)現(xiàn)者把0x78當(dāng)成“萬(wàn)金油”一旦任務(wù)忙就回0x78拖延。但其實(shí)0x78還有一層隱含語(yǔ)義ECU告訴診斷儀“我已經(jīng)收到這個(gè)請(qǐng)求正在處理你別急著報(bào)超時(shí)”。在ECU返回0x78之后如果診斷儀緊接著又發(fā)來(lái)第二個(gè)請(qǐng)求ECU是有權(quán)暫時(shí)不處理的因?yàn)橥粋€(gè)診斷時(shí)序里只允許一個(gè)請(qǐng)求在途。我踩過(guò)的坑是協(xié)議?;亓?x78之后沒(méi)有把診斷應(yīng)用層的“單飛行請(qǐng)求”標(biāo)志置位結(jié)果后續(xù)請(qǐng)求被分組接收、分組解析甚至一個(gè)Flash擦除正在進(jìn)行時(shí)另一個(gè)線程又來(lái)調(diào)斷言擦除接口直接把Flash狀態(tài)機(jī)搞亂了??煽康淖龇ㄊ窃谑盏秸?qǐng)求進(jìn)入處理的那一刻就把請(qǐng)求消息保存在固定的請(qǐng)求緩沖里處理完成、響應(yīng)發(fā)出后才允許接收下一條請(qǐng)求。0x78只是把一個(gè)長(zhǎng)耗時(shí)操作“合法地”拉長(zhǎng)它不能成為并發(fā)同時(shí)進(jìn)入ECU的入口。2.4 NRC不是隨便返回的優(yōu)先級(jí)和時(shí)機(jī)都標(biāo)在規(guī)范里NRC否定響應(yīng)碼是UDS里診斷儀判斷ECU到底“哪里不對(duì)”的唯一線索。正面響應(yīng)只有一種格式但否定響應(yīng)必須告訴對(duì)方具體原因比如服務(wù)不支持、子功能不支持、消息長(zhǎng)度錯(cuò)誤、安全訪問(wèn)失敗、條件不滿足。我見(jiàn)過(guò)不少協(xié)議棧處理NRC時(shí)是“誰(shuí)先發(fā)現(xiàn)錯(cuò)誤誰(shuí)先回”這其實(shí)是錯(cuò)的。ISO 14229的各個(gè)服務(wù)定義里其實(shí)隱含了NRC檢查順序的要求。比如一個(gè)0x2E寫入請(qǐng)求通常是先檢查服務(wù)是否支持、再檢查會(huì)話是否允許、再檢查安全等級(jí)、再檢查地址和長(zhǎng)度、最后檢查數(shù)據(jù)是否成功寫入。如果協(xié)議棧把“地址超出范圍”的檢查放在了“安全等級(jí)不足”之前那么診斷儀在安全未解鎖時(shí)就會(huì)優(yōu)先收到0x31而不是0x33導(dǎo)致診斷儀判定錯(cuò)誤分支做出錯(cuò)誤的用戶提示。說(shuō)實(shí)話這份檢查優(yōu)先級(jí)不是所有協(xié)議棧文檔都會(huì)給你畫清楚的判斷是否靠譜就要看它有沒(méi)有把檢查順序做成一張明確可讀的判定表。完整的協(xié)議棧應(yīng)該對(duì)每個(gè)SID都維護(hù)一條清晰的NRC優(yōu)先級(jí)鏈路并且在代碼注釋里寫明“為什么先查A再查B”方便后續(xù)工程師維護(hù)。3. 給協(xié)議棧做體檢我評(píng)估靠譜程度的六項(xiàng)清單3.1 標(biāo)準(zhǔn)符合性服務(wù)列表全不代表行為正確第一項(xiàng)體檢是拿ISO 14229-1和ISO 15765-2的正文對(duì)著協(xié)議棧的行為逐條走讀。走讀不是看它支持0x22、0x27、0x19這么簡(jiǎn)單而是看它每個(gè)服務(wù)的肯定響應(yīng)格式、否定響應(yīng)條件、時(shí)序、子功能支持范圍是否符合規(guī)范。我通常會(huì)讓協(xié)議棧供應(yīng)商提供一個(gè)“服務(wù)矩陣”每列一個(gè)SID每行一個(gè)條件比如“默認(rèn)會(huì)話下是否支持”“擴(kuò)展會(huì)話下是否支持”“安全訪問(wèn)前是否支持”“長(zhǎng)度錯(cuò)誤時(shí)回什么NRC”“地址越界時(shí)回什么NRC”。這張矩陣?yán)鰜?lái)協(xié)議棧實(shí)現(xiàn)者有沒(méi)有真正理解規(guī)范一目了然。如果供應(yīng)商說(shuō)“我們只是把開(kāi)源協(xié)議棧改了改打包給你”那我對(duì)標(biāo)準(zhǔn)符合性的信任度會(huì)打折扣。因?yàn)楹芏嚅_(kāi)源棧的側(cè)重點(diǎn)是“常見(jiàn)服務(wù)能用”而不是“所有邊界情況符合規(guī)范”。后者需要投入大量的人力去逐條驗(yàn)證商業(yè)棧的溢價(jià)也主要花在這里。3.2 硬件和OS接口抽象裸機(jī)、RTOS、多核都要能落第二個(gè)體檢項(xiàng)是看協(xié)議棧的代碼分層??孔V的協(xié)議棧一定做了嚴(yán)格的硬件抽象CAN收發(fā)是由驅(qū)動(dòng)層回調(diào)的定時(shí)器、任務(wù)鎖、消息郵箱這些基礎(chǔ)組件都抽象成接口不會(huì)直接去操作某個(gè)具體芯片的寄存器。我見(jiàn)過(guò)最頭疼的集成是供應(yīng)商給的協(xié)議棧里面直接塞了某款MCU的頭文件換一款芯片就編譯不過(guò)。后來(lái)?yè)Q的協(xié)議棧通過(guò)一個(gè)t_transport_if結(jié)構(gòu)體把所有底層依賴都包了起來(lái)我們只需要實(shí)現(xiàn)CAN發(fā)送、CAN接收回調(diào)、獲取系統(tǒng)時(shí)間戳、臨界區(qū)進(jìn)入/退出四個(gè)接口就能跑起來(lái)。多核芯片越來(lái)越常見(jiàn)協(xié)議棧還要能明確告知“哪些函數(shù)可以在中斷上下文調(diào)用、哪些函數(shù)只能在任務(wù)上下文調(diào)用”。比如UDS應(yīng)用層的服務(wù)處理函數(shù)通常允許耗時(shí)較長(zhǎng)就不適合放在中斷里而CAN TP的接收解包函數(shù)適合放在中斷后半段。如果協(xié)議棧不做這層區(qū)分集成方很容易在中斷里誤調(diào)用一個(gè)需要信號(hào)量的函數(shù)直接拋硬件異常。3.3 資源占用與實(shí)時(shí)性RAM、ROM、CPU負(fù)載UDS協(xié)議棧不是那種可以隨便揮霍資源的模塊。ECU的Flash和RAM預(yù)算卡得很緊尤其Bootloader更是寸土寸金。評(píng)估時(shí)我會(huì)問(wèn)幾個(gè)非常具體的問(wèn)題只保留0x10、0x11、0x19、0x22、0x27、0x2E、0x31、0x34、0x36、0x37這些核心服務(wù)時(shí)ROM占用大概多少接收一條多幀診斷報(bào)文比如0x36傳輸數(shù)據(jù)一次20KBRAM緩沖需要多大這個(gè)緩沖是靜態(tài)分配還是動(dòng)態(tài)分配滿負(fù)載地連續(xù)收CAN TP連續(xù)幀時(shí)每幀重組耗時(shí)是多少微秒這些數(shù)字不能只在PPT里看我會(huì)直接拉一份編譯后的map文件核對(duì)ROM段再寫一個(gè)專門的benchmark用例來(lái)測(cè)CPU負(fù)載。別嫌麻煩協(xié)議棧說(shuō)“我支持最多4095字節(jié)的多幀數(shù)據(jù)”結(jié)果它緩沖區(qū)按最大長(zhǎng)度預(yù)分配了4KB靜態(tài)內(nèi)存一個(gè)項(xiàng)目里用了三個(gè)診斷實(shí)例直接小一半RAM不見(jiàn)了這種案例我見(jiàn)過(guò)好幾次。3.4 可觀測(cè)性日志、Trace和錯(cuò)誤統(tǒng)計(jì)“靠譜”不只是運(yùn)行時(shí)不崩還得在出問(wèn)題時(shí)能快速定位。好協(xié)議棧一定會(huì)提供多級(jí)日志接口可以把CAN TP的接收狀態(tài)、UDS請(qǐng)求解析狀態(tài)、NRC返回原因、會(huì)話切換事件都輸出出來(lái)并且能編譯時(shí)開(kāi)關(guān)關(guān)閉。我還會(huì)看協(xié)議棧有沒(méi)有暴露一組診斷統(tǒng)計(jì)計(jì)數(shù)收到的請(qǐng)求總數(shù)、返回的肯定響應(yīng)數(shù)、否定響應(yīng)數(shù)、NRC 0x78次數(shù)、CAN TP丟幀數(shù)。因?yàn)榱慨a(chǎn)之后如果客戶報(bào)“刷寫偶發(fā)失敗”光靠日志遠(yuǎn)遠(yuǎn)不夠更需要的是運(yùn)行計(jì)數(shù)器的現(xiàn)場(chǎng)導(dǎo)出能立刻看出是哪個(gè)環(huán)節(jié)丟的包是CAN層丟的還是協(xié)議棧主動(dòng)丟的。如果協(xié)議棧完全不提供這些觀測(cè)接口那它在我的評(píng)估名單里基本會(huì)被直接劃掉。哪怕它行為再正確我看不見(jiàn)它的內(nèi)部狀態(tài)就用不了“把它訓(xùn)好”的機(jī)會(huì)。3.5 交付物與長(zhǎng)期維護(hù)源碼、文檔和追溯最后看交付物完整度。源碼交付最好實(shí)在不行也得有條件地把核心狀態(tài)機(jī)的邏輯開(kāi)源給集成方走查。文檔至少要有集成手冊(cè)、服務(wù)矩陣、NRC判定表、CAN TP參數(shù)配置說(shuō)明、已知缺陷清單。長(zhǎng)期維護(hù)更關(guān)鍵。主機(jī)廠的項(xiàng)目生命周期很長(zhǎng)協(xié)議棧發(fā)布后還會(huì)有Bug修復(fù)、需求變更、新增OEM擴(kuò)展診斷服務(wù)。如果協(xié)議棧沒(méi)有明確的版本管理、變更記錄、回滾機(jī)制那今天看著沒(méi)問(wèn)題三年后一出新問(wèn)題就可能找不到人管。我會(huì)問(wèn)供應(yīng)商“你們這個(gè)?;€版本是什么最近一次變更提交涉及哪些文件”回答含含糊糊的基本可以預(yù)期后面維護(hù)會(huì)很難受。4. 真實(shí)項(xiàng)目集成復(fù)盤從空工程到刷寫流程全通4.1 搭建最小工程CAN收發(fā)、消息隊(duì)列和協(xié)議棧初始化我在“模擬項(xiàng)目X”里用的是一塊某款主流車規(guī)MCU帶兩路CAN跑了一個(gè)簡(jiǎn)單裸機(jī)調(diào)度。集成第一步不是塞診斷服務(wù)而是先把CAN底層的收發(fā)跑通CAN控制器初始化、消息RAM配置、接收中斷里把幀收進(jìn)FIFO然后在主循環(huán)里把FIFO里攢著的CAN幀輪詢?nèi)∽?。我?xí)慣把它做成一個(gè)環(huán)形緩沖區(qū)接收中斷只負(fù)責(zé)往環(huán)形緩沖里丟“原始CAN幀”診斷任務(wù)從緩沖里取出來(lái)再喂給協(xié)議棧。這樣做的原因是CAN中斷頻率可能很高診斷任務(wù)卻可能因?yàn)镕lash擦寫被卡住幾十毫秒緩沖區(qū)能防丟幀。協(xié)議棧初始化則按三步走先注冊(cè)傳輸層接口把CAN發(fā)送函數(shù)和定時(shí)器函數(shù)填進(jìn)去再創(chuàng)建診斷應(yīng)用層的唯一請(qǐng)求緩沖和響應(yīng)緩沖最后啟動(dòng)會(huì)話狀態(tài)機(jī)讓它默認(rèn)落在默認(rèn)會(huì)話。初始化完成后不給任何診斷請(qǐng)求先跑幾分鐘空轉(zhuǎn)看狀態(tài)機(jī)有沒(méi)有因?yàn)榭辙D(zhuǎn)產(chǎn)生異常響應(yīng)。4.2 最容易卡殼的尋址與過(guò)濾物理尋址和功能尋址很多第一次集成的同事會(huì)在這里卡很久。CAN上的診斷報(bào)文分為物理尋址和功能尋址。物理尋址是“點(diǎn)對(duì)點(diǎn)”比如診斷儀用0x7E0發(fā)給ECUECU必須用0x7E8單獨(dú)回復(fù)功能尋址是“一對(duì)多”比如診斷儀用0x7DF廣播所有ECU都能收到但只有允許功能尋址的服務(wù)才能參與廣播且ECU不需要回復(fù)否則總線上多個(gè)ECU同時(shí)回就會(huì)撞車。當(dāng)時(shí)我把接收濾波器配置成了只接收物理尋址報(bào)文結(jié)果用功能尋址廣播發(fā)0x10會(huì)話切換ECU毫無(wú)反應(yīng)排查了很久才想起過(guò)濾器把0x7DF給濾掉了。正確做法是濾波器同時(shí)接收物理尋址和功能尋址兩個(gè)CAN ID然后在協(xié)議棧上層根據(jù)報(bào)文ID區(qū)分當(dāng)前請(qǐng)求是物理尋址還是功能尋址再?zèng)Q定哪些服務(wù)可以響應(yīng)、是否需要響應(yīng)。這里面還有一個(gè)容易忽略的點(diǎn)0x3E維持會(huì)話這類服務(wù)如果通過(guò)功能尋址廣播進(jìn)來(lái)ECU即使不回復(fù)也要維持會(huì)話狀態(tài)而0x10這類不允許功能尋址的服務(wù)通過(guò)0x7DF進(jìn)來(lái)時(shí)應(yīng)該靜默丟棄還是回NRC不同OEM的約定也不同集成時(shí)要跟需求方對(duì)齊別自己拍腦袋。4.3 經(jīng)典刷寫鏈路0x10、0x27、0x34、0x36、0x37、0x11刷寫流程是UDS集成驗(yàn)收里最嚴(yán)格的一條鏈路我把它作為“協(xié)議棧是否合格”的終極測(cè)試。標(biāo)準(zhǔn)鏈路大致是這樣第一步診斷儀發(fā)0x10 02進(jìn)入編程會(huì)話ECU切換到Bootloader模式。第二步發(fā)0x85 02或者0x28來(lái)抑制DTC記錄防止刷寫過(guò)程中的臨時(shí)性錯(cuò)誤被存成故障碼。第三步發(fā)0x27安全訪問(wèn)請(qǐng)求種子ECU返回種子診斷儀算好密鑰發(fā)回解鎖安全權(quán)限。第四步發(fā)0x31例程控制比如“檢查刷寫預(yù)條件”確認(rèn)電壓、上鎖狀態(tài)、版本匹配都滿足。第五步發(fā)0x34請(qǐng)求下載ECU返回允許下載的最大塊長(zhǎng)度和起始地址。第六步循環(huán)發(fā)0x36傳輸數(shù)據(jù)每包數(shù)據(jù)ECU會(huì)驗(yàn)CRC、寫Flash、回響應(yīng)。第七步發(fā)0x37請(qǐng)求退出傳輸確認(rèn)整個(gè)刷寫數(shù)據(jù)完整。最后發(fā)0x11復(fù)位ECU讓新程序跑起來(lái)。這其中協(xié)議棧要處理的坑非常多。0x34的maxNumberOfBlockLength如果寫小了刷寫吞吐就極低寫大了ECU的接收緩沖裝不下直接回0x31。0x36每包數(shù)據(jù)寫入Flash的時(shí)機(jī)必須放在響應(yīng)之前寫完確實(shí)成功后才回肯定否則刷寫完成后的校驗(yàn)大概率會(huì)掛。0x37之后協(xié)議棧還應(yīng)當(dāng)再做一次整體完整性校驗(yàn)比如校驗(yàn)整個(gè)Flash的CRC再?zèng)Q定是否允許跳轉(zhuǎn)應(yīng)用。還要特別注意刷寫期間保持會(huì)話心跳。擦寫Flash動(dòng)輒幾十毫秒到幾百毫秒這段時(shí)間內(nèi)ECU無(wú)法及時(shí)響應(yīng)診斷儀發(fā)來(lái)的0x3E維持會(huì)話請(qǐng)求。如果不做任何處理診斷儀P2超時(shí)后會(huì)認(rèn)為ECU失聯(lián)中止刷寫??孔V的方案有兩種一種是在進(jìn)入長(zhǎng)時(shí)間Flash操作前先主動(dòng)回復(fù)一個(gè)NRC 0x78把P2定時(shí)器拉開(kāi)等Flash寫完了再補(bǔ)最終響應(yīng)另一種是把0x3E的維持邏輯挪到獨(dú)立的定時(shí)器任務(wù)里中斷被Flash操作屏蔽時(shí)靠定時(shí)器任務(wù)維持一個(gè)“仍在活著”的標(biāo)志。兩種方式我都用過(guò)更推薦第二種因?yàn)?x78只能應(yīng)對(duì)單條請(qǐng)求維持會(huì)話的心跳需要的是能連續(xù)出現(xiàn)的時(shí)間片。4.4 收到“半成功”狀態(tài)的處理超時(shí)回滾與恢復(fù)真實(shí)刷寫最怕的不是整包失敗而是“半成功”前面0x34返回了支持的最大長(zhǎng)度你發(fā)了幾十包0x36都寫成功了結(jié)果最后一包校驗(yàn)發(fā)現(xiàn)整體CRC不對(duì)。這時(shí)候ECU必須能回到一個(gè)穩(wěn)定可重試的狀態(tài)。協(xié)議棧在這個(gè)點(diǎn)上要做到刷寫失敗后不能直接鎖死要允許診斷儀重新發(fā)起0x34請(qǐng)求下載從失敗的起始地址重新寫如果當(dāng)前刷寫地址狀態(tài)混亂要能通過(guò)重啟Bootloader回到初始狀態(tài)會(huì)話超時(shí)后如果ECU已經(jīng)退回了默認(rèn)會(huì)話診斷儀仍能通過(guò)0x10重新進(jìn)入編程會(huì)話。這一套“回滾”能力需要在協(xié)議棧里把刷寫狀態(tài)機(jī)做成分步可恢復(fù)而不是只做一個(gè)線性的“開(kāi)始-進(jìn)行-結(jié)束”標(biāo)志。在評(píng)估商棧時(shí)我會(huì)專門問(wèn)供應(yīng)商要一份“刷寫異常恢復(fù)測(cè)試報(bào)告”里面應(yīng)該有各種中斷時(shí)機(jī)下的表現(xiàn)掉電中斷、總線拔掉、會(huì)話超時(shí)、地址越界、長(zhǎng)度不符、CRC錯(cuò)。如果這些恢復(fù)路徑的測(cè)試不齊我基本不會(huì)采用。5. 那些年我踩過(guò)的協(xié)議棧的坑每一處都是真實(shí)教訓(xùn)5.1 診斷請(qǐng)求風(fēng)暴下的狀態(tài)機(jī)競(jìng)態(tài)有一次我們?cè)谧鲭姶偶嫒轀y(cè)試診斷儀以極快的周期連續(xù)發(fā)送0x3E維持會(huì)話請(qǐng)求。測(cè)試持續(xù)一段時(shí)間后ECU突然對(duì)下一個(gè)0x10請(qǐng)求不響應(yīng)了。抓總線看CAN上明明有請(qǐng)求ECU卻靜默。定位下來(lái)發(fā)現(xiàn)問(wèn)題出在協(xié)議棧的狀態(tài)機(jī)變量被多個(gè)上下文同時(shí)訪問(wèn)。接收中斷里做的狀態(tài)更新和診斷任務(wù)里做的狀態(tài)跳轉(zhuǎn)訪問(wèn)了同一個(gè)全局狀態(tài)而且沒(méi)有任何臨界區(qū)保護(hù)。診斷請(qǐng)求風(fēng)暴時(shí)中斷頻繁觸發(fā)任務(wù)調(diào)度被打斷兩個(gè)上下文的寫操作交錯(cuò)執(zhí)行狀態(tài)機(jī)的會(huì)話標(biāo)識(shí)被寫壞。這個(gè)坑教育了我協(xié)議棧的數(shù)據(jù)一致性不是“用不用RTOS”的問(wèn)題而是必須在設(shè)計(jì)上明確所有狀態(tài)更新的執(zhí)行上下文。后來(lái)我改成了“中斷只入隊(duì)診斷狀態(tài)只在診斷任務(wù)上下文里更新”才徹底穩(wěn)定下來(lái)。5.2 0x78掛起之后忘了還有P2*這回事另一個(gè)記憶深刻的坑是一個(gè)Bootloader項(xiàng)目在刷寫中途出現(xiàn)“偶發(fā)中斷”診斷儀報(bào)告“請(qǐng)求超時(shí)”但ECU邏輯上又沒(méi)死。最詭異的是用總線分析儀扎上去看ECU在收到0x36后確實(shí)回復(fù)了0x78過(guò)了大概1秒又回復(fù)了正常的0x36肯定響應(yīng)但診斷儀還是判定超時(shí)。原因在于我們的協(xié)議棧在回復(fù)0x78之后把P2定時(shí)器的起點(diǎn)算錯(cuò)了。診斷儀按ISO 14229的規(guī)則在收到0x78后P2的計(jì)時(shí)是從0x78響應(yīng)完成那一刻開(kāi)始算的而我們內(nèi)部卻把P2*起點(diǎn)算到了請(qǐng)求收到那一刻。Flash擦寫耗掉了800ms總時(shí)間接近2秒本身沒(méi)超可統(tǒng)計(jì)口徑一錯(cuò)診斷儀那邊覺(jué)得等待時(shí)間過(guò)了上限。這個(gè)坑的教訓(xùn)是0x78不是簡(jiǎn)單地“回一個(gè)碼”就行所有響應(yīng)超時(shí)相關(guān)的定時(shí)都必須嚴(yán)格對(duì)齊規(guī)范里“響應(yīng)完成時(shí)刻”這個(gè)語(yǔ)義。改完統(tǒng)計(jì)口徑后刷寫再也沒(méi)出現(xiàn)過(guò)這類誤報(bào)超時(shí)。5.3 刷寫途中會(huì)話超時(shí)Bootloader直接“半跪”還是在刷寫場(chǎng)景。某一次做產(chǎn)線聯(lián)調(diào)刷寫程序跑到約三分之一時(shí)診斷儀暫停發(fā)送0x36去執(zhí)行其他的預(yù)檢流程結(jié)果超過(guò)會(huì)話超時(shí)時(shí)間沒(méi)有發(fā)任何請(qǐng)求。ECU按規(guī)范退回了默認(rèn)會(huì)話安全訪問(wèn)狀態(tài)被復(fù)位Bootloader里的刷寫緩沖也被清空。診斷儀回來(lái)后傻了眼接著發(fā)0x36ECU回NRC 0x21請(qǐng)求序列錯(cuò)誤或者0x33安全訪問(wèn)被拒絕。這個(gè)現(xiàn)象其實(shí)完全符合規(guī)范問(wèn)題出在產(chǎn)線流程設(shè)計(jì)和協(xié)議棧容錯(cuò)策略上。后來(lái)的解決方案是產(chǎn)線流程里在長(zhǎng)時(shí)間暫停時(shí)主動(dòng)發(fā)0x10重新進(jìn)入編程會(huì)話并對(duì)Bootloader做“會(huì)話超時(shí)不下電”的配置讓它超時(shí)后還能在Bootloader里等待重新解鎖而不是直接回到應(yīng)用軟件。協(xié)議棧本身是嚴(yán)格按照規(guī)范走的沒(méi)有這個(gè)容錯(cuò)策略就會(huì)變成“使用者覺(jué)得棧不穩(wěn)”。這件事也讓明白了一個(gè)道理一個(gè)協(xié)議棧不能只考慮單一診斷儀場(chǎng)景要考慮“診斷儀性能夠不夠穩(wěn)定、會(huì)不會(huì)中途暫?!边@種真實(shí)世界的不完美。協(xié)議棧最好能提供一些合規(guī)范圍內(nèi)的容錯(cuò)開(kāi)關(guān)比如允許配置會(huì)話超時(shí)時(shí)間、允許配置0x78最大延遲時(shí)間讓應(yīng)用層根據(jù)風(fēng)險(xiǎn)場(chǎng)景動(dòng)態(tài)調(diào)整。5.4 多核MCU上的共享數(shù)據(jù)保護(hù)多核MCU普及以后共享數(shù)據(jù)保護(hù)成了新的重災(zāi)區(qū)。我們的控制器一顆核負(fù)責(zé)CAN通信和診斷協(xié)議棧另一顆核負(fù)責(zé)應(yīng)用控制算法兩個(gè)核需要共享一個(gè)“診斷當(dāng)前請(qǐng)求數(shù)據(jù)”的緩沖。最開(kāi)始圖省事直接用了全局變量沒(méi)有加鎖結(jié)果高負(fù)載時(shí)偶發(fā)出現(xiàn)請(qǐng)求內(nèi)容錯(cuò)亂診斷儀收到的響應(yīng)里字段錯(cuò)位。后來(lái)在協(xié)議棧的傳輸層與應(yīng)用層之間加了一層“帶自旋鎖的共享緩沖”寫操作和讀操作都走鎖才把問(wèn)題壓下去。更穩(wěn)妥的方案是直接把整個(gè)診斷協(xié)議棧固定在通信核上另一個(gè)核絕不直接訪問(wèn)診斷緩沖所有跨核數(shù)據(jù)交互走核間消息這樣從設(shè)計(jì)上消滅了競(jìng)爭(zhēng)條件。選擇協(xié)議棧時(shí)一定要確認(rèn)它對(duì)多核場(chǎng)景有明確的部署建議和鎖接口不能用單核時(shí)代的思維硬套。5.5 黑盒交付的堆棧出問(wèn)題只能靠猜我早期接過(guò)一個(gè)項(xiàng)目協(xié)議棧以靜態(tài)庫(kù)形式交付核心代碼不開(kāi)源只能調(diào)幾個(gè)API。前幾個(gè)月用得很順后來(lái)做OTA升級(jí)需要臨時(shí)在特定條件下改一下會(huì)話超時(shí)行為結(jié)果發(fā)現(xiàn)庫(kù)里面根本沒(méi)有這個(gè)配置項(xiàng)。更麻煩的是壓測(cè)時(shí)遇到一個(gè)偶發(fā)丟響應(yīng)的問(wèn)題供應(yīng)商只能靠加日志定位一來(lái)一回就拖了兩周。那次之后我對(duì)黑盒協(xié)議棧有了陰影UDS協(xié)議棧是深度融入ECU應(yīng)用層面的東西不是你調(diào)完就扔在那里不動(dòng)的模塊。它跟Flash驅(qū)動(dòng)、網(wǎng)絡(luò)管理、信息安全、診斷策略都有交互你必須有完全可見(jiàn)的代碼和接口才能做系統(tǒng)級(jí)調(diào)試。所以我現(xiàn)在選型有一條硬標(biāo)準(zhǔn)要么提供完整源代碼要么提供一個(gè)可以完全替代的“內(nèi)部實(shí)現(xiàn)鏡像”并且文檔里寫清楚每個(gè)函數(shù)的調(diào)用上下文和狀態(tài)遷移圖。達(dá)不到這條要求的再好也不碰。6. 選型心得自研、商業(yè)還是開(kāi)源以及未來(lái)的事6.1 三種獲取路徑的適用邊界自研UDS協(xié)議棧適合診斷功能高度定制、長(zhǎng)期多次復(fù)用的平臺(tái)型項(xiàng)目投入周期比較長(zhǎng)但換來(lái)的是完全可控的行為和積累多年的內(nèi)部經(jīng)驗(yàn)。商業(yè)授權(quán)協(xié)議棧適合項(xiàng)目周期短、需要第三方背書、以及團(tuán)隊(duì)沒(méi)有足夠精力深研標(biāo)準(zhǔn)的場(chǎng)合。開(kāi)源協(xié)議棧適合Demo驗(yàn)證、學(xué)習(xí)研究和沒(méi)有嚴(yán)格合規(guī)要求的項(xiàng)目但如果直接搬到量產(chǎn)車上穩(wěn)定性和長(zhǎng)期維護(hù)成本都要打個(gè)問(wèn)號(hào)。我在選型時(shí)會(huì)把項(xiàng)目階段拉出來(lái)。如果是預(yù)研階段做概念驗(yàn)證開(kāi)源棧最快如果是量產(chǎn)車型的診斷需求商業(yè)?;蜷L(zhǎng)期自研棧是正路。很多項(xiàng)目掛在開(kāi)源棧上出問(wèn)題不是開(kāi)源棧本身不可用而是用錯(cuò)了階段缺少了按量產(chǎn)標(biāo)準(zhǔn)做完整驗(yàn)證的預(yù)算和人力。6.2 面向OTA、DoIP和信息安全的擴(kuò)展性現(xiàn)在的UDS協(xié)議棧早已不只在CAN總線上工作。DoIP基于以太網(wǎng)的診斷意味著傳輸層要從CAN TP換成TCP/UDP加上DoIP協(xié)議頭這要求協(xié)議棧把“傳輸層接口”抽象得足夠干凈否則換傳輸就要重寫應(yīng)用層。這在選型時(shí)是個(gè)很關(guān)鍵的隱形門檻。OTA遠(yuǎn)程升級(jí)比產(chǎn)線刷寫更復(fù)雜它要跟車聯(lián)網(wǎng)平臺(tái)、云端證書、信息安全模塊協(xié)同。協(xié)議棧需要能支持更長(zhǎng)的數(shù)據(jù)塊、更高的吞吐量、更靈活的安全策略。很多舊架構(gòu)的協(xié)議棧把傳輸緩沖固定成CAN時(shí)代的2KB一搬到OTA就不夠用了。所以我現(xiàn)在會(huì)關(guān)注協(xié)議棧對(duì)“大數(shù)據(jù)塊連續(xù)傳輸”的支持程度以及它的緩沖策略是否能配置為更大容量。信息安全方面安全訪問(wèn)的種子-密鑰算法、刷寫數(shù)據(jù)的加密保護(hù)、UDS服務(wù)的可信執(zhí)行環(huán)境都需要協(xié)議棧在設(shè)計(jì)上預(yù)留接口比如密鑰算法可插拔、安全訪問(wèn)等級(jí)可擴(kuò)展、服務(wù)處理器可以被安全模塊替換。一個(gè)寫死的、不支持安全擴(kuò)展的UDS棧在未來(lái)的項(xiàng)目里會(huì)處處碰壁。6.3 我的“靠譜”定義寫在最后說(shuō)了這么多我其實(shí)想收個(gè)尾。做了那么多年我對(duì)“超靠譜的UDS協(xié)議?!钡亩x從來(lái)不是“支持的功能列表最長(zhǎng)”或者“跑分的響應(yīng)時(shí)間最短”而是它在異常情況下能不能保持行為可預(yù)期、問(wèn)題可定位、狀態(tài)可恢復(fù)。這個(gè)標(biāo)準(zhǔn)說(shuō)穿了就是協(xié)議棧的邊界質(zhì)量。再分享一個(gè)小經(jīng)驗(yàn)吧。我現(xiàn)在每次接到新協(xié)議棧第一件事就是拿到手先干一件很“土”的事——把ISO 14229里所有NRC的觸發(fā)條件整理成一張表然后對(duì)著協(xié)議棧代碼一行行核對(duì)。這個(gè)過(guò)程很枯燥但每次都能找出幾個(gè)還沒(méi)被測(cè)試用例覆蓋到的邊界行為。把這些邊界行為補(bǔ)齊比多支持十個(gè)服務(wù)都值錢。畢竟量產(chǎn)之后用戶不會(huì)夸你“這個(gè)ECU支持0x22”只會(huì)質(zhì)問(wèn)你“為什么偶發(fā)回了一個(gè)0x31”。把那些“為什么”都消滅掉才是我心里真正靠譜的協(xié)議棧。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
操婷婷基地| 91九色在线视频| 五月婷婷色情| 综合日本婷婷| 久久婷综合| 一级片sese片.COM| www.超碰97| 人人视频色| 五月丁香趴趴| 99热这里是精品| 噜一噜免费视频| 五月天色综合| 蜘蛛女侠2003满天星免费观看| 激情婷婷网| 国精产品一区一区三区有限公司杨 | 天花AV无码| 激情亭亭五月| 久久五月婷综合网| 久久激情天堂| 丁香六月婷婷久久综合| 婷婷六月激情| 五月天天堂久久| 人妻人人操| 国产婷婷色五月| 99热官网| 久久ab| 欧美图片丁香五月天| 99热日韩| 深爱五月亚洲| 激情黄色小说色五月| 五月激情婷婷图片基地| 久久东京热婷婷五月| 亚洲成人av在线观看| 亚洲精品永久久久久久| 99热这里只有精品98| 日韩在线视频9色| 26uuu成人网| 亚洲永久免费| 久久一伦| 成人视频网| 情婷婷五月天| 久久这里面只有精品视频| 91色综合久久| 狠狠狠狠狠| 婷婷五月天首页| 激情综合99| 大战熟女丰满人妻AV| 亚洲色视频| 五月天丁香六月综合| 激情婷婷丁香五月| 五月婷婷激情综合| 亚洲99精品欧美一区| 我爱大香蕉| 婷婷五月综合性爱| 久久这里有精品| 97五月天婷婷| 久热这里只有精品在线观看 | 黄色aa观看aaguochan| 婷婷情色五月天| 一区二区三区四区牛| 丁香激情网| 亚洲综合婷婷| 婷婷五月亚洲激情| 99久在线| 婷婷久久99| 99在线视频操999| 狠狠狠色激情综合适合| 婷婷激情丁五月| 5月婷婷视频网站综合| 久久99综合| 色色AV色色色东莞| 日日撸日日操| 婷婷六月天精品| 久99热在线观看| 激情性爱五月天网页| 色婷婷在线视频观看| 日韩综合久久| www.韩日视频| 波多婷婷久久| 超碰人人摸人人操| 国产毛片精品一区二区色欲黄A片| 日本色狠狠| 九九热这里只有精品12| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 五月丁香色婷婷色| 婷婷久久伊人| 伊人久热91网| 色婷综合| 亚洲AV日韩AV永久无码网站| 日韩野外 无套| www.婷婷| 狠狠综合网| 亚洲色婷婷五月天| www.天天日| 五月天婷婷黄色| 婷婷色女| 99热日韩这里只有精品| www.狠狠操.co m| 97碰碰在线看视频免费| 亚州操操| 色情综合网| 夜夜爱伊人| 96色婷婷| 九色在线观看91av| 玖玖午夜视频| 久九色| 婷婷娌伦网| av免费在线观看0| 亚洲欧洲中文日韩久久AV乱码| 五月丁香综合网| 色婷另类| AV电影在线播放| 中文字幕,综合,91| 久久九九国产精品怡红院| Www.狠狠| 色婷婷亚洲婷婷在线观看| 色婷婷久久综合丁香五月| 丁香五月骚喷水视频| 99爱免费在线观看| 丁香五月天五码婷婷| 欧美激情xxxXX| 精品五月丁香| 丁香五月婷婷88在线| 五月婷婷六月丁香激情深爱| 狠狠色情婷婷| 开心婷婷五月中文字幕组| 亚洲、热| 色五月激情五月| 婷婷五月花| 国产美女视频久| 日韩精品一区二区亚洲AV观看 | 97亚洲婷婷| 色综合99| AV人人操| 日本操天堂| 丁香五月激情五月色综合| WWW、日本色丁香、co m| Y11111111111少妇电影院| 五月黄色婷婷| 在线视频另类| 丁香五月婷婷色五月| 丁香六月高清视频| 色五月婷婷激情| 激情婷婷六月天| 色婷婷小说网| 亚洲精品视频在线| 久久9热好| 久久久久久久久久久久久久久久一道本| 国产激情一区| 丁香花五月天激情| 四五月婷婷| 激情综合六月| 91精品婷婷国产综合久久| 久久久久人妻网址| 白度黄视频| 色婷久| 九九九九综合| 丁香五月天av| 色综合中文| 亚洲综合激情五月久久| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 成人网站av免费网站推荐| 中文字幕九九九九| 西瓜美女a片| 天天操天天曰| 色婷五月| 激情久久婷婷| 五月丁香亭亭成人电影| 囯产精品久久欠久久久久久九大| 五月婷婷综合在线| 色激情五月| 99色综合网| 亚洲精品久久久久久久久久吃药| 亚洲天堂啪啪| A片天天| 91精品婷婷国产综合| 久久五月天精品视频| 人妻在线中文字幕久久| 99日本黄站| 国产人妻777人伦精品HD| 久久久潮喷-久久久九九-成人AV| 噜噜噜噜婷婷五月天| 色情五月天A片| 中文字幕,综合,91| 内射爽无广熟女亚洲| 欧美碰碰| 亚洲mm色| 色色五月天婷婷| 激情小说色五月| 欧美日本国产欧美日本韩国99 | 五月天操逼激情| 成人av在线网址| 婷婷久久五月天亚洲欧美国产日韩在线观看| 99热这里只有精品22| 亚洲操b| 五月丁香亭亭A片| 婷婷五月深情丁香深爱日韩| 这里只有精品视频在线| 九月婷婷在线视频| 色爱99| 婷婷五月免费视频| 亚洲中文字幕翔田千里| 久久亚洲色导航| 天天日夜夜爽| 20253AV| 第四色婷婷日本| 色色综合色| www.天天干| 久人操| 色婷婷a三区麻| 六月婷婷最新网址| 五月丁香综合在线| 五月丁香色婷婷久久| 国产亚洲精品久久久久久郑州| 射久久丁香五月| 91视屏在线观看com.wwwvv| 国产精品视频免费看| 玖玖99婷婷| 久久久这里都是精品| 九九無妻| www99xxxx五月丁| 六月丁香基地| 99精品在线观看| 大香蕉婷婷久久| 婷婷5月九九| 少妇2做爰HD韩国电影| 久久免费9| 日本色综合| 97超级碰| 五月天婷婷青青草| 六月五月天婷婷涩播在线| 日韩在线看AV| www.人人操人人看人人想人人摸 人人人人操,COM | 免费成片在线观看| 激情综合五月婷婷六月丁香| 成人AV片播放| 99爱最新免费视频在线观看| 日本一级淫| 国产乱码久久| 啊v视频在线观看| 秋霞A V毛片| 99热这里只有精品免费| 超碰在线综合| 99色在线观看视频| 99久久精品色老| 六月丁香网| 亚洲婷婷综合视频| 亚洲精品国产精品乱码视99| 99啪在线| 婷婷五月天亚洲综合| 俺去婷婷 丁香| 中文字幕不卡视频| 中文AV网| 色玖玖玖| 99热精品观看| 五月天激情四射| 伊人久久婷婷| 亚洲VA欧美VA| 日韩黄在免| 婷婷六月天精品| 久久精品一区二区三区四区| 开心五月婷婷在线| 97碰 在线视频观看| 国内精品玖玖| 人妻中文字幕精品| 99A级片| 97在线刺激| 九九AV在线| WWW久久久| 99热99在线| 综合亚洲六月婷婷在线| 亚洲综合另类| 久久婷婷一级片| 婷婷丁香成人色综合| 欧美综合五月丁香六月婷| 色综合综合综合| 91精品国产综合久久密臀| 国产真实乱对白精彩| 综合热无码| 人操综合| 99在线观看精品| 操人91| 天天操天天操天天操天天操天天操| 久久这里只精品66| 一级视频网址| 亚洲黄色精品| 狠狠狠狠狠狠草| 亚洲网站观看视频| 五月丁香婷婷婷激情爱爱| 欧美五月婷婷| 嫩草AV久久伊人妇女超级A| m色激情网| 亚洲天堂有码| 综合网天天| 四色 爱 婷婷 精品 亚洲 五月天| 综合狠久久| 五月天婷久精视频| 五月婷婷六月丁香| 婷婷六月啪啪| 色八月婷婷| 亚洲黄网AV| 欧美日韩aaa| 国产在线中文字幕| 99久热视频在线| 99热这里只有精| 亭亭五月丁香综合欧美| 99热97美女| 性色婷婷| 婷婷亚洲五月色综合| 日本欧特黄色刺激一区影视久精品无码| 色五月婷婷操逼| 激情com| 亚洲丁香婷婷| 激情综合网色播五月| 一本综合丁香日日狠狠色| 免费看无码视频A级| 亚洲操B| 狠狠五月激情婷婷直播片| 色婷婷五月在线| 国产AV一区二区三区最新精品| 五月婷婷69| 久久永久网址| 嫩草视频观看| 婷婷D区| 婷婷欧美激情综合| 国产资源91在线| 亚洲午夜AV| 天天色中文字幕女优AV| 丁香五月天堂网| 久久小片| 婷婷丁香五月天综合网| 九色91视频| 久久久av久av久片一区二区| av狠狠操| 婷婷五月电影院| 丁香婷婷天堂| 99免费在线视频| 思思久久精品| 丁香五月婷婷视频| 婷婷五月天va| 日韩成人中文字幕| 五月天丁香欧美激情| 日本人妻A片成人免费看片| 2025色婷婷| 丁香五月婷婷少妇| 婷婷五月天影院| www99精品日韩| 激情五月婷婷网| 丁香五月婷中字幕| 思思热再线视频| 五月丁香福利| 亚洲第一av| 天天久综合网永久入口18| 激情综合婷婷| 五月激情在线| 五月丁香淫淫婷婷婷| 色七色九九| 综合激情在线视频| 色婷亚洲五月丁香| 肏日网在线看| 成人精品免费在线观看| 欧美综合激情| 老妇六区| 中国女人做爰A片| 99久在线精品99re8热| 天天久| 2017人人操| 丁香五月天成人| 天天爱天天做天天操| 免费观看大片视频 丁香婷婷 六月欧美| 色青青视频| 激情五月黄色小说| 天天干,天天舔| 影音先锋四区| 色久女| 五月天婷婷激情在线色图| 亚洲av另类在线观看| 日本精品久久久久中文字幕| 婷婷中文字幕| 天天日天天插| 91欧美| 狠狠操狠狠操AV| 99精品热视频| 丁香九月激情| 亚州操人在线视频| 26uuu精品一区二区| 99日本在线| 婷色五月天| 五月天涩涩| 五月婷婷综合精品| 五月天综合在线观看视频| 婷婷激情五月天在线| 狠狠操.COM| 色婷婷五月天激情综合| 色天天综合成人网| 五月婷婷二月丁香| 五月天婷婷在线视频| 五月天 无码| 久久婷婷五月综合激情国产| 色婷婷综合网站| 丁香六月婷婷高清| 人人干AV| 婷婷视频在线| 开心激情婷婷| 婷婷色影院| 婷婷五月天av| WWW.国产| 超碰成人在线免费观看| 99热九九在线| 色综合婷婷| 婷婷丁香人妻天久久| 色婷婷五月影视| 人妻久久久久久久久妻久久久久久久久 | 五月婷网| 超碰人人在线| 欧美婷婷丁香社区在线播放| 久久精品噜噜噜成人A∨色欲| 超碰精品国产首页| 五月婷婷三级| 就99这里只有精品| 人妻VideOssS人妻高清| 97操碰在线视频| 丁香激情久久| 人与禽A片啪啪| 99福利视频导航| 丁香五月婷婷婷桃花影院| 婷婷激情视频| 噜噜色五月| 激情综合另类| 人妻久热| 五月花综合网| 99re热免费观看视频精品| 久久五月天综合| 91玖玖| 国产成人网站在线观看| 久久ri精品视频| 九九人人自拍| 99久久国产成人精品| 人妻尝试久久久久久久久久久久| 丁香美女五月天婷婷| 色欲婷婷五月天| 五月综合视频| 97人妻碰碰碰碰碰久久久久久| 激情综合色图| 涩涩五| 大天天伊人| 成人精品视频99在线观看免费| 91综合视频丁香| 人人操操| 天天插夜夜爽| 久久久精品AV| 婷婷五月色播天| 九九青草热| 亚洲人人96@| 色色综合色| 九月婷婷综合| 99操不停| 婷婷丁香视频在线观看免费| 久久视频这里有精品99| 日日干日日| 99草在线免费观看视频| 国产99美少妇| 五月婷婷六月情| 91欧美| 东北黄色一级| 99在线视频在线观看| 丁香五月婷婷基地| 国产午夜成人免费看片无遮挡| 日本毛片内射| 男人综合网| 91无码高清| 日韩AV无码影片| 精品无吗va视频免费观看| 久婷久婷激情肉| 九九热视频首页/这里只有精品| 国产VA亚洲VA96| 日日干天天| 综合久久久婷| 亚洲激情综合五月婷婷啪啪| 婷婷五月色播放| 久久久久九九九九视屏小说88| 婷婷和五月天| 香焦网五月天| 日本丰满久久| 久久这里都是精品视频| 五月天色区| 五月狠狠| 思思热AV| 色婷婷成人色网| 久青青久| 91超碰在线播放| 久久免费干| 一个色的综合| 色无码| 综合伊人久久| 激情综合丁香五月| 国产肥白大熟妇BBBB视频| 久久丁香九| 九九操综合网| 激情色播| 丁香五月激情婷婷视频| 啪啪激情综合| 丁香五月AV| 人人摸人人搞| 免费色婷婷| 五月丁香婷婷爱激情综合网| 玖玖爱伊人| 久久九九热视频| 色一情一乱一乱一区91Av| 婷婷五月色综合| 六月婷婷久久| 97在线天堂| 色婷婷色久综| 最近中文字幕在线中文视频| 蜜乳9188| 丁香婷婷激情| 亚洲激情亚洲激情| 五月丁香综合激情网| 婷婷色在线播放| 思思热在线播放| 丁香五月婷婷社区| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 丁香五月综合| 天天做天天爱天天日| 激情综合五月天| 九九 激情 网| 日本三久久| 欧美成人AAA片一区国产精品| 免费播放片大片| www.色五月天.com| 99热 日韩| 91小黄书网址在线观看| 久在热99| 亚洲日韩欧美综合VA| 视频一区二区在线| 丁香久久| 久久久欧美精品sm网站| 亚洲AV网址| wWW九九在线播放| 99热热这里只精品996小说| 久久激情天堂| 中文无码婷婷| www.99热日韩.com| 成人免费120分钟啪啪| 日木狠狠干| 婷婷五月天开心网| 五月天婷亚洲天综合网综合| 少妇被下春药玩弄A片| 3p日韩网站视频| 九九一区| 噜噜网免费视频| 久久码久久无清| 丁香六月婷婷| 五月婷婷av| 这里只有精彩视频| 五五月五月| 国产99久| 国产激情在线| www.99视频| 99色色网| 开心五月深爱五月丁香五月激情五月 | 丁香色五月 97干| 大香蕉久久伊人婷婷五月丁香| 色情五月综合婷婷| 狠色狠色综合久久| 亚洲精品视频电影| 色五月激情网| 天天视频亚洲| 成人版视频在线观看| 69热91天堂| 激情综合色婷婷啪啪六月天| CAOBIBI| 久久婷婷啪啪视频| 五月婷婷色综图片| 久久婷婷五月综合一| 99ri国产在线| 狠狠干在线视频| 免费V片在线| 在线看片av| 成人小说 五月天 婷婷| 九九激情视频| 色爱综合网| AV天堂婷婷五月天| 婷婷五月香蕉| 2025神马午夜福利| 91色在线 | 日韩| 激情综合播播| 大香伊人婷婷影院| 久色视频| 色色综合网络| 开心五月六月婷婷| 五月色情婷婷| 五月激情综合网| 人人人舔人人人操人人人摸人人人97 | 欧美成人AAA片一区国产精品| 91在线日本| 日韩aaaaa| 天天色综合综合| 91在线日| 偷拍99在线视频观看| 另类专区在线观看| 婷婷丁香在线播放| 狠狠综合| 9色免费网| 午夜天堂啪啪| 噜噜吧天天爱| 五月婷婷六月爱| 另类激情四射| 91五月花丁香| 99热91| 日本九九网| 天天色,天天操,天天射| 黄色片区子| 五月婷婷黄网站大全| 99国产在线| 激情五月天激情小说| 激情文学天天| 大香蕉99| 97人妻人人| 免费无码毛片一区二区A片 | 成人午夜天| 玖玖精品视频| 欧洲激情五月天| www.99热视频| 欧美亚洲成人在线| 欧美特大片黄| 五月丁香在线| 激情另类综合| 玖玖婷婷五月天| 亚洲AV无码久久精品色欲| 色香蕉影院| 色婷九九九| 丁香五月天操B| 五月婷婷综合在线| 日本久热| 色色日本欧美| 能直接看的av网站| 五月激情黄色小说| 欧美久久五月婷婷| 久久永久网址| 婷婷五月情| 9九色首页| 色五月激情综合网站| 国产乱子轮XXX农村| 俺去也综合| 香蕉操亚洲| 五月亭亭网成人在线视频| 狠狠色综合网| 91久久网站| 色综合激情| 丁香婷婷五月天色播| 久久ww| 丁香九月综合| 色玖玖综合| 久re在线| 色yeye色综合| 国产探花一片区| 久久婷青青草原| 国产精品久久久爽爽爽麻豆色哟哟| 五月天婷婷色| 在线天堂9| 亚洲国产精品VA在线看黑人| 五月天色综合| 69精品人人人人人人人人人| 玖玖精品婷婷| 国产SUV精品一区二区6| 99亚洲精品视频| 新男人天堂人妻| 色五月丁香com| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 风流少妇A片一区二区蜜桃 | 久久九九精彩| 午夜丁香六月婷| 丁香婷婷综合喷| 色婷婷91激情小说| 天天爱天天做天天爽| 天天噪夜夜爽| 夜夜大香蕉婷婷丁香| 久久五月丁香综合17C| 99久久a线观| 天天舔天天插天天爱| 久久HD| 丁香六月综合激情| 天天激情5月天亚洲| 色婷婷五月开心六月综合| 玖玖婷婷五月天| 草综合网| 婷婷五月天伊人在线| 亚洲综合久| 99激情在线| 色五月综合激情| 在线观看熟女少妇| 久久aaa| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 婷婷五月天日逼| 六月婷婷狠狠做| tingtingzonghewang| 婷婷五月六月激情| 激情亚洲网| 色婷婷精品| 久久婷婷五月综合| 99久热在线精品| 99爱精品| 国产XXXX搡XXXXX搡麻豆| ztEJj| 激情婷婷网| 综合另类视频| 婷婷五月天av网| 五月天夜夜爱夜夜操| 五月婷婷网五月在线| 亚洲另类视频| 色999;丁香五月| 色婷婷综合网| 伊人免费视频9| 99免费青青蜜臀| 超碰97人人操| 青青草搞屄视频网站| 。久久久久久久久久久久久久人妻| 婷婷色五月天在线| 成人日韩欧美| 国产看真人毛片爱做A片| 大香蕉太香蕉视频97| 成人午夜免费电影| 丁香五月天导航| 五月婷六月天| 婷婷五月天丁香社区| 99爱爱| 久草婷婷在线| 五月丁香色色| 五月综合777| 天天操综合网| 五月丁香激情综合网| 亚州欧美黄色电影| 99精品在线观看视频| 好吊丝aV| 久色大| 日韩一级片| 爱婷婷久久视频| 丁香五月综合激情性爱| 性做久久久久久久免费看| 丁香婷婷六月| 日日日日做夜夜夜夜无码| 五月网网站| 婷婷久久久| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 天天网曰日曰夜夜综合永久免费| 亚洲婷婷激情综合激情999精品| 99超在线| 久久综合影院| 超碰在线50| 92国产福利| 天天综合永久| 激情九月综合| 色综合色色色色色色综合| 五月婷婷综合网| 婷婷五月亚洲一本在线丁香| 色综合久久888| 久久99日本精品视频免费观看| 五月婷婷六月丁香| 久久婷婷五月| 五月色情| 色婷婷影院| 互月天综合| 99热这里只有精品99| 办公室少妇激情呻吟A片在线观看| 这里只有精品9| 丁香六月婷婷综合| 99五丁香月| 99精品视频在线6| 亚洲第一综合| 激情五月天。| 色色网站免费在线视频| 狠狠色噜噜狠狠| 成人五月丁香花| 99re思思| 任你爽精品免费视频6| 亚洲欧美成人在线观看| 色婷婷五月天激情| 亚洲性视频| 影音先锋男人AV资源站| 色情五月天se| 五月丁香人妻| 成人电影在线免费试看| 女人天堂 AV| www.久久| 五月香婷婷| 久久婷婷内射| 91窝窝| 狠狠插狠狠| 亚洲精品无码一区二区| 九九色大香蕉| www,色色色网站| 久99久视频精品| 26uuu色噜噜精品一区| 啪啪啪大香蕉| 91超级碰在线视频| 亚洲日日操| 国产黄色在线观看| 日本特黄aaaaa| 一本色道久久综合狠狠躁小说| 久久久久久久久久久44| 五月激情久久综合网| 久爱综合| 五月天全国最大成人网| 日韩无码专区| 国产亚洲99久久精品熟| 五月婷婷色色色| 婷婷色情五月| 五月色情婷婷开心五月色情| 亚洲天堂久久| 五月天伊人综合| 99热只有这里有精品| 亚洲爆乳无码精品AAA片蜜桃| 九九人妻福利| 26uuu最新地址| 婷婷精品| 五月丁香六月婷婷久久肏| 高清国产AV| 丁香色五月婷婷91桃色| 91呦呦呦| 三级成人网站| 精品久久久91久久影视网| 综合五月亭亭9| 专区无日本视频高清8| 丁香五月天人体| 69精品人人人人| 丁香五月婷婷色综合基地| 亚洲无码99| 思思99精品视频| 99久热| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 1024亚洲| 五月丁香无码| 久久在这里99| 亭亭玉月丁香| 丁香五月 综合| 国产日韩精品SUV| 伊人91| 久热免费视频| 欧美性爱5月天天天看| 五月天婷a在线| 天天天操天天天日| 97艹| 婷婷综合色色| 久久99热只有精品| 亚洲精品一区中文字幕乱码| 99成人无码| 久久色吧| 国产avapp 网| 成久综合视频| 亚洲视频一区| 久久久久久久久人妻| 99热一本久道| 久久三级视频| 天天草天天爱| 热久久这里只有三级视频| 婷婷五月天美女21p| 天天色图| 婷婷综合五月天| 婷婷五月开心中文字幕色| 色婷婷成人色网| 月婷婷婷婷五月| 色五月婷婷av| 五月天激情小说| 婷婷五月丁香久久| 五月天婷婷狠狠| 色色a| 五月欧美色色五月| 久re热视频| 久久六月综合| 色综合久久久久久久久五月| 久久激情天堂| 五月婷丁香| 日韩六十路91性交电影| 一本大道伊人AV久久综合| 五月天色婷婷伊人网| 婷婷五月丁香A∨| 91久久九久久九久久九久久九久久| 丁香五月综合激情性爱| 日韩人妻无码专区| 91小黄书网址在线观看| av久热| 亚洲情综合五月天| 婷婷五月色色| 五月激情婷婷开心五月| 成年视频免费观看| 婷婷成人视频| 91精品综合久久久久久五月丁香 | 五月丁香六月婷婷国产视频| 可以免费观看的av网址| 在线看AV| 欧美丁香婷婷五月| www.ppypp| 99视频内射三四| 色婷婷激情| 无码人妻一区| 九九热免费观看视频| 热99一二三| 成人在线日韩| 99在线观看精品视频| 丁香六月天AV| 99偷拍视频在线日本| 国产精品VIDEOSSEX久久发布| 婷婷五月天无码| 婷婷爱综合| 婷婷中文字暮| 婷婷精品视频| 丁香九月久久| 婷婷五月丁香四射| 婷婷色婷婷| 五月天天久久香| 五月婷综合性中心| 成人av在线网站| 久久久久久久,99精品视频| 六月激情网| 精品久久这里热66| 色五月婷激情| 五月天激情综合在线| 一级二级色大片| 五月婷婷色欲| 婷婷成人五月天| aaa日韩| tingting五月天亚洲| 婷婷成人综合| 欧在线一区| 国产AV国片偷人妻麻豆| www.99婷婷| 五月天综合视频| 婷婷五月激情片| 亚洲国产精品成人免费一区久久久在线观看AAAA | 农村熟妇高潮精品A片| 999精品乱码77777| 婷婷狠狠干| 婷婷五月天少妇| 无码se| 久综合九综合99| 少妇大叫太大太粗太爽了A片| 婷婷五月av| 婷婷五月天福利| 亚洲色激情| 激情纯色婷婷五月天在线不卡视频| 99操视频| 美女伊人久久| 丁香六月丁香婷婷激情| 91操人视频| 婷婷性爱网| 激情五月天啪啪| 亚洲天码视频www蛋播视频| 亚洲XX日本| 久久这里在精品视频| 婷婷丁香久久| 色婷婷色九月| 九九九九中文字幕| 天天久久婷婷| 日日操天堂| 日木WWW视频| 1000部毛片A片免费观看| 日日撸夜夜操| 色综合色色| 91热久久| 中文字幕成人| 成人在线网址| 色综合婷婷| 六月婷婷色综合| 伊人婷婷大香蕉| 色婷婷成人网| 日本一毛片| 激情99热| 99riAv1国产在线观看| 26.uuu丁香五月婷婷| 182TV大香蕉| 九色啦蜜臀| 超碰国产AV| 丁香六月婷婷| 99精品视频在线观看| 丝袜激情网| 99久精品视频| 97碰碰人人| 97碰免费视频在线| 激情五月小说婷婷| 综合网色| 婷婷丁香六月天| 蜜桃人妻无码AV天堂三区| 婷婷五月天成人| 四川BBB搡BBB搡多人乱亂| 色无码| 精品人妻伦九区久久AAA片| 国产精品久久久久久久久久免费| .精品久久久麻豆国产精品| 婷婷不干网| aV直接看| 97操在线资源| 丁香五月情| 色色色色色色色色五月先| 亚洲一个色| 婷婷五月天日本国产| 五月丁香六月激情综合在线| 天天色,天天日,天天做| 九九热最新地址| 五月丁香婷婷在线| 天天艹天天综合网| 五月丁香婷婷无码A∨| 精品一区二区三区木瓜| 3www激情| 99操免费视频| 99啪啪视频| 亚洲精品无码一区二区| 99热 日韩| 婷婷五月激情综合啪啪| 99热最新精品| 99热这里只有精品1025| 激情五月图| 激情婷婷网| 丁香五月天综合| 99色热| 97超碰免费超级在线观看| 久久综合图片| 亚洲五月天婷婷| 秋霞黄色一级久久| 亚洲色综久久五月| 97精品自拍视频| 色婷婷视频在线| 成人做爰黄A片免费看直播室男男| 超碰99热精品在线| 91凹凸在线| 九九视频精品这里只有| 丁香综合网| 色综合大香蕉| 少妇被躁爽到高潮无码文| 丝雨一区二区| 久久9视频欧美| 密黄站| 五月激激激情综合网| 亚州色婷婷| 精品一二三区久久AAA片 | 曰曰久久| 色婷婷电影网| 亚洲国产色婷婷| 日本久久综合| 五月天伊人手机在线播放AV| 久久久久亚洲AV成人无码电影| 婷色五月天| 六月婷婷网| 五月停停直播| 色色色色色色网| 色婷五月天| 91日婷婷在线| 久久久精品99亚洲综合| 狠狠激情五月天| 国产操碰| 久久精彩视频18| 婷婷五月色惰| 色五月久久成人婷婷| 51国精产品自偷自偷综合| 伊人五月天| 一级七香蕉| 思思久久精品视频| 韩国天天婷婷| 桃色五月天| 色欲五月婷婷| caopeng97日韩| 97碰久久| 五月婷婷色色爱| 亚洲精品视频在线| 激情综合色婷婷六月天| 另类激情综合| 97热九九| 天天综合永久| 色五月综合| 亚洲无码九九九| 管管補管管紱| 五月丁香欧美综合| 色播jjjj| 色婷婷五月影视| 天天做天天爽| 人碰人人人玩91| 激情色播| 九九在线精点品| 91丁香色| 婷婷丁香色五月亚洲| 99热97| 九月丁香网婷婷| 色丁香五月天射婷婷爱婷婷| 99热这里有精品| 操操综合网婷婷| 久久只有精| 成人版视频在线观看| 超碰av在| 五月丁香爱婷婷深深| 美女激情综合| 一区操| 五丁香激情综合| 思思热视频在线观看| 久9热视频| 丁香久月婷| 婷婷五月天啪啪| 艾小青av| 日韩啪| 夜夜躁爽日| 成人无码精品1区2区3区免费看 | 日日操夜夜骑| 国产亚洲精品久久久久苍井松| 婷婷五月天综合激情| 婷婷色九月| 9热在线视频精品| www.成人婷婷综合| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 五月婷婷免费| 激情综合五| 日本九九九九| PORNY九色9l自拍视频成人| 情一色一乱一伦一91A| 国模淫穴色图| 日韩久久成人| 色九月激情综合网| 99热亚洲| 日韩欧美五月丁综合| 色99网| 丁香六月婷婷综合欧美| 激情丁香五月婷婷| 第1影院之五月婷婷| 久久九九在线视频| 潘金莲AAAAAAAAAA| 免费观看的AV| 乱岳熟女50岁| 丁香五月婷婷动漫视频| 丁香五月激情综合| 久久久妻人人人| 天天弄天天操| 色五月xxx| 亚洲激情另类| 五月丁香怕怕综合| 婷婷激情综合网| 精品九九在线观看视频| 狠狠爱综合| 久久综合热17c| 国产亚洲色婷婷久久99精品91| 五月婷婷六月丁| 202丰满熟女妇大| 亚州激情在线视频| 无码激情AAAAA片-区区| 综合亚洲六月婷婷在线| www.色九月| 色爱亚洲| 99玖玖人人| 伊人网碰碰| 日本人妻久久| 五月丁香啪啪综合| 一区=区操屄高清大全av| 99青青草| 美女视频图片久久91| 五月丁香六月激情综合欧美| 丁香网五月天| 久久这里有精品在线观看| 天天干天天拍| 久久婷婷五月激情网站| 国产美女无遮挡裸体毛片A片 | 激情丁香婷婷五月天| 91操碰| 操人91| 五月激情小说| 777.色色| 亚洲午夜在线视频| 狠狠激情五月天| 色色影院黄大片| 色综合色五月| 性爱先锋AV| 青草视频在线播放| 五月丁香激情婷婷| 亚洲在线视频321| 色色婷婷丁香| 五月丁香啪啪激情| 色亭亭影园| 无码区婷婷五月花开| 中文无码婷婷| 亚洲AV免费在线| 色色亚卅| 91丨九色丨老农村| 91狠狠综合久久| 99无码免费视频| 婷婷九九色| 亚洲在线综合| 开心六月丁香五月婷婷| 日本eVa一区=区视频| 日本色爽| 欧美一级色| 激情婷婷丁香| www.色五月| 日日夜夜狠狠婷婷色| 天天舔天天| 天天综合久久| 人人爱操| 日日爱699| 中文字幕视频在线播放| 最近中文字幕2019视频1| 久久这里都是精品| 殴美日比视频| 99丁香婷婷综合网| 五月婷婷深深爱| 玖玖伦理电影| 99ri视频在线观看| 99热在线播放| 九九精品在线观看视频6| 色噜噜夜夜夜综合网| 伊人综合网站| 欧美精品18| 播五月婷婷开心| 国产亚洲av片| 亚洲精品视频在线播放| 婷婷五月天激情基地| 伊人碰碰碰| 色婷婷狠狠| 五月激情久久| 92国产福利| 国产午夜精品AV一区二区麻豆 | 午夜色丁香| 亚洲操B| 日日夜夜天天综合| 激情丁香久久| 久久五月情| 色综合久久久久| 激情五月天偷拍综合网| 人人色性网| 99热九九在线| 亚洲精品国产A久久久久久| 99在线资源| 丁香激情婷婷网| 色综合网址| 久久五月天 91| 99热综合| 五月丁香六月激情综合| 精品人妻久久久| 超碰人人艹| 亚洲天堂有码| BBWCUCKOLD精品熟妇| 97干视频在线| 日日夜夜小色哥| 五月天激情站| 婷婷狠狠爱| 国外亚洲成AV人片在线观看| 99热爱爱干干日| 色播五月婷婷五月| 侠女刀之记忆电影在线看免费| 26uuu丁香婷婷五月| 欧美色必爱| 少妇高潮呻吟A片免费看软件| 综合99久久天天综合| 婷婷在线免费| 国产永久一二一起草| 婷婷五月电影院| 狼人久草| 婷婷情色开心五月天99| 色九九九九| 伊人五月成人| 丁香五月婷婷六月| 天天色亚洲| 伊人日日干| 久久五月天色婷婷| 五月婷婷色播| 成人五月丁香花| 婷婷久久久| 九九九九国产| 亚洲激情综合| 五月婷婷九月婷婷九月婷婷| 天天做天天爰天天爽天天无遮挡| 99精品在线播放|