国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

系統設計的“元素周期表”:40個橫跨所有領域的通用設計原則

系統 其他OS
系統設計通常通過特定領域的解決方案來傳授,例如數據庫、操作系統或計算機體系結構,每個領域都有其自成一派的方法和術語。

近日,一篇名為《系統設計的元素》(Elements of System Design)的論文引發社區熱議。它的目標宏大且吸睛:通過梳理上百篇橫跨操作系統、數據庫、分布式系統等領域的經典論文,提煉出一套通用的系統設計原則“元素周期表”。

這份“周期表”的價值,不在于提供一套死板的規則,而在于為我們提供一套共享的詞匯和心智模型。它能幫助我們更清晰地思考、更精確地溝通、更深刻地理解不同系統設計背后的內在聯系。

下面便是該論文的中譯版,希望能給大家帶去啟發。

系統設計通常通過特定領域的解決方案來傳授,例如數據庫、操作系統或計算機體系結構,每個領域都有其自成一派的方法和術語。雖然這種多樣性是一種優勢,但它也可能掩蓋了跨領域反復出現的共通原則。本文提出了一個從計算機系統多個領域中提煉出的系統設計原則的初步分類法。其目標是提供一套共享、簡潔的詞匯,以幫助學生、研究人員和實踐者對系統結構和權衡進行推理,跨領域比較設計,并更清晰地溝通設計選擇。

引言

投身于計算機系統領域的一大樂趣在于其純粹的多樣性,它涵蓋了操作系統、數據庫、計算機體系結構、分布式系統、編程語言、網絡等眾多分支,每個分支都有著豐富的歷史。對于初學者來說,由于傳統和詞匯的多樣性,要發現不同領域之間的聯系可能頗具挑戰:相同的設計原則可能會以不同的面貌出現在不同的領域中。

例如,思考一下 Jim Gray 等人關于數據庫隔離級別的經典論文。它仔細闡述了并發控制機制以及在正確性和性能之間的權衡。然而,如果沒有在操作系統或計算機體系結構領域接觸過類似問題,這些思想可能看起來僅僅是狹隘地“關于數據庫”的。實際上,相同的設計原則,“放寬一致性”,以不同的形式在各種系統中反復出現,從弱順序內存層次結構到分布式系統中的最終一致性協議。當每個社區都使用自己的術語和范例時,初學者可能很難識別出底層的設計原則。這種碎片化增加了認知開銷,因為同一個權衡必須在每個上下文中重新學習。

這是一個更廣泛的模式:系統研究富含實踐洞見,但在共享的概念性支架上則較為薄弱。在各個領域中,類似的挑戰反復出現,如管理并發、確保一致性和適應變化,而其框架和詞匯卻常常不同。因此,看似毫不相關的領域之間的深層聯系可能仍然相對模糊。

本文是朝著彌合這些差距邁出的一小步。借用門捷列夫的比喻,我們提出了一個反復出現的系統設計原則的“元素周期表”。其目標并非一個僵化的分類法,而是一個可用的詞匯表:一種用以標注論文、講座和設計文檔中所采用的基本原則的簡潔方式。其目的是揭示計算機系統中已經存在的結構,以便學生能形成更連貫的心理地圖,研究人員能精確定位其貢獻,而實踐者能以更高的清晰度跨領域討論設計選擇。

方法論

我們通過回顧操作系統、計算機體系結構、數據庫、網絡、編程語言、安全以及計算機系統其他領域的 100 多篇有影響力的論文來識別這些原則。這些論文因其歷史意義和持續的相關性而被選中,例如關于并發控制 和共識 的經典論文,以及關于在系統內部使用機器學習 和為云設計系統 的近期工作。

對于每篇論文,我們都問:其底層的高層設計原則是什么?在不同領域中,獨立的系統常常不是在機制上趨于一致,而是在共享的設計原則上:例如,通過放寬一致性來提高性能,或通過提升抽象來增強可用性。

要被認定為一條系統設計原則,它必須滿足兩個條件:

  1. 抽象性 – 該原則必須獨立于具體的技術或實現。
  2. 通用性 – 該原則必須在不同領域中出現(例如,數據庫系統、操作系統、編程語言)。

本分析旨在梳理出許多具有持久、通用價值的原則,而非對所有原則進行編目。

設計原則表

我們整理了一套結構化的、包含 40 多個從系統文獻中提煉出的通用設計原則。如下圖所示,它們被組織成反映了系統設計中常見維度的不同主題組。

圖片圖片


圖例: Code = 唯一短符號, Name = 原則名稱, Intent = 簡短描述。

每個原則都帶有一個簡短的符號(例如,Co 代表可組合性,Op 代表樂觀設計)以便快速參考。我們強調設計意圖而非規定具體機制:這些原則闡述的是諸如“在并發下保持正確性”或“優先處理普遍情況”等目標,而不是“使用此鎖定協議”或“優化此查詢計劃”,具體的實現則留給特定領域。

目錄

  • Group 1: 結構: 如何用清晰的邊界和擴展點來切分和連接組件。
  • Group 2: 效率: 通過將精力集中在有回報的地方,來減少工作或降低成本。
  • Group 3: 語義: 精確地指定行為和接口。
  • Group 4: 分布: 在分布式架構中協調工作和數據。
  • Group 5: 規劃: 根據目標、成本和約束自動選擇方案。
  • Group 6: 可操作性: 在最小化中斷的情況下觀察、適應和演進運行中的系統。
  • Group 7: 可靠性: 在故障、并發和部分失效下保持正確性。
  • Group 8: 安全性: 約束權限和強制隔離以保護安全和完整性。

Group 1: 結構

Si – Simplicity (簡單性)

選擇滿足當前需求的最簡單的系統設計;抵制復雜性,例如“以防萬一”而增加的額外層次、服務或通用性,直到有證據表明其有益。

示例: 避免對系統進行過早的架構優化。

Mo – Modularity (模塊化)

將系統劃分為具有最小化接口的高內聚單元,以便每個單元都可以被獨立地推理、替換或演進。該原則專注于分解:選擇邊界以促進關注點的清晰分離,使每個職責都位于一個模塊內。

示例: OSI 模型將通信分解為具有明確邊界的標準化層次,允許獨立開發和替換。

Co – Composability (可組合性)

設計可被安全、靈活地重新組合的組件;依賴顯式的合約和類型約束的接口,以使每個合法的組合都保持正確,讓組件能像可互換的積木一樣被組裝。與模塊化不同,該原則專注于重新組合:確保組件可以安全、靈活地結合。

示例: Unix 程序(如 grep, sort, uniq)從標準輸入讀取并寫入到標準輸出,讓用戶可以組合復雜的文本處理管道。

Ex – Extensibility (可擴展性)

設計系統以允許安全的用戶自定義擴展,例如插件,而無需修改系統核心。當擴展來自不受信任方時,通過沙箱進行隔離以保護安全。

示例: Unix 也體現了可擴展性:用戶可以添加新程序而無需更改內核。

Pm – Policy/Mechanism Separation (策略與機制分離)

通過暴露一個通用接口,將“應該做什么”(策略)與“如何執行”(機制)分離開來,使得多種策略可以插入到同一個機制中。

示例: Hydra 擁有一個通用機制的內核(調度、分頁、保護),并將資源分配策略移至用戶級模塊。

Gr – Generalized Design (通用化設計)

設計一個具有明確變化點(如類型、可調參數或插件)的單一核心,使其可以在不產生重復的情況下服務于多種用例,但當特化能帶來性能、準確性或清晰度的顯著提升時,則進行特化。

示例: C++ 標準模板庫是一組通過模板參數化的容器、迭代器和算法的集合。Postgres 允許用戶向核心數據庫系統添加類型和操作符。

Group 2: 效率

Sc – Scalability (可伸縮性)

設計系統以應對數據、流量或節點的增長,同時保持成本或延遲的近線性增長。

示例: MapReduce 通過將工作分解為并行任務并以最小的協調來聚合結果,從而在節點間進行擴展。

Rc – Reuse of Computation (計算復用)

通過緩存、物化中間結果(例如索引),或在重復或稍作修改的輸入上增量更新輸出來避免冗余工作,從而節省計算。

示例: B+樹復用其已排序的鍵順序:查找遵循現有的搜索路徑,而不是每次重新掃描整個數據集,從而復用了計算。

Wv – Work Avoidance (工作規避)

跳過不會改變外部可觀察結果的計算。例子包括惰性求值和謂詞短路。

示例: 惰性求值將工作推遲到值被需要時才執行,從而消除了無用的計算。

Cc – Common-Case Specialization (普遍情況特化)

