《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 無線射頻識別RFID中間件技術
無線射頻識別RFID中間件技術
摘要: 無線射頻識別(RFID)技術是一種快速、實時、準確的信息采集與處理技術,通過射頻信號對實體對象進行唯一有效的標識,可廣泛應用于生產、零售、物流、交通、醫療、國防、畜牧、采礦等各個行業。
Abstract:
Key words :

        無線射頻識別(RFID" target="_blank">RFID)技術是一種快速、實時、準確的信息采集與處理技術,通過射頻信號對實體對象進行唯一有效的標識,可廣泛應用于生產、零售、物流、交通、醫療、國防、畜牧、采礦等各個行業。

        基本的RFID系統一般由3部分組成:標簽、閱讀器以及應用支撐軟件。中間件是應用支撐軟件的一個重要組成部分,是銜接硬件設備如標簽、閱讀器和企業應用軟件如企業資源規劃(ERP)、客戶關系管理(CRM)等的橋梁。中間件的主要任務是對閱讀器傳來的與標簽相關的數據進行過濾、匯總、計算、分組,減少從閱讀器傳往企業應用的大量原始數據、生成加入了語意解釋的事件數據??梢哉f,中間件是RFID系統的“神經中樞”。

        對于RFID中間件的設計,有諸多問題需要考慮,如:如何實現軟件的諸多質量屬性、如何實現中間件與硬件設備的隔離、如何處理與設備管理功能的關系、如何實現高性能的數據處理等等。

1  RFID網絡框架結構

        無線射頻識別網絡的框架結構如圖1所示。

        標簽數據經過中間件的分組、過濾等處理上報給應用系統;應用系統負責事件數據的持久化存儲,以及標簽綁定的業務信息的管理。

        RFID系統共享公共服務平臺提供根節點對象名稱服務(ONS)、企業應用鑒權管理、標簽信息發現和企業授權碼管理等公共服務。其中,根節點ONS連同所有企業級RFID系統的內部ONS,組成一個ONS樹,任何一個標簽都可以在ONS樹上找到標簽所對應的標簽信息庫的地址,即可以進一步訪問到標簽對應的詳細信息。

2  中間件功能及實現原理

        一言蔽之,中間件的功能就是接受應用系統的請求,對指定的一個或者多個閱讀器發起操作命令如標簽清點、標簽標識數據寫入、標簽用戶數據區讀寫、標簽數據加鎖、標簽殺死等,并接收、處理、向后臺應用系統上報結果數據。

        其中,標簽清點是最為基本、也是應用最為廣泛的功能。

2.1標簽清點功能概述

        標簽清點的工作流程可簡單描述為:

        應用系統以規則的形式定義對標簽數據的需求,規則由應用系統向中間件提出,由中間件維護。規則中定義了:需要哪些閱讀器的清點數據,標簽數據上報周期(事件周期)的開始和結束條件,標簽數據如何過濾,標簽數據如何分組,上報數據為原始清點數據、新增標簽數據還是新減標簽數據,標簽數據包含哪些原始數據等。

        應用系統指定某項規則,向中間件提出對標簽數據的預訂。

        中間件根據應用系統對標簽數據的預訂情況,適時啟動事件周期,并向閱讀器下發標簽清點命令。

        閱讀器將一定時間周期(讀取周期)中清點到的數據,發送給中間件。讀取周期可由中間件與閱讀器制定私下協商確定。

        中間件接由收閱讀器上報的數據。

        中間件根據規則的定義,對接收數據做過濾、分組、累加等操作,并在事件周期結束時,按照規則的要求生成數據結果報告,發送給規則的預訂者。過濾過程可去除重復數據、應用系統不感興趣的數據,大大降低了組件間的傳輸數據量。

        此流程可參見圖2。

        此處,需要說明一下邏輯閱讀器的概念。

        中間件將事件源抽象為一個邏輯概念——邏輯閱讀器,一個邏輯閱讀器可以包含多個物理閱讀器,甚至可更細化為包含多個物理閱讀器的多個天線。

        邏輯閱讀器的劃分可以根據實際的系統部署情況來確定,比如,某一個倉庫兩個出口部署了4個閱讀器,可根據需要將這4個閱讀器配置成為一個邏輯閱讀器,不妨命名為“倉庫出口”。應用系統在需要倉庫出口的標簽數據時,可基于這個邏輯閱讀器下發清點命令,而邏輯閱讀器名稱作為部分應用程序接口(API)調用的參數。

2.2標簽清點實現原理

        如前所述,規則是整個中間件功能的關鍵元素。規則相當于應用系統發給中間件的訂貨單,定義了對貨品(標簽數據)的時間(事件周期)和規格(如何過濾、如何分組、報告樣式等)的要求,原理描述部分參考EPCglobal相關內容[1]。

        規則、報告有自身的信息模型,表征其承載的信息,同時,規則擁有其自身的狀態機模型。在接受應用系統的長期預訂、單次預訂時,這些預訂操作會激發規則的狀態變遷,如從“未被請求”狀態躍遷到“已被請求”狀態。

        規則由應用系統通過API定義。

(1) 規則信息模型

        規則信息模型的描述采用了統一建模語言(UML),如圖3所示。

        在面向對象的語境中,規則可表征為一個類(ECSpec)。從信息模型描述中可看出,一個規則類,與其他多個類具有關聯關系,或者說擁有如下屬性:一個或者多個邏輯閱讀器的列表(readers)、事件周期邊界定義(boundaries)、一個或者多個報告的定義(reportSpecs)、是否在報告中包含規則本身的標記(includeSpecInReports)。

(2) 報告信息模型

        與規則信息模型類似,報告信息模型如圖4所示。

        其中,事件報告組類(ECReports)擁有如下屬性:規則名稱(specName)、時間上報時間(date)、事件周期時長(totalMilliseconds)、事件周期結束條件(terminationCondition)、規則定義類實例(spec)、一個或者多個報告類的實例列表(reports)。

        報告類(ECReport)中包含了具體的標簽數據信息。

(3) 標簽清點API

        應用系統下發的定義規則、預訂數據等請求,以調用中間件提供的API的方式完成。API調用過程可采用Java RMI、SOAP等相關具體技術實現,其中最重要的API參見表1。

        其中,poll操作相當于subscribe操作收到一個事件周期的數據之后調用unsubscribe操作;immediate操作相當于define操作定義規則之后,調用poll操作,然后調用undefine操作。

(4) 規則狀態機模型

        規則從其定義開始,可能存在于3種狀態:未被請求狀態(Unrequested)、已被請求狀態(Requested)、激活狀態(Active)。

        當規則創建之后,還沒有被任何客戶端(即應用系統)預訂,規則處于Unrequested狀態;對規則的第一個預訂動作將使規則躍遷到Requested狀態;當事件周期開始條件滿足時,規則進入Active狀態;當事件周期結束條件滿足時,如果規則存在預訂者,則躍遷到Requested狀態,否則躍遷到Unrequested狀態。

3  中間件系統架構

        中間件系統作為一個軟件系統(或稱組件),在實現一定功能、性能要求之外,可理解性、可擴展性、可修改性(或稱可重構性)、可插入性、可重用性等質量屬性都將作為軟件設計的要求被提出來。

        近十余年來,面向對象思想幾乎全面占領軟件設計領域,成為最主流的分析、設計方法。而近數年來,對設計模式的研究也已日臻完善,模式幾乎已成為一種“更高級編程語言”(相比于Java、C++等高級編程語言)被廣泛應用。

        面向對象思想、設計模式都是以實現軟件的可理解、可擴展、可修改、可插入、可重用等目標為己任的,本文也將應用面向對象思想、參考模式語言,對中間件的軟件架構做一個初步的探討,下文的例子如涉及高級編程語言,均采用Java語言[2]。

3.1封裝、隔離處理流程中的各個節點

        將中間件的業務流程中的各個節點分作不同模塊處理,可以獲得封裝、高內聚、低耦合等優勢,參見圖5。

        其中,報告上傳模塊,負責實現不同類型的報告上傳方式,如HTTP、JMS等;API接口模塊,負責隔離應用系統和中間件核心業務邏輯處理模塊,向應用系統提供中間件API接口;中間件核心業務邏輯處理模塊,負責中間件核心業務,包括數據接收過濾、數據分組、報告生成、規則對象的狀態跳轉等;閱讀器通信模塊,負責中間件系統與閱讀器的通信。

3.2門面模式、工廠模式對外部暴露API接口

        為了避免后臺應用系統,即中間件的客戶端過分耦合,采用門面模式(Facade)對系統內部、外部實現清晰的隔離。處理流程可參見圖6所示的序列圖??蛻舳藘H僅與Facade類建立聯系,如果Facade接口定義得足夠清晰,客戶端可以對中間件的內部實現一無所知,這體現了面向對象中的封裝性。

        類的設計參見源代碼示例,從中可以看出,采用簡單工廠模式(Simple Factory)能夠在客戶端不知情的情況下,靈活地替換API實現類的版本。中間件API接口清晰地定義了中間件提供的操作,客戶端只須知道工廠類(APIFactory)能夠得到中間件API接口的實例即可。

        中間件API接口MiddlewareAPI:

publicinterfaceMiddlewareAPI{

void define(String specName, ECSpec spec);

void undefine(String specName);

void subscribe(String specName, String uri);

void unsubscribe(String specName, String uri);

EPCReports poll(String specName);

EPCReports immediate(ECSpec spec);

}

        工廠類APIFactory:

publicclassAPIFactory{

publicstaticMiddlewareAPIgetAPIInstance(){

}

}

        API的實現類A:

publicclassClient{

publicstaticvoidmain(String[] args) {

MiddlewareAPI api = APIFactory.getAPIInstance();

api.define("a new spec", new EPCSpec());

}

}

3.3狀態模式模擬規則的狀態機

        規則在其生命周期中擁有不同的狀態,在每個狀態對一系列操作都有著不同的表現,于是可以利用狀態模式(state)來模擬規則的狀態機,將不同狀態的不同表現作為可變化因素封裝起來,參見代碼示例。

        規則狀態接口ECState:

publicinterfaceECState{

voidsubscribe(StringspecName,String uri);

voidunsubscribe(StringspecName,String uri);

EPCReportspoll(StringspecName);

}

        未被請求狀態類ECStateUnrequested:

publicclassECStateUnrequestedimplements ECState {

}

        已被請求狀態類ECStateRequested:

publicclassECStateRrequestedimplements ECState {

}

        激活狀態類ECStateActive:

publicclassECStateActiveimplements ECState {

}

        規則類ECSpec:

publicclassECSpec{

privateECStatestate;

publicECStategetState(){

return state;

}

publicvoidsetState(ECStatestate) {

this.state = state;

}

}

        這樣,在針對規則實施相應操作的時候,就可以直接把相應操作委派給其狀態屬性(ECState)去做即可。比如,ECSpec的subscribe操作,只需一行代碼“state.suscribe(specName, uri);”即可。其中,specName、uri為臨時變量,具體取值在方法調用之前確定。

        由面向對象的多態性特征,根據state字段目前所指向的對象來動態確定由ECState接口的哪一個具體的實現類的代碼來完成工作。ECState接口的實現類根據實際情況確定是否需要在處理過程中修改ECSpec對象的狀態屬性(state),此處在應用狀態模式時,需要設計多個定時器類來輔助狀態機的跳轉[3]。

3.4策略模式切換多種報告上傳、命令下發方式

        事件周期結束之后,中間件需要組裝報告上傳給規則的預訂者,即應用系統。上傳的方式有多種,如HTTP、Socket、JMS等等。中間件的核心邏輯處理模塊不應該關心具體的上傳技術,相應工作應交給報告上傳模塊來做,核心邏輯處理模塊只須完成自己的工作,然后把一定格式的數據通過報告上傳模塊發送,參見代碼示例。

        報告發送接口ReportSender:

publicinterfaceReportSender{

voidsendReport(ECReportsreports);

}

        通過Http方式發送報告的ReportSender接口實現類ReportSenderByHttp:

publicclassReportSenderByHttpimplements ReportSender {

public void sendReport(ECReports reports) {

}

}

        通過Socket方式發送報告的ReportSender接口實現類ReportSenderBySocket:

publicclassReportSenderBySocketimplements ReportSender {

publicvoidsendReport(ECReportsreports) {

}

}

        通過JMS方式發送報告的ReportSender接口實現類ReportSenderByJms:

publicclassReportSenderByJmsimplements ReportSender {

publicvoidsendReport(ECReportsreports) {

}

}

        報告發送示例客戶端類

SendReportWorker:

publicclassSendReportWorker{

privateReportSendersender;

privateECReportsreports;

publicvoidsetReports(ECReportsreports) {

this.reports = reports;

}

publicstaticvoidmain(String[] args) {

SendReportWorker worker = new

SendReportWorker();

worker.sender.sendReport(reports);

}

publicvoidsetSender(ReportSendersender) {

this.sender = sender;

}

}

        這樣,發送消息的工人類可通過設置ReportSender的實例來靈活設置其發送方式。

        同樣,中間件的清點命令下發,即中間件與閱讀器之間的接口,也存在多種方式,如Socket、SOAP等,也可采用類似的設計。

3.5觀察者模式處理上報消息

        閱讀器的消息上報轉換為消息對象,對消息對象的接收、分發可采用經典的觀察者模式實現。

4  中間件發展方向

4.1與閱讀器管理系統的融合

        中間件是閱讀器與后臺應用系統之間的橋梁,而閱讀器通常有設備管理需求,比如軟件版本下載、設備告警管理、參數配置等等,閱讀器管理系統也是直接與閱讀器交互的軟件模塊。于是,如何處理好中間件與閱讀器管理系統之間的關系成為一個亟待解決的問題。

        從軟件部署(部署在同一臺主機上)、軟件模塊重用(重用閱讀器通信模塊)等角度考慮,中間件與閱讀器管理系統的融合勢必成為中間件本身的一個優勢。

4.2對多標準標簽的支持

        RFID技術在國內外的發展和應用方興未艾,國際上多個標準組織都試圖統一RFID標準,但在一定的時期內,勢必出現多標簽并存的情況。于是,對多標準標簽的支持也是中間件系統的一個發展方向。

4.3對多廠商閱讀器的支持

        中間件與閱讀器之間的接口、通信方式以及信息格式,也無法做到統一標準。對多廠商閱讀器的支持、至少對少數幾家主流廠商的閱讀器的支持,已經是對中間件所提出的基本要求。


此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          久久xxxx精品视频| 国产一区自拍视频| 极品日韩久久| 一区二区三区色| 一个色综合av| 国产精品日韩一区| 国产精品草莓在线免费观看| 玖玖在线精品| 国产精品综合| 久久aⅴ乱码一区二区三区| 狠狠88综合久久久久综合网| 蜜臀久久99精品久久久久久9| 六月天综合网| 一区二区三区欧美亚洲| 国产一区二区久久| 国产偷久久久精品专区| 欧美一级电影久久| 欧美日韩国产另类不卡| 欧美涩涩视频| 亚洲肉体裸体xxxx137| 亚洲激情精品| 免费在线国产精品| 韩日欧美一区二区| 欧美日韩1区2区3区| 蜜桃伊人久久| 欧美日韩免费观看一区| 欧美在线免费视频| 性欧美xxxx大乳国产app| 91久久精品一区二区三区| 久久精品一本久久99精品| 亚洲欧美999| 性刺激综合网| 欧美亚洲一级| 亚洲国语精品自产拍在线观看| 国产精品久久久久9999| 欧美视频在线观看视频极品| 亚洲女女女同性video| 免费不卡中文字幕视频| 久久精品官网| 激情av一区二区| 欧美精品xxxxbbbb| 一区二区三区在线看| 国语精品一区| 国产亚洲在线观看| 亚洲人精品午夜在线观看| 欧美日韩美女在线观看| 国产精品福利网| 亚洲欧美日韩国产精品| 免费观看成人www动漫视频| 一区二区三区四区蜜桃| 欧美性做爰毛片| 在线观看国产成人av片| 韩国美女久久| 久久婷婷麻豆| 亚洲精品视频在线观看网站| 另类亚洲自拍| 国产日韩一区二区三区在线| 国产精品s色| 午夜在线视频观看日韩17c| 亚洲在线成人| 亚洲高清不卡在线| 久久九九免费| **网站欧美大片在线观看| 欧美日韩国产丝袜另类| 国产精品高清在线观看| 在线看片第一页欧美| 久久综合亚州| 午夜欧美大尺度福利影院在线看| 欧美激情久久久久久| 日韩一区二区精品| 亚洲小视频在线观看| 欧美日韩三级视频| 亚洲国产裸拍裸体视频在线观看乱了| 欧美激情国产日韩精品一区18| 国语对白精品一区二区| 蜜臀99久久精品久久久久久软件| 免费成人高清| 在线免费精品视频| 国产精品稀缺呦系列在线| 欧美性色aⅴ视频一区日韩精品| 亚洲午夜视频在线| 亚洲视频一区二区免费在线观看| 欧美日韩中文字幕精品| 亚洲精品在线三区| 午夜精品免费视频| 欧美日韩国产成人| 欧美日韩成人网| 中文国产亚洲喷潮| 亚洲美女av电影| 欧美a级片网| 一区二区欧美在线观看| 久久视频精品在线| 久久亚洲电影| 亚洲激情自拍| 亚洲成色999久久网站| 亚洲自拍偷拍福利| 日韩一区二区精品| 黄色精品一区二区| 国产亚洲va综合人人澡精品| 精品88久久久久88久久久| 亚洲高清自拍| 午夜激情一区| 久久精品首页| 欧美日韩国产经典色站一区二区三区| 欧美日韩高清不卡| 欧美日本一区二区三区| 一本高清dvd不卡在线观看| 麻豆乱码国产一区二区三区| 欧美国产精品人人做人人爱| 久久精品午夜| 国产精品亚洲综合天堂夜夜| 日韩午夜精品| 免费短视频成人日韩| 欧美黄色免费| 久久亚洲午夜电影| 欧美久久影院| 国产麻豆精品久久一二三| 尤物yw午夜国产精品视频明星| 亚洲承认在线| 激情视频亚洲| 激情国产一区二区| 一区二区激情| 欧美啪啪成人vr| 欧美丝袜一区二区三区| 老妇喷水一区二区三区| 免费黄网站欧美| av成人毛片| 久久精品视频在线观看| 日韩视频在线免费| 红桃av永久久久| 在线看片成人| 欧美精品97| 国产精品一区二区在线| 欧美美女福利视频| 欧美日韩日日夜夜| 99re在线精品| 欧美成人69| 欧美在线www| 欧美成人中文| 久久国产精品第一页| 国产自产v一区二区三区c| 欧美日韩日日骚| 亚洲精品日韩在线| 狠色狠色综合久久| 亚洲人体影院| 美日韩丰满少妇在线观看| 欧美成人自拍视频| 久久一区二区三区超碰国产精品| 欧美日韩国产综合一区二区| 亚洲人被黑人高潮完整版| 老司机午夜精品视频在线观看| 亚洲午夜一区二区三区| 久久久久国色av免费观看性色| 韩国av一区二区三区| 免费在线播放第一区高清av| 欧美性久久久| 欧美三区免费完整视频在线观看| 亚洲国产综合视频在线观看| 鲁大师影院一区二区三区| 在线免费观看视频一区| 国产欧美视频一区二区| 一区二区国产精品| 西西裸体人体做爰大胆久久久| 国产视频一区欧美| 裸体女人亚洲精品一区| 久久av资源网站| 久久久久在线| 国产日本欧美一区二区三区| 一区二区在线免费观看| 欧美日韩亚洲综合| 国产欧美日韩一区二区三区在线观看| 欧美日韩一区综合| 亚洲精品在线视频观看| 欧美人牲a欧美精品| 欧美视频一二三区| 国产精品ⅴa在线观看h| 亚洲男女自偷自拍| 久久精品成人欧美大片古装| 一本色道久久综合狠狠躁篇怎么玩| 国产日韩av在线播放| 久久色在线播放| 国产精品久久久一区二区| 999亚洲国产精| 1204国产成人精品视频| 午夜精品福利在线观看| 欧美电影电视剧在线观看| 欧美成人三级在线| 亚洲免费视频中文字幕| 欧美女同在线视频| 免费不卡在线观看av| 久久综合久久综合这里只有精品| 看欧美日韩国产| 亚洲乱码久久| 国产精品久久亚洲7777| 正在播放日韩| 国产自产2019最新不卡| 国产精品视频久久一区| 国一区二区在线观看| 欧美日韩蜜桃| 亚洲视频一区二区免费在线观看| 亚洲国产va精品久久久不卡综合| 欧美日韩一区二区国产| 欧美国产一区二区在线观看| 99国产精品久久久久久久成人热| 激情综合视频| 久久久久久亚洲精品中文字幕| 国外成人性视频| 麻豆9191精品国产| 国产乱码精品1区2区3区| 夜夜嗨av一区二区三区| 久久婷婷久久一区二区三区| 国产九九精品| 欧美日韩国产一区精品一区| 欧美日本在线一区| 亚洲电影av| 欧美国产乱视频| 欧美三区美女| 国产丝袜一区二区| 亚洲三级免费电影| 亚洲精品少妇| 免费成年人欧美视频| 亚洲视频一区| 午夜国产精品视频免费体验区| 午夜国产欧美理论在线播放| 亚洲欧美另类在线观看| 欧美在线免费视频| 在线视频一区观看| 久久九九热免费视频| 老牛影视一区二区三区| 欧美亚洲不卡| 亚洲午夜女主播在线直播| 1024成人网色www| 亚洲女优在线| 欧美自拍丝袜亚洲| 在线播放一区| 韩国在线一区| 久久国产一区二区三区| 欧美激情小视频| 久久精品综合网| 欧美韩日视频| 亚洲精品中文字幕有码专区| 久久riav二区三区| 国产专区欧美精品| 欧美日本一区| 免费久久99精品国产自在现线| 性久久久久久久久| 久久免费黄色| 91久久夜色精品国产九色| 国产精品久久久久毛片大屁完整版| 欧美一区二区三区在线视频| 国产午夜亚洲精品羞羞网站| 国产日韩亚洲欧美精品| 久久免费精品日本久久中文字幕| 国产精品高清一区二区三区| 国内精品久久久久国产盗摄免费观看完整版| 欧美高清在线视频| 欧美精品首页| 国产亚洲福利社区一区| 久久综合九色欧美综合狠狠| 欧美三区免费完整视频在线观看| 亚洲综合视频在线| 国产日韩在线一区| 亚洲在线播放电影| 亚洲少妇最新在线视频| 亚洲在线电影| 欧美视频手机在线| 欧美日韩亚洲高清一区二区| 亚洲欧洲一区二区在线观看| 国产精品视频1区| 欧美与欧洲交xxxx免费观看| 国产精品青草久久| 在线日韩日本国产亚洲| 欧美国产亚洲另类动漫| 国内免费精品永久在线视频| 久久精品国产一区二区电影| 欧美激情视频在线免费观看 欧美视频免费一| 午夜精品久久久久久久| 国产自产在线视频一区| 久久成人免费| 国产欧美日韩91| 国产精品jizz在线观看美国| 中文无字幕一区二区三区| 亚洲小少妇裸体bbw| 欧美美女福利视频| 欧美屁股在线| 国产一区观看| 国产精品扒开腿爽爽爽视频| 亚洲字幕在线观看| 亚洲一区二区三区在线| 午夜精品久久久久久久男人的天堂| 欧美中文字幕不卡| 欧美精品一区二区在线观看| 在线免费观看一区二区三区| 久久久久久久成人| 另类专区欧美制服同性| 亚洲综合色噜噜狠狠| 日韩视频免费在线| 亚洲国产91精品在线观看| 欧美午夜精品久久久久久久| 亚洲国产老妈| 亚洲精品美女在线| 国内精品视频一区| 欧美激情中文字幕一区二区| 日韩视频久久| 欧美欧美天天天天操| 亚洲综合三区| 国产欧美不卡| 亚洲美女视频网| 亚洲激情欧美激情| 欧美日本一道本在线视频| 久久久综合香蕉尹人综合网| 在线观看一区二区视频| 国产麻豆视频精品| 欧美日韩国产精品一区| 久久综合狠狠综合久久综青草| 亚洲女性喷水在线观看一区| 在线免费日韩片| 亚洲人www| 亚洲国产91精品在线观看| 欧美日韩精品免费观看视一区二区| 国产精品美女久久久久久久| 免费欧美在线| 亚洲精品一区二区三区在线观看| 极品av少妇一区二区| 国产精品久久99| 久久精品亚洲国产奇米99| 欧美成人日本| 一本色道久久88综合日韩精品|