KR100460938B1 - 스트리밍 서버로 동작하는 스트리밍 단말기를 포함한스트리밍 시스템 및 그 동작방법 - Google Patents

스트리밍 서버로 동작하는 스트리밍 단말기를 포함한스트리밍 시스템 및 그 동작방법 Download PDF

Info

Publication number
KR100460938B1
KR100460938B1 KR1020030081222A KR20030081222A KR100460938B1 KR 100460938 B1 KR100460938 B1 KR 100460938B1 KR 1020030081222 A KR1020030081222 A KR 1020030081222A KR 20030081222 A KR20030081222 A KR 20030081222A KR 100460938 B1 KR100460938 B1 KR 100460938B1
Authority
KR
South Korea
Prior art keywords
streaming
server
client terminal
data
streaming server
Prior art date
Application number
KR1020030081222A
Other languages
English (en)
Inventor
김재우
정영삼
김경태
Original Assignee
지유소프트 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 지유소프트 주식회사 filed Critical 지유소프트 주식회사
Priority to KR1020030081222A priority Critical patent/KR100460938B1/ko
Application granted granted Critical
Publication of KR100460938B1 publication Critical patent/KR100460938B1/ko

Links

Classifications

    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 통신 네트워크에서 스트리밍 단말기가 스트리밍 서버로도 동작됨으로써, 스트리밍 데이터를 재생하는 동시에 다른 스트리밍 단말기로 스트리밍 데이터를 전송하는 스트리밍 시스템 및 그 동작 방법에 관한 것이다. 이를 위하여 본 발명은, 상위 스트리밍 서버용 클라이언트 단말기의 위치정보를 찾아내는 위치정보 검색모듈과, 상위 스트리밍 서버용 클라이언트 단말기로부터 스트리밍되는 데이터를 재생하는 스트리밍 데이터 재생기와, 전송된 스트리밍 데이터의 재생과 동시에 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍 해주는 스트리밍 모듈을 구비한다.

Description

스트리밍 서버로 동작하는 스트리밍 단말기를 포함한 스트리밍 시스템 및 그 동작방법{System with streaming terminal operating for streaming server And the method}
본 발명은 통신 네트워크에서 스트리밍 단말기가 스트리밍 서버로도 동작됨으로써, 스트리밍 데이터를 재생하는 동시에 다른 스트리밍 단말기로 스트리밍 데이터를 전송하는 스트리밍 단말기 및 그 동작 방법에 관한 것이다.
최근 인터넷의 콘텐츠는 초고속 가입자망 보급 확대 및 IDC(Internet Data Center) 등의 네트워크 기반 기술의 고도화에 의해 문자 중심의 소량 데이터에서 음성, 화상 및 영상 등의 복합 기능을 갖는 대용량의 멀티미디어 데이터 중심으로 급격히 이동하고 있다.
인터넷을 통해 멀티미디어 데이터를 전송하는 방식에는 클라이언트가 멀티미디어 데이터 전체를 다운로드 한 뒤 재생하는 다운로드 방식과 멀티미디어 데이터를 순차적으로 전송 받으면서 동시에 재생하는 스트리밍 방식의 두 가지가 있는데, 특히 후자인 스트리밍 방식은 동시에 다수의 클라이언트에게 동일한 콘텐츠를 전송하는 인터넷 방송 등에서 주로 쓰인다.
현재 대부분의 스트리밍 데이터의 전송방식은 TCP/IP 혹은 UDP/IP 기반의 유니캐스팅 방식, 지역별 혹은 ISP 도메인별 중계기 서버가 위치하여 CP(Contents Provider)의 송신 트래픽을 수신자에게 중계해 주는 방식, 멀티캐스팅 라우터(M-라우터)를 이용한 멀티캐스팅 방식 등이 있다.
도 1에 도시한 유니 캐스팅 방식은, 스트리밍 데이터 저장장치(102)내의 콘텐츠 파일, 미디어 인코더(104)의 인코딩된 파일 등을 스트리밍 서버(100)에 접속된 개인용컴퓨터, 이동통신단말기와 같은 클라이언트 단말기(106,108,110)에게 스트리밍해주는 방식이다. 유니캐스팅 전송방식은 접속자 수만큼의 스트리밍 서버 접속이 이루어져야 하기 때문에 네트워크 대역폭의 요구가 많아지고 스트리밍 서버에 부하가 많이 걸린다.
이 때문에 도 2와 같은 ISP 도메인별 중계 방식이나 멀티캐스팅 라우터를 이용한 멀티캐스팅 방식이 있으나, ISP 도메인별 중계기(206)의 경우는 유니 캐스팅 방식보다는 대역폭과 시스템 부하는 적어지지만 다수 사용자의 동시 접속에 대한 대처 능력에는 한계가 있으며, 특히, 클라이언트 단말기(208)에서 멀티캐스팅 라우터를 이용한 멀티캐스팅 방식은 현재 모든 라우터를 멀티캐스팅 라우터로 교체해야 되는 문제가 있다.
상기 문제들을 해결하기 위하여 멀티캐스팅 특허출원(출원번호: 10-2000-0055993, 10-2001-7011712)과 같이 오버레이 멀티캐스팅, 응용계층 멀티캐스팅, 릴레이 방식의 멀티캐스팅 전송 방식이 제시되고 있는데, 이러한 방식은 멀티캐스팅의 단점을 보완하였지만 기존에 범용적으로 전송되는 스트리밍 데이터를 쓸 수 없는 단점이 있다. 특히, 이러한 방식들은 중간 클라이언트 단말기들에서 하위 클라이언트 단말기로의 스트리밍 전송이 제어에 의한 스트리밍이 아닌 단순한 전달(relay) 방식을 취하고 있어 스트리밍 되는 데이터의 질이 떨어지는 문제가 있다.
상기의 문제점을 해결하고자 본 발명은 안출된 것으로서, 스트리밍 단말기가 스트리밍 데이터를 제어, 분배하는 스트리밍 서버로도 동작하도록 함으로써, 종래에 중앙 집중적인 서버의 네트워크 대역폭과 부하를 분산시키도록 함을 목적으로 한다. 또한, 일정한 스트리밍 속도를 유지하도록 하여 양질의 스트리밍 데이터 서비스를 가능하도록 함을 목적으로 한다.
도 1은 유니캐스팅 방식의 스트리밍 전송망을 나타낸 그림이다.
도 2는 ISP 도메인별 중계 방식의 스트리밍 전송망을 나타낸 그림이다.
도 3은 본 발명에 따라 스트리밍 서버로 동작하는 단말기를 이용한 스트리밍 전송망을 나타낸 그림이다.
도 4는 본 발명에 따른 스트리밍 서버용 클라이언트 단말기이다.
도 5는 본 발명에 따라 스트리밍 전송 과정을 도시한 흐름도이다.
*도면의 주요 부분에 대한 부호의 설명*
400: 스트리밍 데이터 재생기 410: 위치정보 검색모듈
420: 스트리밍 모듈 422: 스트리밍 제어모듈/버퍼
424: 스트리밍 데이터 버퍼
상기의 목적을 이루기 위하여 본 발명은, 상위 스트리밍 서버용 클라이언트 단말기의 위치정보를 찾아내는 위치정보 검색모듈과, 상기 상위 스트리밍 서버용 클라이언트 단말기로부터 스트리밍되는 데이터를 재생하는 스트리밍 데이터 재생기와, 전송된 스트리밍 데이터를 재생과 함께 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍해주는 스트리밍 모듈을 구비한다.
이하, 본 발명의 가장 바람직한 일 실시 예를 도면을 참조하여 상세히 설명한다.
도 3은 본 발명에 따라 스트리밍 서버용 클라이언트 단말기를 이용한 스트리밍 데이터의 전송 모습을 도시한 그림이다.
스트리밍 서버용 클라이언트 단말기라 함은 상위 스트리밍 서버용 클라이언트 단말기(또는 스트리밍 데이터 근원서버)로부터 데이터를 스트리밍받아 재생하는 클라이언트 단말기로서, 스트리밍 데이터의 재생 이외에도 스트리밍받은 데이터를 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍해주는 스트리밍 서버의 기능을 함께 가지는 클라이언트 단말기이다.
이하에서는, 상위 스트리밍 서버용 클라이언트 단말기라 함은 다른 단말기로 스트리밍 해주는 상위 노드(300)에 놓인 스트리밍 서버용 클라이언트 단말기를 일컫는 개념을 말하며, 도 3에서는 설명의 편의를 위해 상위 스트리밍 서버용 클라이언트 단말기 대신 스트리밍 데이터 근원서버(302)를 도시하였다. 결국, 상위 스트리밍 서버용 클라이언트 단말기라 함은 스트리밍 데이터를 제공해주는 단말기 또는 스트리밍 데이터 근원서버가 된다.
마찬가지로, 중계 스트리밍 서버용 클라이언트 단말기라 함은 중계노드(310)에 놓여서 재생과 동시에 하위노드로 스트리밍 해주는 스트리밍 서버용 클라이언트 단말기를 말하고, 하위 스트리밍 서버용 클라이언트 단말기는 다른 스트리밍 서버용 클라이언트 단말기로부터 데이터를 스트리밍 받는 단말기를 말한다. 따라서, 스트리밍 서버용 클라이언트 단말기는 각 상호간의 동작에서는 상위노드(300), 중계노드(310), 하위노드(320)로 동작될 수 있다.
본 발명의 일 실시 예로 도 3에 도시한 바와 같이, 중계노드(310)에 놓인 스트리밍 서버용 클라이언트 단말기(310a,310b)가 파일서버(File Server), 미디어 인코더(Media Encoder), 리모트 서버(Remote Server) 등의 스트리밍 데이터 근원서버(302)로부터 데이터를 스트리밍 받아 이를 재생하는 동시에 하위노드(320)에 놓인 스트리밍 서버용 클라이언트 단말기(제1-1 스트리밍 서버용 클라이언트 단말기 .... 제1-m 스트리밍 서버용 클라이언트 단말기; 320a,320b,320c,320d)에 이를 스트리밍해 준다.
예를 들어, 제1 스트리밍 서버용 클라이언트 단말기(310a)가 스트리밍 재생 중에 하위노드(320)에 있는 제1-1 스트리밍 서버용 클라이언트 단말기(320a)로부터 스트리밍 요청을 받으면 제1 스트리밍 서버용 클라이언트 단말기(310a)는 하위 제1-1 스트리밍 서버용 클라이언트 단말기(320a)로 데이터를 스트리밍한다.
결국, 하위노드에 놓인 스트리밍 서버용 클라이언트 단말기들(320a,320b,320c,320d)은 스트리밍 서버에 접속하여 데이터를 스트리밍 받는 것과 동일한 결과가 되어, 종래의 프레임 분할에 의한 멀티캐스팅 전송과 달리 스트리밍 데이터 근원 그대로를 스트리밍 받을 수 있어 양질의 데이터 전송이 보장된다.
즉, 종래의 P2P, 오버레이(overlay), 어플리케이션 멀티캐스팅 방법들에서 중계 노드들의 역할은 상위에서 전달받은 데이터를 하위 노드로 전달하는 의미이기 때문에 스트리밍 서버의 기능과 비교할 때 지원되는 기능들이 제한적일 수밖에 없으며, 에러 체킹(error checking)이나 재전송의 경우 스트리밍을 받아 이를 재생하는 단말기쪽에서 관리되기 때문에 전송되는 데이터의 질이 낮아질 수 있다.
반면에, 본 발명에 따른 멀티캐스팅 방법은 각 단말기가 스트리밍 서버로서의 기능을 수행하기 때문에 고품질의 스트리밍 서비스를 제공한다. 스트리밍 서버용 클라이언트 단말기가 스트리밍 서버로서의 역할을 할 수 있기 때문에 하위 스트리밍 서버용 클라이언트 단말기로 일정한 비트 레이트(bit rate) 전송할 수 있어, 하위 스트리밍 서버용 클라이언트 단말기 입장에서는 버퍼링이 필요 없어지므로 스트리밍 데이터 서비스 질을 높일 수 있다. 또한, 스트리밍 서버용 클라이언트 단말기는 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍 해 줄 때에 여러 종류의 비트 레이트(bit rate)로 스트리밍 해줄 수 있기 때문에 사용자들의 네트워크 환경에 맞는 스트리밍 데이터 전송이 가능하다.
한편, 하위노드(320)에 있는 스트리밍 서버용 클라이언트 단말기(320a,320b,320c,320d)가 중계노드(310)에 있는 스트리밍 서버 클라이언트 단말기(310a,310b)에 접속하여 스트리밍 받기 위해서는, 중계 스트리밍 서버용 클라이언트 단말기(310a,310b)의 위치 정보를 알고 있어야 한다. 스트리밍 서버 클라이언트의 특성상 스트리밍 요청 및 종료가 동적으로 자주 발생하기 때문에 스트리밍 받을 스트리밍 서버용 클라이언트 단말기의 위치 정보를 관리해야 하기 때문이다.
이를 구현하기 위한 방안으로서 다음 3가지 방법을 제시한다.
첫 번째 방법은, 하위 스트리밍 서버용 클라이언트 단말기가 별도의 위치정보 관리서버에 자신 상위에 있는 스트리밍 서버용 클라이언트 단말기 위치정보를 문의하여 해당 위치정보를 받아낸 후 상위 스트리밍 서버용 클라이언트 단말기에 스트리밍 요청을 하는 방법이다. 여기서, 위치정보라 함은 프로토콜에 따른 위치정보로서, 인터넷 프로토콜에 따른 접속일 경우에는 그에 따른 고유 식별주소(IP 주소)가 된다. 위치정보 관리서버로부터 상위 스트리밍 서버용 클라이언트 단말기의 위치정보를 알아내어 상위 스트리밍 서버용 클라이언트 단말기에 접속하여 스트리밍 받는 예는 본 출원인에 의해 출원된 "스트리밍 데이터 전송을 위한 P2P 방식의소프트웨어적인 멀티캐스팅 방법 및 장치"(국내 출원번호: 10-2002-0061321)에 기술되어 있으므로 여기서는 그에 대한 자세한 설명을 생략한다.
두 번째 방법으로는, 각 스트리밍 서버용 클라이언트 단말기 위치정보를 스트리밍 데이터 근원 서버에 등록해놓아 각 스트리밍 서버용 클라이언트 단말기가 필요한 위치정보를 알 수 있도록 한다.
세 번째 방법으로는, 각 스트리밍 서버용 클라이언트 단말기에 상위 스트리밍 서버용 클라이언트 단말기의 위치정보를 설정 등록해 놓아 하위 스트리밍 서버용 클라이언트 단말기가 상위 스트리밍 서버용 클라이언트 단말기에 접속할 수 있게 한다.
도 4는 본 발명에 따른 스트리밍 서버용 클라이언트 단말기의 내부 구성 블록도이다.
스트리밍 서버용 클라이언트 단말기는 기본적으로 스트리밍 데이터 재생을 위한 스트리밍 데이터 재생기(400)와 스트리밍 서버 모듈(420), 위치정보 검색 모듈(410)을 구비한다.
스트리밍 데이터 재생기(400)는 전송된 스트리밍 데이터를 재생하는 기능을 수행하는데, 이에 대한 것은 종래의 스트리밍 단말기와 동일한 동작을 수행하므로 이에 대한 설명은 생략한다.
위치정보 검색모듈(410)은 별도의 위치정보 관리서버에 접속하여 상위 스트리밍 서버용 클라이언트 단말기의 위치정보를 얻어오는 기능을 한다. 위치정보는상기 위치정보 관리서버가 아니라 스트리밍 서버용 클라이언트 단말기로부터 얻어올 수 있는데 위치정보 검색방법에 대해서는 상기에서 상세히 설명한바 있다.
스트리밍 모듈(420)은 스트리밍 요청한 하위노드에 있는 클라이언트 단말기에 데이터를 스트리밍해주며, 상위 스트리밍 서버용 클라이언트 단말기(또는, 스트리밍 데이터 근원서버; 430)부터 전송 받은 스트리밍 데이터를 하위 스트리밍 서버용 클라이언트 단말기(440)로 전송하는 기능을 한다.
스트리밍 방식은 종래의 스트리밍 서버의 스트리밍 방식과 동일하게 수행되므로 본 상세 설명에서는 스트리밍 방법에 대한 설명은 생략하고 본 발명을 위해 필요한 모듈만 간략히 설명한다.
스트리밍 모듈(420)은 크게 스트리밍 제어 모듈/버퍼(422), 스트리밍 데이터 버퍼(424)를 포함하는데 이들은 각각 수신되는 데이터를 스트리밍 제어 채널(432)과 스트리밍 채널(434)로 나누어 입력받아 처리를 한다.
스트리밍 제어 모듈/버퍼(422)는 스트리밍 제어 채널(432) 상에서 전송제어 프로토콜인 TCP/IP 통신을 함으로써, 각각의 제어신호, 제어 프레임을 수신하여 버퍼링한 후 이를 바탕으로 하위 스트리밍 서버용 클라이언트 단말기(440)로의 스트리밍을 수행한다. 상기 TCP/IP 프로토콜을 이용함으로써, 제어신호 및 제어 프레임의 전송 신뢰성을 확보할 수 있다.
스트리밍 데이터 버퍼(424)는 스트리밍 채널(434) 상에서 사용자 데이터그램 프로토콜인 UDP/IP 통신을 함으로써, 스트리밍 데이터 근원 서버 또는 상위 스트리밍 서버용 클라이언트 단말기(430)로부터 수신한 스트리밍 데이터를 버퍼링하여 이를 하위 스트리밍 서버용 클라이언트 단말기(440)에 스트리밍한다. 상기 UDP/IP 프로토콜 통신을 함으로써, 보다 빠른 스트리밍이 이루어질 수 있다.
상기 스트리밍 데이터 버퍼내의 버퍼링 및 데이터 스트리밍은 상기에서 설명한 바와 같이 종래 스트리밍 멀티캐스팅을 위한 단순한 데이터 중계 버퍼링이 아니라, 스트리밍 서버에서 스트리밍하는 것과 마찬가지로 스트리밍 제어를 통한 스트리밍과 동일한 방법으로 이루어짐으로써 좀더 고품질의 데이터 전송이 이루어 질 수 있다.
한편, 일반적으로 스트리밍 서버에서 클라이언트로의 데이터 스트리밍 전송방식은 크게 푸쉬(push) 방식과 풀(pull) 방식으로 구현될 수 있다.
푸쉬 방식은 스트리밍 서버가 데이터 흐름의 주도권을 가지고 주기적으로 적절한 데이터를 클라이언트로 전송하는 방식으로서, 브로드캐스트 서비스에 적합하나 데이터를 공급하는 서버에서 데이터 전달 속도(bit-rate)를 적절하게 조정해야만 클라이언트에서의 버퍼 오버플로우 및 버퍼 언더플로우를 방지할 수 있다는 단점이 있다.
이와 반대로, 풀 방식은 클라이언트가 데이터 흐름의 주도권을 가지고 서버에 원하는 데이터를 요청하면 스트리밍 서버는 요청된 데이터를 클라이언트로 전달하는 요청/응답 형식을 가지는 일종의 폴링 방식으로서, 클라이언트에서 데이터 전송량을 조정할 수 있기 때문에 안정적인 스트리밍을 제공할 수 있으나 빈번한 컨트롤 메시지 전송이 발생하며 스트리밍 서버 쪽에서 스트리밍 스케쥴링을 수행해야하는 오버헤드가 발생한다.
본 발명에서도 하위 스트리밍 서버용 클라이언트 단말기(440)가 스트리밍 데이터 흐름 제어 주도권을 가지고 데이터 전송량을 조정하여 스트리밍 서비스를 받도록 구현하는 풀 방식과, 중계 스트리밍 서버용 클라이언트 단말기(450)가 스트리밍 데이터 흐름 제어 주도권을 가지고 주기적으로 적절한 데이터를 하위 스트리밍 서버용 클라이언트로 전송하는 푸쉬 방식으로 구현할 수 있다.
그런데, 상기 풀 방식을 구현하기 위해서는 중계 스트리밍 서버용 클라이언트 단말기(450)가 전송 속도 제어를 위한 빈번한 제어 메시지를 하위 스트리밍 서버용 클라이언트 단말기(440)로 전송해야하는 오버헤드가 발생하며, 중계 스트리밍 서버용 클라이언트 단말기(450) 입장에서도 자신에게 접속되어 있는 하위 스트리밍 서버용 클라이언트 단말기(440)들의 스트리밍 전송 속도 제어 요청에 따라 스트리밍 스케줄링을 해야하는 오버헤드가 발생한다. 따라서, 상기 풀 방식의 스트리밍은 본 발명에 따른 클라이언트 단말기가 진정한 스트리밍 서버 기능을 수행한다고 볼 수 없다.
따라서, 중계 스트리밍 서버용 클라이언트 단말기(450)에서 하위 스트리밍 서버용 클라이언트 단말기(440)로의 전송 방식은 푸쉬 방식의 전송이 바람직한 본 발명의 실시 예가 될 것이다.
따라서, 상기의 푸쉬 방식을 적용할 경우 중계 스트리밍 서버용 클라이언트 단말기(450)가 적절한 스트리밍 전달속도 제어를 통하여 자신에게 접속되어 있는 각각의 하위 스트리밍 서버용 클라이언트 단말기(440)들에게 버퍼 오버플로우/언더플로우 없는 안정적인 스트리밍을 제공할 수 있다.
특히, 상기 푸쉬 방식이 바람직한 이유는 본 발명에 따를 경우 스트리밍 서비스 부하의 분산이 이루어질 수 있어, 중계 서버용 클라이언트 단말기(450)가 스트리밍 서버로서 전달속도 제어를 수행하기가 용이하기 때문이다.
한편, 중계 스트리밍 서버용 클라이언트 단말기(440)에서 하위 스트리밍 서버용 클라이언트 단말기(450)로의 스트리밍이 푸쉬 방식(또는 풀 방식)으로 구현되는 거와 마찬가지로 스트리밍 데이터 근원서버 또는 상위 스트리밍 서버용 클라이언트 단말기(430)에서 중계 스트리밍 서버용 클라이언트 단말기(450)로의 스트리밍이 푸쉬 방식(또는 풀 방식)으로 구현됨은 자명한 사실일 것이다.
도 5는 스트리밍 서버용 클라이언트 단말기가 스트리밍 재생과 동시에 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍하는 과정을 도시한 흐름도이다.
스트리밍을 받아 재생하고자 하는 스트리밍 서버용 클라이언트 단말기(502; 중계 스트리밍 서버용 클라이언트 단말기)는 스트리밍 데이터 근원 서버 또는 상위에 있는 스트리밍 서버용 클라이언트 단말기(500; 상위 스트리밍 서버용 클라이언트 단말기)에 스트리밍 데이터 전송 요청(S510)을 한다.
상기 스트리밍 요청을 위해서는 중계 스트리밍 서버 클라이언트(502)가 상위 스트리밍 서버용 클라이언트 단말기(500) 위치정보를 알고 있어야 하는데, 상위 스트리밍 서버용 클라이언트 단말기(500)의 위치정보는 별도의 위치정보 관리서버(또는, 위치정보를 가지고 있는 단말기)로부터 수신함으로써 알 수 있다.
상기에서 상위 스트리밍 서버용 클라이언트 단말기(500)는 고정적으로 정해져 있는 것이 아니고, 현재 스트리밍 재생 작업을 하고 있는 단말기 중에서 특정 하나가 상위 스트리밍 서버용 클라이언트 단말기로 정해진다. 이러한 상위 스트리밍 서버 클라이언트로의 검색 및 접속 과정은 본 출원인에 의해 출원된 "스트리밍 데이터 전송을 위한 P2P 방식의 소프트웨어적인 멀티캐스팅 방법 및 장치"(국내출원번호: 10-2002-0061321)에 상세히 설명되어 있으므로 그에 대한 자세한 설명은 생략한다.
상위 스트리밍 서버용 클라이언트 단말기에 성공적인 접속이 이루어지면, 중계 스트리밍 서버용 클라이언트 단말기는 상위 스트리밍 서버용 클라이언트 단말기로부터 데이터를 스트리밍 받아 이를 재생(S514)한다.
한편, 또 다른 스트리밍 서버용 클라이언트 단말기(504; 하위 스트리밍 서버용 클라이언트 단말기)가 중계 스트리밍 서버용 클라이언트 단말기(502)가 스트리밍 받고 있는 데이터를 다시 스트리밍 받고자 할 경우, 마찬가지로 위치정보 관리서버로부터 자신에게 스트리밍 해줄 스트리밍 서버용 클라이언트 단말기의 위치정보를 얻어낸 후 해당 중계 스트리밍 서버용 클라이언트 단말기(502)로부터 데이터를 스트리밍받아 이를 재생(S516,S518,S520)한다.
한편, 특정 상위 스트리밍 서버용 클라이언트 단말기로부터 스트리밍 받던 중에 해당 상위 스트리밍 서버용 클라이언트 단말기의 접속이 종료되거나 비정상적으로 접속 끊김이 발생했을 때는 해당 상위 스트리밍 서버 클라이언트 단말기와의접속을 종료하고, 새로운 스트리밍 서버 클라이언트 단말기를 찾아 이로부터 데이터 스트리밍을 이어 받는다. 이러한 비정상적 종료에 대한 동작 방법 역시 본 출원인에 의해 출원된 "스트리밍 데이터 전송을 위한 P2P 방식의 소프트웨어적인 멀티캐스팅 방법 및 장치"(국내출원번호: 10-2002-0061321)에 상세히 설명되어 있으므로 그에 대한 자세한 설명은 생략한다.
결국, 종래 멀티캐스팅 스트리밍에 있어 스트리밍 재생 단말기는 스트리밍 재생이 주된 목적이 되고 데이터 라우팅 의미의 중간 노드로서 역할만 할뿐, 에러 체킹 등이 효율적으로 이루어지지 않아 스트리밍 되는 데이터의 품질이 낮다. 또한, 직접 스트리밍 서버에 접속하여 스트리밍 받을 때보다 스트리밍 지원 기능들이 제한적일 수밖에 없었다.
그러나, 본 발명에 의할 때 각각의 스트리밍 서버용 클라이언트 단말기는 스트리밍 재생뿐 아니라 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍 서버와 마찬가지 방식으로 스트리밍해 주기 때문에 일정한 비트 레이트(bit rate)의 스트리밍을 해줄 수 있어 고품질의 스트리밍을 이룰 수 있다.
본 발명의 기술사상은 상기 바람직한 실시 예에 따라 구체적으로 기술되었으나 상기한 실시 예는 그 설명을 위한 것으로서, 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술사상의 범위에서 다양한 실시 예가 가능함을 이해할 수 있을 것이다.
상기에서 설명한 바와 같이 본 발명은, 기존의 스트리밍 서버에서의 역할을 각 스트리밍 단말기가 수행하도록 하여 기존 스트리밍 서버의 역할을 분산시킴으로써, 스트리밍 네트워크 대역폭과 스트리밍 서버의 부하를 분산시키는 효과가 있다. 또한, 각 스트리밍 단말기가 스트리밍 서버로 동작하기 때문에 스트리밍 할 때 발생하는 각종 이벤트에 대한 적절한 제어를 할 수 있어, 양질의 스트리밍 데이터 전송이 이루어지고 스트리밍 대기시간(latency)을 감소시키는 효과가 있다.

Claims (17)

  1. 삭제
  2. 스트리밍 데이터를 수신하여 스트리밍 재생과 동시에 다른 스트리밍 재생 단말기로 스트리밍 제어를 통한 데이터 스트리밍을 수행하는 스트리밍 서버용 클라이언트 단말기와,
    소정의 스트리밍 데이터를 보유하고 있어 상기의 스트리밍 서버용 클라이언트 단말기로 스트리밍 제어를 통한 스트리밍을 수행하는 스트리밍 데이터 근원서버로 이루어지며,
    상기 스트리밍 서버용 클라이언트 단말기는,
    스트리밍 데이터 근원 역할을 하는 상위 스트리밍 서버용 클라이언트 단말기에 대한 위치정보를 찾아내는 위치정보 검색모듈과,
    상기 상위 스트리밍 서버용 클라이언트 단말기로부터 스트리밍되는 데이터를 재생하는 스트리밍 데이터 재생기와,
    전송된 스트리밍 데이터를 재생과 함께 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍해주는 스트리밍 모듈
    을 구비한 것을 특징으로 하는 스트리밍 시스템.
  3. 제2항에 있어서, 위치정보 검색모듈에서 스트리밍 서버용 클라이언트 단말기의 위치정보는 별도의 위치정보 관리서버로부터 얻어오는 것을 특징으로 하는 스트리밍 시스템.
  4. 제2항에 있어서, 위치정보 검색모듈에서 스트리밍 서버용 클라이언트 단말기의 위치정보는 미리 설정 등록된 것을 특징으로 하는 스트리밍 시스템.
  5. 제2항에 있어서, 위치정보 검색모듈에서 스트리밍 서버용 클라이언트 단말기의 위치정보는 스트리밍 데이터가 저장되어 있는 스트리밍 데이터 근원 서버로부터 얻어오는 것을 특징으로 하는 스트리밍 시스템.
  6. 제2항에 있어서, 스트리밍 모듈은,
    상위 스트리밍 서버용 클라이언트 단말기로부터 스트리밍 제어신호 및 제어프레임을 수신하여 이를 바탕으로 하위 스트리밍 서버용 클라이언트 단말기로의 스트리밍을 제어하는 스트리밍 제어 모듈/버퍼와,
    상위 스트리밍 서버용 클라이언트 단말기로부터 수신한 스트리밍 데이터를 버퍼링하여 이를 하위 스트리밍 서버용 클라이언트 단말기에 스트리밍해주는 스트리밍 데이터 버퍼
    를 구비한 것을 특징으로 하는 스트리밍 시스템.
  7. 제6항에 있어서, 스트리밍 제어 모듈/버퍼에서의 스트리밍 제어신호 및 제어프레임 수신은 전송 신뢰성을 유지할 수 있는 전송 제어 프로토콜을 사용하여 수신되는 것을 특징으로 하는 스트리밍 시스템.
  8. 제6항에 있어서, 스트리밍 데이터 버퍼에서의 버퍼링은 빠른 스트리밍을 위한 사용자 데이터그램 프로토콜을 사용하여 버퍼링 되는 것을 특징으로 하는 스트리밍 시스템.
  9. 제2항 내지 8항에 있어서 어느 하나의 항에 있어서, 스트리밍 데이터를 저장하고 있는 스트리밍 데이터 근원서버가 상위 스트리밍 서버용 클라이언트 단말기 기능을 수행하는 것을 특징으로 하는 스트리밍 시스템.
  10. 제2항에 있어서, 스트리밍 재생용 단말기는 스트리밍 재생기능만 하는 단말기뿐 아니라 다른 단말기로 스트리밍 해주는 기능을 함께 가진 스트리밍 서버용 클라이언트 단말기를 포함하는 것을 특징으로 하는 스트리밍 시스템.
  11. 제2항에 있어서, 스트리밍 데이터 근원서버는 파일서버, 미디어 인코더, 리모트 서버와 같은 소정의 미디어 데이터를 저장한 것을 특징으로 하는 스트리밍 시스템.
  12. 제2항에 있어서, 스트리밍 데이터 근원서버는 별도의 스트리밍 데이터가 저장된 장치로부터 데이터를 수신하여 상기 스트리밍 서버용 클라이언트 단말기로 스트리밍 해주는 것을 포함하는 스트리밍 시스템.
  13. 상위 스트리밍 서버용 클라이언트 단말기의 위치정보를 찾아내는 제1단계와,
    상기의 상위 스트리밍 서버용 클라이언트 단말기에 접속하여 스트리밍 데이터를 수신하여 스트리밍 재생하는 제2단계와,
    하위 스트리밍 서버용 클라이언트 단말기로부터 스트리밍 요청이 있는 경우 현재 스트리밍 재생하고 있는 스트리밍 데이터를 하위 스트리밍 서버용 클라이언트 단말기로 스트리밍 해주는 제3단계
    를 포함한 스트리밍 재생 및 스트리밍 방법.
  14. 제13항에 있어서, 제2단계에서 스트리밍 데이터를 수신하는 방식은, 상위 스트리밍 서버용 클라이언트 단말기가 스트리밍 전송 흐름 제어를 주도하는푸쉬(push) 방식인 것을 특징으로 하는 스트리밍 재생 및 스트리밍 방법.
  15. 13항에 있어서, 제2단계에서 스트리밍 데이터를 수신하는 방식은, 스트리밍 데이터를 수신하는 측에서 스트리밍 전송 흐름 제어를 주도하는 풀(pull) 방식인 것을 특징으로 하는 스트리밍 재생 및 스트리밍 방법.
  16. 제13항에 있어서, 상위 스트리밍 서버용 클라이언트 단말기가 스트리밍 재생 종료되었거나 비정상적으로 종료되었을 경우에는,
    상위 스트리밍 서버용 클라이언트 단말기와의 접속을 종료하는 단계와,
    새로운 상위 스트리밍 서버용 클라이언트 단말기의 위치정보를 알아내어 끊겨진 스트리밍 데이터를 계속하여 스트리밍 받는 단계
    를 포함하는 것을 특징으로 하는 스트리밍 재생 및 스트리밍 방법.
  17. 제13항에 있어서, 상위 스트리밍 서버용 클라이언트 단말기는 스트리밍 데이터 근원서버인 것을 특징으로 하는 스트리밍 재생 및 스트리밍 방법.