檢測主導運行時的執行路徑或數據項(“熱點”),并專門為它們創建一個精簡的快速路徑,同時用一個較慢的通用路徑來正確處理所有情況。

示例: 在首次調用時緩存接收者類的目標方法,這樣后續對該普遍接收者的調用將命中快速路徑;不常見的類則回退到完整的方法查找例程。

Bo – Bottleneck-Oriented Optimisation (瓶頸導向優化)

對端到端性能進行剖析,定位最緊張的資源約束,并在此處集中改進,直到另一個階段成為限制因素。

示例: 罕見的第99百分位延遲的長尾請求是延遲瓶頸,而復制請求有助于削減尾部響應時間。

Ha – Hardware-Aware Design (硬件感知設計)

根據底層硬件的延遲、帶寬、并行性和持久性特性(例如緩存層次、NUMA、SSD、GPU)來塑造算法和數據結構。

示例: BLAS 定義了經過緩存和向量優化的內核,使線性代數代碼能高效利用硬件。

Op – Optimistic Design (樂觀設計)

假設普遍情況會成功并繼續執行,跳過協調,僅在假設被證明錯誤時才依賴一個(可能昂貴的)恢復路徑。

示例: 樂觀并發控制無鎖地運行事務,然后在提交時進行驗證,僅在檢測到沖突時才回滾。

La – Learned Approximation (學習式近似)

用在數據上訓練的模型替換手工制作的算法,以犧牲有界的不精確性來換取效率或靈活性。

示例: 感知器分支預測器在線學習權重以預測分支結果,其性能優于固定的兩位計數器,且無需擴大表的大小。

Group 3: 語義

Al – Abstraction Lifting (抽象提升)

將底層操作封裝在一個更高層的接口或領域特定語言之后,該接口表達的是意圖而非步驟。這使得內部優化成為可能,也允許單一的定義能針對不同的后端。

示例: SQL 查詢聲明要檢索的結果;DBMS 自動選擇訪問路徑、連接順序和物理操作符。

Lu – Language Homogeneity (語言同質性)

在核心組件和擴展中采用單一、良定義的中間表示(或語言),從而使語義對齊、工具可組合,并以最小的努力實現跨層優化和復用。

示例: LLVM 暴露了一個基于類型和SSA的IR,許多前端以此為目標,許多后端也共享它,從而實現了跨語言優化和相同中間端遍的復用。

Se – Semantically Explicit Interfaces (語義明確的接口)

精確地指定一個接口(涵蓋效果可見性、順序、持久性等),以便用戶可以對調用的真實外部可觀察狀態進行推理,而無需猜測隱藏的緩沖或復制。

示例: SQL 隔離級別指定了精確的異常語義,并明確了可見性保證。

Fs – Formal Specification (形式化規約)

使用數學模型或邏輯來描述系統行為,以支持嚴格的推理、驗證或綜合。實現此原則的機制包括時序邏輯、狀態機以及其他使系統屬性可分析的形式化方法。

示例: TLA+展示了如何使用邏輯和集合論來規約和檢查系統,以便在編碼前捕獲設計錯誤。

Ig – Invariant-Guided Transformation (不變量驅動轉換)

使用形式化聲明的不變量來驅動安全的重構、優化或重新配置。

示例: 在編譯器中,SSA 將“每個名稱只有一個定義”視為 IR 不變量;各個遍在重寫代碼時保持語義,然后重新建立 SSA。在查詢優化器中,關系代數等價(例如,選擇/投影下推)保持結果的語義。

Group 4: 分布

Lt – Location Transparency (位置透明)

隱藏資源的物理位置,以便客戶端通過統一的名稱或句柄進行交互。

示例: 程序可以像調用本地過程一樣調用遠程過程,從而掩蓋了主機的地理位置。

Dc – Decentralised Control (去中心化控制)

將決策權分散到多個節點,以避免單點故障或瓶頸。

示例: Dynamo 通過一致性哈希對數據進行分區,并使用基于 gossip 的成員關系,從而避免了任何中央協調器。

Fp – Function Placement (功能放置)

將功能放置在擁有必要上下文和資源的地方,以實現正確性和效率,避免在別處進行冗余工作。

示例: 端到端論證表明,像可靠性檢查這樣的功能只有在端點才能實現其正確性。

Lo – Locality of Reference (引用局部性)

