KR20160086854A - 네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법 및 그 장치 - Google Patents

네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법 및 그 장치 Download PDF

Info

Publication number
KR20160086854A
KR20160086854A KR1020167014022A KR20167014022A KR20160086854A KR 20160086854 A KR20160086854 A KR 20160086854A KR 1020167014022 A KR1020167014022 A KR 1020167014022A KR 20167014022 A KR20167014022 A KR 20167014022A KR 20160086854 A KR20160086854 A KR 20160086854A
Authority
KR
South Korea
Prior art keywords
session
traffic
network
bandwidth
sessions
Prior art date
Application number
KR1020167014022A
Other languages
English (en)
Other versions
KR102286957B1 (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 KR20160086854A publication Critical patent/KR20160086854A/ko
Application granted granted Critical
Publication of KR102286957B1 publication Critical patent/KR102286957B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup
    • H04L47/722Admission control; Resource allocation using reservation actions during connection setup at the destination endpoint, e.g. reservation of terminal resources or buffer space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • 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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44227Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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
    • 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]

Abstract

본 발명은 네트워크(N1)의 디바이스들(C1, C2, C3)의 지속적인 트래픽 세션들 사이에서 상기 네트워크(N1)의 사용 가능한 대역폭을 분배하기 위한 방법을 구현하도록 구성된 네트워크의 디바이스에 관한 것으로, 상기 디바이스는,
- 적어도 하나의 트래픽 세션을 수행하는 네트워크의 디바이스들(C1, C2, C3)로부터 상태 메시지들을 수집하는 통신 모듈(2),
- 상태 메시지들로부터 검색된 트래픽 세션들 및 디바이스들의 파라미터들에 따라 상기 지속적인 트래픽 세션들을 랭크하도록 구성된 랭킹 모듈(5),
- 각각의 랭크된 트래픽 세션에 할당되는 대역폭을, 사용 가능한 대역폭, 랭크된 트래픽 세션들의 랭크, 및 랭크된 트래픽 세션들의 유형의 함수로 결정하도록 구성된 계산기(6),
- 디바이스의 트래픽 세션에 할당되도록 결정된 대역폭이 0과 다른지를 확인할 수 있는 비교기(7)를 포함한다.

Description

