KR101567846B1 - 브로드캐스트 메시지들을 타겟팅하는 시스템 및 방법 - Google Patents

브로드캐스트 메시지들을 타겟팅하는 시스템 및 방법 Download PDF

Info

Publication number
KR101567846B1
KR101567846B1 KR1020127000078A KR20127000078A KR101567846B1 KR 101567846 B1 KR101567846 B1 KR 101567846B1 KR 1020127000078 A KR1020127000078 A KR 1020127000078A KR 20127000078 A KR20127000078 A KR 20127000078A KR 101567846 B1 KR101567846 B1 KR 101567846B1
Authority
KR
South Korea
Prior art keywords
broadcast
targeted
electronic
broadcast message
receiver
Prior art date
Application number
KR1020127000078A
Other languages
English (en)
Other versions
KR20120019501A (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 KR20120019501A publication Critical patent/KR20120019501A/ko
Application granted granted Critical
Publication of KR101567846B1 publication Critical patent/KR101567846B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/252Processing of multiple end-users' preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

브로드캐스트 네트워크에서 잠재적인 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법과 시스템이 제공된다. 방법과 시스템은 타겟팅된 브로드캐스트 메시지의 지정된 전자 수신기들과 연관된 식별 정보를 수집하는 것, 컴퓨터 프로세서를 이용하여 상기 식별 정보를 사용하는 데이터 세트 구조를 생성하는 것, 데이터 세트 구조를 상기 타겟팅된 브로드캐스트 메시지와 연관시키는 것, 그리고 복수의 전자 수신기들로 데이터 세트 구조와 타겟팅된 브로드캐스트 메시지를 브로드캐스팅하는 것을 포함하며, 데이터 세트 구조는 복수의 전자 수신기들 중 적어도 하나의 전자 수신기가 타겟팅된 브로드캐스트 메시지가 적어도 하나의 전자 수신기로 타겟팅 되는지 여부를 결정할 수 있도록 허용하는 정보를 제공한다.

Description

브로드캐스트 메시지들을 타겟팅하는 시스템 및 방법{A SYSTEM FOR AND METHOD OF TARGETING BROADCAST MESSAGES}
본 출원은 "Method for Targeting Broadcast Messages Using Embedded Sets" 이란 명칭으로 2009년 6월 1일자로 출원된 미국 가특허출원 No.61/213,354에 우선권을 주장하며, 상기 출원의 개시 내용은 그 전체가 참조에 의해 본 명세서에 통합된다.
다양한 네트워킹 콘텍스트들(contexts)에서, 하나의 노드로부터 다른 연결된 노드들의 지정된 서브세트(subset)로 메시지들을 보내는 것이 종종 필요하다. 통상적으로 사용되는 두 가지의 메시징(messaging) 방법들은 (유니캐스트로도 알려진) 포인트-투-포인트(point-to-point) 및 브로드캐스트이다.
포인트-투-포인트 메시징은 모든 노드가 고유의 식별자 및 송신기 노드 어드레스들을 통해 어드레스가능(addressable)하며, 각각 지정된 수신기 노드로 메시지의 사본을 송신한다. 포인트-투-포인트 메시징은, 인터넷 프로토콜(Internet Protocol, 이하 IP) 네트워크들에서 메시지들을 전송할 때 가장 널리 사용되는 방법이다. 포인트-투-포인트 메시징은 주어진 메시지가 복사되어 다른 많은 경로들로 보내질 수 있으므로, 지정된 수신기들의 수가 많을 때, 리소스들의 측면에서 고가이다(expensive).
브로드캐스트 메시징은 단일 메시지를 동시에 모든 수신기들에게 보내는 것을 포함한다. 실시예들은 OTA(Over-The Air)(브로드캐스트) TV와 케이블 및 위성 컨텐츠 전송이다. 브로드캐스트 메시징에서, 지정된 수신기들의 서브세트로의 메시지를 제한하기 위한 빌트-인(built-in) 메커니즘은 없다.
본 발명은 추가적인 목적들, 및 이점들과 함께 동반된 도면들과 함께 취해진 다음의 설명을 참조하여 가장 잘 이해될 수 있을 것이며, 여러 도면들에서 유사한 참조 번호들은 유사한 엘리먼트들을 식별하며, 상기 도면에서,
도 1은 특정 실시예에 따른 브로드캐스트 메시지들을 타겟팅하기 위한 시스템을 도시한 개략도이다.
도 2는 특정 실시예에 따른 브로드캐스트 메시지들을 타겟팅하기 위한 모듈의 블록도이다.
도 3은 특정 실시예에 따른 브로드캐스트 메시지들의 타겟팅을 전송하고 수신하는 것을 도시한 순서도이다.
도 4는 특정 실시예에 따른 세트 멤버쉽에 대한 수신기 ID 정보를 테스트하는 것을 도시한 순서도이다.
도 5는 특정 실시예에 따른 세트 데이터 구조를 생성하는 것을 도시한 순서도이다.
도 6은 특정 실시예에 따른 브로드캐스트 메시지의 타겟팅된 수신기를 식별하는 것을 도시한 순서도이다.
도 7은 특정 실시예에 따른 브로드캐스트 메시지들을 타겟팅하기 위한 데이터 세트를 도시한 표이다.
도 8은 특정 실시예에 따른 타겟팅된 브로드캐스트 메시지의 전송과 수신을 도시한 순서도이다.
브로드캐스트 네트워크에서 가능한 수신기들의 특정 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법 및 시스템의 임의의 실시예들이 여기에 개시된다. 송신기는 메시지의 바람직한 수신기들과 연관된 식별 정보로부터 구축된 세트 데이터 구조를 메시지에 삽입(embed)시킬 수 있다. 그러한 식별 정보는 예컨대 IP 어드레스 또는 MAC 어드레스를 사용하여 수신기를 고유하게 식별할 수 있다. 식별 정보는 우편 번호, 거리 이름 또는 광고 세그먼트(segment) 코드(code)로써 수신기들의 그룹을 식별할 수도 있다. 식별 정보는 송신기와 수신기 모두에 의해 알려질 수 있다. 메시지는 수신기들에 브로드캐스트될 것이고, 각각의 수신기는 그들 각자의 식별 정보 데이터가 삽입된 세트에서 표현되어 있는지 여부를 결정하기 위해 세트 멤버쉽 동작을 수행할 수 있다. 만약, 상기 세트내에 특정 수신기에 대한 식별 정보가 표시되어 있지 않다면, 그 특정 수신기에 의해 메시지는 무시될 수도 있다. 이러한 방법은 단지 단순한 브로드캐스트 메시징(예컨대, UDP/IP)을 사용한 브로드캐스트 네트워크에서 수신기들의 서브세트로 메시지를 송신하는 능력을 제공할 수 있고, 송신기 및 수신기들 사이의 사전 통신을 필요로 하지 않을 수 있다. 이것은 대역폭을 아낄 수 있다. 이 방법의 효율성은 수신기들에 대한 빠르고 단순한 세트 멤버쉽 테스팅 방법뿐만 아니라 수신기 식별 정보의 임의의 타입들에 대한 컴팩트(compact)한 세트 표현을 사용하여 향상될 수 있다.
소수의 양성 오류(false positive) 세트 멤버쉽 에러들의 댓가를 치루지만,블룸 필터들(bloom filters)은 단순한 해싱(hashing)에 기초하여 빠르고 단순한 세트 멤버쉽 테스트를 통한 컴팩트한 세트 표시의 일 예를 나타낸다. 이러한 에러율은 세트 표시(representation)의 사이즈를 증가시킴에 의해 감소될 수 있다. 예컨대, n 수신기들에 타겟팅하기 위하여, 10*n 비트 사이즈의 블룸 필터는 단지 1%미만의 양성 오류 에러율을 만들어 낼 것이다(음성 오류들은 없음). 타겟팅된 광고와 같은, 많은 애플리케이션에서 작은 양성 오류 에러율은 허용가능하다.
도 1은 특정 실시예에 따른 브로드캐스트 메시지들을 타겟팅하기 위한 시스템을 도시한 개략도이다. 도시된 바와 같이, 네트워크(102)는 네트워크 엘리먼트(104), 네트워크 엘리먼트(106), 데이터 저장부(108), 및 네트워크 엘리먼트(112)를 포함하는 하나 이상의 장치(device)들과 통신가능하게(communicatively) 결합될 수 있다. 네트워크 엘리먼트들(104, 106)은 수신기 멤버쉽 식별 모듈들(120)을 포함할 수 있다. 네트워크 엘리먼트(112)는 브로드캐스트 타겟팅 모듈들(202)을 포함할 수 있다. 네트워크(110)는 통신가능하게 네트워크(102), 네트워크 엘리먼트(116), 및 네트워크 엘리먼트(118)와 결합될 수 있다. 다른 장치들은 하나 이상의 중계 장치들을 통해 네트워크들(102, 110)과 통신가능하게 결합될 수 있다.
네트워크 엘리먼트들, 컴퓨터들, 및 하나 이상의 모듈들을 포함할 수 있는 브로드캐스트 메시지들을 타겟팅하기 위한 방법 및 시스템의 컴포넌트들을 후술한다. 여기서 사용될 때, "모듈"이라는 용어는 컴퓨팅 소프트웨어, 펌웨어, 하드웨어, 및 그들의 다양한 조합들을 지칭함이 이해될 수 있다. 그러나 모듈들은 하드웨어, 펌웨어 상에서 구현되지 않거나, 프로세서 판독가능하고, 기록가능한 저장매체에 기록되지 않은 소프트웨어(즉, 모듈은 소프트웨어 그 자체가 아니다.)로 해석되지 않아야한다. 모듈들은 예시적인 것이라는 것이 주의된다. 모듈들은 다양한 애플리케이션들을 지원하기 위해 결합, 통합, 분리, 및/또는 복제될 수 있다. 또한, 특정 모듈에서 수행되는 것으로 여기에 기술된 기능은 하나 이상의 다른 모듈들에서 수행될 수 있고, 그리고/또는 특정 모듈에서 수행되는 기능에 부가하여 또는 이에 대신하여 하나 이상의 다른 장치들에 의해 수행될 수 있다. 게다가, 모듈들은 다수의 장치들, 및/또는 서로 국부적(local) 또는 원격적인 다른 컴포넌트들을 통해 수행될 수 있다. 부가적으로, 모듈들은 하나의 장치로부터 이동되어, 그 밖의 다른 장치에 부가될 수 있고, 그리고/또는 두 장치들에 모두 포함될 수 있다.
네트워크들(102, 110)은 하나 이상의 무선 네트워크, 유선 네트워크, 또는 유선 네트워크와 무선 네트워크의 임의의 조합일 수 있다. 하나 이상의 실시예들에 따르면, 네트워크(102)는 브로드캐스트 서비스 제공자의 네트워크(예컨대, 케이블 네트워크)일 수 있다. 네트워크(110)는 외부의 네트워크(예컨대, 인터넷)일 수 있다. 네트워크들(102, 110)은 하나 이상의 광섬유 네트워크(fiber optics network), 수동 광 통신망(passive optical network), 케이블 네트워크(cable network), 인터넷 네트워크, (예컨대, C밴드, Ku밴드, 또는 Ka밴드에서 동작하는) 위성 네트워크, 무선 랜(wireless LAN), GSM(Global System for Mobile Communication), PCS(Personal Communication Service), PAN(Personal Area Network), D-AMPS, Wi-Fi, 고정 무선 데이터(Fixed Wireless Data), IEEE 802.11a, 802.11b, 802.15.1, 802.11n, 및 802.11g, 또는 데이터 신호를 전송하고, 그리고/또는 수신하기 위한 임의의 다른 유,무선 네트워크를 포함할 수 있다. 부가적으로, 네트워크들(102, 110)은 전화선, 광섬유, IEEE 이더넷 802.3, WAN(Wide Area Network), LAN(Local Area Network), 또는 인터넷과 같은 글로벌 네트워크를 포함하나 이에 한정되지 않는다. 또한, 네트워크들(102, 110)은 인터넷 네트워크, 무선 통신 네트워크, 셀룰러 네트워크(cellular network), 또는 그들의 임의의 조합 또는 그들과 유사한 네트워크를 지원할 수 있다. 네트워크들(102, 110)은 자립형 네트워크(stand-alone network)로서 또는 서로 협력하여 동작하는 상술한 네트워크들의 하나 또는 임의의 수의 예시적인 타입들을 추가적으로 포함할 수 있다. 네트워크들(102, 110)은 통신가능하게 결합된 하나 이상의 네트워크 엘리먼트들의 하나 이상의 프로토콜들을 이용할 수 있다. 네트워크들(102, 110)은 다른 프로토콜들로 변환되거나, 다른 프로토콜들로부터 네트워크 장치들의 하나 이상의 프로토콜들로 변환될 수 있다. 비록 네트워크들(102, 110)은 각각 단일의 네트워크로 도시되어 있지만, 하나 이상의 실시예들에 따라 네트워크(102)와 네트워크(110)는 각각 예컨대, 서비스 제공자 네트워크, 인터넷, 브로드캐스터(broadcaster)의 네트워크, 케이블 TV 네트워크, 회사 네트워크들, 및 홈 네트워크들과 같은 각각 복수의 상호 연결된 네트워크들을 포함할 수 있다는 것이 이해되어질 것이다.
네트워크 엘리먼트들(104, 106, 112, 116, 118), 및 데이터 저장부(108)는 예컨대, 브로드캐스트 TV 데이터, 비디오 회의 데이터, 멀티미디어 데이터 및 다른 데이터와 같은 데이터를 네트워크들(102, 110)로 전송할 수 있고, 네트워크들(102, 110)로부터 전송받을 수 있다. 데이터는 기준 통신 프로토콜, 혹은 기준 네트워킹 프로토콜을 이용하여 전송되고, 수신될 수 있다. 예컨대, 데이터는 또한 WAP(Wireless Application Protocol), MMS(Multimedia Messaging Service), EMS(Enhanced Messaging Service), SMS(Short Messaging Service), GSM(Global Systems for Mobile Communications) 기반 시스템들, CDMA(Code Division Multiple Access) 기반 시스템들, TCP/IP(Transmission Control Protocol/Internet) 프로토콜들, 또는 브로드캐스트 데이터의 송신 및 수신에 적합한 다른 프로토콜들 및 시스템들을 사용하여 전송 및/또는 수신될 수 있다. 데이터는 무선으로 전송 및 수신될 수 있거나, 이더넷 RJ45/카테고리 5 이더넷 연결, 섬유 연결, 기존의 전화기 유선 연결, 케이블 연결, 또는 다른 유선 네트워크 연결과 같은 전기 통신 연결들 또는 케이블(cabled) 네트워크를 이용할 수 있다. 네트워크들(102, 110)은 IEEE 802.1 1a, 802.1 1b, 및 802.1 Ig를 포함하는 기준 무선 프로토콜들을 이용할 수 있다. 네트워크들(102, 110)은 또한 IEEE 이더넷 802.3과 같은 유선 연결을 위한 프로토콜들을 이용할 수 있다.
네트워크 엘리먼트들(104, 106, 112, 116, 118) 및 데이터 저장부(108)는 데이터의 저장, 기록, 전송, 및 수신을 위한 하나 이상의 프로세서들을 포함할 수 있다. 비록 네트워크 엘리먼트들과 데이터 저장부(108)는 개별적인 엘리먼트들로 도시되어 있지만, 하나 이상의 네트워크 엘리먼트와 데이터 저장부(108)의 컨텐츠는 더 적은 혹은 더 많은 수의 장치들과 결합될 수 있고, 도 1에 도시되지 않은 부가적인 장치들과 연결될 수 있다. 게다가, 하나 이상의 장치들은 제1 네트워크 엘리먼트 및 데이터 저장부(108)와 로컬, 원격이거나, 혹은 그들의 조합일 수 있다.
일부 실시예들에 따르면, 네트워크 엘리먼트들(104, 106)은 전자 수신기들(예컨대, 셋-톱 박스(set-top box); 브로드캐스트 데이터를 수신하도록 구성되고, TV에 통합되는 장치; 또는 브로드캐스트 데이터를 수신할 수 있는 모바일 장치)일 수 있다. 네트워크 엘리먼트들(104, 106)은 타겟팅된 브로드캐스트 메시지들을 수신할 수 있다.
수신기 멤버쉽 식별 모듈(120)은 타겟팅된 브로드캐스트 메시지를 수신할 수 있고, 데이터 세트 구조를 전자 수신기와 연관된 식별 정보와 비교할 수 있고, 그리고 전자 수신기와 연관된 식별정보가 데이터 세트 구조의 식별 정보와 매칭하는 경우 전자 수신기와 연관된 동작을 수행할 수 있다. 일부 실시예들에 따르면, 수신기 멤버쉽 식별 모듈(120)은 수신기 또는 네트워크 엘리먼트가 타겟팅된 브로드캐스트 메시지에 의해 타겟팅되는지 여부를 결정하기 위하여 송신 네트워크 엘리먼트(예컨대, 네트워크 엘리먼트(112)의 브로드캐스트 타켓팅 모듈들(202)의 세트 데이터 생성 모듈(204))와 같은 동일한 알고리즘을 사용할 수 있다.
네트워크 엘리먼트(112)는 중앙 집중된(centralized) 위치(예컨대, 케이블 브로드캐스트 네트워크의 헤드엔드 위치(headend location))에 있는 장치 또는 서버 또는 장치들의 조합일 수 있다. 네트워크 엘리먼트(112)는 브로드캐스트 메시지들을 타겟팅하기 위한 하나 이상의 서비스를 제공할 수 있다.
데이터 저장부(108)는 네트워크에 액세스 가능한(accessible) 저장부일 수 있고, 네트워크 엘리먼트들(104, 106)에 대해 로컬, 원격 또는 이들의 조합일 수 있다. 데이터 저장부(108)는 RAID(Redundant Array of Inexpensive Disks), 테이프, 디스크, SAN(Storage Area Network), iSCSI(internet Small Computer Systems Interface) SAN, Fibre Channel SAN, CIFS(Common Internet File System), NAS(Network Attached Storage), NFS(Network File System), 또는 다른 컴퓨터 액세스 가능한 저장부를 이용할 수 있다. 하나 이상의 실시예들에서, 데이터 저장부(108)는 오라클 데이터베이스, 마이크로 소프트 SQL 서버 데이터베이스, DB2 데이터베이스, MySQL 데이터베이스, Sybase 데이터베이스, 객체 지향 데이터베이스(object oriented database), 계층 데이터베이스, 또는 다른 데이터베이스와 같은 데이터베이스일 수 있다. 데이터 저장부(108)는 데이터의 저장을 위한 단층 파일 구조들(flat file structures)을 이용할 수 있다.
일부 실시예들에 따르면, 데이터 저장부(108)는 타겟팅된 메시지 데이터, 수신기 식별 데이터(receiver identification data), 해쉬 알고리즘 데이터(hash algorithm data), 시장 세분화 데이터(market segmentation data) 및 브로드캐스트 메시지들을 타겟팅하기 위한 다른 데이터를 저장할 수 있는 관계형 데이터베이스(relational database)일 수 있다. 데이터는 브로드캐스트 메시지, 수신기 식별 데이터, 해쉬 알고리즘 데이터 또는 다른 정보에 대한 수신기들을 식별하기 위해 합계되고, 분류되고, 처리되고, 쿼리될 수 있다.
도 1에 도시된 시스템(100)의 다양한 컴포넌트들은 다양한 애플리케이션들과 플랫폼들(platforms)을 지원하기 위하여 더 복제되고, 결합되고, 그리고/또는 통합될 수 있다. 부가적인 엘리먼트들이 다양한 애플리케이션들을 지원하기 위해 상술한 시스템들에서 구현될 수 있다.
어드레스가능한 광고 공간에서, 고객들의 선택 그룹에 특정 광고를 타겟팅하는 것이 유용할 수 있다. 그와 같은 광고는 다양한 형식들을 가질 수 있다. 일부 경우들에서, 광고 또는 광고 향상(enhancement)(예컨대, 30초 비디오 광고(commercial)를 오버레이하는(overlaying) 대화형 애플리케이션)은 수신자들의 서브세트에만 디스플레이될 수 있다. 타겟팅되지 않은 고객들은 광고 및/또는 광고 향상을 볼 수 없을 수도 있다. 다른 경우들에서, 각각의 고객에게 보여지는 광고는 이용가능한 광고들의 세트로부터 선택될 수 있고, 수신기들의 상이한 서브세트들은 상이한 광고들을 표시한다.
도 1에 도시된 시스템 혹은 다른 시스템들 상에서 수행될 수 있는 여기서 설명된 실시예에 따른 방법은 브로드캐스트 수단들을 통해 보내진 메시지들이, 삽입된(embedded) 세트들을 사용하여 수신기들의 서브세트에 타겟팅되는 방법을 제공한다. 상기 방법은 : 송신기가 특정 메시지의 지정 수신기들과 연관된 식별 정보를 수집하는 단계; 송신기가 수신기 식별 정보로부터 세트 데이터 구조를 생성하는 단계; 송신기가 메시지에 세트 데이터 구조를 삽입(embed)하는 단계; 및 송신기가 결과 메시지를 다수의 수신기들로 브로드캐스팅하는 단계 중에 하나 이상을 포함할 수 있다. 다수의 수신기들 각각은 그 후 수신된 메시지 내에 삽입된 세트 데이터 구조의 멤버인지 여부를 알기 위해 메시지의 각각의 식별 정보를 테스트할 수 있고; 그리고 각각의 수신기는 세트 멤버쉽 테스트의 결과에 기초하여 구분되는 행동을 생성할 수 있다.
이러한 방법에서, 수신기 상에 저장된 식별 (ID) 정보는 수신기에게 이전에 알려진 데이터일 수 있고, 거래들(transactions)에 타겟팅한 독점적인 수신기와 송신기를 통해 관리되고 전송되는 특별한 코드들이 아닐 수 있다.
하나의 가능한 세트 데이터 구조는 블룸 필터(Bloom filter)이다. 블룸 필터는 수신기 ID 정보 각각의 조각들을 고정된 사이즈 비트 벡터 내에 비트 어드레스로 해싱하고, 그 어드레스의 비트를 참(예컨대, "1")으로 세팅함에 의해 생성될 수 있다. 이것은 매번 구분되는 해싱 함수를 사용하여 여러번 반복(예컨대, 5에서 10)될 수 있다. 수신기에 대해 메시지 타겟팅 결정을 하는 것은 그 후 삽입된 블룸 필터(즉, 비트 벡터)에 의해 규정된 세트에서 수신기 자신의 ID 정보를 멤버쉽에 대해 테스팅하는 것에 대응할 수 있다. 블룸 필터를 생성하는 데에 사용되는 동일한 해싱함수들은 그 후 수신기의 ID 정보에 적용될 수 있고, 이에 따라 어드레스된 모든 비트들이 참(true)(예컨대, "1")임이 확인된 경우, 세트 멤버쉽 테스트는 참(true)을 리턴한다. 어드레스된 모든 비트들이 거짓(false)(예컨대, "0")임이 확인된 경우, 세트 멤버쉽 테스트는 거짓(false)을 리턴한다. 이러한 세트 멤버쉽 테스트가 참(true)을 리턴한다면, 특정 애플리케이션 동작이 수행된다.(예컨대, 메시지가 처리된다.) 그렇지 않으면, 다른 동작이 수행된다.(예컨대, 메시지는 무시된다.)
대역폭, 메모리, 및 이 방법의 처리 이점들에 부가하여, 블룸 필터는 수신기 ID 정보가 암호화되는 경우, 프라이버시 혜택들을 제공할 수 있고, 제3자가 타겟팅 되고 있는 수신기들의 아이덴티티(identities)들을 파악하기 어렵게 한다.
일부 실시예들에 따르면, 아래의 도 2를 참조하여 더욱 자세하게 논의되는 바와 같이, 세트 데이터 생성 모듈(204)은 타겟팅된 브로드캐스트 메시지의 지정된 전자 수신기들과 연관된 식별 정보를 모을 수 있고, 상기 식별 정보를 사용하여 데이터 세트 구조를 생성할 수 있다. 그 후, 메시지는 타겟팅된 브로드캐스트 메시지와 함께 데이터 세트 구조에 연관(associate)(예컨대, 삽입된(embedded))될 수 있고, 복수의 전자 수신기들(예컨대, 네트워크 엘리먼트(104, 106))에 데이터 세트 구조와 함께 브로드캐스트될 수 있다. 데이터 세트 구조는 타겟팅된 브로드캐스트 메시지가 전자 수신기에 타겟팅 되는지를 전자 수신기가 결정하는 것을 허용하는 정보를 제공할 수 있다.
도 2는 특정 실시예에 따른 브로드캐스트 메시지들을 타겟팅하는 모듈의 블록도이다. 도시된 바와 같이, 브로드캐스트 타겟팅 모듈(202)은 세트 데이터 생성 모듈(204), 데이터 브로드캐스트 모듈(206), 및 에러 처리 및 보고 모듈(210)을 포함하는 하나 이상의 컴포넌트들을 포함할 수 있다. 비록, 브로드캐스트 타겟팅 모듈(202)은 단일 모듈로 서술되어 있지만, 브로드캐스트 타겟팅 모듈(202)의 모듈들 또는 기능은 단일 장치에 위치할 수도 있고 또는 하나 이상의 중앙 집중된 서버 및 하나 이상의 고객 구내(premises) 장치 또는 최종 사용자 장치들을 포함하는 복수의 장치들에 걸쳐 분산될 수 있다.
세트 데이터 생성 모듈(204)은 타겟팅된 브로드캐스트 메시지의 지정된 전자 수신기들과 연관된 식별 정보를 모을 수 있고, 상기 식별 정보를 이용하여 데이터 세트 구조를 생성할 수 있다. 그 후, 메시지는 타겟팅된 브로드캐스트 메시지와 함께 데이터 세트 구조에 연관(예컨대, 삽입된)될 수 있고, 복수의 전자 수신기들(예컨대, 네트워크 엘리먼트(104, 106))에 데이터 세트 구조와 함께 브로드캐스트될 수 있다. 데이터 세트 구조는 전자 수신기로 하여금 타겟팅된 브로드캐스트 메시지가 전자 수신기에 타겟팅 되었는지 여부를 결정하도록 허용하는 정보를 제공할 수 있다. 데이터 세트 구조를 형성하는데에 사용되는 식별 정보는 예컨대, 매체 접속 제어 어드레스(Media Access Control address, 이하 MAC 어드레스), 거리 어드레스, 고객 식별자, 및 네트워크 어드레스와 같은 지정된 전자 수신기를 고유하게 식별하는 정보를 포함할 수 있다. 데이터 세트 구조를 형성하는데에 사용되는 식별 정보는 또한 예컨대, 우편 번호, 도시 이름, Nielsen™ Claritas PRIZM 코드, 인구통계학적 프로필(demographic profile) 식별자, 세그먼트 식별자, 및 그룹 식별자와 같은 지정된 전자 수신기들의 집합체(collection)를 식별하는 정보를 포함할 수 있다. 데이터 세트 구조는 하나 이상의 형식들로 구조화(structured)될 수 있고, 예컨대 수신기 정보의 압축된 리스트 또는 단일 해쉬 알고리즘을 이용하여 생성되는 구분되는(distinct) 멀티-비트 해쉬들(multi-bit hashes)의 집합체일 수 있다. 일부 실시예들에 따르면, 데이터 세트 구조는 블룸 필터일 수 있다.
블룸 필터는 고정-크기 비트 벡터 내의 비트 어드레스로 타겟팅된 브로드캐스트 메시지의 지정된 전자 수신기들과 연관되는 식별 정보의 해쉬 코드(hash code)를 생성하기 위해 해슁(hashing) 알고리즘을 사용하는 동작(operation), 및 비트 어드레스에 대응하는 비트를 참(true)으로 세팅(setting)하는 것에 의해 생성될 수 있다. 해슁 동작과 비트 세팅은 매번 상이한 해슁 알고리즘을 사용하여 한번 이상 반복될 수 있다. 블룸 필터를 생성하는 것은 아래의 도 5를 참조하여 더 상세히 후술된다.
데이터 브로드캐스트 모듈(206)은 타겟팅된 브로드캐스트 메시지를 지상파 브로드캐스트 TV 네트워크, 케이블 TV 네트워크, 위성 TV 네트워크, 및 다른 브로드캐스트 네트워크들의 타입들 중 하나 이상을 통해 브로드캐스트할 수 있다. 여러 실시예에 따르면, 데이터 브로드캐스트 모듈(206)은 브로드캐스트 네트워크상의 모든 네트워크 엘리먼트들, 또는 수신기들에게 타겟팅된 브로드캐스트 메시지를 브로드캐스트할 수 있다. 아래에 도 6과 관련하여 더욱 자세하게 설명된 것처럼, 특정 수신기 또는 네트워크 엘리먼트는 특정 수신기 또는 네트워크 엘리먼트로 타겟팅된 브로드캐스트 메시지가 타겟팅되는지 여부를 결정할 수 있다.
에러 처리 및 보고 모듈(210)은 브로드캐스트 메시지들을 타겟팅하는 것과 연관된 하나 이상의 에러들을 처리할 수 있다. 에러 처리 및 보고 모듈(210)은 에러가 발생하는 경우 관리자들에게 경고들 또는 메시지들을 제공할 수 있다. 에러 처리 및 보고 모듈(210)은 진단 테스트 결과 리포트들을 포함한 하나 이상의 리포트들을 제공할 수 있다. 에러 처리 및 보고 모듈(210)은 로그 파일들 및 서식화된 리포트들을 생산할 수 있다.
도 3은 특정 실시예에 따른 타겟팅 브로드캐스트 메시지들을 전송하고 수신하는 것을 도시하는 순서도이다. 블록(302)에서, 특정 메시지의 지정된 수신기들과 연관된 ID 정보가 수집될 수 있다. 이러한 수집은 송신기 노드에 의해 수행될 수 있으나, 대안적으로 네트워크와 연관된 또 다른 노드 또는 에이전시(agency)에 의해 수행될 수도 있다. 수신기 ID 정보는 기존의 어드레스 정보를 포함하거나 또는 기존의 어드레스 정보로 구성될 수 있고, 또는 다른 수신기로부터 수신기(또는 수신기들의 그룹)를 구별하기에 적합한 임의의 다른 정보일 수 있다. 예컨대, 수신기 ID 정보는 예컨대, MAC(Media Access Control) 어드레스들, 거리 어드레스들, 또는 고객 식별 데이터와 같은 고유의 수신기 어드레스들을 포함하거나 또는 이들로 구성될 수 있다. 대안적으로, 수신기 식별 정보는 고유하지 않은 어드레스들 예컨대 우편 번호, 도시 이름들, Nielsen™ Claritas PRIZM 코드 또는 수신기들의 세그먼트들을 표현하는 다른 코드들을 포함하거나 또는 이들로 구성될 수 있다. 수신기들에서 쉽게 이용가능하고, 메시지들을 선택적으로 타겟팅하기에 적합한 임의의 식별 정보가 이용될 수 있다. 그러한 수신기 ID 정보는 예컨대, 광고주(advertiser)에 의해 제공된 기존 고객 리스트를 케이블 운용자(cable operator)의 고객 데이터베이스 내의 고객 접촉 정보와 비교하고, 그리고 광고주 고객 리스트에 적절한(pertinent) 수신기 ID 정보(예컨대, MAC 어드레스)를 모음(gathering)에 의해 수집될 수 있다. 대안적으로, 예컨대, ID 정보는 모든 유효한 우편 번호들의 세트로부터 선택된 특정 메시지에 적절하다고 여겨지는 우편번호들을 포함하거나, 이들로 구성될 수 있다. 유사하게, 더 복잡한 타겟팅 결정들(예컨대, 행동 타겟팅)이 수신기들에 대한 이용가능한 모든 정보를 사용하여 송신기에 의해 채용될 수 있고 이는 선택된 수신기들의 ID 정보를 수집하게 된다.
블록(304)에서, 세트 데이터 구조는 수신기 ID 정보로부터 생성될 수 있다. 세트 데이터 구조는 메시지에 의해 타겟팅된 수신기들을 식별하는 수신기 ID 정보의 부호화된 형식일 수 있다. 블룸 필터를 사용한 세트 데이터 구조를 부호화하는 방법은 아래의 도 5를 참조하여 서술된다. 일부 대안들은 : 수신기 ID 정보의 압축되지 않은 리스트를 이용하는 것, 하나 이상의 압축 기술들을 사용하여 압축된 수신기 ID 정보의 리스트를 이용하는 것, 그리고, 각각의 수신기 ID 정보를 표시하는 단일 해쉬 알고리즘을 사용하여 생성된 구분되는 멀티-비트의 해쉬들을 이용하는 것을 포함한다. 바람직하다면, 세트 데이터 구조는 또한 수신기 ID 정보의 다수의 집합체들을 다수의 세트들로 부호화할 수 있다.
블록(304)에서 생성된 바와 같은 하나의 가능한 세트 데이터 구조는 블룸 필터이다. 블룸 필터는 세트의 엘리먼트들을 비트 벡터로 부호화하기 위해 다수의 상이한 해슁 알고리즘들을 이용할 수 있고, 단일 비트는 각각의 해슁 알고리즘에 대한 각각의 엘리먼트에 대해 세팅될 수 있다. 블룸 필터는 컴팩트한 메모리 풋프린트(footprint), 빠른 부호화(encoding)와 복호화(decoding), 및 암호화(encryption)를 제공할 수 있다.
블록(306)에서 결과 세트 데이터 구조는 메시지와 연관될 수 있다. 일부 실시예들에 따라, 결과 데이터 세트 구조는 메시지에 삽입(embedded)될 수 있다. 이러한 삽입(embedding)은 송신기와 수신기들 모두에게 알려진 메시지와 연관된 헤더(header)에 데이터 세트 구조를 포함시킴으로써 행해질 수 있다. 세트 데이터 구조(들)의 타입의 표시는 또한 세트 및 연관된 부호화 메커니즘(encoding mechanism)에서 사용되는 수신기 ID 정보의 종류(들)을 식별하기 위해 헤더에 포함될 수 있다. 예컨대, 우편 번호를 사용하여 만들어진 세트 데이터 구조들과 블룸 필터는 다른 부호화 기술과 MAC 어드레스들을 사용하여 만들어진 세트 데이터 구조들로부터 헤더에서 구별될 수 있다. 블룸 필터들을 사용한 하나 이상의 실시예들에서, 예컨대, 비트 벡터의 사이즈, 바람직한 에러율, 및 해쉬 알고리즘 특성(예컨대, 적용 가능한 암호 "salt" 데이터 또는 임시의 데이터)과 같은 파라미터들에 대한 정보는 역시 메시지 내에 삽입될 수 있다.
블록(308)에서, 결과 메시지는 연관된 세트 데이터와 함께 다수의 수신기들에게 브로드캐스트될 수 있다.
블록(310)에서, 세트 데이터 구조는 메시지로부터 추출될 수 있고, 수신기와 연관된 적절한 ID 정보는 멤버쉽에 대한 세트 데이터에 대하여 테스트(비교)될 수 있다. 그러한 테스트는 각각의 수신기에서 수행되고, 수신기에서 실행되는 소프트웨어는 비교를 위한 적절한 부호화, 및 복호화 메커니즘(예컨대, 메시지 헤더의 비트와 같은 표시자(indicator)는 비교에 사용하기 위해 부호화 메커니즘을 명시할 수 있다.)들을 사용한 세트 데이터 구조에 대한 테스트를 위해 특정된(specified) 지역에 저장된 식별 정보를 사용하도록 구성된다. 예컨대, 만약에 메시지 헤더가, 세트 데이터 구조가 MAC 어드레스들을 사용하고 표시하고, 부호화 메커니즘이 블룸 필터임을 표시하면, 블룸 필터가 지정된 수신기들의 MAC 어드레스들을 부호화한다고 가정하여, 수신기는 수신기 MAC 어드레스의 다수의 적절한 해쉬들을 생성하고, 생성된 해쉬들을 세트 데이터 구조와 비교할 수 있다. 만약에 수신기 ID 정보의 다수의 집합체들이 세트 데이터 구조(블록(304)으로 언급된)내에 부호화된다면, 그러한 세트 정보는 적절한 수신기 ID 정보에 대해 적합한 테스트를 위해 추출될 수 있다. 수신기 데이터와 세트 데이터 구조의 비교는 아래의 도 4를 참조하여 더 상세하게 논의된다.
블록(312)에서, 특정의 수신기가 브로드캐스트 메시지에서 세트 데이터 구조에 의해 표시된 세트의 멤버인지 아닌지에 관하여 결정(determination)이 내려질 수 있다. 특정의 수신기가 브로드캐스트 메시지의 세트 데이터 구조에 의해 표시된(indicated) 세트의 멤버라면(예컨대, 수신기와 연관된 식별 정보가 세트 데이터 구조의 식별 정보와 매칭), 방법(300)은 블록(314)에서 계속한다. 특정의 수신기가 브로드캐스트 메시지에서 세트 데이터 구조에 의해 표시되는 세트의 멤버가 아니라면(예컨대, 수신기와 연관된 식별 정보가 세트 데이터 구조의 식별 정보와 매칭(matching)하지 않음), 방법(300)은 블록(316)에서 계속한다.
블록(314)에서, 세트 데이터 구조에 의해 표시된 세트의 멤버인 수신기는 특정된 동작(action)을 수행할 수 있다. 예컨대, 메시지는 그 수신기상에 제공될 수 있다.
블록(316)에서, 세트 데이터 구조에 의해 표시된 세트의 멤버가 아닌 수신기는 멤버가 아닌 수신기에 대한 특정 동작을 수행할 수 있다(예컨대, 타겟팅된 브로드캐스트 메시지를 무시(ignore) 혹은 숨김(suppress)). 대안적인 타겟팅 동작들은 그 밖의 다른 메시지를 대신하여 하나의 메시지를 제공(present)하는 것을 포함할 수 있다.
다른 애플리케이션들 중에서, 이 방법은 브로드캐스트, 위성, 및 케이블 TV 네트워크들에서 타겟팅된 광고 메시지들(대화형이거나(interactive), 또는 비-대화형인 것(non-interactive))을 전송하는데에 사용될 수 있다.
도 4는 특정 실시예에 따른 세트 멤버쉽에 대해 수신기 ID 정보를 테스트(비교)하는 것을 도시한 도 3의 블록(310)의 상세 순서도이다. 블록(402)에서, 세트 데이터 구조는 브로드캐스트 메시지로부터 추출될 수 있다. 세트 데이터 구조는 삽입되거나(embedded), 첨부되거나, 또는 브로드캐스트 메시지에 달리 연관될 수 있다. 일부 실시예들에 따르면, 세트 데이터 구조는 브로드캐스트 메시지 헤더의 명시된 부분에 삽입될(embedded) 수 있다.
블록(404)에서, 타겟팅된 브로드캐스트 메시지의 수신기는 수신기 식별 정보를 추출하기 위해 필요한 세트 데이터 구조를 복호화하거나, 압축을 해제하거나, 또는 달리 처리할 수 있다. 예컨대, 브로드캐스트 메시지 헤더 데이터의 일부는 압축이 해제될 수 있고, 고정된 사이즈의 비트 벡터는 추출될 수 있다.
블록(406)에서, 수신기 식별 정보는 액세스될 수 있다. 예컨대, 수신기의 MAC 어드레스가 얻어질 수 있다. 다른 수신기 식별 정보가 사용될 수 있다(예컨대, 거리 어드레스, 고객 식별자, 계좌 번호, 네트워크 어드레스, 우편 번호, 도시 이름, Nielsen Claritas PRIZM 코드, 인구통계학적 프로필 식별자, 세그먼트 식별자, 및 그룹 식별자).
블록(408)에서, 수신기 정보는 (예컨대, 브로드캐스터(broadcaster)가 부호화에 사용하는 것과 동일한 알고리즘을 사용하여) 적절한 폼(form)으로 처리될 수 있다. 일부 실시예들에 따르면, 메시지는 사용할 알고리즘의 표시자(indicator), 확인할 수신기 정보의 표시자, 그리고 다른 타겟 브로드캐스트 확인(verification) 데이터 중 하나 이상을 포함할 수 있다. 수신기 식별 정보의 처리는 해쉬 코드, 고정된 크기의 비트 벡터에 세팅되어야 하는 하나 이상의 비트 어드레스들, 또는 달리 다른 처리된 수신기 식별 정보의 결과를 낼 수 있다.
블록(410)에서, 처리된 수신기 식별 정보는 세트 데이터 구조에 대하여 비교될 수 있다. 일부 실시예들에 따르면, 고정된 사이즈를 갖는 비트 벡터의 비트들은 비교될 수 있다. 처리된 수신기 식별 정보에서 참(true)으로 세팅되어 있는 모든 비트들이 고정된 사이즈의 비트 벡터에 세팅되어 있다면, 그러면, 수신기는 세트 데이터 구조에 의해 표시된 세트의 멤버가 될지 여부를 결정할 수 있다.(예컨대, 수신기는 타겟팅된 브로드캐스트 메시지에 대해 타겟팅된 수신기일 수 있다) 만약에, 처리된 수신기 식별 정보가 고정된 사이즈의 비트 벡터에 세팅되지 않은 비트들을 포함하고 있다면, 그러면, 수신기는 세트 데이터 구조에 의해 표시된 세트의 멤버가 아닐 수도 있다.
블록(412)에서, 수신기는 브로드캐스트 메시지가 수신기에 타겟팅 되어 있는지에 대한 결정에 기초하여 결과를 생산할 수 있다. 수신기가 세트 데이터 구조에 의해 표시된 세트의 멤버라면, 수신기는 메시지를 디스플레이할 수 있다. 만약에 수신기가 세트 데이터 구조에 의해 표시된 세트의 멤버가 아니라면, 수신기는 메시지를 무시(ignore)할 수 있다.
세트 멤버쉽 테스트 과정의 처리, 테스트, 및 결과 방출(emission) 단계들(즉, 도 4의 블록들(408 내지 412))은, 도 3의 블록(304)에서 세트 데이터 구조를 생성하는 데에 사용되는 수신기 ID 정보(
Figure 112014066411478-pct00001
)(아래의 도 5을 참조하여 설명됨)와 동일한 해쉬 알고리즘(
Figure 112014066411478-pct00002
)을 사용할 수 있다.(여기서, i는 현재 수신기에 특정된 세트 데이터를 나타낸다). 블룸 필터와 일치하는 이들 단계들을 구현하기 위한 세부사항들이 도 5에 도시된다.
도 5는 특정 실시예에 따른 세트 데이터 구조를 생성하는 도 3의 블록(304)의 상세 순서도이다. 도 5는 블룸 필터를 사용하여 수신기 세트 데이터를 세트 데이터 구조로 부호화하는 알고리즘을 도시한다. 높은 퀄리티의 바이너리(binary) 해슁 알고리즘(hashing algorithm)을 사용하고, 비트 벡터의 비트들의 수(m)와 해슁될 수신기 데이터 엘리먼트들의 수(n), 및 사용될 독립된 해쉬 알고리즘의 수(k)를 밸런싱함에 의하여, 양성 오류(false positive)의 확률(
Figure 112015064752857-pct00003
)이 최소화될 수 있다. 예컨대,
Figure 112015064752857-pct00004
≒ 1%를 보장하기 위하여, m=10*n, 및 k=5로 세팅한다. 일반적으로,
Figure 112015064752857-pct00005
이다.
블록(502)에서, 세트 데이터 구조를 표시하는 m 사이즈의 비트 벡터는 클리어된다.(예컨대, 모든 비트들이 FALSE 또는 0으로 세팅된다.)
블록(504)에서, 세트 데이터 구조를 생성하는 노드는 도 3의 블록(302)에서 모은 지정된 수신기 ID 정보의 집합체로부터 수신기 ID 정보
Figure 112015064752857-pct00006
의 엘리먼트를 얻는다(i는 노드 수를 나타낸다). 엘리먼트들
Figure 112015064752857-pct00007
는 여기서 예컨대, MAC 어드레스들, 도로 어드레스들, 고객 ID 넘버들, 우편 번호들, 도시 이름들, PRIZM 코드들, 그리고 이와 유사한 것과 같은 미리 특정된 고유(unique)하거나 또는 고유하지 않은(non-unique) ID 정보를 지칭한다.
블록(506 내지 512)에서, 현재 엘리먼트는 복수의 미리 지정된 해쉬 알고리즘들
Figure 112012000368576-pct00008
각각에 대해 한번(once) 처리될 수 있는데, 현재 엘리먼트는 비트 벡터내의 단일 비트에
Figure 112012000368576-pct00009
로 해쉬된다(j=1 내지 k). 블록(506)에 표시된 바와 같이, 해쉬 알고리즘이 선택될 수 있다. 해쉬 알고리즘의 선택은 하나 이상의 규칙들 혹은 요소들(factors)에 의존할 수 있다(예컨대, 사용되는 해쉬 알고리즘은 다수의 타겟팅된 수신기들과, 수신기들이 직접적으로, 혹은 그룹이나 세그먼트에 의해 타겟팅될 것인지에 의해 결정될 수 있다). 블록(508)에서, 수신기 식별 정보의 엘리먼트는 선택된 알고리즘을 사용하여 처리될 수 있다. 블록(510)에서, 표시된 해쉬 비트(
Figure 112012000368576-pct00010
)는 비트 벡터에 세팅된다(예컨대, = 참(TRUE) 또는 1). 만약에 k개의 해쉬 알고리즘이 있다면, 이러한 네 개의 블록 실행 결과로써 비트 벡터에 세팅된 k 비트들이 존재하게 될 것이다.
블록(512)에서, 현재 수신기 엘리먼트가 또 다른 해쉬 알고리즘에 의해 처리될 것인지 여부가 결정된다. 만약에 현재 수신기 엘리먼트가 또 다른 해쉬 알고리즘(예컨대, j <= k)에 의해 처리될 예정이라면, 방법은 블록(506)으로 복귀할 수 있다. 만약에 현재 수신기 엘리먼트가 또 다른 해쉬 알고리즘(예컨대, j > k)에 의해 처리되지 않을 예정이라면, 방법은 블록(514)에서 계속 진행할 수 있다.
블록(514)에서, 만약에 또 다른 수신기 엘리먼트가 부호화될지를 확인하기 위해 수신기 ID 정보(
Figure 112015064752857-pct00011
)의 집합체가 체크될 수 있다. 만약에 또 다른 수신기 엘리먼트가 부호화될 예정이라면, 처리는 블록(504)으로 되돌아간다. 만약에, 집합체에서 더이상의 수신기 엘리먼트들이 없다면, 처리는 블록(516)에서 중단되고, 결과 비트 벡터는 세트 데이터 구조로 지정될 수 있다.(집합체에서의 각각의 엘리먼트는 한번씩 처리된다.) 이 세트 데이터 구조는 도 3의 블록(306)에 의해 있는 그대로 이용될 수 있거나(예컨대, 0과 1 비트들의 스트링으로서), 또는 메시지와 함께 삽입하기 위한 또 다른 형식으로 추가로 처리될 수 있다. 예컨대, 비트 벡터가 많은 비트들을 포함하고 있으나 적은 비트 세트를 가진다면(예컨대, =1), 희소 또는 압축된 부호화가 필터 스트링을 위해 사용될 수 있다. 희소 부호화 경우에서, 0과 1 비트들의 스트링을 방출(emit)하기보다는, 오직 세트 비트들을 나타내는 정수들의 스트링이 방출될 수 있다. 압축된 케이스에서, 하나 이상의 압축 기법들(예컨대 Huffman, LZW)은 결과 필터 스트링에서의 비트들의 수를 감소시키기 위해 사용될 수 있다. 비트 벡터에 포함된 비트들의 수(m)가 목적
Figure 112015064752857-pct00012
을 달성하기 위하여, 가능한한 적게 세팅될 수 있다면, 압축을 더 수행하는 것에 최소의 이득이 있을 것이다.
도 6은 특정 실시예에 따른 브로드캐스트 메시지의 타겟팅된 수신기를 식별하는 순서도를 도시한다. 도 6에 도시된 바와 같이, 세트 데이터 구조는 블룸 필터를 사용하여 수신기 ID 정보와 비교될 수 있다. 블록(602)에서 해쉬 알고리즘(
Figure 112014066411478-pct00013
) 선택될 수 있다(예컨대, 도 5를 참조하여 상술한 세트 데이터 구조(j = 1 내지 k)를 만들어 내는 데에 이용된 미리 설정된 해쉬 알고리즘들의 동일한 세트들로부터 선택됨).
블록(604)에서 적절한 수신기 ID 정보(
Figure 112014066411478-pct00014
)는 선택된 해쉬 알고리즘(
Figure 112014066411478-pct00015
)을 사용하여 해쉬될 수 있고, 이는 세트 데이터의 엘리먼트에 대한 해쉬값을 구성할 수 있는 하나의 비트(
Figure 112014066411478-pct00016
)의 식별이라는 결과를 낳는다.
블록(606)에서, 이전 단계에서 식별된 비트(
Figure 112014066411478-pct00017
)는 세트 데이터 구조에서 검사된다. 만약에
Figure 112014066411478-pct00018
가 세트 데이터 구조에 세팅되어 있다면, 처리는 블록(610)에서 계속 진행된다. 만약에
Figure 112014066411478-pct00019
가 세트 데이터 구조에 세팅되어 있지 않다면, 네가티브 매칭(즉, Match = FALSE)의 통지가 블록(608)에서 방출될 수 있고, 방법은 블록(614)에서 종료될 수 있다. 이것은 현재 수신기 ID 정보가 지정된 수신기 ID 정보 본래의 집합체에 포함되어 있지 않다는 것을 나타낸다.(즉, 도 3의 블록(302))
만약에 방법이 블록(610)에서 계속된다면, 시스템은 또 다른 해쉬 알고리즘을 (예컨대, 수신기 ID 정보에서 아직 동작하지 않는 미리 지정된 해쉬 알고리즘의 원래 세트로부터(예컨대, j = j + 1)) 체크할 수 있다. 가능한 해쉬 알고리즘들이 남아있지 않다면, 방법은 블록(612)에서 계속될 수 있고, 포지티브 매칭(positive match)(즉, 멤버쉽 = 트루(true)) 통지가 방출된다. 그 후, 방법은 블록(614)에서 종료될 수 있다. 일부 실시예들에 따르면, 이것은 현재 수신기 ID 정보에 대한 모든 바이너리 해쉬들이 세트 데이터 구조에서 참(true)이라는 것을 나타낼 수 있고(즉, 비트 벡터의 모든 대응 비트들이 세팅된), 그리고 그리하여 현재 수신기 ID 정보가 지정된 수신기 ID 정보의 원래 집합체에 포함되어 있을 개연성(즉, 수신기가 양성 오류(false positive)인
Figure 112015064752857-pct00050
찬스)이 있다.
도 7은 특정 실시예에 따른 브로드캐스트 메시지들을 타겟팅하기 위한 데이터 세트를 도시한 표이다. 표는 k 개의 다른 바이너리 해쉬 알고리즘들을 사용하여 비트 위치들(
Figure 112015064752857-pct00021
)에 해쉬되는(
Figure 112015064752857-pct00022
) 수신기 ID 정보(
Figure 112015064752857-pct00023
)(x= 1 내지 n)의 n 엘리먼트들을 나타낸다. 해쉬 알고리즘들의 복잡성은 리소스 제한 수신기를 효율적으로 동작시키기 위해서 최소화될 수 있다. 예컨대, 향상된 EBIF(Enganced TV Binary Interchange Format) 유저 에이전트(User Agent)를 구동하는 셋-톱 박스(set-top box)들상에서, 해쉬 알고리즘들은 그러한 에이전트(agent)들과 기초적인 하드웨어들의 제한된 계산 능력들을 설명하면서, 효과적인 바이너리 해쉬들을 제공하기 위해 정의될 수 있다.
도 8은 특정 실시예에 따른 타겟팅된 브로드캐스트 메시지의 전송과 수신을 도시한 순서도이다. 도 8에 도시된 예는 수신기 MAC 어드레스와 세트 데이터 구조를 세우고(construct), 타겟팅 매칭(match)을 평가하는데 이용되는 블룸 필터를 도시한다. 이러한 세트 데이터 구조는 도 3에 도시된 방법에서 사용되는 세트 데이터 구조의 일 실시예일 수 있다. 블록(802)에서, MAC 어드레스들의 집합체는 지정된 수신기 ID 정보로서 사용될 수 있다. 자체적으로 어드레스를 가진 광고 애플리케이션에서, 그러한 어드레스들은 광고주에 의해 제공된 고객 ID 정보와 케이블 운용자(cable operator)에 의해 제공된 고객 셋-톱 박스들과 연관된 MAC 어드레스들을 연결함에 의해 수집될 수 있다.
블록(804)에서, 세트 데이터 구조는 MAC 어드레스들의 집합체를 이용하여 생성될 수 있다. 여기서 세트 데이터 구조는 블룸 필터를 이용하여 생성되는 비트 벡터로 도시된다.
블록(806)은 원래 리스트에 표시된 지정된 고객들에게 타겟팅된 메시지(즉, "지금 사시오")에 삽입된(embedded) 세트 데이터 구조를 도시한다. 이러한 메시지는 예컨대, 30초의 대화형(interactive) 또는 비 대화형(non-interactive) 비디오 광고를 나타낼 수 있고, 또는 다른 프로그램 또는 광고의 길이들 또는 다른 타입들을 나타낼 수 있다.
메시지와 메시지에 삽입된 세트 데이터 구조는 그 후, 로컬 케이블 네트워크의 수신기들에게 브로드캐스트될 수 있다.
블록(808)에서, 메시지는 MAC 어드레스 OOO0FF2AF879를 갖는 셋-톱 박스에 의해 수신될 수 있다. 그러한 어드레스는 블록(810)에 묘사된 것과 같은 세트 데이터 구조로 부호화된 비트 벡터와 비교된 결과 비트 벡터와 블룸 필터를 이용하여 효율적으로 비트 벡터로 해쉬될 수 있다. 이러한 예에서, MAC 어드레스로부터 생성된 비트 벡터에 세팅된 모든 비트들은 블룸 필터에도 역시 세팅된다. 그래서, 매칭(match)이 표시되면, 수신기는 타겟팅된 수신기들의 세트(set)의 멤버임을 선언하고, 메시지(즉, "지금 사시오!")는 해당 수신기와 연관된 TV 뷰어(viewer)에 표시될 수 있다(어드레스 0000FF2AF879는 지정된 수신기들의 원래 목록에 나타나고, 그래서 적절하게 표시되는 것을 주목하라. 또한, 세트 데이터 구조 비트 벡터는 로컬 비트 벡터보다 1비트 더 많이 포함하는 것을 주목하라. 이것은 블룸 필터를 통하여 복수의 지정된 수신기들(예컨대, MAC 어드레스들 0000FF2B87A1 및, 0000FF2B879E를 갖는 수신기들)을 부호화하는 세트 데이터 구조에 기인한다.).
다음의 예는 블룸 필터를 도시하는데, 거기서 지정된 수신기 ID 정보는 도시 이름들로 이루어져 있다. 다른 해쉬 함수들은 아래 도시된 해쉬 함수에 더하여져 혹은 대체하여 수행될 수 있다.
도시 이름에 의해 식별된 지정된 수신기들의 집합체를 고려하라 : DAYTON, STLOUIS, AKRON, 및 PEORIA(x1 내지 x4). 31 엔트리들(비트들)을 포함하는 비트 벡터가 이 ID 세트에 대한 세트 데이터 구조를 부호화하는데에 사용되어 진다고 가정하라. 또한, 문자들에 대한 숫자 코드(A=1, B=2, ..., Z=26, space=27)와 함께 더해진 세 개의 해쉬 함수들이 있다고 가정하고, 숫자
Figure 112014066411478-pct00024
를 제곱하고, 그리고 그 후, 모듈러스(modulus) 동작들(k = 3)을 사용하여 해쉬 비트들을 연산하라.
Figure 112012000368576-pct00025
Figure 112012000368576-pct00026
Figure 112012000368576-pct00027
수신기 ID들은 다음과 같이 해쉬될 것이다 :
DAYTON(
Figure 112012000368576-pct00028
) : 4 + 1 + 25 + 20 + 15 + 14 = 79,
Figure 112012000368576-pct00029
=79 * 79 = 6241, 6241%37 = 25, 6241%41 = 9, 6241%53 = 40.
마지막의 3개의 모듈로(modulo) 31 값들 각각의 나머지를 얻고, 비트 어드레스들을 산출한다 :
Figure 112012000368576-pct00030
ST LOUIS(
Figure 112012000368576-pct00031
) :
Figure 112012000368576-pct00032
= 20164;
Figure 112012000368576-pct00033
AKRON(
Figure 112012000368576-pct00034
) :
Figure 112012000368576-pct00035
= 3481;
Figure 112012000368576-pct00036
PEORIA(
Figure 112012000368576-pct00037
) :
Figure 112012000368576-pct00038
= 4096;
Figure 112012000368576-pct00039
이것은 비트 벡터의 비트들 2, 3, 5, 6, 9, 15, 24, 25 및 26이 1로 세팅되는 것을 나타내고, 다음의 필터 스트링 결과를 나타낸다 :
0110110010000010000000011100000
이 31 비트는 4 바이트에 꼭 들어맞고, 반면에 문자 스티링으로 원래의 4 워드를 저장하기 위해서는 적어도 25 바이트가 요구된다.
비교 시간에서, 상술한 세 개의 해쉬 함수들은 각각의 수신기에 저장된 도시 이름에 대해 수행된다. DAYTON, ST LOUIS, AKRON, 및 PEORIA에 의해 식별된 수신기들은 비트 벡터에 세팅된 모든 해쉬된 비트들이 주어진 세트 데이터 구조에의 포지티브 매칭(positive match)을 리턴한다. 그래서 이러한 ID들을 갖는 수신기들은 첨부된 메시지를 표현할 수 있다.
ID로 CHICAGO를 갖는 수신기들은 세트 데이터 구조와 매칭(match)되지 않는데, 왜냐하면 CHICAGO에 대한 비트 해쉬들은 비트 7, 25, 18(s = 2116)이기 때문이다. 오직 비트 25만 비트 벡터내에 세팅된다. 그래서 그러한 수신기는 첨부된 메시지를 숨길(suppress) 수 있다.
비트 벡터에 모두 세팅된 비트에 그들의 이름 해쉬를 갖지만, 지정된 수신기 ID 집합체에 없는 도시들은 거짓 히트(false hit)들의 결과를 낳는다. 그러한 거짓 히트(false hit)들은, 잠재적인 수신기 ID들(n)의 속성을 설명하기 위한 블룸 필터의 적절한 규격(specification)에 의해, 그리고, 해쉬 함수의 수(k) 및 비트 벡터의 사이즈(m)를 적절하게 특정함(specifying)에 의해 최소화될 수 있다.
완벽한 해쉬 함수들을 가정하여(즉, 각각의 비트 해쉬는 해쉬된 모든 ID들에 대한 비트 벡터내의 모든 이용가능한 비트에 랜덤하게 분포되는 경우 - 이러한 예시적인 해쉬 함수들을 이용하는 경우가 아님), 양성 오류율(false positive rate)은,
Figure 112014066411478-pct00040
에 의해 주어진다. 이러한 예에서, 3개의 해쉬 함수들과, 부호화된 수신기 세트 데이터의 4개의 엘리먼트들, 및 31-비트의 비트 벡터를 가정하였을 때, 양성 오류 에러율(false positive error rate)은 다음과 같이 주어진다. :
Figure 112012000368576-pct00041
브로드캐스트 네트워크에서 수신기들의 서브세트(subset)에 브로드캐스트 메시지를 타겟팅하기 위한 방법은 하드웨어에서 수행될 수 있다. 예컨대, 메시지 혹은 메시지들을 부호화하는 알고리즘들은 전자 프로세서를 이용하여 수행될 수 있다. 전자 프로세서는 셋-톱 박스(set-top box)와 연관될 수 있고, 또는 휴대 전화기와 같은 다른 하드웨어 구성들과 연관될 수 있다. 셋-톱 박스는 메모리 및/또는 다른 저장부 매체들에 거주하는(residing) 소프트웨어 및 하드웨어를 갖는 컴퓨터일 수 있고, 또한 오디오 및/또는 비디오를 전송하고, 그리고/또는 수신할 수 있다. 셋-톱 박스는 하나 이상의 네트워크들을 통해 또 다른 컴퓨터 또는 프로세서와 통신할 수 있다. 방법은 하드웨어로 수행될 수 있고, 하드웨어에서 동작하는 소프트웨어로 수행될 수 있다. 예컨대, 방법은 펌웨어(firmware)에 부호화될(encoded) 수 있다.
여기에 기술되는 소프트웨어가 컴팩트 디스크(Compact Disk, CD), DVD(Digital Versatile Disc), 플로피 디스크, 하드 드라이브, ROM(Read Only Memory), RAM(Random Access Memory), 뿐만 아니라 소프트웨어를 저장할 수 있는 다른 물리적인 매체 또는 그들의 조합들과 같은, 그러나 이에 한정되지 않는 하나 이상의 물리적인 매체에 유형으로 구체화될 수 있는 것이 더 주목된다. 더욱이, 도면들은 다양한 컴포넌트들(예컨대, 서버들, 컴퓨터들 등)을 분리하여 도시한다. 다양한 컴포넌트들에서 수행되는 것으로 기술된 기능들은 다른 컴포넌트들에서 수행될 수 있고, 그리고 다양한 컴포넌트들은 결합되거나 또는 분리될 수 있다. 다른 변경들도 역시 행해질 수 있다.
임의의 실시예들이 개시된다. 그러한 실시예들은 네트워크에서 브로드캐스트 메시지를 수신기들의 서브세트에 보내는 시스템, 및 컴퓨터 기반의 방법을 포함하나 이에 한정되지 않는다. 수신기들은 각각 하나 이상의 고유한(unique) 혹은 비-고유한(non-unique) ID 코드들을 포함할 수 있다. 세트 데이터 구조는 서브세트에서 식별된 하나 이상의 수신기들에 대응한 고유한 혹은 비-고유한 ID 코드들을 사용하여 만들어질 수 있다. 메시지는 세트 데이터 구조와 연관될 수 있다. 메시지 그리고 연관된 세트 데이터 구조는 네트워크에서 수신기들에게 브로드캐스트될 수 있다. 수신기들은 세트 데이터 구조들의 하나 이상의 고유한 혹은 비-고유한 ID 코드들로 세트 데이터 구조를 복호화할 수 있다. 만약에 세트 데이터 구조에 복호화된 하나 이상의 고유한 혹은 비-고유한 ID 코드들이 수신기와 연관한 코드들에 매칭(match)하면, 연관된 수신기는 메시지를 처리할 수 있다. 만약에 세트 데이터 구조에 복호화된 하나 이상의 고유한 혹은 비-고유한 ID 코드들이 수신기와 연관된 하나 이상의 고유한 혹은 비-고유한 ID 코드들과 매칭하지 않는다면, 연관된 수신기는 메시지를 무시(ignore)할 수 있다.
본 발명들의 실시예들이 광범위한 유틸리티 및 응용에 허용가능함은 당해 출원발명이 속하는 기술분야에서 통상의 지식을 가진자가 쉽게 이해할 수 있을 것이다. 본 발명의 범위 또는 본질로부터 벗어나지 않고, 여기에 기술된 것 외의 본 발명의 많은 실시예들과 적응들(adaptations), 뿐만 아니라 많은 변형, 변경, 및 동등한 배열들이 본 발명 및 앞에 기술한 서술들로부터 분명하고, 또는 본 발명 및 앞에 기술한 서술들로부터 합리적으로 제안될 것이다.
따라서, 본 개시 내용은 단지 설명적(illustrative)이고, 예시적이며, 합법화한 개시를 제공하도록 만들어졌다는 것이 이해될 것이다. 따라서, 이전의 공개는 본 발명으로 이해되거나 또는 본 발명을 한정하는 것으로 의도되지 않고, 또는 그 외의 임의의 다른 그와 같은 실시예들, 적응들, 변형들, 변경들, 또는 동등한 배열들을 제외하도록 의도되지 않는다.

Claims (28)

  1. 브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법으로서,
    타겟팅된 브로드캐스트 메시지의 지정된 전자 수신기들과 연관된 식별 정보를 수집하는 단계;
    컴퓨터 프로세서를 이용하여, 상기 식별 정보를 이용하는 데이터 세트 구조를 생성하는 단계 ― 상기 데이터 세트 구조는, 적어도 단일 해쉬(hash) 알고리즘을 이용하여 생성된 구분되는(distinct) 멀티-비트 해쉬들의 집합체(collection)를 포함함 ―;
    상기 데이터 세트 구조를 상기 타겟팅된 브로드캐스트 메시지와 연관시키는 단계;
    상기 타겟팅된 브로드캐스트 메시지와 헤더(header)를 연관시키는 단계 ― 상기 헤더는, 상기 데이터 세트 구조를 생성하기 위해 이용되었던 식별 정보의 타입을 식별함 ―; 및
    상기 타겟팅된 브로드캐스트 메시지 및 상기 데이터 세트 구조를 복수의 전자 수신기들로 브로드캐스팅하는 단계
    를 포함하고,
    상기 데이터 세트 구조는, 상기 복수의 전자 수신기들 각각으로 하여금 상기 타겟팅된 브로드캐스트 메시지가 상기 전자 수신기로 타겟팅 되었는지 여부를 결정하도록 허용하는 정보를 제공하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  2. 제 1 항에 있어서,
    상기 타겟팅된 브로드캐스트 메시지는, TV 광고를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  3. 제 1 항에 있어서,
    상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기에 의해, 상기 타겟팅된 브로드캐스트 메시지를 수신하는 단계;
    상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기의 프로세서를 사용하여, 상기 데이터 세트 구조를 상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기와 연관된 식별 정보와 비교하는 단계; 및
    상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기와 연관된 식별 정보가 상기 데이터 세트 구조에서의 식별 정보와 매칭하는 경우에, 상기 전자 수신기와 연관된 동작(action)을 수행하는 단계
    를 더 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  4. 제 3 항에 있어서,
    상기 동작은,
    상기 타겟팅된 브로드캐스트 메시지를, 상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기와 연관된 장치 상에 표시하는 것을 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  5. 제 3 항에 있어서,
    상기 식별 정보가 상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기와 연관되지 않는 경우에, 상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기에 대해 상기 타겟팅된 브로드캐스트 메시지를 무시하는(ignoring) 단계를 더 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  6. 제 1 항에 있어서,
    상기 데이터 세트 구조를 상기 타겟팅된 브로드캐스트 메시지와 연관시키는 단계는, 상기 타겟팅된 브로드캐스트 메시지에 상기 데이터 세트 구조를 삽입하는 단계를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  7. 제 1 항에 있어서,
    상기 브로드캐스트 네트워크는,
    지상파(terrestrial) 브로드캐스트 TV 네트워크, 케이블 TV 네트워크, 및 위성 TV 네트워크 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  8. 제 1 항에 있어서,
    상기 복수의 전자 수신기들은,
    셋-톱 박스(set-top box), TV에 통합되어 브로드캐스트 데이터를 수신하도록 구성되는 장치, 및 브로드캐스트 데이터를 수신할 수 있는 모바일 장치 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  9. 제 1 항에 있어서,
    상기 식별 정보는 지정된 전자 수신기를 고유하게(uniquely) 식별하는 정보를 포함하고,
    상기 지정된 전자 수신기를 고유하게 식별하는 정보는, 매체 접속 제어 어드레스(MAC address), 거리(street) 어드레스, 고객 식별자(customer identifier), 및 네트워크 어드레스 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  10. 제 1 항에 있어서,
    상기 식별 정보는, 지정된 전자 수신기들의 집합체를 식별하는 정보를 포함하고,
    상기 지정된 전자 수신기들의 집합체를 식별하는 정보는, 우편 번호(zip code), 도시 이름, 지리적-인구통계학적(geo-demographic) 코드, 인구통계학적 프로필 식별자(profile identifier), 세그먼트 식별자, 및 그룹 식별자 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  11. 제 1 항에 있어서,
    상기 데이터 세트 구조는 블룸 필터(Bloom filter)를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  12. 제 11 항에 있어서,
    상기 블룸 필터는,
    고정-크기 비트 벡터 내의 비트 어드레스로 타겟팅된 브로드캐스트 메시지의 지정된 전자 수신기들과 연관되는 식별 정보의 해쉬 코드를 생성하기 위해 해슁 알고리즘을 사용하는 동작, 상기 비트 어드레스에 대응하는 비트를 참(true)으로 세팅하는 동작, 및 상이한 해슁 알고리즘을 사용하여 해슁 동작 및 비트 세팅을 반복하는 동작에 의해 생성되는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  13. 제 1 항에 있어서,
    상기 데이터 세트 구조는, 수신기 정보의 압축된 리스트를 더 포함하는,
    브로드캐스트 네트워크에서 전자 수신기들의 서브세트에 브로드캐스트 메시지를 타겟팅하기 위한 방법.
  14. 컴퓨터 판독가능한 저장 매체로서,
    제 1 항의 방법을 수행하기 위한 코드를 포함하는,
    컴퓨터 판독가능한 저장 매체.
  15. 브로드캐스트 네트워크에서 전자 수신기에 의해 타겟팅된 브로드캐스트 메시지를 수신하는 방법으로서,
    상기 전자 수신기에 의해, 상기 타겟팅된 브로드캐스트 메시지를 수신하는 단계;
    상기 전자 수신기의 프로세서를 사용하여, 상기 타겟팅된 브로드캐스트 메시지와 연관된 데이터 세트 구조를 상기 전자 수신기와 연관된 식별 정보와 비교하는 단계 ― 상기 데이터 세트 구조는 적어도 단일 해쉬 알고리즘을 이용하여 생성된 구분되는 멀티-비트 해쉬들의 집합체를 포함하고, 상기 타겟팅된 브로드캐스트 메시지는 상기 데이터 세트 구조를 생성하기 위해 이용되었던 식별 정보의 타입을 식별하는 헤더를 포함함 ―; 및
    상기 전자 수신기와 연관된 식별 정보가 상기 데이터 세트 구조에서의 식별 정보와 매칭하는 경우에, 상기 전자 수신기와 연관된 동작을 수행하는 단계
    를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기에 의해 타겟팅된 브로드캐스트 메시지를 수신하는 방법.
  16. 제 15 항에 있어서,
    상기 전자 수신기는,
    셋-톱 박스, TV에 통합되어 브로드캐스트 데이터를 수신하도록 구성되는 장치, 및 브로드캐스트 데이터를 수신할 수 있는 모바일 장치 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기에 의해 타겟팅된 브로드캐스트 메시지를 수신하는 방법.
  17. 제 15 항에 있어서,
    상기 식별 정보는 지정된 전자 수신기를 고유하게 식별하는 정보를 포함하고,
    상기 지정된 전자 수신기를 고유하게 식별하는 정보는, 매체 접속 제어(MAC) 어드레스, 거리 어드레스, 고객 식별자, 및 네트워크 어드레스 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기에 의해 타겟팅된 브로드캐스트 메시지를 수신하는 방법.
  18. 제 15 항에 있어서,
    상기 식별 정보는, 지정된 전자 수신기들의 집합체를 식별하는 정보를 포함하고,
    상기 지정된 전자 수신기들의 집합체를 식별하는 정보는, 우편 번호, 도시 이름, 지리적-인구통계학적 코드, 인구통계학적 프로필 식별자, 세그먼트 식별자, 및 그룹 식별자 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기에 의해 타겟팅된 브로드캐스트 메시지를 수신하는 방법.
  19. 제 15 항에 있어서,
    상기 데이터 세트 구조는 블룸 필터를 포함하는,
    브로드캐스트 네트워크에서 전자 수신기에 의해 타겟팅된 브로드캐스트 메시지를 수신하는 방법.
  20. 제 15 항에 있어서,
    상기 데이터 세트 구조는 수신기 정보의 압축된 리스트를 더 포함하는,
    브로드캐스트 네트워크에서 전자 수신기에 의해 타겟팅된 브로드캐스트 메시지를 수신하는 방법.
  21. 브로드캐스트 네트워크에서 잠재적인(potential) 전자 수신기들의 서브세트로 브로드캐스트 메시지를 타겟팅하기 위한 시스템으로서,
    네트워크 엘리먼트를 포함하고,
    상기 네트워크 엘리먼트는,
    타겟팅된 브로드캐스트 메시지의 지정된 전자 수신기들과 연관된 식별 정보를 수집하고;
    상기 식별 정보를 사용하여 데이터 세트 구조를 생성하고 ― 상기 데이터 세트 구조는, 적어도 단일 해쉬 알고리즘을 이용하여 생성된 구분되는 멀티-비트 해쉬들의 집합체를 포함함 ―;
    상기 데이터 세트 구조를 상기 타겟팅된 브로드캐스트 메시지와 연관시키고;
    상기 타겟팅된 브로드캐스트 메시지와 헤더를 연관시키고 ― 상기 헤더는, 상기 데이터 세트 구조를 생성하기 위해 이용되었던 식별 정보의 타입을 식별함 ―
    상기 타겟팅된 브로드캐스트 메시지와 상기 데이터 세트 구조를 복수의 전자 수신기들로 브로드캐스팅하도록 구성되며,
    상기 데이터 세트 구조는, 상기 복수의 전자 수신기들 중 적어도 하나의 전자 수신기로 하여금 상기 타겟팅된 브로드캐스트 메시지가 상기 적어도 하나의 전자 수신기로 타겟팅 되었는지 여부를 결정하도록 허용하는 정보를 제공하는,
    브로드캐스트 네트워크에서 잠재적인 전자 수신기들의 서브세트로 브로드캐스트 메시지를 타겟팅하기 위한 시스템.
  22. 제 21 항에 있어서,
    상기 데이터 세트 구조를 상기 타겟팅된 브로드캐스트 메시지와 연관시키는 것은, 상기 타겟팅된 브로드캐스트 메시지에 상기 데이터 세트 구조를 삽입하는 것을 포함하는,
    브로드캐스트 네트워크에서 잠재적인 전자 수신기들의 서브세트로 브로드캐스트 메시지를 타겟팅하기 위한 시스템.
  23. 브로드캐스트 네트워크에서 타겟팅된 브로드캐스트 메시지를 수신하기 위한 전자 장치로서,
    상기 전자 장치는 하나 이상의 프로세서들을 포함하고,
    상기 하나 이상의 프로세서들은,
    상기 타겟팅된 브로드캐스트 메시지를 수신하고;
    상기 타겟팅된 브로드캐스트 메시지와 연관된 데이터 세트 구조를 상기 전자 장치와 연관된 식별 정보와 비교하며 ― 상기 데이터 세트 구조는 적어도 단일 해쉬 알고리즘을 이용하여 생성된 구분되는 멀티-비트 해쉬들의 집합체를 포함하고, 상기 타겟팅된 브로드캐스트 메시지는 상기 데이터 세트 구조를 생성하기 위해 이용되었던 식별 정보의 타입을 식별하는 헤더를 포함함 ―; 그리고
    상기 전자 장치와 연관된 식별 정보가 상기 데이터 세트 구조에서의 식별 정보와 매칭하는 경우에, 상기 전자 장치와 연관된 동작을 수행하도록 구성되는,
    브로드캐스트 네트워크에서 타겟팅된 브로드캐스트 메시지를 수신하기 위한 전자 장치.
  24. 제 23 항에 있어서,
    상기 전자 장치는,
    셋-톱 박스, TV에 통합되어 브로드캐스트 데이터를 수신하도록 구성되는 장치, 및 브로드캐스트 데이터를 수신할 수 있는 모바일 장치 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 타겟팅된 브로드캐스트 메시지를 수신하기 위한 전자 장치.
  25. 제 23 항에 있어서,
    상기 식별 정보는 지정된 전자 수신기를 고유하게 식별하는 정보를 포함하고,
    상기 지정된 전자 수신기를 고유하게 식별하는 정보는, 매체 접속 제어(MAC) 어드레스, 거리 어드레스, 고객 식별자, 및 네트워크 어드레스 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 타겟팅된 브로드캐스트 메시지를 수신하기 위한 전자 장치.
  26. 제 23 항에 있어서,
    상기 식별 정보는, 지정된 전자 수신기들의 집합체를 식별하는 정보를 포함하고,
    상기 지정된 전자 수신기들의 집합체를 식별하는 정보는, 우편 번호, 도시 이름, 지리적-인구통계학적 코드, 인구통계학적 프로필 식별자, 세그먼트 식별자, 및 그룹 식별자 중 적어도 하나를 포함하는,
    브로드캐스트 네트워크에서 타겟팅된 브로드캐스트 메시지를 수신하기 위한 전자 장치.
  27. 제 23 항에 있어서,
    상기 데이터 세트 구조는 블룸 필터를 포함하는,
    브로드캐스트 네트워크에서 타겟팅된 브로드캐스트 메시지를 수신하기 위한 전자 장치.
  28. 제 23 항에 있어서,
    상기 데이터 세트 구조는 수신기 정보의 압축된 리스트를 더 포함하는,
    브로드캐스트 네트워크에서 타겟팅된 브로드캐스트 메시지를 수신하기 위한 전자 장치.
KR1020127000078A 2009-06-01 2010-06-01 브로드캐스트 메시지들을 타겟팅하는 시스템 및 방법 KR101567846B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US21335409P 2009-06-01 2009-06-01
US61/213,354 2009-06-01
US12/763,782 US8732746B2 (en) 2009-06-01 2010-04-20 System for and method of targeting broadcast messages
US12/763,782 2010-04-20

Publications (2)

Publication Number Publication Date
KR20120019501A KR20120019501A (ko) 2012-03-06
KR101567846B1 true KR101567846B1 (ko) 2015-11-10

Family

ID=43221786

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127000078A KR101567846B1 (ko) 2009-06-01 2010-06-01 브로드캐스트 메시지들을 타겟팅하는 시스템 및 방법

Country Status (6)

Country Link
US (1) US8732746B2 (ko)
EP (1) EP2438693A4 (ko)
JP (1) JP2012529194A (ko)
KR (1) KR101567846B1 (ko)
CA (1) CA2757817C (ko)
WO (1) WO2010141447A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110177775A1 (en) * 2010-01-13 2011-07-21 Qualcomm Incorporated Signaling mechanisms, templates and systems for creation and delivery of interactivity events on mobile devices in a mobile broadcast communication system
US8676991B2 (en) * 2010-01-13 2014-03-18 Qualcomm Incorporated Signaling mechanisms and systems for enabling, transmitting and maintaining interactivity features on mobile devices in a mobile broadcast communication system
US9032466B2 (en) * 2010-01-13 2015-05-12 Qualcomm Incorporated Optimized delivery of interactivity event assets in a mobile broadcast communication system
US8914471B2 (en) 2010-05-28 2014-12-16 Qualcomm Incorporated File delivery over a broadcast network using file system abstraction, broadcast schedule messages and selective reception
JP5664467B2 (ja) * 2011-06-13 2015-02-04 富士通株式会社 検索プログラム、検索方法、検索装置、およびノード
US20140304238A1 (en) * 2013-04-05 2014-10-09 Nokia Corporation Method and apparatus for detecting duplicate messages
US10825053B2 (en) * 2015-02-16 2020-11-03 Mirum Digital Limited Characterized wireless signal mobile messaging method and system
US10198325B2 (en) * 2016-05-24 2019-02-05 Mastercard International Incorporated Method and system for desynchronization recovery for permissioned blockchains using bloom filters

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060046649A1 (en) 2004-08-30 2006-03-02 General Motors Corporation Targeted messaging for mobile vehicles using satellite-radio broadcasts
US20090067551A1 (en) 2007-09-12 2009-03-12 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3082820B2 (ja) * 1993-11-25 2000-08-28 ソニー株式会社 受信装置およびデジタルデータ受信処理方法
DE69837194T2 (de) 1997-01-06 2007-10-31 Bellsouth Intellectual Property Corp., Wilmington Methode und system zur netzwerkverwendungserfassung
US6111611A (en) * 1997-07-10 2000-08-29 Thomson Consumer Electronics System for forming and processing program specific information suitable for terrestrial, cable or satellite broadcast
JPH11205257A (ja) * 1998-01-16 1999-07-30 Sanyo Electric Co Ltd ディジタル放送システム
JP3484085B2 (ja) * 1998-05-22 2004-01-06 株式会社リコー 放送型配信方法,その方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体,およびコンテンツサーバ
US20020083441A1 (en) * 2000-08-31 2002-06-27 Flickinger Gregory C. Advertisement filtering and storage for targeted advertisement systems
US6463533B1 (en) * 1999-04-15 2002-10-08 Webtv Networks, Inc. System for generating site-specific user aliases in a computer network
JP2001127719A (ja) 1999-10-28 2001-05-11 Matsushita Electric Ind Co Ltd 放送装置および受信装置
JP2001127657A (ja) * 1999-10-28 2001-05-11 Nec Corp 放送情報の提供方法及び放送情報提供装置
JP2002125166A (ja) * 2000-10-12 2002-04-26 Nippon Telegr & Teleph Corp <Ntt> デジタル放送で広告を提供する方法,デジタル放送受信装置および広告選択制御プログラムの記録媒体
US20020078444A1 (en) * 2000-12-15 2002-06-20 William Krewin System and method for the scaleable delivery of targeted commercials
AU2002234258A1 (en) * 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
JP2003188838A (ja) * 2001-12-18 2003-07-04 Pioneer Electronic Corp コマーシャル配信システムとコマーシャル処理装置及びコマーシャル処理方法並びにコマーシャル処理プログラム
US7360160B2 (en) * 2002-06-20 2008-04-15 At&T Intellectual Property, Inc. System and method for providing substitute content in place of blocked content
US7657597B2 (en) * 2002-09-26 2010-02-02 Sun Microsystems, Inc. Instant messaging using distributed indexes
US7206934B2 (en) * 2002-09-26 2007-04-17 Sun Microsystems, Inc. Distributed indexing of identity information in a peer-to-peer network
US7518530B2 (en) * 2004-07-19 2009-04-14 Honda Motor Co., Ltd. Method and system for broadcasting audio and visual display messages to a vehicle
FI20041417A (fi) 2004-11-04 2006-05-05 Xtract Oy Henkilökohtainen yksikkö, prosessointilaite ja menetelmä tapahtuman autentikoinniksi
US7669056B2 (en) * 2005-03-29 2010-02-23 Microsoft Corporation Method and apparatus for measuring presentation data exposure
US8063998B2 (en) * 2006-11-10 2011-11-22 Earnest Smith Methods and systems of displaying advertisement or other information and content via mobile platforms
US8032529B2 (en) * 2007-04-12 2011-10-04 Cisco Technology, Inc. Enhanced bloom filters
JP4978288B2 (ja) 2007-04-19 2012-07-18 沖電気工業株式会社 無線ネットワークシステム、情報提供装置及び無線端末
US9727877B2 (en) * 2007-07-27 2017-08-08 Paypal, Inc. Method and system for dynamic messaging

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060046649A1 (en) 2004-08-30 2006-03-02 General Motors Corporation Targeted messaging for mobile vehicles using satellite-radio broadcasts
US20090067551A1 (en) 2007-09-12 2009-03-12 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications

Also Published As

Publication number Publication date
CA2757817A1 (en) 2010-12-09
KR20120019501A (ko) 2012-03-06
JP2012529194A (ja) 2012-11-15
EP2438693A1 (en) 2012-04-11
CA2757817C (en) 2017-07-11
EP2438693A4 (en) 2015-04-08
WO2010141447A1 (en) 2010-12-09
US20100306812A1 (en) 2010-12-02
US8732746B2 (en) 2014-05-20

Similar Documents

Publication Publication Date Title
KR101567846B1 (ko) 브로드캐스트 메시지들을 타겟팅하는 시스템 및 방법
CN101647231B (zh) 无线多播代理
US9516486B2 (en) Apparatus and method for processing an emergency alert service
US8745659B2 (en) In-program content targeting
US20130007172A1 (en) Methods and apparatus for content based notification using hierarchical groups
US20110066723A1 (en) Generating statistics of popular content
AU2018339065A1 (en) High bandwidth sonic tone generation
JP2012529194A5 (ko)
US8688621B2 (en) Systems and methods for information compression
TW201301802A (zh) 用以鑑認廣播節目內容之系統與方法
US10360354B1 (en) Method and apparatus of performing distributed steganography of a data message
US20240089517A1 (en) Systems and methods for enhanced multimedia signal broadcast, reception, data delivery, and data collection
US8924439B2 (en) System for and method of partial file hashing
US10019770B2 (en) System and method for generating and transmitting data without personally identifiable information
CN111164982B (zh) 确定与媒体装置呈现的媒体相关联的输入源的方法、设备和计算机可读介质
US9026669B2 (en) System and method for multiple data channel transfer using a single data stream
US20010052022A1 (en) Method to transmit an information service in a broadcast transmission system
CN109120740B (zh) 生成IPv6地址的服务器、系统及方法
US20240155206A1 (en) Media program viewership measurement using blockchains
JP2000090034A (ja) 情報検索方式
JP3947165B2 (ja) 集合管理装置、システム、方法及びプログラム
CN116232710A (zh) 网络流量采集设备日志消息发送、传输方法以及系统

Legal Events

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

Payment date: 20181023

Year of fee payment: 4