亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種電信運(yùn)營商參與對等計(jì)算技術(shù)的監(jiān)管服務(wù)器的實(shí)現(xiàn)方法

文檔序號(hào):7891908閱讀:215來源:國知局
專利名稱:一種電信運(yùn)營商參與對等計(jì)算技術(shù)的監(jiān)管服務(wù)器的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明是一種基于P4P(Proactive network Provider Participation for P2P, 電信運(yùn)營商主動(dòng)參與P2P網(wǎng)絡(luò))技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器的實(shí)現(xiàn)方法,本發(fā)明提出了一種基于P4P技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器的原型系統(tǒng),從接口設(shè)計(jì)需求和理論分析兩方面探討了網(wǎng)絡(luò)監(jiān)管服務(wù)器的接口實(shí)現(xiàn),重點(diǎn)考慮其簡單性、語義豐富性、可擴(kuò)展性、穩(wěn)定性和健壯性等要求和最大化網(wǎng)絡(luò)鏈路利用率。屬于對等網(wǎng)絡(luò)應(yīng)用領(lǐng)域。
背景技術(shù)
作為改變現(xiàn)有Internet應(yīng)用模式的主要技術(shù)之一,P2P (peer to peer,點(diǎn)對點(diǎn)) 實(shí)際上已經(jīng)成為內(nèi)容傳送的一種基礎(chǔ)技術(shù)。但P2P消耗了 ISP的大部分網(wǎng)絡(luò)帶寬資源,在很大程度上直接導(dǎo)致了運(yùn)營商“增量不增收”的問題,影響到ISP的其他應(yīng)用。P2P對網(wǎng)絡(luò)的沖擊主要來源于以下兩個(gè)方面(1)P2P應(yīng)用不了解網(wǎng)絡(luò),導(dǎo)致流量在ISP內(nèi)部不必要地穿越很多鏈路,或者導(dǎo)致不必要的跨ISP的流量。(2) ISP以前的網(wǎng)絡(luò)流量控制機(jī)制,如流量工程等,對P2P應(yīng)用不再有效,因?yàn)镻2P可以從多個(gè)源獲取數(shù)據(jù)并隨時(shí)切換,是高度分散、動(dòng)態(tài)和不理會(huì)網(wǎng)絡(luò)層狀態(tài)的,導(dǎo)致ISP花費(fèi)了很多計(jì)算代價(jià)得出的優(yōu)化路徑失去意義。由于以上原因,P2P—直被運(yùn)營商視為不受歡迎的應(yīng)用,屢屢有運(yùn)營商限制P2P的事件發(fā)生。雖然運(yùn)營商也為此做出了很多工作,但是收效甚微。運(yùn)營商采取的一種方法是安裝P2P cache設(shè)備來減少P2P流量,但是這些設(shè)備需要能區(qū)分不同的P2P協(xié)議并對特定的應(yīng)用作出不同的設(shè)計(jì),這樣這種方法的通用性就被降低了 ;另一種方法是使用流量整形設(shè)備限制P2P流量,這些設(shè)備依賴與DPI (Deep Packet Inspection,深度包檢測技術(shù)) 或者其他的P2P流量識(shí)別技術(shù),但是不同的P2P應(yīng)用使用不同的控制信息,并且許多P2P協(xié)議使用加密技術(shù)或者動(dòng)態(tài)端口號(hào)來躲避檢測,因此此方法的有效性也有限。這些方法由于缺少P2P應(yīng)用與之配合工作,其結(jié)果要么是降低了 P2P應(yīng)用的性能,要么是耗資巨大。在此背景下,一種可以讓P2P和網(wǎng)絡(luò)運(yùn)營商通過直接通信更好地合作的新技術(shù)一-P4P應(yīng)運(yùn)而生。其目的是為了加強(qiáng)ISP和P2P應(yīng)用程序的通信,降低骨干網(wǎng)絡(luò)傳輸壓力和運(yùn)營成本,并提高P2P應(yīng)用程序的性能。根據(jù)Verizon的反饋,使用P4P技術(shù),P2P用戶平均下載速度提高60%,光纖到戶用戶提高205%飛65%。此外,運(yùn)營商內(nèi)部數(shù)據(jù)傳送距離減少了 84%,用戶有58%的數(shù)據(jù)是來自同城,較傳統(tǒng)P2P的6. 3%比例有了近10倍提升。P2P 過于強(qiáng)調(diào)對等,每個(gè)節(jié)點(diǎn)之間的交換完全是無序的。一個(gè)南京的用戶,既可能和北京的用戶進(jìn)行文件片段的交換,也可能和遠(yuǎn)在美國的某用戶進(jìn)行交換。顯然,無序的交換導(dǎo)致了無謂的跨地區(qū)甚至是跨國的流量旅行,這耗費(fèi)了寶貴的國內(nèi)和國際帶寬資源,代價(jià)巨大。如果正好用戶都在同一個(gè)地區(qū),那么,本地化的交換的成本就會(huì)大大降低。這也正是P4P的簡單原理一讓P2P也玩同城。與P2P隨機(jī)挑選Peer不同,P4P協(xié)議可以協(xié)調(diào)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù),能夠有效選擇節(jié)點(diǎn),從而提高網(wǎng)絡(luò)路由效率。仍以上述例子來說,南京的用戶就可以優(yōu)先和南京同城的用戶來實(shí)現(xiàn)文件片段的交換,再擴(kuò)展至較遠(yuǎn)的地區(qū),有十分的必要時(shí),才會(huì)出國進(jìn)行文件片段交換。當(dāng)然,P4P的運(yùn)行機(jī)制,要遠(yuǎn)遠(yuǎn)超過同城交換的概念,它還會(huì)根據(jù)用戶的上行、下載帶寬進(jìn)行綜合判斷,以進(jìn)行最有效選擇,最大化整體交換的效率。P4P是一個(gè)靈活的、輕量級(jí)的應(yīng)用框架,他允許網(wǎng)絡(luò)供應(yīng)商顯式地為各種應(yīng)用如 P2P應(yīng)用提供網(wǎng)絡(luò)信息,它的主要思想是在P2P應(yīng)用與網(wǎng)絡(luò)運(yùn)營商之間開啟顯式的通信接口,P2P客戶可以調(diào)用該接口得到網(wǎng)絡(luò)信息,從而能夠更有效地利用網(wǎng)絡(luò)資源,提升P2P應(yīng)用性能。P4P的架構(gòu)包括控制平面、數(shù)據(jù)平面、管理平面。其中數(shù)據(jù)平面是可選的,主要用于鑒別應(yīng)用流量并對其進(jìn)行排序,而管理平面的目標(biāo)是檢測控制平面的行為,目前的研究主要集中于控制平面。P4P的控制平面中引入了網(wǎng)絡(luò)監(jiān)管服務(wù)器iTracker作為提供網(wǎng)絡(luò)信息的窗口, iTracker使網(wǎng)絡(luò)運(yùn)營商和P2P應(yīng)用共同進(jìn)行流量控制成為可能,iTracker也增加了 P4P的可部署性和可擴(kuò)展性,它是網(wǎng)絡(luò)運(yùn)營商與應(yīng)用進(jìn)行交互的門戶。iTracker可以提供三種形式的網(wǎng)絡(luò)信息網(wǎng)絡(luò)狀態(tài)/拓?fù)?、網(wǎng)絡(luò)運(yùn)營商的策略/指導(dǎo)意見和網(wǎng)絡(luò)能力。P4P框架中不指定具體的信息格式,而只提供公共的信息框架。網(wǎng)絡(luò)監(jiān)管服務(wù)器與應(yīng)用之間傳遞什么樣的消息直接決定了 P4P的效率,P4P的接口設(shè)計(jì)必須要簡單直觀,能夠保證有足夠的網(wǎng)絡(luò)信息供應(yīng)用選擇,網(wǎng)絡(luò)信息必須與應(yīng)用無關(guān),且對網(wǎng)絡(luò)的請求應(yīng)該避免揭示用戶的信息。網(wǎng)絡(luò)監(jiān)管服務(wù)器的重要性不言而喻,它是整個(gè)P4P框架中通信的橋梁,因此研究和設(shè)計(jì)穩(wěn)定和健壯的網(wǎng)絡(luò)監(jiān)管服務(wù)器能夠加快推進(jìn)P4P技術(shù)的普及,調(diào)和P2P與運(yùn)營商之間的利益矛盾問題,得到產(chǎn)業(yè)的認(rèn)可。

