摘要:通過對IPTV機頂盒管理主要需求和TR069協議特點進行分析,給出了采用TR069協議實現IPTV機頂盒管理的實例化關鍵流程,對運營商實現IPTV機頂盒管理具有一定的參考價值。
0 前言
隨著國內三網融合進程的實質性推進,IPTV業務作為電信運營商和廣電運營商業務雙向滲透的一個切入點,具有非常大的發展潛力。
IPTV的業務形式除了基本的直播、點播等基本的視頻業務外,還包括更多的時移回看、信息瀏覽、互動游戲、電視課堂等更多的增值業務,因此對機頂盒的智能性、功能的可擴展性要求也越來越高。對于IPTV業務來講,終端是實現全部業務的基礎,是用戶對業務體驗的唯一媒介,是引導用戶消費習慣的重要途徑之一。因此必要的終端管理是改善用戶體驗、提高服務質量、維系客戶的重要手段。
1 IPTV盒端管理需求分析
IPTV機頂盒是寬帶網環境中的一種典型的用戶端設備,相應的遠程管理維護的需求主要包括盒端能力信息管理、參數配置、固件升級、告警和日志上傳、Ping和TraceRoute測試等。
1.1 盒端能力信息的管理
盒端能力信息的獲取便于向用戶提供有針對性的業務和服務。盒端能力信息的獲得包括從終端廠商獲得,或接收盒端的自動信息上報兩種主要的渠道,通過對盒端能力信息的管理可以實現用戶的恰當分組,給用戶提供個性化服務,從而實現分眾營銷。盒端能力信息主要包括:盒端廠商、盒端型號名稱、盒端硬件版本號、盒端軟件版本號、盒端當前狀態、支持的流控制協議、支持的傳輸層協議、支持的傳輸層控制協議、支持的流封裝協議、支持的音頻編碼格式、支持的視頻編碼格式等。
1.2 盒端參數配置
盒端參數配置管理包括對盒端的參數模型進行查詢和對盒端的參數進行配置下發,實現盒端參數的遠程管理,從而實現遠程維護與管理,節省成本。配置的參數具體可以包括管理類參數(各類服務器的地址等信息)、網絡類參數(網關、DNS地址等)和服務類參數(告警門限、日志上報周期等)等。
1.3 盒端固件升級
當盒端固件版本有更新時,需要對版本進行自動升級。只需要對廠商提交過來的固件升級包進行審核,審核后自動對一定范圍內的機頂盒進行升級。升級的策略應該可以配置,如按照用戶范圍、盒端廠商型號、固件版本號等進行選擇。
1.4 盒端告警和日志上報
為了統計業務質量等信息,需要盒端具有告警能力,能夠上報給盒端管理系統,比如對于超過門限值的丟包率、丟幀率等信息進行告警上報。日志上報主要包括一定時間段內的認證總次數、認證失敗的總次數、每次認證失敗的詳細信息、加入組播的總次數、單播的申請次數、HTTP請求次數、丟包率發生在某個范圍內的次數、丟幀在某個范圍內次數等等。
1.5 采用Ping和TraceRoute測試
為了診斷網絡故障等原因,盒端可以在管理平臺的指令下對網絡上的主機名或IP地址進行Ping/TraceRoute測試。盒端管理系統負責制定任務,并初始化盒端Ping/TraceRoute測試參數,同時在測試結束后統計盒端測試結果信息。
除了以上IPTV盒端管理的功能需求外,IPTV機頂盒還具有廣泛分布于廣域網內、數量眾多等特點。因此IPTV機頂盒管理協議還要具有更可靠的安全性、簡單易實現以及穿越復雜網絡環境等特點。
2 TR069管理協議簡介
TR069協議是由DSL論壇所開發的技術規范之一,其全稱為“CPE廣域網管理協議”。其提供了對下一代網絡中家庭網絡設備進行管理配置的通用框架和協議,用于從網絡側對家庭網絡中的網關、路由器、機頂盒等設備進行遠程集中管理。
在TR069協議定義的網管模型中管理服務器稱為自動配置服務器(ACS),負責完成對用戶終端設備(CPE)的管理。ACS與CPE之間的接口稱為南向接口,ACS與運營商的其他網管系統、業務管理系統、計費系統之間的接口稱為北向接口,TR069協議主要定義南向接口的標準。
TR069協議是一個位于IP之上的應用層協議,其在設計上充分借鑒了Web技術的優點,傳輸基于傳輸控制協議(TCP)。ACS與CPE之間的交互采用超文本傳輸協議(HTTP)方式,其中ACS作為HTTP服務器,CPE作為客戶機。通信的兩端(ACS和用戶設備)都可以通過RPC調用來完成某個特定功能的執行和得到返回的結果。依照TR069協議,CPE與ACS之間采用SSL/TLS、HTTP basic或者HTTP digest進行認證。TR069協議中,在CPE和ACS之間定義了一系列RPC Methods,其中由ACS調用CPE響應的方法主要包括GetRPCMethods、SetParameterValues、GetParame-terValues、GetParameterNames、SetParameterAttributes、
GetParameterAttributes、AddObject、DeleteObject、Rebo-ot、Download、Upload(可選)、FactoryReset(可選)、GetQueuedTransfers(可選)、ScheduleInform(可選)、SetVouchers(可選)、GetOptions(可選)。用于CPE調用ACS響應的方法主要包括GetRPCMethods(可選)、Inform、TransferComplete、RequestDownload(可選)、Ki-cked(可選)。
對于用戶設備來講,TR069協議主要完成以下功能,可以滿足IPTV業務盒端管理的需求。
a)用戶設備自動配置和動態的業務配置。
b)對用戶設備的軟件、固件的管理。
c)對用戶設備的狀態和性能進行監測。
d)通信故障的診斷。
與SNMP協議相比,TR069 協議采用SSL/TLS、HTTP basic或者HTTP digest等加密認證方式可以保證數據的安全性;采用較多Web中成熟的技術,實現簡單,降低了開發難度;采用HTTP協議,可以有效地穿越復雜的網絡環境。因此,TR069協議比較適合對廣域網內的設備進行管理。
結合IPTV機頂盒管理的主要需求和TR069協議的特點及其定義的方法集,下文對采用TR069協議實現IPTV機頂盒管理的關鍵流程進行實例化說明。
3 實現機頂盒管理的關鍵流程
3.1 安全建立連接流程
3.1.1 盒端主動發起的連接
圖1示出的是盒端主動發起的連接。機頂盒通過HTTP Digest Authentication發起與終端管理系統的認證連接,本文中連接方式遵循RFC 2617的規定。機頂盒主動向終端管理系統發起一個HTTP 連接請求,終端管理系統會要求進行HTTP Digest Authentication認證(本文以采用HTTP Digest安全認證方式為例)。

