KR20050103558A - System and method for transmitting the data from server to clients in the internet network - Google Patents

System and method for transmitting the data from server to clients in the internet network Download PDF

Info

Publication number
KR20050103558A
KR20050103558A KR1020040028754A KR20040028754A KR20050103558A KR 20050103558 A KR20050103558 A KR 20050103558A KR 1020040028754 A KR1020040028754 A KR 1020040028754A KR 20040028754 A KR20040028754 A KR 20040028754A KR 20050103558 A KR20050103558 A KR 20050103558A
Authority
KR
South Korea
Prior art keywords
client
server
content
network
clients
Prior art date
Application number
KR1020040028754A
Other languages
Korean (ko)
Other versions
KR100616250B1 (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 KR1020040028754A priority Critical patent/KR100616250B1/en
Publication of KR20050103558A publication Critical patent/KR20050103558A/en
Application granted granted Critical
Publication of KR100616250B1 publication Critical patent/KR100616250B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Abstract

본 발명은 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 방법에 관한 것으로, 소정의 컨텐츠를 저장하고 있는 서버와 동일 네트워크에서 상기 컨텐츠를 수신하고자 하는 복수의 클라이언트들 간에 데이터를 전송하는 서버/클라이언트 시스템에 있어서, 각 서브 네트워크 별로 상기 서버로부터 상기 컨텐츠를 수신하는 제1 클라이언트; 및 상기 서버와 접속을 유지하며, 상기 제1 클라이언트와 동일한 서브 네트워크 내에서 상기 제1 클라이언트가 서버로부터 수신하는 상기 컨텐츠와 동일한 컨텐츠를 상기 제1 클라이언트로부터 수신하는 제2 클라이언트를 포함함을 특징으로 한다.The present invention relates to a data transmission method between a server and clients in an Internet network, and to a server / client system for transmitting data between a server storing predetermined content and a plurality of clients that want to receive the content in the same network. A first client for receiving the content from the server for each sub-network; And a second client maintaining a connection with the server, the second client receiving the same content from the first client as the content received from the server by the first client in the same subnetwork as the first client. do.

Description

인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 시스템 및 방법{System And Method For Transmitting The Data From Server To Clients In The Internet Network}System And Method For Transmitting The Data From Server To Clients In The Internet Network

본 발명은 인터넷 네트워크에서 서버와 클라이언트들 간의 통신 방법에 관한 것으로, 보다 상세하게는 소정의 컨텐츠를 저장하고 있는 서버와 동일 네트워크에서 상기 컨텐츠를 수신하고자 하는 복수의 클라이언트들 간의 트래픽 분산에 의한 서버와 클라이언트들 간의 데이터 전송 시스템 및 방법에 관한 것이다.The present invention relates to a communication method between a server and clients in an internet network, and more particularly, to a server storing predetermined content and a server by traffic distribution among a plurality of clients that want to receive the content in the same network. A system and method for data transmission between clients.

현재 인터넷 네트워크를 통해 제공되는 방송 방법으로는 주문형 비디오 서비스(Video On Demand; 이하, 'VOD'라 한다) 방식과 실시간 멀티캐스트 서비스 방식이 있다.Currently, broadcasting methods provided through the Internet network include a video on demand (hereinafter referred to as VOD) method and a real-time multicast service method.

상기 VOD 방식의 서비스는 컴퓨터와 통신 그리고 방송 분야의 조합으로 이뤄진 새로운 형태의 영상서비스로, 사용자의 요구에 따라 원하는 영상자료나 시청 프로그램 등이 제공되는 주문형 비디오 서비스이다. 기존 방송이 공중파 방송국 중심의 수동적 방송이라면, 인터넷 방송은 주문형, 쌍방향 방송이라고 할 수 있다. 즉, 상기 VOD 방식은 일방적으로 뿌려지는 전파가 아닌 사용자가 원할 경우에만 선택적으로서 볼 수 있다는 장점이 있다. 따라서, 상기 VOD 서비스를 제공하기 위해서는 기본적으로 멀티미디어 정보, 즉 음악파일이나 동영상 파일 등을 저장하는 미디어 서버와 상기 동영상 파일 등의 거대한 멀티미디어 정보가 수용자에게 전달될 수 있는 통신망, 그리고 데이터의 압축, 복원 및 재생을 실시간으로 가능케 하는 소프트웨어(예컨대, 셋톱박스 또는 플레이어) 등의 구성 요소가 구비되어야 한다.The VOD type service is a new type of video service which is a combination of computer, communication, and broadcasting fields, and is a video service on demand that provides desired video material or viewing program according to a user's request. If the existing broadcast is a passive broadcast centered on an over-the-air station, the Internet broadcast may be called an on-demand, interactive broadcast. That is, the VOD method has an advantage that it can be viewed selectively only when the user wants it, rather than unilaterally spreading radio waves. Accordingly, in order to provide the VOD service, the multimedia server basically stores multimedia information, that is, a music server or a video file, a communication network through which huge multimedia information such as the video file can be delivered to the receiver, and compression and restoration of data. And components such as software (eg, set-top boxes or players) that enable playback in real time.

한편, 서버로부터 클라이언트가 방송 데이터를 수신하는 방법으로는 다운로드(Download) 방식과 스트리밍(Streaming) 방식이 있다. 상기 다운로드 방식은 상기 방송 데이터 전체를 수신하여 상기 클라이언트의 메모리에 저장한 후, 재생하는 방법이며, 상기 스트리밍 방식은 상기 서버로부터 데이터를 실시간으로 수신 및 디코딩하는 방식이다. 상술한 VOD 방식과 실시간 멀티캐스트 서비스 방식은 상기 스트리밍 방식을 사용하여 수신한 멀티미디어 데이터를 재생한다.On the other hand, there are a download method and a streaming method as a method of receiving broadcast data from a server by a client. The download method is a method of receiving the entire broadcast data, storing it in a memory of the client, and playing the data. The streaming method is a method of receiving and decoding data from the server in real time. The above-described VOD scheme and real-time multicast service scheme reproduce multimedia data received using the streaming scheme.

상기 스트리밍 방식은 대용량의 비디오 및 오디오와 같은 연속 매체(continuous media)를 실시간으로 전송, 수신 및 디코딩하여 네트워크와 CPU 리소스를 최적으로 사용하는 기술이다. 일반적으로 전체 볼륨이 모두 사용되는 데이터(예컨대, 압출 파일)는 모든 데이터를 서버로부터 다운로딩하여 처리하는 다운로드 방식을 사용하기 때문에 순간적인 부하를 발생시키지만, 연속 매체는 이러한 대용량의 데이터에 비하여 순간적으로 요구되는 네트워크 대역폭 및 CPU 부하가 상대적으로 작기 때문에, 시간에 따라 필요한 데이터만을 처리하면 되는 특징을 갖는다. 일반적으로 상기 스트리밍 기술을 적용하기 위해서는, 네트워크 대역폭과 CPU 부하의 최우선 할당이 필요하다. 그러나, 현재 인터넷에 널리 사용되는 이더넷(Ethernet) 방식은 네트워크 리소스의 고정 할당이 불가능하기 때문에, 네트워크의 상태에 따라 데이터 전송이 지연될 수 있다. 이런 문제를 해결하기 위해서 기존의 스트리밍 기술에서는 클라이언트에 일정 시간의 데이터를 저장할 수 있는 버퍼를 유지하는 방식이 사용되어 왔다.The streaming method is a technology that optimally uses network and CPU resources by transmitting, receiving and decoding continuous media such as a large amount of video and audio in real time. In general, data that consumes the entire volume (e.g., extruded files) creates a momentary load because it uses a download method that downloads all data from the server and processes it, but continuous media provides instantaneous Since the required network bandwidth and CPU load are relatively small, only the necessary data need to be processed over time. In general, in order to apply the streaming technology, a priority allocation of network bandwidth and CPU load is required. However, since the Ethernet method widely used for the Internet is not able to statically allocate network resources, data transmission may be delayed depending on the state of the network. To solve this problem, the existing streaming technology has been used to maintain a buffer that can store a certain amount of data on the client.

근래에 폭발적으로 확산되고 있는 인터넷 네트워크는 글로벌 네트워크로 전 세계의 수많은 네티즌들의 불특정 동시 접속의 특징을 가지고 있다. 다시 말해서, 동시에 수많은 접속자들에게 데이터를 전송할 수 있어야 한다.The recent explosion of the Internet network is a global network, characterized by unspecified simultaneous connections by numerous netizens around the world. In other words, it should be able to send data to a large number of users at the same time.

이러한 인터넷의 데이터 전송 방식은 데이터 전송에 참여하는 송/수신자 관점에서 유니캐스트(Unicast), 브로드캐스트(Broadcast), 멀티캐스트(Multicast)로 구분할 수 있다. 이들 중 멀티캐스트 전송방식이 다중 전송에 대한 최적의 대안으로 인식되고 있으며, 멀티캐스트 전송방식에 대한 다양한 연구가 진행되고 있는 실정이다.Such data transmission methods of the Internet can be classified into unicast, broadcast, and multicast from the perspective of a transmitter / receiver participating in data transmission. Among them, the multicast transmission method is recognized as an optimal alternative to the multiple transmission, and various studies on the multicast transmission method are being conducted.

상기 멀티캐스트 전송방식은 인터넷 상에서 일반적으로 사용되는 유니캐스트 전송 방식(하나의 송신자가 다른 하나의 수신자에게 데이터를 전송하는 전송 방식)과는 달리 전송 패킷의 헤더에 수신자의 주소 대신 수신자들이 참여하고 있는 그룹주소를 표시함으로써, 여러 수신자들에게 전송되는 데이터들이 한번에 전송되도록 하여 데이터의 중복 전송으로 인한 네트워트 자원의 낭비를 최소화한다는 특징이 있다.Unlike the unicast transmission method (a transmission method in which one sender transmits data to another receiver), which is generally used on the Internet, the multicast transmission method includes receivers participating in the header of the transmission packet instead of the address of the receiver. By displaying the group address, it is possible to minimize the waste of network resources due to redundant transmission of data by allowing data to be transmitted to multiple receivers at once.

또한, 이러한 멀티캐스트 전송을 위해서는 송신자는 실제의 호스트 주소가 아닌 D클래스 IP 주소에 의한 그룹주소를 사용하며, 그 그룹주소를 갖는 멀티캐스트 패킷을 전송받은 수신자는 자신이 해당 그룹에 포함되었는지의 여부를 판단하여 데이터의 수신 여부를 결정하게 된다. 따라서, 이러한 멀티캐스트 전송방식을 지원하기 위한 별도의 라우터가 필요하게 된다.In addition, for such multicast transmission, the sender uses a group address based on a class D IP address, not an actual host address, and a receiver receiving a multicast packet having the group address indicates whether the group is included in the group. It is determined whether to receive the data by determining. Therefore, a separate router is needed to support such a multicast transmission method.

하지만, 현재 인터넷의 라우터들은 대부분 유니캐스트만을 지원하도록 구성되어 있기 때문에 현실적으로 인터넷상에 멀티캐스트 전송방식을 적용하는 것이 어렵다.However, since most routers in the Internet are configured to support only unicast, it is difficult to apply a multicast transmission method on the Internet in reality.

이를 극복하기 위해, 터널링(tunneling)이라는 개념을 사용하여 캡슐화(encapsulation)된 패킷을 전송하는 IP 멀티캐스트 전송방식이 이용되기도 한다.To overcome this, an IP multicast transmission scheme for transmitting an encapsulated packet using a concept of tunneling may be used.

이 때, 터널링을 이용한 멀티캐스트 전송방식은 멀티캐스트 라우터들간에 터널을 설정한 후, 그 멀티캐스트 라우터가 멀티캐스트를 위한 데이터 패킷을 라우팅할 때, 해당 패킷의 헤더 앞에, 멀티캐스트 라우터들간에 설정된 터널의 양 끝단 IP 주소를 덧붙여 라우팅하도록 한다. 즉, 이러한 멀티캐스트 데이터 패킷이 멀티캐스트를 지원하지 않는 일반 라우터들을 거칠 경우, 상기 양 끝단 IP주소에 의해 기존의 유니캐스트 패킷과 같은 방법으로 라우팅되어 최종적으로 터널의 종착지로 전송됨으로써, 현재의 인터넷 환경에서도 멀티캐스트 전송을 가능하게 한다.In this case, in the multicast transmission method using tunneling, after the tunnel is established between the multicast routers and the multicast router routes the data packet for the multicast, the multicast router is configured between the multicast routers before the header of the packet. The IP address at both ends of the tunnel should be added for routing. That is, when such a multicast data packet passes through general routers that do not support multicast, the multicast data packet is routed in the same manner as the existing unicast packet by the IP addresses at both ends and finally transmitted to the end point of the tunnel, thereby providing the current Internet. Enable multicast transmission even in environments.

하지만, 이러한 IP 멀티캐스트 전송방식도 수용가능한 동시접속자 수가 제한된다는 문제점이 있다.However, this IP multicast transmission method also has a problem in that the number of simultaneous accessors that can be accommodated is limited.

이외에도 멀티캐스트를 응용한 전송기법으로 네트워크 레벨(Network-level) 멀티캐스트와, 어플리케이션 레벨(Application-level) 멀티캐스트가 있다.In addition, there are network-level multicast and application-level multicast.

이중 네트워크 레벨 멀티캐스트 기법은 라우터에 하드웨어적인 추가 기능을 삽입하여 라우터로 하여금 분산전송을 수행하게 하는 방법으로서, 이를 인터넷에 적용하기 위해 인터넷상의 모든 라우터가 이 기능을 수행하는 라우터로 교체되어야 한다는 특징이 있다. 따라서, 네트워크 레벨 멀티캐스트 기법은 현실적으로 구현이 불가능하다.The dual network level multicast scheme is a method of inserting a hardware additional function into a router to cause the router to perform distributed transmission. In order to apply it to the Internet, all routers on the Internet must be replaced with a router that performs this function. There is this. Thus, network level multicast schemes are not practical.

한편, 어플리케이션 레벨 멀티캐스트 기법은 송신자로부터 데이터를 수신한 1차 수신자가 해당 데이터를 2차 수신자에게 재전송하도록 하는 방법으로서, 불특정 다수의 동시 접속자가 발생하여 그들간 연결 경로가 많아지는 경우, 이를 관리하는 것이 곤란하다. 따라서, 실질적으로 동시 접속자 수에 제한을 받게 되며, 상위 수신자의 접속 이탈시, 하위에 있는 수많은 수신자의 접속상태 유지 및 데이터 전송의 신뢰성을 보장할 수 없는 심각한 문제점이 있다.On the other hand, the application-level multicast scheme is a method that allows the primary receiver receiving data from the sender to retransmit the data to the secondary receiver, and manages when an unspecified number of simultaneous accessors occur and there are many connection paths between them. It is difficult to do Accordingly, there is a serious problem that the number of concurrent users is substantially limited, and when the upper receiver is disconnected, there is a serious problem that it is not possible to guarantee the reliability of data transmission and maintaining the connection state of a number of lower receivers.

상술한 바와 같이 상기 VOD 방식은 모든 클라이언트(사용자)가 서버에 접속하여 원하는 컨텐츠를 스트리밍 받기 때문에 서버에 부하(네트워크 포함)를 많이 주게되는 단점을 가져온다. 따라서, 이를 해결할 수 있는 방법이 상술한 멀티캐스팅 방송이지만 이는 실시간 방송에 제한되어 있으며, 또한 라우터 등에서 멀티캐스팅을 지원해야 한다는 제약성을 가지게 되는 문제점이 있다.As described above, the VOD method has a disadvantage in that a load (including a network) is placed on the server because all clients (users) access the server and receive the desired content. Therefore, although the above-described method is a multicasting broadcast, it is limited to real time broadcasting, and there is a problem in that a router or the like must support multicasting.

따라서, 본 발명의 목적은 소정의 컨텐츠를 저장하고 있는 서버로부터 상기 컨텐츠를 수신하는 소정의 네트워크에서 선택된 하나의 클라이언트를 통해 상기 동일 네트워크내의 나머지 클라이언트들이 컨텐츠를 수신하는 트래픽 분산에 의한 서버와 클라이언트들 간의 데이터 전송 시스템 및 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a server and clients by traffic distribution in which the remaining clients in the same network receive content through one client selected from a predetermined network that receives the content from a server storing the predetermined content. The present invention provides a system and method for transmitting data between the objects.

또한, 본 발명의 목적은 실시간 방송 서비스에 있어서, 소정의 클라이언트가 속한 네트워크에서 선택된 하나의 클라이언트만 서버와 유니캐스트로 연결 시키고, 나머지 동일 네트워크의 클라이언트들은 상기 선택된 클라이언트를 통해 데이터를 수신하는 트래픽 분산에 의한 서버와 클라이언트들 간의 데이터 전송 시스템 및 방법을 제공함에 있다.In addition, an object of the present invention, in the real-time broadcasting service, traffic distribution for unicasting only one client selected from a network to which a client belongs to the server, and the clients of the same network receive data through the selected client The present invention provides a system and method for transmitting data between a server and clients.

또한, 본 발명의 다른 목적은 VOD 방송 서비스에 있어서, 소정의 네트워크 내에서 선택된 하나의 클라이언트만이 서버로부터 데이터를 받고 다른 클라이언트들은 동일 내트워크 내에서 이전에 접속한 클라이언트로부터 데이터를 수신하는 트래픽 분산에 의한 서버와 클라이언트들 간의 데이터 전송 시스템 및 방법을 제공함에 있다.In addition, another object of the present invention is a VOD broadcast service, in which only one client selected within a given network receives data from a server and other clients receive data from a previously connected client in the same network. The present invention provides a system and method for transmitting data between a server and clients.

또한, 본 발명의 다른 목적은 VOD 방송 서비스에 있어서, 소정의 네트워크 내에서 선택된 하나의 클라이언트만이 서버로부터 데이터를 받고 다른 클라이언트들은 상기 선택된 클라이언트로부터 멀티캐스팅으로 데이터를 수신하고, 동시에 동일 내트워크 내의 다른 클라이언트로부터 데이터를 수신하는 트래픽 분산에 의한 서버와 클라이언트들 간의 데이터 전송 시스템 및 방법을 제공함에 있다. In addition, another object of the present invention is a VOD broadcast service, in which only one selected client within a given network receives data from a server, and other clients receive data from the selected client by multicasting, and simultaneously within the same network. The present invention provides a system and method for transmitting data between a server and clients by traffic distribution for receiving data from another client.

상기한 목적을 달성하기 위한 본 발명의 시스템은; 소정의 컨텐츠를 저장하고 있는 서버와 동일 네트워크에서 상기 컨텐츠를 수신하고자 하는 복수의 클라이언트들 간에 데이터를 전송하는 서버/클라이언트 시스템에 있어서, 각 서브 네트워크 별로 상기 서버로부터 상기 컨텐츠를 수신하는 제1 클라이언트; 및 상기 서버와 접속을 유지하며, 상기 제1 클라이언트와 동일한 서브 네트워크 내에서 상기 제1 클라이언트가 서버로부터 수신하는 상기 컨텐츠와 동일한 컨텐츠를 상기 제1 클라이언트로부터 수신하는 제2 클라이언트를 포함함을 특징으로 한다.The system of the present invention for achieving the above object; A server / client system for transmitting data between a plurality of clients that want to receive the content in the same network as a server storing predetermined content, the server / client system comprising: a first client receiving the content from the server for each sub-network; And a second client maintaining a connection with the server, the second client receiving the same content from the first client as the content received from the server by the first client in the same subnetwork as the first client. do.

또한, 상기한 목적을 달성하기 위한 본 발명의 방법은; 소정의 컨텐츠를 저장하고 있는 서버와 동일 네트워크에서 상기 컨텐츠를 수신하고자 하는 복수의 클라이언트들 간에 데이터를 전송하는 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 방법에 있어서, 소정의 서브 네트워크 내에 속한 소정의 클라이언트가 상기 서버에 접속하여 소정의 상기 컨텐츠를 요청하는 과정; 상기 서버로부터 상기 해당 서브 네트워크 내에서 상기 요청한 컨텐츠와 동일한 컨텐츠를 수신하는 상기 클라이언트가 아닌 다른 클라이언트의 존재 여부를 검색하는 과정; 및 상기 검색 결과, 상기 해당 서브 네트워크 내에 동일 컨텐츠를 수신하는 다른 클라이언트가 존재할 경우 상기 다른 클라이언트로부터 상기 요청한 컨텐츠를 수신하는 과정을 포함함을 특징으로 한다.In addition, the method of the present invention for achieving the above object; A data transmission method between a server and clients in an internet network in which data is transmitted between a plurality of clients that want to receive the content in the same network as a server storing predetermined content, the method comprising: a predetermined client belonging to a predetermined subnetwork Requesting the predetermined content by accessing the server; Searching whether there is a client other than the client that receives the same content as the requested content in the corresponding subnetwork from the server; And receiving the requested content from the other client when the other client receiving the same content exists in the corresponding subnetwork as a result of the search.

이하 본 발명의 바람직한 실시예에 따른 상세한 설명을 첨부된 도면들을 참조하여 설명한다. 하기에는 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.Hereinafter, a detailed description of a preferred embodiment of the present invention will be described with reference to the accompanying drawings. In the following description, detailed descriptions of well-known functions or configurations will be omitted when it is determined that the detailed descriptions of the known functions or configurations may unnecessarily obscure the subject matter of the present invention.

본 발명은 모든 클라이언트(Client)가 서버(Server)로 접속하여 컨텐츠를 가져옴으로써 야기되는 서버 부하를 줄이기 위하여 해당 네트워크에서 동일 컨텐츠를 수신하는 클라이언트가 존재할 경우, 상기 서버로부터 컨텐츠를 수신하고 있는 클라이언트를 통해 상기 동일 컨텐츠를 수신하는 방법을 제안한다.The present invention provides a client that receives content from the server when there is a client that receives the same content in the network in order to reduce the server load caused by all the clients connected to the server to get the content. The present invention proposes a method of receiving the same content.

이하 설명에서 '서버'라 함은 소정의 컨텐츠를 데이터 베이스에 보유하고 있는 컨텐츠 제공자를 의미하며, '클라이언트'라 함은 상기 '서버'에 소정의 네트워크를 통해 접속하여 컨텐츠를 수신하는 각 단말기를 의미한다. 한편, 상기 서버와 클라이언트 간에는 소정의 통신 네트워크를 통해 연결되며, 상기 네트워크는 유/무선 네트워크를 포함한다. 또한, 상기 서버와 클라이언트 간에는 복수개의 네트워크들이 연동되어 연결될 수 있다.In the following description, "server" refers to a content provider holding predetermined content in a database, and "client" refers to each terminal that receives content by connecting to the "server" through a predetermined network. it means. On the other hand, the server and the client is connected through a predetermined communication network, the network includes a wired / wireless network. In addition, a plurality of networks may be interworked and connected between the server and the client.

한편, 후술하는 설명에서 '서브 네트워크(sub-network)'라 함은 상기 서버와 네트워크 사이를 연결하는 대규모 네트워크 중에서 동일 또는 유사한 전송 라인으로 연결된 복수의 클라이언트들의 집합을 의미한다. 예컨대, 상기 서브 네트워크는 소정의 근거리 네트워크(Local Area Network; 이하, 'LAN'이라 한다) 또는 지역 인터넷 회선 제공 서비스 사업자 네트워크(예컨대, 두루넷) 등이 될 수 있다. 따라서, 상기 동일 네트워크 내의 복수의 클라이언트들은 각 단말의 IP(Internet Protocol) 어드레스의 일부 클래스들을 동일하게 사용할 수 있다.Meanwhile, in the following description, the term "sub-network" refers to a collection of a plurality of clients connected by the same or similar transmission line among large networks connecting the server and the network. For example, the sub-network may be a predetermined local area network (hereinafter, referred to as a 'LAN') or a local network service provider network (eg, a double-net). Therefore, the plurality of clients in the same network may use some classes of IP (Internet Protocol) addresses of each terminal in the same manner.

도 1은 본 발명에 따른 서버와 클라이언트 간의 데이터 전송 시스템의 개념을 나타낸 도면이다.1 is a diagram illustrating a concept of a data transmission system between a server and a client according to the present invention.

상기 도 1을 참조하면, 본 발명에 따른 서버와 클라이언트들 간의 데이터 전송 시스템은 서버(100), 제1 클라이언트(110) 및 제2 클라이언트(120)로 구성된다.Referring to FIG. 1, a data transmission system between a server and clients according to the present invention includes a server 100, a first client 110, and a second client 120.

여기서, 상기 클라이언트에 명명한 '제1' 및 '제2'는 상기 서버(100)에 접속하여 컨텐츠 수신을 요구한 순서를 의미한다. 따라서, 상기 제1 클라이언트(110)는 상기 제2 클라이언트(120)보다 상기 서버(100)에 먼저 접속하여 컨텐츠를 요구하였음을 의미한다.Here, 'first' and 'second' named to the client mean an order of requesting content reception by accessing the server 100. Accordingly, the first client 110 accesses the server 100 before the second client 120 and requests content.

상기 제1 클라이언트(110)는 상기 서버(100)와 접속하여, 소정의 컨텐츠를 수신한다. 한편, 상기 제2 클라이언트(120)는 상기 서버(100)에 접속하였으나, 제1 클라이언트(110)가 수신하는 컨텐츠와 동일한 컨텐츠를 요구할 경우 본 발명에 따라 상기 서버(100)로부터 상기 컨텐츠를 수신하지 않고, 제1 클라이언트(110)로부터 동일한 컨텐츠를 수신한다. 이때, 상기 제1 클라이언트(110)를 설명의 편의상 '준서버'라고 칭하기로 한다. 즉, 상기 제1 클라이언트(110)는 서버(100)로부터 컨텐츠를 제공받는 반면, 제2 클라이언트(120)는 상기 서버(100)가 아닌 제2 클라이언트(110), 즉 준서버로부터 컨텐츠를 제공받는다. 따라서, 상기와 같이 함으로써 서버(100)에 대한 부하가 현저히 줄 수 있다. 한편, 이때 상기 제1 클라이언트(110) 및 제2 클라이언트(120)는 VOD 또는 실시간 방송의 형태로 컨텐츠를 제공받을 수 있다.The first client 110 connects to the server 100 and receives predetermined content. Meanwhile, although the second client 120 accesses the server 100, when the second client 120 requests the same content as the content received by the first client 110, the second client 120 does not receive the content from the server 100 according to the present invention. Instead, the same content is received from the first client 110. In this case, the first client 110 will be referred to as a "quasi server" for convenience of description. That is, the first client 110 receives the content from the server 100, while the second client 120 receives the content from the second client 110, that is, the quasi-server, not the server 100. . Therefore, the load on the server 100 can be significantly reduced by doing the above. In this case, the first client 110 and the second client 120 may be provided with content in the form of VOD or real-time broadcast.

이하, 도 2를 참조하여 상기 제2 클라이언트(120)가 상기 준서버로부터 컨텐츠를 수신하는 과정을 설명한다.Hereinafter, a process of receiving content from the quasi-server by the second client 120 will be described with reference to FIG. 2.

도 2는 본 발명에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도이다.2 is a flowchart illustrating a data transmission method between a server and a client according to the present invention.

상기 도 2를 참조하면, 먼저 소정의 클라이언트가 소정의 컨텐츠를 수신하기 위하여 해당 컨텐츠를 보유하고 있는 서버에 접속(200 단계)한다.Referring to FIG. 2, first, a predetermined client accesses a server holding the corresponding content in order to receive the predetermined content (step 200).

상기 서버에 접속한 클라이언트가 상기 컨텐츠에 대한 수신을 요구할 경우, 상기 서버는 상기 컨텐츠를 요구한 클라이언트에 대한 네트워크에 속한 클라이언트들의 정보를 검색한다. 즉, 상기 클라이언트가 속한 소정의 서브 네트워크 내에서 상기 클라이언트가 요구하는 컨텐츠와 동일한 컨텐츠를 수신하고 있는 다른 클라이언트가 존재할 경우 본 발명에 따라 상기 다른 클라이언트로부터 해당 컨텐츠를 수신하게 된다.When a client connected to the server requests reception of the content, the server retrieves information of clients belonging to the network for the client that requested the content. That is, when there is another client receiving the same content as the content requested by the client in the predetermined sub-network to which the client belongs, the corresponding content is received from the other client according to the present invention.

따라서, 상기 클라이언트가 서버로 컨텐츠 수신을 요청하면, 상기 서버는 해당 네트워크의 동일 컨텐츠 이용자(즉, 클라이언트)가 있는 지를 검색(210 단계)한다. 만약, 상기 검색 결과, 해당 네트워크 내에 동일 컨텐츠를 수신하고 있는 클라이언트가 하나도 없을 경우(220 단계), 상기 클라이언트가 준서버가 되어 상기 서버로부터 직접 데이터를 수신(230 단계)하게 된다.Therefore, when the client requests content reception from the server, the server searches (210) whether there is the same content user (ie, client) of the corresponding network. If there is no client receiving the same content in the network as a result of the search (step 220), the client becomes a quasi-server and receives data directly from the server (step 230).

반면, 상기 검색 결과 해당 네트워크 내에 동일 컨텐츠를 수신하고 있는 클라이언트가 존재할 경우, 상기 클라이언트는 상기 검색된 해당 네트워크 내의 동일 컨텐츠를 수신하고 있는 클라이언트에 접속하여, 상기 컨텐츠를 수신(240)하게 된다.On the other hand, if there is a client receiving the same content in the search result, the client accesses the client receiving the same content in the searched network and receives the content (240).

이때, 상기 서버는 상기 구현을 위하여 각 네트워크별 클라이언트들의 접속 상황 및 데이터 수신 상황을 모니터링하여 소정의 테이블에 저장하고 있어야 한다. 상기 테이블은 도 12의 설명에서 후술하기로 한다.At this time, the server should monitor and store the connection status and data reception status of clients for each network in a predetermined table. The table will be described later in the description of FIG. 12.

이하, 상술한 본 발명에 따른 각 서비스별(예컨대, 실시간 방송 서비스 및 VOD 방송 서비스) 실시예들을 도면을 참조하여 설명하기로 한다.Hereinafter, embodiments of each service (eg, a real time broadcast service and a VOD broadcast service) according to the present invention will be described with reference to the drawings.

<제1 실시예 - 실시간 방송>First Embodiment-Real Time Broadcasting

먼저, 도 3 내지 도 5를 참조하여 실시간 방송에 적용된 본 발명의 방법들을 설명한다.First, the method of the present invention applied to real time broadcasting will be described with reference to FIGS. 3 to 5.

도 3은 본 발명의 제1 실시예에 따른 네트워크 시스템 구성을 나타낸 도면이다.3 is a diagram illustrating a network system configuration according to a first embodiment of the present invention.

상기 도 3을 참조하면, 서버(300)는 각 서브 네트워크(310, 320)(즉, 네트워크 A, 네트워크 B 등)별 제1 클라이언트(311, 321)(예컨대, 동일 컨텐츠에 대하여 최초로 요구한 클라이언트 또는 동일 컨텐츠에 대하여 요구한 클라이언트들 중에서 서버와의 통신 속도가 가장 양호한 클라이언트)와 유니캐스트 방식으로 컨텐츠를 제공한다. 즉, 각 서브 네트워크(310, 320)별로 상기 제1 클라이언트(311, 321)들은 상기 서버(300)로부터 직접적으로 데이터를 수신한다.Referring to FIG. 3, the server 300 may include a first client 311 and 321 (eg, a client first requesting the same content) for each sub-network 310 and 320 (that is, network A, network B, etc.). Alternatively, the content is provided in a unicast manner with a client having the best communication speed with the server among the clients that request the same content. That is, the first clients 311 and 321 for each sub network 310 and 320 directly receive data from the server 300.

한편, 상기 각 서브 네트워크(310)에서 상기 제1 클라이언트(311, 321)와 동일한 컨텐츠를 요구한 다른 클라이언트들(즉, 제2 클라이언트(312, 322) 및 제3 클라이언트(313, 323))은 각각 상기 제1 클라이언트(311, 321)로부터 상기 동일한 컨텐츠를 멀티캐스팅 방식으로 수신한다.Meanwhile, other clients (ie, the second client 312 and 322 and the third client 313 and 323) requesting the same content as the first client 311 and 321 in each of the sub-networks 310 may be used. Receive the same content from the first client (311, 321) in a multicasting manner respectively.

이때, 상기 제1 클라이언트(311, 321)로부터 컨텐츠를 수신하는 다른 클라이언트들은 상기 제1 클라이언트(311, 321)이 서버(300)와의 접속이 끊어질 때를 대비하여 상기 서버(300)와 접속을 유지하고 있는 것이 바람직하다. 즉, 상기 서버(300)와는 접속만 유지하며, 실제 데이터의 수신은 상기 제1 클라이언트(311, 321)로부터 이루어진다.In this case, other clients receiving content from the first clients 311 and 321 connect with the server 300 in preparation for when the first client 311 and 321 is disconnected from the server 300. It is desirable to hold. That is, only the connection with the server 300 is maintained, and actual data is received from the first clients 311 and 321.

도 4는 본 발명의 제1 실시예에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도이다.4 is a flowchart illustrating a data transmission method between a server and a client according to a first embodiment of the present invention.

상기 도 4를 참조하면, 서버로부터 소정의 컨텐츠를 수신하고자 하는 소정의 클라이언트는 상기 서버에 접속(400 단계)한다.Referring to FIG. 4, a predetermined client that wants to receive predetermined content from the server connects to the server (step 400).

만약, 상기 서버에 접속한 클라이언트가 상기 서버와 멀티캐스팅을 할 수 있는 사용자일 경우(410 단계), 상기 멀티캐스팅 방법에 의해 상기 서버로부터 데이터를 수신(420 단계)한다.If the client connected to the server is a user capable of multicasting with the server (step 410), data is received from the server by the multicasting method (step 420).

반면, 상기 서버에 접속한 클라이언트가 상기 서버와 멀티캐스팅을 할 수 없는 사용자일 경우 상술한 본 발명에 따라 해당 네트워크 내의 다른 클라이언트로부터 컨텐츠를 수신할 수 있게 된다.On the other hand, if a client connected to the server is a user who cannot multicast with the server, it is possible to receive content from other clients in the network according to the present invention.

따라서, 상기 서버에 접속한 클라이언트가 속한 해당 네트워크의 동일 컨텐츠 이용자를 검색(430 단계)하여, 만약 동일 컨텐츠 이용자가 없을 경우 상기 서버와 유니캐스트 방식으로 데이터를 수신(450 단계)하게 된다. 반면 동일 컨텐츠 이용자가 있을 경우, 최초 접속한 클라이언트(즉, 제1 클라이언트)에 대한 정보를 수신하고, 상기 최초 접속한 클라이언트에게 접속(460 단계)하여 데이터를 수신(470 단계)하게 된다.Accordingly, the same content user of the corresponding network to which the client accessing the server belongs is searched (step 430), and if there is no same content user, the server receives the data in a unicast manner with the server (step 450). On the other hand, when there is the same content user, the first client receives information about the first client (ie, the first client), and the first client is connected (step 460) to receive data (step 470).

상술한 바와 마찬가지로, 상기 서버에는 각 서브 네트워크별로 접속한 클라이언트들의 데이터 수신 상태를 모니터링하여 저장하는 것이 바람직하며, 상기 컨텐츠를 요구하는 클라이언트들에 상기 저장된 정보를 제공함으로써 서버의 부하를 줄일 수 있다.As described above, the server preferably monitors and stores the data reception status of the clients connected to each sub-network, and reduces the load on the server by providing the stored information to the clients requesting the content.

이하, 상기 각 엘리먼트들간의 데이터 신호 처리 절차를 설명한다.Hereinafter, a data signal processing procedure between the above elements will be described.

도 5는 본 발명의 제1 실시예에 따른 각 네트워크 엘리먼트들 간의 신호 처리 절차를 나타낸 흐름도이다.5 is a flowchart illustrating a signal processing procedure between respective network elements according to the first embodiment of the present invention.

상기 도 5를 참조하면, 먼저 서버(510)는 제1 클라이언트(520)(즉, 준서버)로 소정의 컨텐츠를 제공(501 단계)한다. 이때, 해당 네트워크 내의 상기 제1 클라이언트(520)가 아닌 다른 클라이언트, 즉 제2 클라이언트(500)가 상기 서버(510)에 접속하여 동일한 컨텐츠를 요구(502 단계)할 경우, 상기 서버(510)는 상기 제2 클라이언트(500)로 해당 네트워크 내의 동일한 컨텐츠를 수신하고 있는 다른 클라이언트(즉, 제1 클라이언트(520))에 대한 정보를 송신(503 단계)한다.Referring to FIG. 5, first, the server 510 provides predetermined content to the first client 520 (ie, a quasi-server) (step 501). In this case, when a client other than the first client 520 in the network, that is, the second client 500 accesses the server 510 and requests the same content (step 502), the server 510 The second client 500 transmits information about another client (ie, the first client 520) that is receiving the same content in the corresponding network (step 503).

상기 서버로부터 상기 제1 클라이언트(520)에 대한 정보를 수신한 상기 제2 클라이언트(500)는 상기 제1 클라이언트(520)에 접속(504 단계)하여, 상기 해당 컨텐츠를 수신(505 단계)하게 된다.The second client 500 that has received the information about the first client 520 from the server connects to the first client 520 (step 504) and receives the corresponding content (step 505). .

상술한 제1 실시예는 실시간 방송의 경우에 적용함이 바람직하며, 후술하는 제2 및 제3 실시예는 VOD 방성 서비스에 적용하는 것이 바람직하다.The first embodiment described above is preferably applied to a real time broadcast, and the second and third embodiments described below are preferably applied to a VOD soundproofing service.

이하, 도 6 내지 도 9를 참조하여 본 발명의 제2 실시예에 따른 서비스 방법을 설명한다.Hereinafter, a service method according to a second exemplary embodiment of the present invention will be described with reference to FIGS. 6 to 9.

<제2 실시예 - VOD 방송(case 1)><Second embodiment-VOD broadcast (case 1)>

도 6은 본 발명의 제2 실시예에 따른 네트워크 시스템 구성을 나타낸 도면이다.6 is a diagram illustrating a network system configuration according to a second embodiment of the present invention.

상기 도 6을 참조하면, 서버(600)는 각 서브 네트워크(610, 620)(즉, 네트워크 A, 네트워크 B 등)별 제1 클라이언트(611, 621)(예컨대, 동일 컨텐츠에 대하여 최초로 요구한 클라이언트 또는 동일 컨텐츠에 대하여 요구한 클라이언트들 중에서 서버와의 통신 속도가 가장 양호한 클라이언트)와 유니캐스트 방식으로 컨텐츠를 제공한다. 즉, 각 서브 네트워크(610, 620)별로 상기 제1 클라이언트(611, 621)들은 상기 서버(600)로부터 직접적으로 데이터를 수신한다.Referring to FIG. 6, the server 600 includes a first client 611, 621 (eg, a client first requesting the same content) for each sub-network 610, 620 (ie, network A, network B, etc.). Alternatively, the content is provided in a unicast manner with a client having the best communication speed with the server among the clients that request the same content. That is, the first clients 611 and 621 receive data directly from the server 600 for each sub network 610 and 620.

한편, 상기 각 서브 네트워크(610)에서 상기 제1 클라이언트(611, 621)와 동일한 컨텐츠를 요구한 다른 클라이언트들 즉, 제2 클라이언트(612, 622) 및 제3 클라이언트(613, 623))은 각각 상기 제1 클라이언트(611, 621) 및 제2 클라이언트(613, 623)로부터 상기 동일한 컨텐츠를 유니캐스팅 방식으로 수신한다.Meanwhile, other clients requesting the same content as the first clients 611 and 621 in the sub-networks 610, that is, the second clients 612 and 622 and the third clients 613 and 623, respectively, respectively. The same content is received from the first clients 611 and 621 and the second clients 613 and 623 in a unicasting manner.

즉, 상기 제2 클라이언트(612, 622)는 상기 서버(600)로부터 동일한 컨텐츠를 이미 수신하고 있는 제1 클라이언트(611, 621)로부터 해당 컨텐츠를 수신하게 되며, 상기 제3 클라이언트(613, 623)는 상기 서버(600)로부터 동일한 컨텐츠를 수신하고 있는 바로 앞에 접속한 클라이언트, 즉 제2 클라이언트(612, 622)로부터 해당 컨텐츠를 수신하게 된다. 따라서, 동일 네트워크 내의 동일 컨텐츠를 요구하는 모든 클라이언트들은 하나의 유니캐스트라인으로 연쇄적으로 데이터를 수신하게 된다. 따라서, 상기 서버(600)에는 상기 각 서브 네트워크별로 동일한 컨텐츠를 요구하는 모든 클라이언트들의 데이터 수신 상태(즉, 유니캐스트 연결 관계)에 대한 정보를 저장하고 있는 것이 바람직하다.That is, the second client 612, 622 receives the corresponding content from the first client 611, 621 that has already received the same content from the server 600, and the third client 613, 623. Receives the corresponding content from the client connected immediately before receiving the same content from the server 600, that is, the second client 612 and 622. Therefore, all clients requesting the same content in the same network receive data serially in one unicast line. Therefore, the server 600 preferably stores information on the data reception state (ie, unicast connection relationship) of all clients requesting the same content for each sub-network.

이때, 상술한 제1 실시예에서와 마찬가지로 앞서 접속한 클라이언트로부터 컨텐츠를 수신하는 다른 클라이언트들은 상기 앞서 접속한 클라이언트가 서버(300)와의 접속이 끊어질 때를 대비하여 상기 서버(300)와 접속을 유지하고 있는 것이 바람직하다. 즉, 상기 서버(300)와는 접속만 유지하며, 실제 데이터의 수신은 상기 앞서 접속한 클라이언트로부터 이루어진다.In this case, as in the above-described first embodiment, other clients receiving content from the previously connected client may establish a connection with the server 300 in preparation for the case where the previously connected client is disconnected from the server 300. It is desirable to hold. That is, only the connection with the server 300 is maintained, and the actual data is received from the previously connected client.

한편, 상술한 제2 실시예에서는 해당 네트워크 내의 각 클라이언트들은 다음 접속한 클라이언트들에게 컨텐츠를 유니캐스트 방식으로 제공하므로, 상기 각 클라이언트들 모두가 준 서버의 기능을 한다고 볼 수 있다.On the other hand, in the second embodiment described above, since each client in the corresponding network provides content to the next connected clients in a unicast manner, it can be seen that all of the clients function as a given server.

도 7은 본 발명의 제2 실시예에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도.7 is a flowchart illustrating a data transmission method between a server and a client according to a second embodiment of the present invention.

