專利名稱:互聯(lián)網內網Web服務的訪問方法
技術領域:
本發(fā)明涉及一種互聯(lián)網Web服務的訪問方法,特別涉及一種互聯(lián) 網內網Web服務的訪問方法。
背景技術:
在當今的互聯(lián)網應用中,Web網站成為互聯(lián)網最為重要的基礎應 用。但到目前為止,要使得建立互聯(lián)網Web網站得到普及,能被普通 人所掌握和應用,還存在著一些瓶頸和障礙的問題。首先是建立互聯(lián)網Web網站對于普通用戶來說,技術要求和成本 要求都較高。從技術要求上來說,建立一個筒單的靜態(tài)Web網站,也 需要^f吏用網頁創(chuàng)作工具,如Frontpage 、 Dreamweaver等,并需要管理 和配置Web服務器,這些工作對于普通用戶來說較為專業(yè)和復雜。如果用戶想進一步建立一個更加專業(yè)的動態(tài)Web網站,比如其中 包含一些基本的電子商務和博客(Blog)之類的功能,則必須使用某 種程序語言來進行專業(yè)的設計和編程,并且需要安裝和使用數(shù)據庫, 這對于大多數(shù)非專業(yè)的用戶來說,技術門檻相對較高。除了技術障礙之外,用戶要想建立自己的網站還需要進行購買服 務器、租用具有固定互聯(lián)網IP(IntemetProtocol)的線路、申請網站域名、 運行維護等一系列工作,這些工作對于普通用戶來i兌也較為復雜,并 且成本較高。其次,在今天的Internet中,"Middle-boxes"(即中間設備,如路 由器、防火墻等)已經普遍存在,這些設備具有NAT(NetworkAddress Translation,網絡地址轉換)功能,用來解決IPv4的地址有限及網絡安 全上的問題。其中所述IP是目前全球因特網所采用的TCP/IP協(xié)議族 中的核心協(xié)議,目前IP協(xié)議的版本號是4,筒稱為IPv4。處在Middle-boxes之后的內網上的計算機可以訪問互聯(lián)網上的計 算機,然而,由于這些Middle-boxes后的內網計算機沒有外網IP,所 以,內網中的計算機除非由該Middle-boxes的管理者明確地配置之外, 無法被互聯(lián)網上的計算機訪問。這種不對稱連接和訪問,已經成為互 聯(lián)網應用中的瓶頸問題,這些問題包括無法方便地在內網中建立可被 訪問的Web服務等。上述這些問題甚至可能在使用IPv6協(xié)議后繼續(xù)存在,比如在NAT 被當作兼容IPv4機制的地方,還有當NAT不再需要之后,防火墻將會 依然存在這些問題。目前解決上述這些問題的常見方法及其存在的不足如下第一,將網站的建立和維護工作承包給一個專業(yè)公司或自己聘請 技術人員來解決網站的建立和維護問題,該方法存在著很多例如潛在 費用、外包商誠信、個性化問題、商業(yè)數(shù)據外泄的風險等缺點;第二,通過在互聯(lián)網服務商處申請主機托管,租用空間等服務, 來租用固定外網IP地址,解決服務器、線路和IP的問題,該方法存在 著費用較高,網站管理工作復雜不便,安全保密較弱的缺點;第三,在路由器上配置地址和端口映射,來解決內網計算機被訪 問的問題,該方法的問題在于配置地址和端口映射的方法,它要求用戶必須是相關路由設備的管理者,這樣才能夠有權配置相關的設備, 這在許多現(xiàn)實的網絡環(huán)境下是不現(xiàn)實的,如小區(qū)寬帶、校園網、許多 寫字樓內網等,再者,配置端口映射通常只能將服務端口配置指向一臺內網中的計算機,而其它計算機運行的Web網站則不能夠通過端口 映射來提供訪問,另外,路由器的配置管理對于普通的用戶也較為復雜;第四,通過P2P(Peer to Peer,點對點)技術實現(xiàn)對內網主機的連接 訪問,該方法又包括以下幾種技術方案1、 實現(xiàn)一個新的網絡協(xié)議,就是寫一個類似于TCP/IP的協(xié)議, 由它來代替Windows/Linux / Unix /Unix等系統(tǒng)里的TCP/IP協(xié)議,由它 直接基于網卡硬件獲取數(shù)據,這是十分復雜的,在應用中的可靠性較 低;2、 使用Internet上的外網服務器中轉數(shù)據,但對于大數(shù)據量的中 轉,這種技術受到服務器和網絡的負載極限的限制;3、 依靠Internet上的外網服務器做中介,將兩臺分別處于不同局 域網的計算機之間建立連接,之后該服務器即脫離關系,這種技術需 要在需要連接的雙方的計算機上安裝相應的P2P軟件,對于現(xiàn)有Web 網站的訪問來說,技術上很復雜,而且連接成功率隨網絡環(huán)境的不同 而差別4交大。發(fā)明內容基于上述現(xiàn)有技術中種種長期以來的障礙和瓶頸,本發(fā)明提出了 一種互聯(lián)網內網Web月良務的訪問方法,其使用P2PI(Point to Point Indirect,點對點跳轉)技術,可有效和經濟地解決以上問題。本發(fā)明的目的在于提供一種方法,使得處在內網中的沒有外網IP 地址的計算機可以方便地被尋址,從而使得互聯(lián)網上的其它計算機能夠方便地訪問到所述內網計算機上的Web服務。本發(fā)明的目的還在于提供一種方法,通過動態(tài)地探知變化的IP, 從而可以解析IP動態(tài)變化的域名,以解決使用動態(tài)IP的內網或計算機 不能擁有域名的問題。為達到上述目的,本發(fā)明提出一種互聯(lián)網內網Web服務的訪問方 法,其包括以下步驟在互聯(lián)網中設置通道服務器、動態(tài)域名解析服務器和管理服務器, 這些服務器由一個或多個硬件服務器實現(xiàn);所述管理服務器通過互聯(lián)網接收提供Web服務的客戶端的連接請 求,并判斷該客戶端是否具有外網IP地址;如果該客戶端具有外網IP地址,則管理服務器創(chuàng)建或更新該客戶 端的參數(shù)記錄,同時通知該客戶端啟動本地的通道服務器,并繼續(xù)接 收其他客戶端的請求;如果客戶端為內網計算機,則管理服務器將若干通道服務器的地 址信息返回給客戶端,所述客戶端選4奪一個通道服務器,并與其之間 建立數(shù)據通道,同時所述動態(tài)域名解析服務器更新其IP地址信息。所述通道服務器啟動后,由所述管理服務器更新該通道服務器的 狀態(tài)。所述通道服務器建立通道進程池,其中的每個通道進程都同時監(jiān) 聽客戶端的建立通道的連接請求和互聯(lián)網上的訪客對通道所對應的Web服務的訪問請求。當所述管理服務器接收到客戶端的建立通道的請求時,所述通道 服務器為該客戶端生成一個單獨的通道子線程,該子線程接收客戶端 的數(shù)據,并從通道進程池中選擇一個通道進程分配給該客戶端。所述通道服務器創(chuàng)建故障偵測服務,該故障偵測服務通過定時的 偵測信息,監(jiān)測所有已連接的客戶端以及網絡是否正常,每收到一個 客戶端反饋的偵測信息時,記錄該信息的時間。所述通道服務器建立通道狀態(tài)檢查線程,以定時檢查每一個通道 的狀態(tài),并根據所述偵測信息的接收狀態(tài),判定客戶端或網絡是否出 現(xiàn)故障,以相應地保持或關閉該客戶端的通道,更改狀態(tài)表中該條通 道的狀態(tài)。所述客戶端在啟動時,首先讀取一個記錄所有所述管理服務器地 址列表的本地配置文件,然后同時向每個管理服務器發(fā)送信息包,并 根據各服務器的運行狀態(tài)選擇一個最合適的管理服務器進行連接。所述客戶端在選定合適的通道服務器地址后,向所述通道服務器 發(fā)出建立通道的連接請求,所述通道服務器對該客戶端進行測試;如果測試結果是客戶端處于內網中,或是有防火墻封閉了相關端 口,那么該客戶端啟動客戶端的通道進程,與通道月良務器的相應通道 進程建立TCP通道。所述內網中的客戶端與通道服務器建立TCP通道后,更改本地Host文件,更新遠程DNS服務器內容,以及相關的服務的本地數(shù)據庫, 并定時向通道服務器發(fā)送偵測信息。本發(fā)明的互聯(lián)網內網Web服務訪問方法與以往技術相比的有益效 果在于本發(fā)明能夠使得擁有外網IP的用戶既是一個客戶網站,又是一個 通道服務器,在用戶對外提供網站服務的同時,以其通道服務器來為 其它的用戶提供通道服務,這樣就解決了 P2PI中轉技術所帶來的服務 器帶寬瓶頸問題?;诒景l(fā)明的內網Web服務訪問方法,使得提供內網Web服務的 用戶在建立自己的網站時,不需要編程和使用復雜的網頁設計軟件, 很大程度上降低了用戶建立互聯(lián)網Web服務網站的技術門檻,有利于 推動互聯(lián)網Web網站的普及;同時,可以讓用戶用任何一 臺能夠上網的Windows/Linux/Unix計 算機來安裝Web網站,不需要專門的服務器,并且,用戶的計算機在 接入Internet時,無論使用什么類型的接入線路,如ADSL、 Cable、無 線、GSM、 CDMA、小區(qū)寬帶或是數(shù)字專線等等,都可以安裝自己的 互聯(lián)網Web網站,不會受到線路類型的制約;基于本發(fā)明的訪問方法,使得中小企業(yè)和個人可以在臺式機或筆 記本上安裝互聯(lián)網Web網站,不需要承擔購買服務器和主機托管的昂 貴費用,可以有效地降低成本;同時,本發(fā)明可以讓內網中的所有計 算機都可安裝互聯(lián)網Web網站,并被訪問,而不需要額外的外網IP支持??梢杂行У卮┩窱nternet中的各種Middle-boxes ,不受路由器、交 換機和防火墻等Middle-boxes的管轄權和配置的限制,并可突破端口 封鎖;本發(fā)明使得服務提供商不需要設置大量通道服務器,大大降低了 服務商的運營成本;本發(fā)明能夠自動地探測并選擇合適的服務器,能夠自動探測服務 器和網絡的故障,自動選4奪合適的服務器來重新建立TCP通道,并在 服務器間平衡數(shù)據流量,從而提供更加可靠的訪問服務,并能大大減 少網絡惡意攻擊所帶來的損害;可以做到利用所有互聯(lián)網計算機分布P2PI服務器,解決服務商的 線路帶寬問題;使用簡單方便,不需對服務器做任何額外配置。
圖1為實現(xiàn)本發(fā)明的互聯(lián)網內網的Web服務訪問方法的網絡配置圖;圖2為圖1中的P2PI管理服務器的工作流程圖; 圖3為圖1中的P2PI通道服務器的工作流程圖; 圖4為圖1中的內網P2PI客戶端的工作流程圖。
具體實施方式
下面結合附圖對本發(fā)明的互聯(lián)網內網的Web服務訪問方法的優(yōu)選 實施例進行詳細說明。圖。如圖所示,該網絡配置包括四個部分,P2PI ( Point to Point Indirect) 通道服務器2、 P2PI客戶端(包括外網P2PI客戶端4和內網P2PI客戶 端6 )、 P2PI管理服務器1及動態(tài)域名解析服務器3 ( DDNS, Dynamic Domain Name Server )。首先,在Internet上設置一個或若干服務器,并在這些服務器上安 裝P2PI管理服務器軟件、通道服務器軟件和動態(tài)域名解析服務器軟件, 這些服務器軟件可以安裝在不同的硬件服務器上,也可以安裝在同一 個硬件服務器上。同時在提供Web服務的客戶端計算機上安裝P2PI客戶端軟件,使 之成為P2PI客戶端4、 6。所述P2PI客戶端4、 6為所述客戶端計算機 中的一個控制模塊,其與P2PI管理服務器1通信,并根據P2PI管理 服務器1的指令決定是否啟動P2PI通道服務器2,即P2PI通道服務器 2的通道連接啟動是由P2PI客戶端6發(fā)起的。圖2為圖1中的P2PI管理服務器的工作流程圖。如圖所示,首先啟動P2PI管理服務器1 (S21),所述P2PI管理服 務器1通過互聯(lián)網接收來自所述P2PI客戶端4、 6的連接請求(S22 ), 并判斷該客戶端是否具有外網IP地址(S23)。如果判斷結果為該P2PI客戶端具有外網IP地址,即該客戶端為外 網P2PI客戶端4、并且可被外界直接訪問,且所述外網P2PI客戶端4 為第一次連接P2PI管理服務器1,則所述P2PI管理服務器1創(chuàng)建外網 P2PI客戶端4的參數(shù)記錄,包括域名、IP地址、是否已啟動其通道服務器、最后一次通信的時間等,同時通知所述外網P2PI客戶端4啟動其本地的通道服務器(S24),并繼續(xù)接收其他客戶端的請求,即每個 具有外網IP地址的客戶端,皆可以作為一個所述P2PI通道服務器2, 為其它處于內網中的客戶端提供通道服務。外網P2PI客戶端4第一次 連接P2PI管理服務器以后每次連接只需要更新記錄,但如果P2PI管 理服務器1判斷所述外網P2PI客戶端4已離線,則刪除本次連接的記 錄,直至所述外網P2PI客戶端4下次重新連接P2PI管理服務器1,則 重新建立該客戶端的參數(shù)記錄,并重復所述更新參數(shù)記錄的過程。如果判斷結果為該P2PI客戶端為通過路由器或防火墻5連接到 P2PI管理服務器1的內網P2PI客戶端6,則所述P2PI管理服務器1 從若干個P2PI通道服務器2中選擇最合適的一個或多個P2PI通道服 務器2,并將其地址信息返回給所述內網P2PI客戶端6 ( S25 )。所述選擇P2PI通道服務器2的規(guī)則如下按照平均在線時長,把 所有P2PI通道服務器2分為4個可用級別,其中平均在線時間越長, 服務器級別越高,P2PI管理服務器1將優(yōu)先選擇級別高的服務器,如 果某一級別服務器已被占用超過80%,則順次選擇下一級別的服務器。 按照上述規(guī)則,選擇本次與P2PI管理服務器1連接時間大于30分鐘 的、足夠數(shù)量的P2PI通道服務器2。其中所選擇的P2PI通道服務器2 級別越低,返回給內網P2PI客戶端6的服務器地址列表將越長。所述內網P2PI客戶端6從中選擇一個P2PI通道服務器,并與其 之間建立數(shù)據通道,同時所述內網P2PI客戶端6向所述動態(tài)域名解析 服務器3發(fā)送更新其IP地址信息的請求,隨后由動態(tài)域名解析服務器 3更新其地址信息。圖3為圖1中的P2PI通道服務器的操作流程圖。如圖所示,首先啟動P2PI通道服務器2 (S31 ),連接到P2PI管理 服務器1并在其中更新其自身的狀態(tài)記錄(S32),如IP地址,連接時間等。隨后,P2PI通道服務器2建立起通道進程通信服務線程,等待接 收通道程序發(fā)送的UDP包(包含通道程序的pid),并將相關信息寫入狀 態(tài)表(S33 )。所述通道程序為P2PI通道服務器2用于建立通道的一個 模塊,該通道程序啟動后即建立起通道進程,進程以進程號(PID, Process ID)作為唯一標識。P2PI通道服務器2與通道程序各自獨立, 為了在二者之間傳遞數(shù)據,P2PI通道服務器2需要建立一個上述通道 進程通信服務線程,為與通道進程之間進行通信時服務,并以該服務 線程來監(jiān)聽和接收通道程序傳遞過來的數(shù)據。通道程序將所建立的通 道進程的包括進程號、通道的本地IP、內外網標識、監(jiān)聽端口等狀態(tài) 信息,以UDP (User Datagram Protocol,用戶凄史據才艮協(xié)i義, 一種網絡 通信協(xié)議)包的形式,傳送給P2PI通道服務器2, P2PI通道服務器2 則將上述進程信息寫入本地的狀態(tài)表,以備P2PI管理服務器1使用。由于可能會建立多個通道進程,因此P2PI通道服務器2將建立一 個通道進程池,以對這些通道進程進行管理,通道進程置于該進程池, 可以便于被取出使用并在使用完畢后可以放回進程池內,減少了頻繁 啟動關閉進程的系統(tǒng)開銷。根據配置文件中的設置,P2PI通道服務器 2啟動通道服務端程序,創(chuàng)建服務端的通道進程池,修改狀態(tài)表。所述 配置文件為通道服務器啟動時所需要的參數(shù)配置,如超時時間、緩沖 大小、記錄文件名稱等。通道進程池建立后,每一個通道進程都在通 道程序的啟動和調用下,在兩個端口監(jiān)聽, 一個端口監(jiān)聽內網P2PI客戶端6的建立通道的連接請求,另一端口監(jiān)聽互聯(lián)網上的訪客對所建立的通道對應的Web服務的訪問(S34 )。P2PI通道服務器2將建立一個主服務進程,該主服務進程是一個 總體的控制進程,它接收并處理客戶端的連接請求,然后為客戶端分 配一個處理線程,由該線程負責和客戶端交換數(shù)據并建立通道。同時 該主服務進程開啟了 一個TCP服務,在指定的端口監(jiān)聽內網P2PI客戶 端6的TCP連接請求。當收到請求時,P2PI通道服務器2主服務進程 為發(fā)出該請求的內網P2PI客戶端6生成一個單獨的通道建立請求處理 子線程,該子線程接收所述內網P2PI客戶端6的內外網標識和其域名 等相關數(shù)據,遍歷狀態(tài)表,從通道進程池中分配一個通道進程給內網 P2PI客戶端6,并將建立通道需要的包括通信端口 ,心跳時間,狀態(tài) 表序號等相關信息返回至內網P2PI客戶端6 (S35)。P2PI通道服務器2在主服務進程建立之后,將創(chuàng)建一個故障偵測 服務線程,該故障偵測服務線程通過定時的心跳信息(Heartbeat)監(jiān) 測所有已連接的內網P2PI客戶端6以及網絡是否正常(S36)。為了監(jiān) 測內網P2PI客戶端6是否正常運行和網絡通信是否暢通,內網P2PI 客戶端6每隔一定時間向P2PI通道服務器2發(fā)送一個UDP格式的"心 跳包",服務端接收到此心跳包后,在本地更新對應的內網P2PI客戶 端6的狀態(tài),標識此客戶端的狀態(tài)為"仍然在線"。P2PI通道服務器2 以 一定的時間間隔在本地輪流查詢所有內網P2PI客戶端6的狀態(tài),如 果某個客戶端超過指定時限仍然沒有發(fā)送"心跳包",則認為該客戶端 "已經離線",這樣就完成了整個的監(jiān)測過程。S37步驟為建立通道狀態(tài)檢查線程。在創(chuàng)建了故障偵測服務線程 后,P2PI通道服務器2建立通道狀態(tài)檢查線程來定時檢查每一個通道的狀態(tài),該線程每隔一定時間遍歷一遍狀態(tài)表,如果在設定的時間間 隔內,沒有收到某個內網P2PI客戶端6的心跳信息,則判定該客戶端 或網絡出現(xiàn)故障,相應地關閉該客戶端的通道,更改狀態(tài)表中該通道 的狀態(tài)。作為目前的通道模塊,如果在一定時間間隔內通道內沒有數(shù) 據通信,則該通道自動中斷。為了避免通道中斷,通道狀態(tài)檢查線程的另一個功能是在設定的較長時間段內,無訪客訪問內網P2PI客戶端 6提供的Web服務時,通過通道向該客戶端的Web網站發(fā)送一個URL 請求,該請求是一個簡單的訪問網站#>目錄的請求。通道傳遞該請求 之后,將更新狀態(tài)表中的"通道最后使用時間",這樣"通道的狀態(tài)" 就發(fā)生了更新,避免了因超時無訪問而導致通道中斷,以此來保證通 道的活動性和連接速度,并更改狀態(tài)表通道的狀態(tài)。圖4為圖1中的P2PI客戶端的工作流程圖。如圖所示,首先啟動P2PI客戶端(S41 ),讀取一個本地配置文件 (S42),該文件記錄所有P2PI管理服務器1的地址列表,并可以通過 更新程序來自動更新。然后同時向每個P2PI管理服務器1發(fā)送UDP 信息包,接收返回信息,以偵測每個P2PI管理服務器1的運行狀態(tài)即 該管理服務器的存活與否以及P2PI客戶端到該管理服務器的通信速 度,并根據各管理服務器的運行狀態(tài)選擇一個通信速度最快而且比較 穩(wěn)定的P2PI管理服務器1進行連接(S43 )。P2PI客戶端在選定了所需連接的P2PI管理服務器1后,向該服務 器發(fā)出請求,獲得若干合適的P2PI通道服務器2地址(S44), —般情 況下,P2PI客戶端需要同時連接1-3個通道服務器(視通道服務器的 級別而定),所傳回的通道服務器數(shù)量約為其4倍,即4-12個;然后向 這些P2PI通道服務器2發(fā)出建立通道的連接請求,由P2PI通道服務器2對P2PI客戶端的相關情況做出測試,以獲得該客戶端的相關信息, 這些信息包括該客戶端計算機是否處在一個內網中,是否有防火墻封閉了相關端口等。然后在S45步驟中,根據上述信息,決定是否啟動 建立通道,并將建立通道需要的相關信息發(fā)送回該客戶端。如果P2PI通道服務器2測試的結果是所述P2PI客戶端為內網P2PI 客戶端6,或是有防火墻封閉了相關端口,那么在S46步驟中,內網 P2PI客戶端6啟動自身的通道進程,與P2PI通道服務器2的相應通道 進程建立TCP(Transmission Control Protocol)通道。如果P2PI通道服務器2測試的結果是所述P2PI客戶端為外網P2PI 客戶端4,則由P2PI管理服務器1創(chuàng)建或更新外網P2PI客戶端4的參 數(shù)記錄并通知外網P2PI客戶端4啟動其通道服務器為其它處于內網中 的用戶提供通道服務,并繼續(xù)接收其他P2PI客戶端的請求,直接進入 S47步驟,更改本地Host文件,更新所述的動態(tài)域名解析服務器3中 的內容,以及該P2PI客戶端所提供的Web服務的本地數(shù)據庫。并在 S48步驟中,定時向服務器發(fā)送測試信息,用來測試服務器和網絡狀態(tài) 是否正常,以及向服務器表明該P2PI客戶端在正常工作。在S49步驟中進行判斷,如果服務器與網絡狀態(tài)正常,則繼續(xù)進 行測試,并等待訪客的訪問。如果客戶端發(fā)送了心跳包但是沒有得到 服務器給予的回應,則可能是服務器離線或者網絡中斷,需要重啟客 戶端,重復以上S42-S49步驟。其中重啟客戶端的過程由P2PI客戶端 自動進行。當Internet訪客訪問客戶端的Web網站時,訪客首先打開瀏覽器, 并輸入客戶網站的域名,在進行DNS解析時,首先會請求訪客所在的網絡服務托管商(ISP)處的通用DNS,然后該通用DNS再按照域名 解析協(xié)議標準,將請求逐步轉發(fā)至所述的動態(tài)域名解析服務器3,最終 完成域名的解析,如果該網站的P2PI客戶端沒有建立通道,則表明該 客戶網站可以直接訪問,解析出域名的IP地址即是該客戶網站的IP, 可被用來與客戶網站直接建立連接,訪問客戶網站。如果P2PI客戶端與P2PI通道服務器2建立了通道,則解析出域 名的IP地址即是P2PI通道服務器2的IP地址,訪客的訪問會指向該 通道服務器(要訪問的客戶網站即是與此P2PI通道服務器2建立了通 道連接),并且該通道服務器會根據訪客要訪問的客戶Web網站的域 名,將訪問轉向相應的通道,通過通道將訪問-清求發(fā)送至客戶端的Web 網站,并將請求返回的網頁數(shù)據發(fā)送回訪客端,完成一個訪問過程。本發(fā)明不局限于上述特定實施例子,在不背離本發(fā)明精神及其實形,但這些相應改變和變形都應屬于本發(fā)明所附權利要求保護范圍之內。
權利要求
1. 一種互聯(lián)網內網Web服務的訪問方法,其特征在于,包括以下步驟在互聯(lián)網中設置通道服務器、動態(tài)域名解析服務器和管理服務器,這些服務器由一個或多個硬件服務器實現(xiàn);所述管理服務器通過互聯(lián)網接收提供Web服務的客戶端的連接請求,并判斷該客戶端是否具有外網IP地址;如果判斷為該客戶端具有外網IP地址,則所述管理服務器創(chuàng)建或更新該客戶端的參數(shù)記錄,同時通知該客戶端啟動本地的通道服務器,并繼續(xù)接收其他客戶端的請求;如果該客戶端為內網計算機,則所述管理服務器將若干通道服務器的地址信息返回給該客戶端,所述客戶端從中選擇一個通道服務器,并與其之間建立數(shù)據通道,同時由所述動態(tài)域名解析服務器更新所述客戶端的IP地址信息。
2、 如權利要求1所述的互聯(lián)網內網Web服務的訪問方法,其特征 在于,所述通道服務器啟動后,由所述管理服務器更新該通道服務器的 狀態(tài)信息。
3、 如權利要求1所述的互聯(lián)網內網Web服務的訪問方法,其特征 在于,所述通道服務器建立通道進程池,其中的每個通道進程都同時監(jiān) 聽所述客戶端發(fā)出的建立通道請求和互聯(lián)網上的訪客對通道所對應的提供Web服務的客戶端的訪問請求。
4、 如權利要求1所述的互聯(lián)網內網Web服務的訪問方法,其特征 在于,當所述管理服務器接收到客戶端的建立通道的請求時,所述通道 服務器為該客戶端生成一個單獨的通道子線程,該子線程接收客戶端 的數(shù)據,并從通道進程池中選擇一個通道進程分配給該客戶端。
5、 如權利要求1所述的互聯(lián)網內網Web服務的訪問方法,其特征 在于,所述通道服務器創(chuàng)建故障偵測服務,該故障偵測服務通過定時的 偵測信息,監(jiān)測所有已連接的客戶端以及網絡是否正常。
6、 如權利要求5所述的互聯(lián)網內網Web服務的訪問方法,其特征 在于,所述通道服務器建立通道狀態(tài)檢查線程,以定時檢查每一個通道 的狀態(tài),并根據所述偵測信息的接收狀態(tài),判定客戶端或網絡是否出 現(xiàn)故障,以相應地保持或關閉該客戶端的通道,更改狀態(tài)表中該條通 道的狀態(tài)。
7、 如權利要求1所述的互聯(lián)網內網Web服務的訪問方法,其特征 在于,所述客戶端在啟動時,首先讀取一個記錄所有所述管理服務器地 址列表的本地配置文件,然后同時向每個管理服務器發(fā)送信息包,并 根據各服務器的運行狀態(tài)從中選擇一個進行連接。
8、 如權利要求7所述的互聯(lián)網內網Web服務的訪問方法,其特征 在于,所述客戶端在選定合適的通道服務器地址后,向所述通道服務器 發(fā)出建立通道的連接請求,所述通道服務器對該客戶端進行測試;如果測試結果是客戶端處于內網中,或是有防火墻封閉了相關端 口,那么通道服務器通知該客戶端啟動客戶端的通道進程,與通道服 務器的相應通道進程建立數(shù)據通道。
9、 如權利要求8所述互聯(lián)網內網Web服務的訪問方法,其特征在于,所述內網中的客戶端與通道服務器建立通道連接后,更改本地 Host文件,更新所述動態(tài)域名解析服務器上的信息,以及客戶端所4是 供Web服務的本地數(shù)據庫,并定時向通道服務器發(fā)送偵測信息。
全文摘要
本發(fā)明提出一種互聯(lián)網內網Web服務的訪問方法,其包括以下步驟將互聯(lián)網中的一個或多個硬件服務器設置為通道服務器、動態(tài)域名解析服務器和管理服務器;所述管理服務器通過互聯(lián)網接收提供Web服務的客戶端的建立通道的請求,并判斷該客戶端是否具有外網IP地址;如果該客戶端具有外網IP地址,則啟動其通道服務器,并繼續(xù)接收其他客戶端的請求;如果客戶端為內網計算機,則所述客戶端選擇一個通道服務器并與其之間建立數(shù)據通道,同時所述動態(tài)域名解析服務器更新其IP地址信息。本發(fā)明的內網Web服務訪問方法,可以有效地穿透Internet中的各種Middle-boxes的限制,并可突破端口封鎖。
文檔編號G06F17/30GK101282328SQ20071009075
公開日2008年10月8日 申請日期2007年4月2日 優(yōu)先權日2007年4月2日
發(fā)明者瑜 李, 謝培亮 申請人:北京下午茶科技有限公司