3.1.2 管理系統主動發起的連接
圖2示出的是管理系統主動發起的連接。

a)在盒端管理系統主動發起對盒端的連接請求之前,通過“心跳”,已獲得盒端的連接地址(本文以UDP的方式保持心跳連接為例)。
b)盒端在收到UDP請求后,應主動返回相應數據包。
c)盒端與盒端管理系統進行交互后,由盒端作為客戶端打開TCP連接,進行正常的PRC交換,并在Inform方法的EventCode代碼中填寫6 CONNECTION REQUEST。
d)打開連接,建立HTTP摘要認證鏈接。
以上為盒端與盒端管理系統安全連接的建立過程,本文中后續所有流程均采用此連接方式。
3.2 開機注冊與信息上報
圖3示出的是開機信息注冊與上報流程。

①盒端開機后,調用Inform方法,上報盒端信息及參數。
②盒端管理系統返回Inform Response。
③盒端發起一條空的HTTP Post請求。
④盒端管理系統根據盒端信息判斷是否需要更新固件。
⑤如果需要更新固件,參考軟件下載和固件更新流程。
⑥如果需要參數配置,由盒端管理系統發起參數配置(參見圖4)。

3.3 參數配置流程
①發起Inform請求,如果是盒端管理系統發起的配置請求Eventcode為6 CONNECTIONREQUEST。
②盒端管理系統返回Inform Response。
③盒端發起一條空的Http Post請求。
④盒端管理系統發起GetParameterValues要求,查詢盒端上指定的參數值。
⑤盒端響應GetParameterValuesResponse,攜帶盒端管理系統指定查詢的參數值。
⑥盒端管理系統發起SetParameterValues要求,配置盒端管理系統指定的參數模型參數值;(如果參數值不需要配置,⑥、⑦兩步可省略)。
⑦盒端響應SetParameterValuesResponse,攜帶參數值設置結果。
⑧盒端管理系統向盒端發送一條空的Http Post響應。
⑨斷開連接。
3.4 軟件下載和固件更新流程
圖5示出的是軟件下載和固件升級流程。

