KR100700690B1 - 중복 로그인 검출 방법 및 시스템 - Google Patents

중복 로그인 검출 방법 및 시스템 Download PDF

Info

Publication number
KR100700690B1
KR100700690B1 KR1020050046028A KR20050046028A KR100700690B1 KR 100700690 B1 KR100700690 B1 KR 100700690B1 KR 1020050046028 A KR1020050046028 A KR 1020050046028A KR 20050046028 A KR20050046028 A KR 20050046028A KR 100700690 B1 KR100700690 B1 KR 100700690B1
Authority
KR
South Korea
Prior art keywords
message
user
login
log
identifier
Prior art date
Application number
KR1020050046028A
Other languages
English (en)
Other versions
KR20060124218A (ko
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 엔에이치엔(주)
Priority to KR1020050046028A priority Critical patent/KR100700690B1/ko
Priority to PCT/KR2006/001976 priority patent/WO2006129932A1/en
Priority to CN200680008755XA priority patent/CN101142566B/zh
Priority to JP2008513370A priority patent/JP4726951B2/ja
Publication of KR20060124218A publication Critical patent/KR20060124218A/ko
Application granted granted Critical
Publication of KR100700690B1 publication Critical patent/KR100700690B1/ko
Priority to US11/943,951 priority patent/US8151107B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 하나의 사용자 아이디로 분산된 서버에 중복 로그인하여 서비스를 이용하는 사용자를 검출하고, 상기 서비스의 이용자가 현재 어디에서 서비스를 이용하고 있는지에 관한 정보를 제공하는 중복 로그인 검출 방법 및 시스템에 관한 것이다. 본 발명의 중복 로그인 검출 시스템은 외부 서버로부터 사용자의 사용자 식별자, 상기 사용자의 로그인/로그아웃 상태, 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자, 및 세션 식별자를 포함하는 로그 메시지를 수신하는 메시지 수신부; 메시지 버퍼에서 상기 로그 메시지의 짝 메시지를 검색하는 짝 메시지 검색부; 및 상기 메시지 버퍼에서 짝 메시지가 검색된 경우 상기 로그 메시지 및 상기 검색된 짝 메시지를 상기 메시지 버퍼로부터 제거하고, 상기 메시지 버퍼에서 짝 메시지가 검색되지 않은 경우 상기 로그 메시지를 상기 메시지 버퍼에 저장하는 메시지 처리부를 포함한다.
서비스 서버, 로케이션 서버, 로그인, 로그아웃, 중복 로그인, 위치 요청, 확인 메시지

Description

중복 로그인 검출 방법 및 시스템{METHOD AND SYSTEM FOR DETECTING DOUBLE LOGIN}
도 1은 종래 기술에 따른 사용자 단말기 및 복수의 서버의 네트워크 연결을 도시한 도면이다.
도 2는 복수의 서버 및 로그인/로그아웃을 관리하는 로케이션 서버를 연결한 네트워크 연결을 도시한 도면이다.
도 3은 외부 서버에서의 로그 순서 및 사용자의 로그인/로그아웃에 따라 외부서버에서 전송한 로그 메시지가 로케이션 서버에 도착한 순서를 도시한 도면이다.
도 4는 본 발명의 일실시예에 따른 중복 로그인 검출 시스템의 네트워크 연결을 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 중복 로그인 검출 시스템의 구성을 도시한 블록도이다.
도 6은 본 발명에 일실시예에 따른 로그 메시지 및 짝 메시지의 일실시예를 도시한 도면이다.
도 7은 본 발명의 일실시예에 따른 사용자 버퍼 및 추방 후보 리스트의 일례를 도시한 도면이다.
도 8은 사용자의 외부 서버에서의 로그 순서 및 상기 로그 순서에 따른 로그 메시지가 본 발명의 로그인 검출 시스템에 도착한 순서를 도시한 도면이다.
도 9는 본 발명의 일실시예에 따라 중복 로그인을 검출하는 과정을 도시한 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
501: 메시지 수신부
502: 짝 메시지 검색부
503: 메시지 처리부
504: 사용자 추방부
505: 사용자 위치 검색부
본 발명은 중복 로그인 검출 시스템에 관한 것으로서, 하나의 사용자 아이디로 분산된 서버에 중복 로그인하여 서비스를 이용하는 사용자를 검출하고, 상기 서비스의 이용자가 현재 어디에서 서비스를 이용하고 있는지에 관한 정보를 제공하는 중복 로그인 검출 방법 및 시스템에 관한 것이다.
종래 기술에 의하면, 소정의 서비스를 제공하는 웹 서버마다 사용자 인증 데이터베이스를 유지하고, 상기 웹 서버에 사용자가 로그인 하는 경우, 상기 사용자의 식별자 및 비밀 번호를 수신하고, 상기 데이터베이스에 저장된 상기 사용자 식 별자의 로그인 정보를 검색하여 상기 사용자의 로그인이 중복 로그인 인지 판단하여 중복 로그인이면 나중에 접속한 사용자의 접속을 차단하였다. 이는 하나의 사용자 아이디로 복수의 사용자들이 같은 서비스를 이용하는 것을 막기 위함이다.
그런데 이러한 종래 기술에 의한 중복 로그인 차단은 서버 별로 관리되었으므로, 복수의 서버를 포함하여 운영되는 시스템에서는 상기 중복 로그인을 관리하기가 어려운 점이 있었다. 즉, 사용자의 로그 정보가 동시에 관리되는 복수의 서버에 사용자가 동일한 사용자 식별자로 중복 접속할 경우, 이를 처리하기 힘든 단점이 있었다.
도 1은 종래 기술에 따른 사용자 단말기 및 복수의 서버의 네트워크 연결을 도시한 도면이다.
도 1을 참조하면, 사용자는 사용자 단말기(105, 106)를 이용하여 네트워크(104) 연결된 외부 서버인 게임 서버 1(101), 게임 서버 2(102), 또는 게임 서버 3(103)에 접속하여 상기 게임 서버에서 제공하는 서비스를 이용할 수 있다.
이 때, 사용자는 하나의 사용자 아이디를 가지고 상기 게임 서버 모두를 이용할 수 있다. 예를 들어, 하나의 사용자 아이디를 가지고 한게임 사이트에 접속하는 경우, 사용자는 게임 서버 1(101)에서 제공하는 포커 게임, 게임 서버 2(102)에서 제공하는 고스톱 게임 및 게임 서버 3(103)에서 제공하는 테트리스 게임 등 다양한 게임을 하나의 사용자 아이디를 가지고 이용할 수 있다.
그러나 각 게임 서버는 각각의 게임을 서비스하고, 사용자 인증도 각 게임 서버에서 수행되었기 때문에 서로 다른 사용자가 하나의 사용자 아이디를 가지고, 서로 다른 게임 서버에 로그인하여 게임 서비스를 이용할 수 있었다. 예를 들어, 사용자 단말기 1(105)에서 게임 서버 1(101)에 로그인하여 게임을 이용하고, 또한 동시에 동일한 사용자 식별자로 사용자 단말기 2(106)에서 게임 서버 2(102)에 로그인하여 게임을 이용할 수 있는 문제가 있었다. 이러한 문제점을 해결하기 위하여 일정한 시간 단위로 전체 게임 서버에 로그인 되어 있는 사용자 아이디를 조사하여 중복 로그인을 판단하는 방법을 사용하기도 하였으나, 이는 중복 로그인에 대하여 즉시적인 대응을 할 수 없는 단점이 있었다.
또한 상기와 같이 게임 서버들은 각각의 게임 서비스를 제공하므로, 사용자 A가 게임 서버 1에서 제공하는 게임 서비스를 이용하고, 사용자 B가 게임 서버 2에서 제공하는 게임 서비스를 이용하고 있는 경우에는 사용자 A가 사용자 B 의 위치 정보를 요청하더라도 같은 게임 서버에서 서비스를 이용하고 있는 경우가 아니므로, 위치 정보를 제공할 수 없는 단점이 있었다. 따라서 이러한 문제점을 해결하기 위해 복수의 서버의 로그인/로그아웃을 관리하는 로케이션 서버를 도 2와 같이 설치하는 방법이 제안되었다.
도 2는 복수의 서버 및 로그인/로그아웃을 관리하는 로케이션 서버의 네트워크 연결을 도시한 도면이다.
상기와 같은 중복 로그인 문제와 사용자의 위치 정보를 제공할 수 없는 문제를 해결하기 위해 도 2와 같이 복수의 서버의 로그인/로그아웃을 관리하는 로케이션 서버(207)를 따로 설치하여 로그인/로그아웃 정보를 한 곳에서 관리하는 방법이 제안되었다. 즉, 게임 서버 1(201), 게임 서버 2(202), 게임 서버 3(203)을 로케 이션 서버(207)와 네트워크(204)를 통하여 연결하고, 상기 게임 서버들은 사용자가 로그인한 로그인 정보를 로그 메시지로 상기 로케이션 서버로 전송하고, 로케이션 서버(207)는 사용자의 로그 정보를 관리한다.
그러나 이러한 방법은 중복 로그인을 식별할 수 있지만, 상기 외부 서버들(201, 202, 203)에서 로케이션 서버(207)로 로그인/로그아웃 메시지를 송신하는 경우, 이러한 메시지들이 순서대로 로케이션 서버(207)에 도착한다는 보장이 없기 때문에, 이를 고려하여 중복 로그인을 처리하는 방법이 필요하다. 이러한 문제점을 도 3을 참조하여 설명하면 다음과 같다.
도 3은 외부 서버에서의 로그 순서 및 사용자의 로그인/로그아웃에 따라 외부 서버에서 전송한 로그 메시지가 로케이션 서버에 도착한 순서를 도시한 도면이다.
예를 들어, 사용자 A가 하나의 사용자 식별자로 로그인할 수 있는 복수의 서버에 로그인과 로그아웃을 반복할 수 있는데, 종래 기술에 의하면 이러한 사용자의 로그인 및 로그아웃 메시지는 각 외부 서버들에서 로케이션 서버로 전송된다. 이 때, 사용자 A는 도면 부호(301)과 같이 시간 T1에 로그인, T2에 로그아웃, T3에 로그인, T4에 로그아웃, T5에 로그인 할 수 있다. 따라서 최종적인 사용자의 상태는 로그인 상태이다.
그러나 사용자가 로그인과 로그아웃을 수행한 서버에서 상기 사용자의 로그 메시지를 로케이션 서버로 전송하는 과정에서 상기 사용자의 로그 메시지가 송신한 순서대로 로케이션 서버에 도착한다는 보장이 없기 때문에, 상기 로그 메시지의 순 서가 뒤바뀌어 상기 로케이션 서버로 도착하면 사용자의 상태를 제대로 검출 할 수 없다는 문제점이 있다.
즉, 도면 부호(302)와 같이 시간 T4에 발생한 로그아웃 메시지와 시간 T5에 발생한 로그인 메시지의 순서가 뒤바뀌어 도착하는 경우, 로케이션 서버가 도착한 순서대로 상기 로그 메시지를 처리한다면, 현재 사용자의 상태가 사실상으로는 로그인 임에도 불구하고, 로그아웃으로 처리하는 오류가 발생할 수 있는 문제점이 있다.
따라서, 복수 개의 서비스 서버들에 대한 사용자의 로그인/로그아웃 정보를 로케이션 서버에서 집중하여 관리하고자 할 때, 상기 서비스 서버들에서 로케이션 서버로 송신하는 로그인 메시지들의 순서가 송신한 순서대로 로케이션 서버에 도착하지 않더라도, 상기 사용자의 현재 로그인/로그아웃 상태를 정확히 판단할 수 있는 방법 및 시스템이 요구되고 있다.
또한 종래 기술에 의하면 전송된 로그 메시지의 사용자 식별자만으로 로그 정보를 처리하므로, 로그 메시지가 도착하더라도, 어떤 서버의 어느 채널에서 발생한 로그인/로그아웃 정보인지를 전혀 인식할 수 없어 전송된 로그 메시지를 정확하게 처리할 수 없고, 또한 사용자가 어디에서 서비스를 이용하고 있는지도 전혀 파악할 수 없는 문제점이 있었다.
본 발명은 복수 개의 서비스 서버들에 대한 사용자의 로그인/로그아웃 정보를 로케이션 서버에서 집중하여 관리하고자 할 때, 상기 서비스 서버들에서 로케이 션 서버로 송신하는 로그인 메시지들의 순서가 송신한 순서대로 로케이션 서버에 도착하지 않더라도, 상기 사용자의 현재 로그인/로그아웃 상태를 정확히 판단할 수 있는 방법 및 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은 사용자 식별자 별로 메시지 버퍼를 유지하고, 또한 전송된 로그 메시지의 서버 식별자, 채널 식별자 및 세션 식별자를 인식하여 사용자의 중복 로그인 여부를 판단함으로써, 하나의 사용자 아이디로 분산된 서버에 중복 로그인하여 서비스를 이용하는 사용자를 검출하는 로그인 검출 방법 및 시스템을 제공하는 것을 다른 목적으로 한다.
또한 본 발명은 동일 사용자에 대한 중복 로그인 메시지가 전송될 경우, 이 중 하나에 대한 로그아웃 메시지를 수신하면 이에 해당하는 로그인 메시지를 추방 후보 리스트에서 삭제하고, 나머지 중복 로그인 메시지들은 추방 메시지를 전송하여 강제 종료시키도록 함으로써, 중복 로그인 메시지를 효율적으로 처리할 수 있는 중복 로그인 검출 방법 및 시스템을 제공하는 것을 다른 목적으로 한다.
또한 본 발명은 타임 스탬프를 이용하여 중복된 로그인 메시지 중 먼저 로그인한 로그인 메시지를 선택하고, 나머지 로그인 메시지에 대해서는 추방 메시지를 송신하여 중복 로그인 된 사용자를 추방함으로써 중복 로그인을 방지할 수 있는 로그인 검출 방법 및 시스템을 제공하는 것을 또 다른 목적으로 한다.
또한 본 발명은 사용자 식별자 별로 서버 식별자, 채널 식별자 및 세션 식별자가 포함된 로그 메시지를 저장하는 사용자 버퍼를 유지하고, 사용자의 위치 요청을 수신하면 상기 사용자 버퍼를 참조하여 상기 사용자가 위치한 세션 식별자 정보 를 판독하여 제공하므로, 복수의 서버에 분산되어 로그인한 사용자간에도 사용자가 현재 로그인하여 서비스를 이용하고 있는 서버 및 채널의 위치 정보를 제공할 수 있는 중복 로그인 검출 방법 및 시스템을 제공하는 것을 또 다른 목적으로 한다.
상기의 목적을 달성하고, 상술한 종래기술의 문제점을 해결하기 위하여 본 발명의 일실시예에 따라 사용자의 중복 로그인을 검출하는 중복 로그인 검출 시스템은, 외부 서버로부터 사용자의 사용자 식별자, 상기 사용자의 로그인/로그아웃 상태, 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자, 및 세션 식별자를 포함하는 로그 메시지를 수신하는 메시지 수신부; 메시지 버퍼에서 상기 로그 메시지의 짝 메시지를 검색하는 짝 메시지 검색부; 및 상기 메시지 버퍼에서 짝 메시지가 검색된 경우 상기 로그 메시지 및 상기 검색된 짝 메시지를 상기 메시지 버퍼로부터 제거하고, 상기 메시지 버퍼에서 짝 메시지가 검색되지 않은 경우 상기 로그 메시지를 상기 메시지 버퍼에 저장하는 메시지 처리부를 포함한다.
또한 본 발명의 다른 실시예에 따른 중복 로그인 검출 시스템은, 외부 서버로부터 사용자의 사용자 식별자, 상기 사용자의 로그인/로그아웃 상태, 및 세션 식별자를 포함하는 로그 메시지를 수신하는 메시지 수신부; 사용자 버퍼에서 상기 로그 메시지의 짝 메시지를 검색하는 짝 메시지 검색부; 및 상기 사용자 버퍼에서 짝 메시지가 검색된 경우 상기 로그 메시지 및 상기 검색된 짝 메시지를 상기 사용자 버퍼로부터 제거하고, 상기 사용자 버퍼에서 짝 메시지가 검색되지 않은 경우 상기 로그 메시지를 상기 사용자 버퍼에 저장하는 메시지 처리부를 포함한다.
또한 본 발명의 또 다른 실시예에 따른 사용자의 중복 로그인을 검출하는 방법은 서비스 서버로부터 로그 메시지를 수신하는 단계 - 상기 로그 메시지는 사용자의 사용자 식별자, 상기 사용자의 로그인 또는 로그아웃 상태, 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자, 및 세션 식별자를 포함함 -; 상기 수신한 로그 메시지의 사용자 식별자를 참조하여 메시지 버퍼 내의 상기 사용자 식별자에 대응하는 사용자 버퍼를 식별하는 단계; 상기 사용자 버퍼에서 상기 로그 메시지의 짝 메시지(Pair Message)를 검색하는 단계; 및 상기 사용자 버퍼에서 짝 메시지가 검색된 경우 상기 로그 메시지 및 상기 검색된 짝 메시지를 상기 사용자 버퍼로부터 제거하고, 상기 사용자 버퍼에서 짝 메시지가 검색되지 않은 경우 상기 로그 메시지를 상기 사용자 버퍼에 저장하는 단계를 포함한다.
이하 첨부된 도면을 참조하여 본 발명에 따른 중복 로그인 검출 시스템에 대하여 상세히 설명한다.
도 4는 본 발명의 일실시예에 따른 중복 로그인 검출 시스템의 네트워크 연결을 도시한 도면이다. 본 발명에 따른 중복 로그인 검출 시스템(401)은 유무선 네트워크 통신망을 통해 외부 서버들(402, 403, 404)과 연결된다. 상기 외부 서버들(402, 403, 404)는 사용자 단말기(405, 406)과 네트워크 연결되어 상기 사용자 단말기에 소정의 서비스를 제공한다. 일예로, 상기 외부 서버들은 온라인 게임 서비스를 제공하는 게임 서버일 수 있으며, 사용자 로그인/로그아웃을 각각 수행할 수 있다.
이하에서는 본 발명의 따른 중복 로그인 검출 시스템(401)이 복수의 외부 서 버와 네트워크 연결되어 동작하는 실시예를 들어 설명하지만, 외부 서버가 하나인 경우에도 본 발명은 적용된다. 또한, 중복 로그인 검출 시스템(401)은 시스템 부하의 경감을 위하여 리플리케이션 되어 복수 개의 서버로 구성될 수도 있다.
또한 본 발명에 따른 중복 로그인 검출 시스템(401)은 로케이션 서버에 포함될 수 있다. 사용자의 로그인/로그아웃의 인증 처리는 외부 서버들(402, 403, 404)에서 수행될 수도 있고, 중복 로그인 검출 시스템(401)에서 수행될 수도 있다.
외부 서버(402, 403, 404)는 사용자에게 소정의 서비스를 제공하는 서비스 서버, 또는 상기 중복 로그인 검출 시스템이 포함된 로케이션 서버 등으로 중복 로그인 검출 시스템(401)과 연동하여, 사용자에게 로그인/로그아웃을 제공할 수 있다.
상기 외부 서버는 사용자 단말기에 네트워크 또는 통신망을 통하여 서비스를 제공하는 것으로, 외부 서버의 일례로는 사용자에게 소정의 게임을 제공하는 게임 서버, 오디오 파일을 제공하는 음악 제공 서버, 블로그 서비스를 제공하는 블로그 제공 서버 등이 있다.
도 5는 본 발명의 일실시예에 따른 중복 로그인 검출 시스템의 구성을 도시한 블록도이다. 도 5를 참조하면, 본 발명에 따른 중복 로그인 검출 시스템은 메시지 수신부(501), 짝 메시지 검색부(502), 메시지 처리부(503), 사용자 추방부(504), 사용자 위치 검색부(505)를 포함한다.
메시지 수신부(501)는 외부 서버로부터 사용자의 사용자 식별자, 상기 사용자의 로그인/로그아웃 상태, 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자, 및 세션 식별자를 포함하는 로그 메시지를 수신한다. 이 때, 실시예에 따라 채널이 따로 구분되지 않고 하나인 경우, 채널 식별자는 포함되지 않을 수 있다. 이하 도 6을 참조하여 로그 메시지를 설명한다.
도 6은 본 발명에 일실시예에 따른 로그 메시지 및 짝 메시지의 일실시예를 도시한 도면이다. 도 6을 참조하면, 본 발명에 따른 로그 메시지는 사용자 식별자(601), 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자(602), 세션 식별자(603), 및 상기 사용자의 로그인/로그아웃 상태(604)를 포함한다.
사용자 식별자(601)는 소정의 서비스를 이용하기 위하여 로그인/로그아웃 한 사용자를 식별하기 위한 정보이다.
채널 식별자(602)는 사용자가 로그인 또는 로그아웃 한 위치를 식별하는 식별자이다. 채널 식별자(602)는 사용자가 로그인 또는 로그아웃 한 외부 서버에 관한 정보일 수도 있고, 사용자가 로그인 또는 로그아웃 한 서비스를 식별하는 정보일 수도 있다. 본 발명의 일 실시예에 따르면, 외부 서버로 게임 서버가 이용될 때, 상기 게임 서버는 게임 서비스를 여러 개의 채널로 제공한다. 예를 들어, 온라인 체스 게임 서비스를 제공하는 게임 서버가 10개의 채널로 게임 서비스를 제공하고, 사용자는 상기 게임 서버에 접속한 후, 자신이 게임을 이용할 채널을 선택하여 게임 서비스를 이용한다. 이 경우에 채널 식별자(602)는 게임 서버 및 상기 게임 서버 내의 채널을 식별하도록 정의된다.
이 때, 실시예에 따라 채널이 따로 구분되지 않고 하나인 경우, 채널 식별자는 포함되지 않을 수 있음은 이미 설명한 바 있다. 예를 들어, 사용자가 서비스를 이용하기 위해 로그인 한 위치가 하나뿐인 경우에는 특별히 채널 식별자를 포함할 필요가 없다. 이러한 경우, 로그 메시지는 사용자 식별자(601), 채널 식별자(602), 세션 식별자(603), 사용자의 로그인/로그아웃 상태(604)를 포함하여 구성된다.
세션 식별자(603)는 상기 외부 서버에 의하여 사용자의 하나의 세션에 대하여 유일하게 부여되는 식별자이다. 즉, 상기 세션 식별자(603)는 사용자가 상기 외부 서버에 로그인부터 로그아웃까지 부여되는 하나의 세션에 대한 식별 정보로서, 일례로 4 바이트의 정수 등일 수 있다. 예를 들어, A라는 사용자가 외부 서버에 로그인하면 세션 식별자가 하나 할당되고, 이는 상기 사용자가 로그아웃 할 때까지 상기 사용자의 서비스 이용에 대하여 고유하게 유지된다. 상기 사용자가 로그아웃 후 외부 서버에 다시 로그인 하면 새로운 세션 식별자가 할당된다. 또한, 다른 사용자가 로그인을 하여도 새로운 세션 식별자가 할당된다. 따라서, 하나의 외부 서버에서 세션 식별자가 동일한 로그인과 로그아웃은 한 쌍만이 존재하게 된다. 이러한 세션 식별자는 외부 서버마다 독립적으로 관리되기 때문에, 서로 다른 외부 서버가 동일한 세션 식별자를 가지는 로그인/로그아웃 쌍을 가질 수도 있다.
사용자의 로그인/로그아웃 상태(604)는 사용자가 상기 외부 서버에서 제공하는 웹 페이지 또는 어플리케이션에 접속하여 로그인하였는지 또는 로그아웃 하였는지를 나타내는 정보이다.
상기 로그인 상태는 사용자가 소정의 사용자 단말기를 이용하여 상기 외부 서버에서 제공하는 웹 페이지 또는 어플리케이션에 접속하고, 상기 외부 서버에서 제공하는 서비스를 이용하기 위해 사용자 인터페이스에서 일련의 선택 입력을 한 상태이다. 예를 들어, 사용자는 외부 서버인 게임 서버에서 제공하는 웹 페이지에서 사용자 식별자 및 비밀 번호를 입력함으로써 로그인할 수 있다.
상기 로그아웃 상태는 사용자가 상기 외부 서버에서 제공하는 웹 페이지 또는 어플리케이션에서 로그인 한 상태에서 로그아웃을 선택 입력하는 경우 상기 사용자의 식별자로 상기 외부 서버에서 제공하는 서비스를 이용하지 않는 상태이다. 예를 들어, 사용자는 로그인 상태에서 외부 서버에서 제공하는 웹 페이지의 로그아웃을 선택 입력함으로써 로그아웃 할 수 있다.
이하에서는, 상기 사용자 상태가 로그인인 메시지를 로그인 메시지, 사용자의 상태가 로그아웃인 메시지를 로그아웃 메시지로 정의한다. 예를 들어, 도 6에서 로그 메시지(605)는 로그인 메시지이고, 로그 메시지(606)는 로그아웃 메시지이다.
다시 도 5를 참조하면, 짝 메시지 검색부(502)는 메시지 버퍼에서 상기 로그 메시지의 짝 메시지를 검색한다.
짝 메시지는 상기 로그 메시지와 사용자 식별자, 채널 식별자 및 세션 식별자는 동일하고, 사용자의 로그인/로그아웃 상태가 반대인 로그 메시지이다. 실시예에에 따라 채널 식별자가 포함되지 않는 경우, 상기 짝 메시지는 상기 로그 메시지와 사용자 식별자 및 세션 식별자는 동일하고, 사용자의 로그인/로그아웃 상태가 반대인 로그 메시지이다.
예를 들어, 도 6에서 로그 메시지(605)와 로그 메시지(606)는 사용자의 로그 인/로그아웃 상태(604)만 반대일 뿐, 사용자 식별자(601), 채널 식별자(602) 및 세션 식별자(603)는 동일하다. 따라서, 로그 메시지(605)와 로그 메시지(606)는 서로 짝 메시지(Pair Message)가 된다.
도 6을 참조하면, 짝 메시지(606)는 로그 메시지(605)와 사용자 식별자(601)는 "SSS777", 채널 식별자(602)는 "4", 세션 식별자는 "89"로 동일하고, 사용자의 로그인/로그아웃 상태(604)는 로그 메시지(605)는 "로그인", 짝 메시지(606)는 "로그아웃"으로 대응된다.
메시지 버퍼는 본 발명의 중복 로그인 검출 시스템에서 수신한 상기 로그 메시지 또는 짝 메시지를 저장하는 저장 수단이다. 또한 실시예에 따라 메시지 버퍼는 각 사용자 별로 할당된 사용자 버퍼를 포함할 수 있다. 이와 같이, 사용자 버퍼를 사용자 식별자 별로 관리하면, 사용자마다 분리하여 로그 메시지를 저장하게 되므로, 각 사용자에 대응한 로그 메시지의 저장 및 검색을 매우 빠르게 처리할 수 있는 효과가 있다.
도 7은 본 발명의 일실시예에 따른 사용자 버퍼 및 추방 후보 리스트의 일례를 도시한 도면이다. 도 7을 참조하면, 사용자 버퍼는 사용자의 식별자 별 로그 메시지 또는 짝 메시지(701, 702, 703)를 상기 사용자 버퍼에 도착한 순서대로 저장한다. 로그 메시지 또는 짝 메시지는 도 6의 구성 외에 타임스탬프(704)를 포함할 수 있다.
짝 메시지 검색부(502)는 상기 도 7와 같이 메시지 버퍼가 사용자 식별자에 대응하는 사용자 버퍼를 유지하고 있을 경우, 상기 수신한 로그 메시지의 사용자 식별자를 참조하여 메시지 버퍼 내의 상기 사용자 식별자에 대응하는 사용자 버퍼를 식별하고, 상기 사용자 버퍼에서 상기 로그 메시지의 짝 메시지를 검색한다.
예를 들어, 수신한 로그 메시지의 사용자 식별자가 "SSS777", 채널 식별자가 "5", 세션 식별자가 "1004", 사용자 상태가 "로그아웃"인 경우, 짝 메시지 검색부(502)는 상기 사용자 식별자 "SSS777"에 대응하는 사용자 버퍼를 식별하고, 상기 사용자 버퍼에서 상기 로그 메시지의 짝 메시지로 도면 부호(701)과 같은 사용자 식별자가 "SSS777", 채널 식별자가 "5", 세션 식별자가 "1004", 사용자 상태가 "로그인"인 메시지를 검색한다.
마찬 가지로, 도면 부호(702) 및 도면 부호(703)과 같은 로그 메시지를 수신한 경우에도 상기 로그 메시지에 대응하는 짝 메시지를 검색할 수 있다.
상기 로그 메시지에 대응하는 짝 메시지는 상기 사용자 로그 메시지와 사용자 식별자, 채널 식별자 및 세션 식별자는 동일하고 사용자의 로그인/로그아웃 상태가 반대인 로그 메시지이다.
메시지 처리부(503)는 상기 메시지 버퍼에서 짝 메시지가 검색된 경우, 상기 로그 메시지 및 상기 검색된 짝 메시지를 상기 메시지 버퍼로부터 제거하고, 상기 메시지 버퍼에서 짝 메시지가 검색되지 않은 경우, 상기 로그 메시지를 상기 메시지 버퍼에 저장한다.
따라서, 메시지 처리부(503)는 상기 예에서와 같이 사용자 식별자가 "SSS777", 채널 식별자가 "5", 세션 식별자가 "1004", 사용자 상태가 "로그아웃"인 수신 로그 메시지에 대한 짝 메시지(701)가 있는 경우, 이를 메시지 버퍼로부터 제 거하고, 도면 부호(702) 및 도면 부호(703)과 같이 짝 메시지가 상기 메시지 버퍼에서 검색되지 않는 경우, 상기 로그 메시지인 도면 부호(702) 및 도면 부호(703)을 메시지 버퍼에 저장한다.
이와 같이 본 발명은 로그 메시지의 채널 식별자, 세션 식별자 및 사용자 상태를 이용하여 짝 메시지를 검색하여 처리하므로, 로그인/로그아웃 메시지가 사용자가 로그인/로그아웃 한 순서대로 도착하지 않더라도 이를 처리할 수 있는 효과가 있다.
즉, 사용자 식별자에 해당하는 로그인/로그아웃 메시지가 사용자가 외부 서버에 로그인 또는 로그아웃 한 순서대로 도착하지 않더라도 상기 메시지에 포함된 사용자 식별자에 해당하는 사용자 버퍼에서 상기 로그 메시지의 채널 식별자, 세션 식별자 및 사용자 상태에 대응하는 짝 메시지를 검색하여 이를 신속하게 처리할 수 있는 효과가 있다.
도 8은 사용자의 외부 서버에서의 로그 순서 및 상기 로그 순서에 따른 로그 메시지가 본 발명의 로그인 검출 시스템에 도착한 순서를 도시한 도면이다.
도 8의 도면 부호(801)을 참조하면 사용자 A가 외부서버에서 시간 T1 내지 T5동안 각 시간 마다 차례로 로그인 또는 로그아웃을 한 경우, 최종 로그 상태는 시간 T5에서 채널 3 및 세션 8에 로그인한 상태가 된다.
그러나 외부 서버는 상기와 같은 사용자 A의 로그 정보를 로그 메시지로 생성하여 중복 로그인 검출 시스템으로 전송하고, 이러한 전송 과정에서 상기 로그 메시지의 순서가 바뀔 수 있다. 즉, 도면 부호(802)를 참조하면, 사용자가 실제로 는 시간 T4에서 채널 2 및 세션 4에서 로그아웃하고, 시간 T5에서 채널 3 및 세션 8에서 로그인하였는데, 로그 메시지는 시간 T5에서의 로그인 메시지가 먼저 도착하고, 다음으로 시간 T4에서의 로그아웃 메시지가 도착할 수 있다.
상기와 같은 경우, 종래 기술에서는 도 3에서와 같이 도착 순서가 뒤바뀐 로그 메시지를 처리하지 못하는 문제점이 있었으나, 본 발명에서는 짝 메시지를 식별하여 처리하므로 상기와 같이 로그 메시지의 순서가 바뀌어서 도착하더라도 이를 처리할 수 있는 효과가 있다.
즉, 중복 로그인 검출 시스템은 도면 부호(802)에서, 사용자가 시간 T4에서 로그아웃 한 메시지가 시간 T5에서 로그인한 메시지보다 나중에 도착하는 경우, 시간 T5에 로그인한 메시지는 메시지 버퍼에 짝 메시지가 저장되어 있지 않으므로, 그대로 메시지 버퍼에 저장하고, 그 후, 도착한 시간 T4에 로그아웃 한 메시지는 짝 메시지인 시간 T3에 로그인한 메시지가 메시지 버퍼에 저장되어 있으므로, 상기 시간 T3에 로그인한 메시지는 메시지 버퍼에서 제거한다.
따라서, 본 발명에 따르면, 로그 메시지의 순서가 뒤바뀌어 도착하더라도 최종 로그 상태는 시간 T5에서 채널 3 및 세션 8에 로그인한 상태인 것으로 정확하게 파악할 수 있다.
즉, 본 발명에 따르면 사용자가 실제로 수행한 로그인/로그아웃에 관한 메시지가 순서가 뒤바뀌어 도착하더라도 채널 식별자 및 세션 식별자를 이용하여 이를 처리할 수 있고, 사용자의 실제 로그 상태를 정확하게 파악할 수 있는 효과가 있다.
메시지 처리부(503)는 상기 메시지 버퍼에서 동일한 사용자에 대하여 2개 이상의 로그인 메시지를 발견하는 경우, 상기 발견된 2개 이상의 로그 메시지를 추방 후보 리스트(banish candidate list)에 등록한다.
상기 추방 후보 리스트는 상기 동일한 사용자에 대한 2개 이상의 동일 사용자에 대한 로그 메시지를 처리하기 위한 임시 저장 수단이다.
예를 들어, 메시지 처리부(503)가 도면 부호(702) 및 도면 부호(703)과 같이 사용자 버퍼(700)에서 짝 메시지가 검색되지 않고, 동일 사용자에 대한 2 이상의 로그인 메시지가 사용자 버퍼(700)에 저장되어 있음을 발견하는 경우, 상기 도면 부호(702) 및 도면 부호(703)의 로그인 메시지를 추방 후보 리스트(710)에 저장한다.
메시지 처리부(503)는 동일 사용자에 대한 2개 이상의 로그인 메시지를 상기 추방 후보 리스트(710)에 등록하고 상기 2개 이상의 로그인 메시지를 처리하기 위해 대기한다.
메시지 처리부(503)는 로그아웃 메시지가 수신되어 상기 메시지 버퍼에 저장된 동일한 사용자에 대한 로그인 메시지가 하나로 줄어든 경우, 상기 사용자의 로그 메시지를 추방 후보 리스트에서 삭제한다. 상기 로그아웃 메시지가 상기 로그인 메시지에 대한 짝 메시지인 경우, 메시지 버퍼에 저장된 동일한 사용자에 대한 로그인 메시지는 하나 줄어들게 된다. 예를 들어, 상기 도면 부호(702)에 대응하는 로그아웃 메시지가 수신되면, 메시지 처리부(503)는 사용자 버퍼(700)에서 도면 부호(702)의 로그인 메시지를 삭제하고, 상기 추방 후보 리스트(710)에서도 역시 삭 제한다. 다만, 이렇게 짝 메시지가 도착하여 로그인 메시지들이 줄어들더라도 동일한 사용자에 대한 로그인 메시지가 아직 2개 이상인 경우에는 추방 후보 리스트에서 삭제되지 않는다.
사용자 추방부(504)는 상기 추방 후보 리스트(710)를 일정한 시간 간격으로 검사하고, 동일한 사용자에 대한 2개 이상의 로그인 메시지가 상기 추방 후보 리스트에 등록되어 있는 경우, 상기 로그인 메시지 중 하나를 선택하고, 상기 선택된 이외의 로그인 메시지에 대해서는 대응하는 채널의 서비스 서버에게 추방 메시지를 송신한다.
상기 일정 시간 간격은 다양하게 설정될 수 있으며, 일례로, 2초마다 상기 추방 후보 리스트를 검색하여 동일 사용자에 대한 2개 이상의 로그인 메시지가 등록 되어 있는지를 검사할 수 있다.
예를 들어, 도 7의 도면 부호(702) 및 도면 부호(703)의 로그인 메시지가 추방 후보 리스트(710)에 등록되어 있는 경우, 사용자 추방부(504)는 상기 로그인 메시지 중 하나인 도면 부호(702)를 선택하고, 상기 선택된 이외의 로그인 메시지인 도면 부호(703)에 대해서는 상기 메시지가 대응하는 채널인 "10"의 서비스 서버에 추방 메시지를 송신할 수 있다.
상기 추방 메시지는 사용자가 로그인한 채널의 서비스 서버에서 사용자의 로그인을 강제 종료하여 로그아웃 하도록 하는 메시지일 수 있다. 따라서 상기 추방 메시지를 수신한 서비스 서버는 상기 로그인 메시지에 대응하는 사용자의 접속을 강제 종료할 수 있다.
따라서, 본 발명에 따르면, 동일 사용자에 대한 중복 로그인 메시지가 전송될 경우, 이 중 하나에 대한 로그아웃 메시지를 수신하면 이에 해당하는 로그인 메시지를 추방 후보 리스트에서 삭제하고, 나머지 중복 로그인 메시지들은 추방 메시지를 전송하여 강제 종료시키도록 함으로써, 중복 로그인 메시지를 효율적으로 처리할 수 있다.
즉, 사용자가 채널 1에서 로그인하였는데, 상기 채널 1의 서비스 서버가 동작하지 않는 경우, 채널 2에서 로그인할 수 있다. 이 때, 본 발명에 따르면 채널 2에서의 로그인을 무조건 강제 종료 시키는 것이 아니라, 상기 사용자가 채널 2에서 로그아웃 하면, 이 때, 상기 채널 1에 추방 메시지를 송신하여 잘못된 로그인 정보를 제거할 수 있는 것이다.
만약 서비스 서버에서 제공하는 서비스가 유료 서비스 인 경우, 상기 채널 1에서의 로그인에 의해 사용자는 부당하게 과금되는 경우가 발생할 수 있으므로, 본 발명에 따르면 이러한 부당한 과금을 유발하는 중복 로그인을 처리할 수 있는 효과가 있다.
이 때, 사용자 추방부(504)는 상기 동일한 사용자에 대한 상기 2개 이상의 로그인 메시지 중 가장 먼저 로그인한 로그인 메시지를 선택하고, 2개 이상의 메시지 중 다른 메시지에 대해서는 대응하는 채널의 서비스 서버로 추방 메시지를 전송한다.
예를 들어, 사용자 추방부(504)는 추방 후보 리스트에 등록된 동일한 사용자에 대한 로그인 메시지들(702, 703) 중 먼저 로그인한 메시지를 선택하고, 나머지 메시지에 대해서는 해당 외부 서버에 추방 메시지를 전송한다.
상기 로그인 메시지는 로그인 순서를 판별할 수 있는 정보를 포함할 수 있는데, 일례로 로그인 시간 정보를 포함할 수도 있고, 로그인 순서를 식별할 수 있는 타임 스탬프(704)를 포함할 수 있다.
상기 로그인 메시지가 타임 스탬프(704)를 포함하는 경우, 상기 타임 스탬프는 외부 서버의 식별자 및 상기 외부 서버에서 로그인한 순서 정보인 시퀀스 정보를 포함할 수 있다.
예를 들어, 도면 부호(702)의 로그인 메시지는 타임 스탬프(704)로 상기 사용자가 로그인한 외부 서버 식별자 정보인 "LCS 1" 및 상기 외부 서버 "LCS 1"에서 사용자가 로그인한 순서가 "77"임을 나타내는 시퀀스 정보를 포함할 수 있고, 도면 부호(703)의 로그인 메시지는 타임 스탬프(704)로 로그인한 외부 서버 식별자 정보인 "LCS 1" 및 상기 외부 서버 "LCS 1"에서 사용자가 로그인한 순서가 "78"임을 나타내는 시퀀스 정보를 포함할 수 있다.
상기 시퀀스 정보는 실시예에 따라 상기 외부 서버에서 로그인한 순서대로 큰 값을 가지도록 설정되어 상기 시퀀스 정보가 작은 값을 가질수록 먼저 로그인한 로그인 메시지일 수 있다.
사용자 추방부(504)는 상기 타임 스탬프에 따라 상기 추방 후보 리스트의 로그인 메시지의 로그인 순서를 판별하고, 2개 이상의 로그인 메시지 중, 가장 먼저 로그인한 메시지 이외의 로그인 메시지에 대하여 추방 메시지를 전송한다.
예를 들어, 상기 타임 스탬프 값이 가장 작은 로그인 메시지인 도면 부호 (702)를 선택하고, 추방 후보 리스트(710)에 등록된 다른 로그인 메시지인 도면 부호(703)에 대해서는 추방 메시지를 전송할 수 있다. 상기 추방 메시지를 수신한 서버는 상기 추방 메시지에 대응하여 상기 사용자의 접속을 차단할 수 있다.
따라서, 본 발명에 따르면 타임 스탬프를 이용하여 중복된 로그인 메시지 중 먼저 로그인한 로그인 메시지를 선택하고, 나머지 로그인 메시지에 대해서는 추방 메시지를 송신할 수 있으므로 나중에 접속한 로그인 메시지를 정확하게 판단하여 중복 로그인을 방지할 수 있는 효과가 있다.
사용자 위치 검색부(505)는 사용자에 대한 위치 정보를 요청하는 위치 요청에 응답하여 상기 메시지 버퍼에서 상기 사용자에 대응하는 로그인 메시지를 검색하고, 상기 검색된 로그인 메시지의 채널 식별자를 응답한다.
사용자에 대한 위치 요청은 소정의 메시지 형식으로 본 발명에 따른 중복 로그인 검출 시스템에 전송될 수 있으며, 사용자 위치 검색부(505)는 상기 위치 요청에 대응하여 상기 위치 요청에 포함된 사용자 식별자에 대응하는 사용자 버퍼를 검색하고, 상기 사용자 버퍼에 저장된 로그인 메시지를 검색한다.
예를 들어, 위치 정보가 "SSS777"에 대한 것일 경우, 사용자 위치 검색부(505)는 상기 사용자 식별자에 대응하는 사용자 버퍼를 검색하고, 상기 버퍼에 저장된 로그인 메시지의 채널 식별자를 판독하여 상기 위치 요청한 서버로 전송하거나, 위치 요청한 웹 페이지로 전송한다. 일례로, 사용자 버퍼에 도면 부호(702)와 같은 로그인 메시지가 저장되어 있는 경우, 사용자 위치 검색부(505)는 채널 식별자 "4"를 판독하여 응답한다.
통상의 경우는 사용자의 로그인 메시지는 하나만 사용자 버퍼에 남아 있고, 상기 로그인 메시지의 채널 식별자로 응답하면 된다. 그러나, 사용자 로그인 메시지가 2개 이상인 경우가 있을 수 있다. 이와 같이, 상기 메시지 버퍼에 사용자에 대한 2개 이상의 로그인 메시지가 저장되어 있는 경우, 본 발명의 일 실시예에 따르면, 사용자 위치 검색부(505)는 상기 2개 이상의 로그인 메시지 중 가장 먼저 로그인한 로그인에 관한 로그인 메시지의 채널 식별자를 응답한다. 예를 들어, 메시지 버퍼에 도면 부호(702) 및 도면 부호(703)과 같은 사용자에 대한 2개 이상의 로그인 메시지가 저장되어 있는 경우, 사용자 위치 검색부(505)는 상기 도면 부호(702) 및 도면 부호(703) 중 먼저 로그인한 로그인 메시지인 도면 부호(702)의 채널 식별자인 "4"를 응답한다.
본 발명의 또 다른 실시예에 따르면, 사용자 위치 검색부(505)는 상기 2개 이상의 로그인 메시지 각각의 채널 식별자 모두를 응답한다.
상기 로그인 메시지의 로그인 순서는 타임 스탬프를 이용하여 판별할 수 있음은 이미 설명한 바와 같다.
따라서, 본 발명에 따르면 사용자별 로그인 메시지에 채널 식별자 및 타임 스탬프를 포함하여 사용자별 메시지 버퍼에 저장함으로써, 사용자가 로그인하고 경우, 또는 중복 로그인하고 경우 사용자 위치 요청에 응답하여 사용자가 이용하고 있는 채널 정보를 신속하게 제공할 수 있는 효과가 있다.
도 9는 본 발명의 일실시예에 따라 중복 로그인을 검출하는 과정을 도시한 흐름도이다. 이하, 본 발명의 일실시예에 따라 중복 로그인을 검출하는 과정은 다 음과 같다.
단계(S901)에서 본 발명에 따른 중복 로그인 처리 시스템은 외부 서비스 서버로부터 로그 메시지를 수신한다. 상기 로그 메시지는 사용자의 사용자 식별자, 상기 사용자의 로그인 또는 로그아웃 상태, 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자, 및 세션 식별자를 포함할 수 있음은 도 6을 참조하여 이미 설명한 바와 같다.
단계(S902)에서 본 발명에 따른 중복 로그인 처리 시스템은 상기 수신한 로그 메시지의 사용자 식별자를 참조하여 메시지 버퍼 내의 상기 사용자 식별자에 대응하는 사용자 버퍼를 식별한다.
상기 메시지 버퍼는 사용자 식별자 별로 소정의 메시지를 저장하는 사용자 버퍼를 포함할 수 있음은 이미 설명한 바와 같고, 또한 본 발명은 이와 같이 사용자 별 사용자 버퍼에 로그 메시지를 저장함으로써, 로그인/로그이웃 메시지가 순서대로 도착하지 않더라도, 상기 사용자 버퍼에 저장되어 있는 짝 메시지를 판단하여 로그 처리를 할 수 있는 효과가 있음도 이미 설명한 바와 같다. 사용자 버퍼의 일실시예는 도 7을 참조하여 이미 설명하였다.
단계(S903)에서 본 발명에 따른 중복 로그인 처리 시스템은 상기 사용자 버퍼에서 상기 로그 메시지의 짝 메시지(Pair Message)를 검색한다. 상기 짝 메시지는 상기 로그 메시지와 사용자 식별자, 채널 식별자 및 세션 식별자는 동일하고, 사용자의 로그인/로그아웃 상태가 반대인 로그 메시지이며, 상기 세션 식별자는 상기 외부 서버에 의하여 상기 사용자의 하나의 세션에 대하여 유일하게 부여되는 식 별자임은 도 6을 참조하여 설명한 바 있다.
단계(S903)의 검색 결과 상기 사용자 버퍼에서 짝 메시지가 검색된 경우, 본 발명에 따른 중복 로그인 처리 시스템은 단계(S904)에서 상기 로그 메시지 및 상기 검색된 짝 메시지를 상기 사용자 버퍼로부터 제거한다.
단계(S903)의 검색 결과 상기 사용자 버퍼에서 짝 메시지가 검색되지 않은 경우, 본 발명에 따른 중복 로그인 처리 시스템은 단계(S905)에서 상기 로그 메시지를 상기 사용자 버퍼에 저장한다.
또한 본 발명에 따른 중복 로그인 검출 방법은 상기 사용자에 대한 위치 정보를 요청하는 위치 요청에 응답하여, 상기 메시지 버퍼에서 상기 사용자에 대응하는 로그인 메시지를 검색하고, 상기 검색된 로그인 메시지의 채널 식별자를 응답하는 단계를 포함하여 구성될 수 있다. 상기 위치 요청에 대한 응답 과정 또한 도 5를 참조하여 설명한 바와 같다.
본 발명에 따른 중복 로그인 검출 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크 (floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.
본 발명에 따르면, 복수 개의 서비스 서버들에 대한 사용자의 로그인/로그아웃 정보를 로케이션 서버에서 집중하여 관리하고자 할 때, 상기 서비스 서버들에서 로케이션 서버로 송신하는 로그인 메시지들의 순서가 송신한 순서대로 로케이션 서버에 도착하지 않더라도, 상기 사용자의 현재 로그인/로그아웃 상태를 정확히 판단할 수 있는 방법 및 시스템이 제공된다.
또한, 본 발명에 따르면, 사용자 식별자 별로 메시지 버퍼를 유지하고, 또한 전송된 로그 메시지의 서버 식별자, 채널 식별자 및 세션 식별자를 인식하여 사용자의 중복 로그인 여부를 판단함으로써, 하나의 사용자 아이디로 분산된 서버에 중복 로그인하여 서비스를 이용하는 사용자를 검출하는 로그인 검출 방법 및 시스템이 제공된다.
또한 본 발명에 따르면, 동일 사용자에 대한 중복 로그인 메시지가 전송될 경우, 이 중 하나에 대한 로그아웃 메시지를 수신하면 이에 해당하는 로그인 메시지를 추방 후보 리스트에서 삭제하고, 나머지 중복 로그인 메시지들은 추방 메시지를 전송하여 강제 종료시키도록 함으로써, 중복 로그인 메시지를 효율적으로 처리할 수 있다.
또한 본 발명에 따르면, 타임 스탬프를 이용하여 중복된 로그인 메시지 중 먼저 로그인한 로그인 메시지를 선택하고, 나머지 로그인 메시지에 대해서는 추방 메시지를 송신하여 중복 로그인 된 사용자를 추방함으로써 중복 로그인을 방지할 수 있다.
또한 본 발명에 따르면, 사용자 식별자 별로 서버 식별자, 채널 식별자 및 세션 식별자가 포함된 로그 메시지를 저장하는 사용자 버퍼를 유지하고, 사용자의 위치 요청을 수신하면 상기 사용자 버퍼를 참조하여 상기 사용자가 위치한 세션 식별자 정보를 판독하여 제공함으로써, 복수의 서버에 분산되어 로그인한 사용자간에도 사용자가 현재 로그인하여 서비스를 이용하고 있는 서버 및 채널의 위치 정보를 제공할 수 있다.

Claims (19)

  1. 사용자의 중복 로그인을 검출하는 시스템에 있어서,
    외부 서버로부터 상기 사용자의 로그인/로그아웃 상태를 포함하는 로그 메시지를 수신하는 메시지 수신부;
    메시지 버퍼에서 상기 로그 메시지의 짝 메시지를 검색하는 짝 메시지 검색부; 및
    상기 짝 메시지 검색부에 의해, ⅰ) 상기 짝 메시지가 검색되는 경우, 상기 수신된 로그 메시지와 상기 검색된 짝 메시지를 제거하고, ⅱ) 상기 짝 메시지가 검색되지 않는 경우, 상기 수신된 로그 메시지를 상기 메시지 버퍼에 저장하는 메시지 처리부를 포함하며,
    상기 메시지 처리부는,
    상기 메시지 버퍼에 저장된 로그 메시지 중에, 하나의 사용자에 대해 상기 로그인/로그아웃 상태가 동일한 복수의 로그 메시지가 있는지를 식별하고, 상기 식별된 복수의 로그 메시지를 추방 후보 리스트(banish candidate list)에 등록하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  2. 제1항에 있어서,
    상기 로그 메시지는 사용자의 사용자 식별자, 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자, 및 세션 식별자를 더 포함하고,
    상기 짝 메시지 검색부는,
    상기 수신된 로그 메시지와, 상기 사용자 식별자, 채널 식별자 및 세션 식별자는 동일하고, 사용자의 로그인/로그아웃 상태가 반대인 로그 메시지를 상기 짝 메시지로서 검색하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  3. 제2항에 있어서,
    상기 세션 식별자는 상기 외부 서버에 의하여 상기 사용자에게 부여되는 하나의 세션에 대하여 유일하게 부여되는 식별자인 것을 특징으로 하는 중복 로그인 검출 시스템.
  4. 제2항에 있어서,
    상기 메시지 버퍼는 각 사용자 별로 할당된 사용자 버퍼를 포함하고,
    상기 짝 메시지 검색부는,
    상기 수신한 로그 메시지의 사용자 식별자를 참조하여 메시지 버퍼 내의 상기 사용자 식별자에 대응하는 사용자 버퍼를 식별하고, 상기 사용자 버퍼에서 상기 로그 메시지의 짝 메시지를 검색하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  5. 삭제
  6. 제1항에 있어서,
    상기 메시지 처리부는,
    ⅰ) 상기 짝 메시지가 검색되는 경우, 제거된 상기 로그 메시지 또는 상기 짝 메시지를 추방 후보 리스트에서도 삭제하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  7. 제1항에 있어서,
    상기 추방 후보 리스트를 일정한 시간 간격으로 검사하여 동일한 사용자에 대하여 2개 이상의 로그인 메시지가 상기 추방 후보 리스트에 등록되어 있는 경우, 상기 로그인 메시지 중 하나를 선택하고, 상기 선택된 로그인 메시지 이외의 로그인 메시지에 대해서는 대응하는 채널의 서비스 서버에게 추방 메시지를 송신하는 사용자 추방부
    를 더 포함하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  8. 제7항에 있어서,
    상기 선택된 로그인 메시지는 상기 동일한 사용자에 대한 상기 2개 이상의 로그인 메시지 중 가장 먼저 로그인한 로그인에 관한 로그인 메시지인 것을 특징으로 하는 중복 로그인 검출 시스템.
  9. 제7항에 있어서,
    상기 로그인 메시지는 타임스탬프를 포함하고, 상기 선택된 로그인 메시지는 상기 동일한 사용자에 대한 상기 2개 이상의 로그인 메시지 중 상기 타임스탬프의 값이 가장 작은 로그인 메시지인 것을 특징으로 하는 중복 로그인 검출 시스템.
  10. 제1항에 있어서,
    상기 사용자에 대한 위치 정보를 요청하는 위치 요청에 응답하여, 상기 메시지 버퍼에서 상기 사용자에 대응하는 로그인 메시지 - 상기 로그인 메시지는 사용자의 로그인/로그아웃 상태가 로그인 상태인 로그 메시지 - 를 검색하고, 상기 검색된 로그인 메시지의 채널 식별자를 응답하는 사용자 위치 검색부
    를 더 포함하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  11. 제10항에 있어서,
    상기 사용자 위치 검색부는,
    상기 사용자에 대하여 2개 이상의 로그인 메시지가 상기 메시지 버퍼에 저장되어 있는 경우, 상기 2개 이상의 로그인 메시지 중 가장 먼저 로그인한 로그인에 관한 로그인 메시지의 채널 식별자를 응답하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  12. 사용자의 중복 로그인을 검출하는 시스템에 있어서,
    외부 서버로부터 사용자의 사용자 식별자, 상기 사용자의 로그인/로그아웃 상태, 및 세션 식별자를 포함하는 로그 메시지를 수신하는 메시지 수신부;
    사용자 버퍼에서 상기 로그 메시지의 짝 메시지를 검색하는 짝 메시지 검색부; 및
    상기 짝 메시지 검색부에 의해, ⅰ) 상기 짝 메시지가 검색되는 경우, 상기 수신된 로그 메시지와 상기 검색된 짝 메시지를 제거하고, ⅱ) 상기 짝 메시지가 검색되지 않는 경우, 상기 수신된 로그 메시지를 상기 사용자 버퍼에 저장하는 메시지 처리부를 포함하고,
    상기 메시지 처리부는,
    상기 사용자 버퍼에 저장된 로그 메시지 중에, 하나의 사용자에 대해 상기 로그인/로그아웃 상태가 동일한 복수의 로그 메시지가 있는지를 식별하고, 상기 식별된 복수의 로그 메시지를 추방 후보 리스트에 등록하는 것을 특징으로 하는 중복 로그인 검출 시스템.
  13. 제12항에 있어서,
    상기 짝 메시지는 상기 로그 메시지와 사용자 식별자, 및 세션 식별자는 동일하고, 사용자의 로그인/로그아웃 상태가 반대인 로그 메시지인 것을 특징으로 하는 중복 로그인 검출 시스템.
  14. 제12항에 있어서,
    상기 세션 식별자는 상기 외부 서버에 의하여 상기 사용자의 하나의 세션에 대하여 유일하게 부여되는 식별자인 것을 특징으로 하는 중복 로그인 검출 시스템.
  15. 사용자의 중복 로그인을 검출하는 방법에 있어서,
    외부 서버로부터 상기 사용자의 로그인/로그아웃 상태를 포함하는 로그 메시지를 수신하는 단계;
    메시지 버퍼에서 상기 로그 메시지의 짝 메시지를 검색하는 단계;
    상기 검색 결과, 상기 짝 메시지가 검색되는 경우, 상기 수신된 로그 메시지와 상기 검색된 짝 메시지를 제거하는 단계; 및
    상기 검색 결과, 상기 짝 메시지가 검색되지 않는 경우, 상기 수신된 로그 메시지를 상기 메시지 버퍼에 저장하는 단계를 포함하고,
    로그 메시지를 상기 메시지 버퍼에 저장하는 상기 단계는,
    상기 메시지 버퍼에 저장된 로그 메시지 중에, 하나의 사용자에 대해 상기 로그인/로그아웃 상태가 동일한 복수의 로그 메시지가 있는지를 식별하는 단계; 및
    상기 식별된 복수의 로그 메시지를 추방 후보 리스트에 등록하는 단계
    를 포함하는 것을 특징으로 하는 중복 로그인 검출 방법.
  16. 제15항에 있어서,
    상기 로그 메시지는 사용자의 사용자 식별자, 상기 사용자가 로그인/로그아웃 한 채널에 관한 채널 식별자, 및 세션 식별자를 더 포함하고,
    로그 메시지의 짝 메시지를 검색하는 상기 단계는,
    상기 수신된 로그 메시지와, 상기 사용자 식별자, 채널 식별자 및 세션 식별자는 동일하고, 사용자의 로그인/로그아웃 상태가 반대인 로그 메시지를 상기 짝 메시지로서 검색하는 단계
    를 포함하는 것을 특징으로 하는 중복 로그인 검출 방법.
  17. 제15항에 있어서,
    로그 메시지와 상기 검색된 짝 메시지를 제거하는 상기 단계는,
    ⅰ) 상기 짝 메시지가 검색되는 경우, 제거된 상기 로그 메시지 또는 상기 짝 메시지를 추방 후보 리스트에서도 삭제하는 단계
    를 포함하는 것을 특징으로 하는 중복 로그인 검출 방법.
  18. 제15에 있어서,
    상기 추방 후보 리스트를 일정한 시간 간격으로 검사하여 동일한 사용자에 대하여 2개 이상의 로그인 메시지가 상기 추방 후보 리스트에 등록되어 있는 경우, 상기 로그인 메시지 중 하나를 선택하는 단계; 및
    상기 선택된 로그인 메시지 이외의 로그인 메시지에 대해서는 대응하는 채널의 서비스 서버에게 추방 메시지를 송신하는 단계
    를 더 포함하는 것을 특징으로 하는 중복 로그인 검출 방법.
  19. 제15항 내지 제18항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020050046028A 2005-05-31 2005-05-31 중복 로그인 검출 방법 및 시스템 KR100700690B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020050046028A KR100700690B1 (ko) 2005-05-31 2005-05-31 중복 로그인 검출 방법 및 시스템
