ALE 具狀態篩選

安裝在應用層強制執行 (ALE) 層的篩選Windows篩選平臺 () 執行具狀態網路篩選。 ALE 流程是作為 ALE 具狀態篩選的基礎。

ALE 流程是依據來源 IP 位址、目的地 IP 位址、來源埠、目的地埠和通訊協定來分組網路流量的方式。 ALE 流程可以是泛型的,也就是一或多個描述元可能比對所有專案 (或萬用字元 *) 。 例如,一般 UDP ALE 流程會描述為來源 IP 位址 = *、目的地 IP 位址 = *、來源埠 = *、目的地埠 = *,以及通訊協定 = UDP。

一旦授權連線 (輸入連線在 FWPM_LAYER_ALE_AUTH_RECV_ACCEPT_V{4|6} 層獲得授權,並在 FWPM_LAYER_ALE_AUTH_CONNECT_V{4|6} 層) 進行輸出連線之後,就會建立 ALE 流程,讓原則變更、所有封包、輸入和輸出都自動允許屬於相同 ALE 流程。 因為原則變更可能需要封鎖先前允許的連線,所以發生原則變更時,必須 重新授權 ALE 流程。

ALE 具狀態篩選藉由只分類屬於 ALE 流程的第一個封包,大幅減少必要的分類數目。 相較之下,非具狀態篩選需要周遊網路的每個封包分類。

ALE 流程具有相關聯的方向,這是流程第一個封包的方向。 這允許更有彈性的原則,方法是允許輸入起始的連線具有與輸出起始連線不同的原則。

TCP ALE Flow

TCP 流量的 ALE 流程是由 TCP/IP (來源 IP 位址、目的地 IP 位址、來源埠、目的地埠和通訊協定) 的五個 Tuple 所識別。

TCP ALE 流程的存留期與連接的 TCP 通訊端相同。 連線的 TCP 通訊端可能是使用 connect () 建立的通訊端,或是 因為 accept () 呼叫而建立的通訊端。

ALE 會維護 TCP ALE 流程與 TCP 控制區塊 (TCB) 之間的一對一關聯性。

UDP ALE Flow

注意

不是 TCP 或 ICMP 的通訊協定會被視為 UDP。

 

UDP 流量的 ALE 流程是由 TCP/IP (來源 IP 位址、目的地 IP 位址、來源埠、目的地埠和通訊協定) 的五個 Tuple 所識別。

UDP ALE 流程是以 UDP 通訊端為基礎建立,它代表應用程式所通訊的遠端對等。 遠端對等是由 (目的地 IP 位址和目的地埠) 元組所識別。

UDP 通訊端與其交談的遠端對等之間有一對多關聯性。

關閉本機 UDP 通訊端時,將會刪除與其相關聯的所有 ALE 流程。

若沒有通訊端關閉,UDP 單播 ALE 流程會有預設為 60 秒的 設定閒置逾時。 如果未在此視窗中傳送或接收封包,將會刪除 ALE 流程。 當 ALE 流程系統範圍的數目達到特定臨界值時,就會逐漸縮短此預設逾時。

ICMP ALE Flow

ICMP 流量的 ALE 流程是由 (來源 IP 位址、目的地 IP 位址、ICMP 類型、ICMP 程式碼、通訊協定和 ICMP 識別碼) 所識別。 ICMP 識別碼是 ALE 流程的一部分,僅適用于 ICMP 回應/回復流量。

如果沒有通訊端關閉,ICMP 單播 ALE 流程會有可 設定的閑 置逾時,預設為 60 秒。 如果未在此視窗中傳送或接收封包,將會刪除 ALE 流程。 當 ALE 流程系統範圍的數目達到特定臨界值時,就會逐漸縮短此預設逾時。

只有 ICMP 非錯誤訊息會向 ALE 層指出。 ICMP 錯誤訊息可以在ICMP_ERROR層進行檢查。

應用層強制執行 (ALE)

ALE 層

ALE 多播/廣播流量

ALE 重新授權

ALE Flow自訂

TCP 封包流程

UDP 封包流程

Winsock 函式