KR20040062893A - 프레임 프로토콜 및 스케줄링 시스템 - Google Patents

프레임 프로토콜 및 스케줄링 시스템 Download PDF

Info

Publication number
KR20040062893A
KR20040062893A KR1020040000147A KR20040000147A KR20040062893A KR 20040062893 A KR20040062893 A KR 20040062893A KR 1020040000147 A KR1020040000147 A KR 1020040000147A KR 20040000147 A KR20040000147 A KR 20040000147A KR 20040062893 A KR20040062893 A KR 20040062893A
Authority
KR
South Korea
Prior art keywords
frame
slot
packet
transmission
packets
Prior art date
Application number
KR1020040000147A
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 KR20040062893A publication Critical patent/KR20040062893A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/02Arrangements for generating broadcast information; Arrangements for generating broadcast-related information with a direct linking to broadcast information or to broadcast space-time; Arrangements for simultaneous generation of broadcast information and broadcast-related information
    • H04H60/06Arrangements for scheduling broadcast services or broadcast-related services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1881Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with schedule organisation, e.g. priority, sequence management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/226Delivery according to priorities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/09Arrangements for device control with a direct linkage to broadcast information or to broadcast space-time; Arrangements for control of broadcast-related services
    • H04H60/14Arrangements for conditional access to broadcast information or to broadcast-related services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/20Control channels or signalling for resource management
    • H04W72/23Control channels or signalling for resource management in the downlink direction of a wireless link, i.e. towards a terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/30Resource management for broadcast services

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

방송 서비스로부터의 직렬화된 데이터가 하나 이상의 클라이언트 장치들로 송신하기 위한 방송 서버에 제공된다. 직렬화된 데이터는 공유 데이터, 비밀 데이터, 또는 제어 데이터에 대응할 수 있다. 데이터는 서비스 매트릭스의 품질을 포함하는 가중치 우선순위를 기초로 송신을 위해 스케줄링된다. 송신 프레임은 공유 데이터에 대한 시스템을 인덱싱하는 컨텐츠 테이블을 위한 프로비전들을 포함한다. 공유 데이터의 패킷들은 특정한 방송 서비스 및 클라이언트 장치 상에 상주하는 대응하는 어플리케이션에 의해 알려진 기준을 기초로 포맷팅된다. 클라이언트 장치는 전송 계층에서 컨텐츠 테이블을 수신하고, 다음의 프레임에서 이용가능한 데이터의 어플리케이션을 통보한다. 어플리케이션은 다음의 프레임에서 데이터를 요청하는 우선순위 부여된 요청을 전송 계층에 전달한다. 전송 계층에 의해 데이터가 검색되어 각각의 어플리케이션을 위해 핸들러에 의해 역직렬화된다.

Description

프레임 프로토콜 및 스케줄링 시스템{FRAME PROTOCOL AND SCHEDULING SYSTEM}
본 발명은 일반적으로 방송 시스템에 관한 것이다. 보다 구체적으로, 본 발명은 방송 서버로부터 하나 이상의 클라이언트 장치들로의 데이터 스트림들의 전송을 스케줄링하기 위한 시스템 및 방법에 관한 것이다. 데이터 스트림들은 서비스 매트릭스(metrics)의 품질을 포함하는 가중치 우선순위를 기초로 전송을 위해 스케줄링된다. 전송 스트림들은 비밀 데이터, 공유 데이터, 및 제어 데이터를 지원하는 프레임 프로토콜에 따라 배열된다. 공유 데이터 전송 스트림들은 어플리케이션에 특정적인 유연하게 정의된 컨텐츠 테이블에 따라 인덱싱된다.
사회가 점점 더 모바일화됨에 따라, 모바일 컴퓨팅 장치들이 인기있게 되었으며 성장을 계속하고 있는 추세이다. 셀폰, 무선 PDA, 무선 랩탑 및 다른 모바일 통신 장치들은 주류 고객들에 대한 인상적인 잠식을 이루고 있다. 그러나, 적절한 하이 커버리지 영역(high-coverage area), 저렴하고 소형, 절전의 무선 통신 시스템의 부재는 이러한 성장을 제약하고 고객 만족을 제한하고 있다. 셀룰러 데이터 전송 전화 기반 솔루션은 절전과는 거리가 멀고, (비교적) 상당한 비용이 들며 크기가 부담되어 불편하다. 마찬가지로, 이러한 문제점들을 해결하기 위한 다른 시도들도 부적합하다는 것이 입증되고 있다. 예를 들어, 주파수 변조(FM) 서브 캐리어(sub-carriers)를 통해 정보를 수신하는 모바일 장치를 사용하는 것이 시도되었다. FM 서브 캐리어(또한, Subsidiary Communications Authorization을 의미하는 "SCA"로서 알려져 있음)는 FM 스테이션(station)의 이용가능한 변조 대역폭 내에 FM 스테레오 이상의 가용 주파수를 사용한다. 서브 캐리어는 전형적으로 FCC 또는 다른 국가 통제처에 의해 통제되는 무선국으로부터 임대된다.
FM 서브 캐리어의 몇몇 예들은 핸드핼드 모바일 장치에 주식 시세를 전달하는 Data Broadcast Corporation(DBC)에 의해 소유되고 유지되는 QUOTREK 시스템을 포함한다. 그러나, 이 QUOTREK 시스템은 주식 시세를 수신하는 한가지 목적의 시스템이다. 이 시스템은 모바일 컴퓨팅 장치로서 유용하지 않게 하는 다른 여러 제약을 갖고 있다. 마찬가지로, Seiko Corporation은 FM 서브 캐리어 시스템을 구현하였는데, 여기서는 단문 메시지가 손목 착용 장치(wrist-worn device)에 전송된다. 그러나, 사용되는 하드웨어 및 통신 기법은 비교적 원시적이며, 따라서 메시지 전송시 상당한 중복성을 야기한다. 이러한 결점 및 다른 결점들로 Seiko 시스템은 수용가능하지 않았다. 유사하게, 임의의 페이징 시스템들은 Radio Data System(RDS) 또는 Mobile Broadcasting System(MBS) 시스템과 같은 FM 서브 캐리어 사용에 기초하고 있다. 그러나, 이러한 시스템들은 제한된 데이터 레이트를 갖는 방송 형태로 전송되는 단문 메시지를 포함한다. 불행히도, 만족스러운 모바일 장치 솔루션은 당업자들에게서 벗어나 있다.
간략히 기술하면, 본 발명은 전송 스케줄링을 위한 시스템 및 방법에 관한 것이다. 데이터 스트림은 방송 서버로부터 하나 이상의 클라이언트 장치로 전송된다. 서비스는 방송 서버 내의 스케줄러(scheduler)에 직렬화된 데이터를 제공한다. 이 직렬화된 데이터는 공유 데이터, 비밀 데이터, 또는 제어 데이터에 대응할 수 있다. 데이터 스트림들은 서비스 매트릭스의 품질을 포함하는 가중치 우선순위를 기초로 전송을 위해 스케줄링된다. 공유 데이터에 대한 컨텐츠 인덱싱 시스템의 유연한 테이블을 위한 프로비전(provisions)을 포함하는 프레임 프로토콜에 따라 전송 프레임이 배열된다. 공유 데이터의 패킷들은 특정한 방송 서비스 및 클라이언트 장치 상에 상주하는 대응 어플리케이션에 의해 알려진 기준에 따라 포맷팅(formatting)된다. 클라이언트 장치는 전송계층에서 컨텐츠의 테이블을 수신하고, 다음 프레임에서 이용가능할 데이터의 어플리케이션을 통보한다. 이 어플리케이션은 전송계층에 우선순위 요청을 전달하여, 다음 프레임에서 데이터를 요청한다. 전송계층에 의해 각각의 어플리케이션에 대한 데이터가 검색되고, 핸들러에의해 각각의 어플리케이션에 대해 역직렬화(deserialize)된다. 비밀 데이터는 전송 프레임의 파티션들(partitions) 내의 슬롯들에 의사 무작위적(pseudo randomly)으로 할당되어, 각각의 가입자가 비밀 데이터 슬롯들의 고유 세트를 갖게 된다. 비밀 데이터는 허가되지 않은 수신 방지에 따라 암호화된다.
본 발명은 첨부된 도면을 참조로 아래의 요약된 설명 및 본 발명의 실시에 대한 상세한 설명과 첨부된 특허청구범위에 의해 보다 완전하게 이해될 것이다.
도 1은 동작 환경을 도시한 도면.
도 2는 전자 장치의 기능적 구성 요소를 도시한 도면.
도 3은 전자 시스템을 포함하는 시계 장치를 도시한 도면.
도 4a는 방송 및 스케줄링 시스템의 블럭도.
도 4b는 예시적인 컴퓨팅 장치의 블럭도.
도 4c 및 4d는 프레임 전송 시퀀스들을 도시한 도면.
도 5는 TOC를 포함하는 프레임 헤더를 도시한 도면.
도 6은 TOC 레인지 디스크립터(range descriptor)를 도시한 도면.
도 7은 TOC 슬롯 디스크립터(slot descriptor)를 도시한 도면.
도 8은 비밀 메시지를 도시한 도면.
도 9는 서버측 프레임 스케줄링에 대한 프로세스 흐름을 도시한 도면.
도 10은 클라이언트측 전송계층 프로세싱에 대한 프로세스 흐름의 도면.
도 11은 본 발명에 따라 배열된 예시적인 충돌 검출 절차(collision detection procedure)에 대한 프로세스 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
100: 동작 환경
110: 통신 채널
200: 전자 장치
260: 프로세서
262: 메모리
300: 시계 장치
310: 전자 시스템
400: 컴퓨팅 장치
402: 프로세싱 유닛
404: 시스템 메모리
본 발명은 무선 클라이언트 장치를 포함하는 통신 시스템의 컨텍스트 (context)로 기술된다. 기술되는 실시예들에서, 클라이언트 장치들은 통신 신호를 수신하도록 특수하게 구성된 시계형 장치일 수 있으며, 이는 다음에서 보다 상세히 설명된다. 다음의 상세한 설명을 참조함으로써 보다 명백해지는 바와 같이, 클라이언트 장치들은 하나 이상의 방송 타워로부터 방송 송출을 수신한다. 이 방송 송출은 다음에서 보다 상세히 설명될 프레임 프로토콜에 따라 제공된다. 이 프레임의 구조는 공유 데이터의 컨텐츠 테이블로 배열되어 제한된 메모리 공간을 갖는 무선 장치들이 메시지를 수신할 수 있도록 한다.
본 명세서에서는 시계 기반 시스템의 컨텍스트로 설명되지만, 본 명세서를 참조하여 포터블 컴퓨터 및 데스크탑 컴퓨터, 개인 휴대 정보 단말기(PDA), 셀룰러폰, 알람 시계, 키 체인(key-chain), 냉장고 자석, 벽시계등과 같은 임의의 다른 모바일 또는 비모바일 장치에 동일하게 적용가능하다는 것은 명백할 것이다. 시계의 사용은 단지 다음의 논의를 간소화하기 위한 설명을 목적으로 한 것이며, "모바일 장치" 및/또는 "클라이언트 장치"로 교환가능하게 사용된다. 용어 "클라이언트" 및 "가입자"는 서비스의 사용자를 기술하는 교환가능한 용어이다. 각각의 클라이언트(또는 가입자)는 하나 이상의 클라이언트 장치를 가질 것이며, 여기서 각각의 클라이언트 장치는 클라이언트(또는 가입자)와 동일시된다.
"컴퓨터 판독가능 매체"는 클라이언트/서버 장치에 의해 억세스될 수 있는 임의의 이용가능한 매체일 수 있다. 제한하려는 의도는 아니며, 예를 들어, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 이동성 및 비이동성 매체를 포함한다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리, 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD) 또는 다른 광학 스토리지, 자기 카세트, 자기 테이프, 자기 디스크 스토리지, 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하도록 사용될 수 있으며 클라이언트/서버 장치에 의해 억세스될 수 있는 임의의 다른 매체를 포함하며, 이들로써 제한되지는 않는다. 통신 매체는 전형적으로 반송파 또는 다른 전송 메커니즘과 같은 피변조 데이터 신호 내에 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 구현하며 임의의 정보 전달 매체를 포함한다. 용어 "피변조 데이터 신호"는 신호 내에 정보를 엔코딩하는 방식으로 설정 또는 변화된 하나 이상의 특성을 의미한다. 제한하려는 의도는 아니며, 예를 들어, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체, 및 음향, RF, 적외선, 및 다른 무선 매체와 같은 무선 매체를 포함한다. 이들의 임의의 조합이 컴퓨터 판독가능 매체의 범위 내에 포함된다.
클라이언트 장치는 수신을 위해 배열된 임의의 장치에 대응한다.
도 1-3을 참조로 하여 프레임 프로토콜을 위한 전체 환경이 논의될 것이다.
동작 환경
도 1은 본 발명을 위한 예시적인 동작 환경(100)을 도시하고 있다. 도면에 도시된 바와 같이, FM 트랜시버(transceiver) 또는 방송은 통신 채널(110)을 통해 다양한 전자 장치들에 송신된다. FM 수신기 및 트랜시버를 구비한 예시적인 전자 장치들은 데스크탑 컴퓨터, 시계, 휴대형 컴퓨터, 무선 셀룰러폰(셀폰), 및 개인 휴대 정보 단말기(PDA)를 포함할 수 있다. 이 전자 장치들은 FM 방송으로부터 정보를 수신하도록 배열된다. FM 방송은 표준 FM 송신, 서브 캐리어 FM 송신, 또는 바람직한 임의의 다른 형태의 FM 송신을 포함하는 임의의 형태일 수 있으며, 이들로써 제한되지는 않는다.
종종 FM 서브 캐리어는 Subsidiary Communications Authorization에 대한 연방 통신 위원회(FCC) 용어에 의해 식별되는 바와 같이 SCA로 불린다. FM 서브 캐리어는 FM 스테이션에 대한 FM 스테레오-대역에서 사용되지 않는 대역을 사용한다. 미국에서, FCC는 FM 스테이션의 변조 대역폭 내의 대략 53 kHz에서 100 kHz의 변조 대역폭을 요구한다.
상호작용 모델에 따라 동작하도록 배열된 전자 시스템을 포함할 수 있는 예시적인 전자 장치가 도 1에 도시되어 있다. 이 전자 시스템은 상술한 FM 송신 시스템과 같은 무선 인터페이스를 채용할 수 있다. 전자 시스템 각각은 통신 채널을 통해 메시지 스트림들을 수신한다.
각각의 방송 송신은 하나 이상의 프레임의 송신에 대응한다. 각각의 프레임은 다수의 메시지를 포함할 수 있는데, 여기서 몇몇의 메시지들은 공중 방송(다르게는 "글로벌" 또는 "공유" 메시지)이며, 다른 메시지들은 클라이언트 특정 메시지(다르게는 "비밀" 또는 "사적" 메시지)이다. 지정된 서비스 영역 내에 위치한 각각의 클라이언트는 공유 데이터를 수신할 수 있으며, 하나의 클라이언트는 비밀 데이터를 디코딩할 수 있다. 이미 기술한 바와 같이, 가입자(또는 클라이언트)는 하나 이상의 클라이언트를 가질 수 있으며, 여기서 각각의 클라이언트 장치는 가입자에 의해 억세스가능한 송출을 수신할 수 있다.
전자 장치들(예를 들어, 무선 시계 장치)은 클라이언트 장치로 향하는 패킷들을 수신한다. 패킷들은 논리적인 슬롯(또는 채널) 엔트리 번호(entry number)에 따라 그룹으로 구성된다. 슬롯들은 채널의 스테이션에 대응하는 방송 서비스들과 연관된다. 각각의 전자 장치는 상이한 그룹의 채널을 수신하도록 구성될 수 있다. 채널 각각과 연관된 패킷들이 수신되고, 처리되어 클라이언트 장치 내에 저장된다. 이 저장된 패킷들은 클라이언트 장치 내에 상주하는 어플리케이션에 의해 검색된다. 클라이언트 장치 상의 각각의 어플리케이션은 방송 서버 및 특정한 채널과 연관된 특정한 서비스와 연관된다. 예시적인 채널들은 시간 채널, 메시지 채널, 콘택트 채널, 달력 채널, 날씨 채널, 주식 채널, 뉴스 채널, 및 게임 채널을 포함한다.
예시적인 전자 시스템
도 2는 본 발명에 따라 배열된 전자 장치(200)의 기능적인 구성요소들을 도시한 개략도이다. 전자 장치(200)는 프로세서(260), 메모리(262), 디스플레이 (228), 및 사용자 인터페이스(232)를 구비한다. 메모리(262)는 일반적으로 휘발성 메모리(예를 들어, RAM)와 비휘발성 메모리(예를 들어, ROM, 플래시 메모리 등) 모두를 포함한다. 전자 장치(200)는 메모리(262) 내에 존재하며 프로세서(260) 상에서 실행되는 Microsoft Corporation의 Windows CE와 같은 운영 체제(264) 또는 다른 운영 체제를 포함한다. 사용자 인터페이스(232)는 일련의 푸시 버튼, 스크롤 휠, (전형적인 전화 상에서와 같은) 숫자 다이얼링 패드, 또는 다른 형태의 사용자 인터페이스 수단일 수 있다. 디스플레이(228)는 이전에 기술한 바와 같이 액정 디스플레이, 또는 임의의 다른 형태의 디스플레이일 수 있다. 한 예에서, 디스플레이(228)는 입력 장치로서 동작하는 터치 감응 방식일 수 있다.
하나 이상의 어플리케이션 프로그램(266)이 메모리(262)로 로딩되어 운영 체제(264) 상에서 실행된다. 어플리케이션 프로그램의 예는 폰 다이얼러 프로그램, 이메일 프로그램, 스케줄링/캘린더링 프로그램, PIM(개인 정보 관리) 프로그램, 인터넷 브라우저 프로그램 등을 포함한다. 또한, 전자 장치(200)는 메모리(262) 내에 위치한 비휘발성 스토리지(268)를 포함한다. 비휘발성 스토리지(268)는 전자 장치(200)가 파워 다운되어도 상실되지 않아야 하는 영구적인 정보를 저장하도록 사용될 수 있다. 어플리케이션(266)은 이메일 또는 이메일 어플리케이션에 의해 사용되는 다른 메시지, PIM에 의해 사용되는 콘택트 정보, 스케줄링 프로그램에 의해 사용되는 약속 정보, 워드 프로세싱 어플리케이션에 의해 사용되는 문서, 인스턴트 메시징 어플리케이션(instant messaging application)을 위한 인스턴트 메시지, 텍스트 메시징 어플리케이션 내의 텍스트 메시지 등과 같은 정보를 사용하고 스토리지(268) 내에 저장할 수 있다.
전자 장치(200)는 하나 이상의 배터리로 구현될 수 있는 전원(270)을 구비한다. 이 전원(270)은 AC 어댑터 또는 배터리를 보충 또는 재충전시키는 파워 도킹 크래들(powered docking cradle)을 더 포함할 수 있다.
또한, 전자 장치(200)는 2가지 형태의 통보 메커니즘, 즉 LED(240)와 오디오 인터페이스(274)로 도시되어 있다. 이러한 장치들은 동작시 프로세서(260)와 다른 구성 요소가 배터리 전력을 보존하도록 셧다운(shut down)된다해도 통보 메커니즘에 의해 지시되는 기간 동안 유지하도록 전원(270)에 직접 결합될 수 있다. LED(240)는 사용자가 장치의 파워온 상태를 나타내도록 동작을 취할 때까지 무한정 유지하도록 프로그래밍될 수 있다. 오디오 인터페이스(274)는 가청 신호를 사용자에게 제공하고 사용자로부터 가청 신호를 수신하도록 사용된다. 예를 들어, 오디오 인터페이스(274)는 가청 출력을 제공하기 위한 스피커 및 음성 입력을 수신하기 위한 마이크로폰에 결합되어, 전화 대화, 또는 음성 인식을 사용한 사용자 인터페이스를 용이하게 한다.
또한, 전자 장치(200)는 무선 주파수 통신을 수신 및/또는 송신하는 기능을 수행하는 무선 인터페이스 계층(272)을 포함한다. 이 무선 인터페이스 계층(272)은 통신 캐리어 또는 서비스 공급자를 통해 전자 장치(200)와 외부 세계 사이의 무선 접속을 용이하게 한다. 무선 인터페이스 계층(272)으로 그리고 무선 인터페이스 계층(272)으로부터의 송신은 운영 체제(264)의 제어 하에서 수행된다. 즉, 무선 인터페이스 계층(272)에 의해 수신되는 통신은 운영 체제(264)를 통해 어플리케이션 프로그램(266)으로 유포되며, 반대의 경우도 마찬가지이다.
예시적인 시계 기반 전자 시스템
도 3은 본 발명에 따라 동작하도록 구성된 전자 시스템(310)을 포함하는 예시적인 시계 장치(300)를 도시하고 있다. 이 시계 장치(300)는 시계줄에 부착되거나 시계줄(304) 내에 일체로 형성된 안테나(302)를 포함하는 시계줄(304)을 포함한다. 안테나(302)는 시계 내에 포함된 전자 시스템(310)에 결합된다. 전자 시스템(310)은 도 3에 도시된 바와 같이 베젤(bezel) 내에 또는 시계 장치의 몇몇 다른 부분(도시생략)에 포함될 수 있다.
전자 시스템(310)은 수신기 또는 트랜시버 형태의 장치로서 동작하도록 배열된다. 도면에 도시된 바와 같이, 전자 시스템은 트랜시버(320), 마이크로컴퓨터 유닛(MCU 330), 및 아날로그 라디오(340)를 포함한다. 안테나는 트랜시버(320)에 접속되어 제어된다. MCU(330)와 라디오 사이의 트랜젝션(transactions)은 MCU-디지털 트랜시버 인터페이스를 통해 조정된다. 시계 장치(300)의 구성 요소들은 시계 크기의 엔클로저(enclosure) 내에 수납되며 동작을 위해 배터리 전력에 의존한다.
트랜시버(320)는 일반적으로 트랜시버에 대한 태스크들의 제어, 스케줄링, 및 포스트-프로세싱(post-processing)을 수행하는 디지털 신호 처리기(DSP 324),디지털 라디오, 시스템 타이밍, 및 실시간 이벤트 디스패칭(real-time event dispatching)을 포함하는 실시간 장치(RTD 326)를 포함한다. DSP(324)는 MCU(330)에 결합되고, 트랜시버 태스크들은 MCU(330)에게 명령을 받는다.
DSP의 태스크들 중 하나는 서브 캐리어 페이스 리커버리(sub-carrier phase recovery), 보 리커버리(baud recovery), 및/또는 트래킹, 페이딩 효과(fading effects)를 위한 보상, 복조, 디인터리빙(de-interleaving), 채널 상태 추정, 및 에러 보정과 같은 목적을 위해 수신되는 데이터를 처리할 수 있다. 전체 패킷이 수신되었거나 다른 후속 시간에 패킷들의 포스트-프로세싱이 발생할 수 있다. DSP(324)는 송신되는 데이터 패킷을 분석하여 RTD(326)의 로컬 클럭에 대한 스테이션의 신호 타이밍을 판정한다. 로컬 클럭은 송신기의 클럭 신호와 동기되어 신호 샘플링 무결성(signal sampling integrity)을 유지한다. 수신기는 송신기와 주기적으로 부호 동기화되어 수신되는 데이터의 오판독을 최소화한다.
RTD(326)의 디지털부는 MCU(330) 및 DSP(324)를 위해 시스템 클럭을 제공하는 수정 발진기(crystal oscillator)와 같은 시스템 타임-베이스 발생기들(system time-base generators)을 포함할 수 있다. 또한, 이 타임-베이스는 송신 및 수신 동작을 위한 보 및 샘플 타이밍, 라디오 동작을 위한 시작/중단 제어, 및 MCU(330) 및 DSP(324)에 대한 클럭 서스펜션(clock suspension)의 기간 제어를 제공한다. 또한, RTD(326)는 라디오 동작을 수행하며, 또한 추가 동작을 수행할 수 있다. 라디오(340)는 패킷들 내에 배열된 데이터의 세그먼트들을 수신하도록 배열된다.
도 2 및 3에 도시된 동작 환경은 단지 적합한 동작 환경의 예들이며 본 발명의 사용 범위 또는 기능을 제한하기 위해 제안된 것은 아니다. 본 발명에 사용하기에 적합할 수 있는 널리 공지된 다른 컴퓨팅 시스템, 환경, 및/또는 구성들은 임의의 상기 시스템 또는 장치들을 포함하는 개인용 컴퓨터, 서버 컴퓨터, 핸드핼드 또는 랩탑 컴퓨터, 멀티프로세서 시스템, 마이크로프로세서 기반 시스템, 프로그래밍 가능한 소비자 전자장치, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 분산 컴퓨팅 환경 등을 포함하며, 이들로서 제한되지는 않는다.
방송 서비스
각각의 방송 송신기 타워는 서비스 영역 내의 무선 클라이언트 장치들에 의한 수신을 위해 구성되는 통신 신호를 제공하도록 배열된다. 서비스 영역은 하나 이상의 방송 송신기 타워 (도 1 참조)에 의해 서비스되는 지리적인 영역이다. FM 방송 타워는 도 4a에 도시된 바와 같이 방송 서버 장치에 의해 발생되는 신호를 송신한다. 이 방송 서버 장치(다르게는, "제네레이터")는 네트워크 통신 링크를 통해 스케줄러와 통신할 수 있다.
스케줄러는 하나 이상의 서비스를 선택하기 위한 수단으로서 구성된다. 한 예에서, 클라이언트 장치의 사용자는 스케줄링 인터페이스와 상호작용하여 뉴스, 주식 시세, 날씨와 및 개인 달력, 주소록 등과 같은 다른 기능과 같은 서비스들을 선택한다. 스케줄링 인터페이스는 방송 서비스에 대한 가입을 구성하는 프로비전을 포함한다. 선택된 서비스들은 스케줄러와 통신하고, 이후에 전송을 위해 큐잉(queue)된다. 지정된 시간(또는 시간 간격)에서, 스케줄러는 하나 이상의 선택된 서비스들(예를 들어, SVC1 - SVC N)로부터 직렬화된 데이터를 검색한다. 스케줄러는 다음에서 보다 상세히 설명되는 바와 같이 송신 스케줄링에 우선순위를 부여한다. 스케줄링된 송신이 방송 서버와 통신되어 선택된 서비스를 위한 데이터의 송신 시퀀스를 시작한다. 이후에 방송 서버는 직렬화된 데이터를 하나 이상의 무선 클라이언트 장치를 위한 메시지 스트림들을 포맷팅하고, 송신을 위해 데이터를 큐잉하며, 송신을 위해 큐잉된 데이터를 FM 방송 타워로 전달한다. 스케줄러는 방송 서버와 함께 통합되거나 개별적으로 구성될 수 있다.
각각의 방송 송신은 프레임 프로토콜에 따라 배열된 프레임의 송신에 대응한다. 각각의 프레임은 프레임 헤더와 다수의 데이터 스트림을 포함한다. 프레임 헤더는 프레임 번호, 식별자, 송신 시간, 시간 구역 식별자, 서비스 영역 식별자, 및 다른 환경 정보와 같은 파라미터들에 대한 송신 환경을 기술한다. 또한, 프레임 헤더는 프레임 내의 공유 데이터에 대한 하나 이상의 컨텐츠 테이블의 위치를 기술한다.
스트림들은 공유 데이터(또는, 브로드캐스트 스트림)와 특정 클라이언트(가입자)로 식별되는 비밀 데이터(다르게는, 사적인 데이터)로 분류될 수 있다. 각각의 프레임은 공유 데이터 스트림들이 위치하는 다음의 송신 프레임 내의 위치를 나타내는 컨텐츠 테이블을 포함한다.
예시적인 스케줄러
예시적인 스케줄러가 컴퓨팅 장치로서 구현될 수 있다. 또한, 방송 서버가 컴퓨팅 장치로서 구현될 수 있다. 예시적인 컴퓨팅 장치(400)가 도 4b에 도시되어 있다.
기본 구성에서, 컴퓨팅 장치(400)는 전형적으로 적어도 하나의 프로세싱 유닛(402)과 시스템 메모리(404)를 포함한다. 컴퓨팅 장치의 정확한 구성 및 형태에 따라, 시스템 메모리(404)는 (RAM과 같은) 휘발성, (ROM, 플래시 메모리 등과 같은) 비휘발성, 또는 이 둘의 몇몇 조합일 수 있다. 시스템 메모리(404)는 전형적으로 운영 체제(405), 하나 이상의 프로그램 모듈(406)을 포함하며, 프로그램 데이터(407)를 포함할 수 있다. 이러한 기본 구성은 점선(408) 내의 구성 요소들로 도 4b에 도시되어 있다.
또한, 컴퓨팅 장치(400)는 추가 특성 및 기능을 구비할 수 있다. 예를 들어, 컴퓨팅 장치(400)는 또한 예를 들어, 자기 디스크, 광 디스크 등과 같은 추가 데이터 저장 장치(이동성 및/또는 비이동성)를 포함할 수 있다. 이러한 추가 스토리지는 도 4b에서 이동성 스토리지(409) 및 비이동성 스토리지(410)로 도시되어 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 이동성 및 비이동성 매체를 포함할 수 있다. 시스템 메모리(404), 이동성 스토리지(409), 및 비이동성 스토리지(410)는 모두 컴퓨터 저장 매체의 예들이다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리, 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD) 또는 다른 광학 스토리지, 자기 카세트, 자기 테이프, 자기 디스크 스토리지, 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하도록 사용될 수 있으며 클라이언트/서버 장치에 의해 억세스될 수 있는 임의의 다른 매체를 포함하며, 이들로써 제한되지는 않는다. 이러한 임의의 컴퓨터 저장 매체는 장치(400)의 일부일 수 있다. 또한, 컴퓨팅 장치(400)는 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치 등과 같은 입력 장치(들)(412)을 구비할 수 있다. 디스플레이, 스피커, 프린터 등과 같은 출력 장치(들)(414)이 또한 포함될 수 있다. 이러한 모든 장치들은 본 기술 분야에 공지되어 있으므로 본 명세서에서는 길게 설명하지 않는다.
또한, 컴퓨팅 장치(400)는 네트워크와 같이 이 장치가 다른 컴퓨팅 장치 (418)와 통신하도록 하는 통신 연결(들)(416)을 포함한다. 통신 연결(들)은 통신 매체의 예이다. 통신 매체는 전형적으로 반송파 또는 다른 전송 메커니즘과 같은 피변조 데이터 신호 내에 컴퓨터 판독가능 명령, 데이터 구조, 프로그램 모듈 또는 다른 데이터로 구현되며 임의의 정보 전달 매체를 포함한다. 용어 "피변조 데이터 신호"는 신호 내에 정보를 엔코딩하는 방식으로 설정 또는 변화되는 하나 이상의 특성을 갖는 신호를 의미한다. 제한하려는 의도는 아니며, 예를 들어, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체, 및 음향, RF, 적외선, 및 다른 무선 매체와 같은 무선 매체를 포함한다. 본 명세서에서 사용되는 용어 컴퓨터 판독가능 매체는 저장 매체와 통신 매체를 모두 포함한다.
송신 형식
도 4a는 또한 예시적인 프레임 송신을 도시하고 있다. 각각의 프레임은 다수의 세그먼트(M)로 분해된다. 각각의 세그먼트의 제1 부분은 동기(Sync) 부호를 포함한다. 프레임은 데이터의 무결성(integrity)이 향상되도록 M개의 세그먼트(S0 - SM)로 분할된다. 클라이언트 장치 내의 수신기는 동기 부호를 갖는 데이터 신호의 수신을 위한 타이밍 기능을 설정한다. 각각의 세그먼트는 N개의 패킷을 포함한다. 여러 패킷들 및 세그먼트들의 송신 순서는 프레임이 인터리빙 또는 연속적이 되도록 변경될 수 있다.
도 4c는 예시적인 프레임 송신 시퀀스를 도시한 도면이며, 여기서 각각의 프레임은 인터리빙되는 세그먼트로서 송신되는 16개의 세그먼트 그룹을 포함한다. 각각의 세그먼트는 전체 프레임이 20,480개의 세그먼트를 포함하도록 1280개의 패킷을 포함한다. 도 4c에 도시된 예에서, 주어진 세그먼트(Sx)에 대한 모든 패킷(Px)은 다음 패킷이 송신되기 전에 시퀀스로 송신된다. 예시적인 프레임에 대한 송신 시퀀스는 (S0P0, S0P1 ... S0P1279); (S1P0, S1P1, ... , S1P1279); ... ;(S15P0, S15P1, ... , S15P1279)이다. 도 4c에 도시된 예에 따르면, 새로운 프레임 송신은 선행 프레임의 20,480개의 세그먼트가 완료된 후에 시작한다.
도 4d는 다른 예의 프레임 송신 시퀀스를 도시한 도면이며, 여기서 각각의 프레임은 16개의 세그먼트 그룹 중 하나로부터 80개의 패킷 블럭들로 분할된다. 도 6에 도시된 예에서, 주어진 세그먼트(Sx)에 대한 패킷들(Px)은 다음의 세그먼트에 대한 패킷들과 함께 인터리빙된 시퀀스로 송신된다. 각각의 송신 블럭은 특정한 세그먼트로부터 80개의 패킷으로 구성된다. 프레임에 대한 송신 시퀀스는 (S0P0, S0P1 ... S0P80); (S1P81, ... , S1P159) 등으로 도시되어 있다. 도 4d에 도시된 예에 따르면, 20,480개의 세그먼트 모두의 프레임 수신은 프레임들이 롤링 베이시스(rolling basis)로 완성되도록 인터리빙된다.
프레임 프로토콜 구조 및 상호작용
클라이언트 장치는 OSI 네트워킹 모델과 유사한 일련의 계층으로 구성된다. 이 계층들은 물리 계층, 링크 계층, 네트워크 계층, 전송 계층, 및 어플리케이션 계층을 포함한다. 물리 계층은 FM 가입자 송신 정보를 수신하고 부호들을 링크 계층에 제공한다. 링크 계층은 부호들을 세그먼트들로 분할하고, 비터비 코딩(viterbi coding), 데이터 화이트닝(data whitening), 및 인터리빙 기능들을 핸들링(handling)한다. 네트워크 계층은 세그먼트들을 수신하여 논리 패킷들을 생성한다. 또한, 네트워크 계층은 CRC, 암호화(encryption), 및 리드-솔로몬 코딩(Reed-Solomon coding)을 핸들링한다. 전송 계층은 논리 패킷들을 디코딩하여 컨텐츠 테이블을 검색하고, 어플리케이션 계층에 대한 통신을 핸들링하는 데이터 핸들러들을 포함한다. 어플리케이션 계층은 클라이언트 장치 상에 상주하고 방송 서비스 가입과 연관된 일련의 어플리케이션들을 포함한다.
프레임 구조는 도 5를 참조로 이하에서 기술되는 다수의 패킷을 포함한다. 여기서 설명되는 예에 있어서, 각각의 프레임은 각각 1280개의 세그먼트로 이루어진 16개의 세그먼트 그룹으로 분해되는 20,480 세그먼트를 포함하며(예를 들어, 도 4c를 참조), 각각의 세그먼트는 68개의 부호를 포함하며, 각각의 부호는 하나의 패킷 데이터 비트를 나타낸다. 각각의 부호는 각각의 프레임 송신이 대략 2분의 시간 간격에서 시작되도록 12k비트/초의 비트 레이트로 송신된다. 세그먼트들은 20,480 세그먼트들이 1280개의 논리 패킷 또는 16개의 세그먼트로 구성된 128 바이트로 매핑된다. 스트림 내의 패킷의 위치는 하나의 슬롯으로서 간주된다.
프레임 헤더는 클라이언트 장치가 추정 가능한 방식으로 프레임 헤더 패킷을검색할 수 있도록 각각의 송신 프레임(예를 들어, 프레임 송신의 제1 패킷)의 선정된 슬롯에서 발생된다. 프레임 헤더 패킷은 프레임 번호, 타임 스탬프, 타임 존 오프셋, 영역 정의 및 콘텐츠 테이블(TOC) 위치 정의에 대한 필드를 포함할 수 있다. TOC 우치 정의 필드(TOC 위치)는 프레임 송신 시퀀스에서 발생되는 하나 이상의 콘텐츠 테이블에 대한 슬롯 위치를 식별한다. 각각의 후속하는 프레임 송신은 상이한 수의 콘텐츠 테이블을 참조할 수 있는 다른 헤더를 포함한다. 프레임 헤더 패킷을 제외하고, 식별된 서비스 및 클라이언트 장치에 상주하는 대응하는 애플리케이션에 의해 유연하게 정의된다.
일부 경우에, 프레임 헤더는 송신으로부터 수신되지 않고 특정 파라미터는 최종 수신된 프레임 헤더를 기초로 추정될 수 있다. 일 실시예에서, 프레임 번호는 현재 시간 및 최종적으로 알려진 프레임 번호를 기초로 추정될 수 있다. 다른 실시예에서, 현재 시간은 최종 수신된 프레임 헤더와 연관된 시간을 기초로 추정된다. 논의를 위해, "프레임 번호" 및 "현재 시간"이란 용어는 또한 추정된 프레임 번호 및 추정된 시간을 일컫는다.
프레임 번호는 0에서 시작되어 각각의 후속하는 프레임 송신으로 증가되는 일련 번호이다. 프레임 번호는 후속하는 송신 시퀀스에서 실질적으로 반복되지는 않는다. 예를 들어, 새로운 프레임 송신이 2분마다 한번씩 발생되는 경우, 4 바이트 프레임 번호는 약 15,000년 동안 발생되지 않을 것이다. 프레임 번호는 암호화 및 다른 보안 장치에 대한 시드(seed)로서 사용될 수 있다.
타임 스탬프(time stamp)는 세계시 포맷(UTC) 내에 존재하며 프레임 송신의시작을 위한 세계시를 지시한다. 방송 서버는 송신 서버측의 네트워크 레이턴시(latency)들을 보고하도록 송신을 위한 타임 스탬프를 조정할 것이다. 클라이언트 장치들은 프레임 방송 및 프로세싱 시간에 대한 보상을 해야 한다. 클라이언트 장치는 현재 방송 지역 내의 현재 시간과 클라이언트 장치를 동기시키기 위한 수단으로서 타임 스탬프를 사용할 수 있다.
타임 존 오프셋(time zone offset)은 프레임 송신의 지리적인 영역에 대한 타임 존을 나타낸다. 각각의 프레임 송신은 특정한 지리적인 영역 내에서 발생한다. 한 예에서, 영역들은 그리니치 표준시(GMT : Greenwich Mean Time : GMT) 지시자(designator)들에 관련하여 정의된다.
영역 정의는 영역 ID, 코드명, 및 주파수 리스트를 포함한다. 예시적인 영역 ID는 클라이언트가 로밍(roaming), 커뮤팅(commuting), 및 여행 시나리오를 관리할 수 있도록 현재의 방송 영역을 고유하게 식별하는 16 비트 값이다. 클라이언트 장치는 홈 지리 영역 식별자를 포함할 수 있다. 클라이언트 장치는 영역 ID를 식별하고 홈 영역에 기반하여 스테이션들을 선택적으로 필터링할 수 있다. 코드명은 디스플레이 및/또는 정보제공 목적을 위해 현재 방송 영역의 문자 디스크립션(textual description)을 제공하는 문자열이다. 주파수 리스트는 현재 방송(또는 서비스) 영역 내에서 이용가능한 무선 주파수에 대응한다. 뉴욕시와 같은 대도시는 다수의 방송국을 포함할 수 있지만 전형적인 시나리오는 각각의 지리 영역 내에 매우 적은 수의 방송국들을 포함한다. 스테이션 리스트의 각각의 엔트리에 대한 값들은 베이스라인 주파수로부터의 오프셋 개념으로 표현될 수 있다.예시적인 스테이션 리스트 엔트리는 108 MHz까지(FM 방송 스펙트럼)의 범위인 88 MHz 베이스라인 송신 주파수로부터의 100 kHz 오프셋에 대응한다. 따라서, 113의 스테이션 리스트 값은 88 MHz 또는 99.3 MHz 주파수로부터의 11.3 MHz 오프셋에 대응한다. 특수 값(예를 들어, 0xFF)이 스테이션이 없는 것을 나타내도록 사용될 수 있으며, 다른 특수 값(예를 들어, 0xFF)이 스테이션 리스트가 다음의 프레임 송신까지 계속하는 것(16개 이상의 스테이션을 갖는 영역)을 나타내도록 사용될 수 있다
클라이언트 장치는 스테이션 할당 절차를 사용하여 특정한 주파수를 그 자신에 할당하도록 스테이션 정보를 사용한다. 할당되지 않은 클라이언트 장치는 프레임을 찾기 위해 전체 주파수 범위(예를 들어, 88 MHz - 108 MHz)를 스캔한다. 프레임이 식별된 후에, 클라이언트 장치는 스테이션 리스트를 수신하여 스테이션 할당 절차를 사용하여 스테이션(에를 들어, 홈 스테이션)을 선택한다. 다음에, 클라이언트 장치는 선택된 스테이션으로부터 패킷 수신을 시작한다. 클라이언트 장치가 스테이션 할당을 이루면, 스테이션 리스트는 클라이언트 장치가 신호를 상실하거나 서버가 리스트를 변경 (예를 들어, 헤더의 변화를 나타내도록 컨텐츠 테이블의 플래그가 설정) 할 때까지 후속 프레임에서 무시될 수 있다.
페일-오버 조건(fail-over condition)은 스테이션이 지리 영역 내에서 이용가능하지 않게 될 때 발생한다. 예를 들어, 서비스 영역 내의 방송 타워 수가 가변적일 수 있으며, 특정한 방송 타워가 이용가능하지 않게 될 수 있다. 페일-오버 조건은 갑자기 방송 타워가 오프라인이 되거나 몇몇의 다른 고장 조건일 수 있다.스테이션 리스트는 페일-오버 조건이 발생할 때 또는 추가 스테이션이 이용가능하게 될 때 영역 ID에 의해 주어지는 바와 같이 현재의 지리 영역 내의 이용가능한 스테이션들을 발견하기 위한 수단의 역할을 한다.
프레임 번호(또는 추정 프레임 번호) 및 패킷 번호는 또한 암호화 알고리즘(encryption algorithm)을 위한 초기화 벡터를 결정하도록 사용될 수 있다. 암호화 프로세스는 서비스 키 및 초기화 벡터를 사용하여 패킷을 암호화 및 복호화한다. 예를 들어, 128 비트 서비스 키가 공유 데이터 서비스를 위한 패킷을 암호화 및 복호화하도록 요구될 수 있다. 클라이언트 장치는 각각의 등록된 방송 서비스에 대한 서비스 키를 갖는다. 등록된 방송 서비스에 대한 데이터 스트림은 128 비트 서비스 키로부터 복호화될 수 있다.
방송 서버(다르게는 스케즐러)는 각각의 연속적인 프레임 송신을 위해 프레임 번호를 증가시킨다. 예시적인 프레임 번호 필드는 길이가 4바이트이다. 클라이언트 장치는 프레임 헤더로부터 프레임 번호를 추출하여 프레임이 리플레이 어택(replay attack)인지를 판정하기 위해 프레임 번호를 감정한다. 리플레이 어택은 동일한 프레임 번호들을 사용하여 후에 원본 프레임 송신으로부터의 다수의 프레임 및 방송 프레임들을 기록하는 어택커(attacker)에 의해 구성되는 인식되지 않은 방송에 대응한다.
어택커 키는 프레임 내의 프레임 번호를 수용가능한 값으로 변경함으로써 리플레이 어택의 변형을 시도할 수 있다. 그러나, 프레임 번호가 피드백 모드 패킷 암호화(feedback-mode packet encryption)로 초기 값을 계산하기 위한 시드(seed)로서 사용될 때, 어택커 변형 리플레이 어택은 효과가 없다. 원래의 프레임 방송 송신은 프레임 번호를 사용한 패킷 암호화를 포함하므로, 어택커 변형 리플레이 어택은 적절한 암호화를 포함하지 않으며 클라이언트 장치는 패킷을 무효 것으로 무시할 것이다. 따라서, 프레임 번호는 패킷을 암호화하기 위한 수단으로서 사용될 수 있다.
TOC 위치 정의는 프레임 송신 시 발견되는 컨텐츠 테이블의 수, 및 프레임 내의 컨텐츠 테이블의 위치를 지시한다. 프레임 헤더 내에서 식별되는 컨텐츠 테이블의 위치는 프레임 헤더에 의해 지시되는 바와 같이 송신 시퀀스 내에서 위치가 변화할 수 있다. TOC 위치 정의는 프레임으로 가변 크기 구조를 생성한다. TOC 위치는 리스트 또는 어레이로서 유지될 수 있다. 리스트 또는 어레이 내의 각각의 엘리먼트(element)는 컨텐츠 테이블이 송신되는 프레임 내에서 발견될 수 있는 논리 패킷에 대한 기준(예를 들어, 인덱스)을 포함한다. TOC 위치 정의는 또한 포맷 타입, 에러 보정 모드, 및 TOC에 대한 에러 보정 설정을 포함할 수 있다. 예시적인 포맷 타입은 PDA, 포켓 PC, XBOX 등과 같은 타입에 의해 장치 능력과 연관된 클래스 디스크립터(class descriptor)이다. 다른 예시적인 포맷 타입은 프로토콜 버전 번호에 의해 장치 능력과 연관된 클래스 디스크립터이다.
컨텐츠 테이블(TOC)
각각의 컨텐츠 테이블은 다음의 프레임 송신에서 발생할 공유 데이터 스트림들을 식별한다. 클라이언트 장치는 우선순위에 기초하여 공유 데이터 스트림의 수신을 스케줄링한다. 다수의 클라이언트 장치는 제한된 자원을 갖고 있으므로, 사용자 상호작용 또는 방송 서비스에 대한 가입과 연관된 소정의 선택에 의해 우선순위가 판정될 수 있다.
각각의 TOC 패킷은 이미 설명된 바와 같이 TOC 위치 정의 내에 기술된 특정한 논리 패킷에 위치한다. TOC 패킷은 도 5에 도시된 한 세트의 플래그 및 TOC 레인지 디스크립터들을 포함한다. 플래그는 8 비트 정도 일 수 있으며, TOC 레인지 디스크립터들은 32까지의 엔트리 어레이(또는 리스트)일 수 있다. TOC 레인지 디스크립터들은 TOC 패킷에 대한 최외측 디스크립터이며, 간단하게 레인지 디스크립터의 집합 (예를 들어, TOC Ranges[])으로 칭한다. 각각의 TOC 레인지 디스크립터 (예를 들어, TOC Range0)는 초기 위치, 및 TOC 슬롯 지시자들(예를 들어, TOC slot[])을 갖는다. 레인지 디스크립터에 대한 초기 위치는 송신되는 프레임 내의 레인지 시작의 패킷 오프셋을 나타내는 11비트 값일 수 있다. TOC 슬롯 지시자들은 레인지 내의 슬롯들의 세트(예를 들어, TOC Slot 0 : TOC Slot N)를 기술하는 어레이(또는 리스트)일 수 있다.
프레임 내의 TOC 레인지 디스크립터의 예가 도 6에 도시되어 있다. 데이터의 스트림은 프레임 내의 시간에 송신된다. 레인지 0은 초기 위치(위치 1) 및 3개의 번호가 부여된 슬롯(슬롯 0 내지 2)에 의해 정의된다. 슬롯 0(R0)은 4개의 논리 패킷을 포함하고, 슬롯 1(R0)은 2개의 논리 패킷을 포함하며, 슬롯 2(R0)는 4개의 논리 패킷을 포함한다. 레인지 1은 송신 갭(transmission gap) 이후에 수신된다. 이 송신 갭은 비밀 데이터 스트림과 같은 공유 데이터 스트림이 아닌 서비스 또는 몇몇의 다른 보조 서비스에 의해 사용될 수 있다. 레인지 1은 초기 위치 (위치 2) 및 번호가 부여된 4개의 슬롯(슬롯 0 내지 3)에 의해 정의된다. 슬롯 0(R1)은 8개의 논리 패킷을 포함하고, 슬롯 1 및 슬롯 2(R1)는 각각 2개의 논리 패킷을 포함하며, 슬롯 3(R1)은 4개의 논리 패킷을 포함한다. 본 예에서 주지되는 바와 같이, 각각의 레인지는 TOC 레인지 디스크립터에 의해 지시되는 상이한 초기 위치 및 상이한 수의 연관된 슬롯을 가질 수 있다. 슬롯들 각각은 각각의 레인지에 대해 동일한 크기가 아니며 주어진 레인지에 대한 TOC 슬롯 디스크립터에 의해 식별되는 정도로 변화할 수 있다.
TOC 슬롯 디스크립터들은 다음의 필드, 즉 서비스 ID, 스트림 로케이터, 패킷 카운터, 에러 보정 설정, 및 프레임 예약을 포함할 수 있다. 서비스 ID는 스트림 타입을 나타내는 16 비트 값에 의해 특정한 방송 서비스를 지시할 수 있다. 스트림 로케이터는 어플리케이션 레벨 데이터 핸들러들에 의해 사용되는 16 비트의 불투명 값일 수 있다. 패킷 카운터는 슬롯 내에 포함된 패킷 수를 나타내는 2 비트 값일 수 있다. 에러 보정 설정은 스트림에 의해 채용된 에러 보정 방법의 형태를 식별하는 3비트의 값일 수 있다. 프레임 예약은 슬롯 할당이 프레임 수의 관점에서 주어진 서비스 ID에 대해 유효할 것을 스케줄러가 얼마나 오래 보장할 수 있는가를 나타내는 3비트의 값일 수 있다.
공유 데이터 및 데이터 핸들러
공유 데이터는 다수의 클라이언트를 향하는 데이터 스트림과 연관되고, 방송 서비스와 연관된다. 공유 데이터를 억세스하는 각각의 클라이언트는 암호 키, 적절한 클라이언트측 어플리케이션, 및 제어 데이터의 형태로 유효 억세스를 가져야한다. 공유 데이터는 어플리케이션 계층 의미 체계(semantics)를 패킷 요청과 메시지 재조립으로 번역하는 한 세트의 핸들러들을 통해 관리된다.
클라이언트 장치 상의 어플리케이션은 전송 계층으로 등록된다. 전송 계층은 각각의 등록된 어플리케이션에 대해 데이터 핸들러들을 유지하고, 네트워크 계층으로부터 수신되는 논리 패킷으로부터 TOC를 검색한다. 전송 계층은 서비스 ID로 식별되는 바와 같이 다음의 프레임 송신에서 데이터 스트림들이 이용가능할 등록된 어플리케이션들을 통보한다. 각각의 어플리케이션 프로그램은 클라이언트 장치 내의 전송 계층에 전달되는 데이터 스트림들의 수신을 위해 우선순위를 판정하도록 일련의 매트릭스(metrics)를 적용한다. 기본 및 높은 우선순위 레벨뿐만 아니라, 양호한 데이터, 에러 보정 요구도와 같은 임의의 기준을 기초로 하여 클라이언트 장치 상의 각각의 어플리케이션에 의해 독립적으로 우선순위 부여가 수행된다. 전송 계층은 모든 요청들을 검토하여, 요청이 수용될지를 결정하고, 수용된 요청을 네트워크 계층에 대한 패킷 요청으로 번역한다. 네트워크 계층은 다음의 프레임 송신 시에 관련 패킷을 검색하고 패킷을 데이터 핸들러들을 통해 관련 등록 어플리케이션들로 통과시킨다.
피드(feed)는 클라이언트 장치 상의 대응하는 어플리케이션에 의해 처리될 수 있으며, 특정한 방송 서비스와 연관된 완성된 데이터 스트림에 대응한다. 공유 데이터 스트림은 피드와 연관된 타입에 따라 프레임 송신에 배열된다. 클라이언트 장치는 데이터 핸들러가 특정한 방송 서비스와 연관되도록 장치 내에 상주하는 각각의 어플리케이션을 위한 데이터 핸들러를 포함한다. 클라이언트 장치는 TOC 슬롯 디스크립터들로부터 수신되는 서비스 ID를 기초로 특정한 방송 서비스를 식별한다. 후술되는 예시적인 데이터 핸들러들은 콤팩트 타입(compact type), 스파스 타입(sparse type), 롱 타입(long type)을 포함한다. 그러나, 데이터 핸들러들은 프레임 프로토콜에 대한 충격없이 데이터 핸들러들이 변경 및/또는 추가 데이터 핸들러들이 추가될 수 있다. 각각의 어플리케이션 및 매칭 방송 서비스는 TOC 슬롯 디스크립터 내의 서비스 ID에 의해 식별되는 특정한 타입인 데이터를 핸들링하기 위한 행동들을 정의할 수 있다.
콤팩트 데이터 타입은 전체 메시지가 단일 패킷 내에 포함되도록 패킷과 메시지 사이의 1 대 1 관계를 갖는다. 콤팩트 데이터 타입은 임의의 헤더 정보를 필요로 하지 않는다. 콤팩트 데이터 핸들러는 슬롯 내의 제1 콤팩트 메시지에 대한 개시 위치를 판정하도록 TOC 슬롯 디스크립터로부터의 스트림 로케이터(stream locator)를 사용한다. 후속하는 하나의 패킷 메시지들은 한 시점에서 하나의 패킷에 의해 오프셋된 개시 위치를 따른다. TOC 슬롯 디스크립터 내의 패킷 카운터는 방송 서비스와 연관된 콤팩트 메시지들의 총 수를 나타낸다. 콤팩트 메시지의 예는 주식 채널 방송 서비스를 위한 주식 시세이다. 주식 채널을 위한 방송 서비스는 클라이언트 장치 상의 어플리케이션에 대해 인덱싱되는 일련의 가입된 주식 시세들(예를 들어, MSFT, IBM, ORCL 등)을 가질 수 있다. 이러한 데이터 스트림의 형태에 대해, 스트림 로케이터는 클라이언트 장치를 위한 주식 채널 어플리케이션 상의 주식 시세 메시지들에 대한 개시 위치를 식별한다. 각각의 후속하는 주식 시세는 개시 위치가 스트림 로케이터에 의해 식별된 후에 시퀀스 내에 따르는 개별적인 메시지이다.
스파스 데이터 타입은 다수의 패킷을 통해 배포되는 데이터 스트림이다. 클라이언트 장치 상의 어플리케이션은 TOC(예를 들어, 서비스 ID)로부터 검색되는 정보를 기초로 전송 계층으로부터 데이터를 요청한다. 스파스 데이터는 데이터 무결성 및 서비스의 품질을 보장하도록 전형적으로 6미만의 다수의 패킷을 스패닝(spanning)할 수 있다. 스파스 데이터 스트림 내의 각각의 패킷은 프래그먼트(fragment)로 불리는데, 각각의 메시지는 적어도 하나의 프래그먼트를 갖는다. 각각의 패킷에 대한 헤더는 완성된 메시지 및 메시지 내의 현재 패킷의 프래그먼트 수를 형성하도록 프래그먼트의 수를 식별하는 클라이언트 장치 상의 대응하는 어플리케이션에 의해 검색된다. TOC 레인지 디스크립터 내의 스트림 로케이터는 스파스 데이터 스트림 내의 제1 프래그먼트(또는 패킷)의 위치를 식별한다. 각각의 개별 패킷은 제1 패킷 위치로부터의 오프셋으로서 보여진다.
스파스 데이터 스트림 메시지의 예는 뉴스 채널 방송 서비스 내의 뉴스 스토리이다. 뉴스 채널에 대한 방송 서비스는 뉴스 스토리와 연관된 모든 텍스트를 클라이언트 장치에 전달되도록 다수의 정보 패킷을 필요로 할 수 있다. 뉴스 스토리는 단일 송신 프레임 내에 적합하지 않을 수 있는 다수의 패킷으로 분해되어, 전체 데이터 스트림내에 특정한 패킷(또는 프래그먼트)이 위치하는지를 식별하는 패킷(또는 프래그먼트) 번호와 뉴스 스트림을 식별하는 서비스 ID를 포함한다.
스파스 데이터 타입을 위한 예시적인 TOC 슬롯 디스크립터가 도 7에 도시되어 있다. TOC 슬롯 디스크립터는 특정한 어플리케이션(서비스 ID)과 연관된 서비스 ID, 데이터 스트림 (스트림 로케이터) 내의 스트림 로케이터, 및 후속 하는 패킷 수 (패킷 카운트)를 클라이언트 장치에 제공한다. 도 7에 도시된 예에서, 방송 서버 어플리케이션은 4개의 패킷들이 제공되었고 메시지 #569의 최종 2개의 프래그먼트 및 메시지 #570의 2개의 프래그먼트를 전송하도록 선택되었다. 방송 서버 어플리케이션이 4개의 패킷에 대해 주어지는 마지막에, #568 및 #569의 첫 번째 절반을 전송하는 것을 선택하는 것을 가정한다. 클라이언트는 어플리케이션 계층에 대한 컨텐츠를 역직렬화하기 전에 메시지의 모든 패킷들을 모은다.
롱 데이터 타입은 파일 전송과 같이 다수의 패킷을 통해 완전한 메시지가 배포되는 데이터 스트림이다. 롱 데이터 타입은 서버 ID 및 메시지 번호와 1 대 1 관계를 갖는다. 롱 데이터 스트림에 대해, 에러 보정 코드들이 데이터 스트림의 말단에 추가되어 통신 채널을 통한 데이터 무결성을 보장한다. TOC 슬롯 디스크립터 내의 스트림 로케이터는 다수의 슬롯을 통해 패킷 레인지를 확장하는 시퀀스 번호들을 표현하도록 사용된다. 예를 들어, 롱 데이터 스트림은 6K 상당의 데이터를 전송하는데 필요할 수 있다. 그러나, 스케줄러는 각각의 슬롯이 8개의 패킷을 포함하는 롱 데이터 스트림에 각각의 프레임 내의 4개의 슬롯을 할당할 필요가 있다. 롱 데이터 핸들러는 6K 데이터를 8개의 패킷 블럭을 8개의 패킷 블럭으로 분해하여, 각각의 블럭에 대한 시퀀스 번호를 0으로 할당한다.
비밀 데이터
특정한 가입자에 대한 데이터는 개인적인 것으로 고려된다. 비밀 데이터는 가입자(예를 들어, 하나 이상의 장치), 또는 단일 가입자 장치로 식별되는 각각의장치로 향할 수 있다. 비밀 데이터는 다수의 패킷을 스패닝할 수 있는 메시지로서 제공되며, 각각의 패킷은 전체 메시지의 프래그먼트를 구성한다. 또한, 비밀 데이터는 사적 또는 비밀 메시지로서 불릴 수 있다. 비밀 메시지는 서비스 ID를 갖지 않으며, 공유 메시지에 대해 기술되었던 컨텐츠 테이블을 채용하지 않는다.
비밀 메시지는 메시지 ID, 메시지 내의 프래그먼트, 프래그먼트 인덱스, 프레임 당 사적 패킷, 및 데이터에 대한 필드를 포함하는 헤더를 포함한다. 서버는 메시지 ID를 10 비트 값으로 설정하여 메시지를 식별하고 복사를 방지한다. 각각의 비밀 메시지는 메시지 내의 6 비트 프래그먼트에 의해 식별되는 다수의 패킷으로서 구성된다. 각각의 패킷은 프래그먼트 인덱스의 6 비트 값에 의해 인덱싱하여, 현재의 패킷이 사적 메시지 내의 패킷 총 수에 적합한지를 인덱싱한다. 프레임 필드 당 사적 패킷은 클라이언트가 얼마나 많은 패킷을 요청하는지를 나타내는 2비트 필드에 대응한다. 데이터 필드는 모든 프래그먼트들이 비밀 메시지를 위해 수신된 후에 역직렬화되는 실제 데이터 바이트이다.
비밀 메시지의 권한이 부여되지 않은 수신을 방지하기 위해, 비밀 메시지들은 암호화 키로 암호화되고 각각의 클라이언트는 비밀 메시지가 대체될 프레임 내의 한 세트의 위치로 할당된다. 이 위치는 (단일 가입자에 속하는 모든 장치들에 의해 사용되는) 가입자 ID와 현재의 프레임 번호의 조합을 사용하여 알고리즘적으로 판정된다. 해시 함수가 적용되어 클라이언트의 비밀 메시지가 위치될 프레임 내의 특정 위치(예를 들어, 슬롯)를 판정한다. 서버 및 클라이언트 모두는 송신 프레임 내의 비밀 메시지의 위치가 임의의 직접 상호작용 없이 도달될 수 있도록임의의 정보를 전달하지 않으면서 가입자 ID를 인식한다.
비밀 메시지는 단일 프레임 시간 (예를 들어, 2분)을 초과하지 않아야 하는 레이턴시(latency)를 갖는다. 단일 가입자가 특정한 패킷 위치에 대해 경합하지 않는 드문 경우가 존재하므로, 서버는 모든 가입자가 데이터를 공정하게 수신하는 것을 보장하도록 우선순위를 확대시킨다. 무작위로 프레임 주위의 어딘가로 점프함으로써, 보다 높은 우선순위의 경합자와 반복적으로 충돌되는 경우가 방지된다.
디플트로, 각각의 프레임은 파티션들로 분할된다. 클라이언트는 서버가 송신을 위해 나타낸 개인 패킷의 수에 따라 1 내지 n개의 패킷을 요청할 것이다. 요청되는 각각의 패킷은 의사 무작위 할당 슬롯 및 파티션으로 매핑될 것이다. 각각의 가입자는 비밀 메시지가 권한이 부여되지 않은 클라이언트에 의해 재구성될 수 없도록 각각의 송신 프레임에 대해 고유 세트의 슬롯/파티션 할당을 가져야 한다. 파티션들은 크기가 동일하거나 동일하지 않을 수 있다. 특정한 클라이언트는 의사 무작위 할당 방법을 기초로 한 파티션 내에 위치하거나 상이한 파티션 내에 위치한 슬롯 할당들을 가질 수 있다.
한 예에서, 슬롯 및 파티션 할당은 다음의 알고리즘에 의해 결정된다.
1) 고유 ID 및 슬롯 인덱스를 사용하여, 파티션 할당을 위한 해시 값을 연산
2)프레임 송신 시의 파티션 총 수에 의해 파티션 할당을 위한 해시값을 트렁케이션(truncation)하여 고유 ID를 위한 초기 위치를 정의
3) 각각의 장치가 모든 파티션들을 순환하도록 트렁케이션된 해시 값에 프레임 번호를 가산
4) 파티션의 시작 및 종료 위치를 선택
5) 고유 ID, 프레임 번호, 및 슬롯 인덱스를 사용하여, 파티션 내의 슬롯 할당을 위한 해시 값을 연산
6) 슬롯 할당을 위한 해시 값을 붕괴시켜 이 값을 선택된 파티션의 크기 내에 일치시킴
7) 요청된 슬롯에 대한 패킷 번호를 판정하도록 붕괴된 해시 값에 파티션의 시작 위치를 가산
8) 인덱스 0, 1, 2, 및 3에 대해 단계 1 내지 7을 반복
파티션 및 슬롯 결정을 위한 예시적인 알고리즘이 의사 코드에 의해 다음에서 설명된다. 알고리즘은 고유 ID, 프레임 번호, 및 송신 프레임 내에서 발견된 파티션 수를 사용하여 파티션과 슬롯 위치를 의사 무작위적으로 선택한다. 이 알고리즘은 후술되는 바와 같이 4개의 부분(ComputePacketSlot, Hash, HashArray, 및 Collapse)으로 분해된다.
public ushort ComputePacketSlot(
byte[] uniqueID,
uint frame,
uint index,
int numOfPartitions,
ushort[]PartitionStart,
ushort[]PartitionEnd)
{
unit partition = (Hash(uniqueID, 0xFFFFFFFF, index)+
frame)%numOfPartitions;
uint slot = Hash(uniqueID, frame, index);
ushort selectedPartitionStart = PartitionStart[partition];
ushort selectedPartitionEnd = PartitionEnd[partition];
ushort selectedPatitionSize = selectedPartitionStart-
selectedPartitionEnd;
return(ushort)Collapse(slot, selectedPartitionSize)+
selectedPartitionStart;
}
static public uint Hash(byte[] data, uint frame, uint slot)
{
byte[]val = data + frame + slot;
return HashArray(val);
}
static public uint HashArray(byte[]data)
{
uint hash = 0;
int offset = 0;
int len = data.Length;
while(len-->0)
{
hash += data[offset++];
hash += (hash<<10);
hash ^= (hash>>6);
}
hash += (hash<<3);
hash ^= (hash>>11);
hash += (hash<<15);
return hash;
}
static private uint Collapse(uint slot, uint size)
{
uint res = 0;
uint rem;
while(slot != 0)
{
rem = slot % size;
slot /= size;
res ^= rem;
}
return res % size;
}
특정한 클라이언트에 대한 비밀 메시지의 예가 도 8에 도시되어 있다. 프레임은 파티션들로 분할된다. (예를 들어, 5개의 파티션 - 동일 또는 동일하지 않은 크기) 클라이언트(또는 가입자)와 연관되는 각각의 비밀 데이터 패킷은 제1 해시 함수를 사용하여 파티션들 중 하나에 의사 무작위 할당된다. 클라이언트(또는 가입자)와 연관되는 각각의 비밀 데이터 패킷은 각각의 파티션 내의 의사 무작위 선택된 슬롯 위치에 할당된다. 슬롯 위치는 제2 해시 함수로부터 결정된다. 도 8에 도시된 바와 같이, 슬롯 및 파티션 할당은 프레임 번호, 고유 ID, 및 (슬롯 당 하나의 패킷을 갖는) 패킷 요청 수로부터 결정된다.
각각의 클라이언트 장치는 "장치 키"로 불리는 고유 128 비트 키를 갖는다. 이 장치 키는 변경될 수 없도록 공장에서 칩을 레이저 버닝(laser-burning)하는 것과 같이 변경될 수 없는 양호하게 영구적인 키이다. 장치 키는 동작 메시지를 암호화하는데 사용된다. 또한, 장치 키는 (동일한 가입자로 등록된 모든 장치들과 반대로) 특정한 클라이언트 장치에 어드레싱된 메시지들을 암호화하는데 사용된다.
각각의 가입자는 "가입 키(subscription key)"(또는 "제어 키")로서 불리는 고유 128 비트 키이다. 이 가입 키는 사용자가 개인 메시징 서비스에 가입할 때 생성된다. 장치 동작 동안에, 가입 키는 장치 키로 암호화된 클라이언트 장치에전송된다. 가입자에 대한 모든 후속 비밀 메시지는 가입 키를 사용하여 암호화된다.
각각의 방송 서비스는 "서비스 키"로 불리는 고유 128 비트 키를 갖는다. 모든 방송 메시지들은 서비스 키로 암호화된다. 구성 및 사용의 간소화를 위해, 서비스는 층으로 그룹화된다. 한 층 내의 모든 서비스들은 동일한 암호화 키를 공유한다. 사용자가 서비스에 가입할 때, 사용자는 가입 키로 암호화된 비밀 메시지로서 키를 수신한다. 서비스 키는 서비스를 위해 지불한 사용자들만이 서비스 키를 수신하도록 각각의 과금 기간 동안 한 번과 같이 주기적으로 변경될 수 있다.
특수 알고리즘이 키로부터 일정한 값을 유도하는데 사용된다. 이 알고리즘은 키로 공지된 문자열(예를 들어, "hello world")을 암호화하고 요구되는 비트 수를 추출하는 것이다. 이와 같이 유도된 값은 "키 서명(key signature)"으로 명명되며 후술되는 바와 같이 여러 목적에 사용된다.
장치 키의 서명은 장치 식별자로서 사용된다. 사용자는 이 식별자를 장치를 등록할 때 웹 사이트에 타이핑한다. 키 생성 프로세스는 고유 서명을 갖는 키들만이 사용되는 것을 보장한다. 장치 키의 서명은 프레임 내의 동작 메시지의 슬롯 위치를 연산하기 위해 사용된다. (장치가 동작되기 전에 발생 - 아직 가입 키를 수신하지 않음)
또한, 장치 키의 서명은 장치에 대한 활성 스테이션을 연산하기 위한 시드(seed)로서 사용된다. 한 예에서, 고유 식별자는 클라이언트 장치와 연관된 고유 시리얼 번호에 대응한다. 예시적인 고유 코드는 128 비트 코드일 수 있으며,여기서 고유 코드의 32 비트는 서비스 영역 내의 이용가능한 타워들의 리스트로부터 타워 할당을 결정하는 오프셋 양으로서 사용된다. 예를 들어, offset = N modulo n이며, 여기서 N은 고유 코드로부터의 32 비트에 대응하고, n은 서비스 영역 내의 이용가능한 스테이션 수이다.
가입 키의 서명(서명 ID, 또는 고유 ID)은 동작 수신 후에 프레임 내의 개인용 메시지의 슬롯 위치를 연산하기 위한 시드로서 사용된다. 또한, 가입 키의 서명은 장치에 대해 할당된 (장치가 개인용 메시지를 수신하는) 스테이션을 연산하기 위한 시드로서 사용된다.
방송 서버는 상술한 바와 유사한 방법으로 특정한 클라이언트에 대한 송신을 위해 비밀 메시지를 엔코딩하도록 배열된다. 방송 서버는 각각의 클라이언트 장치에 대해 고유 제어 키를 인식한다. 각각의 개인용 메시지는 고유 제어 키 및 클라이언트 장치에 대한 고유 식별자에 따라 엔코딩된다. 패킷 암호화 알고리즘은 2개의 값을 사용한다. 하나는 고정되어 있으며(키), 나머지는 가변적이다. (초기화 벡터 또는 "IV") IV는 프레임 및 패킷 번호를 사용하여 연산된다. 프레임 번호는 각각의 프레임에 대해 증가하도록 보장되므로, IV는 항상 다를 것이다. 한 예에서, 방송 서버는 클라이언트 장치에 의해 연산되는 128 비트 코드와 동일한 128 비트 코드를 계산한다. 방송 타워의 자동 할당 및 비밀 메시지 채널은 상술한 자기 할당 절차(self-assignment procedure)를 사용하여 결정된다.
개인용 메시지를 검색하기 위한 디폴트 모드는 프레임 당 4개의 패킷을 얻는 것을 시도하는 것이다. 이는 배터리 수명에 있어서 비용이 드는 동작이지만, 사인업(sign-up) 또는 장치 리셋과 같은 키 시나리오들에서 레이턴시를 감소시킨다. 각각의 비밀 데이터 패킷 내의 프레임 필드마다의 개인 패킷은 클라이언트가 후속하는 프레임들에서 얼마나 많은 패킷을 검색하려 시도하는지를 나타내도록 서버에 의해 사용될 수 있다. 이는 서버가 실제로 다수의 패킷으로서 정주시키거나 클라이언트가 다수의 패킷으로서 성공적으로 수신할 것을 보장하지 않는 것으로 인식되며, 이는 보다 많은 힌트를 제공한다.
상술한 다양한 키들을 기초로 각각의 클라이언트에 대해 패킷들이 암호화된다. 한 예에서, 암호화는 클라이언트(또는 가입자)에 대응하는 가입자 키를 사용하여 해시를 계산함으로써 이루어진다. 해시는 패킷 송신시에 포함된다. 비밀 메시지 패킷으로 송신되는 해시가 클라이언트 장치에 의해 계산되는 해시와 일치하지 않을 때 클라이언트 장치는 비밀 메시지 패킷을 무시한다. 비밀 메시지를 적절하게 번역하기 위해, 비밀 메시지 페이로드(payload)는 클라이언트의 키(가입자 키)로 암호화될 것이 요구된다. 암호화와 함께, 의사 무작위 슬롯 및 파티션 할당은 비밀 메시지의 권한이 부여되지 않은 수신을 방지한다. 해시는 Davies-Meyer, MD5, SHA1, 또는 임의의 다른 적절한 해싱 절차를 사용하여 계산될 수 있다.
제어 데이터
클라이언트 장치는 클라이언트 장치 상의 어플리케이션이 사용을 위해 등록될 때까지 검색할 수 없다. 이전에 기술된 바와 같이, 한 세트의 암호화 키, 어플리케이션, 및 핸들러가 클라이언트 장치에 제공되어 적절한 동작을 가능하게 한다. 처음에, 클라이언트 장치는 제어 데이터 또는 메시지의 형태로 최소 정보를 검색할수 있다. 제어 메시지는 클라이언트에 대한 동작 정보를 전달하는 수단을 제공한다.
활성 및 비활성 제어 메시지는 각각의 가입 서비스에 대한 암호화 키를 검색하거나, 클라이언트 장치로부터 가입을 취소하는데 사용될 수 있다. 디폴트 방송 채널 할당뿐만 아니라 홈 영역 할당도 제어 메시지의 형태로 클라이언트 장치에 전달된다.
방송 서버 프레임 스케줄링
도 4a 내지 4d에 대해 상술한 바와 같이, 방송 서버는 각각의 프레임의 송신을 위해 데이터를 선택하도록 배열된다. 주어진 송신 프레임에 대한 데이터의 선택은 각각의 방송 서비스에 할당된 우선순위, 및 프레임 스케줄러에 의해 적용되는 서비스 매트릭스의 품질을 기초로 결정된다.
스케줄러는 송신 대역폭이 완전하게 이용되도록 우선순위 스케줄링을 사용하여 트래픽에 대한 부하에 균형을 이룬다. 데이터 스트림은 비밀 데이터, 공유 데이터, 및 제어 데이터와 같은 상이한 데이터 타입으로 이루어진다. 비밀 데이터는 단일 사용자에 대한 것이고, 공유 데이터는 이전에 설명한 바와 같이 클라이언트 장치들의 그룹들에 방송하는 것이다. 제어 데이터는 단일 또는 클라이언트 장치 그룹에 전달되며, 부기(bookkeeping) 및 구성 정보를 전달한다.
스케줄러는 배포 모델이며, 여기서 스케줄링 함수 기능의 위치는 공유 데이터에 대한 핸들러, 비밀 메시지 서비스, 및 컨텐츠 테이블(TOC) 매니저에 의해 제공된다. 스케줄러는 도 9를 참조로 설명될 바로서 우선순위 알고리즘을 기초로 다음의 프레임 송신에 기반한 슬롯들로 패킷들을 할당한다.
공유 데이터 및 비밀 데이터 서비스 핸들러들은 스케줄러로 차례로 등록되는 TOC 매니저로 등록된다. 송신 프레임을 조립하기 전에, 스케줄러는 슬롯들을 생성하도록 TOC 매니저에 요청을 전달한다(슬롯 생성). TOC 매니저는 최종 송신 시퀀스를 반영하도록 정보를 갱신할 것이다(슬롯 리뷰). 슬롯 할당의 리뷰는 다음에서 보다 상세히 설명된다.
슬롯 할당은 클라이언트 장치가 특정한 정보에 대해 지정된 슬롯 위치들을 따를 수 있도록 다수의 송신 시퀀스에 대해 유지된다. 슬롯 디스크립터의 프레임 예약 필드는 슬롯 지정이 지속될 송신 시퀀스의 수를 지정한다. TOC 매니저는 송신 시퀀스가 완료된 후에 각각의 슬롯 디스크립터의 프레임 예약 필드를 감소시킬 것이다. 0의 값으로 대응하는 프레임 예약 필드를 갖는 모든 슬롯들은 이용가능한 TOC 매니저에 의해 재생된다. 그러나, 지속적인 슬롯 할당은 다음에서 보다 상세히 설명되는 바와 같이 비밀 메시지에 의해 무효화될 수 있다.
슬롯 할당이 리뷰되어, 이용가능한 슬롯이 재생된 후에, TOC 매니저는 등록된 공유 데이터 서비스 핸들러들에 슬롯들을 갱신하도록 요청한다(슬롯 갱신 요청). 공유 데이터 서비스 핸들러는 할당된 슬롯 디스크립터에 대한 로케이터 필드가 갱신되도록 요청을 처리한다(로케이터 갱신). 할당된 슬롯과 연관된 TOC 슬롯 디스크립터 필드는 로케이터 필드의 변화를 반영하도록 갱신되어 TOC 매니저로 리턴된다.
예시적인 로케이터 갱신이 도 7을 참조로 다음에서 설명될 것이다. 메시지들 #568 - #570은 서비스 ID(1024)에 의해 식별되는 공유 메시지 서비스와 연관된다. 메시지 #568에 대한 완전한 메시지는 2개의 패킷을 포함한다. 메시지 #569에 대한 완전한 메시지는 4개의 패킷을 포함한다. 메시지 #570에 대한 완전한 메시지는 2개의 패킷을 포함한다. 먼저 4개 패킷 길이(패킷 카운트 = 4)의 서비스 ID(1024)에 의해 식별되는 서비스에 대한 슬롯 할당을 이루는 요청을 필요로 한다(하기 사항 참조). 제1 송신 시퀀스 내의 TOC 슬롯 디스크립터는 1024의 서비스 ID, 18의 제1 스트림 로케이터, 및 4의 제1 패킷 카운트를 포함한다. 제1 송신 시퀀스 후에, 제2 송신 시퀀스 내의 TOC 디스크립터가 1024의 제2 서비스 ID, 22의 제2 스트림 로케이터, 및 4의 제2 패킷 카운트를 포함하도록 공유 서비스 핸들러들이 TOC 슬롯 디스크립터를 갱신한다. 메시지 #569는 2개의 프래그먼트(2개의 개별적인 송신)로 분할되는 공유 데이터 스트림의 예이다.
TOC 슬롯 디스크립터가 갱신된 후에, TOC 매니저는 등록된 공유 데이터 서비스 핸들러들로부터의 요구에 대한 메시지 요청(요구 요청)을 제시한다. 공유 데이터 서비스 핸들러는 공유 데이터 서비스와 연관된 송신 히스토리를 리뷰하고 다음의 송신 프레임에 대한 요청 슬롯 및 패킷 수를 결정한다. 또한, 공유 데이터 서비스 핸들러는 그 자신의 요청을 우선순위 부여하고, 다음의 프레임 송신을 위한 요청을 결정한다. 요청은 요청 우선순위, 및 슬롯과 연관된 원하는 패킷 수(예를 들어, 슬롯들에 대해 1, 2, 4, 8, 16 패킷)를 포함한다. 이전에 논의된 바와 같이, 각각의 어플리케이션 또는 공유 데이터 서비스는 메시지의 송신을 위해 그 자신의 우선순위를 결정하는 것이 자유롭다. 요구 요청(요구)이 TOC 매니저에 제공된다.
다음에, TOC 매니저는 비밀 데이터 서비스 핸들러로부터 오버라이드 (overrides)를 요청한다(오버라이드 요청). 각각의 비밀 데이터 서비스 핸들러는 다음의 프레임 송신을 위한 요구를 결정한다. 비밀 데이터 서비스 핸들러들은 상술한 의사 무작위 할당 방법을 기초로 슬롯 할당을 결정한다. 비밀 데이터 서비스 핸들러는 다음의 송신 프레임에서 비밀 데이터 패킷 슬롯 수를 예약하도록 요청한다. 몇몇의 예에서, 메시지는 즉시 송신을 요청하는 긴급 방식으로 이루어지거나, 비밀 메시지가 송신되지 않으면서 장시간 대기하였다. 이러한 예에서, 비밀 데이터 서비스 핸들러는 TOC 매니저에 대한 오버라이드 요청을 작성함으로써 다음의 송신 프레임으로 메시지가 전송되는 것을 요구할 수 있으며, 비밀 데이터 메시지는 다음의 프레임 송신에서 전송되어야 한다는 것을 나타낸다.
TOC 매니저는 데이터 서비스 핸들러들로부터의 모든 요청 및 비밀 데이터 서비스 핸들러로부터의 모든 오버라이드 요청을 리뷰한다. 모든 요청을 리뷰한 후에, TOC 매니저는 다음의 프레임 송신에서 공유 데이터에 대한 할당을 위한 슬롯들을 할당한다. 슬롯 할당은 서비스 핸들러에 의해 요청되는 우선순위 레벨에 기초하며, 다른 매트릭스뿐만 아니라 서비스 품질에 기초한 스케줄러에 의해 조정된다. 슬롯 할당이 완료된 후에, TOC 매니저는 공유 데이터 서비스 핸들러에 메시지를 전송하여(패킷 생성 요청), 다음의 프레임 송신에서 할당된 공유 데이터 슬롯들을 위한 패킷을 요청한다.
패킷 생성 요청에 응답하여, 공유 데이터 서비스 핸들러는 TOC 슬롯 디스크립터들에 의해 식별되는 패킷들로 할당된 슬롯들을 채운다(슬롯 채움). 특정한 방송 서비스에 가입한 클라이언트 장치들만이 성공적으로 메시지를 복호화하도록 패킷들이 공유 서비스 핸들러에 의해 암호화된다. 공유 서비스에 할당된 모든 슬롯들이 채워진 후에, TOC 매니저는 다음의 송신 프레임을 위한 패킷을 예약하고 현재의 프레임을 위한 TOC를 갱신한다. 이전에 기술된 바와 같이, TOC는 다음의 송신 프레임에서 이용가능할 공유 데이터를 식별하는 포워드-루킹 인덱스(forward- looking index)이다. TOC 매니저는 현재 송신 프레임에 대한 컨텐츠 테이블과 함께 스케줄러로 채워진 공유 데이터 슬롯들을 리턴한다.
스케줄러는 비밀 데이터 패킷을 요청하도록 메시지를 비밀 데이터 메시지 핸들러에 전송한다(개인 패킷 생성 요청). 비밀 데이터 메시지 핸들러는 비밀 메시지 패킷을 (의사 무작위 할당 방법을 사용하여 이전에 결정된) 지정된 슬롯들에 제공한다. 다음에, 스케줄러는 프레임의 조립을 완료하고, 완성된 프레임을 송신을 위해 방송 서버에 제공한다.
비밀 데이터가 공유 데이터 이후의 미사용 슬롯들에 추가되므로, 비밀 데이터가 다음의 프레임 송신에서 벗어나 반복적으로 스케줄링되는 것이 가능하게 된다. 오버라이드 특성은 공유 데이터 스트림으로부터 곤란한 슬롯 할당으로부터 슬롯 할당을 적극적으로 행함으로써 비밀 데이터 스트림이 점유되는 것의 방지를 돕는다. 2가지 형태의 슬롯 할당이 오버라이드의 결과(이른 및 늦은 슬롯 오버라이드)로서 이루어질 수 있다. 이른 슬롯 오버라이드는 슬롯 할당이 비밀 메시지 오버라이드에 의해 점유되도록 (슬롯이 공유 데이터 서비스에 할당되기 전에) TOC를조립하기 전에 슬롯 오버라이드 요청이 수신될 때 발생한다. 늦은 슬롯 오버라이드는 슬롯을 할당하는 TOC가 이미 송신된 후에 슬롯 오버라이드 요청이 수신될 때 발생한다.
이전에 설명된 바와 같이, TOC 슬롯 디스크립터는 특정한 공유 데이터 서비스와 연관된 다수의 연속적인 프레임 송신을 지시하는 프레임 예약 필드를 포함한다. 프레임 예약 필드는 스케줄러와 공유 데이터 서비스 사이의 약정을 형성한다. 늦은 슬롯 오버라이드는 슬롯이 후에 다시 이용가능하게 될 때까지 통상 임의의 다른 서비스에 할당될 수 없으므로 약정 위반이다. TOC는 오버라이드를 식별하도록 갱신되지 않는다. 비밀 데이터는 암호화된 포맷으로 송신되므로, 인덱싱된 TOC는 부적절한 클라이언트 장치에 의해 무시될 것이며, 적절한 암호 키를 갖는 클라이언트 장치에 의해서는 수용될 것이다.
도 9에서 주지된 바와 같이, TOC 매니저로 등록된 각각의 서비스는 그 자신의 우선순위를 결정할 수 있다. 다수의 서비스가 다음의 송신 프레임에서 슬롯들에 대해 경합하므로, TOC 매니저는 궁극적으로 다음의 프레임 송신에서 서비스가 슬롯을 할당할 것을 결정한다.
스트림들에 대한 우선순위 가중은 이용가능한 대역폭의 사용을 최대화하고 클라이언트 장치들에 적당한 품질의 서비스를 제공하도록 다양한 파라미터들을 사용하여 결정된다. 특정한 서비스의 우선순위를 결정하는데 사용되는 기준은 데이터 만료 시간, 타임 스탬프, 서비스 큐의 길이, 서비스에 대한 가입자 수, 서비스 품질, 미리 할당된 슬롯에 대한 선호도, 프레임에서 클라이언트 장치에 의해 검색가능한 최대 슬롯 수, 및 만족스러운 사용자 경험을 제공하는데 필요할 수 있는 다른 규칙들을 포함한다.
데이터 만료 시간은 특정한 서비스와 연관될 수 있는데, 데이터는 일정 기간 후에 안정화된다. 시간에 민감한 서비스의 예는 주식 보고, 교통량 보고, 날씨 속보, 헤드라인 뉴스, 및 운세(horoscopes)를 포함한다. 주식 시세는 거래 시간 동안에는 몇 분 동안만 유효할 것이지만, 주식 거래소가 폐장한 동안에는 하루종일 유효할 것이다. 교통 정보는 30분까지만 유용할 수 있다. 헤드라인 뉴스는 여러 시간 동안 유효할 수 있지만, 운세는 하루종일 유효하다. 시간에 민감한 데이터 타입에 대한 우선순위는 시간에 덜 민감한 것보다 높다.
타임 스탬프는 데이터 만료 시간 및 메시지와 연관된 재송신 수에 링크된다. 소수의 송신을 갖는 서비스는 데이터 만료 시간에 접근함에 따라 우선순위가 증가할 것이다.
긴 메시지는 단일 송신으로 클라이언트 장치에 의해 검색가능하지 않을 수 있어, 통신을 완료하기 위해 다수의 송신을 필요로 한다. 긴 송신 시퀀스에 보다 높은 우선순위를 할당함으로써, 긴 메시지는 몇몇 (또는 그 이상의) 연속적인 송신 시에 큐로부터 비워질 것이다. 다르게는, 긴 송신 시퀀스는 매우 긴 시간 프레임에 걸쳐 분해될 수 있다. 가변 데이터 흐름은 서비스 큐의 길이를 사용하여 핸들링된다.
서비스에 가입한 가입자 수는 또한 우선순위와 관련된다. 예를 들어, 매우 많은 수의 가입자를 갖는 서비스는 매우 적은 수의 가입자를 갖는 서비스보다 높은우선순위를 가질 것이다.
서비스 품질은 각각의 서비스가 메시지들이 송신되는 시간 슬롯을 가질 것을 요구한다. 예를 들어, 매우 적은 수의 가입자를 가진 서비스는 시간이 반복적으로 푸시 백되어 너무 드물게 송신될 수 있다. 이러한 낮은 우선순위 서비스는 최소 수의 패킷을 전송하여 고품질의 서비스를 유지하도록 하는 시간을 가질 수 있어야 한다.
일부 클라이언트 장치는 제한된 메모리를 가질 것이며, 이로 인해, 제한된 수의 메시지 패킷만을 수신할 수 있다. 스케줄러는 각각의 서비스에 대한 초과 메시지 패킷을 전송해서는 안되는데, 이는 클라이언트 장치가 모든 패킷을 검색할 수는 없기 때문이다. 우선순위는 메시지 패킷의 그룹들이 클라이언트 검색가능한 양으로 전송되도록 메시지 패킷에 할당된다.
스케줄러는 컨텐츠 테이블을 상실한 클라이언트 장치가 최종 공지된 슬롯 할당으로부터 메시지들을 수신할 수 있도록 각각의 서비스로 곤란한 할당을 유지하는 것을 선호한다. 그러나, 곤란한 할당은 높은 우선순위 메시지에 의해 오버라이드(override)될 수 있다. 이전에 설명되었던 TOC 슬롯 디스크립터들 내의 프레임 예약 필드는 곤란한 할당을 반영한다.
각각의 서비스 타입은 가중 함수(PS)에 따라 할당된 우선순위 레벨을 갖는다. 예를 들어, 서비스 (S)는 PS= f(VS, WS)에 의해 주어진 우선순위 레벨(PS)을 가지며, 여기서 VS는 서비스 S의 기준에 대한 값들의 세트이고, WS는 기준에 할당된가중치 세트이다. 스케줄러는 최대 서비스 품질을 제공하도록 각각의 서비스에 대한 가중치 값을 조정할 수 있다. 예시적인 가중 함수는 PS=(VSi×Wi)로서 주어진다.
클라이언트 전송 계층 프로세싱
클라이언트 전송 계층 프로세싱이 도 10을 참조로 다음에서 설명된다. 상술한 바와 같이, 클라이언트 장치는 임의의 주어진 시간에 제한된 량의 정보만을 수신할 수 있다. 클라이언트 장치는 네트워크로부터 데이터 스트림들에 대한 경합이 있는 일련의 상주 어플리케이션을 갖는다. 각각의 어플리케이션은 그 어플리케이션과 연관된 패킷의 포맷팅을 정의하는 것에서 자유롭다. 전송 계층은 어플리케이션에 의해 요구되는 의미 체계를 알지 못하며, 대신에 단지 네트워크 계층으로부터의 논리 패킷의 수신 및 지출과 연관된다. 그러나, 다수의 어플리케이션이 패킷들에 대해 경합하므로, 전송 계층은 각각의 어플리케이션으로부터의 데이터에 대한 요청들에 우선순위를 부여해야 한다.
어플리케이션에 대한 핸들러가 동작(또는 연결)되도록 어플리케이션은 전송 계층으로 등록한다. 전송 계층은 네트워크 계층으로부터 논리 패킷을 수신한다. 전송 계층은 논리 패킷에 관련한 컨텐츠 테이블의 위치를 발견하기 위해 프레임 헤더를 추출할 것이다.
컨텐츠 테이블이 논리 패킷들로부터 추출되고, 다음의 프레임 송신에서 발견될 이용가능한 패킷들에 대해 등록된 어플리케이션들로 통보가 이루어진다. 다음에, 등록된 어플리케이션들은 그 자신의 매트릭스를 기초로 네트워크로부터의 데이터 요청과 연관된 자신의 우선순위 레벨을 결정한다. 등록된 어플리케이션들은 우선순위 부여된 데이터 요청을 대응하는 핸들러를 통해 전송 계층으로 전송한다. 전송 계층은 모든 우선순위를 수신하고 어느 패킷들이 다음의 프레임 송신으로부터 검색될 것인지를 결정한다. 전송 계층이 클라이언트 장치 수신 능력을 완전히 사용하기에 충분한 요청들을 가질 때까지 또는 마지막 송신 프레임이 수신될 때까지 추가 컨텐츠 테이블이 검색될 수 있다. 다음에, 전송 계층은 네트워크 계층에 대한 패킷 요청을 작성한다.
상술한 바와 같이, 클라이언트 장치는 우선순위를 기초로 공유되는 데이터 스트림의 수신을 스케줄링할 것이다. 다수의 클라이언트 장치들은 제한된 자원(예를 들어, 제한된 메모리)를 가지므로, 동일한 프레임 송신에서 모든 가능한 데이터 요청을 수신하는 것은 가능하지 않을 것이다. 클라이언트 장치들은 사용자 상호작용 및/또는 방송 서비스에 대한 가입과 연관된 소정의 선택에 의해 요청들에 우선순위를 부여한다. 한 예에서, 클라이언트 장치는 한 채널 상의 주식 시세를 모니터하도록 사용자에 의해 구성될 수 있으며, 나머지 몇몇은 다른 채널(예를 들어, 일일 운세) 상에서 우선순위 경합을 낮춘다. 주식 시세는 거래 시간 동안에는 급격히 변화한다. 주식 보고는 시간에 민감하므로(주식 시세는 급격히 변동), 주식 채널은 거래 시간 동안에는 우선순위 레벨을 증가시키고, 폐장 이후에는 우선순위를 낮춘다.
다음의 프레임 송신에서, 네트워크 계층으로부터 메시지 스트림을 조립하는어플리케이션 핸들러로 논리 패킷이 전달된다. 한 예에서, 핸들러는 완성된 메시지를 식별하고 추가 처리를 위해 완성된 메시지를 어플리케이션으로 전달한다. 다른 예에서, 핸들러는 과도한 시간 동안 메시지가 완성되지 않은 것을 식별하여, 메시지를 무효 것으로 무시한다. 어플리케이션은 메시지들을 수신하고 요구되는 대로 메시지들을 처리한다. 몇몇의 메시지들은 암호화 또는 매칭 방송 서비스의 특정한 요구에 의해 지정된 포맷팅으로 인해 프로세싱을 필요로 한다.
예시적인 메시지 송신은 도 7을 참조로 이미 설명되었다. 프레임 송신의 제1 예에서, 서비스 ID 1024로 매칭된 어플리케이션은 콤팩트 메시지 #568을 수신한다. 본 예에서는, 전체 메시지가 송신 프레임의 단일 슬롯에서 수신되므로 핸들러에 의한 추가 프로세싱이 요구된다. 프레임 송신의 제2 예에서, 서비스 ID 1024로 매칭된 어플리케이션은 스트림 로케이터(22 및 23)로 식별되는 메시지 #569의 프래그먼트를 수신한다. 핸들러는 수신되는 특정한 패킷들이 4-패킷 송신의 논리 패킷 3 및 4와 연관된 것을 인식한다. 어플리케이션은 다음의 프레임 송신에서 패킷 1 및 2의 수신을 요청할 것이다. 한 예에서, 메시지의 제2 프래그먼트가 수신되고 완성된 메시지가 핸들러에 의해 조립되어 어플리케이션에 전달된다. 다른 예에서, 제2 프래그먼트는 적시에 수신되지 않으며, 메시지는 안정화되고, 불완전한 메시지가 무시된다.
전송 계층은 각각의 어플리케이션에 의해 이루어지는 우선순위 부여된 요청들로 이용가능한 데이터 스트림들의 균형을 이루는 스케줄러로서 동작한다. 따라서, 스케줄링 기반의 클라이언트는 서버측과 클라이언트측 모두에서 분산된다. 서버측은 가입자 서비스, 비밀 메시지, 및 제어 데이터의 송신 주파수를 결정하며, 클라이언트측은 어느 것이 검색할 이용가능한 데이터인지를 결정한다. 비밀 메시지 패킷들은 헤더가 없으며 컨텐츠 테이블에 의한 기준이 없으므로, 개인 패킷들은 네트워크 계층으로부터 어플리케이션 계층으로 전달된다.
충돌 검출
개인용 메시지들에 대한 충돌은 상술한 의사 무작위 슬롯 할당 방법론에 의해 방지된다. 그러나, 충돌로 인한 다른 문제들뿐만 아니라, 에러가 프레임 송신에서 발생하는 것이 가능하다. 한 예에서, 개인용 메시지에 대한 늦은 슬롯 할당은 방송 데이터에 대한 컨텐츠 엔트리 테이블을 오버라이드한다. 본 예에서, 클라이언트는 컨텐츠 테이블에서 식별되는 슬롯 할당에 대응하는 패킷을 검색하고 수신된 패킷을 충돌로서 검출한다. 에러 없이 복호화될 수 없으므로 특정한 슬롯으로부터의 방송 데이터 패킷이 무시된다.
도 11은 본 발명에 따라 배열된 예시적인 충돌 검출 절차를 위한 프로세스 흐름도이다. 프로세싱은 블럭 1101에서 시작하여 블럭 1102로 진행한다.
블럭 1102에서, 복호화 프로세스가 수신된 패킷에 적용된다. 복호화 프로세스는 임의의 적절한 복호화 방법일 수 있다. 한 예에서, 메시지들은 암호 키로 암호화되며, 클라이언트는 복호화를 위한 매칭 키를 갖는다. 프로세싱은 클라이언트 장치가 CRC 확인 프로세스를 복호화 패킷에 적용하는 블럭 1102 내지 블럭 1103을 계속한다. CRC가 유효할 때 프로세싱은 판정 블럭 1104 내지 1110을 계속한다. 다르게, CRC가 무효할 때 프로세싱은 결정 블럭 1104 내지 1105를 계속한다.
블럭 1105에서, 에러 보정 방법이 패킷에 적용된다. 에러 보정은 임의의 합당한 에러 보정 방법일 수 있다. 에러 보정 방법의 한 예는 Reed-Solomon이다. 프로세싱은 클라이언트 장치는 에러 보정 패킷을 복호화하는 블럭 1105 내지 1106을 계속한다. 블럭 1107로 계속하여, 클라이언트 장치는 CRC 확인 프로세스를 에러 보정 복호화 패킷에 적용한다. 판정 블럭 1108로 계속하여, 클라이언트 장치는 CRC 확인 결과를 평가한다. CRC가 유효일 때 프로세싱은 판정 블럭 1108 내지 1110을 계속한다. 다르게는, CRC가 무효일 때 프로세싱은 판정 블럭 1108 내지 1109를 계속한다.
블럭 1109에서, 클라이언트 장치는 수신된 패킷이 충돌한 것으로서 식별되는지를 확인한다. 무효 패킷은 패킷을 손상시킨 환경의 잡음, 무효 패킷 송신, 또는 이전의 송신으로부터 컨텐츠 테이블과 일치하지 않는 패킷 슬롯 할당의 결과일 수 있다. 슬롯은 상이한 복호화 키를 갖는 상이한 클라이언트 장치에 할당되었다. 한 예에서, 슬롯 할당은 상술한 늦은 슬롯 오버라이드였다.
상술한 상세한 설명, 실시예, 및 데이터는 완전한 제조 설명 및 본 발명의 구성에 대한 사용을 제공한다. 본 발명의 범위에서 벗어나지 않으면서 본 발명의 여러 실시예들이 이루어질 수 있으므로, 본 발명은 첨부된 특허청구범위에 속한다.
본 발명에 따르면 방송 서버로부터 하나 이상의 클라이언트 장치들로의 데이터 스트림들의 전송을 스케줄링하기 위한 효과적인 시스템 및 방법이 제공된다.

Claims (70)

  1. 서버 장치로부터 클라이언트 장치로 송신 프레임을 전달하기 위해 저장된 데이터 구조를 갖는 컴퓨터 판독가능 매체에 있어서,
    상기 데이터 구조는,
    현재의 송신 프레임의 소정의 슬롯에 위치하며, 컨텐츠 위치 정의 필드의 테이블을 포함하는 프레임 헤더 패킷;
    상기 현재의 송신 프레임의 유연한 슬롯 위치(flexible slot location)에 위치한 컨텐츠 패킷 테이블 - 상기 유연한 슬롯 위치는 상기 프레임 헤더의 컨텐츠 위치 정의 필드 테이블 내의 엔트리에 의해 결정되고, 상기 컨텐츠 패킷 테이블은 후속하는 송신 프레임 내에 위치하는 공유 데이터 스트림을 식별함 - ; 및
    상기 현재의 송신 프레임의 다른 유연한 슬롯 위치에 위치한 패킷 - 상기 패킷은 이전의 송신 프레임으로부터의 다른 컨텐츠 패킷 테이블 내의 엔트리와 연관되고, 상기 각각의 컨텐츠 패킷 테이블은 후속하는 송신 프레임 내의 패킷을 인덱싱하는 포워드 루킹 인덱스(forward-looking index)임 -
    을 포함하는 컴퓨터 판독가능 매체.
  2. 제1항에 있어서, 상기 각각의 송신 프레임은 각각 1280개의 세그먼트로 이루어진 16개의 세그먼트 그룹으로 분해되는 20,480개의 세그먼트를 포함하며, 각각의 세그먼트는 68개의 부호(symbol)를 포함하고, 각각의 프레임은 상기 송신 프레임내의 슬롯에 의해 식별되는 1280개의 논리 패킷으로 매핑(mapping)되는 컴퓨터 판독가능 매체.
  3. 제1항에 있어서, 상기 프레임 헤더 패킷은 상기 송신 프레임의 제1 슬롯 내에 위치하는 컴퓨터 판독가능 매체.
  4. 제1항에 있어서, 각각의 프레임 헤더는 프레임 번호(frame number), 타임 스탬프(time stamp), 타임 존 오프셋(time zone offset), 및 영역 정의를 더 포함하는 컴퓨터 판독가능 매체.
  5. 제1항에 있어서, 상기 프레임 헤더 패킷은 리플레이 어택들(replay attacks)이 클라이언트 장치들에 의해 검출되도록 이전 및 후속 송신 프레임들의 대응하는 프레임 번호 필드들과 연관된 값들과 다른 연관된 값을 갖는 프레임 번호 필드를 더 포함하는 컴퓨터 판독가능 매체.
  6. 제1항에 있어서, 상기 프레임 헤더 패킷은 상기 프레임 송신 시작을 위한 시간을 지시하는 타임 스탬프 필드를 더 포함하는 컴퓨터 판독가능 매체.
  7. 제1항에 있어서, 상기 프레임 헤더 패킷은 각각의 프레임 송신의 지리적인 영역에 대한 타임 존을 나타내는 타임 존 오프셋 필드를 더 포함하는 컴퓨터 판독가능 매체.
  8. 제1항에 있어서, 상기 프레임 헤더 패킷은 영역 ID, 코드명, 주파수 리스트를 포함하는 영역 정의 필드를 더 포함하며, 상기 영역 ID는 현재의 방송 영역을 식별하고, 상기 코드명은 상기 현재의 방송 영역의 디스크립션(description)을 제공하며, 상기 주파수 리스트는 상기 현재의 방송 영역 내에서 이용가능한 무선 주파수들에 대응하는 컴퓨터 판독가능 매체.
  9. 제1항에 있어서, 상기 프레임 헤더 패킷은 타임 스탬프 및 프레임 번호를 위한 필드들을 더 포함하며, 상기 타임 스탬프 및 프레임 번호는 클라이언트 장치들이 상기 프레임 헤더를 인증하고 변형 리플레이 어택들(variation replay attacks)에 대응하는 송신 프레임들을 무시하도록 송신 프레임 내의 패킷들을 암호화하는 데 사용되는 컴퓨터 판독가능 매체.
  10. 제9항에 있어서, 상기 암호화된 패킷들은 암호 키(encryption key) 및 초기화 벡터로 암호화되고, 상기 초기화 벡터는 상기 프레임 번호 필드 및 상기 타임 스탬프 필드 중 적어도 하나로부터의 값에 의해 결정되는 컴퓨터 판독가능 매체.
  11. 제1항에 있어서, 상기 각각의 컨텐츠 위치 정의 필드 테이블은 슬롯 위치, 포맷 타입, 에러 보정 모드, 및 대응하는 컨텐츠 테이블에 대한 에러 보정 설정을식별하는 컴퓨터 판독가능 매체.
  12. 제1항에 있어서, 상기 각각의 컨텐츠 위치 정의 필드 테이블은 컨텐츠 패킷 테이블들에 대한 인덱스들을 더 포함하며, 상기 각각의 인덱스는 슬롯 위치 및 포맷 타입을 포함하고, 상기 슬롯 위치는 상기 송신 프레임 내의 컨텐츠 패킷 테이블에 대한 위치를 식별하며, 상기 포맷 타입은 클라이언트 장치의 특정한 등급을 식별하는 컴퓨터 판독가능 매체.
  13. 제1항에 있어서, 상기 각각의 컨텐츠 패킷 테이블은 한 세트의 레인지 디스크립터(range descriptors)를 더 포함하며, 각각의 특정한 레인지 디스크립터는 특정한 레인지와 연관된 슬롯들의 초기 위치 및 수에 대한 필드들을 포함하는 컴퓨터 판독가능 매체.
  14. 제13항에 있어서, 상기 초기 위치는 상기 송신 프레임 내의 상기 특정한 레인지의 시작과 연관되는 패킷 번호에 대응하는 컴퓨터 판독가능 매체.
  15. 제13항에 있어서, 상기 특정한 레인지와 연관되는 각각의 슬롯은 서비스 ID, 패킷 카운트(packet count), 스트림 로케이터(stream locator), 에러 보정 설정, 및 프레임 예약에 대한 필드들을 포함하는 대응하는 슬롯 디스크립터를 구비하는 컴퓨터 판독가능 매체.
  16. 제13항에 있어서, 상기 특정한 레인지와 연관된 각각의 슬롯은 서비스 ID 필드를 포함하는 대응하는 슬롯 디스크립터를 구비하며, 상기 각각의 서비스 ID 필드는 상기 슬롯 디스크립터와 연관된 논리 패킷들이 상기 슬롯과 연관된 상기 특정한 방송 서비스와 또한 연관되도록 상기 특정한 방송 서비스를 식별하는 컴퓨터 판독가능 매체.
  17. 제16항에 있어서, 상기 특정한 방송 서비스는 데이터 타입과 연관되며, 각각의 논리 패킷은 클라이언트 장치 상에서 상기 특정한 방송 서비스와 또한 연관된 어플리케이션 프로그램에 의해 사용하기 위해 상기 데이터 타입에 따라 포맷팅 (formatting)되는 컴퓨터 판독가능 매체.
  18. 제17항에 있어서, 상기 데이터 타입은 콤팩트 데이터 타입(compact data type), 스파스 데이터 타입(sparse data type), 및 롱 데이터 타입(long data type) 중 하나에 대응하는 컴퓨터 판독가능 매체.
  19. 제13항에 있어서, 상기 특정한 레인지와 연관되는 각각의 특정한 슬롯은 대응하는 슬롯 디스크립터를 구비하며, 상기 슬롯 디스크립터는 상기 프레임 송신시 상기 특정한 슬롯과 연관된 패킷들의 수를 식별하는 패킷 카운트 필드를 포함하는 컴퓨터 판독가능 매체.
  20. 제13항에 있어서, 상기 특정한 레인지와 연관되는 각각의 특정한 슬롯은 대응하는 슬롯 디스크립터를 구비하며, 상기 슬롯 디스크립터는 특정한 방송 서비스와 연관되는 어플리케이션 레벨 데이터 핸들러들에 의해 사용되는 불분명한 값을 식별하는 스트림 로케이터 필드를 포함하는 컴퓨터 판독가능 매체.
  21. 제13항에 있어서, 레인지 디스크립터와 연관되는 각각의 슬롯은 대응하는 슬롯 디스크립터를 구비하며, 상기 슬롯 디스크립터는 서비스 ID 필드 및 프레임 예약 필드를 포함하고, 상기 서비스 ID 필드는 상기 프레임 송신시 상기 특정한 슬롯과 연관되는 상기 방송 서비스를 식별하고, 상기 프레임 예약 필드는 상기 슬롯이 상기 방송 서비스에 할당되는 프레임 송신의 수를 나타내는 컴퓨터 판독가능 매체.
  22. 제1항에 있어서, 상기 송신 프레임은 5개의 파티션(partition)으로 분할되고, 상기 5개의 파티션 각각 내의 의사 무작위 할당된 슬롯(pseudo-randomly assigned slot)은 각각의 송신을 위해 클라이언트에 할당되며, 상기 송신 프레임은 상기 의사 무작위 할당된 슬롯들 중 적어도 하나에서 상기 클라이언트를 위한 비밀 메시지의 적어도 일부를 포함하는 컴퓨터 판독가능 매체.
  23. 제22항에 있어서, 상기 의사 무작위 할당된 슬롯들은 상기 클라이언트와 연관되는 가입자 ID, 현재의 프레임 번호, 및 해시 함수(hash function) 중 적어도하나로부터 결정되는 컴퓨터 판독가능 매체.
  24. 제22항에 있어서, 상기 비밀 메시지는 비밀 메시지 헤더를 각각 포함하는 논리 패킷의 수를 스패닝(spanning)하고, 상기 비밀 메시지 헤더는 메시지 ID, 메시지 내의 프래그먼트들(fragments), 및 프래그먼트 인덱스(fragment index)에 대한 필드들을 포함하며, 상기 비밀 메시지는 상기 메시지 ID 필드에 의해 식별되고, 상기 논리 패킷의 수는 메시지 필드 내의 상기 프래그먼트들에 의해 식별되고, 각각의 논리 패킷은 상기 프래그먼트 인덱스에 의해 식별되는 컴퓨터 판독가능 매체.
  25. 서버 장치로부터 클라이언트로 송신 프레임들을 전달하기 위해 저장된 데이터 구조를 갖는 컴퓨터 판독가능 매체에 있어서,
    상기 데이터 구조는 상기 송신 프레임 내의 대응하는 슬롯으로 식별되는 논리 패킷들을 포함하고, 상기 논리 패킷들은 파티션들로 분할되고, 상기 클라이언트는 슬롯들에 의사 무작위 할당되고, 상기 각각의 슬롯은 상기 파티션들에 의사 무작위 할당되며, 상기 의사 무작위 할당된 슬롯들 중 하나에 연관되는 논리 패킷은 상기 클라이언트에 대한 비밀 메시지 중 적어도 일부를 포함하는 컴퓨터 판독가능 매체.
  26. 제25항에 있어서, 각각의 송신 프레임은 각각 1280개의 세그먼트로 이루어진 16개의 세그먼트 그룹으로 분해되는 20,480개의 세그먼트를 포함하며, 각각의 세그먼트는 68개의 부호를 포함하고, 각각의 프레임은 1280개의 논리 패킷으로 매핑되는 컴퓨터 판독가능 매체.
  27. 제25항에 있어서, 상기 의사 무작위 할당된 슬롯들은 상기 클라이언트와 연관된 적어도 하나의 가입자 ID, 송신 프레임과 연관된 현재의 프레임 번호, 및 해시 함수 중 적어도 하나로부터 결정되는 컴퓨터 판독가능 매체.
  28. 제25항에 있어서, 상기 비밀 메시지는 비밀 메시지 헤더를 각각 포함하는 논리 패킷들의 수를 스패닝하고, 상기 비밀 메시지 헤더는 메시지 ID, 메시지 내의 프래그먼트들, 및 프래그먼트 인덱스에 대한 필드들을 포함하며, 상기 비밀 메시지는 상기 메시지 ID 필드에 의해 식별되고, 상기 논리 패킷의 수는 메시지 필드 내의 상기 프래그먼트에 의해 식별되며, 각각의 논리 패킷은 상기 프래그먼트 인덱스에 의해 식별되는 컴퓨터 판독가능 매체.
  29. 제25항에 있어서, 상기 의사 무작위 슬롯 할당은 어레이를 형성하도록 상기 현재의 프레임 번호와 가입자 ID를 연결하고, 상기 어레이로부터 해시 값을 생성하며, 각각의 파티션과 연관된 크기로 상기 해시 값을 제한함으로써 결정되는 컴퓨터 판독가능 매체.
  30. 제29항에 있어서, 상기 현재의 프레임 번호는 각각의 클라이언트에 할당되는슬롯 위치들이 각각의 후속하는 송신 프레임에 대해 변화하도록 각각의 후속하는 송신 프레임에 대해 다른 컴퓨터 판독가능 매체.
  31. 제25항에 있어서, 비밀 메시지와 연관된 논리 패킷들은 암호화 문자열(encryption string) 및 고유 제어 키로 암호화되는 컴퓨터 판독가능 매체.
  32. 제31항에 있어서, 상기 클라이언트와 연관된 고유 식별자가 고유 제어 키에 의해 결정되는 컴퓨터 판독가능 매체.
  33. 서버로부터 클라이언트 장치로의 프레임 송신을 스케줄링하기 위한 방법에 있어서,
    후속하는 송신 프레임에 대한 후보 리스트로부터 패킷들을 선택하는 단계;
    다음의 송신 프레임에 대한 컨텐츠 테이블 내에 선택된 패킷을 기술(describing)하는 단계;
    상기 현재의 송신 프레임 내의 슬롯에 상기 다음의 송신 프레임에 대한 컨텐츠 테이블을 할당하는 단계;
    이전의 컨텐츠 테이블로부터의 이전의 슬롯 할당들 및 상기 다음의 송신 프레임에 대한 컨텐츠 테이블에 대해 할당된 슬롯에 따라 상기 현재의 송신 프레임 내의 패킷들을 조립(assembling)하는 단계; 및
    상기 현재의 송신 프레임에 대한 프레임 헤더를 조립하는 단계 - 상기 헤더프레임은 상기 현재의 송신 프레임 내의 컨텐츠 테이블에 대한 위치를 참조함 -
    를 포함하는 스케줄링 방법.
  34. 서버로부터 클라이언트 장치로의 프레임 송신을 스케줄링하기 위한 방법에 있어서,
    송신 슬롯에 대한 요청을 수신하는 단계 - 상기 요청은 다수의 패킷을 포함함 - ;
    상기 요청된 송신 슬롯을 기초로 다음의 송신 프레임을 위한 슬롯을 할당하는 단계;
    상기 할당된 슬롯들을 기초로 상기 다음의 송신 프레임을 위한 컨텐츠 테이블을 생성하는 단계;
    상기 현재의 송신 프레임 내의 슬롯에 상기 다음의 송신을 위한 컨텐츠 테이블을 할당하는 단계;
    이전의 컨텐츠 테이블로부터의 이전의 슬롯 할당들 및 다음의 송신 프레임에 대한 컨텐츠 테이블에 할당된 슬롯에 따라 상기 현재 송신 프레임 내의 패킷들을 조립하는 단계; 및
    상기 현재의 송신 프레임에 대한 프레임 헤더를 조립하는 단계 - 상기 헤더 프레임은 상기 현재의 송신 프레임 내의 컨텐츠 테이블에 대한 위치를 참조함 -
    를 포함하는 스케줄링 방법.
  35. 서버로부터 클라이언트 장치로의 프레임 송신을 스케줄링하기 위한 방법에 있어서,
    요구(needs)를 위해 공유 데이터 서비스 핸들러에 요청을 전송하는 단계 - 상기 공유 데이터 서비스 핸들러는 등록된 방송 서비스와 연관됨 - ;
    상기 요청에 응답하여 상기 공유 데이터 서비스 핸들러로부터 요구를 수신하는 단계 - 상기 공유 데이터 서비스 핸들러에 의해 요청된 각각의 요구는 요청된 우선순위 레벨 및 송신 슬롯에 대한 패킷들의 요청된 할당을 포함함 - ;
    상기 공유 데이터 서비스 핸들러로부터 수신되는 상기 요구들에 우선순위를 부여하는 단계;
    상기 우선순위 부여된 요구들을 기초로 다음의 송신 프레임에 대한 슬롯을 할당하는 단계;
    상기 할당된 슬롯들을 기초로 다음의 송신을 위한 컨텐츠 테이블을 생성하는 단계;
    상기 현재의 송신 프레임에 대해 상기 공유 데이터 서비스 핸들러로부터 패킷들을 요청하는 단계;
    상기 현재의 송신 프레임에 대해 상기 공유 데이터 서비스 핸들러로부터 패킷을 수신하는 단계 - 상기 수신된 패킷들은 이전의 송신 프레임으로부터의 이전의 컨텐츠 테이블과 연관됨 - ;
    상기 현재의 송신 프레임 내의 미사용 슬롯에 다음의 송신을 위한 컨텐츠 테이블을 할당하는 단계;
    이전의 컨텐츠 테이블로부터의 이전의 슬롯 할당들 및 다음의 송신 프레임에 대한 컨텐츠 테이블에 할당된 슬롯에 따라 상기 현재의 송신 프레임 내의 패킷을 조립하는 단계; 및
    상기 현재의 송신 프레임에 대한 프레임 헤더를 조립하는 단계 - 상기 헤더 프레임은 상기 현재의 송신 프레임 내의 컨텐츠 테이블에 대한 위치를 참조함 -
    를 포함하는 스케줄링 방법.
  36. 제35항에 있어서, 비밀 메시지 패킷에 대해 할당된 슬롯 할당을 오버라이딩(overriding)하는 단계를 더 포함하는 스케줄링 방법.
  37. 제35항에 있어서, 각각의 비밀 메시지 슬롯에 대한 의사 무작위 할당된 파티션 내의 의사 무작위 슬롯 할당을 결정하는 단계, 비밀 메시지 슬롯 할당들에 우선순위를 부여하는 단계, 및 상기 우선순위 부여 시 상기 비밀 메시지 슬롯들에 미사용 슬롯들을 할당하는 단계를 더 포함하는 스케줄링 방법.
  38. 제37항에 있어서, 상기 의사 무작위 슬롯 및 파티션 할당들은 고유 ID, 프레임 번호, 및 상기 비밀 메시지의 패킷 수를 채용한 해시에 의해 결정되는 스케줄링 방법.
  39. 제37항에 있어서, 의사 무작위 할당된 파티션 내의 의사 무작위 슬롯 할당을결정하는 단계는,
    상기 고유 ID 및 상기 슬롯 인덱스를 사용하여 파티션 할당을 위한 해시 값을 계산하는 단계;
    상기 고유 ID에 대한 초기 위치를 정의하도록 상기 프레임 송신시에 파티션들의 총 수만큼 상기 파티션 할당에 대한 해시 값을 트렁케이팅(truncating)하는 단계;
    각각의 클라이언트가 모든 파티션들을 순환하도록 상기 프레임 번호를 상기 트렁케이팅된 해시 값에 가산하는 단계;
    상기 파티션의 시작 및 종료 위치를 결정하는 단계;
    상기 고유 ID, 프레임 번호, 및 상기 슬롯 인덱스를 사용하여 슬롯 할당을 위한 해시 값을 계산하는 단계;
    상기 슬롯 할당을 위한 해시 값을 붕괴(collapsing)시켜 붕괴된 값을 선택된 파티션의 크기에 맞도록 하는 단계; 및
    상기 요청된 슬롯에 대한 패킷 번호를 결정하도록 상기 붕괴된 해시 값에 상기 파티션의 시작 위치를 가산하는 단계
    를 포함하는 스케줄링 방법.
  40. 제37항에 있어서, 상기 비밀 메시지와 연관된 패킷들을 암호화하며, 암호화 프로세스는 적어도 하나의 프레임 번호와 패킷 번호를 사용하여 암호화 프로세스에 대한 초기화 벡터를 결정하고, 상기 암호화 프로세스는 암호화를 위해 초기화 벡터와 가입 키를 사용하는 스케줄링 방법.
  41. 제35항에 있어서,
    프레임 번호 필드에 값을 할당하는 단계 - 상기 프레임 번호 필드와 연관된 값은 연속적인 프레임들에 대해 상이함 - ;
    시간 필드에 값을 할당하는 단계 - 상기 시간 필드와 연관된 값은 연속적인 프레임들에 대해 상이함 - ; 및
    상기 프레임 번호 필드, 컨텐츠 로케이터 필드 테이블, 및 시간 필드를 포함하는 프레임 헤더를 준비하는 단계 - 상기 프레임 헤더는 동일한 논리 패킷 번호에서 항상 발생하는 상기 프레임 송신에서의 패킷에 대응함 -
    를 더 포함하는 스케줄링 방법.
  42. 제35항에 있어서, 상기 할당된 슬롯들을 기초로 상기 다음의 송신을 위한 컨텐츠 테이블을 생성하는 단계는 방송 서비스를 위해 슬롯 번호를 결정하는 단계, 상기 방송 서비스에 상기 슬롯 번호를 할당하는 단계, 및 상기 방송 서비스를 나타내도록 컨텐츠 엔트리 테이블의 서비스 식별자 필드를 설정하는 단계를 포함하는 스케줄링 방법.
  43. 제35항에 있어서, 각각의 공유 데이터 서비스 핸들러에 의해 요청되는 각각의 요구는 슬롯 할당이 지속되는 송신 시퀀스의 수를 지정하는 요청된 프레임 예약을 더 포함하는 스케줄링 방법.
  44. 제35항에 있어서, 각각의 할당된 슬롯에 대한 프레임 예약 필드들을 설정하는 단계를 더 포함하며, 각각의 프레임 예약 필드는 슬롯 할당이 지속되는 송신 시퀀스의 수를 지정하는 스케줄링 방법.
  45. 제35항에 있어서, 각각의 할당된 슬롯에 대한 프레임 예약 필드들을 설정하는 단계를 더 포함하며, 각각의 프레임 예약 필드는 슬롯 할당이 지속하는 송신 시퀀스의 수를 지시하는 스케줄링 방법.
  46. 제45항에 있어서, 각각의 선행 프레임 송신으로부터 각각의 할당된 슬롯에 대한 프레임 예약 필드들을 감소시키는 단계와, 0의 값을 갖는 프레임 예약 필드를 갖는 각각의 슬롯 할당을 재요청(reclaiming)하는 단계를 더 포함하는 스케줄링 방법.
  47. 제45항에 있어서, 할당된 슬롯과 연관된 로케이터 필드들을 갱신하는 단계를 더 포함하는 스케줄링 방법.
  48. 제45항에 있어서, 각각의 할당된 슬롯과 연관된 로케이터 필드들을 갱신하도록 각각의 공유 데이터 서비스 핸들러에 요청을 전달하는 단계와, 상기 요청에 응답하여 상기 공유 데이터 서비스 핸들러로부터 갱신된 로케이터 필드들을 수신하는 단계를 더 포함하는 스케줄링 방법.
  49. 제45항에 있어서, 비밀 데이터 서비스 핸들러로부터 오버라이드(override)를 요청하는 단계, 상기 비밀 데이터 서비스 핸들러로부터 오버라이드 요청을 수신하는 단계, 상기 오버라이드 요청에 응답하여 비밀 메시지에 다음의 프레임 송신시 슬롯을 할당하는 단계를 더 포함하는 스케줄링 방법.
  50. 클라이언트 장치 상의 데이터 검색을 스케줄링하는 방법에 있어서,
    현재의 송신 프레임으로부터 컨텐츠 테이블을 추출하는 단계;
    등록된 어플리케이션으로 컨텐츠 테이블 내의 엔트리를 식별하는 단계;
    후속하는 송신 프레임 내의 슬롯들로 식별된 패킷을 검색하는 단계;
    상기 검색된 패킷들로부터 메시지를 조립하는 단계; 및
    상기 메시지가 조립될 때 상기 클라이언트 장치 상의 어플리케이션에 완성된 메시지를 전달하는 단계
    를 포함하는 스케줄링 방법.
  51. 클라이언트 장치 상의 데이터 검색을 스케줄링하는 방법에 있어서,
    현재의 송신 프레임으로부터 컨텐츠 테이블을 추출하는 단계;
    등록된 어플리케이션으로 컨텐츠 테이블 내의 엔트리를 식별하는 단계;
    상기 컨텐츠 테이블 내의 상기 엔트리와 연관된 상기 등록된 어플리케이션들에 요청을 전송하는 단계;
    상기 어플리케이션으로부터 데이터 요청을 수신하는 단계 - 상기 데이터 요청은 요청된 우선순위 레벨을 포함함 - ;
    우선순위 레벨을 기초로 상기 데이터 요청들을 분류(sorting)하는 단계;
    네트워크 계층으로부터 가장 높은 우선순위 패킷들을 요청하는 단계 - 상기 가장 높은 우선순위 패킷들은 후속하는 송신 프레임 내의 슬롯으로 식별됨 - ;
    상기 후속하는 송신 프레임과 연관된 네트워크 계층으로부터 패킷들을 수신하는 단계;
    상기 등록된 어플리케이션에 대한 핸들러에 상기 수신된 패킷들을 전달하는 단계;
    상기 등록된 어플리케이션에 대한 상기 핸들러로 상기 수신된 패킷들로부터 메시지를 조립하는 단계; 및
    상기 메시지가 조립될 때 상기 핸들러로부터 상기 어플리케이션으로 완성된 메시지를 전달하는 단계
    를 포함하는 스케줄링 방법.
  52. 제51항에 있어서, 상기 클라이언트 장치 내의 전송 계층에 어플리케이션을 등록하는 단계와, 상기 등록된 어플리케이션에 대한 상기 전송 계층에 핸들러를 연결하는 단계를 더 포함하는 스케줄링 방법.
  53. 제52항에 있어서, 상기 어플리케이션으로부터의 종료 요청에 응답하여 상기 전송 계층으로부터 상기 핸들러를 단절시키는 단계를 더 포함하는 스케줄링 방법.
  54. 제51항에 있어서, 상기 컨텐츠 테이블 추출 단계는,
    상기 현재의 송신 프레임에 대한 프레임 헤더를 검색하는 단계;
    상기 프레임 헤더로부터 컨텐츠 위치 정의 테이블을 식별하는 단계; 및
    상기 현재의 송신 프레임 내의 상기 식별된 위치로부터 상기 컨텐츠 테이블을 검색하는 단계 - 상기 컨텐츠 테이블은 후속 송신 프레임으로의 포워드-루킹 인덱스임 -
    를 포함하는 스케줄링 방법.
  55. 제51항에 있어서, 상기 현재의 프레임 송신 내의 프레임 헤더로부터 타임 스탬프를 검색하는 단계와, 상기 타임 스탬프를 기초로 상기 클라이언트 장치 내의 내부 클럭을 동기시키는 단계를 더 포함하는 스케줄링 방법.
  56. 제51항에 있어서, 리플레이 어택들이 상기 클라이언트 장치에 의해 무시되도록 프레임 번호와 타임 스탬프를 기초로 상기 현재의 프레임 송신을 인증하는 단계를 더 포함하며, 상기 프레임 번호는 보다 이른 송신 프레임으로부터 추정되고 프레임 헤더로부터 추출되거나 또는 보다 이른 송신 프레임으로부터 추정되고 프레임헤더로부터 추출되는 스케줄링 방법.
  57. 제51항에 있어서, 프레임 번호를 계산하는 단계와 상기 현재의 프레임 송신시 프레임 헤더로부터 프레임 번호를 검색하는 단계 중 적어도 하나의 단계와, 변형 리플레이 어택들이 상기 클라이언트 장치에 의해 무시되도록 상기 프레임 번호에 의해 시딩(seeding)되는 피드백 모드 패킷 암호를 가지고 패킷들을 복호화하는 단계를 더 포함하는 스케줄링 방법.
  58. 제51항에 있어서, 암호 키를 사용하는 복호화 프로세스에 대한 초기 값을 생성하도록 프레임 번호, 타임 스탬프, 및 패킷 번호를 사용하는 단계를 더 포함하며, 상기 암호 키는 방송 서비스와 연관되는 검색된 데이터를 인증하도록 상기 클라이언트 장치에 의해 채용되는 스케줄링 방법.
  59. 제51항에 있어서, 검색된 데이터와 연관된 논리 패킷들을 인증하는 단계를 더 포함하며, 상기 인증 단계는,
    상기 논리 패킷을 복호화하는 단계;
    상기 복호화된 논리 패킷의 CRC를 검사하는 단계;
    상기 복호화된 논리 패킷의 무효 CRC가 식별될 때 에러 보정을 적용하는 단계;
    상기 에러 보정 논리 패킷을 복호화하는 단계;
    상기 복호화된 에러 보정 패킷의 CRC를 검사하는 단계;
    상기 복호화된 논리 패킷 및 상기 복호화된 에러 보정 논리 패킷이 무효 CRC를 가질 때 인증을 하지 않는 단계; 및
    상기 논리 패킷과 상기 에러 보정 논리 패킷 중 적어도 하나가 유효 CRC를 가질 때 성공적으로 인증하는 단계
    를 포함하는 스케줄링 방법.
  60. 제51항에 있어서, 등록된 어플리케이션들로 상기 컨텐츠 테이블 내의 엔트리들을 식별하는 단계는 상기 컨텐츠 테이블로부터 서비스 ID를 추출하는 단계를 더 포함하며, 상기 서비스 ID는 상기 등록된 어플리케이션을 식별하는 스케줄링 방법.
  61. 제51항에 있어서, 서비스 품질이 상기 클라이언트 장치 상의 각각의 어플리케이션에 대해 유지되도록 상기 요청되는 우선순위 레벨과 연관된 우선순위 레벨들을 갱신하는 단계를 더 포함하는 스케줄링 방법.
  62. 제51항에 있어서, 상기 컨텐츠 테이블의 검색이 실패되고 이전의 컨텐츠 테이블로부터의 상기 프레임 예약 필드가 상기 수신된 패킷과 연관된 상기 슬롯 할당이 곤란한(sticky) 것임을 나타낼 때, 다른 후속하는 송신 프레임과 연관된 상기 네트워크 계층으로부터 패킷을 수신하는 단계를 더 포함하는 스케줄링 방법.
  63. 제51항에 있어서, 상기 클라이언트 장치 상의 어플리케이션에 대한 핸들러와 연관된 데이터 타입에 따라 메시지들이 포맷팅되며, 상기 데이터 타입은 콤팩트 데이터 타입, 스파스 데이터 타입, 및 롱 데이터 타입 중 하나에 대응하는 스케줄링 방법.
  64. 제63항에 있어서, 콤팩트 데이터 타입에 대한 핸들러는 상기 슬롯 내의 제1 콤팩트 메시지를 위한 개시 위치를 결정하도록 컨텐츠 테이블 슬롯 디스크립터로부터의 스트림 로케이터를 사용하며, 후속하는 1-패킷 메시지들은 한 번에 한 패킷에 의해 오프셋된 시작 위치를 따르는 스케줄링 방법.
  65. 제63항에 있어서, 스파스 데이터 타입에 대한 핸들러는 스파스 데이터 스트림의 프래그먼트에 대한 슬롯 위치를 결정하도록 컨텐츠 테이블 슬롯 디스크립터로부터의 스트림 로케이터를 사용하며, 후속하는 프래그먼트들은 상기 제1 프래그먼트로부터 오프셋된 시작 슬롯 위치를 따르는 스케줄링 방법.
  66. 제63항에 있어서, 롱 데이터 타입에 대한 핸들러는 롱 데이터 스트림의 각각의 프래그먼트에 대한 시퀀스 번호들을 결정하도록 컨텐츠 테이블 슬롯 디스크립터로부터의 스트림 로케이터를 사용하는 스케줄링 방법.
  67. 클라이언트 장치 상의 비밀 데이터의 검색을 스케줄링하기 위한 방법에 있어서,
    현재의 송신 프레임으로부터 프레임 헤더를 검색하는 단계;
    상기 프레임 헤더로부터 프레임 번호를 추출하는 단계 - 후속하는 송신 프레임에 대한 상기 프레임 번호는 상기 현재의 송신 프레임에 대한 상기 프레임 번호와 다름 - ;
    상기 클라이언트 장치에 대한 가입자 ID를 식별하는 단계;
    상기 프레임 번호 및 상기 가입자 ID로 상기 클라이언트 장치에 대한 비밀 메시지 슬롯 할당을 결정하는 단계;
    상기 송신 프레임의 상기 비밀 메시지 슬롯 할당으로부터 논리 패킷을 수신하는 단계;
    상기 논리 패킷을 인증하는 단계; 및
    상기 클라이언트 장치 상의 어플리케이션 핸들러에 인증된 논리 패킷을 전달하는 단계
    를 포함하는 스케줄링 방법.
  68. 제67항에 있어서, 상기 비밀 메시지 슬롯 할당을 결정하는 단계는 상기 가입자 ID와 상기 현재의 프레임 번호로부터 비밀 메시지 슬롯 할당들을 결정하는 단계를 더 포함하는 스케줄링 방법.
  69. 제67항에 있어서, 상기 비밀 메시지 슬롯 할당을 결정하는 단계는 바이트의어레이를 형성하도록 가입자 ID와 현재의 프레임 번호를 연결하는 단계, 상기 바이트 어레이로부터 해시 값을 생성하는 단계, 상기 바이트 어레이로부터 슬롯 할당을 결정하는 단계를 더 포함하며, 상기 슬롯 할당은 상기 송신 프레임의 각각의 파티션 내의 슬롯들에 대응하는 스케줄링 방법.
  70. 제67항에 있어서, 상기 논리 패킷을 인증하는 단계는,
    상기 논리 패킷을 복호화하는 단계;
    상기 복호화된 논리 패킷의 CRC를 검사하는 단계;
    상기 복호화된 논리 패킷의 무효 CRC가 식별될 때 에러 보정을 적용하는 단계;
    상기 에러 보정된 논리 패킷을 복호화하는 단계;
    상기 복호화된 에러 보정 패킷의 CRC를 검사하는 단계;
    상기 복호화된 논리 패킷 및 상기 복호화된 에러 보정 논리 패킷이 무효 CRC를 가질 때 인증하지 않는 단계; 및
    상기 논리 패킷과 상기 에러 보정 논리 패킷 중 적어도 하나가 유효 CRC를 가질 때 성공적으로 인증하는 단계
    를 포함하는 스케줄링 방법.
KR1020040000147A 2003-01-03 2004-01-02 프레임 프로토콜 및 스케줄링 시스템 KR20040062893A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/336,240 US7792121B2 (en) 2003-01-03 2003-01-03 Frame protocol and scheduling system
US10/336,240 2003-01-03

Publications (1)

Publication Number Publication Date
KR20040062893A true KR20040062893A (ko) 2004-07-09

Family

ID=32680970

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040000147A KR20040062893A (ko) 2003-01-03 2004-01-02 프레임 프로토콜 및 스케줄링 시스템

Country Status (10)

Country Link
US (1) US7792121B2 (ko)
EP (1) EP1463234A2 (ko)
JP (1) JP2004215253A (ko)
KR (1) KR20040062893A (ko)
CN (1) CN1522018A (ko)
AU (1) AU2003271332A1 (ko)
BR (1) BR0305985A (ko)
CA (1) CA2454499A1 (ko)
MX (1) MXPA03012014A (ko)
RU (1) RU2323429C2 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008140261A2 (en) * 2007-05-14 2008-11-20 Samsung Electronics Co., Ltd. Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service
US8717961B2 (en) 2007-05-14 2014-05-06 Samsung Electronics Co., Ltd. Method and apparatus for transmitting broadcast, method and apparatus for receiving broadcast
KR20140053857A (ko) * 2011-03-08 2014-05-08 스카이프 무선 통신 장치에서의 전력 절감
US8750331B2 (en) 2007-06-18 2014-06-10 Samsung Electronics Co., Ltd. Method and apparatus for transporting mobile broadcasting service, and method and apparatus for receiving mobile broadcasting service
KR101500339B1 (ko) * 2008-12-23 2015-03-09 삼성전자주식회사 디지털방송 시스템의 패킷 통신 장치 및 방법
US8995353B2 (en) 2007-10-09 2015-03-31 Samsung Electronics Co., Ltd. Method and apparatus for transmitting broadcast data and method and apparatus for receiving broadcast data
CN101558589B (zh) * 2007-05-14 2015-11-25 三星电子株式会社 用于发送广播的方法和设备、用于接收广播的方法和设备
US10044838B2 (en) 2015-04-14 2018-08-07 Lsis Co., Ltd. Method of automatically setting protocol in programmable logic controller system
US10345393B2 (en) 2015-07-30 2019-07-09 Lsis Co., Ltd. Power loss measuring system for measuring power loss at harmonic filter included in high voltage direct current (HVDC) transmission system, and power loss measuring method thereof

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040203624A1 (en) * 2002-09-12 2004-10-14 Teh Jin Teik Technique for sharing of files with minimal increase of storage space usage
US7792121B2 (en) * 2003-01-03 2010-09-07 Microsoft Corporation Frame protocol and scheduling system
US7181701B2 (en) * 2003-01-03 2007-02-20 Microsoft Corporation Glanceable information system and method
US7523306B2 (en) * 2003-01-16 2009-04-21 Texas Instruments Incorporated Simplified CCMP mode for a wireless local area network
US7499548B2 (en) * 2003-06-24 2009-03-03 Intel Corporation Terminal authentication in a wireless network
US8437475B2 (en) * 2004-03-19 2013-05-07 Verizon Corporate Services Group Inc. Packet-based and pseudo-packet-based cryptographic synchronization systems and methods
US7831825B2 (en) * 2004-03-19 2010-11-09 Verizon Corporate Services Group Inc. Packet-based and pseudo-packet based cryptographic communications systems and methods
KR100800887B1 (ko) * 2004-05-07 2008-02-04 삼성전자주식회사 무선 통신 시스템에서 방송 서비스 데이터 송/수신 방법 및 시스템
US7239881B2 (en) * 2004-06-30 2007-07-03 Cingular Wireless Ii Llc Customized signature messaging service
AU2005287981B2 (en) * 2004-08-17 2008-08-28 Nokia Technologies Oy Method and system for forming and transmitting/receiving neighbor base station information in a BWA communication system
US7817643B2 (en) * 2004-09-14 2010-10-19 Maksim Azarov System and method for varying the scheduling of real time protocol (RTP) packets
US7593429B2 (en) * 2004-10-14 2009-09-22 Temic Automotive Of North America, Inc. System and method for time synchronizing nodes in an automotive network using input capture
US7593344B2 (en) * 2004-10-14 2009-09-22 Temic Automotive Of North America, Inc. System and method for reprogramming nodes in an automotive switch fabric network
US7623552B2 (en) * 2004-10-14 2009-11-24 Temic Automotive Of North America, Inc. System and method for time synchronizing nodes in an automotive network using input capture
US20060083172A1 (en) * 2004-10-14 2006-04-20 Jordan Patrick D System and method for evaluating the performance of an automotive switch fabric network
US7599377B2 (en) * 2004-10-15 2009-10-06 Temic Automotive Of North America, Inc. System and method for tunneling standard bus protocol messages through an automotive switch fabric network
US7613190B2 (en) * 2004-10-18 2009-11-03 Temic Automotive Of North America, Inc. System and method for streaming sequential data through an automotive switch fabric
CN100355299C (zh) 2004-11-16 2007-12-12 华为技术有限公司 一种接收组播广播业务的方法
KR100612255B1 (ko) * 2005-01-11 2006-08-14 삼성전자주식회사 무선 네트워크 시스템에서의 데이터 보안장치 및 그 방법
US7715341B2 (en) * 2005-01-28 2010-05-11 Nortel Networks Limited Optimized scheduling method for delay-sensitive traffic on high speed shared packet data channels
US9288538B2 (en) * 2005-04-07 2016-03-15 Qualcomm Incorporated Methods and apparatus for conveying a delivery schedule to mobile terminals
US7848736B2 (en) * 2006-01-18 2010-12-07 Sms.Ac, Inc. Package billing for micro-transactions
US7606234B2 (en) * 2005-06-14 2009-10-20 Microsoft Corporation Multi-stream acknowledgement scheduling
US8654712B2 (en) * 2005-06-16 2014-02-18 Qualcomm Incorporated OFDMA reverse link scheduling
US8098667B2 (en) * 2005-06-16 2012-01-17 Qualcomm Incorporated Methods and apparatus for efficient providing of scheduling information
US7739708B2 (en) * 2005-07-29 2010-06-15 Yahoo! Inc. System and method for revenue based advertisement placement
JP4613764B2 (ja) * 2005-09-12 2011-01-19 ソニー株式会社 通信システム、通信装置、通知方法、記録媒体、および、プログラム
KR100739734B1 (ko) * 2005-09-16 2007-07-13 삼성전자주식회사 홈 네트워크의 iptv로 디지털 방송 프로그램의 부가정보를 제공하는 방법 및 장치
US8155105B2 (en) * 2005-09-22 2012-04-10 Rsi Video Technologies, Inc. Spread spectrum wireless communication and monitoring arrangement and method
US9573067B2 (en) * 2005-10-14 2017-02-21 Microsoft Technology Licensing, Llc Mass storage in gaming handhelds
JP4482630B2 (ja) 2005-11-21 2010-06-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 通信装置および通信方法
US8457219B2 (en) * 2005-12-30 2013-06-04 Ikanos Communications, Inc. Self-protection against non-stationary disturbances
WO2007082011A2 (en) * 2006-01-11 2007-07-19 Fisher-Rosemount Systems, Inc. Visual mapping of field device message routes in a wireless mesh network
US7710958B2 (en) * 2006-01-20 2010-05-04 Iona Technologies Limited Method for recoverable message exchange independent of network protocols
US8195168B2 (en) * 2006-02-03 2012-06-05 Nokia Corporation Mechanism for controlling a transmission of data messages to user equipment by an external gateway
US7756134B2 (en) 2006-05-02 2010-07-13 Harris Corporation Systems and methods for close queuing to support quality of service
US7894509B2 (en) 2006-05-18 2011-02-22 Harris Corporation Method and system for functional redundancy based quality of service
US8532628B2 (en) * 2006-06-16 2013-09-10 Fmr Llc Registering actionable alerts
US20070290832A1 (en) * 2006-06-16 2007-12-20 Fmr Corp. Invoking actionable alerts
US8516153B2 (en) 2006-06-16 2013-08-20 Harris Corporation Method and system for network-independent QoS
US7856012B2 (en) 2006-06-16 2010-12-21 Harris Corporation System and methods for generic data transparent rules to support quality of service
US20070291656A1 (en) * 2006-06-16 2007-12-20 Harris Corporation Method and system for outbound content-based QoS
US7990860B2 (en) 2006-06-16 2011-08-02 Harris Corporation Method and system for rule-based sequencing for QoS
US8064464B2 (en) * 2006-06-16 2011-11-22 Harris Corporation Method and system for inbound content-based QoS
US7916626B2 (en) 2006-06-19 2011-03-29 Harris Corporation Method and system for fault-tolerant quality of service
US8730981B2 (en) 2006-06-20 2014-05-20 Harris Corporation Method and system for compression based quality of service
US7769028B2 (en) 2006-06-21 2010-08-03 Harris Corporation Systems and methods for adaptive throughput management for event-driven message-based data
US8090393B1 (en) * 2006-06-30 2012-01-03 Symantec Operating Corporation System and method for collecting and analyzing malicious code sent to mobile devices
US8300653B2 (en) * 2006-07-31 2012-10-30 Harris Corporation Systems and methods for assured communications with quality of service
US9479341B2 (en) * 2006-08-22 2016-10-25 Centurylink Intellectual Property Llc System and method for initiating diagnostics on a packet network node
US8576722B2 (en) 2006-08-22 2013-11-05 Centurylink Intellectual Property Llc System and method for modifying connectivity fault management packets
EP2060068B1 (en) * 2006-09-05 2018-01-17 Telefonaktiebolaget LM Ericsson (publ) Optimizing requested downlink data by adjusting frame number by measuring actual transmission delay
US7821998B2 (en) * 2006-09-12 2010-10-26 Samsung Electronics Co., Ltd. Equalizing apparatus, methods and computer program products that generate error compensation values of an equalizer
US8116259B2 (en) * 2006-09-29 2012-02-14 Broadcom Corporation Method and system for diversity processing based on antenna switching
US7689188B2 (en) * 2006-09-29 2010-03-30 Broadcom Corporation Method and system for dynamically tuning and calibrating an antenna using antenna hopping
US8660104B2 (en) * 2006-09-29 2014-02-25 Broadcom Corporation Method and system for communicating information in a multi-antenna system
US20080080455A1 (en) * 2006-09-29 2008-04-03 Ahmadreza Rofougaran Method and system for utilizing polarized antennas in coexistence systems
US8031651B2 (en) 2006-09-29 2011-10-04 Broadcom Corporation Method and system for minimizing power consumption in a communication system
US8340712B2 (en) * 2006-09-29 2012-12-25 Broadcom Corporation Method and system for utilizing diplexer/duplexer for WCDMA operation as a filter for supporting GSM-based operation
US8233935B2 (en) * 2006-09-29 2012-07-31 Broadcom Corporation Method and system for sharing RF filters in systems supporting WCDMA and GSM
US8032096B2 (en) * 2006-09-29 2011-10-04 Broadcom Corporation Method and system for compensating for antenna pulling
US8396044B2 (en) * 2006-09-29 2013-03-12 Broadcom Corporation Method and system for antenna architecture for WCDMA/HSDPA/HSUDPA diversity and enhanced GSM/GPRS/edge performance
US7769394B1 (en) * 2006-10-06 2010-08-03 Sprint Communications Company L.P. System and method for location-based device control
US7885240B2 (en) * 2006-11-15 2011-02-08 Motorola, Inc. Hybrid time division multiple access (TDMA)-carrier sense multiple access (CSMA) medium access control (MAC) for multi-hop ad hoc networks
KR100826522B1 (ko) 2006-11-15 2008-04-30 삼성전자주식회사 이동통신 시스템에서 동적 암호화 장치 및 방법
JP5105834B2 (ja) * 2006-11-17 2012-12-26 キヤノン株式会社 制御装置及びその制御方法、通信装置及びその制御方法、通信システム、及び、プログラム
US7941133B2 (en) 2007-02-14 2011-05-10 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for schedule management based on locations of wireless devices
WO2008141356A1 (en) * 2007-05-21 2008-11-27 Honeywell International Inc. Systems and methods for scheduling the operation of building resources
US8521079B2 (en) * 2007-12-21 2013-08-27 Ibiquity Digital Corporation Radio service registry
US9865099B2 (en) * 2008-02-05 2018-01-09 Madhavi Jayanthi Vehicle installed mobile device and server for GPS services and task assignments
US20190035171A1 (en) * 2008-02-05 2019-01-31 Madhavi Jayanthi Vehicle based device for task assignments and collaboration
US9483883B2 (en) * 2008-02-05 2016-11-01 Madhavi Jayanthi Vehicle installed mobile device and server for GPS services based adhoc task assignments
US8700310B2 (en) * 2008-02-05 2014-04-15 Madhavi Jayanthi Mobile device and server for facilitating GPS based services
US9652749B2 (en) * 2008-02-05 2017-05-16 Madhavi Jayanthi Mobile device and server for task assignments and pickup requests
US10621798B2 (en) * 2008-02-05 2020-04-14 Madhavi Jayanthi Vehicle installed mobile device and server for task assignments and collaboration
US10142837B2 (en) * 2008-02-05 2018-11-27 Madhavi Jayanthi Mobile device and server for task assignments based on proximity and iris image based identification
US8521078B2 (en) * 2008-03-21 2013-08-27 Qualcomm Incorporated Common interface protocol for sending FR-RDS messages in wireless communication systems
CN101547075B (zh) * 2008-03-25 2013-08-21 中兴通讯股份有限公司 系统消息发送及接收方法
US20090259925A1 (en) * 2008-04-10 2009-10-15 Ibiquity Digital Corporation Broadcast Equipment Communication Protocol
WO2009131416A2 (en) * 2008-04-25 2009-10-29 Samsung Electronics Co., Ltd. Apparatuses and methods for providing emergency service in a wireless communication system
CN102144370B (zh) * 2008-09-04 2015-04-15 富士通株式会社 发送装置、接收装置、发送方法及接收方法
US20100136920A1 (en) * 2008-12-01 2010-06-03 Samsung Electronics Co., Ltd. Method and system for optimizing measurement reporting mechanism in a layered protocol wireless network
US8108544B2 (en) 2008-12-10 2012-01-31 At&T Intellectual Property I, Lp System and method for content validation
US8495161B2 (en) * 2008-12-12 2013-07-23 Verizon Patent And Licensing Inc. Duplicate MMS content checking
US8295257B2 (en) * 2009-03-13 2012-10-23 Telcordia Technologies, Inc. Scalable disruptive-resistant communication method
US8565119B2 (en) * 2009-04-14 2013-10-22 Schweitzer Engineering Laboratories Inc Network discovery and data transfer using SNMP in an electric power transmission or distribution system
JP5566637B2 (ja) * 2009-07-09 2014-08-06 株式会社日立製作所 情報提供方法、これを実行する情報提供サーバ、情報提供サーバを含むサービス提供システム、情報提供を受ける無線通信端末、及びその動作プログラム
US9648372B2 (en) 2009-07-23 2017-05-09 Fmr Llc Inserting personalized information into digital content
US9294796B2 (en) * 2009-07-23 2016-03-22 Fmr Llc Inserting personalized information into digital content
US8509101B2 (en) * 2009-10-14 2013-08-13 Schweitzer Engineering Laboratories Inc Systems and methods for a configurable communication device
US8261357B2 (en) * 2009-10-14 2012-09-04 Schweitzer Engineering Laboratories, Inc. Systems and methods for license entitlement key distribution
JP4800427B2 (ja) * 2010-02-09 2011-10-26 株式会社エヌ・ティ・ティ・ドコモ 移動通信方法、無線アクセスネットワーク装置及び移動局
US8806190B1 (en) 2010-04-19 2014-08-12 Amaani Munshi Method of transmission of encrypted documents from an email application
CN102123508B (zh) * 2011-01-18 2013-06-12 大唐移动通信设备有限公司 一种时隙资源分配方法及其装置
KR20120084237A (ko) * 2011-01-19 2012-07-27 삼성전자주식회사 엠엠티(mmt)에서 엠엠티 인캡슐레이터를 전송하는 방법
CN102355314A (zh) * 2011-06-29 2012-02-15 哈尔滨工业大学深圳研究生院 广播信息传输方法、服务器及终端
CN102201924A (zh) * 2011-07-07 2011-09-28 无锡智感星际科技有限公司 一种基于rds单向广播通道分发文件的方法
CN102882898A (zh) * 2011-07-11 2013-01-16 无锡智感星际科技有限公司 一种基于rds的在线群组交互的系统和方法
DE102012208836A1 (de) * 2012-05-25 2013-11-28 Siemens Aktiengesellschaft Verfahren und Vorrichtung zur Erzeugung kryptographisch geschützter redundanter Datenpakete
US9264404B1 (en) * 2012-08-15 2016-02-16 Marvell International Ltd. Encrypting data using time stamps
CN104009937B (zh) * 2013-02-22 2018-03-02 中兴通讯股份有限公司 一种增强型传输选择标准配置信息传输方法及装置
RU2542917C2 (ru) * 2013-07-09 2015-02-27 Общество с ограниченной ответственностью "Завод Навигационного Оборудования" СПОСОБ ОБМЕНА ДАННЫМИ С ИСПОЛЬЗОВАНИЕМ ПРОТОКОЛА stattBIN
WO2015058397A1 (en) 2013-10-25 2015-04-30 Microsoft Technology Licensing, Llc Representing blocks with hash values in video and image coding and decoding
WO2015058395A1 (en) * 2013-10-25 2015-04-30 Microsoft Technology Licensing, Llc Hash-based block matching in video and image coding
WO2015131325A1 (en) * 2014-03-04 2015-09-11 Microsoft Technology Licensing, Llc Hash table construction and availability checking for hash-based block matching
WO2015131326A1 (en) 2014-03-04 2015-09-11 Microsoft Technology Licensing, Llc Encoder-side decisions for block flipping and skip mode in intra block copy prediction
CN105706450B (zh) 2014-06-23 2019-07-16 微软技术许可有限责任公司 根据基于散列的块匹配的结果的编码器决定
KR102358276B1 (ko) 2014-09-30 2022-02-04 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 비디오 코딩을 위한 해시 기반 인코더 결정
CA2937342C (en) * 2015-07-31 2019-09-10 Fmr Llc Inserting personalized information into digital content
US9967135B2 (en) 2016-03-29 2018-05-08 Schweitzer Engineering Laboratories, Inc. Communication link monitoring and failover
US10390039B2 (en) 2016-08-31 2019-08-20 Microsoft Technology Licensing, Llc Motion estimation for screen remoting scenarios
CN107800546B (zh) * 2016-08-31 2021-03-30 华为技术有限公司 一种广播消息的管理方法及装置
US10439923B1 (en) * 2016-09-22 2019-10-08 Amazon Technologies, Inc. Deserialization service
US11095877B2 (en) 2016-11-30 2021-08-17 Microsoft Technology Licensing, Llc Local hash-based motion estimation for screen remoting scenarios
KR102348078B1 (ko) * 2018-01-12 2022-01-10 삼성전자주식회사 사용자 단말 장치, 전자 장치, 이를 포함하는 시스템 및 제어 방법
JP7428016B2 (ja) * 2020-03-05 2024-02-06 京セラドキュメントソリューションズ株式会社 ファイル送信装置
US11202085B1 (en) 2020-06-12 2021-12-14 Microsoft Technology Licensing, Llc Low-cost hash table construction and hash-based block matching for variable-size blocks
CN114363132A (zh) * 2020-10-13 2022-04-15 三星电子株式会社 通信方法

Family Cites Families (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2824218A (en) 1956-05-22 1958-02-18 Theodore R Gilliland Automatic radio control for clocks
US4761796A (en) 1985-01-24 1988-08-02 Itt Defense Communications High frequency spread spectrum communication system terminal
US4665519A (en) 1985-11-04 1987-05-12 Electronic Systems Technology, Inc. Wireless computer modem
US5757782A (en) 1985-11-27 1998-05-26 Seiko Communications Systems, Inc. Paging system with multiple baseband subcarriers
US5266945A (en) 1985-11-27 1993-11-30 Seiko Corp. Paging system with energy efficient station location
US5043871A (en) * 1986-03-26 1991-08-27 Hitachi, Ltd. Method and apparatus for database update/recovery
CA1290020C (en) 1987-02-09 1991-10-01 Steven Messenger Wireless local area network
US4972367A (en) * 1987-10-23 1990-11-20 Allen-Bradley Company, Inc. System for generating unsolicited messages on high-tier communication link in response to changed states at station-level computers
DE9010270U1 (ko) 1990-05-04 1991-09-05 Junghans Uhren Gmbh, 7230 Schramberg, De
US5159331A (en) 1990-06-06 1992-10-27 Seiko Corp. And Seiko Epson Corp. Missing radio page message detection
JPH0666962A (ja) 1992-07-02 1994-03-11 Seiko Instr Inc ページャ付電子時計
CH684143B5 (fr) 1992-10-08 1995-01-31 Ebauchesfabrik Eta Ag Pièce d'horlogerie apte à recevoir des messages radiodiffusés affichés par ses aiguilles.
US5400401A (en) * 1992-10-30 1995-03-21 Scientific Atlanta, Inc. System and method for transmitting a plurality of digital services
US5319707A (en) * 1992-11-02 1994-06-07 Scientific Atlanta System and method for multiplexing a plurality of digital program services for transmission to remote locations
JP2518148B2 (ja) * 1993-03-12 1996-07-24 日本電気株式会社 クロック従属同期方法
US5854985A (en) 1993-12-15 1998-12-29 Spectrum Information Technologies, Inc. Adaptive omni-modal radio apparatus and methods
US5572488A (en) 1993-12-17 1996-11-05 Seiko Communications Holding N.V. Wristwatch paging receiver having analog message display
US5479378A (en) 1993-12-17 1995-12-26 Seiko Telecommunication Systems Inc. Analog wristwatch paging receiver
US5509000A (en) * 1994-06-10 1996-04-16 Motorola, Inc. Method and apparatus for routing information in a communication system
US6211860B1 (en) 1994-07-06 2001-04-03 Hewlett-Packard Company Pressure sensitive electronic device
US5724323A (en) * 1995-01-30 1998-03-03 Sanyo Electric Co., Ltd. Recording and reproducing apparatus for recording media
US5819284A (en) 1995-03-24 1998-10-06 At&T Corp. Personalized real time information display as a portion of a screen saver
DE69603118T2 (de) * 1995-04-11 2000-02-03 Toshiba Kawasaki Kk Aufzeichnungdmedium, -gerät und -methode zur Aufzeichnung von Daten auf einem Aufzeichnungsmedium, und Wiedergabegerät und -methode zur Wiedergabe von Daten von einem Aufzeichnungsmedium
US5528559A (en) 1995-06-23 1996-06-18 Motorola, Inc. Multiple display timepiece
US20020044757A1 (en) * 1995-08-04 2002-04-18 Sony Corporation Information carrier, device for reading and device for providing the information carrier and method of transmitting picture information
US5956486A (en) * 1995-12-20 1999-09-21 Hickman; Paul Lawrence Method and apparatus for monitoring multiple electronic mail systems
TW373402B (en) * 1996-01-10 1999-11-01 Matsushita Electric Ind Co Ltd Television receiver
US6012159A (en) 1996-01-17 2000-01-04 Kencast, Inc. Method and system for error-free data transfer
US5745488A (en) * 1996-04-29 1998-04-28 Motorola, Inc. Method and apparatus for detection of packet types in a communications network
US5857188A (en) * 1996-04-29 1999-01-05 Ncr Corporation Management of client requests in a client-server environment
US5856973A (en) * 1996-09-10 1999-01-05 Thompson; Kenneth M. Data multiplexing in MPEG server to decoder systems
US5928322A (en) 1996-11-20 1999-07-27 Silicon Graphics, Inc. Low-latency real-time dispatching in general purpose multiprocessor systems
US5974034A (en) 1997-01-16 1999-10-26 Gwcom, Inc. System and method for synchronized wide and local area communications utilizing a single frequency
US5877744A (en) 1997-02-07 1999-03-02 Seiko Communication Systems Inc. Single button control for information display
JPH10271196A (ja) 1997-03-25 1998-10-09 Seiko Epson Corp 腕装着型通信装置
US6028933A (en) * 1997-04-17 2000-02-22 Lucent Technologies Inc. Encrypting method and apparatus enabling multiple access for multiple services and multiple transmission modes over a broadband communication network
EP1027665A1 (en) 1997-09-02 2000-08-16 Damon C. Torres Automated content scheduler and displayer
US6169911B1 (en) 1997-09-26 2001-01-02 Sun Microsystems, Inc. Graphical user interface for a portable telephone
US6567416B1 (en) * 1997-10-14 2003-05-20 Lucent Technologies Inc. Method for access control in a multiple access system for communications networks
US6111896A (en) 1998-01-14 2000-08-29 Skystream Corporation Remultiplexer for video program bearing transport streams with program clock reference time stamp adjustment
US7025209B2 (en) * 1998-05-29 2006-04-11 Palmsource, Inc. Method and apparatus for wireless internet access
US6590588B2 (en) * 1998-05-29 2003-07-08 Palm, Inc. Wireless, radio-frequency communications using a handheld computer
US6167382A (en) * 1998-06-01 2000-12-26 F.A.C. Services Group, L.P. Design and production of print advertising and commercial display materials over the Internet
US6286061B1 (en) * 1998-06-02 2001-09-04 Philips Electronics North America Corporation System for applying a tag to a frame based on certain characteristics of the frame and transferring the frame as a function of the tag
JP2000155638A (ja) 1998-06-26 2000-06-06 Seiko Epson Corp 携帯型情報処理装置、制御方法および記録媒体
US6628629B1 (en) * 1998-07-10 2003-09-30 Malibu Networks Reservation based prioritization method for wireless transmission of latency and jitter sensitive IP-flows in a wireless point to multi-point transmission system
US6862622B2 (en) * 1998-07-10 2005-03-01 Van Drebbel Mariner Llc Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture
EP0978966B1 (en) * 1998-08-05 2004-10-20 Italtel s.p.a. A method of address compression for cell-based and packet-based protocols and hardware implementations thereof
EP0991231B1 (en) * 1998-09-10 2009-07-01 International Business Machines Corporation Packet switch adapter for variable length packets
US6084828A (en) 1998-11-05 2000-07-04 Fossil, Inc. Timepiece and chronometer with overlapping, separately driven analog and digital displays
RU2144264C1 (ru) 1998-11-05 2000-01-10 ЯН Давид Евгеньевич Способ беспроводной передачи и приема кодовой информации на расстоянии (варианты) и портативное устройство для беспроводной передачи кодовой информации на расстоянии
US20050257400A1 (en) 1998-11-06 2005-11-24 Microsoft Corporation Navigating a resource browser session
US7287018B2 (en) * 1999-01-29 2007-10-23 Canon Kabushiki Kaisha Browsing electronically-accessible resources
US6694316B1 (en) 1999-03-23 2004-02-17 Microstrategy Inc. System and method for a subject-based channel distribution of automatic, real-time delivery of personalized informational and transactional data
US6466343B1 (en) * 1999-04-28 2002-10-15 3Com Corporation System for assigning wavelengths in a wave division multiplexing based optical switch
EP1054405A1 (en) * 1999-05-18 2000-11-22 Deutsche Thomson-Brandt Gmbh Method for marking digital data
US6329904B1 (en) * 1999-06-11 2001-12-11 Safety Through Cellular, Inc. Apparatus and method for providing weather and other alerts
CN1236367C (zh) 1999-07-16 2006-01-11 时至准钟表股份有限公司 钟表
US6301646B1 (en) * 1999-07-30 2001-10-09 Curl Corporation Pointer verification system and method
KR100308152B1 (ko) * 1999-07-31 2001-09-29 서평원 단문 메시지 서비스를 위한 셀 브로드캐스팅 방법
US7099561B1 (en) * 1999-08-20 2006-08-29 Thomson Licensing User interface and processing system for digital video, audio and ancillary data
US7133598B1 (en) * 1999-08-20 2006-11-07 Thomson Licensing Method for converting packetized video data and corresponding navigation data into a second data format
US6212414B1 (en) 1999-08-24 2001-04-03 Motorola, Inc. Wrist-carried radiotelephone
US6775262B1 (en) * 2000-03-10 2004-08-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for mapping an IP address to an MSISDN number within a wireless application processing network
US6975629B2 (en) * 2000-03-22 2005-12-13 Texas Instruments Incorporated Processing packets based on deadline intervals
US6762728B2 (en) 2000-03-29 2004-07-13 Seiko Epson Corporation Antenna device for high-frequency radio apparatus and wrist watch-type radio apparatus
JP4214665B2 (ja) * 2000-07-25 2009-01-28 ソニー株式会社 再生装置
US6594498B1 (en) 2000-08-14 2003-07-15 Vesuvius, Inc. Communique system for cellular communication networks
US6785714B1 (en) * 2000-09-28 2004-08-31 Microsoft Corporation System and method for employing slot level locking of a cache
US7206774B1 (en) * 2000-09-28 2007-04-17 Microsoft Corporation System and method for implementing a conditional payload server
US6876296B2 (en) * 2001-02-01 2005-04-05 Trw Inc. Smart license tag system
US7043637B2 (en) * 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
US7401126B2 (en) * 2001-03-23 2008-07-15 Neteffect, Inc. Transaction switch and network interface adapter incorporating same
US7062490B2 (en) * 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
US7158185B2 (en) * 2001-05-01 2007-01-02 Scientific-Atlanta, Inc. Method and apparatus for tagging media presentations with subscriber identification information
US7895616B2 (en) * 2001-06-06 2011-02-22 Sony Corporation Reconstitution of program streams split across multiple packet identifiers
US6580664B2 (en) 2001-08-21 2003-06-17 Derek A. Magnusson Timepiece with pager and global positioning system
TWI258647B (en) 2001-12-27 2006-07-21 Asulab Sa Control method for executing functions in a diary watch
US8763061B2 (en) 2002-02-13 2014-06-24 Motorola Mobility Llc Correlation of tuned channel information with internet web addresses
US7130313B2 (en) * 2002-02-14 2006-10-31 Nokia Corporation Time-slice signaling for broadband digital broadcasting
JP3808394B2 (ja) * 2002-04-02 2006-08-09 松下電器産業株式会社 ストリームデータ処理装置、ストリームデータ処理方法、プログラム、及び、媒体
US20050066037A1 (en) 2002-04-10 2005-03-24 Yu Song Browser session mobility system for multi-platform applications
US7102973B1 (en) * 2002-04-12 2006-09-05 Dc Ip, Llc Media authentication using altered sector sizes
JP3872716B2 (ja) * 2002-04-30 2007-01-24 富士通株式会社 パケット出力制御装置
US7548984B2 (en) * 2002-05-27 2009-06-16 Panasonic Corporation Stream distribution system, stream server device, cache server device, stream record/playback device, related methods and computer programs
EP1388778B1 (en) 2002-08-07 2008-03-12 Seiko Epson Corporation Portable information device
US7069438B2 (en) * 2002-08-19 2006-06-27 Sowl Associates, Inc. Establishing authenticated network connections
US7139274B2 (en) * 2002-08-23 2006-11-21 Qualcomm, Incorporated Method and system for a data transmission in a communication system
US7415014B2 (en) * 2002-08-29 2008-08-19 Broadcom Corporation Method and system for co-relating transport packets on different channels using a packet prioritization scheme
US7412433B2 (en) * 2002-11-19 2008-08-12 International Business Machines Corporation Hierarchical storage management using dynamic tables of contents and sets of tables of contents
US7283483B2 (en) * 2002-12-18 2007-10-16 Cisco Technology, Inc. Transmitting multiple packets in a frame
US7792121B2 (en) * 2003-01-03 2010-09-07 Microsoft Corporation Frame protocol and scheduling system
US7181701B2 (en) * 2003-01-03 2007-02-20 Microsoft Corporation Glanceable information system and method
US7062048B2 (en) * 2003-01-27 2006-06-13 Wegener Communications, Inc. Apparatus and method for single encryption with multiple authorization of distributed content data
CA2518635C (en) * 2003-03-11 2015-06-16 Koninklijke Philips Electronics N.V. Method for scheduling service periods in a wireless local area network (wlan)
US7486673B2 (en) * 2005-08-29 2009-02-03 Connect Technologies Corporation Method and system for reassembling packets prior to searching
US8526612B2 (en) * 2006-01-06 2013-09-03 Google Inc. Selective and persistent application level encryption for video provided to a client
EP2102604A1 (en) 2007-01-10 2009-09-23 TomTom International B.V. A navigation device and a method of operating the navigation device with emergency service access
US9037613B2 (en) * 2007-05-23 2015-05-19 Oracle International Corporation Self-learning data lenses for conversion of information from a source form to a target form
JP4789864B2 (ja) * 2007-05-31 2011-10-12 株式会社日立製作所 ルータ装置
WO2008154042A1 (en) 2007-06-13 2008-12-18 R-Web, Inc. System and method for the generation, storage and navigation of contextually anchored links
US20090089676A1 (en) 2007-09-30 2009-04-02 Palm, Inc. Tabbed Multimedia Navigation
US20090100380A1 (en) 2007-10-12 2009-04-16 Microsoft Corporation Navigating through content
US8352982B2 (en) * 2008-01-18 2013-01-08 Microsoft Corporation Service substitution techniques
JP4342596B1 (ja) * 2008-05-20 2009-10-14 株式会社東芝 電子装置およびコンテンツデータ提供方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008140261A2 (en) * 2007-05-14 2008-11-20 Samsung Electronics Co., Ltd. Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service
WO2008140261A3 (en) * 2007-05-14 2008-12-31 Samsung Electronics Co Ltd Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service
US8275002B2 (en) 2007-05-14 2012-09-25 Samsung Electronics Co., Ltd. Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service
US8717961B2 (en) 2007-05-14 2014-05-06 Samsung Electronics Co., Ltd. Method and apparatus for transmitting broadcast, method and apparatus for receiving broadcast
CN101558589B (zh) * 2007-05-14 2015-11-25 三星电子株式会社 用于发送广播的方法和设备、用于接收广播的方法和设备
US8750331B2 (en) 2007-06-18 2014-06-10 Samsung Electronics Co., Ltd. Method and apparatus for transporting mobile broadcasting service, and method and apparatus for receiving mobile broadcasting service
US8995353B2 (en) 2007-10-09 2015-03-31 Samsung Electronics Co., Ltd. Method and apparatus for transmitting broadcast data and method and apparatus for receiving broadcast data
KR101500339B1 (ko) * 2008-12-23 2015-03-09 삼성전자주식회사 디지털방송 시스템의 패킷 통신 장치 및 방법
KR20140053857A (ko) * 2011-03-08 2014-05-08 스카이프 무선 통신 장치에서의 전력 절감
US10044838B2 (en) 2015-04-14 2018-08-07 Lsis Co., Ltd. Method of automatically setting protocol in programmable logic controller system
US10345393B2 (en) 2015-07-30 2019-07-09 Lsis Co., Ltd. Power loss measuring system for measuring power loss at harmonic filter included in high voltage direct current (HVDC) transmission system, and power loss measuring method thereof

Also Published As

Publication number Publication date
BR0305985A (pt) 2004-08-17
CA2454499A1 (en) 2004-07-03
CN1522018A (zh) 2004-08-18
RU2323429C2 (ru) 2008-04-27
AU2003271332A1 (en) 2004-07-22
US7792121B2 (en) 2010-09-07
MXPA03012014A (es) 2005-07-01
EP1463234A2 (en) 2004-09-29
US20040131014A1 (en) 2004-07-08
RU2003137230A (ru) 2005-06-10
JP2004215253A (ja) 2004-07-29

Similar Documents

Publication Publication Date Title
US7792121B2 (en) Frame protocol and scheduling system
US5920701A (en) Scheduling data transmission
Xuan et al. Broadcast on demand: Efficient and timely dissemination of data in mobile environments
US7403754B2 (en) Tower discovery and failover
US20050182932A1 (en) Cheap signatures for synchronous broadcast communication
US7349691B2 (en) System and apparatus for performing broadcast and localcast communications
US8051488B2 (en) Trial usage for encrypted subscription-based data
AU2002354787A1 (en) System and apparatus for performing broadcast and localcast communications
CN101611640A (zh) 使用紧急广播-多播服务进行紧急广播的方法和装置
KR20120113254A (ko) 브로드캐스트 네트워크에서 디바이스들에 업데이트 정보를 전력-효율적으로 전달하는 시스템 및 장치
US10425890B2 (en) Low power mode in a satellite-based broadcast data service
US20080086756A1 (en) Media selection triggered through broadcast data
CN103875290A (zh) 电信网络中的功率节约
JP2000187629A (ja) 予約配信方法、配信側装置、受信端末、および予約配信システム
KR20190062037A (ko) 기계식 무브먼트 기반의 하이브리드 스마트 시계
JP2002518907A (ja) 無線通信システムを介して送信されるテキスト情報サービスのチャネル化及び符号化
WO1999027696A1 (en) Protocol for voice paging system
Bruck et al. Data transmission system and method
KR20090102371A (ko) 대기 화면 제공 시스템과 방법 및 이를 위한 대기 화면서버와 이동 통신 단말기

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application