PCT/KR2006/001976 WO2006129932A1 (en) 2005-05-31 2006-05-25 Method and system for detecting double login
CN200680008755XA CN101142566B (zh) 2005-05-31 2006-05-25 用于检测双登入的方法和系统
JP2008513370A JP4726951B2 (ja) 2005-05-31 2006-05-25 重複ログイン検出方法及びシステム
US11/943,951 US8151107B2 (en) 2005-05-31 2007-11-21 Method and system for detecting concurrent logins

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050046028A KR100700690B1 (ko) 2005-05-31 2005-05-31 중복 로그인 검출 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20060124218A KR20060124218A (ko) 2006-12-05
KR100700690B1 true KR100700690B1 (ko) 2007-03-27

Family

ID=37481825

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050046028A KR100700690B1 (ko) 2005-05-31 2005-05-31 중복 로그인 검출 방법 및 시스템

Country Status (5)

Country Link
US (1) US8151107B2 (ko)
JP (1) JP4726951B2 (ko)
KR (1) KR100700690B1 (ko)
CN (1) CN101142566B (ko)
WO (1) WO2006129932A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100727057B1 (ko) * 2005-06-22 2007-06-12 엔에이치엔(주) 메시지 상태 점검 방법 및 시스템
JP4671069B2 (ja) * 2009-01-30 2011-04-13 Necインフロンティア株式会社 通信方式分散型端末収容交換機及び通信方式分散型端末制御方法
JP5460145B2 (ja) * 2009-07-01 2014-04-02 キヤノン株式会社 データ処理装置、データ処理装置の制御方法、及びプログラム
US9274594B2 (en) * 2010-05-28 2016-03-01 Microsoft Technology Licensing, Llc Cloud-based personal trait profile data
CN102625304B (zh) * 2011-01-27 2016-01-20 腾讯科技(深圳)有限公司 失效移动终端关联应用记住密码的系统、装置及方法
US10235205B2 (en) * 2012-05-24 2019-03-19 Citrix Systems, Inc. Remote management of distributed datacenters
US10843087B1 (en) * 2016-08-29 2020-11-24 Dan Cichoracki Table top game integration
US11792284B1 (en) 2017-11-27 2023-10-17 Lacework, Inc. Using data transformations for monitoring a cloud compute environment
US20220232024A1 (en) 2017-11-27 2022-07-21 Lacework, Inc. Detecting deviations from typical user behavior
US10419469B1 (en) 2017-11-27 2019-09-17 Lacework Inc. Graph-based user tracking and threat detection
US10873592B1 (en) 2019-12-23 2020-12-22 Lacework Inc. Kubernetes launch graph
US11201955B1 (en) 2019-12-23 2021-12-14 Lacework Inc. Agent networking in a containerized environment
US11188571B1 (en) 2019-12-23 2021-11-30 Lacework Inc. Pod communication graph

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000033426A (ko) * 1998-11-23 2000-06-15 윤종용 무선 호출기의 중복 메시지 경보 방법
KR20020020520A (ko) * 2000-09-09 2002-03-15 구자홍 로그인 수행을 위한 시스템의 운영 방법 및 이를 위한시스템

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997040613A1 (en) * 1996-04-24 1997-10-30 Philips Electronics N.V. Cordless telecommunications system and identification code modification process
JPH11212917A (ja) * 1998-01-29 1999-08-06 Nec Corp トランザクションリカバリ方式およびそのプログラム記録媒体
US6314449B1 (en) * 1998-08-28 2001-11-06 International Business Machines Corporation Method and system for accessing application log messages appearing in a web-based user interface in a distributed network
US6412007B1 (en) * 1999-01-14 2002-06-25 Cisco Technology, Inc. Mechanism for authorizing a data communication session between a client and a server
JP4327335B2 (ja) 2000-06-23 2009-09-09 株式会社アドバンテスト コンタクトアームおよびこれを用いた電子部品試験装置
JP2002094710A (ja) * 2000-09-12 2002-03-29 Canon Inc 情報処理システム、情報端末、配信サーバおよびそれらの制御方法
CA2325153A1 (en) * 2000-11-06 2002-05-06 Wintokens.Com Inc. A system and method for collecting consumer information
JP2002189646A (ja) * 2000-12-22 2002-07-05 Matsushita Electric Ind Co Ltd 中継装置
US7546630B2 (en) * 2003-07-17 2009-06-09 International Business Machines Corporation Methods, systems, and media to authenticate a user
US7437457B1 (en) * 2003-09-08 2008-10-14 Aol Llc, A Delaware Limited Liability Company Regulating concurrent logins associated with a single account
JP2005316634A (ja) * 2004-04-28 2005-11-10 Hitachi Ltd セッション情報保存システム及び方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000033426A (ko) * 1998-11-23 2000-06-15 윤종용 무선 호출기의 중복 메시지 경보 방법
KR20020020520A (ko) * 2000-09-09 2002-03-15 구자홍 로그인 수행을 위한 시스템의 운영 방법 및 이를 위한시스템

