專利名稱:簡化通過冗余的可尋址網關訪問其他系統的系統中的連接建立的制作方法
技術領域:
本發明一般涉及網絡通信,更具體的,涉及用于簡化通過冗余的可尋址網關訪問其他系統的系統中的連接建立的方法和裝置。
背景技術:
網關通常指一種能夠在相異環境中運行的系統之間建立連接的設備。通常提供網關來實現不同網絡(如令牌環網與以太網)、不同應用(如使用不同協議實現的文件傳輸)之間的通信。
通常將網關實施成可尋址的(即能通過地址訪問)。如在相關領域中眾所周知的,網關一側的系統可使用該網關地址通過該網關將數據傳送到另一個系統。
環境通常包括多個冗余網關,這主要是為了實現一定的可靠性。也就是說,即使網關之一變得不工作(無法訪問)了,也可以提供冗余來使用另一個(冗余的)網關讓系統之間進行通信。
在一種現有方法中,為各個冗余網關提供不同地址(如不同的IP地址),且要求系統將數據發送到冗余網關中的有效(可使用)網關。在這種方法中,如果系統當前正在與第一個網關通信,且第一個網關變得不工作了,則之后上述系統需要使用相應的不同地址將數據發送到其他網關。
這種方法的一個問題在于,各個系統均需要具有識別網關是否可用的“智能”,并將數據通過可用網關進行轉發。換言之,如果當前可用的網關中之一變為不工作,則通過這個網關轉發數據的系統需要動態地識別出該網關的不可訪問性,并使用剩下的冗余網關中的一個網關。
至少在某些環境中,不能接受與若干系統的實施方式相關的復雜性以及與上述動態識別相關的開銷。因此,需要用于簡化通過冗佘的可尋址網關訪問其他系統的系統中的連接建立的方法和裝置。
發明內容
本發明的一個方面簡化了通過活動網關訪問其他系統的第一系統的實施方式,其中,該活動網關對應于多個冗余網關中的任何一個網關。在一個實施例中,將第一系統配置成使用預先指定的地址與活動網關通信,且將選作活動網關的具體網關配置成可通過預先指定的地址訪問。結果,該第一系統可通過任何使用相同的預先指定地址的活動網關訪問其他系統。
根據本發明的另一個方面,如果活動網關變得不工作,則將冗余網關中的另一個網關動態地配置成可通過同一預先指定的地址訪問。結果,第一系統可使用相同的預先指定地址繼續訪問其他系統。
以下結合附圖詳細描述了本發明的其他特征和優點以及本發明的各個實施例的結構和運行。在附圖中,相同的附圖標記表示相同的、功能相似的和/或結構相似的元件。通過相應附圖標記中最左邊的數字指明了元件首次出現時所在的附圖。
將結合附圖來描述本發明,以下簡要地說明了這些附圖。
圖1是示例環境的框圖,在該環境中,可實現本發明的幾個方面。
圖2的流程圖示出了根據本發明的一個方面的、系統和其他使用任一冗余網關(該冗余網關使用預先指定的地址)的系統進行通信的方式。
圖3的流程圖示出了本發明的一個實施例中的、在當前的活動網關變得不工作時另一個冗余網關充當活動網關的方式。
圖4的流程圖示出了一個實施例中的主網關(在次網關之前進行初始化)充當活動網關的方式。
圖5的流程圖示出了一個實施例中的次網關(在主網關之前進行初始化)充當活動網關的方式。
圖6的框圖示出了一個實施例中的所實施的主網關和次網關的細節。
圖7的框圖示出了一個實施例中的網關的軟件實施方式。
具體實施例方式
1.概述根據本發明的一個方面,在冗余網關之間實現了通信,以將這些網關之一確定為活動網關。將該活動網關配置成可通過預先指定的地址訪問。如果因任何原因活動網關變得不工作,則將上述冗余網關中的另一個網關確定為活動網關,并用上述預先指定的地址來配置該網關(在該預先指定的地址被變得不工作的網關丟棄后)。結果,可以將所有設計成通過冗余網關進行通信的系統實施成使用該單個(預先指定的)地址進行通信,從而,可以簡化這些系統的實施方式。
以下,為說明的目的,結合一些實例描述了本發明的某些方面。應當懂得,陳述了許多具體細節、關系、和方法,以便讓讀者完全理解本發明。然而,相關領域的技術人員容易看出,不具備上述一個或多個具體細節(或使用其他方法),也可以實施本發明。在其他情況下,為避免干擾對本發明的說明,未示出眾所周知的結構或操作。
2.示例環境圖1是示例生產環境的框圖,在該環境中,可實現本發明的幾個方面。所示的環境100包括現場設備110-A至110-X、I/O模塊120-A至120-C、控制盒130-A至130-C、通信量控制器140、處理系統150和160、客戶系統180-A至180-K,以及服務器190-A和190-B。以下更詳細的描述了各個模塊。
為說明和簡潔起見,所示的示例環境100包含很少的客戶系統、可作為網關的兩個處理系統150和160。然而,典型的環境中可包含以上各個類型以及其他類型的多個模塊。也可以在其他環境中實現本發明的幾個方面。
現場設備110-A至110-X通常表示諸如傳感器(測量溫度、流量、壓力等各種變量)、控制元件(如閥、開關)和發射器等部件。為簡潔起見,在某種場景中描述了本發明的幾個方面,其中,各現場設備通過網關之一對從客戶系統接收的查詢進行回應。然而,現場設備可執行其他任務來支持生產過程,并且,也可以在這些任務中應用本發明的各個方面。可以以已知的方式來實施現場設備110-A至110-X。
取決于數據發往的目標地址,I/0模塊120-A至120-C中的各個模塊將數據發送到通信量控制器140或相應的現場設備之一。可以將命令(來自客戶系統)轉發到相應的現場設備110-D至110-X,并將從作出回應的現場設備接收的數據轉發到通信量控制器140。
控制盒130-A至130-D中的各個控制盒接收來自相應的現場設備(如傳感器)的數據,以預定方式處理該數據(如根據某一控制算法),并生成控制信號。然后,用該控制信號來操作另一現場設備(如打開/關閉閥)。
通信量控制器140從處理系統接收數據,并根據通常包含在該數據中的目標/目的地地址將數據轉發到相應的I/O或控制盒。可以將從I/O或控制盒接收的數據轉發到作為網關的相應處理系統。I/O模塊、控制盒、通信量控制器連接到處理網絡125。可以以已知的方式來實施I/O模塊120-A至120-D、控制盒130-A至130-D和通信量控制器140。
服務器190-A和190-B提供了用于存儲和提供各種配置數據(如由網關使用的IP地址(以下將進一步詳細描述)、控制參數(用于配置各種控制環)和各種從現場設備接收的數據(如警報))的庫。所示的服務器190-A和190-B連接到通信網絡175(如以太網)。可以以已知的方式實施服務器190-A和190-B。
客戶系統180-A至180-K代表支持應用(如與所實施過程的配置、運行和控制相關的應用)的數字處理系統,這些系統可以與其他系統/設備進行通信。客戶系統180-A至180-K(連接到網絡175)中的各個系統通過網關150和160之一與現場設備110-A至110-X通信。
實施網關150和160是為了提供冗余,在任何時刻,只能有一個網關作為活動網關。在一個實施例中,網關用于連接以不同網絡協議和介質運行的網絡,從而,在未經任何修改的情況下傳輸了有效載荷分組。如下文進一步詳細描述的,本發明的一個方面使得可以用單個地址來配置客戶系統180-A至180-K中的各個系統,且不管網關150/160中的哪一個是當前的活動網關,所述系統與現場設備進行通信。
3.簡化系統的實施方式圖2的流程圖闡述了根據本發明的一個方面的、簡化通過冗余的可尋址網關訪問其他系統的系統中的連接建立的方式。為說明的目的,結合圖1描述了該流程圖,然而,也可以將本發明的幾個方面用于其他環境之中。該方法以步驟201開始,其中,將控制立即轉至步驟210。
在步驟210中,用戶用等于預先指定的地址的網關地址配置各個系統(如用戶系統180-A至180-K,服務器系統190-A和190-B)。該配置一般取決于系統的實施方式,并且,可以以已知方式進行該配置。在步驟220中,可提供多個網關,且每個網關均能作為活動網關。例如,如以下進一步詳細說明的,在給定的時間點處,網關150和160中的每個網關均可作為活動網關。
在步驟230中,選擇具體網關作為活動網關。一般來說,需要將一個可使用/可訪問的網關選為活動網關。以下描述了選擇活動網關的示例方法和在活動網關發生故障的情況下改變活動網關的方式。為說明的目的,假設將網關150選作活動網關。
在步驟240中,將確定為活動網關的具體網關(在該說明性實例中為150)配置為可通過網關地址(在步驟210中配置的)訪問。在幾個系統中,將連接到網絡的接口配置成接收具有相應地址的分組。接口的配置也取決于系統上執行的具體環境(如操作系統),并可以以已知的方式來實現。
在步驟280中,由于步驟210和240中的配置的緣故,各個系統通過活動網關(如果在其間需要網關)向其他系統發送數據。對相關領域的技術人員而言,顯而易見,該數據形成了用于建立連接性的基礎。控制轉至步驟299,在該步驟中,結束了該方法。
從而,在上面的實例中,將網關150描述為作為活動網關運行。根據本發明的另一方面,如果當前的活動網關因任何原因變成不工作的(不可訪問),則另一個冗余網關成為活動網關。結合根據本發明的一個方面的、當目前的活動網關150變得不可訪問或不工作時網關160開始作為活動網關工作的方式,繼續進行本說明。
4.目前的活動網關變成不工作的圖3的流程圖示出了在當前的活動網關變成不工作時另一個網關自動承擔活動網關的職責的方式。為說明的目的,結合圖1和圖2說明了該流程圖。然而,也可以將該流程圖用于其他環境。該方法以步驟301開始,其中,控制立即轉至步驟310。
在步驟340中,確定當前的活動網關是否工作。可以使用各種不同的方法(如試圖通過活動網關進行連接的外部系統,或內部生成的用于檢查各種硬件/軟件部件的狀態的命令)來確定當前的活動網關是否工作。如果失去連接,則控制轉至步驟350,否則將其轉至步驟340。
在步驟350中,確定/選擇了可作為活動網關的具體的冗余(備用)網關。一般來說,可以將任何工作的冗余網關選為活動網關。以下進一步詳細描述了一種執行步驟340和350的示例方法。
在步驟360中,用預先指定的地址(在步驟210中提到的)配置在步驟350中選擇的網關,這使得可通過預先指定的地址訪問選擇的網關。結果,通過網關與其他系統聯系的系統可以使用該選定的網關進行通信,而不需要對這些系統進行任何修改。在步驟399處結束了該方法。
從而,使用圖3的方法,如果當前的活動網關變為不工作的,則可以將活動網關換至另一個冗余系統。假定任何冗余系統均可作為活動網關,當初始化整個環境時,需要選擇一個網關作為活動網關。以下結合圖4說明了進行這種選擇的方式。
5.在初始化過程中選擇活動網關根據本發明的一個方面,將兩個網關之一配置成缺省的活動(主)網關,將另一個網關配置成次網關。一般來說,將首先初始化的具體網關指定為充當活動網關的角色(通過用預先指定的網關地址對其進行配置),并且,剩下的網關不用于轉發數據。另外,如以下結合圖4說明的,在某些情況下,主網關和次網關可進行地址交換。
圖4的流程圖示出了本發明的一個實施例中的、當進行初始化時主網關(或缺省的活動網關)充當活動網關的角色的方式。為說明的目的,假設分別將網關150和160指定為主網關和冗余網關。
根據在Bootp協議(相關領域中眾所周知的)背景中實施的一種慣例,用奇數的設備號配置主網關,并用下一個更大的偶數的設備號來配置次網關。一般將設備號與從bootp服務器(如190-B)接收的基址(偶數)相加,以形成網關的IP地址。與關于主和次網關的慣例一致,為網關150和160分別配置奇數的(如3)和下一個更大的偶數(如4)的設備索引號。該方法以步驟401開始,其中,控制立即轉至步驟410。
在步驟410中,初始化指定為主網關的網關。在該說明性實例中,當對網關150(主網關)進行初始化時,可以從內部存儲器(如從使用Microsoft產品族中的Windows服務例程的記錄中)中讀取設備索引號。從而,網關150將3讀為相應的設備索引號。
在步驟430中,主網關(150)確定其自身地址。例如,網關150發送Bootp請求至服務器190-B,并接收作為回應的基址。可以將主網關的自身地址計算為(基址+設備號)。將設備號和基址配置成使得主網關150的自身地址等于在各客戶系統180-A至180-K中配置的預先指定的地址。
在步驟440中,主網關(150)確定上述預先指定的網關地址是否已經被網絡中的另一個網關使用。例如,網關150用該預先指定的地址執行查驗(ping)命令(如相關領域中廣為人知的ICMP回聲請求)來進行這樣的確定。如果接收到回應,則可確定該預先指定的地址已經在使用。或者,可以在路徑156上實施定制協議(如使用RS-232串行協議)來確定次網關是否已經在使用該預先指定的網關地址。
如果該預先指定的網關地址已經在使用,則控制轉至步驟460,否則轉至480。在步驟460中,網關150確定是否可以交換地址。在一個實施例中,僅當網關160中未初始化其他應用(在下文中參考圖6進行說明)時,才可以交換為冗余(次)網關配置的該預先指定的地址。如果可以交換地址,則控制轉至步驟470,否則轉至步驟490。
在步驟470中,為主網關(150)配置該預先指定的地址,并可以傳輸任何要求的狀態信息(與應用相關)。在一個實施例中,冗余網關(160)丟棄預先指定的地址,并使用與設備號對應的地址(如與設備號4對應的IP地址)。由于冗余網關作為活動網關的緣故,因此,響應主網關(150)發送的請求,可以傳輸包含在冗余網關(160)中的任何數據結構。在步驟480中,主網關(150)作為活動網關運行,且控制轉至步驟499。
在步驟490中,主網關(150)保持靜止,也就是說,因為次網關(160)使用預先指定的地址,因而次網關(160)繼續充當活動網關。控制轉至步驟499,在該步驟中,結束了本方法。
從而,主網關150開始作為活動網關運行,這便在各個系統之間提供了連通性。下面,繼續進行有關當網關160初始化時其作為活動網關工作的方式的說明。
圖5的流程圖示出了本發明的一個實施例中的、次網關(或缺省的次網關)在初始化時充當活動網關的方式。該方法開始于步驟501,其中,控制立即轉至步驟510。
在步驟520中,可以初始化指定作為次網關(160)的網關(在指定作為主網關的網關150之前初始化)。在步驟530中,次網關160通過計算基址和相應設備號之和確定了其自身地址。可以從服務器系統190-B接收(響應發送的請求)基址。自身地址的確定方式與結合網關150在步驟430中所述的計算類似。
在步驟540中,次網關(160)確定預先指定的地址是否已經被網絡中的另一個網關使用。例如,與步驟440相似,網關160用預先指定的地址執行查驗(ping)命令(如相關領域中廣為人知的ICMP回聲請求)或使用定制協議來進行這樣的確定。如果另一個系統已在使用該預先指定的地址,則控制轉至步驟590,否則轉至步驟570。
在步驟590中,次網關160保持靜止(如用戶所希望的,網關160繼續作為次系統)。控制轉至步驟499,在該步驟中,結束了本方法。
在步驟570中,將次網關(160)配置成可使用預先指定的地址進行訪問。網關160丟棄了與設備號(4)對應的自身地址,并配置了上述預先指定的地址。地址的配置和丟棄一般取決于網關上使用的具體操作系統,并可以以已知方式實現。在步驟580中,次網關(160)作為活動網關運行。控制轉至步驟599,在該步驟中,結束了本方法。
從而,網關160可作為活動網關運行。下面,繼續進行有關網關150和160進行通信來確定活動網關的角色的說明。
6.網關的實施例圖6的框圖闡述了一個實施例中的網關150和160的細節。如圖所示,網關150包括入站端口610、語法分析器620、數據訪問模塊630、冗余管理器640、應用模塊645和出站接口649。所示的網關160包括入站端口660、語法分析器670、數據訪問模塊680、冗余管理器690、應用模塊695和出站接口699。網關160的不同模塊的實施方式類似于網關150所包含的相應模塊的實施方式,為簡潔起見,以下僅描述包含在網關150中的模塊。
入站接口610提供電接口、物理接口和協議接口來從不同的客戶系統(在路徑157上)和通信量控制器140(在路徑154上)接收分組。將所接收分組轉發至語法分析器620。類似地,出站接口649提供電接口、物理接口和協議接口來將分組發送至各種客戶系統和通信量控制器140。可以以已知的方式來實施入站接口610和出站接口649。
語法分析器620檢查各個接收的分組,并將接收的分組轉發至數據訪問模塊630、冗余管理器640和應用模塊645之一。轉發到哪個具體模塊一般取決于各接收的分組的首部內容(如協議,端口號等)。可以以已知方式實施語法分析器620。
數據訪問模塊630監聽各端口上的命令,并初始化(開始執行)應用模塊645來處理命令。另外,將命令(由客戶系統發送)轉發到應用模塊645,并且,可通過出站接口649發送從應用模塊645接收的數據(從現場設備收集的)。例如,可以將尋求現場設備110-A的輸入參數值的命令(操作員使用客戶系統180-B發出的)轉發至應用模塊645,并且,可使用出站接口649將相應的響應(從應用模塊645接收的)轉發至客戶系統180-B。
響應對來自數據訪問模塊630的命令的接收,應用模塊645通過控制模塊(如130-A)和I/O模塊(如120-A)與現場設備進行通信,并接收代表過程參數的數據分組。可以將這些數據分組轉發至數據訪問模塊。可根據從數據訪問模塊630接收的命令/請求接收/收集來自相應設備的特定數據。應用模塊645也可確認(指明運行狀態)由冗余管理器640周期性發送的消息。應用模塊645可執行各種任務來支持生產過程,并可根據特定環境的要求來以已知的方式實現。
冗余管理器640確定網關150是否可作為主網關(如步驟230中所述)。在確定自身地址、檢查具有相同地址的另一個系統是否已連接到網絡175(如步驟430和440中所述)的基礎上進行了上述確定。一旦冗余管理器確定網關150可作為網關,則可以如步驟470中所述的那樣配置預先指定的地址。
當網關150未作為主網關時,冗余管理器640可以與冗余管理器690連接,以確定網關160(應作為主網關)是否在工作。可通過周期性地交換心跳消息來確定工作狀態。可使用串行通信路徑(156)或其他對相關領域技術人員而言顯而易見的恰當通信方法來交換這類消息。如果網關160未工作,則冗余管理器640可通過適當的重新配置(如用預先指定的地址來配置接口,并盡可能地傳輸應用模塊信息)使網關150成為主網關。
當150作為主網關時,冗余管理器640可通過路徑156周期性地發送指明網關150的工作狀態的心跳消息。可以類似地從另一系統中的冗余管理器接收心跳消息。在發送心跳消息之前,冗余管理器640還可以檢查應用模塊645和數據訪問模塊630是否在工作。通過閱讀本文公開的內容,相關領域的技術人員容易看出,在冗余管理器640和690之間可以實施各種類型的協議,以傳送/檢查網關的工作狀態。
從而,可以設計各種模塊來以協作的方式實現本發明的幾個方面。下面,繼續進行有關基本以軟件的形式實施網關150和160的方式的說明。
7.軟件實施方式圖7的框圖示出了本發明的一個實施例中的、代表基本以軟件形式實施的網關150和/或160的數字網關700的細節。系統700可包括一個或多個處理器(如中央處理單元(CPU)710)、隨機存取存儲器(RAM)720、輔助存儲器730、圖形控制器760、顯示單元770、網絡接口780和輸入接口790。除顯示單元770以外,所有設備均可通過通信路徑750(包括相關領域中眾所周知的幾種總線)進行彼此之間的通信。以下將進一步詳細描述圖7中的各個部件。
CPU 710可執行存儲在RAM 720中的指令,以提供本發明的幾個特征。CPU 710可包括多個處理單元,各處理單元可設計用于特定的任務。或者,CPU 710可以僅包括單個通用處理單元。RAM 720可使用通信路徑750從輔助存儲器730接收指令。這些指令可確定能作為活動網關的網關、將(活動)網關配置成可通過預先指定的地址訪問,如以上部分所述。
圖形控制器760根據從CPU 710接收的數據/指令生成顯示單元770的顯示信號(如RGB格式的信號)。顯示單元770包含顯示屏,以顯示由顯示信號確定的圖像。輸入接口790可對應于鍵盤和/或鼠標。
輔助存儲器730可包括硬盤驅動器735、閃存736和可拆存儲驅動器737。輔助存儲器730可存儲數據和軟件指令(如預先指定的地址、API等),這使得系統700能提供本發明的一些特征。可以在可拆存儲單元740上提供某些或所有數據和指令,且可以通過可拆存儲驅動器737讀這些數據和指令,并將它們提供給CPU 710。軟盤驅動器、磁盤驅動器、CD-ROM驅動器、DVD驅動器、閃存,可拆存儲芯片(PCMCIA卡,EPROM)是可拆存儲驅動器737的例子。
可以使用與可拆存儲驅動器737兼容的介質和存儲格式來實施可拆存儲單元740,這使得可拆存儲驅動器737可以讀數據和指令。從而,可拆存儲單元740包括其上存有計算機軟件和/或數據的計算機可讀存儲介質。
在本文中,術語“計算機程序產品”一般用于表示可拆存儲單元740或安裝在硬盤驅動器735中的硬盤。這些計算機程序產品是用于向系統700提供軟件的裝置。CPU 710可取得這些軟件指令,并執行這些指令來提供如上文所述的本發明的各種特征。
8.結論盡管上文中已經描述了本發明的各種實施例,但是,應當懂得,它們是通過舉例而非限制的方式給出的。從而,本發明的廣度和范圍應不限于以上所述的任何示范實施例,而僅應當根據以下的權利要求和它們的等同物進行限定。
權利要求
1.一種簡化通過活動網關訪問多個系統的第一系統的實施方式的方法,其中,所述活動網關對應于多個冗余網關中的任一個網關,所述方法包括使用預先指定的地址將所述第一系統配置成與所述活動網關通信;從所述多個冗余網關中選擇具體的網關作為所述活動網關;將所述具體網關配置成可通過所述預先指定的地址訪問。
2.如權利要求1所述的方法,還包括確定所述具體網關是否在工作;如果所述具體網關不在工作,選擇所述多個冗余網關中的另一個網關作為所述活動網關;將所述多個冗余網關中的所述另一個網關配置成可通過所述預先指定的地址訪問。
3.如權利要求2所述的方法,其中,所述確定包括周期性地向所述具體網關發送心跳消息,并且,如果接收到對應于所述心跳消息的回應,則確定所述具體網關在工作。
4.如權利要求1所述的方法,其中,所述選擇包括在初始化所述多個冗余網關中的各個網關時,檢查所述預先指定的地址是否已經在使用;如果所述預先指定的地址未被使用,則將該冗余網關配置成所述活動網關,否則,讓其保持靜止。
5.如權利要求4所述的方法,還包括當初始化所述多個網關中的各個網關時,讀相應的設備號;響應發送到服務器的請求而接收基址;將自身地址計算為等于所述基址加所述設備號。
6.如權利要求4所述的方法,其中,所述檢查包括使用所述預先指定的地址執行查驗命令;檢查對應于所述查驗命令的回應;以及如果所述回應包含預先指定的地址,則確定所述預先指定的地址已經在使用,否則,確定該預先指定的地址未被使用。
7.如權利要求4所述的方法,其中,所述多個冗余網關包括被指定為缺省的活動網關的主網關和被指定為缺省的冗余網關的次網關,其中,所述檢查在所述主網關中執行,并且,確定所述預先指定的地址已經在使用,所述方法還包括確定所述預先指定的地址是否可以被交換;如果所述預先指定的地址可以被交換,則將所述主網關配置成可通過所述預先指定的地址訪問。
8.如權利要求7所述的方法,其中,在生產計劃中實施所述方法,所述第一系統包括客戶系統,且所述多個系統中的各個系統包括現場設備和控制設備之一。
9.一種聯網環境,該環境包括多個系統;第一系統,該系統使用預先指定的地址來與活動網關通信,以便與所述多個系統中的各個系統通信;以及多個冗余網關,其中,將所述多個冗余網關中的任何被選作所述活動網關的網關配置成可通過所述預先指定的地址訪問。
10.如權利要求9所述的聯網環境,其中,所述多個網關用于確定所述活動網關是否在工作;如果所述活動網關不在工作,則選擇所述多個冗余網關中的另一個網關作為活動網關;將所述多個冗余網關中的所述另一個網關配置成可通過所述預先指定的地址訪問。
11.如權利要求10所述的聯網環境,其中,通過周期性地向所述活動網關發送心跳消息來執行所述確定,并且,如果接收到對應于所述心跳消息的回應,則得出所述活動網關在工作的結論。
12.如權利要求9所述的聯網環境,其中,通過以下步驟進行所述選擇在初始化所述多個冗余網關中的各個網關時,檢查所述預先指定的地址是否已經在使用;如果所述預先指定的地址未被使用,則將該冗余網關配置成所述活動網關,否則,讓其保持靜止。
13.如權利要求12所述的聯網環境,其中,所述多個冗余網關包括被指定為缺省的活動網關的主網關和被指定為缺省的冗余網關的次網關,其中,所述檢查在所述主網關中執行,并且,確定所述預先指定的地址已經在使用,所述主網關可用于確定所述預先指定的地址是否可以被交換;如果所述預先指定的地址可以被交換,則將所述主網關配置成可通過所述預先指定的地址訪問。
14.如權利要求13所述的聯網環境,其中,所述第一系統包括客戶系統,且所述多個系統中的各個系統包括現場設備和控制設備之一。
15.一種載有一個或多個指令序列的計算機可讀介質,所述指令序列用于使多個冗余網關中的各網關簡化通過活動網關訪問多個系統的第一系統的實施方式,其中,所述活動網關對應于多個冗余網關中的任一網關,其中,通過一個或多個處理器執行所述一個或多個指令序列而導致所述一個或多個處理器進行以下動作將所述多個冗余網關中的任何選作所述活動網關的網關配置成可通過所述預先指定的地址訪問;其中,通過僅使用所述預先指定的地址來通過所述活動網關進行通信,所述第一系統能訪問所述多個系統。
16.如權利要求15所述的計算機可讀介質,還包括確定所述活動網關是否在工作;如果所述活動網關不在工作,則選擇所述多個冗余網關中的另一個網關作為活動網關;將所述多個冗余網關中的所述另一個網關配置成可通過所述預先指定的地址訪問。
17.如權利要求16所述的計算機可讀介質,所述確定包括周期性地向所述活動網關發送心跳消息,并且,如果接收到對應于所述心跳消息的回應,則確定所述活動網關在工作。
18.如權利要求15所述的計算機可讀介質,其中,所述選擇包括在初始化所述多個冗余網關中的各個網關時,檢查所述預先指定的地址是否已經在使用;如果所述預先指定的地址未被使用,則將該冗余網關配置成所述活動網關,否則,讓其保持靜止。
19.如權利要求18所述的計算機可讀介質,還包括當初始化所述多個網關中的各個網關時,讀相應的設備號;響應發送到服務器的請求而接收基址;以及將自身地址計算為等于所述基址加所述設備號。
20.如權利要求18所述的計算機可讀介質,其中,所述檢查包括使用所述預先指定的地址執行查驗命令;檢查對應于所述查驗命令的回應;以及如果所述回應包含預先指定的地址,則確定所述預先指定的地址已經在使用,否則,確定該預先指定的地址未被使用。
21.如權利要求18所述的計算機可讀介質,其中,所述多個冗余網關包括被指定為缺省的活動網關的主網關和被指定為缺省的冗余網關的次網關,其中,所述檢查在所述主網關中進行,并且,確定所述預先指定的地址已經在使用,所述計算機可讀介質還包括確定所述預先指定的地址是否可以被交換;如果所述預先指定的地址可以被交換,則將所述主網關配置成可通過所述預先指定的地址訪問。
全文摘要
根據本發明的一個方面,通過預先指定的地址將任何選作活動網關的冗余網關配置成可訪問的。結果,任何通過網關與其他系統通信的系統可以使用相同的預先指定的地址訪問其他系統,而不管哪些冗余網關在作為活動網關工作,從而,簡化了這些系統的實施方式。
文檔編號H04L12/56GK1993967SQ200580025665
公開日2007年7月4日 申請日期2005年6月2日 優先權日2004年6月4日
發明者M·夏馬, R·基爾蒂韋蒂爾, B·約瑟夫, I·班納吉, A·切爾諾古佐夫 申請人:霍尼韋爾國際公司