KR101488990B1 - 단말의 위치 정보를 제공하기 위한 시스템 및 그 방법 - Google Patents

단말의 위치 정보를 제공하기 위한 시스템 및 그 방법 Download PDF

Info

Publication number
KR101488990B1
KR101488990B1 KR20080024920A KR20080024920A KR101488990B1 KR 101488990 B1 KR101488990 B1 KR 101488990B1 KR 20080024920 A KR20080024920 A KR 20080024920A KR 20080024920 A KR20080024920 A KR 20080024920A KR 101488990 B1 KR101488990 B1 KR 101488990B1
Authority
KR
South Korea
Prior art keywords
location
server
client
sip
message
Prior art date
Application number
KR20080024920A
Other languages
English (en)
Other versions
KR20090036502A (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 삼성전자주식회사
Publication of KR20090036502A publication Critical patent/KR20090036502A/ko
Application granted granted Critical
Publication of KR101488990B1 publication Critical patent/KR101488990B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/0009Transmission of position information to remote stations
    • G01S5/0018Transmission from mobile station to base station
    • G01S5/0027Transmission from mobile station to base station of actual mobile position, i.e. position determined on mobile
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/08Mobility data transfer
    • H04W8/10Mobility data transfer between location register and external networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/08Mobility data transfer
    • H04W8/16Mobility data transfer selectively restricting mobility data tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명은 다양한 종류의 클라이언트 및 위치서버 간에 공통된 위치서비스 요청 및 응답 방법을 제공하는 방법을 제안한다. 이를 위해 본 발명은 단말과 위치서버 간에 위치 요청(Location request) 및 위치 측정(Location estimate)을 SIP(Session Initiation Protocol) 프로토콜에서 사용되는 메시지들을 이용하여 전달한다. 이렇게 함으로써, SIP 프로토콜을 사용하는 단말과 서버는 위치정보의 요청 및 응답의 전달을 쉽게 할 수 있으며, 이에 따라 위치 서비스와 연동된 새로운 서비스의 제공도 가능하게 된다.
Figure R1020080024920
SIP, 위치정보

Description

단말의 위치 정보를 제공하기 위한 시스템 및 그 방법{SYSTEM AND METHOD FOR PROVIDING LOCATION INFORMATION OF MOBILE TERMINAL}
본 발명은 위치 정보 제공 시스템 및 그 방법에 관한 것으로, 특히 SIP(Session Initiation Protocol) 프로토콜을 이용하여 단말의 위치 정보를 제공하기 위한 시스템 및 그 방법에 관한 것이다.
타겟단말기(Target Terminal)의 위치값을 알고자 하는 요청자(Client)와 위치서버 사이에 위치정보 요청과 응답에 대한 방법에 있어 다양한 방법들이 존재한다. 왜냐하면 네트워크의 종류에 따라서 각기 다른 위치정보 요청/응답 및 위치계산 과정이 존재하기 때문이다. 이런 요청/응답 방법들은 위치서버의 종류에 따라 달라지게 된다. 따라서, 하나의 클라이언트는 위치서버의 종류에 따라서 각기 다른 요청/응답 방법을 사용해야 한다. 이것은 클라이언트 단말에게 부담이 될 수 있다.
이와 같이 위치정보를 제공하기 위한 시스템의 일예로 OMA LOC(Open Mobile Alliance Location) 워킹그룹(working group)에서 사용하는 MLP(Mobile Location Protocol)를 들 수 있다. 이 MLP는 TCP/IP 네트워크를 데이터 전달망으로 하여 MLP라고 불리는 프로토콜로 위치서비스 요청 및 전달을 하는 방법이다. 주로 인터넷 통신이 되는 위치서버와 클라이언트 단말 간에 사용하는 위치정보 요청 및 응답 프로토콜이다. 이에 따라 인터넷 망에 연결된 클라이언트 단말은 MLP를 사용하여 위치서버에게 위치서비스를 요청하고 이에 대한 응답을 전달받을 수 있게 된다. 이와 같이 클라이언트 단말은 그 단말에서와 동일한 방법을 사용하는 위치서버에 한해 위치서비스를 요청하고 응답을 전달받을 수 있다.
상기한 바와 같이 네트워크의 종류에 따라 위치서버의 종류가 달라지기 때문에 하나의 단말이 각 위치서버에 해당하는 요청 및 응답 방법을 사용해야 한다면, 그 단말 입장에 있어 매우 부담이 될 수 있다. 예를 들어, WCDMA망에 존재하는 단말과 위치서버는 그 사이에 존재하는 요청 및 응답 방법을 사용해야 하며, CDMA 망에도 별도의 위치서비스 요청/응답 방법이 존재한다. 이와 마찬가지로 MLP 역시 인터넷 망에 연결된 단말과 위치서버 간의 위치서비스 요청 및 응답 방법 중의 하나이다. 만일 단말과 위치서버 모두 하나의 통일된 요청/응답 방법을 가지고 있다면 단말 입장에서는 보다 다양한 위치서버를 이용하여 위치정보를 구할 수 있을 것이다.
또한, 위치 서비스를 다른 서비스로 확장하여 적용한다면 사용자에게 보다 향상된 서비스를 제공할 수 있을 것이다. 예를 들어, 음성 통화를 할 때 동시에 단말의 위치 정보를 제공할 수 있다면 보다 향상된 실시간 음성 서비스와 멀티미디어 서비스의 제공이 가능하게 될 것이다. 이때, 음성 서비스를 제공하기 위해서는 SIP 프로토콜이 사용되는데, 그 SIP 프로토콜을 사용하는 서비스들은 대표적으로 실시간 음성 서비스와 멀티미디어 서비스가 있을 뿐, SIP 프로토콜을 다른 서비스로 확장하여 적용하기 위한 관련 표준 기술에 대해서는 구체적인 방법의 제시가 없는 실정이다.
따라서, 다양한 종류의 클라이언트와 위치서버가 자유롭게 위치정보 요청 및 응답을 전달할 수 있도록 하는 공통된 하나의 위치정보 요청 및 전달 방법이 요구되는 실정이다.
본 발명은 다양한 종류의 클라이언트 및 위치서버 간에 공통된 위치서비스 요청 및 응답 방법을 제공할 수 있도록 하는 단말의 위치 정보 제공 시스템 및 그 방법을 제공한다.
또한 본 발명은 SIP 프로토콜을 이용하여 위치서비스 요청 및 응답 방법을 제공할 수 있도록 하는 단말의 위치 정보 제공 시스템 및 그 방법을 제공한다.
상기한 바를 달성하기 위한 본 발명은, 단말의 위치 정보를 제공하기 위한 시스템에 있어서, 타겟 단말의 위치를 요청하는 위치 요청 메시지를 클라이언트로부터 수신하고, 상기 위치 요청 메시지 수신 시 상기 위치 요청 메시지에 상기 클라이언트 단말에 의해 설정된 위치요청 조건이 포함되어 있는지를 판단하고, 상기 타겟 단말의 위치정보를 산출한 후 상기 위치요청 조건이 포함되어 있는 경우 상기 위치요청 조건을 만족하는지를 판단하고, 상기 위치요청 조건을 만족하는 경우에 상기 산출된 위치정보를 포함하는 위치 응답 메시지를 상기 클라이언트 단말로 전송하는 위치서버를 포함함을 특징으로 한다.
또한 본 발명은 클라이언트 단말, 타겟 단말 및 위치서버를 포함하는 시스템에서 단말의 위치 정보를 제공하기 위한 방법에 있어서, 상기 클라이언트로부터 상기 타겟 단말의 위치를 요청하는 위치 요청 메시지를 수신하는 과정과, 상기 위치서버가 상기 수신되는 위치 요청 메시지에 상기 클라이언트 단말에 의해 설정된 위치요청 조건이 포함되어 있는지를 판단하는 과정과, 상기 위치서버가 상기 타겟 단말의 위치정보를 산출한 후 상기 위치요청 조건이 포함되어 있는 경우 상기 위치요청 조건을 만족하는지를 판단하는 과정과, 상기 위치서버가 상기 위치요청 조건을 만족하는 경우에 상기 산출된 위치정보를 포함하는 위치 응답 메시지를 상기 클라이언트 단말로 전송하는 과정을 포함함을 특징으로 한다.
또한 본 발명은 단말의 위치 정보를 제공하기 위한 시스템에 있어서, 타겟 단말에 대한 위치를 요청하는 위치 요청 메시지를 클라이언트로부터 수신하고, 상기 위치 요청 메시지 수신 시 상기 위치 요청 메시지 내에 지정된 타겟 단말의 정보를 참조하여 상기 위치 요청 메시지를 전송하는 요청 위치서버와, 상기 요청 위치서버로부터의 위치 요청 메시지를 수신하면, 상기 지정된 타겟 단말과의 위치계산에 의해 획득한 위치정보를 위치 응답 메시지를 이용하여 상기 요청 위치서버로 전송하는 홈 위치서버를 포함하고, 상기 요청 위치서버는 상기 위치 응답 메시지를 상기 클라이언트로 전달함을 특징으로 한다.
또한 본 발명은 클라이언트, 타겟 단말, 요청 위치서버 및 홈 위치서버를 포함하는 시스템에서 단말의 위치 정보를 제공하기 위한 방법에 있어서, 상기 클라이언트로부터 위치 요청 메시지 수신 시 상기 요청 위치서버가 상기 위치 요청 메시지 내에 지정된 타겟 단말의 정보를 분석하는 과정과, 상기 분석 결과를 참조하여 상기 위치 요청 메시지를 상기 지정된 타겟 단말을 관리하는 홈 위치서버로 전송하는 과정과, 상기 홈 위치서버가 상기 지정된 타겟 단말과의 위치계산에 의해 획득한 위치정보를 위치 응답 메시지를 이용하여 상기 요청 위치서버로 전송하는 과정 과, 상기 요청 위치서버가 상기 위치 응답 메시지를 상기 클라이언트로 전달하는 과정을 포함함을 특징으로 한다.
본 발명에 따르면, SIP(Session Initiation Protocol)을 이용하여 공통된 위치서비스 요청 및 응답 방법을 구현함으로써 SIP을 사용하는 클라이언트와 서버들은 위치정보 요청을 위한 별도의 프로토콜이 필요하지 않고 SIP을 그대로 이용할 수 있게 된다. 또한 본 발명에 따르면, SIP 프로토콜을 다른 서비스로 확장하여 적용하게 될 경우 SIP 프로토콜을 바탕으로 획득한 위치정보는 그 다른 서비스의 수준을 높이는데 사용될 수 있게 된다.
이하 본 발명의 바람직한 실시 예들을 첨부한 도면을 참조하여 상세히 설명한다. 도면들 중 동일한 구성 요소들은 가능한 한 어느 곳에서든지 동일한 부호들로 나타내고 있음에 유의해야 한다. 또한 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
본 발명은 다양한 종류의 클라이언트 및 위치서버 간에 공통된 위치서비스 요청 및 응답 방법을 제공하는 방법을 제안한다. 여기서, 클라이언트란 단말 또는 서버에 탑재되는 소프트웨어로서, 위치 서비스 시스템의 경우 위치서버와 연결하여 주된 작업이나 정보를 그 위치서버에게 요청하고 그 결과를 돌려받는 주체를 말한다. 따라서, 이러한 클라이언트는 위치 정보를 요청할 수 있는 요청자 역할을 할 수 있는 단말, 서버 등 다양한 종류에 탑재 가능하다.
본 발명은 클라이언트와 위치서버 간에 위치 요청(Location request) 및 위치 측정(Location estimate)을 SIP(Session Initiation Protocol) 프로토콜에서 사용되는 메시지들을 이용하여 전달한다. 이렇게 함으로써, SIP 프로토콜을 사용하는 단말과 서버는 위치정보의 요청 및 응답의 전달을 쉽게 할 수 있으며, 이에 따라 위치 서비스와 연동된 새로운 서비스의 제공도 가능하게 된다.
이하, 본 발명을 설명하기에 앞서 본 발명에서 이용되는 SIP 프로토콜에서의 메시지들을 살펴보기로 한다.
IP 망을 통해서 실시간 음성 서비스, 동영상, 텍스트, 사진 등을 단말들 간에 전달하기 위해, SIP은 그 단말들 서로의 능력(capability)을 주고받는 경우와 코덱(codec) 결정 및 망자원(network resource)의 예약 등에 이용된다. 이러한 SIP은 SIP 세션(session)을 설정하는데 이용되는데, 단말들 간에 이용할 코덱과 데이터 경로가 결정된 후 망자원 예약이 완료됨으로써 SIP 세션이 성립(Establishment)되었다고 볼 수 있다. 이와 같이 성립된 SIP 세션을 통해서 실시간 음성 서비스(Voice over IP) 및 멀티미디어 서비스가 시작되게 된다.
또한 SIP은 상대 단말에 대한 특정 정보가 필요한 경우, 상대 단말에게 메시지를 보내어, 알고자 하는 정보를 받아내는 역할을 한다. 이러한 정보를 알려주기 위한 SIP 메시지에는 SIP SUBSCRIBE, SIP NOTIFY가 있다. 먼저, SIP SUBSCRIBE는 상대 단말에게 특정 정보를 요구할 때 사용되는 SIP 메시지이며, SIP NOFIFY는 특정 정보를 상대 단말에게 전달할 때 사용되는 SIP 메시지이다.
이하, 본 발명의 실시 예에서는 SIP SUBSCRIBE와 SIP NOTIFY를 이용해서 상 대 단말의 위치 정보를 요구하고, 그 상대 단말은 위치정보를 요청 단말에게 전달하는 방법을 나타낸다.
본 발명에서 위치 정보 제공 시스템을 구성하는 엔터티들은 크게 4가지로 구분되는데, 그 시스템의 구성은 도 1에 도시된 바와 같다. 도 1에 도시된 바와 같이 그 시스템은 위치정보를 요청한 클라이언트 단말(10), SIP 코어(20), 그 요청을 받는 위치서버(Location server)(30) 및 타겟 단말(60)을 포함하여 구성된다. 우선, SIP 코어(20)는 클라이언트 단말(10)과 위치서버(30) 간에 SIP 메시지들을 전달하는 역할을 한다. 따라서, SIP 코어(20)는 클라이언트 단말(10)과 위치서버(30) 사이에 존재하고, 주고 받은 메시지들을 해당 대상에게 전달한다. 이때, SIP 코어(20)는 SIP 메시지 내에 SIP URI로 표현된 수신자 아이디를 이용해서 그 SIP 메시지를 해당 대상에게 전달할 수 있다. 이와 같이 SIP 코어의 역할과 기능은 일반적인 SIP 시스템의 동작과 같다.
먼저, 클라이언트 단말(LCS client: Location Service client)(10)은 위치서버(30)에게 특정 단말(이하, 타겟 단말(60))의 위치정보를 요구하고, 해당 위치정보를 제공받는다. 본 발명에 따른 클라이언트 단말(10)은 SIP를 이용하여 위치서버(30)에게 타겟 단말(60)의 위치정보를 요청한다. 여기서, LCS client 란 위치서비스 시스템에서 위치를 요청하는 기능을 담당하는 부분을 지칭한다. 도 1에서는 LCS client가 단말에 탑재된 경우의 클라이언트 단말을 도시하고 있지만, 이 LCS client는 타겟 단말의 위치 정보를 요청하는 요청자를 뜻하므로 서버에도 탑재될 수 있다. 이러한 LCS client가 탑재된 서버의 경우에는 위치서버(30)와 SIP을 이용 하여 통신하는 클라이언트 서버가 된다. 따라서, 도 1에서의 LCS client가 탑재된 클라이언트 단말은 클라이언트 서버로 대체될 수 있음은 물론이다. 또한, 동일한 LCS client가 단말 또는 서버에 탑재될 수 있으므로, 클라이언트 단말이 클라이언트 서버로 대체되어도 그 동작은 동일하게 된다.
이때, 클라이언트 단말(10)은 위치정보 요청 시 다양한 조건들을 위치서버(30)에 제시할 수 있다. 이 중 필수 조건들은 위치정보를 제공받을 대상 단말 아이디(1개 또는 복수개 가능), 위치정보의 정확도, 위치정보를 전달받는 리포트에 대한 조건들이다. 예를 들어, 위치정보를 전달받는 리포트에 대한 조건들로는 리포트의 횟수, 전달받을 시각 등이 조건으로 제시된다. 위치정보 요청시 사용되는 조건들은 대부분 위치정보 요청 및 응답 방법이 달라도 유사한 형태를 가진다. 따라서, 본 발명의 실시 예에서는 위치정보 요청 시 사용되는 조건들은 OMA LOC Working Group에서 사용하는 MLP(Mobile Location Protocol) v3.2에서 사용되는 조건을 사용한다.
위치서버(30)는 단말의 위치 계산 시 사용되는 대상으로, 일반적인 위치서버를 지칭하는 것으로 본 발명에서는 위치서버의 종류를 한정하지 않는다. 특히 본 발명에 따른 위치서버(30)는 요청 위치서버(Requesting Location Server)(40)와 홈위치서버(Home Location Server)(50)를 포함한다. 먼저, 요청 위치서버(40)는 클라이언트 단말(10)로부터의 위치정보 요청을 담당하는 서버이다. 이 요청 위치서버(40)는 클라이언트 단말(10)이 자신에게 가입되어 있을 경우 그 클라이언트 단말(10)의 아이디, 서비스 권한 등의 정보를 저장하고 있다. 또한, 요청 위치서 버(40)는 그 클라이언트 단말(10)과의 상호 인증을 위해서 인증키와 데이터 암호키를 저장소에 저장하고 있다. 마찬가지로 클라이언트 단말(10)도 그 요청 위치서버(40)의 아이디와, 위치정보 요청 메시지를 전달할 수 있는 컨택트 어드레스(contact address)를 가지고 있으며, 요청 위치서버(40)와의 인증을 위해 인증키와 데이터 암호키를 저장하고 있다. 여기서, 상호 인증(Authentication) 방법은 일반적인 클라이언트와 서버 간의 인증 방법을 사용하므로 본 발명에서는 구체적인 설명은 생략하기로 한다.
본 발명에 따른 요청 위치서버(40)는 클라이언트 단말(10)이 위치정보 요청을 할 수 있는 권한이 있는지를 체크한다. 이후, 인증 및 권한 검사가 완료되면 클라이언트 단말(10)로부터의 요청 메시지 내에 존재하는 타겟 단말의 아이디를 이용하여 타겟 단말의 위치 결정(positioning)을 수행하는 위치서버를 찾는다. 이때, 타겟 단말의 위치 결정을 수행하는 위치서버는 홈위치서버에 해당하는데, 요청 위치서버(40)는 홈위치서버(50)로 클라이언트 단말(10)이 보낸 위치정보 요청 메시지를 전달한다. 또한 요청 위치서버(40)는 그 요청 메시지 전달에 대응하여 그 홈위치서버(50)로부터 위치결정 결과인 위치정보가 수신되면, 이를 클라이언트 단말(10)로 전달한다.
홈위치서버(50)는 타겟 단말(60)의 위치결정을 담당하는 위치서버로, 타겟 단말(60)의 위치정보를 계산하는 역할을 한다. 이러한 홈위치서버(50)는 요청 위치서버(40) 또는 클라이언트 단말(10)로부터 타겟 단말(60)의 위치정보를 요청하는 메시지를 받은 후, 타겟 단말(60)의 위치결정 과정을 수행한다. 구체적으로 홈위치 서버(50)는 클라이언트 단말(10)의 아이디를 가지고 타겟 단말(60)의 위치를 요청할 수 있는지 권한(Authorization) 검사를 한다. 만일 클라이언트 단말(60)의 권한이 확인되면, 홈위치서버(50)는 위치정보 요청 메시지에 존재하는 타겟 단말(60)의 아이디를 파악한다. 이어, 홈위치서버(50)는 타겟 단말(60)의 아이디를 가지고 타겟 단말(60)의 데이터 경로(data path)를 체크한 후, 이 데이터 경로를 이용하여 타겟 단말(60)의 위치정보를 구할 수 있는지를 판단한다. 만일 타겟 단말(60)이 자신이 관리하는 지역에 위치할 경우 홈위치서버(50)는 타겟 단말(60)에게 위치정보 계산 시작을 알리는 메시지를 보낸다. 이 메시지는 위치정보 요청한 단말의 아이디, 위치정보의 정확도, 리포트의 전달 조건 등을 포함한다.
이와 달리 타겟 단말(60)이 홈위치서버(50)가 담당하는 지역을 벗어난 경우, 타겟 단말(60)이 있는 지역을 담당하는 다른 위치서버에게 위치요청 메시지를 전달할 수 있다. 다만, 본 발명의 실시 예에서는 홈위치서버(50)가 자신이 담당하는 지역에 위치한 타겟 단말(60)의 위치정보를 계산하는 경우를 예로 들어 설명한다. 그러나 홈위치서버(50)가 위치정보 요청 메시지를 다른 위치서버에게 전달하여 위치결정을 수행하는 경우에도 본 발명의 SIP SUBSCRIBE, SIP NOTIFY를 이용한 방법이 동일하게 적용된다. 왜냐하면 홈위치서버(50)가 타겟 단말(60)의 위치정보를 계산하는 과정은, 기존의 위치정보 계산 과정과 동일하기 때문이다.
타겟 단말(60)은 클라이언트 단말(10)이 위치정보를 알고자 하는 대상 단말이다. 이 타겟 단말(60)은 위치서버(30)로부터 위치정보를 계산하라는 요청 메시지를 전달받는다. 그러면 타겟 단말(60)은 그 요청 메시지 내의 클라이언트 단말(10) 의 아이디를 이용하여 그 요청을 허락할 것인지를 판단한다. 타겟 단말(60)은 위치정보 요청 메시지에 대한 허락 또는 반려 권한을 갖는다. 만일 그 요청을 허락하는 경우에는 타겟 단말(60)은 위치서버(30)와 함께 위치정보를 계산하기 위해 위치결정(positioning)을 수행한다. 위치 결정을 위한 구체적인 과정은 기존의 다양한 방법들이 적용될 수 있으므로, 본 발명에서는 위치 결정 과정에 대한 구체적인 설명은 생략하기로 한다.
이하에서 설명되는 본 발명의 상세한 설명에 기술된 본 발명의 실시 예들을 다음과 같이 분리하여 기술한다. 특히 본 발명에서는 SIP 프로토콜에서 이용되는 메시지들 즉, SIP 메시지들을 이용하여 어떻게 위치 요청 및 위치 정보를 실어 보낼 것인지를 다음과 같이 분리하여 기술한다.
위치 정보를 요청하고 전달받는 방법에는 여러 가지가 있을 수 있는데, 본 발명의 실시예에서는 크게 SIP SUBSCRIBE, SIP NOTIFY를 이용하는 경우와 SIP MESSAGE를 이용하는 경우로 구분하여 설명한다. 이와 같은 SIP SUBSCRIBE, SIP NOTIFY, SIP MESSAGE 등은 SIP 세션 성립 여부에 상관없이 위치정보 등의 데이터 전달이 필요할 경우에 언제든지 사용할 수 있는 메시지이다. 여기서, 대문자들로 기재된 SIP MESSAGE는 SIP 메시지들 중 하나이다.
우선, 본 발명의 일실시 예에 따라 SIP SUBSCRIBE, SIP NOTIFY를 이용하여 위치정보를 요청하고 전달받는 과정을 도 2를 참조하여 설명한다. 도 2는 본 발명의 일실시예에 따라 즉각적인 위치정보 획득 과정을 설명하기 위한 도면이다. 도 2에서는 클라이언트 단말(10)이 SIP SUBSCRIBE를 이용하여 위치서버(30)에게 위치정 보를 요청하면, 즉각적인 응답으로 위치서버(30)가 응답 메시지인 SIP NOTIFY를 이용하여 위치정보를 클라이언트 단말(10)에게 전달하는 과정을 예시하고 있다. 이하에 있어서는, LCS client가 탑재된 클라이언트 단말에서의 동작을 예로 들어 설명하나, LCS client가 탑재 가능하다면 네트워크 상의 어떤 엔터티(entity)이어도 위치정보 요청자로서 동작 가능하다. 예를 들면, LCS client가 서버에 탑재될 경우 즉, 클라이언트 서버에서의 동작도 클라이언트 단말에서의 동작과 동일하게 이루어진다. 이러한 클라이언트 서버의 동작에 대한 그 구체적인 설명은 하기 도 5에서 후술하기로 한다.
도 2를 참조하면, 클라이언트 단말(10)은 타겟 단말에 대한 위치정보를 요청하기 위해 100단계에서 위치요청을 포함하는 SIP SUBSCRIBE를 SIP 코어(20)로 전달한다. SIP SUBSCRIBE에는 타겟 단말의 위치정보 요청이 포함되며, 그 SIP SUBSCRIBE 구조의 일 예를 보이면 하기 표 1과 같다.
SUBSCRIBE sip:location_server@example.com SIP/2.0
Via: SIP/2.0/TCP client_terminal.example.com; branch=z9hG4bKwYb6QREiCL
Max-Forwards: 70
To: <sip:location_server@example.com>
From: <sip:lcs_client@example.com>;tag=ie4hbb8t
Call-ID: cdB34qLToC@client_terminal.example.com
CSeq: 322723822 SUBSCRIBE
Contact: <sip:client_terminal.example.com>
Event: location
Expires: 7200
Accept: application/MLP_svc_init+xml
Content-Length: ...

<?xml version="1.0" ?>
<!DOCTYPE svc_init SYSTEM "MLP_SVC_INIT_320.DTD">
<svc_init ver="3.2.0">

<hdr ver="3.2.0">
<client>
<id>theasp</id>
<pwd>thepwd</pwd>
<serviceid>0005</serviceid>
<requestmode type="PASSIVE"/>
</client>
<subclient last_client="YES">
<id>thelastasp</id>
<serviceid>0005</serviceid>
</subclient>
<requestor>
<id>theoriginalasp</id>
<serviceid>0005</serviceid>
</requestor>
</hdr>

<slir ver="3.2.0" res_type="SYNC">
<msids>
<msid type="IPV4">93.10.0.250</msid>
<msid_range>
<start_msid>
<msid>461018765710</msid>
</start_msid>
<stop_msid>
<msid>461018765712</msid>
</stop_msid>
</msid_range>
<msid type="ASID">441728922342</msid>
<msid_range>
<start_msid>
<msid>461018765720</msid>
</start_msid>
<stop_msid>
<msid>461018765728</msid>
</stop_msid>
</msid_range>
</msids>
<eqop>
<resp_req type="LOW_DELAY" />
<hor_acc>1000</hor_acc>
</eqop>
<geo_info>
<CoordinateReferenceSystem>
<Identifier>
<code>4004</code>
<codeSpace>EPSG</codeSpace>
<edition>6.1</edition>
</Identifier>
</CoordinateReferenceSystem>
</geo_info>
<loc_type type="CURRENT_OR_LAST" />
<prio type="HIGH" />
</slir>

</svc_init>
상기 표 1과 같은 SIP SUBSCRIBE를 받을 대상은 클라이언트 단말(10)의 위치정보 요청을 담당하는 요청 위치서버(40)이다. 따라서, 헤더 부분에는 "location_server@example.com"와 같은 주소(Request URI)가 삽입되는데, 이는 요청 위치서버의 아이디를 나타낸다. 헤더 부분의 콜 아이디(call ID) 부분에는 클라이언트 단말(10)이 생성한 "cdB34qLToC@client_terminal.example.com"와 같은 콜 아이디가 삽입된다. 그리고 헤더 부분의 이벤트(Event) 부분에는 이 SIP SUBSCRIBE가 위치서비스가 관련된 것임을 나타내기 위해 "location"이 삽입된다. 이 SIP SUBSCRIBE의 바디 부분에는 타겟 단말의 아이디와 위치정보에 대한 요구사항이 들어 있으며, 특히 바디 부분에 표현된 형식은 OMA LOC 워킹 그룹(working group)에서 다루는 MLP(Mobile Location Protocol)를 그대로 사용한다.
표 1과 같은 구조를 가지는 SIP SUBSCRIBE를 수신하게 되면, SIP 코어(20)는 105단계에서 그 SIP SUBSCRIBE를 요청 위치서버(40)로 전달한다. SIP 코어(20)는 이 SIP SUBSCRIBE 내의 주소(Request URI)를 근거로 그 SIP SUBSCRIBE를 전달받을 대상을 찾는다. 즉, SIP SUBSCRIBE 내의 요청 위치서버의 아이디를 근거로 해당 요청 위치서버를 찾을 수 있다.
이러한 SIP SUBSCRIBE를 SIP 코어(20)로부터 수신할 경우 요청 위치서버(40)는 110단계에서 클라이언트 단말(10)을 인증한 후 사용 권한 검사를 한다. 구체적으로, 요청 위치서버(40)는 클라이언트 단말(10)이 자신에 가입된 단말인지를 판단하기 위한 인증을 수행한다. 이때, 미리 저장해놓은 서로의 인증키를 이용함으로써 인증이 이루어진다. 만일 인증이 성공적일 경우 요청 위치서버(40)는 일단 115단계에서 인증이 성공적임을 알리는 SIP 200 OK를 SIP 코어(20)로 전달하면, SIP 코어(20)가 120단계에서 그 SIP 200 OK를 클라이언트 단말(10)로 전달한다. 이와 같이 요청 위치서버(40)는 SIP 200 OK를 전달함과 동시에 사용 권한 검사를 수행하게 된다. 사용 권한 검사란 클라이언트 단말(10)이 타겟 단말의 위치정보를 얻을 수 있는 권한이 있는지를 체크하는 것을 의미한다. 이때, 사용 권한 검사 방법에는 기존의 위치서버에서의 권한 판단 방법이 사용될 수 있으나, OMA LOC 워킹 그룹(working group)에서의 PCP(Privacy Check Protocol) 방법을 사용할 수도 있다.
만일 해당 권한이 있는 클라이언트 단말(10)인 경우 요청 위치서버(40)는 125단계에서 타겟 단말의 위치정보 계산을 담당하는 홈위치서버(50)에게 타겟 단말의 위치정보를 요청한다. 이때, 위치정보의 요청을 위해 사용할 수 있는 프로토콜은 네트워크에 종류에 따라 다양하나, OMA LOC 워킹 그룹(working group)에서 표준화한 RLP(Roaming Location Protocol)를 사용하여 위치정보를 요청할 수 있다. 이러한 위치정보의 요청에 대응하여 홈위치서버(30)는 타겟 단말과의 위치정보 계산 과정을 수행함으로써 위치정보를 획득하고, 130단계에서 획득한 위치정보를 요청 위치서버(40)로 전달한다. 이 위치정보 계산 과정은 기존의 다양한 방법들이 사용될 수 있으며, 본 발명에서는 구체적인 설명을 생략한다.
도 2에서는 클라이언트 단말(10)의 요청을 받는 요청 위치서버(40)와 타겟 단말의 위치정보를 처리하는 홈위치서버(50)로 위치서버를 분리하여 기술하였으나, 이 요청 위치서버(40) 및 홈위치서버(50)를 하나의 위치서버(30)로 통합시킬 수도 있다. 만일 하나로 통합된 위치서버(30)의 경우에는 클라이언트 단말(10)은 직접적으로 타겟 단말이 속한 위치서버(30)로 위치정보를 요청하고, 그 위치서버(30)는 클라이언트 단말(10)의 인증(Authentication)과 사용 권한 검사(Authorization)을 모두 담당할 수 있다. 이러한 경우, RLP를 사용한 위치정보의 요청 및 전달 과정이 필요치 않게 된다.
이어, 위치정보를 수신할 경우 요청 위치서버(40)에서는 SIP SUBSCRIBE의 응답 메시지로 SIP NOTIFY를 생성한다. 특히 SIP NOTIFY 생성 시 요청 위치서버(40)는 그 위치정보가 포함되도록 SIP NOTIFY를 생성하여 135단계에서 SIP 코어(20)로 전달한다. 그러면 SIP 코어(20)는 140단계에서 그 SIP NOTIFY를 클라이언트 단말(10)에게 전달한다.
NOTIFY sip:client_terminal.example.com SIP/2.0
Via: SIP/2.0/TCP requesting_location_server.example.com;branch=z9hG4bKna998sk
From: <sip:location_server@example.com>;tag=ffd2
To: <sip:lcs_client@example.com>;tag=ie4hbb8t
Call-ID: cdB34qLToC@client_terminal.example.com
Event: location
Subscription-State: active;expires=0
Max-Forwards: 70
CSeq: 8775 NOTIFY
Contact: <sip:requesting_location_server.example.com>
Content-Type: application/MLP_svc_result+xml
Content-Length: ...

<?xml version="1.0" ?>
<!DOCTYPE svc_result SYSTEM "MLP_SVC_RESULT_320.DTD">
<svc_result ver="3.2.0">

<slia ver="3.0.0" >
<pos>
<msid>461011334411</msid>
<pd>
<time utc_off="+0200">20020623134453</time>
<shape>
<CircularArea srsName="www.epsg.org#4326">
<coord>
<X>30 16 28.308N</X>
<Y>45 15 33.444E</Y>
</coord>
<radius>240</radius>
</CircularArea>
</shape>
</pd>
</pos>
<pos>
<msid>461018765710</msid>
<pd>
<time utc_off="+0300">20020623134454</time>
<shape>
<CircularArea srsName="www.epsg.org#4326">
<coord>
<X>30 12 28.296N</X>
<Y>86 56 33.864E</Y>
</coord>
<radius>570</radius>
</CircularArea>
</shape>
</pd>
</pos>
<pos>
<msid>461018765711</msid>
<pd>
<time utc_off="+0300">20020623110205</time>
<shape>
<CircularArea srsName="www.epsg.org#4326">
<coord>
<X>78 12 34.308N</X>
<Y>76 22 2.82E</Y>
</coord>
<radius>15</radius>
</CircularArea>
</shape>
</pd>
</pos>
<pos>
<msid>461018765712</msid>
<poserr>
<result resid="10">QOP NOT ATTAINABLE</result>
<time>20020623134454</time>
</poserr>
</pos>
</slia>

</svc_result>
상기 표 2와 같은 SIP NOTIFY를 받을 대상은 위치정보를 요청한 클라이언트 단말(10)이다. 따라서, 헤더 부분에는 "client_terminal.example.com"와 같은 주소(Request URI)가 삽입되는데, 이는 클라이언트 단말(10)의 아이디를 나타낸다. 헤더 부분의 콜 아이디(call ID) 부분에는 콜 아이디가 삽입되는데, 이 SIP NOTIFY가 클라이언트 단말(10)이 전송한 SIP SUBSCRIBE와 한쌍을 이루는 것임을 나타내기 위해 "cdB34qLToC@client_terminal.example.com"와 같은 동일한 콜 아이디가 설정된다. 표 1에서와 마찬가지로 이 SIP NOTIFY도 위치서비스와 관련된 것임을 나타내기 위해 헤더 부분의 이벤트(Event) 부분에는 "location"이 삽입된다. 특히 헤더 부분의 컨텐츠 타입(Content-Type) 부분에 삽입된 "application/MLP_svc_result+xml"은 이 SIP NOTIFY에 위치정보가 xml 형태로 포함되어 있음을 나타낸다. 따라서, 클라이언트 단말(10)에서는 SIP NOTIFY의 바디 부분을 체크하여 그 SIP NOTIFY 내의 위치정보를 획득하게 된다.
이때, 클라이언트 단말(10)이 복수개의 타겟 단말의 위치정보를 요청한 경우에는 하나의 SIP NOTIFY에 그 복수개의 위치정보가 포함될 수 있다. 상기 표 2에서의 같이 "<pos> ~ </pos>"가 3번 삽입되어 있는데, 이는 3개의 타겟 단말의 위치정보가 삽입되어 있음을 보여준다. 물론, 해당 타겟 단말과의 위치정보가 하나씩 구해질 경우에는 위치서버(30)는 그 위치정보가 구해질 때마다 SIP NOTIFY를 전달할 수도 있다.
이러한 SIP NOTIFY를 받은 클라이언트 단말(10)은 145단계 및 150단계에 걸쳐 이 SIP NOTIFY 수신에 대응하는 SIP 200 OK를 SIP 코어(20)를 통해 요청 위치서버(40)로 전달한다. SIP 200 OK의 구조는 하기 표 3과 같다.
SIP/2.0 200 OK
Via: SIP/2.0/TCP requesting_location_server.example.com;branch=z9hG4bKna998sk
;received=192.0.2.2
From: <sip:location_server@example.com>;tag=ffd2
To: <sip:lcs_client@example.com>;tag=xfg9
Call-ID: 2010@client_terminal.example.com
CSeq: 8775 NOTIFY
Content-Length: 0
위와 같이 SIP SUBSCRIBE와 SIP NOTIFY가 짝을 이루어 주고받는 형식의 경우에는 위치서버가 SIP SBUSCRIBE의 메시지를 받은 후, 이에 대한 즉각적인 응답으로 SIP NOTIFY를 보내어 위치정보가 클라이언트 단말에 제공되게 된다. 이때, 클라이언트 단말은 SIP SUBSCRIBE를 보낸 후, 타이머를 이용하여 SIP NOTIFY가 수신되기를 기다린다. 만일 미리 지정된 시간 내에 SIP NOTIFY가 수신되지 않는 경우에는 클라이언트 단말에서는 에러 처리를 수행함이 바람직하다.
전술한 바와 같이 클라이언트 단말 입장에서는 한번의 SIP SUBSCRIBE 전달에 대응하여 즉각적인 응답으로 하나의 SIP NOTIFY를 전달받게 된다. 하지만, 클라이언트 단말은 위치정보를 필요할 시점에 제공받을 수도 있다. 이를 위해 클라이언트 단말은 위치정보 요청 시 위치정보를 제공받을 조건을 위치서버에 제공한다.
이와 같이 위치서버가 SIP SUBSCRIBE를 수신한 후 이에 대한 응답 메시지인 SIP NOTIFY를 즉각적으로 보내는 대신 클라이언트 단말에서 설정한 조건을 만족할 경우에 보내는 경우를 도 3a 및 도 3b를 참조하여 설명한다. 도 3a 및 도 3b는 본 발명의 일실시예에 따라 위치요청 조건을 기반으로 한 위치정보 획득 과정을 설명하기 위한 도면이다.
도 3a를 참조하면, 클라이언트 단말(10)은 200단계에서 타겟 단말의 위치정보를 요청하기 위해 SIP SUBSCRIBE에 위치요청 조건을 포함시켜 SIP 코어(20)로 전달한다. 그러면 SIP 코어(20)는 205단계에서 그 위치요청 조건이 포함된 SIP SUBSCRIBE를 요청 위치서버(40)로 전달한다. 여기서, 위치요청 조건이란 리포트 조건을 의미하는데, 예를 들어 위치정보 리포트의 횟수(1회 보고, 또는 1회 이상 보고)와, 리포트 시간 간격(예: 1시간마다 보고) 등이 포함된다. 본 발명에서는 위치요청에서 가장 기본적인 조건만을 예시하고 있으나, 그외 다양한 조건들과 위치요청 관련 정보들이 SIP SUBSCRIBE에 포함될 수 있다. 이러한 위치요청 조건이 포함되는 SIP SUBSCRIBE의 구조를 살펴보기 위해 표 4를 참조한다.
SUBSCRIBE sip:location_server@example.com SIP/2.0
Via: SIP/2.0/TCP client_terminal.example.com; branch=z9hG4bKwYb6QREiCL
Max-Forwards: 70
To: <sip:location_server@example.com>
From: <sip:lcs_client@example.com>;tag=ie4hbb8t
Call-ID: cdB34qLToC@client_terminal.example.com
CSeq: 322723822 SUBSCRIBE
Contact: <sip:client_terminal.example.com>
Event: location
Expires: 7200
Accept: application/MLP_svc_init+xml
Content-Length: ...

<?xml version="1.0" ?>
<!DOCTYPE svc_init SYSTEM "MLP_SVC_INIT_320.DTD">
<svc_init ver="3.2.0">

<hdr ver="3.2.0">
<client>
<id>theasp</id>
<pwd>thepwd</pwd>
<serviceid>0005</serviceid>
<requestmode type="PASSIVE"/>
</client>
<subclient last_client="YES">
<id>thelastasp</id>
<serviceid>0005</serviceid>
</subclient>
<requestor>
<id>theoriginalasp</id>
<serviceid>0005</serviceid>
</requestor>
</hdr>

<slir ver="3.2.0" res_type="SYNC">
<msids>
<msid type="IPV4">93.10.0.250</msid>
<msid_range>
<start_msid>
<msid>461018765710</msid>
</start_msid>
<stop_msid>
<msid>461018765712</msid>
</stop_msid>
</msid_range>
<msid type="ASID">441728922342</msid>
<msid_range>
<start_msid>
<msid>461018765720</msid>
</start_msid>
<stop_msid>
<msid>461018765728</msid>
</stop_msid>
</msid_range>
</msids>
<interval>000030000</interval>
<start-time utc -off = "+0300">20021003112700</start-time>
<stop-time utc -off = "+0300">20021003112700</stop-time>
<eqop>
<resp_req type="LOW_DELAY" >
<hor_acc>1000</hor_acc>
</eqop>
<geo_info>
<CoordinateReferenceSystem>
<Identifier>
<code>4004</code>
<codeSpace>EPSG</codeSpace>
<edition>6.1</edition>
</Identifier>
</CoordinateReferenceSystem>
</geo_info>
<loc_type type="CURRENT_OR_LAST" />
<prio type="HIGH" />
</slir>

</svc_init>
상기 표 4에서의 SIP SUBSCRIBE는 표 2에서의 SIP SUBSCRIBE와 유사한 구조를 가지는데, 다만 표 4에서는 위치요청 조건이 더 포함되어 있는 경우를 예시하고 있다. 이러한 위치요청 조건 중의 하나로 표 4에서는 리포트 시간 간격이 설정된 경우를 예시하고 있다. 이외에도 클라이언트 단말(10)이 위치정보를 받고 싶은 시간뿐만 아니라 장소 등 다양한 조건을 설정할 수 있다.
SIP SUBSCRIBE를 수신한 요청 위치서버(40)는 210단계에서 클라이언트 단말(10)을 인증한 후, 215단계 및 220단계에 걸쳐 SIP 코어(20)를 통해 인증이 성공적임을 알리는 SIP 200 OK를 클라이언트 단말(10)로 전달한다. 그리고나서 요청 위치서버(40)는 225단계에서 홈위치서버(50)로 위치요청을 한다. 이때, OMA LOC ㅇ우워킹 그룹에서 표준화한 RLP를 사용하여 타겟 단말의 위치정보 계산을 담당하는 홈위치서버로 위치요청을 한다. 여기서, 위치요청 방법은 RLP 이외에도 네트워크의 종류에 따라 다양한 방법이 사용된다.
그러면 홈위치서버(50)는 230단계에서 클라이언트 단말(10)이 타겟 단말의 위치정보를 갖을 권한(Authorization)이 있는지 판단한다. 판단 방법은 기존의 위치서버에서의 권한 판단 방법이 있으나, OMA LOC 워킹그룹에서 하는 PCP 방법을 사용할 수 있다. 판단 결과 해당 권한이 있는 경우 홈위치서버(50)는 235단계에서 타겟 단말의 위치정보를 계산하기 시작한다. 도 3a에서는 요청 위치서버(40)가 클라이언트 단말(10)을 인증하고 홈위치서버(50)가 사용 권한 검사를 수행하는 경우를 예시하고 있지만, 홈위치서버(50)가 인증 및 사용 권한 검사 모두를 수행할 수도 있다. 또한, 타겟 단말이 요청 위치서버(40)의 가입 그룹 내에 속할 경우 요청 위치서버(40)가 도 2에서처럼 인증 및 사용 권한 검사 모두를 수행할 수 있다.
사용 권한 검사 결과로 권한이 있는 경우 홈위치서버(50)는 235단계에서 타겟 단말의 위치정보를 계산한다. 이렇게 계산된 위치정보를 클라이언트 단말(10)로 전송하기 전에 홈위치서버(50)는 240단계에서 위치요청 조건을 만족하는지를 판단한다. 이를 위해 홈위치서버(50)는 미리 요청 위치서버(40)로부터의 위치요청 시 전달된 위치요청 조건을 체크한다. 만일 위치요청 조건을 만족할 경우 홈위치서버(50)는 245단계에서 계산된 위치정보를 요청 위치서버(40)로 전달한다. 그러면 요청 위치서버(40)는 250단계에서 계산된 위치정보를 전달하기 위한 SIP NOTIFY를 생성한다. 이렇게 생성된 SIP NOTIFY는 위치정보를 포함하게 된다. 요청 위치서버(40)는 255단계에서 그 SIP NOTIFY를 SIP 코어(20)로 전달하고, 그 SIP 코어(20)는 260단계에서 이를 클라이언트 단말(10)로 전달한다. 이러한 SIP NOTIFY 수신에 대응하여 클라이언트 단말(100)은 265단계 및 270단계에서 걸쳐 SIP 코어(20)를 통해 요청 위치서버(40)에 SIP NOTIFY를 정상적으로 수신하였음을 알린다.
전술한 도 3a에서는 요청 위치서버(40)에서 홈위치서버(50)로 위치요청 조건을 제공하면 홈위치서버(50)가 위치요청 조건을 만족하는지를 판단하는 경우를 예로 들어 설명하였으나, 홈위치서버(50)로부터 계산된 위치정보가 제공되면 요청 위치서버(40)가 위치요청 조건을 만족하는지를 판단하는 경우도 가능하다. 또한, 그 위치서버들을 하나의 위치서버(30)로 구현할 경우에는 클라이언트 단말(10)이 위치정보를 리포트 받기를 원할 때에 위치서버(30)가 계산된 위치정보를 포함하는 SIP NOTIFY를 생성하여 전송한다. 다시 말하면, 클라이언트 단말(10)이 위치서버(30)에게 리포트에 해당하는 특정 조건을 제시함으로써 위치서버(30)로 하여금 그 특정 조건이 발생했을 때만 리포트를 보내라고 요구한다. 따라서, 위치서버(30)는 그 특정 조건이 발생한 경우만 SIP NOTIFY를 클라이언트 단말(10)에게 전송하기 때문에 클라이언트 단말(10) 입장에서는 위치정보를 간헐적으로 수신하게 된다. 예를 들어, 클라이언트 단말(10)이 타겟 단말의 위치정보를 주기적인 시간 간격마다 리포트받기를 원할 때, 홈위치서버(50)는 계산된 위치정보를 포함하는 SIP NOTIFY를 그 시간 간격마다 전송한다.
이에 따라 클라이언트 단말(10)은 여러 번의 위치정보 리포트를 받을 수 있게 된다. 이에 대해 도 3b에서는 클라이언트 단말(10)에서 설정한 조건에 따라 위치정보가 추가적으로 전달되는 경우를 예시하고 있다. 도 3b는 도 3a에 이어지는 과정을 도시하고 있다. 도 3b에서 275단계 내지 285단계 및 287단계 내지 297단계는 도 3a의 245단계 내지 270단계에서의 동작과 동일하다. 도 3a 및 도 3b에서는 도면부호 200a, 200b 및 200c에서와 같이 위치정보가 3차례 제공됨에 따른 각 과정들을 보여주고 있다. 이와 같이 시간이 지난 후에 요청 위치서버(40)가 위치요청 조건에 따라 타겟 단말의 위치정보를 추가적으로 전달할 경우에는, 홈위치서버(50)는 위치정보를 RLP를 통해 요청 위치서버(40)로 전달한다. 이때, 마지막으로 타겟 단말의 위치정보를 전송할 경우에는 요청 위치서버(40)에서는 SIP NOTIFY에 이 위치정보가 마지막이라는 것을 알리기 위한 정보를 설정하여 보낸다. 이에 따라 SIP NOTIFY의 헤더 부분의 만료(expire)를 0으로 지정하여 보낸다.
한편, 한번의 위치정보 요청으로, 하나의 타겟 단말에 대한 여러 번의 위치정보 리포트를 받을 수 있을 뿐만 아니라 복수개의 타겟 단말에 대한 여러 번의 위치정보 리포트를 받는 것도 가능하다. 이를 위해 클라이언트 단말은 한번의 위치정보 요청으로 즉, SIP SUBSCRIBE 전송으로 복수개의 타겟 단말의 위치정보를 위치서버에게 요청하면, 위치서버가 그 복수개의 타겟 단말들의 위치정보를 구하게 된다. 이러한 경우 위치서버는 각 타겟 단말과 위치정보 계산 과정을 개별적으로 수행해야 하므로, 위치서버가 타겟 단말들마다 위치정보를 얻는 시각이 달라지게 된다. 따라서, 위치서버는 각 타겟 단말의 위치정보를 얻는 시각마다 해당 위치정보를 SIP NOTIFY를 이용해서 클라이언트 단말에게 전달한다. 이러한 경우에 클라이언트 단말은 여러 번 SIP NOTIFY메시지를 전달받을 수 있다. 다르게는 위치서버가 각 타겟 단말의 위치정보를 모아서 하나의 SIP NOTIFY에 포함시킴으로써, 한번에 모든 타겟 단말의 위치정보를 제공하는 경우도 가능한데, 이 경우의 SIP NOTIFY의 구조는 하기 표 5와 같다.
NOTIFY sip:client_terminal.example.com SIP/2.0
Via: SIP/2.0/TCP requesting_location_server.example.com;branch=z9hG4bKna998sk
From: <sip:location_server@example.com>;tag=ffd2
To: <sip:lcs_client@example.com>;tag=ie4hbb8t
Call-ID: cdB34qLToC@client_terminal.example.com
Event: location
Subscription-State: active;expires=0
Max-Forwards: 70
CSeq: 8775 NOTIFY
Contact: <sip:requesting_location_server.example.com>
Content-Type: application/MLP_svc_result+xml
Content-Length: ...

<?xml version="1.0" ?>
<!DOCTYPE svc_result SYSTEM "MLP_SVC_RESULT_320.DTD">
<svc_result ver="3.2.0">

<slia ver="3.0.0" >
<pos>
<msid>461011334411</msid>
<pd>
<time utc_off="+0200">20020623134453</time>
<shape>
<CircularArea srsName="www.epsg.org#4326">
<coord>
<X>30 16 28.308N</X>
<Y>45 15 33.444E</Y>
</coord>
<radius>240</radius>
</CircularArea>
</shape>
</pd>
</pos>
<pos>
<msid>461018765710</msid>
<pd>
<time utc_off="+0300">20020623134454</time>
<shape>
<CircularArea srsName="www.epsg.org#4326">
<coord>
<X>30 12 28.296N</X>
<Y>86 56 33.864E</Y>
</coord>
<radius>570</radius>
</CircularArea>
</shape>
</pd>
</pos>
<pos>
<msid>461018765711</msid>
<pd>
<time utc_off="+0300">20020623110205</time>
<shape>
<CircularArea srsName="www.epsg.org#4326">
<coord>
<X>78 12 34.308N</X>
<Y>76 22 2.82E</Y>
</coord>
<radius>15</radius>
</CircularArea>
</shape>
</pd>
</pos>
<pos>
<msid>461018765712</msid>
<poserr>
<result resid="10">QOP NOT ATTAINABLE</result>
<time>20020623134454</time>
</poserr>
</pos>
</slia>

</svc_result>
상기 표 5에서의 SIP NOTIFY 구조는 상기 표 2에서의 SIP NOTIFY 구조와 유사하다. 상기 표 5에서 "<pos> ~ </pos>"가 3번 삽입되어 있는데, 이는 3개의 타겟 단말의 위치정보가 삽입되어 있음을 보여준다. 상기 표 5와 같은 구조의 SIP NOTIFY를 이용한다면 클라이언트 단말(10) 입장에서는 반복적으로 복수개의 타겟 단말의 위치정보를 획득하는 것이 가능하게 된다.
전술한 SIP SUBSCRIBE, SIP NOTIFY 이외에도 데이터 전달에 사용되는 SIP MESSAGE가 사용될 수 있다. 이러한 SIP MESSAGE를 사용하여 위치정보 요청 및 전달과정을 도 4를 참조하여 설명한다. 도 4는 본 발명의 다른 실시 예에 따른 즉각적인 위치정보 획득 과정을 설명하기 위한 도면이다. 여기 도 4에서 대문자들로 기재된 SIP MESSAGE는 SIP 메시지들 중 하나이다.
도 4를 참조하면, 클라이언트 단말(10)은 위치요청을 포함하는 SIP MESSAGE를 SIP 코어(20)로 전달하면 SIP 코어(20)는 305단계에서 그 SIP MESSAGE를 요청 위치서버(40)로 전달한다. SIP MESSAGE는 송신자의 정보를 일방적으로 상대방에게 전달할 때 사용된다. 즉, 외부로부터 정보를 보내라는 요청을 받지않은 상태에서 송신자가 스스로 자신의 정보를 제공한다는 의미이다. 위치요청은 SIP MESSAGE의 바디 부분에 추가되는데, 그 구조는 하기 표 6과 같다.
MESSAGE sip:requesting-location server@example.com SIP/2.0
Via: SIP/2.0/UDP terminal a.example.com;branch=z9hG4bKnashds8
Max-Forwards: 70
To: requesting location server <sip:requesting location server@example.com>
From: terminal A <sip:ue1@example.com>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 MESSAGE
Content-Type: application/ xml
Content-Length:256

<?xml version="1.0" ?>
<!DOCTYPE svc_init SYSTEM "MLP_SVC_INIT_320.DTD">
<svc_init ver="3.2.0">

<hdr ver="3.2.0">
<client>
<id>theasp</id>
<pwd>thepwd</pwd>
<serviceid>0005</serviceid>
<requestmode type="PASSIVE"/>
</client>
<requestor>
<id>theoriginalasp</id>
<serviceid>0005</serviceid>
</requestor>
</hdr>

<slir ver="3.2.0" res_type="SYNC">
< msids >
<msid type="IPV4">93.10.0.250</msid>
<msid_range>
<start_msid>
<msid>461018765710</msid>
</start_msid>
<stop_msid>
<msid>461018765712</msid>
</stop_msid>
</msid_range>
<msid type="ASID">441728922342</msid>
<msid_range>
<start_msid>
<msid>461018765720</msid>
</start_msid>
<stop_msid>
<msid>461018765728</msid>
</stop_msid>
</msid_range>
</msids>
<eqop>
<resp_req type="LOW_DELAY" />
<hor_acc>1000</hor_acc>
</eqop>
<geo_info>
<CoordinateReferenceSystem>
<Identifier>
<code>4004</code>
<codeSpace>EPSG</codeSpace>
<edition>6.1</edition>
</Identifier>
</CoordinateReferenceSystem>
</geo_info>
<loc_type type="CURRENT_OR_LAST" />
<prio type="HIGH" />
</slir>

</svc_init>
상기 표 6에서 "requesting-location server@example.com"는 요청 위치서버의 URI인데, 이는 SIP MESSAGE를 전달받을 상대방을 나타낸다. 또한 상기 표 6에서 "Content-Type: application/ xml"는 타겟 단말의 위치정보를 요청하는 내용이 xml 형식으로 삽입되어 있음을 나타낸다. 상기 표 6에서는 일예로 xml로 표현된 OMA MLP(Open Mobile Alliance Mobile Location Protocol)의 tandard location immediate request를 사용한다. xml 이외에도 text 또는 SDP 등으로 표현된 타겟 단말의 위치정보를 요청하는 내용을 포함시킬 수도 있다. 또한 상기 표 6에서 "<client>"로 시작하는 부분은 위치정보를 요청한 클라이언트 단말의 신원(identity)을 나타내며, "< msids >"로 시작하는 부분은 위치정보를 알고자 하는 타겟 단말의 신원을 나타낸다.
이러한 SIP MESSAGE를 수신한 요청 위치서버(40)는 전술한 바와 마찬가지로 인증 및 사용권한 검사를 하고, 315단계에서 타겟 단말이 속한 홈위치서버(50)와 타겟 단말의 위치정보 획득과정을 수행한다. 위치정보 획득 과정은 전술한 바와 동일하게 다양한 방식으로 이루어질 수 있다. 그러면 320단계에서 요청 위치서버(40)는 이렇게 획득한 위치정보를 SIP MESSAGE에 포함시킨 후, 그 SIP MESSAGE를 SIP 코어(20)로 전달한다. 이에 따라 클라이언트 단말(10)은 325단계에서 SIP 코어(20)로부터 그 SIP MESSAGE를 수신하게 되면, 그 수신된 SIP MESSSAGE 내의 바디 부분에 포함된 위치정보를 얻을 수 있게 된다. 이때, SIP MESSAGE는 클라이언트 단말이 정한 다른 단말로도 전달될 수 있다. 이때의 SIP MESSAGE의 구조는 하기 표 7과 같다.
MESSAGE sip:terminal a @example.com SIP/2.0
Via: SIP/2.0/UDP requesing location server.example.com;branch=z9hG4bKnashds8
Max-Forwards: 70
To: terminal a <sip:terminal a@example.com>
From: requesing location server<sip:r-ls@example.com>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 MESSAGE
Content-Type:xml
Content-Length:256
<pos>
<msid>caller@example.com</msid>
<pd>
<time>20020813010423</time>
<shape>
<CircularArea srsName="www.epsg.org#4326">
<coord>
<X>30 45 35.41N</X>
<Y>45 32 55.02E</Y>
</coord>
<radius>15</radius>
</CircularArea>
</shape>
</pd>
</pos>
상기 표 7에서 "terminal a @example.com"는 SIP MESSAGE를 전달받을 상대 단말 a의 URI를 나타낸다. 이 상대 단말 a의 URI를 근거로 SIP MESSAGE를 전송할 상대를 알 수 있다. 이러한 SIP MESSAGE를 이용한다면 클라이언트 단말(10)은 자신 이외에 위치정보를 전달받을 상대방을 지정할 수 있게 된다.
이와 같이 SIP MESSAGE를 위치서비스와 결합함으로써, 타겟 단말이 자신의 위치정보를 구한 후에 이를 원하는 상대에게 전달하는 리포트 서비스에 적용 가능하다. 이에 따라 클라이언트 단말(10)은 SIP MESSAGE를 이용한다면 타겟 단말의 위치정보를 요청할 수도 있으며 자신의 위치정보를 전달하는 것도 가능하게 된다. 이 경우, 두 단말 간에는 SIP 세션이 개설되어 있지 않은 상태이다. 예를 들어, SIP 프로토콜을 이용하여 대화형 음성 서비스를 사용하고 있는 두 단말이 있는데, 그 중에서 하나의 단말이 자신의 위치정보를 상대방에게 전달하고자 하는 경우를 가정한다면, 상대방은 통화 도중에 위치정보를 제공받을 수 있게 되어 대화 중인 상대의 위치를 파악하게 되고, 실감나는 대화형 음성서비스를 체험하게 된다. 또한 SIP을 이용한 멀티미디어 서비스에 위치서비스를 접목시킨다면, 예를 들어 사진을 찍은 후 이 사진에 대한 위치정보를 함께 제공하는 것이 가능하게 될 것이다. 이렇게 됨으로써, 사용자 입장에서는 음성 통화와 같은 멀티미디어 서비스를 이용하면서 위치정보를 제공받을 수 있어 한층 발전된 서비스를 제공받을 수 있게 된다.
한편, 도 5에서는 클라이언트 서버(60)가 SIP SUBSCRIBE를 이용하여 위치서버(30)에게 위치정보를 요청하면, 즉각적인 응답으로 위치서버(30)가 응답 메시지인 SIP NOTIFY를 이용하여 위치정보를 클라이언트 서버(60)에게 전달하는 과정을 예시하고 있다. 도 5에서의 클라이언트 서버(60)는 SIP 어플리케이션 서버를 포함할 수도 있다. 이와 달리 SIP 어플리케이션 서버가 별도로 구현된 경우에는 클라이언트 단말이 위치 요청을 SIP 어플리케이션 서버로 전송하면, SIP 코어(20)를 통해 위치서버(30)로 위치정보가 전달되도록 위치정보 시스템이 구현될 수도 있다.
도 5에서는 클라이언트 서버(60)가 SIP 코어(20)를 통해 위치서버(30)로 위치정보를 요청하고, 그 요청에 대응한 위치정보를 획득하는 과정을 도시하였으나, 클라이언트 서버(60)가 SIP 어플리케이션 서버를 포함할 수 있기 때문에, 도 5의 클라이언트 서버(60)는 SIP 어플리케이션 서버로 대체될 수 있다. 이러한 클라이언트 서버(60)는 클라이언트 단말(10)에서와 마찬가지로 위치를 요청하는 부분에 해당하므로, 그 동작이 클라이언트 단말(10)과 동일하다. 따라서, 도 5의 500단계 내지 550단계는 도 2의 100단계 내지 150단계에서와 동작과 동일하며, 다만 위치정보 요청의 주체가 클라이언트 단말(10)이 아닌 클라이언트 서버(60)를 나타낸다.
전술한 본 발명의 일실시예 및 본 발명의 다른 실시예에서는 클라이언트와 타켓 단말 간의 데이터 전달에 사용되는 SIP 메시지들로서, 예컨대, SIP SUBSCRIBE, SIP NOTIFY, SIP MESSAGE 등을 사용하는 경우를 예로 들어 설명하였으나, 다르게는 클라이언트와 타겟 단말 간 데이터를 주고 받는데 사용되는 메시지 세션 전송 프로토콜 세션(MSRP: Message Session Relay Protocol) 프로토콜을 사용할 수도 있다. 또한, 이러한 클라이언트로는 단말, 서버 이외에도 LCS client가 탑재 가능한 네트워크 상의 엔터티이면 모두 클라이언트로서 동작 가능하다.
한편, 전술한 도 1에서는 위치서버에 요청 위치서버와 홈위치서버가 포함된 경우의 시스템 구성을 설명하였으나, 본 발명의 또다른 실시예에 따른 위치 정보 제공 시스템을 구성하는 엔터티들은 도 6에서와 같이 구현될 수도 있다.
도 6에서는 요청 위치서버(40)와 홈위치 서버(50)가 개별적으로 분리되어 존재하여 SIP 코어2(45)를 통해 통신이 이루어짐을 예시하고 있다. 클라이언트 단말(10)은 SIP 코어(20)를 통해 요청 위치서버(40)와 메시지를 주고받으며, 요청 위치서버(40)와 홈위치서버(50)도 서로 간에 SIP 코어2(45)를 통해 메시지를 주고 받는다. 타겟 단말의 위치요청을 위해서 우선 클라이언트 단말(10)은 위치 요청 메시지를 SIP 코어(20)를 통해 요청 위치서버(40)로 전달한다. 이때, 본 발명의 또다른 실시예에 따르면 클라이언트 단말(10)은 위치 요청 메시지에 그 메시지를 전달한 상대 단말을 지정한 정보를 포함시켜 전송할 수 있다. 도 6에서는 하나의 타겟 단말(60)이 도시되어 있으나, 클라이언트 단말(10)이 위치 요청 메시지를 전달할 타겟 단말을 복수개 지정하는 경우에는 그 복수개의 홈 위치서버와 타겟 단말이 각각 쌍을 이루어 존재하게 된다.
이하, 도 7을 참조하여 타겟 단말의 위치정보를 획득하는 과정을 설명하기로 한다.
도 7을 참조하면, 700단계 및 705단계에서 클라이언트 단말(10)은 위치 요청 메시지로 SIP SUBSCRIBE를 이용하며, 이를 SIP 코어(20)를 통해 요청 위치서버(40)로 전달한다. 이러한 SIP SUBSCRIBE 구조의 일례는 하기 표 8과 같다.
SUBSCRIBE sip:target terminal ID @example.com SIP/2.0
Via: SIP/2.0/TCP client_terminal.example.com; branch=z9hG4bKwYb6QREiCL
Max-Forwards: 70
To: <sip:location_server@example.com>
From: <sip:lcs_client@example.com>;tag=ie4hbb8t
Call-ID: cdB34qLToC@client_terminal.example.com
CSeq: 322723822 SUBSCRIBE
Contact: <sip:client_terminal.example.com>
Event: location
Expires: 7200
Accept: application/MLP_svc_init+xml
Content-Length: ...
상기 표 8에서 상대 단말을 지정하기 위해 위치 요청 메시지인 SIP SUBSCRIBE의 Request URI로서 타겟 단말의 ID가 삽입된다. 여기서, 클라이언트 단말(10)과 요청 위치서버(40)는 SIP을 기반으로 메시지를 주고 받으므로 위치 요청 메시지에 삽입되는 타겟 단말의 ID는 SIP URI 형태로 삽입된다. 그리고 "event"가 "location"으로 설정된 경우에는 SIP 코어(20)에서는 SIP SUBSCRIBE의 용도를 파악할 필요없이 SIP SUBSCRIBE를 무조건 요청 위치서버(40)로 전달한다. 설정된 경우에는 또한 상기 표 1에서는 SIP SUBSCRIBE의 바디 부분에는 타겟 단말의 아이디와 위치정보에 대한 요구사항이 들어 있지만, 상기 표 8에서는 헤더 부분에 타겟 단말이 직접 지정되어 있기 때문에 있으며 바디 부분이 불필요하다.
이러한 SIP SUBSCRIBE를 수신하면 요청 위치서버(40)는 클라이언트 단말(10)에 대한 인증 및 권한 검사를 수행한다. 이어, 요청 위치서버(40)는 710단계 및 751단계에서 위치 요청에 대한 인증이 성공적임을 알리는SIP 200 OK 메시지를 SIP 코어(20)를 통해 클라이언트 단말(10)로 전달한다. 이와 함께 요청 위치서버(40)는 SIP SUBSCRIBE를 수신하면, SIP SUBSCRIBE의 헤더 부분에명시된 타겟 ID를 참조함으로써 그 SIP SUBSCRIBE를 전달할 타겟 단말을 파악한다. 이와 같이 타겟 단말을 파악하게 되면 그 파악된 타겟 단말을 관리하는 홈 위치서버도 알 수 있게 된다. 이에 따라 요청 위치서버(40)는 720단계 및 725단계에서 SIP SUBSCRIBE를 SIP 코어2(45)를 통해 타겟 단말을 관리하는 홈 위치서버(50)로 전달한다.
만일 타겟 단말이 복수개 지정된(designated) 경우에는 지정된 타겟 단말을 관리하는 홈 위치서버에도 SIP SUBSCRIBE를 전달해야 한다. 도 7에서는 타겟 단말이 2개 지정된 경우에 위치 요청 과정을 예시한다. 이에 따라 요청 위치서버(40)는 730단계 및 735단계에서 나머지 다른 타겟 단말을 관리하는 홈 위치서버2(55)로도 SIP 코어2(45)를 통해 SIP SUBSCRIBE를 전달한다. 이에 대응하여 홈 위치서버(50) 및 홈 위치서버2(55)는 자신이 관리하는 타겟 단말과의 위치계산 과정을 수행함으로써 위치정보를 획득한다. 740단계 내지 755단계에서 이렇게 획득한 위치정보를 홈 위치서버(50)과 홈 위치서버2(55)는 위치응답 메시지로서 각각SIP NOTIFY를 이용하여 SIP 코어2(45)를 통해 요청 위치서버(40)로 전달하게 된다. 이어, 도 7의 760단계 내지 775단계는 도 2의 135단계 내지 150단계에서와 동일하게 이루어진다.
이하, 도 8을 참조하여 반복적으로 또는 정해진 시간 등 클라이언트 단말(10)에서 지정한 위치요청조건에 대응하여 위치정보 과정을 설명하기로 한다.
도 8을 참조하면, 클라이언트 단말(10)은 800단계 및 805단계에서 SIP 코어(20)를 통해 요청 위치서버(40)로 SIP SUBSCRIBE를 전달한다. 이때, SIP SUBSCRIBE는 클라이언트 단말(10)에서 지정한 위치요청 조건을 포함한다. 이러한 위치요청 조건은 도 3a에서 설명한 바와 같다. 다만, 그 위치요청 조건이 포함되는 SIP SUBSCRIBE는 그 SIP SUBSCRIBE의 헤더에 타겟 단말의 ID가 SIP URI 형태로 삽입되며, 바디부분에 위치요청 조건이 삽입되는 구조를 가진다. 또한 위치정보를 알고자 하는 타겟 단말이 여러 개일 경우 하나의 타겟 단말의 ID 대신 복수 타겟 단말을 지칭하는 그룹 URI가 대신 삽입된다.
이러한 구조를 가지는 SIP SUBSCRIBE는 도 7에서와 같이 "event"로서 "location"이 설정되기 때문에 바로 요청 위치서버(40)로 전달된다. 이에 따라 요청 위치서버(40)는 클라이언트 단말(10)을 인증한 후, 810단계에서 수신된 SIP SUBSCRIBE를 분석하여 타겟 단말을 파악한다. 즉, 그 SIP SUBSCRIBE를 어느 타겟 단말로 전송할지를 결정한다. 이를 위해 요청 위치서버(40)는 SIP SUBSCRIBE 내에 삽입된 타겟 단말의 ID를 근거로 그 ID를 가지는 타겟 단말을 식별한다. 만일 SIP SUBSCRIBE 내에 그룹 URI가 삽입되어 있는 경우에는 요청 위치서버(40)는 별도의 데이터베이스를 참조하여 그 그룹에 해당하는 타겟 단말 ID들을 검색한다. 이렇게함으로써 요청 위치서버(40)는 검색된 타겟 단말 ID들에 해당하는 타겟 단말들을파악할 수 있게 된다. 삽입된 이에 따라 요청 위치서버(40)는 825단계 및 830단계에서 파악된 타겟 단말이 있는 홈 위치서버(50)로 SIP 코어2(45)를 통해 SIP SUBSCRIBE를 전달한다. 도 8에서는 하나의 타겟 단말로 위치 요청을 하는 경우를 예로 들어 설명하므로, 복수개의 홈 위치서버를 도시하지 않는다.
한편, 위치요청 조건을 포함하는 SIP SUBSCRIBE를 수신한 홈 위치서버(50)는 자신에게 속한 타겟 단말과의 위치계산을 수행하여 위치정보를 획득한다. 그리고나서 835단계에서 홈 위치서버(50)는 위치요청 조건을 만족하는지를 판단한다. 만일 위치요청 조건을 만족하는 경우에 840단계 및 845단계에서 SIP 코어2(45)를 통해 요청 위치서버(40)로 SIP NOTIFY를 이용하여 위치정보를 전달한다. 그러면 요청 위치서버(40)도 850단계 및 855단계에서 SIP NOTIFY를 이용하여 위치정보를 SIP 코어(20)를 통해 클라이언트 단말(10)로 전달한다. 이에 대응하여 요청 위치서버(40)는 860단계 및 865단계에서 SIP 코어(20)를 통해 클라이언트 단말(10)로부터 SIP NOTIFY 전달에 대응한SIP 200 OK 메시지를 수신함으로써 위치정보의 전달이 정상적으로 이루어졌다고 판단한다.
한편, 홈 위치서버(50)에서는 870단계에서와 같이 한번의 위치정보 전달만으로 위치계산 과정을 종료하는 것이 아니라 반복적인 리포트 조건으로서 위치요청 조건이 설정되어 있는 경우 리포트 조건을 근거로 반복적으로 위치계산 및 위치정보 전달을 수행한다. 이에 따라 870단계 및 897단계는 830단계 및 865단계에서의 동작과 동일하게 이루어지며 추가적인 위치정보의 전달 과정을 나타낸다.
도 1은 본 발명의 실시 예에 따른 위치정보 제공 시스템의 구성도,
도 2는 본 발명의 일실시예에 따라 클라이언트 단말에서 즉각적인 위치정보 획득 과정을 설명하기 위한 도면,
도 3a 및 도 3b는 본 발명의 일실시예에 따라 위치요청 조건을 기반으로 한 위치정보 획득 과정을 설명하기 위한 도면,
도 4는 본 발명의 다른 실시 예에 따른 즉각적인 위치정보 획득 과정을 설명하기 위한 도면,
도 5는 본 발명의 일실시예에 따라 클라이언트 서버에서 즉각적인 위치정보 획득 과정을 설명하기 위한 도면,
도 6은 본 발명의 또 다른 실시 예에 따른 위치정보 제공 시스템의 구성도,
도 7은 본 발명의 또 다른 실시 예에 따라 타겟 단말의 위치정보 획득 과정을 설명하기 위한 도면,
도 8은 본 발명의 또 다른 실시 예에 따라 위치요청 조건 기반의 타겟 단말의 위치정보 획득 과정을 설명하기 위한 도면.

Claims (27)

  1. 단말의 위치 정보를 제공하기 위한 시스템에 있어서,
    타겟 단말의 위치를 요청하는 위치 요청 메시지를 클라이언트로부터 수신하고, 상기 위치 요청 메시지 수신 시 상기 위치 요청 메시지에 상기 클라이언트 에 의해 설정된 위치요청 조건이 포함되어 있는지를 판단하고, 상기 타겟 단말의 위치정보를 산출한 후 상기 위치요청 조건이 포함되어 있는 경우 상기 위치요청 조건을 만족하는지를 판단하고, 상기 위치요청 조건을 만족하는 경우에 상기 산출된 위치정보를 포함하는 위치 응답 메시지를 상기 클라이언트로 전송하는 위치서버를 포함하고,
    상기 위치서버는 세션 설정용 프로토콜을 지원하는 코어를 통해 상기 클라이언트로부터 상기 위치 요청 메시지를 수신하고,
    상기 위치서버는 상기 코어를 통해 상기 위치 응답 메시지를 상기 클라이언트로 전송함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  2. 제1항에 있어서,
    상기 위치 요청 메시지는 SIP SUBSCRIBE이며, 상기 위치 응답 메시지는 SIP NOTIFY인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  3. 제1항에 있어서, 상기 위치서버는,
    상기 위치 요청 메시지에 상기 위치요청 조건이 포함되어 있지 않은 경우 상기 타겟 단말의 위치정보가 산출될 때 산출된 위치정보를 상기 위치 응답 메시지에 포함시켜 전송함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  4. 삭제
  5. 제1항에 있어서, 상기 위치서버는,
    상기 위치 요청 메시지 수신 시 상기 클라이언트를 인증한 후 상기 타겟 단말의 위치를 사용할 권한이 있는지를 검사하고, 상기 인증이 성공적일 경우 인증이 성공적임을 알리는 메시지를 상기 클라이언트로 전송하는 요청 위치서버(Requesting Location server)와,
    상기 요청 위치서버로부터 상기 타겟 단말의 위치요청이 전달되면, 상기 타겟 단말과 위치결정 과정을 수행함으로써 상기 타겟 단말의 위치정보를 산출하고, 상기 산출된 위치정보를 상기 요청 위치서버로 전송하는 홈위치서버(Home location server)를 포함하고,
    상기 요청 위치서버는 상기 홈위치서버로부터 상기 산출된 위치정보가 전달되면 상기 산출된 위치정보를 포함하는 상기 위치 응답 메시지를 생성함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  6. 제1항에 있어서, 상기 위치요청 조건은,
    상기 위치정보를 전달받는 횟수, 전달받을 시각 중 적어도 하나를 포함함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  7. 제1항에 있어서,
    상기 위치 요청 메시지 및 상기 위치 응답 메시지는 SIP MESSAGE인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  8. 클라이언트, 타겟 단말 및 위치서버를 포함하는 시스템에서 단말의 위치 정보를 제공하기 위한 방법에 있어서,
    상기 클라이언트로부터 상기 타겟 단말의 위치를 요청하는 위치 요청 메시지를 수신하는 과정과,
    상기 위치서버가 상기 수신되는 위치 요청 메시지에 상기 클라이언트에 의해 설정된 위치요청 조건이 포함되어 있는지를 판단하는 과정과,
    상기 위치서버가 상기 타겟 단말의 위치정보를 산출한 후 상기 위치요청 조건이 포함되어 있는 경우 상기 위치요청 조건을 만족하는지를 판단하는 과정과,
    상기 위치서버가 상기 위치요청 조건을 만족하는 경우에 상기 산출된 위치정보를 포함하는 위치 응답 메시지를 상기 클라이언트로 전송하는 과정을 포함하고,
    상기 위치서버는 세션 설정용 프로토콜을 지원하는 코어를 통해 상기 클라이언트로부터 상기 위치 요청 메시지를 수신하고,
    상기 위치서버는 상기 코어를 통해 상기 위치 응답 메시지를 상기 클라이언트로 전송함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  9. 제8항에 있어서,
    상기 위치 요청 메시지는 SIP SUBSCRIBE이며, 상기 위치 응답 메시지는 SIP NOTIFY인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  10. 제8항에 있어서,
    상기 위치 요청 메시지에 상기 위치요청 조건이 포함되어 있지 않은 경우 상기 위치서버가 상기 타겟 단말의 위치정보가 산출되는지 판단하는 과정과,
    상기 위치서버가 상기 위치정보가 산출되면 바로 산출된 위치정보를 상기 위치 응답 메시지에 포함시켜 전송하는 과정을 더 포함함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  11. 제8항에 있어서,
    상기 위치서버가 상기 위치 요청 메시지 수신 시 상기 클라이언트를 인증한 후 상기 타겟 단말의 위치를 사용할 권한이 있는지를 검사하는 과정과,
    상기 인증이 성공적일 경우 인증이 성공적임을 알리는 메시지를 상기 클라이언트로 전송하는 과정을 더 포함함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  12. 제8항에 있어서, 상기 위치요청 조건은,
    상기 위치정보를 전달받는 횟수, 전달받을 시각 중 적어도 하나를 포함함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  13. 제8항에 있어서,
    상기 위치 요청 메시지 및 상기 위치 응답 메시지는 SIP MESSAGE인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  14. 제1항에 있어서, 상기 클라이언트는,
    클라이언트 단말 또는 클라이언트 서버인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  15. 제14항에 있어서, 상기 클라이언트 서버는,
    SIP 어플리케이션 서버를 포함함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  16. 제8항에 있어서, 상기 클라이언트는,
    클라이언트 단말 또는 클라이언트 서버인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  17. 제16항에 있어서, 상기 클라이언트 서버는,
    SIP 어플리케이션 서버를 포함함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  18. 단말의 위치 정보를 제공하기 위한 시스템에 있어서,
    타겟 단말에 대한 위치를 요청하는 위치 요청 메시지를 클라이언트로부터 수신하고, 상기 위치 요청 메시지 수신 시 상기 위치 요청 메시지 내에 지정된 타겟 단말의 정보를 참조하여 상기 위치 요청 메시지를 전송하는 요청 위치서버와,
    상기 요청 위치서버로부터의 위치 요청 메시지를 수신하면, 상기 지정된 타겟 단말과의 위치계산에 의해 획득한 위치정보를 위치 응답 메시지를 이용하여 상기 요청 위치서버로 전송하는 홈 위치서버를 포함하고,
    상기 요청 위치서버는 상기 위치 응답 메시지를 상기 클라이언트로 전송하고,
    상기 요청 위치서버는 세션 설정용 프로토콜을 지원하는 코어를 통해 상기 클라이언트로부터 상기 위치 요청 메시지를 수신하고,
    상기 요청 위치서버는 상기 코어를 통해 상기 위치 응답 메시지를 상기 클라이언트로 전송함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  19. 제18항에 있어서,
    상기 위치 요청 메시지는 SIP SUBSCRIBE이며, 상기 위치 응답 메시지는 SIP NOTIFY인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  20. 제18항에 있어서,
    상기 요청 위치서버와 상기 홈 위치서버는 SIP 코어를 통해 메시지를 주고 받는 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  21. 제18항에 있어서, 상기 지정된 타겟 단말의 정보는,
    상기 지정된 타겟 단말의 ID 또는 그룹 URI인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  22. 단말의 위치 정보를 제공하기 위한 시스템에 있어서,
    타겟 단말에 대한 위치를 요청하는 위치 요청 메시지를 클라이언트로부터 수신하고, 상기 위치 요청 메시지 수신 시 상기 위치 요청 메시지 내에 지정된 타겟 단말의 정보를 참조하여 상기 위치 요청 메시지를 전송하는 요청 위치서버와,
    상기 요청 위치서버로부터의 위치 요청 메시지를 수신하면, 상기 지정된 타겟 단말과의 위치계산에 의해 획득한 위치정보를 위치 응답 메시지를 이용하여 상기 요청 위치서버로 전송하는 홈 위치서버를 포함하고,
    상기 요청 위치서버는 상기 위치 응답 메시지를 상기 클라이언트로 전송하고,
    상기 지정된 타겟 단말의 정보가 그룹 URI인 경우, 상기 요청 위치서버는 상기 그룹 URI에 해당하는 하나 이상의 타겟 단말을 관리하는 각각의 홈 위치서버로 상기 위치 요청 메시지를 전송함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 시스템.
  23. 클라이언트, 타겟 단말, 요청 위치서버 및 홈 위치서버를 포함하는 시스템에서 단말의 위치 정보를 제공하기 위한 방법에 있어서,
    상기 클라이언트로부터 위치 요청 메시지 수신 시 상기 요청 위치서버가 상기 위치 요청 메시지 내에 지정된 타겟 단말의 정보를 분석하는 과정과,
    상기 분석 결과를 참조하여 상기 위치 요청 메시지를 상기 지정된 타겟 단말을 관리하는 홈 위치서버로 전송하는 과정과,
    상기 홈 위치서버가 상기 지정된 타겟 단말과의 위치계산에 의해 획득한 위치정보를 위치 응답 메시지를 이용하여 상기 요청 위치서버로 전송하는 과정과,
    상기 요청 위치서버가 상기 위치 응답 메시지를 상기 클라이언트로 전달하는 과정을 포함하고,
    상기 요청 위치서버는 세션 설정용 프로토콜을 지원하는 코어를 통해 상기 클라이언트로부터 상기 위치 요청 메시지를 수신하고,
    상기 요청 위치서버는 상기 코어를 통해 상기 위치 응답 메시지를 상기 클라이언트로 전송함을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  24. 제23항에 있어서, 상기 위치 요청 메시지는 SIP SUBSCRIBE이며, 상기 위치 응답 메시지는 SIP NOTIFY인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  25. 제23항에 있어서, 상기 요청 위치서버로부터의 위치 요청 메시지 및 상기 홈 위치서버로부터의 위치 응답 메시지는 SIP 코어를 통해 송수신되는 것임을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  26. 제23항에 있어서, 상기 지정된 타겟 단말의 정보는,
    상기 지정된 타겟 단말의 ID 또는 그룹 URI인 것을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
  27. 클라이언트, 타겟 단말, 요청 위치서버 및 홈 위치서버를 포함하는 시스템에서 단말의 위치 정보를 제공하기 위한 방법에 있어서,
    상기 클라이언트로부터 위치 요청 메시지 수신 시 상기 요청 위치서버가 상기 위치 요청 메시지 내에 지정된 타겟 단말의 정보를 분석하는 과정과,
    상기 분석 결과를 참조하여 상기 위치 요청 메시지를 상기 지정된 타겟 단말을 관리하는 홈 위치서버로 전송하는 과정과,
    상기 홈 위치서버가 상기 지정된 타겟 단말과의 위치계산에 의해 획득한 위치정보를 위치 응답 메시지를 이용하여 상기 요청 위치서버로 전송하는 과정과,
    상기 요청 위치서버가 상기 위치 응답 메시지를 상기 클라이언트로 전달하는 과정을 포함하고, 상기 지정된 타겟 단말을 관리하는 홈 위치서버로 전송하는 과정은,
    상기 지정된 타겟 단말의 정보가 그룹 URI인 경우 상기 요청 위치서버가 상기 그룹 URI에 해당하는 하나 이상의 타겟 단말을 관리하는 각각의 홈 위치서버로 상기 위치 요청 메시지를 전송하는 과정임을 특징으로 하는 단말의 위치 정보를 제공하기 위한 방법.
KR20080024920A 2007-10-09 2008-03-18 단말의 위치 정보를 제공하기 위한 시스템 및 그 방법 KR101488990B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20070101495 2007-10-09
KR1020070101495 2007-10-09
KR20070108457 2007-10-26
KR1020070108457 2007-10-26

Publications (2)

Publication Number Publication Date
KR20090036502A KR20090036502A (ko) 2009-04-14
KR101488990B1 true KR101488990B1 (ko) 2015-02-12

Family

ID=40761488

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20080024920A KR101488990B1 (ko) 2007-10-09 2008-03-18 단말의 위치 정보를 제공하기 위한 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR101488990B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101638314B1 (ko) * 2014-12-31 2016-07-11 주식회사 이루온 위치 정보 수집 방법 및 서버

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060253567A1 (en) * 2005-05-04 2006-11-09 Nokia Corporation System and method for utilizing a sip events framework to deliver syndication feeds
KR20070019531A (ko) * 2005-08-11 2007-02-15 엘지전자 주식회사 이동통신 시스템에서의 주기적인 위치추적 방법
KR20070078369A (ko) * 2006-01-26 2007-07-31 엘지전자 주식회사 위치정보 시스템에서의 단말간 트리거 위치 서비스요청방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060253567A1 (en) * 2005-05-04 2006-11-09 Nokia Corporation System and method for utilizing a sip events framework to deliver syndication feeds
KR20070019531A (ko) * 2005-08-11 2007-02-15 엘지전자 주식회사 이동통신 시스템에서의 주기적인 위치추적 방법
KR20070078369A (ko) * 2006-01-26 2007-07-31 엘지전자 주식회사 위치정보 시스템에서의 단말간 트리거 위치 서비스요청방법

Also Published As

Publication number Publication date
KR20090036502A (ko) 2009-04-14

Similar Documents

Publication Publication Date Title
US8275894B2 (en) System and method for providing location information of a terminal
KR101417001B1 (ko) 위치 정보 제공 시스템 및 그 방법
KR101278323B1 (ko) PoC 시스템에서 애드 혹 PoC 세션 개설을 위한방법과 단말장치 및 그 시스템
KR100815562B1 (ko) Sip 기반의 세션 처리를 수행하는 단말장치 및 이를이용한 세션 협상 요청 송/수신 방법
US7904521B2 (en) Method for transferring chat messages by establishing chat room data transfer channel
KR101276462B1 (ko) PoC 사용자 미디어 전송 권리 요청과 부여를 위한 방법및 시스템
KR101458634B1 (ko) 사전 설정 세션을 관리하기 위한 방법 및 이를 구현하기위한 PoC 시스템과 PoC 단말
RU2477014C2 (ru) Способ группового оповещения в службе обмена сообщениями на основе протокола инициации сеанса связи &#34;sip&#34;
US20060271636A1 (en) Push-to-transfer (PTX) content from remote site
US20060235981A1 (en) Providing a second service to a group of users using a first service
US8417266B2 (en) Location based service system
JP5456006B2 (ja) マルチメディア通話サービスを遂行するためのマルチメディアセッション開設及び管理のためのサーバ
US8379544B2 (en) Communications
JP2007534247A (ja) グループ招待
KR101488990B1 (ko) 단말의 위치 정보를 제공하기 위한 시스템 및 그 방법
EP1839419B1 (en) Method and system for deleting floor in poc system
KR101773183B1 (ko) 통신 시스템에서 세션 히스토리 송수신 방법
JP2009514277A (ja) メディア共有
WO2015176746A1 (en) A method and apparatus for establishing an additional session to an anonymous user
EP2273807A1 (en) Method, system, server and client for implementing relative condition evaluation
KR101421302B1 (ko) 클라이언트의 위치 정보 제공 방법 및 시스템
JP2010204903A (ja) 認証システム、認証方法、および仮パスワード発行装置
Costa-Requena et al. Application of spatial location information to SIP
KR101689196B1 (ko) 통신 시스템에서 세션 히스토리 송수신 방법
Tseng et al. InterWorking Function for Mission Critical Push to Talk Services

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
FPAY Annual fee payment

Payment date: 20171228

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181227

Year of fee payment: 5