KR20160034930A - 인터넷 프로토콜 (ip) 어드레스, 매체 액세스 제어 (mac) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법 및 시스템 - Google Patents

인터넷 프로토콜 (ip) 어드레스, 매체 액세스 제어 (mac) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR20160034930A
KR20160034930A KR1020167002644A KR20167002644A KR20160034930A KR 20160034930 A KR20160034930 A KR 20160034930A KR 1020167002644 A KR1020167002644 A KR 1020167002644A KR 20167002644 A KR20167002644 A KR 20167002644A KR 20160034930 A KR20160034930 A KR 20160034930A
Authority
KR
South Korea
Prior art keywords
user device
location
mac address
address
mac
Prior art date
Application number
KR1020167002644A
Other languages
English (en)
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 KR20160034930A publication Critical patent/KR20160034930A/ko

Links

Images

Classifications

    • H04L61/609
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • H04L61/1511
    • H04L61/2015
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • H04L67/18
    • 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
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/69Types of network addresses using geographic information, e.g. room number

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

인터넷 프로토콜 (IP) 어드레스, 매체 액세스 제어 (MAC) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법은 도메인 네임 서버 (DNS) 로부터 사용자 디바이스에 관련된 IP 대 DHCP (dynamic host configuration protocol) 바인딩들을 수신하는 단계, DNS 로부터 사용자 디바이스에 관련된 MAC 어드레스를 수신하는 단계, 사용자 디바이스에 대한 MAC 어드레스 및 IP 어드레스를 연관시키는 단계, MAC 어드레스를 이용하여 사용자 디바이스의 지리적 로케이션을 획득하는 단계, IP:MAC 어드레스 연관성, 사용자 디바이스의 로케이션 및 IP:MAC 어드레스 연관성 및 사용자 디바이스의 로케이션에 대응하는 타임스탬프를 갖는 테이블을 구축하는 단계, 및 IP:MAC 어드레스 연관성 및 사용자 디바이스의 로케이션을 이용하여 사용자 디바이스에 맥락 콘텐츠를 전달하는 단계를 포함한다.

Description