네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법 및 그 장치{METHOD FOR DISTRIBUTING AVAILABLE BANDWIDTH OF A NETWORK AMONGST ONGOING TRAFFIC SESSIONS RUN BY DEVICES OF THE NETWORK, CORRESPONDING DEVICE}
본 발명은 일반적으로 예를 들어, 적응 스트리밍 클라이언트들을 포함하는 네트워크에서 대역폭 분배에 관한 것이지만, 이에 한정하지 않는다.
본 섹션은 기술의 다양한 양상을 독자에게 소개하기 위한 것이고, 아래에 설명 및/또는 청구되는 본 발명의 다양한 양상들에 관련될 수 있다. 본 논의는 본 발명의 다양한 양상들의 이해를 용이하게 하기 위하여 배경 정보를 독자에게 제공하는데 도움이 될 것으로 생각된다. 따라서, 이러한 양상에서 본 명세서가 판독되어야 하고 종래의 기술을 수용하는 것이 아님을 이해해야 한다.
HTTP 적응 기술은 인터넷에서 최고의 시청각 전달을 통해 제공할 수 있도록 다양한 이해 당사자에 의해 추진된다. 이러한 기술은, 클라이언트 디바이스가 소위 청크(chunk)라 불리우는 작은 연속적인 세그먼트들의 형태로 비디오를 수신할 수 있도록 한다(몇 초간). 각각의 세그먼트는 HTTP 프로토콜을 통해 요청되고, 클라이언트 디바이스가 언제든지 네트워크와 디바이스 제한을 매칭하는 적당한 비트 레이트를 선택할 있도록 서로 다른 변형들(소위 표현이라 칭함)에 존재할 수 있다.
이미 사용되는 HTTP 적응 스트리밍(HAS) 프로토콜들 중에, 가장 유명한 것은 애플사의 HTTP 라이브 스트리밍(HLS), 마이크로소프트사의 실버 라이트 스무스 스트리밍(SSS), 아도비사의 HTTP 다이내믹 스트리밍(HDS), 및 SA4 그룹 내에서 3GPP에 의해 시작하여 MPEG에 의해 개발된 HTTP(DASH)를 통한 다이내믹 적응 스트리밍이다. 이러한 HTTP 적응 스트리밍 기존 기술은 매니페스트 파일 포맷으로 다양하고, 상기 매니페스트는, 코덱 지원 및 콘텐츠 보호 기술에서, 세그먼트들의 콘텐츠의 사용 가능한 표현들의 구성, 콘텐츠 옵션(비트 레이트, 이미지 차원, 프레임 레이트 ...)을 설명하는 메타 데이터를 제공한다.
특히, 클라이언트 디바이스가 오디오/비디오 콘텐츠를 재생하려고 하면, 먼저 특정 콘텐츠를 얻을 수 있는 방법을 설명하는 그러한 매니페스트를 획득해야 한다. 이는 URL에서 약간의 '파일'을 획득함으로써 HTTP를 통해 이루어진다. 이러한 매니페스트 파일은 콘텐츠의 사용 가능한 표현들을 작성(비트 레이트 및 다른 특성들에 관해서)하고, 각각의 표현에 대해서, URL은 각각의 타임 슬라이스에 대해 콘텐츠 청크를 로딩할 수 있도록 한다. 주문형 비디오(VoD)에 대해서는 A/V 콘텐츠의 전체 설명이 제공되며, 라이브 콘텐츠(예를 들어, TV 콘텐츠)에 대해서는 짧은 시간 기간에만 설명이 포함되고 시간이 지날 때 새로운 아이템들을 검색하기 위해 주기적으로 다시 로딩될 필요가 있다.
네트워킹 환경으로부터의 능력 및 지식에 따라, 클라이언트 디바이스는 하나의 표현을 선택하고(예를 들어, 비트 레이트에 기초하여), 콘텐츠의 최초의 청크(들)을 로딩한다. 이는 네트워크 장애를 극복할 수 있는 몇 개의 청크를 버퍼링한다. 그런 다음, A/V 콘텐츠는 각각 수신된 청크들로부터 교대로 재생된다. 동시에, 클라이언트 디바이스는 수신 레이트를 측정하고, 높거나 낮은 비트 레이트를 선택하도록 결정할 수 있다. 이러한 경우, 다른 표현으로부터 다음 청크(들)을 요구한다. 모든 HTTP 스트리밍 기술은 소정의 비트 레이트를 갖는 청크에서 다른 비트 레이트를 갖는 다음 청크로 전환하는 동안 클라이언트 디바이스가 연속 재생을 보장하는 것이 가능하도록 되어 있다. 이렇게 네트워크상의 경쟁 트래픽이 A/V 콘텐츠가 수신되는 레이트에 대해 변화하기 시작할 때, 클라이언트 디바이스는 안전한 레벨로 채워진 버퍼를 유지할 수 있는 비트 레이트를 갖는 청크들을 선택함으로써 반응 및 적응할 수 있다. 실제로, 클라이언트 디바이스는, 렌더링이 데이터의 늦은 수신을 겪지 않는 레벨로 유지하면서, 최종 사용자에게 양호한 시각 품질을 제공하기 위해 가능한 가장 높은 비트 레이트에 도달하려고 노력한다.
그러한 HAS 기술은 기존의 기술에 비해 상당히 잘 작업하는 것이 입증되었지만, 최근 작업은, 어떤 특정 어려운 상황들(즉, 다른 HAS 클라이언트 또는 다른 TCP와의 경쟁의 병목현상)에서, HAS 구현이 심각한 불안정 문제를 겪을 수 있다는 것을 지적한다.
특히, 대역폭에 대해 경쟁하는 두 개의 HAS 클라이언트를 갖는 것은, 사용자 경험을 궁극적으로 위태롭게 하는 예기치 않은 결과를 초래한다는 것이 관찰되었다. 또한, HAS 디바이스들은, 대역폭이 평가되지 않아 잠재적으로 과소평가되는 OFF 기간을 초래하는 주기적인 다운로드 프로파일 때문에, 갈망하는 TCP 흐름과 경쟁할 때(예를 들어, 대용량 트래픽), 대역폭의 정당한 몫을 되찾기 위한 기술 부족을 보여준다. 그리고, 특히, 이러한 OFF 기간 동안, 다른 TCP 흐름은 대역폭을 차지할 수 있는 기회를 가질 수 있다.
본 발명은 다른 스트림의 존재에서 모든 적응 스트리밍 구현들의 특징인 적어도 불안정성 및 대역폭 공유 문제를 해결하기 위해 시도하지만, 이에 한정하지 않는다.
본 발명은 네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법에 관한 것으로서, 상기 방법은, 소정의 디바이스에서,
- 적어도 하나의 트래픽 세션을 수행하는 네트워크의 디바이스들로부터 상태 메시지들을 수집하는 단계,
- 각각의 트래픽 세션에 할당되는 대역폭을 결정하는 단계로서, 상태 메시지들로부터 검색된 트래픽 세션들 및 디바이스들의 파라미터들에 따라 랭크되며, 네트워크의 사용 가능한 대역폭, 랭크된 트래픽 세션의 랭크, 및 랭크된 트래픽 세션의 유형의 함수로 각각의 트래픽 세션에 할당되는 대역폭을 결정하는 단계,
- 소정의 디바이스의 트래픽 세션에 할당되도록 결정된 대역폭이 0보다 우세할 때, 상기 트래픽 세션에 대해 소정의 디바이스에 의해 상기 할당된 대역폭을 이용하는 단계를 포함한다.
본 발명에 따라, 네트워크의 디바이스들은 디바이스들 각각에 대해 최적의 대역폭을 협력하여 결정할 수 있고, 이에 따라, 가능한 최상의 공동 사용자 경험을 효과적으로 실현할 수 있다. 디바이스들은, 상태 메시지들에 따라, 디바이스들 각각의 특성 및 요구 사항을 교환 및 발표한다. 이 정보에 기초하여, 최적의 대역폭 재분할은 각각의 디바이스가 근사치로 인하여 낭비된 대역폭을 회피하는 진정으로 가치 있는 대역폭을 수신할 수 있도록 계산될 수 있다.
본 발명에 부합하는 예로서, 상태 메시지는 다음의 요소들 중 적어도 일부를 포함할 수 있다:
- 세션 시작 시간,
- 세션 종료 시간,
- 세션을 수행하는 디바이스의 유형,
- 디스플레이의 사이즈,
- 디바이스의 디스플레이 해상도,
- 사용자 수,
- 세션의 유형,
- 고정된 스트리밍 세션에 필요한 비트 레이트,
- 적응 스트리밍 세션에 대한 사용 가능한 비트 레이트의 리스트,
- 적응 스트리밍 세션에 대한 원하는 최대 비트 레이트,
- 대용량 트래픽 세션에 대한 원하는 최대 비트 레이트,
- 적응 스트리밍 세션에 대한 청크 기간,
- 디바이스의 우선순위.
바람직하게, 하나의 상태 메시지는 하나의 지속적인 트래픽 세션과 연관된다.
또한, 본 발명에 따라, 이벤트가 발생할 때, 소정의 디바이스에 의해 네트워크의 모든 디바이스들에 상태 메시지가 전송된다.
특히, 상기 이벤트는, 적어도 다음 이벤트들,
- 소정의 디바이스에 의한 트래픽 세션의 시작,
- 소정의 디바이스에 의한 트래픽 세션의 정지,
- 소정의 디바이스에 의해 수행되는 지속적인 트래픽 세션의 임의의 특성의 변경을 포함하는 그룹에 속할 수 있다.
본 발명의 다른 양상에 따라, 랭킹 동안, 트래픽 세션들 각각에 대한 랭크는 상기 트래픽 세션을 수행하는 디바이스의 우선순위, 디바이스의 유형, 및 트래픽 세션의 유형에 기초하여 유리하게 결정될 수 있다.
또한, 소정의 랭크 내에, 해당하는 트래픽 세션들은 자신의 시작 시간의 함수로 바람직하게 정렬될 수 있다.
더욱이, 네트워크의 사용 가능한 대역폭은 네트워크의 게이트웨이에 의해 제공될 수 있다.
또한, 본 발명의 바람직한 실시예에서, 랭크된 트래픽 세션들에 할당되는 대역폭의 결정은,
- 아직 처리되지 않은 최고 랭크된 트래픽 세션을 선택하는 단계,
- 선택된 트래픽 세션이 고정 레이트 스트리밍 세션인지를 확인하는 단계,
- 네트워크의 현재 사용 가능한 대역폭과 고정 레이트 스트리밍 세션에 관련된 요구된 비트 레이트 사이의 차이가 적어도 0일 때, 선택된 트래픽 세션에 대역폭을 할당하는 단계를 포함한다.
상기 바람직한 실시예의 다른 양상에서, 랭크된 트래픽 세션들에 할당되는 대역폭의 결정은, 선택된 트래픽 세션이 적응 스트리밍 세션인 경우,
- 선택된 트래픽 세션과 동일한 랭크를 갖고 아직 처리되지 트래픽 세션들의 수에 의해 분할된 현재 사용 가능한 대역폭과 거의 동일한 비트 레이트를 선택하는 단계,
- 선택된 비트 레이트와 선택된 트래픽 세션에 관련된 원하는 최대 비트 레이트 사이의 최소 비트 레이트를 결정하는 단계,
- 선택된 트래픽 세션에 상기 최소 비트 레이트를 할당하는 단계를 더 포함할 수 있다.
상기 바람직한 실시예의 다른 양상서, 랭크된 트래픽 세션들에 할당되는 대역폭의 결정은 할당된 대역폭에 의해 현재 사용 가능한 대역폭을 감소시키는 단계를 더 포함할 수 있다.
게다가, 본 발명은 또한 이전에 기재된 것처럼, 네트워크의 디바이스들의 지속적인 트래픽 세션들 사이에서 상기 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법을 구현하도록 구성된 네트워크의 디바이스에 관한 것이다.
본 발명에 따라, 상기 디바이스는,
- 적어도 하나의 트래픽 세션을 수행하는 네트워크의 디바이스들로부터 상태 메시지들을 수집하도록 적응된 통신 모듈,
- 상태 메시지들로부터 검색된 트래픽 세션들 및 디바이스들의 파라미터들에 따라 상기 지속적인 트래픽 세션들을 랭크하도록 구성된 랭킹 모듈,
- 각각의 랭크된 트래픽 세션에 할당되는 대역폭을, 사용 가능한 대역폭, 랭크된 트래픽 세션의 랭크, 및 랭크된 트래픽 세션의 유형의 함수로 결정하도록 구성된 계산기,
- 디바이스의 트래픽 세션에 할당되도록 결정된 대역폭이 0과 다른지를 확인할 수 있는 비교기를 포함한다.
통신 모듈은 네트워크의 모든 디바이스들에 상태 메시지를 전송하도록 더 구성될 수 있다.
더욱이, 랭킹 모듈은 상기 트래픽 세션을 수행하는 디바이스의 우선순위, 디바이스의 유형, 및 트래픽 세션의 유형에 기초하여 트래픽 세션들 각각에 대한 랭크를 유리하게 결정할 수 있다.
본 발명은, 통신 네트워크로부터 다운로드 가능하고, 및/또는 컴퓨터에 의해 판독 가능한 기록 매체에 기록되고, 및/또는 프로세서에 의해 실행 가능한 컴퓨터 프로그램 제품으로서, 상기 언급한 방법을 구현하기 위한 프로그램 코드 명령들을 구비하는 컴퓨터 프로그램 제품에 관한 것이다.
또한, 본 발명은, 컴퓨터 프로그램 제품이 기록되고 프로세서에 의해 수행 가능한 비일시적인 컴퓨터-판독 가능한 매체로서, 이전에 언급한 방법을 구현하기 위한 프로그램 코드 명령들을 포함하는 비일시적인 컴퓨터-판독 가능한 매체에 관한 것이다.
개시된 실시예에 따른 범위에 상응하는 특정 양상들이 아래에 설명되어 있다. 그러나, 이러한 양상들은 본 발명이 취할 수 있는 어떤 형태의 간략한 요약을 독자에게 제공하기 위해 단순히 제공되고, 이들 양상들이 본 발명의 범위를 제한하는 것으로 의도되지 않는다는 것을 이해해야 한다. 실제로, 본 발명은 아래에 기재되지 않은 다양한 양상들을 포함할 수 있다.
본 발명에 따라, 다른 스트림의 존재에서 모든 적응 스트리밍 구현들의 특징인 적어도 불안정성 및 대역폭 공유 문제를 해결할 수 있다.
도 1은 본 발명이 구현될 수 있는 클라이언트-서버 네트워크 아키텍처의 개략도.
도 2는 본 발명에 따라 사용 가능한 대역폭을 분배하기 위한 방법을 구현하는 도 1의 네트워크 구조의 클라이언트 디바이스의 예를 나타내는 블록도.
도 3은 바람직한 실시예에 따라, 사용 가능한 대역폭을 분배하기 위한 방법의 주요 단계들을 나타낸 흐름도.
도 4는 도 3의 방법의 대역폭 결정 단계를 명시하는 흐름도.
본 발명은 첨부된 도면을 참조하면서 어떠한 한정하지 않는 방식으로 다음 실시예 및 실행 예들을 통해 보다 용이하게 이해 및 도시될 것이다.
도 2에 있어서, 표시된 블록은 물리적으로 분리된 개체들에 반드시 대응할 필요가 없는 오직 기능적인 개체들이다. 즉, 이것들은 소프트웨어, 하드웨어의 형태로 개발될 수 있거나, 하나 이상의 프로세서를 포함하는 하나 이상의 집적 회로로 구현될 수 있다.
가능한, 도면들 전체에 걸쳐 동일한 참조 번호들이 동일하거나 유사한 부분을 참조하는 것으로 사용될 것이다.
본 발명의 도면 및 설명은, 명확하게 하기 위하여 일반적인 디지털 멀티미디어 콘텐츠 전달 방법 및 시스템들에서 발견되는 많은 다른 요소들을 제거하면서, 본 발명의 명확한 이해를 위해 관련된 요소들을 도시하기 위해 단순화되었음을 이해해야 한다. 그러나, 이러한 요소들은 본 기술 분야에서 이미 잘 알려져 있기 때문에, 이러한 요소들의 상세한 설명은 본 명세서에서 제공되지 않는다.
도 1에 도시된 바와 같이, 본 발명이 구현될 수 있는 클라이언트-서버 네트워크 아키텍처는, 예를 들어 세 개의 클라이언트 디바이스들(C1, C2 및 C3), 가정용 게이트웨이(GW), 및 여러 서버들(S1 및 S2)(도 1에는 오직 두 개가 표현되어 있음)을 포함한다. 물론, 추가적인 클라이언트들이 상기 아키텍처에 제공될 수 있다.
디바이스들(C1, C2 및 C3)은 로컬 네트워크(N1)(홈 네트워크 또는 엔터프라이즈 네트워크)에 연결된다. 로컬 네트워크(N1)는 게이트웨이(GW)를 통해 브로드밴드 네트워크(N2)(예를 들어, 인터넷)에 연결된다.
각각의 디바이스(C1 내지 C3)는, 브로드밴드 네트워크(N2)를 통해 하나 이상의 원격 서버들(S1, S2)과 연결함으로써, 하나 이상의 트래픽 세션들{예를 들어, 고정 레이트 스트리밍 세션, 적응 스트리밍 세션(예를 들어, HAS), 대용량 트래픽 세션}을 설정한다.
이를 위해, 도 2에 표현된 것처럼, 각각의 디바이스(C1 내지 C3)에는,
-로컬 네트워크(N1)에 대한 연결(유선 및/또는 무선, 예를 들어, Wi-Fi, 이더넷, 등등)의 LAN(로컬 에어리어 네트워크) 인터페이스(1),
- 통신 모듈(2),
- 메모리(3),
- 하나 이상의 프로세서(들)(4),
- 내부 버스(B)가 설치되고,
상기 통신 모듈(2)은 관리 인터페이스(2A) 및 어플리케이션 인터페이스(2B)를 포함한다.
■ 게시/구독 패러다임{예를 들어, 데이터 분배 서비스(DDS), 자바 메시지 서비스(JMS), Qeo, 도면에 도시되지 않음}을 구현하는 관리 통신 버스에 관련된 관리 인터페이스(2A)로서, 이에 의해, 디바이스는 상태 메시지를 로컬 네트워크(N1)의 모든 다른 디바이스들(C1 내지 C3) 및 게이트웨이(GW)에 전송 및 수집할 수 있다. 상태 메시지는 바람직하게 지속적인 메시지이며, 네트워크의 임의의 디바이스에 의해 수집될 수 있다{디바이스가 전송시에 네트워크(N1)에 연결되어 있지 않은 경우에도}. 특히, 상태 메시지는, 예를 들어, 디바이스의 관리 인터페이스(2A)에서 수행되는 배경 서비스에 의해 수집될 수 있거나, 또는 관리 인터페이스(2A)에 의해 검색되도록 긴 라이브 상태 매시지로서 관리 통신 버스에 의해 저장될 수 있다(예를 들어, 주기적으로 또는 필요시).
■ 어플리케이션 인터페이스(2B)로서, 이에 의해, 소정의 세션에 연관된 제어 및 데이터 메시지는 디바이스에 의해 전송 및 수신된다.
통신 모듈(2)은 서버들(S1, S2)과 통신하는 프로토콜 스택들을 포함한다. 특히, 통신 모듈(2)은 본 기술 분야에서 이미 잘 알려진 TCP/IP 스택을 포함한다. 물론, 통신모듈(2)은 디바이스들(C1 내지 C3)이 서버들(S1, S2)과 통신할 수 있는 임의의 다른 유형의 네트워크 및/또는 통신 수단이 될 수 있다.
- 메모리(3)는 단일 블록 형태로 표현되어 있지만, 랜덤 액세스 메모리, 판독 전용 메모리 및 재 프로그램 가능한 지속적인 메모리(예를 들어, ‘플래시’ 유형)를 동시에 포함할 수 있다.
- 하나 이상의 프로세서(들)(4)는 디바이스의 메모리(3)에 저장된 어플리케이션들 및 프로그램을 실행하기 위한 것이다.
- 내부 버스(B)는 일반적인 클라이언트 디바이스 기능을 실행하기 위해 당업자에게 잘 알려진 다양한 모듈들 및 모든 수단을 접속한다.
또한, 그러한 유형에 따라, 디바이스들(C1 내지 C3)은, 적응 스트리밍 모듈(이는 네트워크 제약과 자신의 제약에 보다 잘 매칭되는 비트 레이트로 청크를 지속적으로 선택한다), 멀티미디어 콘텐츠를 디코딩 및 렌더링하도록 적응된 비디오 플레이어, 비디오 플레이어에 전송하기 전에 서버로부터 수신된 청크를 버퍼링하도록 구성된 버퍼, 등등(상기 모듈들은 도 2에 표시되어 있지 않음)을 또한 포함할 수 있다.
바람직한 실시예에 있어서, 디바이스들(C1 내지 C3)은 휴대용 미디어 디바이스, 모바일 폰, 태블릿, 랩톱, HDTV, 등등이 될 수 있다. 당연히, 디바이스들(C1 내지 C3)은, 완전한 비디오 플레이어뿐만 아니라, 미디어 콘텐츠를 디멀티플렉싱 및 디코딩하기 위한 것과 같은 단지 일부의 하위 요소들을 포함할 수 있으며, 최종 사용자에게 디코딩된 콘텐츠를 디스플레이하기 위한 외부 수단에 의존할 수 있다.
바람직한 실시예에 따라, 네트워크(N1)의 디바이스들(C1 내지 C3)에 의해 전송 및 수집된 트래픽 세션의 각각의 상태 메시지는 다음 요소들 중 적어도 일부를 포함할 수 있다.
- 세션 시작 시간,
- 세션 종료 시간,
- 세션을 수행하는 디바이스의 유형,
- 디스플레이의 사이즈,
- 디바이스의 디스플레이 해상도,
- 사용자 수,
- 세션의 유형,
- 고정된 스트리밍 세션에 필요한 비트 레이트,
- 적응 스트리밍 세션에 대한 사용 가능한 비트 레이트의 리스트,
- 적응 스트리밍 세션에 대한 원하는 최대 비트 레이트,
- 대용량 트래픽 세션에 대한 원하는 최대 비트 레이트,
- 적응 스트리밍 세션에 대한 청크 기간,
- 디바이스의 우선순위.
특히, 상태 메시지는, 여러 필드들(예를 들어, 7개의 필드들)을 포함할 수 있으며, 각각의 필드는 아래에 도시된 것처럼 상기 언급한 하나 이상의 요소들을 수집한다.
Figure pct00001
디바이스 상태 메시지
필드 1은 트래픽 세션의 시작 시간과 함께 초기에 0(제로)으로 설정된 종료 시간을 포함한다. 세션의 종료를 나타내기 위하여, 필드 종료 시간은 0이 아닌 값으로 설정된다.
필드들 2, 3 및 4는 상태 메시지를 전송하는 디바이스의 유형, 디바이스의 디스플레이의 사이즈, 및 디스플레이의 해상도에 각각 관련된다.
필드 5는 전송 디바이스의 기능에 따라, 간단한 신택스를 따르는 경우, 다양한 방식으로 사용될 수 있다. 사용 가능한 경우, 디바이스를 현재 시청하는 사용자들(예를 들어, 존, 웬디, 리사 등등)의 목록을 작성하며, 그렇지 않는 경우, 사용하는 사용자의 수(0..N)만이 사용된다(0은 특정 디바이스의 앞에 어느 누구도 없음을 나타낸다). 또한, 잘못된 값(예를 들어, -1)은 전송 디바이스가 시청하는 사용자의 존재를 결정할 수 없다는 것을 나타내는 데 사용될 수 있다.
필드 6은 적응 능력을 추정하는데 사용될 수 있는 트래픽의 유형을 명시한다. 바람직한 실시예에서, 다음과 같은 트래픽의 유형들, 즉 고정 레이트 스트리밍, 적응 스트리밍, 대용량 트래픽이 고려된다. 고정 레이트 스트리밍이 고려될 때, 요구된 비트 레이트는 상태 메시지에 또한 존재한다. 적응 스트리밍 세션에 대해서, 매니페스트에 발견되는 사용 가능한 비트 레이트 뿐만 아니라 원하는 최대 비트 레이트가 또한 표시된다. 디바이스가 사용 가능한 최대 비트 레이트보다 낮은 비트 레이트를 원하는 다양한 이유가 있을 수 있다는 것을 유의해야 한다{로우 엔드-투-엔드 대역폭, 다른 윈도우에 의해 가려진 비디오, 전체 스크린이 아닌 비디오(픽처 인 그래픽스), 등등}. 마찬가지로, 대용량 트래픽(예를 들어, 비-스트리밍 데이터의 다운로드)에 대해서는, 대역폭 사용의 캡핑(capping)을 허용하도록 원하는 레이트가 포함될 수 있다.
필드 7은 디바이스의 우선순위를 나타내는데 사용된다. 이는 일반적으로 0으로 남아 있지만, 예를 들어, 다른 디바이스들을 통해 추가 장점을 특정 디바이스에 제공하는 일시적인 변화를 나타내기 위해 사용된다.
또한, 게이트웨이(GW)는 예를 들어, 다음과 같은 정보를 포함하는 상태 메시지를 생성하도록 또한 구성된다.
- 브로드밴드 네트워크(N2)의 사용 가능한 대역폭 [kbps](소위, 액세스 대역폭),
- 로컬 네트워크(N1)의 사용 가능한 대역폭 [kbps],
- 디바이스 설명, 트래픽의 유형, 비트 레이트와 같은 서비스들의 리스트.
Figure pct00002
게이트웨이 상태 메시지
필드 3은 적절한 조치(예를 들어, 디바이스를 호깅하는 대역폭을 전환하거나 수동으로 스트림들을 재조정)를 취할 수 있도록 현재 수행하는 서비스에 대해 사용자에게 알리는데 사용될 수 있다. 이를 위해, 디바이스 설명 필드는 범인을 쉽게 찾을 수 있도록 디바이스 설명 및 사용자들을 포함함으로써 구축된다. 또한, 이 리스트는 상태 메시지들(예를 들어, 레거시 디바이스들 및 어플리케이션들에 의해 생성된 스트림들)을 통해 발표되지 않은 게이트웨이(GW)에 의해 보여진 스트림들에 대해서 디바이스들에 알리는데 사용될 수 있다.
상기 게이트웨이 상태 메시지(또한, 디바이스 상태 메시지로서 지속적인 메시지)는 게이트웨이(GW)에 의해 주기적으로, 또는 하나의 파라미터(예를 들어, 로컬 대역폭, 액세스 대역폭)가 변경될 때마다 전송된다. 따라서, 로컬 네트워크(N1)의 디바이스들은 로컬 및 액세스 대역폭들에 대해 액세스(수동적인 방으로)할 수 있다.
본 발명의 바람직한 실시예 및 도 3에 도시된 바와 같이, 디바이스들(C1 내지 C3)은 디바이스들(C1 내지 C3)에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크(N1)의 사용 가능한 대역폭을 분배하기 위한 방법을 구현하도록 구성된다.
특히, 네트워크(N1)의 소정의 디바이스{예를 들어, 디바이스(C1)}에서 구현될 때, 방법(M)은 다음의 단계들을 포함한다.
- 통신 모듈(2)을 통해, 네트워크(N1)의 모든 다른 디바이스들(C2, C3) 및 게이트웨이(GW)에 상태 메시지를 전송하는 단계(S1)로서, 상기 상태 메시지는 디바이스(C1)에 의해 수행되는 특정 트래픽 세션(세션 당 하나의 상태 메시지)과 연관되고, 새로운 트래픽 세션이 디바이스(C1)에 의해 실행될 때마다, 디바이스(C1)의 지속적인 트래픽 세션이 종료될 때마다, 또는 그 지속적인 트래픽 세션(들)의 임의의 특성들이 변경될 때 유리하게 전송된다. 한 예로서 적응 스트리밍 세션의 특정 경우를 취하면, 디바이스(C1)가 사용 가능한 표현들 사이의 전환을 유지하는 경우, 상태 메시지는 모든 다른 디바이스들이 변경에 대해 인식하고, 변경에 반응할 수 있도록 청크가 요청될 때마다 다시 전송될 것이다. 바람직한 실시예의 변형에 있어서, 상태 메시지들은, 소정의 이벤트에 방송되는 대신에, 디바이스들에 의해 주기적으로 전송될 수도 있다.
- 통신 모듈(2)을 통해, 적어도 하나의 지속적인 트래픽 세션을 수행하는 네트워크(N1)의 디바이스들(C2, C3)로부터, 그리고 게이트웨이(GW)로부터 상태 메시지들을 수집하는 단계(S2)로서, 상기 수집된 상태 메시지들은 디바이스(C1)의 메모리(3)에 저장될 수 있다. 단계들(S1 및 S2)은 서로 독립적으로 실행될 수 있다(S2 이전에 S1; S1 이전에 S2 또는 S1과 S2 동시에).
- 디바이스(C1)의 랭킹 모듈(5)에 따라 해당하는 디바이스들의 파라미터들 및 상기 세션들의 파라미터들에 따라 상기 지속적인 세션들을 랭크하는 단계(S3)로서, 상기 파라미터들의 값들은 수집된 상태 메시지들로부터 검색된다. 단계(S3) 동안, 랭크된 리스트는 랭킹 모듈(5)에 의해 구축되고, 예를 들어, 메모리(3)에 저장된다.
- 디바이스(C1)의 대역폭 계산기(6)에 의해, 로컬 네트워크(N1)(게이트웨이 상태 메시지로부터 획득된)의 전체 사용 가능한 대역폭, 랭킹 모듈(5)에 의해 결정된 세션들의 랭크, 및 랭크된 세션들의 유형의 함수로, 각각 랭크된 세션에 할당되는 대역폭을 결정하는 단계(S4)로서, 변형 또는 보충에 있어서, 다른 특징들은 각각의 지속적인 세션에 할당되는 대역폭을 결정하는데 사용되거나 추가될 수 있다.
- 디바이스(C1)의 비교기(7)에 의해, 소정의 디바이스(C1)의 세션에 할당되도록 결정된 대역폭이 제로보다 우세한지의 여부를 확인하는 단계(S5).
- 소정의 디바이스(C1)의 세션에 할당되도록 결정된 대역폭이 제로보다 우세할 때, 상기 세션에 대한 소정의 디바이스(C1)에 의해 자체-할당된 대역폭을 사용하는 단계(S6).
- 소정의 디바이스(C1)의 세션에 할당되도록 결정된 대역폭이 제로와 동일할 때(단계 S7), 다른 세션들이 소정의 디바이스(C1)에 의해 전송된 상태 메시지에 반응하는 시간이 필요한지를 입증하는 단계(예를 들어, 경쟁하는 지속적인 HAS 세션은 차기 청크 기간에 대한 일정한 대역폭의 사용 가능성을 가정하기 때문에, 소정의 디바이스(C1)의 세션의 랭크가 상기 HAS 세션의 1보다 높은 경우라도 다운로드된 청크의 종료까지 대기하는 것이 바람직하다).
- 다른 세션이 소정의 디바이스(C1)에 의해 전송된 상태 메시지에 반응하는 시간이 필요한 경우(단계 S8), 상기 전송된 상태 메시지를 고려하는 다른 지속적인 세션(들)을 대기(예를 들어, 적응 스트리밍 세션에 대해, 현재 청크의 다운로딩의 종료와 적응 스트리밍 세션을 수행하는 연관된 디바이스에 의해 새로운 상태 메시지의 방출 이후)하고, 단계(S1)로 복귀한다.
- 다른 세션이 소정의 디바이스(C1)에 의해 전송된 상태 메시지에 반응하는 시간이 필요 없는 경우(단계 S9), 디바이스(C1)의 사용자에게 실패를 나타낸다.
디바이스(C1)의 세션이 아직 종료되지 않은 경우(단계 S10), 본 방법(M)은 단계(S1)로 복귀하고 다음 단계들을 반복한다.
본 방법(M)은,
- 네트워크(N1)의 디바이스로부터 새로운 상태 메시지의 수신시, 소정의 디바이스(C1)에 의해 수행되는 세션(방법(M)을 구현)이 고정 레이트 세션 또는 대용량 트래픽 세션인 경우, 또는,
- 해당하는 기간을 갖는 주기적으로, 즉
■ 소정의 디바이스(C1)에 의해 수행되는 세션이 고정 레이트 세션 또는 대용량 트래픽 세션인 경우에 임의로 결정(예를 들면, 10초)되거나,
■ 소정의 디바이스(C1)에 의해 수행되는 적응 스트리밍 세션의 경우, 청크의 기간과 동일한 시간에 따라, 주기적으로 실행될 수 있다.
바람직한 실시예에 따라, 랭킹 모듈 (5)에 의해 구현되는 랭킹 단계(S3)는 다음의 하위 단계들,
- 수집된 상태 메시지들로부터 처리하기 위해 네트워크(N1)의 모든 지속적인 세션들의 처리 리스트를 설정하는 단계(S31),
- 상기 트래픽 세션을 수행하는 디바이스의 우선순위, 디바이스의 유형, 및 트래픽 세션의 유형에 기초하여, (예를 들어, 처리 리스트의 제 1 세션 또는 임의로 선택된 상기 리스트의 세션으로 시작함으로써) 처리 리스트의 각각의 세션의 랭크를 결정하는 단계(S32)를 포함한다. 예시에 있어서, 세션의 랭크는 다음 공식으로부터 결정되지만, 이는 제한적인 예가 아니다.
Figure pct00003
여기서,
■ MAX는, 예를 들어 10개의 서로 다른 랭크들을 허용하는 10과 같은 상수이다(표기로, 랭크 0은 최고 높은 랭크).
■ 우선순위는 랭크되는 세션을 수행하는 디바이스와 연관된 우선순위이다.
■ PW는 2개의 서로 다른 우선순위들{높은 우선순위(1) 및 낮은 우선순위(0)}를 허용하는 5인 우선순위를 가중처리한 상수이며, 이에 따라, 높은 우선순위 1을 갖는 디바이스들은 높은 랭크들 0 내지 5 사이에서 분배되고, 낮은 우선순위 0을 갖는 디바이스들은 낮은 랭크들 6 내지 10 사이에서 분배될 것이다.
■ DP는 디바이스 유형의 우선순위에 해당하는 상수이며, 예를 들어, 디바이스 유형이 HDTV인 경우 3이 되며, 그렇지 않은 경우에는 0이 된다. 다시 말해, DP의 값들(3 또는 0)은 디바이스의 유형에 의존한다.
■ FP는 고정 레이트 스트리밍 세션 우선순위에 해당하는 상수이며, 예를 들어, 트래픽 세션이 고정 레이트 세션인 경우에는 2가 되며, 그렇지 않은 경우에는 0이 된다. 다시 말해, FP의 값들(2 또는 0)은 트래픽 세션의 유형에 의존한다.
■ AP는 적응 스트리밍 세션 우선순위에 해당하는 상수이며, 예를 들어, 트래픽 세션이 적응 스트리밍 세션인 경우에는 1이 되고, 그렇지 않은 경우에는 0이 된다. 다시 말해, AP의 값은 트래픽 세션의 유형에 의존한다.
이러한 공식에 따라, 높은 우선순위를 갖는 세션들은 제 1 랭크들에 분배되고, 낮은 우선순위를 갖는 세션들은 마지막 랭크들에서 배열된다. 동일한 우선순위에서, HDTV 유형을 갖는 디바이스들은 예를 들어, 태블릿 또는 스마트폰과 대조하여 선호된다. 또한, 고정 레이트 세션들은, 대용량 트래픽 이전에 바람직하게 처리되는 적응 스트리밍 세션들 이전에 바람직하게 처리된다.
- 각각의 랭크의 세션들을 그들 시작 시간의 오름차순으로 정렬하는 단계(S33)로서, 이에 의해, 이전에 시작된 세션들은 동일한 랭크에 할당된 새롭게 시작된 세션들에 비해 우선순위로 처리된다. 물론, 자신의 종료(종료 시간 필드에 의해)를 표시한 세션들은 처리 리스트로부터 폐기된다.
랭킹 단계(S3)의 결과로서, 랭킹 리스트가 유도된다. 두 개의 레벨 구조를 갖는 이러한 랭킹 리스트는 랭크들의 리스트로 구성된다. 각각의 랭크에 있어서, 세션들은 그들 시작 시간의 함수로 정렬된다. 따라서, 제 1 랭크의 세션들은 처음으로 (대역폭 할당에 의해) 제공되고, 이어서, 다음 랭크의 세션들 등등이 제공된다. 특히, 동일한 랭크의 세션들은 적응 스트리밍 세션들이며, 이는 다음 랭크를 고려하기 이전에 상기 랭크의 세션들에 나머지 대역폭을 균등하게 분배할 수 있다.
바람직한 실시예에 및 도 4에 도시된 바와 같이, 디바이스(C1)의 대역폭 계산기(6)에 의해 구현되는 대역폭 결정 단계(S4)는 다음의 하위 단계들을 포함한다.
- 아직 처리되지 않은 랭크 리스트의 가장 높이 랭크된 트래픽 세션을 선택하는 단계(S401),
- 선택된 트래픽 세션이 고정 레이트 스트리밍 세션, 적응 스트리밍 세션 또는 대용량 트래픽 세션인지를 확인하는 단계(S402),
- 선택된 세션이 고정 레이트 스트리밍 세션인 경우, 네트워크(N1)의 현재 사용 가능한 대역폭(게이트웨이 상태 메시지로부터 획득된)과 고정 레이트 스트리밍 세션에 연관된 요구된 비트 레이트(해당하는 상태 메시지에 표시된) 사이의 차이가 적어도 0인지를 결정하는 단계(S403),
- 선택된 세션이 적응 스트리밍 세션인 경우,
■ 아직 처리되지 않은 트래픽 세션들의 수로 나누어진 현재 사용 가능한 대역폭과 거의 동일하고, 선택된 세션(단계 S401에서)과 동일한 랭크를 갖는 비트 레이트(해당하는 매니페스트로부터 검색된 사용 가능한 비트 레이트들 사이에서)를 선택하는 단계(S404)로서, 매니페스트의 사용 가능한 비트 레이트 사이에서 동일한 랭크를 갖는 아직 처리되지 않은 트래픽 세션들의 수로 나누어진 현재 사용 가능한 대역폭보다 낮은 비트 레이트가 존재하지 않는 경우, 선택된 비트 레이트는 0과 동일하게 된다.
■ 선택된 비트 레이트(단계 S404)와 선택된 세션(연관된 상태 메시지로부터 검색된)과 연관된 원하는 최대 비트 레이트 사이의 최소 비트 레이트를 결정하는 단계(S405),
- 선택된 세션이 대용량 트래픽 세션인 경우,
■ 아직 처리되지 않고 선택된 세션(단계 S401에서)과 동일한 랭크를 갖는 트래픽 세션들의 수로 나눈 현재 사용 가능한 대역폭과 동일한 비트 레이트를 계산하는 단계(S406),
■ 연관된 상태 메시지로부터, 원하는 최대 비트 레이트가 선택된 대용량 트래픽 세션과 연관되는지의 여부를 확인하는 단계(S407),
■ 원하는 최대 비트 레이트가 선택된 대용량 트래픽 세션과 연관된 경우, 계산된 비트 레이트(단계 S406)와 선택된 세션과 연관된 원하는 최대 비트 레이트 사이에서 최대 비트 레이트를 결정하는 단계(S408),
- 선택된 세션에 대역폭을 할당하는 단계(S409)로서, 이러한 할당된 대역폭은, 다음과 동일하다.
■ 선택된 세션이 고정 레이트 스트리밍 세션일 때 요구된 비트 레이트,
■ 선택된 세션이 적응 스트리밍 세션일 때 결정된 최소 비트 레이트(단계 S405에서),
■ 선택된 세션이 대용량 트래픽 세션일 때 계산된 비트 레이트(단계 S406) 또는 결정된 최소 비트 레이트(단계 S408),
- 단계(S409)에서 할당된 대역폭으로 현재 대역폭을 감소시키는 단계(S410),
단계들(S401 내지 S410)은 랭킹 리스트의 모든 세션들이 처리될 때까지 바람직하게 반복된다.
그런 다음에, 바람직한 실시예에 있어서, 실제 대역폭 할당은 지속적인 적응 스트리밍 세션들에 대한 청크 기간을 고려한다. 실제로, 지속적인 세션들은 차기 청크 기간 동안 일정한 대역폭의 이용 가능성을 가정하기 때문에, 청크의 종료 이전에 이들 조건을 변경하는 것은 바람직하지 않다. 따라서, 세션 시작시에, 지속적인 세션들이 새롭게 시작된 세션 정보를 수신하고 그들 자신의 할당된 대역폭을 감소시킴으로서 그 존재를 확인할 때까지 높은 랭크 세션은 지연될 것이다. 이러한 지연은 높은 랭크 세션(이하에 설명)으로 대역폭의 단계적 복귀가 이어지는 각각의 지속적인 세션에 한정된다. 고정 레이트 및 대용량 세션들의 경우에, 네트워크(N1)의 다른 디바이스들에 의해 전송된 상태 메시지들의 처리는, 기간이 임의로 고정(예를 들면, 10초)되는 차이를 갖고, 고정 레이트 또는 대용량 세션을 실행하는 디바이스가 새로운 세션을 시작하는 디바이스에 의해 전송된 새로운 상태 메시지를 고려할 때를 결정하는 유사한 방식으로 주기적으로 실행된다.
대역폭이 하나의 디바이스의 세션에 할당되면, 이러한 하나의 디바이스는 그 대역폭을 사용할 수 있는 권리를 갖지만, 알려진 HAS 구현들처럼, 대역폭 측정에 기초하여 그러한 실제 사용을 여전히 조정할 수 있다.
대역폭 사용을 재조정하는데 시간이 필요한 경쟁 세션들의 존재로 인하여 대역폭이 할당되지 않는다면, 디바이스(C1)는 수신된 정보에 기초하여 대기하는데 필요한 시간의 양을 결정할 수 있다. 대역폭 할당 실패가 낮은 우선순위 디바이스들의 존재로 인한 것이 아닌 경우(아마도 지속적인 높은 우선순위 세션들이 존재하기 때문), 새롭게 시작하는 세션은 취소되어 실패를 사용자에게 나타낸다.
본 방법(M)은 반복되기 때문에, 제 1 반복에 따라 지연되었던 시작 세션은 제 2 반복에서 지속적인 세션들에 의해 자유로운 대역폭의 공유를 할 수 있다. 유사하게, 지속적인 세션들은 새로운 세션들을 설명하는 메시지들의 수신에 따라 그들 대역폭 사용을 연속적으로 조정할 수 있다. 세션이 0과 같은 대역폭에 할당될 때마다 중지한다.
본 발명의 바람직한 실시예에 따라, 대역폭 사용을 통한 매우 미세한 제어가 달성될 수 있는데, 그 이유는, 예를 들어, 네트워크의 각각의 디바이스가 재생을 시작 및 정지할 때 수신할 수 있는 비트 레이트들을, 추측과 근사치에 대한 필요성을 제거하여, 정확하게 발표하기 때문이다. 디바이스들이 그들 능력 및 각각의 우선순위에 관한 풍부한 정보를 교환하기 때문에, 대역폭 분배가 사용자의 기대를 정확히 반영하는 것이 실현될 수 있다. 이는, 결정론적 방식으로 대역폭 경쟁 문제를 해결할 수 있고, 디바이스들 우선순위들을 보호할 수 있고, 낭비되는 대역폭을 피할 수 있다.
3가지의 다음 예에 있어서, 상태 메시지들이 주기적으로 전송되는 것을 가정하고(명확성의 이유), 이러한 기간은 고정 레이트 및 대용량 트래픽 세션들에 대한 임의의 기간이 되고, 적응 스트리밍 세션들에 대한 청크의 기간과 동일하다.
바람직한 실시예의 제 1 예에서는, ADSL 게이트웨이(GW)에 의해 보고된 것처럼, 액세스 네트워크가 8Mbps의 대역폭을 갖는 것으로 가정한다. 사용자{HDTV에 비디오 온 디맨드(VoD)를 시청하는 것을 원하는 사용자}는 본 방법(M)을 구현하는 HAS 어플리케이션을 시작한다. 현재 네트워크를 사용하는 다른 스트림이 없고, HAS 어플리케이션이 현재 네트워크 대역폭에 대해 허용 가능한 최고 비트 레이트에 즉시 수렴한다는 것을 주의한다.
제 2 예에서는, 액세스 네트워크가 8Mbps의 대역폭을 갖는 것으로 또한 가정한다. 네트워크 대역폭의 일부는 HAS 스트림을 소비하는 태블릿 및 스마트폰에 의해 이미 사용된다. 간략화를 위하여, HAS 스트림들은 해당하는 매니페스트에 리스트된 동일 비트 레이트들(즉, 200, 400, 600, 1200, 1800, 2500, 4500, 6500 및 8500Kbps)를 갖는 것으로 가정한다. 이는 다음을 유의한다.
- t1: 제 1 HAS 클라이언트(태블릿에서 수행)가 HAS 스트림의 특성들을 최종 보고할 때 소비하는 시간, 이는 기간(d1)의 청크를 갖는다.
- t2: 제 2 HAS 클라이언트(스마트폰에서 수행)가 자신의 스트림의 특성들을 최종 보고할 때의 시간, 이는 기간(d2)의 청크를 갖는다.
네트워크 대역폭의 사용 가능성에 따라, 제 1 및 제 2 HAS 클라이언트들은 각각 4.5Mbps 및 2.5Mbps에서 상대적으로 높은 품질의 스트림을 즐긴다.
시간 t3에서는, 제 3 HAS 클라이언트(HDTV에서 수행)가 시작된다. 이는, 원하는 HAS 스트림의 파라미터들을 검색하고, 원하는 비트 레이트로서 액세스 네트워크 용량보다 낮은 최고 비트 레이트를 선택하고, 네트워크 상에 세션을 설명하는 상태 메시지를 전송한다. HDTV는 태블릿 및 스마트폰을 통해 우선순위를 갖는다. 그럼에도 불구하고, 제 3 HAS 클라이언트는 수신된 메시지를 설명하는 제 1 및 제 2 HAS 클라이언트들에 약간의 시간을 두는 것이 바람직하다. 제 1 HAS 클라이언트가 t1에서 최종 상태 메시지를 전송하고, 제 3 HAS 클라이언트가 t3(t3 < t1+d1로 가정)에서 상태 메시지를 전송하기 때문에, 제 1 및 제 3 클라이언트들 모두는 서로의 존재를 인식하고, 이에 따라 t1+d1에서 그들 대역폭 사용량을 조정할 수 있다. 제 1 HAS 클라이언트에서는, 할당된 대역폭이 계산될 때, 다음 루프 반복에서 발생한다. 마찬가지로, t3 < t2+d2를 가정하면, 제 2 HAS 클라이언트는 t2+d2에서 대역폭 사용량을 조정할 것이다. 제 3 HAS 클라이언트에서는, 본 방법(M)이 실행될 수 있을 때를 결정하기 위해 시간 최대(t1+d1, t2+d2)가 사용되며, 그 이유는, 대역폭이 제 1 및 제 2 HAS 클라이언트들에 의해 자유롭게 되기 때문이다. 이러한 계산은 모든 디바이스들에서 동일하게 실행되어, 결과적으로, 액세스 링크 용량보다 낮은 최고 사용 가능한 비트 레이트로서 선택되는 높은 랭크 디바이스(제 3 HAS 클라이언트를 수행)에 대해서 최대 대역폭을 얻고, 나머지는 제 1 및 제 2 HAS 클라이언트들 사이에 분배된다. 서로 다른 세션들에 대해 사용 가능한 비트 레이트의 소정의 세트가 제공되면, 6.5Mbps가 제 3 HAS 클라이언트에 할당되지만, 제 1 및 제 2 HAS 클라이언트들에는 600kbps가 할당된다.
제 3 예에서는, 두 개의 태블릿에 대해 무선 핫 스팟으로서 제공하는 스마트폰을 중심으로 구성된 무선 네트워크를 고려한다. 네트워크 대역폭은, 게이트웨이 상태 메시지들을 사용하는 현재 액세스 대역폭을 나타내는 스마트폰에 의해 발표된 것처럼, 8Mbps인 것으로 가정한다. 제 1 클라이언트(태블릿들 중 하나에 수행)는 5Mbps에서 고정 레이트 스트림의 재생을 시작하고, 스트림 특성들을 알리고, 메시지들을 청취한다. 나중에, 제 2 클라이언트(다른 태블릿에서 실행)는 HAS 스트림 재생을 시작한다. 고정 레이트 스트림을 소비하는 제 1 클라이언트는 제 2 클라이언트에 비해 처음으로 랭크된다. 따라서, 제 1 클라이언트는 그 스트림을 계속 재생하지만, 제 2 클라이언트는 HAS 스트림으로부터 적당한 레이트를 선택하기 위해 나머지 대역폭을 사용한다. 상술한 예와 같이 동일한 사용 가능한 비트 레이트를 가정하면, 제 2 클라이언트는 2500kbps 스트림을 선택할 것이다. 잠시 후에, 외부 이벤트로 인하여, 스마트 폰에 의해 사용되는 무선 네트워크의 속도는 4Mbps로 떨어진다. 스마트 폰은 현재 네트워크 용량을 나타내는 업데이트된 새로운 게이트웨이 상태 메시지를 전송함으로써 네트워크 내의 디바이스들에 알린다. 게이트웨이 상태 메시지에 응답하여, 제 1 클라이언트는 소비하고 있는 고정 레이트 스트림의 재생을 진행하는데 사용 가능한 대역폭이 너무 낮다고 결정하고, 세션의 종료를 타내는 상태 메시지를 전송하고, 비-제로 값을 갖는 종료 시간 필드를 설정한다. 청크 기간(d2)을 갖는 제 1 클라이언트에 의해 세션 종료 메시지를 전송하기 이전에 제 2 HAS 클라이언트가 본 방법(M)을 최종적으로 실행했을 때의 시간을 t2라고 가정하면, t2+d2에서, 제 2 클라이언트는, 액세스 대역폭의 4Mbps가 사용 가능하게 되기 때문에, 2500kbps 스트림으로 전환한다.
도면에서의 흐름도 및/또는 블록도는 본 발명의 다양한 실시예들에 따른 시스템, 방법 및 컴퓨터 프로그램 제품들의 가능한 구현들의 구성, 동작 및 기능을 도시한다. 이와 관련하여, 흐름도 및/또는 블록도에서 각각의 블록은 특정된 논리적 기능(들)을 구현하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트, 또는 코드의 부분을 나타낼 수 있다. 또한, 일부 대안적인 구현들에 있어서, 블록 내에 언급된 기능들은 도면에서 언급된 순서를 벗어나서 발생할 수 있다는 것을 주목해야 한다. 예를 들어, 연속으로 도시된 두 개의 블록들은, 사실상, 실질적으로 동시에 실행될 수 있거나, 블록들은 때로는 반대 순서로 실행될 수도 있거나, 블록들은 해당하는 기능에 따라 대안의 순서로 실행될 수 있다. 또한, 블록도 및/또는 흐름도의 각각의 블록과, 블록도 및/또는 흐름도의 블록들의 조합은 특정 기능 또는 동작, 또는 특정 목적의 하드웨어 및 컴퓨터 명령들의 조합을 수행하는 특수 목적의 하드웨어-기반 시스템들에 의해 구현될 수 있음을 주목해야 한다. 비록, 명시적으로 설명하고 있지 않지만, 본 실시예들은 임의의 조합 또는 하위-조합으로 사용될 수 있다.
당업자에 의해 알 수 있는 것처럼, 본 원리의 양상들은 시스템, 방법 또는 컴퓨터 판독 가능 매체로서 구현될 수 있다. 이에 따라, 본 원리의 양상들은 완전히 하드웨어 실시예, 완전히 소프트웨어 실시예(펌웨어, 상주 소프트웨어, 마이크로-코드 등을 포함), 또는 본 명세서에서 "회로", "모듈" 또는 "시스템"으로서 모두 일반적으로 지칭될 수 있는 소프트웨어 및 하드웨어 양상들을 조합하는 실시예의 형태를 취할 수 있다. 또한, 본 원리의 양상들은 컴퓨터 판독한 가능 저장 매체의 형태를 취할 수 있다. 하나 이상의 컴퓨터 판독 가능한 저장 매체(들)의 어떤 조합도 이용될 수 있다.
컴퓨터 판독 가능한 저장 매체는, 하나 이상의 컴퓨터 판독 가능한 매체(들)에 포함되고, 그들 위에 포함된 컴퓨터에 의해 실행 가능한 컴퓨터 판독 가능한 프로그램 코드를 갖는 컴퓨터 판독 가능한 프로그램 제품의 형태를 취할 수 있다. 본 명세서에 사용된 바와 같은 컴퓨터 판독 가능한 저장 매체는 내부에 정보를 저장하는 고유의 능력뿐만 아니라 그로부터 정보를 검색할 수 있는 고유의 능력이 제공된 비일시적인 저장 매체로서 고려된다. 컴퓨터 판독 가능한 저장 매체는, 예를 들어, 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템, 장치, 또는 디바이스, 또는 이들의 임의의 적절한 조합이 될 수 있지만, 이들에 한정되지 않는다. 본 원리들이 적용될 수 있는 컴퓨터 판독 가능한 저장 매체들의 보다 구체적인 예들을 제공하지만, 휴대용 컴퓨터 디스켓, 하드 디스크, 램덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 소거 가능 프로그램 가능한 판독 전용 메모리(EPROM 또는 플래시 메모리), 휴대용 컴팩 디스크 판독 전용 메모리(CD-ROM), 광학 저장 디바이스, 자기 저장 디바이스, 또는 상술한 임의의 적당한 조합이 당업자에 의해 쉽게 이해되는 것으로서 단순히 도시되지만, 완전한 리스팅은 아니라는 것을 알 수 있을 것이다.
1...LAN 인터페이스
2...통신 모듈
3...메모리
4....프로세서
5...랭킹 모듈
6...대역폭 계산기
7...비교기

