本發(fā)明屬于計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)領(lǐng)域,內(nèi)容涉及一種應(yīng)用P2P對(duì)等網(wǎng)絡(luò)技術(shù)實(shí)現(xiàn)IPv6可信網(wǎng)絡(luò)可重構(gòu)方案。
背景技術(shù):
隨著互聯(lián)網(wǎng)技術(shù)和規(guī)模的不斷發(fā)展,接入方式增多,終端多樣性和服務(wù)類(lèi)型的擴(kuò)展,網(wǎng)絡(luò)中的數(shù)據(jù)流類(lèi)型和數(shù)目都急劇增多?,F(xiàn)有的數(shù)據(jù)流標(biāo)識(shí)方法在面對(duì)新型數(shù)據(jù)流類(lèi)型時(shí),如P2P,多媒體和各種加密數(shù)據(jù)流,都暴露了各種各樣的不足。
隨著競(jìng)爭(zhēng)的加劇和客戶需求的多樣化,企業(yè)對(duì)信息系統(tǒng)開(kāi)發(fā)與更新速度提出了更高的要求?,F(xiàn)在信息出現(xiàn)了一種新的趨勢(shì),用戶希望把軟件包拆散為獨(dú)立的模塊后重新組合,提供CPG(用戶定制軟件包)產(chǎn)品,這種方式更能適應(yīng)企業(yè)經(jīng)營(yíng)環(huán)境的變化。因此,在開(kāi)發(fā)下一代面向電子商務(wù)系統(tǒng)的信息系統(tǒng)過(guò)程中,我們面臨的最大挑戰(zhàn)是如何快速、高質(zhì)量地開(kāi)發(fā)出滿足不同需求的軟件。傳統(tǒng)的面向具體需求的“自由式”軟件開(kāi)發(fā)方法在這時(shí)已顯得無(wú)能為力了,建立更好的軟件開(kāi)發(fā)環(huán)境,提高系統(tǒng)的可重構(gòu)性,開(kāi)發(fā)和采用可重用的軟構(gòu)件成為解決這一問(wèn)題的最佳方法,同時(shí)基于構(gòu)件的體系結(jié)構(gòu)和軟件重用方法也是提高信息系統(tǒng)的穩(wěn)定性、可靠性和開(kāi)發(fā)效率的有效方法。
構(gòu)件是可復(fù)用的軟件組成成份,由于具有封裝性、透明性、互換性、通用性、自包容和被包容性,使得構(gòu)件成為未來(lái)應(yīng)用系統(tǒng)的基本元素,回顧經(jīng)典的工業(yè)化革命不難得出一些有益的啟示:功能再?gòu)?fù)雜的產(chǎn)品都是由大量標(biāo)準(zhǔn)的零件組成,零件在生產(chǎn)線上裝配成一個(gè)成品,所有零件在成品中共同發(fā)揮作用。而構(gòu)件技術(shù)所扮演的角色就是把零件、生產(chǎn)線和裝配運(yùn)行的概念運(yùn)用在軟件工業(yè)中,可以預(yù)見(jiàn),基于構(gòu)件的軟件開(kāi)發(fā)技術(shù)是軟件產(chǎn)業(yè)化革命的必然發(fā)展趨勢(shì)。傳統(tǒng)網(wǎng)絡(luò)的層次結(jié)構(gòu)是互聯(lián)網(wǎng)取得巨大成功的關(guān)鍵。但是隨著網(wǎng)絡(luò)規(guī)模的不斷擴(kuò)大,封閉的網(wǎng)絡(luò)設(shè)備內(nèi)置了過(guò)多的復(fù)雜協(xié)議,增加了運(yùn)營(yíng)商定制優(yōu)化網(wǎng)絡(luò)的難度,科研人員無(wú)法在真實(shí)環(huán)境中規(guī)模部署新協(xié)議。同時(shí),互聯(lián)網(wǎng)流量的快速增長(zhǎng)用戶對(duì)流量的需求不斷擴(kuò)大,各種新型服務(wù)不斷出現(xiàn),增加了網(wǎng)絡(luò)運(yùn)維成本。
更開(kāi)放的體系結(jié)構(gòu)可重構(gòu)的信息系統(tǒng)開(kāi)發(fā)致力于根據(jù)用戶需求通過(guò)組裝、裁剪現(xiàn)有軟構(gòu)件的方式來(lái)建造適應(yīng)不同企業(yè)需求的大型信息系統(tǒng),其首要條件是系統(tǒng)具有很好的開(kāi)放性和適應(yīng)性,這就要求系統(tǒng)建立在開(kāi)放的體系結(jié)構(gòu)上,否則就不可能適應(yīng)環(huán)境的變化。對(duì)域的抽象化和參數(shù)化對(duì)問(wèn)題領(lǐng)域進(jìn)行分析和在此基礎(chǔ)之上對(duì)域的抽象化和參數(shù)化是建立可重構(gòu)部件的必要條件,其任務(wù)是以軟件重用為目標(biāo),尋找其共性部分,哪些處理功能是相同或相似的,可以作為可重用的對(duì)象,在此基礎(chǔ)上提出可重用的構(gòu)件。域分析包括相似性分析和差異性分析,而對(duì)域的抽象化和參數(shù)化正是要通過(guò)模型元素和實(shí)例化參數(shù)來(lái)反映領(lǐng)域問(wèn)題中的相似性和差異性,從而實(shí)現(xiàn)軟構(gòu)件對(duì)不同企業(yè)的適應(yīng)性和靈活性。共用的信息模型的支持從本質(zhì)上說(shuō),信息系統(tǒng)是對(duì)企業(yè)的信息進(jìn)行收集、加工處理和按一定的條件輸出的計(jì)算機(jī)命令組成的集合,信息(或稱(chēng)數(shù)據(jù))是程序處理的對(duì)象,任何信息系統(tǒng)都是建立在一定的信息模型基礎(chǔ)之上的。因此,穩(wěn)定、科學(xué)的信息模型是使信息系統(tǒng)具有可重構(gòu)性的條件,統(tǒng)一的建模工具是軟件重用的基礎(chǔ)。盡管各個(gè)企業(yè)的信息的內(nèi)容與形式上存在區(qū)別,但在一定的領(lǐng)域范圍內(nèi)(如制造業(yè)),其核心業(yè)務(wù)和信息結(jié)構(gòu)具有共性,這是建立公用信息模型的基礎(chǔ),必須從全局的高度,對(duì)企業(yè)的信息進(jìn)行分析,找出其核心和共性部分,并采用統(tǒng)一的建模工具,對(duì)信息進(jìn)行抽象化,建立穩(wěn)定的信息模型。
可重用的構(gòu)件及支持工具的開(kāi)發(fā)與優(yōu)化可重構(gòu)的信息系統(tǒng)是致力于根據(jù)用戶需求通過(guò)組裝、裁剪現(xiàn)有業(yè)務(wù)構(gòu)件的方式來(lái)建造適應(yīng)不同企業(yè)需求的信息系統(tǒng),可重用的構(gòu)件及支持工具是構(gòu)成可重構(gòu)系統(tǒng)的元素。因此,必須在域分析的基礎(chǔ)上把復(fù)雜的軟件系統(tǒng)模型化,開(kāi)發(fā)具有可重用的構(gòu)件和針對(duì)具體的開(kāi)發(fā)語(yǔ)言環(huán)境的支持工具。面向重用的管理機(jī)制盡管可重構(gòu)性軟件開(kāi)發(fā)方法是高速度、高質(zhì)量建設(shè)系統(tǒng)的有效和最佳途徑,但在實(shí)際的系統(tǒng)開(kāi)發(fā)過(guò)程中,軟件重用方法卻使用少,這主要是由于開(kāi)發(fā)可重構(gòu)的系統(tǒng)或可重用的構(gòu)件工作量大,對(duì)技術(shù)要求高。據(jù)估計(jì)開(kāi)發(fā)一個(gè)可重用的構(gòu)件與開(kāi)發(fā)相同功能的單個(gè)應(yīng)用項(xiàng)目相比,其工作量要大得多,并且對(duì)系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)人員提出更高的要求。由于可重用的軟部件必須具育跨多個(gè)項(xiàng)目,甚至跨多個(gè)應(yīng)用領(lǐng)域的適應(yīng)能力,同時(shí)要求它們達(dá)到較其他軟件元素更為苛刻的質(zhì)量標(biāo)準(zhǔn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明為了解決上述問(wèn)題,提供了一種基于IPv6可信網(wǎng)絡(luò)的可重構(gòu)實(shí)現(xiàn)方法,利用P2P網(wǎng)絡(luò)的平等特性和可擴(kuò)展特性,來(lái)實(shí)現(xiàn)基于IPv6可信網(wǎng)絡(luò)的可定義和可重構(gòu)。
本發(fā)明所采用的技術(shù)方案是:
一種基于IPv6可信網(wǎng)絡(luò)的可重構(gòu)實(shí)現(xiàn)方法,關(guān)鍵在于:本方法包括下述步驟:
1)基于P2P對(duì)等網(wǎng)絡(luò),突破傳統(tǒng)網(wǎng)絡(luò)的層級(jí)耦合和拓?fù)潢P(guān)系,將系統(tǒng)中網(wǎng)絡(luò)設(shè)備劃分為普通用戶peer和一個(gè)或多個(gè)負(fù)責(zé)整個(gè)網(wǎng)絡(luò)系統(tǒng)的統(tǒng)籌和調(diào)度的中心設(shè)備節(jié)點(diǎn)tracker;
2)普通用戶按照既定規(guī)則接入、離開(kāi)網(wǎng)絡(luò),在接入網(wǎng)絡(luò)期間,用戶以固定周期上報(bào)自己的網(wǎng)絡(luò)狀態(tài)信息至中心設(shè)備節(jié)點(diǎn)tracker;
3)中心設(shè)備節(jié)點(diǎn)tracker控制普通用戶的斷線和重連,管理普通用戶的加入和離開(kāi),維護(hù)整個(gè)系統(tǒng)的穩(wěn)定和可擴(kuò)展性。
所述的中心設(shè)備節(jié)點(diǎn)tracker還控制由其他tracker和peer組成的網(wǎng)絡(luò)群組或網(wǎng)絡(luò)區(qū)塊的接入和斷開(kāi),提供對(duì)系統(tǒng)網(wǎng)絡(luò)各種功能擴(kuò)展的承載和支持。
本發(fā)明的有益效果是:在P2P對(duì)等網(wǎng)絡(luò)中,我們將網(wǎng)絡(luò)中的普通用戶和節(jié)點(diǎn)稱(chēng)為peer,將負(fù)責(zé)功能支持和服務(wù)調(diào)度的較高級(jí)節(jié)點(diǎn)和設(shè)備稱(chēng)為tracker。其中,tracker負(fù)責(zé)整理收集各個(gè)peer的狀態(tài)信息,總而從一個(gè)資源整合的角度完成各個(gè)peer之間的連接通信?;谶@個(gè)對(duì)等的網(wǎng)絡(luò)架構(gòu),網(wǎng)絡(luò)可以容納一定程度的peer遷移、轉(zhuǎn)換和再次接入,從而為網(wǎng)絡(luò)的可定義可重構(gòu)提供了根本的保障。
附圖說(shuō)明
圖1是本對(duì)等網(wǎng)絡(luò)架構(gòu)下的典型通信實(shí)例圖;
圖2是用戶狀態(tài)收集流程圖;
圖3是典型的網(wǎng)絡(luò)擴(kuò)展方式流程圖;
圖4是整個(gè)系統(tǒng)的運(yùn)行流程圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
圖1詳細(xì)規(guī)定了對(duì)等網(wǎng)絡(luò)下的通信交互過(guò)程,其中包括通信初始請(qǐng)求的發(fā)送,服務(wù)列表的獲取和新節(jié)點(diǎn)的網(wǎng)絡(luò)接入,還包括chunk數(shù)據(jù)包的傳輸方式。首先,用戶需要通過(guò)鏈接和接口的方式發(fā)送請(qǐng)求接入到網(wǎng)絡(luò)中,然后需要向中心節(jié)點(diǎn)發(fā)送自身的狀態(tài)信息,網(wǎng)絡(luò)中其他用戶需要與其建立連接,需要先由中心節(jié)點(diǎn)獲取此用戶的位置和網(wǎng)絡(luò)信息,然后發(fā)送請(qǐng)求從而建立連接,進(jìn)而按照協(xié)議規(guī)定進(jìn)行數(shù)據(jù)包的傳輸。
圖2是一個(gè)典型的用戶狀態(tài)信息收集過(guò)程。首先由用戶向中心節(jié)點(diǎn)發(fā)送接入請(qǐng)求信息,得到允許的回應(yīng)信息之后,用戶得以接入到網(wǎng)絡(luò)中,然后需要按照規(guī)定的時(shí)間周期向中心節(jié)點(diǎn)匯報(bào)自己的狀態(tài)信息和通信記錄。
圖3是一個(gè)在IPv6可信網(wǎng)絡(luò)下用戶的接入處理和服務(wù)選擇實(shí)例。用戶首先通過(guò)向中心節(jié)點(diǎn)發(fā)送connect請(qǐng)求嘗試接入網(wǎng)絡(luò),待獲得同意之后繼續(xù)發(fā)送JOIN信息請(qǐng)求接入所需服務(wù)的網(wǎng)絡(luò),在服務(wù)過(guò)程中以固定周期向中心節(jié)點(diǎn)發(fā)送STAT_REPORT報(bào)告消息同步自身的網(wǎng)絡(luò)狀態(tài)信息,服務(wù)結(jié)束之后需要發(fā)送DISCONNECT消息從服務(wù)網(wǎng)絡(luò)斷開(kāi),收到中心節(jié)點(diǎn)的允許斷開(kāi)OK消息之后才可以接入其他服務(wù)網(wǎng)絡(luò)。
圖4是整體網(wǎng)絡(luò)架構(gòu)中的通信過(guò)程實(shí)例。其中CONNECT消息用于向中心節(jié)點(diǎn)發(fā)送接入服務(wù)請(qǐng)求,OK消息表示同意請(qǐng)求中的接入斷開(kāi)網(wǎng)絡(luò)行為,STAT_REPORT消息用于用戶向中心節(jié)點(diǎn)發(fā)送網(wǎng)絡(luò)狀態(tài)信息,HANDSHAKE用于兩個(gè)節(jié)點(diǎn)建立連接時(shí)的握手動(dòng)作,REQUEST消息用于發(fā)送網(wǎng)絡(luò)服務(wù)請(qǐng)求,KEEPALIVE消息用于繼續(xù)和維護(hù)服務(wù)隊(duì)列。