이하, 본 발명의 실시 예에 대한 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시될 수 있으므로 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 것이다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 실시예에 따른 이동통신단말기 측위 장치의 구조를 나타내는 도면이고, 도 2는 도 1의 이동통신망의 예시도이며, 도 3은 도 1의 측위 서버의 구조를 나타내는 도면이다. 또한, 도 4는 도 1의 pCell DB 구조를 나타내는 도면이며, 도 5는 도 1의 WLAN 서버의 DB 구조를 나타내는 도면이다.
도 1 내지 도 5에 도시된 바와 같이, 본 발명의 실시예에 따른 이동통신단말기 측위 장치는 액세스포인트(110)(이하, AP(Access Point)라 함), 이동통신망(130), 측위 서버(150), 노드 정보 기반 서버(160, 170) 및 무선랜(WLAN) 서버(180)를 포함한다. 또한 측위 장치는 이동통신단말기(100), 유선통신망(140) 및 LBSP(190)를 더 포함할 수 있다. 여기서, 노드 정보 기반 서버(160, 170)는 예컨대 기지국 정보 등의 무선환경정보를 저장 및 관리하는 ILIS 서버(Integrated LBS Indoor Solution Server)(160) 및 장치관리 서버(170)의 일부 또는 전부를 포함할 수 있으며, 기지국에 대한 위·경도 좌표값을 제공할 수 있다면 다른 다양한 서버 또는 장치도 가능할 것이다.
본 발명의 실시예에서 이동통신단말기(100)는 다양한 유무선 환경에 적용할 수 있도록 PDA(Personal Digital Assistant), 스마트폰, 셀룰러폰, PCS(Personal Communication Service)폰, GSM(Global System for Mobile)폰, W-CDMA(Wideband CDMA)폰, CDMA-2000폰, MBS(Mobile Broadband System)폰 등을 포함할 수 있다. 여기서 MBS폰은 현재 논의되고 있는 차세대 시스템에서 사용될 이동통신단말기(100)를 나타낸다. 더 나아가, 본 발명의 실시예에 따른 이동통신단말기(100)는 개인용 컴퓨터(PC: Personal Computer), 노트북 등을 더 포함할 수 있을 것이다.
이동통신단말기(100)는 무선통신 모듈, 무선랜 모듈을 포함하며, GPS 모듈을 더 포함할 수 있다. 무선통신 모듈을 구비함에 따라 이동통신단말기(100)는 이동통신망(130)에 접속하여 상대방과 통상적인 음성 통화 및 데이터 통신을 수행한다. 또한 이동통신단말기(100)는 무선랜 모듈을 구비함에 따라 주변에 인식되는 AP(110)를 경유해 유선통신망(140)에 접속하여 각종 웹 페이지 데이터를 수신할 수 있다. 더 나아가, 이동통신단말기(100)는 GPS 모듈의 구비 여부에 따라 GPS 단말기(101) 및 비GPS 단말기(102)로 구분될 수 있으며, GPS 모듈을 구비하는 경우 GPS 위성(120)을 통해 제공되는 데이터를 수신한다.
이동통신단말기(100)는 인터넷 접속 프로토콜인 무선 애플리케이션(WAP: Wireless Application Protocol), HTTP 프로토콜을 사용하는 HTML에 기반한 MIE(Microsoft Internet Explorer), 핸드헬드 디바이스 트랜스포트 프로토콜(HDPT: Handheld Device Transport Protocol), NTT DoKoMo사의 i-Mode 또는 특정 통신사의 무선 인터넷 접속용 브라우저를 이용해 이동통신망(130)을 경유하여 인터넷에 접속한다. 이동통신단말기(100)에서 사용하는 인터넷 접속 프로토콜 중에서, MIE는 HTML을 약간 변형시켜 축약하는 m-HTML을 사용하고, i-Mode의 경우에는 HTML의 서브세트인 콤팩트 HTML(c-HTML)이라는 언어를 사용한다.
최근의 스마트폰과 같은 이동통신단말기(100)는 더욱 빠른 무선 인터넷을 제공하기 위하여 아이폰용인 오페라미니(Opera Mini)와 같은 특정 통신사의 무선 인터넷 접속용 브라우저를 사용하거나, 이와 연계해 이동통신단말기(100)에 근거리 통신망인 와이파이 및 와이브로(WiBro) 등도 함께 사용하여 무선 초고속 인터넷을 제공하고 있다.
이동통신단말기(100)는 측위 서버(150)로부터의 측위 요청에 따라 네트워크 기반 측위 또는 핸드셋 기반 측위를 수행한다. 예를 들어, 이동통신단말기(100)는 네트워크 기반 측위를 수행하기 위하여 GPS 정보, 기지국 정보 및 AP 정보를 이동통신망(130)을 경유하여 측위 서버(150)로 제공할 수 있다. 이와 같이 네트워크 기반 측위를 수행할 때, 이동통신단말기(100)와 측위 서버(150) 간에는 특정 규격의 측위 프로토콜 메시지를 사용한다. 여기서, 측위 프로토콜이란 이동통신단말기(100)의 측위를 위한 애플리케이션 계층의 규격을 표준화한 규약이다.
예를 들면 비동기식(WCDMA) 망의 경우 GPS 신호의 수신이 가능한 GPS 단말기(101)는 측위 서버(150)에서 요청한 측위 정보, 가령 GPS 정보, 기지국 정보 및 AP 정보를 제공하기 위하여 SUPL(Secure User Plane Location) 메시지를 이용하고, GPS 신호의 수신이 불가능한 비GPS 단말기(102)는 측위 서버(150)에서 요청된 측위 정보, 가령 기지국 정보 및 AP 정보를 제공하기 위하여 PCAP(Positioning Calculation Application Part) 메시지를 이용한다. 만약, 동기식(CDMA) 망의 경우라면 GPS 단말기(101)는 IS-801(Interim Standard-801) 메시지를 이용하여 측위 정보를 측위 서버(150)로 제공하며, 비GPS 단말기(102)는 PSM(Pilot Strength Measurement) 메시지를 이용하여 측위 정보를 측위 서버(150)로 제공한다. 여기서, GPS 단말기(101)는 SUPL 및 IS-801 이외에도 RRLP(Radio Resource Location Services Protocol), RRC(Radio Resource Control) 등 다양한 측위 프로토콜을 이용할 수 있으므로 그러한 측위 프로토콜에 특별히 한정하지는 않을 것이다.
동기식인 경우 GPS 단말기(101)가 IS-801 메시지를 통해 측위 서버(150)로 제공하는 측위 정보는 현재 서비스 중인 시스템 정보, 인접 기지국의 파일롯 신호, 신호 세기(Ec/lo) 등을 포함한다. 여기서, 시스템 정보는 예컨대 SID(System ID), NID(Network ID), BSID(Base Station ID) 및 현재 서비스 중인 기지국 섹터 번호(Ref_PN), Ref_PN 내의 파일롯 페이즈와 신호 세기 등을 포함한다. 또한 인접 기지국의 파일롯 신호는 GPS 단말기(101)로부터 수집되는 인접 기지국 섹터 번호(Measurement PN), 각 인접 기지국 섹터 번호 내의 파일롯 페이즈 및 신호 세기 등을 포함한다. 만약, 비동기식이라면 GPS 단말기(101)가 SUPL 메시지를 통해 제공하는 측위 정보는 MCC(Mobile Country Code), MNC(Mobile Network Code), UC-ID, PSC(Primary Scrambling Code), RSCP(Received Signal Code Power), 신호 세기(Ec/No), 시스템 프레임 넘버(SFN) 간 관찰 시간차(observed time difference) 또는 GPS 단말기(101)의 송수신(RX-TX) 간 시간차 등의 데이터일 수 있으므로, 본 발명의 실시예에서는 이에 한정하지 않고 다른 모든 통신 시스템에 이용되는 측위 관련 데이터를 포함할 수 있다. 물론 비GPS 단말기(102) 역시 GPS 단말기(101)가 측위 서버(150)로 제공하는 측위 정보와 거의 동일한 측위 정보를 PCAP 메시지 또는 PSM 메시지를 통해 측위 서버(150)로 제공한다.
GPS 단말기(101)가 측위 서버(150)의 요청에 따라 SUPL 또는 IS-801 메시지를 이용해 측위를 수행하게 되면, SUPL 메시지와 같은 측위 메시지(이하, 제1 측위 메시지라 함)는 도 2에서 볼 때 이동통신망(130)을 구성하는 가령, NodeB(200), RNC(210) 및 MSC/VLR(220) 등 각각의 네트워크 노드들을 무사 통과하여 호 처리되고, 반면 비GPS 단말기(102)가 PCAP 또는 PSM 메시지를 이용하여 측위를 수행하게 되면, PCAP 메시지와 같은 측위 메시지(이하, 제2 측위 메시지라 함)는 각각의 네트워크 노드들을 모두 경유하여 호 처리되기 때문에 제1 측위 메시지는 제2 측위 메시지에 비해 그만큼 빠르게 호 처리될 수도 있다.
AP(110)는 건물 내에 많이 설치되는 펨토(femto) 또는 피코(pico) 기지국과 같은 소형 기지국을 포함한다. 여기서, 펨토 또는 피코 기지국은 소형 기지국의 분류상 이동통신단말기(100)를 최대 몇 대까지 접속할 수 있느냐에 따라 구분된다. 또한 AP(110)는 이동통신단말기(100)와 와이파이(Wi-Fi) 등의 근거리 통신을 수행하기 위한 근거리 통신 모듈을 포함한다. 본 발명의 실시예에서 근거리 통신은 와이파이 이외에 블루투스 통신, 지그비(zigbee) 통신, 적외선 통신(IrDA), UHF(Ultra High Frequency) 및 VHF(Very High Frequency)와 같은 RF(Radio Frequency) 및 초광대역 통신(UWB) 등의 다양한 규격으로 수행될 수 있다. 이에 따라 AP(110)는 데이터 패킷의 위치를 추출하고, 추출된 위치에 대한 최상의 통신 경로를 지정하며, 지정된 통신 경로를 따라 데이터 패킷을 다음 장치, 예컨대 이동통신단말기(100)로 전달할 수 있다. AP(110)는 일반적인 네트워크 환경에서 여러 회선을 공유할 수 있으며, 예컨대 라우터(router), 리피터(repeater) 및 중계기 등이 포함될 수 있다. 또한, 케이티(KT)의 에그 또는 미국 버라이즌의 마이파이(MiFi)와 같은 특정 제조사의 브리지 제품도 AP(110)에 포함될 수 있을 것이다.
AP(110)는 크게 고정형 AP(111) 및 이동형 AP(112)로 구분된다. 고정형 AP(111)에는 라우터(router), 리피터(repeater) 및 중계기 등이 포함될 수 있으며, 이동형 AP(112)에는 예컨대 케이티(KT)의 에그와 같은 특정 제조사의 브리지 제품이 포함된다. 이러한 이동형 AP(112)는 자유로운 이동성을 보장하면서, 가령 유선통신망(140)을 통해 전송된 송신측 정보로부터 이동통신단말기(100) 등의 수신측 주소를 읽어 가장 적절한 통신 경로를 지정한 후 전송할 수 있다.
이와 같은 AP(110)들이 도 1에서는 이동통신망(130)과 별개로 구성되는 것으로 도시되어 있지만, 실질적으로 AP(110)는 이동통신망(130)에 포함될 수 있으므로 본 발명의 실시예에서는 이에 특별히 한정하지는 않을 것이다.
이동통신망(130)은 WCDMA 망의 경우, 도 2에 도시된 바와 같이 중계기(미도시), NodeB(200), RNC(Radio Network Controller)(210), MSC(Mobile Switching Center)/VLR(Visitor Location Register)(220) 및 SGSN(Serving GPRS Support Node)(240)을 포함할 수 있다. 여기서, RNC(210)는 NodeB(200)와 MSC/VLR(220)간 또는 NodeB(200)와 SGSN(240) 간 음성 또는 데이터 호를 중계하는 역할을 한다. 물론, WCDMA 망에서의 NodeB(200) 및 RNC(210)는 CDMA 망의 경우 BTS(Base Station Transmission System), BSC(Base Station Controller)로 각각 지칭된다. 또한 EPC(Evolved Packet Core) 망에서는 진화된 기지국(e-NodeB) 및 이동성관리엔터티(MME)로 지칭될 수 있는데, MME는 WCDMA 망에서의 RNC(210) 및 MSC/VLR(220)이 통합된 형태로서 RNC(210) 및 MSC/VLR(220)의 역할을 거의 동일하게 수행한다. 그러므로 본 발명의 실시예에 따른 이동통신망(130)은 CDMA 망에 한정되는 것이 아니라 GSM 망 및 LTE(Long Term Evolution) 망 등을 통칭하는 것이라 할 수 있다.
NodeB(200)는 예를 들어 각각 셀(cell) 단위로 배치되어 있고, 신호 채널 중 트랙픽(traffic) 채널을 통해 이동통신단말기(100)로부터의 통화 요청 신호를 수신하고, 수신된 통화 요청 신호를 RNC(210)로 전송하거나 자신이 관할하는 셀 영역에 존재하는 이동통신단말기(100)의 위치를 파악하는 위치 등록을 수행한다. 또한 NodeB(200)는 이동통신단말기(100)와 직접적으로 연결되는 망 종단(endpoint) 장치로서 기저 대역 신호 처리, 유무선 변환, 무선 신호의 송수신 등을 수행한다. NodeB(200)는 자신의 셀 영역에 존재하는 이동통신단말기(100)가 만약 수신측에 해당되는 경우라면 이동통신단말기(100)의 위치를 파악한 후 MSC/VLR(220)로부터 RNC(210)를 통하여 전달되는 통화 요청 신호를 전송한다.
또한 NodeB(200)는 GPS 위성(120)으로부터의 신호를 이용하여 자신이 위치한 위·경도 등의 정보를 얻을 수 있으며, 이러한 NodeB(200)의 위치 정보를 순방향 링크 호출 채널의 시스템 파라미터 메시지를 통하여 이동통신단말기(100)로 전달하거나 장치관리 서버(170)로 전달할 수 있다. 이동통신단말기(100)는 자신이 속해 있는 셀의 NodeB(200)의 위치 정보를 이용하여 이동통신단말기(100) 자신의 이동 거리를 계산함으로써 새로운 위치 정보를 등록할 수도 있다. 여기서, 위치 등록은 이동통신단말기(100)의 위치, 상태, 식별자, 슬롯 주기 및 그 밖의 다른 특징들을 NodeB(200)를 통하여 MSC/VLR(220)에 알리는 처리 절차로서, NodeB(200)가 이동통신단말기(100)로 수신신호를 설정하고자 할 때 이동통신단말기(100)를 효과적으로 호출할 수 있도록 하는 절차이다. 이러한 이동통신단말기(100)의 위치 등록은 이동통신단말기(100)의 전원을 온(ON) 또는 오프(OFF)할 때, 이동통신단말기(100)가 MSC/VLR(220) 간을 이동할 때, 그리고 이동통신단말기(100)의 파라미터가 변경되는 경우에 실시될 수 있다.
RNC(210)는 NodeB(200)를 제어하며, 이동통신단말기(100)에 대한 무선 채널 할당 및 해제, 이동통신단말기(100) 및 NodeB(200)의 송신 출력 제어, 셀간 소프트 핸드오프(Soft Handoff) 및 하드 핸드오프(Hard Handoff) 결정, 트랜스코딩(Transcoding) 및 보코딩(Vocoding), GPS 클럭 분배, NodeB(200)에 대한 운용 및 유지 보수 기능을 수행한다. 또한 RNC(210)는 위치 등록된 이동통신단말기(100)의 가입자 정보를 MSC/VLR(220)로 전송한다. RNC(210)는 이동통신단말기(100)로부터 NodeB(200)를 통해 전달된 통화 요청 신호를 MSC/VLR(220))로 전달하며, 반대로 RNC(210)는 MSC/VLR(220)로부터 전달된 통화 요청 신호를 NodeB(200)를 통해 이동통신단말기(100)로 전달하는 역할을 한다.
MSC/VLR(220)은 기본 및 부가 서비스 처리, 가입자의 수신 및 발신 호 처리, 위치 등록 절차 및 핸드오프 절차 처리, 타 망과의 연동 기능 등을 수행한다. 예를 들어, IS-95/A/B/C 시스템의 MSC/VLR(220)은 분산된 호 처리의 기능을 수행하는 ASS(Access Switching Subsystem), 집중화된 호 처리 기능을 수행하는 INS(Interconnection Network Subsystem), 운용 및 보전의 집중화 기능을 담당하는 CCS(Central Control Subsystem), 이동 가입자에 대한 정보의 저장 및 관리 기능을 수행하는 LRS(Location Registration Subsystem) 등의 서브 시스템을 포함한다. 또한 3 세대 및 4 세대를 위한 MSC/VLR(220)에는 ATM(Asynchronous Transfer Mode) 스위치가 포함될 수 있는데, ATM 스위치는 셀 단위의 패킷 전송으로 전송 속도와 회선 사용의 효율을 증대시킨다. 이러한 MSC/VLR(220)은 NodeB(200) 및 RNC(210)를 통하여 이동통신단말기(100)의 위치 등록이 수행되면, MSC/VLR(220)에 이동통신단말기(100)의 가입자 정보를 임시 저장한 후, HLR(230)로 이동통신단말기(100)의 위치 등록을 요청한다.
HLR(230)은 MSC/VLR(220)로부터 이동통신단말기(100)의 위치정보를 전송받아 등록 인식, 등록 삭제, 위치 확인 등의 기능을 수행한다. 또한 HLR(230)에는 통화 대기 중인 이동통신단말기(100)의 프로파일 정보가 저장되어 있다. 여기서, 프로파일 정보란 이동통신단말기(100)의 MIN(Mobile Identification number), ESN(Electronic Serial Number) 및/또는 가입된 이동통신서비스 정보 등을 말한다. MSC/VLR(220)은 위치 정보 등록이 수행되는 방문 가입자의 위치 정보, 송신측 이동통신단말기(100)에서 송신의 경우, 수신측 이동통신단말기(100)로의 수신 등의 경우에 가입자 데이터를 MSC/VLR(220)로부터 전달받아 저장한다. MSC/VLR(220)은 이동통신단말기(100)가 위치 정보 등록을 수행할 때, 가입자 정보를 임시로 저장하여 HLR(230)로 통보를 하며 HLR(230)로부터 이동통신단말기(100)의 단말 식별 번호, 단말기 고유 번호 및 서비스 정보 등의 복사본을 넘겨받아 관리하면서 이동통신단말기(100)의 위치 제어, 호 처리, 외부 동작 처리 등에 활용하는 기능을 수행한다.
SGSN(240)은 GGSN(Gateway GPRS Support Node)을 포함할 수 있다. SGSN(240)은 GPRS(General Packet Radio Service) 서비스를 위하여 이동통신단말기(100)의 이동성 관리, 발/착신호 처리 절차 및 패킷 데이터의 송수신을 처리하기 위한 세션(Session) 관리, 인증 및 과금 기능 등을 지원한다. 또한 패킷 데이터의 라우팅 처리 기능을 가진다. 여기서, GGSN은 GPRS를 위한 고속의 패킷 데이터 서비스를 제공하는 IP 기반 패킷망의 서빙 노드(Serving Node)로서, 패킷 데이터 서비스를 위한 세션 관리 및 패킷 데이터의 라우팅 처리 기능을 하고 이동통신망(130)과 인터넷망 등의 유선통신망(140)을 연결하는 인터페이스를 제공하며, GPRS는 384 Kbps의 데이터 전송 속도를 지원하고 멀티미디어 메일을 제공하며, 패킷 단위의 데이터 전송으로 전송 회선의 효율을 극대화하기 위한 비동기 방식의 통신 시스템이다.
측위 서버(150)는 도 1 및 도 3에 도시된 바와 같이 이동통신망(130), ILIS 서버(160), 장치관리 서버(170), WLAN 서버(180) 및 LBSP(190)에 연동한다. 측위 서버(150)는 LBSP(190)로부터 측위 요청이 있는 경우, 핸드셋 기반 측위 또는 네트워크 기반 측위를 위하여 이동통신단말기(100)에 대한 측위를 요청하고, 이동통신단말기(100)로부터의 측위 정보로서 GPS 정보, AP 정보 및 기지국 정보의 일부 또는 전부를 수신하며, 수신한 측위 정보와 WLAN 서버(180)에서 제공하는 무선랜 정보, 노드 정보 기반 서버(160, 170)에서 제공하는 가령 기지국 정보 등의 무선환경정보를 이용하여 WLAN 서버(180)의 DB(180a)에 저장된 무선랜 정보의 각각의 AP(110)에 대한 이동성을 판별한다.
다시 말해, 측위 서버(150)는 무선랜 정보로서 WLAN 서버(180)의 DB(180a)에 저장된 각각의 AP(110)에 대한 이동성을 판별하기 위하여 첫째, 이동통신단말기(100)에 대한 측위 요청시 제공되는 예컨대 기지국 정보와 WLAN 서버(180)의 DB(180a)에 저장된 AP(110)의 무선랜 정보를 이용하여 AP(110)와 NodeB(200) 간 거리를 계산하고 그 결과값에 따라 AP(110)의 이동성을 판단하는 방법, 둘째, 이동통신단말기(100)가 GPS 측위에 성공하였다면 해당 이동통신단말기(100)의 GPS 측위 결과를 활용하여 이동통신단말기(100)와 AP(110) 간 거리를 계산하고 그 결과값에 따라 AP(110)의 이동성을 판단하거나 또는 GPS 측위 결과의 차이만으로 AP(110)의 이동성을 판단하는 방법을 이용한다. 여기서, GPS 측위 결과의 차이란 가령 GPS 측위 결과로서 제공된 측위 정보의 AP 정보, 예컨대 MAC 어드레스를 기준으로 측위 정보의 나머지 측위 정보로서 GPS 정보 가령 이동통신단말기(100)의 위경도 좌표값을 서로 비교하였더니 변화가 있었다면 해당 AP(110)에 이동이 있었던 것으로 판단하는 것이다. 이러한 비교 정보는 AP 정보를 기준으로 GPS 정보가 아닌 기지국 정보일 수도 있을 것이다. 첫째 방법은 다시 ILIS 서버(160)에서 제공하는 가령 기지국 정보 등의 무선환경정보에 근거하여 AP(110)와 NodeB(200) 간 거리를 계산하는 방법과 장치관리 서버(170)에서 제공하는 무선환경정보에 근거하여 AP(110)와 NodeB(200) 간 거리를 계산하는 방법으로 구분된다. 여기서, ILIS 서버(160)는 인접하는 기지국 정보를 활용하여 기지국의 위·경도 좌표값을 결정할 수 있기 때문에 장치관리 서버(170)에서 제공하는 기지국 정보에 비해 좀더 정확한 위치 정보를 가질 수 있다. 가령, 측위 서버(150)에서 측위 요청 후 이동통신단말기(100)에서 제공한 기지국 정보가 하나이거나 ILIS 서버(160)의 pCell DB(160a)에 없는 기지국 정보인 경우에는 장치관리 서버(170)로부터 제공하는 NodeB(200)의 위·경도 좌표값을 이용하여 AP(110)의 이동성을 판단할 수 있고, 반면 이동통신단말기(100)에서 제공한 측위 정보가 인접 기지국 정보를 포함하여 가령 3개 이상일 때 ILIS 서버(160)에서 제공하는 기지국(200)의 위·경도 좌표값을 이용하여 AP(110)의 이동성을 판단할 수 있을 것이다.
측위 서버(150)는 이와 같은 과정을 통해 무선랜 정보로서 WLAN 서버(180)의 DB(180a)에 저장된 복수의 AP(110)에 대하여 이동형 AP(112)로 판별한 경우, WLAN 서버(180)로 해당 AP(110)들에 대한 삭제를 요청하여 DB(180a)를 고정형 AP(111) 기반으로 갱신하도록 한다. 물론 이때 특정 AP(110)가 한번 이동했다는 이유로 WLAN 서버(180)의 DB(180a)에서 삭제하게 되면 측위에 활용될 AP(110)의 개수가 적어지기 때문에 본 발명의 실시예에 따른 측위 서버(150)는 특정 AP(110)에 대하여 몇회 이상 장소가 계속 해서 바뀌었는지를 판단하고 판단결과에 따라 해당 AP(110)들에 대한 삭제를 요청하여 DB(180a)를 고정형 AP(111) 기반으로 갱신할 수도 있을 것이다. 이를 위하여 가령 DB(180a)에는 몇 회에 걸쳐 이동이 발생하였는지를 나타내는 결과값을 추가로 저장할 수 있을 것이다. 이와 같이 측위 서버(150)는 WLAN 서버(180)의 DB(180a)에 저장된 무선랜 정보가 고정형 AP(111)를 기반으로 구축되도록 함으로써, 예컨대 친구 찾기와 같은 서비스 가입자의 서비스 요청시 측위 결과로서 이동통신단말기(100)에 대한 GPS 측위 결과를 기반으로 하여 제공해 주거나, GPS 신호가 수신되지 않는 GPS 음영지역의 경우에는 ILIS 서버(160)로부터 제공되는 기지국 기반의 측위 결과를 제공할 수 있으며, 나아가 측위 서버(150)는 WLAN 서버(180)에 저장된 후 갱신된 고정형 AP(111)의 AP 정보를 기반으로 측위 결과를 제공할 수 있다.
위와 같은 동작을 수행하기 위하여 측위 서버(150)는 도 3에 도시된 바와 같이 호 처리부(300) 및 이동형 AP 판별부(310)를 포함할 수 있다. 호 처리부(300)는 ILIS 서버(160), 장치관리 서버(170), WLAN 서버(180) 및 LBSP(190)와 연동하여 호 처리를 수행한다. 또한 이동형 AP 판별부(310)는 가령 호 처리부(300)를 경유하여 제공될 수 있는 측위 요청된 이동통신단말기(100)에 대한 측위 정보, WLAN 서버(180)에 저장된 무선랜 정보 및 노드 정보 기반 서버(160, 170)의 무선환경정보를 이용하여 무선랜 정보로서 WLAN 서버(180)에 저장된 AP(110)들에 대한 이동성 여부를 판단한 후 WLAN 서버(180)에 저장된 무선랜 정보를 갱신하도록 한다.
예를 들어, 이동형 AP 판별부(310)는 메모리부(311), 이동성 판단부(313) 및 연산부(315)를 포함할 수 있다. 메모리부(311)는 측위 요청된 이동통신단말기(100)로부터의 측위 정보, ILIS 서버(160) 및 노드 정보 기반 서버(160, 170)에서 제공하는 NodeB(200) 등의 무선환경정보 및 WLAN 서버(180)에서 제공하는 무선랜 정보를 수신하여 저장한다. 여기서, 무선환경정보는 NodeB(200)의 위·경도 좌표값을 포함하고, 무선랜 정보는 AP(110)의 위·경도 좌표값을 포함할 수 있다. 더 나아가, 메모리부(311)는 연산부(315)에서 계산한 계산값, 즉 NodeB(200)와 AP(110) 간 거리값 또는 이동통신단말기(100)와 AP(110) 간 거리값이 일정 거리 이상인지를 비교할 수 있는 비교값을 저장한다. 여기서, 일정 거리는 NodeB(200)가 이동통신단말기(100)와 통신을 수행하기 위한 통신 최대 가능 범위를 나타낼 수 있으며, 이는 지역마다 서로 다르게 설정될 수 있으므로 본 발명의 실시예에서는 이에 특별히 한정하지는 않을 것이다.
이동성 판단부(313)는 메모리부(311)에 저장된 측위 정보 중 가령 AP(110)의 MAC 어드레스가 무선랜 정보에 있는 MAC 어드레스와 일치하는지를 우선적으로 판단한다. 만약 일치하는 경우 이동성 판단부(313)는 연산부(315)에서 제공하는 거리 계산값을 메모리부(311)에 기저장된 비교값과 비교하여 거리 계산값의 크기가 비교값보다 크거나 같은지를 비교한다. 비교 결과, 크거나 같을 경우 이동성 판단부(313)는 판단 결과를 WLAN 서버(180)에 제공하여 DB(180a)에 저장된 해당 AP(110)의 무선랜 정보를 삭제하도록 한다.
연산부(315)는 메모리부(311)에 저장된 즉 GPS 정보로부터 측위 요청된 이동통신단말기(100)에 대한 위·경도 좌표값을 산출하고, 이동통신단말기(100)에 대한 위·경도 좌표값과 메모리부(311)에 저장된 AP(110)의 위·경도 좌표값을 이용하여 이동통신단말기(100)와 AP(110) 간 거리를 계산한 후 계산값을 이동성 판단부(313)에 제공한다. 또한 연산부(315)는 메모리부(311)에 저장된 AP(110) 및 NodeB(200)의 위·경도 좌표값을 이용하여 AP(110)와 NodeB(200) 간 거리를 계산한 후 계산값을 이동성 판단부(313)에 제공한다.
예를 들어, 도 3의 이동형 AP 판별부에서 처리되는 정보는 <표 1>과 같다. <표 1>에 나타낸 바 있는 모든 정보는 측위 서버(150)의 메모리부(311)에 저장될 수 있다. 여기서, 무선랜 정보 및 제1 기지국 정보는 WLAN 서버(180)에서 제공된 정보이고, 제2 기지국 정보는 노드 정보 기반 서버(160, 170)에서 제공된 정보이며, 거리 계산값은 무선랜 정보의 위·경도 좌표값과 제2 기지국 정보의 위·경도 좌표값을 이용해 연산부(315)에서 계산한 결과값을 나타낸다.
예를 들어, AP(110)와 NodeB(200) 각각의 위·경도 좌표값을 이용하여 거리를 계산한 결과, <표 1>에서와 같이 6,200 m와 같은 계산값이 존재했다면, 이는 최초 설치된 AP(110)의 위치가 아니라, AP(110)가 이동된 것으로 판단할 수 있다.
가령, 메모리부(311)에 저장된 비교값이 300 m에 해당된다면 이동성 판단부(313)는 6,200 m에 해당되는 거리 계산값을 비교값과 비교한 후 해당 AP(110)에 이동이 있었던 것으로 판단한 후, WLAN 서버(180)의 DB(180a)에 저장된 해당 AP(110)에 대한 무선랜 정보를 삭제하도록 하여 WLAN 서버(180)의 DB(180a)를 고정형 AP(111) 기반으로 갱신하도록 할 수 있다.
ILIS 서버(160)는 도 4에 도시된 바와 같이 pCell 측위에 이용되는 pCell DB(160a)를 더 포함한다. pCell DB(160a)는 매번 측위된 측위 결과인 측위 결과 데이터를 기본 데이터로서 pCell ID별로 구분된 격자 셀을 저장한다. 여기서, 격자 셀은 특정 지역을 기 설정된 사이즈로 구분한 셀이며, 특정 지역에 위치하는 NodeB(200)에 대한 기지국 섹터 번호(Reference PN) 및 PSC(Primary Scrambling Code)를 근거로 하는 pCell ID 등을 포함한다. 예를 들어, 격자 셀은 100x100, 50x50, 30x30, 25x25, 20x20, 10x10 및 5x5 등으로 설정될 수 있다. 이러한 기본 데이터와 함께 기본 데이터를 대표할 수 있는 기준 데이터도 저장할 수 있다. 여기서, 기준 데이터는 pCell 측위시 패턴 정합성을 고려하여 비교되는 데이터로서 측위 정확도에 큰 영향을 끼치는 데이터이며 pCell DB(160a)를 갱신할 때 갱신되는 데이터이다. ILIS 서버(160)의 pCell DB(160a)는 측위 결과 데이터를 각각의 셀마다 정의한다. 각각의 셀은 현재 서비스 중인 시스템의 정보, 인접 기지국의 파일롯 신호, 신호 세기(Ec/lo) 등을 더 포함한다. 여기서, 현재 서비스 중인 시스템 정보는 앞서 언급한 대로 SID, NID, BSID, Ref_PN, Ref_PN 내의 파일롯 페이즈, 신호 세기 등을 포함한다.
이와 같은 pCell DB(160a)는 데이터베이스 관리 프로그램(DBMS)을 이용하여 컴퓨터 시스템의 저장공간 가령 하드디스크 또는 메모리에 구현된 일반적인 데이터 구조를 의미하는 것으로 데이터의 검색 혹은 추출, 삭제, 편집, 추가 등을 자유롭게 행할 수 있는 데이터 저장 형태를 뜻하는 것으로 오라클(Oracle), 인포믹스(Infomix), 사이베이스(Sybase), DB2와 같은 관계형 데이타베이스 관리 시스템(RDBMS)이나 겜스톤(Gemston), 오리온(Orion), O2 등과 같은 객체 지향 데이타베이스 관리 시스템(OODBMS) 및 엑셀론(Excelon), 타미노(Tamino), 세카이주(Sekaiju) 등의 XML 전용 데이터베이스(XML Native Database)를 이용하여 구현될 수 있고, 자신의 기능을 달성하기 위하여 적당한 필드(Field) 또는 엘리먼트(element)들을 가질 수 있을 것이다.
장치관리 서버(170)는 이동통신망(130)의 운용 장비의 관리를 위한 데이터베이스(Base Station Almanac: BSA)를 관리한다. 즉 복수의 NodeB(200) 및 NodeB(200)을 관장하는 중계기 등에 대한 무선환경정보를 저장하며, 측위 서버(150)의 요청시 해당 무선환경정보를 제공할 수 있다. 또한 장치관리 서버(170)는 NodeB(200)의 수용 변경이 발생하게 될 때 NodeB(200)의 변경에 따른 기지국 정보 등의 무선환경정보를 저장한다.
WLAN 서버(180)는 도 1의 AP(110)에 대한 무선랜 정보들이 저장되는 DB(180a)를 포함한다. 여기서, DB(180a)는 도 5에 도시된 바와 같이 1차 DB 및 2차 DB로 구분될 수 있다. 1차 DB는 예컨대 이동형 차량 등을 이용하여 전지역에 걸쳐 기설치된 AP(110)들에 대한 위치 등의 무선랜 정보를 고정형 및 이동형에 대한 구분없이 수집한 후 pCell ID별로 구분된 격자 셀에 매칭시켜 놓은 DB를 나타내며, 2차 DB는 1차 DB의 무선랜 정보를 가공하여 MAC 어드레스별로 구분하여 테이블 형태로 정리해 놓은 DB를 나타낸다. 이와 같이 1차 DB 및 2차 DB에 구축된 AP(110)에 대한 무선랜 정보는 무선랜 정보를 구축하는 시점에 따라 그 가감량이 조절될 수 있을 것이다. 그리고 WLAN 서버(180)는 측위 서버(150)의 요청에 따라 무선랜 정보로서 1차 및 2차 DB에 저장된 각각에 해당되는 AP(110)들 중 이동형 AP(112)의 관련 정보를 삭제함으로써 1차 및 2차 DB를 고정형 AP(111) 기반으로 갱신한다. 이후 측위 서버(150)의 요청이 있는 경우, 고정형 AP(111)를 기반으로 측위 결과를 제공한다.
도 6은 도 1에 나타낸 이동통신단말기 측위 장치의 무선랜 정보 구축 방법을 나타내는 도면이다.
도 6을 도 1 내지 도 3과 함께 참조하면, 먼저 WLAN 서버(180)는 전지역에 기설치된 AP(110)들에 대한 무선랜 정보를 수집하여 DB(180a)에 기저장한다(S601). 이러한 과정은 이동형 차량 등을 이용하여 근거리 통신을 수행함으로써 전지역에서 기설치된 AP(110)에 대한 무선랜 정보를 수집할 수 있으며, DB(180a)에 기저장된 무선랜 정보는 어느 시점에서 수집이 이루어졌는지에 따라 가감량이 조절된다.
이어 측위 서버(150)는 이동통신단말기(100)로 측위를 요청한다(S603). 여기서, 이동통신단말기(100)는 무선랜 모듈 및 GPS 모듈의 일부 또는 전부를 구비할 수 있을 것이다.
측위 서버(150)의 측위 요청에 따라, 이동통신단말기(100)는 무선랜 모듈 및 GPS 모듈을 가동하여 통신을 수행하고, 측위 정보로서 수집된 GPS 정보, AP 정보 및 기지국 정보 등의 일부 또는 전부를 측위 서버(150)로 제공한다(S605).
측위 서버(150)는 ILIS 서버(160) 및 장치관리 서버(170) 등의 노드 정보 기반 서버(160, 170)로 가령 기지국 정보 등의 무선환경정보를 요청하고, 노드 정보 기반 서버(160, 170)로부터 무선환경정보를 수신한다(S607)
또한 측위 서버(150)는 WLAN 서버(180)로 무선랜 정보를 요청하고, WLAN 서버(180)로부터 무선랜 정보를 수신한다(S609).
물론 측위 서버(150)는 무선환경정보보다 무선랜 정보를 먼저 요청한 후 각각의 정보를 수신할 수 있으며, 이동통신단말기(100)에 대한 측위 요청이 있기 전에 사전에 무선환경정보 및 무선랜 정보를 요청하여 이를 수신한 후 별도의 메모리부(311)에 저장할 수 있으므로 본 발명의 실시예에서는 이에 특별히 한정하지는 않을 것이다.
측위 서버(150)는 이동통신단말기(100)에서 제공한 측위 정보, 노드 정보 기반 서버(160, 170)로부터의 무선환경정보 및 WLAN 서버(180)에서 제공한 무선랜 정보를 이용하여 AP(110)들에 대한 이동성을 판단한다(S611).
여기서, AP(110)들의 이동성 판단이란 사전에 WLAN 서버(180)의 DB(180a)에 기저장한 AP(110)들에 대한 이동성 여부를 판단하는 것이다. 이를 위해 측위 요청 후 이동통신단말기(100)에서 제공한 측위 정보의 AP 정보를 이용하는 것이다.
다시 말해, 측위 정보로서 제공된 AP 정보, 가령 AP(110)의 MAC 어드레스와 WLAN 서버(180)의 DB(180a)에 기저장한 AP(110)의 MAC 어드레스를 비교하여 두 개의 MAC 어드레스가 서로 일치하는 경우, 해당 AP(110)에 대한 무선환경정보와 무선랜 정보를 이용하여 NodeB(200)와 AP(110) 간 거리값을 계산해 내고, 거리값이 일정 범위 이상인 경우 AP(110)의 이동이 있었던 것으로 판단한다. 이때 거리값은 무선환경정보에 포함되는 NodeB(200)의 위·경도 좌표값과 무선랜 정보에 포함되는 AP(110)의 위·경도 좌표값을 통해 계산된다.
여기서, 가령 기지국 정보와 같은 무선환경정보는 노드 정보 기반 서버(160, 170)를 이루는 ILIS 서버(160) 또는 장치관리 서버(170)에서 각각 제공하는 서로 다른 위·경도 좌표값을 가질 수 있는데, ILIS 서버(160)에서 제공된 위·경도 좌표값은 측위 정보로서 제공된 복수의 기지국 정보, 가령 인접 기지국 정보도 고려하여 측정된 것이므로 장치관리 서버(170)에서 제공한 위·경도 좌표값에 비해 더욱 정확할 수 있다.
다른 방법으로서, 측위 서버(150)는 AP(110)들에 대한 이동성을 판단하기 위하여, 측위 정보로서 제공된 GPS 정보로부터 산출한 이동통신단말기(100)의 위·경도 좌표값과 무선랜 정보로서 제공된 AP(110)의 위·경도 좌표값을 이용해 이동통신단말기(100)와 AP(110) 간 거리를 계산할 수 있다.
이후 측위 서버(150)는 위의 거리 계산값을 메모리부(311)에 기저장된 비교값과 비교한 후 AP(110), 즉 무선랜 정보로서 WLAN 서버(180)의 DB(180a)에 기저장한 AP(110)들에 대한 이동성을 판단할 수 있다.
위의 방식으로 AP(110)들에 대한 이동성을 판단한 후, 측위 서버(150)는 이동성이 판단된 AP(110)에 대한 무선랜 정보를 WLAN 서버(180)의 DB(180a)에서 삭제할 것을 요청한다(S613).
이어 WLAN 서버(180)는 해당 AP(110)에 대한 무선랜 정보를 DB(180a)에서 삭제함으로써 DB(180a)에 기저장된 무선랜 정보들을 고정형 AP(111) 기반으로 갱신하게 된다.
이후 측위 서버(150)는 서비스 가입자의 요청이 있는 경우, 측위 결과를 제공하는 하나의 방법으로서 무선랜 정보를 활용할 수 있을 것이다.
물론 측위 서버(150)는 서비스 가입자의 요청이 있는 경우, 측위 결과를 제공하는 다른 방법으로서 이동통신단말기(100)가 GPS 신호의 수신이 가능한 경우에는 GPS 정보를 측위 결과로서 제공할 수 있으며, GPS 신호의 수신이 불가능한 경우에는 ILIS 서버(160)에 저장된 pCell의 패턴 정합성을 이용하여 제공할 수 있다.
도 7은 도 1의 측위 서버의 구동 방법을 나타내는 도면이다.
도 7을 도 1 및 도 3과 함께 참조하면, 측위 서버(150)는 AP(110)에 대한 무선랜 정보, 측위 요청된 이동통신단말기(100)로부터의 측위 정보, 이동통신단말기(100)의 통신을 관할하는 NodeB(200)에 대한 무선환경정보를 메모리부(311)에 저장하며, 메모리부(311)에는 AP(110)와 NodeB(200) 또는 AP(110)와 이동통신단말기(100) 간 거리를 비교하기 위한 비교값을 저장한다(S701).
또한 측위 서버(150)는 측위 정보와 무선랜 정보를 이용하여 이동통신단말기(100)와 AP(110) 간 거리를 계산하고, 또는 무선랜 정보와 무선환경정보를 이용하여 AP(110)와 NodeB(200) 간 거리를 계산한다(S703).
이때, 이동통신단말기(100)와 AP(110) 간 거리는 측위 정보에 의해 산출된 이동통신단말기(100)의 위·경도 좌표값과 무선랜 정보로서 제공된 AP(110)의 위·경도 좌표값을 이용해 계산되며, AP(110)와 NodeB(200) 간 거리는 무선랜 정보로서 제공된 AP(110)의 위·경도 좌표값과 무선환경정보로서 제공된 NodeB(200)의 위·경도 좌표값을 이용해 계산된다.
그리고 측위 서버(150)는 측위 정보 및 무선랜 정보에 각각 포함되는 AP 정보, 예컨대 MAC 어드레스가 서로 일치하는지를 판단하고, 서로 일치하는 경우 이동통신단말기(100)와 AP(110) 간 거리 또는 AP(110)와 NodeB(200) 간 거리가 메모리부(311)에 저장된 비교값 이상인지를 비교하며, 거리값이 비교값 이상일 때 해당 AP(110)에 대한 AP 정보를 무선랜 정보에서 삭제하도록 가령 WLAN 서버(180)를 제어할 수 있다(S705).
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
그리고, 명세서상에 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.