本發(fā)明屬于路由器數(shù)據(jù)同步技術(shù)領(lǐng)域,具體涉及一種路由器間雙向同步的實現(xiàn)方法及系統(tǒng)。
背景技術(shù):
隨著信息化技術(shù)的飛速發(fā)展,企業(yè)信息化建設(shè)的日益普及,企業(yè)各部門紛紛搭建自己的信息化系統(tǒng)。但企業(yè)信息化是一個逐步建設(shè)的過程,從國際上信息化建設(shè)啟動比較早的國家的經(jīng)驗來看,信息化建設(shè)都不是一步到位,而是通過循序漸進的過程逐步建立起來的。這樣,就造成了同一個企業(yè)里存在著很多個運行于不同的平臺,采用不同的數(shù)據(jù)庫,使用不同的開發(fā)技術(shù)和開發(fā)語言進行開發(fā)的異構(gòu)系統(tǒng),形成了信息孤島。隨著信息化建設(shè)的不斷深入,整合多個異構(gòu)系統(tǒng)的數(shù)據(jù)、集成多個異構(gòu)系統(tǒng)的應(yīng)用、實現(xiàn)數(shù)據(jù)的共享、消除系統(tǒng)間數(shù)據(jù)的不一致性的需求日漸強烈。因此,協(xié)同工作成為辦公自動化技術(shù)中一項較為關(guān)鍵和重要的技術(shù)。
SOHO(Small Office Home Office)路由器,即小辦公室或家庭辦公室用的路由器,適用于ADSL、HFC或小區(qū)寬帶的Internet共享接入,并提供簡單的路由服務(wù)和防火墻功能。SOHO作為信息時代的必然產(chǎn)物,SOHO作為信息時代的必然產(chǎn)物,具有傳統(tǒng)辦公無法比擬的靈活性、創(chuàng)造性等優(yōu)點。如今,許多廠商都專門針對SOHO研發(fā)了相應(yīng)的網(wǎng)絡(luò)設(shè)備,以適應(yīng)搭建小型網(wǎng)絡(luò)和共享Internet接入的需求,SOHO路由器便是其中之一。SOHO路由器是共享網(wǎng)絡(luò)連接的最佳解決方案之一,它有四大優(yōu)點:1、無須維護,一旦配置成功,就再也無須進行管理;2、運行穩(wěn)定;3、不再需要計算機作為代理服務(wù)器,可以有效地節(jié)約能源,減少開支;4、部分路由器還提供了數(shù)個以太網(wǎng)接口,可用于直接連接計算機。
申請?zhí)枮?01110271644.0的中國發(fā)明專利公開了一種客戶端與服務(wù)器端雙向同步的方法及系統(tǒng),所述方法包括應(yīng)用程序服務(wù)器端接收到應(yīng)用程序客戶端發(fā)送的業(yè)務(wù)請求后,對業(yè)務(wù)請求進行解析;所述應(yīng)用程序服務(wù)器端判斷若一應(yīng)用程序客戶端修改了一對象的數(shù)據(jù)后,則根據(jù)應(yīng)用程序客戶端信息及其訂閱的對象的信息的表格中的信息,查找訂閱了該對象的應(yīng)用程序客戶端,判斷若找到,則將修改后的該對象的數(shù)據(jù)發(fā)送到相應(yīng)應(yīng)用程序客戶端,保持客戶端與服務(wù)器端的數(shù)據(jù)同步。該發(fā)明能在對象發(fā)生變化后服務(wù)器端在第一時間把更新的數(shù)據(jù)發(fā)送給各個客戶端,使客戶端與服務(wù)器端的數(shù)據(jù)同步效果得到進一步提升。當(dāng)客戶端出現(xiàn)宕機、重啟或者掉電時,服務(wù)器端的數(shù)據(jù)很可能沒那么及時地同步到客戶端上,而且傳輸中的數(shù)據(jù)也可能丟失。
申請?zhí)枮?01310416525.9的中國發(fā)明專利申請公開了一種主備板的數(shù)據(jù)庫雙向同步方法,包括如下步驟:根據(jù)預(yù)設(shè)的時間周期分別對主備板的數(shù)據(jù)庫進行備份,得到對應(yīng)的備份數(shù)據(jù);檢測主備板的運行狀態(tài);若主備板都重啟過,則主備板的數(shù)據(jù)庫分別通過其備份數(shù)據(jù)進行數(shù)據(jù)恢復(fù)。該發(fā)明還提供對應(yīng)的系統(tǒng),能在主備板重啟或異常宕機時,保證主備板數(shù)據(jù)庫保持同步狀態(tài)。但是只能根據(jù)預(yù)設(shè)的時間周期進行數(shù)據(jù)同步,而且還需要對數(shù)據(jù)進行備份,增加了數(shù)據(jù)同步的復(fù)雜程度。
目前,路由器間關(guān)系的建立最常用的方式為OSPF(Open Shortest Path First)協(xié)議,即最短路徑優(yōu)先協(xié)議,是一種鏈路狀態(tài)路由選擇協(xié)議,路由選擇域中的所有路由器之間交換信息。每個路由器都能了解整個網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)支持各種不同鑒別機制,但存在以下不足:一、配置相對復(fù)雜,由于網(wǎng)絡(luò)區(qū)域劃分和網(wǎng)絡(luò)屬性的復(fù)雜性,需要網(wǎng)絡(luò)分析員有較高的網(wǎng)絡(luò)知識水平才能配置和管理OSPF網(wǎng)絡(luò);二、路由負(fù)載均衡能力較弱導(dǎo)致路由器間的同步不匹配。
技術(shù)實現(xiàn)要素:
針對現(xiàn)有技術(shù)中存在的上述不足,本發(fā)明提供一種路由器間雙向同步的實現(xiàn)方法及系統(tǒng)。
為了達(dá)到上述發(fā)明目的,本發(fā)明采用以下技術(shù)方案:
一種路由器間雙向同步的實現(xiàn)方法,包括以下步驟:
S1,在路由器R1的web服務(wù)器上添加插件A和插件B,插件A和插件B分別用于提供認(rèn)證、產(chǎn)生key和支持webdav協(xié)議,web服務(wù)器還提供UI端配置監(jiān)聽端口,提供保存config文件,提供認(rèn)證的key和賬號以及可同步目錄的config1;
S2,路由器R2提供UI端設(shè)定訪問路由器R1提供的URL請求地址,提供輸入在路由器R1上注冊得到的key,提供設(shè)定路由器R2端監(jiān)控的目錄config2,提供同步的時間點設(shè)置;
S3,路由器R2提供監(jiān)控目錄變化和針對變化作處理的程序p2;
S4,路由器p2程序由多個線程組成,多個線程之間協(xié)同配合完成路由器間數(shù)據(jù)的雙向同步。
優(yōu)選的,所述config1的文件配置為:{“port”:”<配置的監(jiān)聽端口>”,“<key>”:{"user":"<R2>","syncFloder":"<提供給R2的目錄>"}}。
優(yōu)選的,所述config2的文件配置為:{“config”:{"serverURL":"http://xx.xx.xx.xx:port/<R1提供的儲存目錄>","key":"<xxxxxx>","localFloder":"/mnt/sda/<R2提供的監(jiān)控目錄>",”syncTime”:”<同步的時間點>”}}。
優(yōu)選的,所述多個線程包括線程A、線程B和線程C,線程A用于監(jiān)控目錄的變化,線程B用于處理監(jiān)控的事件,線程C用于查詢路由器R1的同步目錄文件是否變化,采用多線程能對路由器間雙向同步的進程全面監(jiān)測和處理事件。
優(yōu)選的,所述程序p2的運行步驟如下:
步驟一,程序初始化,并讀取config2文件;
步驟二,進行相應(yīng)的環(huán)境變量設(shè)定,從而執(zhí)行線程A或線程B或線程C。
優(yōu)選的,所述線程A的執(zhí)行過程如下:
S1,線程A初始化;
S2,監(jiān)控目錄;
S3,儲存變化事件鏈表;
S4,判斷鏈表是否被lock,若鏈表被lock,則等待lock釋放,釋放后進行目錄更新;若鏈表未被lock,則直接進行目錄更新。
優(yōu)選的,所述線程B的執(zhí)行過程如下:
S1,線程B初始化;
S2,判斷同步時間,即判斷路由器R1和路由器R2的時間是否同步,若時間同步,則轉(zhuǎn)至判斷事件鏈表是否被lock;若時間不同步,表明線程阻塞,直到時間段正確,則轉(zhuǎn)至判斷事件鏈表是否被lock;
S3,事件鏈表未被lock,則轉(zhuǎn)至判斷線程C是否在同步,不論線程C是否在同步均要遍歷鏈表依次處理事件。
優(yōu)選的,所述線程C的執(zhí)行過程如下:
S1,線程C初始化;
S2,判斷判斷同步時間,即判斷路由器R1和路由器R2的時間是否同步,若時間同步,則每間隔5秒查詢路由器R1的同步目錄,并對比5秒內(nèi)路由器R1的同步目錄是否變化;若時間不同步,表明線程阻塞,直到時間段正確,則每間隔5秒查詢路由器R1的同步目錄,并對比5秒內(nèi)路由器R1的同步目錄是否變化;
S3,若路由器R1的同步目錄變化,則判斷線程B是否在本地同步,若線程B未在本地同步,則將路由器R1更新的文件下載至本地;若線程B在本地同步,則等待線程B同步完成。
優(yōu)選的,所述線程A的儲存事件的結(jié)構(gòu)體如下:
Typedef struct action Event{
Char action[20];//文件動作事件
Char*oldName;//舊文件名
Char*newName;//新文件名
Char*oldFolder;//舊目錄
Char*nerFolder;//新目錄
}
事件變化列表如下
{“modify”:”<文件被修改>”,
“addfile”:”<新增文件>”,
“move”:”<移動文件>”,
“rename”:”<文件被重命名>”,
“delete”:”<文件被刪除>”,
“dragfile”:”<文件被拖拽>”,
}。
本發(fā)明還提供了一種路由器間雙向同步的實現(xiàn)方法的系統(tǒng),其包括路由器R1和路由器R2,路由器R1作為主路由器,路由器R2作為從路由器,路由器R1和R2均支持儲存設(shè)置,路由器R1內(nèi)含web服務(wù)器和配置訪問端口的接口;路由器R1提供注冊功能,支持注冊后提供唯一的認(rèn)證key,便于接入設(shè)備的認(rèn)證;路由器R1提供對webdav協(xié)議的支持;路由器R1提供配置同步目錄的接口,路由器R2提供本地同步目錄的配置接口,路由器R2提供監(jiān)控本地文件變化的程序;路由器R2提供處理監(jiān)控本地文件的動作進行響應(yīng)的程序;路由器R2提供查詢路由器R1的同步目錄是否變化的程序。
本發(fā)明與現(xiàn)有技術(shù)相比,有益效果是:本發(fā)明路由器間雙向同步的實現(xiàn)方法及系統(tǒng)實現(xiàn)了主從路由器間雙向同步的,能實現(xiàn)路由器間的文件共享,不同于網(wǎng)盤或電腦共享文件夾,電腦實現(xiàn)共享,則至少不能斷電,而路由器則可以理解成脫機,可以有效的利用路由器全天接入Internet的資源,實現(xiàn)路由器間共享文件。此外,這種雙向文件共享,可以實現(xiàn)小范圍內(nèi)的組網(wǎng),形成私有的共享圈,即:
1、本發(fā)明可以實現(xiàn)主從路由器間實時同步資源。
2、本發(fā)明可以實現(xiàn)路由器脫機共享資源。
3、本發(fā)明可實現(xiàn)小范圍局部組網(wǎng)間分享資源。
附圖說明
圖1是本發(fā)明路由器間雙向同步的實現(xiàn)方法中的程序p2的流程圖。
圖2是本發(fā)明程序p2內(nèi)的線程A的流程圖。
圖3是本發(fā)明程序p2內(nèi)的線程B的流程圖。
圖4是本發(fā)明程序p2內(nèi)的線程C的流程圖。
具體實施方式
下面通過具體實施例對本發(fā)明的技術(shù)方案作進一步描述說明。
術(shù)語解釋
WEB服務(wù)器稱為WWW(WORLD WIDE WEB)服務(wù)器,主要功能是提供網(wǎng)上信息瀏覽服務(wù)。WWW是Internet的多媒體信息查詢工具,是Internet上近年才發(fā)展起來的服務(wù),也是發(fā)展最快和目前用的最廣泛的服務(wù)。正是因為有了WWW工具,才使得近年來Internet迅速發(fā)展,且用戶數(shù)量飛速增長。Web服務(wù)器是可以向發(fā)出請求的瀏覽器提供文檔的程序。
Web服務(wù)器的工作原理并不復(fù)雜,一般可分成如下四個步驟:連接過程、請求過程、應(yīng)答過程以及關(guān)閉連接。連接過程就是Web服務(wù)器和其瀏覽器之間所建立起來的一種連接。查看連接過程是否實現(xiàn),用戶可以找到和打開socket這個虛擬文件,這個文件的建立意味著連接過程這一步驟已經(jīng)成功建立。請求過程就是Web的瀏覽器運用socket這個文件向其服務(wù)器而提出各種請求。應(yīng)答過程就是運用HTTP協(xié)議把在請求過程中所提出來的請求傳輸?shù)絎eb的服務(wù)器,進而實施任務(wù)處理,然后運用HTTP協(xié)議把任務(wù)處理的結(jié)果傳輸?shù)絎eb的瀏覽器,同時在Web的瀏覽器上面展示上述所請求之界面。關(guān)閉連接就是當(dāng)上一個步驟-應(yīng)答過程完成以后,Web服務(wù)器和其瀏覽器之間斷開連接之過程。Web服務(wù)器的上述四個步驟環(huán)環(huán)相扣、緊密相聯(lián),邏輯性比較強,可以支持多個進程、多個線程以及多個進程與多個線程相混合的技術(shù)。
config文件,是給客戶端應(yīng)用程序保存配置信息用的,一般情況,一個應(yīng)用程序只會有一個這樣的文件,在編譯之前,叫做App.config,每次使用Visual Studio編譯,都會Copy到應(yīng)用程序的生成目錄,且Rename為:應(yīng)用程序名.config。
線程,有時被稱為輕量級進程(Lightweight Process,LWP),是程序執(zhí)行流的最小單元。一個標(biāo)準(zhǔn)的線程由線程ID,當(dāng)前指令指針(PC),寄存器集合和堆棧組成。另外,線程是進程中的一個實體,是被系統(tǒng)獨立調(diào)度和分派的基本單位,線程自己不擁有系統(tǒng)資源,只擁有一點在運行中必不可少的資源,但它可與同屬一個進程的其它線程共享進程所擁有的全部資源。一個線程可以創(chuàng)建和撤消另一個線程,同一進程中的多個線程之間可以并發(fā)執(zhí)行。由于線程之間的相互制約,致使線程在運行中呈現(xiàn)出間斷性。線程也有就緒、阻塞和運行三種基本狀態(tài)。線程是程序中一個單一的順序控制流程。在單個程序中同時運行多個線程完成不同的工作,稱為多線程。
Webdav(Web-based distributed authoring and versioning)協(xié)議是基于HTTP 1.1的一個通信協(xié)議,其技術(shù)規(guī)范由IETF RFC 2518定義,它為HTTP 1.1添加了一些擴展,在GET、POST、HEAD等幾個HTTP標(biāo)準(zhǔn)方法以外添加了一些新的方法,使應(yīng)用程序可以直接對Web服務(wù)器直接讀寫,并支持改寫文件鎖定(lock)及解鎖(unlock),還可以支持文件的版本控制。
本發(fā)明的初衷主要是實現(xiàn)以下需求:假如A地區(qū)有一臺路由器,擁有存儲的功能;B地區(qū)也有一臺路由器,同樣提供存儲功能,現(xiàn)需求B地區(qū)路由器的儲存文件的更新或者變動,都能及時上傳至路由器A上,反之亦然,實現(xiàn)路由器間的雙向同步。
為了實現(xiàn)該需求則需要提供至少兩臺路由器,分別部署在A、B地區(qū),A地區(qū)部署的路由器能提供服務(wù)器的請求路徑,提供上傳、下載的權(quán)限,提供客戶端接入的認(rèn)證;B地區(qū)的路由器提供監(jiān)控存儲裝置文件的變化功能,提供上傳文件、下載文件的功能,提供同步文件的時間段設(shè)置。
本實施例的路由器間雙向同步的實現(xiàn)方法,包括以下步驟:
S1,在路由器R1的web服務(wù)器上添加插件A和插件B,插件A和插件B分別用于提供認(rèn)證、產(chǎn)生key和支持webdav協(xié)議,web服務(wù)器還提供UI端配置監(jiān)聽端口,提供保存config文件,提供認(rèn)證的key和賬號以及可同步目錄的config1,config1的文件配置為:{“port”:”<配置的監(jiān)聽端口>”,“<key>”:{"user":"<R2>","syncFloder":"<提供給R2的目錄>"}};
S2,路由器R2提供UI端設(shè)定訪問路由器R1提供的URL請求地址,提供輸入在路由器R1上注冊得到的key,提供設(shè)定路由器R2端監(jiān)控的目錄config2,提供同步的時間點設(shè)置,config2的文件配置為:{“config”:{"serverURL":"http://xx.xx.xx.xx:port/<R1提供的儲存目錄>","key":"<xxxxxx>","localFloder":"/mnt/sda/<R2提供的監(jiān)控目錄>",”syncTime”:”<同步的時間點>”}};
S3,路由器R2提供監(jiān)控目錄變化和針對變化作處理的程序p2;
S4,路由器p2程序由線程A、線程B和線程C組成,三個線程之間協(xié)同配合完成路由器間數(shù)據(jù)的雙向同步;
如圖1所示,程序p2的運行步驟如下:
步驟一,程序初始化,并讀取config2文件;
步驟二,進行相應(yīng)的環(huán)境變量設(shè)定,從而執(zhí)行線程A或線程B或線程C;
線程A用于監(jiān)控目錄的變化,如圖2所示,線程A的執(zhí)行過程如下:
S1,線程A初始化;
S2,監(jiān)控目錄;
S3,儲存變化事件鏈表;
S4,判斷鏈表是否被lock,若鏈表被lock,則等待lock釋放,釋放后進行目錄更新;若鏈表未被lock,則直接進行目錄更新。
線程A,儲存事件的結(jié)構(gòu)體如下:
Typedef struct action Event{
Char action[20];//文件動作事件
Char*oldName;//舊文件名
Char*newName;//新文件名
Char*oldFolder;//舊目錄
Char*nerFolder;//新目錄
}
事件變化列表如下
{“modify”:”<文件被修改>”,
“addfile”:”<新增文件>”,
“move”:”<移動文件>”,
“rename”:”<文件被重命名>”,
“delete”:”<文件被刪除>”,
“dragfile”:”<文件被拖拽>”,
}。
線程B用于處理監(jiān)控的事件,如圖3所示,線程B的執(zhí)行過程如下:
S1,線程B初始化;
S2,判斷同步時間,即判斷路由器R1和路由器R2的時間是否同步,若時間同步,則轉(zhuǎn)至判斷事件鏈表是否被lock;若時間不同步,表明線程阻塞,直到時間段正確,則轉(zhuǎn)至判斷事件鏈表是否被lock;
S3,事件鏈表未被lock,則轉(zhuǎn)至判斷線程C是否在同步,不論線程C是否在同步均要遍歷鏈表依次處理事件。
線程C用于查詢路由器R1的同步目錄文件是否變化,如圖4所示,線程C的執(zhí)行過程如下:
S1,線程C初始化;
S2,判斷同步時間,即判斷路由器R1和路由器R2的時間是否同步,若時間同步,則每間隔5秒查詢路由器R1的同步目錄,并對比5秒內(nèi)路由器R1的同步目錄是否變化;若時間不同步,表明線程阻塞,直到時間段正確,則每間隔5秒查詢路由器R1的同步目錄,并對比5秒內(nèi)路由器R1的同步目錄是否變化;
S3,若路由器R1的同步目錄變化,則判斷線程B是否在本地同步,若線程B未在本地同步,則將路由器R1更新的文件下載至本地;若線程B在本地同步,則等待線程B同步完成。
本發(fā)明優(yōu)選實施例還提供了一種路由器間雙向同步的實現(xiàn)方法的系統(tǒng),其包括路由器R1和路由器R2,路由器R1作為主路由器,路由器R2作為從路由器,路由器R1和R2均支持儲存設(shè)置,路由器R1內(nèi)含web服務(wù)器和配置訪問端口的接口;路由器R1提供注冊功能,支持注冊后提供唯一的認(rèn)證key,便于接入設(shè)備的認(rèn)證;路由器R1提供對webdav協(xié)議的支持;路由器R1提供配置同步目錄的接口,路由器R2提供本地同步目錄的配置接口,路由器R2提供監(jiān)控本地文件變化的程序;路由器R2提供處理監(jiān)控本地文件的動作進行響應(yīng)的程序;路由器R2提供查詢路由器R1的同步目錄是否變化的程序。
本發(fā)明路由器間雙向同步的實現(xiàn)方法及系統(tǒng)實現(xiàn)了主從路由器間雙向同步的,能實現(xiàn)路由器間的文件共享,不同于網(wǎng)盤或電腦共享文件夾,電腦實現(xiàn)共享,則至少不能斷電,而路由器則可以理解成脫機,可以有效的利用路由器全天接入Internet的資源,實現(xiàn)路由器間共享文件。
本發(fā)明采用的此種雙向文件共享,可以實現(xiàn)小范圍內(nèi)的組網(wǎng),形成私有的共享圈。
下面結(jié)合具體實際案例對本發(fā)明的路由器間雙向同步的實現(xiàn)方法作進一步說明。
選用型號為FWR626的斐訊路由器為主路由器,型號為NETGEAR WNDR3700路由器為從路由器,兩者間的雙向同步方法包括以下步驟:
一、在FWR626的斐訊路由器的web服務(wù)器上添加插件A和插件B,插件A用于提供認(rèn)證并產(chǎn)生password,插件B用于支持webdav協(xié)議,web服務(wù)器在用戶界面UI端配置監(jiān)聽端口,web服務(wù)器提供保存config文件,提供認(rèn)證的password和賬號以及可同步目錄的config1文件,config1的文件配置為:{“port”:”<配置的監(jiān)聽端口號>”,“<password>”:{"user":"<R2>","syncFloder":"<提供給NETGEAR WNDR3700的目錄>"}};
二、NETGEAR WNDR3700路由器提供用戶界面UI端設(shè)定訪問FWR626的斐訊路由器提供的URL請求地址,提供輸入在FWR626d的斐訊路由器上注冊得到的password,提供設(shè)定NETGEAR WNDR3700路由器端監(jiān)控的目錄config2文件,提供同步的時間點設(shè)置,config2的文件配置為:{“config”:{"serverURL":"http://192.168.1.1:port/<FWR626d的斐訊路由器提供的儲存目錄>","key":"<password>","localFloder":"/mnt/sda/<NETGEAR WNDR3700路由器提供的監(jiān)控目錄>",”syncTime”:”<同步的時間點>”}};
三、NETGEAR WNDR3700路由器提供監(jiān)控目錄變化和針對變化作處理的程序p2,p2程序由線程A、線程B和線程C組成,線程A用于監(jiān)控目錄的變化,線程A的執(zhí)行過程如下:
S1,線程A初始化;
S2,監(jiān)控配置文件目錄;
S3,儲存配置文件更新鏈表;
S4,判斷鏈表是否被lock,若鏈表被lock,則等待lock釋放,釋放后進行目錄更新;若鏈表未被lock,則直接進行目錄更新。
線程A的儲存事件的結(jié)構(gòu)體如下:
Typedef struct action Event{
Char action[20];//configuration files update
Char*oldName;//config.ini
Char*newName;//new config.ini
Char*oldFolder;//common
Char*nerFolder;//common
}
事件變化列表如下:
{“modify”:”<config.ini修改為new config.ini>”,
“rename”:”<config.ini命名為new config.ini>”,
}。
線程B用于處理配置文件的更新,線程B的執(zhí)行過程如下:
S1,線程B初始化;
S2,判斷同步時間,即判斷FWR626的斐訊路由器與NETGEAR WNDR3700路由器的時間是否同步,若時間同步,則轉(zhuǎn)至判斷文件更新鏈表是否被lock;若時間不同步,表明線程阻塞,直到時間段正確,則轉(zhuǎn)至判斷文件更新鏈表是否被lock;
S3,文件更新鏈表未被lock,則轉(zhuǎn)至判斷線程C是否在同步,不論線程C是否在同步均要遍歷鏈表依次進行文件的更新。
線程C用于查詢路由器FWR626的斐訊路由器的同步目錄文件是否變化,線程C的執(zhí)行過程如下:
S1,線程C初始化;
S2,判斷同步時間,即判斷FWR626的斐訊路由器與NETGEAR WNDR3700路由器的時間是否同步,若時間同步,則每間隔5秒查詢FWR626的斐訊路由器的同步目錄,并對比5秒內(nèi)FWR626的斐訊路由器的同步目錄是否變化;若時間不同步,表明線程阻塞,直到時間段正確,則每間隔5秒查詢FWR626的斐訊路由器的同步目錄,并對比5秒內(nèi)FWR626的斐訊路由器的同步目錄是否變化;
S3,若FWR626的斐訊路由器的同步目錄變化,則判斷線程B是否在本地同步,若線程B未在本地同步,則將FWR626的斐訊路由器更新的文件下載至本地;若線程B在本地同步,則等待線程B同步完成。
上述三個線程根據(jù)相應(yīng)的環(huán)境變量設(shè)定,反過來,將FWR626的斐訊路由器作為從路由器,而NETGEAR WNDR3700路由器作為主路由器,通過三個線程之間協(xié)同配合完成路由器間配置文件更新數(shù)據(jù)的雙向同步。
以上對本發(fā)明的優(yōu)選實施例及原理進行了詳細(xì)說明,對本領(lǐng)域的普通技術(shù)人員而言,依據(jù)本發(fā)明提供的思想,在具體實施方式上會有改變之處,而這些改變也應(yīng)視為本發(fā)明的保護范圍。