WO2016204567A1 - 프록시 선택기와 각 프록시의 설정 제어를 이용한 단말 단위 실시간 정책 적용, 부하분산 및 장애 복구를 제공하는 서비스시스템 및 그 제어방법 - Google Patents

프록시 선택기와 각 프록시의 설정 제어를 이용한 단말 단위 실시간 정책 적용, 부하분산 및 장애 복구를 제공하는 서비스시스템 및 그 제어방법 Download PDF

Info

Publication number
WO2016204567A1
WO2016204567A1 PCT/KR2016/006473 KR2016006473W WO2016204567A1 WO 2016204567 A1 WO2016204567 A1 WO 2016204567A1 KR 2016006473 W KR2016006473 W KR 2016006473W WO 2016204567 A1 WO2016204567 A1 WO 2016204567A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
proxy
server
service
packet
Prior art date
Application number
PCT/KR2016/006473
Other languages
English (en)
French (fr)
Inventor
전병천
김의국
최재원
이창우
송한영
Original Assignee
(주)넷비젼텔레콤
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 (주)넷비젼텔레콤 filed Critical (주)넷비젼텔레콤
Publication of WO2016204567A1 publication Critical patent/WO2016204567A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks

Definitions

  • the present invention relates to a service system that provides load balancing of traffic, duplication of a server, network policy, and a service application function in a current network, and a control method thereof. More specifically, a proxy selector and a proxy setting of each terminal are provided. Control the central controller to allow specific traffic of the terminal to pass through a specific service server group or a plurality of service server groups in sequence to enable the application of a specific policy or service to the specific traffic generated from the terminal at any time, and The present invention relates to a service system and a control method for providing load balancing and redundancy services for network servers at any time according to service request status.
  • a service server group or a network function server group uses a load balancing function to request more capacity than a single server can handle by multiple servers that provide the same service. Even if a specific server in the server group fails, the request processed by the failed server is distributed to the normal server so that the failure can be quickly recovered. Since this load balancing and failover technique is usually provided by installing hardware equipment in front of the server group, the servers provided with the load balancing and failover function should be located in a physically close location, and each server group that is not physically close to each other. The disadvantage is that hardware equipment must be installed.
  • Proxy technology is a technology that ensures that a packet is delivered to its final destination through a specific proxy server in transmitting the packet. This technique can potentially be used for a variety of purposes, but typically uses a proxy server's cache to reduce the utilization of the external network, track the network's usage, or prevent the leakage of certain information. It is used to prevent and spread the virus or malicious code through the packet. In other words, the benefits of a client using a proxy vary according to the service provided by the proxy server.
  • Service server groups will also be encouraged to be provided as a service rather than hardware equipment.
  • service server groups that provide differentiated processing services for the above packets will not be the final destination of the packet, but rather the destination.
  • service server families that provide special handling for specific packets or for packets sent from a particular user will inevitably need their load balancing and failover capabilities and expensive hardware. It is required for technology that enables software access that can be flexibly applied according to demand, not equipment purchase.
  • the present invention has been made to solve the above problems, and an object of the present invention is to provide a service system and a control method for providing real-time application of network policy, load balancing, and failover.
  • the present invention also provides a service server by a service server group differentiated for each packet in an environment in which there is a service server group that provides differentiated network functions for each packet flow at an arbitrary location on the network using a proxy technology. Its purpose is to provide a service system that provides real-time application of network policy, load balancing, and failover to provide load balancing and failover for each server in the military and its control method.
  • the present invention is to control the daemon to control the proxy server settings of the proxy client installed in the terminal from a central policy server named the central control unit, so that a specific packet sent from the terminal can pass through a specific service server network
  • the policy is provided for each user and service differentially, and the central control unit, a central policy server, checks the status of each service server in real time, and changes the IP of the proxy server set for each terminal proxy client or reconfigures it to another IP. By applying it, it is possible to support load balancing and failover function for service server.
  • a service system providing policy application, load balancing, and failover including a central control apparatus according to an embodiment of the present invention, one or more terminals, and a service server group composed of a plurality of internal servers includes terminal control preset in the terminal.
  • different packets can be applied to each packet generated by the terminal through different proxy servers, so that different policies can be applied to each packet, and the central server controls the proxy server IP of the terminal control rules given to the terminal.
  • Load balancing function can be performed by connecting to different proxy servers, and the terminal receives the next proxy server list through the terminal control rules, so that even if the currently connected proxy server fails, the next proxy server immediately returns.
  • the central control apparatus calculates a terminal control rule based on the load degree and failure of each internal server of the service server group, a preset terminal-specific policy and a service server group policy, and calculates the calculated terminal control rule.
  • the proxy server connected to the application of the packet-specific service for the packet generated by the terminal to connect to the terminal, it is characterized in that it provides load balancing between the internal server of the service server group and failover of the internal server.
  • the at least one terminal sets a terminal internal proxy selector, a proxy client, or a next proxy server list according to a terminal control rule received from the central control apparatus, so that packets generated by the terminal as controlled by the central control apparatus are mutually different.
  • different service server groups as proxy servers, differentiated services are applied for each packet, and the central controller can control the proxy server set for each terminal to provide load balancing, and the next proxy server preset in the terminal.
  • the proxy selector identifies the packet based on some identifiers among packet identification information that may be used for packet identification such as packet information of L2 through L7 and terminal internal application identifier, and then sets the corresponding proxy. Characterized in that delivered to the client.
  • the proxy client uses a proxy client type having a function necessary to connect a proxy server supported by a server of a service server group among the available proxy client types so that a packet to be serviced may pass through the proxy server. Characterized in that.
  • the next proxy server list is a list for storing information of a backup proxy server to be used when a proxy server set for each proxy client fails, and is stored one by one for each proxy client and stored in a proxy server of a specific proxy client.
  • the terminal immediately finds the backup proxy information without inquiring the central controller, and substitutes the proxy server information into the backup proxy server to help complete the failover.
  • the next proxy server list is a list, which provides a number of backup proxy servers for the corresponding proxy clients so that the terminal can try to connect to the backup servers in the order of the list so that one or two backup servers fail simultaneously. Even if it occurs, it is possible to complete the failover by finding a server for backup.
  • the servers included in the next proxy server list are servers that are already providing services to packets of other terminals, and are different for each terminal based on load information of each server in the service server group when the central control unit issues the terminal control rules.
  • the servers included in the next proxy server list are servers that are already providing services to packets of other terminals, and are different for each terminal based on load information of each server in the service server group when the central control unit issues the terminal control rules.
  • the service server group is a set of servers that provide one-by-one differentially provided services for each terminal and packet, and each service server group provides specific services specific to each policy so that the terminal can be configured for each packet or terminal. It is characterized in that to be provided with a set differential service.
  • a control method of a service system providing load balancing and failover includes a failure and load sensing step of periodically collecting a load degree and a failure of each internal server of a registered service server group; A packet generation and delivery step of processing a packet by the terminal itself according to a set terminal control rule; In case of failure of internal server of service server group, failure detection and failure notification step is to deliver failure so that all terminals connected with failure server can recognize failure of the corresponding server, or detect failure if the terminal is interworking with itself. ; And performing, by the terminal, the failover of the failing proxy server by replacing the proxy server setting with the backup proxy server. Characterized in that comprises a.
  • control method includes registering a policy for receiving a service for each terminal or packet and registering a service server group receiving load balancing and failover services and internal servers of the server group. It is done.
  • the fault and load detection step is to collect the load information and failure status from the service server group that the central control unit applied for the load distribution and / or failover service periodically through a predetermined protocol or program from the service server group Characterized in that.
  • the central control apparatus calculates a terminal control rule for each terminal, transmits the calculated terminal control rule to each terminal, and processes the packet based on the setting of the terminal control rule transmitted by each terminal. It is characterized in that it comprises a terminal control rule setting step to provide a differentiated policy application for each terminal and packet and load balancing and failover for the service server group.
  • the packet generation and delivery step is characterized in that each terminal is received from the central control unit to process the packets generated by the terminal internal application in accordance with the terminal control rules set in advance.
  • the central control unit detects whether a fault is detected and informs the terminals connected to the server where the failure occurred, or each terminal detects a fault by itself. It is characterized by the recognition.
  • the failure recovery server can be quickly replaced by immediately replacing the failure proxy server setting with a backup proxy server of the next proxy server list preset to receive the terminal control rule. It is characterized by.
  • a control method of a service system providing load balancing and failover including a central control apparatus, at least one terminal, and a service server group including a plurality of internal servers is a preset terminal control rule.
  • the central control apparatus calculates a terminal control rule based on the load degree and failure of each internal server of the service server group, a preset terminal-specific policy and a service server group policy, and calculates the terminal control rule.
  • Providing differentiated service application for each packet generated by the terminal by transmitting to and different proxy server connecting each terminal to provide load balancing between internal servers and failover function of internal server. It is done.
  • the at least one terminal sets a terminal internal proxy selector, a proxy client, a next proxy server list according to a terminal control rule received from the central control apparatus, and the packets generated by the terminal are delivered to different proxy servers. Differentiated services are applied to each packet, and the central controller can control the proxy server set for each terminal to provide load balancing, and if a failure occurs in the proxy server through the next proxy server list preset in the terminal, It is characterized in that the recovery is possible.
  • the proxy selector identifies a packet based on some identifier set among packet identification information that can be used for packet identification such as packet information of L2 to L7 and terminal internal application identifier, and then the packet is to be serviced. It is characterized in that the forwarding to the proxy client configured for the packet.
  • the proxy client uses a proxy client type that has a function necessary to connect a proxy server supported by a server in the service server group among the available proxy client types so that a packet to be serviced may pass through the proxy server.
  • the packet is transmitted to the proxy client by setting the packet so that the packet can pass through the proxy server connected to the proxy client.
  • the next proxy server list is a list that stores information of a backup proxy server to be used newly when a proxy server set up for each proxy client is stored.
  • the proxy server list is stored one by one for each proxy client so that a failure occurs in a proxy server of a specific proxy client.
  • the proxy server information of the proxy client is replaced by the backup proxy server immediately without inquiring the central control unit so that the failure recovery is completed.
  • the server providing the service can be set as a proxy server for backup, so that a failover can be provided without a standby server for backup.
  • the service server group is a set of servers which provide one-by-one service provided differentially for each terminal and packet, and each service server group provides specific services specific to each policy so that the terminal has a specific service different for each packet. It is set to pass through the server group, it is characterized in that different services can be applied to each packet.
  • a computer-readable recording medium is characterized by recording a program for executing a control method of a service system for providing the above policy application, load balancing, and failover.
  • the server Since the present invention can be applied irrespective of the number of service servers, the server has an advantage of facilitating capacity expansion by adding a server.
  • the terminal can actively set the bypass path to the next proxy server for failure recovery, so that the detection and recovery of the failure can be done quickly, and the load distribution can be performed among the servers even during the failure recovery. .
  • the present invention enables to provide a differentiated policy for each terminal to apply the terminal control rules for each terminal, and to enable the differential policy application for each traffic or terminal application through the proxy selector even inside the terminal. Differential service can be provided.
  • FIG. 1 illustrates a service system for providing policy application, load balancing, and failover in accordance with the present invention.
  • FIG. 2 shows a configuration of a central control apparatus according to the present invention.
  • FIG 3 shows a configuration of the terminal inside according to the present invention.
  • FIG. 4 is a flowchart illustrating a policy application and load balancing through a terminal control according to the present invention.
  • FIG. 5 is a flowchart illustrating a process of performing failover through terminal control according to the present invention.
  • FIG. 6 is a flowchart illustrating a processing method of a control method of a service system that provides policy application, load balancing, and failover according to another embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating a processing method of a control method of a service system that provides policy application, load balancing, and failover according to another embodiment of the present invention.
  • FIG. 8 is a configuration example of the service system according to the present invention, the service system of the present invention in the environment using the MPTCP Gateway that can provide the performance of MPTCP for the final server 400 that does not use MPTCP, the policy application, load It shows how to provide variance and failover.
  • the present invention includes a service server group 300 including a central control apparatus 100, one or more terminals 200, and a plurality of internal servers, and a service system for providing policy application, load balancing, and failover. to be.
  • the service system generates a terminal control rule for each terminal based on a pre-registered policy and service server group information, and sets the terminal control rule for each terminal. According to the terminal control rule set up, the terminal passes through different proxy servers for each packet generated by the terminal.
  • the central control apparatus 100 adjusts a proxy server IP of a terminal control rule given to each terminal so that the load balancing function is connected to different proxy servers for each terminal.
  • the terminal that receives the next proxy server list through the terminal control rules can quickly provide a failover function for the proxy server by reconnecting to the next proxy server quickly even when the currently connected proxy server fails. Make it. That is, the central control apparatus 100 calculates a terminal control rule based on the load degree and failure status of each internal server of the service server group 300 and a preset terminal-specific policy and a service server group policy.
  • the service server group 300 provides the application of packet-specific services to the packet generated by the terminal by transmitting the terminal control rule to the terminal, and changes the proxy server for connecting the terminal in the terminal control rule that calculates and transmits the terminal for each terminal. It provides load balancing between internal servers and failover of internal servers.
  • the at least one terminal 200 sets a terminal internal proxy selector, a proxy client, or a next proxy server list according to a terminal control rule received from the central control apparatus 100, so that the terminal is controlled by the central control apparatus 100.
  • the generated packets are delivered to different proxy servers so that differentiated services are applied to each packet, and the central server 100 can indirectly control the proxy server set for each terminal through terminal control rules to provide load distribution.
  • the proxy selector identifies the packet based on some identifiers among packet identification information that can be used for packet identification such as packet information of L2 to L7 and terminal internal application identifier, and then the corresponding packet corresponds to the central controller 100.
  • the proxy client In order to receive the service to be provided in the packet, it can be delivered to the proxy client that has completed the proxy server setting according to the terminal control rule.
  • the proxy client is connected to a proxy server supported by the server of the service server group 300 among the available proxy clients, and is optimal for applying the service provided by the central control apparatus 100 through the service server group 300 to the packet.
  • the proxy client of the packet By using the proxy client of the packet can be set and forwarded so that the packet delivered to the proxy client via the proxy server connected to the proxy client.
  • the optimal proxy client may be determined in advance or selected by an administrator based on whether or not the available proxy clients satisfy the transmission quality of the service, and / or the transmission quality such as transmission delay and packet error rate.
  • the next proxy server list is a list that stores information of a backup proxy server to be used when a proxy server set up for each proxy client is newly used.
  • the proxy server list is stored for each proxy client so that the terminal may be damaged when a proxy server of a specific proxy client occurs. Find the backup proxy information immediately without inquiring the central control unit and replace the proxy server information with the backup proxy server to complete the failover.
  • the next proxy server list is a list, which provides a number of backup proxy servers for the corresponding proxy clients so that the terminal can try to connect to the backup servers in the order of the list so that one or two backup servers fail simultaneously. If a backup occurs, find a working backup server so that failover can be completed.
  • the servers included in the next proxy server list are servers that are already providing services to packets of other terminals, and are different for each terminal based on load information of each server in the service server group when the central control unit issues the terminal control rules.
  • the servers included in the next proxy server list are servers that are already providing services to packets of other terminals, and are different for each terminal based on load information of each server in the service server group when the central control unit issues the terminal control rules.
  • the service server group 300 is a set of servers that provide one-by-one differentially provided services for each terminal and packet, and each service server group 300 provides specific services specific to each policy so that the terminal can be used for each terminal. Allows you to receive differential services on a packet-by-packet basis.
  • the service system providing policy application, load balancing, and fault recovery includes a central control apparatus 100, a terminal 200, and a service server group 300.
  • the operation of the present service system will be described with reference to FIG. 1.
  • the terminal when the terminal 200 is turned on to receive the service of the service system and starts accessing the network, the terminal (for example, the terminal setting agent in the terminal) notifies the central control apparatus 100 of the start of the terminal 200. Receives a terminal control rule transmitted by the central control unit 100.
  • the terminal 200 sets a proxy selector and a proxy client according to a terminal control rule, and stores the next proxy server list in a memory (not shown) of the terminal 200.
  • the proxy selector when generating a packet in the terminal 200, the proxy selector delivers a packet corresponding to the proxy client set for each packet, and each proxy client is configured to pass the received packet through the set proxy server, and then the packet It is released to the network, through which the service system of the present invention performs the policy application and load balancing without purchasing a separate hardware equipment.
  • the proxy selector identifies a packet based on information that may be used for packet identification including packet information of L2 through L7 and an internal application identifier of the terminal 200, and delivers the packet to different proxy clients.
  • the packet information of L2 through L7 and the internal application identifier of the terminal 200 are used as an example, and the present invention may use all identifiers capable of packet identification that are not limited to the example identifier.
  • Each proxy client interworks with different proxy servers to process packets through different service servers for each proxy client so that differentiated services can be applied for each packet.
  • the terminal 200 When a failure occurs, the terminal 200 performs a failover by immediately setting the next proxy server of the next proxy server list set for each proxy client after the failure is detected to replace the proxy server information in which the problem occurs.
  • the next proxy server list stores one list for each proxy client in memory to try to connect to the next proxy server sequentially in case of failure.
  • the service server group 300 periodically transmits the load level and failure of the server to the central control apparatus 100 by using any of the known or specially made protocols and programs. Since there is a different service server group for each packet, it is possible to provide a differentiated service. There are many servers in the service server group so that each server can act as a backup server for each other.
  • the central control apparatus 100 includes a policy processor 101 and a terminal controller 104.
  • the policy processor 101 may be implemented to include a policy finder 102, a policy DB 103, and a policy generator 105.
  • the operation of the central control apparatus 100 will be described.
  • the central control unit 100 periodically collects the load and failure of the server.
  • the load level and fault information collection can be used by a person skilled in the art among existing known communication protocols (TCP / IP, UDP / IP, etc.) or programs, or a special communication protocol and program can be made separately.
  • the central control apparatus may generate terminal control rules for each terminal based on a policy, whether each server is in error, and the load of each server.
  • the policy generator 105 generates a policy according to a user's input through a user interface (UI).
  • UI user interface
  • the policy DB 103 stores the generated policy, the failure status and the load degree of each server, and the current terminal control rule set in each terminal 200.
  • the policy finder 102 calculates a terminal control rule suitable for the corresponding terminal 200 based on the information of the policy DB 103. Terminal control rules are calculated and delivered on demand. The calculation algorithm may be any of those known to the person skilled in the art or specially made.
  • the terminal controller 104 interoperates with the terminal setting agent 211 of the terminal 200 to transmit terminal control rules and update the terminal control rules currently used by the terminal 200 to the policy DB 103. To perform.
  • the terminal control rule for each terminal is calculated when the terminal 200 is started and immediately transferred to the terminal to set the terminal.
  • the terminal 200 transmits the terminal control rule information which it has to the central control apparatus 100 at every set period, so that the central control apparatus 100 may update the set terminal control rule information stored by each terminal 200. Make sure
  • the terminal control rule transmitted in this way controls the information of the proxy selector, proxy client, and the next proxy server list of the terminal 200, the central control unit 100 indirectly controls whether to provide a service for the packet generated by the terminal. To be able.
  • the terminal 200 includes a terminal control module 201, which includes a terminal configuration agent 211, a proxy selector 212, one or more proxy clients 213, and each proxy client.
  • the next proxy server list 214 is configured.
  • the operation of the terminal will be described.
  • the terminal control agent 211 of the terminal control module 201 sets a proxy selector, a proxy client, and a next proxy server list using the received terminal control rules. That is, the terminal control agent 211 of the terminal control module 201 notifies the central control apparatus 100 whether the terminal is started at the start of the terminal, receives the terminal control rule 202, and then selects the proxy selector 212 and the proxy.
  • the client 213 and the next proxy server list 214 are set, respectively.
  • a packet registered to receive a service is a proxy selector 212 to the proxy client 213 assigned for each service.
  • the proxy selector 212 identifies a packet or a packet source through packet information and an application identifier of L2 through L7. Set an action on the identified packet so that the packet is treated as that action.
  • action refers to performing packet forwarding to a specific proxy client.
  • Proxy server setting is performed through the terminal control agent 211.
  • the proxy client 213 is interlocked with the proxy server to set up the received packet to pass through the corresponding proxy server and then discharge the packet to the network.
  • the proxy client 213 will be able to go through the set proxy server via the forwarded packet, and then emit the packet to the network.
  • proxy client 213 all the proxy clients that can be supported by the terminal 200 and the service server are applicable, and the manner of allowing the packet to pass through the proxy server may be different for each proxy client used.
  • the present invention does not specify which proxy client to use, which is indicated by "" in FIG.
  • the SOCKS proxy and HTTP proxy described in FIG. 3 are examples of the types of proxy clients that can be used.
  • the next proxy server list is a list that the terminal 200 receives from the central control unit 100 for fast failure recovery.
  • the terminal When a failure is detected in the proxy server configured for each proxy client, the terminal itself performs the next proxy server without inquiring. Quick reset can be done by enabling immediate reset.
  • the next proxy server list exists for each proxy client, so that the quick failover can be performed without inquiring to the central controller separately for each proxy client.
  • the backup proxy server is kept in the form of a list so that even if several backup proxy servers fail at the same time, it finds the active proxy server and performs the recovery.
  • the server and server order of the next proxy server list descending through the terminal control rules are different for each terminal, so that the failover can be performed simultaneously with load balancing.
  • the server registered in the next proxy server list can be configured as a normal server that is currently in service instead of an inactive backup standby server, so that failover can be performed without preparing a backup server.
  • the next proxy server list should also be received and stored one by one for each proxy client.
  • the central control apparatus 100 of the present invention provides an IP address of a server to be set in the proxy client based on load information of each server of the service server group 300 when the terminal control rule is issued. That is, the server with the lowest load degree is included in the terminal control rule as proxy client setting information and descends to the terminal 200 or the server selected through the other load balancing algorithm descends as a proxy server. In this way, by using different servers for each terminal as a proxy server to provide an even load balancing function.
  • the load information may include CPU usage, memory usage, and the number of connected sessions.
  • the CPU usage, memory usage, and the number of connected sessions may be load information used as an example of the present invention, but are not specific to the present invention.
  • the standard of load information to be used may be changed according to the matter to which the system of the present invention is applied, and the central control apparatus 100 of the present invention needs the load information to be processed and the weight (weight, importance) of each load information. Can be created or modified according to.
  • FIG. 4 shows an example of a process of performing load balancing through packet processing according to a terminal control rule according to the present invention.
  • a service server to receive load balancing and failover services is registered.
  • Client_1 transmits its start to the central control apparatus 100, and receives the terminal control rules including proxy selector setting, proxy client setting, and next proxy server list.
  • the central control apparatus 100 knows that each server in the service server group 300, ServerA and ServerB is not under load, and transfers ServerA to be used as a proxy server, and ServerB as the next failover proxy server. Include in the proxy server list and send.
  • the packet sent from Client_1 to Server0, which is the final server 400, is delivered to the proxy client applied to the packet by the terminal internal proxy selector, and is set to be discharged to the network through ServerA, which is a set proxy server.
  • ServerA acts as a proxy server and delivers the packet to Server0, the final server 400, after performing the service on the packet.
  • Client_2 sends its start to the central control apparatus 100, and receives the terminal control rules including proxy selector setting, proxy client setting, and next proxy server list.
  • the central controller 100 since the central controller 100 knows that there is more load on ServerA, it transfers ServerB to be used as a proxy server and transmits ServerA to the next proxy server list as a next failover proxy server.
  • ServerB acts as a proxy server and delivers the packet to the final server 400 after performing service on the packet.
  • FIG. 5 illustrates a process of performing a failover by packet processing according to a terminal control rule according to the present invention.
  • the central controller 100 detects a failure of ServerA, and (3) proxy ServerA. Notify all terminals that are being used as a server of ServerA's failure status.
  • the server 200 obtains ServerB information, which is the next proxy server, from the next proxy server list of the ServerA service server group 300 in which the failure occurs, and ServerB You can set up a new proxy server to perform a failover.
  • the specific proxy client also provides a function of immediately detecting a connection interruption with the proxy server in operation.
  • the terminal first recognizes the failure before receiving the failure situation of the SeverA from the central control apparatus 100.
  • the terminal may first perform a failover and change (replace) the proxy server to ServerB, and after that, even if the serverA failure of step (3) is received from the central controller 100, Since the serverA is not in use, without any action, it transmits the proxy information currently being used to the central control apparatus 100 to inform that there is no problem.
  • the control method is a control method of a service system that provides policy application, load balancing, and failover, including a central server, a service server group including one or more terminals, and a plurality of internal servers, and is applied to each terminal or packet.
  • the control method of the service system providing the policy application, the load
  • a process of the control method 2000 of the service system for providing load balancing and failover will be described in detail below.
  • S100 a terminal and policy registration step (S100) by registering the service policy for each terminal in the central control apparatus 100 to register which packet of which terminal will be serviced by which service server group 300, service server group Registering whether to provide load balancing and failover functions for each service, and registering which service server group to provide load balancing and failover functions.
  • a failure and load detection step (S200) the step of collecting the load degree and failure status of each server of the service server group provided with the load balancing and failover function, the information is periodically collected.
  • the terminal is newly started or is executed when the terminal control rule reset of the terminal is necessary, and transmits the terminal control rule to the terminal, the service to pass through the packet of the terminal Allows you to control server group servers.
  • the central control apparatus calculates terminal control rules for each terminal and transmits the calculated terminal control rules to each terminal.
  • the central control apparatus intends each terminal to process packets as controlled by the central control apparatus. It is possible to apply differentiated policies for each terminal and packet and to provide load balancing and failover for service server group.
  • a packet generation and delivery step As a normal packet communication step of the terminal, the terminal, the terminal control rule setting is completed, go through this step when the packet communication proceeds, the terminal control rules according to the specific Allow packets to go through servers in a particular service server family.
  • Each terminal is received from the central control unit so that packets generated by the terminal internal application are processed according to a preset terminal control rule so that the packets are processed as controlled by the central control unit.
  • a failure detection and failure notification step (S500) the step of operating when a failure occurs in the server of the service server group that was in service, started by the failure detection, the central control unit 100 failure of the failure server
  • the terminal terminates at the time when the terminal recognizes the occurrence of a failure by notifying the related terminal or detecting the failure of the terminal.
  • Detection of failure by the central control unit 100 may also be provided by providing an information transfer interface such as RestAPI, Netconf, or a newly developed diagnostic protocol.
  • an information transfer interface such as RestAPI, Netconf, or a newly developed diagnostic protocol.
  • the present invention is not specific to the present invention, and various programs and protocols may be used for detecting load and failure.
  • the step is executed, the failure server is changed to the next proxy server set through the terminal control rules (replacement) Immediately perform failover. After failing over, the information on the newly substituted proxy server is transmitted to the central control apparatus 100 to terminate the execution of the step.
  • FIG. 7 is a flowchart illustrating a processing method of a control method 3000 of a service system that provides policy application, load balancing, and failover according to another embodiment of the present invention. Referring to FIG. 7, a process of a control method 3000 of a service system for providing load balancing and failover according to another embodiment of the present invention will be described below.
  • a control method of a service system that provides load balancing and failover including a service server group including a central controller, one or more terminals, and a plurality of internal servers, is a preset terminal control rule.
  • the packet generated by the terminal passes through different proxy servers so that different policies can be applied for each packet.
  • the central control apparatus adjusts the proxy server IP of the terminal control rule given to the terminal to perform a load balancing function by connecting to different proxy servers for each terminal.
  • a failure recovery step (S3300) receiving the next proxy server list through the terminal control rules, even when a failure occurs in the currently connected proxy server to perform a reconnection to the next proxy server to recover the failure to the proxy server Provide the function.
  • the at least one terminal sets a terminal internal proxy selector, a proxy client, or a next proxy server list according to a terminal control rule received from the central controller, and the packets generated by the terminal are delivered to different proxy servers to differentiate each packet.
  • the service can be applied and the central controller can control the proxy server set for each terminal to provide load balancing, and the failure recovery can be performed immediately when the proxy server fails through the next proxy server list preset in the terminal.
  • the proxy selector is a proxy client configured to identify a packet based on some identifiers among packet identification information that can be used for packet identification such as packet information of L2 to L7 and terminal internal application identifier, and then receive the service. To pass.
  • the proxy client connects to the proxy server supported by the server of the service server group among the available proxy client types and delivers the packet to the proxy client by using the proxy client type having the function necessary for the packet to be received to pass through the proxy server.
  • the packet is configured and forwarded so that the packet passes through the proxy server connected to the proxy client.
  • the next proxy server list is a list for storing the information of a backup proxy server to be used when a proxy server set up for each proxy client fails.
  • the proxy server list is stored one by one for each proxy client to provide central control when a proxy server of a specific proxy client fails.
  • the proxy server information of the corresponding proxy client is replaced by the backup proxy server immediately without inquiring the device, and the failover is completed by different servers of the next proxy server list going down by terminal, so that the failover can be performed simultaneously with load balancing.
  • the server can be set as a proxy server for backup to provide failover without a standby server for backup.
  • the service server group is a set of servers that provide one-by-one differentially provided services for each terminal and packet, and each service server group provides specific services specific to each policy so that the terminal passes through a specific service server group for which packets are different for each packet. By setting this option, different services can be applied to each packet.
  • FIG. 8 is a configuration example of a service system according to the present invention, the system is applied to the MPTCP Gateway service that can provide the performance of MPTCP for the final server 400 that does not use MPTCP (Multipath TCP), load balancing And examples of configurations that provide failover.
  • MPTCP Gateway service can provide the performance of MPTCP for the final server 400 that does not use MPTCP (Multipath TCP), load balancing And examples of configurations that provide failover.
  • MPTCP Multipath TCP
  • MPTCP is a technology that improves the packet transmission speed between a destination and a starting point by establishing a TCP connection and enabling the merged transmission of packets when multiple paths exist between a starting point and a destination.
  • mobile devices using a mobile communication network can be connected to two networks of LTE / 3G and WiFi, so that merge transmission can be achieved and speed can be improved through merge transmission.
  • the MPTCP Gateway applies MPTCP to the BackBone network to provide improved speed through merge transmission for traffic requiring high speed such as video traffic, and BackBone's normal broadband communication network from BackBone to the final server 400. It provides a solution that provides improved speed due to merge transmission.
  • the MPTCP Gateway can also benefit from the system of the present invention as one service server group.
  • the terminal 200 first receives a terminal control rule from the central control apparatus 100. After that, the terminal sends the packet generated by the application to the proxy selector to receive a differentiated service for each packet. At this time, the packet receiving the MPTCP service is delivered to the proxy and set to pass through the MPTCP Gateway (600), and then released using both the LTE / 3G network and the WiFi network through the MPTCP daemon, while the general packet is directly transferred to the WiFi from the proxy selector. You can see that it is released. In addition, since the MPTCP Gateway is subscribed to the load balancing service, it can be confirmed that the packet of the terminal 1 and the packet of the terminal 2 are distributed to Server_A and Server_B, respectively.
  • control method of the service system that provides policy application, load balancing, and failure recovery is implemented in the form of program instructions that can be executed through a variety of electronic means for processing information to the storage medium Can be recorded.
  • the storage medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded in the storage medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in the software art.
  • Examples of storage media include magnetic media such as hard disks, floppy disks and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic-optical media such as floppy disks.
  • hardware devices specifically configured to store and execute program instructions such as magneto-optical media and ROM, RAM, flash memory, and the like.
  • the above-described medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, and the like.
  • Examples of program instructions include not only machine code generated by a compiler, but also devices that process information electronically using an interpreter, for example, high-level language code that can be executed by a computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 현 네트워크 망에서 트래픽의 부하분산, 서버의 이중화, 네트워크 정책 및 서비스 적용 기능을 제공하는 서비스시스템 및 그 제어방법에 관한 것으로, 보다 구체적으로는 각 단말의 프록시 선택기와 프록시 설정을 중앙제어기에서 제어하여 해당 단말의 특정 트래픽이 특정 서비스서버군 혹은 다수의 서비스서버군들을 순차적으로 거쳐 가도록 하여 언제든지 유동적으로 단말로부터 생성된 특정 트래픽에 대한 특정 정책 혹은 서비스의 적용을 가능케 하고, 특정 네트워크 서버들에 대하여 부하분산과 이중화 서비스를 언제든지 서비스 신청여부에 따라 제공할 수 있도록 하는 서비스시스템 및 그 제어방법에 관한 것이다.

Description

프록시 선택기와 각 프록시의 설정 제어를 이용한 단말 단위 실시간 정책 적용, 부하분산 및 장애 복구를 제공하는 서비스시스템 및 그 제어방법
본 발명은 현 네트워크 망에서 트래픽의 부하분산, 서버의 이중화, 네트워크 정책 및 서비스 적용 기능을 제공하는 서비스시스템 및 그 제어방법에 관한 것으로, 보다 구체적으로는 각 단말의 프록시(Proxy) 선택기와 프록시 설정을 중앙제어기에서 제어하여 해당 단말의 특정 트래픽이 특정 서비스서버군 혹은 다수의 서비스 서버군들을 순차적으로 거쳐 가도록 하여 언제든지 유동적으로 단말로부터 생성된 특정 트래픽에 대한 특정 정책 혹은 서비스의 적용을 가능케 하고, 특정 네트워크 서버들에 대하여 부하분산과 이중화 서비스를 언제든지 서비스 신청여부에 따라 제공할 수 있도록 하는 서비스시스템 및 그 제어방법에 관한 것이다.
종래의 부하분산 및 장애복구 기술에서는, 서비스 서버군 혹은 네트워크 기능 서버군은 부하분산 기능을 이용하여 동일한 서비스를 제공하는 다수의 서버들이 하나의 서버가 단독으로 처리할 수 있는 용량보다 많은 용량의 요청을 처리 할 수 있도록 하고, 서버군의 특정 서버에 장애가 발생하였을 경우에도, 장애 서버에서 처리하던 요청을 정상서버로 분산되게 하여, 장애를 빠르게 복구할 수 있도록 한다. 이런 부하분산 및 장애복구 기술은 통상적으로 서버군 앞에 하드웨어 장비를 설치하는 것으로 제공되기에 부하분산 및 장애복구 기능을 제공받는 서버들은 물리적으로 근접한 위치에 위치하여야 하며 물리적으로 근접하지 않은 서버군별로 각각 하드웨어 장비를 설치하여야 한다는 단점이 있다.
물리적 하드웨어 장비를 통한 부하분산 및 장애복구 외에도 DNS(Domain Name Server)에서 클라이언트로부터의 서버 IP (Internet Protocol) 주소 요청 시 서버의 IP 주소를 각 서버들의 서버부하 혹은 장애여부를 기준으로 분산하여 클라이언트에 제공하는 것으로 부하분산 서비스를 제공할 수도 있다. 그러나 이와 같이 DNS를 이용한 방법은 최종 목적지에 대한 장애복구와 부하분산만 제공이 가능하기에 네트워크상에 전송되고 있는 패킷이 최종목적지에 도달하기 전에 차별화된 서비스를 제공하는 서비스 서버군에 대해서는 장애복구와 부하분산 서비스의 제공이 불가능하고 장애가 발생하였을 시 장애복구를 위해 반드시 DNS를 다시 요청하고 받는 과정을 거쳐야 한다는 단점이 있다.
프록시 기술은 패킷을 전송함에 있어 특정 프록시 서버를 반드시 통하여 패킷이 최종 목적지로 전달되도록 하는 기술이다. 이 기술은 잠재적으로 다양한 사용목적을 위해 사용될 수 있으나, 통상적으로 프록시 서버(Proxy Server)의 캐시를 이용하여 외부 네트워크의 사용률을 낮추거나, 네트워크의 사용률을 추적하기 위해, 혹은 특정 정보의 외부유출을 방지하고, 패킷을 통한 바이러스 혹은 악성 코드의 전파를 미리 차단하기 위해 활용된다. 즉 프록시 서버가 제공하는 서비스에 따라 프록시를 사용하는 클라이언트(Client)의 혜택이 다양하다는 장점이 있다.
한편, 종래의 장애 복구와 부하분산은 서버 관리자로 하여금 고가의 부하분산 하드웨어 장비의 구입, 설치, 유지보수를 필요하게 한다. 이 문제는 DNS를 통한 부하분산 및 장애복구 기술을 통하여, 물리적인 부하분산 하드웨어 장비의 구입수요를 줄이는 방법으로 어느 정도 해결이 가능하지만, DNS를 통한 부하분산 및 장애복구은 최종단에 위치한 서버에서만 가능하기에 최종단 서버에 대한 서비스를 제공하는 라우터, 방화벽, 또는 침입 탐지/차단 장비 등의 별도 루트가 아닌 통신라인에 직접 개입하는 서비스 서버군에 대해서는 부하분산 및 장애복구를 지원하지 못하고, 장애복구를 위해선 반드시 DNS에 새로운 IP를 요청하여 할당 받을 시간을 소모해야 하는 문제점이 있다.
더하여, PaaS(Platform as a Service), CaaS(Computer as a Service), SaaS(Service as a Service) 등의 필요 되는 자원 혹은 서비스를 서비스로 제공하는 현 산업 동향은 라우터, 방화벽 또는 침입 탐지/차단용 서비스서버군들도 하드웨어 장비가 아닌 하나의 서비스로 제공 되도록 고무할 것이며, 이와 같은 환경에선 위 패킷에 대한 차별화된 처리서비스를 제공하는 서비스 서버군들은 패킷의 최종 목적지가 아닌 거쳐 가는 목적지가 된다. 위와 같은 패킷의 최종 목적지가 아니지만, 특정 패킷들에 대한 혹은 특정 사용자로부터 전송된 패킷들에 대한 특별한 처리를 제공하는 서비스 서버군들은 그 부하분산 및 장애복구 기능을 필연적으로 필요하게 될 것이고 고가의 하드웨어 장비 구입이 아닌 수요에 따라 유연한 적용이 가능한 소프트웨어적인 접근을 가능하게 하는 기술에 요구된다.
본 발명은 상기한 문제점을 해결하기 위해 안출된 것으로서, 본 발명은 네트워크 정책의 실시간 적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템 및 그 제어방법을 제공하는 것을 그 목적으로 한다.
또한, 본 발명은 프록시 기술을 활용하여 네트워크 상 임의 위치에서 패킷 플로우별로 차별화된 네트워크 기능을 제공하는 서비스 서버군이 있는 환경에서, 패킷별로 차별화된 서비스 서버군에 의해 서비스를 제공받도록 하고, 서비스 서버군들의 각 서버에 대한 부하분산 및 장애복구를 제공할 수 있도록 하는 네트워크 정책의 실시간 적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템 및 그 제어방법을 제공하는 것을 그 목적으로 한다.
그러나 본 발명의 목적은 상기에 언급된 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명은 단말에 설치된 프록시 클라이언트의 프록시 서버설정을 제어하는 데몬을 중앙제어장치라 명명된 중앙의 정책 서버에서 제어하도록 하여, 단말에서 발신하는 특정 패킷이 특정 서비스 서버를 거쳐 갈수 있도록 하는 방식으로 네트워크 정책을 사용자 및 서비스 별로 차등적으로 제공하며, 중앙의 정책서버인 중앙제어장치가 각 서비스서버의 상태를 실시간으로 확인하면서, 각 단말 프록시 클라이언트에 설정하는 프록시 서버의 IP를 달리하거나 다른 IP로 재 적용하여서, 서비스서버에 대한 부하분산 및 장애복구 기능을 지원할 수 있도록 한다.
본 발명의 일실시예에 따른 중앙제어장치, 하나이상의 단말, 및 복수의 내부서버로 구성된 서비스 서버군을 포함하여 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템은 단말에 미리 설정된 단말제어규칙에 따라 단말이 생성하는 패킷별로 서로 다른 프록시 서버를 경유하도록 하여 패킷별로 차별화된 정책을 적용할 수 있도록 하고, 중앙제어장치가 단말에 내려주는 단말제어규칙의 프록시 서버 IP를 조절하는 것으로 단말별로 서로 다른 프록시 서버에 연결되도록 하여 부하분산기능을 수행할 수 있도록 하며, 단말이 단말제어규칙을 통해 차기 프록시 서버리스트를 수신하도록 하여, 현재 연결된 프록시 서버에 장애가 발생 할 시에도 바로 차기 프록시 서버로 재 연결을 수행하는 것으로 프록시 서버에 대한 빠른 장애복구기능을 제공하는 것을 특징으로 한다.
바람직하게는, 상기 중앙제어장치는 상기 서비스 서버군 각 내부서버의 부하정도 및 장애여부와, 미리 설정된 단말별 정책 및 서비스서버군 정책을 기반으로 단말제어규칙을 산출하고, 산출된 단말제어규칙을 단말에 전달하여 단말이 생성한 패킷에 대한 패킷별 서비스 적용과 연결하는 프록시 서버를 다르게 하는 것으로 서비스서버군 내부서버간의 부하분산 및 내부서버의 장애복구 기능을 제공하는 것을 특징으로 한다.
바람직하게는, 상기 하나이상의 단말은 중앙제어장치로부터 수신한 단말제어규칙에 따라 단말 내부 프록시 선택기, 프록시 클라이언트, 또는 차기 프록시 서버리스트를 설정하여, 중앙제어장치가 제어한대로 단말이 생성한 패킷이 서로 다른 서비스서버군을 프록시 서버로써 경유하게 하여 패킷별로 차별화된 서비스가 적용되도록 하고 단말별로 설정되는 프록시 서버를 중앙제어장치가 제어할 수 있도록 하여 부하분산을 제공하도록 하며, 단말에 미리 설정된 차기 프록시 서버리스트를 통하여 프록시 서버에 장애 발생 시 바로 장애복구가 가능하도록 하는 것을 특징으로 한다.
보다 더 바람직하게는, 상기 프록시선택기는 L2부터 L7의 패킷 정보 및 단말 내부 어플리케이션 식별자 등의 패킷 식별을 위해 사용될 수 있는 패킷식별정보 중 설정된 일부 식별자를 기반으로 패킷을 식별한 후 해당 패킷을 설정된 프록시클라이언트로 전달하는 것을 특징으로 한다.
보다 더 바람직하게는, 상기 프록시클라이언트는 사용가능한 프록시클라이언트종류 중 서비스서버군의 서버가 지원하는 프록시서버와 연결되면서 서비스를 받을 패킷이 프록시 서버를 경유하도록 하기 위해 필요한 기능을 가진 프록시클라이언트종류를 사용하는 것을 특징으로 한다.
보다 더 바람직하게는, 상기 차기 프록시서버리스트는 각 프록시클라이언트별로 설정된 프록시서버에 장애가 발생하였을 때 새로이 사용할 백업용 프록시서버의 정보를 보관하는 리스트로써, 프록시클라이언트별로 하나씩 보관되어서 특정 프록시클라이언트의 프록시서버에 장애가 발생하였을 때 단말이 중앙제어장치에 문의 없이 바로 백업 프록시정보를 찾아서 백업 프록시서버로 프록시서버 정보가 치환하여 장애복구를 완료하도록 도우는 것을 특징으로 한다. 또한 이 차기 프록시서버리스트는 리스트로써, 다수의 해당 프록시클라이언트용 백업 프록시 서버를 리스트로 제공하여 단말이 리스트의 순서대로 백업 서버로의 연결을 시도할 수 있도록 하여 1~2대의 백업 서버에도 장애가 동시에 발생하더라도 동작하는 백업용 서버를 찾아서 장애복구를 완료할 수 있도록 하는 것을 특징으로 한다. 더하여, 이 차기 프록시서버리스트에 포함되는 서버들은 이미 다른 단말의 패킷들에 서비스를 제공중인 서버들이며 중앙제어장치가 단말제어규칙을 내려 줄 때 서비스서버군 각 서버들의 부하정보를 기준으로 단말마다 다른 서버를 다른 순서로 가지는 차기 프록시서버리스트로 내려주어 백업용 서버에 대한 부하분산 기능 또한 제공하면서 복구용 스탠바이(Standby) 서버 없이 이미 사용 중인 서버들을 사용 할 수 있는 것을 특징으로 한다.
바람직하게는, 상기 서비스서버군은 단말 및 패킷별로 차등적으로 제공되는 서비스를 하나하나 제공하는 서버들의 집합으로써, 각 서비스 서버군이 각 정책에 특화된 특정 서비스들을 제공하여 단말이 패킷별 혹은 단말별로 설정된 차등적인 서비스를 제공받을 수 있도록 하는 것을 특징으로 한다.
본 발명의 다른 일실시예에 따른 부하분산 및 장애복구를 제공하는 서비스시스템의 제어방법은 등록된 서비스 서버군의 각 내부서버의 부하정도와 장애여부를 주기적으로 수집하는 장애 및 부하감지단계; 설정된 단말제어규칙에 따라 단말 스스로 패킷을 처리하는 패킷 생성 및 전달 단계; 서비스 서버군 내부서버의 장애 발생 시 장애발생 서버와 연결 중이던 모든 단말이 해당 서버의 장애여부를 인식할 수 있도록 장애사항을 전달하거나 단말 스스로 연동중이던 장애여부를 감지하도록 하는 장애감지 및 장애사항 알림 단계; 및 단말이 스스로 장애가 발생한 프록시서버 설정을 백업 프록시서버 설정으로 치환하여 장애복구를 빠르게 완료하는 장애복구 수행 단계; 를 포함하여 구성되는 것을 특징으로 한다.
바람하게는, 상기 제어방법은 단말별 또는 패킷별로 어떠한 서비스를 받을지 정책을 등록하는 것과 부하분산 및 장애복구 서비스를 받은 서비스 서버군과 그 서버군의 내부서버들을 등록하는 등록단계를 포함하는 것을 특징으로 한다.
바람하게는, 상기 장애 및 부하감지단계는 중앙제어장치가 서비스 서버군으로부터 미리 결정된 프로토콜 혹은 프로그램을 통하여 주기적으로 부하분산 및/혹은 장애복구 서비스를 신청한 서비스 서버군으로부터 부하정보 및 장애여부를 수집하는 것을 특징으로 한다.
바람하게는, 상기 제어방법은 중앙제어장치가 각 단말별 단말제어규칙을 산출하고, 산출된 단말제어규칙을 각 단말에 전송하여, 각 단말이 전달된 단말제어규칙의 설정을 기반으로 패킷을 처리하는 것으로 단말 및 패킷별 차별화된 정책적용과 서비스서버군에 대한 부하분산 및 장애복구를 제공할 수 있도록 하는 단말제어규칙 설정단계를 포함하는 것을 특징으로 한다.
바람하게는, 상기 패킷 생성 및 전달단계는 각 단말이 중앙제어장치로부터 전달받아 미리 설정한 단말제어규칙에 따라 단말 내부 어플리케이션이 생성한 패킷들이 처리되도록 하는 것을 특징으로 한다.
바람하게는, 상기 장애감지 및 장애사항 알림 단계는 중앙제어장치가 장애여부를 감지하여 장애가 발생한 서버와 연결된 단말들에 장애 여부를 알려주거나, 각 단말이 스스로 장애사항을 감지하는 것으로 단말이 장애사항을 인지하게 하는 것을 특징으로 한다.
바람하게는, 상기 장애복구 수행단계는 단말이 장애를 인지한 직후에, 단말제어규칙을 수신으로 미리 설정된 차기 프록시서버리스트의 백업용 프록시서버로 장애 프록시서버 설정을 바로 치환하여서 장애복구를 빠르게 진행하는 것을 특징으로 한다.
본 발명의 또 다른 일실시예에 따른 중앙제어장치, 하나이상의 단말, 및 복수의 내부서버로 구성된 서비스 서버군을 포함하여 부하분산 및 장애복구를 제공하는 서비스시스템의 제어방법은 미리 설정된 단말제어규칙에 따라 단말이 생성하는 패킷별로 서로 다른 프록시서버를 경유하도록 하여 패킷별로 차별화된 정책을 적용할 수 있도록 하는 정책 적용 단계; 중앙제어장치가 단말에 내려주는 단말제어규칙의 프록시서버 IP를 조절하여, 단말별로 서로 다른 프록시서버에 연결되도록 하여 부하분산기능을 수행할 수 있도록 하는 부하 분산 단계; 및 단말제어규칙을 통해 차기 프록시서버리스트를 수신하여, 현재 연결된 프록시서버에 장애가 발생 할 시에도 차기 프록시서버로 재 연결을 수행하여 프록시서버에 대한 장애복구기능을 제공하는 장애 복구 수행 단계를 포함하는 것을 특징으로 한다.
바람하게는, 상기 중앙제어장치는 서비스 서버군 각 내부서버의 부하정도 및 장애여부와, 미리 설정된 단말별 정책 및 서비스서버군 정책을 기반으로 단말제어규칙을 산출하고, 산출된 단말제어규칙을 단말에 전달하는 것으로 단말이 생성한 패킷에 대한 패킷별 차별적인 서비스 적용을 제공하고 단말별 연결하는 프록시서버를 다르게 하는 것으로 서비스서버군 내부서버간의 부하분산 및 내부서버의 장애복구 기능을 제공하는 것을 특징으로 한다.
바람하게는, 상기 하나이상의 단말은 중앙제어장치로부터 수신한 단말제어규칙에 따라 단말 내부 프록시선택기, 또는 프록시클라이언트, 차기 프록시서버리스트를 설정하여, 단말이 생성한 패킷이 서로 다른 프록시서버로 전달되어 패킷별로 차별화된 서비스가 적용되도록 하고 단말별로 설정되는 프록시서버를 중앙제어장치가 제어할 수 있도록 하여 부하분산을 제공하도록 하며, 단말에 미리 설정된 차기 프록시서버리스트를 통하여 프록시서버에 장애 발생 시 바로 장애복구가 가능하도록 하는 것을 특징으로 한다.
더 바람하게는, 상기 프록시선택기는 L2부터 L7의 패킷 정보 및 단말 내부 어플리케이션 식별자 등의 패킷 식별을 위해 사용될 수 있는 패킷식별정보 중 설정된 일부 식별자를 기반으로 패킷을 식별한 후 해당 패킷이 서비스를 받을 수 있도록 해당 패킷용으로 설정된 프록시클라이언트로 전달하는 것을 특징으로 한다.
더 바람하게는, 상기 프록시클라이언트는 사용가능한 프록시클라이언트종류 중 서비스서버군의 서버가 지원하는 프록시서버와 연결되면서 서비스를 받을 패킷이 프록시 서버를 경유하도록 하기 위해 필요한 기능을 가진 프록시클라이언트종류를 사용하여서 해당 프록시클라이언트에 전달된 패킷이 프록시클라이언트와 연결된 프록시서버를 경유할 수 있도록 패킷을 설정하여 전달하는 것을 특징으로 한다.
바람하게는, 상기 차기 프록시서버리스트는 각 프록시클라이언트별로 설정된 프록시서버에 장애가 발생하였을 때 새로이 사용할 백업용 프록시서버의 정보를 보관하는 리스트로써, 프록시클라이언트별로 하나씩 보관되어서 특정 프록시클라이언트의 프록시서버에 장애가 발생하였을 때 중앙제어장치에 문의 없이 바로 백업 프록시서버로 해당 프록시클라이언트의 프록시서버 정보가 치환되어 장애복구가 완료되도록 하고, 단말별로 내려가는 차기 프록시서버리스트의 서버를 다르게 하여 장애복구가 부하분산과 동시에 이루어지도록 하며, 서비스 제공중인 서버를 백업용 프록시서버로 설정할 수 있도록 하여 백업용 스탠바이(Standby) 서버 없이도 장애복구를 제공할 수 있는 것을 특징으로 한다.
바람하게는, 상기 서비스서버군은 단말 및 패킷별로 차등적으로 제공되는 서비스를 하나하나 제공하는 서버들의 집합으로써, 각 서비스 서버군이 각 정책에 특화된 특정 서비스들을 제공하여 단말이 패킷별로 다른 특정 서비스 서버군을 경유하도록 설정하는 것으로 패킷별로 다른 서비스가 적용될 수 있도록 하는 것을 특징으로 한다.
본 발명의 다른 일실시예에 따른 컴퓨터로 판독 가능한 기록 매체는 상기 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법을 실행하는 프로그램을 기록한 것을 특징으로 한다.
이상에서 설명한 바와 같이, 본 발명의 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템을 사용하면, 네트워크상에 중앙제어장치가 존재하고, 단말제어모듈이 단말에 설치되어 있다면, 새로운 하드웨어의 설치 혹은 제거 없이 네트워크상 모든 서비스 서버군의 각 서버에 대한 부하분산 및 장애 복구 기능의 제공 및 중단을 가능하게 하기에, 비용적으로 장점이 있으며 효율적이다.
본 발명은 서비스 서버의 수량과 관계없이 적용할 수 있으므로 서버를 추가하여 용량 확장을 용이하게 할 수 있는 장점을 가진다.
고장의 감지 후 장애복구를 위한 차기 프록시서버로의 우회경로의 설정을 단말에서 능동적으로 수행하도록 하여 장애의 감지 및 복구가 빠르게 이루어지면서 장애복구를 진행중에도 서버간 부하분산이 이루어질 수 있다는 장점을 가진다.
더하여, 본 발명은 각 단말별로 단말제어규칙을 적용하기에 단말별로 차별화된 정책제공이 가능하도록 하며, 단말 내부에서도 프록시선택기를 통하여 트래픽별 혹은 단말 어플리케이션별로 차별적인 정책적용이 가능하도록 하기에 세부적으로 차등적 서비스 제공을 할 수 있다.
도 1은 본 발명에 따른 정책적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템을 도시한 것이다.
도 2는 본 발명에 따른 중앙제어장치 구성을 나타낸 것이다.
도 3은 본 발명에 따른 단말 내부의 구성을 나타낸 것이다.
도 4는 본 발명에 따른 단말제어를 통한 정책적용 및 부하분산 수행과정을 나타낸 것이다.
도 5는 본 발명에 따른 단말제어를 통한 장애복구 수행과정을 나타낸 것이다.
도 6은 본 발명의 다른 실시 예에 따른 정책적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템의 제어방법의 처리 절차를 나타낸 것이다.
도 7은 본 발명의 또 다른 실시 예에 따른 정책적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템의 제어방법의 처리 절차를 나타낸 것이다.
도 8은 본 발명에 따른 서비스시스템의 구성 예로, MPTCP를 사용하지 못하는 최종서버(400)에 대해 MPTCP의 성능을 제공할 수 있는 MPTCP Gateway를 사용하는 환경에서 본 발명의 서비스시스템이 정책적용, 부하분산, 그리고 장애복구를 어떻게 제공하는지를 도시한 것이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성된다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 발명에 따른 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템을 나타낸 것이다. 본 발명은 중앙제어장치(100), 하나이상의 단말(200), 및 복수의 내부서버로 구성된 서비스 서버군(300)을 포함하여 구성되고, 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템이다. 본 서비스시스템은 미리 등록된 정책 및 서비스서버군 정보를 기반으로 단말마다 단말제어규칙을 생성하고 단말에 설정하는데, 이렇게 설정된 단말제어규칙에 따라 단말은 단말이 생성하는 패킷별로 서로 다른 프록시서버를 경유하도록 하여 패킷별로 차별화된 정책을 적용할 수 있도록 하고, 중앙제어장치(100)는 단말마다 내려주는 단말제어규칙의 프록시서버 IP를 조절하여, 단말별로 서로 다른 프록시서버에 연결되도록 하여 부하분산기능이 적용되도록 하며, 단말제어규칙을 통해 차기 프록시서버리스트를 수신한 단말은 현재 연결된 프록시서버에 장애가 발생 할 시에도 빠르게 차기 프록시서버로 재 연결을 수행하여 프록시서버에 대한 장애복구기능을 빠르게 제공할 수 있도록 만든다. 즉, 상기 중앙제어장치(100)는 상기 서비스 서버군(300) 각 내부서버의 부하정도 및 장애여부와, 미리 설정된 단말별 정책 및 서비스서버군 정책을 기반으로 단말제어규칙을 산출하고, 산출된 단말제어규칙을 단말에 전달하는 것으로 단말이 생성한 패킷에 대한 패킷별 서비스 적용을 제공하고, 단말별로 산출하여 전달하는 단말제어규칙에서 단말별 연결하는 프록시서버를 다르게 하는 것으로 서비스서버군(300) 내부서버간의 부하분산 및 내부서버의 장애복구 기능을 제공하는 것이다.
상기 하나이상의 단말(200)은 중앙제어장치(100)로부터 수신한 단말제어규칙에 따라 단말 내부 프록시선택기, 프록시클라이언트, 또는 차기 프록시서버리스트를 설정하여, 중앙제어장치(100)가 제어한대로 단말이 생성한 패킷이 서로 다른 프록시서버로 전달되어 패킷별로 차별화된 서비스가 적용되도록 하고 단말별로 설정되는 프록시서버를 중앙제어장치(100)가 단말제어규칙을 통해 간접적으로 제어할 수 있도록 하여 부하분산을 제공하도록 하며, 단말에 미리 설정된 차기 프록시서버리스트를 통하여 프록시서버에 장애 발생 시 바로 장애복구가 가능하도록 한다. 상기 프록시선택기는 L2부터 L7의 패킷정보 및 단말 내부 어플리케이션 식별자 등의 패킷 식별을 위해 사용될 수 있는 패킷식별정보 중 설정된 일부 식별자를 기반으로 패킷을 식별한 후 해당 패킷이 중앙제어장치(100)가 해당 패킷에 제공하고자하는 서비스를 받을 수 있도록 단말제어규칙에 의해 프록시서버 설정이 완료된 프록시클라이언트로 전달할 수 있다. 상기 프록시클라이언트는 사용가능한 프록시클라이언트 중 서비스서버군(300)의 서버가 지원하는 프록시서버와 연결되면서 중앙제어장치(100)가 서비스서버군(300)을 통해 제공하는 서비스를 패킷에 적용하기에 최적의 프록시클라이언트를 사용하여서 해당 프록시클라이언트에 전달된 패킷이 프록시클라이언트와 연결된 프록시서버를 경유하도록 패킷을 설정하여 전달할 수 있다. 여기서 최적의 프록시클라이언트는 사용가능한 프록시클라이언트 중에서 서비스의 전송속도, 및/또는 전송지연, 패킷 에러율 등의 전송품질을 만족할 수 있는 지 여부에 기초하여 미리 결정되거나, 관리자에 의해 선택될 수 있다.
상기 차기 프록시서버리스트는 각 프록시클라이언트별로 설정된 프록시서버에 장애가 발생하였을 때 새로이 사용할 백업용 프록시서버의 정보를 보관하는 리스트로써, 프록시클라이언트별로 하나씩 보관되어서 특정 프록시클라이언트의 프록시서버에 장애가 발생하였을 때 단말이 중앙제어장치에 문의 없이 바로 백업 프록시정보를 찾아서 백업 프록시서버로 프록시서버 정보가 치환하여 장애복구를 완료하도록 한다. 또한 이 차기 프록시서버리스트는 리스트로써, 다수의 해당 프록시클라이언트용 백업 프록시 서버를 리스트로 제공하여 단말이 리스트의 순서대로 백업 서버로의 연결을 시도할 수 있도록 하여 1~2대의 백업 서버에도 장애가 동시에 발생하더라도 동작하는 백업용 서버를 찾아서 장애복구를 완료할 수 있도록 한다. 더하여, 이 차기 프록시서버리스트에 포함되는 서버들은 이미 다른 단말의 패킷들에 서비스를 제공중인 서버들이며 중앙제어장치가 단말제어규칙을 내려 줄 때 서비스서버군 각 서버들의 부하정보를 기준으로 단말마다 다른 서버를 다른 순서로 차기 프록시서버리스트로 내려주어 백업용 서버에 대한 부하분산 기능 또한 제공하면서 복구용 대기(스탠바이, Standby) 서버 없이 이미 서비스 중인 서버들을 사용 할 수 있도록 한다.
상기 서비스서버군(300)은 단말 및 패킷별로 차등적으로 제공되는 서비스를 하나하나 제공하는 서버들의 집합으로써, 각 서비스 서버군(300)이 각 정책에 특화된 특정 서비스들을 제공하여 단말이 단말별 및/또는 패킷별로 차등적인 서비스를 제공받을 수 있도록 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세하게 설명한다. 본 발명에 따른 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템은 도 1에서 보듯이, 중앙제어장치(100), 단말(200), 및 서비스서버군(300)을 포함하여 구성된다. 도 1을 참조하여 본 서비스시스템의 동작을 설명한다.
먼저, 단말(200)이 본 서비스시스템의 서비스를 받기 위해 전원을 켜고 네트워크에 접속 시작 시, 단말(가령, 단말내 단말설정 Agent)은 단말(200)의 시작을 중앙제어장치(100)에 알리고 중앙제어장치(100)가 전달하는 단말제어규칙을 수신한다.
다음으로, 상기 단말(200)은 단말제어규칙에 따라, 프록시선택기와 프록시클라이언트를 설정하고, 차기 프록시 서버리스트를 단말(200)의 메모리(미도시)에 보관한다.
다음으로, 단말(200) 내부에서 패킷생성 시, 프록시 선택기가 패킷별로 설정된 프록시클라이언트로 해당되는 패킷을 전달하고, 각 프록시클라이언트는 전달 받은 패킷이 설정된 프록시서버를 경유할 수 있도록 설정 한 후, 패킷을 네트워크에 방출하게 되는데, 이를 통하여 본 발명의 서비스시스템은 정책적용 및 부하분산을 별도의 하드웨어 장비구매 없이 수행한다. 프록시선택기는 L2부터 L7의 패킷정보 및 단말(200) 내부 어플리케이션 식별자 등을 아우르는 패킷식별에 활용될 수 있는 정보를 기반으로 패킷을 식별하여 서로 다른 프록시클라이언트로 패킷을 전달해 주는 역할을 수행한다. 이때 L2부터 L7의 패킷정보 및 단말(200) 내부 어플리케이션 식별자 등은 예로 사용된 식별자로 본 발명은 예의 식별자에 한정되지 않은 패킷식별이 가능한 모든 식별자를 사용할 수 있다. 각 프록시클라이언트는 서로 다른 프록시서버와 연동하여 패킷별로 차별화된 서비스가 적용될 수 있도록 프록시클라이언트마다 서로 다른 서비스서버를 패킷이 경유하도록 처리해주는 역할을 수행한다.
단말(200)은 장애 발생시, 장애감지 후 각 프록시클라이언트별로 설정된 차기 프록시 서버리스트의 다음 차기 프록시서버를 문제가 발생한 프록시서버 정보를 대체하도록 바로 프록시클라이언트에 설정해서 장애복구를 수행한다. 차기 프록시 서버리스트는 각 프록시클라이언트별로 하나씩, 장애발생시 순차적으로 다음 프록시서버로 연결을 시도할 리스트를 메모리에 보관하는 역할을 수행한다.
서비스 서버군(300)은 통상 알려진 혹은 특별히 제작된 프로토콜 및 프로그램 중 어떤 것이든 이용하여 주기적으로 서버의 부하정도 및 장애여부를 중앙제어 장치(100)에 전달하게 된다. 패킷별로 다른 서비스 서버군이 존재하여서, 차별화된 서비스 제공이 가능하게 된다. 서비스서버군 내부에는 다수의 서버가 존재하여서 각 서버가 서로의 백업서버로 역할을 수행 할 수 있도록 한다.
도 2는 본 발명에 따른 중앙제어장치 구성을 나타낸 것이다. 도 2에서 보듯이, 중앙제어장치(100)는 정책처리기(101)와 단말 제어기(104)를 포함하여 구성된다. 정책처리기(101)는 정책검색기(102), 정책DB(103) 및 정책생성기(105)를 포함하여 구현될 수 있다. 이하 중앙제어장치(100)의 동작을 설명한다.
먼저, 중앙제어장치(100)는 주기적으로 서버의 부하정도 및 장애여부를 수집하게 된다. 부하정도 및 장애 정보 수집은 기존의 알려진 통신 프로토콜(TCP/IP, 또는 UDP/IP 등) 및 프로그램들 중 통상의 기술자가 취사선택하여 사용하거나 별도로 특별한 통신 프로토콜 및 프로그램을 만들어 사용할 수 있다. 중앙제어장치는 정책과 각 서버의 장애여부, 그리고 각 서버의 부하정도를 기반으로 각 단말별로 단말제어규칙을 생성할 수 있다. 정책생성기(105)는 UI(User Interface)를 통한 사용자의 입력에 따라 정책을 생성한다. 정책DB(103)는 생성된 정책과 각 서버의 장애여부 및 부하정도, 그리고 각 단말(200)에 설정된 현 단말제어규칙을 보관한다. 정책검색기(102)는 정책DB(103)의 정보를 기반으로 해당 단말(200)에 맞는 단말제어규칙을 산출한다. 요구 기반(On-Demand)로 단말제어규칙이 산출되고 전달하게 된다. 산출 알고리즘은 통상의 기술자에게 알려진 것 혹은 특별히 제작된 것 중 어떤 것이나 사용 가능하다. 단말 제어기(104)는 단말(200)의 단말설정 Agent(211)와 연동하여, 단말제어규칙을 전달하고, 단말(200)이 현재 사용 중인 단말제어규칙을 정책DB(103)에 갱신하는 역할을 수행한다.
다음으로, 이 단말별 단말제어규칙은 단말(200)이 시작되었을 때 산출되고 바로 단말로 전달되어 단말을 설정하게 된다.
더하여, 설정된 주기마다 단말(200)은 자신이 가지는 단말제어규칙정보를 중앙제어장치(100)로 보내서 중앙제어장치(100)가 각 단말(200)별로 보관중인 설정된 단말제어규칙 정보를 갱신할 수 있도록 한다.
이렇게 전달된 단말제어규칙은 단말(200)의 프록시선택기, 프록시클라이언트, 차기 프록시서버리스트의 정보를 제어하여, 단말이 생성한 패킷에 대한 서비스제공 여부를 중앙제어장치(100)가 간접적으로 통제할 수 있도록 한다.
도 3은 본 발명에 따른 각 단말의 구성을 나타낸 것이다. 도 3에서 보듯이, 단말(200)은 단말제어 모듈(201)을 포함하는데, 이 모듈은 단말설정 Agent(211), 프록시 선택기(212), 하나 이상의 프록시클라이언트(213), 그리고 각 프록시 클라이언트별 차기 프록시 서버리스트(214)를 포함하여 구성된다. 이하 단말의 동작을 설명한다.
먼저, 단말제어모듈(201)의 단말제어 Agent(211)는 수신한 단말제어규칙의 정보를 이용하여 프록시 선택기, 프록시클라이언트, 차기 프록시서버리스트를 설정한다. 즉, 단말제어모듈(201)의 단말제어 Agent(211)는 단말 시작 시 중앙제어장치(100)에 단말 시작 여부를 알리고, 단말제어규칙(202)을 수신 받은 후, 프록시 선택기(212), 프록시클라이언트(213), 그리고 차기 프록시 서버리스트(214)를 각각 설정한다.
다음으로 이렇게 단말제어모듈(201)의 설정이 완료되면, 단말(200)의 각 어플리케이션이 생성한 패킷중 서비스 받는 것으로 등록된 패킷은 해당 서비스별로 할당된 프록시클라이언트(213)로 프록시선택기(212)에 의해 전달되게 된다.
프록시선택기(212)는 L2부터 L7의 패킷정보 및 어플리케이션 식별자 등을 통해 패킷 혹은 패킷소스를 식별하게 된다. 식별된 패킷에 대한 액션을 설정하여 패킷이 해당 액션으로 처리되도록 한다. 통상적으로 액션은 특정 프록시클라이언트로의 패킷 전달을 수행하는 것을 의미한다.
단말제어 Agent(211)를 통해 프록시서버 설정을 수행하게 된다. 프록시클라이언트(213)는 프록시서버와 연동하여, 전달 받은 패킷을 해당 프록시서버를 경유하도록 설정 후 네트워크에 방출하게 된다. 즉, 프록시클라이언트(213)는 전달 받은 패킷을 설정된 프록시서버를 경유하여 갈 수 있도록 한 후 패킷을 네트워크로 방출하게 되는 것이다.
프록시클라이언트(213)의 경우 단말(200)과 서비스서버가 지원할 수 있는 모든 프록시클라이언트가 적용대상이며, 패킷이 해당 프록시서버를 경유할 수 있도록 하는 방식은 사용되는 프록시클라이언트마다 다를 수 있다. 본 발명은 어떤 프록시클라이언트를 사용하는지는 특정하지 않으며, 도 3에서 "..."로 이를 표시하였다. 도 3에 기재한 SOCKS 프록시와 HTTP 프록시는 사용가능한 프록시 클라이언트의 종류들의 일예이다.
차기 프록시 서버리스트는 빠른 장애복구를 위해 단말(200)이 중앙제어장치(100)로부터 전달 받는 리스트로써, 각 프록시클라이언트에 설정된 프록시서버에서 장애가 감지된 경우, 별도의 문의 없이 단말 스스로 다음 프록시서버를 바로 재설정 할 수 있도록 하여 빠른 장애 복구를 수행하도록 한다.
차기 프록시 서버리스트는 프록시클라이언트별로 하나씩 존재하여, 프록시클라이언트별로 따로 중앙제어장치로의 문의 없이 빠른 장애복구를 수행하게 된다. 백업용 프록시서버를 리스트 형태로 보관하여 백업용 프록시서버 몇 대에 동시에 장애가 발생하여도, 동작중인 프록시서버를 찾아서 장애 복구를 수행한다. 단말제어규칙을 통해 내려가는 차기 프록시서버리스트의 서버와 서버순서는 단말별로 다르기에, 장애복구가 부하분산과 동시에 진행되는 것이 특징이다. 차기 프록시서버리스트에 등록되는 서버에는 Inactive(활성화 안 된)한 백업용 Standby서버가 아닌 현재 서비스 중인 통상 서버가 설정 가능하기에, 백업용 서버의 준비 없이 장애복구를 진행할 수 있는 것이 특징이다.
프록시클라이언트 하나가 하나의 서비스 서버군(300)과 연동하는 것이기에, 차기 프록시 서버리스트 또한 프록시클라이언트별로 하나씩 수신하여 보관하여야 한다.
본 발명의 중앙제어장치(100)는 단말제어규칙을 내려줄 때, 서비스 서버군(300) 각 서버의 부하정보를 기반으로 프록시클라이언트에 설정할 서버의 IP 주소를 제공한다. 즉, 부하정도가 가장 낮은 서버가 프록시클라이언트 설정용 정보로 단말제어규칙에 포함되어 단말(200)로 내려가거나 기타 부하분산 알고리즘을 통하여 선택된 서버가 프록시 서버로써 내려가는 것이다. 이렇게 하여, 단말별로 서로 다른 서버를 프록시서버로 사용하게 하여 균등한 부하분산기능을 제공하는 것이다.
이때 부하정보는, CPU 사용량, 메모리 사용량, 연결된 세션 수 등이 있을 수 있으며, CPU 사용량, 메모리 사용량, 연결된 세션 수 등은 본 발명이 예시로 사용한 부하정보일 뿐 본 발명에 특화된 정보는 아니다. 사용되는 부하정보의 기준은 본 발명의 시스템이 적용되는 사항에 따라 변경 될 수 있으며, 본 발명의 중앙제어장치(100)는 처리가 필요한 부하정보와 각 부하정보의 무게(가중치, 중요도)를 필요에 따라 생성하거나 수정할 수 있다.
도 4는 본 발명에 따른 단말제어규칙에 의한 패킷처리를 통해 부하분산을 수행하는 과정의 일예를 나타낸 것이다. 도 4에서 보듯이, (1) 관리자(500)에 의해 부하분산 및 장애복구 서비스를 받을 서비스서버가 등록된다. (2) 클라이언트 Client_1이 시작되면, (3) Client_1은 자신의 시작을 중앙제어장치(100)에 전달 후, 프록시선택기 설정, 프록시클라이언트 설정, 차기 프록시 서버리스트를 포함한 단말제어규칙을 수신한다. 이때, 중앙제어장치(100)는 서비스 서버군(300)내 각 서버인 ServerA와 ServerB가 모두 부하가 없음을 알고, ServerA를 프록시 서버로 사용하도록 전달하고, ServerB를 차기 장애복구용 프록시 서버로 차기 프록시 서버리스트에 포함하여 전송한다. (4) Client_1에서 최종서버(400)인 Server0로 보내는 패킷은 단말 내부 프록시선택기에 의해 패킷에 적용된 프록시클라이언트로 전달되고 설정된 프록시서버인 ServerA를 경유 하도록 설정되어 네트워크로 방출되게 된다. (5) ServerA는 프록시 서버로서 동작하여 패킷에 대한 서비스 수행 후 최종서버(400)인 Server0로 패킷을 전달한다. (6) 클라이언트 Client_2가 시작되면, (7) Client_2는 자신의 시작을 중앙제어장치(100)에 전달 후, 프록시선택기 설정, 프록시클라이언트 설정, 차기 프록시 서버리스트를 포함한 단말제어규칙을 수신한다. 이때, 중앙제어장치(100)는 ServerA에 더 많은 부하가 있음을 알기에, ServerB를 프록시 서버로 사용하도록 전달하고 ServerA를 차기 장애복구용 프록시 서버로 차기 프록시 서버리스트에 포함하여 전송한다. (8) Client_2에서 최종서버(400)인 Server0로 보내는 패킷은 단말 내부 프록시선택기에 의해 패킷에 적용된 프록시클라이언트로 전달되고 설정된 프록시 서버인 ServerB를 패킷이 경유 하도록 설정되어 네트워크로 방출된다. (9) ServerB는 프록시 서버로서 동작하여 패킷에 대한 서비스 수행 후 최종서버(400)로 패킷을 전달한다.
도 5는 본 발명에 따른 단말제어규칙에 의한 패킷처리를 통해 장애복구를 수행하는 과정을 나타낸 것이다. 도 5에서 보듯이, (1) 등록된 서비스 서버군(300)의 서버 중 ServerA에 장애가 발생하면, (2) 중앙제어장치(100)는 ServerA의 장애를 감지하게 되고, (3) ServerA를 프록시서버로 사용 중인 모든 단말에 ServerA의 장애상황을 알려주게 된다. (4) 단말(200)은 중앙제어장치(100)로부터 ServerA의 장애정보를 수신하면, 해당 장애가 발생한 ServerA 서비스서버군(300)의 차기 프록시 서버리스트에서 차기 프록시서버인 ServerB 정보를 가져오고, ServerB를 새로운 프록시서버로 설정하여서 장애 복구를 수행하게 된다. 특정 프록시클라이언트는 연동중인 프록시서버와 연결 중단을 바로 감지하는 기능을 제공하기도 하는데, 이 경우, 단말은 중앙제어장치(100)로부터 SeverA의 장애상황을 전달 받기 전에 장애를 먼저 인지하게 된다. 이때 단말은 빠른 장애복구를 위해 먼저 장애복구를 수행하여 ServerB로 프록시서버를 변경(치환)할 수 있으며, 이 후에 (3)번 과정의 ServerA 장애여부를 중앙제어장치(100)로부터 전달 받아도, 이미 ServerA를 사용 중이지 않기에, 별다른 행동 없이, 현재 사용 중인 프록시 정보를 중앙제어장치(100)로 송신하여 문제없음을 알려준다.
도 6은 본 발명의 다른 실시 예에 따른 정책적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템의 제어방법(2000)의 처리 절차를 나타낸 것이다. 상기 제어방법은 중앙제어장치, 하나이상의 단말, 및 복수의 내부서버로 구성된 서비스 서버군을 포함하여 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법으로서, 단말별 또는 패킷별로 적용되는 정책과 부하분산 및 장애복구 서비스를 받을 수 있는 서비스 서버군을 등록하는 등록단계; 등록된 서비스 서버군의 각 내부서버의 부하정도와 장애여부를 주기적으로 수집하는 장애 및 부하감지단계; 단말 시작 시, 정책 수정 시, 또는 장애 발생 시, 단말제어규칙을 단말에 전달하여 단말의 패킷이 중앙제어장치가 제어하는 대로 처리될 수 있도록 하는 단말제어규칙 설정 단계; 설정된 단말제어규칙에 따라 단말 스스로 패킷을 중앙제어장치가 제어한대로 처리하는 패킷 생성 및 전달 단계; 서비스 서버군 내부서버의 장애 발생 시 장애발생 서버와 연결 중이던 모든 단말이 단말 장애여부를 인식할 수 있도록 단말 장애 여부를 전달하거나 단말 스스로 장애여부를 감지하도록 하는 장애감지 및 장애사항 알림 단계; 및 차기 프록시서버리스트를 이용하여 단말이 스스로 장애가 발생한 프록시서버 설정을 백업 프록시서버 설정으로 치환하여 장애복구를 완료하는 장애복구 수행 단계; 를 포함하여 구성될 수 있다. 상기 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법은 하나의 서비스로써 외부 시스템에 제공될 수 있다.
도 6을 참조하여, 본 발명의 다른 실시 예에 따른 부하분산 및 장애복구를 제공하는 서비스시스템의 제어방법(2000)의 처리 과정을 이하에서 보다 상세히 설명한다. 먼저, 단말 및 정책 등록단계(S100)로서, 중앙제어장치(100)에 단말별 서비스정책을 등록하여 어떤 단말의 어떤 패킷이 어떠한 서비스서버군(300)에 의해 서비스 될지를 등록하고, 서비스서버군별로 부하분산 및 장애복구 기능의 제공여부를 등록하여, 어떤 서비스 서버군에 대해 부하분산과 장애복구 기능을 제공할지 등록하는 과정을 수행한다.
다음으로, 장애 및 부하감지 단계(S200)로서, 부하분산과 장애복구 기능을 제공 받는 서비스 서버군의 각 서버의 부하정도와 장애여부를 수집하는 단계로, 주기적으로 정보 수집이 이루어진다.
다음으로, 단말제어규칙 설정 단계(S300)로서, 단말이 새로이 시작되거나, 단말의 단말제어규칙 재설정이 필요한 경우 실행되는 단계로, 단말로 단말제어규칙을 전송하여, 단말의 패킷별로 경유하게 되는 서비스 서버군 서버를 제어할 수 있도록 한다. 이 단계에서 중앙제어장치는 각 단말별 단말제어규칙을 산출하고, 산출된 단말제어규칙을 각 단말에 전송하는 것으로, 중앙제어장치가 제어하는 대로 각 단말이 패킷을 처리하도록 하여 중앙제어장치가 의도한 단말별 및 패킷별로 차별화된 정책을 적용할 수 있도록 하고 서비스서버군에 대한 부하분산 및 장애복구를 제공할 수 있도록 한다.
다음으로, 패킷 생성 및 전달 단계(S400)로서, 단말의 통상적인 패킷통신 단계로, 단말제어규칙 설정이 완료된 단말은, 패킷통신을 진행할 때 이 단계를 거치게 되며, 단말제어규칙에 따라 단말의 특정 패킷이 특정 서비스 서버군의 서버를 경유하여 갈 수 있도록 한다. 각 단말이 중앙제어장치로부터 전달받아 미리 설정한 단말제어규칙에 따라 단말 내부 어플리케이션이 생성한 패킷들이 처리되도록 하여 중앙제어장치가 제어하는 대로 패킷들이 처리되도록 한다.
다음으로, 장애감지 및 장애사항 알림 단계(S500)로서, 서비스 중이던 서비스 서버군의 서버에 장애가 발생했을 경우 동작하는 단계로, 장애감지에 의해 시작되고, 중앙제어장치(100)가 장애서버의 장애여부를 관련 단말에 알리거나, 단말 스스로 장애를 감지하여 단말이 장애발생을 인지하는 시점에 종료된다. 중앙제어장치(100)에 의한 장애여부의 감지는 RestAPI, Netconf, 혹은 새로 작성한 진단용 프로토콜 등의 정보전달용 인터페이스를 제공하는 것으로도 가능하나, 이는 예로 명시하는 것일 뿐 위 프로그램 혹은 프로토콜의 사용은 본 발명에 특정된 것이 아니며 본 발명은 부하 및 장애여부 감지를 위해 다양한 프로그램과 프로토콜이 사용될 수 있다.
다음으로 장애복구 수행 단계(S600)로서, 단말이 자신이 연결(연동) 중이던 프록시서버의 장애를 감지하면 실행되는 단계로 단말에서 단말제어규칙을 통해 설정된 차기 프록시서버로 장애서버를 변경(치환)하여 바로 장애복구를 수행한다. 장애복구 후 새로이 치환된 프록시서버에 대한 정보를 중앙제어장치(100)에 전달하는 것으로 단계의 수행을 종료한다.
도 7은 본 발명의 또 다른 실시 예에 따른 정책적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템의 제어방법(3000)의 처리 절차를 나타낸 것이다. 도 7을 참조하여, 본 발명의 또 다른 실시 예에 따른 부하분산 및 장애복구를 제공하는 서비스시스템의 제어방법(3000)의 처리 과정을 이하에서 설명한다.
먼저, 정책 적용 단계(S3100)로서, 중앙제어장치, 하나이상의 단말, 및 복수의 내부서버로 구성된 서비스 서버군을 포함하여 부하분산 및 장애복구를 제공하는 서비스시스템의 제어방법은 미리 설정된 단말제어규칙에 따라 단말이 생성하는 패킷별로 서로 다른 프록시서버를 경유하도록 하여 패킷별로 차별화된 정책을 적용할 수 있도록 한다.
다음으로, 부하 분산 단계(S3200)로서, 중앙제어장치가 단말에 내려주는 단말제어규칙의 프록시서버 IP를 조절하여, 단말별로 서로 다른 프록시서버에 연결되도록 하여 부하분산기능을 수행한다.
다음으로, 장애 복구 수행 단계(S3300)로서, 단말제어규칙을 통해 차기 프록시서버리스트를 수신하여, 현재 연결된 프록시서버에 장애가 발생 할 시에도 차기 프록시서버로 재 연결을 수행하여 프록시서버에 대한 장애복구기능을 제공한다.
도 7의 본 발명의 또 다른 실시 예에 따른 정책적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템의 제어방법(3000)의 처리 절차에서 상기 중앙제어장치는 서비스 서버군 각 내부서버의 부하정도 및 장애여부와, 미리 설정된 단말별 정책 및 서비스서버군 정책을 기반으로 단말제어규칙을 산출하고, 산출된 단말제어규칙을 단말에 전달하는 것으로 단말이 생성한 패킷에 대한 패킷별 차별적인 서비스 적용을 제공하고 단말별 연결하는 프록시서버를 다르게 하는 것으로 서비스서버군 내부서버간의 부하분산 및 내부서버의 장애복구 기능을 제공한다.
상기 하나이상의 단말은 중앙제어장치로부터 수신한 단말제어규칙에 따라 단말 내부 프록시선택기, 프록시클라이언트, 또는 차기 프록시서버리스트를 설정하여, 단말이 생성한 패킷이 서로 다른 프록시서버로 전달되어 패킷별로 차별화된 서비스가 적용되도록 하고 단말별로 설정되는 프록시서버를 중앙제어장치가 제어할 수 있도록 하여 부하분산을 제공하도록 하며, 단말에 미리 설정된 차기 프록시서버리스트를 통하여 프록시서버에 장애 발생 시 바로 장애복구가 가능하도록 한다. 상기 프록시선택기는 L2부터 L7의 패킷정보 및 단말 내부 어플리케이션 식별자 등의 패킷 식별을 위해 사용될 수 있는 패킷식별정보 중 설정된 일부 식별자를 기반으로 패킷을 식별한 후 해당 패킷이 서비스를 받을 수 있도록 설정된 프록시클라이언트로 전달한다. 상기 프록시클라이언트는 사용가능한 프록시클라이언트종류 중 서비스서버군의 서버가 지원하는 프록시서버와 연결되면서 서비스를 받을 패킷이 프록시 서버를 경유하도록 하기 위해 필요한 기능을 가진 프록시클라이언트종류를 사용하여서 해당 프록시클라이언트에 전달된 패킷이 프록시클라이언트와 연결된 프록시서버를 경유할 수 있도록 패킷을 설정하여 전달한다. 상기 차기 프록시서버리스트는 각 프록시클라이언트별로 설정된 프록시서버에 장애가 발생하였을 때 새로이 사용할 백업용 프록시서버의 정보를 보관하는 리스트로써, 프록시클라이언트별로 하나씩 보관되어서 특정 프록시클라이언트의 프록시서버에 장애가 발생하였을 때 중앙제어장치에 문의 없이 바로 백업 프록시서버로 해당 프록시클라이언트의 프록시서버 정보가 치환되어 장애복구가 완료되도록 하고, 단말별로 내려가는 차기 프록시서버리스트의 서버를 다르게 하여 장애복구가 부하분산과 동시에 이루어지도록 하며, 서비스 제공중인 서버를 백업용 프록시서버로 설정할 수 있도록 하여 백업용 Standby서버 없이도 장애복구를 제공할 수 있다.
상기 서비스서버군은 단말 및 패킷별로 차등적으로 제공되는 서비스를 하나하나 제공하는 서버들의 집합으로써, 각 서비스 서버군이 각 정책에 특화된 특정 서비스들을 제공하여 단말이 패킷별로 다른 특정 서비스 서버군을 경유하도록 설정하는 것으로 패킷별로 다른 서비스가 적용될 수 있도록 한다.
도 8은 본 발명에 따른 서비스시스템의 구성 예로, MPTCP (Multipath TCP)를 사용하지 못하는 최종서버(400)에 대해 MPTCP의 성능을 제공할 수 있는 MPTCP Gateway 서비스에 대하여 본 시스템이 정책적용, 부하분산, 그리고 장애복구를 제공하는 구성 예이다.
MPTCP (Multipath TCP)란 시작점과 목적지사이에 여러 경로가 존재하는 경우 각 경로를 하나로 묶어서 TCP 연결을 설립하고 패킷들의 병합전송을 가능케하여 목적지와 시작점 사이의 패킷 전송 속도를 향상시키는 기술이다. 현재 이동통신 망을 이용하는 모바일 장치들은 통상적으로 LTE/3G와 WiFi의 2개의 네트워크에 연결이 가능하기에, 병합전송이 가능하고, 병합전송을 통한 속도 향상을 얻을 수 있다.
도 8에서 보듯이, 현 인터넷 망의 상황을 보면, 대부분의 서버는 MPTCP를 지원하지 않기에 단말에서 MPTCP를 사용하는 기능이 있다 하더라도, 그 혜택을 받지 못하고 있는 형편이다. 그렇기에 MPTCP Gateway(게이트웨이)는 비디오 트래픽 등 고속이 필요한 트래픽에 대하여 병합전송을 통한 향상된 속도를 제공하기위해 백본(BackBone) 망까지는 MPTCP를 적용하고, BackBone 부터 최종서버(400)까지는 BackBone의 통상 광대역통신망을 사용하는 것으로 병합전송으로 인한 향상된 속도를 제공하는 솔루션을 제공한다. 이 경우, MPTCP Gateway도 하나의 서비스 서버군으로써 본 발명의 시스템의 혜택을 받을 수 있다.
도 8에서 보듯이, 단말(200)은 중앙제어장치(100)로부터 단말제어규칙을 먼저 수신한다. 그 후 단말은 어플리케이션이 생성한 패킷을 프록시선택기로 보낸 후 패킷별로 차별화된 서비스를 받도록 한다. 이때 MPTCP서비스를 받는 패킷은 프록시로 전달되어서 MPTCP Gateway(600)를 경유하도록 설정한 후 MPTCP 데몬을 통해 LTE/3G 망과 WiFi 망을 모두 사용하여 방출되는 반면, 일반 패킷은 프록시선택기에서 바로 WiFi로 방출되는 것을 확인 할 수 있다. 더하여, MPTCP Gateway가 부하분산 서비스에 가입되어 있기 때문에, 단말 1의 패킷과 단말 2의 패킷이 각각 Server_A와 Server_B에 분산되는 것을 확인 할 수 있다.
한편, 본 발명의 실시 예에 따른 정책적용, 부하분산, 그리고 장애복구를 제공하는 서비스시스템의 제어방법은 다양한 전자적으로 정보를 처리하는 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 저장 매체에 기록될 수 있다. 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
저장 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상기에서는 본 발명의 바람직한 실시 예를 참조하여 설명하였지만, 해당 기술분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (23)

  1. 중앙제어장치, 하나이상의 단말, 및 복수의 내부서버로 구성된 서비스 서버군을 포함하여 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템에 있어서,
    미리 설정된 단말제어규칙에 따라 단말이 생성하는 패킷별로 서로 다른 서비스 서버군의 프록시서버를 경유하도록 하여 패킷별로 차별화된 정책을 적용할 수 있도록 하고, 중앙제어장치가 단말에 내려주는 단말제어규칙의 프록시서버 IP를 조절하여, 단말별로 서로 다른 프록시서버에 연결되도록 하여 부하분산기능을 수행할 수 있도록 하며, 단말제어규칙을 통해 차기 프록시서버리스트를 수신하여, 현재 연결된 프록시서버에 장애가 발생 할 시에도 차기 프록시서버로 재 연결을 수행하여 프록시서버에 대한 장애복구기능을 제공하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템.
  2. 제 1항에 있어서, 상기 중앙제어장치는
    상기 서비스 서버군 각 내부서버의 부하정도 및 장애여부와, 미리 설정된 단말별 정책 및 서비스서버군 정책을 기반으로 단말제어규칙을 산출하고, 산출된 단말제어규칙을 단말에 전달하는 것으로 단말이 생성한 패킷에 대한 패킷별 차별적인 서비스 적용을 제공하고 단말별 연결하는 프록시서버를 다르게 하는 것으로 서비스서버군 내부서버간의 부하분산 및 내부서버의 장애복구 기능을 제공하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템.
  3. 제 1항에 있어서, 상기 하나이상의 단말은
    중앙제어장치로부터 수신한 단말제어규칙에 따라 단말 내부 프록시선택기, 프록시클라이언트, 또는 차기 프록시서버리스트를 설정하여, 단말이 생성한 패킷이 서로 다른 프록시서버로 전달되어 패킷별로 차별화된 서비스가 적용되도록 하고 단말별로 설정되는 프록시서버를 중앙제어장치가 제어할 수 있도록 하여 부하분산을 제공하도록 하며, 단말에 미리 설정된 차기 프록시서버리스트를 통하여 프록시서버에 장애 발생 시 바로 장애복구가 가능하도록 하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템.
  4. 제 3항에 있어서, 상기 프록시선택기는
    L2부터 L7의 패킷정보 및 단말 내부 어플리케이션 식별자 등의 패킷 식별을 위해 사용될 수 있는 패킷식별정보 중 설정된 일부 식별자를 기반으로 패킷을 식별한 후 식별된 패킷을 해당 패킷이 서비스를 받을 수 있도록 설정된 프록시클라이언트로 전달하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템.
  5. 제 3항에 있어서, 상기 프록시클라이언트는
    사용가능한 프록시클라이언트종류 중 서비스서버군의 서버가 지원하는 프록시서버와 연결되면서 서비스를 받을 패킷이 프록시서버를 경유하도록 하기 위해 필요한 기능을 가진 프록시클라이언트종류를 사용하여서 해당 프록시클라이언트에 전달된 패킷이 프록시클라이언트와 연결된 프록시서버를 경유할 수 있도록 패킷을 설정하여 전달하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템.
  6. 제 3항에 있어서, 상기 차기 프록시서버리스트는
    각 프록시클라이언트별로 설정된 프록시서버에 장애가 발생하였을 때 새로이 사용할 백업용 프록시서버의 정보를 보관하는 리스트로써, 프록시클라이언트별로 하나씩 보관되어서 특정 프록시클라이언트의 프록시서버에 장애가 발생하였을 때 중앙제어장치에 문의 없이 바로 백업 프록시서버로 해당 프록시클라이언트의 프록시서버 정보가 치환되어 장애복구가 완료되도록 하고, 단말별로 내려가는 차기 프록시서버리스트의 서버를 다르게 하여 장애복구가 부하분산과 동시에 이루어지도록 하며, 서비스 제공중인 서버를 백업용 프록시서버로 설정할 수 있도록 하여 백업용 Standby서버 없이도 장애복구를 제공할 수 있는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템.
  7. 제 1항에 있어서, 상기 서비스서버군은
    단말 및 패킷별로 차등적으로 제공되는 서비스를 하나하나 제공하는 서버들의 집합으로써, 각 서비스 서버군이 각 정책에 특화된 특정 서비스들을 제공하여 단말이 패킷별로 다른 특정 서비스 서버군을 경유하도록 설정하는 것으로 패킷별로 다른 서비스가 적용될 수 있도록 하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템.
  8. 부하분산 및 장애복구를 제공하는 서비스시스템의 제어방법에 있어서,
    등록된 서비스 서버군의 각 내부서버의 부하정도와 장애여부를 주기적으로 수집하는 장애 및 부하감지단계;
    설정된 단말제어규칙에 따라 단말 스스로 패킷을 처리하는 패킷 생성 및 전달 단계;
    서비스 서버군 내부서버의 장애 발생 시 장애발생 서버와 연결 중이던 모든 단말이 해당 서버의 장애여부를 인식할 수 있도록 장애사항을 전달하거나 단말 스스로 연동중이던 장애여부를 감지하도록 하는 장애감지 및 장애사항 알림 단계; 및
    단말이 스스로 장애가 발생한 프록시서버 설정을 백업 프록시서버 설정으로 치환하여 장애복구를 빠르게 완료하는 장애복구 수행 단계; 를 포함하여 구성되는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  9. 제 8항에 있어서, 상기 제어방법은
    단말별 또는 패킷별로 어떠한 서비스를 받을지 정책을 등록하는 것과 부하분산 및 장애복구 서비스를 받을 서비스 서버군과 그 서버군의 내부서버들을 등록하는 등록단계를 포함하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  10. 제 8항에 있어서, 상기 장애 및 부하감지단계는
    중앙제어장치가 서비스 서버군으로부터 미리 결정된 프로토콜 혹은 프로그램을 통하여 주기적으로 부하분산 및/혹은 장애복구 서비스를 신청한 서비스 서버군으로부터 부하정보 및 장애여부를 수집하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  11. 제 8항에 있어서, 상기 제어방법은
    중앙제어장치가 각 단말별 단말제어규칙을 산출하고, 산출된 단말제어규칙을 각 단말에 전송하여, 각 단말이 단말제어규칙의 설정에 따라 패킷을 처리하는 것으로 단말 및 패킷별 차별화된 정책적용과 서비스서버군에 대한 부하분산 및 장애복구를 제공할 수 있도록 하는 단말제어규칙 설정단계를 포함하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  12. 제 8항에 있어서, 상기 패킷 생성 및 전달단계는
    각 단말이 중앙제어장치로부터 전달받아 미리 설정한 단말제어규칙에 따라 단말 내부 어플리케이션이 생성한 패킷들이 처리되도록 하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  13. 제 8항에 있어서, 상기 장애감지 및 장애사항 알림 단계는
    중앙제어장치가 장애여부를 감지하여 장애가 발생한 서버와 연결된 단말들에 장애 여부를 알려주거나, 각 단말이 스스로 장애사항을 감지하는 것으로 단말이 장애사항을 인지하게 하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  14. 제 8항에 있어서, 상기 장애복구 수행단계는
    단말이 장애를 인지한 직후에, 단말제어규칙의 수신으로 미리 설정된 차기 프록시서버리스트의 백업용 프록시서버로 장애 프록시서버 설정을 바로 치환하여서 장애복구를 빠르게 진행하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  15. 중앙제어장치, 하나이상의 단말, 및 복수의 내부서버로 구성된 서비스 서버군을 포함하여 정책적용, 부하분산 및 장애복구를 제공하는 서비스시스템의 제어방법에 있어서,
    미리 설정된 단말제어규칙에 따라 단말이 생성하는 패킷별로 서로 다른 프록시서버를 경유하도록 하여 패킷별로 차별화된 정책을 적용할 수 있도록 하는 정책 적용 단계;
    중앙제어장치가 단말에 내려주는 단말제어규칙의 프록시서버 IP를 조절하여, 단말별로 서로 다른 프록시서버에 연결되도록 하여 부하분산기능을 수행할 수 있도록 하는 부하 분산 단계; 및
    단말제어규칙을 통해 차기 프록시서버리스트를 수신하여, 현재 연결된 프록시서버에 장애가 발생 할 시에도 차기 프록시서버로 재 연결을 수행하여 프록시서버에 대한 장애복구기능을 제공하는 장애 복구 수행 단계를 포함하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  16. 제 15항에 있어서, 상기 중앙제어장치는
    서비스 서버군 각 내부서버의 부하정도 및 장애여부와, 미리 설정된 단말별 정책 및 서비스서버군 정책을 기반으로 단말제어규칙을 산출하고, 산출된 단말제어규칙을 단말에 전달하는 것으로 단말이 생성한 패킷에 대한 패킷별 차별적인 서비스 적용을 제공하고 단말별 연결하는 프록시서버를 다르게 하는 것으로 서비스서버군 내부서버간의 부하분산 및 내부서버의 장애복구 기능을 제공하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  17. 제 15항에 있어서, 상기 하나이상의 단말은
    중앙제어장치로부터 수신한 단말제어규칙에 따라 단말 내부 프록시선택기, 프록시클라이언트, 또는 차기 프록시서버리스트를 설정하여, 단말이 생성한 패킷이 서로 다른 프록시서버로 전달되어 패킷별로 차별화된 서비스가 적용되도록 하고 단말별로 설정되는 프록시서버를 중앙제어장치가 제어할 수 있도록 하여 부하분산을 제공하도록 하며, 단말에 미리 설정된 차기 프록시서버리스트를 통하여 프록시서버에 장애 발생 시 바로 장애복구가 가능하도록 하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  18. 제 17항에 있어서, 상기 프록시선택기는
    L2부터 L7의 패킷정보 및 단말 내부 어플리케이션 식별자 등의 패킷 식별을 위해 사용될 수 있는 패킷식별정보 중 설정된 일부 식별자를 기반으로 패킷을 식별한 후 식별된 패킷을 해당 패킷이 서비스를 받을 수 있도록 설정된 프록시클라이언트로 전달하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  19. 제 17항에 있어서, 상기 프록시클라이언트는
    사용가능한 프록시클라이언트종류 중 서비스서버군의 서버가 지원하는 프록시서버와 연결되면서 서비스를 받을 패킷이 프록시서버를 경유하도록 하기 위해 필요한 기능을 가진 프록시클라이언트종류를 사용하여서 해당 프록시클라이언트에 전달된 패킷이 프록시클라이언트와 연결된 프록시서버를 경유할 수 있도록 패킷을 설정하여 전달하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  20. 제 17항에 있어서, 상기 차기 프록시서버리스트는
    각 프록시클라이언트별로 설정된 프록시서버에 장애가 발생하였을 때 새로이 사용할 백업용 프록시서버의 정보를 보관하는 리스트로써, 프록시클라이언트별로 하나씩 보관되어서 특정 프록시클라이언트의 프록시서버에 장애가 발생하였을 때 중앙제어장치에 문의 없이 바로 백업 프록시서버로 해당 프록시클라이언트의 프록시서버 정보가 치환되어 장애복구가 완료되도록 하고, 단말별로 내려가는 차기 프록시서버리스트의 서버를 다르게 하여 장애복구가 부하분산과 동시에 이루어지도록 하며, 서비스 제공중인 서버를 백업용 프록시서버로 설정할 수 있도록 하여 백업용 Standby서버 없이도 장애복구를 제공할 수 있는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  21. 제 15항에 있어서, 상기 서비스서버군은
    단말 및 패킷별로 차등적으로 제공되는 서비스를 하나하나 제공하는 서버들의 집합으로써, 각 서비스 서버군이 각 정책에 특화된 특정 서비스들을 제공하여 단말이 패킷별로 다른 특정 서비스 서버군을 경유하도록 설정하는 것으로 패킷별로 다른 서비스가 적용될 수 있도록 하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  22. 제 8 항 내지 제 21 항 중 어느 한 항의 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법을 하나의 서비스로써 외부 시스템에 제공하는 것을 특징으로 하는 정책적용, 부하분산, 및 장애복구를 제공하는 서비스시스템의 제어방법.
  23. 제 8 항 내지 제 21 항 중 어느 한 항의 방법을 실행하는 프로그램을 기록한 것을 특징으로 하는 컴퓨터로 판독 가능한 기록매체.
PCT/KR2016/006473 2015-06-17 2016-06-17 프록시 선택기와 각 프록시의 설정 제어를 이용한 단말 단위 실시간 정책 적용, 부하분산 및 장애 복구를 제공하는 서비스시스템 및 그 제어방법 WO2016204567A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150085820A KR101678612B1 (ko) 2015-06-17 2015-06-17 프록시 선택기와 각 프록시의 설정 제어를 이용한 단말 단위 실시간 정책 적용, 부하분산 및 장애 복구를 제공하는 서비스시스템 및 그 제어방법
KR10-2015-0085820 2015-06-17

Publications (1)

Publication Number Publication Date
WO2016204567A1 true WO2016204567A1 (ko) 2016-12-22

Family

ID=57539968

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/006473 WO2016204567A1 (ko) 2015-06-17 2016-06-17 프록시 선택기와 각 프록시의 설정 제어를 이용한 단말 단위 실시간 정책 적용, 부하분산 및 장애 복구를 제공하는 서비스시스템 및 그 제어방법

Country Status (2)

Country Link
KR (1) KR101678612B1 (ko)
WO (1) WO2016204567A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101970304B1 (ko) * 2017-03-24 2019-04-18 (주)넷비젼텔레콤 다중 경로 환경에서 생성되는 tcp 패킷을 처리하는 방법
KR102351395B1 (ko) 2017-06-02 2022-01-14 주식회사 애니랙티브 Mptcp 프록시 시스템 및 이의 운용방법
KR102027749B1 (ko) * 2019-02-08 2019-10-02 아콘소프트 주식회사 마이크로서비스 시스템 및 방법
KR102050188B1 (ko) * 2019-02-08 2019-11-28 아콘소프트 주식회사 마이크로서비스 시스템 및 방법
KR102609732B1 (ko) * 2021-11-16 2023-12-05 주식회사 카카오엔터프라이즈 Api 게이트웨이 및 그의 동작 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245309A (ja) * 2008-03-31 2009-10-22 Fujitsu Ltd アクセス要求転送システム、アクセス要求転送方法およびアクセス要求転送プログラム
KR20100062783A (ko) * 2008-12-02 2010-06-10 한국전자통신연구원 서비스별로 다른 경로를 제공하기 위한 라우팅 방법 및 장치
KR20140064964A (ko) * 2011-10-24 2014-05-28 알까뗄 루슨트 Sip 프록시 장애 극복을 위한 방법
KR101445255B1 (ko) * 2014-03-11 2014-09-29 주식회사 파이오링크 부하 분산 설정을 자동으로 제공하기 위한 방법, 장치, 시스템 및 컴퓨터 판독 가능한 기록 매체
KR20150045210A (ko) * 2013-10-18 2015-04-28 에스케이텔레콤 주식회사 세션 처리 기능 장애 시 재등록을 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101480128B1 (ko) 2013-12-19 2015-01-07 (주)소만사 미러링 및 인라인 방식으로 부하분산 및 이중화를 지원하는 ndlp 어플라이언스 시스템 및 이를 이용한 부하분산 및 이중화 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009245309A (ja) * 2008-03-31 2009-10-22 Fujitsu Ltd アクセス要求転送システム、アクセス要求転送方法およびアクセス要求転送プログラム
KR20100062783A (ko) * 2008-12-02 2010-06-10 한국전자통신연구원 서비스별로 다른 경로를 제공하기 위한 라우팅 방법 및 장치
KR20140064964A (ko) * 2011-10-24 2014-05-28 알까뗄 루슨트 Sip 프록시 장애 극복을 위한 방법
KR20150045210A (ko) * 2013-10-18 2015-04-28 에스케이텔레콤 주식회사 세션 처리 기능 장애 시 재등록을 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체
KR101445255B1 (ko) * 2014-03-11 2014-09-29 주식회사 파이오링크 부하 분산 설정을 자동으로 제공하기 위한 방법, 장치, 시스템 및 컴퓨터 판독 가능한 기록 매체

Also Published As

Publication number Publication date
KR101678612B1 (ko) 2016-11-22

Similar Documents

Publication Publication Date Title
WO2016204567A1 (ko) 프록시 선택기와 각 프록시의 설정 제어를 이용한 단말 단위 실시간 정책 적용, 부하분산 및 장애 복구를 제공하는 서비스시스템 및 그 제어방법
US8185946B2 (en) Wireless firewall with tear down messaging
US9380111B2 (en) Feature peer network with scalable state information
JP4650414B2 (ja) 通信処理システム、パケット処理負荷分散装置及びそれに用いるパケット処理負荷分散方法
EP2731313B1 (en) Distributed cluster processing system and message processing method thereof
JP2006013827A (ja) パケット転送装置
WO2005036831A1 (ja) フレーム中継装置
WO2018135742A1 (ko) 중앙 집중식 제어 구조 서버를 갖는 포그 컴퓨팅 운용을 위한 시스템 및 그의 제어 방법
WO2016098968A1 (ko) 지능형 보안 네트워킹 시스템 및 그 방법
WO2010062020A2 (en) System for controlling path maximum transmission unit by detecting repetitional ip packet fragmentation and method thereof
US20210126941A1 (en) Method for Providing a Connection Between a Communications Service Provider and an Internet Protocol, IP, Server, Providing a Service, as well as a Perimeter Network, Comprising the IP Server, and an IP Server Providing the Service
WO2015194885A1 (ko) 클라이언트 경로 제어 시스템을 활용한 장애유발 클라이언트 검출 방법 및 시스템
WO2012165726A1 (ko) 메쉬 네트워크 노드 및 그의 데이터 전송 방법
CN115885502A (zh) 对中间网络节点进行诊断
WO2008141572A1 (fr) Procédé et système servant à réaliser un contrôle d'entretien sur des sessions clients
JP2011151514A (ja) トラフィック量監視システム
WO2016076574A1 (ko) 단말 정보 식별 장치 및 방법
Han et al. State-aware network access management for software-defined networks
JPWO2010046977A1 (ja) 通信制御プログラム、通信制御装置、通信制御システムおよび通信制御方法
JP4895793B2 (ja) ネットワーク監視装置及びネットワーク監視方法
WO2021060598A1 (ko) 이동통신망과 브로드밴드망의 인터넷 이원화 접속 시스템 및 방법, 이를 위한 고객 댁내 장치
WO2024029658A1 (ko) 네트워크에서의 접근 통제 시스템 및 그 방법
WO2008138198A1 (fr) Procédé, système et appareil de surveillance de permanence de liaison d'une session d'abonné
JP4750750B2 (ja) パケット転送システムおよびパケット転送方法
KR100478910B1 (ko) 아이피 충돌 검출 및 차단 시스템과 그 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16811980

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16811980

Country of ref document: EP

Kind code of ref document: A1