一種基于眾核平臺的流媒體流量發生系統的制作方法
【技術領域】
[0001]本發明涉及一種流媒體網絡流量發生技術,具體是在B/S (瀏覽器/服務器)及分布式系統架構下基于Tilera(特樂拉)眾核平臺高強度的流媒體網絡流量發生系統。
【背景技術】
[0002]互聯網屬于實踐性較強的領域,相關的研究成果只有在經過實踐驗證后才會被人們所接受。因此,研究人員需要網絡試驗床來驗證新的網絡體系架構、協議、服務等。作為專門用于模擬產生大量流媒體網絡流量的流媒體流量發生器在網絡性能研究、網絡服務質量研究、新協議的測試與部署、網絡安全性研究等領域具有不可或缺的作用。
[0003]現有的針對流媒體類型的網絡流量進行模擬的流媒體流量發生器按其實現方法可分為兩種:基于流媒體流量模型通過自身構造流媒體類型數據包來產生流媒體流量的流媒體流量發生器和基于流媒體用戶行為模型發起對真實流媒體服務器請求來產生流媒體網絡流量的流媒體流量發生器。前者由于自身構造數據包產生流媒體流量的方式相對有后者而言,其所模擬產生流媒體流量的速率和真實性不足。后者基于流媒體用戶行為模型的流媒體流量發生器通過對真實的流媒體服務器發起請求后,流媒體服務器返回大量流媒體數據包來產生流媒體流量。雖然上述的流媒體流量發生器可以模擬一定量的流媒體網絡流量,但由于它們都是在c/s(客戶機/服務器)架構下基于普通硬件平臺而設計的,操作不方便,其所模擬產生的流媒體并發用戶數和流媒體流量速率較低且僅能滿足千兆級以下的實驗網的需求。隨著互聯網中流媒體用戶的不斷增多,上述的流媒體流量發生器無法模擬未來大規模網絡中大量流媒體用戶同時上網的復雜情況,進而難以滿足千兆級以上的實驗網的需求,并且它們還存在對不同情景下模擬的流媒體流量真實性差的問題。
[0004]因此,提供一種在B/S (瀏覽器/服務器)及分布式系統架構下基于Tilera (特樂拉)眾核平臺強大的并行處理能力和網絡吞吐率的高強度的流媒體網絡流量發生系統以模擬未來大規模網絡中大量流媒體用戶同時上網的復雜情況,進而滿足千兆級以上的實驗網的需求就顯得尤為重要。
【發明內容】
[0005]針對以上現有技術的不足,本發明提供了一種在B/S (瀏覽器/服務器)及分布式系統架構下基于Tilera(特樂拉)眾核平臺高強度的流媒體網絡流量發生系統。
[0006]本發明解決上述技術問題的技術方案如下:提出一種基于Tilera眾核平臺高強度的流媒體網絡流量發生系統,包括:系統界面管理模塊、服務承載模塊和眾核平臺上的流媒體流量發生模塊,其中:系統界面管理模塊提供系統用戶對不同情境下流媒體流量參數進行配置以及對數據庫中存儲的系統模擬產生的流媒體流量信息進行讀取,對流媒體資源庫進行操作;Tilera眾核設備上的流媒體流量發生模塊接收服務承載模塊下發的命令,模擬不同情景參數下的流媒體,控制多個基于Tilera眾核設備上的分別對應分布式架構下的Tilera眾核設備的流媒體流量發生子模塊,流媒體流量發生模塊包括流媒體并行訪問請求、流媒體數據接收、日志記錄和流量分析處理四個子模塊,并行訪問請求子模塊根據用戶配置的情景參數以及流媒體資源庫管理子模塊并行發起流媒體數據請求;流媒體數據接收子模塊并行接收互聯網中的流媒體服務器返回的視頻流數據;日志記錄子模塊依據流媒體數據接收子模塊接收到的各類流媒體數據信息進行記錄。
[0007]其中,系統界面管理模塊又包括流媒體用戶行為參數配置子模塊、流量管理子模塊、并發用戶信息管理子模塊、流媒體資源庫URL(統一資源定位符)管理子模塊和系統流量統計子模塊,而服務承載模塊又包括數據庫模塊和網頁服務器子模塊,其中網頁服務器子模塊又包括系統配置文件承載子模塊、通信承載子模塊和數據庫操作承載子模塊,而眾核平臺上的流媒體流量發生模塊包括分布在分布式系統內的多個Tilera眾核設備上的流媒體流量發生子模塊I?N。
[0008]系統界面管理模塊為系統用戶提供一個易操作且友好的Web (網頁)網頁界面,其中:流媒體用戶行為參數配置子模塊支持系統用戶對不同情境下的參數進行配置;流量管理子模塊為系統用戶提供一個對流媒體流量發生模塊的開啟與關閉操作控制;并發用戶信息管理子模塊支持系統用戶對服務承載子模塊中的數據庫子模塊內存儲的系統所模擬的每個虛擬流媒體用戶的信息進行查詢及修改;流媒體資源庫管理子模塊支持系統用戶對流媒體資源庫的增刪改查操作;系統流量統計子模塊對數據庫所存儲的底層分布式內各臺Tilera眾核設備上的流媒體流量發生模塊模擬產生的上/下行流量進行匯總統計及展示。
[0009]網頁服務器子模塊是系統界面管理模塊與流媒體流量發生模塊進行交互的重要橋梁,通過與數據庫子模塊的配合,實現上層系統界面管理模塊與底層分布式架構下的流媒體流量發生模塊的交互功能。其中:數據庫子模塊負責對流媒體資源庫和流媒體流量發生模塊模擬產生的流量信息進行分類存儲,以供其他模塊進行讀取等操作;系統配置文件承載子模塊負責接收系統界面管理模塊的參數配置子模塊所發送的各項配置參數,以便供底層分布式流媒體流量發生模塊進行啟動時對該配置文件進行讀取,完成眾核平臺上的流媒體流量發生模塊的初始化;通信承載子模塊負責接收系統用戶在流量發生模塊的管理子模塊下發的不同操作命令(如:open/shutdown)及分布式架構下對應Tilera眾核設備的IP (網絡之間互連的協議)地址,并根據該IP (網絡之間互連的協議)地址及對應命令與某個眾核平臺設備上的流媒體流量發生模塊進行通信,以此來控制對應的眾核平臺設備上的流媒體流量發生模塊;數據庫操作承載子模塊支持上層的系統界面管理模塊對數據庫中數據進行查詢及修改和眾核設備上的流媒體流量發生模塊進行數據存儲操作;數據庫子模塊負責對流媒體URL (統一資源定位符)資源庫和底層分布式架構下流媒體流量發生模塊模擬產生的流量信息進行分類存儲,以供其他模塊進行讀取等操作。
[0010]眾核平臺上的流媒體流量發生模塊負責接收服務承載模塊下發的相應命令,實現不同情景參數下模擬產生流媒體流量的功能,該模塊包含N個基于Tilera眾核設備高強度的流量發生子模塊,它們分別對應分布式架構下的Tilera眾核設備I?N,流量發生子模塊通過分布式的架構控制一系列N臺Tilera眾核設備相互配合,進而模擬產生更大更逼真的流媒體網絡流量,從而對系統用戶的網絡設備性能測試、網絡協議評估提供更好的支持。[0011 ] TiIera眾核設備上的流媒體流量發生模塊包括,流媒體并行訪問請求、流媒體數據接收、日志記錄和流量分析處理四個子模塊,其中:并行訪問請求子模塊根據用戶配置的情景參數以及流媒體URL(統一資源定位符)快速并行的發起流媒體數據請求;流媒體數據接收子模塊則快速并行的接收互聯網中的流媒體服務器返回的視頻流數據;日志記錄子模塊則依據流媒體數據接收子模塊所接收到的各類流媒體數據信息進行快速的記錄操作;流量分析處理子模塊對日志記錄子模塊所記錄的各類信息進行過濾處理。系統將Tilera眾核平臺上流媒體流量發生模塊的多個處理器核分成一系列并行任務組(如以每4個分為一個并行任務組),以此把每臺Tilera眾核設備又劃分成多個并行的任務組進行并行工作,以此模擬產生大量的流媒體并發用戶數。系統依據CPU (中央處理器)處理器核的親和性,將每個并行任務組中的各子模塊對應的任務綁定到具體的處理核上。進而把每臺眾核設備上的多個處理器核分為:主控核、并行訪問請求核、數據接收核、日志記錄核和流量分析處理核。
[0012]上述的各處理器核之間通過Tilera眾核平臺提供的片上網絡機制,即動態分布式緩存系統,可讓每個處理器核的本地緩存,快速的共享于眾核設備上的所有處理器核,且每個處理器核所有的二級緩存可以被眾核設備中的所有處理器核高速訪問,均衡地分配緩存負載。
[0013]系統通過眾核設備上提供的緩存控制命令來開啟三級緩存,對緩存進行進一步優化,通過規