Claims (15)

  1. 네트워크(N1)의 디바이스(C1, C2, C3)에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크(N1)의 사용 가능한 대역폭을 분배하기 위한 방법으로서, 소정의 디바이스(C1, C2, C3)에서,
    -적어도 하나의 트래픽 세션을 수행하는 네트워크의 디바이스들(C1, C2, C3)로부터 상태 메시지들을 수집하는 단계(S2),
    -각각의 트래픽 세션에 할당되는 대역폭을 결정하는 단계(S4)로서, 상태 메시지들로부터 검색된 트래픽 세션들 및 디바이스들의 파라미터들에 따라 랭크(S3)되며, 네트워크의 사용 가능한 대역폭, 랭크된 트래픽 세션의 랭크, 및 랭크된 트래픽 세션의 유형의 함수로 각각의 트래픽 세션에 할당되는 대역폭을 결정하는 단계(S4):,
    -소정의 디바이스(C1, C2, C3)의 트래픽 세션에 할당되도록 결정된 대역폭이 0보다 우세할 때, 상기 트래픽 세션에 대해 소정의 디바이스에 의해 상기 할당된 대역폭을 이용하는 단계(S6)를 포함하는, 네트워크의 사용 가능한 대역폭 분배 방법.
  2. 제 1 항에 있어서,
    하나의 상태 메시지는 하나의 지속적인 트래픽 세션과 연관되는, 네트워크의 사용 가능한 대역폭 분배 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    이벤트가 발생할 때, 네트워크(N1)의 모든 디바이스들(C1, C2, C3)에 소정의 디바이스(C1, C2, C3)에 의해 상태 메시지가 전송(S1)되는, 네트워크의 사용 가능한 대역폭 분배 방법.
  4. 제 3 항에 있어서,
    상기 이벤트는, 적어도 다음 이벤트들,
    -소정의 디바이스(C1, C2, C3)에 의한 트래픽 세션의 시작,
    -소정의 디바이스에 의한 트래픽 세션의 정지,
    -소정의 디바이스에 의해 수행되는 지속적인 트래픽 세션의 임의의 특성의 변경을 포함하는 그룹에 속하는, 네트워크의 사용 가능한 대역폭 분배 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    랭킹(S3) 동안, 트래픽 세션들 각각에 대한 랭크는 상기 트래픽 세션을 수행하는 디바이스의 우선순위, 디바이스의 유형, 및 트래픽 세션의 유형에 기초하여 결정되는, 네트워크의 사용 가능한 대역폭 분배 방법.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    소정의 랭크 내에, 해당하는 트래픽 세션들은 자신의 시작 시간의 함수로 정렬되는, 네트워크의 사용 가능한 대역폭 분배 방법.
  7. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    네트워크의 사용 가능한 대역폭은 네트워크(N1)의 게이트웨이(GW)에 의해 제공되는, 네트워크의 사용 가능한 대역폭 분배 방법.
  8. 제 1 항 내지 제 7 항 중 어느 한 항에 있어서,
    랭크된 트래픽 세션들에 할당되는 대역폭의 결정(S4)은,
    -아직 처리되지 않은 최고 랭크된 트래픽 세션을 선택하는 단계(S401),
    -선택된 트래픽 세션이 고정 레이트 스트리밍 세션인지를 확인하는 단계(S402),
    -네트워크(N1)의 현재 사용 가능한 대역폭과 고정 레이트 스트리밍 세션에 관련된 요구된 비트 레이트 사이의 차이가 적어도 0일 때, 선택된 트래픽 세션에 대역폭을 할당하는 단계(S409)를 포함하는, 네트워크의 사용 가능한 대역폭 분배 방법.
  9. 제 8 항에있어서,
    랭크된 트래픽 세션들에 할당되는 대역폭의 결정(S4)은, 선택된 트래픽 세션이 적응 스트리밍 세션인 경우,
    -선택된 트래픽 세션과 동일한 랭크를 갖고 아직 처리되지 트래픽 세션들의 수에 의해 분할된 현재 사용 가능한 대역폭과 거의 동일한 비트 레이트를 선택하는 단계(S404),
    -선택된 비트 레이트와 선택된 트래픽 세션에 관련된 원하는 최대 비트 레이트 사이의 최소 비트 레이트를 결정하는 단계(S405),
    -선택된 트래픽 세션에 상기 최소 비트 레이트를 할당하는 단계(S403)를 더 포함하는, 네트워크의 사용 가능한 대역폭 분배 방법.
  10. 제 8 항 또는 제 9 항에 있어서,
    랭크된 트래픽 세션들에 할당되는 대역폭의 결정(S4)은 할당된 대역폭에 의해 현재 사용 가능한 대역폭을 결정하는 단계(S410)를 더 포함하는, 네트워크의 사용 가능한 대역폭 분배 방법.
  11. 제 1항 내지 제 10 항 중 적어도 한 항에 명시된 것처럼, 네트워크(N1)의 디바이스들(C1, C2, C3)의 지속적인 트래픽 세션들 사이에서 상기 네트워크(N1)의 사용 가능한 대역폭을 분배하기 위한 방법을 구현하도록 구성된 네트워크의 디바이스에 있어서,
    - 적어도 하나의 트래픽 세션을 수행하는 네트워크의 디바이스들(C1, C2, C3)로부터 상태 메시지들을 수집하도록 적응된 통신 모듈(2),
    - 상태 메시지들로부터 검색된 트래픽 세션들 및 디바이스들의 파라미터들에 따라 상기 지속적인 트래픽 세션들을 랭크하도록 구성된 랭킹 모듈(5),
    - 각각의 랭크된 트래픽 세션에 할당되는 대역폭을, 사용 가능한 대역폭, 랭크된 트래픽 세션의 랭크, 및 랭크된 트래픽 세션의 유형의 함수로 결정하도록 구성된 계산기(6),
    - 디바이스의 트래픽 세션에 할당되도록 결정된 대역폭이 0과 다른지를 확인할 수 있는 비교기(7)를 포함하는 것을 특징으로 하는 디바이스.
  12. 제 11 항에 있어서,
    통신 모듈(2)은 네트워크의 모든 디바이스들(C1, C2, C3)에 상태 메시지를 전송하도록 더 구성된, 디바이스.
  13. 제 11 항 또는 제 12 항에 있어서,
    랭킹 모듈(5)은, 상기 트래픽 세션을 수행하는 디바이스의 우선순위, 디바이스의 유형, 및 트래픽 세션의 유형에 기초하여 트래픽 세션들 각각에 대한 랭크를 결정하는, 디바이스.
  14. 통신 네트워크로부터 다운로드 가능하고, 및/또는 컴퓨터에 의해 판독 가능한 매체에 기록되고, 및/또는 프로세서에 의해 실행 가능한 컴퓨터 프로그램 제품으로서, 제 1 항 내지 제 9 항 중 적어도 하나의 항에 따른 방법을 구현하기 위한 프로그램 코드 명령들을 포함하는 컴퓨터 프로그램 제품.
  15. 컴퓨터 프로그램 제품이 기록되고 프로세서에 의해 수행 가능한 비일시적인 컴퓨터-판독 가능한 매체로서, 제 1 항 내지 제 9 항 중 적어도 한 항에 따른 방법을 구현하기 위한 프로그램 코드 명령들을 포함하는 비일시적인 컴퓨터-판독 가능한 매체.
KR1020167014022A 2013-11-27 2014-10-31 네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법 및 그 장치 KR102286957B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP13306625.8 2013-11-27
EP13306625.8A EP2879339A1 (en) 2013-11-27 2013-11-27 Method for distributing available bandwidth of a network amongst ongoing traffic sessions run by devices of the network, corresponding device.
PCT/EP2014/073425 WO2015078658A1 (en) 2013-11-27 2014-10-31 Method for distributing available bandwidth of a network amongst ongoing traffic sessions run by devices of the network, corresponding device

Publications (2)

Publication Number Publication Date
KR20160086854A true KR20160086854A (ko) 2016-07-20
KR102286957B1 KR102286957B1 (ko) 2021-08-05

Family

ID=49765432

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167014022A KR102286957B1 (ko) 2013-11-27 2014-10-31 네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법 및 그 장치

Country Status (8)

Country Link
US (2) US10044633B2 (ko)
EP (2) EP2879339A1 (ko)
JP (1) JP6442507B2 (ko)
KR (1) KR102286957B1 (ko)
CN (2) CN105765925B (ko)
BR (1) BR112016012135B8 (ko)
TW (1) TWI680662B (ko)
WO (1) WO2015078658A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2879339A1 (en) * 2013-11-27 2015-06-03 Thomson Licensing Method for distributing available bandwidth of a network amongst ongoing traffic sessions run by devices of the network, corresponding device.
EP3057266A1 (en) * 2015-02-11 2016-08-17 Thomson Licensing Distribution of bandwidth in a network
US10728248B2 (en) * 2015-07-30 2020-07-28 Verizon Patent And Licensing, Inc. Validating toll-free access to streaming media content using a signature
US9813299B2 (en) * 2016-02-24 2017-11-07 Ciena Corporation Systems and methods for bandwidth management in software defined networking controlled multi-layer networks
US10813112B2 (en) 2016-06-13 2020-10-20 Telefonaktiebolaget Lm Ericsson (Publ) Application aware scheduling and resource management
WO2018132964A1 (zh) * 2017-01-18 2018-07-26 深圳市大疆创新科技有限公司 传输编码数据的方法、装置、计算机系统和移动设备
EP3382962A1 (en) * 2017-03-30 2018-10-03 Thomson Licensing Method for managing active flows in a communication network by a network element, and corresponding network element
US10652166B2 (en) * 2017-06-27 2020-05-12 Cisco Technology, Inc. Non-real time adaptive bitrate recording scheduler
CN110069430B (zh) * 2019-04-19 2022-07-15 成都飞机工业(集团)有限责任公司 一种菊花链结构的数据采集系统及自适应传输方法
CN112566187B (zh) * 2020-12-08 2023-08-22 京信网络系统股份有限公司 带宽分配方法、装置、计算机设备和计算机可读存储介质
WO2022139961A1 (en) * 2020-12-23 2022-06-30 Arris Enterprises Llc System and method for adaptive streaming management

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064604A1 (en) * 2005-09-20 2007-03-22 Liren Chen Adaptive quality of service policy for dynamic networks

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW335578B (en) * 1995-05-30 1998-07-01 Accton Technology Corp The method and system of data traffic bridging
TW317054B (ko) * 1995-08-11 1997-10-01 Ericsson Telefon Ab L M
IL117366A (en) * 1996-03-04 1999-05-09 Madge Networks Israel Limited System for parameter analysis in asynchronous transfer mode (atm) networks
US7028088B1 (en) * 1996-04-03 2006-04-11 Scientific-Atlanta, Inc. System and method for providing statistics for flexible billing in a cable environment
US6006264A (en) * 1997-08-01 1999-12-21 Arrowpoint Communications, Inc. Method and system for directing a flow between a client and a server
US7260635B2 (en) * 2000-03-21 2007-08-21 Centrisoft Corporation Software, systems and methods for managing a distributed network
US7032020B2 (en) * 2001-03-30 2006-04-18 Intel Corporation System and method for determining segment and link bandwidth capacities
US7587512B2 (en) * 2002-10-16 2009-09-08 Eric White System and method for dynamic bandwidth provisioning
US20040103193A1 (en) * 2002-11-08 2004-05-27 Pandya Suketu J. Response time and resource consumption management in a distributed network environment
JP4394590B2 (ja) * 2005-02-22 2010-01-06 株式会社日立コミュニケーションテクノロジー パケット中継装置および通信帯域制御方法
WO2007071198A1 (en) * 2005-12-23 2007-06-28 Hongkong Applied Science And Technology Research Institute Co., Ltd. A distributed wireless network with dynamic bandwidth allocation
US7805757B2 (en) * 2005-12-30 2010-09-28 Alcatel-Lucent Usa Inc. Control of communication session attributes in network employing firewall protection
US8531954B2 (en) * 2006-08-22 2013-09-10 Centurylink Intellectual Property Llc System and method for handling reservation requests with a connection admission control engine
US7843831B2 (en) * 2006-08-22 2010-11-30 Embarq Holdings Company Llc System and method for routing data on a packet network
US8391166B2 (en) * 2006-09-13 2013-03-05 Broadcom Corporation Adaptive packet size modification for voice over packet networks
CN100571175C (zh) * 2006-09-30 2009-12-16 华为技术有限公司 一种无线通信网络带宽分配方法与装置
US7743161B2 (en) 2006-10-10 2010-06-22 Ortiva Wireless, Inc. Digital content buffer for adaptive streaming
US7979550B2 (en) * 2007-05-24 2011-07-12 Sihai Xiao Methods and apparatuses for adjusting bandwidth allocation during a collaboration session
CN101170497A (zh) * 2007-11-20 2008-04-30 中兴通讯股份有限公司 报送网络资源信息数据的方法及装置
CN101257454B (zh) * 2008-03-21 2012-01-25 北京星网锐捷网络技术有限公司 一种带宽管理方法及装置
US8102865B2 (en) * 2008-05-16 2012-01-24 Microsoft Corporation Group based allocation of network bandwidth
EP2200230B1 (en) * 2008-12-16 2014-03-12 Alcatel Lucent Method and device for performing traffic control in telecommunication networks
US8576728B2 (en) * 2009-09-30 2013-11-05 Verizon Patent And Licensing Inc. Resource management in dynamic network environments
US20110087765A1 (en) * 2009-10-08 2011-04-14 Magor Communications Corporation Network bandwidth management system
WO2011074659A1 (ja) * 2009-12-18 2011-06-23 日本電気株式会社 移動体通信システム、その構成装置、トラヒック平準化方法およびプログラム
EP2556439A4 (en) * 2010-04-08 2015-03-04 Vasona Networks CONTINUOUS BANDWIDTH MANAGEMENT FOR MULTIPLE CUSTOMERS
WO2011139305A1 (en) * 2010-05-04 2011-11-10 Azuki Systems, Inc. Method and apparatus for carrier controlled dynamic rate adaptation and client playout rate reduction
US9098333B1 (en) * 2010-05-07 2015-08-04 Ziften Technologies, Inc. Monitoring computer process resource usage
JP5472156B2 (ja) * 2011-02-28 2014-04-16 ブラザー工業株式会社 通信装置、通信方法、及び通信プログラム
TW201238379A (en) * 2011-03-04 2012-09-16 Chia-Kun Liu An applies to network information flow distribution method
WO2012134530A1 (en) 2011-04-01 2012-10-04 Intel Corporation Cross-layer optimized adaptive http streaming
US8782270B2 (en) 2011-06-07 2014-07-15 Smith Micro Software, Inc. Method and system for streaming live teleconferencing feeds to mobile client devices
US9258344B2 (en) 2011-08-01 2016-02-09 Intel Corporation Multi-hop single sign-on (SSO) for identity provider (IdP) roaming/proxy
US9456387B2 (en) 2011-10-05 2016-09-27 Alcatel Lucent Method and apparatus for improving adaptive streaming video quality by optimizing resource allocation
EP2587824A1 (en) * 2011-10-27 2013-05-01 Thomson Licensing Method and apparatus to manage the operation of an adaptive streaming client
CN102571583A (zh) * 2012-01-11 2012-07-11 浙江工业大学 一种用于WOBAN的QoS感知的自适应带宽分配系统及方法
EP2879339A1 (en) * 2013-11-27 2015-06-03 Thomson Licensing Method for distributing available bandwidth of a network amongst ongoing traffic sessions run by devices of the network, corresponding device.

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064604A1 (en) * 2005-09-20 2007-03-22 Liren Chen Adaptive quality of service policy for dynamic networks

