Chapter 4 系統環境
4.3 Test Data Sources
關於測試期間所需的測試資料來源及數量,說明如下:
名稱
項目 測試來源 數量
測試連線 無線基地台 無線基地台1台
測試檔案傳輸 無編碼之文字檔案 檔案200個
測試編碼 文字檔案及影音檔案 每種檔案類型各5個
測試解碼 編碼過的片段檔案 片段檔案每組各200個
Chapter 5 計畫成果
5.1 程式運作畫面:
圖 5-2 手機上之運作畫面
5.2 程式操作流程:
圖為啟動Android手機的起始畫面;在此計劃實作的操作概念上,首
先需啟動瀏覽器,連上提供種子檔的網頁伺服主機,因此需點選上圖
之Browser圖示。
打開Android內建之瀏覽器後,只要有連接網際網路,即可看到Google
的搜尋畫面。接著按下手機上之menu按鍵,即可輸入欲前往之網址。
輸入提供種子檔下載的網頁。
下載種子檔,在種子檔名上長按軌跡球鍵,即可出現下載選單。
回到主畫面,並滑動點開程式集拖盤;用手指輕點CPS子程式之圖示,
即可進入CPS子程式之主畫面。
進入CPS程式,可見三個選單按鈕,分別為檔案列表、下載狀態、傳 送訊息。
檔案列表會自動列出先前曾下載之種子檔案;下載狀態則會顯示目前
所點選之種子檔下載程度百分比;傳送訊息可以讓使用者和其他正在
下載相同檔案之使用者交換文字訊息。
尚未點選種子檔時,下載狀態的畫面。
點選傳送訊息,可由上方之下拉式選單選擇欲傳送之使用者,下方欄
位則為欲傳送之訊息,對方傳來之訊息會顯示在圖之空白處。
按下選擇之種子檔後,會跳至下載狀態畫面,下載進度會隨著已下載
之檔案片段數量而增加。狀態條下方會列出種子檔之檔案資訊,如提
供之Server位址、MD5值、檔案名稱及分割大小與片段等。
當已經下載足夠的片段檔時,CPS程式會開始解碼並合併片段檔,以
還原出原始檔案。
當合併完成後,會顯示「下載完成」並且出現開啟檔案之按鈕,讓使
用者可直接開啟檔案來瀏覽。
按下開啟檔案後,即會開啟剛剛下載成功的檔案,範例中為一張bmp
圖片檔。
5.3 結論:
本次計畫最大的貢獻在於發展一套車載隨意網路中的行動同儕檔案分 享之系統架構,藉由此架構,我們可發展出一個車載網路的檔案分享模式。
由於 android 目前尚未開放藍芽方面的 Library,Android 手機內建的 WiFi 連線中亦沒有 Ad-hoc 模式,因此在實做此國科會計畫的過程中,我們採用 Server 來模擬 peer 和 peer 之間的傳輸,然而未來 WiMax 及車載電腦網路發展成熟後,
車輛對車輛間的傳輸可行,此時只要修改傳輸管理部份之程式碼,即可將此計畫 所發展之模型套用於車在隨意網路之中,達到網路編碼的最大優勢,並且讓車輛 間可以藉由檔案片段分享,而不需要持續仰賴對單一 Server 的連線,即使在沒 有網際網路環境之下,只要有足夠的分享片段,即可完成資料的分享。
本次計劃已完成在Google Android 平台上實現網路編碼為基礎的P2P file distribution 服務的相關Java open-source codes。參與這個研究計劃的學生學到了 如何整合通訊技術(network coding)與網路技術(P2P file distribution)而更有效地 利用先天上稀有的無線網路資源。而Google Android 平台是以Linux Kernel 為基 礎。讓學生早日接觸Linux 也符合國家的開放程式碼政策。我國電腦產業正面臨 轉型。業界已逐漸了解開放原始碼系統將可以幫忙增加毛利與產品附加價值。本 計畫所培養的研究生將來可就近投入高雄軟體園區的發展。
Attachment 1 : Glossary
Client 指用戶端電腦。
Client-Server 伺服器 ( Server ) 統合管理系統資源之配置與使用方式,以 供用戶端 ( Client ) 應用。而網路作業系統最主要功能即在 於整合區域網路中的軟體與硬體資源,整體而有效率又安全的 提供如檔案/列印、應用程式、Internet/Intranet 支援、檔案 系統以及其他伺服器端的各式資源之共享等各式服務。
CMMI 整 合 能 力 成 熟 度 模 式 ( Capability Maturity Model Integrated, CMMI )。1986年由美國卡內基美隆大學的「軟體 工程學院 ( SEI )」受到國防部委託而發展的,可以幫助軟體 開發者改善軟體流程。
Database 記錄資料的地方,提供新增、刪除、更新記錄的功能。
Qualcomm 高通公司 (NASDAQ:QCOM) 是一個位於美國加州聖地亞哥(San Diego) 的無線電通信技術研發公司, 由 Irwin Jacobs 和 安 德魯·維特比 創建於 1985年。
Eclipse Eclipse是著名的跨平台的自由集成開發環境(IDE)。最初主 要用來Java語言開發,但是目前亦有人通過外掛程式使其作為 其他計算機語言比如C++和Python的開發工具。
Google Google公司(英語:Google Inc.,NASDAQ:GOOG、LSE:GGEA),
是一家美國的上市公司,於1998年9月7日以股份有限公司的型 式創立,設計並管理一個網際網路搜尋引擎;Google網站於1999 年下半年啟動;2004年8月19日,Google公司的股票在納斯達克
(Nasdaq)上市,成為公有股份公司。
IEEE 電 機 電 子 工 程 師 學 會 ( Institute of Electrical and Electronics Engineers,簡稱為IEEE)是一個建立於1963年1 月1日的國際性電子技術與電子工程師協會,亦是世界上最大的 專業技術組織之一,擁有來自175個國家的36萬會員。
electronics)在 1968 年共同創辦 Intel 公司,將高階晶片 設計能力與領導業界的製造能力結合在一起。
Internet Internet 就是讓電腦、全世界各 LAN ( Local Area Network )、
MAN ( Metropolitan Area Network )、資訊、和人們彼此互相 連接,互相通訊共享資源,而形成的一個全球性的 WAN ( Wide Area Network )。
JAVA 由昇陽公司 ( Sun Microsystems ) 所發展出的跨平台程式語 言。而在 JAVA card 領域中現行的 API 已發展到 2.2 版本。
JRE 爪哇執行環境(Java Runtime Environment,簡稱JRE)是一個 軟體,由昇陽電腦所研發,JRE可以讓電腦系統執行爪哇應用程 式(Java Application)。
MySQL PremiumSoft MySQL Studio ( MySQL GUI )是一套 MySQL 資料 庫系統提供報告及監控的圖形化資料庫管理工具。它的一些主 要功能包括︰輸入 / 輸出資料、 資料移轉、計畫表備份、
Visual Query 建立工具以及報告建立工具。
RAM 隨機存取記憶體(英語:Random Access Memory,RAM)又稱作
「隨機存取記憶體」,是與CPU直接交換資料的內部記憶體,也 叫主記憶體。它可以隨時讀寫,而且速度很快,通常作為作業 系統或其他正在執行中的程式的臨時資料儲存媒介。
ROM 唯讀記憶體(Read-Only Memory,ROM)是一種半導體記憶體,
其特性是一旦儲存資料就無法再將之改變或刪除。通常用在不 需經常變更資料的電子或電腦系統中,資料並且不會因為電源 關閉而消失。
Server 指伺服器端電腦。
SQL Structured Query Language,關連式查詢語言,用來定義資料 庫的結構,或是利用SQL 對資料庫執行一些查詢、增加、刪除、
更新記錄,到目前為止,SQL 是第一個,也是唯一的標準資料 庫語言,受到廣泛的接受
Wifi Wi-Fi是一個無線網路通信技術的品牌,由Wi-Fi聯盟(Wi-Fi Alliance)所持有。目的是改善基於IEEE 802.11標準的無線網 路產品之間的互通性。
WWW 指一群能相互連結的主機,透過容易操作的超連結介面,讓使 用者可以方便也存取各主機上的網頁。全球資訊網能支援由 HTML ( 超文件標示語言 ) 寫成的文件,包括語音、動畫、圖
Attachment 2 : References
[1] R. Schollmeier, I. Gruber, and M. Finkenzeller, ”Routing in Mobile Ad Hoc and Peer-to-PeerNetworks,A Comparison,”ProceedingsofInternational Workshop on Peer-to-Peer Computing, 2002.
[2] Gnutella,http://gnutella.wego.com/
[3] B. Cohen, “BitTorrent Protocol Specification”, http://www.bittorrent.com/protocol.html
[4] NAPSTER,http://www.napster.com
[5] T. Kato, N. Ishikawa, H. Sumino, J. Hjelm, Y. Yu, and S. Murakami, ”A platform and applications for mobile peer-to-peercommunications,”2003.
http://www.research.att.com/_rjana/Takeshi_Kato.pdf
[6] Standard Specification for Telecommunications and Information Exchange BetweenRoadside and Vehicle Systems - 5 GHz Band Dedicated Short Range Communications(DSRC) Medium Access Control (MAC) and Physical Layer (PHY) Specifications,September 2003.
[7] Google Android,http://code.google.com/android/
[8] Alienware Android cell phone,http://www.dialaphone.co.uk/blog/?p=1076 [9] HTC Dream with Android,http://htcdream.com/
[10] Uichin Lee, Joon-Sang Park, Joseph Yeh, Giovanni Pau, Mario Gerla,
“CodeTorrent: Content Distribution using Network Coding in VANETs,”The First International Workshop on Decentralized Resource Sharing in Mobile Computing and Networking (MobiShare'06), Los Angeles, CA, September, 2006.
[11] Scalable Networks,http://www.scalable-networks.com.
[12] A. Nandan, S. Das, S. Tewari, M. Gerla, and L. Klienrock, ”AdTorrent: Delivering Location Cognizant Advertisements to Car Networks,”WONS’06, Les Menuires, France January 2006.
[13] A. Nandan, S. Das, G. Pau, M. Sanadidi, and M. Gerla, ”Cooperative downloading in vehicularad hocwirelessnetworks,”Proc.International Conference on Wireless On demand Network Systems and Services, 2005.
[14] Rudolf Ahlswede, Ning Cai, Shuo-Yen Robert Li, and Raymond W. Yeung,
“Network Information Flow,”IEEE Transactionson Information Theory,Vol. 46, No. 4, July 2000, pp. 1204-1216.
“A Random Linear Network Coding Approach to Multicast,”IEEE Transactions onInformation Theory, Vol. 52, No. 10, October 2006, pp.
4413-4430.
[17] C.Gkantsidisand P.Rodriguez,“Network Coding forLargeScaleContent Distribution,”IEEE INFOCOM 2005, pp. 13-17.
[18] M. Conti, E. Gregori, and G. Turi, “A Cross-Layer Optimization of Gnutella for Mobile Ad hoc Networks,”ACM MobiHoc 2005, pp. 343-354.
[19] Matthias Grossglauser and David N. C. Tse, “Mobility Increases the Capacity of Ad HocWireless Networks,”IEEE/ACM Transactions on Networking, Vol. 10, No. 4, August 2002, pp. 477-486.
[20] Jonathan S. K. Chan, Victor O. K. Li, and King-Shan Lui,“Performance Comparison of Scheduling Algorithms for Peer-to-Peer Collaborative File
Distribution,”IEEE Journal on Selected Areas in Communications, Vol. 25, No.
1, January 2007, pp. 146-154.
[21] Capability Maturity Model-Integrated v1.2 ( CMMI v1.2; 軟體發展成熟度模 型 )
[22] S.-Y.R.Li,R.W.Yeung,and N.Cai,“LinearNetwork Coding,”IEEE Trans. Information Theory, vol. 49, no. 2, pp. 371-381, Feb.2003.
[23] T.Ho,M.Me´dard,M.Effros,and D.Karger,“TheBenefitsofCoding over Routing in a Randomized Setting,”Proc.IEEE Int’lSymp.Information Theory, June/July 2003.
[24] S. Jaggi, P. Sanders, P.A. Chou, M. Effros, S. Egner, K. Jain, and L.M.G.M.
Tolhuizen,“PolynomialTimeAlgorithmsforMulticastNetwork Code Construction,”IEEE Trans.Information Theory, vol. 51, no. 6, pp. 1973-1982, June 2005.
[25] C. Fragouli, J.-Y.L.Boudec,and J.Widmer,“Network Coding:An Instant Primer,”ACM SIGCOMM ComputerComm.Rev.,vol.36,no.1,pp.63-68, Jan.
2006.
[26] Rick Rogers, John Lombardo, Zigurd Mednieks, Blake Meike. Android Application Development Programming with the Google SDK. O'REILLY.
[27] Reto Meier. Professional Android Application Development. Wrox [28] Ed Burnette . Hello, Android, First Edition. O'REILLY.
[29] Elliotte Rusty Harold . Java Network Programming, 3rd Edition. O'REILLY.
[30] Wei-Meng Lee. Android Application Development: Create Modify Reuse. Wrox