IPTV接收終端,即IPTV機頂盒,是IPTV系統(tǒng)關(guān)鍵設(shè)備之一,其主要功能包括:支持LAN或xDSL網(wǎng)路傳輸、接收及處理IP數(shù)據(jù)和視頻流;支持H.264、MPEG-2、MPEG-4、WMV和Real等視頻解碼;支持相應CA技術(shù);支持HTML網(wǎng)頁瀏覽及網(wǎng)絡游戲等。
由于機頂盒硬件資源有限,其操作系統(tǒng)一般采用WINCE、嵌入式Linux、RTOS等嵌入式操作系統(tǒng)。
由于IPTV基于網(wǎng)絡傳輸,因此作為網(wǎng)絡接入設(shè)備的機頂盒在使用前應進行IP地址、網(wǎng)關(guān)等網(wǎng)絡參數(shù)的設(shè)置。如果在實際工程中采用人工逐臺進行設(shè)置,會大大增加運營商的人工成本,而且日后的維護費用也會相應增加。因此在IPTV機頂盒的設(shè)計中應考慮實現(xiàn)即插即用功能,即實現(xiàn)自動配置。
基于以上情況,本文設(shè)計了一種可網(wǎng)絡化管理和配置機頂盒的網(wǎng)絡解決方案。該方案基于TCP/IP協(xié)議簇中的BOOTP(BOOT strapping Protocol)協(xié)議實現(xiàn),利用網(wǎng)絡服務器實現(xiàn)機頂盒網(wǎng)絡參數(shù)的自動配置,整個過程無需用戶干預,真正實現(xiàn)即插即用功能;配合通用的機頂盒設(shè)計,還可實現(xiàn)機頂盒視頻解碼等程序的自動升級;對用戶機頂盒的監(jiān)控和維護只需在遠程服務器上進行。
總體方案設(shè)計
管理模式選擇與設(shè)計
客戶—服務器模式(client-server model)的優(yōu)點之一是具有很大的靈活性。采用客戶—服務器模式后對網(wǎng)絡節(jié)點的設(shè)置均可通過對服務器端的設(shè)置來實現(xiàn),因而能適應不同種類和不同環(huán)境下節(jié)點的需要。為了完成對機頂盒的網(wǎng)絡化自動配置,在IPTV底層網(wǎng)絡上設(shè)置啟動配置服務器,機頂盒加電自檢后,通過固化在ROM中的登錄程序登錄啟動配置服務器完成相關(guān)參數(shù)配置,從服務器獲得相關(guān)設(shè)置后開始工作。
服務器類型及協(xié)議選擇
本方案采用BOOTP服務器及其協(xié)議進行管理和配置。BOOTP和RARP(Reverse Address Resolution Protocol)為TCP/IP協(xié)議簇中的兩個協(xié)議,均采用客戶—服務器模式實現(xiàn),并且都能實現(xiàn)現(xiàn)場設(shè)備IP地址的網(wǎng)絡化管理和配置,但相對于RARP來說,BOOTP主要具有以下優(yōu)點:(1)能為節(jié)點獲取其啟動所需的所有信息,功能比RARP強大得多。(2)基于傳輸協(xié)議UDP實現(xiàn),不跟硬件直接打交道,易于實現(xiàn)且移植性好。(3)BOOTP服務器是作為一個應用程序而存在的,這與RARP服務器存在于內(nèi)核中的方式不同,優(yōu)點是易于修改和移植,而RARP內(nèi)核服務器的修改和移植都很困難。(4)協(xié)議傳輸效率高,交換信息量大,可以充分利用硬件能力。(5)RARP一次只交換一個IP地址,而BOOTP報文除了可交換IP地址外,還可提供網(wǎng)關(guān)IP、服務器主機名及128字節(jié)的啟動文件名。
基于上述分析,選BOOTP實現(xiàn)機頂盒的網(wǎng)絡化配置管理。
BOOTP報文格式、傳輸及配置過程
BOOTP報文格式
BOOTP最早出現(xiàn)在Unix系統(tǒng)中,負責Unix終端的遠程啟動,直到目前仍是Unix及之后Linux系統(tǒng)中最常用的方式。BOOTP協(xié)議有兩種報文:BOOTP請求及BOOTP響應。為盡可能簡化BOOTP實現(xiàn),BOOTP報文各域均為定長域,而且兩種報文格式完全相同。
BOOTP配置過程
(1)由ROM芯片中的BOOTP啟動代碼啟動客戶機(此時客戶機還沒有IP地址),它就用廣播形式以IP地址0.0.0.0向網(wǎng)絡發(fā)查詢請求,請求包含客戶機網(wǎng)卡MAC地址。
(2)BOOTP服務器接收到請求幀,并根據(jù)幀中MAC地址在BOOTPTAB中查找這個MAC記錄,并將信息(客戶機IP、服務器地址、網(wǎng)關(guān)IP及啟動文件名等)以FOUND的形式發(fā)回客戶機。
(3)客戶機通過讀取FOUND中的信息,再通過TFTP(Trivial File Transfer Protocol)服務器下載所需啟動配置文件,并將此文件在工作站內(nèi)存模擬成磁盤,從這個模擬磁盤啟動。
基于BOOTP機頂盒管理方案的實現(xiàn)
服務器的配置
(1)在IPTV底層網(wǎng)絡(小區(qū)網(wǎng)絡)設(shè)置BOOTP服務器。BOOTP支持多服務器同時工作,并且可由客戶指定為其服務的服務器(通過在BOOTP請求中填入服務器IP地址)。如果某小區(qū)網(wǎng)絡中機頂盒較多,可設(shè)置多臺服務器,以增加網(wǎng)絡的可靠性。
(2)BOOTPTAB表的配置。在BOOTPTAB表建立終端設(shè)備MAC地址、IP地址及對應的啟動配置文件表。對機頂盒IP地址的日后維護可在BOOTP表中進行。
(3)啟動配置文件由TFTP下載。TFTP是一種簡化的文件傳輸協(xié)議,具有短小實用的特點,可存放在ROM中,對終端設(shè)備要求不高,易于實現(xiàn)。FTP雖然功能強大,但協(xié)議復雜,對硬件要求高,機頂盒難以滿足,因而對機頂盒并不實用。
機頂盒自動登錄實現(xiàn)
只需在機頂盒ROM中加入BOOTP啟動代碼,即可實現(xiàn)機頂盒到服務器的自動登錄。
本方案在解決機頂盒的網(wǎng)絡化管理配置中引入服務器后,雖然會增加IPTV網(wǎng)絡初始建設(shè)中服務器的成本,但由于機頂盒采用網(wǎng)絡化無盤啟動,不用安裝啟動配置文件,因而可節(jié)約機頂盒硬件資源,降低機頂盒成本。綜合考慮,初始建設(shè)成本增加不多。