發(fā)明內(nèi)容
技術(shù)問題本發(fā)明的目的是提供一種電信運(yùn)營商參與對等計(jì)算技術(shù)的監(jiān)管服務(wù)器的實(shí)現(xiàn)方法,加強(qiáng)因特網(wǎng)服務(wù)提供商與P2P客戶端程序的通信,降低骨干網(wǎng)絡(luò)傳輸壓力和運(yùn)營成本,并提高P2P應(yīng)用程序的性能,以達(dá)到網(wǎng)絡(luò)傳輸效率和節(jié)約運(yùn)營
成本的雙贏目的。具有廣闊的市場應(yīng)用前景。技術(shù)方案本發(fā)明使用P4P技術(shù)的資源節(jié)點(diǎn)選擇算法來最優(yōu)化peer節(jié)點(diǎn)的選擇; 使用印oil模型來提高P4P網(wǎng)絡(luò)監(jiān)管服務(wù)器能夠處理的并發(fā)量;使用memcached緩存服務(wù)器來降低服務(wù)器處理數(shù)據(jù)的時(shí)延;使用mysql數(shù)據(jù)庫與memcached相互通信來保證服務(wù)器數(shù)據(jù)的冗余性。該方法能使電信運(yùn)營商和對等網(wǎng)絡(luò)中的下載客戶端之間開啟一個(gè)顯式的窗口,電信運(yùn)營商采用基于電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)的資源節(jié)點(diǎn)選擇算法來選擇最優(yōu)的資源節(jié)點(diǎn)信息,提升對等網(wǎng)絡(luò)中的下載客戶端的性能;采用高并發(fā)模型來處理海量對等網(wǎng)絡(luò)客戶端的訪問,提升系統(tǒng)的吞吐量;采用高性能分布式緩存系統(tǒng)來同步熱點(diǎn)信息資源至內(nèi)存中,降低數(shù)據(jù)訪問的時(shí)延;采用數(shù)據(jù)庫與緩存系統(tǒng)結(jié)合,實(shí)現(xiàn)系統(tǒng)數(shù)據(jù)的冗余性;該方法主要包括以下步驟
步驟I).對基于電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器所要完成的功能進(jìn)行詳細(xì)全面的分析,能夠使不同的對等網(wǎng)絡(luò)客戶端的數(shù)據(jù)訪問請求能夠被識(shí)別,電信運(yùn)營商通過網(wǎng)絡(luò)監(jiān)管服務(wù)器來向用戶提供最優(yōu)的資源信息列表,同時(shí)還需解決海量用戶同時(shí)訪問的吞吐量和數(shù)據(jù)處理時(shí)延的問題,生成功能需求文檔;步驟2).按照步驟I)的分析文檔設(shè)計(jì)功能模塊,生成高并發(fā)接口模塊、緩存模塊和網(wǎng)絡(luò)監(jiān)管服務(wù)器控制模塊,以及各個(gè)模塊之間的邏輯關(guān)系、功能說明文檔和整個(gè)流程步驟3).按照步驟2)的功能說明文檔,提出基于P4P技術(shù)的資源節(jié)點(diǎn)選擇算法,通過對P4P技術(shù)的分析,重點(diǎn)設(shè)計(jì)并實(shí)現(xiàn)其Capability接口,通過選擇最優(yōu)peer節(jié)點(diǎn)信息,使骨干網(wǎng)絡(luò)流量減低,提高P2P軟件的上傳/下載速度。步驟4).按照步驟2)的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)高并發(fā)接口模塊,高并發(fā)接口層用來提高網(wǎng)絡(luò)監(jiān)管服務(wù)器的并發(fā)性能,網(wǎng)絡(luò)服務(wù)在處理數(shù)以萬計(jì)的客戶端連接時(shí),往往出現(xiàn)效率低下甚至完全癱瘓的狀況,這對于電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器也不例外;在運(yùn)營商部署的網(wǎng)絡(luò)場景下,系統(tǒng)會(huì)同時(shí)接受到大量的請求,順序處理會(huì)導(dǎo)致客戶響應(yīng)時(shí)間過長,選擇在Linux內(nèi)核中的高并發(fā)模型來處理并發(fā)的連接請求;
步驟5).按照步驟2)的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)緩存模塊,緩存模塊用來降低網(wǎng)絡(luò)監(jiān)管服務(wù)器的數(shù)據(jù)處理時(shí)延;通過使用緩存數(shù)據(jù)信息,減少網(wǎng)絡(luò)監(jiān)管服務(wù)器控制模塊的訪問次數(shù),以提高網(wǎng)絡(luò)監(jiān)管服務(wù)器的響應(yīng)速度、提高系統(tǒng)可擴(kuò)展性,通過電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)提供的接口獲取網(wǎng)絡(luò)狀況,結(jié)合網(wǎng)絡(luò)信息和節(jié)點(diǎn)自身的特點(diǎn),選擇最合適的內(nèi)網(wǎng)資源列表,存放到內(nèi)存中以供對等網(wǎng)絡(luò)客戶端查詢;使得系統(tǒng)負(fù)載大幅度降低,更好的分配資源,實(shí)現(xiàn)更快速訪問;
步驟6).按照步驟2)的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)網(wǎng)絡(luò)監(jiān)管服務(wù)器控制模塊,網(wǎng)絡(luò)監(jiān)管服務(wù)器控制層根據(jù)運(yùn)營商的網(wǎng)絡(luò)拓?fù)?,鏈路帶寬和網(wǎng)絡(luò)狀態(tài)信息,來挑選最優(yōu)的對等網(wǎng)絡(luò)結(jié)點(diǎn),使對等網(wǎng)絡(luò)通信流量盡量控制在內(nèi)網(wǎng)內(nèi),降低運(yùn)營商骨干網(wǎng)絡(luò)的壓力,提高網(wǎng)絡(luò)性倉泛。有益效果本發(fā)明有如下優(yōu)點(diǎn)
一、簡單性
本發(fā)明采用P4P技術(shù)來加強(qiáng)電信運(yùn)營商和P2P軟件之間的通信,P4P技術(shù)的架構(gòu)非常簡單,接口定義規(guī)范,開發(fā)者可以根據(jù)實(shí)際運(yùn)營的需要,選擇合適和統(tǒng)一的接口來進(jìn)行開發(fā), 是網(wǎng)絡(luò)傳輸效率達(dá)到最高。二、穩(wěn)定性
本發(fā)明使用最優(yōu)的epoll模型來解決海量用戶的訪問,同時(shí)使用高性能的分布式數(shù)據(jù)緩存系統(tǒng)memcached服務(wù)器來緩存系統(tǒng)的熱點(diǎn)資源信息,兩者相互通信,保證系統(tǒng)的穩(wěn)定性。三、良好的系統(tǒng)擴(kuò)展性
由于系統(tǒng)模塊之間采用的是獨(dú)立模塊化,功能并行層次化設(shè)計(jì),系統(tǒng)模塊之間的通信機(jī)制完全采用層次化的結(jié)構(gòu),因此可以方便的添加新的功能,也可以很容易的升級(jí)現(xiàn)有的功能。


