一種支持多用戶同時讀寫的網盤系統構建方法

            文檔序號:10655171閱讀:615來源:國知局
            一種支持多用戶同時讀寫的網盤系統構建方法
            【專利摘要】本發明公開了一種支持多用戶同時讀寫的網盤系統構建方法。網盤系統包括網盤服務器裝置、網盤客戶端裝置及網絡裝置;網盤系統中文件的文件數據塊可分散存儲在網盤服務器和多個用戶終端中;網盤服務器中記錄每個文件的最新元信息及每個數據塊的物理位置,并通過事件訂閱機制通知已訂閱該文件數據塊變更事件且在線的用戶終端。用戶終端訪問某文件的指定文件數據塊時,若該文件數據塊不在網盤服務器中,只需將該文件數據塊而不是該文件的全部數據塊從其所在的用戶終端傳遞到網盤服務器中然后再傳遞到待訪問該文件的用戶終端設備上。本發明有效地提高多用戶同時讀寫網盤系統的效率,尤其是多個用戶多個終端設備對網盤系統中同一文件的并發訪問。
            【專利說明】
            一種支持多用戶同時讀寫的網盤系統構建方法
            技術領域
            [0001]本發明屬于計算機領域,主要關注提高多用戶、多終端設備下訪問網盤系統中文件的響應速度,降低對網盤系統中文件訪問的延遲。
            【背景技術】
            [0002]目前各類網盤系統提高網盤客戶端的文件訪問速度主要采用針對整個文件或者文件數據塊計算MD5或者SHA數字摘要值,若對應的整個文件或者文件數據塊的數字摘要值與已存在的某個文件或者文件數據塊的數字摘要值相同,則網盤客戶端無須再與網盤服務器針對該文件或者文件數據塊進行數據傳輸。但是對于其它網盤客戶端而言,仍需要將整個文件全部更新到網盤服務器然后再將整個文件全部更新到其它網盤客戶端后,該網盤客戶端才能訪問該文件,因此網盤系統中文件訪問延遲很大。

            【發明內容】

            [0003]本發明目的是為了提高多用戶、多終端下高效訪問網盤系統中文件,尤其是多個用戶、多個終端對網盤系統中同一文件的并發訪問。本發明給出一種支持多用戶同時讀寫的網盤系統以及網盤系統文件訪問方法。
            [0004]本發明公開了一種支持多用戶同時讀寫的網盤系統,所述系統包括網盤服務器裝置、網盤客戶端裝置及網絡裝置;網盤系統中文件的文件數據塊可分散存儲在網盤服務器和多個用戶終端中;網盤服務器中記錄每個文件的最新元信息及每個數據塊的物理位置,并通過事件訂閱機制通知已訂閱該文件數據塊變更事件且在線的用戶終端。本發明公開了一種支持多用戶同時讀寫的網盤系統的文件訪問方法,所述方法包括讀文件方法和寫文件方法。用戶終端訪問某文件的指定文件數據塊時,若該文件數據塊不在網盤服務器中,只需將該文件數據塊而不是該文件的全部數據塊從其所在的用戶終端傳遞到網盤服務器中然后再傳遞到待訪問該文件的用戶終端設備上。
            [0005]本發明技術方案
            [0006]1.—種支持多用戶多終端同時讀寫的網盤系統,所述網盤系統包括網盤服務器裝置、網盤客戶端裝置以及網絡裝置;網盤服務器裝置,主要用于網盤系統存儲和管理所有文件的元信息和文件數據塊,存儲、管理和認證所有用戶元信息,存儲、管理和認證所有用戶終端設備元信息,并為網盤客戶端裝置提供文件、文件數據塊檢索、訪問和變更服務;網盤客戶端裝置,主要用于網盤客戶端存儲所訪問文件的全部或者部分元數據、全部或者部分文件數據塊,與網盤服務器裝置進行文件數據同步,并為網盤客戶端中應用程序提供文件訪問服務;網絡裝置負責為網盤服務器裝置和網盤客戶端裝置之間的數據通信提供服務;
            [0007]其中,
            [0008]網盤服務器裝置包括網絡服務模塊、事件服務模塊、終端服務模塊、用戶服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊、基礎數據塊服務模塊、全局參數服務模塊和存儲區;存儲區模塊負責網盤服務器裝置內數據的持久存儲,基礎數據塊服務模塊直接與存儲區連接從而實現對網盤服務器裝置內數據塊的管理;事件服務模塊、終端服務模塊、用戶服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊和全局參數服務模塊分別與基礎數據塊服務模塊連接并通過基礎數據塊服務模塊來獲得各自元信息和數據塊的存儲;網絡服務模塊提供網絡通信服務,事件服務模塊直接與網絡服務模塊連接從而獲得網絡通信服務;終端服務模塊、用戶服務模塊、目錄服務模塊、文件服務模塊和文件數據塊服務模塊分別與事件服務模塊連接并通過事件服務模塊為網盤客戶端裝置提供服務,事件服務模塊與基礎數據塊服務模塊連接從而實現事件數據的存儲;終端服務模塊負責存儲、管理和認證所有用戶終端設備元信息,終端服務模塊與事件服務模塊連接從而對外提供終端服務,終端服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;用戶服務模塊負責存儲、管理和認證所有用戶元信息,用戶服務模塊與事件服務模塊連接從而對外提供用戶服務,用戶服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;目錄服務模塊負責網盤系統中目錄信息的管理,目錄服務模塊與文件服務模塊連接而實現對指定目錄內的文件服務,目錄服務模塊與事件服務模塊連接從而對外提供目錄服務,目錄服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件服務模塊負責網盤系統中文件信息的管理,文件服務模塊與目錄服務模塊連接并向目錄服務模塊提供文件服務,文件服務模塊與文件數據塊服務模塊連接而實現對指定文件的文件數據塊服務,文件服務模塊與事件服務模塊連接從而對外提供文件服務,文件服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件數據塊服務模塊負責網盤系統中文件的數據塊信息的管理,文件數據塊服務模塊與文件服務模塊連接并向文件服務模塊提供文件數據塊服務,文件數據塊服務模塊與事件服務模塊連接從而對外提供文件數據塊服務,文件數據塊服務模塊與基礎數據塊服務模塊連接從而實現元信息和文件數據塊存儲;全局參數服務模塊負責網盤系統中網盤服務器裝置內全局參數的管理,全局參數服務模塊與基礎數據塊服務模塊連接從而實現全局參數存儲,網盤服務器裝置內全局參數包括數據塊大小、數據塊總數、起始數據塊ID、截止數據塊ID、空閑數據塊池、空閑元數據塊池、空閑文件數據塊池、用戶元信息池、終端元信息池、文件元信息池、文件數據塊元信息池和根目錄文件ID;
            [0009]網盤客戶端裝置包括應用程序、文件系統接口層模塊、網絡服務模塊、事件服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊、基礎數據塊服務模塊、全局參數服務模塊和存儲區;應用程序為網盤客戶端裝置上運行的第三方應用程序,應用程序與文件系統接口層模塊連接從而獲得文件系統訪問服務;文件系統接口層模塊分別與應用程序、目錄服務模塊和文件服務模塊連接,文件系統接口層模塊通過調用目錄服務模塊和文件服務模塊為上層的應用程序提供網盤系統的文件訪問服務;存儲區模塊負責網盤客戶端裝置內數據的持久存儲,基礎數據塊服務模塊直接與存儲區連接從而實現對網盤客戶端裝置內數據塊的管理;事件服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊和全局參數服務模塊分別與基礎數據塊服務模塊連接并通過基礎數據塊服務模塊來獲得各自元信息和數據塊的存儲;網絡服務模塊提供網絡通信服務,事件服務模塊直接與網絡服務模塊連接從而獲得網絡通信服務;目錄服務模塊、文件服務模塊和文件數據塊服務模塊分別與事件服務模塊連接并通過事件服務模塊來訪問網盤服務器裝置和其它網盤客戶端裝置,事件服務模塊與基礎數據塊服務模塊連接從而實現事件數據的存儲;目錄服務模塊負責網盤系統中網盤客戶端裝置內目錄信息的管理,目錄服務模塊與文件服務模塊連接而實現對指定目錄內的文件服務,目錄服務模塊與事件服務模塊連接從而與網盤服務器裝置和其它網盤客戶端裝置進行數據同步,目錄服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件服務模塊負責網盤系統中網盤客戶端裝置內文件信息的管理,文件服務模塊與目錄服務模塊連接并向目錄服務模塊提供文件服務,文件服務模塊與文件數據塊服務模塊連接而實現對指定文件的文件數據塊服務,文件服務模塊與事件服務模塊連接從而與網盤服務器裝置和其它網盤客戶端裝置進行數據同步,文件服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件數據塊服務模塊負責網盤系統中網盤客戶端裝置內文件的數據塊信息的管理,文件數據塊服務模塊與文件服務模塊連接并向文件服務模塊提供文件數據塊服務,文件數據塊服務模塊與事件服務模塊連接從而與網盤服務器裝置和其它網盤客戶端裝置進行數據同步,文件數據塊服務模塊與基礎數據塊服務模塊連接從而實現元信息和文件數據塊存儲;全局參數服務模塊負責網盤系統中網盤客戶端裝置內全局參數的管理,全局參數服務模塊與基礎數據塊服務模塊連接從而實現全局參數存儲,網盤客戶端裝置內全局參數包括數據塊大小、數據塊總數、起始數據塊ID、截止數據塊ID、空閑數據塊池、空閑元數據塊池、空閑文件數據塊池、文件元信息池、文件數據塊元信息池、網盤服務器設備元信息、本地終端設備元信息、用戶元信息和根目錄文件ID,其中網盤服務器設備元信息和本地終端設備元信息的數據結構相同;
            [0010]網盤服務器裝置和網盤客戶端裝置中關于終端設備的核心數據結構為終端設備元信息,終端設備元信息包括設備ID、設備元信息頭、網絡地址和網絡端口,其中設備ID為該終端設備的唯一標識符,設備元信息頭包括信息版本標記、設備名稱、設備物理類型、設備網絡協議和狀態;
            [0011]網盤服務器裝置和網盤客戶端裝置中關于用戶的核心數據結構為用戶元信息,用戶元信息包括用戶ID、用戶元信息頭和用戶根目錄文件ID,其中用戶ID為該用戶的唯一標識符,用戶元信息頭包括信息版本標記、用戶名、用戶認證信息、狀態;
            [0012]網盤服務器裝置和網盤客戶端裝置中關于目錄和文件的核心數據結構包括文件元信息、目錄元信息、普通文件元信息和本地文件數據塊元信息;文件元信息是目錄和普通文件共同的元信息,文件元信息包括文件ID、副本ID、文件公共元信息和擴展元信息,其中文件ID和副本ID共同決定文件的唯一標識;文件公共元信息包括元信息版本標記、文件類型、權限信息、創建修改時間、主控設備ID和狀態,其中文件類型用來區分該文件是否為目錄文件,主控設備ID代表該文件當前最新全局版本的文件數據塊所在的終端設備;目錄元信息包括目錄元信息頭和目錄文件項池,其中目錄元信息頭包括數據塊總數、目錄文件項總數、目錄文件項摘要和狀態,目錄文件項池存儲該目錄下所有目錄文件項,目錄文件項包括文件ID和文件名;普通文件元信息包括普通文件元信息頭和全局文件數據塊元信息序列池,其中普通文件元信息頭包括數據塊總數、文件大小、文件體摘要和狀態,全局文件數據塊元信息序列池存儲該文件所有文件數據塊對應的全局文件數據塊元信息的有序集合;全局文件數據塊元信息包括全局文件數據塊ID、本地文件數據塊ID、全局版本標記、本地版本標記、狀態和網絡存儲的設備ID的池,其中網絡存儲的設備ID的池存儲該文件數據塊的最新數據的終端設備ID;本地文件數據塊元信息包括數據塊摘要、數據塊ID、引用數和狀態,其中引用數表明該本地文件數據塊屬于不同文件的數目,只有當該引用數為零時方回收該本地文件數據塊元為空閑文件數據塊。
            [0013]所述系統中,網盤系統中每個文件以數據塊為單位存儲,文件的所有數據塊分散存儲在網盤服務器裝置和網盤客戶端裝置中;針對網盤系統中的每一個文件,網盤服務器裝置中存儲該文件相關的各種元信息,網盤服務器裝置無需存儲該文件的所有文件數據塊的數據;網盤服務器裝置中該文件的全局文件數據塊元信息序列池包含了該文件的所有本地文件數據塊ID號和網絡存儲的設備ID,其中,本地文件數據塊ID號為該文件數據塊在網盤服務器裝置中的位置信息,網絡存儲的設備ID為該文件數據塊在其它網盤客戶端裝置的位置信息;針對某個網盤客戶端裝置,該網盤客戶端裝置只需存儲該網盤客戶端裝置的上層應用程序所要訪問網盤系統中文件的相關各種元信息和該文件中所要訪問的部分文件數據塊,網盤客戶端裝置中該文件的全局文件數據塊元信息序列池包含了該文件的所有全局文件數據塊ID號、所有本地文件數據塊ID號和網絡存儲的設備ID,其中,本地文件數據塊ID號為該文件數據塊網盤客戶端裝置中的位置信息,網絡存儲的設備ID為該文件數據塊在其它網盤客戶端裝置或者網盤服務器裝置的位置信息,全局文件數據塊ID號為該文件數據塊在網盤服務器裝置的位置信息。
            [0014]所述系統中,網盤系統中文件只能有一個全局文件版本,全局文件版本的副本ID為空;網盤系統中文件可以有零個或者多個文件副本,同一個文件的文件副本各自擁有不同的非空副本ID;全局文件版本和文件副本擁有相同的文件ID,每個網盤客戶端裝置只能看到網盤系統中該文件的全局文件版本和該終端設備上該文件的文件副本。
            [0015]所述系統中,當網盤客戶端裝置修改某文件時,若該文件在該網盤客戶端裝置沒有文件副本則該網盤客戶端裝置首先建立該文件的文件副本,然后針對該文件副本進行修改,對該文件副本修改后該網盤客戶端裝置可隨時向網盤服務器裝置申請成為該文件的全局文件版本;當網盤客戶端裝置將某文件的本地文件副本的文件元信息提交到網盤服務器裝置并且被網盤服務器裝置接受為該文件的全局文件版本時,該網盤客戶端裝置將刪除該文件在本地的全局文件版本,并且該網盤客戶端裝置將該文件的本地文件副本轉為在本地的全局文件版本;當網盤客戶端裝置將某文件的本地文件副本的文件元信息提交到網盤服務器裝置并且不被網盤服務器裝置接受為該文件的全局文件版本時,該網盤客戶端裝置可以將該文件的本地文件副本通過改變文件名字從而成為一個新文件的文件副本,該網盤客戶端裝置對該新文件的文件副本可隨時向網盤服務器裝置申請成為該新文件的全局文件版本。
            [0016]所述系統中,網盤客戶端裝置和網盤服務器裝置之間文件訪問和同步服務采用事件訂閱機制,事件接收和處理統一由各自的事件服務模塊來完成;所有事件采用統一的事件信息結構體,事件信息結構體包括事件ID、事件來源類型、事件業務類型、事件源終端ID、事件源執行體ID、事件目的終端ID、事件時間標記、事件回執通知標記、事件內容體長度、事件內容體摘要、事件頭摘要和事件內容體,其中事件ID為事件的唯一標識;事件來源類型包括網盤服務器發送給網盤客戶端的事件類型、網盤客戶端發送給網盤服務器的事件類型、網盤服務器發送給本地的事件類型和網盤客戶端發送給本地的事件類型;事件業務類型包括文件的元信息及文件塊的創建、修改、刪除、下載和上傳的業務,也包括目錄元信息的創建、修改、刪除、下載和上傳的業務,也包括用戶注冊、注銷、更新、認證和查詢的業務,也包括終端設備的登記、更新和查詢的業務,事件服務模塊根據不同的事件業務類型來訪問對應業務服務模塊來執行事件相關業務。
            [0017]所述系統中,網盤客戶端裝置和網盤服務器裝置中事件服務模塊的處理流程如下:
            [0018]第I步、接收事件請求;
            [0019]第2步、分析事件類型,如果事件為本地執行事件,則執行第5步,否則執行第3步;
            [0020]第3步、事件不是遠程執行事件,則執行第10步,否則執行第4步;
            [0021]第4步、該事件通過網絡發送到指定網絡設備,并執行第6步;
            [0022 ]第5步、在本地調用相關模塊執行該事件;
            [0023]第6步、是否通知事件源,如果無需通知事件源則執行第10步,否則執行第7步;
            [0024]第7步、事件源是否為遠程,如果事件源是遠程則執行9步,否則執行第8步;
            [0025]第8步、將該事件回執通知給本地事件源執行體,并執行第10步;
            [0026]第9步、將該事件回執通知通過網絡發送到指定網絡設備,并執行第10步;
            [0027]第10步、事件處理完畢返回。
            [0028]所述系統中,用戶從網盤客戶端裝置登錄到網盤服務器裝置時需要通過網盤服務器裝置的認證,當用戶及網盤客戶端裝置通過網盤服務器裝置認證后,網盤服務器將用戶及網盤客戶端裝置的登錄信息記下來并跟蹤用戶退出事件,該登錄信息可記錄在“用戶登錄表”中,用戶登錄表中包括用戶ID、終端ID、網絡物理地址、登錄時間、退出時間和狀態;當網盤系統中網盤服務器裝置內某個文件信息被修改,則網盤服務器裝置向擁有該文件的所有在線網盤客戶端裝置發送“文件更新事件”,從而使得相關在線網盤客戶端裝置可以及時更新該文件元信息和文件數據塊。
            [0029]2.—種支持多用戶多終端同時讀寫的網盤系統的讀文件方法,網盤客戶端裝置中“應用程序”讀取網盤系統中指定文件的指定文件數據到指定內存空間的方法包括具體步驟如下:
            [0030]第I步、網盤客戶端裝置中“文件系統接口層”接收來自上層“應用程序”的讀取網盤系統中指定文件的指定偏移量位置及長度的文件數據到指定內存空間的請求,并將該讀請求轉化為讀取網盤系統中指定文件的指定第i塊文件數據塊內容到指定內存空間的讀請求;
            [0031 ]第2步、網盤客戶端裝置的“文件服務”模塊讀取該文件的“文件元信息”,進一步獲取該指定第i塊文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”;
            [0032]第3步、根據第2步中文件數據塊的“本地文件數據塊ID號”,判斷該文件數據塊的內容是否在本地網盤客戶端裝置中存在,若存在則執行第4步,否則執行第5步;
            [0033]第4步、根據第2步中文件數據塊的“本地文件數據塊ID號”讀取該數據塊的“本地文件數據塊元信息”,進一步判斷該“本地文件數據塊”的狀態是否有效,若該“本地文件數據塊”的狀態為有效,則執行第7步,否則執行第5步;
            [0034]第5步、針對第2步中指定文件的該指定文件數據塊的“全局文件數據塊ID號”,向本地“事件服務模塊”發送“下載文件數據塊”事件,并在指定時間內等待該事件完成;
            [0035]第6步、判斷第5步中“下載文件數據塊”事件是否完成,如完成則執行第7步,否則執行第9步;
            [0036]第7步、重新讀取該文件的“文件元信息”,并獲得該文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”;
            [0037]第8步、根據該文件數據塊的“本地文件數據塊ID號”讀取對應的“本地文件數據塊元信息”從而獲得“本地數據塊ID”,讀取該本地數據塊到指定內存,并設置讀取指定文件的指定文件數據塊內容到指定內存空間的訪問請求成功信息,并進一步執行第10步;
            [0038]第9步、設置讀取指定文件的指定文件數據塊內容到指定內存空間的訪問請求失敗信息,進一步執行第10步;
            [0039]第10步、讀請求操作結束。
            [0040]3.—種支持多用戶多終端同時讀寫的網盤系統的寫文件方法,網盤客戶端裝置中“應用程序”將新數據寫到網盤系統中指定文件的指定偏移量位置的方法包括具體步驟如下:
            [0041]第I步、網盤客戶端裝置中“文件系統接口層”接收來自上層“應用程序”將新數據寫到網盤系統中指定文件的指定偏移量位置的請求,并將該寫請求轉化為將新數據寫到網盤系統中指定文件的指定第i塊文件數據塊的請求;
            [0042]第2步、網盤客戶端裝置的“文件服務”模塊讀取該文件的“文件元信息”,進一步獲取該指定第i塊文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”;
            [0043]第3步、判斷第2步中該指定文件數據塊是否為新增數據塊,如果該指定文件數據塊是新增數據塊,則執行第9步,否則執行第4步;
            [0044]第4步、判斷第2步中該指定文件數據塊是否將被完全寫覆蓋,如果該指定文件數據塊將被完全寫覆蓋,則執行第9步,否則執行第5步;
            [0045]第5步、判斷第2步中該指定文件數據塊是否已在本地,如果該指定文件數據塊尚未在本地存儲中,則執行第7步,否則執行第6步;
            [0046]第6步、判斷第2步中該指定文件數據塊的本地數據塊是否有效,如果該指定文件數據塊的本地數據塊有效,則執行第8步,否則執行第7步;
            [0047]第7步、向網盤服務器裝置發送獲取第2步中該指定文件數據塊的事件、并等待第2步中該指定文件數據塊的數據被下載到本地,如果第2步中該指定文件數據塊的數據未能被下載到本地,則執行第12步,否則執行第8步;
            [0048]第8步、獲取本地一個空閑數據塊作為新數據塊,并將第2步中該指定文件數據塊的原數據塊內容復制到該新數據塊,并進一步執行第1步;
            [0049]第9步、獲取本地一個空閑數據塊作為新數據塊,并進一步執行第10步;
            [0050]第10步、將第I步中新數據寫入新數據塊中,并更新新數據塊的元信息,設置寫數據塊成功;
            [0051]第11步、向網盤服務器裝置發送“文件數據塊修改”事件,并進一步執行第13步;
            [0052]第12步、設置寫數據塊失敗,并進一步執行第13步;
            [0053]第13步、寫請求操作結束。
            [0054]本發明的優點和積極效果:
            [0055]本發明給出了一種支持多用戶同時讀寫的網盤系統以及構建方法。現有的網盤系統中,用戶在網盤客戶端系統中欲打開某個網盤系統中的文件時,必須首先將該文件的所有數據從網盤服務器端系統中全部下載下來才能打開,這種方式使用戶等待時間長;另外當用戶在網盤客戶端對某個網盤系統中的文件進行修改時,只能有一個網盤客戶端對同一個文件進行修改。上述問題導致在多個用戶、多終端情況下對同一個文件進行修改的用戶體驗非常不好。而本發明通過無需將文件的所有文件數據塊一次性上傳到網盤服務器的情況下可以對外提供文件的最新全局文件版本的訪問服務,因此可以有效地提高網盤系統中文件訪問的效率;以及本發明通過多文件副本機制,有效地支持多個用戶、多終端情況下對同一個文件的并行修改以及全局文件版本的轉化。
            【附圖說明】
            [0056]圖1是網盤系統的邏輯功能架構示意圖。
            [0057]圖2是網盤系統中終端設備元信息數據結構示意圖。
            [0058]圖3是網盤系統中用戶元信息數據結構示意圖。
            [0059]圖4是網盤系統中用戶登錄數據結構示意圖。
            [0060]圖5是網盤系統中文件及目錄核心元信息數據結構示意圖。
            [0061 ]圖6是網盤系統中事件服務模塊事件處理過程示意圖。
            [0062]圖7是網盤客戶端裝置上文件數據塊讀訪問流程圖。
            [0063]圖8是網盤客戶端裝置上文件數據塊寫訪問流程圖。
            【具體實施方式】
            [0064]本發明提供了一種支持多用戶同時讀寫的網盤系統以及構建方法。為能進一步了解本發明的技術內容、特點及功效,茲列舉以下應用實例,并配合附圖詳細說明如下:
            [0065]實施例1、一種支持多用戶同時讀寫的網盤系統
            [0066]本發明提供了一種支持多用戶同時讀寫的網盤系統,具體包括如下:
            [0067]網盤服務器裝置200、網盤客戶端裝置100以及網絡裝置300;網盤服務器裝置200,主要用于網盤系統存儲和管理所有文件的元信息和文件數據塊,存儲、管理和認證所有用戶元信息,存儲、管理和認證所有用戶終端設備元信息,并為網盤客戶端裝置提供文件、文件數據塊檢索、訪問和變更服務;網盤客戶端裝置100,主要用于網盤客戶端存儲所訪問文件的全部或者部分元數據、全部或者部分文件數據塊,與網盤服務器裝置進行文件數據同步,并為網盤客戶端中應用程序提供文件訪問服務;網絡裝置300負責為網盤服務器裝置200和網盤客戶端裝置100之間的數據通信提供服務;
            [0068]其中,
            [0069]網盤服務器裝置200包括網絡服務模塊210、事件服務模塊211、終端服務模塊230、用戶服務模塊240、目錄服務模塊250、文件服務模塊260、文件數據塊服務模塊270、基礎數據塊服務模塊280、全局參數服務模塊212和存儲區290;存儲區模塊290負責網盤服務器裝置200內數據的持久存儲,基礎數據塊服務模塊280直接與存儲區290連接從而實現對網盤服務器裝置200內數據塊的管理;事件服務模塊211、終端服務模塊230、用戶服務模塊240、目錄服務模塊250、文件服務模塊260、文件數據塊服務模塊270和全局參數服務模塊212分別與基礎數據塊服務模塊280連接并通過基礎數據塊服務模塊280來獲得各自元信息和數據塊的存儲;網絡服務模塊210提供網絡通信服務,事件服務模塊211直接與網絡服務模塊210連接從而獲得網絡通信服務;終端服務模塊230、用戶服務模塊240、目錄服務模塊250、文件服務模塊260和文件數據塊服務模塊270分別與事件服務模塊211連接并通過事件服務模塊211為網盤客戶端裝置100提供服務,事件服務模塊211與基礎數據塊服務模塊280連接從而實現事件數據的存儲;終端服務模塊230負責存儲、管理和認證所有用戶終端設備元信息,終端服務模塊230與事件服務模塊211連接從而對外提供終端服務,終端服務模塊230與基礎數據塊服務模塊280連接從而實現元信息的存儲;用戶服務模塊240負責存儲、管理和認證所有用戶元信息,用戶服務模塊240與事件服務模塊211連接從而對外提供用戶服務,用戶服務模塊240與基礎數據塊服務模塊280連接從而實現元信息的存儲;目錄服務模塊250負責網盤系統中目錄信息的管理,目錄服務模塊250與文件服務模塊260連接而實現對指定目錄內的文件服務,目錄服務模塊250與事件服務模塊211連接從而對外提供目錄服務,目錄服務模塊250與基礎數據塊服務模塊280連接從而實現元信息的存儲;文件服務模塊260負責網盤系統中文件信息的管理,文件服務模塊260與目錄服務模塊250連接并向目錄服務模塊250提供文件服務,文件服務模塊260與文件數據塊服務模塊270連接而實現對指定文件的文件數據塊服務,文件服務模塊260與事件服務模塊211連接從而對外提供文件服務,文件服務模塊260與基礎數據塊服務模塊280連接從而實現元信息的存儲;文件數據塊服務模塊270負責網盤系統中文件的數據塊信息的管理,文件數據塊服務模塊270與文件服務模塊260連接并向文件服務模塊260提供文件數據塊服務,文件數據塊服務模塊270與事件服務模塊211連接從而對外提供文件數據塊服務,文件數據塊服務模塊270與基礎數據塊服務模塊280連接從而實現元信息和文件數據塊存儲;全局參數服務模塊212負責網盤系統中網盤服務器裝置200內全局參數的管理,全局參數服務模塊212與基礎數據塊服務模塊280連接從而實現全局參數存儲,網盤服務器裝置內全局參數包括數據塊大小、數據塊總數、起始數據塊ID、截止數據塊ID、空閑數據塊池、空閑元數據塊池、空閑文件數據塊池、用戶元信息池、終端元信息池、文件元信息池、文件數據塊元信息池和根目錄文件ID;
            [0070]網盤客戶端裝置100包括應用程序130、文件系統接口層模塊140、網絡服務模塊110、事件服務模塊111、目錄服務模塊150、文件服務模塊160、文件數據塊服務模塊170、基礎數據塊服務模塊180、全局參數服務模塊112和存儲區190;應用程序130為網盤客戶端裝置100上運行的第三方應用程序,應用程序130與文件系統接口層模塊140連接從而獲得文件系統訪問服務;文件系統接口層模塊140分別與應用程序130、目錄服務模塊150和文件服務模塊連接160,文件系統接口層模塊140通過調用目錄服務模塊150和文件服務模塊160為上層的應用程序130提供網盤系統的文件訪問服務;存儲區模塊190負責網盤客戶端裝置100內數據的持久存儲,基礎數據塊服務模塊180直接與存儲區190連接從而實現對網盤客戶端裝置100內數據塊的管理;事件服務模塊111、目錄服務模塊150、文件服務模塊160、文件數據塊服務模塊170和全局參數服務模塊112分別與基礎數據塊服務模塊180連接并通過基礎數據塊服務模塊180來獲得各自元信息和數據塊的存儲;網絡服務模塊110提供網絡通信服務,事件服務模塊111直接與網絡服務模塊110連接從而獲得網絡通信服務;目錄服務模塊150、文件服務模塊160和文件數據塊服務模塊170分別與事件服務模塊111連接并通過事件服務模塊111來訪問網盤服務器裝置200和其它網盤客戶端裝置100,事件服務模塊111與基礎數據塊服務模塊180連接從而實現事件數據的存儲;目錄服務模塊150負責網盤系統中網盤客戶端裝置內目錄信息的管理,目錄服務模塊150與文件服務模塊160連接而實現對指定目錄內的文件服務,目錄服務模塊150與事件服務模塊111連接從而與網盤服務器裝置200和其它網盤客戶端裝置100進行數據同步,目錄服務模塊150與基礎數據塊服務模塊180連接從而實現元信息的存儲;文件服務模塊160負責網盤系統中網盤客戶端裝置內文件信息的管理,文件服務模塊160與目錄服務模塊150連接并向目錄服務模塊150提供文件服務,文件服務模塊160與文件數據塊服務模塊170連接而實現對指定文件的文件數據塊服務,文件服務模塊160與事件服務模塊111連接從而與網盤服務器裝置200和其它網盤客戶端裝置100進行數據同步,文件服務模塊160與基礎數據塊服務模塊180連接從而實現元信息的存儲;文件數據塊服務模塊170負責網盤系統中網盤客戶端裝置內文件的數據塊信息的管理,文件數據塊服務模塊170與文件服務模塊160連接并向文件服務模塊提供文件數據塊服務,文件數據塊服務模塊170與事件服務模塊111連接從而與網盤服務器裝置200和其它網盤客戶端裝置100進行數據同步,文件數據塊服務模塊170與基礎數據塊服務模塊180連接從而實現元信息和文件數據塊存儲;全局參數服務模塊112負責網盤系統中網盤客戶端裝置內全局參數的管理,全局參數服務模塊112與基礎數據塊服務模塊180連接從而實現全局參數存儲,網盤客戶端裝置內全局參數包括數據塊大小、數據塊總數、起始數據塊ID、截止數據塊ID、空閑數據塊池、空閑元數據塊池、空閑文件數據塊池、文件元信息池、文件數據塊元信息池、網盤服務器設備元信息、本地終端設備元信息、用戶元信息和根目錄文件ID,其中網盤服務器設備元信息和本地終端設備元信息的數據結構相同;
            [0071]網盤服務器裝置200和網盤客戶端裝置100中關于終端設備的核心數據結構為終端設備元信息,終端設備元信息包括設備ID、設備元信息頭、網絡地址和網絡端口,其中設備ID為該終端設備的唯一標識符,設備元信息頭包括信息版本標記、設備名稱、設備物理類型、設備網絡協議和狀態;
            [0072]例如,終端設備元信息實例1:{設備ID: 1001,設備元信息頭{信息版本標記:1.0,設備名稱:iphoneuserl,設備物理類型:iphone6,設備網絡協議:tcp/ipV4,狀態:在線},網絡地址:202.116.16.10和網絡端口:2001 }。
            [0073]網盤服務器裝置200和網盤客戶端裝置100中關于用戶的核心數據結構為用戶元信息,用戶元信息包括用戶ID、用戶元信息頭和用戶根目錄文件ID,其中用戶ID為該用戶的唯一標識符,用戶元信息頭包括信息版本標記、用戶名、用戶認證信息、狀態;
            [0074]例如,用戶元信息實例2:{用戶10:3001,用戶元信息頭{信息版本標記:1.1,用戶名:Tom,用戶認證信息:tompwd,狀態:有效},用戶根目錄文件ID:40010}。
            [0075]網盤服務器裝置和網盤客戶端裝置中關于目錄和文件的核心數據結構包括文件元信息、目錄元信息、普通文件元信息和本地文件數據塊元信息;文件元信息是目錄和普通文件共同的元信息,文件元信息包括文件ID、副本ID、文件公共元信息和擴展元信息,其中文件ID和副本ID共同決定文件的唯一標識;文件公共元信息包括元信息版本標記、文件類型、權限信息、創建修改時間、主控設備ID和狀態,其中文件類型用來區分該文件是否為目錄文件,主控設備ID代表該文件當前最新全局版本的文件數據塊所在的終端設備;目錄元信息包括目錄元信息頭和目錄文件項池,其中目錄元信息頭包括數據塊總數、目錄文件項總數、目錄文件項摘要和狀態,目錄文件項池存儲該目錄下所有目錄文件項,目錄文件項包括文件ID和文件名;普通文件元信息包括普通文件元信息頭和全局文件數據塊元信息序列池,其中普通文件元信息頭包括數據塊總數、文件大小、文件體摘要和狀態,全局文件數據塊元信息序列池存儲該文件所有文件數據塊對應的全局文件數據塊元信息的有序集合;全局文件數據塊元信息包括全局文件數據塊ID、本地文件數據塊ID、全局版本標記、本地版本標記、狀態和網絡存儲的設備ID的池,其中網絡存儲的設備ID的池存儲該文件數據塊的最新數據的終端設備ID;本地文件數據塊元信息包括數據塊摘要、數據塊ID、引用數和狀態,其中引用數表明該本地文件數據塊屬于不同文件的數目,只有當該引用數為零時方回收該本地文件數據塊元為空閑文件數據塊。
            [0076]目錄也是一種文件,目錄文件中的數據內容就是文件ID和文件名字的集合,因此目錄和普通文件都共用同一個“文件元信息”,通過“文件元信息”中“文件公共元信息”的“文件類型”來區分是目錄文件、還是普通文件、或者其它類型文件。
            [0077]目錄元信息中的目錄文件項池為目錄文件項在本地存儲中的起始數據塊編號,目錄元信息中的目錄元信息頭中標明了數據塊總數、也標明了實際的目錄文件項總數。
            [0078]全局文件數據塊元信息中的全局文件數據塊ID是在網盤服務器裝置和網盤客戶端裝置都唯一標識某個文件數據塊;全局文件數據塊元信息中的本地文件數據塊ID則只在網盤客戶端裝置內部唯一標識某個文件數據塊;當某個網盤客戶端裝置修改某文件并提交轉變為該文件的全局版本時,該文件相關修改過的最新文件數據塊同時擁有全局文件數據塊ID編號。
            [0079 ]本地文件數據塊元信息中的數據塊ID為在本地存儲區中數據塊的編號,根據該數據塊ID可以訪問到該文件數據塊的實際數據內容。
            [0080]—個本地文件數據塊可以被多個文件所共用,只有該本地文件數據塊的引用數為零時方可將該本地文件數據塊回收為空閑文件數據塊,這樣可以大大減少本地存儲空間的利用效率。
            [0081]所述系統中,網盤系統中每個文件以數據塊為單位存儲,文件的所有數據塊分散存儲在網盤服務器裝置和網盤客戶端裝置中;針對網盤系統中的每一個文件,網盤服務器裝置中存儲該文件相關的各種元信息,網盤服務器裝置無需存儲該文件的所有文件數據塊的數據;網盤服務器裝置中該文件的全局文件數據塊元信息序列池包含了該文件的所有本地文件數據塊ID號和網絡存儲的設備ID,其中,本地文件數據塊ID號為該文件數據塊在網盤服務器裝置中的位置信息,網絡存儲的設備ID為該文件數據塊在其它網盤客戶端裝置的位置信息;針對某個網盤客戶端裝置,該網盤客戶端裝置只需存儲該網盤客戶端裝置的上層應用程序所要訪問網盤系統中文件的相關各種元信息和該文件中所要訪問的部分文件數據塊,網盤客戶端裝置中該文件的全局文件數據塊元信息序列池包含了該文件的所有全局文件數據塊ID號、所有本地文件數據塊ID號和網絡存儲的設備ID,其中,本地文件數據塊ID號為該文件數據塊網盤客戶端裝置中的位置信息,網絡存儲的設備ID為該文件數據塊在其它網盤客戶端裝置或者網盤服務器裝置的位置信息,全局文件數據塊ID號為該文件數據塊在網盤服務器裝置的位置信息。
            [0082]—個文件的全部文件數據塊無需全部存放到網盤服務器裝置,但一個文件的全局版本文件的元信息必須上傳到網盤服務器裝置,這樣當另外一個網盤客戶端裝置打算訪問某個文件時,即使該文件的全部文件數據塊尚未更新到網盤服務器裝置時也可以直接訪問。
            [0083]所述系統中,網盤系統中文件只能有一個全局文件版本,全局文件版本的副本ID為空;網盤系統中文件可以有零個或者多個文件副本,同一個文件的文件副本各自擁有不同的非空副本ID;全局文件版本和文件副本擁有相同的文件ID,每個網盤客戶端裝置只能看到網盤系統中該文件的全局文件版本和該終端設備上該文件的文件副本。
            [0084]本方法引入文件副本使得多個用戶同時寫同一個文件成為可能。
            [0085]所述系統中,當網盤客戶端裝置修改某文件時,若該文件在該網盤客戶端裝置沒有文件副本則該網盤客戶端裝置首先建立該文件的文件副本,然后針對該文件副本進行修改,對該文件副本修改后該網盤客戶端裝置可隨時向網盤服務器裝置申請成為該文件的全局文件版本;當網盤客戶端裝置將某文件的本地文件副本的文件元信息提交到網盤服務器裝置并且被網盤服務器裝置接受為該文件的全局文件版本時,該網盤客戶端裝置將刪除該文件在本地的全局文件版本,并且該網盤客戶端裝置將該文件的本地文件副本轉為在本地的全局文件版本;當網盤客戶端裝置將某文件的本地文件副本的文件元信息提交到網盤服務器裝置并且不被網盤服務器裝置接受為該文件的全局文件版本時,該網盤客戶端裝置可以將該文件的本地文件副本通過改變文件名字從而成為一個新文件的文件副本,該網盤客戶端裝置對該新文件的文件副本可隨時向網盤服務器裝置申請成為該新文件的全局文件版本。
            [0086]每個網盤客戶端裝置只能看到網盤系統中該文件的全局文件版本和該終端設備上該文件的文件副本。只有當某個網盤客戶端裝置將其上的某文件的文件副本申請成為全局文件版本,其它網盤客戶端裝置才能看到該文件的最新版本。
            [0087]所述系統中,網盤客戶端裝置和網盤服務器裝置之間文件訪問和同步服務采用事件訂閱機制,事件接收和處理統一由各自的事件服務模塊來完成;所有事件采用統一的事件信息結構體,事件信息結構體包括事件ID、事件來源類型、事件業務類型、事件源終端ID、事件源執行體ID、事件目的終端ID、事件時間標記、事件回執通知標記、事件內容體長度、事件內容體摘要、事件頭摘要和事件內容體,其中事件ID為事件的唯一標識;事件來源類型包括網盤服務器發送給網盤客戶端的事件類型、網盤客戶端發送給網盤服務器的事件類型、網盤服務器發送給本地的事件類型和網盤客戶端發送給本地的事件類型;事件業務類型包括文件的元信息及文件塊的創建、修改、刪除、下載和上傳的業務,也包括目錄元信息的創建、修改、刪除、下載和上傳的業務,也包括用戶注冊、注銷、更新、認證和查詢的業務,也包括終端設備的登記、更新和查詢的業務,事件服務模塊根據不同的事件業務類型來訪問對應業務服務模塊來執行事件相關業務。
            [0088]本方法中文件的元信息及文件塊的創建、修改、刪除、下載和上傳等具體業務事實上是由本地的事件服務模塊通過網絡服務模塊來具體實現的,而其它業務模塊是通過向事件服務模塊發送不同類型的事件來獲得上述具體業務的執行結果。
            [0089]所述系統中,網盤客戶端裝置和網盤服務器裝置中事件服務模塊的處理流程如下,如圖6所示:
            [0090]第I步、接收事件請求;
            [0091 ]第2步、分析事件類型,如果事件為本地執行事件,則執行第5步,否則執行第3步;
            [0092]第3步、事件不是遠程執行事件,則執行第10步,否則執行第4步;
            [0093]第4步、該事件通過網絡發送到指定網絡設備,并執行第6步;
            [0094]第5步、在本地調用相關模塊執行該事件;
            [0095]第6步、是否通知事件源,如果無需通知事件源則執行第10步,否則執行第7步;
            [0096]第7步、事件源是否為遠程,如果事件源是遠程則執行9步,否則執行第8步;
            [0097]第8步、將該事件回執通知給本地事件源執行體,并執行第10步;
            [0098]第9步、將該事件回執通知通過網絡發送到指定網絡設備,并執行第10步;
            [0099]第10步、事件處理完畢返回。
            [0100]本方法中第5步在本地調用相關模塊執行該事件:即當該事件為本地執行事件,事件服務模塊將在本地調用相關模塊執行該事件。其中相關模塊包括文件的元信息及文件塊的創建、修改、刪除、下載和上傳的具體業務模塊,不同事件類型對應不同的具體業務模塊,這些具體業務模塊既可以采用動態注冊到事件服務模塊中、也可以靜態綁定在事件服務模塊中。
            [0101]所述系統中,用戶從網盤客戶端裝置登錄到網盤服務器裝置時需要通過網盤服務器裝置的認證,當用戶及網盤客戶端裝置通過網盤服務器裝置認證后,網盤服務器將用戶及網盤客戶端裝置的登錄信息記下來并跟蹤用戶退出事件,該登錄信息可記錄在“用戶登錄表”中,用戶登錄表中包括用戶ID、終端ID、網絡物理地址、登錄時間、退出時間和狀態;當網盤系統中網盤服務器裝置內某個文件信息被修改,則網盤服務器裝置向擁有該文件的所有在線網盤客戶端裝置發送“文件更新事件”,從而使得相關在線網盤客戶端裝置可以及時更新該文件元信息和文件數據塊。
            [0102]當網盤系統中網盤服務器裝置內某個文件信息被修改,根據在線網盤客戶端裝置上用戶的根目錄來判斷該文件是否屬于該用戶所能訪問的文件,如果此文件是該用戶所能訪問的文件,則向該網盤客戶端裝置發送“文件更新事件”。
            [0103]實施例2、一種支持多用戶多終端同時讀寫的網盤系統的讀文件方法
            [0104]本發明提供了一種支持多用戶多終端同時讀寫的網盤系統的讀文件方法,網盤客戶端裝置中“應用程序”讀取網盤系統中指定文件的指定文件數據到指定內存空間的方法包括具體步驟如下:
            [0105]第I步、網盤客戶端裝置中“文件系統接口層”接收來自上層“應用程序”的讀取網盤系統中指定文件的指定偏移量位置及長度的文件數據到指定內存空間的請求,并將該讀請求轉化為讀取網盤系統中指定文件的指定第i塊文件數據塊內容到指定內存空間的讀請求;
            [0106]例如:
            [0107]“文件系統接口層”提供的讀函數:ssize_t read(struct file*f ile,char*buf,size_t count,loff_t*pos)
            [0108]“文件系統接口層”接收來自上層“應用程序”的讀取網盤系統中指定文件的請求后,根據全局參數服務中數據塊的大小可以計算出讀取網盤系統中指定文件的指定第i塊文件數據塊,即可以計算出i的值。
            [0109]第2步、網盤客戶端裝置的“文件服務”模塊讀取該文件的“文件元信息”,進一步獲取該指定第i塊文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”;
            [0110]例:該文件的“文件元信息”一定可讀,因為在打開該文件即open()操作時就已經裝載了該文件的“文件元信息”。
            [0111]第3步、根據第2步中文件數據塊的“本地文件數據塊ID號”,判斷該文件數據塊的內容是否在本地網盤客戶端裝置中存在,若存在則執行第4步,否則執行第5步;
            [0112]例:文件數據塊的“本地文件數據塊ID號”才是標明該文件數據塊是否在本地存儲區的依據。
            [0113]第4步、根據第2步中文件數據塊的“本地文件數據塊ID號”讀取該數據塊的“本地文件數據塊元信息”,進一步判斷該“本地文件數據塊”的狀態是否有效,若該“本地文件數據塊”的狀態為有效,則執行第7步,否則執行第5步;
            [0114]例:如果該“本地文件數據塊”的狀態為無效,那么意味著該文件數據塊尚不在本地存儲區。本發明支持對一個文件下載到本地存儲時只需部分文件數據塊的下載。
            [0115]第5步、針對第2步中指定文件的該指定文件數據塊的“全局文件數據塊ID號”,向本地“事件服務模塊”發送“下載文件數據塊”事件,并在指定時間內等待該事件完成;
            [0116]例:事件服務模塊承擔了下載某個文件數據塊的具體任務。
            [0117]第6步、判斷第5步中“下載文件數據塊”事件是否完成,如完成則執行第7步,否則執行第9步;
            [0118]例:如果網絡下載超時或者其它原因,則意味著下載文件數據塊失敗,則文件讀操作失敗。
            [0119]第7步、重新讀取該文件的“文件元信息”,并獲得該文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”;
            [0120]例:根據“本地文件數據塊ID號”,可以由全局文件數據塊元信息可以找到本地文件數據塊元信息。
            [0121]第8步、根據該文件數據塊的“本地文件數據塊ID號”讀取對應的“本地文件數據塊元信息”從而獲得“本地數據塊ID”,讀取該本地數據塊到指定內存,并設置讀取指定文件的指定文件數據塊內容到指定內存空間的訪問請求成功信息,并進一步執行第10步;
            [0122]例:根據本地文件數據塊元信息可以找到本地數據塊的ID編號,因此可以訪問到該文件數據塊的具體內容。
            [0123]第9步、設置讀取指定文件的指定文件數據塊內容到指定內存空間的訪問請求失敗信息,進一步執行第10步;
            [0124]第10步、讀請求操作結束。
            [0125]實施例3、一種支持多用戶多終端同時讀寫的網盤系統的寫文件方法
            [0126]—種支持多用戶多終端同時讀寫的網盤系統的寫文件方法,網盤客戶端裝置中“應用程序”將新數據寫到網盤系統中指定文件的指定偏移量位置的方法包括具體步驟如下:
            [0127]第I步、網盤客戶端裝置中“文件系統接口層”接收來自上層“應用程序”將新數據寫到網盤系統中指定文件的指定偏移量位置的請求,并將該寫請求轉化為將新數據寫到網盤系統中指定文件的指定第i塊文件數據塊的請求;
            [0128]例如:
            [0129]“文件系統接口層”提供寫函數:ssize_t write(struct file*file,const char*buf,size_t count,loff_t*pos)
            [0130]“文件系統接口層”根據全局參數服務中數據塊的大小可以計算出寫網盤系統中指定文件的指定第i塊文件數據塊,即可以計算出i的值。
            [0131]第2步、網盤客戶端裝置的“文件服務”模塊讀取該文件的“文件元信息”,進一步獲取該指定第i塊文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”;
            [0132]第3步、判斷第2步中該指定文件數據塊是否為新增數據塊,如果該指定文件數據塊是新增數據塊,則執行第9步,否則執行第4步;
            [0133]例:如果是在已有文件的尾部添加新的數據,即新增數據塊,則無需先獲取該文件的其它文件數據塊,可直接在本地新申請一個數據塊并寫入新數據即可。
            [0134]第4步、判斷第2步中該指定文件數據塊是否將被完全寫覆蓋,如果該指定文件數據塊將被完全寫覆蓋,則執行第9步,否則執行第5步;
            [0135]例:如果該指定文件數據塊將被完全寫覆蓋,則無需先獲取該文件數據塊已有內容,只需直接在本地新申請一個數據塊并寫入新數據即可。
            [0136]第5步、判斷第2步中該指定文件數據塊是否已在本地,如果該指定文件數據塊尚未在本地存儲中,則執行第7步,否則執行第6步;
            [0137]例:如果該指定文件數據塊不能被完全寫覆蓋,則必須先先獲取該文件數據塊已有內容,如果該文件數據塊不在本地存儲中,需要先從網絡中下載該文件數據塊到本地存儲。
            [0138]第6步、判斷第2步中該指定文件數據塊的本地數據塊是否有效,如果該指定文件數據塊的本地數據塊有效,則執行第8步,否則執行第7步;
            [0139]例:該指定文件數據塊即使在本地存儲,還要判斷該本地數據塊狀態是否有效,因此很有可能其它網盤客戶端裝置修改了該文件并申請提交了文件的全局版本,那么網盤服務器裝置將會通知當前網盤客戶端裝置該文件的本地數據塊為無效的事件,而當前網盤客戶端裝置中的事件服務模塊會異步地修改該本地數據塊的狀態為無效。
            [0140]第7步、向網盤服務器裝置發送獲取第2步中該指定文件數據塊的事件、并等待第2步中該指定文件數據塊的數據被下載到本地,如果第2步中該指定文件數據塊的數據未能被下載到本地,則執行第12步,否則執行第8步;
            [0141]第8步、獲取本地一個空閑數據塊作為新數據塊,并將第2步中該指定文件數據塊的原數據塊內容復制到該新數據塊,并進一步執行第1步;
            [0142]第9步、獲取本地一個空閑數據塊作為新數據塊,并進一步執行第10步;
            [0143]例:本方法采用修改時的文件副本機制,因此修改過程中不會直接覆蓋已有文件數據塊,必須申請一個新的數據塊,然后對該新數據塊進行覆蓋和修改操作。
            [0144]第10步、將第I步中新數據寫入新數據塊中,并更新新數據塊的元信息,設置寫數據塊成功;
            [0145]例:文件數據的修改后,還要更新文件相關的元信息。
            [0146]第11步、向網盤服務器裝置發送“文件數據塊修改”事件,并進一步執行第13步;
            [0147]第12步、設置寫數據塊失敗,并進一步執行第13步;
            [0148]第13步、寫請求操作結束。
            [0149]考慮到在此公開的對本發明的描述和特例的實施例,本發明的其他實施例對于本領域的技術人員來說是顯而意見的。這些說明和實施例僅作為例子來考慮,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。
            【主權項】
            1.一種支持多用戶多終端同時讀寫的網盤系統,其特征在于,該網盤系統包括網盤服務器裝置、網盤客戶端裝置以及網絡裝置;網盤服務器裝置,主要用于網盤系統存儲和管理所有文件的元信息和文件數據塊,存儲、管理和認證所有用戶元信息,存儲、管理和認證所有用戶終端設備元信息,并為網盤客戶端裝置提供文件、文件數據塊檢索、訪問和變更服務;網盤客戶端裝置,主要用于網盤客戶端存儲所訪問文件的全部或者部分元數據、全部或者部分文件數據塊,與網盤服務器裝置進行文件數據同步,并為網盤客戶端中應用程序提供文件訪問服務;網絡裝置負責為網盤服務器裝置和網盤客戶端裝置之間的數據通信提供服務; 其中, 網盤服務器裝置包括網絡服務模塊、事件服務模塊、終端服務模塊、用戶服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊、基礎數據塊服務模塊、全局參數服務模塊和存儲區;存儲區模塊負責網盤服務器裝置內數據的持久存儲,基礎數據塊服務模塊直接與存儲區連接從而實現對網盤服務器裝置內數據塊的管理;事件服務模塊、終端服務模塊、用戶服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊和全局參數服務模塊分別與基礎數據塊服務模塊連接并通過基礎數據塊服務模塊來獲得各自元信息和數據塊的存儲;網絡服務模塊提供網絡通信服務,事件服務模塊直接與網絡服務模塊連接從而獲得網絡通信服務;終端服務模塊、用戶服務模塊、目錄服務模塊、文件服務模塊和文件數據塊服務模塊分別與事件服務模塊連接并通過事件服務模塊為網盤客戶端裝置提供服務,事件服務模塊與基礎數據塊服務模塊連接從而實現事件數據的存儲;終端服務模塊負責存儲、管理和認證所有用戶終端設備元信息,終端服務模塊與事件服務模塊連接從而對外提供終端服務,終端服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;用戶服務模塊負責存儲、管理和認證所有用戶元信息,用戶服務模塊與事件服務模塊連接從而對外提供用戶服務,用戶服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;目錄服務模塊負責網盤系統中目錄信息的管理,目錄服務模塊與文件服務模塊連接而實現對指定目錄內的文件服務,目錄服務模塊與事件服務模塊連接從而對外提供目錄服務,目錄服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件服務模塊負責網盤系統中文件信息的管理,文件服務模塊與目錄服務模塊連接并向目錄服務模塊提供文件服務,文件服務模塊與文件數據塊服務模塊連接而實現對指定文件的文件數據塊服務,文件服務模塊與事件服務模塊連接從而對外提供文件服務,文件服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件數據塊服務模塊負責網盤系統中文件的數據塊信息的管理,文件數據塊服務模塊與文件服務模塊連接并向文件服務模塊提供文件數據塊服務,文件數據塊服務模塊與事件服務模塊連接從而對外提供文件數據塊服務,文件數據塊服務模塊與基礎數據塊服務模塊連接從而實現元信息和文件數據塊存儲;全局參數服務模塊負責網盤系統中網盤服務器裝置內全局參數的管理,全局參數服務模塊與基礎數據塊服務模塊連接從而實現全局參數存儲,網盤服務器裝置內全局參數包括數據塊大小、數據塊總數、起始數據塊ID、截止數據塊ID、空閑數據塊池、空閑元數據塊池、空閑文件數據塊池、用戶元信息池、終端元信息池、文件元信息池、文件數據塊元信息池和根目錄文件ID; 網盤客戶端裝置包括應用程序、文件系統接口層模塊、網絡服務模塊、事件服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊、基礎數據塊服務模塊、全局參數服務模塊和存儲區;應用程序為網盤客戶端裝置上運行的第三方應用程序,應用程序與文件系統接口層模塊連接從而獲得文件系統訪問服務;文件系統接口層模塊分別與應用程序、目錄服務模塊和文件服務模塊連接,文件系統接口層模塊通過調用目錄服務模塊和文件服務模塊為上層的應用程序提供網盤系統的文件訪問服務;存儲區模塊負責網盤客戶端裝置內數據的持久存儲,基礎數據塊服務模塊直接與存儲區連接從而實現對網盤客戶端裝置內數據塊的管理;事件服務模塊、目錄服務模塊、文件服務模塊、文件數據塊服務模塊和全局參數服務模塊分別與基礎數據塊服務模塊連接并通過基礎數據塊服務模塊來獲得各自元信息和數據塊的存儲;網絡服務模塊提供網絡通信服務,事件服務模塊直接與網絡服務模塊連接從而獲得網絡通信服務;目錄服務模塊、文件服務模塊和文件數據塊服務模塊分別與事件服務模塊連接并通過事件服務模塊來訪問網盤服務器裝置和其它網盤客戶端裝置,事件服務模塊與基礎數據塊服務模塊連接從而實現事件數據的存儲;目錄服務模塊負責網盤系統中網盤客戶端裝置內目錄信息的管理,目錄服務模塊與文件服務模塊連接而實現對指定目錄內的文件服務,目錄服務模塊與事件服務模塊連接從而與網盤服務器裝置和其它網盤客戶端裝置進行數據同步,目錄服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件服務模塊負責網盤系統中網盤客戶端裝置內文件信息的管理,文件服務模塊與目錄服務模塊連接并向目錄服務模塊提供文件服務,文件服務模塊與文件數據塊服務模塊連接而實現對指定文件的文件數據塊服務,文件服務模塊與事件服務模塊連接從而與網盤服務器裝置和其它網盤客戶端裝置進行數據同步,文件服務模塊與基礎數據塊服務模塊連接從而實現元信息的存儲;文件數據塊服務模塊負責網盤系統中網盤客戶端裝置內文件的數據塊信息的管理,文件數據塊服務模塊與文件服務模塊連接并向文件服務模塊提供文件數據塊服務,文件數據塊服務模塊與事件服務模塊連接從而與網盤服務器裝置和其它網盤客戶端裝置進行數據同步,文件數據塊服務模塊與基礎數據塊服務模塊連接從而實現元信息和文件數據塊存儲;全局參數服務模塊負責網盤系統中網盤客戶端裝置內全局參數的管理,全局參數服務模塊與基礎數據塊服務模塊連接從而實現全局參數存儲,網盤客戶端裝置內全局參數包括數據塊大小、數據塊總數、起始數據塊ID、截止數據塊ID、空閑數據塊池、空閑元數據塊池、空閑文件數據塊池、文件元信息池、文件數據塊元信息池、網盤服務器設備元信息、本地終端設備元信息、用戶元信息和根目錄文件ID,其中網盤服務器設備元信息和本地終端設備元信息的數據結構相同; 網盤服務器裝置和網盤客戶端裝置中關于終端設備的核心數據結構為終端設備元信息,終端設備元信息包括設備ID、設備元信息頭、網絡地址和網絡端口,其中設備ID為該終端設備的唯一標識符,設備元信息頭包括信息版本標記、設備名稱、設備物理類型、設備網絡協議和狀態; 網盤服務器裝置和網盤客戶端裝置中關于用戶的核心數據結構為用戶元信息,用戶元信息包括用戶ID、用戶元信息頭和用戶根目錄文件ID,其中用戶ID為該用戶的唯一標識符,用戶元信息頭包括信息版本標記、用戶名、用戶認證信息、狀態; 網盤服務器裝置和網盤客戶端裝置中關于目錄和文件的核心數據結構包括文件元信息、目錄元信息、普通文件元信息和本地文件數據塊元信息;文件元信息是目錄和普通文件共同的元信息,文件元信息包括文件ID、副本ID、文件公共元信息和擴展元信息,其中文件ID和副本ID共同決定文件的唯一標識;文件公共元信息包括元信息版本標記、文件類型、權限信息、創建修改時間、主控設備ID和狀態,其中文件類型用來區分該文件是否為目錄文件,主控設備ID代表該文件當前最新全局版本的文件數據塊所在的終端設備;目錄元信息包括目錄元信息頭和目錄文件項池,其中目錄元信息頭包括數據塊總數、目錄文件項總數、目錄文件項摘要和狀態,目錄文件項池存儲該目錄下所有目錄文件項,目錄文件項包括文件ID和文件名;普通文件元信息包括普通文件元信息頭和全局文件數據塊元信息序列池,其中普通文件元信息頭包括數據塊總數、文件大小、文件體摘要和狀態,全局文件數據塊元信息序列池存儲該文件所有文件數據塊對應的全局文件數據塊元信息的有序集合;全局文件數據塊元信息包括全局文件數據塊ID、本地文件數據塊ID、全局版本標記、本地版本標記、狀態和網絡存儲的設備ID的池,其中網絡存儲的設備ID的池存儲該文件數據塊的最新數據的終端設備ID;本地文件數據塊元信息包括數據塊摘要、數據塊ID、引用數和狀態,其中引用數表明該本地文件數據塊屬于不同文件的數目,只有當該引用數為零時方回收該本地文件數據塊元為空閑文件數據塊。2.如權利要求1所述的網盤系統,其特征在于,所述的網盤系統中每個文件以數據塊為單位存儲,文件的所有數據塊分散存儲在網盤服務器裝置和網盤客戶端裝置中;針對網盤系統中的每一個文件,網盤服務器裝置中存儲該文件相關的各種元信息,網盤服務器裝置無需存儲該文件的所有文件數據塊的數據;網盤服務器裝置中該文件的全局文件數據塊元信息序列池包含了該文件的所有本地文件數據塊ID號和網絡存儲的設備ID,其中,本地文件數據塊ID號為該文件數據塊在網盤服務器裝置中的位置信息,網絡存儲的設備ID為該文件數據塊在其它網盤客戶端裝置的位置信息;針對某個網盤客戶端裝置,該網盤客戶端裝置只需存儲該網盤客戶端裝置的上層應用程序所要訪問網盤系統中文件的相關各種元信息和該文件中所要訪問的部分文件數據塊,網盤客戶端裝置中該文件的全局文件數據塊元信息序列池包含了該文件的所有全局文件數據塊ID號、所有本地文件數據塊ID號和網絡存儲的設備ID,其中,本地文件數據塊ID號為該文件數據塊網盤客戶端裝置中的位置信息,網絡存儲的設備ID為該文件數據塊在其它網盤客戶端裝置或者網盤服務器裝置的位置信息,全局文件數據塊ID號為該文件數據塊在網盤服務器裝置的位置信息。3.如權利要求1或2所述的網盤系統,其特征在于,所述的網盤系統中文件只能有一個全局文件版本,全局文件版本的副本ID為空;網盤系統中文件可以有零個或者多個文件副本,同一個文件的文件副本各自擁有不同的非空副本ID;全局文件版本和文件副本擁有相同的文件ID,每個網盤客戶端裝置只能看到網盤系統中該文件的全局文件版本和該終端設備上該文件的文件副本。4.如權利要求1或2所述的網盤系統,其特征在于,當網盤客戶端裝置修改某文件時,若該文件在該網盤客戶端裝置沒有文件副本則該網盤客戶端裝置首先建立該文件的文件副本,然后針對該文件副本進行修改,對該文件副本修改后該網盤客戶端裝置可隨時向網盤服務器裝置申請成為該文件的全局文件版本;當網盤客戶端裝置將某文件的本地文件副本的文件元信息提交到網盤服務器裝置并且被網盤服務器裝置接受為該文件的全局文件版本時,該網盤客戶端裝置將刪除該文件在本地的全局文件版本,并且該網盤客戶端裝置將該文件的本地文件副本轉為在本地的全局文件版本;當網盤客戶端裝置將某文件的本地文件副本的文件元信息提交到網盤服務器裝置并且不被網盤服務器裝置接受為該文件的全局文件版本時,該網盤客戶端裝置可以將該文件的本地文件副本通過改變文件名字從而成為一個新文件的文件副本,該網盤客戶端裝置對該新文件的文件副本可隨時向網盤服務器裝置申請成為該新文件的全局文件版本。5.如權利要求1所述的網盤系統,其特征在于,網盤客戶端裝置和網盤服務器裝置之間文件訪問和同步服務采用事件訂閱機制,事件接收和處理統一由各自的事件服務模塊來完成;所有事件采用統一的事件信息結構體,事件信息結構體包括事件ID、事件來源類型、事件業務類型、事件源終端ID、事件源執行體ID、事件目的終端ID、事件時間標記、事件回執通知標記、事件內容體長度、事件內容體摘要、事件頭摘要和事件內容體,其中事件ID為事件的唯一標識;事件來源類型包括網盤服務器發送給網盤客戶端的事件類型、網盤客戶端發送給網盤服務器的事件類型、網盤服務器發送給本地的事件類型和網盤客戶端發送給本地的事件類型;事件業務類型包括文件的元信息及文件塊的創建、修改、刪除、下載和上傳的業務,也包括目錄元信息的創建、修改、刪除、下載和上傳的業務,也包括用戶注冊、注銷、更新、認證和查詢的業務,也包括終端設備的登記、更新和查詢的業務,事件服務模塊根據不同的事件業務類型來訪問對應業務服務模塊來執行事件相關業務。6.如權利要求1或5所述的網盤系統,其特征在于,所述的網盤客戶端裝置和網盤服務器裝置中事件服務模塊的處理流程如下: 第I步、接收事件請求; 第2步、分析事件類型,如果事件為本地執行事件,則執行第5步,否則執行第3步; 第3步、事件不是遠程執行事件,則執行第10步,否則執行第4步; 第4步、該事件通過網絡發送到指定網絡設備,并執行第6步; 第5步、在本地調用相關模塊執行該事件; 第6步、是否通知事件源,如果無需通知事件源則執行第10步,否則執行第7步; 第7步、事件源是否為遠程,如果事件源是遠程則執行9步,否則執行第8步; 第8步、將該事件回執通知給本地事件源執行體,并執行第10步; 第9步、將該事件回執通知通過網絡發送到指定網絡設備,并執行第10步; 第10步、事件處理完畢返回。7.如權利要求1或4所述的網盤系統,其特征在于,用戶從網盤客戶端裝置登錄到網盤服務器裝置時需要通過網盤服務器裝置的認證,當用戶及網盤客戶端裝置通過網盤服務器裝置認證后,網盤服務器將用戶及網盤客戶端裝置的登錄信息記下來并跟蹤用戶退出事件,該登錄信息可記錄在“用戶登錄表”中,用戶登錄表中包括用戶ID、終端ID、網絡物理地址、登錄時間、退出時間和狀態;當網盤系統中網盤服務器裝置內某個文件信息被修改,則網盤服務器裝置向擁有該文件的所有在線網盤客戶端裝置發送“文件更新事件”,從而使得相關在線網盤客戶端裝置可以及時更新該文件元信息和文件數據塊。8.—種支持多用戶多終端同時讀寫的網盤系統的讀文件方法,其特征在于,網盤客戶端裝置中“應用程序”讀取網盤系統中指定文件的指定文件數據到指定內存空間的方法包括具體步驟如下:第I步、網盤客戶端裝置中“文件系統接口層”接收來自上層“應用程序”的讀取網盤系統中指定文件的指定偏移量位置及長度的文件數據到指定內存空間的請求,并將該讀請求轉化為讀取網盤系統中指定文件的指定第i塊文件數據塊內容到指定內存空間的讀請求;第2步、網盤客戶端裝置的“文件服務”模塊讀取該文件的“文件元信息”,進一步獲取該指定第i塊文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”; 第3步、根據第2步中文件數據塊的“本地文件數據塊ID號”,判斷該文件數據塊的內容是否在本地網盤客戶端裝置中存在,若存在則執行第4步,否則執行第5步; 第4步、根據第2步中文件數據塊的“本地文件數據塊ID號”讀取該數據塊的“本地文件數據塊元信息”,進一步判斷該“本地文件數據塊”的狀態是否有效,若該“本地文件數據塊”的狀態為有效,則執行第7步,否則執行第5步; 第5步、針對第2步中指定文件的該指定文件數據塊的“全局文件數據塊ID號”,向本地“事件服務模塊”發送“下載文件數據塊”事件,并在指定時間內等待該事件完成; 第6步、判斷第5步中“下載文件數據塊”事件是否完成,如完成則執行第7步,否則執行第9步; 第7步、重新讀取該文件的“文件元信息”,并獲得該文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”; 第8步、根據該文件數據塊的“本地文件數據塊ID號”讀取對應的“本地文件數據塊元信息”從而獲得“本地數據塊ID”,讀取該本地數據塊到指定內存,并設置讀取指定文件的指定文件數據塊內容到指定內存空間的訪問請求成功信息,并進一步執行第10步; 第9步、設置讀取指定文件的指定文件數據塊內容到指定內存空間的訪問請求失敗信息,進一步執行第1步; 第10步、讀請求操作結束。9.一種支持多用戶多終端同時讀寫的網盤系統的寫文件方法,其特征在于,網盤客戶端裝置中“應用程序”將新數據寫到網盤系統中指定文件的指定偏移量位置的方法包括具體步驟如下: 第I步、網盤客戶端裝置中“文件系統接口層”接收來自上層“應用程序”將新數據寫到網盤系統中指定文件的指定偏移量位置的請求,并將該寫請求轉化為將新數據寫到網盤系統中指定文件的指定第i塊文件數據塊的請求; 第2步、網盤客戶端裝置的“文件服務”模塊讀取該文件的“文件元信息”,進一步獲取該指定第i塊文件數據塊的“全局文件數據塊ID號”和“本地文件數據塊ID號”; 第3步、判斷第2步中該指定文件數據塊是否為新增數據塊,如果該指定文件數據塊是新增數據塊,則執行第9步,否則執行第4步; 第4步、判斷第2步中該指定文件數據塊是否將被完全寫覆蓋,如果該指定文件數據塊將被完全寫覆蓋,則執行第9步,否則執行第5步; 第5步、判斷第2步中該指定文件數據塊是否已在本地,如果該指定文件數據塊尚未在本地存儲中,則執行第7步,否則執行第6步; 第6步、判斷第2步中該指定文件數據塊的本地數據塊是否有效,如果該指定文件數據塊的本地數據塊有效,則執行第8步,否則執行第7步; 第7步、向網盤服務器裝置發送獲取第2步中該指定文件數據塊的事件、并等待第2步中該指定文件數據塊的數據被下載到本地,如果第2步中該指定文件數據塊的數據未能被下載到本地,則執行第12步,否則執行第8步; 第8步、獲取本地一個空閑數據塊作為新數據塊,并將第2步中該指定文件數據塊的原數據塊內容復制到該新數據塊,并進一步執行第1步; 第9步、獲取本地一個空閑數據塊作為新數據塊,并進一步執行第10步; 第10步、將第I步中新數據寫入新數據塊中,并更新新數據塊的元信息,設置寫數據塊成功; 第11步、向網盤服務器裝置發送“文件數據塊修改”事件,并進一步執行第13步; 第12步、設置寫數據塊失敗,并進一步執行第13步; 第13步、寫請求操作結束。
            【文檔編號】G06F17/30GK106021327SQ201610297399
            【公開日】2016年10月12日
            【申請日】2016年5月6日
            【發明人】李旭東
            【申請人】南開大學
            網友詢問留言 已有0條留言
            • 還沒有人留言評論。精彩留言會獲得點贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品