KR1020030081222A 2003-11-17 2003-11-17 스트리밍 서버로 동작하는 스트리밍 단말기를 포함한스트리밍 시스템 및 그 동작방법 KR100460938B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030081222A KR100460938B1 (ko) 2003-11-17 2003-11-17 스트리밍 서버로 동작하는 스트리밍 단말기를 포함한스트리밍 시스템 및 그 동작방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030081222A KR100460938B1 (ko) 2003-11-17 2003-11-17 스트리밍 서버로 동작하는 스트리밍 단말기를 포함한스트리밍 시스템 및 그 동작방법

Publications (1)

Publication Number Publication Date
KR100460938B1 true KR100460938B1 (ko) 2005-01-14

Family

ID=37383399

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030081222A KR100460938B1 (ko) 2003-11-17 2003-11-17 스트리밍 서버로 동작하는 스트리밍 단말기를 포함한스트리밍 시스템 및 그 동작방법

Country Status (1)

Country Link
KR (1) KR100460938B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100983222B1 (ko) * 2008-09-23 2010-09-20 주식회사 다산네트웍스 컨텐츠 제공 방법, 컨텐츠 수신 방법 및 컨텐츠 제공 시스템
KR101008356B1 (ko) * 2008-01-21 2011-01-14 최태암 스트리밍 중계장치, 사용자 단말장치 및 스트리밍 서비스중계방법
KR101086418B1 (ko) * 2006-11-29 2011-11-25 삼성전자주식회사 Ip 네트워크에서 정보를 송수신하는 방법 및 장치

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101086418B1 (ko) * 2006-11-29 2011-11-25 삼성전자주식회사 Ip 네트워크에서 정보를 송수신하는 방법 및 장치
US8346957B2 (en) 2006-11-29 2013-01-01 Samsung Electronics Co., Ltd. Method and apparatus for transmitting/receiving information in internet protocol network
KR101008356B1 (ko) * 2008-01-21 2011-01-14 최태암 스트리밍 중계장치, 사용자 단말장치 및 스트리밍 서비스중계방법
KR100983222B1 (ko) * 2008-09-23 2010-09-20 주식회사 다산네트웍스 컨텐츠 제공 방법, 컨텐츠 수신 방법 및 컨텐츠 제공 시스템

