WO2006137704A1 - Method and system for checking message status - Google Patents

Method and system for checking message status

Info

Publication number
WO2006137704A1
WO2006137704A1 PCT/KR2006/002414 KR2006002414W WO2006137704A1 WO 2006137704 A1 WO2006137704 A1 WO 2006137704A1 KR 2006002414 W KR2006002414 W KR 2006002414W WO 2006137704 A1 WO2006137704 A1 WO 2006137704A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
login
pool
service server
session
Prior art date
Application number
PCT/KR2006/002414
Other languages
French (fr)
Inventor
Seonghun Kim
Gyehan Song
Original Assignee
Nhn Corporation
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 Nhn Corporation filed Critical Nhn Corporation
Priority to JP2008518036A priority Critical patent/JP4718605B2/en
Publication of WO2006137704A1 publication Critical patent/WO2006137704A1/en

Links

Classifications

    • G06Q50/40
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management

Definitions

  • the present invention relates to a method for checking a user's login/logout message status in a location server and a system using the method.
  • FIG. 1 is a diagram illustrating a network connection of user terminals accessing a plurality of service servers according to a conventional art.
  • a user who uses user personal computers (PC) 101 and 102 illustrated in FIG. 1 accesses any one of game servers 104, 105, and 106 providing an on-line game which the user desires to play via the Internet 103.
  • PC personal computers
  • the game servers 104 and 105 may provide a GOSTOP game service, and the game server 106 may provide a Hula game service.
  • the user's login/logout was separately performed in each of the game servers 104, 105, and 106.
  • the user's login/logout information was separately managed in each of the game servers 104, 105, and 106. Accordingly, in the conventional art, a user who has logged in to one game server could not ascertain a current state of another user who has logged in to another game server. As an example, the current state may designate whether the other user has logged in to or logged out of a game server, or may designate which game the other user is playing.
  • FIG. 2 is a diagram illustrating a network connection between service servers and a location server for managing location information of users according to the conventional art.
  • a location server 207 which may exclusively manage users' login/logout information in game servers 204, 205, and 206 is provided.
  • the game servers 204, 205 and 206 providing an on-line game which the users desire to play via the users' own PCs 201 and 202, and the Internet 203
  • the game servers 204, 205 and 206 transmit the users' login/logout information to the location server 207.
  • the location server 207 intensively manages the users' login/logout information which is transmitted from the game servers 204, 205, and 206. Accordingly, a current state of users who have logged in other game servers may be provided for the user.
  • the location server 207 may detect the user's location and prevent a user's double login.
  • FIG. 3 is a diagram illustrating a network connection of a plurality of location servers which is being embodied by a replication group, service servers and a user terminal, according to an embodiment of the present invention.
  • the location servers included in the replication group has identical status information with respect to a user's login/logout status.
  • service servers 304, 305 and 306 in the present invention transmits an anycast message, i.e. a login/logout message, to any one of the location servers 308, 309, 310, and 311 included in a "replication group 307".
  • the service servers 304, 305 and 306 may use the anycast message.
  • the location server 308 received the any cast message processes the anycast message to generate a multicast message.
  • the multicast message is transmitted to remaining location servers 309, 310 and 311 via the location server 308.
  • the location server 308 may transmit the multicast message to the remaining location servers 309, 310 and 311 in a multicasting method.
  • the location server 308 may not sequentially receive login/logout messages, e.g. the service servers transmit a login message to the location server 308 when a first user logs in to a service server, and transmits the logout message to the location server 308 when the user logs out of a service server within a predetermined time, conversely the location server 308 may receive the login message for the first user after initially receiving the logout message for the first user. In this case, the location server 308 fails to match the login message to the logout message for the first user, so that the location server 308 stores the login message, therefore load of a system become increased.
  • a first service server 304 has a problem of not receiving a logout message for the first user, and when the first user repeatedly logs in a second service server 305, two login messages for the first user exists without a logout message.
  • the location server 308 may not notice the problem of the first service server 304 and perform checking of double logins for the first user, therefore a subsequent login message is deleted, even though the subsequent login message is valid.
  • a service server has a problem of not transmitting a logout message for the first user to the location server 308, and when the first user does not logs in other service servers, only a single login message for the first user exists without a logout message. Subsequently, the location server 308 which has not received the logout message repeatedly stores the login message, instead of deleting the login message for the first user.
  • the present invention provides a method for checking a message status and a system using the method which can reduce load of a system since login/logout messages, whose session IDs are identical to each other, are compared together to be deleted by using the session ID included in the login/logout messages, and when the login/logout messages are not sequentially received from a service server by a location server, managing the login/logout messages for a user in the service server.
  • the present invention also provides a method for checking a message status and a system using the method which can effectively manage messages since login messages are deleted by transmitting a confirmation message to a service server which has transmitted a previously received login message, and when at least two login messages exist whose session IDs are identical to each other, checking a status of a service server.
  • the present invention also provides a method for checking a message status and a system using the method which can delete an invalid login message leaving one valid login message after transmitting a confirmation message to a service server which transmitted the login message, and checking a status of the service server when only login messages are received for a predetermined time.
  • the present invention also provides a method for checking a message status and a system using the method which can effectively manage a message in a location server, since an anycast message is maintained by being distinguished from a multicast message, the anycast message is received from each of service servers and the multicast message is received from a second location server maintaining a synchronization status, and a message status is checked.
  • a method for checking a message status in a location server includes: maintaining a message pool in which a message is stored; receiving a logout message including a first session ID from a service server and storing the logout message in the message pool; receiving a login message including a second session ID from the service server and storing the login message in the message pool; comparing the first session ID with the second session ID by referring to the message pool; and deleting the logout and login message from the message pool when the first session ID is identical to the second session ID.
  • the location server maintains in the message pool by distinguishing an anycast message from an multicast message, the anycast message is received from the service server and the multicast message is received from a second location server maintaining a synchronous status with the location server, and the server performs the checking of a message status being limited to the anycast message.
  • FIG. 1 is a diagram illustrating a network connection of user terminals accessing a plurality of service server according to a conventional art
  • FIG. 2 is a diagram illustrating a network connection of a location server and service servers for managing location information of users according to a conventional art
  • FIG. 3 is a diagram illustrating a network connection of a plurality of location servers embodying a replication group, service servers, and user terminal according to an embodiment of the present invention
  • FIG. 4 is a flowchart illustrating a deletion order by comparing login/logout messages in a location server according to an embodiment of the present invention
  • FIG. 5 is a diagram illustrating an inner structure of a message pool according to an embodiment of the present invention.
  • FIG. 6 is a diagram illustrating types of login/logout messages according to an embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating a deletion order of invalid login messages leaving a valid login message, from at least two login messages whose session IDs are identical to each other, according to an embodiment of the present invention
  • FIG. 8 is a flowchart illustrating a deletion order of invalid login messages by checking login messages that exist for a certain time limit, according to an embodiment of the present invention
  • FIG. 9 is a flowchart illustrating a deletion order of invalid login messages by checking a timestamp of a channel ID, according to an embodiment of the present invention.
  • FIG. 10 is a block diagram illustrating a configuration of a location server checking a user's login/logout messages status, according to an embodiment of the present invention.
  • FIG. 4 is a flowchart illustrating a deletion order by comparing login/logout messages in a location server according to an embodiment of the present invention.
  • the location server of the present invention may be one of location servers 308, 309, 310 and 311 included in the location group 307 of FIG. 3.
  • the location server maintains a message in a message pool.
  • the message pool will be described by referring to FIG. 5.
  • FIG. 5 is a diagram illustrating an inner structure of the message pool according to the current embodiment of the present invention.
  • the message pool is maintains an anycast message 501 and a multicast message 502.
  • the anycast message 501 is directly received from the service servers 304, 305, and 306 in the location server of FIG. 3, and the multicast message 502 is received from the location servers 308, 309, 310, and 311 included in the location group 307 of FIG. 3.
  • each of the location servers 308, 309, 310, and 311 may process the anycast message 501 directly received from the service servers 304, 305, and 306 and transmit the anycast message 501 to other location servers 308, 309, 310, and 311 in a form of a multicast message 502.
  • the anycast message 501 and the multicast message 502 are types of messages including login/logout status information for a user accessed in the service servers 304, 305, and 306. Namely, when the user logs in the service server, the anycast message 501 and the multicast message 502 become login messages 504, 505, 506, and 507, and when the user logs out from the service server, the anycast message 501 and the multicast message 502 become logout messages 503 and 508.
  • the location server manages messages which are directly received in the location server since checking message status is limited to the anycast message 501, directly received from the service servers 304, 305, and 306.
  • the login/logout messages will be described by referring to FIG. 6.
  • FIG. 6 is a diagram illustrating types of the login/logout messages according to an embodiment of the present invention.
  • the login/logout messages include a user ID Member ID 601, a message type 602, a channel ID 603, a session ID 604, a timestamp 605, a sequence number 606, and a location server (LCS) ID 607.
  • a user ID Member ID 601 a message type 602
  • a channel ID 603 a session ID 604
  • a timestamp 605 a sequence number 606, and a location server (LCS) ID 607.
  • LCS location server
  • the user ID 601 is for identifying users, e.g. an ID used by a user, logged in to or logged out of the service server, i.e. the user ID 601 may be "aaa” in FIG. 5.
  • the message type 602 is the user's login/logout status information, i.e. information with respect to whether the user is logging in to or is logging out of the service server. Subsequently, when the message type 602 is a login, the message type may be login messages 504, 505, 506, and 507, and when the message type 602 is a logout, the message type may be logout messages 503 and 508 in FIG. 5.
  • the channel ID 603 is location information of the user, i.e. information with respect to where the user is logging in from or where the user is logging out from.
  • the channel ID 603 may be information with respect to a service server where the user is logging in or logging out, i.e. an IP address or a name of the service server, a service identifier where the user is logging in or logging out, e.g. "GOSTOP", "Hula”, and "POKER”.
  • GOSTOP- 1 indicates a channel ID of a GOSTOP game in the message 503.
  • the channel ID may be a combination of the service identifier and a channel identifier where the user is logging in or logging out.
  • the channel ID 603 in an entire service environment, provides information with respect to where the user recently is logging in from or where the user is logging out from.
  • the session ID 604 is generated when the user initially is logging in to the service server and becomes invalid when the user logs out of the service server. Namely, when the user logs in the service server, a session ID "001" is generated and included in a login message, and when the user logs out within a predetermined time, an identical session ID "001 " is included in a logout message. An identical user's session ID of the login/logout messages are identical to each other, therefore, the login/logout messages for the identical user may be compared to each other when the login/logout messages are not sequentially received.
  • the timestamp 605, in the location server may record an order that messages are stored in the message pool, based on a receiving point in time of the login/logout messages being received. Accordingly, the timestamp 605 of an initially received message may be prior to the timestamp of a subsequently received message, e. g. when the timestamp 605 of the initially received message is recorded as "5" and the timestamp 605 of the subsequently received message is recorded "6", the receiving point in time of the messages may be arranged in order. As another example, when the receiving point in time is "at 15:30 pm, on the 2 nd of June in 2005", the timestamp 605 may be recorded as "2005/06/02/15/30". As the timestamp 605, the sequence number 606 may record an order of the login/logout messages being stored in the message pool of the location server, based on a point in time of the messages being received.
  • the LCS ID 607 may be an identifier of the location server that directly received the login/logout messages from the service server.
  • each of the location servers 308, 309, 310, and 311 included in the location group 307 of FIG. 3 may be provided with an LCS ID, e.g. the location server 308 is provided with the LCS ID 607 #1, the location server 309 is provided with the LCS ID 607 #2, the location server 310 is provided with the LCS ID 607 #3, and the location server 311 is provided with the LCS ID 607 #4.
  • the LCS ID 607 of each of the location servers 308, 309, 310, and 311 is recorded in the service server, and the login/logout messages are transmitted, to transmit the messages. Subsequently, referring back to FIG. 5, LCS IDs 607 of the anycast message 501 are identical to each other as #1, LCS IDs 607 of the multicast message 502 are different from each other as #2 or #3.
  • the location servers 308, 309, 310, and 311 of FIG. 3 receive a first session ID and the logout message including a first user ID and store the logout message in the message pool, and in operation 403, the location servers 308, 309, 310, and 311 of FIG. 3 receive a second session ID and the login message including a second user ID and store the login message in the message pool.
  • the location servers 308, 309, 310, and 311 of FIG. 3 compare the first user ID with the second user ID to determine whether they are identical to each other. Namely, the location servers 308, 309, 310, and 311 of FIG. 3, in order to compare login/logout messages whose user is identical to each other, determines whether a user ID of the logout message is identical to a user ID of the login message stored in the message pool. When the user IDs are identical to each other, it is determined as an identical user. When the user IDs are not identical to each other, operational flow of the current embodiment returns to the initial operation 401 to check whether other login/logout messages are identical to each other.
  • the location servers 308, 309, 310, and 311 of FIG. 3 compare the first session ID with the second session ID to determine whether they are identical to each other.
  • a session ID is allocated to a user ID in every login to a service server, and an identical session ID of the every login is allocated in every logout, therefore, when user IDs are identical to each other, session IDs are consequently identical to each other.
  • the location servers 308, 309, 310, and 311 of FIG. 3 delete the logout/login messages.
  • two messages corresponding to user ID "aaa” exist in the message pool, and session IDs corresponding to the user ID "aaa” are identical as "001".
  • the location servers 308, 309, 310, and 311 of FIG. 3 confirm a type of messages and delete a login message 505 whose user and session IDs are identical to each other determined by comparing the logout/login messages 503 and 505 with each other.
  • the location servers 308, 309, 310, and 311 of FIG. 3, can reduce a load of a system since login/logout messages, whose session ID are identical to each other, are compared with each other to be deleted by using the session IDs included in the login/logout messages, when the login/logout messages are not sequentially received from the service server by a location server managing login/logout messages for a user in the service server.
  • FIG. 7 is a flowchart illustrating a deletion order of invalid login messages leaving a valid login message, from at least two login messages whose session IDs are identical to each other, according to an embodiment of the present invention.
  • each of the location servers 308, 309, 310, and 311 of FIG. 3 maintain a login message in a message pool.
  • the login message includes a session ID and a timestamp, and the timestamp is determined by an order of the messages being received.
  • the location server compares a first login message with a second login message.
  • a timestamp of the first login message is prior to a timestamp of the second login message.
  • a message whose timestamp for an identical user is 2 is determined as the first login message 504, and a message whose timestamp for an identical user is 4 is determined as the second login message 506.
  • the location server selects two login messages and compares them among login messages stored in the message pool, or the location server may select at least two login messages whose session IDs are likely to be identical to each other and compare the login messages stored in the message pool.
  • operational flow of the current embodiment returns to an initial operation 701 to compare other login messages.
  • the location server transmits a confirmation message to the service server which has transmitted the first login message whose timestamp is prior to others.
  • a first service server senses a user's login and transmits a first login message to the location server, and the first service server has a problem of transmitting a logout message so that a first logout message for the user is not able to be transmitted to the location server.
  • the user logs in to a second service server and the second service server transmits a second login message for the user to the location server.
  • the location server since the location server can not sense the problem of the first service server, the location server subsequently determines that an identical user repeatedly logs in to the first server, and the location server may transmit the confirmation message to the first service server which has previously transmitted the login message to check whether the first service server has a problem.
  • the location server determines that the user has repeatedly logged in and deletes a second login message and determines the first login message to be a valid message. Specifically, referring to FIG. 5, when the first service server has no problem, the location server may delete a second login message 507 whose a timestamp is greater than a timestamp of the first login message 505.
  • the location server determines there is a problem with the first service server and deletes the first login message and determines the second login message to be a valid message. Specifically, referring to FIG. 5, when the first service server has a problem, the location server may delete the first login message 505 whose timestamp is prior to timestamps of other login messages.
  • the location server may delete the first login message and determine the second login message to be a valid message.
  • FIG. 8 is a flowchart illustrating a deletion order of an invalid login message by checking login messages that exist for a certain time limit, according to an embodiment of the present invention.
  • the location server maintains a login message in a message pool.
  • the login message includes a session ID and time information, and the time information records a receiving point in time of the login message.
  • the location server determines whether only a single login message exists corresponding to one session ID during a reference time.
  • the reference time may be established by considering average login time in a service server of a user.
  • the location server transmits a confirmation message to a service server which has transmitted the login message. Specifically, in the location server, when the one login message corresponding to the session ID is maintained for three hours, the location server transmits the confirmation message to the service server which has transmitted the login message.
  • the location server When a status response message corresponding to the confirmation message is not received from the service server in operation 804, the location server deletes the login message in operation 805. When the location server receives a logout message corresponding to the confirmation message from the service server, the location server also deletes the login message.
  • the location server determines the login message to be a valid message and returns to the initial operation 801 to check whether other login messages exist.
  • FIG. 9 is a flowchart illustrating a deletion order of an invalid login message by checking a timestamp of a channel ID, according to an embodiment of the present invention.
  • a location server receives a first channel reset message from a service server.
  • the first channel reset message is for reporting a starting or a restarting of the service server to the location server and includes a channel ID of the service server.
  • the channel IDs are "GOSTOP-I", "POKER-3", and the like as illustrated in FIG. 5, and may be channel information of the service server.
  • the location server stores the channel ID of the service server and a channel ID timestamp of first time information in a channel information storage unit.
  • the channel information storage unit stores the channel ID timestamp corresponding to the channel ID.
  • the channel ID timestamp of the first time information is time information of a receiving point in time of the first channel reset message. Specifically, when the receiving point in time of the first channel reset message is "at 12:10 pm, on the 2 nd of June in 2005", the channel ID timestamp is may be "2005/06/02/12/10".
  • the location server stores anycast messages received from the service server in a message pool in association with the first time information of a corresponding channel.
  • the anycast messages are login/logout messages.
  • the anycast message may be stored in association with the first time information "2005/06/02/12/10".
  • the location server receives a second reset message from the service server.
  • the second reset message may be for an identical channel to a service server which has transmitted the first reset message. Specifically, when the first reset message is received from a service server whose channel ID is "GOSTOP-I", and when the service server whose a channel ID is "GOSTOP-I" restart its operation system due to an error of the service server, a second reset message may be received from the service server whose channel ID is "GOSTOP-I".
  • the location server updates a channel ID timestamp stored in the channel information storage unit to a second time information of a receiving point in time of the second channel reset message.
  • the receiving point in time of the second channel reset message is "at 13:10 pm, on the 3 rd of June in 2005”
  • the channel ID timestamp is may be changed to "2005/06/03/13/10”.
  • the channel ID timestamp stored as "2005/06/02/12/10” may be changed to "2005/06/03/13/10".
  • the location server by referring to the message pool, confirms whether the anycast message, which is not the second time information for an identical channel, exists. Specifically, the service server whose channel ID is "GOSTOP-I" is restarted, the location server confirms whether login/logout messages exist for a user logged in the service server whose channel ID is "GOSTOP-I".
  • the location server deletes the anycast message, not the second time information, for the identical channel. Subsequently, the location server may delete all anycast messages prior to the second time information.
  • FIG. 10 is a block diagram illustrating a configuration of a location server checking a user's login/logout messages status, according to an embodiment of the present invention.
  • the location server 1000 includes a message pool 1010, a channel information storage unit 1020, a message management unit 1030, a message updating unit 1040, a comparison unit 1050, a message deletion unit 1060, a message receiving unit 1070, and a message transmission unit 1080.
  • the location server 1000 is maintained in the message pool by differentiating the anycast message from a multicast message, the anycast message is received from a service server and the multicast message is received from a second location server maintaining a synchronous status with the location server, and the method of checking a message status is performed being limited to the anycast message.
  • the location server 1000 may compare login/logout messages to delete login/logout messages for an identical user.
  • the message receiving unit 1070 may receive a logout message including a first session ID from a service server. Also, the message receiving unit 1070 may receive a login message including a second session ID from the service server.
  • the message pool 1010 stores the login/logout messages in an order of a receiving point in time of the login/logout messages, therefore the message pool 1010 initially stores the logout message, subsequently stores the login message.
  • the comparison unit 1050 compares the first session ID with the second session ID by referring to the message pool 1010.
  • the message deletion unit 1060 deletes the logout/login messages from the message pool 1010 when the first session ID is identical to the second session ID.
  • the location server 1000 may delete an invalid login message when at least two login messages for an identical user exist.
  • the message pool 1010 maintains a login message received from a service server.
  • the login message includes a session ID, and a timestamp associated with an order of the login message being stored in the message pool 1010.
  • the message management unit 1030 senses first and second login messages whose session IDs are identical to each other, by referring to the message pool 1010.
  • the first login message may be initially received and the second login message may be subsequently received, therefore a first timestamp of the first login message may be prior to a second timestamp of the second login message.
  • the message transmission unit 1080 transmits a confirmation message to a service server which transmitted the first login message.
  • the message deletion unit 1060 deletes the first login message from the message pool 1010, when a status response message corresponding to the confirmation message is not received from the service server within a predetermined time limit. Also, the message deletion unit 1060 deletes the second login message from the message pool 1010, when receiving a status response message corresponding to the confirmation message from the service server within a predetermined time limit.
  • the location server 1000 may delete an invalid login message when only a single login message exists for a reference time.
  • the message pool 1010 maintains a login message received from a service server.
  • the login message may include a session ID and time information.
  • the message transmission unit 1080 transmits a confirmation message corresponding to the login message when only a single login message exists corresponding to one session ID for a reference time, by referring to the time information of the login message.
  • the message deletion unit 1060 deletes the login message from the message pool 1010, when a status response message corresponding to the confirmation message is not received from the service server within a predetermined time limit.
  • the location server 1000 may delete invalid login/logout messages by using the channel ID timestamp.
  • the channel information storage unit 1020 maintains a channel ID of a service server and a channel ID timestamp, the channel ID timestamp being first time information at a receiving point in time of a first channel reset message received from the service server.
  • the message pool 1010 stores an anycast message received from the service server, in association with the first time information of a corresponding channel, by referring to the channel ID timestamp.
  • the message receiving unit 1070 receives a second channel reset message including the channel ID from the service server.
  • the channel ID of the second channel reset message may be identical to the channel ID of the first channel reset message.
  • the message updating unit 1040 updates the channel ID timestamps to the second time information when the second channel reset message is received.
  • the message deletion unit 1060 deletes the anycast message which is not identical to the second time information among the anycast messages for an identical channel, by referring to the message pool 1010.
  • the method of checking a message status according to the above-described embodiment of the present invention may be recorded in computer-readable media including program instructions to implement various operations embodied by a computer.
  • the media may also include, alone or in combination with the program instructions, data files, data structures, and the like.
  • Examples of computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD ROM disks and DVD; magneto-optical media such as optical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory (ROM), random access memory (RAM), flash memory, and the like.
  • the media may also be a transmission medium such as optical or metallic lines, wave guides, etc. including a carrier wave transmitting signals specifying the program instructions, data structures, etc.
  • Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter.
  • the described hardware devices may be configured to act as one or more software modules in order to perform the operations of the above-described embodiments of the present invention.
  • load of a system can be reduced since login/logout messages, whose session IDs are identical to each other, are compared together to be deleted by using the session ID included in the login/logout messages, and when the login/logout messages are not sequentially received from a service server by a location server, managing the login/logout messages for a user in the service server.
  • a messages can be effectively managed since login messages, except for one valid login message, are deleted by transmitting a confirmation message to a service server which has transmitted a previously received login message and checking status of a service server, when at least two login messages exist whose session ID are identical to each other.
  • an invalid login message can be deleted after transmitting a confirmation message to a service server which has transmitted the login message and checking a status of the service server, when only login messages are received for a predetermined time.
  • a message can be effectively managed in a location server, since an anycast message is maintained by being distinguished from a multicast message, the anycast message is received from each of service servers and the multicast message is received from a second location server maintaining a synchronization status, and a message status is checked.

Abstract

A method and a system of checking a message status in a location server includes: maintaining a message pool in which a message is stored; receiving a logout message including a first session ID from a service server and storing the logout message in the message pool; receiving a login message including a second session ID from the service server and storing the login message in the message pool; comparing the first session ID with the second session ID by referring to the message pool; and deleting the logout and login message from the message pool when the first session ID is identical to the second session ID.

Description

METHOD AND SYSTEM FOR CHECKING MESSAGE STATUS
Technical Field
The present invention relates to a method for checking a user's login/logout message status in a location server and a system using the method.
Background Art
FIG. 1 is a diagram illustrating a network connection of user terminals accessing a plurality of service servers according to a conventional art. A user who uses user personal computers (PC) 101 and 102 illustrated in FIG. 1 accesses any one of game servers 104, 105, and 106 providing an on-line game which the user desires to play via the Internet 103.
As an example, the game servers 104 and 105 may provide a GOSTOP game service, and the game server 106 may provide a Hula game service. In this instance, the user's login/logout was separately performed in each of the game servers 104, 105, and 106. Also, the user's login/logout information was separately managed in each of the game servers 104, 105, and 106. Accordingly, in the conventional art, a user who has logged in to one game server could not ascertain a current state of another user who has logged in to another game server. As an example, the current state may designate whether the other user has logged in to or logged out of a game server, or may designate which game the other user is playing.
FIG. 2 is a diagram illustrating a network connection between service servers and a location server for managing location information of users according to the conventional art. In order to address the above shortcoming of a configuration illustrated in FIG.
1, a location server 207 which may exclusively manage users' login/logout information in game servers 204, 205, and 206 is provided. When the users access the game servers 204, 205 and 206 providing an on-line game which the users desire to play via the users' own PCs 201 and 202, and the Internet 203, the game servers 204, 205 and 206 transmit the users' login/logout information to the location server 207. Also, the location server 207 intensively manages the users' login/logout information which is transmitted from the game servers 204, 205, and 206. Accordingly, a current state of users who have logged in other game servers may be provided for the user. Also, the location server 207 may detect the user's location and prevent a user's double login.
However, on-line games are currently being provided by hundreds of game servers. Also, when one location server manages login/logout information which has been managed by each game server, load of a system with respect to the location server may be significantly increased.
In order to solve a problem of the increased load of the system, which is caused by concentrating on the location server, a method of the location server being embodied by a replication group is provided in the present invention. FIG. 3 is a diagram illustrating a network connection of a plurality of location servers which is being embodied by a replication group, service servers and a user terminal, according to an embodiment of the present invention. The location servers included in the replication group has identical status information with respect to a user's login/logout status.
Namely, service servers 304, 305 and 306 in the present invention transmits an anycast message, i.e. a login/logout message, to any one of the location servers 308, 309, 310, and 311 included in a "replication group 307". In this case, the service servers 304, 305 and 306 may use the anycast message. Also, the location server 308 received the any cast message processes the anycast message to generate a multicast message. The multicast message is transmitted to remaining location servers 309, 310 and 311 via the location server 308. In this case, the location server 308 may transmit the multicast message to the remaining location servers 309, 310 and 311 in a multicasting method.
The location server 308 may not sequentially receive login/logout messages, e.g. the service servers transmit a login message to the location server 308 when a first user logs in to a service server, and transmits the logout message to the location server 308 when the user logs out of a service server within a predetermined time, conversely the location server 308 may receive the login message for the first user after initially receiving the logout message for the first user. In this case, the location server 308 fails to match the login message to the logout message for the first user, so that the location server 308 stores the login message, therefore load of a system become increased.
Also, when a first service server 304 has a problem of not receiving a logout message for the first user, and when the first user repeatedly logs in a second service server 305, two login messages for the first user exists without a logout message. In this case, the location server 308 may not notice the problem of the first service server 304 and perform checking of double logins for the first user, therefore a subsequent login message is deleted, even though the subsequent login message is valid. Also, when a service server has a problem of not transmitting a logout message for the first user to the location server 308, and when the first user does not logs in other service servers, only a single login message for the first user exists without a logout message. Subsequently, the location server 308 which has not received the logout message repeatedly stores the login message, instead of deleting the login message for the first user.
Accordingly, a method for checking login/logout messages to delete invalid messages, thereby effectively managing messages by checking login/logout messages' status for a user in a location server in real time, and a system using the method is earnestly required.
Disclosure of Invention Technical Goals
The present invention provides a method for checking a message status and a system using the method which can reduce load of a system since login/logout messages, whose session IDs are identical to each other, are compared together to be deleted by using the session ID included in the login/logout messages, and when the login/logout messages are not sequentially received from a service server by a location server, managing the login/logout messages for a user in the service server.
The present invention also provides a method for checking a message status and a system using the method which can effectively manage messages since login messages are deleted by transmitting a confirmation message to a service server which has transmitted a previously received login message, and when at least two login messages exist whose session IDs are identical to each other, checking a status of a service server. The present invention also provides a method for checking a message status and a system using the method which can delete an invalid login message leaving one valid login message after transmitting a confirmation message to a service server which transmitted the login message, and checking a status of the service server when only login messages are received for a predetermined time.
The present invention also provides a method for checking a message status and a system using the method which can effectively manage a message in a location server, since an anycast message is maintained by being distinguished from a multicast message, the anycast message is received from each of service servers and the multicast message is received from a second location server maintaining a synchronization status, and a message status is checked.
Technical solutions
According to an aspect of the present invention, there is provided a method for checking a message status in a location server includes: maintaining a message pool in which a message is stored; receiving a logout message including a first session ID from a service server and storing the logout message in the message pool; receiving a login message including a second session ID from the service server and storing the login message in the message pool; comparing the first session ID with the second session ID by referring to the message pool; and deleting the logout and login message from the message pool when the first session ID is identical to the second session ID.
In this case, the location server maintains in the message pool by distinguishing an anycast message from an multicast message, the anycast message is received from the service server and the multicast message is received from a second location server maintaining a synchronous status with the location server, and the server performs the checking of a message status being limited to the anycast message.
Brief Description of Drawings
FIG. 1 is a diagram illustrating a network connection of user terminals accessing a plurality of service server according to a conventional art;
FIG. 2 is a diagram illustrating a network connection of a location server and service servers for managing location information of users according to a conventional art;
FIG. 3 is a diagram illustrating a network connection of a plurality of location servers embodying a replication group, service servers, and user terminal according to an embodiment of the present invention;
FIG. 4 is a flowchart illustrating a deletion order by comparing login/logout messages in a location server according to an embodiment of the present invention;
FIG. 5 is a diagram illustrating an inner structure of a message pool according to an embodiment of the present invention;
FIG. 6 is a diagram illustrating types of login/logout messages according to an embodiment of the present invention;
FIG. 7 is a flowchart illustrating a deletion order of invalid login messages leaving a valid login message, from at least two login messages whose session IDs are identical to each other, according to an embodiment of the present invention;
FIG. 8 is a flowchart illustrating a deletion order of invalid login messages by checking login messages that exist for a certain time limit, according to an embodiment of the present invention;
FIG. 9 is a flowchart illustrating a deletion order of invalid login messages by checking a timestamp of a channel ID, according to an embodiment of the present invention; and
FIG. 10 is a block diagram illustrating a configuration of a location server checking a user's login/logout messages status, according to an embodiment of the present invention.
Best Mode for Carrying Out the Invention
FIG. 4 is a flowchart illustrating a deletion order by comparing login/logout messages in a location server according to an embodiment of the present invention.
The location server of the present invention may be one of location servers 308, 309, 310 and 311 included in the location group 307 of FIG. 3.
As illustrated in FIG. 4, in operation 401, the location server maintains a message in a message pool. Hereinafter, the message pool will be described by referring to FIG. 5.
FIG. 5 is a diagram illustrating an inner structure of the message pool according to the current embodiment of the present invention.
The message pool is maintains an anycast message 501 and a multicast message 502. The anycast message 501 is directly received from the service servers 304, 305, and 306 in the location server of FIG. 3, and the multicast message 502 is received from the location servers 308, 309, 310, and 311 included in the location group 307 of FIG. 3. According to the current embodiment of the present invention, each of the location servers 308, 309, 310, and 311 may process the anycast message 501 directly received from the service servers 304, 305, and 306 and transmit the anycast message 501 to other location servers 308, 309, 310, and 311 in a form of a multicast message 502.
The anycast message 501 and the multicast message 502 are types of messages including login/logout status information for a user accessed in the service servers 304, 305, and 306. Namely, when the user logs in the service server, the anycast message 501 and the multicast message 502 become login messages 504, 505, 506, and 507, and when the user logs out from the service server, the anycast message 501 and the multicast message 502 become logout messages 503 and 508. The location server according to the present invention manages messages which are directly received in the location server since checking message status is limited to the anycast message 501, directly received from the service servers 304, 305, and 306. Hereinafter, the login/logout messages will be described by referring to FIG. 6.
FIG. 6 is a diagram illustrating types of the login/logout messages according to an embodiment of the present invention.
The login/logout messages include a user ID Member ID 601, a message type 602, a channel ID 603, a session ID 604, a timestamp 605, a sequence number 606, and a location server (LCS) ID 607.
The user ID 601 is for identifying users, e.g. an ID used by a user, logged in to or logged out of the service server, i.e. the user ID 601 may be "aaa" in FIG. 5. The message type 602 is the user's login/logout status information, i.e. information with respect to whether the user is logging in to or is logging out of the service server. Subsequently, when the message type 602 is a login, the message type may be login messages 504, 505, 506, and 507, and when the message type 602 is a logout, the message type may be logout messages 503 and 508 in FIG. 5.
The channel ID 603 is location information of the user, i.e. information with respect to where the user is logging in from or where the user is logging out from. Namely, the channel ID 603 may be information with respect to a service server where the user is logging in or logging out, i.e. an IP address or a name of the service server, a service identifier where the user is logging in or logging out, e.g. "GOSTOP", "Hula", and "POKER". Accordingly, "GOSTOP- 1 " indicates a channel ID of a GOSTOP game in the message 503. When one service is provided to multiple channels, the channel ID may be a combination of the service identifier and a channel identifier where the user is logging in or logging out. The channel ID 603, in an entire service environment, provides information with respect to where the user recently is logging in from or where the user is logging out from.
The session ID 604 is generated when the user initially is logging in to the service server and becomes invalid when the user logs out of the service server. Namely, when the user logs in the service server, a session ID "001" is generated and included in a login message, and when the user logs out within a predetermined time, an identical session ID "001 " is included in a logout message. An identical user's session ID of the login/logout messages are identical to each other, therefore, the login/logout messages for the identical user may be compared to each other when the login/logout messages are not sequentially received.
The timestamp 605, in the location server, may record an order that messages are stored in the message pool, based on a receiving point in time of the login/logout messages being received. Accordingly, the timestamp 605 of an initially received message may be prior to the timestamp of a subsequently received message, e. g. when the timestamp 605 of the initially received message is recorded as "5" and the timestamp 605 of the subsequently received message is recorded "6", the receiving point in time of the messages may be arranged in order. As another example, when the receiving point in time is "at 15:30 pm, on the 2nd of June in 2005", the timestamp 605 may be recorded as "2005/06/02/15/30". As the timestamp 605, the sequence number 606 may record an order of the login/logout messages being stored in the message pool of the location server, based on a point in time of the messages being received.
The LCS ID 607 may be an identifier of the location server that directly received the login/logout messages from the service server. Namely, each of the location servers 308, 309, 310, and 311 included in the location group 307 of FIG. 3 may be provided with an LCS ID, e.g. the location server 308 is provided with the LCS ID 607 #1, the location server 309 is provided with the LCS ID 607 #2, the location server 310 is provided with the LCS ID 607 #3, and the location server 311 is provided with the LCS ID 607 #4. According to the current embodiment of the present invention, the LCS ID 607 of each of the location servers 308, 309, 310, and 311 is recorded in the service server, and the login/logout messages are transmitted, to transmit the messages. Subsequently, referring back to FIG. 5, LCS IDs 607 of the anycast message 501 are identical to each other as #1, LCS IDs 607 of the multicast message 502 are different from each other as #2 or #3.
Referring back to FIG. 4, in operation 402, the location servers 308, 309, 310, and 311 of FIG. 3 receive a first session ID and the logout message including a first user ID and store the logout message in the message pool, and in operation 403, the location servers 308, 309, 310, and 311 of FIG. 3 receive a second session ID and the login message including a second user ID and store the login message in the message pool.
In operation 404, the location servers 308, 309, 310, and 311 of FIG. 3 compare the first user ID with the second user ID to determine whether they are identical to each other. Namely, the location servers 308, 309, 310, and 311 of FIG. 3, in order to compare login/logout messages whose user is identical to each other, determines whether a user ID of the logout message is identical to a user ID of the login message stored in the message pool. When the user IDs are identical to each other, it is determined as an identical user. When the user IDs are not identical to each other, operational flow of the current embodiment returns to the initial operation 401 to check whether other login/logout messages are identical to each other.
In operation 405, when the first user ID is identical to the second user ID, the location servers 308, 309, 310, and 311 of FIG. 3 compare the first session ID with the second session ID to determine whether they are identical to each other. As described with reference to FIG. 6, a session ID is allocated to a user ID in every login to a service server, and an identical session ID of the every login is allocated in every logout, therefore, when user IDs are identical to each other, session IDs are consequently identical to each other.
In operation 406, the location servers 308, 309, 310, and 311 of FIG. 3 delete the logout/login messages. Referring to FIG. 5, two messages corresponding to user ID "aaa" exist in the message pool, and session IDs corresponding to the user ID "aaa" are identical as "001". In this case, the location servers 308, 309, 310, and 311 of FIG. 3 confirm a type of messages and delete a login message 505 whose user and session IDs are identical to each other determined by comparing the logout/login messages 503 and 505 with each other.
The location servers 308, 309, 310, and 311 of FIG. 3, can reduce a load of a system since login/logout messages, whose session ID are identical to each other, are compared with each other to be deleted by using the session IDs included in the login/logout messages, when the login/logout messages are not sequentially received from the service server by a location server managing login/logout messages for a user in the service server. FIG. 7 is a flowchart illustrating a deletion order of invalid login messages leaving a valid login message, from at least two login messages whose session IDs are identical to each other, according to an embodiment of the present invention.
In operation 701, each of the location servers 308, 309, 310, and 311 of FIG. 3 maintain a login message in a message pool. The login message includes a session ID and a timestamp, and the timestamp is determined by an order of the messages being received.
In operation 702, the location server compares a first login message with a second login message. In this example, a timestamp of the first login message is prior to a timestamp of the second login message. Referring to FIG. 5, a message whose timestamp for an identical user is 2 is determined as the first login message 504, and a message whose timestamp for an identical user is 4 is determined as the second login message 506. As an example, the location server selects two login messages and compares them among login messages stored in the message pool, or the location server may select at least two login messages whose session IDs are likely to be identical to each other and compare the login messages stored in the message pool. When a session ID of the first login message is not identical to a session ID of the second login message, operational flow of the current embodiment returns to an initial operation 701 to compare other login messages.
In operation 703, when the session ID of the first login message is identical to the session ID of the second login message, the location server transmits a confirmation message to the service server which has transmitted the first login message whose timestamp is prior to others. Assuming that a first service server senses a user's login and transmits a first login message to the location server, and the first service server has a problem of transmitting a logout message so that a first logout message for the user is not able to be transmitted to the location server. Also, the user logs in to a second service server and the second service server transmits a second login message for the user to the location server. In this case, since the location server can not sense the problem of the first service server, the location server subsequently determines that an identical user repeatedly logs in to the first server, and the location server may transmit the confirmation message to the first service server which has previously transmitted the login message to check whether the first service server has a problem. In operation 705, when the first service server has no problem, by receiving a status response message corresponding to the confirmation message from the first service server, the location server determines that the user has repeatedly logged in and deletes a second login message and determines the first login message to be a valid message. Specifically, referring to FIG. 5, when the first service server has no problem, the location server may delete a second login message 507 whose a timestamp is greater than a timestamp of the first login message 505.
Conversely, when the first service server has a problem, a status response message corresponding to the confirmation message is not received, therefore, in operation 706, the location server determines there is a problem with the first service server and deletes the first login message and determines the second login message to be a valid message. Specifically, referring to FIG. 5, when the first service server has a problem, the location server may delete the first login message 505 whose timestamp is prior to timestamps of other login messages.
Also, although it is not illustrated, when receiving, from the first service server, a logout message corresponding to the confirmation message, the location server may delete the first login message and determine the second login message to be a valid message.
Accordingly, the location server can effectively manage messages since invalid login messages are deleted, leaving one valid login message. FIG. 8 is a flowchart illustrating a deletion order of an invalid login message by checking login messages that exist for a certain time limit, according to an embodiment of the present invention. In operation 801, the location server maintains a login message in a message pool. The login message includes a session ID and time information, and the time information records a receiving point in time of the login message.
In operation 802, the location server determines whether only a single login message exists corresponding to one session ID during a reference time. The reference time may be established by considering average login time in a service server of a user.
When only a single login message exists corresponding to the one session ID during the reference time, in operation 803, the location server transmits a confirmation message to a service server which has transmitted the login message. Specifically, in the location server, when the one login message corresponding to the session ID is maintained for three hours, the location server transmits the confirmation message to the service server which has transmitted the login message.
When a status response message corresponding to the confirmation message is not received from the service server in operation 804, the location server deletes the login message in operation 805. When the location server receives a logout message corresponding to the confirmation message from the service server, the location server also deletes the login message.
Conversely, when a status response message corresponding to the confirmation server is received from the service server, the location server determines the login message to be a valid message and returns to the initial operation 801 to check whether other login messages exist.
FIG. 9 is a flowchart illustrating a deletion order of an invalid login message by checking a timestamp of a channel ID, according to an embodiment of the present invention. In operation 901, a location server receives a first channel reset message from a service server. The first channel reset message is for reporting a starting or a restarting of the service server to the location server and includes a channel ID of the service server. The channel IDs are "GOSTOP-I", "POKER-3", and the like as illustrated in FIG. 5, and may be channel information of the service server. In operation 902, the location server stores the channel ID of the service server and a channel ID timestamp of first time information in a channel information storage unit. The channel information storage unit stores the channel ID timestamp corresponding to the channel ID. The channel ID timestamp of the first time information is time information of a receiving point in time of the first channel reset message. Specifically, when the receiving point in time of the first channel reset message is "at 12:10 pm, on the 2nd of June in 2005", the channel ID timestamp is may be "2005/06/02/12/10".
In operation 903, the location server stores anycast messages received from the service server in a message pool in association with the first time information of a corresponding channel. The anycast messages are login/logout messages.
Specifically, the anycast message may be stored in association with the first time information "2005/06/02/12/10".
In operation 904, the location server receives a second reset message from the service server. The second reset message may be for an identical channel to a service server which has transmitted the first reset message. Specifically, when the first reset message is received from a service server whose channel ID is "GOSTOP-I", and when the service server whose a channel ID is "GOSTOP-I" restart its operation system due to an error of the service server, a second reset message may be received from the service server whose channel ID is "GOSTOP-I".
In operation 905, the location server updates a channel ID timestamp stored in the channel information storage unit to a second time information of a receiving point in time of the second channel reset message. Specifically, the receiving point in time of the second channel reset message is "at 13:10 pm, on the 3rd of June in 2005", the channel ID timestamp is may be changed to "2005/06/03/13/10". Namely, the channel ID timestamp stored as "2005/06/02/12/10" may be changed to "2005/06/03/13/10".
In operation 906, the location server, by referring to the message pool, confirms whether the anycast message, which is not the second time information for an identical channel, exists. Specifically, the service server whose channel ID is "GOSTOP-I" is restarted, the location server confirms whether login/logout messages exist for a user logged in the service server whose channel ID is "GOSTOP-I".
In operation 907, the location server deletes the anycast message, not the second time information, for the identical channel. Subsequently, the location server may delete all anycast messages prior to the second time information.
FIG. 10 is a block diagram illustrating a configuration of a location server checking a user's login/logout messages status, according to an embodiment of the present invention.
The location server 1000 includes a message pool 1010, a channel information storage unit 1020, a message management unit 1030, a message updating unit 1040, a comparison unit 1050, a message deletion unit 1060, a message receiving unit 1070, and a message transmission unit 1080. The location server 1000 is maintained in the message pool by differentiating the anycast message from a multicast message, the anycast message is received from a service server and the multicast message is received from a second location server maintaining a synchronous status with the location server, and the method of checking a message status is performed being limited to the anycast message.
According to the embodiment of the present invention, the location server 1000 may compare login/logout messages to delete login/logout messages for an identical user. The message receiving unit 1070 may receive a logout message including a first session ID from a service server. Also, the message receiving unit 1070 may receive a login message including a second session ID from the service server.
The message pool 1010 stores the login/logout messages in an order of a receiving point in time of the login/logout messages, therefore the message pool 1010 initially stores the logout message, subsequently stores the login message.
The comparison unit 1050 compares the first session ID with the second session ID by referring to the message pool 1010.
The message deletion unit 1060 deletes the logout/login messages from the message pool 1010 when the first session ID is identical to the second session ID. According to the embodiment of the present invention, the location server 1000 may delete an invalid login message when at least two login messages for an identical user exist.
The message pool 1010 maintains a login message received from a service server. The login message includes a session ID, and a timestamp associated with an order of the login message being stored in the message pool 1010.
The message management unit 1030 senses first and second login messages whose session IDs are identical to each other, by referring to the message pool 1010. The first login message may be initially received and the second login message may be subsequently received, therefore a first timestamp of the first login message may be prior to a second timestamp of the second login message.
The message transmission unit 1080 transmits a confirmation message to a service server which transmitted the first login message.
The message deletion unit 1060 deletes the first login message from the message pool 1010, when a status response message corresponding to the confirmation message is not received from the service server within a predetermined time limit. Also, the message deletion unit 1060 deletes the second login message from the message pool 1010, when receiving a status response message corresponding to the confirmation message from the service server within a predetermined time limit.
According to the embodiment of the present invention, the location server 1000 may delete an invalid login message when only a single login message exists for a reference time. The message pool 1010 maintains a login message received from a service server. The login message may include a session ID and time information.
The message transmission unit 1080 transmits a confirmation message corresponding to the login message when only a single login message exists corresponding to one session ID for a reference time, by referring to the time information of the login message.
The message deletion unit 1060 deletes the login message from the message pool 1010, when a status response message corresponding to the confirmation message is not received from the service server within a predetermined time limit.
According to the embodiment of the present invention, the location server 1000 may delete invalid login/logout messages by using the channel ID timestamp.
The channel information storage unit 1020 maintains a channel ID of a service server and a channel ID timestamp, the channel ID timestamp being first time information at a receiving point in time of a first channel reset message received from the service server. The message pool 1010 stores an anycast message received from the service server, in association with the first time information of a corresponding channel, by referring to the channel ID timestamp. The message receiving unit 1070 receives a second channel reset message including the channel ID from the service server. The channel ID of the second channel reset message may be identical to the channel ID of the first channel reset message. The message updating unit 1040 updates the channel ID timestamps to the second time information when the second channel reset message is received.
The message deletion unit 1060 deletes the anycast message which is not identical to the second time information among the anycast messages for an identical channel, by referring to the message pool 1010. The method of checking a message status according to the above-described embodiment of the present invention may be recorded in computer-readable media including program instructions to implement various operations embodied by a computer. The media may also include, alone or in combination with the program instructions, data files, data structures, and the like. Examples of computer-readable media include magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD ROM disks and DVD; magneto-optical media such as optical disks; and hardware devices that are specially configured to store and perform program instructions, such as read-only memory (ROM), random access memory (RAM), flash memory, and the like. The media may also be a transmission medium such as optical or metallic lines, wave guides, etc. including a carrier wave transmitting signals specifying the program instructions, data structures, etc. Examples of program instructions include both machine code, such as produced by a compiler, and files containing higher level code that may be executed by the computer using an interpreter. The described hardware devices may be configured to act as one or more software modules in order to perform the operations of the above-described embodiments of the present invention.
Although a few embodiments of the present invention have been shown and described, the present invention is not limited to the described embodiments. Instead, it would be appreciated by those skilled in the art that changes may be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the claims and their equivalents. Industrial Applicability
According the present invention, load of a system can be reduced since login/logout messages, whose session IDs are identical to each other, are compared together to be deleted by using the session ID included in the login/logout messages, and when the login/logout messages are not sequentially received from a service server by a location server, managing the login/logout messages for a user in the service server.
Also, according to the present invention, a messages can be effectively managed since login messages, except for one valid login message, are deleted by transmitting a confirmation message to a service server which has transmitted a previously received login message and checking status of a service server, when at least two login messages exist whose session ID are identical to each other.
Also, according to the present invention, an invalid login message can be deleted after transmitting a confirmation message to a service server which has transmitted the login message and checking a status of the service server, when only login messages are received for a predetermined time.
Also, according to the present invention, a message can be effectively managed in a location server, since an anycast message is maintained by being distinguished from a multicast message, the anycast message is received from each of service servers and the multicast message is received from a second location server maintaining a synchronization status, and a message status is checked.

Claims

1. A method of checking a message status in a location server, the method comprising: maintaining a message pool in which a message is stored; receiving a logout message including a first session ID from a service server and storing the logout message in the message pool; receiving a login message including a second session ID from the service server and storing the login message in the message pool; comparing the first session ID with the second session ID by referring to the message pool; and deleting the logout and login message from the message pool when the first session ID is identical to the second session ID.
2. The method of claim 1, wherein the logout message further includes a first user ID, and the login message further includes a second user ID, and the method further comprises comparing the first session ID with the second session ID when the first user ID is identical to the second user ID.
3. The method of claim 1, wherein a timestamp associated with a message storage order is recorded in the message pool, and a first timestamp of the logout message is prior to a second timestamp of the login message.
4. A method of checking a message status in a location server, the method comprising: maintaining a login message received from a service server in a message pool, the login message including a session ID and a timestamp that is associated with a message storage order recorded in the message pool; sensing, by referring to the message pool, first and second login messages whose session IDs' are identical to each other, and a first timestamp of the first login message being prior to a second timestamp of the second login message; transmitting a confirmation message to a service server which has transmitted the first login message; and deleting the first login message from the message pool, when not receiving a status response message corresponding to the confirmation message for a predetermined time limit, from the service server.
5. The method of claim 4, further comprising: deleting the second login message from the message pool when receiving a status response message corresponding to the confirmation message within the predetermined time limit, from the service server.
6. The method of claim 4, further comprising: deleting the first login message from the message pool when receiving a logout message corresponding to the confirmation message within the predetermined time limit, from the service server.
7. A method of checking a message status in a location server, the method comprising: maintaining a login message received from a service server in a message pool, the login message including a session ID and time information; and transmitting, by referring to the time information included in the login message, a confirmation message corresponding to the login message to the service server when only a single login message exists, corresponding to one session ID for a reference time; and deleting the login message from the message pool, when not receiving a status response message corresponding to the confirmation message from the service server for a predetermined time limit.
8. The method of claim 7, further comprising: deleting the login message from the message pool, when receiving a logout message corresponding to the confirmation message from a service server within the time limit.
9. The method of claim 7, wherein the message pool further comprises a logout message including time information, and the method further comprises: deleting the logout message from the message pool when the logout message whose time information expired in a predetermined time exists, and the predetermined time is determined by referring to the time information included in the logout message.
10. A method of checking a message status in a location server, the method comprising: maintaining a channel ID timestamp, for first time information at a receiving point in time of a first channel reset message from a channel ID of a service server and the service server, in a channel information storage unit; storing, by referring to the channel ID timestamp, an anycast message in a message pool in association with the first time information of a corresponding channel, the anycast message received from the service server; receiving a second channel reset message including the channel ID from the service server and updating a timestamp of the channel ID as second time information when the second channel reset message is received; and deleting an anycast message which is not identical to the second time information included in the anycast message for an identical channel, by referring to the message pool.
11. The method of any one of claims 1, 4, 7 and 10, wherein the location server maintains in the message pool by being distinguished the anycast message from the multicast message, the anycast message is received from the service server and the multicast message is received from a second location server maintaining a synchronous status with the location server, and the method of checking a message status is performed being limited to the anycast message.
12. A computer-readable recording medium storing a program for implementing a method of checking a message status according to any one of claims 1 through 10.
13. A location server checking a message status, the server comprising: a message pool in which a message is stored; a message receiving unit receiving a logout message including a first session ID from a service server and storing the logout message in the message pool, and receiving a login message including a second session ID from the service server and storing the login message in the message pool; a comparison unit comparing the first session ID with the second session ID by referring to the message pool; and a message deletion unit deleting the logout and login message from the message pool when the first session ID is identical to the second session ID.
14. A location server checking a message status, the server comprising: a message pool maintaining a login message received from a service server in a message pool, the login message including a session ID and a timestamp that is associated with a message storage order recorded in the message pool; a message management unit sensing first and second login messages whose session IDs1 are identical to each other by referring to the message pool, a first timestamp of the first login message being prior to a second timestamp of the second login message; a message transmission unit transmitting a confirmation message to a service server which has transmitted the first login message; and a message deletion unit deleting the first login message from the message pool when not receiving a status response message corresponding to the confirmation message for a predetermined time limit, from the service server.
15. A location server checking a message status, the server comprising: a message pool maintaining a login message received from a service server in a message pool, the login message including a session ID and time information; a message transmission unit transmitting, by referring to the time information included in the login message, a confirmation message corresponding to the login message to the service server when only a single login message exists, corresponding to one session ID for a reference time; and a message deletion unit deleting the login message from the message pool, when not receiving a status response message corresponding to the confirmation message from the service server for a predetermined time limit.
16. A location server checking a message status, the server comprising: a channel information storage unit maintaining a channel ID timestamp, for first time information at a receiving point in time of a first channel reset message from a channel ID of a service server and the service server, in a channel information storage unit; a message pool storing, by referring to the channel ID timestamp, an anycast message in a message pool in association with the first time information of a corresponding channel, the anycast message being received from the service server; a message receiving unit receiving a second channel reset message including the channel ID from the service server; a message updating unit updating a timestamp of the channel ID to a second time information when the second channel reset message is received; and a message deletion unit deleting an anycast message which is not identical to the second time information included in the anycast message for an identical channel, by referring to the message pool.
17. A server of any one of claims 13 through 16, wherein the message pool maintains the anycast message distinguished from the multicast message, the anycast message being received from the service server and the multicast message being received from a second location server maintaining a synchronous status with the location server, and the server performs the checking of a message status, limited to the anycast message.
PCT/KR2006/002414 2005-06-22 2006-06-22 Method and system for checking message status WO2006137704A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008518036A JP4718605B2 (en) 2005-06-22 2006-06-22 Message management method and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2005-0054001 2005-06-22
KR1020050054001A KR100727057B1 (en) 2005-06-22 2005-06-22 Method And System For Checking Message Status

Publications (1)

Publication Number Publication Date
WO2006137704A1 true WO2006137704A1 (en) 2006-12-28

Family

ID=37570678

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2006/002414 WO2006137704A1 (en) 2005-06-22 2006-06-22 Method and system for checking message status

Country Status (3)

Country Link
JP (1) JP4718605B2 (en)
KR (1) KR100727057B1 (en)
WO (1) WO2006137704A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223674A (en) * 2008-03-17 2009-10-01 Nippon Telegr & Teleph Corp <Ntt> Web system, and information processing method in the same
CN114124508A (en) * 2021-11-16 2022-03-01 上海浦东发展银行股份有限公司 Application login method and system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113014448B (en) * 2021-02-23 2022-09-30 深信服科技股份有限公司 Login state rule extraction method and device and electronic equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001101111A (en) * 1999-09-30 2001-04-13 Hitachi Software Eng Co Ltd Method for managing user in www hierarchical client- server type system
JP2002342271A (en) * 2001-05-16 2002-11-29 Hitachi Software Eng Co Ltd Method and system for monitoring overlapped log-in in web access
KR100545874B1 (en) * 2005-06-22 2006-01-25 엔에이치엔(주) Method and system for managing log information of user using location servers belonging to pluality of groups
KR20060028305A (en) * 2004-09-24 2006-03-29 주식회사 케이티 Method for controlling duplicated log in

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030228908A1 (en) * 2002-06-10 2003-12-11 Daniel Caiafa Statistics system for online console-based gaming
JP2004054378A (en) * 2002-07-17 2004-02-19 Matsushita Electric Ind Co Ltd Message information display, displaying method and its system
KR100700690B1 (en) * 2005-05-31 2007-03-27 엔에이치엔(주) Method and system for detecting double login

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001101111A (en) * 1999-09-30 2001-04-13 Hitachi Software Eng Co Ltd Method for managing user in www hierarchical client- server type system
JP2002342271A (en) * 2001-05-16 2002-11-29 Hitachi Software Eng Co Ltd Method and system for monitoring overlapped log-in in web access
KR20060028305A (en) * 2004-09-24 2006-03-29 주식회사 케이티 Method for controlling duplicated log in
KR100545874B1 (en) * 2005-06-22 2006-01-25 엔에이치엔(주) Method and system for managing log information of user using location servers belonging to pluality of groups

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223674A (en) * 2008-03-17 2009-10-01 Nippon Telegr & Teleph Corp <Ntt> Web system, and information processing method in the same
CN114124508A (en) * 2021-11-16 2022-03-01 上海浦东发展银行股份有限公司 Application login method and system

Also Published As

Publication number Publication date
JP2008544392A (en) 2008-12-04
KR20060134374A (en) 2006-12-28
JP4718605B2 (en) 2011-07-06
KR100727057B1 (en) 2007-06-12

Similar Documents

Publication Publication Date Title
US8204996B2 (en) Method and system for managing log information of user using location servers belonging to plurality of groups
US7363449B2 (en) Software agent-based architecture for data relocation
US8151107B2 (en) Method and system for detecting concurrent logins
CN101090371B (en) Method and system for user information management in at-once communication system
US20160285781A1 (en) Data processing method, apparatus, client, server and system
US20090177743A1 (en) Device, Method and Computer Program Product for Cluster Based Conferencing
WO2021238990A1 (en) Authentication method and apparatus, electronic device, server, program, and storage medium
CN110519240B (en) Single sign-on method, device and system
US9537951B2 (en) Management of network devices within a dispersed data storage network
CN112910880B (en) Virtual room creating method, system, device, equipment and medium
US9338232B2 (en) Method and system for synchronizing status of member servers belonging to same replication group
JP4087551B2 (en) User management system
WO2006137704A1 (en) Method and system for checking message status
US20060088299A1 (en) Peer-to-peer-type content distribution system and content reproduction terminal device for use therein
JPWO2009087885A1 (en) Server system and event message transmission method thereof, client terminal and connection method and program thereof, recording medium
US20100131615A1 (en) Dynamic initialization method and system of location server
JP2005115533A (en) Content delivery system and management server
CN112711518B (en) Log uploading method and device
KR100717239B1 (en) Method and apparatus for providing reliable communication between member servers belonging to same multicast group
EP1932073B1 (en) Apparatus and method for storing data
JP2013065113A (en) Load distribution system, data access device, and load distribution method
CN112711518A (en) Log uploading method and device
CN117851160A (en) Log recording system and method for business data stream change process
CN103916291A (en) Testing method and device for internet log retaining system
JP2010541341A (en) Method and system for managing user information within an instant messaging system

Legal Events

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

Ref document number: 2008518036

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06768995

Country of ref document: EP

Kind code of ref document: A1