網絡過濾驅動器的構造和運行環境的制作方法

            文檔序號:7944858閱讀:340來源:國知局
            專利名稱:網絡過濾驅動器的構造和運行環境的制作方法
            技術領域
            本發明涉及過濾數據包。尤其是,本發明涉及用于一種抽象接口的系統、方法和計算機程序產品,以便管理將過濾器實例插入過濾器棧、從過濾器棧中除去過濾器實例,以及回避過濾器實例的功能性,而不中斷有關的協議棧操作。
            背景技術
            在當今世界,大量的計算機通過計算機網絡(例如,互聯網)而彼此耦合,這使各臺計算機能夠交換數據。但是,這些計算機中的大多數計算機的耦合關系并不是直接的一對一的關系。相反,這些計算機通常處于多臺計算機被互連的網絡環境中,每臺計算機都可以與網絡中的所有其他的計算機交換數據。隨著被耦合到傳統網絡的計算機的數量的增加,通過這類網絡而被轉移的數據的數量也增長了。結果,開發了一些用于通過計算機網絡來有效、可靠地轉移數據的技術。
            促進數據通過網絡來被有效轉移的一種技術是“分包”(“packetizing”)。通過分包技術,大量數據被分成較小的段或“包”。與龐大的數據相比,包所要求的用于處理的資源較少。此外,通過使用包,可以用遞增的方式來接收數據,這樣,當傳輸中發生錯誤時,必須被重新發送的數據的數量減少了。
            另一種技術是使用“開放式系統互聯”(“OSI”)模型,該技術定義用于執行通信協議的聯網結構。OSI模型中將數據轉移操作分入七個不同的“層”中進行,每個層被指定執行數據轉移過程中的某些操作。雖然一些聯網應用程序已實現了每個層,但是,許多應用程序只實現用于通過網絡來轉移數據的選擇性層。由多數協議棧中引入的兩個層是傳輸層和數據鏈路層。傳輸層通常與分包的數據有關。傳輸層協議的一個例子是“傳輸控制協議” (“TCP”)。數據鏈路層通常與將位編碼成包以及將包解碼成位有關。
            將數據從計算機設備發送到網絡通常包括為龐大的數據分包的一個傳輸層驅動器、將包解碼成位的一個數據鏈路層驅動器,以及將位傳輸到網絡上的網絡硬件(例如,網卡)。從網絡接收數據的計算機設備通常包括按相反順序進行的這些操作。也就是說,硬件設備接收位,數據鏈路層驅動器將位編碼成包,這些包被發送到傳輸層驅動器,進而結合成龐大的數據。當將包解碼成分派給網絡硬件的位時,以及當將位編碼成分派給傳輸層協議的包時,數據鏈路層驅動器可以對數據執行特殊的操作。這是有利的,因為數據在被發送到網絡上或被發送到更高層次的協議之前可能需要進行修改。
            過去,為某個特殊的平臺編寫或指定數據鏈路層驅動器,以促進數據的兼容轉移。隨著協議和硬件設備類型的數量的激增,這導致了一些問題的產生。要刪除、添加或修改數據鏈路層驅動器所執行的操作,必須完全重寫驅動器。重寫數據鏈路層驅動器的成本十分昂貴,涉及高水平的專門技術,經常會造成現有硬件的荒廢或使這類硬件的用戶放棄被增強的功能性。此外,當計算機系統內存在多個數據鏈路層驅動器時,各種數據鏈路層驅動器中所包括的功能可能會變成多余,卻仍要求一些適當的操作。
            結果,在協議棧的數據鏈路層方面,開發了一些其他的方法,用于對數據執行操作。一種這類的方法是“IP防火墻鉤”,用于當數據包在協議棧的數據鏈路層與傳輸層之間傳遞時“鉤住”這些數據包。鉤住包的好處在于可以容易地執行數據監控功能,例如,檢查包的起源地址,以確定應該對包進行處理還是放棄。但是,鉤住包的好處也有限,因為可能無法修改包并將其插回到數據流中。另外,還開發了與鉤住包不相兼容的其他更現代的聯網技術。例如,IP防火墻鉤不能與普遍使用的“互聯網連接共享”技術共同操作。
            用于對通過協議棧的數據鏈路層的數據包執行操作的另一種方法是使用“中間驅動器”。中間驅動器介于傳輸層與數據鏈路層之間,可以執行傳統的數據監控和其他更先進的過濾功能(例如,數據壓縮和加密)。中間驅動器允許為協議棧添加功能性或刪除功能性,而不必重寫根本的鏈接層設備驅動器。此外,可以對多個中間驅動器進行分層,以便對通過數據鏈路層的數據執行一系列功能。
            與IP防火墻鉤相比,中間驅動器所提供的功能性增加了,但是,中間驅動器存在某些固有的問題。中間驅動器的安裝和配置經常涉及合并來自一個操作系統部件(例如,注冊表)的數據或將數據提供給一個操作系統部件(例如,注冊表)。其中有中間驅動器處理操作系統數據的過濾環境是有害的,這至少有兩個原因。
            從協議棧安裝或除去中間驅動器可能會要求拆卸和重建該協議棧。這可能會導致必須重建協議棧,以便添加中間驅動器的功能性。同樣,如果編寫數據的中間驅動器不被重建,則會使協議棧發生故障。拆卸和重建協議棧可能包括重新啟動計算機系統,以便為中間驅動器對數據進行適當的初始化。此外,在某些情況下,在所安裝的中間驅動器被激活之后,它可能只需要觀察網絡數據。但是,即使中間驅動器處于不活動的狀態,它也將保持被安裝并使用各種寶貴的操作系統資源,因而使網絡性能退化。
            所以,我們需要的是一些系統、方法和計算機程序產品,用于按節約處理資源和網絡資源的方式來有效地過濾數據包并改變過濾操作。

            發明內容
            本發明的原理用于有效地過濾數據包和改變過濾操作。計算機設備中所包括的協議棧與可能包括一個或多個過濾器實例的過濾器棧有關。與協議棧有關的數據包通過過濾器實例,這些過濾器實例可以對該數據包執行過濾操作。過濾器實例可以被插入過濾器棧或從過濾器棧中被除去,所采用的方式減少了中斷有關的協議棧的可能性。
            此外,可以根據數據包和/或配置參數的特征來回避與過濾器實例有關的過濾操作。可以用各種方式來回避過濾操作。當包完全避開與通信路徑(例如,數據路徑或控制路徑)有關的過濾器實例時,可以回避過濾操作。當不對所接收的數據包執行過濾器實例內部的一項或多項過濾操作時,也可以回避過濾操作。抽象接口通過調用過濾驅動器來管理過濾器棧,這些過濾驅動器促進動態地插入和除去對應于該過濾器棧的過濾器實例。
            當過濾器實例被插入過濾器棧時,過濾驅動器可以從抽象接口接收參數。這些參數有助于過濾器實例的配置,以執行過濾操作。可以對過濾器實例進行配置,以便根據被輸入的數據包的特征來執行不同的過濾操作。例如,一個過濾器棧可能會既過濾“互聯網協議” (“IP”)包,又過濾“網絡分組交換”(“IPX”)包。如果合適的話,不管數據是被包括在IP包中還是被包括在IPX包中,這些參數都可能會使過濾器實例執行相同的處理。此外,如果合適的話,這些參數也可能會根據數據是被包括在IP包中還是被包括在IPX包中,來使過濾器實例執行類似(但有些不同)的處理。
            較之于每個傳輸使用一個實例,所有傳輸使用一個單個的過濾器棧來過濾數據包,可以減少由計算機設備配置和保持的過濾器實例的數量。這減少了過濾器棧將被配置多余邏輯的可能性,因此也降低了與過濾數據包有關的操作的復雜程度。
            當抽象接口促進將新的過濾器實例插入操作的過濾器棧時,它可能首先通知有關的協議棧將要暫停使用當前的過濾器棧。然后,抽象接口可能會暫停使用過濾器棧。暫停使用過濾器棧可能會涉及調用與當前過濾器棧中的每個過濾器實例有關的“暫停”模塊。一旦所有的過濾器實例都被暫停使用,就可以將新的過濾器實例插入過濾器棧中的適當的位置。然后,抽象接口可以通知所有協議過濾器棧將被啟動,它包括最新添加的過濾器實例的功能性。然后,可以啟動新的過濾器棧。這可能會涉及調用與新的過濾器棧中的每個過濾器模塊有關的“啟動”模塊。
            當將過濾器實例插入過濾器棧時,抽象接口可以將參數(包括一個“過濾器句柄”)發送到有關的過濾驅動器。過濾器句柄實質上是一個返回地址,過濾驅動器可以使用該返回地址將與過濾器實例有關的數據傳送到抽象接口。通過使用所接收的參數,過濾驅動器可以創建“過濾器上下文”,并為有關的過濾器實例分配資源。然后,可以將有關的過濾器實例的過濾器上下文傳送到抽象接口。過濾器上下文實質上是抽象接口可用來將數據傳送到與對應的過濾器實例有關的過濾驅動器的返回地址。
            可以根據所接收的參數來將過濾器實例插入過濾器棧。過濾驅動器可以將狀況代碼發送到抽象接口,指出嘗試將過濾器實例插入過濾器棧的各種結果。通過使用不同的過濾器句柄,可以將同一個過濾器的多個獨立的過濾器實例安裝到過濾器棧中。可以用一種方式來執行所有這些操作,該方式減少了拆卸有關的協議棧或重置有關的操作系統的可能性。
            在數據實際轉移期間,過濾器實例可以根據其所接收的一個被輸入的數據包的特征來執行一些(而不是全部)有關的內部過濾操作。例如,當過濾器實例收到一個IP包時,它可以執行某些過濾操作;如果過濾器實例收到一個IPX包,則不會執行這些過濾操作。過濾器實例也可以被配置成用“回避”模式進行操作,其中,包完全回避與通信路徑(例如,數據路徑或控制路徑)有關的過濾器實例。由于不使用處理器資源來執行無關的過濾操作,因此,這提高了過濾過程的效率。
            本發明的額外的特點和優點將在下文中加以陳述,其部分內容將從描述中顯而易見,或可以通過實踐本發明而得知。可以利用所附權利要求中所特別指出的工具和組合裝置來實現并獲得本發明的各種特點和優點。通過以下描述和所附權利要求,將更加清楚本發明的這些和其他的特點,或者,可以通過實踐如下文所述的本發明來對其加以了解。


            為了描述本發明上述和其他的優點與特點的獲得方式,將參考附圖中所展示的本發明的特殊實施例,來對以上作簡要描述的本發明進行更加詳細的描述。不言而喻,這些附圖只描繪本發明的典型實施例,因此,它們不被認為是本發明范圍的限制。將通過使用附圖來更加確切、詳細地描述和解釋本發明。在這些附圖中圖1展示了為本發明提供合適的操作環境的一種示例處理系統。
            圖2A展示了一些功能性部件的一個例子,這些功能性部件可以促進將過濾器實例插入過濾器棧。
            圖2B展示了一些交互過程的一個例子,這些交互過程可能發生在各個功能性部件之間,以促進將過濾器實例插入過濾器棧。
            圖2C展示了一些功能性部件的一個例子,這些功能性部件可以促進回避與過濾器實例有關的過濾操作。
            圖3是流程圖,展示了用于將過濾器實例插入過濾器棧的方法的一個例子。
            圖4是流程圖,展示了用于至少回避與過濾器實例有關的一些過濾操作的方法的一個例子。
            具體實施例方式
            本發明涉及系統、方法和計算機程序產品,用于過濾數據包,所采用的方式可節約處理器和網絡資源。一種抽象接口對過濾器棧進行管理,過濾器棧包括一個或多個過濾器實例。每個過濾器實例都可以對從網絡接收到的或被發送到網絡的數據包執行過濾操作。過濾器實例可以根據可完全回避過濾器實例的一個數據包或多個數據包的特征來執行不同的過濾操作。此外,過濾器實例可以被添加到過濾器棧或從過濾器棧中被除去,所采用的方式減少了必須重新啟動有關的協議棧的可能性。能夠容易地交換過濾器實例(每個過濾器實例都可以執行不同的過濾操作)的能力,這會產生許多不同的過濾選項。
            要從過濾器棧添加或除去過濾器實例,可以首先暫停使用過濾器棧。暫停使用過濾器棧可以包括暫停使用過濾器棧中所包括的各個單獨的過濾器實例。當將要暫停使用過濾器棧時,可以通知利用該過濾器棧來執行過濾操作的協議棧。當暫停使用過濾器棧時,抽象接口可以調用過濾驅動器,來插入或除去過濾器實例。在插入或除去過濾器實例之后,可以將過濾器棧的新配置通知給有關的協議棧。
            在操作期間,抽象接口在傳輸層與數據鏈路層之間進行操作,以管理數據包到過濾器棧的轉移。當抽象接口從數據鏈路層接收到數據包時,它將數據包傳送到過濾器棧,從離數據鏈路層最近的過濾器實例開始。然后,抽象接口可以接連將數據包依次傳送到離傳輸層較近的每個過濾器實例,直到數據包通過所有的過濾器模塊為止。然后,抽象接口可以將被過濾的數據包發送到傳輸層。
            當抽象接口從傳輸層接收到數據包時,它按實質上相反的順序來執行這些操作。抽象接口將數據包傳送到過濾器棧,從離傳輸層最近的過濾器實例開始。然后,抽象接口可以接連將數據包傳送到離數據鏈路層較近的每個過濾器實例,直到數據包通過所有的過濾器實例為止。然后,抽象接口可以將被過濾的數據包發送到數據鏈路層。
            在通過過濾器棧的轉移期間,不同的數據包可以由不同的過濾操作來進行過濾。這可能由數據包的特征引起。例如, “互聯網協議”(“IP”)包的過濾方式可能不同于“網絡分組交換”(“IPX”)包的過濾方式。用不同的過濾操作來過濾不同的數據包也可能由數據包的流向引起。也就是說,對從數據鏈路層被轉移到傳輸層的數據包執行的過濾操作可能不同于對從傳輸層被轉移到數據鏈路層的數據包執行的過濾操作。
            可能是這種情況在一個數據流方向上,數據包完全回避過濾器實例;而在另一個數據流方向上,數據包不完全回避過濾器實例。例如,正從數據鏈路層被轉移到傳輸層的數據包可以完全回避過濾器實例,而正從傳輸層被轉移到數據鏈路層的數據包由過濾器實例進行過濾。除了數據包以外,也可以對過濾器棧進行配置,以便通過過濾器棧的控制信息完全回避過濾器實例。
            本發明的實施例可以包括專用或通用計算機(包括各種部件),下文將更加詳細地加以討論。本發明范圍內的實施例還可以包括計算機可讀介質,用于攜帶或保存被存儲于其上的計算機可執行指令或數據結構。這類計算機可讀介質可以是通用或專用計算機能夠存取的任何可用的介質。舉例來說(但不作限制),這類計算機可讀介質可以包括RAM、ROM、EEPROM、CD-ROM或其他光盤存儲器、磁盤存儲器或其他磁性存儲設備,或可以被用于以計算機可執行指令或數據結構的形式來攜帶或存儲所需的程序代碼方法并可以由通用或專用計算機進行存取的任何其他的介質。
            當信息通過網絡或另一種通信連接(硬連線通信連接、無線通信連接,或者硬連線通信連接或無線通信連接的組合)被轉移或提供給計算機時,計算機適當地將連接視作一種計算機可讀介質。因此,任何這樣的連接都適于被稱為“計算機可讀介質”。上述內容的組合也應該被包括在計算機可讀介質的范圍內。例如,計算機可執行指令包括可以使通用計算機、專用計算機或專用處理設備執行某項功能或某組功能的指令和數據。
            圖1和以下的討論意在對可以實施本發明的一種合適的計算機環境進行簡要、一般的描述。雖然不作要求,但是,將在計算機可執行指令(例如,程序模塊)的總環境中描述本發明,這些計算機可執行指令由網絡環境中的計算機執行。通常,程序模塊包括執行特殊任務或實現特殊抽象數據類型的例行程序、程序、對象、組件、數據結構等。計算機可執行指令、有關的數據結構和程序模塊代表用于執行這里所揭示的各種方法的步驟的程序代碼方法的例子。這類可執行指令或有關的數據結構的特殊順序代表用于執行這類步驟中所描述的各種功能的對應動作的例子。
            精通該技術領域的人將會理解,可以在具有許多類型的計算機系統配置的各種網絡計算機環境中實踐本發明,包括個人計算機、手持設備、移動電話、個人數字助理(“PDA”)、多處理器系統、基于微處理器的或可編程的消費電子設備、網絡PCs、小型計算機、大型計算機和類似的設備。也可以在各種分布式計算機環境中實踐本發明,在這些分布式計算機環境中,本地處理設備和遠程處理設備通過通信網絡被連接(通過硬連線鏈接、無線鏈接,或者通過硬連線鏈接或無線鏈接的組合),并且,地方處理設備和遠程處理設備都執行任務。
            參考圖1,用于實施本發明的一種示例系統包括采用傳統計算機120的形式的一個通用計算機設備,傳統計算機120包括一個處理單元121、一個系統存儲器122和將各種系統部件(包括系統存儲器122)耦合到處理單元121的一個系統總線123。系統總線123可以是幾種總線結構(包括一個存儲總線或存儲控制器、一個外圍總線,以及使用各種總線構造中的任一種構造的一個本地總線)中的任何一種。系統存儲器可以包括只讀存儲器(“ROM”)124和隨機存取存儲器(“RAM”)125。基本輸入/輸出系統(“BIOS”)126可以被存儲在ROM 124中,基本輸入/輸出系統包含幫助在計算機120內的各個元件之間轉移信息的各種基本例行程序(如在啟動期間)。
            計算機120也可以包括用于從磁性硬盤139讀取和對其寫入的一個磁性硬盤驅動器127、用于從可移動的磁盤129讀取或對其寫入的一個磁盤驅動器128,以及用于從可移動的光盤131(例如,CD-ROM或其他光學介質)讀取或對其寫入的一個光盤驅動器130。磁性硬盤驅動器127、磁盤驅動器128和光盤驅動器130分別通過硬盤驅動器接口132、磁盤驅動器接口133和光驅接口134被連接到系統總線123。驅動器及其有關的計算機可讀介質為計算機120提供計算機可執行指令、數據結構、程序模塊和其他數據進行非易失性存儲。雖然這里所描述的示例環境使用磁性硬盤139、可移動的磁盤129和可移動的光盤131,但是,也可以使用用于存儲數據的其他類型的計算機可讀介質,包括盒式磁帶、閃存卡、數字多用途盤片、伯努里式編碼磁帶、RAM、ROM和類似物。
            包含一個或多個程序模塊的程序代碼方法可以被存儲在硬盤139、磁盤129、光盤131、ROM124或RAM125上,包括一個操作系統135、一個或多個應用程序136、其他程序模塊137和程序數據138。用戶可以通過鍵盤140、指示設備142或其他輸入設備(未示出) (例如,話筒、操縱桿、游戲手柄、圓盤式衛星電視天線、掃描儀或類似的設備)來將命令和信息輸入計算機120。這些和其他的輸入設備經常通過與系統總線123相耦合的串行端口接口146被連接到處理單元121。或者,各個輸入設備可以由其他的接口(例如,并行端口、游戲端口或“通用串行總線”(“USB”))來連接。監視器147或另一個顯示設備也經由一個接口(例如,視頻適配器148)被連接到系統總線123。除了監視器以外,個人計算機通常包括其他的外圍輸出設備(未示出)(例如,揚聲器和打印機)。
            計算機120可以在使用與一臺或多臺遠程計算機(例如,遠程計算機149a和149b)的邏輯連接的聯網環境中進行操作。遠程計算機149a和149b都可以是另一臺個人計算機、服務器、路由器、網絡PC、對等設備或其他共公網絡節點。雖然圖1中只展示了內存存儲設備150a與150b及其有關的應用程序136a與136b,但是,遠程計算機149a和149b可以包括與計算機120有關的上述許多或所有元件。圖1中所描繪的邏輯連接包括這里舉例(而不是限制)提出的一個局域網(LAN)151和一個廣域網(WAN)152。在辦公室范圍或企業范圍的計算機網絡、內聯網和互聯網中,這類聯網環境很普遍。
            當計算機120在LAN聯網環境中被使用時,它通過網絡接口適配器153或類似的適配器被連接到本地網絡151。當計算機120在WAN聯網環境中被使用時,它可以包括一個調制解調器154、一個無線鏈路或用于在廣域網152(例如,互聯網)上建立通信的其他裝置。調制解調器154(可以是內置的,也可以是外置的)經由串行端口接口146被連接到系統總線123。在聯網環境中,可以將與計算機120有關的所述程序模塊或其各個部分存儲在遠程內存存儲設備中。將會理解,所示的網絡連接是起示范的作用,可以使用在廣域網152上建立通信的其他方法。
            在此文和隨后的權利要求中,“虛擬例行程序”被定義為不執行任何任務的例行程序。虛擬例行程序可能是一個程序模塊或一套計算機可執行指令的一個部分,它包括用于接收數據的一個頭部,但不對它所接收的數據執行操作。也就是說,從虛擬例行程序被輸出的數據與曾被輸入到虛擬例行程序的數據相同。
            在此文和隨后的權利要求中,“入口點”被定義為一個程序模塊或一套計算機可執行指令的一個部分中的一個位置。外部程序模塊可以調用一個入口點,并發送被輸入的數據,以促進執行與入口點有關的指令執行。例如,虛擬例行程序可以有一個入口點。
            在此文和隨后的權利要求中,“系統注冊表”被定義為可以由操作系統用來存儲配置信息的數據庫。
            根據本發明,可以存儲程序模塊(包括抽象接口、過濾器棧、過濾器實例、被用來促進過濾數據包的過濾驅動器,以及有關的程序數據),并從任何與計算機系統120有關的計算機可讀介質來對其進行存取。例如,操作系統135、應用程序136、其他的程序模塊137和/或程序數據138中包括部分抽象接口、過濾器棧、過濾器實例、過濾驅動器和有關的程序數據,用于存儲在磁性硬盤139上。如前所述,可以在分布式環境中執行與過濾數據包有關的程序模塊。例如,遠程計算機設備(例如,遠程計算機149a或149b)中所包括的過濾驅動器可以促進將過濾器實例插入本地處理設備(例如,計算機120)中所包括的過濾器棧,或者,反之亦然。
            圖2A表現了可用于促進將過濾器實例插入過濾器棧的一些功能性部件。如所展示的,計算機201以通信聯絡的方式被耦合到網絡205。在計算機201與網絡205之間被轉移的包可以通過包括傳輸層協議202、抽象接口203和數據鏈路驅動器204的通信路徑傳輸。計算機201可以包括在圖1討論中所參考的任何部件。網絡205可以包括在圖1討論中所參考的任何網絡環境。
            抽象接口203可以與過濾器棧206和過濾驅動器210進行通信。當接收數據包時,抽象接口203可以將數據包轉移給過濾器棧206中所包括的每個過濾器實例。如果從傳輸層協議202接收數據包,則抽象接口203可以將該數據包傳送到過濾器實例207a,再依次地傳送到離數據鏈路驅動器204較近的其他過濾器模塊。如果從數據鏈路驅動器204接收數據包,則抽象接口203可以將該數據包傳送到過濾器實例211a,再依次地傳送到離傳輸層協議202較近的其他過濾器模塊。
            抽象接口203可以與過濾驅動器210進行通信,以促進將過濾器實例插入過濾器棧206或從過濾器棧206中除去過濾器實例。過濾驅動器210中包括過濾器插入模塊220、過濾器啟動模塊221和過濾器暫停模塊222。圖2B表現了一些交互過程的一個例子,這些交互過程可以發生在圖2A所示的各個功能性部件之間,以促進將過濾器實例插入過濾器棧。圖3是流程圖,展示了用于將過濾器實例插入過濾器棧的一種方法。將參考圖2A和2B中所包括的功能性部件來討論圖3中的方法。
            如圖3所示,可以通過暫停過濾器棧的操作來開始插入過濾器實例(動作301)。這可以包括暫停使用當前正在過濾器棧中進行操作的各個單獨的過濾器實例。可以通過調用有關的暫停模塊來暫停使用過濾器實例。例如,過濾器暫停模塊222可以促進暫停使用曾由過濾驅動器210插入過濾器棧的過濾器實例。可以通知協議棧過濾器棧將被暫停使用。
            如圖2A所示,過濾器棧206包括過濾器實例210a,過濾器實例210a可能以前已由過濾驅動器210插入過濾器棧206。抽象接口203可以將數據傳送到過濾器暫停模塊222,以便使過濾器實例210a(或由過濾驅動器210插入過濾器棧206的其他過濾器實例)進入暫停狀態。當使過濾器實例進入暫停狀態時,過濾驅動器可以執行某些操作。例如,過濾驅動器可以使與過濾器實例有關的隊列包被清除,可以停止與過濾器實例有關的其他運行的操作,并可以延遲使過濾器實例進入暫停狀態,直到過濾器實例處理好未完成的包和請求為止。
            可以連續暫停使用過濾器實例。例如,可以首先暫停離傳輸層協議202最近的過濾器實例。如圖2A所示,過濾器207a將會是被暫停使用的第一個過濾器實例。在成功地暫停使用離傳輸層協議202最近的過濾器實例之后,可以暫停使用下一個最近的過濾器實例(即,過濾器實例208a)。在這個例子中,如果將要暫停使用整個過濾器棧,則會按以下的順序來暫停使用其余的過濾器實例208b、209a、210a和211a。一旦過濾器實例211a(離數據鏈路層最近的過濾器實例)成功地到達暫停狀態,也就可以認為過濾器棧206進入暫停狀態。然后,可以通知協議棧過濾器棧206被成功地暫停使用。
            過濾器實例可能與“例行程序處理機”有關,“例行程序處理機”是被用來促進發送、接收和要求數據包的模塊。在一個實施例中,暫停使用過濾器也可以包括與虛擬例行程序交換例行程序處理機。這樣,數據包可以通過虛擬例行程序(而不是實際的例行程序處理機)被轉移。例如,數據包可以被發送到虛擬例行程序,而不是被發送到用于接收數據包的例行程序處理機。可以由抽象接口來執行交換,以便過濾器實例在處于暫停狀態時不必處理任何新的包。
            當配置過濾器實例的操作時,可能需要暫停使用該過濾器實例。可以通過局部暫停使用過濾器棧來暫停使用特定的過濾器實例。也就是說,過濾器棧中的一些過濾器實例被暫停使用,而其他過濾器實例繼續進行操作。在這些情況中,可能暫停使用離傳輸層較近的過濾器實例,而不暫停使用離數據鏈路層較近的過濾器實例。可以采用連續的方式來加以執行,離傳輸層較近的過濾器實例在離數據鏈路層較近的過濾器實例之前被暫停使用。
            例如,在圖2A中,假設過濾器棧206中的所有過濾器實例當前都正在運作。如果過濾器實例208b將要接收配置參數,則可以暫停使用過濾器實例207a,再暫停使用過濾器208a,然后暫停使用過濾器實例208b。但是,在配置過濾器實例208b的期間,離數據鏈路層較近的其他過濾器實例(包括過濾器實例209a、過濾器實例210a和過濾器實例211a)可以繼續進行操作。
            要重新啟動被局部暫停使用的過濾器棧,可以首先重新啟動離數據鏈路層最近的、被暫停使用的過濾器實例,然后連續重新啟動離傳輸層較近的每個被暫停使用的過濾器實例。在以上段落的例子中,將重新啟動過濾器實例208b,再重新啟動過濾器實例208a,然后重新啟動過濾器實例207a。
            圖3中的方法可以包括用于重新配置過濾器棧中所包括的操作的一個步驟(步驟304)。這可以包括執行一些動作在將過濾器實例插入過濾器棧的同時,至少一個協議棧繼續能夠轉移數據(動作302)并開始操作過濾器棧(動作303)。在插入過濾器實例的同時,協議棧繼續能夠轉移數據,這有助于沿通信路徑有效地轉移數據。
            將過濾器實例插入過濾器棧可以包括過濾驅動器從抽象接口接收參數。圖2B中的箭頭1展示了抽象接口203將參數發送到過濾驅動器210。被發送到過濾驅動器210的參數可以包括一個過濾器句柄,可以使用該過濾器句柄來指代所創建的過濾器實例。例如,如果箭頭1中所包括的參數曾被用來創建過濾器實例210b,則過濾驅動器210可以使用過濾器句柄,將與過濾器實例210b相對應的數據發送到抽象接口203。參數也可以包括在過濾器棧中應該插入過濾器實例的位置。例如,在圖2B中,過濾驅動器210可能已接收到一個參數,該參數曾指出應該在過濾器實例208b與209a之間插入過濾器實例210b。
            將過濾器實例插入過濾器棧可以包括創建過濾器實例上下文。圖2B中的箭頭2展示了上下文創建模塊230為過濾器實例210b創建過濾器實例上下文。可以將一個過濾器的多個實例插入一個過濾器棧。例如,圖2B中展示了過濾器實例208a和208b。同一個過濾驅動器可能已將過濾器實例208a和208b插入過濾器棧206。但是,過濾器實例208a和208b可能會根據曾被用來創建它們的參數而有所不同。可以使用過濾器實例上下文來區別曾由同一個過濾驅動器創建的過濾器實例(例如,過濾器實例208a和208b)。
            將過濾器實例插入過濾器棧可以包括為過濾器實例分配資源。圖2B中的箭頭3展示了資源分配模塊231為過濾器實例210b分配資源。這可以包括為過濾器實例分配內存,供進行操作;以及為隊列數據包分配內存,供過濾器實例進行處理。這些只是在將過濾器實例插入過濾器棧時可以被分配的資源的一些例子。精通該技術領域的人在閱讀此文之后將顯而易見,可以分配各種類型的資源,供過濾器實例使用。
            將過濾器實例插入過濾器棧可以包括將過濾器實例上下文發送到抽象接口。圖2B中的箭頭4展示了過濾驅動器210將關于過濾器實例210b的過濾器實例上下文發送到抽象接口203。抽象接口203可以將過濾器實例上下文用作對過濾器實例210b的指代。例如,當抽象接口203將與過濾器實例210b有關的數據發送到過濾驅動器210時,抽象接口203可以將過濾器實例上下文包括在內。抽象接口203可以使用過濾器實例上下文來讓過濾驅動器210認識到所接收的數據與過濾器實例210b有關。
            將過濾器實例插入過濾器棧可以包括從系統注冊表讀取可配置的參數。圖2B中的箭頭5展示了可配置參數存取模塊233從系統注冊表223讀取可配置的參數。可配置參數存取模塊233可以使用以前所接收的配置句柄來對系統注冊表進行存取。配置句柄可以是指針或其他尋址機制,它將可配置參數存取模塊233指引到系統注冊表的一個部分,與過濾器實例210b有關的參數可能位于那里。讀取系統注冊表可以包括讀取代表過濾器實例的識別號碼。
            在一個實施例中,過濾驅動器登記到抽象接口,當該抽象接口發送參數(例如,由圖2B中的箭頭1代表的參數)時,它可以將配置句柄發送到過濾驅動器。抽象接口可以管理登記或將登記傳送到系統注冊表。或者,過濾驅動器可以將數據直接登記在系統注冊表。
            將過濾器實例插入過濾器棧可以包括根據所接收的參數來配置過濾器實例。所接收的參數可能已從抽象接口被發送或已從系統注冊表被讀取。圖2B中的箭頭6展示了過濾器插入模塊220發送參數來配置過濾器實例210b。過濾器實例可以被配置成執行各種過濾操作例如,監控數據包,除去、插入和/或修改數據包中的數據,檢查與數據包有關的地址,壓縮數據包,為數據包加密,或其任何組合。
            過濾器實例可以被配置成過濾通過“虛擬個人網絡”(“VPN”)而被轉移的數據包。例如,可以通過使用沒有真實的物質實體的虛擬連接來轉移在網絡205上被轉移的數據包。盡管依次將數據包傳遞到正確的目的地,但是,可以用臨時的方式經由各種機器來發送這些數據包。也就是說,連接不采用專門的物理線路。
            過濾器實例也可以配置有一個入口點,以便接收電源管理(“PM”)和/或即插即用(“PnP”)數據。當計算機設備由于處于不活動狀態而進入待命模式時,可以將有關的電源管理數據發送到過濾器實例。同樣,如果可能影響數據包流動的外圍設備(例如,網卡)被插入計算機設備,則可以將有關的數據發送到過濾器實例。
            在一個實施例中,可以使用管理接口來配置過濾器實例。管理接口可以包括一個用戶接口,其中,用戶經由輸入設備來輸入與過濾器實例有關的參數。這些參數由過濾驅動器接收,并促進過濾器實例的配置。這樣的一個例子是用戶可配置的防火墻。
            配置過濾器實例也可以包括將過濾器實例與多個傳輸層協議“綁定”。當過濾器實例與傳輸層協議綁定時,它可以過濾與傳輸層協議有關的數據包。例如,如圖2A所示,過濾器實例210b可以被配置成既過濾數據包傳輸A又過濾數據包傳輸B。
            不言而喻,以前所描述的過濾器實例配置只是一些例子。精通該技術領域的人在閱讀此文之后將顯而易見,可以用許多不同的方式來配置過濾器實例。
            將過濾器實例插入過濾器棧可以包括證實過濾器實例被適當地插入過濾器棧。這可以包括將插入狀況發送到抽象接口。圖2B中的箭頭7和8展示了插入狀況模塊232接收對過濾器實例210b的插入狀況的證實并將插入狀況發送到抽象接口203。
            返回圖3,將過濾器實例插入過濾器棧可以包括開始過濾器棧的操作(動作303)。這可以包括啟動當前被暫停使用的各個單獨的過濾器實例。可以通過調用有關的啟動模塊來啟動過濾器實例。例如,過濾器啟動模塊221可以促進啟動曾由過濾驅動器210插入過濾器棧的過濾器實例(例如,過濾器實例210a和210b)。可以通知協議棧將要啟動過濾器棧。
            抽象接口203可以將數據傳送到過濾器啟動模塊221,以便使過濾器實例210a、210b或由過濾驅動器210插入過濾器棧206的其他過濾器實例進入操作狀態。可以連續啟動過濾器實例。例如,可以首先啟動離數據鏈路驅動器204最近的過濾器實例(即過濾器實例211a)。在成功地啟動離數據鏈路驅動器204最近的過濾器實例之后,可以啟動下一個最近的過濾器實例。如圖2B所示,將會是過濾器實例210a。在這個例子中,將按以下的順序來啟動其余的過濾器實例209a、210b、208b、208a和207a。一旦過濾器實例207a成功地到達操作狀態,也就可以認為過濾器棧206處于操作狀態。啟動過濾器棧也可以包括與例行程序處理機交換虛擬例行程序,以便過濾器棧206可以適當地處理數據包。然后,可以通知協議棧過濾器棧206處于操作狀態。
            可能會局部重新啟動完全被暫停使用的過濾器棧。也就是說,過濾器棧中的一些過濾器實例被重新啟動,而其他的過濾器實例仍然被暫停使用。當過濾器棧中的一個特定的過濾器實例將要被重新啟動時,可能會發生這種情況。在這些情況中,可能會重新啟動離數據鏈路層較近的過濾器實例,而離傳輸層較近的過濾器實例仍然被暫停使用。可以用連續的方式來加以執行,其中,離數據鏈路層較近的過濾器實例在離傳輸層較近的過濾器實例之前被重新啟動。
            例如,在圖2A中,假設過濾器棧206中的所有過濾器實例當前被暫停使用。如果將要重新啟動過濾器實例209a,則可以首先重新啟動過濾器實例211a,再重新啟動過濾器實例210a,然后重新啟動過濾器實例209b。離傳輸層較近的其他過濾器實例(包括過濾器實例208b、過濾器實例208a和過濾器實例207a)仍然可以被暫停使用。
            不言而喻,圖2A和2B中所展示的模塊和箭頭只是一些例子。在不脫離本發明的精神和范圍的前提下,可以組合不同的模塊和有關的功能性。例如,過濾驅動器210可以包括一個單個的模塊,該模塊執行與將過濾器實例添加到過濾器棧有關的操作。也可能將過濾驅動器210包括為抽象接口203的一部分。同樣,與圖2B中所包括的箭頭有關的功能性的執行順序也只是起示范的作用。在不脫離本發明的精神和范圍的前提下,可以按各種順序來執行與圖2B中所包括的箭頭有關的功能性。精通該技術領域的人在閱讀此文之后將顯而易見,可以用許多不同的方式來組合模塊及其有關的功能。
            除了將過濾器實例插入過濾器棧以外,本發明的實施例可以從過濾器棧中除去過濾器實例。當從過濾器棧中除去過濾器實例時,可能會使用以前所描述的各種方法來暫停使用和啟動過濾器棧。
            當從過濾器棧中除去過濾器實例時,過濾驅動器可以釋放以前被分配給過濾器實例使用的資源。例如,抽象接口203可以將數據發送到過濾驅動器210,指出應該從過濾器棧206中除去過濾器實例210b。過濾器棧206可以被暫停使用,過濾驅動器210可以從過濾器棧206中除去過濾器實例210b。然后,過濾驅動器210可以釋放曾被分配給過濾器實例210b使用的資源。隨后,可以啟動過濾器棧206。可以通知有關的協議棧該過濾器棧不再包括過濾器實例210b的功能性。
            圖2C表現了一些功能性部件的一個例子,這些功能性部件可以促進回避與過濾器實例有關的過濾操作。可以根據與包和/或配置信息有關的特征來回避過濾操作。回避過濾操作可以包括一個包完全回避過濾器實例和一個所接收的包回避過濾器實例的一項或多項內部過濾操作。圖4是流程圖,展示了一種用于至少回避與過濾器實例有關的過濾操作的方法的一個例子。將參考圖2C中所包括的功能性部件來討論圖4中的方法。
            圖2C中展示了過濾器實例210b,過濾器實例210b被包括在過濾器棧206中。過濾器實例210b包括控制模塊215,以及過濾器操作216a、216b和216c。圖2C中展示了一個通信路徑,包通過該通信路徑從傳輸層被轉移到數據鏈路層。但是,也可以利用通信路徑來實踐本發明,包通過通信路徑從數據鏈路層被轉移到傳輸層。通信路徑可以包括一個數據路徑,數據包藉此數據路徑通過協議棧被轉移;也可以包括一個控制路徑,控制包藉此控制路徑通過協議棧被轉移。
            這類控制路徑可以包括請求和狀況指示。可以將請求從傳輸層向下轉移到數據鏈路層。請求可以包括一個指示網絡接口適配器(例如,網絡接口適配器153)將接受多點傳送包或將被置于混雜模式。請求也可以包括一個詢問。例如,請求可以詢問網絡接口適配器的媒介訪問控制地址,也可以詢問網絡接口適配器當前是否正在接收多點傳送包。
            可以將狀況指示從數據鏈路層轉移到傳輸層。狀況指示可以包括來自數據鏈路層的一個指示介質當前被連接或被斷開。
            圖4中的方法可以包括處理輸入包的動作(動作401)。這可以包括過濾器實例210b接收包240a。在圖2C中,曾從過濾器實例208b發送包240a。在這個所展示的實施例中,包240a將會沿從傳輸層協議202到數據鏈路驅動器204的數據路徑被轉移。但是,這只是起說明性的作用,因為當數據包沿從數據鏈路驅動器204到傳輸層協議202的數據路徑被轉移時,也可以對其進行過濾。也可能對正沿控制路徑被轉移的包進行過濾。過濾器實例也可能無法按任何特定的順序對包進行過濾。例如,可以將包從過濾器實例208a傳送到過濾器實例210a。輸入包也可能是曾由過濾器實例創建的包。
            在一個替換的實施例中,可以處理由包240c代表的包。包240c的處理可以確定,包240c正通過數據路徑或控制路徑被轉移,該數據路徑或控制路徑完全回避過濾器實例210b的過濾操作。如圖2C所示,虛線箭頭將包240c從過濾器208b直接轉移到過濾器實例209a。包240c可以回避過濾器實例210b,因為過濾器實例210b已被配置成按數據路徑或控制路徑的“回避”模式進行操作。
            過濾器實例可以由抽象接口203配置成按回避模式進行操作。當過濾器實例最初被啟動或在運行時,可以將其配置為回避模式。也就是說,曾經沒有被初始化進入回避模式的過濾器實例以后可以被設置成按回避模式進行操作。在初始化期間,通過指明啟動過程中那個數據路徑的NULL處理機,過濾驅動器指出它希望過濾器實例按對一個或多個數據路徑或控制路徑的回避模式來啟動。
            在初始化之后和在運行時,過濾驅動器可能希望將過濾器實例設置為對一些數據路徑或一些控制路徑的回避模式。在那種情況下,過濾驅動器將要求抽象接口重新啟動過濾器實例。然后,抽象接口將暫停使用過濾器實例,并按照此文前面所展示的各種方法來重新啟動它。當過濾器實例被重新啟動時,通過為被回避的路徑提供NULL處理機,過濾驅動器可以指出過濾器實例將按對一些數據路徑或控制路徑的回避模式進行操作。
            過濾器實例可以被配置成使與一些數據路徑或控制路徑有關的包回避過濾器實例,使與其他數據路徑或控制路徑有關的包由過濾器實例來接收。例如,過濾器實例可以被配置成回避狀況指示,但接收所有其他類型的包。可以執行這一點,以抑制介質斷開消息,應用程序對這些消息不感興趣。在另一個例子中,沿從數據鏈路層到傳輸層的數據路徑被轉移的數據包可以由過濾器實例來接收,而沿從傳輸層到數據鏈路層的數據路徑被轉移的數據包回避過濾器實例。
            同樣,當前處于數據路徑或控制路徑的回避模式的過濾器實例可以在運行時被配置成接收該數據路徑或控制路徑的包。在這些情況下,過濾驅動器可以要求抽象接口203重新啟動過濾器實例。然后,抽象接口203將按照此文前面所展示的各種方法來暫停使用和重新啟動過濾器實例。當過濾器實例被重新啟動時,通過為被激活的數據路徑提供非NULL處理機,過濾驅動器可以指出過濾器實例將從數據路徑或控制路徑接收包。
            外部事件可能會引起對過濾器實例進行配置,使過濾器實例按回避模式進行操作或接收包。例如,通過與防火墻有關的管理接口,用戶可以將過濾器實例配置成按一些數據路徑的回避模式進行操作。在過濾器實例過濾操作導致當前正在使用的應用程序中斷的情況下,可以如此執行。
            圖4中的方法可以包括一個步驟轉移一個輸出包,該輸出包可能已由過濾器棧中所包括的一些(而不是所有)操作進行過濾(步驟404)。這可以包括執行兩個動作回避與過濾器實例有關的一項或多項過濾操作(動作402);以及,如果曾執行過濾操作,則發送一個可能不同于輸入包的輸出包(動作403)。通過轉移回避過濾操作的包,可以提高過濾過程的效率。
            回避與過濾器實例有關的一項或多項過濾操作(動作402)可以包括回避過濾器實例210b中所包括的一項或多項過濾操作。當過濾器實例210b接收數據包240a時,控制模塊215可以分析數據包240a的特征。分析可以包括確定輸入包的數據流的方向。數據流的方向可以從數據鏈路驅動器到傳輸層協議,也可以從傳輸層協議到數據鏈路驅動器。分析也可以包括確定與輸入數據包有關的一個協議,例如,IP、TCP、“網絡分組交換”(“IPX”)、其他傳輸層協議或與“開放式系統互聯”(“OSI”)模型的各個層有關的其他協議。如果控制模塊215確定數據包240a與IPX有關,則可以回避過濾器操作216a和216c。但是,如果控制模塊215確定數據包240a與IP有關,則可以回避過濾器操作216b。
            或者,過濾器實例210b可能被配置成使沿數據路徑或控制路徑的包完全回避過濾器實例210b。如圖2C所示,可以對過濾器實例210b進行配置,以便沿從傳輸層到數據鏈路層的數據路徑被轉移的包可以回避過濾器實例210b。如果包240c是數據包,它將會如從過濾器實例208b到過濾器實例209a的虛線箭頭所示的那樣回避過濾器實例210b。
            也可能是這種情況雖然過濾器實例210b接收到一個包,但是,控制模塊215直接通過過濾器實例210b來傳送包,而不執行任何過濾操作。如果用這種方式來回避所有的過濾操作,則數據包240a和數據包240b可能實質上相類似。
            如果曾執行過濾操作,則發送一個可能不同于輸入數據包的輸出數據包(動作403),這可以包括發送包括被修改過的數據的一個數據包。如果執行過濾器實例210b中所包括的任何過濾操作,則數據包240b可能不同于數據包240a。如果任何過濾操作曾將數據添加到數據包240a、從數據包240a中除去數據或修改數據包240a中所包括的數據,則可能會發生這種情況。但是,如果沒有執行過過濾操作,則數據包240a和數據包240b可能實質上相類似。
            可以使用本發明的各種方法來過濾數據包,所采用的方式促進數據包有效地流過通信路徑。過濾器實例可以被插入過濾器棧或從過濾器棧中被除去,同時,有關的協議棧仍然能夠轉移數據。這節約了處理器和網絡資源,因為當過濾器棧的功能性變化時,協議棧不被重建。由于過濾器實例可以被多個協議使用,因此,減少了將在計算機設備中執行多余邏輯的可能性。此外,根據數據包和/或配置信息的特征來回避過濾操作,這減少了將執行無關的處理器操作的可能性。
            在不脫離本發明的精神或必要特征的前提下,可以用其他特殊的形式來具體表現本發明。所描述的實施例在所有方面都將被認為只起說明性的作用,而不作限制。所以,本發明的范圍由所附的權利要求(而不是前述內容)指出。不脫離權利要求的等效物的含義和范圍的所有變化都將被包含在其范圍之內。
            權利要求書受到美國專利特許證的保護,內容如下所述
            權利要求
            1.一種在計算機設備中將過濾器實例插入過濾器棧的方法,該方法不會中斷有關的協議棧的操作,以節約處理器和網絡資源,該計算機設備能通過通信路徑以通訊聯絡的方式被耦合到網絡,它包括與用于管理過濾器棧的抽象接口有關的一個或多個協議棧,過濾器棧包括一個或多個過濾器實例,可對正在經由通信路徑被轉移的數據包執行過濾操作,該方法的包括暫停過濾器棧操作的動作;在將過濾器實例插入過濾器棧的同時,至少一個有關的協議棧能夠繼續轉移數據的動作;以及,開始過濾器棧操作的動作。
            2.如權利要求1中所述的方法,其特征在于其中,暫停過濾器棧操作包括以下內容暫停使用過濾器棧中所包括的一個或多個過濾器實例的動作。
            3.如權利要求2中所述的方法,其特征在于其中,暫停使用過濾器棧中所包括的一個或多個過濾器實例包括以下內容一個或多個暫停例行程序接收指出應該暫停使用一個或多個過濾器實例的數據。
            4.如權利要求1中所述的方法,其特征在于其中,暫停過濾器棧操作包括以下內容使被轉移的數據包重定向到虛擬例行程序,該虛擬例行程序將數據包返回到通信路徑,而不修改數據包中所包括的數據。
            5.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容插入一個過濾器實例,該過濾器實例曾通過使用從抽象接口被接收的參數來加以配置。
            6.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容過濾驅動器接收一個過濾器句柄,該過濾器句柄可以被用來促進將數據轉移到抽象接口。
            7.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容過濾驅動器為過濾器實例分配資源的動作。
            8.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容過濾驅動器為過濾器實例創建過濾器實例上下文的動作。
            9.如權利要求8中所述的方法,其特征在于其中,過濾驅動器為過濾器實例創建過濾器實例上下文包括以下內容過濾驅動器將過濾器實例上下文發送到抽象接口的動作。
            10.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容過濾驅動器在抽象接口登記數據的動作。
            11.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容過濾驅動器將數據登記在系統注冊表中的動作。
            12.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容插入過濾器實例,該過濾器實例曾通過使用從系統注冊表被接收的參數來加以配置。
            13.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容將過濾器實例插在過濾器棧中的預定位置的動作。
            14.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容插入一個過濾器實例,該過濾器實例能夠過濾在虛擬連接上被轉移的數據包。
            15.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容插入一個過濾器實例,該過濾器實例包括一個入口點,以接收與計算機設備的能源管理有關的數據。
            16.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容插入一個過濾器實例,該過濾器實例包括一個入口點,以接收與即插即用設備有關的數據。
            17.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容插入一個過濾器實例,該過濾器實例包括可以通過管理接口來加以修改的屬性。
            18.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容在過濾器棧上插入一個過濾器實例,該過濾器棧與多個傳輸層協議綁字。
            19.如權利要求1中所述的方法,其特征在于其中,將過濾器實例插入過濾器棧包括以下內容過濾驅動器證實過濾器實例曾被插入過濾器棧的動作。
            20.如權利要求19中所述的方法,其特征在于其中,過濾驅動器證實過濾器實例曾被插入過濾器棧包括以下內容過濾驅動器將插入狀況發送到抽象接口的動作。
            21.如權利要求1中所述的方法,其特征在于其中,開始過濾器棧操作包括以下內容啟動過濾器棧中所包括的一個或多個過濾器實例的動作。
            22.如權利要求21中所述的方法,其特征在于其中,啟動過濾器棧中所包括的一個或多個過濾器實例包括以下內容一個或多個啟動例行程序接收指出應該啟動一個或多個過濾器實例的數據。
            23.如權利要求1中所述的方法,其特征在于還包括通知有關的協議棧將要暫停過濾器棧的操作。
            24.如權利要求1中所述的方法,其特征在于還包括通知有關的協議棧過濾器棧現在包括被插入的過濾器實例。
            25.如權利要求1中所述的方法,其特征在于還包括通知有關的協議棧將要開始操作過濾器棧。
            26.一種在計算機設備中從過濾器棧中除去過濾器實例的方法,該方法不會中斷有關的協議棧的操作,以節約處理器和網絡資源,該計算機設備能通過通信路徑以通訊聯絡的方式被耦合到網絡,它包括與用于管理過濾器棧的抽象接口有關的一個或多個協議棧,過濾器棧包括一個或多個過濾器實例,該方法包括暫停過濾器棧操作的動作;在從過濾器棧中除去過濾器實例的同時,至少一個有關的協議棧能夠繼續轉移數據的動作;以及,開始操作過濾器棧的動作。
            27.如權利要求26中所述的方法,其特征在于其中,暫停過濾器棧操作包括以下內容暫停使用過濾器棧中所包括的一個或多個過濾器實例的動作。
            28.如權利要求27中所述的方法,其特征在于其中,暫停使用過濾器棧中所包括的一個或多個過濾器實例包括以下內容一個或多個暫停例行程序接收指出應該暫停使用一個或多個過濾器實例的數據。
            29.如權利要求26中所述的方法,其特征在于其中,暫停過濾器棧操作包括以下內容使被轉移的數據包重定向到各個虛擬例行程序,這些虛擬例行程序將數據包返回到通信路徑。
            30.如權利要求26中所述的方法,其特征在于其中,從過濾器棧中除去過濾器實例包括以下內容暫停使用過濾器實例的動作。
            31.如權利要求26中所述的方法,其特征在于其中,從過濾器棧中除去過濾器實例包括以下內容過濾驅動器釋放與過濾器實例有關的資源的動作。
            32.如權利要求26中所述的方法,其特征在于其中,開始過濾器棧操作包括以下內容啟動過濾器棧中所包括的一個或多個過濾器實例的動作。
            33.權利要求32中所述的方法,其特征在于其中,啟動過濾器棧中所包括的一個或多個過濾器實例包括以下內容一個或多個啟動例行程序接收指出應該啟動一個或多個過濾器實例的數據。
            34.如權利要求26中所述的方法,其特征在于還包括通知有關的協議棧將要暫停過濾器棧的操作。
            35.如權利要求26中所述的方法,其特征在于還包括通知有關的協議棧過濾器實例已從過濾器棧中被除去。
            36.如權利要求26中所述的方法,其特征在于還包括通知有關的協議棧將要開始過濾器棧操作。
            37.一種在計算機設備中將過濾器實例插入過濾器棧的方法,該方法不會中斷有關的協議棧的操作,以節約處理器和網絡資源,該計算機設備可能通過通信路徑以通訊聯絡的方式被耦合到網絡,它包括與用于管理過濾器棧的抽象接口有關的一個或多個協議棧,可對正在經由通信路徑被轉移的數據包的各個部分執行過濾操作,該方法包括暫停過濾器棧操作的動作;一個步驟重新配置過濾器棧中所包括的過濾操作,所采用的方式促進在重新配置期間有效地沿通信路徑轉移數據。
            38.一種在計算機設備中用于過濾與一個或多個協議有關的包的方法,以節約處理器和網絡資源,該計算機設備能通過一個或多個通信路徑以通訊聯絡的方式被耦合到網絡,它包括與抽象接口有關的一個或多個協議棧,該抽象接口管理可以對包執行過濾操作的一個或多個過濾器實例,該方法包括處理輸入包的動作;輸入包回避與過濾器實例有關的一項或多項過濾操作的動作;以及如果曾執行過過濾操作,則發送一個可能不同于輸入包的輸出包的動作。
            39.如權利要求38中所述的方法,其特征在于其中,處理輸入包包括以下內容處理與數據鏈路層有關的輸入包的動作。
            40.如權利要求38中所述的方法,其特征在于其中,處理有關的輸入包包括以下內容處理與數據鏈路層驅動器有關的輸入包的動作。
            41.如權利要求38中所述的方法,其特征在于其中,處理輸入包包括以下內容處理與傳輸層協議有關的輸入包的動作。
            42.如權利要求41中所述的方法,其特征在于其中,處理與傳輸層協議有關的輸入包包括以下內容處理與“傳輸控制協議”有關的輸入數據包的動作。
            43.如權利要求41中所述的方法,其特征在于其中,處理與傳輸層協議有關的輸入包包括以下內容處理與“互聯網協議”有關的輸入數據包的動作。
            44.如權利要求41中所述的方法,其特征在于其中,處理與傳輸層協議有關的輸入包包括以下內容處理來自傳輸層驅動器的輸入包的動作。
            45.如權利要求38中所述的方法,其特征在于其中,處理輸入包包括以下內容處理沿從傳輸層到數據鏈路層的數據路徑被轉移的數據包的動作。
            46.如權利要求38中所述的方法,其特征在于其中,處理輸入包包括以下內容處理沿從數據鏈路層到傳輸層的數據路徑被轉移的數據包的動作。
            47.如權利要求38中所述的方法,其特征在于其中,處理輸入包包括以下內容處理控制包,該控制包包括請求信息并正在沿控制路徑被轉移。
            48.如權利要求38中所述的方法,其特征在于其中,處理輸入包包括以下內容處理控制包,該控制包包括系統指示信息并正在沿控制路徑被轉移。
            49.如權利要求38中所述的方法,其特征在于其中,輸入包回避與過濾器實例有關的一項或多項過濾操作包括以下內容所接收的輸入包回避與過濾器棧中所包括的過濾器實例有關的一項或多項內部過濾操作。
            50.如權利要求38中所述的方法,其特征在于其中,輸入包回避與過濾器實例有關的一項或多項過濾操作包括以下內容所接收的輸入包根據與該輸入包有關的特征來回避與過濾器實例有關的一項或多項內部過濾操作。
            51.如權利要求38中所述的方法,其特征在于其中,輸入包回避與過濾器實例有關的一項或多項過濾操作包括以下內容輸入包完全回避過濾器實例的動作。
            52.如權利要求51中所述的方法,其特征在于其中,輸入包完全回避過濾器實例包括以下內容輸入包完全回避過濾器實例,因為曾將過濾器實例配置成按通信路徑的回避模式進行操作,輸入包正在沿該通信路徑被轉移。
            53.如權利要求50中所述的方法,其特征在于其中,輸入包根據關于輸入包的特征來回避與過濾器實例有關的一項或多項過濾操作包括以下內容當輸入包與第一個協議有關時,回避第一套過濾操作;當輸入包與第二個協議有關時,回避第二套過濾操作。
            54.如權利要求53中所述的方法,其特征在于其中,第一套過濾操作和第二套過濾操作不同。
            55.如權利要求38中所述的方法,其特征在于其中,如果曾對輸入包執行過濾操作,則發送一個可能不同于輸入包的輸出包,這包括以下內容如果過濾操作修改過輸入包,則發送一個可能不同于輸入包的輸出包。
            56.一種在計算機設備中用于過濾與一個或多個協議有關的包的方法,以節約處理器和網絡資源,該計算機設備能通過一個或多個通信路徑以通訊聯絡的方式被耦合到網絡,它包括與用于管理過濾器棧的抽象接口有關的一個或多個協議棧,該方法包括接收與協議有關的一個輸入包的動作;一個步驟轉移一個輸出包,該輸出包已由過濾器棧中所包括的一些而不是所有過濾操作進行過濾,以便提高過濾過程的效率。
            57.一種在計算機設備中用于過濾與一個或多個協議有關的包的方法,以節約處理器和網絡資源,該計算機設備能通過一個或多個通信路徑以通訊聯絡的方式被耦合到網絡,該計算機設備包括與一個或多個過濾器實例有關的一個或多個協議棧,這些過濾器實例可以對包執行過濾操作,該方法包括過濾器實例接收一個輸入包的動作;當通過從數據鏈路層到傳輸層的通信路徑來轉移輸入包時,回避第一套過濾操作;當通過從傳輸層到數據鏈路層的通信路徑來轉移輸入包時,回避第二套過濾操作的動作;以及如果曾執行過過濾操作,則發送一個可能不同于輸入包的輸出包的動作。
            58.如權利要求57中所述的方法,其特征在于其中,第一套過濾操作和第二套過濾操作不同。
            59.如權利要求57中所述的方法,其特征在于其中,通信路徑是數據路徑。
            60.如權利要求57中所述的方法,其特征在于其中,通信路徑是控制路徑。
            61.一種在計算機設備中用于過濾與一個或多個協議有關的包的方法,以節約處理器和網絡資源,該計算機設備能通過一個或多個通信路徑以通訊聯絡的方式被耦合到網絡,該計算機設備包括與一個或多個過濾器實例有關的一個或多個協議棧,這些過濾器實例可以對包執行過濾操作,該方法包括處理當前正通過通信路徑被轉移的一個包的動作;包完全回避通信路徑中的第一個過濾器實例的動作,因為曾將第一個過濾器實例配置成按通信路徑的回避模式進行操作;以及包正由通信路徑中的第二個過濾器實例接收的動作,曾將該通信路徑配置成接收正通過通信路徑被轉移的包。
            62.如權利要求61中所述的方法,其特征在于其中,包完全回避通信路徑中的第一個過濾器實例,因為曾將第一個過濾器實例配置成按通信路徑的回避模式進行操作,這包括以下內容包完全回避通信路徑中的第一個過濾器實例,因為抽象接口曾將第一個過濾器實例配置成按通信路徑的回避模式進行操作。
            63.如權利要求62中所述的方法,其特征在于還包括抽象接口對過濾器實例進行配置,以恢復接收包。
            64.如權利要求61中所述的方法,其特征在于,包完全回避通信路徑中的第一個過濾器實例,因為曾將第一個過濾器實例配置成按通信路徑的回避模式進行操作,這包括以下內容輸入數據包完全回避數據路徑中的第一個過濾器實例,因為曾將第一個過濾器實例配置成按數據路徑的回避模式進行操作。
            65.如權利要求61中所述的方法,其特征在于,包完全回避通信路徑中的第一個過濾器實例,因為曾將第一個過濾器實例配置成按通信路徑的回避模式進行操作,這包括以下內容輸入控制包完全回避控制路徑中的第一個過濾器實例,因為曾將第一個過濾器示例配置成按控制路徑的回避模式進行操作。
            66.一種計算機程序產品,用于在計算機設備中執行將過濾器實例插入過濾器棧的一種方法,該方法不會中斷有關的協議棧的操作,以節約處理器和網絡資源,該計算機設備能通過通信路徑以通訊聯絡的方式被耦合到網絡,它包括與用于管理過濾器棧的抽象接口有關的一個或多個協議棧,可對正在經由通信路徑被轉移的數據包的各個部分執行過濾操作,該計算機程序產品包括攜帶計算機可執行指令的一個計算機可讀介質,當這些計算機可執行指令在計算機設備處被執行時,它們使計算機設備執行該方法,包括暫停過濾器棧操作的動作;在將過濾器實例插入過濾器棧的同時,至少一個有關的協議棧能夠繼續轉移數據的動作;以及開始過濾器棧操作的動作。
            67.一種計算機程序產品,用于在計算機設備中執行將過濾器實例插入過濾器棧的一種方法,該方法不會中斷有關的協議棧的操作,以節約處理器和網絡資源,該計算機設備能通過通信路徑以通訊聯絡的方式被耦合到網絡,它包括與用于管理過濾器棧的抽象接口有關的一個或多個協議棧,該過濾器棧包括一個或多個過濾器實例,可對正在經由通信路徑被轉移的數據包的各個部分執行過濾操作,該計算機程序產品包括攜帶計算機可執行指令的一個計算機可讀介質,當這些計算機可執行指令在計算機設備處被執行時,它們使計算機設備執行該方法,包括暫停過濾器棧操作的動作;在從過濾器棧中除去過濾器實例的同時,至少一個有關的協議棧能夠繼續轉移數據的動作;以及開始過濾器棧操作的動作。
            68.一種計算機程序產品,用于在計算機設備中執行一種用于過濾與一個或多個協議有關的包的方法,以節約處理器和網絡資源,該計算機設備能通過一個或多個通信路徑以通訊聯絡的方式被耦合到網絡,它包括與管理過濾器棧的抽象接口有關的一個或多個協議棧,該過濾器棧包括可以對包的各個部分執行過濾操作的一個或多個過濾器實例,該計算機程序產品的特征在于包括攜帶計算機可執行指令的一個計算機可讀介質,當這些計算機可執行指令在計算機設備處被執行時,它們使計算機設備執行該方法,包括處理一個輸入包的動作;輸入包回避與一個過濾器實例有關的一項或多項過濾操作的動作;以及如果曾對輸入包執行過濾操作,則發送一個可能不同于輸入包的輸出包的動作。
            全文摘要
            本發明提出了一種網絡過濾驅動器的構造和運行環境。其中過濾數據包所采用的方式促進數據有效地流過通信路徑。過濾器棧包括一個或多個過濾器實例,這些過濾器實例可以過濾通過過濾器棧的數據包。該過濾器棧與一個或多個協議棧有關,這些協議棧在計算機設備與網絡之間的通信路徑中發揮作用。當過濾實例被插入過濾器棧或從過濾器棧中被除去時,有關的協議棧仍然能夠轉移數據。抽象接口通過將數據傳送到創建過濾器實例的過濾驅動器,來促進插入和除去過濾器實例。過濾驅動器可以創建多個過濾器實例。可以根據數據流、控制流的方向和包的特征來回避與過濾器實例有關的過濾操作。
            文檔編號H04L29/08GK1424663SQ0215616
            公開日2003年6月18日 申請日期2002年12月11日 優先權日2001年12月11日
            發明者A·默奇, A·達巴格, A·迪布, F·F·劉 申請人:微軟公司
            網友詢問留言 已有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久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品