인터넷 프로토콜 (IP) 어드레스, 매체 액세스 제어 (MAC) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법 및 시스템{METHOD AND SYSTEM FOR ASSOCIATING INTERNET PROTOCOL (IP) ADDRESS, MEDIA ACCESS CONTROL (MAC) ADDRESS AND LOCATION FOR A USER DEVICE}
로케이션-기반 서비스들은 점점 더 유행되고 있다. 로케이션-기반 서비스의 일 예가 제 3 자 애플리케이션을 이용하지 않고 웹사이트에 액세스하는 것이 가능한, 모바일 컴퓨팅 디바이스, 이를 테면 스마트폰, 또는 다른 디바이스의 사용자로의 로케이션-기반 콘텍스트-인식 콘텐츠의 전달이다. 예를 들어, 모바일 디바이스의 사용자는 무선 액세스 포인트들의 네트워크에 의해 모니터링되는 지리적 영역에 진입한다. 통상적으로, 모바일 디바이스는 무선 액세스 포인트들 중 하나에 접속하고 네트워크에 액세스할 것이다. 이러한 무선 액세스 포인트들의 네트워크는 통상적으로 무선 충실도 (wireless fidelity; WiFi) 를, 사용자가 네트워크에 무선으로 접속하는 것을 허용하기 위한 근본적인 기술로서 이용한다. WiFi 네트워크의 일 예는 IEEE 802.11b/g/n, 또는 유사한 무선 액세스 표준들 중 하나 이상에 따라 구현되는 것이다. 모바일 디바이스의 사용자는 모바일 디바이스 상의 웹 브라우저를 이용하여 모니터링된 영역 및 네트워크를 제공하는 엔티티와 연관된 웹사이트를 요청한다. 사용자는 그 후 예를 들어, 사용자의 로케이션에 기초하여 콘텍스트-인식 콘텐츠를 수신한다.
일반적으로, WiFi 는 사용자들을 식별하고 로케이션-기반 서비스들을 제공하기 위해 각각의 모바일 디바이스에 할당되는 매체 액세스 제어 (MAC) 어드레스를 이용한다. 그러나, 애플리케이션 계층 엔티티는 통상 모바일 디바이스를 식별하는 방식으로서 인터넷 프로토콜 (IP) 어드레스를 채용할 것이다. 유감스럽게도, MAC 어드레스는 애플리케이션 계층에서의 IP 어드레스로 트랜슬레이트하지 않거나 또는 그 IP 어드레스에 대응하지 않아, 애플리케이션 계층에서 WiFi-접속 모바일 디바이스에 로케이션-기반 서비스들을 제공하는 것을 어렵게 만든다. 따라서, 애플리케이션 계층에서 모바일 디바이스에 로케이션-기반 서비스들을 제공하기 위해, 애플리케이션들 및 서비스들은 IP 어드레스를 MAC 어드레스에 맵핑하는 방법을 요구한다.
인터넷 프로토콜 (IP) 어드레스, 매체 액세스 제어 (MAC) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법들 및 시스템들의 다양한 실시형태들이 개시된다. 인터넷 프로토콜 (IP) 어드레스, 매체 액세스 제어 (MAC) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법의 일 예시적인 실시형태는, 도메인 네임 서버 (DNS) 로부터 사용자 디바이스에 관련된 IP 대 DHCP (dynamic host configuration protocol) 바인딩들을 수신하는 단계, DNS 로부터 사용자 디바이스에 관련된 MAC 어드레스를 수신하는 단계, 사용자 디바이스에 대한 MAC 어드레스 및 IP 어드레스를 연관시키는 단계, MAC 어드레스를 이용하여 사용자 디바이스의 지리적 로케이션을 획득하는 단계, IP:MAC 어드레스 연관성, 사용자 디바이스의 로케이션 및 IP:MAC 어드레스 연관성 및 사용자 디바이스의 로케이션에 대응하는 타임스탬프를 갖는 테이블을 구축하는 단계, 및 IP:MAC 어드레스 연관성 및 사용자 디바이스의 로케이션을 이용하여 사용자 디바이스에 맥락 콘텐츠 (contextual content) 를 전달하는 단계를 포함한다.
도면들에서, 유사한 참조 부호들은 다르게 나타내지 않는 한 다양한 도면들 전반에 걸쳐 유사한 부분들을 지칭한다. "102a" 또는 "102b" 와 같은 글자 부호 명칭들을 가진 참조 부호들의 경우, 그 글자 부호 명칭들은 동일한 도면에서 존재하는 2 개의 유사한 부분들 또는 엘리먼트들을 구별할 수도 있다. 참조 부호들에 대한 글자 부호 명칭들은 참조 부호가 모든 도면들에서의 동일한 참조 부호를 갖는 모든 부분들을 망라하는 것으로 의도될 때 생략될 수도 있다.
도 1 은 IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템 및 방법의 일 실시형태의 기능적 블록 다이어그램이다.
도 2 는 도 1 의 포지션 맵퍼의 기능적 블록 다이어그램이다.
도 3 은 IP 어드레스, MAC 어드레스 및 로케이션을 연관시키기 위한 방법의 일 실시형태를 예시하는 호 플로우 다이어그램이다.
도 4 는 도 1 의 도메인 네임 서버 및 IP:DHCP 바인딩 테이블의 일 예의 블록 다이어그램이다.
도 5a 및 도 5b 는 IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법의 일 실시형태를 총괄하여 예시하는 플로우 차트이다.
단어 "예시적인" 은 본 명세서에서 "일 예, 사례, 또는 예시로서 기능하는 것" 을 의미하는데 사용된다. 본 명세서에서 "예시적인" 것으로 설명된 임의의 양태가 반드시 다른 양태들에 비해 바람직하거나 유리한 것으로 해석되는 것은 아니다.
이 설명에서, 용어 "애플리케이션" 은 또한 : 오브젝트 코드, 스크립트들, 바이트 코드, 마크업 언어 파일들 및 패치 (patch) 들과 같은 실행가능한 콘텐츠를 갖는 파일들을 포함할 수도 있다. 또한, 본 명세서에서 언급된 "애플리케이션" 은 또한, 공개될 필요가 있을 수도 있는 문서들 또는 액세스될 필요가 있는 다른 데이터 파일들과 같이, 사실상 실행가능하지 않은 파일들을 포함할 수도 있다.
이 설명에서 사용한 바와 같이, 용어들 "컴포넌트", "데이터베이스", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 즉 하드웨어, 펌웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어, 또는 실행중인 소프트웨어 중 어느 하나를 지칭하도록 의도된다. 예를 들어, 컴포넌트는 프로세서 상에서 실행중인 프로세스, 프로세서, 오브젝트, 실행가능물, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수도 있지만, 이들인 것으로 제한되지 않는다. 예시에 의해, 컴퓨팅 디바이스 상에서 실행중인 애플리케이션과 컴퓨팅 디바이스 양자는 컴포넌트일 수도 있다. 하나 이상의 컴포넌트들은 프로세스 및/또는 실행 스레드 내에 상주할 수도 있고, 컴포넌트는 하나의 컴퓨터 상에 로컬화되고/되거나 2 개 이상의 컴퓨터들 사이에 분산될 수도 있다. 또한, 이들 컴포넌트들은 다양한 데이터 구조들을 저장하고 있는 다양한 컴퓨터 판독가능 매체들로부터 실행할 수도 있다. 컴포넌트들은 하나 이상의 데이터 패킷들을 갖는 신호 (예를 들어, 그 신호에 의하여 다른 시스템들과 인터넷과 같은 네트워크를 가로질러, 및/또는 로컬 시스템, 분산 시스템에서의 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터) 에 따라서와 같이 로컬 및/또는 원격 프로세스들에 의하여 통신할 수도 있다.
본 명세서에서 사용한 바와 같이, 용어들 "사용자 디바이스" 및 "클라이언트 디바이스" 는 웹 사이트로부터 콘텐츠를 수신하고 웹사이트에 정보를 송신하는 것이 가능한 디바이스를 포함한다. 사용자 디바이스 또는 클라이언트 디바이스는 정지형 디바이스 또는 모바일 디바이스일 수 있다. 용어들 "사용자 디바이스" 및 "클라이언트 디바이스" 는 상호교환가능하게 사용될 수 있다.
본 명세서에서 사용한 바와 같이, 용어 "사용자" 는 사용자 디바이스 상에서 또는 클라이언트 디바이스 상에서 콘텐츠를 수신하고 웹사이트에 정보를 송신하는 개인을 지칭한다.
본 명세서에서 사용한 바와 같이, 용어 "MAC 어드레스" 및 용어 "MAC ID" 는 디바이스에 할당된 매체 액세스 제어 (MAC) 식별자를 지칭하고 상호교환가능하게 사용될 수 있다.
도 1 은 IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템의 일 실시형태의 기능적 블록 다이어그램이다. 시스템 (100) 은 사용자 디바이스 (102), 네트워크 (106), 라우터/스위치 (107), 프록시 서버 (108), 웹 서버 (110) 및 도메인 네임 서버 (115) 를 포함한다. 사용자 디바이스 (102) 는 정지형 디바이스 또는 모바일 디바이스일 수 있고, 통상 웹 콘텐츠를 액세스 및 뷰잉하기 위한 하이퍼텍스트 전송 프로토콜 (HTTP) 웹 브라우저 (104) 와 같은 브라우저 (104) 를 포함한 모바일 컴퓨팅 디바이스이다. 일 실시형태에서, 사용자 디바이스 (102) 는 인터넷에 접속할 수 있는 스마트 폰과 같은 모바일 디바이스이다. 웹 서버 (110) 는 HTTP 서버일 수 있다.
일 실시형태에서, 네트워크 (106) 는 액세스 포인트들 (105) (각각 "AP" 로 라벨링됨) 의 네트워크를 포함한다. 일 예에서, 모바일 디바이스 (102) 는 IEEE 802.11b/g/n, 또는 다른 무선 액세스 표준에 따르는 접속을 이용하여 액세스 포인트 (105a) 에 무선으로 접속된다. 사용자 디바이스 (102) 의 로케이션은, 사용자 디바이스 (102) 가 접속되는 액세스 포인트의 로케이션을 아는 것, 수신 신호 강도 표시 (RSSI), 라운드 트립 시간 (RTT) 과 같은 무선 파라미터들을 이용하여 로케이션을 결정하는 알고리즘들, GPS 맵핑, 이들의 조합, 또는 다른 로케이션 결정 기술을 포함하지만 이들에 제한되지는 않는 다수의 방식들로 결정될 수 있다.
라우터/스위치 (107) 는 라우터, 스위치, 및 다른 기능성을 포함하지만 이들에 제한되지 않는 다양한 기능성을 포함한다. 라우터/스위치 (107) 는 접속 (117) 을 통해 도메인 네임 서버 (115) 에 접속된다. 네트워크 (117) 는 LAN, WAN, 또는 다른 네트워크일 수 있다. 더욱이, 별개의 엘리먼트들로서 도시되지만, 라우터/스위치 (107) 및 DNS (115) 는 네트워크 (106) 의 내부에 상주할 수도 있다. 네트워크 (106) 는 또한 소프트웨어 모듈 (122) 을 포함한다. 소프트웨어 모듈 (122) 은 맥락 파라미터들에 기초하여 라우팅하기 위한 로직을 갖고, 사용자 디바이스 (102) 로부터 수신된 HTTP 또는 HTTPS 요청에 메타데이터를 적용, 첨부, 부착, 또는 다르게는 연관시킨다는 점에서 콘텍스트 인식 메타데이터의 플로우를 관리한다. 구현 예에서, 소프트웨어 모듈 (122) 은 프록시 서버 (108), 인터넷 콘텐츠 적응 프로토콜 (ICAP) 엘리먼트 (112), 포지션 맵퍼 (114) 및 로케이션 엔진 (116) 에 의해 제공된 기능성을 포함 및 관리할 수 있으며, 이들 엘리먼트들은 "콘텍스트 서버" (130) 로 지칭된다. 일 예에서, 소프트웨어 모듈 (122) 에 의해 첨부된 메타데이터는 사용자 디바이스 (102) 의 콘텍스트를 식별하고 프록시 서버 (108) 에 콘텍스트 인식 메타데이터를 제공한다. 콘텍스트 인식 메타데이터는 사용자 디바이스 (102) 에 의해 전송된 HTTP 또는 HTTPS 요청에 첨부되며, 그 메타데이터는 사용자 디바이스 (102) 의 콘텍스트를 정의하거나, 그것에 대응하거나, 또는 다르게는 그것을 식별한다. 사용자 디바이스 (102) 의 콘텍스트는 예를 들어, 사용자 디바이스가 움직이는지 정지되는지 여부, 사용자 디바이스의 특정 로케이션, 그 디바이스의 사용자가 걷고 있는지, 쇼핑하고 있는지, 운전하고 있는지, 실내에 있는지, 실외에 있는지 여부 등일 수도 있다. 로케이션-기반 콘텍스트 인식 콘텐츠를 제공하는 일 예는 예를 들어, 사용자가 IP 어드레스를 MAC 어드레스와 연관시키기 위한 시스템 및 방법과 함께 액세스 포인트들 (105) 또는 다른 IP 기반 시스템을 이용하여 로케이션 엔진에 의해 결정된 하나 또는 다른 로케이션에 있는지 여부에 기초하여 사용자에게 제공된 웹사이트 맞춤 콘텐츠 (website tailoring content) 이다.
그 구현에 의존하여, 소프트웨어 모듈 (122) 은 프록시 서버 (108), ICAP 엘리먼트 (112), 포지션 맵퍼 (114), 및 로케이션 엔진 (116) 중 하나 이상을 관리하여 사용자 디바이스 (102) 의 콘텍스트를 식별하고 HTTP 또는 HTTPS 요청의 부분으로서 콘텍스트 인식 메타데이터를 제공, 첨부 또는 다르게는 연관시킨다. ICAP 엘리먼트 (112) 와 프록시 서버 (108) 간의 통신은 HTTP 헤더 변경 기능성을 구현하기 위한 표준 방식을 제공한다.
로케이션 엔진 (116) 은 사용자 디바이스 (102) 의 현재의 로케이션을 제공한다. 로케이션 엔진 (116) 은 삼각측량, 레이턴시 데이터, 액세스 포인트 접속 데이터, 또는 사용자 디바이스 (102) 의 현재의 로케이션을 검출하기 위한 다른 방식들 중 하나 이상을 이용할 수 있다. 통상적으로, 모바일 디바이스 (102) 는 MAC 어드레스에 의해 네트워크 (106) 에 식별되고 IP 어드레스를 할당받는다. IP 어드레스는 동적으로 할당된 IP 어드레스일 수 있다.
일 실시형태에서, 포지션 맵퍼 (114) 는 DNS (115) 로부터 논리적 접속 (160) 을 통해 라우터/스위치 (107) 및 네트워크 (106) 를 경유하여 사용자 디바이스 (102) 에 관련된 MAC 어드레스들 및 IP 대 DHCP 바인딩들을 수신한다. 대안적으로, DNS (115) 는 네트워크 (106) 에 직접 접속될 수도 있거나, 또는 라우터/스위치 (107) 의 기능성은 네트워크 (106) 의 부분일 수 있다. 포지션 맵퍼 (114) 는 로케이션 엔진 (116) 으로부터 사용자 디바이스 (102) 에 관련된 로케이션 정보를 수신한다. 포지션 맵퍼 (114) 는 사용자 디바이스 (102) 에 대응하는 IP 및 MAC 어드레스 연관성을 이용하여, IP 대 MAC 어드레스 맵핑 (IP:MAC), 사용자 디바이스 (102) 에 대한 로케이션 픽스 (location fix), 및 그 로케이션 픽스에 대응하는 시간을 식별하는 타임스탬프를 포함하는 테이블 (120) 을 구축한다. 이 방식으로, 포지션 맵퍼 (114) 는, IP:MAC 어드레스 맵핑을 실시간으로 제공하기 위한 DNS (115), 및 MAC 어드레스에 기초하여 디바이스 로케이션을 제공하기 위한 로케이션 엔진 (116) 을 이용하는 것에 의해, 그것이 로케이션 결정 기술로부터 사용자 디바이스 (102) 의 IP 어드레스를 디커플링하기 때문에 임의의 특정 IP:MAC 어드레스 맵핑에 의존하지 않는다. 일 실시형태에서, 사용자 디바이스 (102) 의 로케이션은 사용자 디바이스 (102) 의 MAC 어드레스를 이용하여 결정된다. IP 대 MAC 어드레스 연관성은 DNS (115) 로부터 수신된 MAC 어드레스들 및 IP 대 DHCP 바인딩들로부터 생성되며 다양한 애플리케이션 계층들로부터의 요청들이 응답으로 로케이션 정보를 포함할 수 있도록 포지션 맵퍼 (114) 에 의해 유지된다. 시스템이 중앙집중되고 각각의 AP 가 그 자신의 DHCP 테이블을 갖는 일 실시형태에서, 맵핑은 또한 AP 정보는 물론 MAC 어드레스 및 IP 정보를 포함하여 사용자 디바이스 (102) 및 그것의 로케이션을 식별할 것이다.
특히, 포지션 맵퍼 (114) 는 사용자 디바이스 (102) 의 IP 어드레스를 취하고, IP 어드레스 및 IP:MAC 어드레스 맵핑에 기초하여 사용자 디바이스 (102) 에 대한 MAC 어드레스를 결정하며, 사용자 디바이스 (102) 의 MAC 어드레스에 기초하여 로케이션 엔진 (116) 으로부터 로케이션 정보를 요청한다. 포지션 맵퍼 (114) 는 그 후 콘텍스트 인식 메타데이터 소프트웨어 (122) 의 동작의 부분으로서 사용자 디바이스 (102) 에 대한 맥락 정보를 요청했던 ICAP 엘리먼트 (112) 에 그 로케이션 정보를 리턴한다. 이 방식으로, 사용자 디바이스 (102) 에 관련된 로케이션 정보는 포지션 맵퍼 (114) 로부터 ICAP 엘리먼트 (112) 로 전송되며, ICAP 엘리먼트 (112) 는 사용자 디바이스 (102) 의 로케이션 정보와 함께 변경된 HTTP 헤더를 프록시 서버 (108) 에 제공한다. 프록시 서버 (108) 는 변경된 헤더를 수신하고 변경된 HTTP 요청을 웹 서버 (110) 에 제공하며, 그 변경된 요청은 사용자 디바이스 (102) 의 현재의 로케이션을 가지며, 이렇게 하여 웹 서버 (110) 가 사용자 디바이스 (102) 의 로케이션에 기초하여 사용자 디바이스 (102) 에 맥락 콘텐츠를 제공하는 것을 허용한다.
도 2 는 도 1 의 포지션 맵퍼 (114) 를 구현하는데 이용될 수 있는 컴퓨팅 디바이스 (200) 의 기능적 블록 다이어그램이다. 일 실시형태에서, 컴퓨팅 디바이스 (200) 는 서버 디바이스와 같은 스탠드-얼론 컴퓨팅 디바이스로서 구현될 수 있다. 일 실시형태에서, 컴퓨팅 디바이스 (200) 는 콘텍스트 서버 (130) (도 1) 의 부분 또는 전부일 수 있다.
일 실시형태에서, 컴퓨팅 디바이스 (200) 는 시스템 버스 (212) 를 통해 동작적으로 접속된, 메모리 (202), 프로세서 (204), 데이터베이스 (206) 및 입력/출력 (I/O) 엘리먼트 (208) 를 포함한다. 메모리 (202) 는 임의의 타입의 휘발성 또는 비휘발성 메모리, 공유 메모리, 분산 메모리를 포함할 수 있으며, 일 실시형태에서, 포지션 맵퍼 소프트웨어 모듈 (114) 및 애플리케이션 소프트웨어 모듈 (210) 을 저장하는 비휘발성 메모리일 수 있다.
프로세서 (204) 는 포지션 맵퍼 소프트웨어 모듈 (114) 및 애플리케이션 소프트웨어 모듈 (210) 을 실행하는 범용 또는 특수 목적 마이크로프로세서일 수 있다. 시스템 버스 (212) 는 상기 설명된 엘리먼트들을 함께 커플링하여 그들의 상호운용성을 가능하게 하기 위해 물리적 및 논리적 접속들을 포함할 수 있다.
일 실시형태에서, 포지션 맵퍼 소프트웨어 모듈 (114) 은 포지션 맵퍼 소프트웨어 모듈 (114) 내의 프로세스들 또는 실행 스레드들로서 예시된, 다수의 기능들을 실행한다.
IP 대 MAC 대 로케이션 스레드 (222) 는 그것의 각각의 인스턴스가 데이터베이스 (206) 에 로케이팅되는 것으로 예시되는, 바인딩 테이블 (410) (도 4) 및 포지션 맵퍼 샘플 테이블 (120) (도 1) 을 전개 (develop) 하기 위해 IP 어드레스, MAC 어드레스 및 로케이션을 상관시키는 스레드 프로세스이다.
모바일 뷰 캐시 스레드 (224) 는 연관된 IP 어드레스들 및 MAC 어드레스들과 함께 로케이션 정보를 저장하는 스레드 프로세스이다. 연관된 IP 어드레스들 및 MAC 어드레스들과 함께 로케이션 정보를 저장하는 것은 각각의 질의에 대한 로케이션 정보를 입수하기 위해 로케이션 엔진 (116) 에 동기 호 (synchronous call) 를 행할 필요 없이 정보의 더 빠른 룩 업을 가능하게 한다. 모바일 뷰 캐시 스레드 (224) 의 다수의 인스턴스들은 동시에 실행할 수도 있다.
REST 서버 스레드 (226) 는 다른 제 3 자 애플리케이션들에 대해 JSON (JavaScript Object Notation) 인터페이스를 노출시켜, 그 제 3 자 애플리케이션들이 모바일 뷰 캐시 스레드 (224) 에서의 IP 어드레스 또는 다른 정보에 기초하여 컴퓨팅 디바이스 (200) 로부터 로케이션 정보를 요청하는 것을 허용하는 프로세스 스레드이다. 용어 "REST" 는 월드 와이드 웹과 같은 분산 시스템들을 위해 사용되는 "Representational State Transfer" 소프트웨어 아키텍처를 나타낸다. 일 실시형태에서, REST 서버 스레드 (226) 는 JSON 서버에 의해 구현될 수 있다. REST 서버 스레드 (226) 의 다수의 인스턴스들은 동시에 실행할 수도 있다.
모바일 뷰 "RTT (real time tracking)" 스레드 (228) 는 각각의 사용자 디바이스의 추적 세션들을 관리하는 프로세스 스레드이다. 추적 세션들은 정의된 시간 주기 동안 그리고 특정 MAC 어드레스에 대해 유지될 수 있다. 모바일 뷰 RTT 스레드 (228) 에 대한 2 개의 입력 파라미터들은 얼마나 자주 로케이션 요청들을 보고하는지 그리고 얼마나 오래 사용자 디바이스를 추적하는지이다. 모바일 뷰 "RTT (real time tracking)" 스레드 (228) 의 다수의 인스턴스들은 동시에 실행할 수도 있다.
로케이션 엔진 인터페이스 (232) 는 로케이션 엔진 (116) 에 대한 라이브러리 인터페이스이다.
라우터 (234) 는 네트워크 (106) (도 1) 에 액세스를 제공하는 임의의 라우터일 수 있으며, 일반적으로 인터넷 액세스를 제공하는 임의의 라우터일 수 있다.
참조 시간 스레드 (236) 는 특정 사용자 디바이스를 위해 로케이션 픽스가 제공되는 시간에 대응하는 타임스탬프를 제공한다.
도 3 은 IP 어드레스, MAC 어드레스 및 로케이션을 연관시키기 위한 방법의 일 실시형태를 예시하는 호 플로우 다이어그램이다. 다이어그램 (300) 은 참조를 위해 도 1 에서의 다양한 엘리먼트들의 동작을 예시한다. 일 예로서, 호 (302) 는 사용자 디바이스 (102) 로부터 네트워크 (106) 에 제공된 동적 호스트 구성 프로토콜 (DHCP) 요청을 표현한다. 도 3 에서, 액세스 포인트들 (105), 네트워크 (106), 라우터/스위치 (107) 및 DNS (115) 의 기능성은 설명의 용이함을 위해 결합된다. 호 (302) 에 응답하여, 액세스 포인트 (105a), 라우터/스위치 (107) 및 네트워크 (106) 는 사용자 디바이스 (102) 에 인터넷 프로토콜 (IP) 어드레스를 할당하는 호 (304) 를 제공하여, 사용자 디바이스 (102) 가 네트워크 (106) 를 통해 액세스 및 통신하는 것을 허용한다. IP 어드레스는 AP들 (105) 및/또는 DNS (115) 및/또는 라우터/스위치 (107) 에 의해 할당된다. DNS (115) 는 사용자 디바이스 (102) 에 할당된 IP 어드레스를 사용자 디바이스 (102) 의 MAC 어드레스와 연관시키는 IP:DHCP 바인딩 테이블을 구축한다. IP:DHCP 바인딩 테이블의 일 예가 도 4 에 도시된다. IP:DHCP 바인딩 테이블 (410) 은 특정 사용자 디바이스에 대한 MAC 어드레스와의 IP 어드레스의 연관성을 예시한다.
호 (306) 는 사용자 디바이스 (102) 에 의해 행해지고 네트워크 (106) 를 통하여 프록시 서버 (108) 로 포워딩되는 웹사이트 (예를 들어, www.domain.com) 에 대한 HTTP 요청을 예시한다. 호 (320) 는 본 명세서에서 설명한 바와 같이, 네트워크 (106) 와 포지션 맵퍼 (114) 간의 IP 및 매체 액세스 제어 (MAC) 어드레스 맵핑을 표현한다.
호 (308) 는 프록시 서버 (108) 로부터 ICAP 엘리먼트 (112) 로 전송된 변경된 HTTP 헤더에 대한 요청의 전송을 표현한다. 변경된 HTTP 헤더에 대한 요청은 프록시 서버 (108) 로부터 접속 (142) 을 통해 전송되며, 사용자 디바이스 (102) 의 콘텍스트와 관련된 콘텍스트 인식 메타데이터를 포함한다. 일 실시형태에서, 사용자 디바이스의 콘텍스트는 다수의 상이한 방식들로 결정될 수 있다. 도 1 에 도시된 예에서, 사용자 디바이스 (102) 의 콘텍스트는 사용자 디바이스 (102) 로부터의 임의의 기여 또는 상호작용 없이, 네트워크 (106), 프록시 서버 (108), 및 웹 서버 (110) 중 하나 이상에 의해 결정된다. 즉, 사용자 디바이스 (102) 는 표준의 미변경된 디바이스이며 임의의 콘텍스트 인식은 사용자 디바이스 (102) 와 다른 엘리먼트들에 의해 결정된다. 일 실시형태에서, 네트워크 (106), 프록시 서버 (108), 및 서버 (110) 중 하나 이상은 네트워크 파라미터들에 기초하여 사용자 디바이스 (102) 의 콘텍스트를 결정한다.
ICAP 엘리먼트 (112) 와 포지션 맵퍼 (114) 사이에 이슈된 호 (312) 는 사용자 디바이스 (102) 의 포지션을 결정하기 위해 그리고 변경된 헤더 정보를 획득하기 위해 접속 (144) 을 통해 행해진다.
접속 (146) 을 통해 포지션 맵퍼 (114) 와 로케이션 엔진 (116) 사이에 행해진 호 (314) 는 사용자 디바이스 (102) 의 로케이션의 제 1 검출을 지칭한다. 즉시 폴링 요청 (immediate polling request) 들은 인지된 TTFF (time to first fix) 를 짧게 함으로써 사용자 경험을 개선한다. 호들 (316) 은 호 (314) 에 의한 초기 요청 후 사용자 디바이스 (102) 의 로케이션을 결정하기 위해 포지션 맵퍼 (114) 와 DSN (115) 사이에, 그리고 포지션 맵퍼 (114) 와 로케이션 엔진 (116) 사이에 실시간으로 일어나는 일련의 폴링 간격들 및 포지션 로케이션 픽스들을 지칭한다. 폴링 간격들은 임의의 지속기간일 수 있으며, 일 예에서, 1 초일 수 있다. 일 예로서, 포지션 맵퍼 (114) 는 IP:MAC 어드레스 연관성들을 결정하기 위해 1 초 마다 DNS (115) 를 폴링한다. 포지션 맵퍼 (114) 는 모든 MAC ID들, 로케이션 픽스들, 및 각각의 로케이션 픽스에 대한 타임스탬프들에 대해 5 초 마다 로케이션 엔진 (116) 을 폴링한다. 로케이션 엔진 (116) 은 이전의 추적 요청으로부터 MAC ID, 로케이션 픽스 및 타임스탬프 정보를 가질 수도 있다. 포지션 맵퍼 (114) 는 로케이션 엔진 (116) 으로부터 이 정보를 획득하고 그것을 DNS (115) 로부터 수신된 최근의 IP:MAC 어드레스 연관성들에 맵핑할 수도 있다. 포지션 맵퍼 (114) 는 현재의 로케이션 픽스를 갖지 않는 디바이스에 대해서도 특정 MAC ID 에 대한 단일의 픽스 질의를 획득할 수도 있다.
포지션 맵퍼 (114) 로부터 ICAP 엘리먼트 (112) 로의 호 (318) 는 로케이션 엔진 (116) 에 의해 결정한 바와 같은 사용자 디바이스 (102) 의 로케이션을 포함한다. 일 실시형태에서, 호 (318) 는 JSON (JavaScript object notation) 응답일 수 있으며 포지션 맵퍼 (114) 로부터 ICAP 엘리먼트 (112) 에 제공되고 사용자 디바이스 (102) 의 로케이션 및 관련 콘텍스트 정보를 지칭한다. 일 실시형태에서, 로케이션은 사용자 디바이스 (102) 및 사용자의 존재에 대해 모니터링되는 지리적 영역을 지칭하는 "지오펜스드 존 (geofenced zone)" 로케이션으로 지칭될 수 있다. 일 실시형태에서, 이러한 지오펜스드 존은 GPS, RFID (radio frequency identification), 비디오 감시시스템 등과 같은 하나 이상의 기술들을 이용하여 모니터링될 수 있는 놀이 시설, 공연장, 또는 임의의 다른 영역에서의 어트랙션을 포함할 수 있다. 포지션 맵퍼 (114) 는 IP:MAC 어드레스 연관성, 로케이션 정보, 타임스탬프 정보를 이용하여 테이블 (120) 을 구축한다.
ICAP 엘리먼트 (112) 로부터 웹 서버 (110) 로 이슈된 호 (322) 는 예를 들어, 웹 서버 (110) 로부터 콘텍스트 정보를 추가 취출하기 위해 사용자가 로그인되는지 여부를 결정하려고 시도한다.
웹 서버 (110) 로부터 ICAP 엘리먼트 (112) 로의 호 (324) 는 사용자 디바이스 (102) 가 웹 서버 (110) 에 로그인되는지 여부에 대한 정보를 포함한다.
ICAP 엘리먼트 (112) 로부터 접속 (142) 을 통해 프록시 서버 (108) 에 이슈된 호 (326) 는 프록시 서버 (108) 에 변경된 HTTP 헤더를 제공한다. 변경된 HTTP 헤더는 콘텍스트 인식 메타데이터를 포함하고 또한 사용자 디바이스 (102) 의 로케이션을 포함한다.
호 (320) 는 네트워크 (106) 와 포지션 맵퍼 (114) 사이의 IP 및 매체 액세스 제어 (MAC) 어드레스 맵핑을 표현한다. 포지션 맵퍼 (114) 는 바인딩 테이블 (410) (도 4) 로부터 사용자 디바이스 (102) 의 MAC 어드레스 및 IP 어드레스를 취하고, 사용자 디바이스 (102) 의 MAC 어드레스에 기초하여 로케이션 엔진 (116) 으로부터 로케이션 정보를 요청한다. 포지션 맵퍼 (114) 는 그 후 사용자 디바이스 (102) 의 로케이션을 IP 어드레스 및 MAC 어드레스에 연관시키고 테이블 (120) (도 1) 을 구축한다. 타임스탬프는 포지션 맵퍼 (114) 에서의 참조 시간 스레드 (236) 에 의해 생성되며 IP:MAC 어드레스 연관성 및 로케이션 정보와 연관된다. 타임스탬프는 로케이션 픽스의 에이지 (age) 를 제공하며 새로운 로케이션 픽스가 요청되어야 하는지 여부를 결정하기 위해 구성가능한 임계값에 기초한다. 타임스탬프는 포지션 맵퍼 소프트웨어 (114) 가 실행하는 컴퓨팅 디바이스 (200) 에 의해 유지된 로컬 시간에 의해 제공될 수 있다.
시스템 (100) 에서의 모든 디바이스들은 포지션 맵퍼 (114) 가 로케이션 엔진 (116) 에 상관없이 포지션 픽스에 대한 그 자신의 타임스탬프를 유지하기 때문에 동일한 시간 소스에 동기될 필요가 없다. 타임스탬프 임계값은, 로케이션 픽스가 임계량보다 더 오래되었다 (예를 들어, 1 분을 초과하여 오래됨) 고 결정된다면, 새로운 타임스탬프가 생성되는 경우 구성가능하다. 임계값은 의도된 애플리케이션에 기초하며, 로케이션 엔진 (116) (도 1) 에 대한 요청들의 수 및 빈도를 밸런싱 및 제어하는 것이다. 예를 들어, 포지션 로케이션 픽스가 모바일 뷰 캐시 (224) 에서 1 분보다 더 오래되었다면, 새로운 추적 요청이 업데이트된 포지션 정보를 획득하기 위해 모바일 뷰 RTT 스레드 (228) 에 개시된다.
포지션 맵퍼 (114) 는 그 후 사용자 디바이스 (102) 에 대한 맥락 정보를 요청했던 ICAP 엘리먼트 (112) 에 호 (318) 에서 로케이션 정보를 리턴한다. 이 방식으로, 사용자 디바이스 (102) 에 관련된 로케이션 정보는 다시 ICAP 엘리먼트 (112) 로 전송되며, ICAP 엘리먼트 (112) 는 사용자 디바이스 (102) 의 로케이션 정보와 함께 (호 326 에서) 프록시 서버 (108) 에 변경된 HTTP 헤더를 제공한다. 이 방식으로, 로케이션 정보 및 더 넓은 범위로, 사용자 디바이스 (102) 에 관련된 콘텍스트 정보는 HTTP 요청에 명시적으로 또는 암시적으로 중 어느 하나로 추가된다.
프록시 서버 (108) 로부터 접속 (136) 을 통해 웹 서버 (110) 에 제공된 호 (328) 는 콘텍스트 인식 메타데이터를 갖는 (예를 들어, 도시한 바와 같이 url 변경을 이용하거나 일 예로서 x 태그 삽입을 이용하여) 변경된 HTTP 요청을 포함하고 사용자 디바이스 (102) 의 로케이션을 포함한다.
웹 서버 (110) 로부터 접속 (138) 을 통한 프록시 서버 (108) 로의 호 (332) 는 사용자 디바이스 (102) 의 콘텍스트 및 로케이션에 기초하여 사용자에게 맞춰지는 로케이션-기반 맥락 콘텐츠를 포함한다. 프록시 서버 (108) 로부터 접속들 (134 및 132) 을 통해 모바일 디바이스 (102) 에 제공된 호 (334) 는 사용자 디바이스 (102) 에 전달된 콘텍스트 인식 콘텐츠를 포함한다. 이 방식으로, 사용자 디바이스 (102) 의 콘텍스트가 결정되고 콘텍스트 특정 콘텐츠는 웹 서버 (110) 로부터 사용자 디바이스 (102) 에 제공된다.
도 5a 및 도 5b 는 IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법의 일 실시형태를 총괄하여 예시하는 플로우 차트 (500) 이다.
블록 502 에서, 사용자 디바이스 (102) 는 동적 호스트 구성 프로토콜 (DHCP) 요청을 개시하고 그 요청을 직접 또는 라우터/스위치 (107) 를 통해 중 어느 하나로 DNS (115) 로, 및 네트워크 (106) 로 전송한다. DNS (115), 라우터/스위치 (107) 및 네트워크 (106) 는 인터넷 프로토콜 (IP) 어드레스로 응답하여, 사용자 디바이스 (102) 가 네트워크 (106) 를 통해 액세스 및 통신하는 것을 허용한다.
블록 504 에서, 포지션 맵퍼 (114) 는 사용자 디바이스 (102) 에 대한 IP 대 DHCP 바인딩들을 획득하기 위해 DHCP 테이블에 대해 DNS (115) 를 폴링한다.
블록 506 에서, 포지션 맵퍼 (114) 는 사용자 디바이스 (102) 의 MAC 어드레스에 대해 DNS (115) 를 폴링한다.
블록 508 에서, 포지션 맵퍼 (114) 는 IP 어드레스 및 MAC 어드레스들을 연관시키고 테이블 (120) (도 1) 을 구축한다.
블록 512 에서, ICAP 엘리먼트 (112) 는 IP 어드레스에 의해 사용자 디바이스 (102) 의 맥락 정보를 위해 포지션 맵퍼 (114) 로부터 헤더를 요청하고 정보를 획득하여 HTTP 요청을 변경한다.
블록 514 에서, 포지션 맵퍼 (114) 는 사용자 디바이스 (102) 의 로케이션에 대한 요청을 사용자 디바이스 (102) 의 MAC 어드레스를 이용하여 로케이션 엔진 (116) 으로 전송한다.
블록 516 에서, 로케이션 엔진 (116) 은 사용자 디바이스 (102) 의 로케이션을 제공한다.
블록 518 에서, 포지션 맵퍼 (114) 는 로케이션 엔진 (116) 으로부터 수신된 로케이션 픽스를 타임스탬핑하고 사용자 디바이스 (102) 의 로케이션과 함께 JSON 응답의 형태의 응답을 ICAP 엘리먼트 (112) 로 전송한다.
블록 522 에서, ICAP 엘리먼트 (112) 는 사용자 디바이스 (102) 의 로케이션을 수신한다.
블록 524 에서, ICAP 엘리먼트 (112) 는 사용자 디바이스 (102) 가 웹 서버 (110) 에 로그인되는지를 결정한다.
블록 526 에서, ICAP 엘리먼트 (112) 는 사용자 디바이스 (102) 가 웹 서버 (110) 에 로그인되는지 여부에 대한 정보를 수신한다.
블록 528 에서, ICAP 엘리먼트 (112) 는 프록시 서버 (108) 에 변경된 HTTP 헤더를 제공한다. 변경된 HTTP 헤더는 콘텍스트 인식 메타데이터를 포함하며 또한 사용자 디바이스 (102) 의 로케이션을 포함한다.
블록 532 에서, 프록시 서버 (108) 는 웹 서버 (110) 에 변경된 HTTP 요청을 전달한다. 변경된 HTTP 요청은 콘텍스트 인식 메타데이터 및 사용자 디바이스 (102) 의 로케이션을 포함한다.
블록 534 에서, 웹 서버 (110) 는 프록시 서버 (108) 에 콘텐츠를 제공하며, 그 콘텐츠는 사용자 디바이스 (102) 의 콘텍스트 및 로케이션에 대한 맥락 콘텐츠를 포함한다.
블록 536 에서, 프록시 서버 (108) 는 사용자 디바이스 (102) 에 콘텍스트 인식 콘텐츠를 제공한다.
상기 개시를 고려하여, 프로그래밍에서의 숙련자는 예를 들어, 본 명세서에서의 플로우 차트들 및 연관된 설명에 기초하여 어려움 없이 개시된 발명을 구현하기 위해 컴퓨터 코드를 기록할 수 있거나 적절한 하드웨어 및/또는 회로들을 식별할 수 있다. 따라서, 특정 세트의 프로그램 코드 명령들 또는 상세한 하드웨어 디바이스들의 개시는 본 발명을 어떻게 제조하고 이용할 것인지의 충분한 이해를 위해 필요한 것으로 간주되지 않는다. 청구된 컴퓨터 구현 프로세스들의 발명적 기능성은 상기 설명에서, 그리고 다양한 프로세스 플로우들을 예시할 수도 있는 도면들과 함께 더욱 상세하게 설명된다.
하나 이상의 예시적인 양태들에서, 설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 소프트웨어로 구현되면, 그 기능들은 컴퓨터 판독가능 매체 상에서 하나 이상의 명령들 또는 코드로서 저장되거나 송신될 수도 있다. 컴퓨터 판독가능 매체들은 컴퓨터 저장 매체들과 일 장소로부터 다른 장소로의 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 통신 매체들 양자를 포함한다. 저장 매체들은 컴퓨터에 의해 액세스될 수도 있는 임의의 이용가능한 매체들일 수도 있다. 제한이 아닌 일 예로, 이러한 컴퓨터 판독가능 매체들은 RAM, ROM, EEPROM, CD-ROM 또는 다른 광 디스크 저장, 자기 디스크 저장 또는 다른 자기 저장 디바이스들, 또는 명령들 또는 데이터 구조들의 형태로 원하는 프로그래 코드를 운반 또는 저장하는데 이용될 수도 있고 컴퓨터에 의해 액세스될 수도 있는 임의의 다른 매체를 포함할 수도 있다.
또한, 임의의 접속이 컴퓨터 판독가능 매체라 적절히 불리게 된다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스티드 페어, 디지털 가입자 회선 ("DSL"), 또는 적외선, 무선 및 마이크로파와 같은 무선 기술들을 이용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신된다면, 매체의 정의에는 동축 케이블, 광섬유 케이블, 트위스티드 페어, DSL, 또는 적외선, 무선 및 마이크로파와 같은 무선 기술들이 포함된다.
디스크 (disk) 및 디스크 (disc) 는 본 명세서에서 사용한 바와 같이, 콤팩트 디스크 ("CD"), 레이저 디스크, 광 디스크, 디지털 다기능 디스크 ("DVD"), 플로피 디스크 및 블루-레이 디스크를 포함하며, 여기서 디스크 (disk) 들은 보통 데이터를 자기적으로 재생하는 한편, 디스크 (disc) 는 레이저를 이용하여 데이터를 광학적으로 재생한다. 상기의 조합들이 또한 컴퓨터 판독가능 매체들의 범위 내에 포함되어야 한다.
선택된 양태들이 상세히 예시 및 설명되었지만, 다양한 치환들 및 교체들이 다음의 청구항들에 의해 정의한 바와 같이, 본 발명의 사상 및 범위로부터 벗어남 없이 본 명세서에서 행해질 수도 있다는 것이 이해될 것이다.

