在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 網(wǎng)絡與存儲 > 設計應用 > IPTV系統(tǒng)中EPG模塊的設計與實現(xiàn)

            IPTV系統(tǒng)中EPG模塊的設計與實現(xiàn)

            ——
            作者:黃志濤 張建標 包薩如拉 時間:2006-09-25 來源:計算機與信息技術 收藏
            1 引 言

            即網(wǎng)絡電視,是目前一種新興的網(wǎng)絡應用,它利用寬帶互聯(lián)網(wǎng)的基礎設施,以家用電視機作為主要終端,通過互聯(lián)網(wǎng)協(xié)議(IP)來提供包括電視節(jié)目在內的多種數(shù)字媒體服務及其增值業(yè)務的技術。最大的優(yōu)勢在于“互動性”和“按需觀看”,徹底改變了傳統(tǒng)電視單向廣播的特點[1]。它的出現(xiàn)極大的滿足了用戶(文中的用戶是指安裝了客戶端的消費者,客戶是指IPTV服務提供商和運營商)對在線影視欣賞的需求。IPTV的發(fā)展十分迅速,國際上,UT斯達康、微軟、西門子、阿爾卡特、惠普等,國內的華為、中興和盛大等廠家都投入了IPTV的開發(fā)和研究。 國外早已有IPTV的商業(yè)運營系統(tǒng),英國Video Networks公司早在1999年就推出了IPTV業(yè)務。國內截至目前,首個IPTV已在上海投入商業(yè)應用,并且中國電信已在五省市進行IPTV試點, IPTV在國內和國際都有廣闊的發(fā)展前景。

            為了提供“互動性”和“按需觀看”,系統(tǒng)需要提供和用戶交互的界面,供用戶瀏覽系統(tǒng)提供的節(jié)目信息并選擇要欣賞的節(jié)目。在IPTV系統(tǒng)中由 (Electronic Program Guide電子程序向導)服務器提供這套界面。是一個當前和將來節(jié)目信息的交互式節(jié)目安排表,用戶通過操作遙控器進行瀏覽[2]。 在整個IPTV系統(tǒng)中是至關重要的,它是整個IPTV系統(tǒng)的門戶。EPG給用戶提供一個容易使用的、界面友好的、可以快速訪問節(jié)目的一種方式。因此,用戶對IPTV整個系統(tǒng)的評價在很大程度上取決于EPG。提供簡單易用、快速、穩(wěn)定、美觀的交互界面是EPG的首要目標。

            2 IPTV的系統(tǒng)結構模型

            圖1是一個IPTV系統(tǒng)結構模型,此模型已在國內一些城市得到實際應用。在此模型結構圖中,整個IPTV系統(tǒng)分為兩大部分:后臺部分和用戶接入部分。后臺部分主要提供媒體內容的管理、用戶管理、整個系統(tǒng)的服務器管理、用戶認證和計費管理等等。用戶接入部分為用戶提供視頻服務和其他服務,根據(jù)城市規(guī)模大小可分為多個區(qū)域,每一區(qū)域主要有區(qū)域媒體基站和EPG服務器。用戶使用[3] [4] [5]加電視或者PC作為終端,通過 或小區(qū)寬帶收看系統(tǒng)存儲的節(jié)目或者直播電視節(jié)目。是一臺功能簡單的計算機,有CPU、內存、網(wǎng)絡連接設備、解碼器等硬件及操作系統(tǒng)和應用程序等軟件,接收通過寬帶IP網(wǎng)絡傳輸過來的視頻信號,信號經(jīng)過處理后在電視機上顯示出來。用戶通過操縱遙控器使用提供的功能。

            iptv的系統(tǒng)結構模型

            用戶被劃分為多個區(qū)域,每個區(qū)域分別部署多個區(qū)域媒體服務器和EPG服務器,用戶的視頻服務和交互界面由用戶所在區(qū)域的媒體服務器和EPG服務器提供。這種部署方式具有容易擴充的特點,適合大規(guī)模部署。增加一個區(qū)域只須增加區(qū)域媒體基站和EPG服務器,對后臺部分和其它區(qū)域不會造成影響。同時,用戶的大部分數(shù)據(jù)流量都集中在自己所在區(qū)域,減輕了主干網(wǎng)的負擔,而且單個區(qū)域系統(tǒng)的崩潰不會影響其它區(qū)域。

            系統(tǒng)工作過程大致如下:①媒體源經(jīng)過媒體處理處理成系統(tǒng)所定義的格式,存儲在主媒體基站上,并由后臺的媒體分發(fā)管理負責如何將這些節(jié)目分發(fā)到下面的每一個區(qū)域中的媒體基站中。②同時有關節(jié)目的信息也被下發(fā)到EPG服務器中,供EPG顯示給用戶。③用戶開機經(jīng)過后臺認證后登錄到EPG服務器上,開始瀏覽系統(tǒng)的節(jié)目信息。④當用戶選擇一個節(jié)目觀看后,EPG將有關節(jié)目信息和用戶的信息發(fā)送到后臺部分,由后臺的用戶管理部分判斷用戶是否能夠欣賞節(jié)目,如果可以,用戶的機頂盒則向本區(qū)域的媒體基站發(fā)送播放節(jié)目的請求。⑤播放完畢,機頂盒向后臺發(fā)送扣除相應收費的請求,同時重新定向到EPG服務器,用戶可以繼續(xù)瀏覽節(jié)目和欣賞節(jié)目。

            考慮到目前IPTV在國內還處于發(fā)展階段,一個區(qū)域的用戶不是很多。目前系統(tǒng)設計為一個區(qū)域支持最多3000用戶,在同一時刻訪問EPG服務器的用戶數(shù)不超過500。當用戶數(shù)量增多時,可以使用EPG服務器集群。在圖1中,每個區(qū)域都部署了一個主EPG服務器,為了系統(tǒng)的穩(wěn)定性,同時也部署了一個備用的EPG服務器。

            3 EPG模塊的設計

            從IPTV系統(tǒng)在中國的部署應用看,EPG模塊是整個系統(tǒng)中需求變化最大、最快的模塊,而且是直接展示給客戶的模塊,很大程度上決定客戶是否采用我們的系統(tǒng)。模塊在整體框架設計時,主要考慮以下原則:

            (1)     結構清晰,開發(fā)快速??蛻舻男枨笞兓呛芸斓?,在設計時,首先要考慮能夠在最短的時間內按照客戶的要求開發(fā)出新界面,結構清晰的設計有利于快速開發(fā)。

            (2)   維護方便。能夠讓客戶在對EPG代碼和實現(xiàn)不是很了解的情況下改動EPG的某些代碼或修改一些配置,而不會影響EPG的運行。

            (3)     方便客戶定制??蛻艨赡芤笞约褐谱鱁PG。因此,設計時要考慮到能夠快速、簡單地使客戶明白EPG的制作過程,在較短時間內掌握制作EPG。

            (4)     性能滿足設計要求。要滿足設計時的性能要求,主要考慮服務器優(yōu)化,數(shù)據(jù)庫的優(yōu)化。

            (5)     界面簡單美觀,有良好的可擴展性和開放性。容易支持新的業(yè)務,能夠兼容不同廠家的機頂盒。

            EPG實現(xiàn)主要有兩種方案選擇,本地應用方案和交互式實現(xiàn)方案 [7]。目前國內和國外的EPG設計基本上是針對數(shù)字電視的,其EPG實現(xiàn)一般采用本地應用方案。本地方案對機頂盒的硬件要求較高,而且在和用戶的交互性方面做的不是很好。IPTV是一種和用戶有高度交互性的系統(tǒng),設計和實現(xiàn)適合采用第二種方案。

            此模型中EPG實現(xiàn)選擇交互式方案,采用由EPG服務器給機頂盒提供HTML頁面的實現(xiàn)方式。將系統(tǒng)的節(jié)目信息存儲在數(shù)據(jù)庫中,服務器從數(shù)據(jù)庫中檢索節(jié)目信息,以HTML頁面的形式提供給機頂盒,機頂盒解析頁面后呈現(xiàn)給用戶。這樣,對PC用戶來說,用戶端自帶的瀏覽器即可瀏覽。對使用機頂盒的用戶來說,需要機頂盒實現(xiàn)能夠解析HTML頁面的功能。

            在本文中,著重針對機頂盒的EPG設計 ,具體實現(xiàn)采用Linux+Apache+MySQL+PHP,程序的整個框架設計基于MVC模式的思想。

            3.1 MVC的設計模式

            模型-視圖-控制(Model-View-Controller)是一種經(jīng)典的軟件設計模式,它采用分治的思想將系統(tǒng)分成三大模塊,每個模塊各負其責,其關系如圖2所示。

            mvc的設計模式

            (1) 模型。負責維護數(shù)據(jù)并提供數(shù)據(jù)訪問方法。模型只有純粹的功能性接口, 也就是一系列的公開方法。通過這些公開方法, 可以取得模型的所有功能。

            (2) 視圖。用來顯示模型的數(shù)據(jù)。在一個MVC 模型中可以有多個視圖。

            (3) 控制器。用戶可以通過視圖來改變模型的狀態(tài), 這種更新是通過控制器來完成的??刂破髫撠熣{用模型的改值方法以改變模型的狀態(tài), 同時, 控制器會通知所有的已登記視圖刷新數(shù)據(jù)顯示。

            MVC 體系有效地實現(xiàn)了表示與數(shù)據(jù)的分離,能很方便地用多個視圖來顯示多套數(shù)據(jù),使系統(tǒng)很方便地支持其它新的客戶端類型,可以很好地表達用戶的交互。從國內的應用情況看,大部分客戶都是對顯示界面要求不一樣,對程序處理邏輯有少量不同。采用MVC模式,可以很方便的響應客戶的需求變化,而且可以很容易提供不同的顯示界面讓客戶自己選擇。

            3.2 具體實現(xiàn)

            根據(jù)設計目的和MVC模式,考慮到用戶使用的終端設備為機頂盒,在客戶端需要一些與機頂盒有關的特殊處理,服務器處理請求的實現(xiàn)過程分為五個層次,如圖3所示。

            epg實現(xiàn)層次

            (1)   頁面展示層。負責系統(tǒng)節(jié)目信息的顯示。

            (2)   用戶端處理層。負責請求發(fā)出前和請求處理結果返回后的一些特殊處理。此處加入用戶端處理層主要是因為目前用戶的終端為機頂盒,機頂盒瀏覽器的功能不是很強。在用戶轉向另外一個頁面或者返回到原來的頁面都需要EPG做一些處理,比如記錄光標的位置、初始化光標位置。

            (3)   請求和響應層。負責請求到達服務器后和處理結果返回給用戶端前的一些處理。

            (4)   邏輯處理層。負責對客戶的請求進行處理。

            (5)   數(shù)據(jù)訪問層。負責提供獲取數(shù)據(jù)庫中數(shù)據(jù)的接口。

            我們以顯示熱門影片的實例說明使用MVC模式的思想處理請求的過程。處理顯示熱門影片請求的過程如圖4所示。

            過程如下:

            (1)用戶在首頁單擊“最新影片”,經(jīng)過用戶端控制層處理(關閉在首頁播放的廣告視頻)后,請求被提交到服務器進行處理。

            (2)請求和響應層開始處理請求,保存上一頁有關的狀態(tài),并且初始化一些變量(如取數(shù)據(jù)的類、保存頁面所有信息的變量)。

            (3)邏輯處理層計算數(shù)據(jù)庫中要取的熱門影片的起始位置和數(shù)量。  (4)調用數(shù)據(jù)訪問層的接口開始從數(shù)據(jù)庫里面取出熱門影片的信息(節(jié)目名稱、價格、簡介、海報圖片名稱等)。

            (5)邏輯處理層對取到的數(shù)據(jù)進行轉換,轉換后的所有數(shù)據(jù)保存在一個變量中,這個變量要傳遞給顯示結果的頁面。

            (6)請求和響應層調用顯示結果的頁面和用戶端的控制代碼,生成HTML代碼。

            (7)機頂盒解析傳遞過來的HTML頁面,初始化光標位置,將熱門影片信息顯示給用戶。

            開發(fā)之前,在設計文檔中定義預先定義頁面展示層和邏輯處理層、邏輯處理層和數(shù)據(jù)訪問層的接口。每一部分的開發(fā)人員只須關心自己所做的部分,使用其它層提供的接口調用其它層的功能。這樣各個部分的開發(fā)可以并行工作,大大提高了開發(fā)速度。  

            響應熱門影片請求流程

            數(shù)據(jù)訪問層和邏輯處理層可以很容易編寫單元測試來測試自己的代碼,不受其它層的代碼的影響,很大程度上提高了軟件的質量。同時后期的維護也是很方便的,如果需求有變,只須改動需求變化所在層次的代碼,不用關心其它層代碼是否要改動。

            整個EPG模塊每個頁面的編碼都遵循這種規(guī)則。同時我們提供給客戶一個EPG參考手冊,主要是取數(shù)據(jù)的接口函數(shù)和用戶端處理層 JavaScript函數(shù)的使用說明??蛻糁恍枰莆找粋€頁面的制作過程和所提供的使用手冊中的函數(shù)調用方法,并具有一定的編程水平,就可在很短的時間內獨立編寫自己的EPG。

            3.3 EPG性能測試

            為了測試EPG性能是否達到了當初的設計要求,使用LoadRunner測試工具對EPG服務器進行了性能測試,測試最主要的指標是不同并發(fā)用戶數(shù)時的事務響應時間,它是服務器性能最重要的指標。

            測試的硬件環(huán)境為:CPU Intel(R) Pentium(R)4 2.40GHz,內存 1GB,網(wǎng)卡 1GB/s。軟件環(huán)境為:操作系統(tǒng) RedHat 9.0, Apache 2.0.50,MySQL 4.0.21,PHP 4.3.9RC3-dev,Squid 2.5 STABLE1。

            LoadRunner模擬測試并發(fā)用戶數(shù)為220、500,測試EPG服務器的事務響應時間和事務完成情況。服務器響應時間和事務完成情況測試數(shù)據(jù)如表1和表2所示。從測試數(shù)據(jù)看,當并發(fā)用戶數(shù)為500時,沒有出現(xiàn)事務失敗的情況,平均響應時間不超過3秒。對用戶來說,這個時間是可以接受的。說明采用這種設計方法開發(fā)EPG,服務器的性能也達到了預先的要求。

             

            從以上的測試和分析可以看出,使用上文所說的設計方法開發(fā)EPG總體上達到了預先的設計原則。

            4 結束語

            本文闡述了一個IPTV系統(tǒng)模型及其EPG模塊的設計和實現(xiàn),在實際應用中也證明了我們的設計方法對快速開發(fā)易維護、方便擴展的EPG是正確和可行的。隨著IPTV的發(fā)展和用戶數(shù)的增多,今后需要在服務器的性能方面和EPG的個性化方面進行更深入的研究。



            評論


            相關推薦

            技術專區(qū)

            關閉