當前位置:學問谷 >

行業範例 >多媒體 >

淺析基於P2P的多媒體教學平台的研究與設計論文

淺析基於P2P的多媒體教學平台的研究與設計論文

論文摘要:針對C/S,B/S結構的網絡教學平台的缺陷,該文提出基於P2P模式的多媒體教學平台。詳細闡述了該平台的設計方案和功能模塊的設計,並利用JXTA技術實現了基於P2P的多媒體教學。

淺析基於P2P的多媒體教學平台的研究與設計論文

論文關鍵詞:多媒體教學平台;P2P;JXTA

網絡教學突破了時間和空間的限制,使得人們可以快捷方便地獲取知識和技術,毫無疑問,網絡教學有着非常好的發展前景。目前C/S,B/S結構的網絡教學平台在提供文字和靜態圖片、講義和課件資源方面做得不錯,但缺乏教師和學生、學生和學生之間的即時交互交流功能,且所有的教學資源都放在服務器上,必須訪問服務器才能得到所需的資源,隨着客户數目增多,服務器往往成為整個系統的瓶頸,特別是視頻直播的媒體數據量大,更會加重服務器帶寬的負擔,造成服務質量下降影響教學。

為了解決C/S,B/S結構教學平台的不足,本教學平台採用P2P和流媒體技術進行研究與設計,目標在於改善和擴展現有教學平台的功能,緩解服務器的I/0壓力和帶寬限制,促進網絡教學平台的教學資源更加豐富,教學形式更加多樣化。

1、P2P技術

1.1P2P

P2P是一種用於不同PC用户之間直接交換數據或服務的技術,它弱化了傳統的C/S模式、B/S模式中服務器處於中心地位的思想,P2P網絡中各節點地位平等,各節點既可以作為提供服務的服務器,也可以作為使用服務的客户機。

1.2JXTA

JXTA、是Sun公司推出的一個P2P網絡應用開發平台,其目的是為P2P應用所需的基礎服務提供支持。JXTA通過定義一套XML協議來完成P2P網絡的基本功能,由於這套協議獨立於操作系統、網絡協議和編程語言,因此JXTA可以在不同的軟.、硬件平台上實現,有望成為P2P網絡應用開發的統一平台。

2、教學平台的設計

2.1需求分析

利用JXTA來構建P2P應用,對等點是P2P網絡中的基本單元,是P2P應用中進行各種交互活動的實體;而對等組是構建各類P2P應用的基本單元,是一種組織對等點並在組內發佈特定服務的方式。本文構建的教學平台,以一個教師的一門課程來作為一個對等組,在課程對等組內,設定了一個虛擬的教學空間,教師和學生的.教學和學習活動被限制在每個課程對等組內,這樣不僅很好地反映了現實中的課程教學,也較好地解決了P2P網絡應用面臨的節點的組織和管理問題。

用户要加人本平台,首先要進行註冊,註冊分為教學管理員、教師和學生三種身份,註冊內容有:姓名,密碼,身份。註冊登錄後即成為基本對等組NetPeerGroup中的一員。教學管理員能建立與撤消各個課程對等組,同時要為新建立的課程對等組指定教師作為該課程對等組的管理員;學生要加人該課程對等組需要向教師提出申請經批准之後方可加人。教師和學生登錄平台之後選擇進人某門課程對等組就可以進行交流、教學、資源共享等各項活動。

2.2系統結構設計

如圖1所示。中心服務節點用來控制用户的認證及註冊信息.幫助完成用户節點間的初始連接。教師和學生節點之間直接互連實現在線文字交流、資源文件共享及課堂教學直播等功能,不需依賴中心服務節點。如中心服務節點故障,則隻影響新用户的加人,老用户間仍舊可以自行組織交互,充分體現了P2P的精髓。

2.3功能設計

系統各功能模塊設計描述如下:

1)認證及註冊管理

首先中心服務節點獲取請求認證用户節點的管道ID值。在認證信息庫裏尋找匹配用户節點發送來的用户名/口令/身份認證信息。如果通過了認證匹配,發送一個認證通過迴應消息給用户節點。同時更改註冊信息庫裏當前用户節點的管道ID值。如果沒有通過認證匹配,就發送一個認證未通過的迴應消息給用户節點。然後根據用户節點在註冊信息庫裏的註冊信息,向用户節點發送其所註冊的每門課程對等組及其組成員的信息列表。當用户節點退出平台時,向中心服務節點及其所屬的每門課程對等組的在線成員發送註銷消息。這樣其所屬課程對等組的所有在線成員節點就可在其組成員信息列表中修改此用户節點的在線狀態。

2)在線文字交流