Similar Documents

Publication Publication Date Title
US9673996B1 (en) Redirection of a streaming media session in an anticipated failover scenario
CA2398499C (en) A system and method for rewriting a media resource request and/or response between origin server and client
JP3819751B2 (ja) ストリーミングメディア転送方法および装置
US7934010B2 (en) System and method for retrieving digital multimedia content from a network node
US8756296B2 (en) Method, device and system for distributing file data
US8775655B2 (en) System and method for presenting streaming media content
JP5058468B2 (ja) ストリーミングメディアの消去耐性符号化のための方法、該方法を実行するコンピュータ実行可能命令を記録した媒体、及びシステム
US20020040404A1 (en) System and method for performing broadcast-enabled disk drive replication in a distributed data delivery network
US20110246608A1 (en) System, method and device for delivering streaming media
US20100235432A1 (en) Distributed Server Network for Providing Triple and Play Services to End Users
US20020073238A1 (en) System and method for media stream adaptation
US7886056B2 (en) Method and apparatus for workload management of a content on demand service
US20090216897A1 (en) Method and system for controlling streaming rates
US20050262261A1 (en) Simultaneous media playout
KR20030056701A (ko) P2p 방식을 이용한 멀티미디어 스트리밍 장치 및 방법
US20020042817A1 (en) System and method for mirroring and caching compressed data in a content distribution system
JP2008505564A (ja) オーディオチャンキング
US20060029078A1 (en) Method for dealing with a request from a user for leaving and for zapping a multicast service channel with a slow leaving mechanism and apparatus thereof
JP2013510453A (ja) データセグメントのオプションのブロードキャスト配信によるストリーミング
JP2010027053A (ja) データ配信システム及び方法
Margaritidis et al. Adaptation techniques for ubiquitous internet multimedia
WO2020135562A1 (zh) 一种组播方法、装置、设备和计算机存储介质
JP2005094769A (ja) マルチメディアコンテンツの高速ダウンロードサービス装置及びその方法
KR100460938B1 (ko) 스트리밍 서버로 동작하는 스트리밍 단말기를 포함한스트리밍 시스템 및 그 동작방법
US20070076614A1 (en) Method for changing channels in wireless communication terminal and content service system

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated 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: 20081222

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee