KR101456845B1 - 상호연결 네트워크에서의 패킷 레벨 서열화 - Google Patents

상호연결 네트워크에서의 패킷 레벨 서열화 Download PDF

Info

Publication number
KR101456845B1
KR101456845B1 KR1020107004578A KR20107004578A KR101456845B1 KR 101456845 B1 KR101456845 B1 KR 101456845B1 KR 1020107004578 A KR1020107004578 A KR 1020107004578A KR 20107004578 A KR20107004578 A KR 20107004578A KR 101456845 B1 KR101456845 B1 KR 101456845B1
Authority
KR
South Korea
Prior art keywords
data
bandwidth
stream
priority
network
Prior art date
Application number
KR1020107004578A
Other languages
English (en)
Other versions
KR20100066469A (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 KR20100066469A publication Critical patent/KR20100066469A/ko
Application granted granted Critical
Publication of KR101456845B1 publication Critical patent/KR101456845B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • 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/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • 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
    • H04L65/762Media network packet handling at the source 
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23611Insertion of stuffing data into a multiplex stream, e.g. to obtain a constant bitrate
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • 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
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • 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/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • 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/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Combinations Of Printed Boards (AREA)
  • Details Of Connecting Devices For Male And Female Coupling (AREA)
  • Monitoring And Testing Of Exchanges (AREA)

Abstract

본 발명은 상호연결 네트워크에서의 패킷 레벨 서열화를 위한 방법 및 장치에 관한 것이다. 장치의 실시예는 수신 장치로 제1 우선순위의 데이터 패킷 및 제2 우선순위의 데이터 패킷을 갖는 복수의 데이터 패킷을 포함하는 데이터 스트림을 전송하는 송신기를 포함한다. 장치는 더욱이 상기 송신기의 동작을 지시하고, 데이터 스트림을 제1 우선순위의 데이터 패킷에 대한 제1 서브스트림 및 제2 우선순위의 데이터 패킷에 대한 제2 서브 스트림을 포함하는 복수의 서브스트림으로 분할하는 네트워크 유닛을 포함한다.

Description

상호연결 네트워크에서의 패킷 레벨 서열화{PACKET LEVEL PRIORITIZATION IN INTERCONNECTION NETWORKS}
본 발명의 실시예는 일반적으로 네트워크 분야에 관한 것으로, 더 구체적으로는, 상호연결 네트워크에서의 패킷 레벨 서열화(packet level prioritization)를 위한 방법 및 장치에 관한 것이다.
네트워크는 복수의 개인 미디어 장치들을 포함하는 다양한 장치들을 상호연결할 수 있다. 다양한 미디어 장치들은, 데이터를 공유하고, 편의성을 증가시키며, 각 요소를 최대한 사용하기 위하여 함께 네트워킹될 수 있다. 예를 들면, 가정 내의 특정 장치들이 함께 연결될 수 있다. 이러한 환경에는, 오디오, 비디오, 게임, 및 기타 사용을 위해 디지털 미디어 콘텐츠를 스트리밍하는 복수의 잠재적인 소스와 사용자가 존재한다.
상호연결 네트워크를 통하여 미디어 스트림과 같은 데이터 스트림을 전송할 때, 흐름(flow)을 구성하는 패킷의 각 클래스에 우선순위를 부여하는 것이 바람직할 수 있다. 정체 기간 동안, 네트워크 인프라스트럭처는 버퍼 충돌(buffer contention) 때문에 패킷을 드롭(drop)할 수 있다. 그러한 동작에 있어서, 우선순위의 순서에 따라 패킷을 드롭하는 것이 일반적으로 더 바람직하다.
그러나, 패킷-레벨의 우선순위를 지원하는 것은 구현하기 어렵고, 일반적으로 이용가능한 것은 아니다. 예를 들어, 개인 미디어 장치의 네트워크에서의 동작을 구현하기 위해 네트워크 인프라스트럭처는 일반적으로 패킷-레벨의 우선순위에 대한 지원을 명시적으로 제공하는 것이 요구된다. 구현의 복잡성은 제한된 자원을 갖는 네트워크 장치에 대해 종래의 프로세스를 비실용적으로 만든다. 더욱이, 종래의 프로세스는 일반적으로 이용가능한 우선순위 레벨(priority levels)의 수를 제한하므로, 만약 데이터 스트림에 다수의 데이터 형식이 존재한다면 프로세스의 유용성을 제한하게 된다.
상호연결 네트워크에서의 패킷 레벨 서열화를 위한 방법 및 장치가 제공된다.
본 발명의 제1 특징에서, 장치는 제1 우선순위의 데이터 패킷 및 제2 우선순위의 데이터 패킷을 포함하는 복수의 데이터 패킷을 포함하는 데이터 스트림을 수신 장치로 전송하는 송신기를 포함할 수 있다. 장치는 송신기의 동작을 지시하고, 데이터 스트림을 제1 우선순위의 데이터 패킷에 대한 제1 서브스트림(sub-stream) 및 제2 우선순위의 데이터 패킷에 대한 제2 서브스트림을 포함하는 복수의 서브스트림으로 분할하기 위한 네트워크 유닛을 더 포함할 수 있다.
본 발명의 제2 특징에서, 장치는 제1 우선순위의 데이터 패킷을 포함하는 제1 데이터 스트림 및 제2 우선순위의 데이터 패킷을 포함하는 제2 데이터 스트림을 포함하는 복수의 데이터 스트림을 수신하는 수신기를 포함한다. 장치는 수신기의 동작을 지시도록 구성된 네트워크 유닛을 포함하는데, 이는 복수의 데이터 스트림이 단일 데이터 스트림의 부분이라는 것을 결정하고, 단일 데이터 스트림과 같은 방법으로 복수의 데이터 스트림을 처리한다.
본 발명의 제3 특징에서, 네트워크는 데이터를 전송하는 제1 네트워크 장치 및 제1 네트워크 장치로부터 데이터를 수신하는 제2 네트워크 장치를 포함한다. 데이터는 제1 우선순위를 갖는 하나 이상의 데이터 패킷 및 제2 우선순위를 갖는 하나 이상의 데이터 패킷을 포함하는 복수의 데이터 패킷을 포함한다. 제1 네트워크 장치는 제1 대역폭을 갖는 하나 이상의 데이터 스트림에서 제1 우선순위의 데이터 패킷을 전송하고, 제2 대역폭을 갖는 하나 이상의 데이터 스트림에서 제2 우선순위의 데이터 패킷을 전송한다. 데이터 전송에서 간섭이 일어날 때, 제2 네트워크 장치는 적어도 부분적으로 각 데이터 스트림의 대역폭에 기초하여 하나 이상의 데이터 스트림을 드롭한다.
본 발명의 제4 특징에서, 네트워크에서 데이터 패킷을 서열화하는 방법은 각 데이터 형식이 우선순위 레벨을 갖는 복수의 데이터 형식을 포함하는 데이터 스트림의 전송을 위한 요청을 수신하는 단계를 포함한다. 데이터 스트림은 특정 우선순위 레벨의 데이터를 가지는 복수의 데이터 서브스트림으로 분할된다. 대역폭은 각 데이터 서브스트림에 대해 할당되고, 데이터 서브스트림은 네트워크를 통해 전송되는데, 각 서브스트림의 대역폭은 서브스트림 내의 데이터의 우선순위 레벨에 기초한다.
본 발명의 실시예는 한정의 목적이 아니라 예시의 목적을 위해 도시되었고, 도면에서 동일한 참조 번호들은 비슷한 구성요소들을 지칭한다.
도 1은 변화하는 우선순위의 데이터 패킷을 갖는 데이터 스트림을 전송하는 실시예를 도시하는 도면.
도 2a는 변화하는 우선순위의 데이터를 포함하는 데이터 스트림을 전송하는 네트워크 장치들의 실시예를 도시하는 도면.
도 2b는 데이터 우선순위를 나타내는 복수의 데이터 스트림을 전송하는 네트워크 장치들의 실시예를 도시하는 도면.
도 3은 미디어 데이터 스트림의 데이터 패킷들에 대한 패킷 우선순위를 도시하는 도면.
도 4는 패킷 레벨 우선순위를 설정하기 위하여 데이터 스트림을 분할하는 실시예를 도시하는 도면.
도 5는 데이터 서브스트림의 패킷 서열화를 위한 프로세스들의 실시예를 도시하는 흐름도.
도 6은 엔터테인먼트 네트워크의 실시예를 도시하는 도면.
도 7은 네트워크 장치의 실시예를 도시하는 도면.
도 8은 네트워크 장치의 구성요소의 실시예를 도시하는 도면.
본 발명의 실시예는 일반적으로 상호연결 네트워크에서의 패킷 레벨 서열화에 관한 것이다.
본 명세서에서 사용되는 "엔터테인먼트 네트워크"는 장치들 사이에서 (음악, 오디오/비디오, 게임, 사진, 및 기타 콘텐츠를 포함하는) 디지털 미디어 콘텐츠를 전달하는 상호연결 네트워크를 의미한다. 엔터테인먼트 네트워크는 가정용 네트워크, 사업용 엔터테인먼트 네트워크, 또는 엔터테인먼트 장치의 임의의 다른 네트워크와 같은 개인용 엔터테인먼트 네트워크를 포함할 수 있다. 이런 네트워크에서, 디지털 텔레비전 튜너, 케이블 셋탑박스, 비디오 스토리지 서버, 및 기타 소스 장치와 같은 특정 네트워크 장치들이 미디어 콘텐츠의 소스가 될 수 있다. 디지털 텔레비전, 홈 씨어터, 오디오 시스템, 게임 시스템, 및 기타 장치와 같은 다른 장치들이 미디어 콘텐츠를 표시하거나 사용할 수 있다. 더욱이, 비디오 및 오디오 스토리지 서버와 같은 특정 장치들은 미디어 콘텐츠를 저장하거나 전송하는 것으로 의도될 수 있다. 특정 장치는 복수의 미디어 기능을 수행할 수 있다. 소정의 실시예에서, 네트워크 장치는 단일 로컬 영역 네트워크에서 같은 곳에 배치될(co-located) 수 있다. 다른 실시예에서, 네트워크 장치들은 로컬 영역 네트워크들 사이의 터널링(tunneling)을 통하는 것과 같이, 복수의 네트워크 부분에 걸쳐 배치될 수 있다. 엔터테인먼트 네트워크는 복수의 데이터 부호화 및 암호화 프로세스를 포함할 수 있다.
소정의 실시예에서, 상호연결 네트워크에 대하여 패킷 서열화(packet prioritization)가 제공된다. 소정의 실시예에서, 데이터 스트림은 각 서브스트림에서의 데이터에 대한 우선순위 레벨에 기초하여 서브스트림으로 분할되고, 각 서브스트림에 대해 대역폭이 설정된다. 소정의 실시예에서, 각 서브스트림의 대역폭은 서브스트림에서의 데이터의 우선순위에 기초한다. 소정의 실시예에서, 최고 우선순위의 데이터 서브스트림에는 최소 대역폭이 제공되고, 최저 우선순위 데이터 서브스트림에는 최대 대역폭이 제공된다. 소정의 실시예에서, 서브스트림들은, 변화하는 스트림 특징들에 대응하고 서브스트림들 간의 상대적인 대역폭들을 유지하기 위하여 동적으로 수정될 수 있다.
네트워크 충돌 기간 동안, 전송된 데이터 패킷이 드롭될 수 있다. 만약 복수의 데이터 스트림이 활성화되어 있다면, 네트워크 인프라스트럭처에 의해 더 넓은 대역폭의 데이터 스트림이 먼저 드롭되는 것이 일반적이다. 예를 들어, 이 동작은 일반적으로 상품 이더넷 스위치(commodity Ethernet switches) 또는 유사한 장치를 갖는 네트워크에서 행하여진다. 소정의 실시예에서, 서브스트림의 대역폭은 네트워크에서 패킷 우선순위에 따라 우선순위의 순서를 구현하기 위해 사용될 수 있다. 그러므로, 소정의 실시예에서, 패킷 우선순위는 충돌되는 네트워크에서 어떤 패킷이 드롭될지에 영향을 미치는데 사용될 수 있다.
하나의 예에서, 암호화된 오디오/비디오 스트림이 제1 네트워크 장치에서 제2 네트워크 장치로 전송될 수 있다. 데이터 스트림은, 데이터 손실이 어떻게 결과 출력(resulting output)에 영향을 미칠지에 기초하여 변화하는 우선순위 레벨을 갖는 다양한 상이한 형식의 데이터를 포함할 수 있다. 소정의 실시예에서, 키 자료(key material)를 포함하는 데이터 패킷에는 최고 우선순위가 할당될 수 있고, (사람들은 오디오 아티팩츠에 대한 참을성이 없기 때문에) 오디오 데이터를 포함한 패킷에는 그 다음 우선순위가 할당되며, 다른 프레임을 예측하는데 사용되는 키 비디오 프레임(key video frames)에 대한 데이터를 포함한 패킷에는 그 다음 우선순위가 할당되고, 예측되는 비디오 프레임 데이터(predicted video frame data)를 포함하는 패킷에는 그 다음의 우선순위가 할당된다.
소정의 실시예에서, 최저 우선순위를 갖는 빈 프레임(null frames)과 같은 여분의 프레임이 스트림에 추가될 수 있고, 빈 프레임을 가장 먼저 드롭한다. 빈 프레임의 드롭은 이들 패킷이 프레젠테이션의 부분을 형성하지 않기 때문에 오디오/비디오 프레젠테이션의 품질에 해로운 영향을 미치지 않는다. 소정의 실시예에서, 애플리케이션은 낮은 우선순위의 빈 서브스트림에서의 손실을 검출할 수 있고, 프레젠테이션이 저하되기 전에 애플리케이션의 대역폭을 감소시키려는 조치를 취할 수 있다. 만약 오디오/비디오 스트림이 계층적 부호화 방식(hierarchical encoding scheme)을 사용한다면, 스트림은 낮은 대역폭에서 계속될 수 있다. 또 다른 접근방법에서, 만약 서비스에서 저하가 발생하면 다른 활성화된 스트림이 인터럽트 없이 계속될 수 있다는 전제 하에, 모든 스트림이 균일하게 저하되기보다 데이터 스트림이 완전히 중단될 수 있다.
종래의 네트워킹 장치들이 일반적으로 패킷 기반의 서열화를 지원하지 않음에도 불구하고, 네트워킹 장치들은 일반적으로 데이터 흐름을 인식한다. 이러한 장치는 일반적으로 소스와 목적지 사이의 패킷의 활성화된 스트림에 의해, 엔드포인트에 대한 주소(예를 들면, IP 주소) 및 엔드포인트 내의 선택자 주소(예를 들면, UDP 또는 TCP 포트 번호)에 의해 구별되는 흐름을 식별한다. 충돌 기간 하에서, 이런 방식으로 데이터 흐름을 인식하는 장치는 일반적으로 최고 대역폭을 가지는 것으로 인식된 흐름으로부터 패킷들을 우선적으로(preferentially) 드롭하는 정책을 채택한다.
그러므로, 소정의 실시예에서, 네트워크는, 데이터 패킷의 우선순위 레벨과 반비례 관계인 데이터 패킷에 대한 대역폭을 제공하도록 동작하여, 최저 우선순위 데이터 패킷에는 최고 대역폭이 부여되고, 최고 우선순위 데이터 패킷에는 최저 대역폭이 부여된다. 소정의 실시예에서, 데이터 흐름은 개별적인 서브흐름으로 분할되어, 최고 우선순위 패킷들이 최저 대역폭 서브흐름(들){sub-flow(s)}을 차지하고, 최저 우선순위 패킷들이 최고 대역폭 서브흐름(들)을 차지한다. 소정의 실시예에서, 흐름에 기초한 서열화를 활용하는 네트워크의 동작은 특정 데이터 흐름의 상이한 요소들을 효과적으로 서열화하게 한다.
소정의 실시예에서, 데이터 스트림을 서브스트림으로 분할하는 것 및 이런 서브스트림에 대한 대역폭을 설정하는 것은 동적으로 유지될 수 있다. 데이터 스트림 특성은 자주 변할 수 있고, 그러므로 데이터 스트림으로부터 생성된 서브스트림의 특성 또한 변할 수 있을 것이다. 소정의 실시예에서, 서브스트림은 적어도 부분적으로는 데이터 스트림의 변화들에 기초하여 수정될 수 있다. 소정의 실시예에서, 데이터 스트림의 전과정(life)을 통해 데이터의 각 우선순위 레벨을 나타내는 서브스트림에 대한 상대적인 대역폭 관계를 유지하기 위해, 서브스트림이 수정될 수 있다. 서브스트림에 대한 수정은, 임의의 서브스트림에 대한 대역폭을 수정하는 단계, 서브스트림을 더 작은 서브스트림으로 분할하는 단계, 서브스트림을 더 큰 서브스트림으로 합치는 단계, 새로운 서브스트림을 생성하는 단계, 또는 존재하는 서브스트림을 제거하는 단계를 포함할 수 있지만, 이에 한정되는 것은 아니다.
예를 들어, 암호화된 오디오/비디오 스트림이 네트워크에서 전송된다. 전형적으로, 이러한 데이터 스트림은 특정 IP 주소에서 그리고 단일 포트에서 수신기로 전송될 것이다. 소정의 실시예에서, 송신기는 스트림을 동일 IP 주소로 전달하지만, 대신 일련의 포트에 걸쳐 분할된다. 소정의 실시예에서, (예를 들면, 키 데이터, 오디오 데이터, 키 비디오 프레임 데이터, 또는 예측되는 비디오 프레임 데이터인) 각 서브스트림은 상이한 포트 상에서 전송될 것이다. 소정의 실시예에서, 우선순위가 감소함에 따라 서브스트림들 사이의 대역폭이 증가하는 것을 보장하기 위해 서브스트림은 빈 패킷(null packets)으로 채워질 수 있다. 예를 들면, 예측되는 비디오 데이터는 특정 데이터 스트림에 대한 키 프레임 비디오 데이터보다 낮은 대역폭을 요구할 수 있지만, 예측되는 비디오 데이터의 낮은 우선순위는 더 넓은 대역폭이 필요하다는 것을 의미한다. 소정의 실시예에서, 예측되는 비디오 프레임 데이터 서브스트림은 여분의 패킷으로 채워진다. 소정의 실시예에서 여분의 패킷은 빈 패킷을 포함한다. 소정의 실시예에서 서브스트림의 필요한 대역폭을 유지하기 위하여 충분한 여분 패킷이 포함된다.
그러나, 높은 우선순위 서브흐름보다 넓은 대역폭을 할당받기 위해 단순히 낮은 우선순위 데이터의 서브흐름으로 채워지는 것은 전체적으로 용납할 수 없는 대역폭 사용을 야기할 수 있다. 이 상황을 완화하기 위해, 소정의 실시예에서, 전송 장치는 채워짐이 필요할 때 허용가능 대역폭의 사용(acceptable bandwidth usage)을 가져오는(yield) 대역폭 양자(bandwidth quanta)를 사용하여 데이터 흐름을 서브흐름으로 분할할 수 있다. 하나의 예에서, 비디오 스트림은 키 프레임 데이터를 포함하는 1Mb/s의 서브스트림 및 예측되는 프레임 데이터를 포함하는 1.5Mb/s의 서브스트림으로 분할될 수 있다. 하나의 접근 방법에서, 최저 우선순위 서브흐름의 대역폭 요청으로부터 측정이 역으로 진행될 수 있다. 소정의 실시예에서, 낮은 우선순위의 서브흐름에 그 다음 높은 우선순위의 서브흐름보다 대역폭이 적게 할당될 때, 높은 우선순위의 서브흐름은 낮은 우선순위의 서브흐름에 대한 대역폭 요청에 기초하여 추가적인 서브흐름으로 분할된다. 비디오 스트림 예를 계속하면, 만약 예측되는 프레임 데이터를 갖는 서브흐름이 6Mb/s을 요구하고 키 프레임 데이터를 갖는 서브 흐름이 15Mb/s를 요구한다면, 키 프레임 데이터를 갖는 서브흐름은 각각 5Mb/s의 대역폭을 갖는 3개의 서브흐름들로 분할될 수 있다. 낮은 우선순위의 서브흐름에 대하여 대역폭이 절대적으로(strictly) 증가하여야 한다는 요구조건을 보증하면서, 대역폭 사용을 최적화하는 다양한 설계들이 가능하다.
소정의 실시예에서, 개별 포트에서 데이터 서브스트림을 수신하는 장치는 데이터 흐름이 단일 데이터 스트림의 부분이라는 것을 결정할 것이다. 소정의 실시예에서, 장치는 데이터 흐름이 단일 데이터 스트림처럼 도착한 것과 같이 데이터 흐름을 처리할 것이다. 소정의 실시예에서, 장치는 서브스트림의 대역폭을 유지하기 위해 추가된 빈 데이터 패킷을 드롭하거나 무시할 수 있다. 소정의 실시예에서, 장치는 데이터 서브스트림의 대역폭을 유지하기 위해 추가된 임의의 복제 데이터 패킷 또는 재전송 데이터 패킷을 활용할 수 있다.
소정의 실시예에서, 시스템에서 사용될 수 있는 우선순위의 수에는 제한이 없다. 대조적으로, 종래의 패킷-레벨의 우선순위 설계는 (예를 들어, 4개 또는 8개의 허용된 우선순위 레벨일 수 있는) 적은 수의 우선순위 레벨로 제한되었다. 소정의 실시예에서, 데이터 흐름은 애플리케이션이 서열화 요청을 달성하기 위해 요구하는 만큼의 서브흐름으로 분할될 수 있다.
소정의 실시예에서, 흐름에 기초한 서열화 처리(a flow-based prioritization process)는 애플리케이션이 특정 데이터 흐름 내에서 패킷의 상대적인 서열화를 정의하도록 허용하지만, 일반적으로 패킷-레벨의 서열화는 전반적으로 모든 플로우에 대해 우선순위를 적용한다. 소정의 실시예에서, 만약 수용된 대역폭 양자(accepted bandwidth quanta)에서 상호 동의가 달성된다면, 제안된 설계는 전반적인 서열화를 달성할 수 있다. 소정의 실시예에서, 흐름에 기초한 서열화 처리는 현재의 네트워킹 인프라스트럭처에 변화 또는 향상을 요구하지 않는다. 만약 패킷-레벨의 우선순위에 대한 지원이 널리 보급된다면, 사용가능한 우선순위 설계를 사용함으로써 제안된 설계는 흐름 채우기 요청(flow padding requirements; 낭비되는 대역폭)을 감소시킬 수 있을 것이고, 오직 흐름 내 서열화를 위한 메커니즘만이 남을 것이다.
소정의 실시예에서, 중앙 중재기(a central arbiter) 또는 서버의 사용 없이, 그리고 경합된 네트워크 요소들 사이의 조정 또는 통신 없이 흐름에 기초한 서열화가 구현된다. 소정의 실시예에서, 데이터 흐름을 제공하고 수신하는 네트워크 개체들이 최소 자원을 보유하는 네트워킹 환경에서, 흐름에 기초한 서열화가 제공된다. 소정의 실시예에서, 그러한 동작들에 대해 실행가능한 차별화된 서비스를 요구하지 않고도 흐름에 기초한 서열화가 제공된다.
도 1은 변화하는 우선순위의 데이터 패킷을 갖는 데이터 스트림을 전송하는 단계의 실시예를 도시하는 도면이다. 이 도면에서, 네트워크 장치 A(105)는 네트워크(115)를 통해 데이터 스트림(120)을 네트워크 장치 B(110)로 전송하도록 요청된다. 데이터 스트림은 미디어 데이터 스트림을 포함할 수 있지만, 이에 한정되는 것은 아니다. 예를 들면, 네트워크 장치 A(105)는 (셋톱 박스 또는 유사한 장치와 같은) 오디오/비디오 데이터의 소스일 수 있고, 네트워크 장치 B(110)는 오디오/비디오 데이터를 위한 표시 장치일 수 있다. 네트워크(115)는, 예를 들면, 상품 이더넷 스위치일 수 있는 스위치(160)를 포함하는 임의의 수의 개재 장치(intervening devices)를 포함할 수 있다.
데이터 스트림(120)은 최저 우선순위(125)에서부터 최고 우선순위(130)에 이르는, 변화하는 우선순위 레벨의 데이터 패킷을 포함할 수 있다. 예를 들면, 본 명세서에 우선순위 레벨 4 그룹(135), 우선순위 레벨 3 그룹(140), 우선순위 레벨 2 그룹(145), 및 우선순위 레벨 1 그룹(150)으로 도시되는 네 그룹의 데이터 패킷이 있을 수 있다. 만약 네트워크(115)가 패킷 우선순위를 인식하지 못하고 다른 데이터 트래픽 간 간섭에 직면한다면, 데이터 스트림(120)의 데이터 패킷은 패킷 우선순위와 상관없이 드롭되거나, 또는 데이터 스트림(120) 전체가 드롭될 수 있다.
소정의 실시예에서, 데이터 스트림(120)은 복수의 서브스트림으로 분할되는데, 각각의 서브스트림은 데이터 패킷의 하나 이상의 우선순위를 나타낸다. 소정의 실시예에서, 각 서브스트림의 대역폭은 우선순위 레벨 또는 서브스트림에서 전송되는 데이터 패킷의 레벨과 반비례한다. 예를 들면, 우선순위 레벨 4 그룹(135)에 대한 서브스트림과 같이, 서브스트림은 최저 우선순위 패킷을 나타낸다. 각 서브스트림의 대역폭을 유지하도록 여분의 패킷이 추가될 수 있다.
그러나 우선순위 레벨 3 그룹(140)에 대해 요구되는 대역폭은 우선순위 레벨 4 그룹(135)에 대해 요구되는 대역폭보다 넓어보일 수 있다. 소정의 실시예에서, 낮은 우선순위 그룹에 대해 요구되는 대역폭을 증가시키는 것보다는 우선순위 레벨 3 그룹(140)이 복수의 서브스트림으로 분할될 수 있다. 또한, 우선순위 레벨과 반비례하는 각 우선순위 레벨에 대한 대역폭을 설정하기 위해 서브스트림이 분할될 수도 있다. 결과로 얻은 서브스트림(resulting sub-streams)은 필요하다면 데이터를 전송할 때 스위치(160) 또는 기타 장치의 동작과 같은 네트워크 인프라스트럭처의 동작에 의해 우선순위의 순서에 따라 드롭될 수 있다.
도 2a는 변화하는 우선순위의 데이터를 포함하는 데이터 스트림을 전송하는 네트워크 장치의 실시예를 도시하는 도면이다. 이 도면에서, 네트워크 인터페이스(225)를 사용하여 데이터 스트림을 수신하는 IP 주소가 yyy인 장치 B(210)로 데이터 스트림(215)을 전송하기 위해, IP 주소가 xxx인 장치 A(205)는 네트워크 인터페이스를 사용한다. 데이터 스트림(215)은, 예를 들면, 변화하는 우선순위 레벨의 복수의 데이터 형식을 포함하는 미디어 데이터 스트림일 수 있다.
데이터 스트림(215)은 보통 IP 주소가 yyy인 하나의 포트, 포트1(230)로 향한다. 그러나 소정의 실시예에서, 데이터 스트림은, 수신 장치의 개별 포트로 향하는 복수의 데이터 스트림으로 분할된다.
도 2b는 데이터 우선순위를 나타내는 복수의 데이터 스트림을 전송하는 네트워크 장치들의 실시예를 도시하는 도면이다. 도시된 바와 같이, 도 2a에 도시된 장치 A(205)로부터의 데이터 스트림(215)은 데이터 서브스트림(245, 250, 및 255)으로 분할된다. 소정의 실시예에서, 데이터 스트림은 IP 주소 yyy에서 포트1(230)로 향하는 서브스트림(245), 포트2(235)로 향하는 서브스트림(250), 및 포트3(240)으로 향하는 서브스트림(255)과 같이 장치 B의 개별 포트로 향한다. 소정의 실시예에서, 장치 B는 서브스트림(245, 250, 및 255)이 단일 데이터 스트림의 부분이라는 것을 결정할 것이고, 서브스트림이 단일 데이터 스트림으로 도착한 것과 같이 그러한 서브스트림을 처리할 것이다.
도 3은 미디어 데이터 스트림의 데이터 패킷에 대한 패킷 서열화를 도시하는 도면이다. 미디어 데이터 스트림(305)은 키 자료(310)를 포함하고, 키 자료(310)에 최고 우선순위가 부여되며, 그 다음으로 오디오 데이터를 포함하는 패킷(315), 다른 프레임이 예측되는 키 비디오 프레임에 대한 데이터를 포함하는 패킷(320), 및 예측되는 비디오 프레임 데이터를 포함하는 패킷(325) 순서로 우선순위가 부여된다. (도 3에 도시되는 패킷의 순서 및 번호는 오직 예시의 목적으로 도시되었으며, 데이터 스트림에서 전송되는 패킷을 나타내는 것은 아니다.)
소정의 실시예에서, 미디어 데이터 스트림은, 하나 이상의 서브스트림으로 표현되는 각 데이터 형식을 갖는 적어도 4개의 데이터 서브스트림으로 분할될 수 있다. 이 도면에서, 필요한 대역폭을 설정하기 위해 하나 이상의 빈 데이터 패킷들(330)로 채워질 수 있는 하나 이상의 서브스트림(340)에서 키 자료(310)를 포함하는 데이터 패킷은 최저 대역폭으로 전송된다. 그 후, 오디오 데이터(315)를 포함하는 패킷은 넓은 대역폭을 갖는 하나 이상의 서브스트림(345)에 포함되고, 그 다음으로 하나 이상의 서브스트림(350)에서 전송되는, 다른 프레임이 예측되는 키 비디오 프레임에 대한 데이터를 포함하는 패킷(320)이 포함된다. 마지막으로, 예측되는 비디오 프레임 데이터를 포함하는 패킷(325)은 최대 대역폭을 가지는 하나 이상의 데이터 스트림(355)에 포함된다. 소정의 실시예에서, 최저 우선순위 데이터 패킷(355)에 대해 가장 작게 요청된 대역폭에서의 최고 우선순위 데이터 패킷에 기초하여, 여분의 대역폭(excess bandwidth)이 제거될 수 있다.
도 4는 패킷 레벨의 우선순위를 설정하기 위한 데이터 스트림 분할의 실시예를 도시한다. 이 도면에서, 데이터 스트림(405)은 예를 들면 P1, P2, 및 P3을 포함하는 임의의 수의 데이터 우선순위 레벨을 포함할 수 있다. 데이터 스트림(405)은 3개의 서브스트림, 즉 P3의 서브스트림(410), P2의 서브스트림(415), P1의 서브스트림(420)으로 분할된다. 그러나, 결과로 얻은 대역폭은 데이터 패킷의 우선순위 레벨을 나타내지 않는다.
패킷 레벨 서열화에 대비하기 위하여 다른 서브스트림의 대역폭을 설정하도록 P3 서브스트림(410)의 대역폭이 사용될 수 있다. 이 예에서, 서브스트림(410)은 수정되지 않는 반면, 서브스트림(415)은 각각 서브스트림(410)의 대역폭보다 좁은 대역폭을 갖는 서브스트림(430 및 435)으로 분할된다. 그 후 서브스트림(420)은 너무 넓은 대역폭을 갖게 되므로 각각 서브스트림(430 및 435)의 대역폭보다 좁은 대역폭을 갖는 서브스트림(440, 445, 및 450)으로 분할된다. 요구되는 대역폭을 설정하기 위하여 빈 패킷, 복제 패킷 또는 재전송된 패킷과 같은 여분의 데이터 패킷이 삽입될 수 있다. 이 처리는 임의의 수의 우선순위 레벨까지 계속될 수 있는데, 각 서브스트림에 할당된 최종 대역폭은 그 다음으로 작은 우선순위를 갖는 서브스트림의 대역폭보다 좁다. 소정의 실시예에서, 데이터 스트림(405)의 임의의 변화에 대응하고 우선순위 레벨 간의 상대적인 대역폭 관계를 유지하기 위해 서브스트림(410-450)이 동적으로 수정될 수 있다.
도 5는 데이터 서브스트림의 패킷 서열화를 위한 처리의 실시예를 도시하는 흐름도이다. 도시된 바와 같이, 데이터 스트림의 전송을 위한 요청이 수신된다(502). 데이터 스트림에 데이터 패킷의 어떤 우선순위가 존재할 수 있는지가 결정된다(504). 데이터는 데이터 우선순위에 기초하여 서브스트림으로 분할된다(506). 각 서브스트림들에 대해, 요청되는 대역폭이 결정된다(508).
임의의 서브스트림의 대역폭이, 낮은 우선순위 서브스트림의 대역폭보다 넓은지가 결정된다(510). 소정의 실시예에서, 그 다음으로 높은 우선순위 데이터 형식의 요청된 대역폭과 비교되는 최저 우선순위 데이터 형식의 요청된 대역폭과 함께, 프로세스가 시작될 수 있다. 만약 임의의 서브스트림의 대역폭이, 낮은 우선순위 서브스트림의 대역폭보다 크다는 것이 결정되면, 여분의 대역폭을 갖는 그러한 서브스트림은 복수의 서브스트림으로 분할되고(512), 대역폭을 결정하는 프로세스가 계속된다(508).
서브스트림이 필요에 의해 분할될 때, 요구되는 대역폭을 제공하기 위하여, 각각의 결과로 얻어진 서브스트림은 여분의 데이터 패킷들로 채워지고(514), 각 서브스트림은 수신 장치의 개별 포트로 향하며(516), 서브스트림의 전송이 시작된다(518).
네트워크에서 간섭이 일어난다면, 대역폭에 기초하여 데이터 스트림이 드롭될 수 있고, 높은 대역폭이 할당된 스트림이 먼저 드롭될 수 있다. 이 프로세스는 낮은 대역폭이 할당된 스트림으로 전달되는 높은 우선순위의 데이터를 보존할 수 있다. 전송할 데이터가 더 있는 동안 프로세스가 계속되고(524), 데이터 스트림이 끝날 때 종료된다(526).
도 6은 엔터테인먼트 네트워크의 실시예를 도시하는 도면이다. 이 도면에서, 엔터테인먼트 네트워크 시스템(600)은 네트워크와 호환되는 임의의 미디어 장치의 연결을 제공한다. 상기 연결은 엔터테인먼트 네트워크(605)로의 연결과 같이 도시된다. 소정의 실시예에서, 장치들은 중앙 네트워크 서버가 없는 네트워크처럼 동작한다. 엔터테인먼트 네트워크를 통하여, 임의의 연결된 장치 간에 미디어 데이터 스트림이 전송될 수 있다. 추가로, 네트워크를 통하여 장치가 원격으로 조정될 수 있다. 동축 케이블, 이더넷 케이블 및 파이어와이어(firewire)를 포함하는 임의의 공지된 커넥터 및 연결 프로토콜, 그리고 와이파이(Wi-Fi), 블루투스 및 기타 무선 기술을 통한 무선 연결을 통해 장치는 네트워크로 연결될 수 있다.
소정의 실시예에서, 장치들은 임의의 미디어 소스(media sources) 또는 수신기를 포함할 수 있다. 도 6에서, 오피스(610)는 모뎀(622)을 통하여 네트워크(605)로의 인터넷 연결(620)을 제공할 수 있다. 인터넷으로부터 수신된 데이터는 임의의 스트리밍 미디어 소스를 포함할 수 있고, 임의의 스트리밍 미디어 소스는 (다운로딩된 음악 파일과 같은) 구매된 오디오 파일, (영화, 텔레비전, 및 기타의) 비디오 파일, 및 컴퓨터 게임을 포함할 수 있지만, 이에 한정되는 것은 아니다. 또한 다른 기능들 중 특정 미디어 스트림을 표시하거나 특정 컴퓨터 게임을 가동시킬 수 있는 모니터(626)를 활용하는 개인 컴퓨터(624)에 오피스(610)가 연결될 수 있다.
또한, 예를 들면 텔레비전(632)으로 데이터를 제공하기 위한 셋탑 박스(630)를 포함할 수 있는 침실(612) 안의 장치와 엔터테인먼트 네트워크가 연결될 수 있다. 추가로, 침실(또는 임의의 다른 공간)은 미디어 스토리지 유닛(628)을 포함할 수 있다. 미디어 스토리지 유닛(628)은 네트워크(605)에 연결된 임의의 소스로부터 데이터를 수신할 수 있고, 네트워크(605)에 연결된 임의의 데이터 수신기로 데이터를 제공할 수 있다. 미디어 스토리지 유닛(628)은 네트워크를 위한 임의의 형식의 미디어 스트림 데이터도 포함할 수 있다.
시스템은 더욱이, 예를 들어 케이블 또는 파이버 시스템(634), 또는 위성 디스크 네트워크(636)로부터 입력을 수신하는 거실(614)을 포함할 수 있다. 그러한 소스로부터의 미디어 입력은 네트워크(605) 및 제2 텔레비전(640)에 연결된 셋탑 박스(638)로 제공될 수 있다. 또한 거실 텔레비전(640)에 표시하기 위하여, 비디오 게임 유닛(642)이 네트워크(605)에 연결될 수 있다. 네트워크(605)에 연결된 제3 텔레비전(644)을 포함하는 부엌과 같이, 네트워크 장치를 보유한 임의의 수의 다른 방이 있을 수 있다. 다른 네트워크 장치도 존재할 수 있고, 집 도처에 위치한 스피커를 포함하는 스테레오 오디오 시스템을 포함할 수 있지만, 이에 한정되는 것은 아니다.
추가로, 임의의 수의 휴대용 개인 전자 장치가 네트워크에 연결될 수 있다. 장치는 케이블 또는 무선 신호를 통해 연결할 수 있고, 무선 신호는 블루투스(Bluetooth), 와이파이(Wi-Fi), 적외선, 또는 다른 유사한 무선통신 프로토콜을 포함하지만, 이에 한정되는 것은 아니다. 그러한 각 프로토콜은 와이파이 기지국(Wi-Fi base station)과 같은 네트워크(도 6에서 도시되지 않음)로의 인터페이스를 요구한다. 그러한 휴대용 개인 전자 장치는 디지털 카메라(646), 휴대폰(648), 개인용 음악 장치(650), 또는 비디오 카메라(652)를 포함할 수 있다. 또한, (집의 차고에 있을 때와 같이) 자동차가 네트워크에 근접할 때, 자동차(654)에 포함된 휴대용 시스템이 네트워크(605)에 연결될 수 있다. 예를 들면 네트워크의 범위 안에 있을 때, 휴대용 개인 전자 장치가 자동으로 네트워크에 연결된다. 네트워크에 연결된 동안, 장치는 네트워크를 통해 가능한 자동 업데이트 또는 장치들로의 다운로드를 포함해 데이터를 얻는 것, 또는 네트워크에 데이터를 제공하는 것이 가능할 수 있다. 일 실시예에서, 셋탑 박스(638)를 통해 거실 텔레비전(640)으로 디지털 카메라(646)에 저장된 사진에 접근하는 것과 같이, 사용자는 네트워크를 통해 어떤 휴대용 전자 장치에 포함된 데이터에도 접근할 수 있다. 소정의 실시예에서, 도 6에 도시된 네트워크 장치는 제한된 네트워크 프로세싱 및 버퍼링 능력(buffering capability)으로 디자인된 낮은 자원 장치들(low resource devices)이다.
도 7은 네트워크 장치의 실시예를 도시하는 도면이다. 소정의 실시예에서, 네트워크 장치(705)는 이더넷 맥 어드레스(Ethernet MAC address)와 같은 하나의 물리적 네트워크 인터페이스를 갖는 개체(entity)이다. 도 7에서 도시된 바와 같이, 네트워크 장치는 두 개의 네트워크 인터페이스(710 및 715)를 포함한다. 그러므로 소정의 실시예에서, 네트워크 장치는 물리적 개체이다. 소정의 실시예에서, 네트워크 장치는 각각이 네트워크 장치에 상주하는 논리적인 개체인 하나 이상의 에이전트(agents)를 포함한다. 네트워크 장치에는 복수의 에이전트가 있을 수 있다. 예를 들면, 도 7은 통신 관리자(communication manager; 720)를 통해 에이전트(730, 735, 및 740)로, 통신 관리자(725)를 통해 에이전트(745 및 750)로, 그리고 통신 관리자(730)를 통해 에이전트(755 및 760)로 접근할 수 있도록 하는 네트워크 인터페이스(710)를 갖는 네트워크 장치(705)를 도시한다. 소정의 실시예에서, 다른 에이전트로부터 각 에이전트를 구별하기 위하여 네트워크 장치 IP 주소 및 장치 초기화 동작(device reset operations)과 무관하도록, 각 에이전트에 고유한 식별자가 할당된다. 그러한 방법에서, 에이전트(755)를 위해 의도된 명령어가 에이전트에 대한 고유한 주소를 호출할 수 있고, 그 후 네트워크 인터페이스(715)를 통해 메시지는 에이전트(755)로 향할 것이다.
소정의 실시예에서, 에이전트는 네트워크 장치 내에서 통신의 엔드포인트(endpoints) 역할을 하고, 능력 및 그와 관련된 행동의 특정 세트를 제공한다. 에이전트는 미디어 소스, 미디어 싱크(media sinks), 미디어 컨트롤러(media controllers), 및 기타 요소를 포함할 수 있다. 하나의 예에서, 에이전트는 비디오 스트리밍 서비스를 제공할 수 있다. 상기 예에서, 에이전트는 미디어 스트림을 질의하고(query) 제어하는 메시지에 응답하며, 명령받았을 때 자동으로 또 다른 에이전트에게 미디어 스트림을 전달할 수 있다. 소정의 실시예에서, 에이전트는 어느 시간에서도 하나 이하의 활성화된 미디어 세션(active media session)을 가지므로, 상대적으로 단순한 동작에 대해 대비한다. 메시지를 전송 및 수신하고, 그러한 메시지에 대응하여 내부 상태를 수정하며, 부작용(side effect)으로서 연속적인 동작을 수행할 능력을 가질 수 있다는 점에서, 에이전트는 활성화된 객체처럼 행동하는 것으로 보일 수 있고 기술될 수 있다.
소정의 실시예에서, 엔터테인먼트 네트워크에서 에이전트는 통신 관리자의 방법에 의해 통신할 수 있다. 소정의 실시예에서, 도 7의 통신 관리자(720, 725, 및 730)와 같이, 장치당 하나 이상의 통신 관리자가 있을 수 있다. 소정의 실시예에서, 예를 들면, 통신 관리자(720)에 의해 관리되는 에이전트(730, 735, 및 740)와 같이, 복수의 에이전트는 단일 통신 관리자에 의해 관리될 수 있다. 소정의 실시예에서, 통신 관리자는 에이전트로부터 전송되거나 에이전트로 전송되는 메시지를 라우팅하는 단계에 대한 책임이 있다. 상기 프로세스는 동일한 네트워크 장치에 존재하는 다른 에이전트로 메시지를 전달하는 단계, 외향 연결(outgoing connections)된 개별 에이전트로부터 원격 네트워크 장치(remote network devices)의 에이전트로 메시지를 다중송신하는 단계, 및 방송 요청(broadcast requests)을 처리하는 단계를 포함할 수 있다. 소정의 실시예에서, 에이전트는 오직 하나의 통신 관리자에게 구속될 수 있고, 통신 관리자는 오직 하나의 네트워크 인터페이스에 구속될 수 있다.
소정의 실시예에서, 표시 관리자(display manager)는 표시 장치에서 자원을 관리하는 에이전트이다. 특히, 표시 관리자는 표시 자원(display resources) 및 화면 기하학 구조(screen geometry)로의 접근을 승인하는 것에 대한 책임이 있다. 소정의 실시예에서, 비디오 출력, 그래픽 출력, 오디오 출력, 및 사용자 출력과 같은 각각의 관련 I/O 장치 세트에 대해 각 표시 장치는 오직 하나의 표시 관리자를 가진다. 소정의 실시예에서, 에이전트는 표시 장치 자원으로의 접근을 승인하면서, 표시 장치에서의 미디어 콘텐츠의 전달 및 표시를 조정하도록 세션 관리자와 함께 작업한다. 소정의 실시예에서, 표시 관리자는 사용자 세션에 대한 시작점(starting point)을 나타내고, 세션 관리자에게 제어권을 위임한다.
소정의 실시예에서, 세션 관리자는 활성화된 사용자를 위한 미디어 콘텐츠 세트를 조정하는 에이전트이다. 소정의 실시예에서, 한번 선택되면, 세션 관리자는 대응 표시 관리자와 함께 원격 온 스크린 표시 세션(remote on-screen display session)을 개시하고, 네트워크에서 다른 장치를 관리하는 애플리케이션 프로그램을 실행하기 시작한다. 소정의 실시예에서, 표시 관리자는 입력 이벤트를 세션 관리자에게 전달하고 표시 관리자의 표시 자원에 대한 접근을 승인하며, 세션 관리자는 접근권을 다른 에이전트에게 위임할 수 있어서 다른 에이전트가 표시 장치로 콘텐츠를 전달하는 것을 허용한다. 하나의 예에서, 표시 관리자는 셋탑 박스 내에서 실행하는 세션 관리자에게 접근을 승인할 수 있다. 세션 관리자는 원격 UI(사용자 인터페이스) 세션을 표시함으로써 시작할 수 있고, 네트워크 장치의 사용자에게 원격 비디오 저장 장치로부터 재생될 비디오를 선택하는 것을 허용한다. 소정의 실시예에서, 세션 관리자는 비디오 서버로 접근할 권리를 넘겨줄 수 있고,비디오 서버에게 표시장치로 미디어 스트림을 전달할 것을 지시할 수 있다. 소정의 실시예에서, 세션 관리자는 미디어 콘텐츠를 활용함에 있어서 사용자 경험을 관리하기 위해 필요한 상태를 유지한다.
도 8은 네트워크 장치의 구성요소의 실시예를 도시하는 도면이다. 이 도면에서, 네트워크 장치(805)는 엔터테인먼트 네트워크에서의 임의의 장치가 될 수 있고, 도 1에 도시된 장치를 포함할 수도 있지만, 이에 한정되는 것은 아니다. 예를 들어, 네트워크 장치는 텔레비전, 셋탑 박스, 저장 장치, 게임 콘솔, 또는 기타 미디어 장치일 수 있다. 소정의 실시예에서, 네트워크 장치(805)는 네트워크 기능을 제공하기 위한 네트워크 유닛(810)을 포함한다. 네트워크 기능은 미디어 데이터 스트림의 생성, 전송, 저장, 및 수신을 포함할 수 있지만, 이에 한정되는 것은 아니다. 네트워크 유닛(810)은 칩(SoC) 상의 단일 시스템 또는 복수 개의 구성요소로서 구현될 수 있다.
소정의 실시예에서, 네트워크 유닛(810)은 데이터의 처리를 위한 프로세서를 포함한다. 데이터의 처리는 미디어 데이터 스트림의 생성, 전송 또는 저장에 있어서 미디어 데이터 스트림의 조작, 및 사용을 위한 미디어 데이터 스트림의 암호화 및 복호화를 포함할 수 있다. 네트워크 장치는 또한 네트워크 동작을 지원하기 위하여, DRAM(820) 또는 다른 유사한 메모리, 및 플래시 메모리(825) 또는 다른 비휘발성 메모리와 같은 메모리를 포함한다.
또한, 하나 이상의 네트워크 인터페이스(855)를 통해, 네트워크 장치(805)는 네트워크에서 데이터를 전송하거나 네트워크로부터 데이터를 수신하기 위한 송신기(830) 및/또는 수신기(840)를 각각 포함한다. 예를 들면, 이더넷 케이블(850)을 포함하는, 유선 전송 케이블(wired transmission cable) 또는 무선 유닛에 송신기(830) 또는 수신기(840)가 연결될 수 있다. 신호들의 전송 및 제어를 위하여, 네트워크 유닛(810)으로 데이터를 전송하기 위한 선들(835) 및 데이터를 수신하기 위한 선들(845)과 같은 하나 이상의 선들과 송신기(830) 또는 수신기(840)가 연결될 수 있다. 추가적인 연결도 또한 존재할 수 있다. 또한, 네트워크 장치(805)는 본 명세서에 도시되지는 않았지만, 장치의 미디어 동작을 위한 여러개의 구성요소를 포함할 수도 있다.
상기 기술에서, 설명의 목적으로 본 발명의 철저한 이해를 제공하기 위해 수많은 구체적인 세부사항이 제공되었다. 그러나, 그러한 구체적인 세부사항의 일부가 없더라도 본 발명이 실시가능하다는 것은 당업자에게 자명할 것이다. 다른 예에서, 잘 알려진 구조 및 장치는 블록도 형식으로 도시된다. 도시되는 구성요소들 사이에 중간 구조가 있을 수 있다. 여기에 기술되는 또는 도시되는 구성요소는 도시되거나 기술되지 않은 추가적인 입력 또는 출력을 가질 수 있다.
본 발명은 다양한 프로세스를 포함할 수 있다. 본 발명의 프로세스는 하드웨어 구성요소에 의해 수행될 수 있고, 또는 범용 또는 특수 프로세서(general-purpose or special-purpose processor), 또는 명령어로 프로그래밍된 논리 회로(logic circuits)로 하여금 프로세스를 실행하도록 사용될 수 있는, 기계 실행가능 명령어로 구현될 수 있다. 이와 달리, 프로세스는 하드웨어 및 소프트웨어의 조합에 의하여 실행될 수도 있다.
본 발명의 일부는 본 발명에 따른 프로세스를 실행하도록 컴퓨터(또는 다른 전자 장치들)를 프로그래밍하는데 사용될 수 있는, 컴퓨터 판독가능 미디어에 대한 프로그램 명령어가 저장된, 컴퓨터 판독가능 미디어를 포함할 수 있는 컴퓨터 프로그램 제품으로 제공될 수 있다. 기계 판독가능 미디어는 플로피 디스켓, 광 디스크, CD-ROM, 및 광자기 디스크들, ROM, RAM, EPROM, EEPROM, 자기식 또는 광학식 카드, 플래시 메모리, 또는 전자 명령어를 저장하는데 적합한 다른 타입의 미디어/기계 판독가능 미디어를 포함할 수 있지만, 이에 한정되는 것은 아니다. 더욱이, 본 발명은 또한 원격 컴퓨터(remote computer)로부터 요청 컴퓨터(requesting computer)로 전송될 수 있는 컴퓨터 프로그램 제품으로서 다운로딩될 수 있다.
많은 방법이 가장 기본적인 형태로 기술되었지만, 임의의 방법에 프로세스가 추가되거나 또는 임의의 방법으로부터 프로세스가 삭제될 수 있고, 정보는 본 발명의 기본 범주로부터 출발하지 않더라도 임의로 기술된 메시지에 추가되거나 임의로 기술된 메시지로부터 삭제될 수 있다. 여러 추가적 수정 및 변형이 이루어질 수 있다는 것은 당업자에게 자명할 것이다. 특정 실시예는 본 발명을 예시하기 위함이지, 한정하기 위해 제공된 것은 아니다. 본 발명의 범위는 위에서 제시된 특정 예들에 의해 결정되지 않으며, 이하의 청구범위에 의해서만 결정된다.
요소 "A"가 요소 "B"와 연결된다는 것은 요소 A가 요소 B에 직접적으로 연결되는 것일 수 있고, 또는, 예를 들어 요소 C를 통해 간접적으로 연결되는 것일 수도 있다. 명세서 또는 청구항이 구성요소, 특징, 구조, 프로세스, 또는 특징 A가 특징, 구조, 프로세스, 또는 특징 B를 "야기할 때", 이는 "A"가 적어도 "B"의 부분적 원인이지만, "B"를 야기하는데 도움을 주는 또 다른 구성요소, 특정, 구조, 프로세스, 또는 특징이 있을 수도 있다. 만약 명세서에 구성요소, 특징, 구조, 프로세스, 또는 특징이 "포함될 수 있다"고 기재되었다면, 그 특정 구성요소, 특징, 구조, 프로세스, 또는 특징이 반드시 포함될 것을 요구하지는 않는다. 만약 명세서 또는 청구범위가 구성요소를 지칭한다고 해서 기술된 요소들 중 오직 하나를 뜻하는 것은 아니다.
실시예는 본 발명의 구현 또는 예이다. 명세서의 "실시예", "일 실시예", "소정의 실시예", 또는 "다른 실시예"에 대하여 언급한 것은 실시예와 관련되어 기술된 특정 특징, 구조, 또는 특성이 모든 실시예에 필수적으로 포함되는 것이 아니라, 적어도 소정의 실시예에 포함되었음을 의미한다. "실시예", "일 실시예", 또는 "소정의 실시예"의 다양한 표현은 필연적으로 동일한 실시예를 지칭하는 것은 아니다. 앞서 말한 본 발명의 예시적인 실시예의 기술에서, 본 발명의 다양한 특징은 때때로 본 발명의 공개 및 하나 이상의 다양한 특징의 이해를 효과적으로 돕기 위해 단일 실시예, 특징, 또는 기술로 함께 그룹화되었다고 이해되어야 한다. 그러나, 이 공개의 방법은 청구범위의 발명이 각 청구항에 명백히 기술된 것보다 많은 특징을 요구한다고 해석되는 것은 아니다. 대신, 이하의 청구범위들에서 반영하듯이, 본 발명의 특징들은 앞에서 개시된 단일 실시예의 모든 특징보다 적게 존재한다. 그러므로, 청구항들은 본 발명의 개별적인 실시예로서 나타나지는 각 청구항과 함께, 이 설명에서 명백히 구체화된다.

Claims (29)

  1. 제1 우선순위의 데이터 패킷 및 제2 우선순위의 데이터 패킷을 포함하는 복수의 데이터 패킷을 포함하는 데이터 스트림을 전송하도록 구성된 송신기; 및
    상기 송신기의 동작을 지시하고, 상기 데이터 스트림을 각각의 서브스트림 내의 데이터에 대한 우선순위 레벨에 기초하여 복수의 서브스트림으로 분할하도록 구성된 네트워크 유닛 - 상기 복수의 서브스트림은 상기 제1 우선순위의 데이터 패킷에 대한 제1 서브스트림 및 상기 제2 우선순위의 데이터 패킷에 대한 제2 서브스트림을 포함함 - 을 포함하는 장치로서,
    상기 제1 우선순위는 상기 제2 우선순위보다 높고, 상기 네트워크 유닛은 상기 제2 우선순위의 데이터 패킷에 대한 대역폭이 상기 제1 우선순위의 데이터 패킷에 대한 대역폭보다 넓도록 상기 서브스트림에 대한 대역폭을 설정하며, 상기 장치는 좁은 대역폭의 데이터 스트림을 드롭하기 전에 넓은 대역폭의 데이터 스트림을 드롭하는 인프라스트럭처를 갖는 네트워크에서 동작하고; 및
    상기 대역폭을 설정하는 단계는 만약 상기 제1 우선순위의 데이터 패킷을 전송하기 위해 요청된 대역폭이 상기 제2 우선순위의 데이터 패킷을 전송하기 위해 요청된 대역폭보다 넓다면 상기 제1 서브스트림을 복수의 서브스트림으로 분할하는 단계를 포함하고, 상기 제1 서브스트림의 분할에 의해 생성된 상기 복수의 서브스트림의 각각은 상기 제2 데이터 서브스트림의 대역폭보다 좁은 대역폭을 가지는, 장치.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서, 상기 대역폭을 설정하는 단계는 상기 서브스트림에 대한 대역폭을 유지하기 위하여 하나 이상의 서브스트림을 여분의 데이터 패킷(extra data packets)으로 채우는(padding) 단계를 포함하는, 장치.
  5. 제4항에 있어서, 상기 여분의 데이터 패킷은 빈 데이터 패킷(null data packets)을 포함하는, 장치.
  6. 제4항에 있어서, 상기 여분의 데이터 패킷은 재전송된 데이터 패킷, 복제된 데이터 패킷, 또는 재전송되고 복제된 데이터 패킷을 포함하는, 장치.
  7. 삭제
  8. 제1항에 있어서, 상기 네트워크 유닛은 적어도 부분적으로 상기 데이터 스트림에 대한 변화에 기초하여 상기 데이터 서브스트림을 동적으로 수정하도록 더 구성되는, 장치.
  9. 제1항에 있어서, 상기 복수의 서브스트림 각각은 수신 장치의 상이한 포트로 향하는, 장치.
  10. 제1항에 있어서, 상기 데이터 스트림은 미디어 데이터 스트림인, 장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 제1 우선순위를 갖는 하나 이상의 데이터 패킷 및 제2 우선순위를 갖는 하나 이상의 데이터 패킷을 포함하는 복수의 데이터 패킷을 포함하는 데이터를 전송하기 위한 제1 네트워크 장치 - 상기 제1 네트워크 장치는 각각의 데이터 스트림 내의 데이터의 우선순위에 따라 상기 데이터를 복수의 데이터 스트림들로 분할하며, 상기 제1 네트워크 장치는 제1 대역폭을 가지는 하나 이상의 데이터 스트림에서 상기 제1 우선순위의 상기 데이터 패킷을 전송하고, 제2 대역폭을 가지는 하나 이상의 데이터 스트림에서 상기 제2 우선순위의 상기 데이터 패킷을 전송하며, 상기 제1 우선순위는 상기 제2 우선순위보다 높고, 상기 제2 대역폭은 상기 제1 대역폭보다 넓음 - ; 및
    상기 제1 네트워크 장치로부터 상기 데이터 스트림을 수신하고, 데이터 전송에서 간섭(interference)이 일어날 때 적어도 부분적으로는 각각의 데이터 스트림의 대역폭에 기초하여 하나 이상의 데이터 스트림을 드롭하는 제2 네트워크 장치 - 상기 제2 네트워크 장치는 좁은 대역폭 데이터 스트림을 드롭하기 전에 넓은 대역폭 데이터 스트림을 드롭함 -;를 포함하고,
    상기 제1 네트워크 장치는 만약 제1 데이터 스트림의 요청된 대역폭이 낮은 우선순위 데이터를 포함하는 제2 데이터 스트림의 요청된 대역폭보다 넓다면 상기 제1 데이터 스트림을 복수의 서브스트림으로 분할하고, 상기 제1 데이터 스트림의 분할에 의해 생성된 복수의 서브스트림 각각은 상기 제2 데이터 스트림의 대역폭보다 좁은 대역폭을 가지는, 네트워크.
  15. 삭제
  16. 삭제
  17. 삭제
  18. 제14항에 있어서, 상기 제1 네트워크 장치는 디지털 미디어 데이터의 소스인, 네트워크.
  19. 제14항에 있어서, 상기 제2 네트워크 장치는 디지털 미디어 데이터를 전송하거나 사용하기 위한 장치인, 네트워크.
  20. 제14항에 있어서, 상기 제2 네트워크 장치는 스위치를 포함하며, 상기 제2 네트워크 장치는 상기 스위치의 동작을 통해 각각의 데이터 스트림의 상기 대역폭에 적어도 부분적으로 기초하여 상기 하나 이상의 데이터 스트림들을 드롭하는, 네트워크.
  21. 네트워크에서 데이터 패킷을 서열화하기 위한 방법으로서,
    네트워크 장치에서, 각각 우선순위 레벨을 갖는 복수의 데이터 형식을 포함하는 데이터 스트림의 전송을 위한 요청을 수신하는 단계;
    상기 네트워크 장치의 네트워크 유닛을 사용하여, 각각의 서브스트림 내의 데이터에 대한 우선순위 레벨에 기초하여 상기 데이터 스트림을 각각 특정 우선순위 레벨의 데이터를 갖는 복수의 데이터 서브스트림으로 분할하는 단계;
    상기 네트워크 유닛에 의해, 상기 서브스트림 내의 상기 데이터의 우선순위 레벨에 기초하여 상기 데이터 서브스트림 각각에 대한 대역폭을 할당하는 단계로서, 상기 네트워크 유닛에 의해 상기 데이터 서브스트림 각각에 할당된 상기 대역폭은 상기 데이터 서브스트림 각각의 우선순위 레벨과 반비례하는, 단계;
    상기 네트워크 장치에 의해, 만약 제1 데이터 서브스트림의 요청된 대역폭이 낮은 우선순위 레벨의 데이터를 포함하는 제2 데이터 서브스트림의 요청된 대역폭보다 넓다면, 상기 제1 데이터 서브스트림을 복수의 서브스트림으로 분할하는 단계로서, 상기 제1 데이터 서브스트림의 분할로부터 생성된 상기 복수의 서브스트림 각각은 상기 제2 데이터 서브스트림의 대역폭보다 좁은 대역폭을 가지는, 단계; 및
    상기 네트워크 장치에 의해, 상기 네트워크에서 상기 복수의 데이터 서브스트림을 전송하는 단계를 포함하며,
    상기 네트워크의 인프라스트럭처는 간섭이 일어날 경우 넓은 대역폭을 가지는 데이터 스트림을 드롭하는 단계를 제공하는, 방법.
  22. 삭제
  23. 삭제
  24. 제21항에 있어서, 적어도 부분적으로는 상기 데이터 스트림에 대한 변화에 기초하여 상기 데이터 서브스트림을 수정하는 단계를 더 포함하는, 방법.
  25. 삭제
  26. 제21항에 있어서, 상기 복수의 데이터 서브스트림을 전송하는 단계는, 상기 네트워크 유닛에 의해, 상기 데이터 서브스트림의 할당된 상기 대역폭을 유지하기 위해 하나 이상의 상기 데이터 서브스트림을 추가적인 데이터 패킷으로 채우는 단계를 포함하는, 방법.
  27. 제26항에 있어서, 상기 추가적인 데이터 패킷은 하나 이상의 빈 데이터 패킷을 포함하는, 방법.
  28. 제26항에 있어서, 상기 추가적인 데이터 패킷은 하나 이상의 재전송된 데이터 패킷, 복제된 데이터 패킷, 또는 재전송되고 복제된 데이터 패킷을 포함하는, 방법.
  29. 제21항에 있어서, 상기 네트워크는 복수의 엔터테인먼트 장치를 포함하며, 상기 네트워크 장치는 상기 복수의 엔터테인먼트 장치 중 제1 엔터테인먼트 장치인, 방법.
KR1020107004578A 2007-07-27 2008-07-03 상호연결 네트워크에서의 패킷 레벨 서열화 KR101456845B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/829,790 US7911956B2 (en) 2007-07-27 2007-07-27 Packet level prioritization in interconnection networks
US11/829,790 2007-07-27
PCT/US2008/069261 WO2009017934A1 (en) 2007-07-27 2008-07-03 Packet level prioritization in interconnection networks

Publications (2)

Publication Number Publication Date
KR20100066469A KR20100066469A (ko) 2010-06-17
KR101456845B1 true KR101456845B1 (ko) 2014-11-03

Family

ID=39789904

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107004578A KR101456845B1 (ko) 2007-07-27 2008-07-03 상호연결 네트워크에서의 패킷 레벨 서열화

Country Status (9)

Country Link
US (1) US7911956B2 (ko)
EP (1) EP2183888B1 (ko)
JP (2) JP5369104B2 (ko)
KR (1) KR101456845B1 (ko)
CN (1) CN101843056B (ko)
AT (1) ATE493816T1 (ko)
DE (1) DE602008004262D1 (ko)
TW (1) TWI408924B (ko)
WO (1) WO2009017934A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190025285A (ko) * 2017-09-01 2019-03-11 한국과학기술원 데이터 센터 간 광역 통신망에서 통계적 자원 할당 및 서비스 품질 보장 시스템과 이의 방법

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1936854B1 (en) * 2006-12-20 2013-11-06 Alcatel Lucent Retransmission-based DSLAM and xDSL modem for lossy media
KR101466573B1 (ko) * 2008-01-22 2014-12-10 삼성전자주식회사 통신 단말 장치 및 통신 단말 장치에 탑재된 복수개의네트워크 인터페이스를 이용하여 통신을 수행하는 방법
US8867622B2 (en) * 2008-08-14 2014-10-21 Broadcom Corporation Method and system for priority-based digital multi-stream decoding
US8903364B2 (en) * 2009-01-16 2014-12-02 Broadcom Corporation Method and system for processing and delivery of multimedia content by an integrated femtocell and set-top-box device
WO2011143094A2 (en) 2010-05-09 2011-11-17 Citrix Systems, Inc. Systems and methods for allocation of classes of service to network connections corresponding to virtual channels
US9071531B2 (en) 2010-09-28 2015-06-30 British Telecommunications Public Limited Company Multi-class data transport
US20150229970A1 (en) * 2011-08-18 2015-08-13 Vid Scale, Inc. Methods and systems for packet differentiation
JP5963540B2 (ja) * 2012-05-30 2016-08-03 キヤノン株式会社 情報処理装置、プログラム及び制御方法
US9270616B1 (en) * 2013-02-21 2016-02-23 Arris Enterprises, Inc. Low-latency quality of service
GB2525416B (en) * 2014-04-24 2017-11-01 Samsung Electronics Co Ltd Data transfer using a multipath TCP connection
US9654484B2 (en) * 2014-07-31 2017-05-16 Cisco Technology, Inc. Detecting DGA-based malicious software using network flow information
CN107113102B (zh) * 2014-09-29 2021-02-02 加利福尼亚大学董事会 用于干扰网络的编码的方法和设备
WO2017092830A1 (en) * 2015-12-04 2017-06-08 Telefonaktiebolaget Lm Ericsson (Publ) Technique for adaptive streaming of temporally scaling media segment levels
EP3445059A1 (en) * 2016-05-05 2019-02-20 Huawei Technologies Co., Ltd. Video service transmission method and device
CN106992845B (zh) * 2017-03-28 2020-05-01 广州视源电子科技股份有限公司 数据传输方法、系统和装置
US11115155B2 (en) * 2019-09-09 2021-09-07 Facebook Technologies, Llc Systems and methods for prioritizing packet retransmission
CN113473185B (zh) * 2021-04-28 2022-08-26 清华大学 基于视频流关键帧突发特性的可用带宽探测方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002041642A2 (en) * 2000-11-17 2002-05-23 Motorola, Inc., A Corporation Of The State Of Delaware Multiple service subflows within a cable modem service flow
US20070081554A1 (en) * 2003-09-29 2007-04-12 Saffre Fabrice T P Bandwidth allocation

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0838948B1 (en) * 1996-05-09 2000-03-15 Matsushita Electric Industrial Co., Ltd. Multimedia optical disk, reproducing device, and reproducing method capable of superposing sub-video upon main video in well-balanced state irrespective of position of main video on screen
US6535487B1 (en) * 1998-02-12 2003-03-18 Nec Usa, Inc. Connection splitting: an efficient way of reducing call blocking in ATM
CA2292828A1 (en) * 1999-12-22 2001-06-22 Nortel Networks Corporation Method and apparatus for traffic flow control in data switches
US6985442B1 (en) 2000-07-26 2006-01-10 Lucent Technologies Inc. Technique for bandwidth sharing in internet and other router networks without per flow state record keeping
US20020154629A1 (en) * 2001-04-23 2002-10-24 Michael Lohman Integrated PMP-radio and DSL multiplexer and method for using the same
US8542680B2 (en) * 2001-07-25 2013-09-24 Vectormax Corporation Server arbitrated reliable multicast system and process for accessing the same
US7039715B2 (en) * 2002-05-21 2006-05-02 Microsoft Corporation Methods and systems for a receiver to allocate bandwidth among incoming communications flows
WO2005039150A1 (ja) * 2003-10-22 2005-04-28 Nec Corporation 通信装置およびその通信方法ならびにプログラム
US8514865B2 (en) 2004-04-30 2013-08-20 Hewlett-Packard Development Company, L.P. Assigning WAN links to subflows based on WAN link characteristics and application preferences
US20060023750A1 (en) * 2004-07-29 2006-02-02 Kim Hyong S Method and system for transporting and switching traffic data with Quality of Service
US7733972B2 (en) * 2004-10-26 2010-06-08 Broadcom Corporation Trellis decoder for decoding data stream including symbols coded with multiple convolutional codes
CN100370787C (zh) * 2004-12-29 2008-02-20 华为技术有限公司 一种分组业务中的数据包调度方法
KR100657314B1 (ko) * 2005-05-04 2006-12-20 삼성전자주식회사 멀티미디어 스트리밍 송신 장치 및 방법
US7636309B2 (en) * 2005-06-28 2009-12-22 Alcatel-Lucent Usa Inc. Multi-path routing using intra-flow splitting
US20070002871A1 (en) * 2005-06-30 2007-01-04 Nokia Corporation Padding time-slice frames with useful data
US20070263616A1 (en) * 2006-05-15 2007-11-15 Castro Paul C Increasing link capacity via traffic distribution over multiple WI-FI access points
US8160601B2 (en) * 2007-06-21 2012-04-17 Elektrobit Wireless Communications Ltd. Method for optimizing spatial modulation in a wireless link and network element thereto

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002041642A2 (en) * 2000-11-17 2002-05-23 Motorola, Inc., A Corporation Of The State Of Delaware Multiple service subflows within a cable modem service flow
US20070081554A1 (en) * 2003-09-29 2007-04-12 Saffre Fabrice T P Bandwidth allocation

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190025285A (ko) * 2017-09-01 2019-03-11 한국과학기술원 데이터 센터 간 광역 통신망에서 통계적 자원 할당 및 서비스 품질 보장 시스템과 이의 방법
KR101987346B1 (ko) * 2017-09-01 2019-06-10 한국과학기술원 데이터 센터 간 광역 통신망에서 통계적 자원 할당 및 서비스 품질 보장 시스템과 이의 방법

Also Published As

Publication number Publication date
TWI408924B (zh) 2013-09-11
WO2009017934A1 (en) 2009-02-05
US7911956B2 (en) 2011-03-22
US20090028151A1 (en) 2009-01-29
JP2010535003A (ja) 2010-11-11
CN101843056B (zh) 2013-01-16
KR20100066469A (ko) 2010-06-17
TW200906112A (en) 2009-02-01
JP2014030233A (ja) 2014-02-13
EP2183888A1 (en) 2010-05-12
DE602008004262D1 (de) 2011-02-10
JP5800872B2 (ja) 2015-10-28
CN101843056A (zh) 2010-09-22
ATE493816T1 (de) 2011-01-15
JP5369104B2 (ja) 2013-12-18
EP2183888B1 (en) 2010-12-29

Similar Documents

Publication Publication Date Title
KR101456845B1 (ko) 상호연결 네트워크에서의 패킷 레벨 서열화
US7675939B2 (en) Transmission apparatus and method, reception apparatus and method, communication system, recording medium, and program
JP5563979B2 (ja) 相互接続ネットワークにおけるデータフローのための帯域巾予約
JP6268090B2 (ja) 帯域幅および対応する装置を制御する方法
JP5174166B2 (ja) ネットワーク装置のためのデータストリーム制御
KR100342975B1 (ko) 계층적 전송과 분산 아이피 멀티캐스팅을 이용한 인터넷 방송 시스템 및 인터넷 방송 방법
AU2020257112B2 (en) Distribution of bandwidth in a network
EP3942738A1 (en) Third party network and network slice management
US10972778B2 (en) Stream control system for use in a network
JP2006191613A (ja) 無線近距離ネットワークにおいて放送サービスのサービス品質を保証するアクセスポイント装置
JP4340562B2 (ja) 通信の優先制御方法並びに通信の優先制御システム及び通信の優先制御装置
KR100616250B1 (ko) 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터전송 시스템 및 방법
RU2804870C2 (ru) Способ и устройство для распределения полосы в сети
KR101496554B1 (ko) 콘텐츠 중심 네트워크에서 콘텐츠의 수신 방법

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
FPAY Annual fee payment

Payment date: 20171017

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181012

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191011

Year of fee payment: 6