KR100572232B1 - 데이터 전송 방법 - Google Patents

데이터 전송 방법 Download PDF

Info

Publication number
KR100572232B1
KR100572232B1 KR1020030056700A KR20030056700A KR100572232B1 KR 100572232 B1 KR100572232 B1 KR 100572232B1 KR 1020030056700 A KR1020030056700 A KR 1020030056700A KR 20030056700 A KR20030056700 A KR 20030056700A KR 100572232 B1 KR100572232 B1 KR 100572232B1
Authority
KR
South Korea
Prior art keywords
data
identifier
information
providing terminal
terminal
Prior art date
Application number
KR1020030056700A
Other languages
English (en)
Other versions
KR20030079842A (ko
Inventor
김형호
문의선
Original Assignee
주.피어링포탈
김형호
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주.피어링포탈, 김형호 filed Critical 주.피어링포탈
Priority to KR1020030056700A priority Critical patent/KR100572232B1/ko
Publication of KR20030079842A publication Critical patent/KR20030079842A/ko
Application granted granted Critical
Publication of KR100572232B1 publication Critical patent/KR100572232B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/60Business processes related to postal services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Operations Research (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 전자 우편을 이용한 데이터 전송 방법에 관한 것으로, 더욱 상세하게는 클라이언트 단말기가 데이터 식별자를 포함하는 전자 우편을 수신한 경우 상기 데이터 식별자를 이용하여 데이터 제공 서버를 포함하는 하나 이상의 데이터 제공 단말기로부터 데이터를 수신할 수 있는 데이터 전송 방법에 관한 것이다.
본 발명에 따른 데이터 전송 방법은 클라이언트 단말기가 수신한 전자 우편에 소정의 데이터를 참조하기 위한 데이터 식별자가 포함되어 있는지 여부를 판단하는 단계, 상기 전자 우편에 상기 데이터 식별자가 포함되어 있는 경우, 소정의 인덱싱 서버에 상기 데이터 식별자를 전송하여 데이터 제공 단말기에 대한 접속 정보를 요청하는 단계, 상기 인덱싱 서버로부터 하나 이상의 데이터 제공 단말기에 대한 상기 접속 정보를 수신하는 단계, 상기 접속 정보에 기초하여 상기 데이터 제공 단말기에 상기 데이터를 요청하는 단계, 및 상기 데이터 제공 단말기로부터 상기 데이터를 수신하는 단계를 포함하고, 상기 인덱싱 서버 상기 클라이언트 단말기와 통신망을 통해 연결되고, 소정의 데이터를 저장하는 데이터 제공 단말기에 대한 접속 정보를 유지하는 것을 특징으로 한다.
본 발명에 따르면, 전자 우편을 이용하여 오디오 데이터, 비디오 데이터 등의 멀티미디어 데이터를 포함하여 대용량의 데이터를 상기 전자 우편의 수신자에게 제공할 수 있는 데이터 전송 방법이 제공된다.
전자 우편, 멀티미디어 데이터, 인덱싱 서버

Description

데이터 전송 방법{A METHOD OF TRANSFERRING DATA}
도 1 및 도 2는 종래의 전자 우편 서비스를 설명하기 위한 도면.
도 3은 본 발명에 따른 데이터 전송 방법을 수행하는 데이터 제공 시스템을 포함하는 클라이언트 단말기의 네트워크 연결을 도시한 도면.
도 4는 본 발명의 일실시예에 따른 데이터 전송 방법을 도시한 흐름도.
도 5는 본 발명의 일실시예에 따른 데이터 전송 방법에 있어서, 클라이언트 단말기로 수신되는 접속 정보의 일례를 도시한 도면.
도 6은 본 발명의 일실시예에 따른 데이터 전송 방법에 있어서, 인덱싱 서버로 전송하는 정보의 일례를 도시한 도면
도 7은 본 발명의 또 다른 실시예에 따른 데이터 전송 방법을 도시한 흐름도.
도 8은 본 발명의 또 다른 실시예에 따른 데이터 전송 방법을 도시한 흐름도.
도 9는 본 발명의 또 다른 실시예에 따른 데이터 전송 방법에 있어서, 관리 데이터베이스에 저장되는 데이터 식별자, 접속 정보 및 상기 접속 정보와 연관된 작업 부하 정보의 일례를 도시한 도면.
도 10은 본 발명의 또 다른 실시예에 따른 데이터 전송 방법을 도시한 흐름 도.
도 11은 본 발명에 따른 데이터 전송 시스템 등을 구성하는 데 채용될 수 있는 범용 컴퓨터 시스템의 내부 블록도.
본 발명은 전자 우편을 이용한 데이터 전송 방법에 관한 것으로, 더욱 상세하게는 클라이언트 단말기가 데이터 식별자를 포함하는 전자 우편을 수신한 경우 상기 데이터 식별자를 이용하여 데이터 제공 서버를 포함하는 하나 이상의 데이터 제공 단말기로부터 데이터를 수신할 수 있는 데이터 전송 방법에 관한 것이다.
인터넷이 보편화되면서 전자 우편은 중요한 의사 소통 수단으로 자리 잡았으며, 전자 우편의(또는 전자 우편을 이용한) 서비스 형태는 다양해지고 있다. 도 1은 종래의 전자 우편 서비스를 설명하기 위한 도면이다. 송신 클라이언트(110)에서 작성된 전자 우편은 전자 우편 송신 서버(120)를 통해 전자 우편 수신 서버(130)로 전송되고, 수신 클라이언트(140)는 전자 우편 수신 서버(130)에 접속하여 상기 전자 우편을 제공 받게 된다.
종래의 전자 우편은 텍스트 위주로 이루어졌으나, 기술의 발전에 따라 다양한 포맷의 문서를 지원하는 HTML(HyperText Markup Language) 형식의 전자 우편의 사용이 증가하고 있다. 이러한 현상은 특히 아웃룩
Figure 112003030188984-pat00001
, 유도라
Figure 112003030188984-pat00002
등과 같은 전자 우편 송수신 전용 프로그램을 사용하는 대신, 웹 브라우저를 이용하여 전자 우편을 송수신하는 경우가 증가함에 따라 더욱 두드러지고 있다. 또한, 상술한 전자 우편 송수신 전용 프로그램 자체에서도 HTML 형식의 전자 우편을 지원함으로써 그 활용도는 더욱 커지고 있다.
대부분의 전자 우편 클라이언트 프로그램은 HTML로 작성된 전자 우편을 수신하여 직접 처리할 수 있는 기능을 갖고 있다. 현재 이러한 기능을 이용하여 전자 우편 내에 오디오 데이터를 삽입하여 상기 전자 우편을 수신하는 경우 상기 오디오 데이터가 재생되면서 상기 전자 우편에 포함된 메시지의 배경 음악처럼 사용되도록 하는 전자 우편 서비스, 전자 우편 내에 이미지 데이터를 삽입하여 사용자가 상기 전자 우편을 수신하여 읽는 경우 상기 이미지 데이터를 볼 수 있도록 하는 전자 우편 서비스, 또는 상기 오디오 데이터와 상기 이미지 데이터를 함께 사용하는 전자 우편 서비스가 일반적으로 사용되고 있다. 이와 같이, 기존의 텍스트 위주의 전자 우편이 아닌, 멀티미디어 환경을 제공하는 전자 우편 서비스가 증가하고 있다. 또한, 상기한 오디오 데이터나 이미지 데이터 외에도 전자 우편 내에 동화상과 같은 움직임 효과를 주기 위해 플래시(Flash)를 이용하거나, Moving GIF 등을 이용하여 제한적인 움직임을 보여주는 경우도 증가하고 있다.
한편, 전자 우편의 사용이 보편화 됨에 따라 광고 또는 홍보를 위해 전자 우편을 이용하는 경우도 증가하고 있다. 이때, 광고 효과를 높이기 위해 전자 우편 내에 이미지 데이터를 삽입하는 경우도 있으나, 이미지 데이터 외에 오디오 데이터 또는 비디오 데이터를 삽입하고 상기 전자 우편의 수신자가 전자 우편을 읽는 경우 상기 오디오 데이터 또는 상기 비디오 데이터가 재생되도록 하는 것이 광고 효과를 극대화 시킬 수 있을 것이다.
그러나, 상기한 오디오 데이터 또는 비디오 데이터는 단순한 텍스트나 이미지 데이터에 비해 그 용량이 훨씬 크다. 일반적으로 전자 우편을 송수신하는 전자 우편 서버는 하나의 전자 우편으로 전송되는 데이터의 크기에 제한을 두고 있고, 이러한 크기에는 첨부 파일의 크기도 포함된다(전자 우편 송수신 서버의 부하는 전자 우편 내의 텍스트 부분을 처리하는 것보다 첨부 파일을 처리하는 경우에 더 많이 발생함). 게다가, 대다수의 사용자들이 무료로 제공되는 전자 우편 서비스를 이용하여 전자 우편을 송수신하고 있는데, 이러한 무료 전자 우편 서비스는 일회에 전송될 수 있는 데이터의 크기를 제한하고 있을 뿐 아니라 사용자 개인에게 할당되는 저장 공간의 크기 또한 제한하고 있으므로 이러한 멀티미디어 데이터를 전자 우편에 삽입하여 송수신하는 것이 더욱 제한되고 있다.
이러한 전송 가능한 데이터 크기의 한계로 인하여, 크기가 큰 오디오 데이터 또는 비디오 데이터를 전자 우편에 삽입, 첨부하여 다른 사용자에게 전송하는 것이 어려워지고 있고, 오디오(비디오)의 음질(화질)을 대폭 낮춤으로써 가능하다는 문제점이 있다. 특히, 오디오 데이터에 비해서도 데이터 용량이 큰 비디오 데이터를 첨부 파일 형태로 수신자에게 전송하는 것은 현 상황에서는 매우 힘들다는 문제점이 있다.
이와 같은 문제점을 해결하기 위해, 도 2에 도시한 바와 같은 전자 우편 서비스가 제공되고 있다. 도면 부호(210)은 전자 우편을 송신하는 송신 클라이언트 단말기, 도면 부호(240)은 상기 전자 우편을 수신하는 수신 클라이언트 단말기를 의미한다. 사용자는 오디오 데이터 등의 데이터를 상기 전자 우편에 첨부하지 않고, 상기 데이터를 저장하고 있는 데이터 제공 서버(203)에 대한 URL을 포함하는 전자 우편을 작성하여 전송하면 상기 전자 우편은 전자 우편 송신 서버(220) 및 전자 우편 수신 서버(230)을 통해 수신 클라이언트(240)로 제공된다. 전자 우편 수신 서버(230)에 접속한 수신 클라이언트(240)는 상기 데이터를 전자 우편 수신 서버(230)에 접속하여 수신하지 않고, 상기 URL을 이용하여 데이터 제공 서버(260)에 접속하여 수신함으로써 상기 데이터를 제공 받는다.
그러나, 상기 전자 우편의 수신인이 많은 경우(특히 광고, 홍보용 전자 우편의 경우 수신인이 불특정 다수인 경우가 많음)에는 데이터 제공 서버(260)에 수신인들의 데이터 요청이 집중되기 때문에 데이터 제공 서버(260)와 네트워크에 많은 부하가 유발된다. 또한, 데이터를 수신하는 사용자로서도 상기 데이터가 전송되기까지 기다려야 하는 시간이 길어지게 되는 문제점이 있다.
이와 같은 문제점을 해결하기 위해서, 충분한 용량의 데이터 제공 서버(260)와 네트워크를 이용할 수 있지만, 이러한 경우 상기 장비들을 구비하기 위해 소요되는 비용 부담이 크고, 상기 장비를 구비한 경우에도 사용자들이 상기 데이터를 요청하는 빈도가 일정하지 않기 때문에 많은 수의 사용자들이 상기 데이터를 요청하는 특정 시간대 외에는 상기 장비가 유휴 장비로서 효율적으로 활용되지 못할 수 있다는 문제점이 있다.
한편, 상기 특정 시간대가 발생하는 원인은 아래와 같이 설명될 수 있다.
i) 전날 수신된 전자 우편 중 읽혀지지 않은 전자 우편은 출근 시간 직후에 읽혀지는 경우가 많다.
ii) 광고, 홍보를 위한 전자 우편은 일과 시간 이후에 발송되어 다음 날 출근 시간 직후에 읽혀지는 경우가 많다.
iii) 동시에 다수의 수신에게 전송된 전자 우편은 비슷한 시간에 수신인의 전자 우편 서버에 수신되며 결과적으로 상기 전자 우편의 대부분은 비슷한 시간 대에 읽혀진다.
따라서, 특정 시간 대에는 전자 우편을 수신한 사용자들로부터 데이터 요청이 폭주하지만 그 외의 시간대에는 상기 요청이 상대적으로 감소하여 상기 특정 시간대 외의 시간에는 상기 구비한 장비는 유휴 장비로 남게 된다.
그런데, 인터넷을 이용한 정보의 검색과 교환에 있어서, 텍스트에 비해 멀티미디어가 차지하는 부분이 점점 커지고 있고, 전자 우편의 경우에도 송신하는 사람의 음성이나 화상이 텍스트를 대체하는 날이 올 것이라고 예측된다. 또한, 음성 또는 화상 형태로 제작된 뉴스나 교육 자료 등을 전자 우편으로 배달하는 일도 빈번해 질 것이다.
따라서, 전자 우편을 이용하여 수신자에게 음성 또는 화상을 제공하기 위해 상술한 바와 같은 문제를 해결할 필요성이 커지고 있다. 한편, 상술한 바와 같은 문제점은 오디오 데이터 또는 비디오 데이터 등의 멀티미디어 데이터뿐만 아니라 대용량의 데이터를 전자 우편을 이용하여 전송하는 경우에도 발생 가능하며 이를 위한 해결책도 필요하다.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 안출된 것으로서, 전자 우편을 이용하여 오디오 데이터, 비디오 데이터 등의 멀티미디어 데이터를 포함하여 대용량의 데이터를 상기 전자 우편의 수신자에게 제공할 수 있는 데이터 전송 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 상기 데이터를 저장하고 있는 서버 및 네트워크의 부하를 최소화하고 상기 데이터의 전송 시간을 감소시킬 수 있는 데이터 전송 방법을 제공하는 것을 또 다른 목적으로 한다.
상기의 목적을 달성하고, 상술한 종래 기술의 문제점을 해결하기 위하여, 본 발명에 따른 데이터 전송 방법은 클라이언트 단말기가 수신한 전자 우편에 소정의 데이터를 참조하기 위한 데이터 식별자가 포함되어 있는지 여부를 판단하는 단계, 상기 전자 우편에 상기 데이터 식별자가 포함되어 있는 경우, 소정의 인덱싱 서버에 상기 데이터 식별자를 전송하여 데이터 제공 단말기에 대한 접속 정보를 요청하는 단계, 상기 인덱싱 서버로부터 하나 이상의 데이터 제공 단말기에 대한 상기 접속 정보를 수신하는 단계, 상기 접속 정보에 기초하여 상기 데이터 제공 단말기에 상기 데이터를 요청하는 단계, 및 상기 데이터 제공 단말기로부터 상기 데이터를 수신하는 단계를 포함하고, 상기 인덱싱 서버 상기 클라이언트 단말기와 통신망을 통해 연결되고, 소정의 데이터를 저장하는 데이터 제공 단말기에 대한 접속 정보를 유지하는 것을 특징으로 한다.
본 발명의 일측에 따르면, 상기 데이터 식별자는 상기 데이터의 출처인 데이 터 제공 서버의 URL 정보를 포함할 수 있다.
또한, 본 발명의 또 다른 일측에 따르면, 상기 데이터 제공 단말기는 상기 데이터 제공 서버, 또는 상기 데이터 제공 서버로부터 상기 데이터를 수신하여 저장하고 있는 클라이언트 단말기인 것을 특징으로 한다.
또한, 본 발명에 따른 데이터 전송 방법은 소정의 관리 데이터베이스 수단에 데이터 식별자, 및 상기 데이터 식별자에 대응하는 접속 정보 -상기 접속 정보는 데이터를 저장하는 데이터 제공 단말기에 대한 접속 정보임 -를 저장하는 단계, 소정의 클라이언트 단말기로부터 데이터 식별자를 수신하는 단계, 상기 관리 데이터베이스 수단 중에서 상기 수신한 데이터 식별자에 대응하는 접속 정보를 검색하는 단계, 및 상기 검색된 접속 정보를 상기 클라이언트 단말기로 전송하는 단계를 포함하고, 상기 데이터 제공 단말기는 상기 데이터의 출처인 데이터 제공 서버, 또는 상기 데이터 제공 서버로부터 상기 데이터를 수신하여 저장하고 있는 클라이언트 단말기인 것을 특징으로 한다. 또한, 본 발명은 상술한 데이터 전송 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체를 제공한다.
이하에서는 첨부된 도면을 참조하여 본 발명의 실시예를 구체적으로 설명한다.
도 3은 본 발명에 따른 데이터 전송 방법을 수행하는 데이터 제공 시스템을 포함하는 클라이언트 단말기(340)의 네트워크 연결을 도시한 도면이다. 본 발명은 전자 우편 내에 멀티미디어 데이터 등의 대용량 데이터가 직접 삽입, 첨부되는 것 이 아니라, 소정의 데이터 제공 서버(360)로부터 데이터를 제공 받도록 되어 있는 전자 우편 서비스에서 적용 가능하며, 본 발명을 이용하면 전자 우편을 수신한 사용자는 데이터 제공 서버(360)뿐만 아니라, 상기 데이터를 저장하고 있는 하나 이상의 데이터 제공 단말기(370a 내지 370c)로부터 데이터를 제공 받을 수 있게 된다.
이하, 본 발명의 일실시예에 따른 데이터 전송 방법에 대해 설명한다. 도 4는 본 실시예에 따른 데이터 전송 방법을 도시한 흐름도이다.
데이터 전송 시스템은 단계(401)에서 전자 우편 수신 서버(330)로부터 전자 우편을 수신하고, 단계(402)에서 상기 전자 우편에 소정의 데이터를 참조하기 위한 데이터 식별자가 포함되어 있는지 여부를 판단한다.
상기 데이터 식별자는 상기 데이터의 출처인 데이터 제공 서버(360)의 URL 정보를 포함할 수 있다. 상기 전자 우편에 상기 데이터 식별자를 포함시키기 위해 자바 스크립트, 태그 명령어, Active-x 오브젝트 등이 사용될 수 있다. 예를 들면, 상기 데이터 식별자를 상기 전자 우편에 포함시키기 위해 아래와 같은 HTML이 전자 우편 내에 삽입될 수 있다.
1) 자바 스크립트를 이용한 경우,
<SCRIPT LANGUAGE="JavaScript" SRC=http://www.server.com/ contents/link.asp?data_id=000010488> </SCRIPT>
2) 태그 명령을 사용한 경우(bgsound 태그 명령을 사용한 경우)
<bgsound src = http://www.server.com/contents/music.asf hidden=true>
3) 태그 명령을 사용한 경우(embed 태그 명령을 사용한 경우)
<embed src= http://www.server.com/contents/music.asf hidden=ture>
4) Active-X 오브젝트를 사용한 경우
<OBJECT name="p3playctrl" id="p3plyactrl" classid="clsid:5363A 8A-1FE%-4B3F-95BE-AF0F392DE720"
CODEBASE=http://www.peeringportal.net/activectrl/P3PlayCtrl.cab#version=1,0,0,1>
<PARAM URL="p3tp://www.server.com/contents/kor104234">
</OBJECT>
또한, 본 발명의 또 다른 실시예에 따르면, 상기 데이터 식별자는 상기 데이터에 대해 소정의 아이디 생성 시스템이 생성한 고유의 아이디일 수 있다. 상기 고유 아이디를 데이터 식별자로 사용하는 경우에는 상기 데이터의 출처인 데이터 제공 서버(360) 및 인덱싱 서버(350)는 각 데이터에 대한 각 고유 아이디를 저장하고 있어야 한다. 송신 클라이언트 단말기(310)는 데이터 제공 서버(360)로부터 소정의 데이터에 대응하는 고유 아이디를 제공 받고 상기 고유 아이디를 전자 우편에 삽입하여 전송하는 방법으로, 클라이언트 단말기(340)에 상기 데이터 식별자가 포함된 전자 우편을 송신할 수 있다.
단계(402)에서의 판단 결과, 상기 전자 우편에 상기 데이터 식별자가 포함되어 있는 경우, 데이터 전송 시스템은 단계(403)에서 상기 데이터 식별자를 인덱싱 서버(350)로 전송한다. 상기 데이터 식별자를 수신한 인덱싱 서버(350)는 단계(404)에서 상기 데이터 식별자에 대응하는 소정의 데이터 제공 단말기에 대한 접속 정보 및 작업 부하 정보를 데이터 전송 시스템으로 전송한다.
상기 데이터 제공 단말기는 상기 데이터의 출처인 데이터 제공 서버(360) 뿐 아니라, 데이터 제공 서버(360)로부터 상기 데이터를 수신하여 저장하고 있는 클라이언트 단말기를 포함할 수 있으며, 본 실시예에서의 클라이언트 단말기(340)는 상기 데이터를 수신할 뿐만 아니라 타 클라이언트 단말기에 대해 상기 데이터를 제공하는 데이터 제공 단말기로서의 역할도 수행할 수 있다.
한편, 상기 작업 부하 정보는 각 클라이언트 단말기에서 작업 부하 산출 데이터를 측정하는 단계, 및 상기 측정된 작업 부하 산출 데이터에 기초하여 상기 각 클라이언트 단말기의 작업 부하 정보를 계산하는 단계를 통하여 산출되고, 상기 산출된 작업 부하 정보는 인덱싱 서버(350)로 전송된다. 상기 전송된 작업 부하 정보는 소정의 데이터베이스에 상기 각 클라이언트 단말기와 연관하여 각각 저장된다. 이와 같은 구성을 통하여 인덱싱 서버(350)는 각 클라이언트 단말기의 작업 부하 정보를 알 수 있고, 상기 각 클라이언트 단말기는 데이터 수신자 뿐 아니라 데이터 제공자(데이터 제공 단말기)로서 기능한다. 마찬가지로, 데이터 전송 시스템은 클라이언트 단말기(340)의 작업 부하 정보를 산출하여 인덱싱 서버(350)로 전송하여 저장되도록 한다.
작업 부하 정보를 산출하는 기초가 되는 상기 작업 부하 상출 데이터는, 클라이언트 단말기(340)의 CPU의 부하, 하드 디스크의 작업 부하, 클라이언트 단말기(340)에 접속하여 소정의 데이터를 수신하고 있는 타 클라이언트 단말기의 수, 상기 클라이언트 단말기에 접속한 타 클라이언트 단말기에 데이터를 제공한 총 회수, 상기 클라이언트 단말기와 타 클라이언트 단말기 사이의 네트워크 트래픽 중 어느 하나 이상일 수 있으며, 실시예에 따라 일부가 제외되거나 다른 작업 부하 산출 데이터가 포함될 수도 있다.
데이터 전송 시스템은 단계(405)에서 상기 작업 부하 정보에 기초하여 인덱싱 서버(350)으로부터 수신한 접속 정보 중 하나 이상의 접속 정보를 선택한다. 예를 들면, 데이터 전송 시스템이 도 5에 도시한 바와 같은 접속 정보와 작업 부하 정보를 수신한 경우, 데이터 전송 시스템은 데이터 제공 단말기(370c)에 대한 접속 정보를 선택한다. 또는, 데이터 제공 단말기는 하나 이상 선택될 수 있고, 두 개의 접속 정보를 선택하는 경우에는 데이터 제공 단말기(370c)에 대한 접속 정보와 데이터 제공 단말기(370b)에 대한 접속 정보가 선택될 것이다.
접속 정보로서 데이터 제공 단말기(370c)의 접속 정보가 선택된 경우, 데이터 전송 시스템은 단계(406)에서 상기 선택된 접속 정보에 기초하여 데이터 제공 단말기(370c)에 상기 데이터를 요청하고, 단계(407)에서 데이터 제공 단말기(370c)로부터 상기 데이터를 수신하여 클라이언트 단말기(340)의 저장 수단에 저장한다.
이때, 데이터 전송 시스템은 상기 데이터의 전송 속도를 측정하고(단계(408)), 상기 전송 속도가 소정의 임계치 미만인 경우, 데이터 제공 단말기(370c)로부터 상기 데이터의 수신을 중지하고(단계(410)) 데이터 제공 단말기(370c) 외의 데이터 제공 단말기로부터 상기 데이터를 전송 받는다. 상기 소정의 임계치는 소정의 멀티미디어 데이터를 재생하는데 필요한 최소한의 전송 속도를 의미하며, 네트워크의 상황 또는 재생되는 멀티미디어 데이터의 종류에 따라 가변적으로 설정하는 것이 가능하다.
데이터 제공 시스템은 단계(405)로 되돌아가서, 인덱싱 서버(350)로부터 수신한 상기 작업 부하 정보(도 5에 도시함)에 기초하여 데이터 제공 단말기(370c)를 제외하고 작업 부하가 최소인 데이터 제공 단말기(370b)에 대한 접속 정보를 선택하고 데이터의 전송이 완료되기까지 단계(405 내지 410)을 반복한다. 이와 같은 구성을 통하여 데이터의 전송 속도가 임계치 이상인 데이터 제공 단말기로부터 상기 데이터를 제공 받음으로써, 상기 데이터가 전송 완료되기까지 사용자가 기다리는 시간을 감소시킬 수 있다.
즉, 본 실시예에 따른 데이터 전송 방법은, 인덱싱 서버(350)로부터 수신한 작업 부하 정보에 기초하여 데이터 제공 단말기(370c)를 선택함으로써 데이터 전송 속도를 1차적으로 보장하고, 상기 작업 부하 정보에 기초하여 선택된 데이터 제공 단말기라 하더라도 실제로 데이터 전송 속도가 임계치보다 낮은 경우에는 다른 데이터 제공 단말기(370b)로부터 데이터를 수신할 수 있도록 함으로써 데이터 전송 속도를 2차적으로 보장하고 있다.
상술한 예에서와 같이 상기 작업 부하 정보에 기초하여 선택된 데이터 제공 단말기(370c)로부터의 데이터 전송 속도가 타 데이터 제공 단말기(370b)로부터의 전송 속도 보다 떨어지는 주된 이유는 각 클라이언트 단말기에서의 상기 작업 부하 정보의 산출 시기와, 클라이언트 단말기(340)가 상기 작업 부하 정보를 수신하는 시기 사이의 시간상 차이에서 기인한다. 즉, 데이터 제공 단말기(370c)에서 상기 작업 부하 정보를 산출한 후, 데이터 제공 단말기(370c)에서의 작업 부하가 증가한 경우가 발생할 수 있기 때문이다.
상술한 바와 같은 시간상 차이를 최소화하기 위해서 상기 각 클라이언트 단말기는 자신의 작업 부하 정보를 산출하여 인덱싱 서버(350)로 전송하는 단계를 반복하며, 작업 부하 정보의 전송 주기는 클라이언트 단말기와 인덱싱 서버 사이의 네트워크 트래픽과 정확한 작업 부하 정보의 제공을 고려하여 적절하게 선택되어야 할 것이다.
또한, 본 발명의 또 다른 실시예에 따르면, 인덱싱 서버(350)로부터 수신한 각 접속 정보에 기초하여 각 데이터 제공 단말기(370a 내지 370c)로부터 상기 데이터를 각각 수신해 보아도 상기 임계치 이상의 전송 속도로 데이터를 송신하는 데이터 제공 단말기가 존재하지 않는 경우에는, 데이터 전송 시스템은 상기 데이터의 출처인 데이터 제공 서버(360)로부터 직접 상기 데이터를 수신함으로써, 최소한 데이터 제공 서버(360)로부터만 상기 데이터를 수신하는 종래 기술에서와 같은 전송 속도를 보장한다.
데이터 제공 시스템은 단계(411)에서 상기 데이터의 전송이 완료되었는지 여부를 판단하고 상기 데이터의 전송이 완료될 때까지 데이터의 수신 및 저장을 지속적으로 수행한다.
데이터 전송 시스템은 상기 데이터의 수신 및 저장이 완료된 경우 단계(412)에서 수신, 저장한 상기 데이터가 멀티미디어 데이터인 경우 상기 멀티미디어 데이터를 재생하여 사용자에게 시각적 또는 청각적으로 제공한다. 상기 데이터가 멀티 미디어 데이터가 아닌 경우에는 단계(412)는 생략될 수 있다. 이때, 본 발명의 또 다른 실시예에 따르면, 상기 멀티미디어 데이터 전체의 수신 완료되지 않은 경우에도, 이미 수신된 멀티미디어 데이터의 일부를 이용하여 재생이 시작된다. 이때에는 상기 수신 속도가 상기 재생 속도 이상인 것이 보장되면 상기 멀티미디어 데이터는 소리 또는 영상의 끊김 등의 문제 없이 재생될 수 있다.
본 발명의 또 다른 실시예에 따르면, 데이터 전송 시스템은 상기 저장 수단에 저장되어 있는 데이터를 식별하기 위한 데이터 식별자를 인덱싱 서버(350)로 전송하여 인덱싱 서버(350)에서 상기 데이터를 저장하고 있는 데이터 제공 단말기를 파악될 수 있도록 한다. 클라이언트 단말기(340)는 타 클라이언트 단말기에 대해서는 데이터 제공 단말기로서 기능하게 되므로, 데이터 제공 시스템은 클라이언트 단말기(340)의 상기 저장 수단에 저장되어 있는 데이터의 종류를 인덱싱 서버(350)에 알려줄 필요가 있다.
이를 위해, 데이터 제공 시스템은 단계(413)에서 상기 저장 수단에 저장된 데이터의 변동 사항을 추적하고, 단계(414, 415 및 416)에서 상기 변동 사항을 감지한 경우 상기 저장 수단에 저장되어 있는 상기 데이터를 검색하여 상기 검색된 데이터에 해당하는 데이터 식별자를 인덱싱 서버(350)로 전송한다.
즉, 데이터 제공 시스템은 상기 저장 수단에 새로운 데이터가 저장되거나 저장되어 있던 기존의 데이터가 삭제될 때마다 이를 감지하여 상기 저장 수단에 실제 저장되어 있는 데이터에 대응하는 데이터 식별자를 인덱싱 서버(350)으로 전송함으로써 인덱싱 서버(350)가 각 클라이언트 단말기에 제공하는 접속 정보가 더욱 정확 해 지도록 할 수 있다.
한편, 본 발명의 또 다른 실시예에 따르면, 데이터 제공 단말기로부터 수신한 상기 데이터는 클라이언트 단말기(340)의 상기 저장 수단 중 소정의 위치에 소정의 형태로 저장된다. 상기 소정의 폴더는, 웹 브라우저가 MS 익스플로러
Figure 112003030188984-pat00003
의 경우 'Internet Temporary Folder' 거나, 특정 어플리케이션에서 이용되는 디폴트 폴더거나, 사용자가 지정한 폴더일 수 있다.
각 클라이언트 단말기가 본 실시예에 따른 데이터 전송 방법에 따라 수신한 데이터는 일괄적으로 상기 각 클라이언트 단말기의 저장 수단 중 상기 소정의 위치에 소정의 형태로 저장되므로, 데이터 전송 시스템은 상기 데이터에 대응하는 데이터 식별자만을 인덱싱 서버(350)로 전송하면 되고, 상기 데이터가 상기 저장 수단 중 어느 위치에 저장되어 있는지에 대한 위치 데이터를 전송할 필요는 없다.
인덱싱 서버(350)로부터 클라이언트 단말기(340)에 대한 접속 정보를 수신한 타 클라이언트 단말기는 클라이언트 단말기(340)에 접속하여 상기 폴더로부터 상기 데이터를 수신할 수 있다.
본 발명의 또 다른 실시예에 따르면, 상기 데이터는 상기 저장 수단 중 소정의 위치가 아닌 임의의 위치에 임의의 형태로 저장된다. 이러한 경우에는 데이터 전송 시스템은 상기 데이터에 대한 데이터 식별자 뿐만 아니라 상기 저장 수단 중 데이터가 저장되어 있는 위치에 대한 위치 식별자를 함께 인덱싱 서버(350)에 전송한다. 인덱싱 서버(350)는 상기 데이터 식별자에 대해 타 클라이언트 단말기에 클라이언트 단말기(340)에 대한 접속 정보 및 상기 위치 식별자를 제공하고, 타 클라 이언트 단말기는 상기 접속 정보에 기초하여 클라이언트 단말기(340)에 접속하여 상기 위치 식별자를 이용하여 상기 저장 수단 중 상기 위치에서 상기 데이터를 제공 받을 수 있게 된다.
한편, 후술하는 바와 같이 상기 데이터는 소정의 순서 정보가 기록된 헤더를 포함하는 하나 이상의 세그먼트로 구성되고, 상기 저장 수단에 상기 데이터 전체가 아니라 상기 데이터의 일부를 구성하는 세그먼트가 저장되어 있는 경우에는, 클라이언트 단말기(340)는 상기 저장 수단에 저장되어 있는 세그먼트가 구성하는 데이터 식별자 외에 상기 세그먼트를 식별하기 위한 세그먼트 식별자를 함께 인덱싱 서버(350)로 전송하여 상기 세그먼트 식별자를 인덱싱 서버(350)에서 관리되도록 할 수 있다. 상기 세그먼트가 상기 저장 수단 중 임의의 위치에 저장되는 경우에는 상기 위치에 대한 위치 식별자가 더 전송되어야 함을 물론이다.
또한, 본 발명의 또 다른 실시예에 따르면, 상술한 작업 부하 정보는 클라이언트 단말기(340)가 상기 데이터 식별자를 전송하는 경우에 함께 전송될 수 있다. 이와 같은 구성을 통해 인덱싱 서버(350)와 클라이언트 단말기(340) 사이의 데이터 전송 횟수를 감소시킬 수 있다.
도 6은 상술한 바와 같이 데이터 전송 시스템이 인덱싱 서버(350)로 전송하는 정보의 일례를 도시한 도면이다. 실시예에 따라, 위치 식별자 또는 세그먼트 식별자는 전송되지 않는 경우도 있고 작업 부하 정보는 데이터 식별자와 별도로 전송되는 경우도 있다.
본 발명의 또 다른 실시예에 따르면, 데이터 전송 시스템은 도 7에 도시한 바와 같은 단계들을 통해 상기 데이터 식별자를 인덱싱 서버(350)로 전송한다. 단계(701 내지 712)는 도 4에서 도시한 단계(401 내지 412)와 동일하므로 그 도시를 생략하고, 단계(713 내지 단계 720)만을 도시한다.
본 실시예에 따르면, 데이터 전송 시스템은 단계(713)에서 최후로 인덱싱 서버(350)로 데이터 식별자를 전송한 이후 소정의 기간이 경과했는지 여부를 판단하고, 상기 기간이 경과한 경우에는 단계(714)에서 상기 저장 공간에 저장되어 있는 데이터를 검색하고, 단계(715)에서 상기 검색된 데이터에 해당하는 데이터 식별자를 인덱싱 서버(350)로 전송한다.
즉, 본 실시예에 따른 데이터 전송 시스템은 '주기적으로' 상기 저장 수단에 저장되어 있는 데이터를 검색하여 검색된 데이터에 대한 데이터 식별자를 전송하는 방식으로 인덱싱 서버(350)에 저장되는 접속 정보에 대한 갱신이 이루어지도록 한다.
단계(716 내지 720)은 후술하는 단계(417 내지 421)과 동일하므로 그 설명을 생략한다.
본 발명의 또 다른 실시예에 따르면, 데이터 전송 시스템은 단계(417)에서 인덱싱 서버(350)에 대한 클라이언트 단말기(340)의 접속 상태가 변경되는 경우 상기 접속 상태의 변경을 감지한다. 상기 접속 상태에는 클라이언트 단말기(340)가 인덱싱 서버(350)에 대한 '온라인 상태' 또는 '오프라인 상태'를 포함된다.  
데이터 전송 시스템은 상기 접속 상태의 변경이 감지되는 경우, 단계(418)에서 인덱싱 서버(350)로 클라이언트 단말기(340)의 접속 상태의 변경을 보고한다. 이때, 상기 온라인 상태로의 변경의 보고는 데이터 전송 시스템이 인덱싱 서버(350)에 접속한 이후 이루어질 수 있으며, 상기 오프라인 상태로의 변경의 보고는 클라이언트 단말기(340)가 인덱싱 서버(350)로의 접속을 종료하는 제어 신호가 입력된 경우, 상기 제어 신호의 입력 이후 상기 접속을 종료하기 이전에 이루어질 수 있다.
상기 접속 상태의 보고를 받은 인덱싱 서버(350)는 '온라인 상태에서 오프라인 상태로'의 변경을 보고 받은 경우에는 클라이언트 단말기(340)는 데이터 제공 단말기로서 기능할 수 없음을 인식하고(예를 들면, 클라이언트 단말기(340)에 대한 접속 정보를 삭제함), '오프라인 상태에서 온라인 상태로'의 변경을 보고 받은 경우에는 클라이언트 단말기(340)가 데이터 제공 단말기로 기능할 수 있음을 인식한다(예를 들면, 소정의 데이터 식별자에 대응하는 접속 정보에 클라이언트 단말기(340)에 대한 접속 정보를 추가한다).
또한, 본 발명의 또 다른 실시예에 따르면, 데이터 전송 시스템은 단계(419)에서 '오프라인 상태에서 온라인 상태로' 변경을 감지한 경우에는, 상기 저장 공간에 저장되어 있는 데이터를 검색하고, 상기 검색된 데이터에 해당하는 데이터 식별자를 인덱싱 서버(350)로 전송한다(단계(420, 421)).
따라서, 상술한 바와 같이 상기 저장 수단에 저장된 데이터의 변동 사항을 감지한 경우 상기 저장 공간에 저장되어 있는 데이터에 대한 데이터 식별자를 전송하거나, 또는 주기적으로 저장 공간에 저장되어 있는 데이터에 대한 데이터 식별자를 전송하는 것 외에도, 데이터 전송 시스템은 클라이언트 단말기(340)가 인덱싱 서버(350)에 대해 오프라인 상태에서 온라인 상태로 변경되는 경우 그 상태에서 상기 저장 공간에 저장되어 있는 데이터에 대한 데이터 식별자를 인덱싱 서버(350)에 전송함으로써, 인덱싱 서버(350)에서 더욱 정확한 접속 정보가 유지될 수 있도록 한다.
한편, 본 발명의 또 다른 실시예에 따르면, 데이터는 소정의 순서 정보가 기록된 헤더를 포함하는 하나 이상의 세그먼트로 구성되고, 인덱싱 서버(350)는 단계(404)에서 하나 이상의 데이터 제공 단말기에 대한 접속 정보 외에 상기 데이터 제공 단말기에 저장되어 있는 세그먼트를 식별할 수 있는 세그먼트 식별자를 데이터 전송 시스템으로 더 전송한다.
데이터 전송 시스템은 단계(407)에서 상기 접속 정보 및 상기 세그먼트 식별자에 기초하여 데이터 제공 단말기에 상기 세그먼트를 요청하고, 단계(408)에서 하나 이상의 데이터 제공 단말기로부터 상기 세그먼트를 병렬적으로 수신한다. 상기 세그먼트를 병렬적으로 수신한다는 말은, 각 세그먼트를 복수개의 데이터 제공 단말기로부터 각각 수신한다는 의미뿐 아니라, 상기 순서 정보에 관계없이 상기 세그먼트를 수신한다는 의미도 포함할 수 있다.
데이터 제공 시스템은 상기 세그먼트 식별자에 기초하여 상기 수신한 세그먼트를 조합함으로써 상기 데이터를 생성한다. 상기 데이터가 소정의 순서로 수신되어 저장되지 않는 경우에도, 상기 순서 정보에 기초하여 상기 데이터가 조합될 수 있다.
상술한 세그먼트 개념을 이용한 병렬 전송에 대해서는 2003년 1월 28일에 본 출원인과 동일인에 의해 출원된 "멀티미디어 데이터 재생 방법 및 이를 위한 장치(한국특허출원번호 제10-2003-0005614호)"에 상세히 기재되어 있으므로 본 명세서에서는 그 자세한 설명은 생략한다.
이하, 본 발명의 또 다른 실시예에 따른 데이터 전송 방법에 대해 설명한다. 본 실시예에 따른 데이터 전송 방법은 도 3에서의 인덱싱 서버(350) 측의 데이터 전송 시스템에서 수행된다. 도 8은 본 실시예에 따른 데이터 전송 방법을 도시한 흐름도이다.
데이터 전송 시스템은 단계(801)에서 소정의 관리 데이터베이스 수단에 데이터 식별자, 상기 데이터 식별자에 대응하는 접속 정보 및 상기 접속 정보와 연관된 작업 부하 정보를 저장한다. 상기 접속 정보는 상기 데이터 식별자에 의해 식별되는 데이터를 저장하는 데이터 제공 단말기에 대한 접속 정보이고, 상기 작업 부하 정보는 상기 데이터 제공 단말기에서의 작업 부하에 관한 정보이다. 또한, 본 실시예에 있어서 상기 데이터 식별자는 상기 데이터의 출처인 데이터
상기 접속 정보 등은 상기 데이터 제공 단말기로부터 수신하여 저장할 수 있으며, 본 실시예에서 이러한 과정은 주기적으로 이루어진다. 단계(802)에서 상기 데이터 제공 단말기로부터 상기 접속 정보 등을 최종적으로 수신한 시점부터 소정 기간(주기에 해당함)이 경과한 경우, 데이터 전송 시스템은 상기 데이터 제공 단말기로부터 데이터 식별자, 상기 데이터 제공 단말기에 대한 접속 정보 및 상기 데이터 제공 단말기에서의 작업 부하 정보를 수신하며, 데이터 전송 시스템은 단계(801)로 되돌아가서 상기 수신한 데이터 식별자, 접속 정보 및 작업 부하 정보를 이용하여 상기 관리 데이터베이스에 저장되는 정보를 갱신한다.
또한, 상기 기간이 경과했음에도 단계(803)에서의 판단 결과 상기 데이터 식별자, 상기 접속 정보 및 상기 작업 부하 정보가 수신되지 않은 경우에는, 데이터 전송 시스템은 단계(806)에서 상기 데이터 식별자에 대응하는 접속 정보 및 상기 접속 정보와 연관된 작업 부하 정보를 상기 관리 데이터베이스로부터 삭제한다. 이는, 상기 기간이 경과한 후에도 상기 데이터 식별자 등을 전송하지 않는 데이터 제공 단말기는, 데이터 전송 시스템에 대해 오프라인 상태로 되는 등 데이터의 제공(전송) 가능성이 확실하지 않은 상태로 간주하고 상기 접속 정보를 삭제함으로써, 후술하는 클라이언트 단말기(340)에 대한 상기 데이터의 제공을 확실히 하도록 하기 위함이다.
도 9는 상기 관리 데이터베이스에 저장되는 데이터 식별자, 접속 정보 및 상기 접속 정보와 연관된 작업 부하 정보의 일례를 도시한 도면이다. 도 9에서는 작업 부하 정보를 숫자로 표시하고 있으나 이는 예시적인 것에 불과하며 작업 부하 산출 방법에 따라 작업 부하 정보의 표시 방법은 상이해질 수 있다.
한편, 본 발명의 또 다른 실시예에 따르면, 주기적으로 상기 데이터 식별자 등을 수신하는 단계는 인덱싱 서버(350)의 주기적인 전송 요청에 대해 클라이언트 단말기(360)가 응답하여 상기 데이터 식별자 등을 송신함으로써 이루어진다.
또한, 데이터 전송 시스템은 단계(804)에서 데이터 제공 단말기의 접속 상태를 수신하고, 단계(805)에서 상기 접속 상태에 기초하여 상기 데이터 제공 단말기 의 접속 상태가 '오프라인 상태'로 판단되는 경우에는 단계(806)에서 상기 관리 데이터베이스 수단 중에서 상기 데이터 제공 단말기에 대한 접속 정보 및 상기 접속 정보와 연관된 작업 부하 정보를 삭제한다. 이와 같은 구성에 의해, 데이터를 제공할 수 없는 오프라인 상태의 데이터 제공 단말기에 대한 접속 정보를 클라이언트 단말기(340)에 제공하는 경우를 방지할 수 있다.
데이터 전송 시스템은 단계(807)에서 클라이언트 단말기(340)로부터 데이터 식별자를 수신하고, 단계(808)에서 상기 관리 데이터베이스 수단 중에서 상기 데이터 식별자에 대응하는 접속 정보를 검색하고 소정의 기준에 의해 상기 검색된 접속 정보 중에서 하나 이상의 접속 정보를 선택하여 단계(811)에서 클라이언트 단말기(340)로 상기 선택된 접속 정보를 전송한다.
본 발명의 또 다른 실시예에 따르면, 데이터 전송 시스템은 상기 수신한 데이터 식별자에 대응하는 접속 정보를 검색하고 상기 검색된 접속 정보와 연관된 작업 부하 정보에 기초하여 상기 검색된 접속 정보 중에서 하나 이상의 접속 정보를 선택한다.
도 9를 참조하여 예를 들어 설명하면, 클라이언트 단말기(340)로부터 수신한 데이터 식별자가 "http://www.server.com/contents/kor0S75614.mpeg"인 경우, 상기 데이터 식별자에 대응하는 접속 정보가 각각 '61.83.6.167', '211.174.2.167' 및 '211.28.96.8'(본 실시예에서는 상기 접속 정보로 데이터 제공 단말기의 IP 주소를 사용하고 있음)이고, 상기 각 접속 정보와 연관된 작업 부하 정보는 '21', '35' 및 '78'이다. 데이터 전송 시스템은 상기 작업 부하 정보에 기초하여 접속 정보를 선 택하며, 상기 접속 정보를 선택하는 방법으로는, i) 연관된 작업 부하가 최소인 순서로 하나 이상의 접속 정보를 선택하는 방법, ii) 연관된 작업 부하가 소정의 임계치 이상인 접속 정보를 선택하는 방법 등 실시예에 따라 다양한 방법이 사용될 수 있다.
본 실시예에서는 연관된 작업 부하가 최소인 데이터 제공 단말기에 대한 접속 정보인 '60.83.6.167'을 선택하도록 한다.
본 발명의 또 다른 실시예에 따르면, 데이터 전송 시스템은 상기 데이터 제공 단말기와 클라이언트 단말기(340) 사이의 네트워크 상의 거리를 산출하고, 상기 산출된 거리에 기초하여 상기 수신한 데이터 식별자에 기초하여 검색된 상기 접속 정보 중에서 하나 이상의 접속 정보를 선택한다.
상기 네트워크 상의 거리는 물리적 거리를 의미하는 것이 아니라, 논리적으로 안정적인 고속의 데이터 통신을 가능하게 하는지 여부를 판단할 수 있도록 하는 척도를 의미한다. 상기 네트워크 상의 거리는 다양한 요소들을 고려하여 산출될 수 있으며, 각 요소들에 대해서는 소정의 가중치가 부여될 수 있다.
본 발명의 일실시예에 따르면, 상기 요소 중 하나는 IP 맵(IP Map)이다. 일반적으로 국가 혹은 각 ISP(Internet Service Provider)가 사용할 수 있는 IP 주소의 범위가 결정되어 있으며, 상기 IP 맵은 상기 국가 또는 각 ISP와 상기 IP 주소 사이의 연관성을 분석하여 데이터베이스화 한 것이다. 상기 IP 맵에 기초하여, 예를 들면, 한국 지역에서 사용되는 클라이언트 단말기(340)에는 한국 지역에 위치한 데이터 제공 단말기에 대한 접속 정보를 제공하고, 동일한 한국 지역 내에서도 해 당 ISP가 KT
Figure 112003030188984-pat00004
클라이언트 단말기(340)에는 해당 ISP가 KT
Figure 112003030188984-pat00005
인 데이터 제공 단말기에 대한 접속 정보를 제공한다.
또한, 상기 IP 맵은 국가 또는 ISP와 같은 거시적인 관점에서뿐만 아니라, 본 실시예에 따른 데이터 전송 방법을 특정 기업 내에서만 사용하고자 하는 경우에는 상기 IP 맵은 본점이나 지점 또는 부서별로 제공될 수도 있다.
또한, 본 발명의 또 다른 실시예에 따르면, 상기 요소 중 하나는 동일 랜(LAN) 상의 클라이언트인지 여부이다. 동일 랜 상의 클라이언트인지 여부는 IP 브로드캐스트를 이용하여 파악할 수 있으므로, 동일 네트워크 상에 위치하는 클라이언트를 우선적으로 선택하도록 할 수 있다.
또한, 본 발명의 또 다른 실시예에 따르면, 상기 요소 중 하나는 클라이언트 단말기(340)와 데이터 제공 단말기 사이의 홉(hop) 수이다. 홉 수라 함은 네트워크 상에서 라우터 등의 장치를 몇 번 경유하는지에 관한 것이다. 상기 홉 수가 많을수록 상기 네트워크 상의 거리를 멀게 산출할 수 있다. 이러한 홉 수 뿐 아니라 기지의 다양한 라우팅 프로토콜에 입각한 네트워크 상의 거리를 산출하여 가장 가까운 클라이언트를 우선적으로 선택하도록 할 수 있다.
한편, 상술한 각 요소에 의해 측정된 네트워크 상의 거리와 무관하게, 실제로 클라이언트 단말기(340)와 선택된 데이터 제공 단말기 사이의 실제 데이터 전송 속도가 중요하므로, 본 발명의 또 다른 실시예에 따르면, 클라이언트 단말기(340)는 인덱싱 서버(350)로부터 수신한 접속 정보에 기초하여 상기 접속 정보에 해당하는 각 데이터 제공 단말기와의 데이터 전송 속도를 측정하여(이때, 상기 데이터가 아닌 테스트용 데이터를 사용하여 상기 데이터 전송 속도를 측정할 수 있음), 그 측정 결과에 따라 상기 데이터를 제공 받을 데이터 제공 단말기를 최종적으로 선택할 수 있다.
즉, 데이터 제공 단말기를 선택하는 방법에는 상술한 바와 같이 i) 클라이언트 단말기(340)와 데이터 제공 단말기 사이의 네트워크 상의 거리에 기초하여 선택하는 방법, ii) 테스트 데이터 등을 이용하여 클라이언트 단말기(340)와 데이터 제공 단말기 사이의 실제 데이터 전송 속도를 측정하고 상기 데이터 전송 속도에 기초하여 선택하는 방법, 또는 iii) 상기 i) 및 ii)의 방법을 함께 사용하는 방법 등 다양한 방법이 적용될 수 있다.
데이터 제공 시스템은 상술한 방법에 의해 데이터 제공 단말기가 선택되는 경우 단계(811)에서 상기 데이터 제공 단말기에 대한 접속 정보를 클라이언트 단말기(340)로 전송한다.
상기 접속 정보를 제공 받은 클라이언트 단말기(340)는 상기 접속 정보를 이용하여 상기 데이터 제공 단말기에 접속하여 상기 데이터를 수신할 수 있게 된다.
본 발명의 또 다른 실시예에 따르면, 상기 데이터가 유료 데이터인 경우 데이터 전송 시스템은 단계(809)에서 소정의 과금 시스템으로부터 상기 데이터에 대한 과금 정보를 수신하고, 단계(810)에서 상기 과금 정보에 기초하여 상기 데이터에 대한 결제가 완료됐는지 여부를 판단한다. 판단 결과, 상기 데이터에 대한 결제가 완료된 경우에는, 데이터 전송 시스템은 바로 단계(812)에서 상기 데이터에 대한 접속 정보를 클라이언트 단말기(340)로 전송하고, 상기 데이터에 대한 결제가 이루어지지 않은 경우에는 상기 데이터에 대한 결제를 수행하도록 하는 단계(811)를 거친 후 단계(812)를 수행한다.
상기 데이터에 대한 결제를 수신해야 하는 주체는 실시예에 따라 상기 전자 우편을 송신하는 송신인이 될 수도 있고, 상기 데이터 식별자를 이용하여 상기 데이터를 수신하는 수신인이 될 수도 있다.
따라서, 상기 데이터를 클라이언트 단말기(340)에 전자 우편을 이용하여 전송하고자 하는 전자 우편 송신자에게 상기 유료 데이터에 대한 결제를 수행하도록 유도할 수 있다.
한편, 단계(809, 810)은 단계(807)에서 상기 데이터 식별자를 수신한 이후에만 수행되면 되고, 상기 데이터에 대한 결제가 이루어지지 않은 경우에는 단계(808)을 수행하지 않도록 함으로써 데이터 전송 시스템에서의 작업량을 감소시킬 수 있다.
이상, 상기 전자 우편을 수신하는 클라이언트 단말기(340)에서 수행되는 구성을 설명하였다. 이하에서는 상기 데이터 식별자를 포함하는 상기 전자 우편을 송신하는 송신 클라이언트 단말기(310)에서 수행되는 구성을 설명하기로 한다. 물론, 본 실시예에 따른 데이터 전송 방법에 있어서, 클라이언트 단말기(310) 및 송신 클라이언트 단말기(340)는 데이터 식별자를 포함하는 전자 우편의 송신 및 수신을 모두 할 수 있지만, 설명의 편의를 위해 전자 우편을 송신하는 송신 클라이언트 단말기(310)와 상기 전자 우편을 수신하는 클라이언트 단말기(340)로 구분하여 설명한다.
도 10은 본 실시예에 따라 송신 클라이언트 단말기(310) 측에서 수행되는 각 단계를 설명하기 위한 흐름도이다.
단계(1001)에서 송신 클라이언트 단말기(310)는 데이터 제공 서버(360)에 데이터를 업로드하고, 전자 우편에 삽입될 내용의 일부 또는 전부를 송신한다.
데이터 제공 서버(360)는 단계(1002)에서 과금 시스템(도시하지 않음)으로부터 상기 업로드 될 데이터와 관련된 과금 정보를 수신하고, 단계(1003)에서 상기 과금 정보에 기초하여 상기 데이터에 대한 결제가 완료됐는지 여부를 판단한다.
데이터 제공 서버(360)는 판단 결과 상기 데이터에 대한 결제가 완료된 경우에는 단계(1004)에서 송신 클라이언트 단말기(310)로부터 업로드 되는 데이터를 수신하여 저장하고, 단계(1006)에서 상기 내용의 일부 또는 전부를 수신한다. 반대로, 판단 결과 상기 데이터에 대한 결제가 완료되지 않은 경우에는 데이터 제공 서버(360)는 송신 클라이언트 단말기(310)로부터 상기 데이터가 업로드 되는 것을 금지하고(단계1005), 상기 내용의 일부 또는 전부도 수신하지 않는 것이 바람직하다. 또한, 판단 결과 상기 데이터에 대한 결제가 완료되는 경우, 바로 데이터의 업로드를 금지하기 전에 상기 결제에 대한 안내를 제공하는 단계가 더 수행될 수 있다.
즉, 상기 데이터에 대한 결제를 하지 않은 경우에는 상기 데이터의 업로드 자체가 금지되고, 따라서 상기 데이터 식별자를 포함하는 전자 우편을 송부하고자 하는 사용자는 우선 상기 데이터에 대한 결제를 우선 수행해야만 한다.
데이터 제공 서버(360)는 상기 수신한 내용의 일부 또는 전부에 기초하여 키(key)를 생성하고, 상기 생성된 키를 포함하는 데이터 식별자를 생성하여, 송신 클라이언트 단말기(310)로 상기 생성된 데이터 식별자를 송신한다(단계(1007 내지 1009)). 또한, 데이터 제공 서버(360)는 데이터베이스 수단에 상기 생성된 데이터 식별자를 상기 데이터와 연관하여 저장한다.
만약, 상기 키를 포함하지 않는 데이터 식별자를 생성하는 경우, 상기 데이터 식별자를 포함하는 전자 우편을 수신한 클라이언트 단말기(340)의 사용자는 상술한 바와 같은 결제 과정 없이 상기 데이터 식별자를 이용할 수 있게 되는 문제점이 있다. 따라서, 본 실시예에 따른 데이터 전송 방법은 전자 우편의 내용(의 일부 또는 전부)에 기반하여 데이터 식별자를 생성하고, 상기 데이터 식별자는 상기 키를 생성하는 기초가 된 상기 전자 우편의 내용과 함께만 상기 데이터를 수신하기 위한 자료로 사용될 수 있도록 함으로써 상기 문제점을 해결하고 있다.
송신 클라이언트 단말기(310)는 상기 데이터 식별자를 수신하여 전자 우편에 삽입하고, 상기 전자 우편을 클라이언트 단말기(340)로 전송한다(단계1010 내지 1012)).
상기 키를 포함하는 데이터 식별자가 포함된 전자 우편을 수신한 클라이언트 단말기(340)는 상기 전자 우편의 내용이 상기 키와 부합하는지 여부를 판단하고(이때 데이터 제공 서버(360)에서 상기 키를 생성하기 위해 사용한 알고리즘과 동일한 알고리즘을 사용하여 상기 전자 우편의 내용으로부터 상기 키가 생성되는지 여부를 확인하는 방법이 사용될 수 있음) , 판단 결과 상기 전자 우편의 내용이 상기 키에 부합하는 경우에만 인덱싱 서버(350)에 상기 데이터 식별자를 전송하여 데이터 제공 단말기에 대한 정보를 요청하는 단계(405)를 수행한다.
만약, 상기 키와 상기 전자 우편의 내용이 부합하지 않는 경우에는, 정당한 사용자라고 볼 수 없으므로 단계(405)가 수행되지 않도록 하는 것이 바람직하다.
본 발명의 또 다른 실시예에 따르면, 송신 클라이언트 단말기(34)는 상기 데이터를 업로드 하지 않고, 데이터 제공 서버(360)에 이미 저장되어 있는 데이터를 선택할 수 있다.
본 실시예에 따르면, 데이터 제공 서버(360)는 상기 데이터베이스 수단에 저장하고 있는 데이터들의 리스트를 송신 클라이언트 단말기(310)에 제공하고(이때 소정의 웹 페이지에 상기 리스트가 표시되도록 하는 방법이 사용될 수 있음), 송신 클라이언트 단말기(310)의 사용자는 상기 리스트에 기초하여 데이터를 선택할 수 있다.
송신 클라이언트 단말기로부터 데이터의 선택을 입력 받은 데이터 제공 서버(360)는 상기 선택된 데이터와 연관된 데이터 식별자를 생성한다. 이때, 본 발명의 또 다른 실시예에 따르면, 데이터 제공 서버(360)는 상기 과금 시스템으로부터 상기 데이터에 대한 과금 정보를 수신하고 상기 과금 정보에 기초하여 상기 데이터에 대한 결제가 완료됐는지 여부를 판단하여, 상기 데이터에 대한 결제가 완료된 경우에만 상기 선택된 데이터와 연관된 데이터 식별자를 생성한다. 따라서, 본 실시예에 따른 데이터 전송 방법을 이용하고자 하는 사용자는 해당하는 데이터에 대한 결제를 수행해야 한다.
또한, 본 발명의 또 다른 실시예에 따르면, 송신 클라이언트 단말기(310)는 상기 데이터 식별자를 삽입하여 송신하고자 하는 전자 우편의 내용의 일부 또는 전 부를 데이터 제공 서버(360)로 송신하고, 데이터 제공 서버(360)는 상기 내용의 일부 또는 전부를 수신하고 이에 기초하여 키를 생성한다. 또한 데이터 제공 서버(360)는 상기 데이터와 연관되고 상기 생성된 키를 포함하는 데이터 식별자를 생성한다.
상술한 바와 같이 생성된 데이터 식별자는 송신 클라이언트 단말기(310)로 송신되고, 송신 클라이언트 단말기(310)는 상기 데이터 식별자를 상기 전자 우편에 포함시켜 클라이언트 단말기(340)로 송신한다.
상기 키를 포함하는 데이터 식별자가 포함된 전자 우편을 수신한 클라이언트 단말기(340)에서 수행되는 각 단계는 이미 설명했으므로 그에 대한 설명은 생략한다.
한편, 송신 클라이언트 단말기(310)는 임의의 전자 우편 클라이언트 프로그램을 사용하여 본 실시예에 따른 데이터 전송 방법을 수행할 수 있다. 따라서, 사용자는 임의의 전자 우편 클라이언트 프로그램에서 작성하는 전자 우편에 상기 데이터 식별자를 삽입하기만 하면 되고, 상기 전자 우편 클라이언트 프로그램에 별도의 기능이 구현되어 있을 필요는 없다.
이하, 본 발명의 또 다른 실시예에 따른 데이터 전송 방법에 대해 설명한다. 본 실시예에 따른 데이터 전송 방법은 인덱싱 서버(350) 측의 데이터 전송 시스템에서 수행되며, 소정의 데이터를 구성하는 세그먼트 단위로 데이터의 저장, 전송 등이 수행되는 것에 특징이 있다.
데이터 전송 시스템은 소정의 관리 데이터베이스 수단에 데이터 식별자, 상기 데이터 식별자와 연관된 세그먼트 식별자, 및 상기 세그먼트 식별자에 대응하는 접속 정보를 저장한다. 상기 세그먼트 식별자는 상기 데이터를 구성하는 세그먼트를 식별하지 위한 식별자이고, 상기 세그먼트는 소정의 순서 정보를 기록한 헤더를 포함할 수 있다. 상기 접속 정보는 상기 세그먼트를 저장하는 데이터 제공 단말기에 대한 접속 정보이다.
데이터 전송 시스템은 클라이언트 단말기(340)로부터 데이터 식별자를 수신하고, 상기 관리 데이터베이스 수단 중에서 상기 수신한 데이터 식별자와 연관된 세그먼트 식별자를 검색한다. 또한, 데이터 전송 시스템은 상기 검색된 세그먼트 식별자 및 상기 세그먼트 식별자에 대응하는 접속 정보를 클라이언트 단말기(340)로 전송한다.
상기 세그먼트 식별자 및 상기 접속 정보를 수신한 클라이언트 단말기(340)는 상기 접속 정보에 기초하여 상기 데이터 제공 단말기에 접속하여 상기 세그먼트 식별자에 대응하는 세그먼트를 수신한다. 클라이언트 단말기(340)는 상기 세그먼트 식별자 및 상기 접속 정보에 기초하여 상기 세그먼트를 상기 데이터 제공 단말기로부터 병렬적으로 수신할 수 있으므로 상기 데이터를 하나의 데이터 제공 단말기로부터 수신하는 경우에 비해 그 전송 시간이 짧아진다.
한편, 이상 전자 우편을 통해 데이터를 제공하는 경우에 대해 설명했으나, 웹 페이지의 배경 음악 등으로 사용하기 위한 데이터를 제공하기 위해 유사한 개념이 사용될 수 있다.
즉, 자신의 홈 페이지의 배경 음악, 배경 이미지 등으로 사용하고자 하는 데이터를 수신하고자 하는 사용자는 데이터 제공 서버(360)에 저장되어 있는 데이터들의 리스트 중에서 데이터를 선택하고, 상기 선택에 응답하여 데이터 제공 서버(350)로부터 상기 데이터와 연관하여 생성된 데이터 식별자를 수신한다.
상기 사용자는 상기 데이터 식별자를 인덱싱 서버(360)로 송신하여 상술한 바와 같은 접속 정보를 제공 받는다(이때, 상기 접속 정보와 연관된 작업 부하 정보를 더 제공 받을 수 있다). 상기 사용자는 상기 접속 정보에 기초하여 데이터 제공 단말기로부터 상기 데이터 식별자와 연관된 데이터를 수신한다. 따라서, 데이터 제공 서버(360)에 과도한 부하가 걸리는 것을 방지하면서 상기 사용자에게 빠른 속도로 상기 데이터가 제공되도록 할 수 있다.
또한, 본 발명은 상술한 각 실시예에 따른 데이터 전송 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체를 제공한다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
한편, 도 11은 본 발명에 따른 데이터 전송 시스템 등을 구성하는 데 채용될 수 있는 범용 컴퓨터 시스템의 내부 블록도이다.
컴퓨터 시스템(1100)은 램(RAM: Random Access Memory)(1102)과 롬(ROM: Read Only Memory)(1103)을 포함하는 주기억장치와 연결되는 하나 이상의 프로세서(1101)를 포함한다. 프로세서(1101)는 중앙처리장치(CPU)로 불리기도 한다. 본 기술분야에서 널리 알려져 있는 바와 같이, 롬(1103)은 데이터(data)와 명령(instruction)을 단방향성으로 CPU에 전달하는 역할을 하며, 램(1102)은 통상적으로 데이터와 명령을 양방향성으로 전달하는 데 사용된다. 램(1102) 및 롬(1103)은 컴퓨터 판독 가능 매체의 어떠한 적절한 형태를 포함할 수 있다. 대용량 기억장치(Mass Storage)(1104)는 양방향성으로 프로세서(1101)와 연결되어 추가적인 데이터 저장 능력을 제공하며, 상기된 컴퓨터 판독 가능 기록 매체 중 어떠한 것일 수 있다. 대용량 기억장치(1104)는 프로그램, 데이터 등을 저장하는데 사용되며, 통상적으로 주기억장치보다 속도가 느린 하드디스크와 같은 보조기억장치이다. CD 롬(1106)과 같은 특정 대용량 기억장치가 사용될 수도 있다. 프로세서(1101)는 비디오 모니터, 트랙볼, 마우스, 키보드, 마이크로폰, 터치스크린 형 디스플레이, 카 드 판독기, 자기 또는 종이 테이프 판독기, 음성 또는 필기 인식기, 조이스틱, 또는 기타 공지된 컴퓨터 입출력장치와 같은 하나 이상의 입출력 인터페이스(1105)와 연결된다. 마지막으로, 프로세서(1101)는 네트워크 인터페이스(1107)를 통하여 유선 또는 무선 통신 네트워크에 연결될 수 있다. 이러한 네트워크 연결을 통하여 상기된 방법의 절차를 수행할 수 있다. 상기된 장치 및 도구는 컴퓨터 하드웨어 및 소프트웨어 기술 분야의 당업자에게 잘 알려져 있다.
상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있다.
본 발명에 따르면, 전자 우편을 이용하여 오디오 데이터, 비디오 데이터 등의 멀티미디어 데이터를 포함하여 대용량의 데이터를 상기 전자 우편의 수신자에게 제공할 수 있는 데이터 전송 방법이 제공된다.
또한, 본 발명에 따르면, 상기 데이터의 출처인 데이터 제공 서버 및 네트워크의 부하를 최소화하고 상기 데이터의 전송 시간을 감소시킬 수 있는 데이터 전송 방법이 제공된다.
특히, 본 발명은 뉴스, 교육 자료, 또는 홍보용으로 발송되는 전자 우편, 또는 커뮤니티, 동창회, 기업 내의 공지용 전자 우편과 같이 전자 우편에 삽입 또는 첨부되는 데이터의 내용이 동일 또는 유사한 경우에 상기 데이터 제공 서버의 부하를 감소시키면서 상기 데이터를 다수의 사용자들에게 효율적으로 제공할 수 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.