Claims (20)

  1. 인터넷 프로토콜 (IP) 어드레스, 매체 액세스 제어 (MAC) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법으로서,
    도메인 네임 서버 (DNS) 로부터 사용자 디바이스에 관련된 IP 대 DHCP (dynamic host configuration protocol) 바인딩들을 수신하는 단계;
    상기 DNS 로부터 상기 사용자 디바이스에 관련된 MAC 어드레스를 수신하는 단계;
    상기 사용자 디바이스에 대한 상기 MAC 어드레스 및 상기 IP 어드레스를 연관시키는 단계;
    상기 MAC 어드레스를 이용하여 상기 사용자 디바이스의 지리적 로케이션을 획득하는 단계;
    IP:MAC 어드레스 연관성, 상기 사용자 디바이스의 상기 로케이션 및 상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션에 대응하는 타임스탬프를 갖는 테이블을 구축하는 단계; 및
    상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션을 이용하여 상기 사용자 디바이스에 맥락 콘텐츠 (contextual content) 를 전달하는 단계를 포함하는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법.
  2. 제 1 항에 있어서,
    상기 맥락 콘텐츠는 상기 사용자 디바이스의 상기 로케이션에 의해 적어도 부분적으로 결정되는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법.
  3. 제 1 항에 있어서,
    상기 IP 대 DHCP 바인딩들, 상기 MAC 어드레스 및 상기 사용자 디바이스의 로케이션은 실시간으로 주기적으로 수신되는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법.
  4. 제 1 항에 있어서,
    상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션을 이용하여 상기 사용자 디바이스에 맥락 콘텐츠를 전달하는 단계는 로케이션 결정 기술로부터 상기 사용자 디바이스의 IP 어드레스를 디커플링함으로써 상기 사용자 디바이스의 상기 IP 어드레스에 독립적인, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법.
  5. 제 1 항에 있어서,
    상기 사용자 디바이스의 상기 IP 어드레스를 이용하여 상기 사용자 디바이스의 상기 MAC 어드레스를 결정하는 단계를 더 포함하는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법.
  6. 제 5 항에 있어서,
    상기 사용자 디바이스의 상기 MAC 어드레스는 상기 사용자 디바이스의 로케이션을 결정하는데 이용되는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법.
  7. 제 6 항에 있어서,
    상기 사용자 디바이스의 상기 로케이션을 메타데이터로서 이용하여 콘텐츠에 대한 요청을 변경하는 단계를 더 포함하는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법.
  8. 인터넷 프로토콜 (IP) 어드레스, 매체 액세스 제어 (MAC) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템으로서,
    도메인 네임 서버 (DNS) 로부터 사용자 디바이스에 관련된 IP 대 DHCP (dynamic host configuration protocol) 바인딩들을 수신하기 위한 포지션 맵퍼 엘리먼트;
    상기 DNS 로부터 상기 사용자 디바이스에 관련된 MAC 어드레스를 수신하는 상기 포지션 맵퍼 엘리먼트;
    상기 사용자 디바이스에 대한 상기 MAC 어드레스 및 상기 IP 어드레스를 연관시키는 상기 포지션 맵퍼 엘리먼트;
    상기 MAC 어드레스를 이용하여 상기 사용자 디바이스의 지리적 로케이션을 획득하기 위한 로케이션 엔진;
    IP:MAC 어드레스 연관성, 상기 사용자 디바이스의 상기 로케이션 및 상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션에 대응하는 타임스탬프를 갖는 테이블을 구축하는 상기 포지션 맵퍼 엘리먼트; 및
    상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션을 이용하여 상기 사용자 디바이스에 맥락 콘텐츠 (contextual content) 를 전달하기 위한 서버를 포함하는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템.
  9. 제 8 항에 있어서,
    상기 맥락 콘텐츠는 상기 사용자 디바이스의 상기 로케이션에 의해 결정되는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템.
  10. 제 8 항에 있어서,
    상기 IP 대 DHCP 바인딩들, 상기 MAC 어드레스 및 상기 사용자 디바이스의 로케이션은 실시간으로 주기적으로 수신되는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템.
  11. 제 8 항에 있어서,
    상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션을 이용하여 상기 사용자 디바이스에 맥락 콘텐츠를 전달하는 것은 로케이션 결정 기술로부터 상기 사용자 디바이스의 IP 어드레스를 디커플링함으로써 상기 사용자 디바이스의 상기 IP 어드레스에 독립적인, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템.
  12. 제 8 항에 있어서,
    상기 사용자 디바이스의 상기 IP 어드레스는 상기 사용자 디바이스의 상기 MAC 어드레스를 결정하는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템.
  13. 제 12 항에 있어서,
    상기 사용자 디바이스의 상기 MAC 어드레스는 상기 사용자 디바이스의 로케이션을 결정하는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템.
  14. 제 13 항에 있어서,
    상기 사용자 디바이스의 상기 로케이션은 콘텐츠에 대한 요청을 변경하기 위한 메타데이터를 포함하는, IP 어드레스, MAC 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 시스템.
  15. 사용자 디바이스의 로케이션을 결정하기 위한 방법으로서,
    도메인 네임 서버 (DNS) 로부터 사용자 디바이스에 관련된 IP 대 DHCP (dynamic host configuration protocol) 바인딩들을 수신하는 단계;
    상기 DNS 로부터 상기 사용자 디바이스에 관련된 MAC 어드레스를 수신하는 단계;
    상기 사용자 디바이스에 대한 상기 MAC 어드레스 및 IP 어드레스를 연관시키는 단계;
    상기 MAC 어드레스를 이용하여 상기 사용자 디바이스의 지리적 로케이션을 획득하는 단계;
    IP:MAC 어드레스 연관성, 상기 사용자 디바이스의 상기 로케이션 및 상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션에 대응하는 타임스탬프를 갖는 테이블을 구축하는 단계; 및
    상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션을 이용하여 상기 사용자 디바이스에 맥락 콘텐츠 (contextual content) 를 전달하는 단계로서, 상기 맥락 콘텐츠는 상기 사용자 디바이스의 상기 로케이션에 의해 적어도 부분적으로 결정되는, 상기 맥락 콘텐츠를 전달하는 단계를 포함하는, 사용자 디바이스의 로케이션을 결정하기 위한 방법.
  16. 제 15 항에 있어서,
    상기 IP 대 DHCP 바인딩들, 상기 MAC 어드레스 및 상기 사용자 디바이스의 로케이션은 실시간으로 주기적으로 수신되는, 사용자 디바이스의 로케이션을 결정하기 위한 방법.
  17. 제 15 항에 있어서,
    상기 IP:MAC 어드레스 연관성 및 상기 사용자 디바이스의 상기 로케이션을 이용하여 상기 사용자 디바이스에 맥락 콘텐츠를 전달하는 단계는 로케이션 결정 기술로부터 상기 사용자 디바이스의 IP 어드레스를 디커플링함으로써 상기 사용자 디바이스의 상기 IP 어드레스에 독립적인, 사용자 디바이스의 로케이션을 결정하기 위한 방법.
  18. 제 15 항에 있어서,
    상기 사용자 디바이스의 상기 IP 어드레스는 상기 사용자 디바이스의 상기 MAC 어드레스를 결정하는, 사용자 디바이스의 로케이션을 결정하기 위한 방법.
  19. 제 18 항에 있어서,
    상기 사용자 디바이스의 상기 MAC 어드레스는 상기 사용자 디바이스의 로케이션을 결정하는, 사용자 디바이스의 로케이션을 결정하기 위한 방법.
  20. 제 19 항에 있어서,
    상기 사용자 디바이스의 상기 로케이션은 콘텐츠에 대한 요청을 변경하기 위한 메타데이터를 포함하는, 사용자 디바이스의 로케이션을 결정하기 위한 방법.
KR1020167002644A 2013-07-24 2014-07-21 인터넷 프로토콜 (ip) 어드레스, 매체 액세스 제어 (mac) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법 및 시스템 KR20160034930A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/949,335 US20150032905A1 (en) 2013-07-24 2013-07-24 Method and system for associating internet protocol (ip) address, media access control (mac) address and location for a user device
US13/949,335 2013-07-24
PCT/US2014/047359 WO2015013161A1 (en) 2013-07-24 2014-07-21 Method and system for associating internet protocol (ip) address, media access control (mac) address and location for a user device

Publications (1)

Publication Number Publication Date
KR20160034930A true KR20160034930A (ko) 2016-03-30

Family

ID=51352763

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167002644A KR20160034930A (ko) 2013-07-24 2014-07-21 인터넷 프로토콜 (ip) 어드레스, 매체 액세스 제어 (mac) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법 및 시스템

Country Status (6)

Country Link
US (1) US20150032905A1 (ko)
EP (1) EP3025485A1 (ko)
JP (1) JP2016527817A (ko)
KR (1) KR20160034930A (ko)
CN (1) CN105409188A (ko)
WO (1) WO2015013161A1 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6171445B2 (ja) * 2013-03-21 2017-08-02 富士通株式会社 割当装置及び割当プログラム
US9225681B2 (en) 2013-09-17 2015-12-29 Cisco Technology, Inc. Enabling mobile applications to acquire a MAC address for obtaining location information
US10069802B2 (en) * 2014-02-18 2018-09-04 Ciena Corporation Method for securely configuring customer premise equipment
US9439169B2 (en) * 2014-05-22 2016-09-06 Cisco Technology, Inc. Reducing paging delays using location analytics in communications networks
US20150350352A1 (en) * 2014-05-30 2015-12-03 Jonathan J. Valliere System and Method for Implementing Device Identification Addresses to Resist Tracking
US10404809B2 (en) * 2014-08-29 2019-09-03 Google Llc Systems and methods for adaptive associative routing for mobile messaging
US20160171415A1 (en) * 2014-12-13 2016-06-16 Security Scorecard Cybersecurity risk assessment on an industry basis
US20160274813A1 (en) * 2015-03-16 2016-09-22 Intermodal Data, Inc. Storage system management and representation methods and apparatus
US9826359B2 (en) 2015-05-01 2017-11-21 The Nielsen Company (Us), Llc Methods and apparatus to associate geographic locations with user devices
CN108307296B (zh) * 2016-10-06 2020-11-03 瑞莱恩斯吉奥信息通讯有限公司 对国际位置中的用户设备提供差异化服务的系统和方法
US11496435B2 (en) 2016-10-28 2022-11-08 The Nielsen Company (Us), Llc Systems, methods, and apparatus to facilitate mapping a device name to a hardware address
CN113630773B (zh) 2017-01-24 2023-02-14 华为技术有限公司 安全实现方法、设备以及系统
CN106911801B (zh) * 2017-04-18 2019-12-10 北京梅泰诺通信技术股份有限公司 关联用户信息的方法及信息推送系统
CN107743155B (zh) * 2017-11-10 2021-04-13 北京知道创宇信息技术股份有限公司 Ip标注方法、装置、电子设备及存储介质
US10647300B2 (en) 2018-06-29 2020-05-12 Toyota Motor Engingeering & Manufacturing North America, Inc. Obtaining identifying information when intrusion is detected
WO2020168500A1 (zh) * 2019-02-20 2020-08-27 华为技术有限公司 一种获取信息的方法和终端设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060136372A1 (en) * 2004-11-19 2006-06-22 Schunemann Alan J Inserted contextual web content derived from intercepted web viewing content
AU2010201379B2 (en) * 2010-04-07 2012-02-23 Limelight Networks, Inc. System and method for delivery of content objects
CN101072243B (zh) * 2007-05-30 2010-09-29 华为技术有限公司 报文处理的方法及接入设备
US8838759B1 (en) * 2007-06-29 2014-09-16 Crimson Corporation Systems and methods for detecting unmanaged nodes within a system
CN101442436A (zh) * 2007-11-20 2009-05-27 国际商业机器公司 用于管理ip网络的方法和系统
WO2010007289A2 (fr) * 2008-06-24 2010-01-21 France Telecom Acces reseau a distance via un reseau visite
EP2469945A1 (en) * 2010-12-23 2012-06-27 British Telecommunications public limited company WLAN location services

Also Published As

Publication number Publication date
US20150032905A1 (en) 2015-01-29
WO2015013161A1 (en) 2015-01-29
EP3025485A1 (en) 2016-06-01
JP2016527817A (ja) 2016-09-08
CN105409188A (zh) 2016-03-16

Similar Documents

Publication Publication Date Title
KR20160034930A (ko) 인터넷 프로토콜 (ip) 어드레스, 매체 액세스 제어 (mac) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법 및 시스템
US9160703B2 (en) Request routing management based on network components
US10284516B2 (en) System and method of determining geographic locations using DNS services
US9800539B2 (en) Request routing management based on network components
US9083743B1 (en) Managing request routing information utilizing performance information
US8527987B2 (en) Method and device for installing applications on NFC-enabled devices
US10341288B2 (en) Methods circuits devices systems and associated computer executable code for providing conditional domain name resolution
WO2021004528A1 (zh) 应用实例的地址获取方法、装置、设备及存储介质
US9509786B2 (en) Enabling mobile applications to acquire a MAC address for obtaining location information
US10785132B2 (en) Method and server for monitoring users during their browsing within a communications network
KR101780802B1 (ko) 통신 시스템에서 ip 어드레스를 이용한 디바이스 컨텍스트 관리 방법 및 장치
US9369532B2 (en) Method and apparatus for providing contextual context to a user device
CN107667518B (zh) 电子设备的自动发现和上线
US20140025775A1 (en) Content delivery system and method based on information-centric networking
US20150245224A1 (en) Methods and systems of internet protocol optimization for cellular data networks
KR101869253B1 (ko) 통신 시스템에서 ip 어드레스를 이용한 디바이스 컨텍스트 관리 방법 및 장치
KR20190125969A (ko) 멀티미디어 서비스 콘텐트 제공 장치 및 방법
KR102344599B1 (ko) 멀티미디어 시스템에서 미디어 콘텐츠에 관련된 정보를 송/수신하는 장치 및 방법
EP3166284A1 (en) Methods circuits devices systems and associated computer executable code for providing conditional domain name resolution
JP2020517036A (ja) デバイス固有ターゲティングのクッキー不要オプトアウトの為のシステム及び方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid