KR102599560B1 - 적응형 스트리밍에서의 중간자 공격 검출 - Google Patents

적응형 스트리밍에서의 중간자 공격 검출 Download PDF

Info

Publication number
KR102599560B1
KR102599560B1 KR1020177032475A KR20177032475A KR102599560B1 KR 102599560 B1 KR102599560 B1 KR 102599560B1 KR 1020177032475 A KR1020177032475 A KR 1020177032475A KR 20177032475 A KR20177032475 A KR 20177032475A KR 102599560 B1 KR102599560 B1 KR 102599560B1
Authority
KR
South Korea
Prior art keywords
wtru
hash
server
segment
http
Prior art date
Application number
KR1020177032475A
Other languages
English (en)
Other versions
KR20180009741A (ko
Inventor
알렉산더 길라디
Original Assignee
브이아이디 스케일, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 브이아이디 스케일, 인크. filed Critical 브이아이디 스케일, 인크.
Publication of KR20180009741A publication Critical patent/KR20180009741A/ko
Application granted granted Critical
Publication of KR102599560B1 publication Critical patent/KR102599560B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • H04W12/122Counter-measures against attacks; Protection against rogue devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/69Identity-dependent
    • H04W12/73Access point logical identity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

무선 송수신 유닛(WTRU) 또는 유선 송수신 유닛에 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 시스템 및 방법은, 콘텐츠 진정성을 포함하는 미디어 프리젠테이션 디스크립션을 획득하는 것, 해시 기반 메시지 인증 코드에 대한 키를 요청하는 것, 해시 기반 메시지 인증 코드에 대한 키를 수신하는 것, 미디어 프리젠테이션 디스크립션의 세그먼트에 대해 결정된 해시를 결정하는 것, 서버에게 세그먼트에 대한 참조 해시를 요청하는 것, 서버로부터 세그먼트에 대한 참조 해시를 수신하는 것, 및 요청된 해시가 결정된 해시와 매치하는지 여부를 결정하기 위해 참조 해시를 결정된 해시에 비교하는 것을 포함할 수도 있다.

Description

적응형 스트리밍에서의 중간자 공격 검출
본 출원은, 특히 35 U.S.C. §119하에서, 2105년 4월 24일자로 출원되고 참조에 의해 본원에 통합되는 미국 특허 가출원 제62/152,620호의 출원일의 이점 및 그 우선권을 주장한다.
개방형 또는 공격에 취약한 네트워크를 통해 미디어가 전송되는 경우, 악의적으로 정교하게 만들어진 미디어 파일을 삽입하기 위해 사용될 수 있는 완전한 콘텐츠 또는 콘텐츠 일부가 보호될 수 있다. ISO/IEC 23009-4는 세그먼트 무결성과 진정성(authenticity)의 대역 외 검증을 허용할 수도 있고, 그 결과, 특히, 클라이언트는 수신된 세그먼트와 세그먼트 해시 또는 메시지 인증 코드 사이의 불일치를 검출할 수도 있다. 서버 측은 공격을 인식할 수 없을 수도 있고 및/또는 공격 진원지를 위치 결정할(localize) 수 없을 수도 있다.
비디오 콘텐츠를 무선 송수신 유닛(wireless transmit/receive unit; WTRU) 또는 유선 송수신 유닛으로 적응적으로 스트리밍하기 위한 시스템 및 방법은, WTRU에서, 미디어 프리젠테이션 디스크립션(media presentation description; MPD) 파일을 수신하는 것; WTRU로부터, MPD 파일에 기초하여 미디어 세그먼트에 대한 하이퍼텍스트 전송 프로토콜(hypertext transfer protocol; HTTP) GET 요청을 전송하는 것; WTRU에서, 콘텐츠 서버로부터 미디어 세그먼트를 수신하는 것; WTRU에서, 미디어 세그먼트에 대한 보안 또는 인증 해시를 결정하는 것; 및 WTRU로부터, 보안 또는 인증 해시를 포함하는 HTTP 요청 메시지를 전송하는 것을 포함할 수도 있다. 시스템 및 방법은, WTRU에서, 미디어 프리젠테이션 디스크립션(MPD) 파일을 수신하기 위한; WTRU로부터, MPD 파일에 기초하여 미디어 세그먼트에 대한 하이퍼텍스트 전송 프로토콜(HTTP) GET 요청을 전송하기 위한; WTRU에서, 콘텐츠 서버로부터 미디어 세그먼트를 수신하기 위한; WTRU에서, 미디어 세그먼트에 대한 보안 또는 인증 해시를 결정하기 위한; 그리고 WTRU로부터, 보안 또는 인증 해시를 포함하는 HTTP 요청 메시지를 전송하기 위한 실행 가능 명령어로 프로그래밍되는 WTRU를 포함할 수도 있다.
비디오 콘텐츠를 무선 송수신 유닛(WTRU) 또는 유선 송수신 유닛으로 적응적으로 스트리밍하기 위한 시스템 및 방법은, 미디어 세그먼트를 요청하는 것; 미디어 세그먼트를 수신하는 것; 키를 사용하여 미디어 세그먼트에 대한 결정된 해시를 결정하는 것; 미디어 세그먼트에 대한 참조 해시(reference hash)를 요청하는 것; 및 미디어 세그먼트에 대한 참조 해시를 수신하는 것을 포함할 수도 있다. 상기 시스템 및 방법은, 참조 해시를 요청할 때 결정된 해시를 포함/보고하는 WTRU를 더 포함할 수도 있다.
비디오 콘텐츠를 무선 송수신 유닛(WTRU) 또는 유선 송수신 유닛으로 적응적으로 스트리밍하기 위한 시스템 및 방법은, 미디어 세그먼트를 요청하는 것; 미디어 세그먼트를 수신하는 것; 키를 사용하여 세그먼트에 대한 결정된 해시를 결정하는 것; 세그먼트에 대한 참조 해시를 요청하는 것; 및 서버가 충분한 수의 결정된 해시를 갖지 않는 것에 기초하는 오류 메시지 또는 다수결 솔루션(majority solution)을 제공하기 위한 충분한 수의 결정된 해시를 서버가 수집한 경우, 다수결 솔루션을 갖는 메시지 중 하나를 수신하는 것을 포함할 수도 있다.
비디오 콘텐츠를 무선 송신 수신 유닛(WTRU) 또는 유선 송수신 유닛으로 적응적으로 스트리밍하기 위한 방법은, 서버에서, 결정된 해시를 포함하는 미디어 세그먼트에 대한 참조 해시에 대한 요청을 수신하는 것; 결정된 해시를 저장하는 것; 결정된 해시와 참조 해시 사이에 불일치가 있는지의 여부를 결정하기 위해 결정된 해시를 참조 해시와 비교하는 것을 포함한다.
도 1은 DASH 시스템 모델이다.
도 2는, 본원에서 설명되는 하나 이상의 실시형태에 따른 예시적인 시스템 및 방법이다.
도 3은, 본원에서 설명되는 하나 이상의 실시형태에 따른 예시적인 시스템 및 방법이다.
도 4는, 본원에서 설명되는 하나 이상의 실시형태에 따른 예시적인 시스템 및 방법이다.
도 5는, 본원에서 설명되는 하나 이상의 실시형태에 따른 예시적인 시스템 및 방법이다.
도 6a는 하나 이상의 개시된 실시형태가 구현될 수도 있는 예시적인 통신 시스템의 시스템 도면이다.
도 6b는 도 6a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 무선 송수신 유닛(WTRU)의 시스템 도면이다.
도 6c는 도 6a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 코어 네트워크 및 예시적인 무선 액세스 네트워크의 시스템 도면이다.
도 6d는, 도 6a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 코어 네트워크 및 다른 예시적인 무선 액세스 네트워크의 시스템 도면이다.
도 6e는, 도 6a에서 예시되는 통신 시스템 내에서 사용될 수도 있는 예시적인 코어 네트워크 및 다른 예시적인 무선 액세스 네트워크의 시스템 도면이다.
이제, 예시적인 실시형태의 상세한 설명이 다양한 도면을 참조로 설명될 것이다. 비록 이 설명이 가능한 구현예의 상세한 예를 제공하지만, 상세는 예시적인 것으로 의도된 것이며 본 출원의 범위를 어떤 식으로든 제한하도록 의도된 것이 아니다는 것을 유의해야 한다.
ISO/IEC 23009-4를 향상시키는 방법 또는 시스템은 세그먼트 상태에 대한 보고를 제공하는데, 이 경우, 공급자 또는 오퍼레이터는 공격을 감지하고 공격의 위치를 결정할 수도 있다. 본원에서 설명되는 시스템은, 써드파티에 의한 검증 서버의 설정(예를 들면, 인터페이스가 ISO/IEC 23009-4에서 정의될 수도 있음) 및 서명의 "크라우드소싱(crowdsourcing)"을 허용할 수도 있다. 이 시스템은 HTTP를 통한 동영상 전문가 그룹 동적 적응 스트리밍(Moving Pictures Expert Group Dynamic Adaptive Streaming over HTTP; "MPEG DASH"), SCTE ATS, 3GPP SA4, 및 ETSI(HbbTV)에 적용될 수도 있다.
몇몇 시장 동향 및 기술 개발은, 인터넷을 전달 매체로서 활용할 수도 있는 "오버 더 톱"(over-the-top; OTT) 스트리밍의 출현을 초래하였다. 하드웨어 기능이 발전하였으며 모바일 디바이스로부터 인터넷 셋톱 박스(STB)로 그리고 네트워크 TV에 이르기까지 다양한 범위의 비디오 대응 디바이스(video-capable device)가 있다. 네트워크 기능이 진화하였으며 인터넷을 통한 고품질 비디오 전송이 가능하다. 다중 시스템 오퍼레이터(multi-system operator; MSO)에 의해 완전히 제어될 수도 있는 전통적인 "폐쇄형" 네트워크와 달리, 인터넷(Internet)은 대역폭 및 레이턴시가 변경될 수도 있는 "최선형(best effort)" 환경이다. 모바일 네트워크에서 네트워크 상태가 불안정할 수도 있다. 네트워크 변경에 대한 동적 적응은 변동성을 담당할 수도 있으며 향상된 유저 경험을 제공할 수도 있다.
적응형 스트리밍은 하이퍼텍스트 전송 프로토콜("HTTP") 스트리밍과 동의어로 사용될 수도 있다. 콘텐츠 분배 네트워크(content distribution network; CDN)와 같은 현존하는 광범위한 HTTP 인프라뿐만 아니라, 다수의 플랫폼 및 디바이스에 대한 HTTP 지원의 편재성(ubiquity)은, 인터넷 비디오 스트리밍에 대한 HTTP의 사용을 매력적이고 및/또는 확장 가능하게 만들 수도 있다. HTTP 스트리밍은, 방화벽 침투 때문에, 전통적인 유저 데이터그램 프로토콜(User Datagram Protocol; "UDP") 기반의 접근법과는 달리, 비디오 전송 프로토콜에 대해 매력적일 수도 있다. 방화벽은 UDP 트래픽을 허용하지 않을 수도 있지만, HTTP를 통한 비디오는 방화벽 뒤에서 이용 가능할 수도 있다. HTTP 스트리밍은 속도 적응형 스트리밍용으로 선택되는 기술일 수도 있다.
HTTP 적응형 스트리밍에서, 자산(asset)은, 가상적으로 및/또는 물리적으로, 분할될 수도 있고, CDN에게 공개될 수도 있다. 지능은 클라이언트에 있을 수도 있다. 클라이언트는 공개된 대안적인 인코딩(표현)의 지식 및 주어진 표현으로부터 세그먼트를 다운로드하기 위한 유니폼 리소스 로케이터(Uniform Resource Locator; URL)를 구성하는 방식을 획득할 수도 있다. 적응형 비트레이트(Adaptive Bit-Rate; ABR) 클라이언트는 네트워크 상태를 관찰할 수도 있고, 비트레이트, 해상도, 등등의 어떤 조합이 어떤 시점에서 클라이언트 디바이스에 대한 최상의 품질을 제공할 것인지를 결정할 수도 있다. 클라이언트는 사용할 URL 또는 최적의 URL을 결정할 수도 있다. 클라이언트는 세그먼트를 다운로드하기 위해 HTTP GET 요청을 발행할 수도 있다.
DASH는 HTTP/TCP/IP 스택 위에 구축될 수도 있다. DASH는, 미디어 프리젠테이션 디스크립션(MPD)인 매니페스트 형식을 정의할 수도 있고 MPEG-2 전송 스트림 및/또는 ISO 기본 미디어 파일 포맷에 대한 포맷을 분할할 수도 있다. DASH는 또한, 네트워크, 클라이언트 동작, 및/또는 미디어 프리젠테이션 레벨에서 품질 메트릭의 세트를 정의할 수도 있다. DASH는 경험 품질(Quality of Experience) 및/또는 서비스 품질(Quality of Service)의 상호 운용 가능한(interoperable) 방식을 가능하게 할 수도 있다.
표현은 DASH 개념일 수도 있다. 표현은 완전한 자산 또는 자산의 컴포넌트의 서브세트의 단일의 인코딩 버전일 수도 있다. 표현은, 예를 들면, 다중화되지 않은 2.5Mbps 720p AVC 비디오를 포함하는 ISO-BMFF일 수도 있고, 96Kbps MPEG-4 AAC 오디오에 대해 별도의 ISO-BMFF 표현을 다른 언어로 가질 수도 있다. DASH264에는 권장 구조가 있다. 비디오, 오디오 및/또는 자막을 포함하는 단일의 전송 스트림은 단일의 다중화된 표현일 수도 있다. 결합된 구조가 가능하다: 비디오 및 영어 오디오가 단일의 다중화된 표현일 수도 있고, 한편 스페인어 및 중국어 오디오 트랙이 별개의 다중화되지 않은 표현일 수도 있다.
세그먼트는 미디어 데이터의 개별적으로 주소 지정 가능한 최소 단위일 수도 있으며 MPD를 통해 알려지는 URL을 사용하여 다운로드될 수 있는 엔티티일 수도 있다. 미디어 세그먼트의 예는, 실시간 방송의 4 초 부분인데, 이것은 재생 시간 0:42:38에서 시작하여 0:42:42에서 끝나고 3 분 시간 윈도우 내에서 이용 가능하다. 또 다른 예는, 영화가 허가되는 전체 기간 동안 이용 가능한 완전한 주문형 영화(complete on-demand movie)이다.
MPD는 XML 다큐먼트일 수도 있고 이용 가능한 미디어를 광고할 수도 있다. MPD는, 표현을 선택하고, 적응 결정을 행하고 및/또는 네트워크에서 세그먼트를 검색하기 위해 클라이언트에 의해 필요로 되는 정보를 제공할 수도 있다. MPD는 세그먼트에 독립적일 수도 있고 표현이 성공적으로 재생될 수 있는지의 여부를 결정하기 위해 필요로 되는 특성 및 표현의 기능적 특성(예를 들면, 세그먼트가 랜덤 액세스 포인트에서 시작하는지의 여부)만을 시그널링할 수도 있다. MPD는 프리젠테이션을 설명하기 위해 계층적 데이터 모델을 사용할 수도 있다.
표현은 계층적 데이터 모델의 가장 낮은 개념 레벨일 수도 있다. 이 레벨에서, MPD는, 성공적인 프리젠테이션을 위해 필요로 될 수도 있는 대역폭 및 코덱뿐만 아니라, 세그먼트에 액세스하기 위한 URL을 구성하는 방식을 포함하는 그러나 이들로 제한되지는 않는 정보를 시그널링할 수도 있다. 트릭 모드, 랜덤 액세스 정보, 확장 가능한 멀티 뷰 코덱에 대한 레이어 및/또는 뷰 정보, 및/또는 일반적 스킴(generic scheme) - 이들 중 임의의 것은 주어진 표현을 재생하고자 하는 클라이언트에 의해 지원될 수도 있음 - 을 포함하는 그러나 이들로 제한되지는 않는 추가적인 정보가 이 레벨에서 제공될 수도 있다.
DASH는 풍부하고 및/또는 유연한 URL 구성 기능성을 제공할 수도 있다. 이것은 URL의 동적 구성을 허용할 수도 있는데, URL의 동적 구성은 계층적 데이터 모델의 상이한 레벨에 나타나는 URL의 일부(예를 들면, 기본 URL)를 결합하는 것에 의해 달성될 수도 있다. 다수의 기본 URL이 사용될 수도 있다. 세그먼트는, 세그먼트가 하나보다 많은 위치로부터 요청되는 다중 경로 기능성을 가질 수도 있다. 이것은, 향상된 성능 및/또는 신뢰성을 야기할 수도 있다. 단일의 모놀리식의 세그먼트당 URL(monolithic per-segment URL)이 DASH에서 또한 가능하다.
짧은 세그먼트가 사용되는 경우, URL 및/또는 바이트 범위의 명시적인 리스트가 표현 당 수천 개의 엘리먼트에 도달할 수도 있다. 이것은, 예를 들면, 더 많은 양의 표현이 있는 경우에, 비효율적이고 및/또는 낭비적일 수도 있다. DASH는, 템플릿을 사용한 URL의 즉석에서의(on-the-fly) 구성을 위한 printf 스타일 구문 및/또는 미리 정의된 변수(예를 들면, 세그먼트 번호, 세그먼트 시간, 등등)의 사용을 허용할 수도 있다. 모든 세그먼트(예를 들면, seg_00001.ts, seg_00002.ts, ..., seg_03600.ts)를 나열하는 대신, 임의의 수의 세그먼트를 표현하기 위해, MPD가 페치될 때 이들이 검색될 수 없더라도, 한 줄(예를 들면, seg_$Index%05$.ts)을 작성하는 것이 충분할 수도 있다. 이하, 타이밍 및 가용성이 더 자세히 논의된다. 템플릿 효율성으로 인해, 다중 세그먼트 표현은 템플릿을 사용할 수도 있다.
동일한 자산(및/또는 다중화되지 않은 경우, 동일한 컴포넌트)의 상이한 표현은, 적응 세트로 그룹화될 수도 있다. 적응 세트 내의 모든 표현은 동일한 콘텐츠를 렌더링할 수도 있고, 클라이언트는, 스위칭하기를 원하는 경우, 이들 사이에서 스위칭할 수도 있다.
적응 세트의 예는, 상이한 비트레이트 및 해상도로 인코딩된 비디오를 갖는 10 개의 표현의 콜렉션일 것이다. 뷰어에게 동일한 또는 유사한 콘텐츠를 제시하는 동안, 세그먼트(또는 심지어 서브세그먼트) 단위(granularity)에서 이들의 각각 사이에서 스위칭하는 것이 가능할 수도 있다. 몇몇 세그먼트 레벨 제한 하에서, 원활한 표현 스위칭이 가능할 수도 있다. 이들 제한은 대부분의 실제 애플리케이션에 대해 사용될 수도 있다(예를 들면, 그들은 몇몇 DASH 프로파일뿐만 아니라, 다수의 SDO에 의해 채택되었을 수도 있는 몇몇 DASH 서브세트에 의해 사용될 수도 있다.). 이들 세그먼트 제한은, 적응 세트 내의 표현에 적용될 수도 있다. 비트스트림 스위칭이 본원에서 논의된다.
기간은 프리젠테이션의 시간 제한 서브세트(time-limited subset)일 수도 있다. 적응 세트는 그 기간 내에서 유효할 수도 있다. 상이한 기간에서의 적응 세트는 (코덱, 비트레이트, 등등의 관점에서) 유사한 표현을 포함할 수도 있거나 또는 포함하지 않을 수도 있다. MPD는 자산의 전체 지속 기간 동안 단일의 기간을 포함할 수도 있다. 기간은 광고 마크업에 대해 사용될 수도 있다. 별개의 기간은 자산 자체의 일부에 및/또는 각각의 광고에 전용될 수도 있다.
MPD 자체는, 전역적(global) 프리젠테이션 레벨 특성(예를 들면, 타이밍)으로부터 시작할 수도 있고 기간 레벨 특성, 및/또는 그 기간 동안 이용 가능한 적응 세트를 가지고 계속될 수도 있는 계층을 나타낼 수도 있는 XML 다큐먼트이다. 표현은 이 계층의 가장 낮은 레벨일 수도 있다.
DASH는 XLink의 단순화된 버전을 사용할 수도 있고 이것은 원격 위치로부터 MPD의 일부(예를 들면, 기간)를 실시간으로 로딩하는 것을 허용할 수도 있다. 이것에 대한 간단한 사용 사례는, 광고 서버가 정확한 광고를 실시간으로 결정할 수도 있는 까닭에, 광고 시간(ad break)의 정확한 타이밍이 미리 알려지는 경우의 광고 삽입일 수도 있다.
동적 MPD는 변경될 수 있으며 클라이언트에 의해 주기적으로 재로딩될 수도 있지만, 정적 MPD는 전체 프리젠테이션에 대해 유효할 수도 있다. 정적 MPD는 주문형 비디오(Video on Demand; "VoD") 애플리케이션에 대해 양호한 준비(fit)일 수도 있지만, 그러나 필수적인 것은 아니며, 반면 동적 MPD는 라이브 및 개인용 비디오 레코더(personal video recorder; PVR) 애플리케이션에 대해 사용될 수도 있지만, 그러나 필수적인 것은 아니다.
미디어 세그먼트는 표현의 시간 제한 부분(time-bounded part)일 수도 있으며, MPD에 나타나는 세그먼트 지속 기간에 근사할 수도 있다. 세그먼트 지속 기간은 모든 세그먼트에 대해 동일할 필요는 없을 수도 있지만, 실제로는 세그먼트 지속 기간이 거의 일정할 수도 있다(예를 들면, DASH-AVC/264는 25%의 허용 한계 마진(tolerance margin) 이내의 지속 기간을 갖는 세그먼트를 사용할 수도 있다).
라이브 브로드캐스트 시나리오에서, MPD는 클라이언트에 의해 MPD가 판독될 때 이용 불가능할 수도 있는 미디어 세그먼트에 관한 정보를 포함할 수도 있다 - 세그먼트는 잘 정의된 가용성 시간 윈도우(availability time window) 내에서만 이용 가능할 수도 있는데, 가용성 시간 윈도우는 벽 시계 시간(wall-clock time) 및/또는 세그먼트 지속 기간으로부터 계산될 수도 있다.
다른 세그먼트 타입은 인덱스 세그먼트이다. 인덱스 세그먼트는 부수적인 파일(side file)로서, 또는 미디어 세그먼트 내에서 나타날 수도 있으며, 타이밍 및/또는 랜덤 액세스 정보를 포함할 수도 있다. 인덱스는 랜덤 액세스 및/또는 트릭 모드를 효율적으로 구현할 수도 있다. 보다 효율적인 비트스트림 스위칭을 위해 인덱스가 사용될 수도 있다. 인덱스는 VoD 및/또는 PVR 타입 애플리케이션에 대해 사용될 수도 있다.
세그먼트 레벨 및/또는 표현 레벨 속성은 비트 스트림 스위칭을 구현하는 데 사용될 수도 있다. DASH는, 포맷 독립적인 방식으로 MPD에서 표현될 수도 있는 이들 특성에 대한 명시적인 기능적 요건을 제공할 수도 있다. 각각의 세그먼트 포맷 사양은, 이들 요건에 대응할 수도 있는 포맷 레벨 제한을 포함할 수도 있다.
SR(i)로서의 표현 R의 미디어 세그먼트 i는 D(SR(i))로 표시된 지속 기간을 가질 수도 있다. 가장 빠른 프리젠테이션 시간은 EPT(SR(i)) 일 수도 있다. 가장 빠른 프리젠테이션 시간(Earliest Presentation Time; "EPT")은, 세그먼트가 랜덤 액세스에서 성공적으로 재생될 수 있는 시간보다는, 세그먼트의 가장 빠른 프리젠테이션 시간에 대응할 수도 있다.
적응 세트 내의 모든 표현에 대한 세그먼트의 시간 정렬은 스위칭에 대해 그리고 효율적으로 그렇게 하는 데 유용할 수도 있다. 시간 정렬은, 표현의 임의의 쌍 Ra 및 Rb, 세그먼트 i에 대해,
Figure 112017126641664-pct00001
를 사용할 수도 있다. 시간 정렬 및 세그먼트가 소정의 타입의 랜덤 액세스 포인트로 시작하는 요건은, 중복된 다운로드 및/또는 이중 디코딩 없이 세그먼트 경계에서 스위칭하는 능력을 보장할 수도 있다.
인덱싱이 사용되는 경우, 서브세그먼트 레벨에서 비트스트림 스위칭이 사용될 수도 있다. 서브세그먼트에 대해 유사한 요건이 사용될 수도 있다.
시스템은 시간 정렬 및/또는 랜덤 액세스 포인트 배치 제한을 사용할 수도 있다. 비디오 인코딩의 관점에서, 이들 제한은, 세그먼트 경계 및/또는 닫힌(closed) 픽쳐 그룹(Group of Picture; "GOP")에서 매치하는 순시 디코더 리프레시(instantaneous decoder refresh; IDR) 프레임을 갖는 인코딩으로 변환될 수도 있다.
DASH 클라이언트(100)는, HTTP 클라이언트일 수도 있는 액세스 클라이언트(102), 자신에게 제공되는 미디어를 디코딩할 수도 있고 및 제시할 수도 있는 미디어 엔진(104), 및 액세스 클라이언트가 이벤트를 전달할 수도 있는 애플리케이션(106)을 개념적으로 포함할 수도 있다. 인터페이스는 세그먼트 및 MPD의 유선 상의(on-the-wire) 포맷을 사용할 수도 있다. 도 1은 DASH 시스템 모델이다.
애플(Apple)의 HTTP 라이브 스트리밍(HTTP live streaming; HLS)에서, 매니페스트에서 언급되는 모든 세그먼트는 유효할 수도 있고, 클라이언트는 신규의 매니페스트를 폴링할 수도 있다. DASH MPD는 폴링 거동을 감소시킬 수도 있다. DASH MPD는 MPD 업데이트 빈도를 정의할 수도 있고 및/또는 세그먼트 가용성의 계산을 허용할 수도 있다.
정적 MPD가 유효할 수도 있다. 동적 MPD는 명시된 리프레시 기간 동안 클라이언트가 가져왔던 시점부터 유효할 수도 있다. MPD는 또한 버전 관리의 개념을 가질 수도 있으며 자신의 공개 시간을 노출시킬 수도 있다.
MPD는 기간 TA(0)의 가장 이른 세그먼트의 가용성 시간을 제공할 수도 있다. 미디어 세그먼트 n은 시간
Figure 112017126641664-pct00002
로부터 시작하여 이용 가능할 수도 있고, MPD에서 언급될 수도 있는 바와 같이, 타임시프트 버퍼(
Figure 112017126641664-pct00003
)의 지속 기간 동안 이용 가능할 수도 있다. 가용성의 윈도우 사이즈는, DASH 배치의 캐치 업 TV 기능성(catch-up TV functionality)에 영향을 줄 수도 있다. 세그먼트 가용성 시간은, 액세스 클라이언트가 MPD 유효 기간 내에 있는 한, 액세스 클라이언트에 의존할 수도 있다.
임의의 표현 R에 대해, MPD는 대역폭 BR을 선언할 수도 있다. MPD는 또한, 전역적 최소 버퍼링 시간 BTmin을 제공할 수도 있다. 액세스 클라이언트는, BR×BTmin 비트가 다운로드된 이후, 세그먼트를 미디어 엔진으로 전달할 수도 있다. 주어진 세그먼트는 랜덤 액세스 포인트로 시작할 수도 있다. 세그먼트 n이 미디어 엔진에 전달될 수 있는 가장 빠른 시간은 TA(n)+Td(n)+BTmin'인데, 여기서 Td(n)은 세그먼트 n의 다운로드 시간을 나타낸다. 지연을 최소화하기 위해, DASH 클라이언트는 재생을 즉시 시작하기를 원할 수도 있지만, MPD는, 상이한 클라이언트 사이의 동기화를 보장하기 위해, (예를 들면, TA(n)으로부터의 오프셋으로서) 프리젠테이션 지연을 제안할 수도 있다. 세그먼트 HTTP GET 요청의 긴밀한 동기화는, 인프라에 부담을 지울 수도 있는 "썬더링 허드(thundering herd)" 효과를 생성할 수도 있다.
MPD 유효성 및/또는 세그먼트 가용성은 절대(즉, 벽 시계) 시간을 사용하여 계산될 수도 있다. 미디어 시간은 세그먼트 자체 내에서 표현될 수도 있으며, 라이브 사례에서, 인코더 및/또는 클라이언트 클록 사이에 드리프트가 전개할 수도 있다. 이것은, MPEG-2 TS 및 ISO-BMFF 표준 둘 모두가 동기화 기능성을 제공할 수도 있는 컨테이너 레벨에서 해결될 수도 있다.
이벤트는 DASH에 대한 확장일 수도 있다. HTTP는 상태 비보존형(stateless)일 수도 있고 및/또는 클라이언트 구동될 수도 있다. 빈번한 폴링(poll)을 사용하여 "푸시" 스타일 이벤트가 에뮬레이팅될 수도 있다. 케이블/인터넷 프로토콜 텔레비전(internet protocol television; IPTV) 시스템에서의 광고 삽입 관행에서, 다가오는 광고 시간(upcoming ad break)은 그들이 시작하기 3-8 초 전에 시그널링될 수도 있다. 간단한 폴 기반의 구현예는 비효율적 일 수 있고, 이벤트는 사용 사례를 다루도록 설계되었다.
이벤트는, 명확한 시간 및/또는 지속 기간 정보 및/또는 애플리케이션 고유의 페이로드를 갖는 "블롭"일 수도 있다. 대역 내 이벤트(in band event)는 미디어 세그먼트의 시작에서 나타나는 작은 메시지 박스일 수도 있고, 한편 MPD 이벤트는 시간이 지정된 엘리먼트(timed element)의 기간 레벨 리스트일 수도 있다. DASH는, 주어진 프리젠테이션 시간 이후 유효한 가장 빠른 MPD 버전을 식별할 수도 있는 MPD 유효성 만료 이벤트를 정의한다.
DASH는 디지털 저작권 관리(digital rights management; DRM)에 무관할 수도 있다. DASH는 MPD 내에서 시그널링 DRM 스킴 및 그 특성을 지원한다. DRM 스킴은 ContentProtection 디스크립터를 통해 시그널링될 수도 있다. 그 안에서 불투명 한 값이 전달될 수도 있다. DRM 스킴을 시그널링하기 위해, 주어진 스킴에 대한 고유한 식별자가 사용될 수도 있고, 불투명 한 값의 의미를 정의할 수도 있다(또는, 스킴 고유의 네임스페이스를 대신 사용할 수도 있다).
MPEG는 두 가지 콘텐츠 보호 표준인 ISO-BMFF에 대한 공통 암호화(Common Encryption; CENC) 및 세그먼트 암호화 및 인증을 개발하였다. 공통 암호화는, 샘플의 어느 부분이 암호화되고, 트랙 내에서 암호화 메타데이터가 어떻게 시그널링되는지를 표준화한다. 세그먼트에서 암호화 메타데이터가 주어지면, DRM 모듈은 키를 클라이언트로 전달하는 것을 담당할 수도 있지만, 암호 해제 그 자체는 표준 AES-CTR 또는 AES-CBC 모드를 사용할 수도 있다. CENC 프레임워크는 확장 가능할 수도 있고, 정의되면, 이들 둘 이외의 다른 암호화 알고리즘을 사용할 수도 있다. 공통 암호화는 여러가지 상용 DRM 시스템과 함께 사용될 수도 있고 DASH264에서 사용될 수도 있다.
DASH 세그먼트 암호화 및 인증(DASH Segment Encryption and Authentication; DASH-SEA)은 세그먼트 포맷에 무관할 수도 있다. 암호화 메타 데이터는 일부 대역 내 메커니즘과 달리, MPD를 통해 전달된다. 예를 들면, MPD는, 주어진 세그먼트의 암호 해제를 위해 어떤 키가 사용되는지 그리고 이 키를 획득하는 방식에 대한 정보를 포함할 수도 있다. 기준 시스템(baseline system)은, AES-CBC 암호화 및/또는 HTTPS 기반 키 전송을 사용하여, HLS에 정의되는 시스템과 동일할 수도 있다. MPEG-2 TS 미디어 세그먼트는 암호화된 HLS 세그먼트와 호환될 수도 있다. 표준 그 자체는, CENC와 마찬가지로, 다른 암호화 알고리즘 및 더 많은 DRM 시스템을 허용할 수도 있다.
DASH-SEA는 또한 세그먼트 진정성 프레임워크(segment authenticity framework)를 제공할 수도 있다. 이 프레임워크는, 클라이언트에 의해 수신되는 세그먼트가, 클라이언트가 수신하도록 MPD 작성자가 의도한 세그먼트와 동일하다는 것을 보장할 수도 있다. 이것은 MAC 또는 다이제스트 알고리즘을 사용하여 행해질 수도 있으며, 의도는 네트워크 내에서 콘텐츠 수정(예를 들면, 광고 교체, 대역 내 이벤트 변경, 등등)을 방지하는 것일 수도 있다.
중간자 공격(Man-In-the-Middle Attack)은, 특히, 성능 상의 이유로 안전하지 않은 링크(예를 들면, HTTPS가 아닌 HTTP)를 통해 전송될 수도 있는 미디어 세그먼트를 포함할 수도 있다. 네트워크의 엔티티는 HTTP 응답의 콘텐츠를 수정할 수 있다. 무선을 통한(over the air) 브로드캐스트 전달의 경우, 변조된 콘텐츠를 생성하기 위해 가짜 송신기가 사용될 수도 있다. 순전히 시청각적인 자료의 경우, 이 중간자 공격은, 특히, 악의적으로 정교하게 만들어진 파라미터에 대한 공통 기기의 알려진 취약성의 불법 사용으로 인해, 및/또는 공급자가 삽입한 광고의 대체로 인해, 위험하다. 리시버 액션(예를 들면, HTTP GET을 발행하는 것, 다큐먼트를 파싱하는 것, 스크립트를 실행하는 것)을 필요로 하는 콘텐츠의 경우, 수반되는 위험성은, TV가 본격적인 컴퓨터가 되는 것을 포함할 수도 있고 그것은 악의적인 JavaScript(자바스크립트) 스크립트를 실행하도록 속임을 당할 수도 있거나, 또는 세션이 완전히 도용될 수도 있다(MPD 또는 TEMI). DRM은 그 상황을 완화하는 데 도움이 되지 않을 수도 있다 - Apple HLS에 의해 실행되는 전체 세그먼트 암호화를 제외하면, 방법의 나머지는 미디어 콘텐츠를 무단 시청으로부터 보호할 수도 있고, 미디어의 수정으로부터 보호를 제공할 수 없을 수도 있다.
ISO/IEC 23009-4(DASH 파트 4)는 대역 외 세그먼트 무결성 검증을 위한 프레임워크를 제공할 수도 있다. 이것은 사용 사례의 일부에 대한 문제를 해결할 수도 있다(예를 들면, 완전한 세그먼트는 보호될 수도 있고, 공격자는 이벤트를 포함하는 세그먼트를 수정할 수 없을 수도 있다). HTTPS의 사용은 다른 솔루션인데, 이 경우, TLS는 세션 전체에 걸쳐 진정성 및 무결성을 보장한다.
현재의 ISO/IEC 23009-4 솔루션은 일부 신뢰할 수도 있는 엔티티가 신뢰할 수도 있는 서버를 설정했을 때 작동할 수도 있다. 이러한 엔티티가 이러한 서버를 설정하기 위한 노력을 기울이지 않았다면, 무결성은 (예를 들면, ISO/IEC 23009-4 기술을 사용하여) 검증되지 않을 수도 있다 ISO/IEC 23009-4 솔루션은 또한 공격 보고 및 격리(attack reporting and isolation)(예를 들면, 네트워크에서 공격이 발생한 곳을 검출하는 것)를 허용하지 않을 수도 있다 - 즉, 클라이언트만이 검증이 실패했다는 것을 알 수도 있으며, 심지어 클라이언트조차도 공격의 기원을 알지 못할 수도 있다.
HTTPS 솔루션은 "신뢰된 엔티티(trusted entity)" 문제가 없을 수도 있다. 미디어 세그먼트를 서비스하는 동일한 서버는 신뢰된 엔티티일 수도 있다. 보고 및 격리는 이 솔루션에 내장되지 않을 수도 있다. 또한, HTTP뿐만 아니라 HTTPS도 확장할 수 없을 수도 있다.
본원에서 설명되는 시스템 및 방법은 해시/MAC 값을 전달하기 위해 ISO/IEC 23009-4를 수정할 수도 있다. 해시/MAC은 클라이언트에 의해 계산될 수도 있고 해시/MAC의 참조 값에 대한 클라이언트 요청에 포함될 수도 있다.
본원에서 설명되는 시스템 및 방법은, 공격 검출, 보고, 및 격리를 위해 해시/MAC을 사용할 수도 있고, 공격 검출, 보고, 및 격리의 목적을 위한 해시/MAC 사용을 수용하기 위해 ISO/IEC 23009-4의 확장을 제공할 수도 있고, 및/또는 네트워크 토폴로지 내에서 공격 위치를 식별하는 추가적인 시스템 및 방법을 제공할 수도 있다. 본원에서 설명되는 시스템은 분할된 다운로드의 사용에 관련될 수도 있으며, 반드시 HTTP를 통하는 것도 아니고 DASH로 제한되는 것도 아니다. 하기의 논의는, MPEG DASH 및 ISO/IEC 23009-4(DASH-SEA, 세그먼트 암호화 및 인증)를 가정한다. DASH 클라이언트 동작은, 허용 가능한 조합 또는 순서로 다음 중 하나 이상을 포함할 수도 있다.
DASH 클라이언트는 (23009-4에서 정의될 수도 있는 바와 같이) ContentAuthenticity XML 엘리먼트를 포함할 수도 있는 MPD를 획득할 수도 있다. XLink 속성(예를 들면, @xlink:href)을 포함하기 위한 (예를 들면, 23009-1에서의) DescriptorType 엘리먼트 또는 (예를 들면, 23009-4에서의) ContentAuthenticity 엘리먼트의 확장은, MPD를 생성하는 소스와는 상이한 소스로부터 진정성 설정 정보를 수신하는 것을 허용할 수도 있다. 이러한 확장이 사용될 수도 있다.
DASH 클라이언트는, 키화된 해시 메시지 인증 코드(keyed-hash message authentication code)("HMAC")를 (예를 들면, HMAC가 사용되어야 하는 경우) 유도할 수도 있다. HMAC는, 비밀 암호 키와 조합하여 암호 해시 함수를 수반하는 메시지 인증 코드(message authentication code; MAC)를 계산하기 위한 특정한 구성이다. 키는 ContentAuthenticity@keyUrlTemplate 속성으로 구성되는 URL에 대한 HTTP GET 요청에 대한 응답일 수도 있다. GMAC는 사용될 수도 있는 대안적인 메시지 인증 기술이다. 현재 DASH-SEA에서는 GMAC가 지원되지 않지만, 그것에 지원을 추가하는 것은, 초기화 벡터(IV) 유도의 추가적인 단계를 포함할 수도 있다. GMAC의 추가는 ContentAuthenticity 엘리먼트에 속성을 추가하는 것을 포함할 수도 있다. 그 메커니즘은 ISO/IEC 23009-4에서 AES-GCM 암호화에 대해 현재 제공되는 메커니즘과 동일할 수도 있다. 그 메커니즘은 키 및/또는 초기화 벡터 트래픽의 오버헤드를 감소시키기 위해 단순화될 수도 있다. 키는 기간마다 한 번 요청될 수도 있고 클라이언트 측에서 초기화 벡터를 유도할 수도 있다. ISO/IEC 23009-4의 섹션 6.4.4는 암호화 케이스의 초기화 벡터 프로세스를 논의한다. 이러한 유도는 ISO/IEC 23009-4 사양에서의 인증된 암호화와 동일한 메커니즘을 사용할 수도 있다, 즉, 정확한 IV 유도를 가능하게 하기 위해 충분한 정보가 MPD에서(동일한 디스크립터 내에서) 시그널링될 수도 있다. GMAC에 대한 IV 유도 프로세스는 GCM 모드에서 AES 암호화에 대해 수행되는 프로세스와 유사할 것이다. 그 프로세스는 ISO/IEC 23009-4의 섹션 6.4.4에서 설명된다. 이것은 ContentAuthenticity 엘리먼트에 하나 이상의 속성 또는 엘리먼트를 추가하는 것에 의해 및/또는 ContentAuthenticity 엘리먼트와 동일한 디스크립터에서 ISO/IEC 23009-4에서 정의되는 다른 XML 엘리먼트를 사용하는 것에 의해 달성될 수도 있다.
DASH 클라이언트는 세그먼트를 다운로드할 수도 있다. 외향(outbound) 파라미터 암호화의 경우, 이 단계에서 서명 요청 URL 초기화 벡터 유도가 발생할 수도 있다. GMAC가 사용되는 경우 IV 유도도 또한 이 단계에서 발생할 수도 있다.
DASH 클라이언트는 세그먼트에 대한 해시 또는 MAC(예를 들면, 해시 또는 MAC의 클라이언트 계산 값(client-computed value))을 계산할 수도 있다. 알고리즘 및 키는 ContentAuthenticity 엘리먼트로부터 유도될 수도 있다.
DASH 클라이언트는, ContentAuthenticity@authUrlTemplate 속성으로부터 유도되는 URL이 주어지면, 서버에게 세그먼트의 해시 또는 MAC을 요청할 수도 있다. 이 제안은 다음의 방식 중 하나 이상의 방법(예를 들면, 이들은 서로 독립적일 수도 있음)에서 URL 유도를 보강할 수도 있다. 클라이언트는 계산의 결과(예를 들면, 주어진 세그먼트에 대한 해시 또는 MAC의 클라이언트 계산 값)를 요청에 임베딩할 수도 있다. 이것은, 그것을 URL 안으로 (예를 들면, URL 쿼리 파라미터로서) 직접적으로 삽입하는 것에 의해 또는 계산 결과를 전달할 새로운 HTTP 헤더를 작성하는 것에 의해 행해질 수도 있다. 클라이언트는 하나 이상의 진단 파라미터를 요청에 임베딩할 수도 있다. 이들 파라미터는, 세그먼트를 제공하는 서버의 IP 어드레스, GPS 좌표의 세트, 셀 타워 식별자, SSID와 같은 무선 액세스 포인트 식별자, 셀 타워 및/또는 무선 액세스 포인트에 대한 추가적인 특성 또는 세부 정보(예를 들면, 네트워크 공급자, 신호 강도), 등등... 중 하나 이상을 포함할 수도 있다. 진단 파라미터는 (예를 들면, 쿼리 파라미터를 사용하여) URL 안으로 임베딩될 수도 있거나 또는 하나 이상의 HTTP 헤더에 배치될 수도 있다. (HTTPS가 아닌) HTTP를 사용하여 요청이 이루어지면, 파라미터는 암호화될 수도 있고 파라미터를 전달하는 데이터(예를 들면, 파라미터가 URL에 임베딩되는 경우 전체 URL; 또는 HTTP 헤더가 파라미터를 전달하기 위해 사용되는 경우 이러한 헤더)는 서명될 수도 있다. 이것은 "업링크" 암호화에 대한 여분의 키를 제공하는 것에 의해(또는 HMAC/GMAC 계산을 위해 제공된 것과 동일한 키를 사용하는 것에 의해) 대응될 수 있다. 클라이언트 식별(예를 들면, IP 어드레스)의 시간 및/또는 형태가 암호화되고 서명된 파라미터 데이터(예를 들면, 서명된 URL 또는 서명된 헤더 데이터)에 포함될 수도 있다. 이것은 이 메커니즘에 대한 중간자 및/또는 재생 공격을 방지할 수도 있다. 여분의 키 및 관련된 초기화 벡터(IV)의 유도는, ISO/IEC 23009-4 CryptoPeriod 엘리먼트에서와 같이 또는 그와 유사하게 행해질 수도 있고, ISO/IEC 23009-4에서 설명되는 속성/엘리먼트를 ContentAuthenticity 엘리먼트에 추가하는 것에 의해 구현될 수도 있다. 키 및 IV 유도는 ISO/IEC 23009-4의 섹션 6.4.4에서 설명되는 대로 발생할 수도 있다.
DASH 클라이언트는 서버로부터 요청된 해시/MAC을 수신할 수도 있고, 예를 들면, 본원에서 설명되는 바와 같이, 그것을 자기 자신의 클라이언트 계산 해시 또는 MAC 결과(client-computed hash or MAC result)와 비교할 수도 있다. 실패의 경우(예를 들면, 클라이언트 계산 값이 서버에 의해 제공되는 값과 매치하지 않는 경우), 클라이언트는 세그먼트를 버릴 수도 있다.
서버 동작은 다음과 같을 수도 있으며 허용 가능한 조합에서 다음 중 하나 이상을 포함할 수도 있다. 서버는 요청(클라이언트 동작에서 참조됨)을 수신할 수도 있고 자신의 데이터베이스로부터의 해시 또는 MAC으로 응답할 수도 있다(23009-4 동작).
서버는 클라이언트 계산 해시/MAC을 데이터베이스에서 자신이 가지고 있는 것과 비교할 수도 있다. 불일치가 있으면, 서버는 공급자(예를 들면, 콘텐츠 공급자, 예컨대 콘텐츠 소유자, 콘텐츠 배포자, 브로드캐스터, 오버 더 톱 비디오 서비스, 광고 공급자, 및/또는 등등)에게 불일치를 보고할 수도 있다. 공격 위치 결정(attack localization) 목적을 위해, 그것은 클라이언트 요청에서 명시되는 파라미터(클라이언트 계산 해시 또는 MAC 및/또는 진단 파라미터 - 클라이언트 동작 참조)뿐만 아니라 클라이언트 IP 어드레스로부터 유도되는 클라이언트 신원 또는 유저 신원(예를 들면, 지오로케이션 및/또는 써드파티 데이터베이스를 통해 신원을 갖는 구속 IP(tying IP))을 사용할 수도 있다. 다수의 상이한 클라이언트로부터 수신될 수도 있는 다수의 요청으로부터 클라이언트 파라미터가 수집될 수도 있다. 이것은, 오퍼레이터가 공격의 위치를, 예를 들면, 소정의 CDN, 공급자, 액세스 포인트(들), 등등으로 결정하는 것을 허용할 수도 있다. 공격 위치 결정 능력은, (예를 들면, 능동적인 유저 참여 없이) 클라이언트 요청으로부터 서버에게 알려지는 정보에 의존할 수도 있다. 클라이언트 IP 어드레스, 클라이언트 신원 또는 유저 신원에 대한 정보가, 어쩌면 상이한 엔티티(예컨대 GeoIP 공급자)에 의해 운영되는 외부 서비스에게 요청될 수도 있다. 클라이언트 위치 및 그것의 ISP에 대한 상대적으로 정확한 정보가 알려질 수도 있다. 지리적 위치, 로우 레벨의 네트워크 정보(예를 들면, 신호 강도, 셀 타워 및/또는 무선 네트워크 SSID)는 마지막 홉 공격을 식별하는 데 도움이 될 수 있다. 네트워크 토폴로지의 지식(어쩌면, 실시간으로 또는 오프라인에서, 상이한 소스에게 요청됨)과 결합되는 결과의 집성은, 네트워크에서 더욱 심각하게 발생하는 공격의 위치 결정을 허용할 수도 있다. 예를 들면, 수정된 세그먼트가 어떤 CDN 및 특정 CDN 노드로부터 도달했는지가 확인될 수 있다. CDN 공급자는 수정된 세그먼트의 경로를 수정된 세그먼트의 에지 노드로부터 네트워크 오퍼레이터로 가는 도중에 추적할 수도 있고, 한편 네트워크 오퍼레이터는 자신의 시스템을 통과하는 요청 경로를 추적할 수도 있다. 디바이스 타입 및 플레이어 세부 정보(예를 들면, 플레이어/버전/OS)의 지식은, 특정 클래스의 클라이언트에 대한 공격의 위치를 결정하는 데 사용될 수도 있다. 이러한 정보는, 클라이언트로부터 서버로 전송되는 임의의 요청 메시지에서(예를 들면, '유저 에이전트' 필드 또는 유사한 정보 필드에서) 서버로 제공될 수도 있다.
본원에서 설명되는 방법 및 시스템은 크라우드소싱 모드에 적용 가능할 수도 있다. 가능한 사용 사례는, 공급자(예를 들면, 콘텐츠 공급자, 예컨대 콘텐츠 소유자, 콘텐츠 배포자, 브로드캐스터, 오버 더 톱 비디오 서비스, 광고 공급자, 및/또는 등등)가 자신을 대신하여 신뢰할 만한 23009-4 서버를 설정하지 않을 것을 선택하지만, 그러나 DASH 클라이언트는 별개의 엔티티에서 실행되는 23009-4 서버의 지식을 가지고 있는 경우이다. 지식은 공급자 공급 MPD로부터 유래하는 것이 아닐 수도 있다; 정보는 다른 소스로부터 유래할 수도 있다. 이 경우, 서버는 클라이언트로부터(예를 들면, 동일한 세그먼트를 수신한 다수의 클라이언트로부터) 해시/MAC(예를 들면, 콘텐츠 세그먼트에 대응하는 해시 또는 MAC)을 수신할 수도 있고, 서버는 수신된 해시 또는 MAC 값을 저장할 수도 있다. 서버가 클라이언트로부터 콘텐츠 세그먼트의 해시 또는 MAC에 대한 요청을 수신하면, 서버는, 응답에 대한 신뢰할 만한 해시 또는 MAC 값을 생성하기 위한 그 세그먼트에 대한 충분한 클라이언트 계산 해시 또는 MAC 값을 수신하지 못했다는 것을 결정할 수도 있다. 이 경우, 서버는 해시가 이용 불가능하다는 것을 클라이언트에게 통지하는 오류 응답을 가지고 응답할 수도 있다. 소정의 임계 값이 교차된 이후(예를 들면, 동일한 세그먼트에 대해 통계적으로 유의미한 양의 요청이 이루어진 경우, 및/또는 그 세그먼트의 클라이언트로부터 통계적으로 유의미한 수의 매치하는 해시 또는 MAC 값이 수신된 경우), 서버는 자신이 신뢰할 만한 것으로 생각하는 해시/MAC 버전을 가지고 응답을 시작할 수도 있다. 대안적인 구현예는, 오류 응답을 전송하는 대신, 시작에서부터 현재 다수결 솔루션(예를 들면, 세그먼트에 대해 클라이언트로부터 수신되는 가장 일반적인 해시/MAC 값)으로 응답할 수도 있지만, 그러나 이 경우 서버는 제공된 다수결 솔루션에 대한 신뢰도 레벨을 표현하기 위한 정보를 추가할 수도 있다. 예를 들면, 서버는, 모두 현재 세그먼트에 대해 표현된, 다수결 솔루션과 매치한 수신된 값의 수, 다수결 솔루션과 매치하지 않은 수신된 값의 수, 및/또는 수신된 값의 총 수를 응답에서 나타낼 수도 있다. 예를 들면, 서버는, 5 개의 수신된 샘플 중 5 개가 다수결 솔루션 값을 가졌다는 것, 또는 1000 개의 수신된 샘플 중 998 개가 다수결 솔루션 값을 가졌다는 것, 또는 576 개의 수신된 샘플이 다수결 솔루션 값을 가졌고 한편 12개의 수신된 샘플을 가지지 않았다는 것, 등등...을 응답에서 나타낼 수도 있다. 이것은, 신뢰 레벨을 표현하는 값을 나타내기 위해 커스텀 HTTP 헤더를 추가하는 것에 의해 구현될 수도 있다. 예를 들면, HTTP 응답은, 1000 개의 수신된 샘플 중 998 개가, 서버가 응답에서 클라이언트로 제공한 다수결 솔루션을 가지고 있었다는 것을 나타내기 위해, 예를 들면, "x-dash-sea-auth-support: 998/1000" 라인을 포함할 수도 있다.
ISO/IEC 23009-4에 대한 변경은, 정의될 수도 있고 DASH 클라이언트로부터 서버로 해시/MAC을 전달할 수도 있는 템플릿(대체) 변수(예를 들면, $sign$)를 포함할 수도 있다. 현존하는 DASH 템플릿 구성 메커니즘이 요청을 구성하기 위해 사용될 수도 있다. 진단 파라미터에 대해(예를 들면, $GPS$, $CellID$, $SSID$, $SegmentServerIP$, 또는 본원에서 설명되는 진단 파라미터 중 임의의 것에 대해서 마찬가지로) 추가적인 템플릿 변수가 정의될 수도 있다. 이들 변수가 ContentAuthenticity@authUrlTemplate에 포함될 수도 있기 때문에, 템플릿 변수는 MPD의 검사에 의해 보일 수도 있다.
도 2는 예시적인 시스템을 도시한다. 도 2는 해시 및 진단 파라미터에 대한 클라이언트 보고, 및 이들 값의 보고에 대한 서버 응답을 도시한다. 도 2에서 도시되는 바와 같이, DASH MPD 공급자(202), 키 공급자(204), 무결성 검증 서버(206), DASH 콘텐츠 서버(208), 및 DASH 클라이언트(210)가 있다. 다양한 공급자 및 서버가 (도면에서 도시되는 바와 같이) 별개의 엔티티로서 존재할 수도 있지만, 그들은 또한 다양한 방식으로 결합될 수도 있는데, 예를 들면, 키 공급자(204) 및 무결성 검증 서버(206)가 단일 서버 내에 상주할 수도 있거나, 또는 무결성 검증 서버(206) 및 DASH 콘텐츠 서버가 마찬가지로 결합될 수도 있다는 것을 유의한다. DASH MPD 공급자(202)는, 콘텐츠 진정성 XML 엘리먼트를 갖는 MPD(212)를 DASH 클라이언트(210)에게 제공할 수도 있다. DASH 클라이언트(210)는, 214에서, MPD에서의 콘텐츠 진정성으로부터 URL을 구성할 수도 있다. DASH 클라이언트(210)는, 216에서, 키에 대한 HTTP 요청을 키 공급자(204)에게 전송할 수도 있다. 키 공급자(204)는, 218에서, 키를 갖는 HTTP 응답을 DASH 클라이언트(210)에게 전송할 수도 있다. 단계(216 및 218)에서의 키에 대한 요청 및 키의 수신은, DASH 클라이언트가 세그먼트 HASH 또는 MAC 값을 요청하거나 또는 보고하기 이전에 언제든지 발생할 수도 있다. (한 예로서, 단계(216 및 218)는, 단계(224 및 226) 이후에 그러나 단계(230) 이전에 교대로 수행될 수도 있을 것이다). DASH 클라이언트(210)는, 220에서, 세그먼트 URL을 구성할 수도 있다. 222에서, DASH 클라이언트는 세그먼트에 대한 HTTP 요청을 224에서 DASH 콘텐츠 서버(208)로 전송할 수도 있다. DASH 콘텐츠 서버(208)는, 226에서, HTTP 응답을 DASH 클라이언트(210)로 전송할 수도 있다. HTTP 응답은, 미디어 세그먼트와 같은 세그먼트를 포함할 수도 있다. 228에서, DASH 클라이언트(210)는 키를 사용하여 세그먼트의 HASH 또는 MAC을 계산할 수도 있다. DASH 클라이언트(210)는, 230에서, 클라이언트 계산 해시 또는 MAC 및/또는 진단 파라미터를 포함할 수도 있는 참조 HASH 또는 MAC에 대한 HTTP 요청을 무결성 검증 서버(206)로 전송할 수도 있다. 무결성 검증 서버(206)는 계산된 HASH 또는 MAC 및/또는 DASH 클라이언트(210)로부터 수신되는 진단 파라미터를, 232에서, 저장할 수도 있다. 234에서, 무결성 검증 서버(206)는, 세그먼트에 대한 참조 해시 또는 MAC을 포함할 수도 있는 HTTP 응답을 DASH 클라이언트(210)로 전송할 수도 있다. 예를 들면, 참조 해시 또는 MAC은, 콘텐츠 공급자, 예컨대 콘텐츠 소유자, 콘텐츠 배포자, 브로드캐스터, 오버 더 톱 비디오 서비스, 광고 공급자, 및/또는 등등에 의해 무결성 검증 서버로 제공되었을 수도 있다. 다른 예로서, 참조 해시 또는 MAC은, 다수의 클라이언트로부터 동일한 세그먼트에 대한 클라이언트 계산 해시 또는 MAC 값을 수집하는 것 및 다수결 솔루션(예를 들면, 많은 샘플에 걸쳐 관측되는, 수신된 클라이언트 계산 해시 또는 MAC 값에서 가장 일반적으로 보이는 해시 또는 MAC 값)을 결정하는 것에 기초하여 무결성 검증 서버에 의해 결정되었을 수도 있다. 무결성 검증 서버(206)는, 236에서, DASH 클라이언트(210)로부터의 해시 및/또는 진단 파라미터를 분석하여, 공격을 검출, 위치 결정 및/또는 보고할 수도 있다. 예를 들면, 무결성 검증 서버는, 수신된 클라이언트 계산 해시 또는 MAC 값을 참조 해시 값에 비교하는 것, 및 수신된 클라이언트 계산 해시 값 중 하나 이상에서의 불일치를 결정하는 것에 의해, 공격을 검출할 수도 있다. 검출된 공격은, 매치하지 않는 해시 또는 MAC 값을 제공한 클라이언트에 의해 제공되는 진단 파라미터를 분석하는 것에 의해, 및/또는 CDN 공급자, 네트워크 공급자, 또는 본원에서 앞서 설명된 바와 같은 기타 외부 정보 소스에게 질의하는 것에 의해 위치 결정될 수도 있다. 검출된 공격에 관한 정보 및/또는 그것의 위치 결정 정보는, 콘텐츠 공급자에게, 예를 들면, 공격에서 손상되었을 수도 있는 콘텐츠 세그먼트를 제공하는 또는 배포하는 공급자에게 보고될 수도 있다.
도 3은 예시적인 시스템을 도시한다. 도 3뿐만 아니라 하기에서 설명되는 도 4 및 도 5는, MPD 배포 및 HMAC 키 생성/획득의 선행 단계를 명시적으로 도시하지 않는다. 그러나, 도 2에 일반적으로 도시되는 바와 같은 이들 단계는, 도 3 내지 도 5에서 도시되는 시스템 및 방법과 함께 사용될 수도 있다는 것을 알 수 있을 것이다. 예를 들면, 단계(212, 216, 및/또는 218)는 도 3 내지 도 5에서 도시되는 시스템 및 방법 중 임의의 것에 대한 초기화 단계로서 수행될 수도 있다. 도 3은, 클라이언트가 클라이언트 계산 해시를 제공할 수도 있고 중앙 공급자가 무결성 검증 서버에 의한 사용을 위한 임의의 참조 해시를 반드시 제공하지는 않는 크라우드소싱된 사례(crowdsourced case)에 적용될 수도 있다. 도 3은, 서버가 수집된 클라이언트 계산 해시에 기초하여 "서버 결정 해시(Server Determined Hash)"(예를 들면, 서버가 신뢰할 만한 것으로 간주하는 해시/MAC 버전)를 생성하기 위한 충분한 클라이언트 계산 해시가 (현재 세그먼트에 대해) 수집되었다는 것을 결정한 경우의 무결성 검증 서버(302)의 동작 및 알고리즘을 예시한다. 이 결정은, 세그먼트 단위로 이루어질 수도 있다. 이와 관련하여, 무결성 검증 서버는, 세그먼트 단위 기반으로 상태(예를 들면, 어떤 클라이언트 계산 해시 데이터가 이미 수신되어 저장되어 있는지, 얼마나 많은 수신된 해시가 현재 다수결 솔루션과 매치하는지, 등등)를 추적할 수도 있다. 도 3은, 무결성 검증 서버(302), DASH 콘텐츠 서버(304), 및 Dash 클라이언트(306)를 도시한다. Dash 클라이언트(306)는, 308에서, 세그먼트에 대한 HTTP 요청을 DASH 콘텐츠 서버(304)로 전송할 수도 있다. DASH 콘텐츠 서버(304)는, 310에서, 세그먼트(이것은 미디어 세그먼트일 수도 있음)를 포함하는 HTTP 응답을 DASH 클라이언트(306)로 전송할 수도 있다. 312에서, Dash 클라이언트(306)는 키를 사용하여 세그먼트에 대한 HASH 또는 MAC을 계산할 수도 있다(예를 들면, 키는 도 2의 단계(216 및 218)의 절차를 사용하여 Dash 클라이언트(306)에 의해, 또는 다른 키 교환 또는 키 유도 메커니즘에 의해 먼저 획득될 수도 있다). Dash 클라이언트(306)는, 314에서, 클라이언트 계산 HASH 또는 MAC을 포함할 수도 있는 참조 HASH 또는 MAC에 대한 HTTP 요청을 무결성 검증 서버(302)로 전송할 수도 있다. 무결성 검증 서버(302)는, 316에서, DASH 클라이언트(306)로부터 수신되는 계산된 HASH 또는 MAC을 저장할 수도 있다. 318에서, 무결성 검증 서버(302)는, 세그먼트에 대한 서버 결정 HASH 또는 MAC(server determined HASH or MAC)을 생성하기 위한 세그먼트에 대한 충분한 계산된 HASH 또는 MAC 값이 클라이언트로부터 수집되었는지의 여부를 결정할 수도 있다. 무결성 검증 서버(302)는, 320에서, 세그먼트에 대한 서버 결정 HASH 또는 MAC을 무결성 검증 서버(302)가 계산한 경우, 서버 결정 HASH 또는 MAC을 갖는 HTTP 응답을 DASH 클라이언트로 전송할 수도 있다.
도 4는 예시적인 시스템을 도시한다. 도 4는 크라우드소싱된 사례에 적용될 수도 있다. 도 4는, 특히, 무결성 검증 서버가 프로세스 초기에, 예를 들면, 세그먼트에 대한 서버 결정 해시 또는 MAC을 생성하기 위해 현재 세그먼트에 대해 수집된 충분한 클라이언트 계산 해시 또는 MAC 값이 존재하지 않는다는 것을 서버가 결정하는 경우, 어떻게 거동할 수도 있는지를 도시한다. 이 경우, 서버는 현재 클라이언트로부터 수신되는 클라이언트 계산 해시를 반향시킬(echo) 수도 있다. 대안적으로, 서버는 현재의 다수결 솔루션(예를 들면, 세그먼트에 대한 클라이언트로부터 수신되는 가장 공통적인 해시 또는 MAC 값)으로 응답할 수도 있고, 본원에 설명된 바와 같이, 현재의 다수결 솔루션과 관련되는 신뢰도 정보를 나타낼 수도 있다. 또 다른 대안으로서, 서버는, 신뢰할 만한 또는 서버 결정 해시 또는 MAC이 이용 가능하지 않다는 것을 DASH 클라이언트에게 나타내기 위한 오류 메시지로 응답할 수도 있다. 도 4의 시스템 및 방법은, 무결성 검증 서버(402), DASH 콘텐츠 서버(404), 및 DASH 클라이언트(406)를 포함할 수도 있거나 또는 사용할 수도 있다. DASH 클라이언트는, 408에서, 세그먼트에 대한 HTTP 요청을 DASH 콘텐츠 서버(404)로 전송할 수도 있다. DASH 콘텐츠 서버(404)는, 410에서, 세그먼트(예를 들면, 미디어 세그먼트)를 갖는 HTTP 응답을 DASH 클라이언트(406)로 전송할 수도 있다. DASH 클라이언트(406)는 키를 사용하여, 412에서, 세그먼트에 대한 HASH를 계산할 수도 있다(예를 들면, 키는 도 2의 단계(216 및 218)의 절차를 사용하여 Dash 클라이언트(306)에 의해, 또는 다른 키 교환 또는 키 유도 메커니즘에 의해 먼저 획득될 수도 있다). 414에서, Dash 클라이언트(406)는, DASH 클라이언트의 계산된 HASH 또는 MAC을 포함할 수도 있는 참조 HASH 또는 MAC에 대한 HTTP 요청을 무결성 검증 서버(402)로 전송할 수도 있다. 무결성 검증 서버(402)는, 416에서, 클라이언트로부터의 계산된 HASH 또는 MAC을 저장할 수도 있다. 418에서, 무결성 검증 서버(402)는, 세그먼트에 대한 서버 결정 HASH를 생성하기 위한, 세그먼트에 대한 충분한 계산된 HASH 값 또는 MAC 값이 클라이언트로부터 수집되었는지의 여부를 결정할 수도 있다. 무결성 검증 서버(402)는, 420에서, 관련된 신뢰도 레벨 정보를 갖는 현재의 다수결 솔루션 또는 오류 메시지를 포함할 수도 있는 HTTP 응답을 DASH 클라이언트(406)로 전송할 수도 있다.
도 5는 예시적인 시스템을 도시한다. 도 5는 크라우드소싱된 사례에 대해 사용될 수도 있다. 도 5는, 특히, 클라이언트 계산 해시 또는 MAC을 무결성 검증 서버에 보고하는 능력을 가지지 않을 수도 있는 레거시 DASH 클라이언트로부터의 요청을 고려하는 것을 도시한다. 무결성 검증 서버는 자신의 서버 결정 해시를 보고할 수도 있거나(세그먼트에 대한 충분한 클라이언트 계산 해시를 이미 수집한 경우), 또는 이러한 서버 결정 해시가 이용 가능하지 않은 경우 적절한 오류 메시지를 보고할 수도 있다. 도 5의 시스템 및 방법은 무결성 검증 서버(502), DASH 콘텐츠 서버(504), 및 레거시 DASH 클라이언트(506)를 포함할 수도 있거나 또는 사용할 수도 있다. 레거시 DASH 클라이언트(506)는, 508에서, 세그먼트에 대한 HTTP 요청을 DASH 콘텐츠 서버(504)에 전송할 수도 있다. DASH 콘텐츠 서버(504)는, 510에서, HTTP 응답(미디어 세그먼트)을 레거시 DASH 클라이언트(506)로 전송할 수도 있다. 레거시 DASH 클라이언트(506)는, 512에서, DASH 클라이언트의 계산된 HASH 또는 MAC을 포함하지 않을 수도 있는 참조 HASH 또는 MAC에 대한 HTTP 요청을 무결성 검증 서버(502)로 전송할 수도 있다. (비록 도면에서 도시되지는 않지만, 레거시 DASH 클라이언트(506)는 무결성 검증 서버(502)와 통신하기 이전에 적절한 키를 생성 또는 획득할 수도 있다, 예를 들면, 단계 512에서 참조 해시가 요청되기 이전에, 도 2의 단계(216 및 218) 또는 유사한 절차가 수행될 수도 있다). 514에서, 무결성 검증 서버(502)는, 세그먼트에 대한 서버 결정 HASH 또는 MAC을 생성하기 위해, 세그먼트에 대한 충분한 계산된 HASH 또는 MAC 값이 다른 DASH 클라이언트(예를 들면, 비레거시 클라이언트)로부터 수집되었는지의 여부를 결정할 수도 있다. 516에서, 무결성 검증 서버(502)는, 세그먼트가 이용 가능하다면 세그먼트에 대한 서버 결정 HASH를 포함할 수도 있는 HTTP 응답을 레거시 DASH 클라이언트(506)로 전송할 수도 있고, 그렇지 않으면 무결성 검증 서버(502)는 레거시 DASH 클라이언트(506)로 오류 메시지를 전송할 수도 있다. 오류 메시지는 그 세그먼트에 대해 어떠한 참조 해시 또는 MAC 값도 이용 가능하지 않다는 것을 나타낼 수도 있다.
도 6a는 하나 이상의 개시된 실시형태가 구현될 수도 있는 예시적인 통신 시스템(100)의 도면이다. 예를 들면, Dash 클라이언트 및/또는 레거시 Dash 클라이언트는 WTRU(102)일 수도 있지만, 그러나 반드시 그럴 필요는 없다. DASH 클라이언트 및/또는 레거시 Dash 클라이언트는 WTRU 대신 유선 컴포넌트일 수 있을 것이다. 무결성 검증 서버인 DASH 컨텐츠 서버는, 유선 또는 무선 네트워크를 서비스하는 하나 이상의 애플리케이션 서버일 수도 있고 유선 또는 무선 네트워크의 일부일 수도 있거나 또는 그 외부에 있을 수도 있다.
통신 시스템(100)은 음성, 데이터, 비디오, 메시징, 브로드캐스트, 등등과 같은 콘텐츠를 다수의 무선 유저에게 제공하는 다중 액세스 시스템(multiple access system)일 수도 있다. 통신 시스템(100)은, 무선 대역폭을 비롯한 시스템 리소스의 공유를 통해 다수의 무선 유저가 이러한 콘텐츠에 액세스하는 것을 가능하게 할 수도 있다. 예를 들면, 통신 시스템(100)은, 코드 분할 다중 액세스(code division multiple access; CDMA), 시분할 다중 액세스(time division multiple access; TDMA), 주파수 분할 다중 액세스(frequency division multiple access; FDMA), 직교 FDMA(orthogonal FDMA; OFDMA), 싱글 캐리어 FDMA(single-carrier FDMA; SC-FDMA), 및 등등과 같은 하나 이상의 채널 액세스 방법을 활용할 수도 있다.
도 6a에서 도시되는 바와 같이, 통신 시스템(100)은 무선 송수신 유닛(WTRU)(102a, 102b, 102c 및/또는 102d)(이들은 일반적으로 또는 일괄적으로 WTRU(102)로 칭해질 수도 있음), 무선 액세스 네트워크(radio access network; RAN)(103/104/105), 코어 네트워크(106/107/109), 공중 교환식 전화망(public switched telephone network; PSTN)(108), 인터넷(110), 및 다른 네트워크(112)를 포함할 수도 있지만, 개시된 실시형태는 임의의 수의 WTRU, 기지국(base station), 네트워크, 및/또는 네트워크 엘리먼트를 의도한다는 것을 알 수 있을 것이다. WTRU(102a, 102b, 102c, 102d)의 각각은 무선 환경에서 동작하도록 및/또는 통신하도록 구성되는 임의의 타입의 디바이스일 수도 있다. 예로서, WTRU(102a, 102b, 102c, 102d)는 무선 신호를 송신 및/또는 수신하도록 구성될 수도 있고 유저 기기(user equipment; UE), WTRU, 고정식 또는 이동식 가입자 유닛, 페이저, 셀룰러 전화, 개인 휴대형 정보 단말기(personal digital assistant; PDA), 스마트폰, 랩탑, 넷북, 퍼스널 컴퓨터, 무선 센서, 가전기기(consumer electronics), 및 등등을 포함할 수도 있다.
통신 시스템(100)은 기지국(114a) 및 기지국(114b)을 또한 포함할 수도 있다. 기지국(114a, 114b)의 각각은, 코어 네트워크(106/107/109), 인터넷(110), 및/또는 네트워크(112)와 같은 하나 이상의 통신 네트워크에 대한 액세스를 용이하게 하기 위해 WTRU(102a, 102b, 102c, 102d) 중 적어도 하나와 무선으로 인터페이싱하도록 구성되는 임의의 타입의 디바이스일 수도 있다. 예로서, 기지국(114a, 114b)은 기지국 트랜스시버(base transceiver station; BTS), 노드 B, eNode B, 홈 노드 B, 홈 eNode B, 사이트 컨트롤러(site controller), 액세스 포인트(access point; AP), 무선 라우터, 및 등등일 수도 있다. 기지국(114a, 114b) 각각이 단일의 엘리먼트로서 묘사되지만, 기지국(114a, 114b)은 임의의 수의 상호 접속된 기지국 및/또는 네트워크 엘리먼트를 포함할 수도 있다는 것을 알 수 있을 것이다.
기지국(114a)은, 기지국 컨트롤러(base station controller; BSC), 무선 네트워크 컨트롤러(radio network controller; RNC), 중계 노드, 등등과 같은 다른 기지국 및/또는 네트워크 엘리먼트(도시되지 않음)를 또한 포함할 수도 있는 RAN(103/104/105)의 일부일 수도 있다. 기지국(114a) 및/또는 기지국(114b)은 특정한 지리적 영역 내에서 무선 신호를 송신하도록 및/또는 수신하도록 구성될 수도 있는데, 특정 지리적 영역은 셀(도시되지 않음)로서 칭해질 수도 있다. 셀은 셀 섹터로 더 분할될 수도 있다. 예를 들면, 기지국(114a)과 관련된 셀은 3개의 섹터로 분할될 수도 있다. 따라서, 하나의 실시형태에서, 기지국(114a)은 3개의 트랜스시버, 즉, 셀의 각각의 섹터에 대해 하나의 트랜스시버를 포함할 수도 있다. 기지국(114a)은 다중입력 다중출력(multiple-input multiple output; MIMO) 기술을 활용할 수도 있고, 따라서, 셀의 각각의 섹터에 대해 다수의 트랜스시버를 활용할 수도 있다.
기지국(114a, 114b)은, 임의의 적절한 무선 통신 링크(예를 들면, 무선 주파수(radio frequency; RF), 마이크로파, 적외선(infrared; IR), 자외선(ultraviolet; UV), 가시광, 등등)일 수도 있는 무선 인터페이스(air interface; 115/116/117)를 통해 WTRU(102a, 102b, 102c, 102d) 중 하나 이상과 통신할 수도 있다. 무선 인터페이스(115/116/117)는 임의의 적절한 무선 액세스 기술(radio access technology; RAT)을 사용하여 확립될 수도 있다.
더 구체적으로는, 상기에서 언급되는 바와 같이, 통신 시스템(100)은 다중 액세스 시스템일 수도 있고 CDMA, TDMA, FDMA, OFDMA, SC-FDMA, 및 등등과 같은 하나 이상의 채널 액세스 스킴을 활용할 수도 있다. 예를 들면, RAN(103/104/105) 내의 기지국(114a) 및 WTRU(102a, 102b, 102c)는, 광대역 CDMA(wideband CDMA; WCDMA)를 사용하여 무선 인터페이스(115/116/117)를 확립할 수도 있는, 범용 이동 통신 시스템(Universal Mobile Telecommunications System; UMTS) 지상 무선 액세스(Terrestrial Radio Access)(UTRA)와 같은 무선 기술을 구현할 수도 있다. WCDMA는 고속 패킷 액세스(High-Speed Packet Access; HSPA) 및/또는 진화형 HSPA(Evolved HSPA; HSPA+)와 같은 통신 프로토콜을 포함할 수도 있다. HSPA는 고속 다운링크 패킷 액세스(High-Speed Downlink Packet Access; HSDPA) 및/또는 고속 업링크 패킷 액세스(High-Speed Uplink Packet Access; HSUPA)를 포함할 수도 있다.
기지국(114a) 및 WTRU(102a, 102b, 102c)는, 롱 텀 에볼루션(Long Term Evolution; LTE) 및/또는 LTE-어드밴스드(LTE-Advanced; LTE-A)를 사용하여 무선 인터페이스(115/116/117)를 확립할 수도 있는 무선 기술 예컨대 진화형 UMTS 지상 무선 액세스(Evolved UMTS Terrestrial Radio Access; E-UTRA)를 구현할 수도 있다.
기지국(114a) 및 WTRU(102a, 102b, 102c)는, IEEE 802.16(즉, 와이맥스(Worldwide Interoperability for Microwave Access; WiMAX)), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, IS-2000(Interim Standard 2000), IS-95(Interim Standard 95), IS-856(Interim Standard 856), 이동 통신용 글로벌 시스템(Global System for Mobile communications; GSM), GSM 에볼루션을 위한 향상된 데이터 레이트(Enhanced Data rates for GSM Evolution; EDGE), GSM EDGE(GERAN), 및 등등과 같은 무선 기술을 구현할 수도 있다.
도 6a의 기지국(114b)은, 예를 들면, 무선 라우터, 홈 노드 B, 홈 eNode B, 또는 액세스 포인트일 수도 있고, 사업장, 가정, 차량, 캠퍼스, 및 등등과 같은 국소화된 영역에서 무선 연결성을 용이하게 하기 위해 임의의 적절한 RAT를 활용할 수도 있다. 기지국(114b) 및 WTRU(102c, 102d)는 무선 근거리 통신망(wireless local area network; WLAN)을 확립하기 위해 IEEE 802.11과 같은 무선 기술을 구현할 수도 있다. 기지국(114b) 및 WTRU(102c, 102d)는 무선 사설 영역 네트워크(wireless personal area network; WPAN)를 확립하기 위해 IEEE 802.15와 같은 무선 기술을 구현할 수도 있다. 기지국(114b) 및 WTRU(102c, 102d)는 피코셀 또는 펨토셀을 확립하기 위해 셀룰러 기반 RAT(예를 들면, WCDMA, CDMA2000, GSM, LTE, LTE-A, 등등)를 활용할 수도 있다. 도 6a에서 도시되는 바와 같이, 기지국(114b)은 인터넷(110)에 대한 직접 연결을 구비할 수도 있다. 따라서, 기지국(114b)은 코어 네트워크(106/107/109)를 통해 인터넷(110)에 액세스하는 데 필요로 되지 않을 수도 있다.
RAN(103/104/105)은, WTRU(102a, 102b, 102c, 102d) 중 하나 이상으로 음성, 데이터, 애플리케이션, 및/또는 인터넷 전화 프로토콜(voice over internet protocol; VoIP) 서비스를 제공하도록 구성되는 임의의 타입의 네트워크일 수도 있는 코어 네트워크(106/107/109)와 통신할 수도 있다. 예를 들면, 코어 네트워크(106/107/109)는 호 제어(call control), 과금 서비스, 모바일 위치 기반 서비스, 선불 통화, 인터넷 연결성, 비디오 분배, 등등을 제공할 수도 있고, 및/또는 유저 인증과 같은 하이 레벨의 보안 기능을 수행할 수도 있다. 비록 도 6a에서 도시되지는 않지만, RAN(103/104/105) 및/또는 코어 네트워크(106/107/109)는, RAN(103/104/105)과 동일한 RAT 또는 상이한 RAT를 활용하는 다른 RAN과 직접적으로 또는 간접적으로 통신할 수도 있다는 것을 알 수 있을 것이다. 예를 들면, E-UTRA 무선 기술을 활용할 수도 있는 RAN(103/104/105)에 연결되는 것 외에, 코어 네트워크(106/107/109)는 GSM 무선 기술을 활용하는 다른 RAN(도시되지 않음)과 또한 통신할 수도 있다.
코어 네트워크(106/107/109)는 WTRU(102a, 102b, 102c, 102d)가 PSTN(108), 인터넷(110), 및/또는 기타 네트워크(112)에 액세스하는 데 게이트웨이로서 또한 기능할 수도 있다. PSTN(108)은, 기존 전화 서비스(plain old telephone service; POTS)를 제공하는 회선 교환 전화 네트워크(circuit-switched telephone network)를 포함할 수도 있다. 인터넷(110)은, TCP/IP(transmission control protocol/internet protocol; 전송 제어 프로토콜/인터넷 프로토콜) 일군(suite)에서의 TCP, 유저 데이터그램 프로토콜(user datagram protocol; UDP) 및 IP와 같은 일반적인 통신 프로토콜을 사용하는 상호 접속된 컴퓨터 네트워크 및 디바이스의 글로벌 시스템을 포함할 수도 있다. 네트워크(112)는 다른 서비스 공급자에 의해 소유되는 및/또는 운영되는 유선 또는 무선 통신 네트워크를 포함할 수도 있다. 예를 들면, 네트워크(112)는, RAN(103/104/105)과 동일한 RAT 또는 상이한 RAT를 활용할 수도 있는 하나 이상의 RAN에 연결되는 다른 코어 네트워크를 포함할 수도 있다.
통신 시스템(100)에서의 WTRU(102a, 102b, 102c, 102d) 중 일부 또는 전체는 다중 모드 성능을 포함할 수도 있다, 예를 들면, WTRU(102a, 102b, 102c, 102d)는 상이한 무선 링크를 통해 상이한 무선 네트워크와 통신하기 위한 다수의 트랜스시버를 포함할 수도 있다. 예를 들면, 도 6a에서 도시되는 WTRU(102c)는, 셀룰러 기반 무선 기술을 활용할 수도 있는 기지국(114a)과, 그리고 IEEE 802 무선 기술을 활용할 수도 있는 기지국(114b)과 통신하도록 구성될 수도 있다.
도 6b는 예시적인 WTRU(102)의 시스템 도면이다. 도 6b에서 도시되는 바와 같이, WTRU(102)는 프로세서(118), 트랜스시버(120), 송신/수신 엘리먼트(122), 스피커/마이크(124), 키패드(126), 디스플레이/터치패드(128), 비착탈식 메모리(130), 착탈식 메모리(132), 전원(134), 글로벌 포지셔닝 시스템(global positioning system; GPS) 칩셋(136), 및 다른 주변장치(138)를 포함할 수도 있다. WTRU(102)는 상기 엘리먼트의 임의의 부조합을 포함할 수도 있다는 것이 인식될 것이다. 또한, 기지국(114a 및 114b), 및/또는, 기지국(114a 및 114b)이 나타낼 수도 있는 노드, 예컨대, 다른 것들 중에서도, 기지국 트랜스시버(BTS), 노드 B, 사이트 컨트롤러, 액세스 포인트(AP), 홈 노드 B, 진화형 홈 노드 B(eNodeB), 홈 진화형 노드 B(home evolved node-B; HeNB), 홈 진화형 노드 B 게이트웨이, 프록시 노드(이들로 한정되지는 않음)는, 도 6b에서 묘사되고 본원에서 설명되는 엘리먼트 중 일부 또는 전체를 포함할 수도 있다.
프로세서(118)는 범용 프로세서, 특수 목적의 프로세서, 종래의 프로세서, 디지털 신호 프로세서(digital signal processor; DSP), 복수의 마이크로프로세서, DSP 코어와 관련하는 하나 이상의 마이크로프로세서, 컨트롤러, 마이크로컨트롤러, 주문형 반도체(Application Specific Integrated Circuit; ASIC), 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array; FPGA) 회로, 임의의 다른 타입의 집적 회로(integrated circuit; IC), 상태 머신, 및 등등일 수도 있다. 프로세서(118)는 신호 코딩, 데이터 프로세싱, 전력 제어, 입/출력 프로세싱, 및/또는 WTRU(102)가 무선 환경에서 동작하는 것을 가능하게 하는 임의의 다른 기능성(functionality)을 수행할 수도 있다. 프로세서(118)는, 송신/수신 엘리먼트(122)에 커플링될 수도 있는 트랜스시버(120)에 커플링될 수도 있다. 도 6b가 프로세서(118) 및 트랜스시버(118)를 개별 컴포넌트로서 묘사하지만, 프로세서(120) 및 트랜스시버(120)는 전자적 패키지 또는 칩에 함께 집적될 수도 있다는 것을 알 수 있을 것이다.
송신/수신 엘리먼트(122)는 무선 인터페이스(115/116/117)를 통해 기지국(예를 들면, 기지국(114a))으로 신호를 송신하도록, 또는 그 기지국으로부터 신호를 수신하도록 구성될 수도 있다. 예를 들면, 송신/수신 엘리먼트(122)는 RF 신호를 송신하도록 및/또는 수신하도록 구성되는 안테나일 수도 있다. 송신/수신 엘리먼트(122)는, 예를 들면, IR, UV, 또는 가시광 신호를 송신하도록 및/또는 수신하도록 구성되는 방출기/검출기일 수도 있다. 송신/수신 엘리먼트(122)는 RF 및 광 신호 둘 다를 송신 및 수신하도록 구성될 수도 있다. 송신/수신 엘리먼트(122)는 무선 신호의 임의의 조합을 송신하도록 및/또는 수신하도록 구성될 수도 있다는 것을 알 수 있을 것이다.
또한, 비록 송신/수신 엘리먼트(122)가 도 6b에서는 단일의 엘리먼트로서 묘사되지만, WTRU(122)는 임의의 수의 송신/수신 엘리먼트(102)를 포함할 수도 있다. 더 구체적으로는, WTRU(102)는 MIMO 기술을 활용할 수도 있다. 따라서, WTRU(102)는, 무선 인터페이스(115/116/117)를 통해 무선 신호를 송신 및 수신하기 위한 둘 이상의 송신/수신 엘리먼트(122)(예를 들면, 다수의 안테나)를 포함할 수도 있다.
트랜스시버(120)는, 송신/수신 엘리먼트(122)에 의해 송신될 신호를 변조하도록 그리고 송신/수신 엘리먼트(122)에 의해 수신되는 신호를 복조하도록 구성될 수도 있다. 상기에서 언급되는 바와 같이, WTRU(102)는 다중 모드 성능을 가질 수도 있다. 따라서, 트랜스시버(120)는, WTRU(102)가, 예를 들면, UTRA 및 IEEE 802.11과 같은 다수의 RAT를 통해 통신하는 것을 가능하게 하기 위한 다수의 트랜스시버를 포함할 수도 있다.
WTRU(102)의 프로세서(118)는, 스피커/마이크(124), 키패드(126), 및/또는 디스플레이/터치패드(128)(예를 들면, 액정 디스플레이(liquid crystal display; LCD) 디스플레이 유닛 또는 유기 발광 다이오드(organic light- emitting diode; OLED) 디스플레이 유닛)에 커플링될 수도 있고, 그리고 이들로부터 유저 입력 데이터를 수신할 수도 있다. 프로세서(118)는 유저 데이터를 스피커/마이크(124), 키패드(126), 및/또는 디스플레이/터치패드(128)로 또한 출력할 수도 있다. 또한, 프로세서(118)는, 비착탈식 메모리(130) 및/또는 착탈식 메모리(132)와 같은 임의의 타입의 적절한 메모리의 정보에 액세스할 수도 있고, 그리고 그 임의의 타입의 적절한 메모리에 데이터를 저장할 수도 있다. 비착탈식 메모리(130)는 랜덤 액세스 메모리(random-access memory; RAM), 리드 온리 메모리(read-only memory; ROM), 하드디스크, 또는 임의의 다른 타입의 메모리 스토리지 디바이스를 포함할 수도 있다. 착탈식 메모리(132)는 가입자 식별 모듈(subscriber identity module; SIM) 카드, 메모리 스틱, 시큐어 디지털(secure digital; SD) 메모리 카드, 및 등등을 포함할 수도 있다. 프로세서(118)는 WTRU(102) 상에, 예컨대 서버 또는 가정용 컴퓨터(도시되지 않음) 상에 물리적으로 위치되지 않는 메모리의 정보에 액세스할 수도 있고, 그리고 그 메모리에 데이터를 저장할 수도 있다.
프로세서(118)는 전원(134)으로부터 전력을 수신할 수도 있고, WTRU(102)의 다른 컴포넌트로 전력을 분배하도록 및/또는 그 전력을 제어하도록 구성될 수도 있다. 전원(134)은 WTRU(102)에 전력을 공급하기 위한 임의의 적절한 디바이스일 수도 있다. 예를 들면, 전원(134)은 하나 이상의 드라이 셀 배터리(예를 들면, 니켈 카드뮴(NiCd), 니켈 아연(NiZn), 니켈 금속 수소(NiMH), 리튬 이온(Li ion), 등등), 솔라 셀, 연료 전지 등등을 포함할 수도 있다.
프로세서(118)는, WTRU(102)의 현재 위치에 관한 위치 정보(예를 들면, 경도 및 위도)를 제공하도록 구성될 수도 있는 GPS 칩셋(136)에 또한 커플링될 수도 있다. 또한, GPS 칩셋(136)으로부터의 정보 외에, 또는 그 정보 대신, WTRU(102)는 무선 인터페이스(115/116/117)를 통해 기지국(예를 들면, 기지국(114a, 114b))으로부터 위치 정보를 수신할 수도 있고 및/또는 두 개 이상의 인근의 기지국으로부터 수신되고 있는 신호의 타이밍에 기초하여 자신의 위치를 결정할 수도 있다. WTRU(102)는 임의의 적절한 위치 결정 방법을 통해 위치 정보를 획득할 수도 있다는 것을 알 수 있을 것이다.
프로세서(118)는, 추가적인 피쳐, 기능성, 및/또는 유선 또는 무선 연결성을 제공하는 하나 이상의 소프트웨어 및/또는 하드웨어 모듈을 포함할 수도 있는 기타 주변장치(138)에 추가로 커플링될 수도 있다. 예를 들면, 주변장치(138)는 가속도계, 전자 콤파스, 위성 트랜스시버, (사진 및 비디오용의) 디지털 카메라, 범용 직렬 버스(universal serial bus; USB) 포트, 진동 디바이스, 텔레비전 트랜스시버, 핸즈프리 헤드셋, Bluetooth® 모듈, 주파수 변조(frequency modulated; FM) 무선 유닛, 디지털 뮤직 플레이어, 미디어 플레이어, 비디오 게임 플레이어 모듈, 인터넷 브라우저, 및 등등을 포함할 수도 있다.
도 6c는 코어 네트워크(106) 및 RAN(103)의 시스템 도면이다. 상기에서 언급되는 바와 같이, RAN(103)은 무선 인터페이스(115)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위해 UTRA 무선 기술을 활용할 수도 있다. RAN(103)은 코어 네트워크(106)와 또한 통신할 수도 있다. 도 6c에서 도시되는 바와 같이, RAN(103)은, 무선 인터페이스(115)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위한 하나 이상의 트랜스시버를 각각 포함할 수도 있는 노드 B(140a, 140b, 140c)를 포함할 수도 있다. 노드 B(140a, 140b, 140c) 각각은 RAN(103) 내의 특정 셀(도시되지 않음)과 관련될 수도 있다. RAN(103)은 RNC(142a, 142b)를 또한 포함할 수도 있다. RAN(103)은, 한 실시형태와 여전히 부합하면서, 임의의 수의 노드 B 및 RNC를 포함할 수도 있다는 것을 알 수 있을 것이다.
도 6c에서 도시되는 바와 같이, 노드 B(140a, 140b)는 RNC(142a)와 통신할 수도 있다. 추가적으로, 노드 B(140c)는 RNC(142b)와 통신할 수도 있다. 노드 B(140a, 140b, 140c)는 Iub 인터페이스를 통해 각각의 RNC(142a, 142b)와 통신할 수도 있다. RNC(142a, 142b)는 Iur 인터페이스를 통해 서로 통신할 수도 있다. RNC(142a, 142b)의 각각은, 자신이 연결되는 각각의 노드 B(140a, 140b, 140c)를 제어하도록 구성될 수도 있다. 또한, RNC(142a, 142b)의 각각은 다른 기능성, 예컨대 외부 루프 전력 제어, 부하 제어, 수락 제어(admission control), 패킷 스케줄링, 핸드오버 제어, 매크로 다이버시티, 보안 기능, 데이터 암호화, 및 등등을 수행하도록 또는 지원하도록 구성될 수도 있다.
도 6c에서 도시되는 코어 네트워크(106)는, 미디어 게이트웨이(media gateway; MGW)(144), 모바일 스위칭 센터(mobile switching center; MSC)(146), 서빙 GPRS 지원 노드(serving GPRS support node; SGSN)(148), 및/또는 게이트웨이 GPRS 지원 노드(gateway GPRS support node; GGSN)(150)를 포함할 수도 있다. 상기 엘리먼트의 각각이 코어 네트워크(106)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 오퍼레이터 이외의 엔티티에 의해 소유될 수도 있고 및/또는 운영될 수도 있다는 것을 알 수 있을 것이다.
RAN(103)에서의 RNC(142a)는 IuCS 인터페이스를 통해 코어 네트워크(106)의 MSC(146)에 연결될 수도 있다. MSC(146)는 MGW(144)에 연결될 수도 있다. MSC(146) 및 MGW(144)는, WTRU(102a, 102b, 102c)와 전통적인 지상 회선(land-line) 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
RAN(103)에서의 RNC(142a)는 IuPS 인터페이스를 통해 코어 네트워크(106)의 SGSN(148)에 또한 연결될 수도 있다. SGSN(148)은 GGSN(150)에 연결될 수도 있다. SGSN(148) 및 GGSN(150)은, WTRU(102a, 102b, 102c)와 IP 대응 디바이스(IP-enabled device) 사이의 통신을 용이하게 하기 위해, 패킷 교환 네트워크, 예컨대 인터넷(110)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
상기에서 언급되는 바와 같이, 코어 네트워크(106)는, 다른 서비스 공급자에 의해 소유되는 및/또는 운영되는 다른 유선 또는 무선 네트워크를 포함할 수도 있는 네트워크(112)에 또한 연결될 수도 있다.
도 6d는 한 실시형태에 따른 RAN(104) 및 코어 네트워크(107)의 시스템 도면이다. 상기에서 언급되는 바와 같이, RAN(104)은 무선 인터페이스(116)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위해 E-UTRA 무선 기술을 활용할 수도 있다. RAN(104)은 코어 네트워크(107)와 또한 통신할 수도 있다.
RAN(104)은 eNode B(160a, 160b, 160c)를 포함할 수도 있지만, RAN(104)은 한 실시형태와 여전히 부합하면서 임의의 수의 eNode B를 포함할 수도 있다는 것을 알 수 있을 것이다. eNode B(160a, 160b, 160c) 각각은 무선 인터페이스(116)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위한 하나 이상의 트랜스시버를 포함할 수도 있다. 하나의 실시형태에서, eNode B(160a, 160b, 160c)는 MIMO 기술을 구현할 수도 있다. 따라서, eNode B(160a)는, 예를 들면, WTRU(102a)로 무선 신호를 송신하고 WTRU(102a)로부터 무선 신호를 수신하기 위해 다수의 안테나를 사용할 수도 있다.
eNode B(160a, 160b, 160c)의 각각은 특정 셀(도시되지 않음)과 관련될 수도 있고 무선 리소스 관리 결정, 핸드오버 결정, 업링크 및/또는 다운링크에서의 유저의 스케줄링, 및 등등을 핸들링하도록 구성될 수도 있다. 도 6d에서 도시되는 바와 같이, eNode B(160a, 160b, 160c)는 X2 인터페이스를 통해 서로 통신할 수도 있다.
도 6d에서 도시되는 코어 네트워크(107)는 이동성 관리 엔티티 게이트웨이(mobility management entity gateway; MME)(162), 서빙 게이트웨이(164), 및 패킷 데이터 네트워크(packet data network; PDN) 게이트웨이(166)를 포함할 수도 있다. 상기 엘리먼트의 각각이 코어 네트워크(107)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 오퍼레이터 이외의 엔티티에 의해 소유될 수도 있고 및/또는 운영될 수도 있다는 것을 알 수 있을 것이다.
MME(162)는 S1 인터페이스를 통해 RAN(104) 내의 eNode B(160a, 160b, 160c)의 각각에 연결될 수도 있고 제어 노드로서 기능할 수도 있다. 예를 들면, MME(162)는 WTRU(102a, 102b, 102c)의 유저를 인증하는 것, 베어러 활성/비활성, WTRU(102a, 102b, 102c)의 초기 연결 동안 특정한 서빙 게이트웨이를 선택하는 것, 및 등등을 담당할 수도 있다. MME(162)는, GSM 또는 WCDMA와 같은 다른 무선 기술을 활용하는 다른 RAN(도시되지 않음)과 RAN(104) 사이를 스위칭하기 위한 제어 평면 기능(control plane function)을 또한 제공할 수도 있다.
서빙 게이트웨이(164)는 S1 인터페이스를 통해 RAN(104) 내의 eNode B(160a, 160b, 160c)의 각각에 연결될 수도 있다. 서빙 게이트웨이(164)는 일반적으로 유저 데이터 패킷을, WTRU(102a, 102b, 102c)로/로부터 라우팅하고 포워딩할 수도 있다. 서빙 게이트웨이(164)는 다른 기능, 예컨대 eNode B간 핸드오버(inter-eNode B handover) 동안 유저 평면(user plane)을 앵커링하는 것, 다운링크 데이터가 WTRU(102a, 102b, 102c)에 대해 이용가능할 때 페이징을 트리거하는 것, WTRU(102a, 102b, 102c)의 컨텍스트(context)를 관리하고 저장하는 것, 및 등등을 또한 수행할 수도 있다.
서빙 게이트웨이(164)는, WTRU(102a, 102b, 102c)와 IP 대응 디바이스 사이의 통신을 용이하게 하기 위해, 인터넷(110)과 같은 패킷 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에 제공할 수도 있는 PDN 게이트웨이(166)에 또한 연결될 수도 있다.
코어 네트워크(107)는 다른 네트워크와의 통신을 용이하게 할 수도 있다. 예를 들면, 코어 네트워크(107)는, WTRU(102a, 102b, 102c)와 전통적인 지상 회선 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다. 예를 들면, 코어 네트워크(107)는, 코어 네트워크(107)와 PSTN(108) 사이의 인터페이스로서 기능하는 IP 게이트웨이(예를 들면, IP 멀티미디어 서브시스템(IP multimedia subsystem; IMS) 서버)를 포함할 수도 있거나, 또는 그 IP 게이트웨이와 통신할 수도 있다. 또한, 코어 네트워크(107)는, 다른 서비스 공급자에 의해 소유되는 및/또는 운영되는 다른 유선 또는 무선 네트워크를 포함할 수도 있는 네트워크(112)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
도 6e는 한 실시형태에 따른 RAN(105) 및 코어 네트워크(109)의 시스템 도면이다. RAN(105)은, 무선 인터페이스(117)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위해 IEEE 802.16 무선 기술을 활용하는 액세스 서비스 네트워크(access service network; ASN)일 수도 있다. 하기에서 더 논의되는 바와 같이, WTRU(102a, 102b, 102c), RAN(105), 및 코어 네트워크(109)의 상이한 기능적 엔티티 사이의 통신 링크는 참조 포인트(reference point)로서 정의될 수도 있다.
도 6e에서 도시되는 바와 같이, RAN(105)은 기지국(180a, 180b, 180c), 및 ASN 게이트웨이(105)를 포함할 수도 있지만, RAN(182)은, 한 실시형태와 여전히 부합하면서, 임의의 수의 기지국 및 ASN 게이트웨이를 포함할 수도 있다는 것을 알 수 있을 것이다. 기지국(180a, 180b, 180c) 각각은, RAN(105) 내의 특정한 셀(도시되지 않음)과 관련될 수도 있고 무선 인터페이스(117)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위한 하나 이상의 트랜스시버를 포함할 수도 있다. 하나의 실시형태에서, 기지국(180a, 180b, 180c)은 MIMO 기술을 구현할 수도 있다. 따라서, 기지국(180a)은, 예를 들면, WTRU(102a)로 무선 신호를 송신하기 위해, 그리고 WTRU(102a)로부터 무선 신호를 수신하기 위해 다수의 안테나를 사용할 수도 있다. 기지국(180a, 180b, 180c)은 또한, 핸드오프 트리거링(handoff triggering), 터널 확립, 무선 리소스 관리, 트래픽 분류, 서비스 품질(quality of service; QoS) 정책 강화(enforcement), 및 등등과 같은 이동성 관리 기능을 제공할 수도 있다. ASN 게이트웨이(182)는 트래픽 애그리게이션 포인트로서 기능할 수도 있으며 페이징, 가입자 프로파일의 캐싱, 코어 네트워크(109)로의 라우팅, 및 등등을 담당할 수도 있다.
WTRU(102a, 102b, 102c)와 RAN(105) 사이의 무선 인터페이스(117)는, IEEE 802.16 명세(specification)를 구현하는 R1 참조 포인트로서 정의될 수도 있다. 또한, WTRU(102a, 102b, 102c)의 각각은 코어 네트워크(109)와의 논리 인터페이스(logical interface)(도시되지 않음)를 확립할 수도 있다. WTRU(102a, 102b, 102c)와 코어 네트워크(109) 사이의 논리 인터페이스는 R2 참조 포인트로서 정의될 수도 있는데, R2 참조 포인트는 인증(authentication), 인가(authorization), IP 호스트 구성 관리, 및/또는 이동성 관리를 위해 사용될 수도 있다.
기지국(180a, 180b, 180c) 각각의 사이의 통신 링크는, WTRU 핸드오버 및 기지국 사이의 데이터의 전송을 용이하게 하기 위한 프로토콜을 포함하는 R8 참조 포인트로서 정의될 수도 있다. 기지국(180a, 180b, 180c)과 ASN 게이트웨이(182) 사이의 통신 링크는 R6 참조 포인트로서 정의될 수도 있다. R6 참조 포인트는 WTRU(102a, 102b, 102c)의 각각과 관련되는 이동성 이벤트에 기초하여 이동성 관리를 용이하게 하기 위한 프로토콜을 포함할 수도 있다.
도 6e에서 도시되는 바와 같이, RAN(105)은 코어 네트워크(109)에 연결될 수도 있다. RAN(105)과 코어 네트워크(109) 사이의 통신 링크는, 예를 들면, 데이터 전송 및 이동성 관리 성능을 용이하게 하기 위한 프로토콜을 포함하는 R3 참조 포인트로서 정의될 수도 있다. 코어 네트워크(109)는 모바일 IP 홈 에이전트(mobile IP home agent; MIP-HA)(184), 인증, 인가, 어카운팅(authentication, authorization, accounting; AAA) 서버(186), 및 게이트웨이(188)를 포함할 수도 있다. 상기 엘리먼트의 각각이 코어 네트워크(109)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 오퍼레이터 이외의 엔티티에 의해 소유될 수도 있고 및/또는 운영될 수도 있다는 것을 알 수 있을 것이다.
MIP-HA는 IP 어드레스 관리를 담당할 수도 있고, WTRU(102a, 102b, 102c)가 상이한 ASN 및/또는 상이한 코어 네트워크 사이에서 로밍하는 것을 가능하게 할 수도 있다. MIP-HA(184)는, WTRU(102a, 102b, 102c)와 IP 대응 디바이스 사이의 통신을 용이하게 하기 위해, 패킷 교환 네트워크, 예컨대 인터넷(110)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다. AAA 서버(186)는 유저 인증 및 유저 서비스 지원을 담당할 수도 있다. 게이트웨이(188)는 다른 네트워크와의 상호 연동(interworking)을 용이하게 할 수도 있다. 예를 들면, 게이트웨이(188)는, WTRU(102a, 102b, 102c)와 전통적인 지상 회선 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다. 또한, 게이트웨이(188)는, 다른 서비스 공급자에 의해 소유되는 및/또는 운영되는 다른 유선 또는 무선 네트워크를 포함할 수도 있는 네트워크(112)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
비록 도 6e에서 도시되지는 않지만, RAN(105)은 다른 ASN에 연결될 수도 있고 코어 네트워크(109)는 다른 코어 네트워크에 연결될 수도 있다는 것을 알 수 있을 것이다. RAN(105)과 다른 ASN 사이의 통신 링크는 R4 참조 포인트로서 정의될 수도 있는데, R4 참조 포인트는 RAN(105)과 다른 ASN 사이에서 WTRU(102a, 102b, 102c)의 이동성을 조정하기(coordinating) 위한 프로토콜을 포함할 수도 있다. 코어 네트워크(109)와 다른 코어 네트워크 사이의 통신 링크는 R5 참조로서 정의될 수도 있는데, 이것은 홈 코어 네트워크와 방문 코어 네트워크(visited core network) 사이의 상호 연동을 용이하게 하기 위한 프로토콜을 포함할 수도 있다.
피쳐 및 엘리먼트가 특정 조합으로 상기에서 설명되었지만, 기술 분야에서 통상의 지식을 가진 자라면, 각각의 피쳐 또는 엘리먼트는 단독으로 사용될 수 있거나 또는 다른 피쳐 및 엘리먼트와의 임의의 조합으로 사용될 수 있다는 것을 알 수 있을 것이다. 또한, 본원에서 설명되는 방법은, 컴퓨터 또는 프로세서에 의한 실행을 위해 컴퓨터 판독가능 매체에 통합되는 컴퓨터 프로그램, 소프트웨어, 또는 펌웨어로 구현될 수도 있다. 컴퓨터 판독가능 매체의 예는 전자 신호(유선 또는 무선 연결을 통해 송신됨) 및 컴퓨터 판독가능 저장 매체를 포함한다. 컴퓨터 판독가능 저장 매체의 예는, 리드 온리 메모리(ROM), 랜덤 액세스 메모리(RAM), 레지스터, 캐시 메모리, 반도체 메모리 디바이스, 내장 하드 디스크 및 착탈식 디스크와 같은 자기 매체, 광자기 매체, 및 CD-ROM 디스크 및 디지털 다기능 디스크(digital versatile disk; DVD)와 같은 광학 매체를 포함하지만, 그러나 이들로 제한되는 것은 아니다. 소프트웨어와 관련하는 프로세서는, WTRU, UE, 단말, 기지국, RNC, 또는 임의의 호스트 컴퓨터에서 사용하기 위한 무선 주파수 트랜스시버를 구현하기 위해 사용될 수도 있다.

Claims (20)

  1. 무선 송수신 유닛(wireless transmit/receive unit; WTRU)을 사용하여 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 방법으로서,
    상기 WTRU에서, 미디어 프리젠테이션 디스크립션(media presentation description; MPD) 파일을 수신하는 단계;
    상기 WTRU로부터, 상기 MPD 파일에 기초하여 미디어 세그먼트에 대한 하이퍼텍스트 전송 프로토콜(hypertext transfer protocol; HTTP) GET 요청을 전송하는 단계;
    상기 WTRU에서, 콘텐츠 서버로부터 상기 미디어 세그먼트를 수신하는 단계;
    상기 WTRU에서, 상기 수신된 미디어 세그먼트에 대한 인증 해시를 결정하는 단계; 및
    상기 WTRU로부터, 상기 수신된 미디어 세그먼트와 연관된 서버 제공 해시(server-provided hash)에 대한 요청 - 상기 서버 제공 해시에 대한 요청은 상기 인증 해시를 포함함 - 을 포함하는 HTTP 요청 메시지를 전송하는 단계
    를 포함하는, 무선 송수신 유닛(WTRU)을 사용하여 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 방법.
  2. 제1항에 있어서,
    상기 수신된 미디어 세그먼트를 제공한 상기 콘텐츠 서버의 IP 어드레스, WTRU 위치 정보, 셀 타워 식별 정보, 무선 액세스 포인트 식별자, 또는 신호 세기 중 하나를 포함하는 상기 HTTP 요청 메시지에서의 적어도 하나의 진단 파라미터를 전송하는 단계를 더 포함하는, 무선 송수신 유닛(WTRU)을 사용하여 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 인증 해시를 URL 파라미터 안으로 임베딩하는 단계를 더 포함하는, 무선 송수신 유닛(WTRU)을 사용하여 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 방법.
  5. 제1항에 있어서,
    HTTP 헤더를 결정하는 단계를 더 포함하고, 상기 인증 해시를 전송하는 단계는, 상기 HTTP 헤더를 사용하여 상기 HTTP 요청 메시지에서의 상기 인증 해시를 전송하는 단계를 더 포함하는 것인, 무선 송수신 유닛(WTRU)을 사용하여 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 방법.
  6. 제1항에 있어서,
    상기 서버 제공 해시가 이용 가능한지의 여부의 표시를 포함하는 HTTP 응답 메시지 또는 오류 메시지를 수신하는 단계를 더 포함하는, 무선 송수신 유닛(WTRU)을 사용하여 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 방법.
  7. 제1항에 있어서,
    상기 WTRU로부터, 키에 대한 요청을 전송하는 단계;
    상기 WTRU에 의해, 상기 키를 포함하는 응답을 수신하는 단계
    를 더 포함하고,
    상기 인증 해시를 결정하는 단계는, 상기 키를 사용하여 상기 인증 해시를 결정하는 단계를 더 포함하는 것인, 무선 송수신 유닛(WTRU)을 사용하여 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 방법.
  8. 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU)으로서,
    프로세서를 포함하고,
    상기 프로세서는,
    상기 WTRU에서, 미디어 프리젠테이션 디스크립션(MPD) 파일을 수신하기 위한;
    상기 WTRU로부터, 상기 MPD 파일에 기초하여 미디어 세그먼트에 대한 하이퍼텍스트 전송 프로토콜(HTTP) GET 요청을 전송하기 위한;
    상기 WTRU에서, 콘텐츠 서버로부터 상기 미디어 세그먼트를 수신하기 위한;
    상기 WTRU에서, 상기 수신된 미디어 세그먼트에 대한 인증 해시를 결정하기 위한; 그리고
    상기 WTRU로부터, 상기 수신된 미디어 세그먼트와 연관된 서버 제공 해시(server-provided hash)에 대한 요청 - 상기 서버 제공 해시에 대한 요청은 상기 인증 해시를 포함함 - 을 포함하는 HTTP 요청 메시지를 전송하기 위한
    실행 가능 명령어로 프로그래밍되는 것인, 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU).
  9. 제8항에 있어서,
    상기 프로세서는, 상기 수신된 미디어 세그먼트를 제공한 상기 콘텐츠 서버의 IP 어드레스, WTRU 위치 정보, 셀 타워 식별 정보, 무선 액세스 포인트 식별자, 또는 신호 세기 중 하나를 포함하는 상기 HTTP 요청 메시지에서의 적어도 하나의 진단 파라미터를 전송하기 위한 실행 가능 명령어들을 더 포함하는 것인, 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU).
  10. 제8항에 있어서,
    상기 프로세서는, 상기 HTTP 요청 메시지를 암호화하기 위한 실행 가능한 명령어를 더 포함하는 것인, 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU).
  11. 삭제
  12. 제8항에 있어서,
    상기 프로세서는, URL 파라미터 안으로 상기 인증 해시를 임베딩하기 위한 실행 가능 명령어를 더 포함하는 것인, 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU).
  13. 제8항에 있어서,
    상기 프로세서는, HTTP 헤더를 결정하기 위한 실행 가능 명령어를 더 포함하고, 상기 인증 해시를 전송하기 위한 상기 실행 가능 명령어는, 상기 HTTP 헤더를 사용하여 상기 HTTP 요청 메시지에서의 상기 인증 해시를 전송하는 것을 더 포함하는 것인, 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU).
  14. 제8항에 있어서,
    상기 프로세서는, 상기 서버 제공 해시가 이용 가능한지의 여부의 표시를 포함하는 HTTP 응답 메시지 또는 오류 메시지를 수신하기 위한 실행 가능 명령어를 더 포함하는 것인, 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU).
  15. 제8항에 있어서,
    상기 프로세서는,
    상기 WTRU로부터, 키에 대한 요청을 전송하기 위한;
    상기 WTRU에 의해, 상기 키를 포함하는 응답을 수신하기 위한
    실행 가능 명령어를 더 포함하고,
    상기 인증 해시를 결정하기 위한 상기 실행 가능 명령어는 상기 키를 사용하여 상기 인증 해시를 결정하는 것을 더 포함하는 것인, 비디오 콘텐츠를 적응적으로 스트리밍하기 위한 무선 송수신 유닛(WTRU).
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020177032475A 2015-04-24 2016-04-22 적응형 스트리밍에서의 중간자 공격 검출 KR102599560B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562152620P 2015-04-24 2015-04-24
US62/152,620 2015-04-24
PCT/US2016/028833 WO2016172473A1 (en) 2015-04-24 2016-04-22 Detecting man-in-the-middle attacks in adaptive streaming

Publications (2)

Publication Number Publication Date
KR20180009741A KR20180009741A (ko) 2018-01-29
KR102599560B1 true KR102599560B1 (ko) 2023-11-06

Family

ID=55910409

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177032475A KR102599560B1 (ko) 2015-04-24 2016-04-22 적응형 스트리밍에서의 중간자 공격 검출

Country Status (6)

Country Link
US (3) US10587630B2 (ko)
EP (1) EP3286897B1 (ko)
KR (1) KR102599560B1 (ko)
CN (1) CN107567702B (ko)
TW (1) TWI750114B (ko)
WO (1) WO2016172473A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10681416B2 (en) * 2015-02-04 2020-06-09 Nippon Telegraph And Telephone Corporation Quality-of-experience optimization system, quality-of-experience optimization apparatus, recommend request apparatus, quality-of-experience optimization method, recommend request method, and program
US10205991B2 (en) * 2015-07-27 2019-02-12 Sony Corporation Hidden replaceable media slots
WO2017066506A1 (en) * 2015-10-14 2017-04-20 Arris Enterprises Llc High definition secure playback with downloadable drm for android platforms
US10439804B2 (en) * 2017-10-27 2019-10-08 EMC IP Holding Company LLC Data encrypting system with encryption service module and supporting infrastructure for transparently providing encryption services to encryption service consumer processes across encryption service state changes
CN108337219B (zh) * 2017-11-27 2021-12-28 中国电子科技集团公司电子科学研究院 一种物联网防入侵的方法和存储介质
US20200034515A1 (en) * 2018-07-27 2020-01-30 Comcast Cable Communications, Llc Digital rights management interface
US11373009B2 (en) * 2018-10-02 2022-06-28 Comcast Cable Communications, Llc Content playlist integrity
US11356715B2 (en) * 2018-12-28 2022-06-07 Tencent America LLC Dynamic shortening of advertisement duration during live streaming
CN111030986B (zh) * 2019-10-30 2022-10-21 安天科技集团股份有限公司 一种攻击组织溯源分析的方法、装置及存储介质
US11687386B2 (en) * 2020-10-07 2023-06-27 Tencent America LLC MPD validity expiration processing model
CN112562146B (zh) * 2020-10-29 2023-09-22 重庆恢恢信息技术有限公司 一种基于智慧云平台实现建筑工地人员流动方法
CN114598483A (zh) * 2020-11-20 2022-06-07 华为技术有限公司 一种完整性校验方法及相关设备
US20220376924A1 (en) * 2021-05-20 2022-11-24 International Business Machines Corporation Header for conveying trustful client address
WO2023180907A1 (en) * 2022-03-24 2023-09-28 Four Drobotics Corporation System and method for detection of cybersecurity threats

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130144714A1 (en) * 2010-08-05 2013-06-06 Huawei Technologies Co., Ltd. Method, Apparatus and System for Supporting Advertisement Contents in HTTP Streaming Play Mode
US20140096271A1 (en) * 2012-09-28 2014-04-03 Futurewei Technologies, Inc. Segment Authentication for Dynamic Adaptive Streaming

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7363361B2 (en) * 2000-08-18 2008-04-22 Akamai Technologies, Inc. Secure content delivery system
US20020044662A1 (en) * 2000-08-22 2002-04-18 Jonathan Sowler Service message management system and method
US7356838B2 (en) * 2001-06-06 2008-04-08 Yahoo! Inc. System and method for controlling access to digital content, including streaming media
US20040122962A1 (en) * 2002-12-24 2004-06-24 Difalco Robert A. Service environment integrity based service selection
JP2004304304A (ja) * 2003-03-28 2004-10-28 Fujitsu Ltd 電子署名生成方法,電子署名検証方法,電子署名生成依頼プログラム,及び電子署名検証依頼プログラム
US7774499B1 (en) * 2003-10-30 2010-08-10 United Online, Inc. Accelerating network communications
US7487353B2 (en) * 2004-05-20 2009-02-03 International Business Machines Corporation System, method and program for protecting communication
US8087069B2 (en) * 2005-06-13 2011-12-27 Nokia Corporation Method, apparatus and computer program product providing bootstrapping mechanism selection in generic bootstrapping architecture (GBA)
US9544259B2 (en) * 2006-11-08 2017-01-10 Open Invention Network, Llc Apparatus and method for dynamic streaming of multimedia files
US8837465B2 (en) * 2008-04-02 2014-09-16 Twilio, Inc. System and method for processing telephony sessions
US20130042100A1 (en) * 2011-08-09 2013-02-14 Nokia Corporation Method and apparatus for forced playback in http streaming
EP2761955B1 (en) 2011-09-30 2017-07-26 Interdigital Patent Holdings, Inc. Device communication using a reduced channel bandwidth
CN104012049B (zh) * 2011-10-13 2016-12-07 交互数字专利控股公司 用于在内容递送网络之间提供接口的方法和设备
US9055043B2 (en) * 2011-11-10 2015-06-09 Qualcomm Incorporated Adaptive media sharing
ES2611362T3 (es) * 2012-04-25 2017-05-08 Huawei Technologies Co., Ltd. Sistemas y métodos para la integridad y autenticidad de segmentos para transmisión adaptativa en continuo
WO2013184248A1 (en) * 2012-04-27 2013-12-12 Huawei Technologies Co., Ltd. Support for short cryptoperiods in template mode
US8973124B2 (en) * 2012-04-30 2015-03-03 General Electric Company Systems and methods for secure operation of an industrial controller
US20130297934A1 (en) * 2012-05-02 2013-11-07 Nokia Siemens Networks Oy Method and apparatus
US10063606B2 (en) * 2012-06-12 2018-08-28 Taiwan Semiconductor Manufacturing Co., Ltd. Systems and methods for using client-side video buffer occupancy for enhanced quality of experience in a communication network
US9444794B2 (en) * 2012-07-03 2016-09-13 Futurewei Technologies, Inc. Low-latency secure segment encryption and authentication interface
TWI610554B (zh) 2012-07-10 2018-01-01 Vid衡器股份有限公司 無線傳輸/接收單元中內容切換/品質驅動切換的方法
US20140019635A1 (en) * 2012-07-13 2014-01-16 Vid Scale, Inc. Operation and architecture for dash streaming clients
US9203811B2 (en) 2012-10-09 2015-12-01 Futurewei Technologies, Inc. Authenticated encryption support in ISO/IEC 23009-4
US9607132B2 (en) * 2012-10-22 2017-03-28 Koninklijke Kpn N.V. Token-based validation method for segmented content delivery
US9603163B2 (en) 2012-11-01 2017-03-21 Lg Electronics Inc. Method and apparatus for supporting scheduling groups of devices characteristics in a wireless communication system
ES2645101T3 (es) 2013-01-17 2017-12-04 Intel IP Corporation Autentificación de URL de contenidos para dash
WO2014144679A2 (en) * 2013-03-15 2014-09-18 Brighttag, Inc. Method and apparatus for data matching and integration
US8953452B2 (en) * 2013-05-16 2015-02-10 Cisco Technology, Inc. Enhancing performance of rapid channel changes and other playback positioning changes in adaptive streaming
US9497180B2 (en) 2013-10-21 2016-11-15 Intel IP Corporation Content access authentication for dynamic adaptive streaming over hypertext transfer protocol
WO2015066066A1 (en) * 2013-10-28 2015-05-07 Futurewei Technologies, Inc. System and method for signaling and verifying url signatures for both url authentication and url-based content access authorization in adaptive streaming
EP3092772B1 (en) * 2014-01-07 2019-07-31 Nokia Technologies Oy Media encapsulating and decapsulating

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130144714A1 (en) * 2010-08-05 2013-06-06 Huawei Technologies Co., Ltd. Method, Apparatus and System for Supporting Advertisement Contents in HTTP Streaming Play Mode
US20140096271A1 (en) * 2012-09-28 2014-04-03 Futurewei Technologies, Inc. Segment Authentication for Dynamic Adaptive Streaming

Also Published As

Publication number Publication date
US11552964B2 (en) 2023-01-10
EP3286897B1 (en) 2020-09-09
CN107567702A (zh) 2018-01-09
EP3286897A1 (en) 2018-02-28
KR20180009741A (ko) 2018-01-29
WO2016172473A1 (en) 2016-10-27
US10587630B2 (en) 2020-03-10
CN107567702B (zh) 2021-01-12
TWI750114B (zh) 2021-12-21
US20160315956A1 (en) 2016-10-27
US20200169573A1 (en) 2020-05-28
TW201707426A (zh) 2017-02-16
US20230087873A1 (en) 2023-03-23

Similar Documents

Publication Publication Date Title
US11552964B2 (en) Detecting man-in-the-middle attacks in adaptive streaming
US10873579B2 (en) Dash-aware network application function (D-NAF)
KR101991192B1 (ko) Http를 통한 동적 적응형 스트리밍(dash)에서의 일반화된 http 헤더를 위한 시스템 및 방법
US9813404B2 (en) Content URL authentication for dash
WO2016172328A1 (en) Content protection and modification detection in adaptive streaming and transport streams
WO2016205674A1 (en) Dynamic adaptive contribution streaming
WO2017100569A1 (en) Trick mode restrictions for mpeg dash
TW201603568A (zh) 在典型廣播內容中媒體呈現描述傳訊

Legal Events

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