Claims (34)

  1. 데이터 전송 방법에 있어서,
    클라이언트 단말기가 수신한 전자 우편에 소정의 데이터를 참조하기 위한 데이터 식별자가 포함되어 있는지 여부를 판단하는 단계;
    상기 전자 우편에 상기 데이터 식별자가 포함되어 있는 경우, 소정의 인덱싱 서버에 상기 데이터 식별자를 전송하여 데이터 제공 단말기에 대한 접속 정보를 요청하는 단계 - 상기 데이터 제공 단말기는 상기 데이터 제공 서버, 또는 상기 데이터 제공 서버로부터 상기 데이터를 수신하여 저장하고 있는 클라이언트 단말기임 -;
    상기 인덱싱 서버로부터 하나 이상의 데이터 제공 단말기에 대한 접속 정보, 및 상기 하나 이상의 데이터 제공 단말기와 연관된 작업 부하 정보를 수신하는 단계;
    상기 작업 부하 정보에 기초하여 상기 수신한 접속 정보 중 하나 이상의 접속 정보를 선택하는 단계;
    상기 접속 정보에 대응하는 상기 데이터 제공 단말기에 상기 데이터를 요청하는 단계; 및
    상기 데이터 제공 단말기로부터 상기 데이터를 수신하는 단계
    를 포함하고,
    상기 인덱싱 서버는 상기 클라이언트 단말기와 통신망을 통해 연결되고, 소정의 데이터를 저장하는 데이터 제공 단말기에 대한 접속 정보를 유지하며,
    상기 인덱싱 서버로부터 전송되는 상기 작업 부하 정보는,
    상기 데이터 제공 단말기에서 작업 부하 산출 데이터를 측정하고, 측정된 상기 작업 부하 산출 데이터에 따라 상기 작업 부하 정보를 산출하여 상기 인덱싱 서버로 전송한 것임을 특징으로 하는 데이터 전송 방법.
  2. 제1항에 있어서,
    상기 데이터 식별자는 상기 데이터의 출처인 데이터 제공 서버의 URL 정보를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  3. 삭제
  4. 삭제
  5. 삭제
  6. 제1항에 있어서,
    상기 작업 부하 산출 데이터는,
    상기 클라이언트 단말기의 CPU의 부하, 하드 디스크의 작업 부하, 상기 클라이언트 단말기에 접속하여 소정의 데이터를 수신하고 있는 타 클라이언트 단말기의 수, 상기 클라이언트 단말기에 접속한 타 클라이언트 단말기에 데이터를 제공한 총 회수, 상기 클라이언트 단말기와 타 클라이언트 단말기 사이의 네트워크 트래픽 중 어느 하나 이상인 것을 특징으로 하는 데이터 전송 방법.
  7. 데이터 전송 방법에 있어서,
    클라이언트 단말기가 수신한 전자 우편에 소정의 데이터를 참조하기 위한 데이터 식별자가 포함되어 있는지 여부를 판단하는 단계;
    상기 전자 우편에 상기 데이터 식별자가 포함되어 있는 경우, 소정의 인덱싱 서버에 상기 데이터 식별자를 전송하여 데이터 제공 단말기에 대한 접속 정보를 요청하는 단계;
    상기 인덱싱 서버로부터 하나 이상의 데이터 제공 단말기에 대한 접속 정보, 및 상기 하나 이상의 데이터 제공 단말기와 연관된 작업 부하 정보를 수신하는 단계;
    상기 작업 부하 정보에 기초하여 상기 수신한 접속 정보 중 하나 이상의 접속 정보를 선택하는 단계;
    상기 접속 정보에 대응하는 상기 데이터 제공 단말기에 상기 데이터를 요청하는 단계;
    상기 하나 이상의 데이터 제공 단말기 중에서 선택된 하나 이상의 데이터 제공 단말기로부터 상기 데이터를 수신하는 단계;
    상기 데이터 제공 단말기로부터의 상기 데이터의 전송 속도를 측정하는 단계; 및
    상기 전송 속도가 소정의 임계치 미만인 경우, 상기 데이터 제공 단말기로부터의 수신을 중지하고 그 외의 데이터 제공 단말기로부터 상기 데이터를 수신하는 단계
    를 포함하고,
    상기 인덱싱 서버는 상기 클라이언트 단말기와 통신망을 통해 연결되고, 소정의 데이터를 저장하는 데이터 제공 단말기에 대한 접속 정보를 유지하며,
    상기 인덱싱 서버로부터 전송되는 상기 작업 부하 정보는,
    상기 데이터 제공 단말기에서 작업 부하 산출 데이터를 측정하고, 측정된 상기 작업 부하 산출 데이터에 따라 상기 작업 부하 정보를 산출하여 상기 인덱싱 서버로 전송한 것임을 특징으로 하는 데이터 전송 방법.
  8. 제7항에 있어서,
    상기 전송 속도가 소정의 임계치 미만인 경우, 상기 데이터 제공 단말기로부터의 수신을 중지하고 그 외의 데이터 제공 단말기로부터 상기 데이터를 수신하는 상기 단계는,
    상기 임계치 이상의 전송 속도로 데이터를 전송하는 데이터 제공 단말기가 존재하지 않는 경우, 상기 데이터의 출처인 데이터 제공 서버로부터 상기 데이터를 수신하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  9. 제7항에 있어서,
    상기 전송 속도가 소정의 임계치 미만인 경우, 상기 데이터 제공 단말기로부터의 수신을 중지하고 그 외의 데이터 제공 단말기로부터 상기 데이터를 수신하는 상기 단계는,
    상기 임계치 이상의 전송 속도로 데이터를 전송하는 데이터 제공 단말기가 존재하는 않는 경우, 상기 인덱싱 서버로부터 다른 데이터 제공 단말기에 대한 접속 정보를 수신하는 단계; 및
    상기 접속 정보에 기초하여 상기 다른 데이터 제공 단말기로부터 상기 데이터를 수신하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  10. 제1항에 있어서,
    상기 데이터는 소정의 순서 정보가 기록된 헤더를 포함하는 하나 이상의 세그먼트로 구성되고,
    상기 인덱싱 서버로부터 하나 이상의 데이터 제공 단말기에 대한 접속 정보를 수신하는 상기 단계는,
    상기 인덱싱 서버로부터 하나 이상의 데이터 제공 단말기에 대한 접속 정보, 및 상기 데이터 제공 단말기에 저장되어 있는 세그먼트를 식별하기 위한 세그먼트 식별자를 수신하는 단계를 포함하고,
    상기 접속 정보에 기초하여 상기 데이터 제공 단말기에 상기 데이터를 요청하는 상기 단계는,
    상기 접속 정보 및 상기 세그먼트 식별자에 기초하여 상기 데이터 제공 단말기에 상기 세그먼트를 요청하는 단계를 포함하며,
    상기 데이터 제공 단말기로부터 상기 데이터를 수신하는 상기 단계는,
    상기 하나 이상의 데이터 제공 단말기로부터 상기 세그먼트를 병렬적으로 수 신하는 단계를 포함하고,
    상기 세그먼트 식별자에 기초하여 상기 세그먼트를 조합함으로써 상기 데이터를 생성하는 단계
    를 더 포함하는 것을 특징으로 하는 데이터 전송 방법.
  11. 제1항에 있어서,
    상기 수신한 데이터를 상기 클라이언트 단말기의 저장 수단에 저장하는 단계; 및
    상기 저장 수단에 저장되어 있는 데이터를 식별하기 위한 데이터 식별자를 상기 인덱싱 서버에 전송하는 단계
    를 더 포함하는 것을 특징으로 하는 데이터 전송 방법.
  12. 제11항에 있어서,
    상기 인덱싱 서버로 전송하는 상기 단계는,
    상기 저장 수단에 저장된 상기 데이터의 변동 사항을 추적하는 단계;
    상기 변동 사항을 감지한 경우, 상기 저장 수단에 저장되어 있는 상기 데이터를 검색하는 단계; 및
    상기 검색된 데이터에 해당하는 데이터 식별자를 상기 인덱싱 서버로 전송하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  13. 제11항에 있어서,
    상기 인덱싱 서버로 전송하는 상기 단계는,
    소정의 주기에 따라 상기 저장 공간에 저장되어 있는 데이터를 검색하는 단계; 및
    상기 검색된 데이터에 해당하는 데이터 식별자를 상기 인덱싱 서버로 전송하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  14. 제11항에 있어서,
    상기 인덱싱 서버에 대한 상기 클라이언트 단말기의 접속 상태 - 상기 접속 상태에는 온라인 상태와 오프라인 상태가 포함됨 - 가 변경되는 경우, 상기 접속 상태의 변경을 감지하는 단계; 및
    상기 접속 상태의 변경이 감지되는 경우, 상기 인덱싱 서버로 상기 클라이언트 단말기의 접속 상태의 변경을 보고하는 단계를 더 포함하는 단계를 특징으로 하는 데이터 전송 방법.
  15. 제14항에 있어서,
    상기 인덱싱 서버로 전송하는 상기 단계는,
    상기 인덱싱 서버에 대해 상기 클라이언트 단말기의 접속 상태가 오프라인 상태에서 온라인 상태로의 변경이 감지되는 경우, 상기 저장 공간에 저장되어 있는 데이터를 검색하는 단계; 및
    상기 검색된 데이터에 해당하는 데이터 식별자를 상기 인덱싱 서버로 전송하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  16. 제2항에 있어서,
    소정의 데이터를 상기 데이터 제공 서버로 업로드(Up Load)하는 단계;
    상기 데이터 제공 서버로부터 상기 데이터에 대응하는 데이터 식별자를 수신하는 단계;
    상기 데이터 식별자를 소정의 전자 우편 내에 삽입하는 단계; 및
    소정의 전자 우편 서버를 통하여 상기 전자 우편을 타 클라이언트 단말기로 전송하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  17. 제16항에 있어서,
    상기 데이터 제공 서버에서는,
    소정의 데이터베이스 수단에 상기 업로드 되는 데이터를 수신하여 저장하는 단계;
    상기 데이터와 연관된 데이터 식별자를 생성하는 단계;
    상기 데이터베이스 수단에 상기 데이터 식별자를 상기 데이터와 연관하여 저장하는 단계; 및
    상기 데이터 식별자를 상기 클라이언트 단말기로 송신하는 단계
    가 수행되는 것을 특징으로 하는 데이터 전송 방법.
  18. 제17항에 있어서,
    상기 데이터베이스 수단에 상기 업로드 되는 데이터를 수신하여 저장하는 상기 단계는,
    소정의 과금 시스템으로부터 상기 데이터에 대한 과금 정보를 수신하는 단계;
    상기 과금 정보에 기초하여 상기 데이터에 대한 결제가 완료됐는지 여부를 판단하는 단계;
    상기 데이터에 대한 결제가 완료된 경우 상기 데이터베이스 수단에 상기 업로드 되는 데이터를 수신하여 저장하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  19. 제17항에 있어서,
    상기 데이터 제공 서버로 전자 우편에 삽입되는 내용의 일부 또는 전부를 송신하는 단계를 더 포함하고,
    상기 데이터 제공 서버에서는,
    상기 내용의 일부 또는 전부를 수신하는 단계; 및
    상기 내용의 일부 또는 전부에 기초하여 키(key)를 생성하는 단계가 더 수행되고,
    상기 데이터와 연관된 데이터 식별자를 생성하는 상기 단계는, 상기 데이터와 연관되고 상기 생성된 키를 포함하는 데이터 식별자를 생성하는 단계를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  20. 제2항에 있어서,
    상기 데이터 제공 서버에 데이터의 선택을 입력하는 단계;
    상기 데이터 제공 서버로부터 상기 선택의 입력에 응답하여 데이터 식별자를 수신하는 단계;
    상기 데이터 식별자를 소정의 전자 우편 내에 삽입하는 단계; 및
    소정의 전자 우편 서버를 통하여 상기 전자 우편을 타 클라이언트 단말기로 전송하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  21. 제20항에 있어서,
    상기 데이터 제공 서버에서는,
    상기 클라이언트 단말기로부터 데이터의 선택을 입력 받는 경우, 상기 선택된 데이터와 연관된 데이터 식별자를 생성하는 단계;
    상기 생성된 데이터 식별자를 상기 클라이언트 단말기로 송신하는 단계
    가 수행되는 것을 특징으로 하는 데이터 전송 방법.
  22. 제21항에 있어서,
    상기 선택된 데이터와 연관된 데이터 식별자를 생성하는 상기 단계는,
    소정의 과금 시스템으로부터 상기 데이터에 대한 과금 정보를 수신하는 단계;
    상기 과금 정보에 기초하여 상기 데이터에 대한 결제가 완료됐는지 여부를 판단하는 단계; 및
    상기 데이터에 대한 결제가 완료된 경우 상기 선택된 데이터와 연관된 데이터 식별자를 생성하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  23. 제21항에 있어서,
    상기 데이터 제공 서버로 전자 우편에 삽입되는 내용의 일부 또는 전부를 송신하는 단계를 더 포함하고,
    상기 데이터 제공 서버에서는,
    상기 내용의 일부 또는 전부를 수신하는 단계; 및
    상기 내용의 일부 또는 전부에 기초하여 키(key)를 생성하는 단계가 더 수행되고,
    상기 데이터와 연관된 데이터 식별자를 생성하는 상기 단계는,
    상기 데이터와 연관되고 상기 생성된 키를 포함하는 데이터 식별자를 생성하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  24. 제19항 또는 제23항에 있어서,
    상기 전자 우편에 상기 데이터 식별자가 포함되어 있는 경우, 소정의 인덱싱 서버에 상기 데이터 식별자를 전송하여 데이터 제공 단말기에 대한 접속 정보를 요청하는 상기 단계는,
    상기 데이터 식별자에 포함되어 있는 키에 기초하여 상기 전자 우편의 내용이 상기 키에 부합하는지 여부를 판단하는 단계; 및
    판단 결과, 상기 전자 우편의 내용이 상기 키에 부합하는 경우, 상기 인덱싱 서버에 상기 데이터 식별자를 전송하여 데이터 제공 단말기에 대한 접속 정보를 요청하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  25. 소정의 인덱싱 서버에서 데이터 전송을 제어하는 방법에 있어서,
    소정의 데이터 식별자, 상기 데이터 식별자에 대응하는 접속 정보, 및 작업 부하 정보 상기 접속 정보는 데이터를 저장하는 데이터 제공 단말기에 대한 접속 정보임 를 기록하는 관리 데이터베이스 수단을 유지하는 단계;
    소정의 클라이언트 단말기로부터 데이터 식별자를 수신하는 단계;
    상기 관리 데이터베이스 수단을 참조하여 상기 수신한 데이터 식별자에 대응하는 접속 정보를 검색하는 단계;
    상기 검색된 접속 정보와 연관된 작업 부하 정보에 기초하여, 상기 검색된 접속 정보 중에서 하나 이상의 접속 정보를 선택하는 단계; 및
    상기 선택된 접속 정보를 상기 클라이언트 단말기로 전송하는 단계를 포함하고,
    상기 데이터 제공 단말기는 상기 데이터의 출처인 데이터 제공 서버, 또는 상기 데이터 제공 서버로부터 상기 데이터를 수신하여 저장하고 있는 클라이언트 단말기이고,
    상기 관리 데이터베이스 수단에 기록되는 상기 작업 부하 정보는,
    상기 데이터 제공 단말기에서 작업 부하 산출 데이터를 측정하고, 측정된 상기 작업 부하 산출 데이터에 따라 상기 작업 부하 정보를 산출하여 상기 인덱싱 서버로 전송한 것임을 특징으로 하는 데이터 전송 제어 방법.
  26. 삭제
  27. 제25항에 있어서,
    소정의 데이터 제공 단말기로부터 상기 데이터 제공 단말기의 접속 상태 정보를 입력 받는 단계; 및
    상기 데이터 제공 단말기의 접속 상태가 오프라인 상태인 경우, 상기 관리 데이터베이스 수단으로부터 상기 데이터 제공 단말기에 대한 접속 정보를 삭제하는 단계
    를 더 포함하는 것을 특징으로 하는 데이터 전송 제어 방법.
  28. 제25항에 있어서,
    상기 관리 데이터베이스 수단에 데이터를 식별하기 위한 데이터 식별자, 및 상기 데이터 식별자에 대응하는 접속 정보를 저장하는 단계는,
    소정의 데이터 제공 단말기로부터 데이터 식별자 및 상기 데이터 제공 단말기에 대한 접속 정보를 수신하는 단계; 및
    상기 관리 데이터베이스 수단에 상기 수신한 데이터 식별자 및 상기 접속 정보를 저장하는 단계를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  29. 제28항에 있어서,
    소정의 데이터 제공 단말기로부터 데이터 식별자 및 상기 데이터 제공 단말 기에 대한 접속 정보를 수신하는 단계는,
    상기 데이터 제공 단말기로부터 상기 데이터 식별자 및 상기 데이터 제공 단말기에 대한 접속 정보를 소정 기간마다 수신하는 단계; 및
    상기 관리 데이터베이스 수단에서 상기 접속 정보에 대응하는 데이터 식별자를 상기 수신한 데이터 식별자로 갱신하는 단계
    를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  30. 제29항에 있어서,
    소정의 데이터 제공 단말기로부터 데이터 식별자 및 상기 데이터 제공 단말기에 대한 접속 정보를 수신하는 단계는,
    상기 소정 기간 경과 후에 상기 접속 정보가 수신되지 않는 경우, 상기 관리 데이터베이스 중에서 상기 데이터 식별자에 대응하는 상기 접속 정보를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 데이터 전송 방법.
  31. 제25항에 있어서,
    상기 데이터가 유료 데이터인 경우, 소정의 과금 시스템으로부터 상기 데이터에 대한 과금 정보를 수신하는 단계; 및
    상기 과금 정보에 기초하여 상기 데이터에 대한 결제가 완료됐는지 여부를 판단하는 단계를 더 포함하고,
    상기 검색된 접속 정보를 상기 클라이언트 단말기로 전송하는 단계는, 상기 데이터에 대한 결제가 완료된 경우에만 상기 검색된 접속 정보를 상기 클라이언트 단말기로 전송하는 단계를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  32. 제25항에 있어서,
    상기 데이터 제공 단말기와 상기 클라이언트 단말기 사이의 네트워크 상의 거리를 산출하는 단계;
    상기 산출된 거리에 기초하여 상기 검색된 접속 정보 중에서 소정의 기준에 해당하는 접속 정보를 선택하는 단계를 더 포함하고,
    상기 검색된 접속 정보를 상기 클라이언트 단말기로 전송하는 단계는, 상기 선택된 접속 정보를 전송하는 단계를 포함하는 것을 특징으로 하는 데이터 전송 방법.
  33. 제25항에 있어서,
    데이터 식별자, 상기 데이터 식별자와 연관된 세그먼트 식별자, 및 상기 세그먼트 식별자에 대응하는 접속 정보를 상기 관리 데이터베이스 수단에 더 기록하여 유지하는 단계를 포함하고,
    상기 관리 데이터베이스 수단을 참조하여 상기 수신한 데이터 식별자에 대응하는 접속 정보를 검색하는 상기 단계는, 상기 관리 데이터베이스 수단을 참조하여 상기 수신한 데이터 식별자와 연관된 세그먼트 식별자를 검색하는 단계를 포함하며,
    상기 선택된 접속 정보를 상기 클라이언트 단말기로 전송하는 상기 단계는,
    상기 검색된 세그먼트 식별자 및 상기 세그먼트 식별자에 대응하는 접속 정보를 상기 클라이언트 단말기로 전송하는 단계
    를 포함하고,
    상기 세그먼트 식별자는 상기 데이터를 구성하는 세그먼트를 식별하지 위한 식별자이고, 상기 접속 정보는 상기 세그먼트를 저장하는 데이터 제공 단말기에 대한 접속 정보인 것을 특징으로 하는 데이터 전송 제어 방법.
  34. 제1항 내지 제23항 및 제25항 내지 제33항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020030056700A 2003-08-16 2003-08-16 데이터 전송 방법 KR100572232B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030056700A KR100572232B1 (ko) 2003-08-16 2003-08-16 데이터 전송 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030056700A KR100572232B1 (ko) 2003-08-16 2003-08-16 데이터 전송 방법

Publications (2)

Publication Number Publication Date
KR20030079842A KR20030079842A (ko) 2003-10-10
KR100572232B1 true KR100572232B1 (ko) 2006-04-19

Family

ID=32388534

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030056700A KR100572232B1 (ko) 2003-08-16 2003-08-16 데이터 전송 방법

Country Status (1)

Country Link
KR (1) KR100572232B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160079733A (ko) 2016-06-08 2016-07-06 라온위즈기술 주식회사 사용자 서버를 이용한 파일 제어 시스템 및 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100795835B1 (ko) * 2005-11-09 2008-01-17 문의선 네트워크 상에서 데이터 전송 효율을 제어하는 인덱싱서버의 동작 방법, 상기 데이터를 수신하는 클라이언트단말기의 동작 방법 및 상기 방법을 채용한 인덱싱 서버
KR20090075103A (ko) * 2008-01-03 2009-07-08 주.피어링포탈 인덱싱 서버를 이용한 사용자 규모 파악 및 서비스 이용데이터 분석 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160079733A (ko) 2016-06-08 2016-07-06 라온위즈기술 주식회사 사용자 서버를 이용한 파일 제어 시스템 및 방법

Also Published As

Publication number Publication date
KR20030079842A (ko) 2003-10-10

Similar Documents

Publication Publication Date Title
US8463876B2 (en) Partial object distribution in content delivery network
US8732585B2 (en) Community information updates in a sidebar
JP5090046B2 (ja) コンテンツ管理方法及び装置
US20060112143A1 (en) Method and system to facilitate publishing and distribution of digital media
US20030225796A1 (en) Method and apparatus for peer-to-peer file sharing
US20060282312A1 (en) Advertisements in an alert interface
KR20140067881A (ko) 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법
US20130019149A1 (en) Media Recorder
WO2014137908A1 (en) Apparatus, system, and method for integrating content and content services
WO2012044845A1 (en) Composition of customized presentations associated with a social media application
KR100803580B1 (ko) 동기 멀티미디어 통합언어 포맷을 이용한 전자 음악 배급서비스 시스템 및 그 방법
CN101692238A (zh) 媒体文件的自动选择
CA2448423A1 (en) Method and system for tracking receipt of electronic message
KR20090003405A (ko) 파일 업로드 시스템 및 방법
KR20100048867A (ko) 파일 송신 장치 및 방법, 및 파일 수신 장치 및 방법
US9131005B2 (en) Broker designation and selection in a publish-subscription environment
KR100572232B1 (ko) 데이터 전송 방법
US20090013284A1 (en) Systems and Methods for Communicating Information
JP4543532B2 (ja) 情報通信システム
US20060155759A1 (en) Scalable cache layer for accessing blog content
KR20060122251A (ko) 데이터 스트리밍 전송 방법
JP6217075B2 (ja) 配信方法,配信装置および配信プログラム
JP4952348B2 (ja) コンテンツ推薦装置及びコンテンツ推薦プログラム
WO2006075898A1 (en) Method and system for managing various kinds of keywords by interworking the keywords depending on user authentication
JP2004513405A (ja) クライアント/サーバ・ネットワークでリンク・ファイルを順序付き先行キャッシングするシステム、方法およびプログラム

Legal Events

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

Payment date: 20120413

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20130412

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee