TWI397296B - Server system and method for user registeration - Google Patents

Server system and method for user registeration Download PDF

Info

Publication number
TWI397296B
TWI397296B TW097149539A TW97149539A TWI397296B TW I397296 B TWI397296 B TW I397296B TW 097149539 A TW097149539 A TW 097149539A TW 97149539 A TW97149539 A TW 97149539A TW I397296 B TWI397296 B TW I397296B
Authority
TW
Taiwan
Prior art keywords
proxy
service
proxy servers
registration
backup
Prior art date
Application number
TW097149539A
Other languages
Chinese (zh)
Other versions
TW201025961A (en
Inventor
Wei Yuan Hsu
Kuo Chen Wang
Chung Ju Chang
Original Assignee
Univ Nat Chiao Tung
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Univ Nat Chiao Tung filed Critical Univ Nat Chiao Tung
Priority to TW097149539A priority Critical patent/TWI397296B/en
Publication of TW201025961A publication Critical patent/TW201025961A/en
Application granted granted Critical
Publication of TWI397296B publication Critical patent/TWI397296B/en

Links

Description

伺服器系統與使用者註冊方法Server system and user registration method

本發明是有關於一種伺服器系統與一種使用者註冊方法,且特別是有關於多客戶端的一種伺服器系統與一種使用者註冊方法。The present invention relates to a server system and a user registration method, and more particularly to a server system for a multi-client and a user registration method.

在資訊化時代,網路應用與服務對於現代人而言,日益重要。無論是產業或個人的資訊處理,倚賴網路進行各項事務已日漸普及,網路應用與服務亦與時俱進地邁向多元化的發展,諸如電子商務(E-Commerce)、網路電話(VoIP)、視訊會議(Video Conference)、多媒體資源(Multi-Media Resource)交流、企業電子資料交換…等等。同時,亦有相關的網路通訊協定(Communications Protocol)陸續被制定,以滿足趨勢所需。像是應用層(Application Layer)下的會議初始化協定(Session Initiation Protocol,SIP)即是一種應用傳輸影片、語音、網路電話、即時通信、線上遊戲…等等多種多媒體資訊型式的網路協定。In the age of information, web applications and services are increasingly important to modern people. Whether it is industry or personal information processing, relying on the Internet for various matters has become increasingly popular, network applications and services are also advancing towards diversified development, such as e-commerce (E-Commerce), Internet telephony (VoIP), Video Conference, Multi-Media Resource exchange, corporate electronic data exchange, etc. At the same time, there are related communication protocols (Communications Protocol) are being developed to meet the trend. For example, the Session Initiation Protocol (SIP) under the Application Layer is a network protocol that uses a variety of multimedia information types such as video, voice, VoIP, instant messaging, online games, and so on.

也因應這些網際網路上多元化檔案型式的資料傳輸與大量負載,提升網路服務的可靠性(Reliability)與可用性(Availability)更是網路技術開發者、軟硬體設備業者以及網路供應商所不斷切磋琢磨、精益求精的目標,以期望能夠達到電信級(Carrier-Grade)99.999%之高可用性(High Availability)傳輸標準。In response to the multi-file data transmission and heavy load on these Internet networks, the reliability and availability of network services are also improved by network technology developers, hardware and software equipment providers and network providers. The goal of continuous improvement and excellence is expected to achieve Carrier-Grade's 99.999% High Availability transmission standard.

以上述應用於網路電話、多媒體檔案傳輸的SIP網路而言,往往將使用者的註冊資訊,儲存在獨立的資料庫內,當此資料庫系統發生異常或失去連線時,即會造成單點失效問題(Single Point of Failure Problem,SPOF),使得伺服器的註冊等等網路功能停擺,影響網路伺服器的服務品質與高可用性的期望。In the above SIP network applied to Internet telephony and multimedia file transmission, the user's registration information is often stored in an independent database. When the database system is abnormal or loses connection, it will cause The Single Point of Failure Problem (SPOF) causes server registration and other network functions to stop, affecting the service quality and high availability expectations of the network server.

本發明提出一種伺服器系統與一種使用者註冊方法,能夠避免單一資料庫異常所造成的單點失效問題,以提供高可用性的網路服務。The present invention provides a server system and a user registration method that can avoid single point failure caused by a single database exception to provide a highly available network service.

本發明提出一種伺服器系統,適用於多個客戶端裝置,包括多個代理伺服器(Proxy Server),用以提供代理服務與註冊服務。且分別具有記憶體,以分別儲存客戶端裝置藉由註冊服務產生的多個註冊資訊。同時,亦包括多個備援代理伺服器,分別具有記憶體,以分別備份註冊資訊,用以在判斷代理伺服器其中之一無法提供代理服務或註冊服務時,以備援代理伺服器其中之一來替代。The present invention provides a server system suitable for a plurality of client devices, including a plurality of proxy servers (Proxy Server) for providing proxy services and registration services. And each has a memory to store a plurality of registration information generated by the client device by using the registration service. At the same time, it also includes a plurality of backup proxy servers respectively having memories for respectively backing up the registration information for use in the backup proxy server when one of the proxy servers is unable to provide the proxy service or the registration service. One is to replace.

在本發明之一實施例中,上述之伺服器系統更包括多個服務存取點(Service Access Point,SAP),用以讓各客戶端裝置,透過服務存取點其中之一,連接至代理伺服器其中之一。In an embodiment of the present invention, the server system further includes a plurality of service access points (SAPs) for allowing each client device to connect to the agent through one of the service access points. One of the servers.

在本發明之一實施例中,上述之伺服器系統,其服務存取點與代理伺服器為一對一對應。In an embodiment of the invention, the server system has a one-to-one correspondence between the service access point and the proxy server.

在本發明之一實施例中,上述之伺服器系統,當代理伺服器其中之一無法提供代理服務或註冊服務時,將備援伺服器其中之一對應至無法提供代理服務或註冊服務的代理伺服器所對應的服務存取點。In an embodiment of the present invention, the server system, when one of the proxy servers fails to provide the proxy service or the registration service, associates one of the backup servers with the proxy that cannot provide the proxy service or the registration service. The service access point corresponding to the server.

在本發明之一實施例中,上述之伺服器系統,其服務存取點分別對應一網域,且客戶端裝置分別屬於此些服務存取點所對應網域其中之一。In an embodiment of the present invention, the service access point of the server system corresponds to a network domain, and the client device belongs to one of the network domains corresponding to the service access points.

在本發明之一實施例中,上述之伺服器系統,其代理伺服器與備援代理伺服器分別週期地傳送控制訊息給彼此,以監聽彼此的控制訊息,來判斷代理伺服器是否正常提供代理服務或註冊服務。In an embodiment of the present invention, the server system, the proxy server and the backup proxy server periodically transmit control messages to each other to monitor each other's control messages to determine whether the proxy server provides the proxy normally. Service or registration service.

在本發明之一實施例中,上述之伺服器系統,當客戶端裝置分別送出註冊資訊給代理伺服器時,代理伺服器將各自接收的註冊資訊同步地更新至彼此的記憶體中,並備份至備援代理伺服器的記憶體中。In an embodiment of the present invention, in the server system, when the client device separately sends the registration information to the proxy server, the proxy server synchronously updates the registration information received by each to the memory of each other, and backs up To the memory of the backup proxy server.

在本發明之一實施例中,上述之伺服器系統,其代理伺服器根據會議初始化協定(Session Initialization Protocol,SIP)提供代理服務與註冊服務。In an embodiment of the present invention, the server system has a proxy server that provides proxy services and registration services according to a Session Initialization Protocol (SIP).

從另一觀點來說,本發明更提出一種使用者註冊方法,適用於多個客戶端裝置,包括提供多個代理伺服器與多個備援代理伺服器,其中代理伺服器與備援代理伺服器分別具有一記憶體,並且藉由代理伺服器,提供一代理服務與一註冊服務。From another point of view, the present invention further provides a user registration method, which is applicable to multiple client devices, including providing multiple proxy servers and multiple backup proxy servers, wherein the proxy server and the backup proxy server Each has a memory and provides a proxy service and a registration service by a proxy server.

當接收到由客戶端裝置藉由註冊服務產生的多個註冊資訊時,分別儲存註冊資訊至代理伺服器的記憶體中,並備份註冊資訊至備援代理伺服器中,以及判斷代理伺服器是否正常提供該註冊服務。當代理伺服器其中之一無法提供註冊服務時,以備援代理伺服器其中之一來替代。When receiving a plurality of registration information generated by the client device by the registration service, respectively storing the registration information into the memory of the proxy server, and backing up the registration information to the backup proxy server, and determining whether the proxy server is The registration service is normally provided. When one of the proxy servers is unable to provide registration services, one of the backup proxy servers is substituted.

在本發明之一實施例中,上述之使用者註冊方法,其中各客戶端裝置透過多個服務存取點裝置其中之一連接至代理伺服器其中之一,且服務存取點與代理伺服器為一對一對應。並且,由備援代理伺服器其中之一替代代理伺服器其中之一的步驟包括,將備援伺服器其中之一對應至無法提供該註冊服務的代理伺服器所對應的服務存取點。In an embodiment of the present invention, the user registration method, wherein each client device is connected to one of the proxy servers through one of the plurality of service access point devices, and the service access point and the proxy server For one-to-one correspondence. And, the step of replacing one of the proxy servers by one of the backup proxy servers includes: matching one of the backup servers to a service access point corresponding to the proxy server that cannot provide the registration service.

在本發明之一實施例中,上述之使用者註冊方法,判斷代理伺服器是否正常提供註冊服務的步驟包括,首先,從代理伺服器與備援代理伺服器週期地傳送一控制訊息給彼此。之後,由代理伺服器與備援代理伺服器監聽彼此的控制訊息。In an embodiment of the present invention, the user registration method described above, the step of determining whether the proxy server normally provides the registration service includes, firstly, periodically transmitting a control message from the proxy server and the backup proxy server to each other. After that, the proxy server and the backup proxy server listen to each other's control messages.

在本發明之一實施例中,上述之使用者註冊方法,當客戶端裝置分別送出註冊資訊給代理伺服器時,代理伺服器將各自接收的註冊資訊同步地更新至彼此的記憶體中,並備份至備援代理伺服器的記憶體中。In an embodiment of the present invention, in the user registration method, when the client device separately sends the registration information to the proxy server, the proxy server synchronously updates the registration information received by the proxy server into each other's memory, and Back up to the memory of the backup proxy server.

在本發明之一實施例中,上述之使用者註冊方法,其代理伺服器根據會議初始化協定提供代理服務與註冊服務。In an embodiment of the present invention, in the above user registration method, the proxy server provides the proxy service and the registration service according to the conference initialization protocol.

基於上述,本發明的伺服器系統與使用者註冊方法,藉由代理伺服器與備援代理伺服器各自擁有的記憶體用來同步儲存客戶端裝置的註冊資訊。因此,可避免資料庫單點失效的問題。另外,當代理伺服器其中之一失效時,可立即地以備援代理伺服器來接手。因此,可維持伺服器系統的高可用性。Based on the above, the server system and the user registration method of the present invention are used to synchronously store the registration information of the client device by using the memory owned by the proxy server and the backup proxy server. Therefore, the problem of single point of failure of the database can be avoided. In addition, when one of the proxy servers fails, it can be taken over immediately by the backup proxy server. Therefore, the high availability of the server system can be maintained.

為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。The above described features and advantages of the present invention will be more apparent from the following description.

圖1為本發明實施例之一伺服器系統應用於網路環境的示意圖。請參考圖1,網路環境10包括一伺服器系統100與多個客戶端裝置C1、C2、C3、C4、C5、C6。伺服器系統100包括多個代理伺服器112、114、116與多個備援代理伺服器。雖然,在本實施例中,代理伺服器112~116的數量為3個,而代理伺服器122、124的數量為2個,但在另一未繪示的實施例中,代理伺服器與備援代理伺服器的數量亦可分別為單個或是按照需求來增減數量。FIG. 1 is a schematic diagram of a server system applied to a network environment according to an embodiment of the present invention. Referring to FIG. 1, the network environment 10 includes a server system 100 and a plurality of client devices C1, C2, C3, C4, C5, and C6. The server system 100 includes a plurality of proxy servers 112, 114, 116 and a plurality of backup proxy servers. Although, in this embodiment, the number of proxy servers 112-116 is three, and the number of proxy servers 122, 124 is two, in another embodiment not shown, the proxy server and the standby The number of proxy servers can also be single or increased or decreased according to demand.

代理伺服器112~116用以提供代理服務與註冊服務,且分別具有一記憶體(未繪示),以分別儲存客戶端裝置C1~C6藉由註冊服務產生的多個註冊資訊。舉例來說,這些代理伺服器112~116可分別透過一開放原始碼(Open Source)程式OpenSER軟體來提供代理服務與註冊服務。在本實施例中,代理伺服器112~116可根據一會議初始化協定提供代理服務與註冊服務。The proxy servers 112-116 are configured to provide proxy services and registration services, and respectively have a memory (not shown) for storing a plurality of registration information generated by the client devices C1 C C6 by the registration service. For example, the proxy servers 112-116 can provide proxy services and registration services through an open source OpenScript software, respectively. In this embodiment, the proxy servers 112-116 can provide proxy services and registration services in accordance with a conference initiation protocol.

此外,備援代理伺服器122、124亦分別具有一記憶體,以分別備份客戶端裝置C1~C6的這些註冊資訊。當判斷代理伺服器112~116其中之一無法提供代理服務或註冊服務時,即可以備援代理伺服器122、124其中之一來替代,以維持伺服器系統的可用性。In addition, the backup proxy servers 122 and 124 also have a memory to back up the registration information of the client devices C1 C C6, respectively. When it is judged that one of the proxy servers 112-116 is unable to provide the proxy service or the registration service, one of the proxy servers 122, 124 can be replaced instead to maintain the availability of the server system.

例如,當Domain A的客戶端裝置C4傳送註冊資訊給代理伺服器112時,此註冊資訊將被儲存在代理伺服器112的記憶體中。並且,代理伺服器112會將所儲存註冊資訊同步地備份到至代理伺服器114~116與備援代理伺服器122~124的記憶體內。是故,儲存於代理伺服器114~116中的每一筆資料都能夠同步地更新到備援代理伺服器中122~124。For example, when the client device C4 of Domain A transmits registration information to the proxy server 112, the registration information will be stored in the memory of the proxy server 112. Moreover, the proxy server 112 synchronously backs up the stored registration information to the memory of the proxy servers 114-116 and the backup proxy servers 122-124. Therefore, each of the data stored in the proxy servers 114-116 can be updated synchronously to the backup proxy servers 122-124.

以上有關於註冊資訊如何儲存在代理伺服器112~116與同步備份到備援代理伺服器122~124的記憶體當中;以及,伺服器系統100如何判斷使用中的代理伺服器114~116中有何者沒有正常地提供服務,並且以備援代理伺服器122、124其一替代的流程,將會在稍後的使用者註冊方法中詳細地說明。The above is related to how the registration information is stored in the memory of the proxy servers 112-116 and the synchronous backup to the backup proxy servers 122-124; and how the server system 100 determines that the proxy servers 114-116 in use have Whichever does not provide the service normally, and the alternative process of the backup proxy server 122, 124 will be described in detail in a later user registration method.

在本實施例中,代理伺服器112~116、備援代理伺服器122、124例如與客戶端裝置C1~C3位於同一網域D(以下簡稱Domain D)。此外,客戶端裝置C1~C3可透過一會議初始化協定網路N(以下簡稱SIP網路N)與代理伺服器112~116、備援代理伺服器122、124相連接。另外,客戶端裝置C4~C6則可分別位於與Domain D不同的網域A、B、C(以下簡稱Domain A、B、C)。In this embodiment, the proxy servers 112-116 and the backup proxy servers 122 and 124 are located in the same domain D (hereinafter referred to as Domain D), for example, with the client devices C1 to C3. In addition, the client devices C1 to C3 can be connected to the proxy servers 112-116 and the backup proxy servers 122 and 124 through a conference initiation protocol network N (hereinafter referred to as SIP network N). In addition, the client devices C4 to C6 may be located in different domains A, B, and C (hereinafter referred to as Domain A, B, and C) different from the domain D.

此外,伺服器系統100更可包括多個服務存取點132、134、136,且客戶端裝置C4~C6可分別透過服務存取點132~136來連接至代理伺服器112~116或備援代理伺服器122、124。服務存取點132~136可與代理伺服器112~116一對一對應。舉例來說,服務存取點132~136可分別為一閘道器(Gateway),以允許Domain A~C封包進入Domain D中。在本實施例中,服務存取點132~136可整合於代理伺服器112~116。詳細來說,代理伺服器112~116例如可透過OpenSER的分派器(Dispatcher)模組,而分別設定一虛擬網路網址(Virtual IP Address)。如此一來,位在Domain A~C等不同網域下的客戶端裝置C4~C6即可藉由這些虛擬網路網址連接至代理伺服器112~116。In addition, the server system 100 may further include a plurality of service access points 132, 134, 136, and the client devices C4 C C6 may be connected to the proxy servers 112-116 or backup through the service access points 132-136, respectively. Proxy servers 122, 124. Service access points 132-136 may be in one-to-one correspondence with proxy servers 112-116. For example, the service access points 132-136 can each be a gateway to allow the Domain A~C packet to enter the Domain D. In this embodiment, the service access points 132-136 can be integrated into the proxy servers 112-116. In detail, the proxy servers 112-116 can respectively set a virtual IP address through the OpenSER Dispatcher module. In this way, the client devices C4~C6 located in different domains such as Domain A~C can be connected to the proxy servers 112-116 by these virtual network URLs.

此外,在另一未繪示的實施例中,這些服務存取點132~136亦可整合於單一的分派伺服器。當分派伺服器接收到封包時,可判斷封包的來源是Domain A~C中的何者,並轉送至代理伺服器112~116中對應的一台。In addition, in another embodiment not shown, the service access points 132-136 can also be integrated into a single dispatch server. When the dispatching server receives the packet, it can determine which source of the packet is the domain A~C and forward it to the corresponding one of the proxy servers 112-116.

在本實施例中,當Domain A中的客戶端裝置C4所送出封包的目的地位址(Destination Address)為代理伺服器112的虛擬網路網址時,封包即會經由服務存取點132而傳送至代理伺服器112。也就是說,Domain A~C會對應到個別的服務存取點132~136,以分別由不同的代理伺服器112~116來提供來自個別Domain A~C的註冊服務與代理服務。In this embodiment, when the destination address of the packet sent by the client device C4 in the domain A is the virtual network address of the proxy server 112, the packet is transmitted to the service access point 132 via the service access point 132. Proxy server 112. That is to say, Domain A~C will correspond to individual service access points 132-136 to provide registration services and proxy services from individual Domain A~C by different proxy servers 112-116, respectively.

例如,由代理伺服器112經由服務存取點132,來對Domain A的客戶端裝置C4提供註冊服務與代理服務;由代理伺服器114經由服務存取點134,來對Domain B的客戶端裝置C5提供註冊服務與代理服務;由代理伺服器116經由服務存取點136,來對Domain C的客戶端裝置C6提供註冊服務與代理服務。此外,同樣位於Domain D的客戶端裝置C1~C3則可由代理伺服器112~116中的任何一台來提供服務。當Domain D的客戶端裝置C1~C3對代理伺服器112~116中其中一台進行註冊時,註冊資訊可同步地儲存至其他台。當然,亦可由客戶端裝置C1~C3同時對所有的代理伺服器112~116進行註冊,以確保註冊資訊同步。For example, the proxy server 112 provides a registration service and a proxy service to the client device C4 of the domain A via the service access point 132; the client device of the domain B is served by the proxy server 114 via the service access point 134. C5 provides a registration service and a proxy service; the proxy server 116 provides a registration service and a proxy service to the client device C6 of the Domain C via the service access point 136. In addition, the client devices C1 to C3 also located in the Domain D can be served by any of the proxy servers 112-116. When the client devices C1 to C3 of the domain D register one of the proxy servers 112-116, the registration information can be synchronously stored to other stations. Of course, all the proxy servers 112~116 can also be registered by the client devices C1~C3 at the same time to ensure the registration information is synchronized.

值得一提的是,伺服器系統100能將來自所有客戶端裝置的註冊資料,存放在各自代理伺服器112~116的記憶體內,並且備份在備援代理伺服器122~124。相較於現有技術往往將所有的註冊資料儲存在同一台資料庫伺服器的資料庫中,本實施例的伺服器系統100,可以避免資料庫伺服器的停擺所產生的單點失效問題(Single Point of Failure Problem,SPOF),同時節省需另備置資料庫裝置的花費。此外,更由於註冊資訊直接儲存於代理伺服器112~116上,當代理伺服器112~116與客戶端裝置C1~C6溝通時,可以從內部的記憶體直接讀取客戶端裝置C1~C6的網路網址等傳輸所需資訊,而不再去資料庫伺服器存取,亦能提升整體的運作效能。It is worth mentioning that the server system 100 can store the registration data from all client devices in the memory of the respective proxy servers 112-116 and back up the backup proxy servers 122-124. Compared with the prior art, all the registration data are stored in the database of the same database server. The server system 100 of the embodiment can avoid the single point failure problem caused by the shutdown of the database server (Single). Point of Failure Problem (SPOF), while saving the need to have additional database devices. In addition, since the registration information is directly stored on the proxy servers 112-116, when the proxy servers 112-116 communicate with the client devices C1~C6, the client devices C1~C6 can be directly read from the internal memory. The ability to transmit the required information, such as a web address, without accessing the database server, can also improve overall operational performance.

是故可知,本實施例之伺服器系統100不但整合了代理服務與註冊服務,更能夠提供不間斷、無單點失效問題的網路服務。It can be seen that the server system 100 of the present embodiment not only integrates the proxy service and the registration service, but also provides an uninterrupted network service without a single point failure problem.

圖2為本發明一實施例之使用者註冊方法的流程圖。接下來將配合圖2,以說明如何運用伺服器系統100來進行使用者註冊方法的詳細過程。請同時參考圖1與圖2。2 is a flow chart of a user registration method according to an embodiment of the present invention. Next, FIG. 2 will be explained to explain how to use the server system 100 to perform a detailed process of the user registration method. Please refer to Figure 1 and Figure 2 at the same time.

首先,進行步驟S100,提供如圖1包含多個代理伺服器112~116與多個備援代理伺服器122~124等等的伺服器系統100,必須再次強調的是,代理伺服器112~116與備援代理伺服器122~124均可藉由記憶體來儲存多個客戶端裝置C1~C6的註冊資訊,有別於一般伺服器系統將註冊資訊存放在單一的資料庫伺服器中。First, step S100 is performed to provide a server system 100 including a plurality of proxy servers 112-116 and a plurality of backup proxy servers 122-124 and the like as shown in FIG. 1. It must be emphasized again that the proxy servers 112-116 The backup proxy servers 122-124 can store the registration information of the plurality of client devices C1~C6 by using the memory, which is different from the general server system in storing the registration information in a single database server.

接著,進行步驟S110,以代理伺服器112~116提供代理服務與註冊服務。如同前面介紹伺服器系統100時所提及,可以透過OpenSER此一程式軟體來建構此代理伺服器112~116的代理服務與註冊服務之功能。此外,每個代理伺服器112~116亦可分別藉由OpenSER的分派器模組,來產生對應的服務存取點132~136來提供每一代理伺服器112~116的虛擬網路位址,以分別提供給不同的網域(例如Domain A~C)使用。故,代理伺服器112~116可藉由各服務存取點132~136來對應到不同網域(例如網域Domain A~C)中,而可個別回應不同網域下的客戶端裝置C4~C6之請求與聯繫。Next, proceeding to step S110, the proxy server and the registration service are provided by the proxy servers 112-116. As mentioned in the introduction of the server system 100, the function of the proxy service and the registration service of the proxy servers 112-116 can be constructed through the OpenSER software. In addition, each of the proxy servers 112-116 can also generate corresponding service access points 132-136 by using the OpenSER dispatcher module to provide the virtual network address of each of the proxy servers 112-116. Used separately for different domains (such as Domain A~C). Therefore, the proxy servers 112-116 can correspond to different network domains (such as the domain Domain A~C) by using the service access points 132-136, and can individually respond to the client devices C4 in different domains. C6's request and contact.

之後,進行步驟S120,代理伺服器112~116可以開始接受來自各個網域中的客戶端裝置C1~C6之註冊請求並允予回應。Thereafter, proceeding to step S120, the proxy servers 112-116 may begin accepting registration requests from the client devices C1~C6 in the respective domain and permitting responses.

於是,進行步驟S130,如果上述步驟中來自客戶端裝置142~146的請求是註冊請求時,則接受到註冊請求的某一代理伺服器則會將發出請求的客戶端裝置之相關使用者註冊資訊存入本身的記憶體中,以便之後建立呼叫時可用。舉例來說,可分別對代理伺服器112~116設定一記憶體磁碟(Ramdisk),並將一資料庫存放至所設定的記憶體磁碟中。之後,代理伺服器112~116即可藉由記憶體磁碟中的資料庫來儲存註冊資訊。Then, in step S130, if the request from the client devices 142-146 in the above step is a registration request, then a certain proxy server that receives the registration request will register the relevant user registration information of the requesting client device. It is stored in its own memory so that it can be used later when a call is established. For example, a memory disk (Ramdisk) can be set to the proxy servers 112-116, respectively, and a data inventory can be placed in the set memory disk. After that, the proxy servers 112-116 can store the registration information by using the database in the memory disk.

最後,進行步驟S140,同步備份步驟S130的註冊資訊至備援代理伺服器122~124的記憶體中。此時,備份註冊資料的方法可以經由OpenAIS(Open Application Interface Specification)所提供的CKPT Service來實現。實施的方法可以是經由OpenAIS的CKPT Service,代理伺服器112~116與備援代理伺服器122~124均會產生偵測點(Checkpoint)。Finally, in step S140, the registration information of the backup step S130 is synchronized to the memory of the backup proxy servers 122-124. At this time, the method of backing up the registration data can be implemented by the CKPT Service provided by the Open Application Interface Specification (OpenAIS). The method may be implemented by the OpenAIS CKPT Service, and the proxy servers 112-116 and the backup proxy servers 122-124 both generate a checkpoint.

當代理伺服器112~116有儲存新的註冊資訊時,此新的訊息封包亦會被寫入代理伺服器的偵測點中。並且,同步地告知備援代理伺服器122~124的偵測點並同時更新備援代理伺服器偵測點上的註冊資訊。之後,備援代理伺服器122~124再將偵測點上新的註冊資訊更新到自己的記憶體中。如此一來,備援代理伺服器122~124即可不斷地隨著代理伺服器112~116同步更新其記憶體中的註冊資訊,可作為備援之需。When the proxy server 112~116 has stored the new registration information, the new message packet will also be written into the detection point of the proxy server. Moreover, the detection points of the backup proxy servers 122-124 are synchronously notified and the registration information on the backup proxy server detection point is updated at the same time. After that, the backup proxy servers 122~124 update the new registration information on the detection point to their own memory. In this way, the backup proxy servers 122-124 can continuously update the registration information in the memory with the proxy servers 112-116, which can be used as a backup requirement.

在客戶端裝置C1~C6都完成註冊服務之後,若是客戶端裝置C6發出邀請(Invite)請求給客戶端裝置C1時,代理伺服器116便會接收到客戶端裝置C6所發出的邀請請求。此時,代理伺服器116便會根據客戶端裝置C1的使用者名稱去查詢存在記憶體中的這些註冊資訊,以得知客戶端裝置C1真正所在的網路位址。接著,代理伺服器116便會把此邀請請求轉送到剛剛查詢到的網路位址。如此一來,客戶端裝置C1便可收到邀請請求,在客戶端裝置C1允許之後,即可開始客戶端裝置C6與客戶端裝置C1的會議對談。After the client devices C1 to C6 have completed the registration service, if the client device C6 issues an invitation (Invite) request to the client device C1, the proxy server 116 receives the invitation request sent by the client device C6. At this time, the proxy server 116 queries the registration information stored in the memory according to the user name of the client device C1 to know the network address where the client device C1 is actually located. The proxy server 116 then forwards the invitation request to the network address just queried. In this way, the client device C1 can receive the invitation request, and after the client device C1 allows, the conference of the client device C6 and the client device C1 can be started.

圖3為圖1之代理伺服器與備援代理伺服器傳送控制訊號的示意圖,圖4為對圖3之代理伺服器與備援代理伺服器進行備援的流程圖。接下來,將配合圖3與圖4說明如何對代理伺服器112~116的健康偵測與利用備援代理伺服器122~124進行備援的方法與過程。3 is a schematic diagram of the proxy server and the backup proxy server transmitting control signals of FIG. 1, and FIG. 4 is a flowchart for backing up the proxy server and the backup proxy server of FIG. Next, a method and a process for how to perform the health detection of the proxy servers 112-116 and the backup proxy servers 122-124 will be described with reference to FIGS. 3 and 4.

首先,進行步驟S200,偵測代理伺服器112~116的運作。詳細來說,代理伺服器112~116與備援代理伺服器122~124會分別週期地傳送控制訊息1~5給彼此。在本實施例中,代理伺服器112~116與備援代理伺服器122~124可以透過開放原始碼程式OpenAIS所提供的應用管理框架(Application Management Framework,以下簡稱AMF)服務,來送出控制訊息1~5給彼此。First, step S200 is performed to detect the operations of the proxy servers 112-116. In detail, the proxy servers 112-116 and the backup proxy servers 122-124 periodically transmit control messages 1~5 to each other. In this embodiment, the proxy servers 112-116 and the backup proxy servers 122-124 can send control messages through the Application Management Framework (AMF) service provided by the open source program OpenAIS. ~5 to each other.

之後,進行步驟S210,代理伺服器112~116與備援代理伺服器122~124根據所接收的控制訊息1~5,來監聽彼此的狀態是否正常運作。如同監聽心跳(heartbeat)般,當代理伺服器112~116與備援代理伺服器122~124都有收到彼此所回應的控制訊息1~5時,即可判斷代理伺服器112~116都正常運作,於是可以回到步驟S210,繼續偵測代理伺服器的運作。Thereafter, in step S210, the proxy servers 112-116 and the backup proxy servers 122-124 monitor whether the states of each other operate normally according to the received control messages 1~5. As with the heartbeat, when the proxy servers 112-116 and the backup proxy servers 122-124 receive the control messages 1~5 that they respond to, it can be determined that the proxy servers 112-116 are normal. Operation, then can return to step S210 to continue to detect the operation of the proxy server.

若代理伺服器112~116當中有一代理伺服器,例如是代理伺服器114沒有如期送出控制訊息時,即表示此一代理伺服器114發生了異常狀況。也就是說,代理伺服器114可能已經無法如常地提供註冊服務或是代理服務。此時,便可進行步驟S220,開始進行錯誤的回復。If there is a proxy server among the proxy servers 112-116, for example, if the proxy server 114 fails to send the control message as scheduled, it indicates that the proxy server 114 has an abnormal condition. That is, the proxy server 114 may have been unable to provide registration services or proxy services as usual. At this point, step S220 can be performed to start an erroneous reply.

於是,在步驟S220中,選擇備援代理伺服器122~124的其中之一,如備援代理伺服器122。選擇之後,再將備援代理伺服器122對應至代理伺服器114所對應的服務存取點134。如前所介紹,備援代理伺服器122的記憶體中有同步更新代理伺服器112~116之記憶體中的註冊資訊。因此,備援代理伺服器122即可立即地接手備援的工作。選出備援代理伺服器122的方法可以根據不同的排序演算法來達成。此外,選擇備援代理伺服器122的過程亦可透過OpenAIS的AMF服務來指派完成。亦即,OpenAIS會通知選中的備援代理伺服器122對應的服務存取點134及其虛擬網路位址。Thus, in step S220, one of the backup proxy servers 122-124, such as the backup proxy server 122, is selected. After the selection, the backup proxy server 122 is further associated with the service access point 134 corresponding to the proxy server 114. As described above, the memory of the backup proxy server 122 has registration information in the memory of the synchronous update proxy servers 112-116. Therefore, the backup proxy server 122 can immediately take over the backup work. The method of selecting the backup proxy server 122 can be accomplished according to different ranking algorithms. In addition, the process of selecting the backup proxy server 122 can also be assigned through OpenAIS's AMF service. That is, OpenAIS will notify the service access point 134 corresponding to the selected backup proxy server 122 and its virtual network address.

接著,將進行步驟230,由備援代理伺服器122接手故障的代理伺服器114的網路服務工作。接手的方法可以是由OpenAIS告知服務存取點134資訊的備援代理伺服器122,傳出一個含有實體位址(MAC Address)的ARP(Address Resolution Protocol)封包出去,去更新Domain D(如圖1)中連接Domain B(如圖1)的網路設備節點(未繪示)上的ARP表格,以將原先的服務存取點134所對應的代理伺服器114之實體位址更新為備援代理伺服器122的實體位址。之後,來自Domain B的客戶端裝置C5中的註冊請求或代理請求,即會轉送至備援代理伺服器122,由其接手後續的工作。而且,此接手的動作僅需極短的時間即可完成。Next, step 230 will be performed, and the backup proxy server 122 takes over the network service of the failed proxy server 114. The method of taking over may be that the backup proxy server 122 that informs the service access point 134 of information by the OpenAIS sends out an ARP (Address Resolution Protocol) packet containing the MAC Address to update the Domain D (as shown in the figure). 1) Connect the ARP table on the network device node (not shown) of the Domain B (as shown in Figure 1) to update the physical address of the proxy server 114 corresponding to the original service access point 134 to the backup The physical address of the proxy server 122. Thereafter, the registration request or proxy request from the client device C5 of Domain B is forwarded to the backup proxy server 122, which takes over the subsequent work. Moreover, the action of this take-up can be completed in a very short time.

最後,還可進行步驟240,對於代理伺服器114的異常與備援代理伺服器122的接手作記錄日誌(Log),並且可以通知相關的系統管理人員對於故障的代理伺服器114作更進一步的檢查或修復。在代理伺服器114的故障排除後,可轉作為備援伺服器,但亦可接手備援代理伺服器122來提供註冊及代理服務。Finally, step 240 may also be performed to log the exception of the proxy server 114 and the backup proxy server 122, and may notify the relevant system administrator to further the faulty proxy server 114. Check or repair. After the failure of the proxy server 114, it can be transferred to the backup server, but the backup proxy server 122 can also be used to provide registration and proxy services.

綜上所述,本發明的伺服器系統與使用者註冊方法,整合了代理服務與註冊服務。因此,可節省所需配置的伺服器數量,進而降低成本。此外,本發明的伺服器系統與使用者註冊方法,藉由代理伺服器與備援代理伺服器各自擁有的記憶體來同步儲存客戶端裝置的註冊資訊。因此,可避免資料庫單點失效的問題。另外,當代理伺服器其中之一失效時,可立即地以備援代理伺服器來接手。因此,可維持伺服器系統的高可用性。In summary, the server system and user registration method of the present invention integrates proxy service and registration service. As a result, the number of servers required for configuration can be saved, which in turn reduces costs. In addition, the server system and the user registration method of the present invention synchronously store the registration information of the client device by using the memory owned by the proxy server and the backup proxy server. Therefore, the problem of single point of failure of the database can be avoided. In addition, when one of the proxy servers fails, it can be taken over immediately by the backup proxy server. Therefore, the high availability of the server system can be maintained.

雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。Although the present invention has been disclosed in the above embodiments, it is not intended to limit the invention, and any one of ordinary skill in the art can make some modifications and refinements without departing from the spirit and scope of the invention. The scope of the invention is defined by the scope of the appended claims.

10...網路環境10. . . Network environment

100...伺服器系統100. . . Server system

112、114、116...代理伺服器112, 114, 116. . . Proxy server

122、124...備援代理伺服器122, 124. . . Backup proxy server

132、132、136...服務存取點132, 132, 136. . . Service access point

C1~C6...客戶端裝置C1~C6. . . Client device

N...SIP網路N. . . SIP network

S100~S140、S200~S240...步驟S100~S140, S200~S240. . . step

圖1為本發明實施例之一伺服器系統應用於網路環境的示意圖。FIG. 1 is a schematic diagram of a server system applied to a network environment according to an embodiment of the present invention.

圖2為本發明一實施例之使用者註冊方法的流程圖。2 is a flow chart of a user registration method according to an embodiment of the present invention.

圖3為圖1之代理伺服器與備援代理伺服器傳送控制訊號的示意圖。3 is a schematic diagram of the proxy server and the backup proxy server of FIG. 1 transmitting control signals.

圖4為對圖3之代理伺服器與備援代理伺服器進行備援的流程圖。4 is a flow chart of the backup of the proxy server and the backup proxy server of FIG.

10...網路環境10. . . Network environment

100...伺服器系統100. . . Server system

112、114、116...代理伺服器112, 114, 116. . . Proxy server

122、124...備援代理伺服器122, 124. . . Backup proxy server

132、132、136...服務存取點132, 132, 136. . . Service access point

C1~C6...客戶端裝置C1~C6. . . Client device

N...SIP網路N. . . SIP network

Claims (13)

一種伺服器系統,適用於多個客戶端裝置,包括:多個代理伺服器,用以提供一代理服務與一註冊服務,且分別具有一記憶體,以分別儲存該些客戶端裝置藉由該註冊服務產生的多個註冊資訊;以及多個備援代理伺服器,分別具有一記憶體,以分別備份該些註冊資訊,用以在判斷該些代理伺服器其中之一無法提供該代理服務或該註冊服務時,以該些備援代理伺服器其中之一來替代。A server system, applicable to a plurality of client devices, comprising: a plurality of proxy servers for providing a proxy service and a registration service, and each having a memory for respectively storing the client devices by the a plurality of registration information generated by the registration service; and a plurality of backup proxy servers each having a memory for respectively backing up the registration information for determining that one of the proxy servers is unable to provide the proxy service or When registering the service, replace it with one of the backup proxy servers. 如申請專利範圍第1項所述之伺服器系統,更包括:多個服務存取點,用以讓各該些客戶端裝置透過該些服務存取點其中之一連接至該些代理伺服器其中之一。The server system of claim 1, further comprising: a plurality of service access points, wherein each of the client devices is connected to the proxy servers through one of the service access points one of them. 如申請專利範圍第1項所述之伺服器系統,其中該些服務存取點與該些代理伺服器為一對一對應。The server system of claim 1, wherein the service access points are in one-to-one correspondence with the proxy servers. 如申請專利範圍第1項所述之伺服器系統,其中當該些代理伺服器其中之一無法提供該代理服務或該註冊服務時,將該些備援伺服器其中之一對應至無法提供該代理服務或該註冊服務的代理伺服器所對應的服務存取點。The server system of claim 1, wherein when one of the proxy servers is unable to provide the proxy service or the registration service, one of the backup servers is corresponding to the failure to provide the proxy server. The service access point corresponding to the proxy service or the proxy server of the registration service. 如申請專利範圍第1項所述之伺服器系統,其中該些服務存取點分別對應一網域,且該些客戶端裝置分別屬於該些服務存取點所對應網域其中之一。The server system of claim 1, wherein the service access points respectively correspond to a domain, and the client devices respectively belong to one of the domains corresponding to the service access points. 如申請專利範圍第1項所述之伺服器系統,其中該些代理伺服器與該些備援代理伺服器分別週期地傳送一控制訊息給彼此,以監聽彼此的該些控制訊息,來判斷該些代理伺服器是否正常提供該代理服務或該註冊服務。The server system of claim 1, wherein the proxy server and the backup proxy server periodically transmit a control message to each other to monitor each of the control messages to determine the Whether the proxy server provides the proxy service or the registration service normally. 如申請專利範圍第1項所述之伺服器系統,其中當該些客戶端裝置分別送出該些註冊資訊給該些代理伺服器時,該些代理伺服器將各自接收的註冊資訊同步地更新至彼此的記憶體中,並備份至該些備援代理伺服器的記憶體中。The server system of claim 1, wherein when the client devices respectively send the registration information to the proxy servers, the proxy servers synchronously update the registration information received by each of the proxy servers to In each other's memory, and back up to the memory of the backup proxy servers. 如申請專利範圍第1項所述之伺服器系統,其中該些代理伺服器根據一會議初始化協定提供該代理服務與該註冊服務。The server system of claim 1, wherein the proxy servers provide the proxy service and the registration service according to a conference initiation protocol. 一種使用者註冊方法,適用於多個客戶端裝置,包括:提供多個代理伺服器與多個備援代理伺服器,其中該些代理伺服器與該些備援代理伺服器分別具有一記憶體;藉由該些代理伺服器,提供一代理服務與一註冊服務;當接收到由該些客戶端裝置藉由該註冊服務產生的多個註冊資訊時,分別儲存該些註冊資訊至該些代理伺服器的記憶體中,並備份該些註冊資訊至該些備援代理伺服器中;以及判斷該些代理伺服器是否正常提供該註冊服務;當該些代理伺服器其中之一無法提供該註冊服務時,以該些備援代理伺服器其中之一來替代。A user registration method, applicable to multiple client devices, includes: providing a plurality of proxy servers and a plurality of backup proxy servers, wherein the proxy servers and the backup proxy servers respectively have a memory Providing a proxy service and a registration service by the proxy servers; and storing the registration information to the proxy information when receiving the plurality of registration information generated by the client devices by the registration service In the memory of the server, and backing up the registration information to the backup proxy servers; and determining whether the proxy servers provide the registration service normally; when one of the proxy servers fails to provide the registration When serving, replace it with one of these backup proxy servers. 如申請專利範圍第9項所述之使用者註冊方法,其中各該些客戶端裝置透過多個服務存取點其中之一連接至該些代理伺服器其中之一,且該些服務存取點與該些代理伺服器為一對一對應,而由該些備援代理伺服器其中之一替代該些代理伺服器其中之一的步驟,包括:將該些備援伺服器其中之一對應至無法提供該註冊服務的代理伺服器所對應的服務存取點。The user registration method of claim 9, wherein each of the client devices is connected to one of the proxy servers through one of a plurality of service access points, and the service access points are The one-to-one correspondence with the proxy servers, and the step of replacing one of the proxy servers by one of the backup proxy servers includes: corresponding one of the backup servers to The service access point corresponding to the proxy server of the registration service cannot be provided. 如申請專利範圍第9項所述之使用者註冊方法,其中判斷該些代理伺服器是否正常提供該註冊服務的步驟,包括:從該些代理伺服器與該些備援代理伺服器週期地傳送一控制訊息給彼此;以及由該些代理伺服器與該些備援代理伺服器監聽彼此的該些控制訊息。The user registration method of claim 9, wherein the step of determining whether the proxy server normally provides the registration service comprises: periodically transmitting from the proxy server and the backup proxy servers A control message is given to each other; and the proxy servers and the backup proxy servers listen to each of the control messages. 如申請專利範圍第9項所述之使用者註冊方法,其中當該些客戶端裝置分別送出該些註冊資訊給該些代理伺服器時,該些代理伺服器將各自接收的註冊資訊同步地更新至彼此的記憶體中,並備份至該些備援代理伺服器的記憶體中。The user registration method of claim 9, wherein when the client devices respectively send the registration information to the proxy servers, the proxy servers synchronously update the registration information received by each of the proxy servers. Back to each other's memory and back up to the memory of the backup proxy servers. 如申請專利範圍第9項所述之使用者註冊方法,其中該些代理伺服器根據一會議初始化協定提供該代理服務與該註冊服務。The user registration method of claim 9, wherein the proxy server provides the proxy service and the registration service according to a conference initialization agreement.
TW097149539A 2008-12-18 2008-12-18 Server system and method for user registeration TWI397296B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW097149539A TWI397296B (en) 2008-12-18 2008-12-18 Server system and method for user registeration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW097149539A TWI397296B (en) 2008-12-18 2008-12-18 Server system and method for user registeration

Publications (2)

Publication Number Publication Date
TW201025961A TW201025961A (en) 2010-07-01
TWI397296B true TWI397296B (en) 2013-05-21

Family

ID=44852770

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097149539A TWI397296B (en) 2008-12-18 2008-12-18 Server system and method for user registeration

Country Status (1)

Country Link
TW (1) TWI397296B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI404386B (en) * 2010-08-13 2013-08-01 Chunghwa Telecom Co Ltd Communication system and method for using multi-tiered registration session initiation protocol (sip)
TWI404387B (en) * 2010-08-13 2013-08-01 Chunghwa Telecom Co Ltd Communication system and method for using session initiation protocol (sip) on a converted ip address

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW343304B (en) * 1996-06-05 1998-10-21 Compaq Computer Corp Host switching
US6992974B1 (en) * 2000-10-10 2006-01-31 3Com Corporation System and method for providing fault tolerance in a network telephony system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW343304B (en) * 1996-06-05 1998-10-21 Compaq Computer Corp Host switching
US6992974B1 (en) * 2000-10-10 2006-01-31 3Com Corporation System and method for providing fault tolerance in a network telephony system

Also Published As

Publication number Publication date
TW201025961A (en) 2010-07-01

Similar Documents

Publication Publication Date Title
US8139563B2 (en) System for alternate communications in an internet protocol multimedia subsystem network
JP5523012B2 (en) How to register an endpoint in the list of surviving network controllers in the controller sliding window
US7661027B2 (en) SIP server architecture fault tolerance and failover
US8880725B2 (en) Continuous replication for session initiation protocol based communication systems
US8219697B2 (en) Diameter protocol and SH interface support for SIP server architecture
US8171466B2 (en) Hitless application upgrade for SIP server architecture
US8223926B2 (en) Resilient registration with a call manager
US8001250B2 (en) SIP and HTTP convergence in network computing environments
JP5008647B2 (en) Simultaneous active registration in a SIP-survivable network configuration
US9515849B2 (en) Method and apparatus for managing communication faults
US8713355B2 (en) Method and apparatus for managing communication services for user endpoint devices
US8374079B2 (en) Proxy server, communication system, communication method and program
US20080086567A1 (en) SIP server architecture for improving latency in message processing
US20090019158A1 (en) Engine Near Cache for Reducing Latency in a Telecommunications Environment
US8364827B2 (en) Communication system
JP2010147788A (en) Communication system, terminal registration method therefor, server unit and terminal device
US9389969B2 (en) Method for SIP proxy failover
US8930768B2 (en) System and method of failover for an initiated SIP session
US20150006741A1 (en) Reconstruction of states on controller failover
JP5537667B2 (en) System and method for handoff maintenance
TWI397296B (en) Server system and method for user registeration
US20090245238A1 (en) Telephone System, Associated Exchange, and Transmission Control Method
US8630163B1 (en) Server driven endpoint re-homing
US9019964B2 (en) Methods and systems for routing application traffic
JP4665063B2 (en) COMMUNICATION SYSTEM, TERMINAL REGISTRATION METHOD, AND SERVER

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees