KR20020088149A - 클라이언트 그룹화를 이용한 인터넷 상에서의 대용량데이타 전송 및 중계 방법 - Google Patents

클라이언트 그룹화를 이용한 인터넷 상에서의 대용량데이타 전송 및 중계 방법 Download PDF

Info

Publication number
KR20020088149A
KR20020088149A KR1020010027089A KR20010027089A KR20020088149A KR 20020088149 A KR20020088149 A KR 20020088149A KR 1020010027089 A KR1020010027089 A KR 1020010027089A KR 20010027089 A KR20010027089 A KR 20010027089A KR 20020088149 A KR20020088149 A KR 20020088149A
Authority
KR
South Korea
Prior art keywords
client
data
clients
server
same
Prior art date
Application number
KR1020010027089A
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 KR1020010027089A priority Critical patent/KR20020088149A/ko
Publication of KR20020088149A publication Critical patent/KR20020088149A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • H04L47/782Hierarchical allocation of resources, e.g. involving a hierarchy of local and centralised entities
    • 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/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 인터넷상에서 대용량 데이터를 송/수신하는 서버(Server)/클라이언트(Client) 간의 데이터 전송 방법에 관한 것으로서, 기존의 파일 전송 방법인 에프티피(FTP,File Transfer Protocol)를 이용할 경우 서버에 데이터 흐름이 집중되어 네트웍 성능이 저하되는 문제를 해결하는 방법에 대한 것이다. 본 발명은 서버에 동일한 데이터를 요청하는 클라이언트를 그룹화 방법을 이용하여 데이터 전송이 클라이언트간에 연쇄적으로 이루어지는 방법이다.

Description