圖I是基于P4P技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器的整體構(gòu)架,
圖2是epoll接口模塊的流程圖,
圖3是memcached緩存模塊的流程圖,
圖4是P4P控制平面構(gòu)架圖通信流程。
具體實(shí)施例方式本發(fā)明提出的基于P4P技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器系統(tǒng)及實(shí)現(xiàn)方法,包括以下步驟 步驟I).對P4P網(wǎng)絡(luò)監(jiān)管服務(wù)器所要完成的功能進(jìn)行詳細(xì)全面的分析,并生成需求
分析文檔;
步驟2).按照步驟I的分析文檔設(shè)計(jì)功能模塊,生成各個(gè)模塊之間的邏輯關(guān)系和功能說明文檔以及整個(gè)流程步驟3).按照步驟2的功能說明文檔,提出基于P4P技術(shù)的資源節(jié)點(diǎn)選擇算法,通過對P4P技術(shù)的分析,重點(diǎn)設(shè)計(jì)并實(shí)現(xiàn)其Capability接口,通過選擇最優(yōu)的peer節(jié)點(diǎn)信息, 使骨干網(wǎng)絡(luò)流量減低,提高P2P軟件的上傳/下載速度。步驟4).按照步驟2的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)印oil接口模塊。當(dāng)海量P2P 客戶端訪問網(wǎng)絡(luò)監(jiān)管監(jiān)管服務(wù)器iTracker時(shí),通過epoll模型的事件驅(qū)動(dòng)機(jī)制來緩解吞吐量的壓力。步驟5).按照步驟2的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)memcached緩存模塊。將mysql 數(shù)據(jù)模塊所存儲(chǔ)的數(shù)據(jù)同步至內(nèi)存中,降低服務(wù)器數(shù)據(jù)處理的時(shí)延。步驟6).按照步驟2的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)iTracker控制模塊。使用 mysql磁盤數(shù)據(jù)庫來存儲(chǔ)通過P4P資源節(jié)點(diǎn)選擇算法得到的peer信息,實(shí)現(xiàn)與memcached 緩存模塊的數(shù)據(jù)同步,使對等網(wǎng)絡(luò)通信流量盡量控制在內(nèi)網(wǎng)內(nèi),降低運(yùn)營商骨干網(wǎng)絡(luò)的壓力,提高網(wǎng)絡(luò)性能。一、體系結(jié)構(gòu)
本發(fā)明的系統(tǒng)模塊之間采用的是一種松藕合的層次化設(shè)計(jì),系統(tǒng)模塊之間的通信機(jī)制完全采用層次化的結(jié)構(gòu),因此可以方便的添加新的功能,也可以很容易
升級(jí)現(xiàn)有的功能,本系統(tǒng)的框架圖如圖I所示。共分為三個(gè)模塊,分別為epoll接口模塊、memcached緩存模塊和iTracker控制模塊。印oil接口模塊用來提高iTracker服務(wù)器的并發(fā)性能,網(wǎng)絡(luò)服務(wù)在處理數(shù)以萬計(jì)的客戶端連接時(shí),往往出現(xiàn)效率低下甚至完全癱瘓的狀況,這對于P4P的iTracker服務(wù)器也不例外。在ISP部署的網(wǎng)絡(luò)場景下,系統(tǒng)會(huì)同時(shí)接受到大量的請求,順序處理會(huì)導(dǎo)致客戶響應(yīng)時(shí)間過長,我們選擇在Iinux內(nèi)核中的epoll模型來處理并發(fā)的連接請求。memcached緩存模塊用來降低iTracker服務(wù)器的數(shù)據(jù)處理時(shí)延。memcached是一款分布式內(nèi)存緩存系統(tǒng),現(xiàn)在已成為Facebook等眾多服務(wù)中提高系統(tǒng)應(yīng)用擴(kuò)展性的重要技術(shù)。通過使用memcached緩存數(shù)據(jù)信息,減少iTracker控制層的訪問次數(shù),以提高 iTracker服務(wù)器的響應(yīng)速度、提高系統(tǒng)可擴(kuò)展性,通過P4P提供的接口獲取網(wǎng)絡(luò)狀況,結(jié)合網(wǎng)絡(luò)信息和節(jié)點(diǎn)自身的特點(diǎn),選擇最合適的內(nèi)網(wǎng)資源列表,存放到內(nèi)存中以供P2P客戶端查詢。使得系統(tǒng)負(fù)載大幅度降低,更好的分配資源,實(shí)現(xiàn)更快速訪問。iTracker控制模塊根據(jù)運(yùn)營商的網(wǎng)絡(luò)拓?fù)洌溌穾捄途W(wǎng)絡(luò)狀態(tài)等信息,來挑選最優(yōu)的P2P結(jié)點(diǎn),使P2P通信流量盡量控制在內(nèi)網(wǎng)內(nèi),降低運(yùn)營商骨干網(wǎng)絡(luò)的壓力,提高網(wǎng)絡(luò)性能。設(shè)計(jì)和實(shí)現(xiàn)基于P4P技術(shù)網(wǎng)絡(luò)監(jiān)管服務(wù)器iTracker系統(tǒng)模型的目標(biāo)主要是從解決電信運(yùn)營商在部署P4P網(wǎng)絡(luò)時(shí)所面臨的三個(gè)問題入手,一是針對大規(guī)模實(shí)時(shí)性P2P客戶端請求的處理的需要,提高海量數(shù)據(jù)處理的效率;二是采用分布式內(nèi)存緩存技術(shù)加后端數(shù)據(jù)庫的模式來實(shí)現(xiàn)對數(shù)據(jù)處理的低時(shí)延,緩存與磁盤數(shù)據(jù)庫的結(jié)合;三是通過P4P資源節(jié)點(diǎn)選擇算法來獲取最優(yōu)的peer信息。二、方法流程
該部分詳細(xì)說明發(fā)明內(nèi)容的各個(gè)部分的設(shè)計(jì)和實(shí)現(xiàn)
(I) epoll接口模塊的設(shè)計(jì)和實(shí)現(xiàn)
epoll接口模塊的流程圖如圖2所示。首先通過epoll_create (int maxfds)來創(chuàng)建一個(gè)epoll的句柄,其中maxfds為epoll所支持的最大句柄數(shù)。這個(gè)函數(shù)會(huì)返回一個(gè)新的 epoll句柄,之后的所有操作將通過這個(gè)句柄來進(jìn)行操作。在用完之后,記得用closeO來關(guān)閉這個(gè)創(chuàng)建出來的epoll句柄。在網(wǎng)絡(luò)主循環(huán)里面,每一巾貞的調(diào)用epoll_wait (int epfd, epoll_event events, int max events, int timeout)來查詢所有的網(wǎng)絡(luò)接口,看哪一個(gè)可以讀,哪一個(gè)可以寫。 基本的語法為nfds = epoll_wait (kdpfd, events, maxevents, -I);其中 kdpfd 為用 epoll_create創(chuàng)建之后的句柄,events是一個(gè)epoll_event*的指針,當(dāng)epoll_wait這個(gè)函數(shù)操作成功之后,epoll_events里面將儲(chǔ)存所有的讀寫事件。max_events是當(dāng)前需要監(jiān)聽的所有socket句柄數(shù)。最后一個(gè)timeout是epoll_wait的超時(shí),為O的時(shí)候表示馬上返回,為-I的時(shí)候表示一直等下去,直到有事件發(fā)生,為任意正整數(shù)的時(shí)候表示等這么長的時(shí)間,如果一直沒有事件,則放棄。一般如果網(wǎng)絡(luò)主循環(huán)是單線程,可以用-I來等,這樣可以保證效率,如果是和主邏輯在同一個(gè)線程,則可以用O來保證主循環(huán)的效率。epoll_wait返回之后應(yīng)該是一個(gè)循環(huán),遍歷所有的事件如果是主socket的事件的話,則表示有新連接進(jìn)入了,進(jìn)行新連接的處理,并將新連接置于非阻塞模式。隨后將新連接也加入EPOLL的監(jiān)聽隊(duì)列。設(shè)置好event之后,將這個(gè)新的event通過epoll_ctl加入到印oil的監(jiān)聽隊(duì)列里面,這里用EP0LL_CTL_ADD來加一個(gè)新的印oil事件,通過P0LL_ CTL_DEL來減少一個(gè)印olI事件,通過EP0LL_CTL_M0D來改變一個(gè)事件的監(jiān)聽方式。如果不是主socket的事件的話,則代表是一個(gè)用戶socket的事件,則來處理這個(gè)用戶socket的事情,比如說read(fd, xxx)之類的,或者一些其他的處理。在P4P網(wǎng)絡(luò)監(jiān)管服務(wù)器的請求處理中,1/0操作和數(shù)據(jù)處理的比例都很大。通信服務(wù)器中發(fā)生的I/o有客戶的連接請求來到,接收請求數(shù)據(jù),連接緩存系統(tǒng),發(fā)送請求數(shù)據(jù),接收緩存系統(tǒng)的響應(yīng),將響應(yīng)返回客戶,當(dāng)然其中還涉及磁盤數(shù)據(jù)庫的讀寫操作等。而一旦某個(gè)I/O準(zhǔn)備好,只需要處理最多毫秒級(jí)的時(shí)間,又會(huì)遇到另一次1/0。根據(jù)上述的分析,使用多線程事件驅(qū)動(dòng)的方案實(shí)現(xiàn)可以獲得高性能,對于本模塊,本發(fā)明采用了 epoll加多線程模型來提高系統(tǒng)的吞吐量。epoll加多線程模型,能夠提高系統(tǒng)的響應(yīng)速度,讓網(wǎng)絡(luò)1/0和數(shù)據(jù)計(jì)算相互重疊,降低系統(tǒng)延遲。本模塊使用單獨(dú)的線程來管理epoll模型的網(wǎng)絡(luò)1/0,當(dāng)系統(tǒng)接收到請求數(shù)據(jù)后,在開辟的已有線程池中查找空閑線程,并予以分配資源進(jìn)行數(shù)據(jù)處理,同時(shí) epoll模型繼續(xù)監(jiān)聽活動(dòng)網(wǎng)絡(luò)事件,與數(shù)據(jù)處理線程并行處理,當(dāng)系統(tǒng)處理信息完畢時(shí),將數(shù)據(jù)反饋給用戶,同時(shí)釋放占有的線程資源。本模塊所使用的epoll加多線程模型能有效地劃分責(zé)任與功能,而不是把所有邏輯都塞到一個(gè)event loop里,讓每個(gè)線程的邏輯比較簡單,任務(wù)單一,便于編碼。
緩存模塊的設(shè)計(jì)和實(shí)現(xiàn)
基于P4P技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器memcached緩存模塊的工作流程如圖3所示, memcached是一款非常流行的分布式數(shù)據(jù)緩存開源軟件,許多Web程序都將數(shù)據(jù)保存到 RDBMS (relational database management system,關(guān)系管理數(shù)據(jù)庫)中,應(yīng)用服務(wù)器從中讀取數(shù)據(jù)并進(jìn)行相應(yīng)的處理。但隨著數(shù)據(jù)量的增大和訪問的集中,就會(huì)出現(xiàn)RDBMS的負(fù)擔(dān)加重、數(shù)據(jù)庫響應(yīng)惡化、網(wǎng)站顯示延遲等重大影響。memcached在很多時(shí)候都是作為數(shù)據(jù)庫前端的cache使用的,因?yàn)樗葦?shù)據(jù)庫少了很多SQL解析、磁盤操作等開銷,而且它是使用內(nèi)存來管理數(shù)據(jù)的,所以它可以提供比直接讀取數(shù)據(jù)庫更好的性能,在大型系統(tǒng)中,訪問同樣的數(shù)據(jù)是很頻繁的,memcached可以大大降低數(shù)據(jù)庫壓力,使系統(tǒng)執(zhí)行效率提升。本發(fā)明將iTracker控制模塊中通過P4P資源節(jié)點(diǎn)選擇算法得到的信息同步到 memcached緩存中,以最快的速度提供給用戶所需要的數(shù)據(jù)。同時(shí)服務(wù)器將memcached和磁盤數(shù)據(jù)庫mysql的配合使用,用戶首先通過指定的get操作訪問memcached服務(wù)器,如果存在相應(yīng)的數(shù)據(jù)則直接獲取出數(shù)據(jù)結(jié)果,查詢過程不需要查詢數(shù)據(jù)層的mysql數(shù)據(jù)庫;如果不存在,則查詢mysql數(shù)據(jù)庫,將結(jié)果返回給查詢者,并以key相應(yīng)的value值形式將查詢結(jié)果存儲(chǔ)在memcached服務(wù)器中??刂颇K的設(shè)計(jì)和實(shí)現(xiàn)
P4P是一個(gè)靈活的系統(tǒng)框架,包括控制平面、管理平面和數(shù)據(jù)平面。數(shù)據(jù)平面的組成部分是可選的,并且具有區(qū)分和優(yōu)先流量的功能,而管理平面的功能則是監(jiān)視控制平面的行為,目前的研究主要集中于控制平面,其中潛在的實(shí)體有iTracker、appTracker和P2P客戶端。在控制平面中,P4P引入iTrackers來給P2P與網(wǎng)絡(luò)供應(yīng)商的溝通提供入口。弓丨進(jìn) iTrackers允許P4P在P2P和供應(yīng)商之間劃分通信量控制的責(zé)任,并且增加了 P4P的可部署性和擴(kuò)展性。一個(gè)iTracker提供了一個(gè)入口,它有三種相關(guān)網(wǎng)絡(luò)供應(yīng)商信息網(wǎng)絡(luò)狀態(tài) /拓?fù)洌惶峁┫驅(qū)?政策;網(wǎng)絡(luò)能力。網(wǎng)絡(luò)供應(yīng)商可能會(huì)選擇實(shí)施的一個(gè)接口的子集。豐富的信息轉(zhuǎn)達(dá)主要還取決于電信運(yùn)營商。同時(shí)電信運(yùn)營商也可能執(zhí)行一些訪問控制接口,以維護(hù)信息安全和隱私。iTracker可以提供三種形式的網(wǎng)絡(luò)信息,可以分別通過以下接口進(jìn)行提供
(I) Policy接口主要向peer或者appTracker提供網(wǎng)絡(luò)策略和指導(dǎo)意見。比如網(wǎng)絡(luò)出口流量和入口流量的比例,在擁塞期間應(yīng)該避免使用哪些鏈路等等。(2) Virtual Cost接口主要是對外提供網(wǎng)絡(luò)拓?fù)湫畔⒑蜖顟B(tài)信息。(3) Capablity接口允許peer或內(nèi)容提供商(通過appTracker)向其查詢并請求承載網(wǎng)提供一定的資源和能力。例如,在網(wǎng)絡(luò)運(yùn)營商提供了 cache服務(wù)器的情況下,一個(gè) appTracker可以通過詢問iTracker,得到這樣的服務(wù)器以提高內(nèi)容分發(fā)的速度。appTracker是在P2P應(yīng)用中部署的用于保存正在共享某一內(nèi)容的peers的列表的一種實(shí)體,不同的P2P應(yīng)用可能有不同的appTracker,這里有兩種情況
(I)P2P應(yīng)用中存在appTracker,此時(shí)有iTracker把策略和virtual cost等相關(guān)信息給appTracker,由appTracker來執(zhí)行peer的選擇,返回給請求的節(jié)點(diǎn)。(2)某些非結(jié)構(gòu)化的P2P網(wǎng)絡(luò)中不存在appTracker,此時(shí)需要peer和iTracker 之間直接進(jìn)行通信。
P2P客戶端訪問基于P4P技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器iTracker的流程如圖4所示, appTracker代表P2P軟件服務(wù)器,iTracker代表ISP部署的網(wǎng)絡(luò)監(jiān)管服務(wù)器,對于P2P客戶端的訪問流程如下
(1)P2P用戶向appTracker提出加入/查詢請求;
(2)appTracker 向 iTracker 發(fā)出信息請求;
(3)iTracker將用戶結(jié)點(diǎn)信息,網(wǎng)絡(luò)信息和指導(dǎo)策略結(jié)果發(fā)送給appTracker ;
(4)appTracer對peer發(fā)送網(wǎng)絡(luò)接入信息或者資源列表信息。iTracker控制模塊將調(diào)用P4P架構(gòu)中的Capablity接口,允許peer或內(nèi)容提供商(通過appTracker)向其查詢并請求承載網(wǎng)提供的最有peer信息。例如,在網(wǎng)絡(luò)運(yùn)營商提供了 cache服務(wù)器的情況下,一個(gè)appTracker可以通過詢問iTracker,得到這樣的服務(wù)器地址信息以提高內(nèi)容分發(fā)的速度。
權(quán)利要求
1.一種電信運(yùn)營商參與對等計(jì)算技術(shù)的監(jiān)管服務(wù)器的實(shí)現(xiàn)方法,其特征在于該方法能使電信運(yùn)營商和對等網(wǎng)絡(luò)中的下載客戶端之間開啟一個(gè)顯式的窗口,電信運(yùn)營商采用基于電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)的資源節(jié)點(diǎn)選擇算法來選擇最優(yōu)的資源節(jié)點(diǎn)信息,提升對等網(wǎng)絡(luò)中的下載客戶端的性能;采用高并發(fā)模型來處理海量對等網(wǎng)絡(luò)客戶端的訪問,提升系統(tǒng)的吞吐量;采用高性能分布式緩存系統(tǒng)來同步熱點(diǎn)信息資源至內(nèi)存中,降低數(shù)據(jù)訪問的時(shí)延;采用數(shù)據(jù)庫與緩存系統(tǒng)結(jié)合,實(shí)現(xiàn)系統(tǒng)數(shù)據(jù)的冗余性;該方法主要包括以下步驟步驟I).對基于電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器所要完成的功能進(jìn)行詳細(xì)全面的分析,能夠使不同的對等網(wǎng)絡(luò)客戶端的數(shù)據(jù)訪問請求能夠被識(shí)別,電信運(yùn)營商通過網(wǎng)絡(luò)監(jiān)管服務(wù)器來向用戶提供最優(yōu)的資源信息列表,同時(shí)還需解決海量用戶同時(shí)訪問的吞吐量和數(shù)據(jù)處理時(shí)延的問題,生成功能需求文檔;步驟2).按照步驟I)的分析文檔設(shè)計(jì)功能模塊,生成高并發(fā)接口模塊、緩存模塊和網(wǎng)絡(luò)監(jiān)管服務(wù)器控制模塊,以及各個(gè)模塊之間的邏輯關(guān)系、功能說明文檔和整個(gè)流程圖;步驟3).按照步驟2)的功能說明文檔,提出基于電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)的資源節(jié)點(diǎn)選擇算法,重點(diǎn)設(shè)計(jì)并實(shí)現(xiàn)其能力接口,通過選擇最優(yōu)的節(jié)點(diǎn)信息,使骨干網(wǎng)絡(luò)流量減低,提高系統(tǒng)的上傳/下載速度。
2.步驟4).按照步驟2)的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)高并發(fā)接口模塊,高并發(fā)接口層用來提高網(wǎng)絡(luò)監(jiān)管服務(wù)器的并發(fā)性能,網(wǎng)絡(luò)服務(wù)在處理數(shù)以萬計(jì)的客戶端連接時(shí),往往出現(xiàn)效率低下甚至完全癱瘓的狀況,這對于電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器也不例外;在運(yùn)營商部署的網(wǎng)絡(luò)場景下,系統(tǒng)會(huì)同時(shí)接受到大量的請求,順序處理會(huì)導(dǎo)致客戶響應(yīng)時(shí)間過長,選擇在操作系統(tǒng)內(nèi)核中的高并發(fā)模型來處理并發(fā)的連接請求;步驟5).按照步驟2)的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)緩存模塊,緩存模塊用來降低網(wǎng)絡(luò)監(jiān)管服務(wù)器的數(shù)據(jù)處理時(shí)延;通過使用緩存數(shù)據(jù)信息,減少網(wǎng)絡(luò)監(jiān)管服務(wù)器控制模塊的訪問次數(shù),以提高網(wǎng)絡(luò)監(jiān)管服務(wù)器的響應(yīng)速度、提高系統(tǒng)可擴(kuò)展性,通過電信運(yùn)營商主動(dòng)參與對等計(jì)算技術(shù)提供的接口獲取網(wǎng)絡(luò)狀況,結(jié)合網(wǎng)絡(luò)信息和節(jié)點(diǎn)自身的特點(diǎn),選擇最合適的內(nèi)網(wǎng)資源列表,存放到內(nèi)存中以供對等網(wǎng)絡(luò)客戶端查詢;使得系統(tǒng)負(fù)載大幅度降低,更好的分配資源,實(shí)現(xiàn)更快速訪問;步驟6).按照步驟2)的功能說明文檔,設(shè)計(jì)并實(shí)現(xiàn)網(wǎng)絡(luò)監(jiān)管服務(wù)器控制模塊,網(wǎng)絡(luò)監(jiān)管服務(wù)器控制層根據(jù)運(yùn)營商的網(wǎng)絡(luò)拓?fù)洌溌穾捄途W(wǎng)絡(luò)狀態(tài)信息,來挑選最優(yōu)的對等網(wǎng)絡(luò)結(jié)點(diǎn),使對等網(wǎng)絡(luò)通信流量盡量控制在內(nèi)網(wǎng)內(nèi),降低運(yùn)營商骨干網(wǎng)絡(luò)的壓力,提高網(wǎng)絡(luò)性倉泛。
全文摘要
本發(fā)明的目的是提供一種基于P4P技術(shù)的網(wǎng)絡(luò)監(jiān)管服務(wù)器系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)方法。開發(fā)P4P框架中的Capability接口來實(shí)現(xiàn)資源節(jié)點(diǎn)的最優(yōu)選擇,采用epoll加多線程模型,提高網(wǎng)絡(luò)監(jiān)管服務(wù)器的系統(tǒng)的響應(yīng)速度,采用分布式數(shù)據(jù)緩存技術(shù)memcached來加速數(shù)據(jù)響應(yīng)的速度,同時(shí)使用mysql數(shù)據(jù)庫與memcached緩存服務(wù)器相結(jié)合的方式,保證數(shù)據(jù)的冗余性,最終本發(fā)明能夠在電信運(yùn)營商和P2P客戶端之間開啟一個(gè)顯式的窗口,降低運(yùn)營商骨干網(wǎng)絡(luò)的流量,同時(shí)提高P2P客戶端的性能。本發(fā)明還具有擴(kuò)展性強(qiáng),高度可靠穩(wěn)定性,以及開發(fā)簡單、投資小等優(yōu)點(diǎn)。具有廣闊的市場應(yīng)用前景。
文檔編號(hào)H04L29/08GK102611752SQ201210075350
公開日2012年7月25日 申請日期2012年3月21日 優(yōu)先權(quán)日2012年3月21日
發(fā)明者孫力娟, 李致遠(yuǎn), 林巧民, 王汝傳, 肖甫, 邵星, 韓志杰, 顧翔, 魏靖凱, 黃海平 申請人:南京郵電大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1