상기 도 7을 참조하면, 서버로부터 소정의 컨텐츠를 수신하고자 하는 소정의 클라이언트는 상기 서버에 접속(700 단계)한다.Referring to FIG. 7, a predetermined client that wants to receive predetermined content from the server connects to the server (step 700).

상기 서버에 접속한 클라이언트는 상술한 본 발명의 제2 실시예에 따라 해당 네트워크 내의 다른 클라이언트로부터 컨텐츠를 수신할 수 있게 된다.The client connected to the server can receive content from other clients in the network according to the second embodiment of the present invention described above.

따라서, 상기 서버에 접속한 클라이언트가 속한 해당 네트워크의 동일 컨텐츠 이용자를 검색(710 단계)하여, 만약 동일 컨텐츠 이용자가 없을 경우 상기 서버와 유니캐스트 방식으로 데이터를 수신(730 단계)하게 된다. 반면 동일 컨텐츠 이용자가 있을 경우, 바로 이전 접속한 클라이언트에 대한 정보를 수신(740 단계)하고, 상기 바로 이전 접속한 클라이언트에게 접속(750 단계)하여 데이터를 수신(760 단계)하게 된다.Accordingly, the same content user of the corresponding network to which the client accessing the server belongs is searched (step 710). If there is no same content user, the server receives the data in a unicast manner with the server (step 730). On the other hand, if there is a user of the same content, information about a client immediately connected (step 740) is received, and a client (step 750) is connected to the client immediately connected (step 760) to receive data.

상술한 제1 실시예에서와 마찬가지로, 상기 서버에는 각 서브 네트워크별로 접속한 클라이언트들의 데이터 수신 상태를 모니터링하여 저장하는 것이 바람직하며, 상기 컨텐츠를 요구하는 클라이언트들에 상기 저장된 정보를 제공함으로써 서버의 부하를 줄일 수 있다.As in the first embodiment described above, it is preferable that the server monitors and stores the data reception status of clients connected to each sub-network, and loads the server by providing the stored information to the clients requesting the content. Can be reduced.

또한, 상기 제2 실시예에서의 경우 각 클라이언트들은 준서버의 역할을 해야 하며, 이를 위해서 스트림받은 데이터를 암호화하여 메모리 또는 디스크에 저장하여야 한다. 만약, 상기 각 클라이언트들이 암호화된 데이터(예컨대, DRM(Digital Right Management)으로 암호화된 데이터)를 스트리밍 방식으로 수신할 경우에는 상기 암호화된 상태 그대로 저장하였다가 바로 다른 클라이언트로 전송할 수 있다.In addition, in the second embodiment, each client should act as a quasi-server, and for this purpose, the streamed data should be encrypted and stored in a memory or a disk. If each of the clients receives encrypted data (for example, data encrypted by DRM (Digital Right Management)) in a streaming manner, the clients can be stored in the encrypted state and transmitted to another client.

도 8은 본 발명의 제2 실시예에 따른 이전 사용자 접속 단절이 발생할 경우의 데이터 전송 방법을 나타낸 흐름도이다.8 is a flowchart illustrating a data transmission method when a previous user disconnection occurs according to the second embodiment of the present invention.

상기 도 8을 참조하면, 상기 소정의 클라이언트가 상술한 방법에 따라 이전 접속한 클라이언트로부터 컨텐츠를 수신하고 있는 경우, 상기 이전 사용자(즉, 클라이언트)의 접속이 단절될 경우가 발생(800 단계)될 수 있다. 예컨대, 영화를 보다가 일시 정지(Pause)하였을 경우가 이에 해당된다. 이때, 상기 클라이언트는 상술한 바와 같이 서버와 접속을 유지하고 있는 상태이므로, 상기 서버에 저장된 정보로부터 해당 서브 네트워크 내에 동일한 컨텐츠를 수신하는 다른 클라이언트가 존재하는 지 검색(810)하게 된다.Referring to FIG. 8, when the predetermined client is receiving content from a previously connected client according to the above-described method, a case in which the connection of the previous user (ie, the client) is disconnected may occur (step 800). Can be. For example, this is the case when the movie is paused while watching a movie. In this case, since the client maintains the connection with the server as described above, the client searches for whether there is another client that receives the same content from the information stored in the server in the corresponding subnetwork.