Also Published As

Publication number Publication date
TW201521394A (zh) 2015-06-01
KR102286957B1 (ko) 2021-08-05
CN105765925A (zh) 2016-07-13
US10044633B2 (en) 2018-08-07
CN110620938A (zh) 2019-12-27
WO2015078658A1 (en) 2015-06-04
TWI680662B (zh) 2019-12-21
JP6442507B2 (ja) 2018-12-19
EP2879339A1 (en) 2015-06-03
BR112016012135B1 (pt) 2023-04-11
BR112016012135A2 (ko) 2017-08-08
CN105765925B (zh) 2019-11-12
JP2017504995A (ja) 2017-02-09
BR112016012135B8 (pt) 2023-11-21
US10848433B2 (en) 2020-11-24
US20180309694A1 (en) 2018-10-25
EP3075114A1 (en) 2016-10-05
US20170171103A1 (en) 2017-06-15

Similar Documents

Publication Publication Date Title
KR102286957B1 (ko) 네트워크의 디바이스들에 의해 수행되는 지속적인 트래픽 세션들 사이에서 네트워크의 사용 가능한 대역폭을 분배하기 위한 방법 및 그 장치
CN107683600B (zh) 用于响应于客户端的视频缓冲器特性来管理abr比特率递送的系统和方法
US10419507B2 (en) Method and device for reserving bandwidth for an adaptive streaming client
JP2017504995A5 (ko)
US20210195271A1 (en) Stream control system for use in a network
AU2016218082B2 (en) Distribution of bandwidth in a network
JP2014090419A (ja) 通信パラメータに従ってコンテンツをダウンロードするための方法、および、関連するコンテンツ受信機
US11265356B2 (en) Network assistance functions for virtual reality dyanmic streaming
US11350160B1 (en) Management of a client device buffer
EP2869523A1 (en) Method and device for reserving bandwidth for an adaptive streaming client

Legal Events

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