將相關的數據和操作在時間和空間上彼此靠近,以保持訪問模式并最小化計算與狀態之間的分離。

示例: 工作集模型形式化了時間局部性,以將熱點頁面保留在內存中。

Group 5: 規劃

Ep – Equivalence-based Planning (等價規劃)

在保持語義等價的通用IR上應用代數/邏輯重寫規則;將最終選擇推遲到后續的成本/約束階段。

示例: Starburst 的基于規則的重寫系統應用關系等價(例如,謂詞下推)來生成邏輯上等價的查詢。

Cm – Cost-based Planning (成本規劃)

當系統必須在備選的設計、配置或執行策略中做出選擇時,使用成本模型來指導搜索,以找到低成本的解決方案(能源、金錢等),而無需枚舉整個空間。

示例: Selinger 查詢優化器在一個成本模型下選擇成本最低的計劃。

Cp – Constraint-based Planning (約束規劃)

將決策和硬性或軟性約束進行編碼,并依賴一個求解器(ILP/SMT等)來找到一個可行或最優的分配方案。

示例: Quincy 將集群調度問題建模為帶有局部性和公平性約束的最小成本流問題,并求解以獲得分配方案。

Gd – Goal-Directed Planning (目標導向規劃)

接受對期望最終狀態的聲明性描述,并自動合成一個具體的操作序列來達到它,從而將用戶與實現細節隔離開來。

示例: Cascades 查詢優化器通過基于規則的轉換和成本引導的搜索,將一個 SQL 查詢(目標)轉化為一個可執行的計劃。

Bb – Black-Box Tuning (黑盒調優)

當分析性的成本模型不可用時,通過在目標系統上測量候選方案來搜索計劃/配置空間,迭代地選擇更好的方案(例如,啟發式或貝葉斯搜索),并緩存勝出者。

示例: ATLAS 在目標 CPU 上憑經驗對候選的 BLAS 內核配置進行計時,并固定性能最佳的參數,而無需分析性的成本模型。

Ah – Advisory Hinting (建議性提示)

提供非強制性的提示,系統可以利用這些提示來提高性能,但不會改變正確性或需要強制執行。

示例: Lampson 提倡使用可選的“提示”,這些提示有助于提高性能,但如果被忽略,絕不能影響正確性。

Group 6: 可操作性

Ad – Adaptive Processing (自適應處理)

監控運行時條件,并自動調整參數或策略。

示例: Eddies 根據反饋在運行時持續地對查詢操作符進行重新排序,在不停止執行的情況下進行適應。

Ec – Elasticity (彈性)

根據不斷變化的需求和成本目標,自動調整資源分配。例子包括預測性自動伸縮和負載整形。

示例: Chase 等人根據負載和效用動態地配置服務器,體現了彈性資源管理。

Wa – Workload-Aware Optimisation (負載感知優化)

持續觀察工作負載的形態(傾斜、局部性、訪問頻率等),并調整數據布局、算法選擇或資源分配以匹配當前模式。

示例: 數據庫“cracking”技術根據查詢謂詞增量地重組列數據,從而使數據布局持續地適應觀察到的工作負載。

Au – Automation and Autonomy (自動化與自治)

讓系統無需人工干預即可執行常規或響應式任務,通常通過從追蹤或用戶提供的示例中學習來實現。

示例: AutoAdmin 從工作負載追蹤中自動推薦索引/物化視圖 [7]。通過示例編程的系統通過從少數用戶提供的示例中進行泛化來自動化任務。

Ho – Human Observability (人類可觀測性)

暴露系統的內部狀態,如指標、追蹤、計劃,以使系統有意地變得透明;這種透明度提高了可觀測性、調試、內省和控制能力。

示例: Paxson 的端到端互聯網數據包動態分析展示了豐富的測量和追蹤如何實現有根據的調試和調優。

Ev – Evolvability (可演進性)

設計系統使其能在最小化停機時間或重寫成本的情況下進行變更,且不破壞現有客戶端的外部合約或可觀察行為。與讓外部人員通過定義的鉤子點添加新行為而不觸及核心的可擴展性不同,可演進性讓系統內部隨時間變化而不會破壞現有的外部合約。

示例: Parnas 展示了模塊化設計如何使系統更容易在不進行顛覆性重寫的情況下進行擴展。

Group 7: 可靠性

Ft – Fault Tolerance (容錯性)

設計系統使其在組件故障時仍能繼續運行,盡管可能以一種降級的形式。

示例: Gray 對計算機為何停止運行的分析表明,復制和自動重啟讓服務能夠在硬件和軟件故障中持續運行。

Is – Isolation for Correctness (隔離以保正確)

防止組件間的意外干擾,從而使局部推理保持有效。

示例: 兩階段行級鎖定阻止一個事務讀取或覆蓋另一個事務未提交的數據,從而保持隔離保證。

At – Atomic Execution (原子執行)

將多個操作組合在一起,使其表現為不可分割的,要么全部生效,要么全不生效。

示例: 使用事務性內存,事務內的內存操作會進行推測性執行,然后原子性地提交;如果發生任何沖突或故障,整個塊將中止,不留下任何部分狀態。

Cr – Consistency Relaxation (一致性松弛)

為提高性能、可用性或并發性,在有文檔記錄的邊界內,刻意放寬強一致性或順序約束。

示例: Bayou 允許移動客戶端在斷開連接時更新副本,并保證在副本重新連接時最終會趨于一致,這是用嚴格的一致性換取離線可用性。

Group 8: 安全性

Sy – Security via Isolation (隔離以保安全)

強制執行嚴格的邊界,使故障或惡意代碼無法影響其他組件。

示例: 一個正確的虛擬機監視器為每個客戶機呈現一個完整、隔離的機器,并攔截特權操作,防止一個客戶機危及其他客戶機或宿主機。

Ac – Access Control and Auditing (訪問控制與審計)

定義權限,并記錄每次訪問以備問責。

示例: Lampson 對訪問控制列表、能力(capabilities)和審計追蹤的分類法是現代安全機制的基礎。

Lp – Least Privilege (最小權限)

只授予完成任務所必需的最小權限,以縮小爆炸半徑。

示例: 對1988年互聯網蠕蟲的尸檢報告顯示,過度的權限讓蠕蟲得以傳播,并促使了最小權限守護進程的廣泛采用。

Tq – Trust via Quorum (法定人數信任)

依賴多個獨立參與者的一致同意,而非單一權威。

示例: Paxos 算法將狀態復制到一個多數法定人數中,這樣即使少數節點崩潰或行為惡意,服務也能保持正確。

Cf – Conservative Defaults (保守默認值)

發布時采用限制性的、安全的設置;讓專家選擇性地進入風險更高、速度更快的模式。

示例: 采用“默認無訪問”策略,每個保護機制都應只在明確授予時才允許訪問。

Sa – Safety by Construction (構造即安全)

通過代碼或數據的結構設計,使整類錯誤變得不可能發生,而不僅僅是被檢測到。

示例: Rust 的所有權和借用檢查器在編譯時就防止了數據競爭和懸垂指針。

案例研究

為了說明多個設計原則在實踐中如何交織在一起,我們以關系數據庫系統中從邏輯操作符計劃到物理操作符計劃的映射為例。

  • 數據庫系統將聲明性意圖轉化為可執行步驟(策略與機制分離)。
  • SQL 表達了“做什么”(抽象提升),并具有精確的語義(語義明確的接口)。
  • 優化器首先使用代數等價來重寫查詢(等價規劃)。
  • 然后它使用成本模型來選擇具體的物理操作符(成本規劃)。
  • 物理操作符通常針對底層硬件特性進行優化(硬件感知設計)。
  • 謂詞下推體現了工作規避,而索引則實現了計算復用
  • 建議性提示可以指導優化器,而較新的數據庫系統增加了運行時重優化(自適應處理)、學習模型(學習式近似)和采樣(Probabilistic Design,注:原文表格未列出此原則,但案例中提及)。

因此,數據庫系統中從邏輯到物理操作符的映射,體現了多個設計原則如何共同作用,以高效處理聲明性的SQL查詢。

局限性

任何試圖組織像計算機系統這樣廣泛的領域的嘗試都涉及到權衡。此表不是一份檢查清單或一個普適的理論;它是一個共享的詞匯表,旨在突出反復出現的原則并鼓勵進行結構性反思。話雖如此,仍有幾個局限性:

  • 正交性:原則之間可能重疊、相互加強或部分沖突;設計就是關于平衡這些張力。
  • 主觀性與粒度:推導和映射原則涉及判斷;邊界是模糊的,不同的讀者可能會以不同的方式標記同一個系統,或以不同的方式解釋同一個原則。
  • 非形式化分類法:這不是一個完整或最小的設計原則集合。沒有嘗試從一個最小的核心推導出這些原則。

最終,此表是一種幫助學生更清晰地看到反復出現的設計原則,協助系統設計師更精確地溝通權衡,并幫助研究人員認識到他們的思想在更廣闊的系統設計藍圖中所處位置的手段。

結論

系統設計橫跨不同的領域和詞匯,這可能使共享討論變得更加困難。我們繼承機制,研究權衡,并建立直覺,然而用于描述底層思想的簡潔術語并不總是唾手可得。這里提供的設計原則“元素周期表”旨在提供一種適度的通用語言,通過命名反復出現的思想,使其更容易被傳授、比較和在其上進行構建。

參考文獻

[1] Ron Avnur and Joseph M. Hellerstein. Eddies: Continuously Adaptive Query Processing. In SIGMOD, 2000. [2] Rudolf Bayer and Edward McCreight. Organization and Maintenance of Large Ordered Indexes. Acta Informatica, 1972.

... (請參考原文中的詳細參考文獻列表) ...

[48] Hubert Zimmermann. OSI Reference Model – The ISO Model of Architecture for Open Systems Interconnection. IEEE Transactions on Communications, 1980.

如何引用

如果您覺得本分析有用,請按如下方式引用:

Joy Arulraj. Elements of System Design arXiv preprint arXiv:TBD, 2025.

論文地址:https://github.com/jarulraj/periodic-table

責任編輯:武曉燕 來源: TonyBai
相關推薦

2018-05-22 07:41:34

2023-01-02 12:57:40

AI

2021-08-12 07:21:55

Google搜索互動式化學元素周期表化學

2015-09-11 10:53:44

DevOps

2021-08-19 15:19:16

代碼開發模型

2018-12-25 15:32:55

數字化轉型企業信息化案例

2020-01-08 14:45:38

Kubernetes存儲架構

2023-10-11 11:37:36

微服務架構

2021-05-07 15:27:23

架構設計架構開發

2016-10-18 13:31:23

CronPaxos服務

2010-10-11 11:25:26

MySQL主鍵

2017-06-19 14:21:01

JavaScriptAPI設計原則

2021-07-12 15:17:08

機器學習化學元素氧化態

2015-08-11 11:01:22

設計原則開發者

2013-03-06 10:20:38

HTML5框架

2016-11-28 09:06:45

前端系統開發

2023-10-23 11:49:59

2022-04-14 10:24:27

分布式系統性能

2010-10-19 17:21:35

SQL SERVER主

2011-03-21 17:09:38

數據表設計原則
點贊
收藏

51CTO技術棧公眾號

综合网中文字幕| 精品视频一区在线视频| 日本xxxxxxxxxx75| 亚洲国产精品一区制服丝袜| 亚洲人成欧美中文字幕| av在线资源网| 一区二区三区波多野结衣在线观看 | 日本一区二区三区四区在线观看 | 丝袜情趣国产精品| 成人拍拍拍免费视频网站| 91免费国产在线观看| 一本大道熟女人妻中文字幕在线| 日本怡春院一区二区| 亚洲欧美日本国产有色 | 日韩免费av在线| 狠狠操综合网| 久久99久国产精品黄毛片入口| 性欧美又大又长又硬| 久久久久久久一区二区| 中文字幕一区二区av| 欧美另类视频在线| 韩国一区二区三区在线观看| 99在线视频播放| 99日韩精品| 可以在线看黄的网站| 国产成人av电影在线| 杨幂一区欧美专区| 最好看的中文字幕久久| 97在线观看免费高清视频| 韩国视频一区二区| 日本韩国福利视频| 色成年激情久久综合| 制服丝袜中文字幕在线| www.国产精品一二区| 99re热精品视频| 久久视频在线观看免费| sdde在线播放一区二区| 欧美一区二区女人| 欧美在线导航| 一区在线电影| 都市激情亚洲色图| av亚洲一区二区三区| 日韩女优人人人人射在线视频| 日韩久久精品| 精品在线视频一区二区| 国产亚洲制服色| av文字幕在线观看| 欧美日韩电影在线播放| 先锋资源久久| 婷婷福利视频导航| 亚洲国产精品va在看黑人| 久久99国产精品久久99大师| 日本成人看片网址| 黄色一区二区在线观看| 1区2区3区在线| 欧美激情综合亚洲一二区| 亚洲人成7777| 精品国产导航| 中国国产一级毛片| 欧美影院久久久| 久久国产精品99久久久久久老狼 | 国产va在线| 日韩电影天堂视频一区二区| 日韩一级片在线播放| 韩日成人在线| 日韩在线资源| 亚洲自拍偷拍网址| 一区二区视频在线看| 白嫩亚洲一区二区三区| 日韩啊v在线| 精品一区二区在线观看| 国外成人福利视频| 韩国av电影免费观看| 91精品国产高清自在线看超| 久久精品国产亚洲一区二区三区 | 欧美videos大乳护士334| 日韩成人午夜精品| 久久丝袜视频| 国产污污在线观看| 91免费视频国产| 欧美日韩久久一区二区| 久久综合九色| 美女欧美视频在线观看免费| 日韩网址在线观看| 国产一区二中文字幕在线看| 欧美日韩国产精品成人| 五月久久久综合一区二区小说| 免费福利影院| 国内视频一区二区| 日韩av一区在线| 久久久精品欧美丰满| 国产精品一级黄| 欧美色图激情小说| 国产精品xx| a级黄色一级片| 国产日韩av在线播放| 欧美性生活影院| 麻豆精品网站| 伊人久久精品一区二区三区| 国产调教视频在线观看| 成人午夜剧场免费观看完整版| 黑人另类av| 久久成人这里只有精品| 欧美午夜片欧美片在线观看| 丝袜诱惑制服诱惑色一区在线观看| 久草资源在线| 亚洲综合精品伊人久久| 国产做受69高潮| 亚洲综合丁香婷婷六月香| 国产麻豆欧美日韩一区| 乱中年女人伦av一区二区| 亚洲伦理电影| 91九色蝌蚪成人| 国产精品xxx视频| 亚洲第一视频在线观看| 中文字幕一区二区三中文字幕| 午夜一区二区三区不卡视频| 日本一区二区三区视频在线看 | 精品一区2区三区| 欧美精品亚州精品| 国产不卡在线观看| 91精品国产91久久久久久吃药| 亚洲激情国产精品| 五月婷婷综合网| 91蝌蚪porny| 在线国产日韩| 亚洲精品女人| 久久国产电影| 日韩久久综合| 日韩av自拍| 亚洲小说图片| 国产色噜噜噜91在线精品| 国产一区二区主播在线| 日韩少妇内射免费播放| 亚洲小说欧美另类激情| 成人免费无码av| 在线视频se| 亚洲日本网址| 亚洲美女久久| 轻轻草成人在线| 国产人成一区二区三区影院| 亚洲一区二区三区四区中文字幕 | 久久亚洲精精品中文字幕| 91精品久久久久久久久久不卡| 视频在线在亚洲| 亚洲一区二区美女| 中文字幕久精品免费视频| 午夜精品亚洲一区二区三区嫩草| 九色一区二区| 国产精品中文久久久久久久| 国产精品美女www| 国产精品欧美风情| 国产精品福利观看| av成人观看| 欧美一区二区综合| 妞干网在线免费视频| 天天干天天操天天做| 色8久久久久| 激情av综合| 美女久久一区| av在线不卡观看免费观看| 久久综合狠狠综合久久综合88 | 国产精品诱惑| 欧美久色视频| 99久久99久久综合| 五月天中文字幕一区二区| 亚洲国产欧美一区二区三区同亚洲 | 国产精品播放| 妞干网在线观看视频| aa成人免费视频| 日本大片免费看| 韩国三级在线观看久| 久久中文资源| 日本一区精品视频| 一个色综合网| 国产精品国产三级国产普通话蜜臀 | 国内精品一区二区三区| 日本道在线视频| 在线观看中文字幕| 99精品国产一区二区三区2021| 日日骚欧美日韩| 亚洲国产精品久久久男人的天堂| 久久中文久久字幕| 日本一区高清不卡| 三级国产在线观看| 免费毛片aaaaaa| 影视一区二区三区| 日韩成人av影视| 日韩片之四级片| 天天操天天干天天玩| 黄色免费网站在线观看| 欧美三级不卡| 91精品国产高清一区二区三区| 91精品美女在线| 欧美网站免费观看| 91成人短视频在线观看| ww亚洲ww在线观看国产| 91国产美女在线观看| 91中文字幕网| 亚洲区小说区|