亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

邊緣網(wǎng)關(guān)如何解耦遺留系統(tǒng):新能源出海項目通信架構(gòu)升級實踐

邊緣網(wǎng)關(guān)如何解耦遺留系統(tǒng):新能源出海項目通信架構(gòu)升級實踐 凌晨兩點庫爾勒那邊的風電場項目打來電話說數(shù)據(jù)采集服務(wù)又串包了。原因還是老一套——上位機每隔幾秒就輪詢一遍幾十臺設(shè)備的Modbus寄存器老的通信服務(wù)程序每處理完一輪請求就要重新初始化一次串口句柄現(xiàn)場有臺設(shè)備偶爾響應(yīng)慢整個鏈路就卡死了。這已經(jīng)不是我第一次在新能源項目的現(xiàn)場聽到類似的問題尤其是那些帶著“老底子”出海的裝備問題會成倍放大。傳統(tǒng)裝備制造企業(yè)做新能源出海有個很容易被忽視的坎設(shè)備本身是新的BMS、PCS、EMS也都是新采購的可一旦要把這些設(shè)備接入到原有的生產(chǎn)管理系統(tǒng)、監(jiān)控后臺、運維平臺就立刻暴露出老系統(tǒng)的各種“不服”。這些遺留系統(tǒng)可能是十年前用C#寫的桌面服務(wù)程序跑在一臺Windows工控機上也可能是早期采購的嵌入式通信管理機只支持一路Modbus主站升級一個點位都要廠家遠程改固件。你帶著一臺非常先進的儲能變流器出海最頭疼的反而可能是這套老掉牙的通信底座。我在好幾個項目里被這個問題反復(fù)折磨之后徹底明白了“解耦”這兩個字的分量。這篇文章不聊怎么把遺留系統(tǒng)推倒重來那種事大概率不現(xiàn)實也沒必要。我想說的是怎么用一臺邊緣網(wǎng)關(guān)把那些跑了幾十年還不得不用的遺留系統(tǒng)從新能源裝備的高速演進中“摘”出來讓老的繼續(xù)按老的方式活讓新的用新的節(jié)奏跑兩邊互不拖累。先說個直白的結(jié)論邊緣網(wǎng)關(guān)在解決這個問題上不是錦上添花的“加個盒子”而是體系層面的“翻譯官隔離艙數(shù)據(jù)池”。它能同時解決協(xié)議不同、周期不同、數(shù)據(jù)結(jié)構(gòu)不同、物理接口不同這幾個層面的糾纏。而“解耦”這個動作也不是一次性工程它分成代碼解耦、硬件解耦、數(shù)據(jù)解耦、部署解耦四個層次真正的項目經(jīng)驗恰恰是這一點最容易被忽略。1. 出海項目里的遺留系統(tǒng)到底“遺留”在哪個環(huán)節(jié)1.1 不是所有老系統(tǒng)都該拆但要先找“卡脖子”的依賴做海外新能源項目的人都知道設(shè)備出口不同于國內(nèi)項目最大的變化是“邊界條件”變了。國內(nèi)你可能只需要對接電網(wǎng)調(diào)度、省市級平臺協(xié)議固定、平臺固定、響應(yīng)要求明確。到了海外每個國家的電網(wǎng)標準、通信規(guī)約、當?shù)乇O(jiān)管要求、業(yè)主運維習慣都不一樣有些地方甚至要求同時上送兩個甚至三個國標協(xié)議還要支持本地私有協(xié)議對接。問題就出在這里。你的新能源設(shè)備儲能集裝箱、光伏逆變器、風電變流器本身通信能力很強新的是Modbus TCP、IEC 61850、IEC 60870-5-104隨便選??墒抢系倪z留系統(tǒng)不是這樣它可能只能接受一種協(xié)議格式而這種格式還是十年前的一個項目組定死的字段長度、枚舉值定義、刷新頻率全都寫死在代碼里。我見過最典型的一個項目儲能集裝箱配套的老監(jiān)控系統(tǒng)底層通信程序把采集周期寫死成1秒但EMS的遙測數(shù)據(jù)是3秒才刷新一次結(jié)果老監(jiān)控界面上的SOC值每秒都在跳看起來就好像數(shù)據(jù)異常實際上老通信程序在拿3秒未更新的緩存數(shù)據(jù)反復(fù)上報。要解決這個問題常規(guī)思路是改監(jiān)控系統(tǒng)的代碼但這家廠家告訴我們這套系統(tǒng)是從歐洲某廠商買的源碼核心工程師已經(jīng)離職代碼注釋還是荷蘭語——想改根本無從下手。這是遺留系統(tǒng)的第一種“卡脖子”接口定義和業(yè)務(wù)邏輯深度耦合改任何一個字段都可能影響整套系統(tǒng)的穩(wěn)定性。1.2 老舊上位機通信程序的三大通病拋開代碼層面一個跑了五年以上的遺留系統(tǒng)在實際運行中普遍存在三個通病而這些通病在新能源出海場景下會被顯著放大。第一是單點輪詢瓶頸。老的上位機通信服務(wù)程序多數(shù)是單線程輪詢設(shè)計一臺主機掛幾十臺設(shè)備就接近上限了一旦總線里有一臺設(shè)備響應(yīng)慢后續(xù)所有設(shè)備的輪詢都會阻塞。海外項目通常要求接入更多的設(shè)備節(jié)點比如整車車隊、多臺儲能柜、分布式光伏陣列老系統(tǒng)根本扛不住。第二是協(xié)議單一死板。老系統(tǒng)往往只支持64點以內(nèi)的點位表或者只支持一種規(guī)約比如只有Modbus RTU主站面對海外項目動輒幾百上千的點位以及IEC 61850、DL/T 645、MQTT等多協(xié)議需求完全沒有擴展能力。第三是硬件綁定嚴重。老通信程序往往和工控機綁定依賴串口中斷、依賴操作系統(tǒng)版本、依賴特定廠商的USB轉(zhuǎn)串口驅(qū)動。一旦出海換了一臺新電腦或者客戶指定要裝在某款國產(chǎn)操作系統(tǒng)上程序就聯(lián)調(diào)不過去。這三個通病放在一起本質(zhì)上說明了一件事遺留系統(tǒng)的軟硬件生命周期已經(jīng)跟不上海外新項目的迭代速度。如果你硬著頭皮讓老系統(tǒng)去適應(yīng)新需求要么尋求原廠支持大概率要付費且周期漫長要么自己改代碼風險不可控要么就是在這種困境里反復(fù)消耗現(xiàn)場工程師的時間。我見過太多海外項目電氣工程師是在業(yè)主群里的Chat記錄和十幾個微信群里被遠程協(xié)調(diào)拉鋸戰(zhàn)折磨到崩潰的。1.3 邊緣網(wǎng)關(guān)介入的底層邏輯做中間層而不是改造者這些困境疊加在一起催生出了一個非常實際的需求——不指望老系統(tǒng)變得更聰明只求它能繼續(xù)穩(wěn)定輸出原來的數(shù)據(jù)同時讓新系統(tǒng)的接入工作不被它拖住。邊緣網(wǎng)關(guān)在這套邏輯里扮演的不是“改造者”而是“中間層”。它向下接管所有新老設(shè)備的通信向上統(tǒng)一對外提供標準的數(shù)據(jù)接口。老的遺留系統(tǒng)不需要知道外邊來了多少個新設(shè)備、換了什么協(xié)議它只需要按照自己熟悉的節(jié)奏跟邊緣網(wǎng)關(guān)這一臺“設(shè)備”打交道就夠了。這么做有個非?,F(xiàn)實的好處對遺留系統(tǒng)的改動量可以降到零。我們后續(xù)的項目里甚至有不少老系統(tǒng)本身硬件已經(jīng)壞掉了我們直接用邊緣網(wǎng)關(guān)的串口服務(wù)器功能模擬出一個以原IP和端口號存在的虛擬設(shè)備老平臺以為自己在跟原來的設(shè)備通信其實鏈路已經(jīng)被網(wǎng)關(guān)改道了。這就是解耦的精髓——不讓任何一端為了另一端犧牲特性和節(jié)奏所有變化都收斂在網(wǎng)關(guān)這一層處理。聽起來簡單真正落地要做到什么程度下一節(jié)展開說。2. 解耦的完整設(shè)計斬斷四層糾纏2.1 代碼解耦從“硬編碼”到“配置驅(qū)動”先聊軟件工程師最關(guān)心的代碼解耦。遺留系統(tǒng)里面最糟糕的代碼不是寫得亂而是邏輯全寫死在業(yè)務(wù)代碼里。舉幾個我在新能源項目里遇過的真實例子Modbus寄存器地址直接散落在業(yè)務(wù)代碼的各個角落改一個點位要全局搜索。串口參數(shù)、超時時間、重試次數(shù)寫在配置文件中但代碼里到處都是open()前臨時修改全局變量。業(yè)務(wù)邏輯和通信邏輯混在一個回調(diào)函數(shù)里收到一個遙測幀就直接更新界面、寫入數(shù)據(jù)庫、觸發(fā)報警中間沒有任何中間層。在一個出海項目里這種代碼耦合幾乎是致命的。因為海外業(yè)主的驗收往往要求提供協(xié)議一致性測試報告而字段每次調(diào)整都要重新編譯、發(fā)版、現(xiàn)場部署一輪一個項目下來光版本更新就二十多次。我們用邊緣網(wǎng)關(guān)做代碼解耦時核心手段是“配置驅(qū)動”。在網(wǎng)關(guān)里維護一個點位映射表把設(shè)備側(cè)的點位比如PCS的直流母線電壓寄存器地址30001映射成業(yè)務(wù)側(cè)的標準數(shù)據(jù)點比如dc_bus_voltage所有協(xié)議轉(zhuǎn)換、地址翻譯、格式轉(zhuǎn)換全部由網(wǎng)關(guān)完成。業(yè)務(wù)平臺對接的不再是某款設(shè)備的私有寄存器而是一份標準的JSON/Modbus/MQTT數(shù)據(jù)模型。這樣做完之后代碼改動被收斂成“配置修改”。新增設(shè)備時你只需要在網(wǎng)關(guān)的模板庫里選一個相似設(shè)備的模板改一下設(shè)備IP和點表不用重新寫代碼變更點位屬性時正常一個點位的配置修改在兩分鐘之內(nèi)就能完成不用再做版本發(fā)布。2.2 硬件解耦把應(yīng)用從物理硬件上“摘下來”代碼層面的解耦做完下一個棘手的問題是硬件。很多遺留系統(tǒng)跑在特定的硬件上比如一個老式的工業(yè)平板、一臺帶PCI串口卡的工控機。這些硬件要么停產(chǎn)要么因為海外項目需要通過EMC、高低溫、鹽霧測試而根本過不了檢。硬件解耦的本質(zhì)是讓上層應(yīng)用不再依賴特定硬件特性把它們封裝起來讓程序跑在任何一臺邊緣網(wǎng)關(guān)上都一樣。在我做的邊緣網(wǎng)關(guān)方案里這一步通常用容器化來實現(xiàn)。我們把老系統(tǒng)的通信服務(wù)程序比如那個Modbus輪詢程序打包成Docker鏡像跑在網(wǎng)關(guān)的容器運行時里。老程序?qū)ν獗憩F(xiàn)不變——它還是監(jiān)聽5000端口但實際通信鏈路已經(jīng)被虛擬化網(wǎng)關(guān)的容器網(wǎng)絡(luò)把宿主機物理串口映射成容器內(nèi)的虛擬串口老程序在容器里去訪問/dev/ttyS1其實訪問的是網(wǎng)關(guān)物理RS485口之后接的設(shè)備。硬件層面的“解耦”這個詞在項目里我通常講三層含義應(yīng)用不再關(guān)心跑在哪個物理設(shè)備上容器可以遷移、重啟、備份。應(yīng)用不再需要認識真實物理端口虛擬串口、虛擬網(wǎng)口讓“接線”變成“配置”。數(shù)據(jù)不再依賴物理鏈路存活斷網(wǎng)時數(shù)據(jù)緩存在本地恢復(fù)后自動補傳。這套做法最受益的場景是海外項目的遠程運維。老系統(tǒng)一旦在海外現(xiàn)場掛了過去你只能請客戶拍日志、寄硬盤回來現(xiàn)在容器方案可以遠程把整個容器打包下載回來放到本地測試環(huán)境里復(fù)現(xiàn)問題甚至可以直接在網(wǎng)關(guān)側(cè)做遠程容器替換。這種調(diào)試效率和傳統(tǒng)模式是完全不同的兩個層次。2.3 數(shù)據(jù)解耦標準模型 vs 私有協(xié)議代碼和硬件解耦做完必須面對數(shù)據(jù)模型的統(tǒng)一。新能源設(shè)備的數(shù)據(jù)有兩個極端一方面是IEC 61850、IEC 60870-5-104這類標準化程度很高的規(guī)約字段定義、數(shù)據(jù)類型、時標格式都有國標規(guī)范另一方面很多海外項目用的還是廠家私有Modbus協(xié)議點位表五花八門SOC的縮放系數(shù)可能是0.1%也可能是0.01%溫度單位可能是攝氏度也可能是華氏度甚至同一個廠家不同批次設(shè)備的數(shù)據(jù)格式都不一致。數(shù)據(jù)解耦的方案是“雙軌制”網(wǎng)關(guān)向上輸出標準數(shù)據(jù)模型向下適配私有協(xié)議。翻譯成人話就是我只讓網(wǎng)關(guān)內(nèi)部處理那些復(fù)雜的、不統(tǒng)一的、私有化的轉(zhuǎn)換對外暴露給上層業(yè)務(wù)平臺的永遠是一份一致的數(shù)據(jù)模型。實際操作中我們采用了一個比較輕量但管用的方案基于JSON Schema定義統(tǒng)一數(shù)據(jù)模型。每臺設(shè)備在網(wǎng)關(guān)里都有一份配置文件里面規(guī)定了設(shè)備基本信息、參數(shù)點定義、映射規(guī)則、縮放系數(shù)、偏移量。業(yè)務(wù)平臺通過MQTT/HTTP接入網(wǎng)關(guān)時讀到的數(shù)據(jù)永遠是經(jīng)過網(wǎng)關(guān)處理后的標準格式。這里分享一個參數(shù)映射的小細節(jié)很多Modbus設(shè)備的狀態(tài)值用枚舉定義比如0x01表示停機0x02表示運行。海外項目業(yè)主可能希望看到的是stopped和running而國內(nèi)平臺可能更習慣直接用數(shù)字。這個轉(zhuǎn)換在遺留系統(tǒng)里往往要靠上位機程序去映射代碼里寫一堆if判斷。在邊緣網(wǎng)關(guān)里我們只需要在配置里維護一個枚舉映射表網(wǎng)關(guān)在數(shù)據(jù)采集上報時自動轉(zhuǎn)換。等于把原來需要寫代碼的事變成了填表格。上面說的都是軟件層面的事。如果部署層面沒有理順前面所有解耦工作都會變成白費。下一節(jié)我們進入實操。3. 實操過程從老系統(tǒng)到新架構(gòu)的遷移與接入3.1 先給老系統(tǒng)“做體檢”盤點遺留接口與資產(chǎn)動手改架構(gòu)之前我強烈建議先做一次系統(tǒng)的“資產(chǎn)盤點”。具體做三件事梳理遺留系統(tǒng)的對外通信接口有哪些網(wǎng)口、串口、總線分別跑什么協(xié)議波特率、IP、數(shù)據(jù)位校驗位是什么。梳理點位表系統(tǒng)里維護了多少個數(shù)據(jù)點每個點的刷新周期、數(shù)據(jù)類型、縮放系數(shù)、讀寫權(quán)限。標注業(yè)務(wù)依賴關(guān)系上層哪些功能強依賴遺留系統(tǒng)的實時數(shù)據(jù)哪些允許延時哪些一旦中斷會影響安全或合同考核。這一步看著瑣碎但它決定了遷移方案是“全量替換”還是“混合對接”。比如有一個老系統(tǒng)承載了消防聯(lián)動信號這種涉及安全的鏈路遷移時我會盡量避免大改讓老系統(tǒng)直接對接網(wǎng)關(guān)的一個I/O點網(wǎng)關(guān)再把這些信號疊加到新平臺的告警模型里兩路并行一段時間。盤點結(jié)果出來了要畫一張簡單的數(shù)據(jù)流圖不是架構(gòu)圖就是實際鏈路標清楚每條鏈路的物理路徑和協(xié)議類型。這張圖會成為后面所有配置的依據(jù)。3.2 用容器化把遺留應(yīng)用從硬件上“摘下來”這一步是整套方案里最“外科手術(shù)”的部分。目標是把遺留系統(tǒng)里的核心通信服務(wù)程序遷移到邊緣網(wǎng)關(guān)的容器環(huán)境里運行。具體流程是這樣的在原來的老系統(tǒng)上導(dǎo)出程序目錄、配置文件和運行日志確認程序?qū)\行時環(huán)境有哪些依賴是.NET Framework還是Java是否需要特定的本地庫。在開發(fā)機上用相同的操作系統(tǒng)基礎(chǔ)鏡像老程序如果是Windows我們通常用Wine容器做兼容層或者選擇Windows IoT容器方案如果是Linux就選擇對應(yīng)版本的Debian/Ubuntu鏡像制作運行環(huán)境。利用tar或docker build命令把程序、庫、配置文件全部打入鏡像并把程序的通信端口暴露出來。使用docker-compose或者Kubernetes邊緣端我一般用輕量的k3s在網(wǎng)關(guān)側(cè)啟動。需要注意的一個坑是老程序往往依賴物理硬件的時鐘和串口資源在容器里要額外處理。我們一般把網(wǎng)關(guān)的RTC硬件時間掛載進容器保證時間戳一致同時用--device參數(shù)把物理串口設(shè)備映射到容器內(nèi)讓程序認為自己在直接操作真串口。如果你們網(wǎng)關(guān)上有多個串口建議給每個串口建一個獨立的udev規(guī)則確保重啟后設(shè)備路徑不變。這一步做完你手上就有一個可以從網(wǎng)關(guān)里一鍵啟停的遺留系統(tǒng)運行單元。它對上層平臺和下層設(shè)備的接口跟上線前完全一致——但底層的物理依賴已經(jīng)被斬斷了。3.3 協(xié)議轉(zhuǎn)換與虛擬接入點的搭建細節(jié)容器化部署只是第一步。真正的解耦發(fā)生在協(xié)議轉(zhuǎn)換層。先說最常見的場景老監(jiān)控平臺只支持Modbus TCP從站地址范圍是1到20新設(shè)備比如鋰電池BMS只能通過CAN口輸出或者只支持IEC 61850。要打通這兩端傳統(tǒng)做法是給老平臺換通信卡、裝協(xié)議轉(zhuǎn)換器然后更新點位表。用邊緣網(wǎng)關(guān)就簡單得多——在網(wǎng)關(guān)上同時啟用Modbus TCP從站模擬器和對應(yīng)的協(xié)議采集服務(wù)。以Modbus TCP從站模擬器為例我們是這樣配置的在網(wǎng)關(guān)上啟用Modbus TCP Server模擬老平臺期望的那個從站地址比如站號10。在網(wǎng)關(guān)后臺配置點表把新設(shè)備采集出來的真實數(shù)據(jù)如總電壓、總電流、SOC映射到Modbus寄存器地址如30001、30002、30003。網(wǎng)關(guān)內(nèi)部的數(shù)據(jù)引擎會以設(shè)定好的周期比如1秒輪詢新設(shè)備并把最新數(shù)據(jù)緩存到寄存器表里。老平臺按照原來的邏輯去讀站號10的30001寄存器讀到的其實是網(wǎng)關(guān)從新設(shè)備那邊拿來的最新值。這里有一個細節(jié)直接關(guān)系到現(xiàn)場聯(lián)調(diào)能不能順利通過老平臺往往會對“數(shù)據(jù)新鮮度”做校驗比如它判斷一個遙測點是否有效的依據(jù)是“最近5秒內(nèi)有沒有被刷新過”。如果網(wǎng)關(guān)只在輪詢到新數(shù)據(jù)后才更新寄存器某些老平臺會誤判數(shù)據(jù)超時。我們的做法是在網(wǎng)關(guān)里把Modbus從站的寄存器表設(shè)置為“始終可讀”即使底層設(shè)備短暫離線網(wǎng)關(guān)也返回上一次有效值同時通過一個專門的狀態(tài)點告訴上層“這條數(shù)據(jù)是緩存”。這樣就避免了一些因為數(shù)據(jù)有效標志位處理不當導(dǎo)致的“全灰”事故。這個環(huán)節(jié)的工程量往往取決于協(xié)議轉(zhuǎn)換的種類有多少種。我們做過的項目里最多的一種場景是一個儲能集裝箱項目需要同時做Modbus RTU轉(zhuǎn)Modbus TCP、CAN轉(zhuǎn)Modbus TCP、IEC 61850轉(zhuǎn)MQTT還要把老平臺的私有協(xié)議報文轉(zhuǎn)成標準JSON。在傳統(tǒng)架構(gòu)里這需要掛三到四個協(xié)議轉(zhuǎn)換盒子現(xiàn)場光接線和調(diào)試就要一周上了邊緣網(wǎng)關(guān)后同一臺設(shè)備上同時運行三個協(xié)議轉(zhuǎn)換容器接線從幾十根變成兩三根配置時間也從幾天縮短到半天。3.4 邊緣側(cè)數(shù)據(jù)緩存與斷網(wǎng)續(xù)傳的部署策略海外項目最大的不確定性是網(wǎng)絡(luò)鏈路。國際鏈路不穩(wěn)定專線價格高公網(wǎng)更是經(jīng)常抽風。老系統(tǒng)原本是“通信服務(wù)程序連上位機數(shù)據(jù)庫”鏈路一斷所有數(shù)據(jù)就沒了。解耦后邊緣網(wǎng)關(guān)把數(shù)據(jù)緩存和續(xù)傳變成一個標準能力。部署時的策略通常是三檔實時數(shù)據(jù)用MQTT QoS 1至少一次上報歷史數(shù)據(jù)落本地時序數(shù)據(jù)庫我們用influxdb輕量版鏈路恢復(fù)后按時間戳補傳關(guān)鍵遙信變位和告警用HTTP/HTTPS接口直接推送保證即使主鏈路斷了告警也能到。在配置斷網(wǎng)續(xù)傳時有一個關(guān)鍵參數(shù)——補傳窗口。補傳數(shù)據(jù)太多會擁堵太少會丟數(shù)據(jù)。我的經(jīng)驗是根據(jù)現(xiàn)場實際數(shù)據(jù)量設(shè)置一個合理的補傳窗口一般默認24小時。如果現(xiàn)場歷史數(shù)據(jù)量特別大比如每臺設(shè)備每秒上送20個點建議對歷史數(shù)據(jù)做衰減式下采樣——離線期間存儲1秒原始數(shù)據(jù)但補傳時只補1分鐘均值。這樣既保證連續(xù)完整又不會直接把海外云平臺的帶寬打滿。4. 硬件測試與解耦驗證不能只在跑通時歡呼4.1 解耦后為什么要重新設(shè)計測試方案很多團隊以為解耦完就高枕無憂了然而真正的坑往往出現(xiàn)在硬件測試階段。解耦前你測試的對象是“一套軟硬件綁定的系統(tǒng)”解耦后你測試的對象變成了“多個可獨立替換的組件”這意味著測試邏輯要做相應(yīng)變化。比如原來測一個通信鏈路你只要把工控機和設(shè)備連起來跑一下就行。解耦后通信鏈路變成了設(shè)備→采集服務(wù)→協(xié)議轉(zhuǎn)換→消息中間件→上層平臺。鏈路變長了故障定位的復(fù)雜度上去了如果沒有針對性的解耦測試方法你連“問題出在哪一層”都沒法快速判斷。尤其是出海項目的硬件測試還疊加了額外要求設(shè)備要在國內(nèi)工廠做整機出廠驗證同時在海外現(xiàn)場做二次驗收。兩個場景的環(huán)境變量網(wǎng)絡(luò)、電源、溫濕度不同如果測試方案沒有把解耦后的各層拆開驗證很容易出現(xiàn)“國內(nèi)過了、海外掛了”的經(jīng)典翻車。4.2 三種實用的硬件測試解耦方法既然標題里的熱搜詞提到了“硬件測試時候解耦的方法有哪些”我專門把三種我自己常用且經(jīng)過驗證的方法介紹一下。方法一協(xié)議樁Protocol Stub。在網(wǎng)關(guān)的測試環(huán)境里用一個模擬程序充當設(shè)備側(cè)循環(huán)發(fā)送固定的Modbus報文。它的作用是驗證網(wǎng)關(guān)的上層輸出是否符合預(yù)期不受真實設(shè)備干擾。我在項目里一般用Python寫一個簡單的Modbus TCP服務(wù)器監(jiān)聽502端口內(nèi)存里維護一張寄存器表測試時用腳本隨機改變某些寄存器值。網(wǎng)關(guān)采集到數(shù)據(jù)后上層平臺應(yīng)該能看到對應(yīng)的變化。這個樁的價值在于你可以精確控制“設(shè)備側(cè)發(fā)生了什么”便于驗證異常流程——比如寄存器超時、返回錯誤碼、重啟重連等。方法二回放Replay。把現(xiàn)場抓包保存的真實設(shè)備日志通常是Modbus/TCP dump在測試環(huán)境里回放讓網(wǎng)關(guān)以為自己還在跟真設(shè)備通信?;胤艤y試的價值在于它能暴露用“理想化模擬數(shù)據(jù)”發(fā)現(xiàn)不了的問題——比如真實場景里的亞穩(wěn)態(tài)響應(yīng)、超時抖動、偶發(fā)被動幀。我們項目里有幾次疑難故障都是靠回放現(xiàn)場抓包文件才在實驗室里復(fù)現(xiàn)的。做回放測試時有個小技巧不要把抓包原封不動地循環(huán)發(fā)而是人為改變報文的時序間隔比如把一些響應(yīng)延遲拉長幾倍這樣更容易暴露網(wǎng)關(guān)的超時重試邏輯是否健壯。方法三故障注入Fault Injection。在測試過程中主動模擬各種真實故障拔掉網(wǎng)線、斷電重啟、短路串口、給設(shè)備發(fā)錯誤響應(yīng)碼。目的很直接——驗證解耦后系統(tǒng)是否真的能“隔離故障”。因為解耦的一個重要目標是故障爆炸半徑受限某一條鏈路斷了其他鏈路不受影響。做故障注入測試時我通常是在網(wǎng)關(guān)里跑一只小腳本定時隨機下游接口發(fā)送錯誤幀同時觀察報警和上報鏈路是否正常。記住故障注入測試要留足時間窗口一般每輪至少保證30分鐘以上因為有些故障是延時暴露的比如內(nèi)存泄漏引起的緩慢惡化跑一兩分鐘根本發(fā)現(xiàn)不了。4.3 性能冗余怎么留CPU、內(nèi)存、時延的“六成“原則解耦后的邊緣網(wǎng)關(guān)承擔的任務(wù)通常比原來一臺普通工控機要多很多——既要跑容器化的遺留服務(wù)又要做協(xié)議轉(zhuǎn)換還要做本地緩存和遠程上報。很多項目上線一段時間后才發(fā)現(xiàn)性能不夠再改架構(gòu)就非常被動了。我的經(jīng)驗是用“六成”原則提前把冗余留出來網(wǎng)關(guān)的CPU負載在日常運行峰值不應(yīng)超過60%內(nèi)存占用不應(yīng)超過物理內(nèi)存的60%協(xié)議轉(zhuǎn)換和上報的端到端時延從設(shè)備數(shù)據(jù)刷新到上層平臺收到數(shù)據(jù)不應(yīng)超過60%的接口超時閾值。舉個例子如果上層平臺的輪詢超時時間設(shè)定為5秒那網(wǎng)關(guān)從“采集到設(shè)備數(shù)據(jù)”到“把數(shù)據(jù)推送到上層平臺”的時延就必須控制在3秒以內(nèi)這3秒就是你的預(yù)算。如果實測時延接近4秒接下來就要從三個方向排查優(yōu)化一是消息中間件的隊列大小和消費速率二是協(xié)議轉(zhuǎn)換線程的并發(fā)度三是上層平臺側(cè)的輪詢周期是否過于激進。這三個方向里我見過的案列中最多的問題是“上層平臺去讀網(wǎng)關(guān)的一個從站時用了阻塞式同步調(diào)用”一旦底層設(shè)備響應(yīng)慢整個平臺就卡。這種情況下通常建議把上層平臺的讀取邏輯改成異步輪詢或者啟用網(wǎng)關(guān)的本地緩存加速。5. 常見問題與排查技巧實錄5.1 頻繁掉線、暫時性超時、數(shù)據(jù)跳變怎么定界解耦架構(gòu)上線后最常見的排障場景是“數(shù)據(jù)時好時壞”。我們歸納過這類問題的本質(zhì)往往不是“解耦”本身引起的而是解耦后“故障邊界”更清晰了反而更容易定位。先說“頻繁掉線”。如果發(fā)現(xiàn)某臺設(shè)備在網(wǎng)關(guān)里反復(fù)離線優(yōu)先排查物理鏈路用萬用表量串口電平是否正常、RS485的A/B線是否接反、終端電阻是否匹配。如果是海外遠程項目沒法現(xiàn)場量就直接看網(wǎng)關(guān)的串口統(tǒng)計日志——如果收幀錯誤率持續(xù)走高大概率物理層不穩(wěn)而不是軟件問題。再說“暫時性超時”。如果在平臺側(cè)看到偶發(fā)的讀取超時很多時候是網(wǎng)關(guān)內(nèi)消息隊列擁堵導(dǎo)致的。我先看隊列積壓數(shù)如果積壓超過某個閾值就增大采集線程和上報線程之間的緩沖隊列深度同時降低采集頻率。記住用邊緣網(wǎng)關(guān)做解耦后你永遠要留一個“背壓”處理機制底層采集慢不要緊但不能讓上層平臺一直等。所以配置里會為每個數(shù)據(jù)點設(shè)置一個“過期時間”超出時限就返回最后一次有效值并在狀態(tài)點里標注為“Stale”。還有“數(shù)據(jù)跳變”。多半是點位映射和縮放系數(shù)配錯了。Modbus的數(shù)據(jù)類型分16位、32位、浮點、大小端、縮放系數(shù)這些只要錯一個數(shù)據(jù)就會邏輯異常。遇到跳變問題我第一件事是去查網(wǎng)關(guān)的點位配置重點看“字序”word order和“字節(jié)序”byte order。業(yè)內(nèi)Modbus常見的坑就是同一個寄存器表設(shè)備廠家用的大端你按小端解析就會看到數(shù)值無規(guī)律跳來跳去。5.2 現(xiàn)場快速診斷的兩個小習慣解耦后的架構(gòu)在海外項目調(diào)試時有兩個小習慣能幫你省下大量時間。第一所有邊緣網(wǎng)關(guān)要有統(tǒng)一、可見的運行狀態(tài)可視化頁面。這個頁面不用很復(fù)雜但必須能同時看到三層狀態(tài)底層設(shè)備鏈路狀態(tài)在線/離線/延遲、中間層容器運行狀態(tài)健康/已停止/重啟了幾次、上層數(shù)據(jù)上送狀態(tài)最后一條數(shù)據(jù)是什么時候發(fā)出的、目標地址是否可達。有了這個頁面現(xiàn)場人員排查問題時不需要猜直接一屏全覽。第二保留一份完整的“配置基線”。每次修改點位、切換協(xié)議、升級容器鏡像之前給網(wǎng)關(guān)導(dǎo)出一份完整的配置文件JSON/xml/yaml均可一般我們直接支持從Web界面導(dǎo)出一鍵備份包。這個備份包的好處是萬一這次改動導(dǎo)致問題你可以直接一鍵恢復(fù)到改動前的狀態(tài)而不是在現(xiàn)場一行行地撤回配置。別小看這個習慣海外項目的現(xiàn)場工程師本來就很緊張少幾次誤操作就少幾次精神損耗。5.3 遺留系統(tǒng)本身“不配合”時網(wǎng)關(guān)的三種兜底手段萬一遇到的遺留系統(tǒng)特別頑固既不讓改代碼也不讓裝軟件甚至不愿意對外暴露任何協(xié)議的細節(jié)此時網(wǎng)關(guān)還能靠以下手段兜底抓包解析在遺留系統(tǒng)和原設(shè)備之間做網(wǎng)口鏡像或串口監(jiān)聽網(wǎng)關(guān)被動監(jiān)聽鏈路里的報文用解析器把協(xié)議逆向出來。這個手段我用了很多次幾乎市面上常見的Modbus、DL/T 645、IEC 60870-5-104單體設(shè)備都能在監(jiān)聽模式下提取出點位表和刷新周期。模擬從站如果遺留系統(tǒng)本身是“主站”它要主動去輪詢下面設(shè)備我們可以讓網(wǎng)關(guān)模擬成它期望看到的那個“從站”設(shè)備用固定寄存器地址回應(yīng)它的輪詢。遺留系統(tǒng)并不知道自己在跟網(wǎng)關(guān)對話還以為底下連的是原來的設(shè)備。屏幕采集實在沒招時如果老系統(tǒng)有一個可視化界面比如顯示實時數(shù)據(jù)的HMI可以用網(wǎng)關(guān)的HDMI采集模塊把屏幕內(nèi)容抓下來通過OCR識別成結(jié)構(gòu)化數(shù)據(jù)后上報。這是最“暴力”的一種方式但我確實在一臺2005年出廠的老監(jiān)控系統(tǒng)上用過這招成功把它的發(fā)電量數(shù)據(jù)接入了新平臺。這三種手段的核心思路是一致的解耦不是說必須得到對面配合才能改而是通過邊緣側(cè)的主動適配把對方的“黑盒”特性消化在網(wǎng)關(guān)層。6. 踩坑心得與我的幾點總結(jié)方案講到這里我想分享幾個在實際項目中反復(fù)被驗證過的心得也是我現(xiàn)在拿到一個新出海項目時會優(yōu)先做的三件事。第一別急著動代碼。先搞清楚對端系統(tǒng)的“最小可行適配面”是什么。很多看起來復(fù)雜的問題用網(wǎng)關(guān)的協(xié)議轉(zhuǎn)換和配置能力就能解決代碼一層不變。這個“先想清楚接口再想實現(xiàn)”的習慣能幫項目省掉至少一周的返工時間。我在后面的項目里都是先讓商務(wù)去跟客戶要遺留系統(tǒng)的接口協(xié)議文檔和點位表而不是要源代碼。拿不到接口協(xié)議時才啟動抓包和逆向。這比盲目承諾“我們兼容一切”靠譜得多。第二解耦不是一次性的。解耦是一個持續(xù)演進的過程項目初期先把最痛的地方解掉后面隨著規(guī)模擴大再逐步把新的子系統(tǒng)通過網(wǎng)關(guān)接進來。很多團隊把解耦理解成一個“T-1日大切換”結(jié)果現(xiàn)場出問題就全線回滾。真正穩(wěn)妥的做法是“漸進式替換”先讓網(wǎng)關(guān)旁路監(jiān)聽老系統(tǒng)鏈路同時把新系統(tǒng)接入網(wǎng)關(guān)兩邊并行跑一段時間確認數(shù)據(jù)一致后再切換主鏈路。這就像給飛機換發(fā)動機你不能讓飛機停下來你要一臺一臺地換換完一臺測試一臺。第三我自己的體會是邊緣網(wǎng)關(guān)更適合作為“數(shù)據(jù)底座”而不是“業(yè)務(wù)系統(tǒng)”。有些客戶總想把業(yè)務(wù)邏輯比如告警聯(lián)動規(guī)則、設(shè)備控制策略也塞進網(wǎng)關(guān)里跑結(jié)果網(wǎng)關(guān)變得越來越重性能和穩(wěn)定性都受影響。在我建議的方案里網(wǎng)關(guān)只做“協(xié)議的終結(jié)者”和“數(shù)據(jù)的搬運工”真正的業(yè)務(wù)判斷放在上層平臺網(wǎng)關(guān)側(cè)最多做輕量級的邊緣計算比如越限判斷、數(shù)據(jù)過濾不做復(fù)雜的業(yè)務(wù)編排。保持底層網(wǎng)關(guān)的“純粹”是讓整個系統(tǒng)長期穩(wěn)定的一個好習慣。最后再分享一個小技巧。你在給海外客戶配置頂部標題時別把網(wǎng)關(guān)默認的MODBUS服務(wù)名寫得太技術(shù)化。我們有個客戶要求網(wǎng)關(guān)在Modbus從站信息里顯示“GateWay Unit For Battery Storage”這樣老平臺接入時看到的是個語義化名稱而不是一串亂碼。細節(jié)上對方會覺得你們團隊非??孔V后續(xù)驗收也能少很多解釋成本。這些經(jīng)驗都是一個個海外現(xiàn)場熬出來的。裝備出海本質(zhì)上是把標準寫進行業(yè)規(guī)則里而不是去遷就老系統(tǒng)的壞脾氣。邊緣網(wǎng)關(guān)只是一個抄近道的工具真正的功夫在于你如何設(shè)計出那一條條解耦的“護城河”。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
国产超碰欧美| 97少妇人妻中文字幕久久 | 天天综合香 ld视频| 淫荡熟女乱伦网| 日韩欧美麻豆 | 人妻91少妇| 爱爱动态120秒| α√在线| 香蕉视频精品亚洲一区二区三区在线播| 麻豆蜜桃视频在线观看| 伊人影院在线理论播放| 约操熟妇| 精品毛片av一区二区| 久草毛片| 大香蕉琪琪日本女优不卡| 久久久久婷婷| 97视频在线视频| 骚熟女吞| 亚洲午夜免费狠狠干| 国产成人资源| 日韩成人私密一级精品av| 91综合天天看| 黄片www视频免费| 黄片无码在线制服| 久久中出| 精品一区二区三区蜜桃| 我中文字幕6区| 无码自拍SM| 91在线精品一区二区三区| av天堂加勒比| 怡红院亚洲怡春院av| 日日日啊啊啊| 激情五月婷| h无码动漫在线观看| 熟妇乱伦一区二区| 亚洲人天堂| 久久超碰亚洲人| www.狠狠| 婷婷综合在线| 大香蕉综合在线| 少妇高潮特黄A片| 强奸国产精品视频| 成人乱码一区二区三少妇| 精品国产一区探花在线观看| 国产人妻久久精品一区二区三区| 伊人在线大香蕉视频久久| 日本不卡码黄色| 97人妻色| 9久久9综合| 日本丝袜美腿人妻九九| 中文字幕一区二区无码成人| 久久9 9 9精品| 蜜桃色院一区久久| 欧美人妻一区| 欧美偷拍区| 强免费黄色网址| 97在线免费观看视频| 欧美一级AAAAAAA| 欧美男人天堂| 97久久精品国产| 天天干天天日天天射黄色大片 | 人人操人人摸人| 亚洲熟妇丝袜在线观看| 久久久555| 乱伦3P视频| 久久久久九九九| 92午夜免费福利视频| 国产熟女免费观看久久| 久久精彩免费视频| 久久天天躁日日躁狠狠躁| 天天综合网91入口| 综合久久99亚洲人妻中文在线| 精品超碰中文在线| 超碰97网址| 97超碰美国| 91久久午夜无码鲁丝片久久人妻| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 一区二区三区国产在线播放 | 啊啊啊好湿久久| 91逼逼女人91| 嫩草 我啊~嗯~在线| 997色在线| 日本顶级天天操狠狠操夜夜操中文字幕| 亚洲 图片 欧美 色图| 日日橹狠狠爱欧美超碰| 91GD.COM| 日本人妻中文字幕精品| 韩日性爱av| 天久久久噜噜噜久久国产精品爽爽| 97精品全部| 另类图片五月| 99AV| 9国产超碰| 久久中文字幕不卡人妻| 新婚人妻扶着粗大强行坐下| 91无码中出人妻视频| 日韩在线观看AV| 超碰综合色| 五月丁香婷婷综合| 久久综合久久综合人久久夜精品| 欧美麻豆成人同性GⅤ在线| 亚洲Av无码成人精品国产| 亚州精人品大香蕉| 97欧美综合网| 亚洲 中文字幕 精品| 欧美操逼熟女| 中文字幕av久久爽Av| 超碰偷拍| 性爱免费视频成人| 猛交交| 婷婷五月天激情小说| 人妻在线大香蕉| 五十路熟女在线不卡观看一区二区| 久久九九热| 午夜精品久久久久久久男人的天堂| 欧美人妻一区| 韩国黄色片精品久久久| 97超碰69| 欧美青青草视频| 国产十八禁视频| 性交一区二区在线播放| 福利社区午夜一区二区| 又大又大又大又粗爽高潮观看| 精品黑人一区二区| 强奸乱伦亚洲第一页| 亚洲宅男天堂| 快灬快灬 一下爽蜜桃在线观看| 亚洲第一视频 欧美风情 日韩| 中文字幕人妻色偷偷久久皮| 大白逼三四级| 小骚逼被操的爽不爽| 色 婷97| 五十路三区在线| 伊人久久大香大香线蕉中文| 欲女人妻性色av| 中文?日韩?免费?精品| 国产又色又爽又舒服的三级视频| 欧美一二级| 久久r精品| 四虎精品一区| 91爰爱欧美| 凹凸视频在线一区二区| 黄页大片在线观看| 日本一级真人黄色性爱视频| 精品熟女一区=区三区| 亚洲无992tv| 超碰精品在线| 91熟女在线| 中文字幕亚洲热播人妻| 91欧美巨乳| 久久九九国产精品| 易易A毛视频| 高清不卡视频| 男女激烈网站最新| 综合91网| 大香蕉手机视频| 激情在线青青操| 欧美东京热精品A∨| 亚洲色综合| 色婷婷淫色网| 九九草| 啊啊啊不要好疼视频| 日日夜夜模| 男人的天堂午夜av| 色综合20p| 肏逼福利网站| 色yeye成人免费视频| 熟妇人妻一区二区三区| 嗯嗯啊啊视频在线看| 超碰超碰95| 国产精品无码在线| 国内91熟女人妻丝袜天天精品视频在线 | 久久久久久久久久久久久久久性生活视频| 亚洲欧美情色| 超碰久久性爱| 3P乱轮视频| 哈哈操 大香蕉| 大鸡巴久久久| 91人妻Pr| 亚洲欧美在线观看无码| 中文字幕视频在线观看| 色婷婷婷五月天激情四射| 手机在线视频国内精品| 一起草视频在线| 一区 欧美 日韩 麻豆| 天天插夜夜操| 久久亚洲不卡| 亚洲黄色视频在线观看视频| 天天弄欧美| 亚洲美女自拍偷拍视频| 亚洲AV无码乱码| 91操人| 先锋精品av色鲁| 欧美一级久久久久久久大片动画| 欧美综合网A| 伊人久久大香蕉线AV五月天| 乱精品一区字幕二区| 国产av强奸美女| 蜜臀99久| 欧美色图91| 亚洲欧美91√| 18禁久极品美女久久哦哟呀!| 激情五月婷婷综合| 九九在线视频| 国产a级精品| 亚州精人品大香蕉| 亚洲色五月| 国产区91柔拿会所技师| 性爱网站一区二区| AV乱伦国产| 中文字幕av片| 国产又大又粗又长视频| 91精品国| 狠狠爱夜夜| 香蕉大久久久| 使劲用力艹少妇视频一区二区| 欧美成人精品一区二区三区| 欧美人妻精品| 一牛影视久久久一区二区三区| 综合网色| 九月丁香| 欧美日韩色图片| 精品久久久久久亚洲| 国产女人91精品嗷嗷嗷嗷| 强奸乱伦亚洲第一页| 情趣丝袜无码操逼视频| 操婢日韩| 亚洲欧美激情在线视频| 精品视频一区二区| 97日韩| 色香av| 一区二区高清视频| 亚洲成人性爱网站在线播放| 亚洲中文字幕精品久久久久久直播| 精品偷拍13p欧美dodk视频| 免费αⅴ在线观看| 一区二区三区四区五区高清无码永久视频| 伊人97色天使| 大香蕉色欲AV| 综合色好色| 国产精品国产自产高清AV| 婷婷去俺也去六月色| 日韩亚洲Av人人夜夜澡人人爽| 手机看片1024你懂的国产| 激情五月综合| 超碰在线一区二区三区| 日韩综合第八区国产精品| 日韩欧美女优电影| 色 婷97| 97在线资源| 五月婷婷hd| 久久久内射良家| 久久久一区二区三区麻豆| 性色A∨91| 久久午夜鲁丝片| 9999免费精彩视频| 99国产精品免费| 另类欧美综合| 啪啪啪东京| 无码日韩网站| 97欧美精品综合| 老熟妇一区二区三区| 天美传媒精品一区二区| 亚洲最大无码中文字幕网站| 99热婷婷| 日韩欧美视频青青| 97超碰人操| 丰满人妻一区二区三区色-百度| 欧美日韩日产免费网站看| 97精品一区二区视频| 91美女视频在线观看| 无码免费精品高清| 伦理弟一页| 天久久久噜噜噜久久国产精品爽爽| 国产AV天美传媒一区二区三区| 大香蕉天天看妹子| 亚洲AV乱码专区国产噜噜亚洲| 啊啊啊啊好大好硬啊啊啊啊啊| 欧美精品三区| 无码少妇精品一区二区60岁老人| 日本 免费 一区二区三区 久久香蕉| 国产乱不卡| 中文字幕日韩电影人妻| 欧美另类色| 伊人嫩草| 日本色色色视频| 999综合色| 亚洲国产精品成人久久蜜臀| 熟女突然公开看18禁影片| 欧洲与亚洲欧美精品中文字幕| 国产深喉视频一区二区| 天天日少妇逼AV| 夜夜嗨TV| 久久XX| 不卡六六在线91| 2018天天干在线视频| 熟女色图在线| 91P0RNY大屁股人妻| 欧美有码激情视频一区二区三区| 亚洲色婷婷综合久久久久中文| 韩国成人精品久久久免费看| 亚洲激情色片 | 国产精品美女视频诱惑| 夜夜肏2021| 日韩在线电影| 超碰久久性爱| 免费观看成人www精品视频| 性欧美另类高清| 99热这里只有精品18| 伊人综合色网| 免费一级黄色录像影片| 天天超级碰碰碰| 特级毛片特黄久久免费看 | 国产精品欧美在线观看| 殴美牲| 日韩肏逼视频| 97天天插| 操狠狠| 久久黄片国产一区二区| 欧美传媒一区| 五月婷婷六月天| 啪啪啪综合网| 国产精品3| 五月婷丁香| 欧美中出| 日本熟妇色熟妇在线视频播放| 欧美性爱中文字幕无线码| 欧美第二页午夜| 色婷亚洲五月在线观看| 91综合在线| 人人搡人人肉久久精品| 中字乱伦AV| 欧美高清色| 欧美少妇内射| 亚洲熟女乱色| 天堂岛av| 美女极品一区二区三区| 一区二区视频在看| 99蜜桃臀久久久欧美精品网站| 熟女人妇一区二区三区| 久久一区二区三区四区五区| 91丝袜激情在线| 日本三级日本三级99| 17c嫩草51久久91嫩草| 欧美另类自拍 | 综合熟妇一区二区三区| 一区麻豆 高清中文字幕| 熟女人妻一区二区三区| 综合久久久久久久久91| 日韩精品人妻一区二区| 亚洲欧美日韩电影网站一区| 久操视频免费在线观看| 久久婷婷视频| 逼逼逼逼操操操操操操操操操午夜剧场| 四虎av在线| 激情亚洲天堂| 日韩AV一区二区三区四四| 可能人人看人人摸| 国产黄色视频久久| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 精品综合久久久久久97| 9精品久久久久| 麻豆久久久一区二区| 正在播放国产精品一区| 日韩情色AV| 久久久久亚洲熟妇熟女| 久久五月综合| 天天干夜夜鈤| 91五月天| 在线播放成人高清免费视频| 国产精品久久久久久久AV大片| 自拍第一页| 久久綜合很很很| 九九九综合精品| 久久,精品一二三| 亚洲精品人妻吞精av| 99老司机精品视频在线观看| 家庭乱伦麻豆| 999久久久免费精品国产牛牛| 另类老少妇| 老熟女中文字幕高清| 九九九九九九成人| 国产SV一线| 色呦呦、国产精品| 久久久999网站| 99色在线| 99热超碰| 精品国产网站| 91成人国产综合久久精品蜜月| 少妇国产不卡| 国产一区麻豆免费观看| 天天干天天中出av| 亚洲精品白丝| 婷婷九月丁香| 欧日韩一二三f区| 精品人妻15区| 91综合中文字幕| 襙一襙| 搡老熟女免费视频 | a级免费在线观看| 福利视频香蕉免费一区二区在线| 日韩欧美日韩| 天天日天天搞天天干| 情趣丝袜无码操逼视频| 色综合久久88色综合久久天天| A片 AV一级在线播放观看免费| 欧美另类综合久久| 亚洲欧美日韩综合在线尤物 | 日韩中文字幕视频在线观看| 日本3级一区二区免费| 亚洲操逼网| 91在线色综合| 97色色国产视频| 日韩精品一区,二区 九九...老司机| 亚洲人人夜夜澡人人爽| 大香蕉综合网| 巨爆乳一区二区爆乳区| 99久久婷婷| 9久久9综合| 国产久久男人天堂| 欧美日韩狠狠爱| 熟女激情综合网| 日韩亚洲中文字幕在线| 密桃99999| 绑缚麻绳人妻寝取完整版| 美女丝袜激情小说| 欧美黄色手机在线观看| 亚洲成A∨人影院在线欢看| 亚洲五月丁香花狠狠干一区二区三区 | 激情久久av一区av二区av| 丁香六月婷婷久久综合| 欧美猛交黑寡妇中文字幕| 色偷偷2020免费视频播放| 又大又大又大又粗爽高潮观看 | 大香蕉亚洲中文| 国产五码丝袜屁眼| 欧美 亚洲精品首页| 欧美一二三级精品在线| 91狠狠综合久久久| 中文字幕人乱码中文字的预防方法 | 久久偷偷色综合蜜桃| 欧美一二三| 五月天婷精品激情| 动漫区日韩区欧美区| 91白虎| 色情乱伦AV| 日日日啊啊啊| 97精品| 五月丁香六月婷综合成人综合| 色眯眯射| 日韩免费在线观看不卡| 婷婷五月天补不补| 国产精品午夜精品| 亚洲天堂人妻熟妇视频| 亚洲丝袜色图| www.色吧5.com| 欧美激情综合色综合啪啪五月| 综合欧美日韩在线| 国产成人拍国产亚洲精品| 九九色综合| 欧美色图片欧美色图| AAAAAAAAA黄片| 色狠狠综合噜一二三区| 少妇被c 黄 免费观看| 巨爆乳肉感一区二区三区竹菊影视 | 麻豆天美在线| 亚洲熟女中文字幕在线| www.av不卡中文字幕| 尤物黄色在线观看网站| 日日夜夜国产综合| 成人午夜高潮av猛片| 九九热九九热| 日韩福利电影网| 色综合美国| 色婷婷一区二区三区久久| 另类天堂| 日韩欧美性吧婷婷乱伦大香蕉| 亚洲丝袜色| 亚洲情色视频| 亚洲AV资源| 亚洲āv网址在线观看| 成人在线视频二区| 亚洲日韩精品久久久久一区壹牛| 欧美综合加勒比在线| www国产无码| 啊啊啊好湿久久| 中文AV制服乱伦| 人人澡综合涩| 国产浮力影院第1页| 激情情色五月天| 九九性爱网| 天堂成人网| 日韩另类色图| 99老司机精品视频在线观看| 熟妇高潮二区三区| 大香蕉男女超碰精品在线| 天天看片青娱乐| 欧美日韩222| 日韩性爱毛片操骚逼| 在线免费试看60秒| 色97| 国内毛片婷婷六月色| 美女天天干| 精品少妇一区二区三区免费观看| 97人人夜夜精品视频| 国产精品高朝久久久久久久| 91久久99久久91熟女精品| 亚洲无 码A片在线观看麻豆| 91nbbbbbb| 亚洲精品国产精品乱码不99| 淫荡网址| 嗯~啊~快点 死我视频免费看网站| 欧美性爱在线无码| 久久性爱视频99| 久草线上视频免费看| 人妻少妇一区二区| 另类专区在线观看| 日本一区二区三区免费观看| 91热色| 国产四虎在线| 久久女婷| 亚洲第一黄色av网站| 日本一区二区三区四区五区六区七区八区九区| 欧美一区二区传媒| 色色综合网站| 一区二区影院| a片偷拍视频| 人妻丝袜二区| 大屁股熟女一区二区三区| 久久久久骚| 色狠狠色| 久久精品国产亚洲AV片多多| 日本在线观看网址| 超碰美国| 少妇九九九九| 欧美丝袜美女电影一二三四区| 操九九九九九九| 爽 好舒服 无码刺激久久| 99亚洲国产精品色一区二区三区| 欧美性色欧美| 亚洲蜜臀精品视频久久| 欧美传媒一区| 一直超碰| 综合 青草 伊久久 影院 综合| 亚洲色诱惑| 国产麻豆福利av在线播放| 欧美男人天堂| 久久只有精品| 久久9久| 少妇熟女一区二区三区| 欧美春色| 欧美日韩欧美| 啪啪啪综合| 传媒在线观看一区二区三区| 亚洲极品| 精品无人区麻豆乱码1区2区图片| 欧美性视频二区三区| 亚洲中文电影| 亚热日本熟女| 久草老司机| 操逼短片| 毛片99-全集电影手机免费观看完整-B029AV | 加勒比五月天| 伊人少妇久久久| 成人欧美日超碰| 欧美亚州色的图| 骚人妻少妇视频| 久久久久久久久久久久欧美日| 欧美精品偷拍| 九九九九一级| 99re99在线视频| 操久久久久| 好爽免费视频| 日本孕妇一区二区视频操逼免费看| 九九碰九九爱97超| 人人看黄色视频| 午夜激情成人在线观看| 国产精品自在线发布| 116美女午夜| 日韩综合成人免费视频| 蜜臀99999| 日日日大屁股骚女人精品| 91n免费处女| 欧美性高潮在线| 亚洲在线欧美| 国产91会所女技师在线观看| 综合欧美激情网| 在线看免费无码AV天堂的| 99热综合| 欧美色图私拍91| 国产精品午夜福利视频| 97中文热色| 日韩免费在线观看不卡| 福利伊人玖玖国产| 亚洲五月丁香花狠狠干一区二区三区 | 丰满人妻av一区二区三区| 99久久综合网| 欧美老妇女内射网址| 97av,com| 东北毛片| 日韩一区二区三区四区五区| 超碰日本97美女人妻人人玩人人爱| 乱理日韩中文| 欧美少妇高潮视频| 美女操逼A A| 国产精品99久久久www| 亚洲熟妇丝袜在线观看| 久热99999| 91在线免费精品视频| 人妻aa| www鬼畜国产男人的天堂| 99日免费视频中文字幕| 无码天堂| 深夜激情无码| 91日产欧美| 日韩超碰97| 亚洲精品影视老司机| 国模限制级电影| 99热国产精品| 韩三级a视频在线观看| 一级免费啪啪片| 密臀视频一区二区三区| 97干色| 操人91| 中文字幕伊人| 欧美在线永久天堂| 国产又黄又猛又粗又爽的网站| 九九人妻| 狠狠中文字幕| 97超碰逼| 日韩成年人性爱视频| 成人电影一区| 超碰 国产熟女精品一区| 人妻无一区二区三区| 天天舔天天| 亚州欧美另类| 国产高潮AA片免费看| 夜夜 中文视频rt| 人人操人人干xxx| 尻女朋友一夜| 欧美成熟性爱精品| 精品偷拍13p欧美dodk视频| 激情小说亚洲| av网页一区二区三区| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 蜜乳Av成人片网站| 老师充足的奶水小说| 又粗又长又大国产不卡| 亚洲性爱高潮影院| 4虎在线观看| 开心五月深爱五月| 色婷五月天| 操逼逼福利视频| 欧美视频在线视频免费va| 国产欧洲精品亚洲午夜拍精品| 久久伊人最新网址视频| 国产91av在线播放| 久久成年精品| 精品成人亚洲午夜电影| 欧美 亚洲 综合 制服 另类| 国产精品久久久久无码A√| 射欧美综合| 不卡av在线中文字幕| 91成人在线| 密乳AV免费观看| 学生妹天天看| 91粉嫩萝控精品福利网站_精品影音先锋国 | 国产日韩人人| 日本精品无码三级网站| 久九9精品| 五月丁香综合激情| 精品黄色电影| 天天综合网在线| 欧美日韩色综合网| 久久久精品一区二区| 午夜丁香| 国产精品懂色tv影视免费观看 | 日本人妻伦在线中文字幕| 性色国产东北露脸精品视频| 性开放中文AV高清无码免费看| 美熟女逼导航AV操逼| 一块操欧美性爱| 天天日天天干天天操| 久久综合女优| 亚洲AV永久无码一区仙野| 精品69网| 亚码人妻| 亚洲影视综合网| 亚洲图片日本AⅤ欧美在线| 亚洲极品| 精品一区二区三区最新| 伊人五月天激情| 综合网 欧美| 欧美日韩另类字幕中文| 久久ww| 日本1区2区不卡视频| 天天热精品| 亭亭丁香激情| 日韩中文字幕二区| av一区二区三区四区| 精品国产乱码久久久久久免费| ,国产乱人伦精品一区二区三区| 亚洲精美粉嫩嫩泬在线观看 | 日本人妻中文字幕精品| 欧美日韩中文字幕不卡| 秋霞午夜视频一区二区| 久久午夜伦| 欧美视频一区二区在线| 国产精品久久久啊| 欧美亚洲在线| 六月婷婷一区二区三区| 久妇网| 免费一级视频特黄色大片| 久久久久亚洲三级电影| 大香蕉中文在线| 吊色| 涩五月婷婷| 激情五月天插| 欧美色www亚洲国产阿娇要播| 亚洲人精品午夜不卡| 久久天天躁日日躁狠狠躁 | 绑缚麻绳人妻寝取完整版| 欧美在线干| 天天干夜夜一操| 国产日韩无码一区二区三区久久区| 亚州,欧美在线| 婷婷精品国产一区二区三区日韩| 青青11操操操操操操操操| 国产一区二区三区导航| 日韩人妻制服丝袜av| 久久这里只有精品9| 青青草在线视频播放器| 天天激色| 日日摸日日碰| 中文乱码99| 天天操女人| 色五月婷婷在线| 久久久九九网站| 色乱二区| 在线无码操| 精品少妇人妻av久久免费| 51国产午夜精品视频| 试看60秒 爽| 欧美天天弄| 日本加勒比无码专区| 外国免费性情大片| 人妻娇喘 激情视频| 精品无av| 夜夜黄| 欧美高清16| 国产在线激情| 97伊人网| 玖玖爱影院| 精品国产乱码久久| 人妻丝袜美腿中文字幕| 97在线视频观看| 尤物视频视频官网| 日韩字幕一区| 都市久久精品激情亚洲| 亚洲一曲日韩精品| 97人妻免费中文字幕| 乱伦日本色图AⅤ| 天堂中文日本在线观看| 国产精品成人无码av| 亚洲AV无码AV吞精久久久久| 操逼逼无码| 久久久久国产无av| 超碰99热| 久久久久国产亚洲一区欧美色图日韩| av中文字幕在线熟女| 歐美一級亂黃99在綫精品| 中文字幕少妇色 | 国产污视频麻豆传媒一区二区 | 婷婷av在线中文字幕| 最新国内自拍av免费| 太久视频| 五月综合色| 午夜天堂网| 色阁阁AV综合网| 不卡视频一区蜜桃视频| 无码78| 久久久久亚洲av综合波多野制衣| 亚洲成人无码影院| www.91色综合| 丰满搜索结果 -第18页- 久久高清无码| 久久婷婷欧美| 狠狠入| 国产精品盗摄 偷窥盗摄| 强奸抽插av| 5278欧美一区二区三区| 久热色情精品| 欧洲精品久久| 97爱综合| 一级黄色性爱A级片| julia高潮后不停追击中出| 青娱乐亚洲热| 成年人免费观看网站| 亚洲情欲| 天天干天天狼在线视频| 极品丝袜无码| 日夜尻逼网| 久久性爱视频免费看| 在线人人人人人人精品超| 图片区小说区| 超碰人妻中文在线| 野狼福利社区| 黄色片大香蕉| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 丝袜色综合| 很很操在线| 国产一区二区精品久久99| 爆操无码| yirendaxiangjiashipin| 四虎精品一区| 日韩免费a级毛片无码a∨| 久久综合激情| 亚洲www91| 婷婷伊人五月| 骚货| 999久久芭蕾| 操操逼操操逼操操逼逼| 青青欧美在线| 亚洲无码日韩电影| 国产一区二区精品久久99| 啊啊啊好湿久久| 四虎影视精品| 婷色五月| 97久久国产亚洲精品超碰热| 伊人精品久久网站| 国内91熟女人妻丝袜天天精品视频在线 | 日韩综合成人免费视频| 亚洲色图91欧美日韩| 91黑丝操| 肉嘟嘟www视频在线观看高清| 九九九久千久久激情蜜桃在线看 | 国产亚洲99久久精品| 欧美洲精品一级| 国产日韩欧美中文在线播放| 夜夜操91744565| 免费视频一二三区| 天天色香欲综合网| 夫妻天天操岛国视频| 色色色欧美| 青青五月天| 久热婷婷| 97日韩超碰超碰中文字幕| 亚欧国产无码精品在线| 日韩欧美中文字亚洲慕| 夜嗨影院| 性感美女91影视| 日韩中文字幕国产| 日韩精品怡红院| 一区二区三区四区免费视频| julia中文字幕在线观看| 不卡av在线中文字幕| 一区麻豆 高清中文字幕| 在线观看不卡一区二区三区| 老熟女区| www.91逼逼.com| 欧美 亚洲 91| 丰满的三级少妇欧美久久久| 九九精品网| 大香蕉亚洲中文| 国产无码精品无码| 久操操| 欧美三级中文字幕hd| 台湾佬中文娱乐网久久久久久久久久com | 97一区二区蜜臀| 国产精品成人AV片免费看网站 | av绯色| 久久噜噜噜精品国产亚洲综合| 超碰在线国产| 亚洲全色网| 91爰爱欧美| 日韩亚洲中文有码视频| 99re3这里只有精品| 国产激情在线| 91热| 91在线视频免费中出| 精品久久久久久中文字幕三区| 亚洲诱惑天堂| 国产美女自拍AV| 天天操熟妇| 欧美老熟另类| 亚洲成熟国产精品美女| 色欧洲| 青娱乐手机日韩在线视频| 久久99视频| 国产精品高清2021在线| 九九热午夜欧亚国产视频| 大香蕉九九| 超碰国产精品无码| 91精品人妻一品二品三品| 色九月综合| 天堂8在线新版官网| 精品无码久久久久久久久果冻糖心| 神马久久啊啊| 吻戏激情性巴克| 国产精品人妻熟女aⅴ| 欧美日韩久久精品爱爱| 亚洲欧洲第二视频在线观看色图| 亚洲操操| 操逼片国产| 中国一级αV| 四虎在线视频| 国产视频大全| 91Chinese在线| 日韩精品一区二区日韩| 极品销魂美女一区二区| 亚洲伊人青青草| 亚洲污一污二| 少妇二级| 超碰99在线观看| 国产精品久久久久亚洲av| 97精品网| 熟女久久| 囯产精品强| 亚洲精品国产精品乱码不卡| 美女人妻色网站| 人人干人人操人人..com| 日韩无码一区二区三区| 国产熟码AV| 9 9无尺码天堂网| 99啪啪| 青青操97| 欧美美女自慰一区二区三区| AV电影在线播放| 国产精品无码论坛| 中文字幕,人妻,日韩| 乱伦熟女专区| 2024黄色视频| 欧洲特黄毛片免费看欧洲毛片| 天天干夜夜鈤| 白嫩妹子国产骚| 日韩久草| 国产一区二区精品在线视频| 亚洲色图 综合| 国产AV人人 夜夜人人澡| 性色乱AV一区二区| 一本正道久久熟女| 日欧美色| 国产精品欧美激在线| 蜜桃久久久久久久| 日本丝袜美腿人妻九九| 免费农村成人少妇人妻Aa一区二区视频 | 无码自拍SM| 亚洲欧美国产日本一区二区三区| 人妻熟女av国产网站| 精品人人插人人操| 国产一区二区三区精品观看啪| 欧美国产伊人久久久久| 亚洲精品亚洲人成在线麻豆| 精品一二三区久久AAA片| 国产不卡免费在线视频| 婷婷中文网| 久久9视频| 亚洲欧美大香蕉| 九久9热| 后入人妻一区| 性爱AV天堂| 人人操人人精品影片| 亚洲 欧美 第一页| 欧美国产婷婷久久| 国产无码精品久久久久久| 尹人免费观看视频在线| 干日本人少妇午夜寂寞影院| 9999亚洲电影| 国产最新小视频在线播放下载 | 多乙久久久久久| 人人干人人搞人人摸| 99精品热| 爱射综合| 天天日日本| 九色97| 青娱乐av在线| 久久仑合| 国产精品电影推荐| 激情文学亚洲| 色妇综合网| 98超碰日本| 亚州欧美另类| 无码日韩网站| renqi久久久久久久久久久久| 九九av| 久久久久9999| 国产精品熟女AV中文字幕在线播放| 高清不卡视频| 欧美与日韩97| 老熟妇一区二区三区啪啪| 国产97亚洲| 青青爽| 久久久久久久六六 | 在线观看午夜婷婷久久久久清性观看| 午夜福利 成人 91| 日韩三级在线观看网站| 国产高清成人mv在线观看| 色五月亚洲| 蜜桃一区二区三区| 熟妇人妻精品一区二区视频色欲| 午夜精品久久久99| 97久久超碰亚洲| 久艾草在线精品视频在线观看| 久久性爱大全| 天天爽夜夜欢视| 一卡二卡三卡| 制度丝袜99| 青青草日本无码| 亚洲AV色图一区| 亚洲欧美日韩制服另类| 搡老熟女免费视频| 午夜AV污污污| 日本孕妇一区二区视频操逼免费看 | 国产精品婬乱一级毛片彝族| baisiav| 中文字幕AV中出| 欧美日韩国产高清在线一二三区 | 91人妻视频| 夜夜嗨一区二区三区直播内容| 欧美一级久久久丰满| 青娱乐亚洲热| 久久女人| 综合色播| 欧美天天拍| 欧美激色| 人人艹亚洲| 狠狠夜色午夜久久综合在线| 翔田千里AV无码秘 三区| 午夜国产成人福利视频| 中文字幕诱惑制服人妻丝袜美丝袜美 | 综合网亚洲| AV 少妇 人妻 偷拍| 热热色青青草| 熟女精品一区二区在线观看| 日韩无码精品综合久久| 婷婷色一区| 91天天综合日韩欧美| 免费一级精品啪啪视频| 一区二区三区网站日日骚| 超碰在线一区二区| 亚洲色吧网| 九九九九久久久久| 亚洲美乱| 人妻丝袜一区二区三区在线| 婷婷午夜| 天天伊人| 四虎永久在线精品免费网址| 97香蕉网| 91在线页| 十八禁啪啪视频| 五月激情小说| 亚洲欧美色图小说| 97超碰总站| 中国zzijzzijzzwww精品| 欧美日韩国产电影| 手机在线中文字幕国产| 久久久久密臀视频| 能在线播放的国产三级| 欧美人妻精品| 狠色婷婷久久一区二区三区_| 嗯嗯啊啊啊好爽| 天天综合色| 国产精品操| 自拍盗摄一区| 国产精品人妻熟女aⅴ| 综合激情一一91| 亚洲熟妇丝袜在线观看| 91亚洲欧洲| 大香蕉啪啪网| 91春色| 神马久久久久久久久久| 国产操伦| 四虎884| 国产天美欧美| 2017人人操,人人摸| 欧美综合自拍亚洲综合图| 日本肉体xxxx裸交| 中文字幕99999| 久久99精品国产| 操美女高潮抽搐白浆| 九九九久久久| 91女网站| 91快色色色色色| 欧美成97爱| 国产熟女一区二区丰满| www.av在线观看| 国产午夜在线观看| 青青国产在线拍揄自揄拍| 日韩性爱播放| 亚洲欧美日韩中文播放| 久久人爽| 无码99| 欧美精品日韩久久久九| 青青草五月份天| 久久精品视频28| 日欧操屄视频| 国产中文大片资源中文字幕| 揉揉揉夜夜| 国产青视频| 亚洲精品色| 中文字幕精品日韩中文字幕| 无码人妻一区二区三区免费九色| 久草精品视频| 国产精品对白内射| 日本国产欧美高清在线| 试看日韩黄片| 亚洲色性| 亚洲诱惑| 欧美v日韩欧亚洲电影天堂色诱,国产传媒| 九色精品视频导航1| 麻豆熟妇乱妇熟色A片在线看| 日本黄色裸日本黄色裸体| 超碰79人人乐| 九九RE视频在线精品| 一级性爱啪啪视频| 黄色av片三级三级三级免费看| 90后性网国产欧美| 在线岛| 99re98| 91欧洲入口| 很很很很操| 欧美18禁91| 校园春色综合| 婷婷五月天av| 亚洲 自拍偷拍 欧美| 97无码视频在线播放| 96精品久久| 国产精品久久久亚洲第一牛牛_在线观看| 熟女网站最新| 久久少妇视频| 日本特黄f c2| 性爱综合网| 日韩啪啪视频| 日韩AV熟女乱伦| 黑人操一区二区| av天堂天堂av日韩| 亚洲一区日韩精品中文字幕| 久久久精精精| 亚洲欧美一区二区不卡视频播放| 国产成人精品日本亚洲语言| 国产成人无码a| 日本中文熟女视频| 一起草视频在线| 国产熟女一区二区| 色诱avtt| 夜夜狼人妻| www.狠狠干.coom | 日欧操屄| 国产精品懂色tv影视免费观看| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 日韩精品中文字幕一| 久久午夜鲁丝片| 精品久久久久久无码| 成人AV超碰免费在线| av一区二区三区四区| 日韩无码精品综合久久| 丁香九月 婷婷| 99re免费| 色色色日本| 国产一区在线观看无码AV |