CWMP (TR-069)技術介紹
CWMP (TR-069)
CWMP(TR-069)概述
CWMP(CPE WAN Management Protocol,CPE廣域網管理協議)是由DSL(Digital Subscriber's Line,數字用戶線路)論壇發起開發的技術規範之一,編號爲TR-069,所以又被稱爲TR-069協議。它提供了對下一代網絡中家庭網絡設備進行管理配置的通用框架、消息規範、管理方法和數據模型。
CWMP主要應用於DSL接入網絡環境。在DSL接入網絡中,由於用戶設備數量繁多、部署分散,通常位於用戶側,不易進行設備的管理和維護,CWMP提出通過ACS(Auto-Configuration Server,自動配置服務器)對CPE(Customer Premises Equipment,用戶側設備)進行遠程集中管理,解決CPE設備的管理困難,節約維護成本,提高問題解決效率。
CWMP網絡框架
CWMP網絡的基本框架如圖1所示:
圖1 CWMP網絡基本框架示意圖
CWMP網絡元素主要有:
l ACS:自動配置服務器,網絡中的管理設備。
l CPE:用戶端設備,網絡中的被管理設備。
l DNS server:域名服務器。CWMP協議規定ACS和CPE使用URL地址來互相識別和訪問,DNS用於幫助解析URL參數。
l DHCP server:動態主機配置協議服務器。給ACS和CPE分配IP地址,使用DHCP報文中的option字段給CPE配置參數。
H3C設備屬於CPE,使用CWMP協議與ACS進行消息交互。
CWMP基本功能
1. ACS和CPE的自動連接
CPE可以通過發送Inform報文自動連接ACS。觸發連接的方式有以下幾種:
l CPE啓動,根據獲取的URL值找到相應的ACS,並自動發起連接。
l CPE使能了週期性發送Inform報文功能,當週期(比如1小時)到達時,CPE會自動發送Inform報文來建立連接。
l CPE使能了定時發送Inform報文功能,當時間點到達時,CPE會自動發送Inform報文來建立連接。
l 如果當前會話沒有結束,但是連接異常中斷,而且CPE自動重新連接的次數還沒有達到上限,此時,CPE也會自動建立連接。
ACS可以在任何時候自動向CPE發起連接請求(Connect Request),通過CPE的認證(即匹配CPE URL、CPE用戶名、CPE密碼)後,可以與CPE建立連接。
2. 支持ACS對CPE的自動配置
當CPE上線時,ACS可以自動下發一些配置給CPE,完成對CPE的自動配置。設備支持的自動配置項參數主要包括(不僅限於此):
l 配置文件(ConfigFile)
l ACS地址(URL)
l ACS用戶名(Username)
l ACS密碼(Password)
l Inform報文自動發送使能標誌(PeriodicInformEnable)
l Inform報文週期發送時間間隔(PeriodicInformInterval)
l Inform報文定期發送日期(PeriodicInformTime)
l CPE用戶名(ConnectionRequestUsername)
l CPE密碼(ConnectionRequestPassword)
3. 支持對CPE系統啓動文件和配置文件的上傳/下載管理
網絡管理員可以將系統啓動文件、配置文件等重要文件保存在ACS上,當ACS發現某個文件的版本有更新,將會通知CPE進行下載。CPE收到ACS的下載請求後,能夠根據ACS報文中提供的下載地址和文件名,自動到指定的文件服務器下載文件。下載完成後,對下載文件的合法性做相應的檢查,並將下載結果(成功或失敗)反饋給ACS。目前,設備不支持以數字簽名的方式進行的文件下載。
目前,設備支持下載的文件類型有:系統啓動文件和配置文件。
同樣,爲了實現對重要數據的備份,CPE將根據ACS的要求將當前的配置文件上傳到指定的服務器。目前,設備支持上傳的文件類型有:配置文件。
4. 支持ACS對CPE狀態和性能的監控
ACS可以監控與其相連的CPE的各種參數。由於不同的CPE具有不同的性能,可執行的功能也各異,因此ACS必須能識別不同類型CPE的性能,並監控到CPE的當前配置以及配置的變更。CWMP還允許網絡管理人員自定義監控參數並通過ACS獲取這些參數,以便了解CPE的狀態和統計信息。
ACS能夠監控的狀態和性能有:廠商名稱(Manufacturer)、廠商標識OUI(ManufacturerOUI)、序列號(SerialNumber)、硬件版本號(HardwareVersion)、軟件版本號(SoftwareVersion)、設備狀態(DeviceStatus)、啓動時間(UpTime)、配置文件、ACS地址、ACS用戶名、ACS密碼、Inform報文自動發送使能標誌、Inform報文週期發送時間間隔、Inform報文定期發送日期、CPE地址、CPE用戶名、CPE密碼等。
CWMP實現機制
1. CWMP方法
ACS對CPE的管理和監控是通過一系列的操作來實現的,這些操作在CWMP協議裏稱爲RPC方法。主要方法的描述如下:
l Get:ACS使用該方法可以獲取CPE上參數的值。
l Set:ACS使用該方法可以設置CPE上參數的值。
l Inform:當CPE與ACS建立連接時,或者底層配置發生改變時,或者CPE週期性發送本地信息到ACS時,CPE都要通過該方法向ACS發起通告信息。
l Download:爲了保證CPE端硬件的升級以及廠商配置文件的自動下載,ACS使用該方法可以要求CPE到指定的URL下載指定的文件來更新CPE的本地文件。
l Upload:爲了方便ACS對CPE端的管理,ACS使用該方法可以要求CPE將指定的文件上傳到ACS指定的位置。
l Reboot:當CPE故障或者需要軟件升級的時候,ACS使用該方法可以對CPE進行遠程重啓。
2. CWMP實現機制
下面以一個具體的例子,結合CWMP方法來描述CWMP具體實現。場景如下:區域內有主、備兩臺ACS,主ACS系統升級,需要重啓。爲了連續監控,主ACS需要將區域內的CPE都連接到備用ACS上,處理流程如下:
圖2 CWMP消息交互舉例
(1) 建立TCP連接。
(2) SSL初始化,建立安全機制。
(3) CPE發送Inform報文,開始建立CWMP連接。Inform報文使用Eventcode字段描述發送Inform報文的原因,該舉例爲“6 CONNECTION REQUEST”,表示ACS要求建立連接。
(4) 如果CPE通過ACS的認證,ACS將返回Inform響應報文,連接建立。
(5) 如果CPE沒有別的請求,就會發送一個空報文,以滿足HTTP報文請求/響應報文交互規則(CWMP是基於HTTP協議的,CWMP報文作爲HTTP報文的數據部分封裝在HTTP報文中)。
(6) ACS查詢CPE上設置的ACS URL的值。
(7) CPE把獲取到的ACS URL的值回覆給ACS。
(8) ACS發現CPE的ACS URL是本機URL的值,於是發起Set請求,要求將CPE的ACS URL設置爲備用ACS的URL的值。
(9) 設置成功,CPE發送響應報文。
(10) ACS發送空報文通知CPE沒有別的請求了。
(11) CPE關閉連接。
之後,CPE將向備用ACS發起連接。