①盒端發起Inform請求,Event code為6 CONNECTIONREQUEST,說明該會話是由盒端管理系統要求而建立的。
②盒端管理系統返回Inform Response。
③盒端發起一條空的Http Post請求。
④盒端管理系統發起GetParameterValues,要求查看盒端的軟件版本。
⑤盒端響應GetParameterValuesResponse,要求攜帶軟件版本號。
⑥盒端管理系統經檢查確定盒端的軟件版本需要升級,向盒端發起Download要求。
⑦盒端重新打開一個文件連接(FTP或HTTP)執行文件下載操作。下載完成后,進行本地軟件升級。盒端升級完成后,若會話斷開,則開始步驟⑧,若會話仍在進行或新會話已開始,則跳過步驟⑧和⑨,從步驟⑩開始執行。
⑧盒端發起Inform請求,若下載應用中沒有重啟,則Event code為7 TRANSFERCOMPLETE和M DOWNLOAD;若下載應用中伴隨著重啟,則Event code為1 BOOT 、7 TRANSFERCOMPLETE和M DOWNLOAD。
⑨盒端管理系統對盒端進行設備認證,合法則盒端管理系統返回Inform Response。
⑩盒端發送TransferComplete,上報軟件升級詳細信息。
■盒端管理系統響應TransferCompleteResponse。
■盒端發送一條空的Http Post請求。
■盒端管理系統沒有別的請求時,向盒端發送一條空的Http Post響應。
3.5 盒端發起故障上報流程
圖6示出的是故障上報流程。

①當發生的事件達到設置的上報規則時,則盒端立即發送Inform消息建立與盒端管理系統的會話,并攜帶告警相關參數,將告警主動上報給盒端管理系統。
②盒端管理系統返回Inform Response。
③當盒端管理系統沒有其他請求時,向盒端發送一條空的Http Post響應。
④盒端斷開連接,會話結束。
4 結束語
本文結合IPTV機頂盒管理的需求和TR069協議的特點,指出了TR069協議比較適合對廣域網內IPTV機頂盒之類的設備進行管理,并且給出了TR069協議在IPTV機頂盒管理中的應用實例流程,此應用流程目前已經在實踐中得到了應用,對運營商開展IPTV業務運營過程中的機頂盒管理具有一定的參考價值。
參考文獻:
[1] 陳燾. TR-069與SNMP網管協議比較與研究[EB/OL]. [2011-11-10]. http://www.shangxueba.com/share/p1829469.html#down.
[2] TR-069 Amendment 3 CPE WAN Management Protocol[EB/S]. [2011 -11-10]. http://wenku.baidu.com/view/cf60d441336c1eb91a375d13.html.
[3] 李晶. IPTV技術中的終端管理[J]. 科協論壇(下半月),2009(2).
[4] 郭先會,曾浩,李致興. TR069協議在IPTV終端管理系統中的研究與應用[J]. 電視技術,2011(5).