Also Published As

Publication number Publication date
JP4726951B2 (ja) 2011-07-20
KR20060124218A (ko) 2006-12-05
JP2008546071A (ja) 2008-12-18
US20080065879A1 (en) 2008-03-13
WO2006129932A1 (en) 2006-12-07
CN101142566B (zh) 2011-08-31
CN101142566A (zh) 2008-03-12
US8151107B2 (en) 2012-04-03

Similar Documents

Publication Publication Date Title
KR100700690B1 (ko) 중복 로그인 검출 방법 및 시스템
CN101183988B (zh) 一种识别报文对应的业务类型的方法及其装置
JP5018774B2 (ja) 監視装置、監視システム、監視方法およびプログラム
CN106506490B (zh) 一种分布式计算控制方法以及分布式计算系统
WO2018090256A1 (zh) 一种目录删除方法、装置和存储服务器
CN111447245A (zh) 一种认证方法、装置、电子设备和服务端
CN110519240A (zh) 一种单点登录方法、装置及系统
US20110264767A1 (en) Interactive processing method and apparatus between content-id management servers
CN104580237A (zh) 一种登录网站的方法以及其服务器、客户端和外设
JP6200376B2 (ja) 車載情報システム及びその情報処理方法
CN110708309A (zh) 反爬虫系统及方法
JP5573113B2 (ja) 認証代行サーバ装置、認証代行方法及びプログラム
CN109922083B (zh) 一种网络协议流量控制系统
KR100727057B1 (ko) 메시지 상태 점검 방법 및 시스템
CN107645527B (zh) 信息同步方法和装置
CN113992664B (zh) 一种集群通信的方法、相关装置及存储介质
JP2007041926A (ja) ユーザ端末判別方法
JP4653147B2 (ja) 情報機能提供システム、情報機能提供装置、情報機能提供方法および情報機能提供プログラム
JP2020095434A (ja) 通信装置、通信方法、および通信プログラム
KR101529162B1 (ko) 동기화 정보 제공 시스템 및 그 방법
CN115474234B (zh) 5g核心网网元日志收集方法、计算机设备和存储介质
CN115270110B (zh) 一种账户巡检方法、装置、电子设备和存储介质
JP4541852B2 (ja) アクセス情報管理システム、アクセス情報中継モバイル端末、アクセス情報管理方法
JP2007265053A (ja) ネットワーク利用動向調査システム、ネットワーク利用動向調査方法およびネットワーク利用動向調査プログラム
KR100455040B1 (ko) 홈 라디우스 서버 식별 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120130

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131224

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20151223

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20161227

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20181226

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 14