在使用教學平台的過程中,學生與學生之間需要討論,教師和學生之間需要答疑。本模塊的功能設計中,用户節點可以看到所在課程對等組中教師和學生的在線情況,可以選擇兩人交流形式或多人交流形式,在交流時,大家可以看到彼此輸人的文字,類似QQ軟件的私聊和羣聊功能,給用户提供方便的點對點的交流。 利用JXTA實現用户實時通訊,其核心在於管道((Pipe)技術的實現。其中管道是JXTA中對等點之間傳輸數據的通道,它為開發人員在網絡底層的IP和路由之上建立了一個邏輯連接。在JXTA參考實現中提供了三種管道:單向管道((JxtaUnicast)、單向安全管道((JxtaUnicastSecure)、組播管道((JxtaPropagate)。本教學平台的兩人交流和多人交流分別採用單向安全管道和組播管道。基本的過程是:接收方根據管道廣告創建一個輸人管道,並等待消息到達;發送方得到了接收方的管道廣告,創建對應該管道廣告的輸出管道。首先它給所有知道的對等點和彙集對等點發送一個管道綁定請求消息。接收方收到管道綁定請求消息後,檢查它的緩存看是否有匹配的管道,如果有,它就回復一個管道綁定響應消息,其中包含它的對等點廣告。發送方收到管道綁定響應消息後,從其中的對等點廣告中提取出端點信息創建一個輸出管道;創建後,發送方就可以給接收方發送消息了。

3)教學資源文件共享

本模塊設計課程對等組內的所有用户都可以共享自己的教學資料和學習資料給其他用户使用,共享的資料可以是文字、圖片、聲音或視頻文件等。在此模塊中,用户可以通過打開文件對話框的方式共享本地的文件,也可以從共享列表中移除不想再共享的文件。用户可以搜索其他用户共享的文件。通過將各個用户的資料共享出來供其他用户下載閲讀,每個用户都可以成為資源的提供者和使用者,從而達到信息傳播與共享的目的。C/S,B/S模式的資源共享,資源都位於中心服務器,如果中心服務器出現故障,那麼共享資源不再可以正常下載和閲讀;本教學平台採用P2P模式的資源共享,即使中心服務節點出現故障,用户節點間仍然可以正常共享和下載。本教學平台設計為學生用户也可以提供資源,不同於一般的教學平台中只能教師用户才能提供資源,從教師節點下載的教學資料,可以共享給其他學生節點使用,從而擴大了提供資源的用户範圍。

本模塊採用JXTA中的CMS(ContentManagerService)來實現,CMS是一個在對等組中的多個對等點之間共享內容的服務,它充當在JXTA對等點之間共享並交換內容的框架。該服務使得對等點可共享自己的內容以及定位和獲取其他對等點的內容。

4)文件傳送

文件傳送分為一對一傳送和一對多傳送。教學資源文件共享功能用於文件接收方去搜索並下載才能獲取文件,而文件傳送用於文件發送方主動的把文件直接傳送給接收方。當教師佈置作業、練習、實驗時,可以一下子給課程對等組內的所有學生髮送,也可以選擇學生來發送。學生之間也可以互相直接傳送文件。

5)課堂教學直播

本模塊設計的課堂教學直播,可以用於教師和學生都在機房上課的場合,也可以用於教師和學生異地的場合。將教師上課的音頻流、視頻流、教師機的電腦屏幕流傳送到學生機,可以模擬出教師上課的情景。本模塊包括媒體流採集和網絡傳輸兩個子模塊。利用基於Java的多媒體框架JMF(JavaMediaFrame)技術,將教師上課的音頻流、視頻流用聲卡、攝像頭等音視頻捕獲設備來捕獲;電腦屏幕流的捕獲使用JDK提供的Robot對象來對屏幕進行連續的截屏操作,然後利用JMF將這些圖片轉換成連續的動畫作分數據源。網絡傳輸模塊使用RTP進行實時流媒體的傳輸。

JAVA媒體框架((JavaMediaFramework,JMF)是一組用來將時基媒體集成到JAVA應用程序和JAVA小應用程序的應用程序編程接口。JMF主要包括兩部分:JMFAPI和JMFRTPAPIoJMFAPI主要功能是捕獲、處理、存儲和播放媒體,支持媒體捕獲並能夠滿足應用程序開發人員對媒體處理和回放進行控制的要求;JMFRTPAPI提供實時傳輸RTP的支持,主要實現在網絡上傳輸和接收媒體流。

6)教學課件點播

在課程對等組的共享教學資源的列表中,選擇課件來點播。共享的課件可以是教師提供,也可以是學生提供。每個用户節點,都要做好兩手準備,即要作為課件點播的服務器,又要作為課件點播的客户機。自己共享的媒體資源如果被別的節點點播,自己就充當服務器的角色,反之,就充當客户機的角色。實現的技術亦是JMF。

7)教學公告

教學公共板用於發佈一些簡短的臨時性的通知或公告,主要是面向課程對等組成員進行廣‘播,比如教師通知學生收看作業。公告板的工作原理與在線文字交流的多人交流基本一致,都是採用組播管道(JxtaPropagate)進行通信,這樣可以在多個對等點之間對等的傳輸消息而不需要服務器的支持。

3、結束語

本文通過構建基於P7.P的多媒體教學平台,教師可以在任何地方給學生_h.課,資源和服務分散到教師節點和學生節點中,充分體現了P2P模式的“內容位於邊緣”,不同於C/S模式的“內容位於中心”。把P2P應用到教學平台中,能充分利用各節點的資源,使教師和學生、學生和學生之間方便的交流和共享資源,並且利用JXTA來開發,系統的擴展性也好。

  • 文章版權屬於文章作者所有,轉載請註明 https://xuewengu.com/flhy/duomeiti/02pd4.html