摘要: | 近年來,隨著寬頻網路和多媒體的發展,大多數的使用者習慣透過網路觀看感興趣的視頻。為了提供大量使用者多媒體服務,許多多媒體應用程式的開發者實現大型的串流系統,如此的系統將遇到擴展性和服務品質的問題。 考慮到擴展性和強健性,多數的多媒體系統以P2P重疊網路取代傳統的客戶端-伺服器串流系統來開發與實現。P2P串流系統將工作分散至參與的使用者上,每位在P2P串流系統的使用者與彼此相互連結並且貢獻或消耗彼此的資源,因此,P2P串流系統更適用於提供串流服務給大量的使用者。 為了散佈即時的多媒體給大量使用者,我們實現一個基於GRAPES函式庫之即時串流系統,GRAPES 函式庫是一個開源碼,其為P2P串流系統提供了一個有效率的開發環境。 在這篇論文中,我們實現基於GRAPES函式庫之即時串流系統,開發的程式保有GRAPES函式庫之優點:模組化。由於我們的需求和考量,我們修改其中的網路模組為TCP,並且詳細地說明拓樸管理協定的關鍵設計與議題,其中包含訊息格式、拓樸管理規程與機制、重要的參數以及可視的觀測系統。 ;Nowadays, with development of broadband networks and multimedia, most people are used to watch internet videos which they are interested. In order to provide multimedia services from one source to a huge number of users, many developers of multimedia applications may implement a large-scale streaming (i.e., multimedia traffic) system. However, such a system would encounter many difficult issues such as the scalability and the quality of the service. Taking the scalability and the robustness of the system into consideration, many streaming systems are developed and implemented on the basis of P2P overlay network instead of the traditional client-server streaming system. The P2P streaming system distributes the loading from the server to every participative peer, and every peer in the P2P streaming system interconnects with each other to contribute and consume the resources. Hence, the P2P streaming system is more appropriate to provide the streaming services for a large number of users than the other system. With the purpose of disseminating the live multimedia to a large number of users, we implement a live multimedia streaming system which runs on an embedded system based on the GRAPES library, which is an open source providing an efficient environment for developing a P2P streaming system. In this thesis, we present a P2P streaming system based on the GRAPES library for multimedia streaming. By using the benefits of the GRAPES library, the implemented of the P2P streaming system is modularized. Furthermore, due to our requirements and considerations, we modify the Network Helper module to support TCP protocol. We describe the key designing issues of topology manager protocol in detail, including the message formats, the procedures and mechanisms of the topology manager, important parameters, and the visible monitor system. |