클라이언트 그룹화를 이용한 인터넷 상에서의 대용량 데이타 전송 및 중계 방법 {Method of transfer and relay of large size data over Internet, which employs client grouping process}
본 발명은 인터넷상에서 대용량 데이터를 송/수신하는 서버(Server)/클라이언트(Client) 간의 데이터 전송 방법에 관한 것으로서, 기존의 파일 전송 방법인 에프티피(FTP,File Transfer Protocol)를 이용할 경우 서버에 데이터 흐름이 집중되어 네트웍 성능이 저하되는 문제를 해결하는 방법에 대한 것이다. 본 발명은 서버에 동일한 데이터를 요청하는 클라이언트를 그룹화 방법을 이용하여 데이터 전송이 클라이언트간에 연쇄적으로 이루어지는 방법이다.
티시피/아이피(TCP/IP) 프로토콜 기반의 인터넷상에서 기존의 파일 송수신은 아이티에프(IETF,Internet Engineering Task Force)의 RFC-959에서 규정한 FTP를 이용한다. FTP는 TCP/IP 프로토콜의 티시피(TCP)계층을 이용한 유니캐스트 (Unicast)방식으로 데이터를 주고 받게 된다. Unicast방식의 데이터 송수신은 서버와 클라이언트가 일대일로 세션(session)을 맺는 방식으로서 파일 전송을 요청하는 클라이언트의 수가 증가하면 정상적인 서비스를 위해서는, FTP 서버가 위치하는네트워크 단이 확보해야 하는 네트워크 대역폭(Bandwidth)이 이에 비례하여 증가해야 한다.
만약 다수의 클라이언트로부터의 FTP 서버로의 과도한 파일 전송 요청이 발생하여 FTP 서버의 정상적 수용능력(FTP서버단의 네트워크 대역폭 및 FTP 서버 시스템의 데이터 처리능력)을 초과하게 되면, FTP 서버의 시스템 정지나 주변 네트워크의 성능 저하(전송 속도 저하, 병목 현상 발생 등)를 가져오게 된다.
현재 인터넷상에서의 교류/교환되고 있는 데이터 형태는 멀티미디어 데이터(영상,음악,애니메이션등) 기반의 대용량 데이터로 변화되고 있고 이러한 데이터의 전송을 FTP 서비스나 스트리밍(streaming) 서비스가 담당하고 있는데, 이렇게 늘어나는 데이타 전송량에 비해 데이터의 전송기반인 네트워크 대역폭 확대는 이에 못 미치고 있는 실정이다.
이와 같은 환경에서 FTP 기반의 파일 전송은 다수의 사용자로부터 과도한 파일 전송 요청시 프로토콜의 특성상 전체 네트워크중 특정 지점으로의 데이터 트래픽의 집중화를 초래하고 이로인한 네트워크상의 병목현상 발생을 가중시켜 전체 네트워크 성능 저하를 가져 오게 된다.
본 발명은 기존의 FTP 방식의 데이터 전송의 문제점인 특정 네트워크단으로 데이터 트래픽이 집중되는 현상을 해결하기 위하여, 전체 인터넷으로 데이터 트래픽을 분산 수용하는 클라이언트/서버간 데이터 송수신 방법을 제공함에 그 목적이 있다.
도 1은 본 발명에서의 데이타 전송 및 중계시 데이타의 전송 경로를 도시한 블록도
도 2은 서버와 클라이언트간의 송수신 메세지와 각 메세지 마다의 해당 루틴(Routine)을 나타내는 블록도
도 3는 클라이언트의 데이타 전송 요청시 서버의 동작에 대한 블록도
도 4는 클라이언트가 상위 클라이언트로의 접속 불능을 서버에 알릴때의 서버의 동작에 대한 블록도
도 5은 클라이언트가 상위 클라이언트로부터의 데이타 수신 도중 상위 클라이언트와의 연결 끊김을 서버에 알릴때의 서버의 동작에 대한 블록도
도 6은 클라이언트가 새로운 상위 클라이언트로의 연결 성공을 서버에 알릴때의 서버의 동작에 대한 블록도
도 7은 클라이언트가 서버에 데이타 수신을 완료 했음을 알릴때의 서버의 동작에 대한 블록도
도 8은 서버의 동일 데이타 수신 그룹내 최상위 클라이언트로의 데이타 전송에 대한 블록도
도 9는 클라이언트의 데이타 수신 블록도
도 10은 클라이언트의 하위 클라이언트로의 데이타 중계 블록도
도 11은 동일 데이타 요청 그룹 내의 각 클라이언트 단에서의 데이터 흐름도
본 발명의 데이터 송수신 방법에 있어서, 서버는 클라이언트 정보의 생성 및 동적 관리와 데이타 전송의 기능을 담당하게 되고, 클라이언트는 데이타 수신 및 중계 기능을 담당한다. 서버는 클라이언트의 데이터 전송 요청시에 클라이언트를 공인 IP 사용 클라이언트인 경우와 사설 IP 사용 클라이언트인 경우를 달리 처리한다.
공인 IP 클라이언트는 동일한 데이타를 요청하는 클라이언트간의 연쇄적 전송을 위해 다시 동일 데이타 요청 클라이언트별로 그룹화를 수행한다. 동일 데이타 요청 그룹은 동일 네트워크 넘버(라우터에서 동일 네트워크 클라이언트인지를 판단하는 근거가 되는 파라미터를 의미하며, 이하에서는 동일 네트워크 넘버를 가진 클라이언트는 물리적으로 같은 네트워크에 존재하게 되며 물리적으로 같은 네트워크를 서브넷이라 약칭함.)를 가진 클라이언트가 둘 이상 존재하게 되면 동일 네트워크 넘버별 클라이언트로 다시 소 그룹화한다(동일 서브넷별 소 그룹화).
이는 동일 데이터 요청 그룹을 동일 서브넷별로 소 그룹화 함으로써 데이터 전송 및 중계의 효율을 높이기 위한 것으로서, 동일 데이타 요청 그룹내 각각의 동일 서브넷의 최상위 클라이언트가 해당 동일 서브넷의 차하위 클라이언트와 동일 데이타 요청 그룹내 타 서브넷 클라이언트에게 각기 데이타를 중계하기 위한 것이다.
동일 데이터 요청 그룹내 각각의 동일 서브넷별 소그룹은 미리 구성된 그룹간의 위치 설정룰(네트워크 상에서 데이타 전송 지연을 최소화 하기 위해) 또는 데이타 전송 요청의 시간순에 따라서 동일 데이타 요청 그룹내에서의 상하위 위치 순위가 결정된다. 이렇게 구성된 동일 데이타 요청 그룹내 각 클라이언트의 구성 정보 트리를 기반으로 서버는 데이터 전송을 요청하는 클라이언트에게 데이타 중계를 담당하는 직상위 클라이언트 정보를 전송하고 해당 클라이언트는 서버로부터 전달 받은 정보를 이용하여 동일 데이터 요청 그룹내 직상위 클라이언트에게 데이타 중계를 요청케 된다.
이와 같은 동일 데이터 요청 그룹내 클라이언트간의 상호 데이터 중계 및 수신을 이용하여 서버로부터 전송된 데이타는 연쇄적으로 동일 데이타 요청 그룹내 모든 클라이언트에게 전송된다. 공인 IP 클라이언트에 대한 데이타 전송시 동일 데이타 요청 그룹내의 데이타 전송 속도는 그룹내 클라이언트 상호간의 데이타 전송및 수신 속도에 영향을 받게 된다. 이는 동일 데이타 요청 그룹내 각 클라이언트 사이의 데이타 중계시 필연적으로 발생하는 네트워크상에서의 데이타 전송 지연(Latency)와 각 클라이언트단에서의 데이타 저장및 중계 과정에서의 각 클라이언트 시스템에서의 소요되는 프로세싱 시간에 의한 것이며, 동일 데이타 요청 그룹내에 클라이언트수가 증가하면 동일 데이타 요청 그룹의 전체적인 데이타 전송 속도가 점차로 지연되게 된다.
따라서 동일 데이터 요청 그룹내 최하단에 위치하는 클라이언트가 서버에 데이타 전송 속도를 주기적으로 알리게 함으로써 일정 수준이하의 전송 속도를 주기적으로 보고하게 되면 더 이상의 새로운 클라이언트를 그룹내 추가 하지 않고 또다른 새로운 동일 데이타 요청 그룹을 생성한다.
사설 IP 클라이언트의 경우, 사설 IP의 제한적 기능으로 인하여, 사설 IP 클라이언트는 동일 서브넷상의 클라이언트로부터의 데이타 중계 요청만을 처리할 수 있기 때문에 사설 IP 클라이언트로부터의 데이타 전송 요청시 서버는 공인 IP 클라이언트와 달리, 동일 서브넷 클라이언트만으로 동일 데이타 요청 그룹을 생성하게 되며, 각각의 동일 데이타 요청 그룹마다 데이타를 전송하게 된다.
동일 데이타 요청 그룹은 동일 서브넷 클라이언트로만 구성되므로 동일 데이터 요청 그룹내 클라이언트 정보는 데이터 전송 요청 순서에 따라 순차적으로 구성되게 된다. 만약 데이터 전송을 요청하는 클라이언트과 동일 서브넷의 동일 데이타 요청 그룹이 존재하지 않으면 서버는 새롭게 데이타 요청 그룹을 생성하게 되고 해당 클라이언트를 새로운 데이타 요청 그룹의 최상위 클라이언트로 두게 된다.
본 발명에서 데이타의 전송은 동일 데이타 요청 그룹 내에서 각 클라이언트간에 실시간으로 이루어진다. 동일 데이터 요청 그룹내 모든 클라이언트는 차상위 클라이언트로부터 데이타를 수신함과 동시에 수신 데이타를 차하위 클라이언트에게 중계하게 되는데, 상위 클라이언트가 직하위 사용자로의 데이타 중계시 중계 요청을 받기 이전에 직상위 클라이언트로부터 수신한 데이타를 중계하는 것이 아니라 현재 전달받고 있는 부분만을 직하위 클라이언트에게 전달한다.
데이타 수신을 모두 마친 최상위 클라이언트는 그룹에서 삭제 되고, 삭제된 최상위 클라이언트의 직하위 클라이언트가 그룹내 최상위 클라이언트로 대체된다. 새로운 최상위 클라이언트는 요청 데이터중 미수신 부분의 전송을 서버에 요청하게 된다. 이러한 과정의 반복을 통하여 모든 클라이언트는 결국에는 동일 데이타 요청 그룹내의 최상위 클라이언트가 되게 되고 서버로부터 미수신 데이타를 직접 전송 받는다.
서버의 클라이언트의 정보 관리에 있어서 가장 중요한 기능은 예외처리 기능이다. 동일 데이타 요청 그룹내 클라이언트 중 어느 하나의 클라이언트라도 정상적인 데이타 중계 기능을 수행하지 못하게 되면 전체 그룹내 데이타 전송에 커다란 영향을 미친다. 본 발명에서는 이와같은 예외 상황에 대하여 서버와 각각의 클라이언트가 스스로 주기적인 감시를 수행하게 함으로써, 전체 그룹내의 데이타 전송의 흐름을 원활히 유지 한다.
예외적 상황의 원인에는 클라이언트의 비 정상적인 동작, 클라이언트의 데이타 전송 완료 전 임의 종료, 특정 클라이언트의 데이타 전송 지연, 그룹 내 하위 클라이언트의 상위 클라이언트로의 데이타 중계 요청 불가(클라이언트의 비 정상적인 동작, 클라이언트의 데이타 전송 완료 전 임의 종료등의 원인에 의한)와 같은 상황 등이 있다. 이러한 상황이 발생하게 되면 해당 동일 데이타 요청 그룹내의 전체 클라이언트중 문제 발생 클라이언트 이후의 클라이언트부터는 데이타 전송이 불가능하게 된다.
본 발명에서는 이를 해결키 위해서 다음과 같은 방법을 사용한다. 모든 클라이언트는 자신에게 데이타를 중계하는 동일 데이타 요청 그룹내의 상위 클라이언트의 상태를 주기적으로 감시하고 상기의 원인에 의한 예외적 상황이 발생할 경우 이를 서버에 보고(Report)하며 더불어 상위 클라이언트로부터의 전송이 중단된 데이터의 위치를 서버에 보고하게 된다.
클라이언트로부터 예외 상황 발생을 보고받은 서버는 즉각적으로 해당 동일 데이타 요청 그룹을 검색하여 최상위 클라이언트에게로 보내는 데이타 전송을 일시 중지하고 예외 발생 클라이언트의 정보를 삭제한 후 동일 데이타 요청 그룹내의 클라이언트 정보를 재구성 한다.
이때 서버가 동일 데이타 요청 그룹내의 최상위 사용자에게로의 데이타 전송을 일시 중지 하는 이유는 동일 데이타 요청 그룹내의 모든 클라이언트간의 데이타 전송의 동기화를 위함으로 서버는 예외상황을 보고한 클라이언트가 보내온 데이타 전송 중단 위치로 해당 동일 데이타 요청 그룹으로의 데이타 전송 시작점을 옮기게 된다.
서버는 동일 데이타 요청 그룹내의 클라이언트 정보를 재구성한 후 예외상황을 보고한 클라이언트에게 새롭게 데이타를 중계할 상위 클라이언트 정보를 알리게 되고 이를 전달받은 클라이언트는 새로운 상위 클라이언트에게 데이타 중계를 요청하게 된다. 새로운 상위 클라이언트로부터의 데이타 중계 허가 메세지를 전달받게 되면 클라이언트(예외상황을 보고한 클라이언트)는 이를 서버에 알리게 되고 서버는 일시 중단 되었던 해당 동일 데이타 요청 그룹에 대한 데이타 전송을 상기에서 언급한 변경된 데이타 전송 시작점부터 재개한다.
이러한 예외 처리 과정을 통하여 동일 데이타 요청 그룹내 최상위 클라이언트로부터 최하위 클라이언트까지의 데이타 전달의 흐름을 원활히 유지하고 동일 데이터 요청 그룹내의 전체 클라이언트간의 전송 데이터의 동기를 맞추게 된다.
도 1은 인터넷 상에서의 서버(1)/클라이언트(2-2,3-2,4-2,5-2,6-2, 도 1상에서는 사용자로 표시)간의 상호 연결및 클라이언트 그룹(2,3,4,5,6)을 도시한다. 서버(1)와 클라이언트(2-2,3-2,4-2,5-2,6-2)는 인터넷(7)상에 상호 연결되어 있고 데이타 전송을 요청하는 클라이언트 그룹(2,3,4,5,6)은 크게 공인 IP 사용 클라이언트 그룹(2,5)와 사설 IP 사용 클라이언트 그룹(3,4,6)으로 나누어 진다.
공인 IP 사용 클라이언트 그룹(2,5)은 클라이언트(2-2,5-2)가 요청하는 데이타(파일 A, 파일 B)에 따라 다시 동일 데이타 요청 클라이언트 그룹(2,5)으로 각기 나뉘고 동일 데이타 요청 클라이언트 그룹(2,5)은 서로 다른 네트워크 넘버에 따른 서브넷 클라이언트 그룹(2-1, 5-1)으로 나뉘게 된다.
서버(1)는 공인 IP 클라이언트(2-2,5-2)로부터의 요청 데이타(파일 A, 파일 B)를 공인 IP 클라이언트 그룹(2,5)내의 최 상위 클라이언트(8,11)에게 각각 전송하게 되고 각각의 데이타(파일 A, 파일 B)는 동일 데이타 요청 그룹(2,5)내의 클라이언트(2-2, 5-2)간의 상위 클라이언트로부터의 하위 클라이언트로의 데이타 중계를 이용하여 전체 그룹(2,5)내 모든 클라이언트(2-2, 5-2)로 전송되게 된다.
이와 달리, 사설 IP 클라이언트 그룹(3,4,6)은 타 서브넷 클라이언트로부터의 접속 요청을 처리 할 수 없는 사설 IP 사용상의 제약 때문에 동일 서브넷상의 클라이언트(3-2,4-2,6-2)만으로 이루어진 동일 데이타 요청 그룹(3,4,6)을 만들어야 한다. 서버(1)는 사설 IP 클라이언트(3-2,4-2,6-2)로부터의 요청 데이타 (파일 A, 파일 B)를 동일 서브넷상의 동일 데이타 요청 그룹(3,4,6)의 최 상위 클라이언트(9,10,12)에게 각각 전송하게 되고 각각의 데이타(파일 A, 파일 B)는 동일 서브넷상의 동일 데이타 요청 그룹(3,4,6)내 클라이언트(3-2,4-2,6-2)간의 상위 클라이언트로부터의 하위 클라이언트로의 데이타 중계를 이용하여 전체 그룹(3,4,6)내 모든 클라이언트(3-2,4-2,6-2)로 전송되게 된다.
도 2는 서버가 데이타 전송을 요청하는 클라이언트와 데이터 요청에서부터 데이타 수신을 마치기까지 주고 받는 메세지와 그에 따르는 각각의 처리 과정에 관한 블록도이다. 데이타 전송을 요청하는 클라이언트는 맨 처음 서버에 "데이타 요청" 메세지(20)를 전송케 되고 서버는 해당 루틴(21)에 따라 클라이언트를 공인 IP 사용자인지 사설 IP 사용자인지 구별한 후 해당하는 동일 데이타 요청 그룹내에 포함시키고 해당 클라이언트가 데이타 중계를 요청해야 할 동일 데이타 요청 그룹내 직상위 클라이언트에 대한 정보를 "응답"(22)으로 전송한다.
클라이언트가 정상적으로 데이타 중계 요청을 직상위 클라이언트에 전달하게 되면 직상위 클라이언트로부터 별도의 응답후에 직상위 클라이언트로부터 해당 클라이언트로의 데이타 중계가 시작된다. 클라이언트의 데이터 수신 및 중계는 도 9와 도 10에서 다시 설명한다. 만약 직상위 클라이언트의 비 정상 동작, 해당 클라이언트로부터의 직상위 클라이언트로의 중계 요청 이전에 직상위 클라이언트의 데이타 수신 완료(직상위 클라이언트가 동일 데이타 요청 그룹내 최상위 사용자로서 서버로부터 미 수신 데이타를 직접 수신한 후 데이타 수신을 마칠때 발생한다)등의 이유로 직상위 클라이언트에 대한 데이타 중계 요청이 실패 하였을 경우 해당 클라이언트는 서버에 "연결 불가" 메세지(23)를 전송하여 이를 알리게 되고 서버는 해당 루틴(24)에 따라 동일 데이타 요청 그룹 정보에서 해당 클라이언트의 직상위 클라이언트 정보를 제거하고 동일 데이타 요청 그룹 정보를 새롭게 갱신한 후 새로운직상위 클라이언트 정보를 "응답"(25)으로 해당 클라이언트에게 전달한다.
해당 클라이언트는 새로운 직상위 클라이언트에게 다시 데이타 중계 요청을 하게 되고 상기의 과정을 거쳐 직상위 클라이언트로부터의 데이터 중계가 시작된다. 또한 직상위 클라이언트의 해당 클라이언트로의 데이타 중계 도중 직상위 클라이언트의 데이타 수신완료, 직상위 클라이언트의 비 정상적 종료, 네트워크상의 데이타 트래픽 폭주등으로 인하여 직상위 클라이언트와 해당 클라이언트와의 네트워크 연결이 끊어지게 되면 해당 클라이언트는 "접속 끊김" 메세지(26)를 서버에 전송하게 되고 "접속 끊김" 메세지(26)를 전달 받은 서버는 우선 해당 클라이언트가 속한 동일 데이타 요청 그룹을 검색한 후 해당 동일 데이터 요청 그룹으로의 데이타 전송을 일시 중단한다.
이는 동일 데이타 요청 그룹내의 모든 클라이언트간의 전송 데이타의 동기를 맞추기 위함으로 해당 클라이언트와 직상위 클라이언트와의 접속 끊김 상태가 발생하면, 동일 데이터 요청 그룹내 해당 클라이언트의 직상위 클라이언트 위에 존재하는 모든 상위 클라이언트들간에는 계속적으로 데이타 수신 및 중계가 행해지는데 반하여 해당 클라이언트의 아래의 모든 하위 클라이언트간에는 데이타 수신및 중계가 중단되기 때문이다.
해당 동일 데이타 요청 그룹에 대한 데이타 전송을 일시 중단한 서버는 데이타 전송 재개시의 데이타 전송 시작 위치를 해당 클라이언트가 알린 해당 클라이언트의 데이타의 수신 중단 위치로 변경하고 해당 루틴(27)에 따라 동일 데이타 요청 그룹내 정보에서 해당 클라이언트의 직상위 클라이언트 정보를 제거하고 동일 데이타 요청 그룹 정보를 새롭게 갱신한 후 새로운 직상위 클라이언트 정보를 "응답"(28)으로 해당 클라이언트에게 전달하게 된다.
해당 클라이언트는 새로운 직상위 클라이언트에게 데이타 중계 요청을 하게 되는데 새로운 직상위 클라이언트와 해당 클라이언트가 정상적으로 연결되면 해당 클라이언트는 서버에 "재 접속" 메세지(29)를 전송하게 되고 서버는 해당 루틴(30)에 따라 일시 중단했던 데이타 전송을 상기에서 언급한 것처럼 새롭게 이동된 데이터 전송 위치에서부터 다시 재개한다.
동일 데이타 요청 그룹내 클라이언트가 데이타 수신을 완료하려면 상기의 내용에서 언급한 바와 같이 해당 클라이언트가 동일 데이타 요청 그룹내의 최상위 클라이언트가 되어야 하고(동일 데이터 요청 그룹내 모든 클라이언트간의 데이터 전송은 실시간으로 이루어지기 때문에 요청 데이터 중에서 직상위 클라이언트로부터 전달 받지 못하는 부분이 발생하게 되고, 이 부분을 동일 데이터 요청 그룹내 최상위 클라이언트가 될 때 서버로부터 직접 전달받게 된다.) 데이타 수신을 완료한 클라이언트(동일 데이터 요청 그룹내 최상위 클라이언트)는 서버에 "수신 완료" 메세지(31)를 전송하게 된다.
서버는 해당 루틴(32)에 따라 해당 클라이언트의 정보를 동일 데이타 요청 그룹내에서 제거 하고 해당 클라이언트의 직하위 클라이언트를 동일 데이타 요청 그룹내 최상위 클라이언트로 대체한 후 모든 과정이 정상적으로 처리 됐음을 "응답"(33)으로 해당 클라이언트에게 알리게 된다.
도 3은 서버에서의 클라이언트의 "데이타 요청" 메세지(40) 처리 과정에 관한 블록도이다. 클라이언트는 전송 받고자 하는 데이타에 대한 전송 요청 메세지(40)를 서버에 전송하게 된다. 서버는 클라이언트를 공인 IP 사용 클라이언트(41)와 사설 IP 사용 클라이언트(47)로 구분하게 되고 공인 IP 사용 클라이언트(41)일 경우 서버는 동일 데이타를 요청하는 클라이언트 그룹의 존재 유무를 체크(42)한 후 동일 데이타 요청 그룹이 존재 할 경우에는 해당 루틴(43)에 따라 클라이언트를 동일 데이타 요청 그룹 내에 포함시키고 해당 클라이언트에게 데이타 중계를 담당할 직상위 클라이언트에 대한 정보를 "응답"(44)으로 전송하게 된다.
만약 동일 데이타 요청 그룹이 기존의 데이타 요청 그룹 중에 존재하지 않으면 해당 루틴(45)에 따라 새로운 동일 데이타 요청 그룹을 생성하게 되는데 데이타를 중계할 직상위 클라이언트가 존재하지 않기 때문에 데이타 전송은 서버가 직접 수행하게 되며 이에 대한 정보를 해당 클라이언트에게 "응답"(46)으로 전송하게 된다.
사설 IP 사용 클라이언트(47)일 경우 서버는 우선 이미 동일 데이타를 수신 하는 동일 서브넷의 클라이언트 그룹의 존재 유무를 체크(48)한 후 동일 데이타 요청 그룹이 존재 할 경우에는 해당 루틴(49)에 따라 클라이언트를 동일 데이타 요청 그룹내에 포함시키고 해당 클라이언트에게 데이타 중계를 담당할 동일 서브넷의 직상위 클라이언트에 대한 정보를 "응답"(50)으로 전송하게 된다.
만일 동일 서브넷의 동일 데이타 요청 그룹이 기존의 데이타 요청 그룹 중에 존재하지 않으면 해당 루틴(51)에 따라 새로운 데이타 요청 그룹을 생성하게 되는데 데이타를 중계할 직상위 클라이언트가 존재하지 않기 때문에 데이타 전송은 서버가 직접 수행하게 되며 이에 대한 정보를 해당 클라이언트에게 "응답"(52)으로 전송하게 된다.
도 4는 서버에서의 클라이언트의 "연결 불가" 메세지(60) 처리 과정에 관한 블록도이다. 클라이언트는 서버로부터 전달받은 "응답"(44,46,50,52)에 따라 직상위 클라이언트에 데이타 전송을 요청하는 메세지(140,162,180)를 전송하게 된다. 만약 상기의 내용에서처럼 직상위 클라이언트의 비 정상 동작, 직상위 클라이언트와의 연결 시도 이전에 직상위 클라이언트의 데이타 수신 완료등의 이유로 직상위 클라이언트로부터의 데이타 중계 응답인 전송 개시 메세지(143,163,181)가 없을 경우 이를 "연결 불가" 메세지(60)로 서버에 알리게 된다.
메세지를 전달받은 서버는 동일 데이타 요청 그룹에 대한 정보를 새롭게 갱신하게 되는데 공인 IP 사용 클라이언트(61)일 경우 해당 동일 데이타 요청 그룹을 검색(62)하고 검색된 동일 데이타 요청 그룹 정보에서 해당 클라이언트의 직상위 클라이언트 정보를 삭제한 후 해당 루틴(63)에 따라 새롭게 동일 데이타 요청 그룹 정보를 갱신한 후 새로운 직상위 클라이언트에 대한 정보를 "응답"(64)으로 해당 클라이언트에게 전송한다.
사설 IP 사용 클라이언트(65)일 경우 동일 서브넷의 동일 데이타 요청 그룹을 검색(66)하고 검색된 동일 데이타 요청 그룹 정보에서 해당 클라이언트의 직상위 클라이언트 정보를 삭제한 후 해당 루틴(67)에 따라 새롭게 동일 데이타 요청 그룹 정보를 갱신한 후 새로운 직상위 클라이언트에 대한 정보를 "응답"(68)으로해당 클라이언트에게 전송한다.
도 5는 서버에서의 클라이언트의 "접속 끊김" 메세지(80) 처리 과정에 관한 블록도이다. 상기의 내용에서 처럼 직상위 클라이언트로부터의 데이타 중계 도중 직상위 클라이언트의 데이타 수신완료, 직상위 클라이언트의 비 정상적 종료, 네트워크상의 데이타 트래픽 폭주등으로 인하여 직상위 클라이언트와 해당 클라이언트와의 네트워크 연결이 끊어지게 되면 해당 클라이언트는 "접속 끊김" 메세지(80)를 서버에 전송하게 된다.
메세지를 전달받은 서버는 해당 동일 데이타 요청 그룹에 대한 정보를 새롭게 갱신하게 되는데 공인 IP 사용 클라이언트(81)일 경우 해당 동일 데이타 요청 그룹을 검색(82)하고 상기에서 언급한 것처럼 동일 데이타 요청 그룹내 모든 클라이언트간의 수신 데이타의 동기를 맞추기 위해 검색된 동일 데이타 요청 그룹에 대한 데이타 전송을 일시 중지(83)한다. 해당 동일 데이터 요청 그룹으로의 데이터 전송을 일시 중지한 서버는 동일 데이타 요청 그룹에서 해당 클라이언트의 직상위 클라이언트 정보를 삭제하고 해당 루틴(84)에 따라 새롭게 동일 데이타 요청 그룹 정보를 갱신한 후 새로운 직상위 클라이언트에 대한 정보를 "응답"(85)으로 해당 클라이언트에게 전송한다.
사설 IP 사용 클라이언트(86)일 경우 서버는 해당 동일 서브넷의 동일 데이타 요청 그룹을 검색(87)하고 상기에서 언급한 것처럼 동일 서브넷의 동일 데이타 요청 그룹내 모든 클라이언트간의 수신 데이타의 동기를 맞추기 위해 검색된 동일 서브넷의 동일 데이타 요청 그룹에 대한 데이타 전송을 일시 중지(88) 한다.
동일 데이타 요청 그룹에서 해당 클라이언트의 직상위 클라이언트 정보를 삭제하고 해당 루틴(89)에 따라 새롭게 동일 데이타 요청 그룹 정보를 갱신한 후 새로운 직상위 클라이언트에 대한 정보를 "응답"(90)으로 해당 클라이언트에게 전송한다.
도 6은 서버에서의 클라이언트의 "재 접속" 메세지(100) 처리 과정에 관한 블록도이다. "접속 끊김"(80)을 알린 클라이언트는 상기 도 5의 과정을 통하여 응답(85,90)으로 전달받은 정보를 이용하여 새로운 직상위 클라이언트에게 데이타 중계를 요청하는 데이타 전송 메시지(140,162,180)를 전송한다.
직상위 클라이언트로부터의 데이타 중계 응답인 전송 개시 메시지(143,163,181)를 받게 되면 이를 서버에 "재 접속" 메세지(100)를 통하여 알리게 된다. 공인 IP 사용 클라이언트(101)일 경우 서버는 해당 동일 데이타 요청 그룹을 검색(102)하고 상기 도 5에서 일시 중지 되었던 데이타 전송 상태를 재 전송 상태로 변경(103)한다. 사설 IP 사용 클라이언트(104)일 경우 서버는 해당 동일 서브넷의 동일 데이타 요청 그룹을 검색(105)하고 상기 도 5에서 일시 중지 되었던 데이타 전송 상태를 재 전송 상태로 변경(106)한다.
도 7은 서버에서의 클라이언트의 "수신 완료" 메세지(120) 처리 과정에 관한 블록도이다. 상기의 내용에서처럼 동일 데이타 요청 그룹내의 클라이언트는 자신의 직상위 클라이언트가 데이터 수신을 완료하여 데이타 중계를 끝내게 되면(즉 해당 클라이언트의 직상위 클라이언트가 동일 데이터 요청 그룹의 최상위 클라이언트가 되었을 때 데이타 수신을 완료되게 되면) 동일 데이타 요청 그룹내 새로운 최상위 클라이언트가 되며 직상위 클라이언트로부터 미수신한 나머지 데이타를 서버로부터 직접 수신하게 된다.
모든 데이타 수신을 마치면 이를 서버에 알리게 되고 클라이언트로부터 "수신 완료" 메세지(120)를 전달 받은 서버는 해당 동일 데이타 요청 그룹 정보에서 해당 클라이언트의 정보(이때 해당 클라이언트는 동일 데이타 요청 그룹내 최상위 클라이언트이다.)를 삭제하게 된다. 공인 IP 사용 클라이언트(121)일 경우 해당 동일 데이타 요청 그룹을 검색(122)하여 해당 클라이언트 정보를 삭제한 후 해당 루틴(123)에 따라 해당 동일 데이타 요청 그룹 정보를 갱신하고 모든 과정이 정상적으로 수행되었음을 해당 클라이언트에게 "응답"(124)으로서 알리게 된다. 사설 IP 사용 클라이언트(125)일 경우 해당 동일 서브넷의 동일 데이타 요청 그룹을 검색(126)하여 해당 클라이언트 정보를 삭제한 후 해당 루틴(127)에 따라 해당 동일 서브넷의 동일 데이타 요청 그룹 정보를 갱신하고 모든 과정이 정상적으로 수행되었음을 해당 클라이언트에게 "응답"(128)으로서 알리게 된다.
도 8은 서버의 동일 데이타 요청 그룹에 대한 데이타 전송 과정에 대한 블록도이다. 동일 데이타 요청 그룹내 최상위 클라이언트로부터 "데이타 전송"을 요청 메세지(140)를 전달 받은 서버는 요청 데이터 중에서 해당 클라이언트가 직상위 클라이언트로부터 미수신한 부분만을 전송하게 되고 이는 최상위 클라이언트가 수신코자 하는 부분(요청 데이터중 미수신 부분)을 "데이타 전송" 요청 메세지(140)와 함께 서버에 알림으로써 수행되게 된다.
동일 데이터 요청 그룹내 임의의 최상위 클라이언트가 서버로부터 마저 수신코자하는 미수신 데이터 부분은 제각기 다 다르게 된다. 이는 해당 클라이언트가 직상위 클라이언트로부터 데이타를 전송받게 되는 것이 동일 데이타 요청 그룹내에 등록되고 직상위 클라이언트에게 "데이타 전송" 요청(140,162,180)을 한 후에 비로소 이루어지기 때문이다.
이는 도 11에서 자세히 설명한다. 공인 IP 사용 클라이언트(141)일 경우 서버는 해당 동일 데이타 요청 그룹을 검색(142)한 후 데이터 전송을 요청한 해당 최상위 클라이언트에게 "전송 개시" 메세지(143)를 전송하고 데이타 전송(145)을 시작하게 되는데 상기의 내용처럼 동일 데이타 요청 그룹내 모든 클라이언트간의 데이타 전송 동기를 맞추기 위해 매 데이타 전송전에( 데이터 전송시 서버는 전체 데이터를 일정 크키로 잘라서 전송하게 된다.) 항상 데이타 전송 유무(144)를 체크한다. 만약 해당 동일 데이타 요청 그룹내 임의의 클라이언트로부터의 "접속 끊김" 메세지(80)에 의한 데이타 전송 일시 중지 상태(83)일 경우에는 해당 그룹의 최상위 클라이언트로의 데이타 전송을 일시 중지(146)하고 데이타 전송 유무(147)가 데이타 재전송 상태(103)로 바뀔 때까지 기다린다.
사설 IP 사용 클라이언트(148)일 경우 해당 동일 서브넷의 동일 데이타 요청 그룹을 검색(149)한 후 데이터 전송을 요청한 해당 최상위 클라이언트에게 "전송 개시" 메세지(150)를 전송하고 데이타 전송(152)을 시작하게 되는데 상기의 내용처럼 동일 서브넷의 동일 데이타 요청 그룹내 모든 클라이언트간의 데이타 전송 동기를 맞추기 위해 매 데이타 전송전에 항상 데이타 전송 유무(151)를 체크한다. 만약 해당 동일 데이타 수신 그룹 내 임의의 클라이언트로부터의 "접속 끊김"메세지(80)에 의한 데이타 전송 일시 중지 상태(88)일 경우에는 해당 그룹의 최상위 클라이언트로의 데이타 전송을 일시 중지(153)하고 데이타 전송 유무(154)가 데이타 재전송 상태(106)로 바뀔 때까지 기다린다.
도 9은 클라이언트의 데이타 수신 과정에 대한 블록도이다. 이 과정은 공인 IP 사용 클라이언트와 사설 IP 사용 클라이언트가 동일하다. 클라이언트는 서버에 "데이타 요청" 메세지(160)를 전송한 후 서버로부터의 "응답" 메세지(161)내의 직상위 클라이언트 정보를 이용하여 해당 직상위 클라이언트에게 "데이타 전송" 요청 메세지(162)를 전송한다. 만약 직상위 클라이언트로부터 "전송 개시" 메세지(163)를 전송 받을 경우 직상위 클라이언트로부터의 데이타를 수신(164)하게 되고 데이타 수신을 완료하게 되면(동일 데이터 요청 그룹내의 최상위 클라이언트가 되었을 때 데이터 수신을 마칠 수 있다.) "수신 완료" 메세지(165)를 서버에 전송하고 서버로부터의 "응답" 메세지(166)를 받고 난 후 모든 데이타 수신 과정을 마치게 된다.
이때 상기의 도 5의 내용에서 언급한 바와 같이 직상위 클라이언트로부터의 데이타 수신(164) 도중 직상위 클라이언트의 데이타 수신 완료, 직상위 클라이언트의 비 정상적 종료, 네트워크상의 데이타 트래픽 폭주등으로 인하여 직상위 클라이언트와의 네트워크 연결이 끊기게 되면 클라이언트는 이를 서버에 "접속 끊김" 메세지(171)을 통하여 알리게 되고 새로운 직상위 클라이언트 정보를 서버의 "응답" 메세지(172)를 통하여 전달 받는다.
만약 직상위 클라이언트와의 네트워크 연결이 끊긴 이유가 직상위 클라이언트의 데이타 수신 완료로 인한 것이라면 해당 클라이언트가 동일 데이타 요청 그룹내 최상위 클라이언트가 되기 때문에 서버로부터 직접 데이타를 수신하게 된다.
"응답" 메세지(172)를 전달받은 클라이언트는 새로운 직상위 클라이언트에게 "데이타 전송" 요청 메세지(173)를 전송하게 되고 직상위 클라이언트로부터 "전송 개시" 메세지(174)를 받게 되면 이를 서버에 "재 접속" 메세지(175)를 통하여 알리게 되고 직상위 클라이언트로부터의 데이타 수신(164)을 재개하게 된다.
또한 162번의 "데이타 전송" 요청 메세지를 직상위 클라이언트에게 전송 하였을때 상기 도 4에서 언급한 바와 같이 직상위 클라이언트의 비 정상 동작, 직상위 클라이언트와의 연결 시도 이전에 직상위 클라이언트의 데이타 수신 완료등의 이유로 직상위 클라이언트의 "전송 개시" 응답(163)을 받지 못하게 되면 이를 서버에 "연결 불가" 메세지(167)를 통하여 알리게 된다.
서버는 해당 동일 데이터 요청 그룹을 새롭게 갱신한 후 새로운 직상위 클라이언트 정보를 "응답" 메세지(168)를 통하여 해당 클라이언트에게 알리게 되고 클라이언트는 이를 통하여 새로운 직상위 클라이언트에게 "데이타 전송" 요청(169) 메세지를 전송하게 된다. 만약 새로운 직상위 클라이언트로부터의 "전송 개시" 메세지(170)를 전달 받게 되면 해당 클라이언트는 직상위 클라이언트로부터의 데이타 수신(164)을 시작하게 된다.
도 10은 클라이언트의 하위 클라이언트로의 데이타 중계 과정에 대한 블록도이다. 이 과정 또한 공인 IP 사용 클라이언트와 사설 IP 사용 클라이언트가 동일 하다. 동일 데이터 요청 그룹내의 임의의 클라이언트는 직상위 클라이언트로부터의 데이타 수신 과정 도중에 동일 데이타 요청 그룹 내 직하위 사용자로부터의 "데이타 전송" 요청 메세지(180)를 전달 받게 되면 "전송 개시" 메세지(181)를 해당 직하위 클라이언트에게 전달한 후 직상위 클라이언트로부터 수신한 데이타를 저장함과 동시에 직하위 클라이언트에게 중계(183)하기 시작한다.
이때 직하위 클라이언트에게로의 매 데이타 전송 이전에 항상 직하위 클라이언트와의 네트워크 연결 유지 여부를 판단(182)하게 되는데 직하위 클라이언트의 비 정상적 종료나 네트워크상의 데이타 트래픽 폭주등으로 인하여 직하위 클라이언트와의 네트워크 연결이 끊길 경우 직하위 사용자로의 데이타 중계를 중단(184)하게 된다.
도 11은 동일 데이터 요청 그룹 내에서 전송 및 중계되는 요청 데이터에 대한 블록도이다. 서버(200)는 동일 데이터 요청 그룹(201)내 최상위 클라이언트 (202)에게 요청 데이터를 전송한다. 최상위 클라이언트(202)가 전체 데이터중 B 부분을 서버(200)로부터 전송받을 때 동일 데이터 요청 그룹(201)에 등록된 직하위 클라이언트(203)는 전체 데이터중 B부분부터 직상위 클라이언트(202)로부터 전송받게 된다.
이후에 새롭게 등록된 동일 데이터 요청 그룹(201)내 클라이언트(204, 205)는 자신의 직상위(203, 204) 클라이언트로부터 도 11처럼 데이터를 중계 받게 된다. 동일 데이터 요청 그룹(201)내 최상위 클라이언트(202)가 데이터 수신을 마치게 되면 해당 클라이언트(202)의 직하위 클라이언트(203)가 그룹내 최상위 클라이언트로 대체 되고 전체 데이터중 직상위(202) 클라이언트로부터 수신하지 못한 A부분을 서버(200)로부터 직접 전송 받게 된다.
이와 같은 과정을 반복함으로써 동일 데이터 요청 그룹(201)내 모든 클라이언트(202, 203, 204, 205)는 자신이 요청한 데이터를 모두 수신하게 된다. 도 11내의 화살표는 전체 데이터중 해당 데이터 부분(A, B, C, D)을 전송하는 전송단(직상위 클라이언트 혹은 서버가 된다.)으로부터의 하위 클라이언트로의 데이터 전송을 가리키며 동일 데이터 요청 그룹(201)내 모든 클라이언트(202, 203, 204, 205)는 최종적으로 동일 데이터 요청 그룹(201)내 최상위 클라이언트가 되며 미 수신 데이터 부분을 직접 서버(200)로부터 전송 받게(서버와 클라이언트간에 직접 연결된 화살표가 이를 가리키고 이때 해당 클라이언트는 동일 데이터 요청 그 그룹내의 최상위 클라이언트일 때이다.) 된다.
본 발명은 인터넷(Internet)상에서의 다수의 클라이언트가 대용량의 데이타를 요청하는 경우의 데이타 송수신 방법에 대한 것으로 데이타 트래픽을 전체 인터넷으로 분산함으로써 네트워크 자원의 효율적인 이용과 상대적인 네트워크 전송 성능향상과 이에 따른 데이타 전송 비용의 절감을 기대할 수 있다. 대규모의 데이타 전송이 이루어지는 사이트에서는 본 발명을 이용함으로써 지속적인 데이타 전송 서버의 증설을 지양할 수 있게 된다.
또한 본 발명은 현재 인터넷에서 급부상하고 있는 실시간 동영상 중계서비스에 응용될 수 있다. 현재 인터넷상에서의 동영상 전송, 영상회의, 음성회의 등을 목적으로 하는 Mbone이 존재하고 있으나, 이는 단순히 멀티캐스트를 테스트하기 위한 시험망으로 존재할 뿐이며, 네트워크 상에서의 동영상 전송, 영상 음성회의를 위해 효과적인 멀티캐스트 전송방식은 현재 인터넷상의 라우터 환경으로 인해 적용되지 못하고 있다. 이에 본 발명의 방법은 멀티캐스트 대용 기술로 응용함으로써, 확대 일로에 있는 인터상에서의 멀티미디어 전송 서비스를 보다 원활하게 할 수 있으리라 기대된다.

Claims (5)

  1. 인터넷상에서 클라이언트/서버 구조로 데이터를 전송함에 있어서, 공인 IP 클라이언트와 사설 IP 클라이언트로 구분하는 단계, 각 구분내에서 동일한 데이터를 전송 요청하는 클라이언트 별로 그룹화하는 단계, 상기 그룹들 내의 상위 클라이언트가 하위 클라이언트에게 실시간으로 데이터를 중계하는 단계를 포함하는 것을 특징으로 하는 인터넷상 데이터 송수신 방법.
  2. 제 1 항에 있어서, 최상위 클라이언트의 수신 종결시 상기 최상위 클라이언트의 차하위 클라이언트가 상기 최상위 클라이언트를 대체하는 단계를 추가로 더 포함하는 인터넷상 데이터 송수신 방법.
  3. 제 1항에 있어서, 예외 상황 처리를 위하여 클라이언트 그룹을 재구성하는 단계를 추가로 더 포함하는 인터넷상 데이터 송수신 방법.
  4. 제 1항에 있어서, 동일 데이터 요청 그룹내의 데이터 전송 동기를 맞추는 단계를 추가로 더 포함하는 인터넷상 데이터 송수신 방법.
  5. 제 1항에 있어서, 상기 그룹들내의 상위 클라이언트가 하위 클라이언트에게 데이터를 중계함에 있어서, 상기 상위 클라이언트가 현재 수신중인 데이터만을 하위 클라이언트에게 중계하는 것을 특징으로 하는 인터넷상 데이터 송수신 방법.
KR1020010027089A 2001-05-17 2001-05-17 클라이언트 그룹화를 이용한 인터넷 상에서의 대용량데이타 전송 및 중계 방법 KR20020088149A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010027089A KR20020088149A (ko) 2001-05-17 2001-05-17 클라이언트 그룹화를 이용한 인터넷 상에서의 대용량데이타 전송 및 중계 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010027089A KR20020088149A (ko) 2001-05-17 2001-05-17 클라이언트 그룹화를 이용한 인터넷 상에서의 대용량데이타 전송 및 중계 방법

Publications (1)

Publication Number Publication Date
KR20020088149A true KR20020088149A (ko) 2002-11-27

Family

ID=27705339

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010027089A KR20020088149A (ko) 2001-05-17 2001-05-17 클라이언트 그룹화를 이용한 인터넷 상에서의 대용량데이타 전송 및 중계 방법

Country Status (1)

Country Link
KR (1) KR20020088149A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100793420B1 (ko) * 2006-07-12 2008-01-11 임승빈 네트워크상에서 데이터 전송 서비스를 제공하기 위한 서버및 클라이언트의 연결 시스템 및 이를 이용한 서버와클라이언트 또는 클라이언트와 클라이언트간의 연결 방법
KR101284467B1 (ko) * 2011-09-06 2013-07-09 주식회사 리드웹 네트워크 서비스의 제공을 위한 단말장치의 그룹핑 방법
KR20220099410A (ko) 2021-01-06 2022-07-13 주식회사 아이티스테이션 학습 트리 기반 보안 p2p 파일 전송 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100793420B1 (ko) * 2006-07-12 2008-01-11 임승빈 네트워크상에서 데이터 전송 서비스를 제공하기 위한 서버및 클라이언트의 연결 시스템 및 이를 이용한 서버와클라이언트 또는 클라이언트와 클라이언트간의 연결 방법
WO2008007862A1 (en) * 2006-07-12 2008-01-17 Infobada Co., Ltd. Method and system for connecting server to client or client to client in network for data transmitting service
KR101284467B1 (ko) * 2011-09-06 2013-07-09 주식회사 리드웹 네트워크 서비스의 제공을 위한 단말장치의 그룹핑 방법
KR20220099410A (ko) 2021-01-06 2022-07-13 주식회사 아이티스테이션 학습 트리 기반 보안 p2p 파일 전송 방법
WO2022149636A1 (ko) * 2021-01-06 2022-07-14 주식회사 아이티스테이션 학습 트리 기반 보안 p2p 파일 전송 방법

Similar Documents

Publication Publication Date Title
Deshpande et al. Streaming live media over a peer-to-peer network
Snoeren et al. Fine-Grained Failover Using Connection Migration.
US9077554B1 (en) Simplified method for processing multiple connections from the same client
KR101030243B1 (ko) 세션 개시 프로토콜의 종료를 위한 시스템 및 방법
US8510468B2 (en) Route aware network link acceleration
EP1444592B1 (en) Method and apparatus for a distributed server tree
CN102231762B (zh) 一种可以无限水平扩展的p2p服务器系统
WO2012065531A1 (zh) 实现中继选择的方法及装置、系统
WO2012072045A1 (zh) 一种cdn网络中的数据传输方法、网络节点及系统
WO2019100912A1 (zh) 数据分发方法以及分发服务器
KR20020088149A (ko) 클라이언트 그룹화를 이용한 인터넷 상에서의 대용량데이타 전송 및 중계 방법
US20020065918A1 (en) Method and apparatus for efficient and accountable distribution of streaming media content to multiple destination servers in a data packet network (DPN)
WO2013013524A1 (zh) 一种跨网络实现终端通信的方法及系统
CN105450760A (zh) 一种基于p2p的自适应资源下载方法
CN112311759B (zh) 一种混合网络下的设备连接切换方法和系统
US20140161125A1 (en) Method, duplication point device, and system for data flow reuse transmission
JP4285101B2 (ja) リアルタイムデータ通信システム、リアルタイムデータ通信装置およびリアルタイムデータ通信方法
JP3682439B2 (ja) データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム
JP2007183714A (ja) コンテンツ配信システム、中継サーバ及び中継管理サーバ
CN108712458B (zh) 支持内容控制的软件定义网络控制器
KR20050115498A (ko) P2p 기반의 비디오 서비스 시스템 및 이를 이용한주문형 비디오 서비스 제공방법
JP2012186577A (ja) データ配信システム,ノード,及びデータ配信方法
KR20030009727A (ko) 인터넷 상에서 특정 다수의 클라이언트를 대상으로 한동일 데이터 전송 그룹별 데이터 전송 및 중계 방법
JP7298690B2 (ja) コンテンツ配信システム、マルチキャストユニキャスト/マルチキャストマルチキャスト変換装置、マルチキャストユニキャスト変換装置、コンテンツ配信方法及びコンテンツ配信プログラム
CN113965577B (zh) 一种智能切换Socks5代理服务器节点的系统与方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application