상기 검색 결과, 만약 다른 클라이언트가 존재하지 않을 경우(820 단계) 상기 클라이언트는 서버로부터 유니캐스트 방식에 의해 직접 데이터를 수신(830 단계)하게 된다. 반면, 다른 클라이언트가 존재할 경우에는 상기 검색된 클라이언트로부터 데이터를 수신(840 단계)하게 된다.As a result of the search, if there is no other client (step 820), the client receives data directly from the server by the unicast method (step 830). On the other hand, if there is another client, it receives data from the retrieved client (step 840).

이때, 상기 제2 실시예에서 바람직하게는 상기 이전 클라이언트에 단절이 발생하였으며, 각 클라이언트들이 유니캐스트 방식으로 연결되어 있으므로, 상기 이전 클라이언트가 접속하고 있는 한 단계 이전 클라이언트로 접속하는 것이 바람직하다. 예컨대, 제 N-1 클라이언트에 단절이 발생할 경우, 제N 클라이언트는 제N-2 클라이언트와 접속하는 것이 바람직하다.In this case, in the second embodiment, since disconnection has occurred to the previous client, and each client is connected in a unicast manner, it is preferable to connect to the previous client to which the previous client is connected. For example, when disconnection occurs in the N-th client, the N-th client preferably connects to the N-th client.

한편, 상기 접속의 단절이 발생된 경우는 상술한 제1 실시예와 후술할 제3 실시예에도 동일하게 적용될 수 있음은 자명하다.On the other hand, it is apparent that the disconnection of the connection can be equally applied to the above-described first embodiment and the third embodiment to be described later.

도 9는 본 발명의 제2 실시예에 따른 이전 사용자의 수신 중단이 발생할 경우의 데이터 전송 방법을 나타낸 흐름도이다.9 is a flowchart illustrating a data transmission method when a reception interruption of a previous user occurs according to a second embodiment of the present invention.

상기 도 9를 참조하면, 상기 소정의 클라이언트가 상술한 방법에 따라 이전 접속한 클라이언트로부터 컨텐츠를 수신하고 있는 경우, 상기 이전 사용자(즉, 클라이언트)의 수신 중단 현상이 발생(900 단계)될 수 있다. 이때, 상기 클라이언트는 현재까지 수신된 데이터가 상기 이전 사용자가 수신한 중단 시점까지의 데이터인지를 판단(910 단계)한다. 따라서, 상기 클라이언트는 상기 이전 클라이언트가 수신 중단 되었다 할지라도, 상기 중단된 시점까지 상기 이전 클라이언트가 수신한 데이터는 계속하여 수신(920 단계)할 수 있다.Referring to FIG. 9, when the predetermined client is receiving content from a previously connected client according to the above-described method, reception of the previous user (ie, the client) may occur (step 900). . In this case, the client determines whether the data received so far is data up to the stopping time received by the previous user (step 910). Accordingly, the client may continue to receive the data received by the previous client (step 920) even if the previous client is stopped.

한편, 상기 클라이언트가 상기 이전 클라이언트가 중단 시점까지 수신한 데이터를 모두 수신하였을 경우에는 상기 이전 클라이언트로부터 더이상 해당 컨텐츠에 대한 데이터를 수신할 수 없으므로, 서버로부터 다른 사용자를 검색(930 단계)하게 된다. 그런다음, 상기 서버에 접속한 클라이언트는 상술한 방법에 의해 검색된 해당 서브 네트워크의 다른 클라이언트에 대한 정보를 수신하고, 상기 다른 클라이언트로부터 데이터를 계속 수신(940 단계)하게 된다.On the other hand, when the client has received all the data received by the previous client until the interruption time can no longer receive data on the content from the previous client, the other user is searched from the server (step 930). Then, the client accessing the server receives the information about the other client of the corresponding subnetwork searched by the above-described method, and continues to receive data from the other client (step 940).

이때, 상기 제2 실시예에서 바람직하게는 상기 이전 클라이언트에 수신 중단이 발생하였으며, 각 클라이언트들이 유니캐스트 방식으로 연결되어 있으므로, 상기 이전 클라이언트가 접속하고 있는 한 단계 이전 클라이언트로 접속하는 것이 바람직하다. 예컨대, 제 N-1 클라이언트에 수신 중단이 발생할 경우, 제N 클라이언트는 제N-2 클라이언트와 접속하는 것이 바람직하다.In this case, in the second embodiment, reception interruption has occurred to the previous client, and since each client is connected in a unicast manner, it is preferable to connect to the previous client to which the previous client is connected. For example, when reception interruption occurs in the N-th client, it is preferable that the N-th client connects to the N-th client.

한편, 상기 접속의 수신 중단이 발생된 경우는 상술한 제1 실시예와 후술할 제3 실시예에도 동일하게 적용될 수 있음은 자명하다.On the other hand, if the reception interruption of the connection occurs it is obvious that the same can be applied to the first embodiment described above and the third embodiment to be described later.

이하, 도 10 및 도 11을 참조하여 VOD 방송의 경우에 있어서 본 발명이 적용될 수 있는 또 다른 실시예를 설명한다.Hereinafter, another embodiment to which the present invention can be applied in the case of VOD broadcasting will be described with reference to FIGS. 10 and 11.

<제3 실시예 - VOD 방송(case 2)><Third embodiment-VOD broadcast (case 2)>

도 10은 본 발명의 제3 실시예에 따른 네트워크 시스템 구성을 나타낸 도면이다.10 is a diagram illustrating a network system configuration according to a third embodiment of the present invention.

상기 도 10을 참조하면, 본 발명에 따른 제3 실시예는 상술한 제1 실시예 및 제2 실시예를 복합하여 구성한 것이다.Referring to FIG. 10, the third embodiment according to the present invention is a combination of the first and second embodiments described above.

즉, 상술한 제1 실시예에서는 각 서브 네트워크별 제1 클라이언트가 해당 서브 네트워크 내의 동일한 컨텐츠를 요구하는 다른 클라이언트들(예컨대, 제2 클라이언트 및 제3 클라이언트)에게 멀티케스트 방식으로 데이터를 전송하였으며, 상술한 제2 실시예에서는 각 서브 네트워크별 클라이언트들이 접속된 순서에 의해 이전 접속된 클라이언트로부터 유니캐스트 방식에 의해 데이터를 수신하였다.That is, in the above-described first embodiment, the first client of each subnetwork transmits data in a multicast manner to other clients (eg, the second client and the third client) requesting the same content in the corresponding subnetwork. In the above-described second embodiment, data is received by a unicast method from a client previously connected in the order in which the clients of each subnetwork are connected.

따라서, 본 발명의 제3 실시예에 따른 방법은 각 서브 네트워크(1010, 1020)별 제1 클라이언트(1011, 1021)가 해당 서브 네트워크(1010, 1020) 내의 동일한 컨텐츠를 요구하는 다른 클라이언트들(예컨대, 제2 클라이언트(1012, 1022), 제3 클라이언트(1013, 1023) 및 제4 클라이언트(1014, 1024))에게 멀티케스트 방식으로 데이터를 전송함과 동시에, 선택적으로 각 서브 네트워크(1010, 1020)별 클라이언트들이 접속된 순서에 의해 이전 접속된 클라이언트로부터 유니캐스트 방식에 의해 데이터를 수신할 수 있다.Accordingly, the method according to the third exemplary embodiment of the present invention may allow other clients (eg, the first client 1011, 1021 for each subnetwork 1010, 1020) to request the same content in the corresponding subnetwork 1010, 1020. In addition, data is transmitted to the second client 1012, 1022, the third client 1013, 1023, and the fourth client 1014, 1024 in a multicast manner, and optionally, each sub-network 1010, 1020. Star clients may receive data in a unicast manner from previously connected clients in the order in which they are connected.

이때, 상기 각 서브 네트워크(1010, 1020) 내의 제1 클라이언트(1011, 1021)는 서버(1000)와 유니캐스트 방식에 의해 데이터를 수신하며, 상기 해당 서브 네트워크(1010, 1020) 내의 다른 클라이언트들은 상기 제1 클라이언트(1011, 1021)로부터 멀티캐스트 방식에 의해 데이터를 수신함과 동시에, 선택적으로 자신의 이전 접속된 클라이언트로부터 유니캐스트 방식에 의해 데이터를 수신할 수 있다.In this case, the first clients 1011 and 1021 in each of the sub-networks 1010 and 1020 receive data by the unicast method with the server 1000, and the other clients in the corresponding sub-networks 1010 and 1020 receive the data. While receiving data by the multicast method from the first clients 1011 and 1021, it is possible to selectively receive the data by the unicast method from its previously connected client.

한편, 이때에는 상기 멀티캐스트 방식에 의해 이미 수신된 데이터에 대해서는 다른 클라이언트들로부터 데이터를 중복하여 수신할 필요가 없다. 즉, 상기 해당 네트워크의 각 클라이언트들은 상기 멀티캐스트 방식으로 수신된 데이터와 현재 보고 있는 데이터를 이중 버퍼링하게 된다.In this case, the data already received by the multicast scheme does not need to be repeatedly received from other clients. That is, each client of the corresponding network double buffers the data received in the multicast method and the data currently being viewed.

도 11은 본 발명의 제3 실시예에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도이다.11 is a flowchart illustrating a data transmission method between a server and a client according to a third embodiment of the present invention.

상기 도 11을 참조하면, 서버로부터 소정의 컨텐츠를 수신하고자 하는 소정의 클라이언트는 상기 서버에 접속(1100 단계)한다.Referring to FIG. 11, a predetermined client that wants to receive predetermined content from a server accesses the server (step 1100).

상기 서버에 접속한 클라이언트는 상술한 본 발명의 제3 실시예에 따라 해당 네트워크 내의 다른 클라이언트로부터 컨텐츠를 수신할 수 있게 된다.Clients connected to the server can receive content from other clients in the network according to the third embodiment of the present invention described above.

따라서, 상기 서버에 접속한 클라이언트가 속한 해당 네트워크의 동일 컨텐츠 이용자를 검색(1110 단계)하여, 만약 동일 컨텐츠 이용자가 없을 경우 상기 서버와 유니캐스트 방식으로 데이터를 수신(1130 단계)하게 된다. 반면 동일 컨텐츠 이용자가 있을 경우, 바로 이전 접속한 클라이언트에 대한 정보를 수신하고, 상기 바로 이전 접속한 클라이언트에게 접속(750 단계)하여 데이터를 수신(1150 단계)하게 된다. 한편, 이때 본 발명의 제3 실시예에 따라 상기 클라이언트는 해당 서브 네트워크의 제1 클라이언트로부터 멀티캐스트 방식에 의해 데이터를 수신(1140)할 수 있다. 즉, 상기 두 가지 방식에 의해 동일한 컨텐츠를 선택적으로 수신하여 종합(1160 단계)할 수가 있으며, 상술한 바와 같이 이미 멀티캐스트 방식에 의해 수신된 데이터에 대해서는 다른 클라이언트로부터 유니캐스트 방식에 의해 데이터를 중복하여 수신할 필요가 없다.Accordingly, the same content user of the corresponding network to which the client accessing the server belongs is searched (step 1110). If there is no same content user, the server receives the data in a unicast manner with the server (step 1130). On the other hand, if there is the same content user, the client receives the information about the client just previously connected, and accesses the client immediately connected (step 750) to receive data (step 1150). Meanwhile, according to the third embodiment of the present invention, the client may receive data 1140 from the first client of the corresponding sub network by the multicast method. That is, the same content can be selectively received and synthesized by the two methods (step 1160). As described above, the data already received by the multicast method is duplicated by the unicast method from other clients. There is no need to receive.

상술한 제1 및 제2 실시예에서와 마찬가지로, 상기 서버에는 각 서브 네트워크별로 접속한 클라이언트들의 데이터 수신 상태를 모니터링하여 저장하는 것이 바람직하며, 상기 컨텐츠를 요구하는 클라이언트들에 상기 저장된 정보를 제공함으로써 서버의 부하를 줄일 수 있다.As in the first and second embodiments described above, the server preferably monitors and stores the data reception status of the clients connected to each sub-network, by providing the stored information to the clients requesting the content. You can reduce the load on the server.

한편, 상술한 동일 서브 네트워크를 동일 ISP(Internet Service Provider)로 가정할 경우 많은 사용자가 동일한 영화를 보고 있을 경우가 발생할 수 있다. 따라서, 상술한 본 발명의 실시예들에 따르면 동일 ISP 내에서의 네트워크 속도가 타 ISP와의 네트워크 속도에 비해 매우 빠른 편이므로 본 발명에 따른 효과는 더욱 크다고 할 수 있다.On the other hand, if the same sub-network is assumed to be the same Internet Service Provider (ISP), many users may watch the same movie. Therefore, according to the embodiments of the present invention described above, since the network speed in the same ISP is very fast compared to the network speed with other ISPs, the effect according to the present invention can be said to be greater.

도 12는 본 발명의 실시예에 따른 서버의 클라이언트 관리 데이터 베이스에서의 데이터 필드들을 나타낸 도면이다.12 illustrates data fields in a client management database of a server according to an embodiment of the present invention.

상기 도 12를 참조하면, 상술한 바와 같이 소정의 컨텐츠를 저장하고 있는 상기 서버에는 각 서브 네트워크(예컨대, 네트워크 A, 네트워크 B 등)별로 동일한 컨텐츠를 수신 요청한 클라이언트들의 정보를 테이블로 저장하는 것이 바람직하다.Referring to FIG. 12, as described above, in the server storing predetermined content, information of clients requesting to receive the same content for each sub-network (eg, network A, network B, etc.) is preferably stored as a table. Do.

예컨대, 네트워크 A에 사용자 a, b 및 c가 동일한 컨텐츠를 요구하였다면, 최초 접속한 사용자 a는 서버로부터 직접 데이터를 수신하고, 상기 사용자 b는 상기 사용자 a로부터 데이터를 수신하며, 상기 사용자 c는 상기 사용자 b로부터 데이터를 수신하도록 할 수 있다. 또한, 네트워크 B에 사용자 1, 2, 3 및 4가 동일한 컨텐츠를 요구하였다면, 최초 접속한 사용자 2는 서버로부터 직접 데이터를 수신하고, 사용자 1은 상기 사용자 2로부터, 사용자 4는 상기 사용자 1로부터 그리고 사용자 3은 상기 사용자 4로부터 동일한 컨텐츠 데이터를 수신하도록 할 수 있다. 이렇게 함으로써 서버의 부하를 줄일 수가 있게 된다.For example, if users a, b and c have requested the same content from network A, the first accessing user a receives data directly from the server, the user b receives data from the user a, and the user c receives the Receive data from user b. In addition, if users 1, 2, 3, and 4 have requested the same content from network B, user 2 who first connected receives data directly from the server, user 1 is from user 2, user 4 is from user 1 and User 3 may be configured to receive the same content data from the user 4. This can reduce the load on the server.

한편, 본 발명의 실시예에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도내에서 여러가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허 청구의 범위뿐만 아니라 이 특허 청구의 범위와 균등한 것들에 의해 정해져야 한다.On the other hand, in the embodiment of the present invention has been described with respect to specific embodiments, various modifications are possible without departing from the scope of the invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the appended claims, but also by those equivalent to the claims.

본 발명에 따르면, 각 클라이언트들에 대한 컨텐츠 요구를 분산 처리 함으로써 네트워크 내의 복수의 클라이언트들이 동일 컨텐츠를 서버로부터 수신받고자 할 경우 발생할 수 있는 서버의 부하를 줄일 수 있다는 장점이 있다. 또한, 각각의 클라이언트들이 준서버의 기능을 가짐으로써 전체 네트워크의 트래픽을 줄일 수 있다는 장점이 있다.According to the present invention, by distributing the content request for each client, there is an advantage in that the load on the server that can occur when a plurality of clients in the network want to receive the same content from the server can be reduced. In addition, each client has the advantage of a quasi-server to reduce the traffic of the entire network.

도 1은 본 발명에 따른 서버와 클라이언트 간의 데이터 전송 시스템의 개념을 나타낸 도면.1 is a diagram illustrating a concept of a data transmission system between a server and a client according to the present invention.

도 2는 본 발명에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도.2 is a flowchart illustrating a data transmission method between a server and a client according to the present invention.

도 3은 본 발명의 제1 실시예에 따른 네트워크 시스템 구성을 나타낸 도면.3 is a diagram showing a network system configuration according to a first embodiment of the present invention;

도 4는 본 발명의 제1 실시예에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도.4 is a flowchart illustrating a data transmission method between a server and a client according to a first embodiment of the present invention.

도 5는 본 발명의 제1 실시예에 따른 각 네트워크 엘리먼트들 간의 신호 처리 절차를 나타낸 흐름도.5 is a flowchart illustrating a signal processing procedure between respective network elements according to the first embodiment of the present invention.

도 6은 본 발명의 제2 실시예에 따른 네트워크 시스템 구성을 나타낸 도면.6 is a diagram showing a network system configuration according to a second embodiment of the present invention;

도 7은 본 발명의 제2 실시예에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도.7 is a flowchart illustrating a data transmission method between a server and a client according to a second embodiment of the present invention.

도 8은 본 발명의 제2 실시예에 따른 이전 사용자 접속 단절이 발생할 경우의 데이터 전송 방법을 나타낸 흐름도.8 is a flowchart illustrating a data transmission method when a previous user disconnection occurs according to a second embodiment of the present invention.

도 9는 본 발명의 제2 실시예에 따른 이전 사용자의 수신 중단이 발생할 경우의 데이터 전송 방법을 나타낸 흐름도.9 is a flowchart illustrating a data transmission method when a reception interruption of a previous user occurs according to a second embodiment of the present invention.

도 10은 본 발명의 제3 실시예에 따른 네트워크 시스템 구성을 나타낸 도면.10 is a diagram showing a network system configuration according to a third embodiment of the present invention.

도 11은 본 발명의 제3 실시예에 따른 서버와 클라이언트 간의 데이터 전송 방법을 나타낸 흐름도.11 is a flowchart illustrating a data transmission method between a server and a client according to a third embodiment of the present invention.

도 12는 본 발명의 실시예에 따른 서버의 클라이언트 관리 데이터 베이스에서의 데이터 필드들을 나타낸 도면.12 illustrates data fields in a client management database of a server according to an embodiment of the present invention.

<도면의 주요 부분에 대한 부호 설명><Description of the symbols for the main parts of the drawings>

100, 300, 600, 1000 : 서버100, 300, 600, 1000: Server

110, 311, 321, 611, 621, 1011, 1021 : 제1 클라이언트110, 311, 321, 611, 621, 1011, 1021: first client

120, 312, 322, 612, 622, 1012, 1022 : 제2 클라이언트120, 312, 322, 612, 622, 1012, 1022: second client

310, 610, 1010 : 네트워크 A 320, 620, 1020 : 네트워크 B310, 610, 1010: network A 320, 620, 1020: network B

313, 323, 613, 623, 1013, 1023 : 제3 클라이언트313, 323, 613, 623, 1013, 1023: third client

1014, 1024 : 제4 클라이언트1014, 1024: fourth client

Claims (5)

소정의 컨텐츠를 저장하고 있는 서버와 동일 네트워크에서 상기 컨텐츠를 수신하고자 하는 복수의 클라이언트들 간에 데이터를 전송하는 서버/클라이언트 시스템에 있어서,In the server / client system for transmitting data between a plurality of clients that want to receive the content in the same network as the server that stores the predetermined content, 각 서브 네트워크 별로 상기 서버로부터 상기 컨텐츠를 수신하는 제1 클라이언트; 및A first client receiving the content from the server for each sub-network; And 상기 서버와 접속을 유지하며, 상기 제1 클라이언트와 동일한 서브 네트워크 내에서 상기 제1 클라이언트가 서버로부터 수신하는 상기 컨텐츠와 동일한 컨텐츠를 상기 제1 클라이언트로부터 수신하는 제2 클라이언트를 포함함을 특징으로 하는 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 시스템.And a second client maintaining a connection with the server and receiving the same content from the first client as the content received from the server by the first client in the same sub-network as the first client. Data transfer system between servers and clients in an Internet network. 제1항에 있어서,The method of claim 1, 상기 서버와 접속을 유지하며, 상기 제1 및 제2 클라이언트와 동일한 서브 네트워크 내에서 상기 제2 클라이언트가 서버로부터 수신하는 상기 컨텐츠와 동일한 컨텐츠를 상기 제2 클라이언트로부터 수신하는 제3 클라이언트를 포함함을 특징으로 하는 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 시스템.And a third client maintaining a connection with the server and receiving content from the second client that is identical to the content received by the second client from the server within the same sub-network as the first and second clients. A data transmission system between servers and clients in an Internet network. 제1항 또는 제2항에 있어서,The method according to claim 1 or 2, 상기 클라이언트는 유니캐스트 또는 멀티캐스트 방법으로 서버 및 타 클라이언트에 상기 컨텐츠를 송수신하는 것을 특징으로 하는 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 시스템.And the client transmits and receives the contents to and from the server and other clients in a unicast or multicast method. 소정의 컨텐츠를 저장하고 있는 서버와 동일 네트워크에서 상기 컨텐츠를 수신하고자 하는 복수의 클라이언트들 간에 데이터를 전송하는 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 방법에 있어서,In the data transmission method between the server and the client in the Internet network for transmitting data between a plurality of clients that want to receive the content in the same network as the server that stores the predetermined content, 소정의 서브 네트워크 내에 속한 소정의 클라이언트가 상기 서버에 접속하여 소정의 상기 컨텐츠를 요청하는 과정;Requesting the predetermined content by accessing the server by a predetermined client belonging to a predetermined subnetwork; 상기 서버로부터 상기 해당 서브 네트워크 내에서 상기 요청한 컨텐츠와 동일한 컨텐츠를 수신하는 상기 클라이언트가 아닌 다른 클라이언트의 존재 여부를 검색하는 과정; 및Searching whether there is a client other than the client that receives the same content as the requested content in the corresponding subnetwork from the server; And 상기 검색 결과, 상기 해당 서브 네트워크 내에 동일 컨텐츠를 수신하는 다른 클라이언트가 존재할 경우 상기 다른 클라이언트로부터 상기 요청한 컨텐츠를 수신하는 과정을 포함함을 특징으로 하는 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 방법.And receiving the requested content from the other client when there is another client receiving the same content in the corresponding subnetwork as a result of the search. 제4항에 있어서,The method of claim 4, wherein 상기 동일 컨텐츠를 수신하는 다른 클라이언트로부터 상기 요청한 컨텐츠의 수신이 불가능한 경우, 상기 서버로부터 상기 해당 서브 네트워크 내에서 동일한 컨텐츠를 수신하는 또다른 클라이언트의 존재 여부를 검색하는 과정; 및If it is impossible to receive the requested content from another client receiving the same content, searching for the existence of another client receiving the same content from the server in the corresponding subnetwork; And 상기 검색 결과, 상기 해당 서브 네트워크 내에 동일 컨텐츠를 수신하는 또 다른 클라이언트가 존재하는 경우 상기 또 다른 클라이언트로부터 상기 요청한 컨텐츠를 수신하는 과정;을 더 포함하는 것을 특징으로 하는 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터 전송 방법.And receiving the requested content from the another client when there is another client receiving the same content in the corresponding sub network as a result of the search. Data transfer method.
KR1020040028754A 2004-04-26 2004-04-26 System And Method For Transmitting The Data From Server To Clients In The Internet Network KR100616250B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040028754A KR100616250B1 (en) 2004-04-26 2004-04-26 System And Method For Transmitting The Data From Server To Clients In The Internet Network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040028754A KR100616250B1 (en) 2004-04-26 2004-04-26 System And Method For Transmitting The Data From Server To Clients In The Internet Network

Publications (2)

Publication Number Publication Date
KR20050103558A true KR20050103558A (en) 2005-11-01
KR100616250B1 KR100616250B1 (en) 2006-08-28

Family

ID=37281391

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040028754A KR100616250B1 (en) 2004-04-26 2004-04-26 System And Method For Transmitting The Data From Server To Clients In The Internet Network

Country Status (1)

Country Link
KR (1) KR100616250B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100754213B1 (en) * 2006-02-23 2007-09-03 삼성전자주식회사 Method and Apparatus for transmitting data on PLC network by multicasting data
KR100773778B1 (en) * 2006-03-10 2007-11-12 (주)게임어스 Method for controlling server with multicast transmitting and System thereof
WO2008062989A1 (en) * 2006-11-20 2008-05-29 Alticast Co., Ltd. Operating method of contents on demand system
KR101235814B1 (en) * 2005-11-07 2013-02-21 톰슨 라이센싱 Reception of audio-visual content addressed to several devices

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010073511A (en) * 2000-01-17 2001-08-01 황준 Internet Broadcasting System/Method Using Hierarchical Transmission
KR20000063991A (en) * 2000-08-14 2000-11-06 김종인 A method for creating tree-shaped stream data rebroadcasting network on Internet
KR20020023596A (en) * 2000-09-23 2002-03-29 이중철 최인묵 Internet broadcasting system and method for transfering data in internet broadcasting system
KR20010000483A (en) * 2000-10-02 2001-01-05 김종인 distributer establishment method in network internet broadcasting system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101235814B1 (en) * 2005-11-07 2013-02-21 톰슨 라이센싱 Reception of audio-visual content addressed to several devices
US8601132B2 (en) 2005-11-07 2013-12-03 Thomson Licensing Reception of audio-visual content addressed to several devices
KR100754213B1 (en) * 2006-02-23 2007-09-03 삼성전자주식회사 Method and Apparatus for transmitting data on PLC network by multicasting data
KR100773778B1 (en) * 2006-03-10 2007-11-12 (주)게임어스 Method for controlling server with multicast transmitting and System thereof
WO2008062989A1 (en) * 2006-11-20 2008-05-29 Alticast Co., Ltd. Operating method of contents on demand system
US8087056B2 (en) 2006-11-20 2011-12-27 Alticast Corporation Operating method of contents on demand system

Also Published As

Publication number Publication date
KR100616250B1 (en) 2006-08-28

Similar Documents

Publication Publication Date Title
US7013322B2 (en) System and method for rewriting a media resource request and/or response between origin server and client
US8386630B1 (en) Video-aware P2P streaming and download with support for real-time content alteration
US20110246608A1 (en) System, method and device for delivering streaming media
JP2003521204A (en) System and method for determining an optimal server in a distributed network providing content streams
US20020040404A1 (en) System and method for performing broadcast-enabled disk drive replication in a distributed data delivery network
KR102110421B1 (en) System and method for delivering an audio-visual content to a client device
US8542682B2 (en) Systems and methods for media distribution
US20020042817A1 (en) System and method for mirroring and caching compressed data in a content distribution system
US20010029525A1 (en) Method of utilizing a single uniform resource locator for resources with multiple formats
JP5738865B2 (en) Distribution of MPEG-2TS multiplexed multimedia stream by selecting elementary packets of MPEG-2TS multiplexed multimedia stream
Detti et al. Mobile peer-to-peer video streaming over information-centric networks
KR20030056701A (en) Apparatus and method for providing multimedia streaming service by using point-to-point connection
EP1806870B1 (en) Method for providing data and data transmission system
US20110082943A1 (en) P2p network system and data transmitting and receiving method thereof
US8788706B2 (en) Method and system for managing data transmission between devices behind network address translators (NATs)
KR100616250B1 (en) System And Method For Transmitting The Data From Server To Clients In The Internet Network
US7080129B2 (en) Site selection based on Internet Protocol address
Ramakrishnan et al. Adaptive video streaming over ccn with network coding for seamless mobility
US20090193476A1 (en) Method for live transmission of content with a view to defered recovery in P2P mode after division, and control device and associated equipment
Ramadha et al. Design and implementation named data networking-based video streaming system
Zimmerman et al. Retransmission-based error control in a many-to-many client-server environment
JP2008228290A (en) Client, system, and method for compensating data packet loss
KR20020023596A (en) Internet broadcasting system and method for transfering data in internet broadcasting system
Gazdar et al. Toward a full peer to peer MPEG-DASH compliant streaming system
JP2009177811A (en) Method for live transmission of content intended to be recovered later in p2p mode after being split, control device, and associated facility

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
G170 Publication of correction
FPAY Annual fee payment

Payment date: 20120720

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130729

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140731

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151103

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160802

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170621

Year of fee payment: 12