隨著國內(nèi)三網(wǎng)融合進(jìn)程的實質(zhì)性推進(jìn),IPTV業(yè)務(wù)作為電信運營商和廣電運營商業(yè)務(wù)雙向滲透的一個切入點,具有非常大的發(fā)展?jié)摿Α?/p>
IPTV的業(yè)務(wù)形式除了基本的直播、點播等基本的視頻業(yè)務(wù)外,還包括更多的時移回看、信息瀏覽、互動游戲、電視課堂等更多的增值業(yè)務(wù),因此對機(jī)頂盒的智能性、功能的可擴(kuò)展性要求也越來越高。對于IPTV業(yè)務(wù)來講,終端是實現(xiàn)全部業(yè)務(wù)的基礎(chǔ),是用戶對業(yè)務(wù)體驗的唯一媒介,是引導(dǎo)用戶消費習(xí)慣的重要途徑之一。因此必要的終端管理是改善用戶體驗、提高服務(wù)質(zhì)量、維系客戶的重要手段。
1 IPTV盒端管理需求分析
IPTV機(jī)頂盒是寬帶網(wǎng)環(huán)境中的一種典型的用戶端設(shè)備,相應(yīng)的遠(yuǎn)程管理維護(hù)的需求主要包括盒端能力信息管理、參數(shù)配置、固件升級、告警和日志上傳、Ping和TraceRoute測試等。
1.1 盒端能力信息的管理
盒端能力信息的獲取便于向用戶提供有針對性的業(yè)務(wù)和服務(wù)。盒端能力信息的獲得包括從終端廠商獲得,或接收盒端的自動信息上報兩種主要的渠道,通過對盒端能力信息的管理可以實現(xiàn)用戶的恰當(dāng)分組,給用戶提供個性化服務(wù),從而實現(xiàn)分眾營銷。盒端能力信息主要包括:盒端廠商、盒端型號名稱、盒端硬件版本號、盒端軟件版本號、盒端當(dāng)前狀態(tài)、支持的流控制協(xié)議、支持的傳輸層協(xié)議、支持的傳輸層控制協(xié)議、支持的流封裝協(xié)議、支持的音頻編碼格式、支持的視頻編碼格式等。
1.2 盒端參數(shù)配置
盒端參數(shù)配置管理包括對盒端的參數(shù)模型進(jìn)行查詢和對盒端的參數(shù)進(jìn)行配置下發(fā),實現(xiàn)盒端參數(shù)的遠(yuǎn)程管理,從而實現(xiàn)遠(yuǎn)程維護(hù)與管理,節(jié)省成本。配置的參數(shù)具體可以包括管理類參數(shù)(各類服務(wù)器的地址等信息)、網(wǎng)絡(luò)類參數(shù)(網(wǎng)關(guān)、DNS地址等)和服務(wù)類參數(shù)(告警門限、日志上報周期等)等。
1.3 盒端固件升級
當(dāng)盒端固件版本有更新時,需要對版本進(jìn)行自動升級。只需要對廠商提交過來的固件升級包進(jìn)行審核,審核后自動對一定范圍內(nèi)的機(jī)頂盒進(jìn)行升級。升級的策略應(yīng)該可以配置,如按照用戶范圍、盒端廠商型號、固件版本號等進(jìn)行選擇。
1.4 盒端告警和日志上報
為了統(tǒng)計業(yè)務(wù)質(zhì)量等信息,需要盒端具有告警能力,能夠上報給盒端管理系統(tǒng),比如對于超過門限值的丟包率、丟幀率等信息進(jìn)行告警上報。日志上報主要包括一定時間段內(nèi)的認(rèn)證總次數(shù)、認(rèn)證失敗的總次數(shù)、每次認(rèn)證失敗的詳細(xì)信息、加入組播的總次數(shù)、單播的申請次數(shù)、HTTP請求次數(shù)、丟包率發(fā)生在某個范圍內(nèi)的次數(shù)、丟幀在某個范圍內(nèi)次數(shù)等等。
1.5 采用Ping和TraceRoute測試
為了診斷網(wǎng)絡(luò)故障等原因,盒端可以在管理平臺的指令下對網(wǎng)絡(luò)上的主機(jī)名或IP地址進(jìn)行Ping/TraceRoute測試。盒端管理系統(tǒng)負(fù)責(zé)制定任務(wù),并初始化盒端Ping/TraceRoute測試參數(shù),同時在測試結(jié)束后統(tǒng)計盒端測試結(jié)果信息。
除了以上IPTV盒端管理的功能需求外,IPTV機(jī)頂盒還具有廣泛分布于廣域網(wǎng)內(nèi)、數(shù)量眾多等特點。因此IPTV機(jī)頂盒管理協(xié)議還要具有更可靠的安全性、簡單易實現(xiàn)以及穿越復(fù)雜網(wǎng)絡(luò)環(huán)境等特點。
2 TR069管理協(xié)議簡介
TR069協(xié)議是由DSL論壇所開發(fā)的技術(shù)規(guī)范之一,其全稱為“CPE廣域網(wǎng)管理協(xié)議”。其提供了對下一代網(wǎng)絡(luò)中家庭網(wǎng)絡(luò)設(shè)備進(jìn)行管理配置的通用框架和協(xié)議,用于從網(wǎng)絡(luò)側(cè)對家庭網(wǎng)絡(luò)中的網(wǎng)關(guān)、路由器、機(jī)頂盒等設(shè)備進(jìn)行遠(yuǎn)程集中管理。
在TR069協(xié)議定義的網(wǎng)管模型中管理服務(wù)器稱為自動配置服務(wù)器(ACS),負(fù)責(zé)完成對用戶終端設(shè)備(CPE)的管理。ACS與CPE之間的接口稱為南向接口,ACS與運營商的其他網(wǎng)管系統(tǒng)、業(yè)務(wù)管理系統(tǒng)、計費系統(tǒng)之間的接口稱為北向接口,TR069協(xié)議主要定義南向接口的標(biāo)準(zhǔn)。
TR069協(xié)議是一個位于IP之上的應(yīng)用層協(xié)議,其在設(shè)計上充分借鑒了Web技術(shù)的優(yōu)點,傳輸基于傳輸控制協(xié)議(TCP)。ACS與CPE之間的交互采用超文本傳輸協(xié)議(HTTP)方式,其中ACS作為HTTP服務(wù)器,CPE作為客戶機(jī)。通信的兩端(ACS和用戶設(shè)備)都可以通過RPC調(diào)用來完成某個特定功能的執(zhí)行和得到返回的結(jié)果。依照TR069協(xié)議,CPE與ACS之間采用SSL/TLS、HTTP basic或者HTTP digest進(jìn)行認(rèn)證。TR069協(xié)議中,在CPE和ACS之間定義了一系列RPC Methods,其中由ACS調(diào)用CPE響應(yīng)的方法主要包括GetRPCMethods、SetParameterValues、GetParame-terValues、GetParameterNames、SetParameterAttributes、
GetParameterAttributes、AddObject、DeleteObject、Rebo-ot、Download、Upload(可選)、FactoryReset(可選)、GetQueuedTransfers(可選)、ScheduleInform(可選)、SetVouchers(可選)、GetOptions(可選)。用于CPE調(diào)用ACS響應(yīng)的方法主要包括GetRPCMethods(可選)、Inform、TransferComplete、RequestDownload(可選)、Ki-cked(可選)。
對于用戶設(shè)備來講,TR069協(xié)議主要完成以下功能,可以滿足IPTV業(yè)務(wù)盒端管理的需求。
a)用戶設(shè)備自動配置和動態(tài)的業(yè)務(wù)配置。
b)對用戶設(shè)備的軟件、固件的管理。
c)對用戶設(shè)備的狀態(tài)和性能進(jìn)行監(jiān)測。
d)通信故障的診斷。
與SNMP協(xié)議相比,TR069 協(xié)議采用SSL/TLS、HTTP basic或者HTTP digest等加密認(rèn)證方式可以保證數(shù)據(jù)的安全性;采用較多Web中成熟的技術(shù),實現(xiàn)簡單,降低了開發(fā)難度;采用HTTP協(xié)議,可以有效地穿越復(fù)雜的網(wǎng)絡(luò)環(huán)境。因此,TR069協(xié)議比較適合對廣域網(wǎng)內(nèi)的設(shè)備進(jìn)行管理。
結(jié)合IPTV機(jī)頂盒管理的主要需求和TR069協(xié)議的特點及其定義的方法集,下文對采用TR069協(xié)議實現(xiàn)IPTV機(jī)頂盒管理的關(guān)鍵流程進(jìn)行實例化說明。
3 實現(xiàn)機(jī)頂盒管理的關(guān)鍵流程
3.1 安全建立連接流程
3.1.1 盒端主動發(fā)起的連接
圖1示出的是盒端主動發(fā)起的連接。機(jī)頂盒通過HTTP Digest Authentication發(fā)起與終端管理系統(tǒng)的認(rèn)證連接,本文中連接方式遵循RFC 2617的規(guī)定。機(jī)頂盒主動向終端管理系統(tǒng)發(fā)起一個HTTP 連接請求,終端管理系統(tǒng)會要求進(jìn)行HTTP Digest Authentication認(rèn)證(本文以采用HTTP Digest安全認(rèn)證方式為例)。
3.1.2 管理系統(tǒng)主動發(fā)起的連接
圖2示出的是管理系統(tǒng)主動發(fā)起的連接。
a)在盒端管理系統(tǒng)主動發(fā)起對盒端的連接請求之前,通過“心跳”,已獲得盒端的連接地址(本文以UDP的方式保持心跳連接為例)。
b)盒端在收到UDP請求后,應(yīng)主動返回相應(yīng)數(shù)據(jù)包。
c)盒端與盒端管理系統(tǒng)進(jìn)行交互后,由盒端作為客戶端打開TCP連接,進(jìn)行正常的PRC交換,并在Inform方法的EventCode代碼中填寫6 CONNECTION REQUEST。
d)打開連接,建立HTTP摘要認(rèn)證鏈接。
以上為盒端與盒端管理系統(tǒng)安全連接的建立過程,本文中后續(xù)所有流程均采用此連接方式。
3.2 開機(jī)注冊與信息上報
圖3示出的是開機(jī)信息注冊與上報流程。
①盒端開機(jī)后,調(diào)用Inform方法,上報盒端信息及參數(shù)。
②盒端管理系統(tǒng)返回Inform Response。
③盒端發(fā)起一條空的HTTP Post請求。
④盒端管理系統(tǒng)根據(jù)盒端信息判斷是否需要更新固件。
⑤如果需要更新固件,參考軟件下載和固件更新流程。
⑥如果需要參數(shù)配置,由盒端管理系統(tǒng)發(fā)起參數(shù)配置(參見圖4)。
3.3 參數(shù)配置流程
①發(fā)起Inform請求,如果是盒端管理系統(tǒng)發(fā)起的配置請求Eventcode為6 CONNECTIONREQUEST。
②盒端管理系統(tǒng)返回Inform Response。
③盒端發(fā)起一條空的Http Post請求。
④盒端管理系統(tǒng)發(fā)起GetParameterValues要求,查詢盒端上指定的參數(shù)值。
⑤盒端響應(yīng)GetParameterValuesResponse,攜帶盒端管理系統(tǒng)指定查詢的參數(shù)值。
⑥盒端管理系統(tǒng)發(fā)起SetParameterValues要求,配置盒端管理系統(tǒng)指定的參數(shù)模型參數(shù)值;(如果參數(shù)值不需要配置,⑥、⑦兩步可省略)。
⑦盒端響應(yīng)SetParameterValuesResponse,攜帶參數(shù)值設(shè)置結(jié)果。
⑧盒端管理系統(tǒng)向盒端發(fā)送一條空的Http Post響應(yīng)。
⑨斷開連接。
3.4 軟件下載和固件更新流程
圖5示出的是軟件下載和固件升級流程。
①盒端發(fā)起Inform請求,Event code為6 CONNECTIONREQUEST,說明該會話是由盒端管理系統(tǒng)要求而建立的。
②盒端管理系統(tǒng)返回Inform Response。
③盒端發(fā)起一條空的Http Post請求。
④盒端管理系統(tǒng)發(fā)起GetParameterValues,要求查看盒端的軟件版本。
⑤盒端響應(yīng)GetParameterValuesResponse,要求攜帶軟件版本號。
⑥盒端管理系統(tǒng)經(jīng)檢查確定盒端的軟件版本需要升級,向盒端發(fā)起Download要求。
⑦盒端重新打開一個文件連接(FTP或HTTP)執(zhí)行文件下載操作。下載完成后,進(jìn)行本地軟件升級。盒端升級完成后,若會話斷開,則開始步驟⑧,若會話仍在進(jìn)行或新會話已開始,則跳過步驟⑧和⑨,從步驟⑩開始執(zhí)行。
⑧盒端發(fā)起Inform請求,若下載應(yīng)用中沒有重啟,則Event code為7 TRANSFERCOMPLETE和M DOWNLOAD;若下載應(yīng)用中伴隨著重啟,則Event code為1 BOOT 、7 TRANSFERCOMPLETE和M DOWNLOAD。
⑨盒端管理系統(tǒng)對盒端進(jìn)行設(shè)備認(rèn)證,合法則盒端管理系統(tǒng)返回Inform Response。
⑩盒端發(fā)送TransferComplete,上報軟件升級詳細(xì)信息。
■盒端管理系統(tǒng)響應(yīng)TransferCompleteResponse。
■盒端發(fā)送一條空的Http Post請求。
■盒端管理系統(tǒng)沒有別的請求時,向盒端發(fā)送一條空的Http Post響應(yīng)。
3.5 盒端發(fā)起故障上報流程
圖6示出的是故障上報流程。
①當(dāng)發(fā)生的事件達(dá)到設(shè)置的上報規(guī)則時,則盒端立即發(fā)送Inform消息建立與盒端管理系統(tǒng)的會話,并攜帶告警相關(guān)參數(shù),將告警主動上報給盒端管理系統(tǒng)。
②盒端管理系統(tǒng)返回Inform Response。
③當(dāng)盒端管理系統(tǒng)沒有其他請求時,向盒端發(fā)送一條空的Http Post響應(yīng)。
④盒端斷開連接,會話結(jié)束。
4 結(jié)束語
本文結(jié)合IPTV機(jī)頂盒管理的需求和TR069協(xié)議的特點,指出了TR069協(xié)議比較適合對廣域網(wǎng)內(nèi)IPTV機(jī)頂盒之類的設(shè)備進(jìn)行管理,并且給出了TR069協(xié)議在IPTV機(jī)頂盒管理中的應(yīng)用實例流程,此應(yīng)用流程目前已經(jīng)在實踐中得到了應(yīng)用,對運營商開展IPTV業(yè)務(wù)運營過程中的機(jī)頂盒管理具有一定的參考價值。