COPS(Common Open Policy Service,公共開放策略服務)是一種簡單的使用查詢/響應模式的應用層協議,可用於在策略服務器和客戶端之間交互策略信息。例如,該協議可被用於對RSVP(Resource Reservation Protocol,資源預留協議)信令消息進行策略控製,通過這種客戶端查詢策略/服務器響應決策的交互模式,對所有RSVP信令消息進行集中監控和控製,實現全網層麵的端到端網絡資源的協商、調度和實施。
同時,COPS協議又是一種麵向業務的網絡管理協議,可對多種網絡應用業務進行策略控製,常見的應用業務包括QoS(Quality of Service,服務質量)、網絡接入、防火牆等。目前,H3C設備可作為客戶端,通過與遠端的策略服務器端交互實現對802.1X接入業務的策略控製。
COPS協議定義的通信模型中有兩大實體:PDP(Policy Decision Point,策略決策者)和PEP(Policy Enforcement Point,策略執行者)。其中,PDP是策略服務器端,PEP是客戶端,PDP和PEP通過COPS協議進行策略信息交互。
COPS協議中,客戶端與服務器之間進行消息交互的基本方式為:PEP向PDP發送策略請求、策略更新或策略刪除的消息,PDP向PEP回應決策消息。基於該交互方式的COPS協議具有以下特點:
l 使用TCP作為傳輸層協議,可以提供可靠的報文交互。
l 具有可擴展性,不需要修改COPS協議本身就能支持不同類型的客戶端業務。
l 為報文傳輸提供安全保證,可以進行報文的認證、重發保護和完整性檢查。可以利用IPsec(IP Security,IP安全)或者TLS(Transport Layer Security,傳輸層安全)等已有的安全機製來認證和保護PEP和PDP之間交互的報文。
l 客戶端與服務器共享請求與決策。PEP發出的策略請求將被遠端的PDP存儲直到PEP請求將其刪除。而對於已經被PDP存儲的策略請求,PDP可以在接收到請求後立即產生決策(Solicited Decision),或者之後因為狀態變化而異步地產生新的決策(Unsolicited Decision),PEP會根據收到的決策報文修改本地保存的決策,以保持與PDP的決策的一致性。
l PDP可以對PEP進行策略配置,並依據此策略向PEP下發決策,當策略不可用時PDP能通知PEP同步刪除本地保存的決策。
COPS協議報文的基本交互過程如下:
(1) 當COPS係統啟動時,PEP向PDP發起TCP連接請求,該TCP連接建立後,PEP和PDP將基於此TCP連接進行後續的COPS消息交互。
(2) TCP連接建立之後,PEP向PDP發送OPN(Client-Open)消息請求建立COPS連接,該消息用於向PDP告知PEP可支持的客戶類型(Client-type)。若PDP支持該客戶端類型,則向PEP回應CAT(Client-Accept)消息,否則發送CC(Client-Close)消息。COPS連接建立之後,PEP與PDP通過互發KA(Keep-Alive)消息來維持該COPS連接的連通性。
(3) PEP向PDP發送REQ(Request)消息發起針對具體業務的策略請求,並啟動請求超時定時器等待PDP回應。如果PEP在指定的超時時間內未收到PDP響應的決策,則立即刪除該請求,並同時通知PDP刪除保存的該請求。
(4) PDP收到PEP的策略請求後,向PEP發送包含決策內容的DEC(Decision)消息。若PDP的決策未及時發送,則PEP將不會處理請求超時時間之後收到的相關決策。
(5) PEP收到PDP決策之後,依據該決策中的策略進行業務處理,並向PDP發送RPT(Report)消息通知執行結果,PDP可以隨時對決策進行更新和刪除。
(6) 如果PEP和PDP建立COPS連接時,PDP向PEP指定了報告計費信息的時間間隔,則PEP在得到請求策略的決策後需要周期性地向PDP發送RPT消息報告客戶端的業務統計信息。
目前,COPS協議可應用於802.1X接入業務,可實現對802.1X接入用戶的授權策略控製,典型應用組網圖如圖1所示。
圖1 COPS支持802.1X業務的典型應用組網圖
設備啟動後,根據當前的COPS配置與指定的PDP服務器建立COPS連接。當802.1X接入用戶認證成功並上線後,設備與PDP服務器的基本交互過程如下:
l 設備作為PEP端向PDP服務器提交包含上線用戶信息(用戶名、主機IP地址、主機MAC地址、接入端口號等)的策略請求,請求PDP服務器對上線用戶下發授權信息(VLAN、ACL等)。
l PDP服務器根據PEP上傳的用戶信息以及自身的策略配置,向PEP發送包含授權信息的決策。用戶在線期間,PDP服務器可以主動變更用戶的授權屬性信息。
l 如果PDP服務器上指定了計費時間間隔,則PEP會在用戶在線期間定時向PDP發送計費報文。
l 用戶下線時,PEP通知PDP服務器刪除該用戶的策略請求。
若接入設備上配置了除COPS協議之外的其它協議對用戶進行授權,例如RADIUS協議,則僅COPS授權會生效。