KR100756597B1 - 대용량 콘텐츠 전송을 위한 네트워크 제어시스템 - Google Patents

대용량 콘텐츠 전송을 위한 네트워크 제어시스템 Download PDF

Info

Publication number
KR100756597B1
KR100756597B1 KR1020050053411A KR20050053411A KR100756597B1 KR 100756597 B1 KR100756597 B1 KR 100756597B1 KR 1020050053411 A KR1020050053411 A KR 1020050053411A KR 20050053411 A KR20050053411 A KR 20050053411A KR 100756597 B1 KR100756597 B1 KR 100756597B1
Authority
KR
South Korea
Prior art keywords
content
client
information
channel
server
Prior art date
Application number
KR1020050053411A
Other languages
English (en)
Other versions
KR20060133666A (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 KR1020050053411A priority Critical patent/KR100756597B1/ko
Publication of KR20060133666A publication Critical patent/KR20060133666A/ko
Application granted granted Critical
Publication of KR100756597B1 publication Critical patent/KR100756597B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 대용량 파일이나 동영상 등의 콘텐츠를 콘트롤 서버에 의해 콘텐츠 제공자(제1클라이언트)에서 콘텐츠 전달자(제2클라이언트, 역시 콘텐츠 요청자임)를 통해 각각의 콘텐츠 요청자(제3클라이언트)로 전송할 수 있도록 네트워크를 구성, 효율적으로 유지하고 복구할 수 있는 대용량 콘텐츠 전송을 위한 네트워크 제어시스템에 관한 것이다.
이를 위한 본 발명은, 서버 사이드시스템(10) 엔티티인 데이터베이스 서버(11), 로그인 서버(12), 과금 서버(13)및 콘트롤 서버(14)로 구성되고; 클라이언트 시스템(20)은 각기 데이터 채널이 연결된 다수의 클라이언트(21 - 25)로 구성되며; 상기 콘트롤 서버(14)로부터 상기 각 클라이언트(21 - 25)에 네트워크 제어 채널이 연결되고, 네트워크 제어 알고리즘이 구현된 클라이언트 에이전트는 대용량 콘텐츠 전송이 필요한 서비스를 이용하려는 클라이언트에 연동되는 모듈로 응용 계층에서의 네트워크 제어를 위한 기능을 가지게 된 것을 그 특징으로 한다.
대용량 콘텐츠, 콘텐츠 전송, 네트워크 제어 방법, 네트워크 제어시스템, 네트워크 유지, 네트워크 복구, 콘트롤 서버, 클라이언트 에이전트

Description

대용량 콘텐츠 전송을 위한 네트워크 제어시스템{NETWORK CONTROL SYSTEM FOR MASS CONTENTS TRANSMISSION SERVICE}
도 1 은 본 발명의 실시 예에 관한 대용량 콘텐츠 전송을 위한 네트워크 제어시스템을 도시해 놓은 구성도,
도 2 내지 도 6 은 본 발명의 대용량 콘텐츠 전송을 위한 네트워크 제어시스템을 설명하기 위한 각 처리 시퀀스,
도 7 은 본 발명의 대용량 콘텐츠 전송을 위한 네트워크 제어시스템을 이용한 콘트롤 서버의 백업 콘텐츠 전달자(브로커) 리스트 계산 방법의 구성도이다.
* 도면의 주요 부분에 대한 부호의 설명
10 : 서버 사이드시스템
20 : 클라이언트 시스템
본 발명은 대용량 파일이나 동영상 등의 콘텐츠를 콘트롤 서버에 의해 콘텐츠 제공자(제1클라이언트)에서 콘텐츠 전달자(제2클라이언트, 역시 콘텐츠 요청자임)를 통해 각각의 콘텐츠 요청자(제3클라이언트)로 전송할 수 있도록 네트워크를 구성, 효율적으로 유지하고 복구할 수 있는 대용량 콘텐츠 전송을 위한 네트워크 제어시스템에 관한 것이다.
현재 사용되고 있는 인터넷은 TCP/IP(Transmission Control Protocol/Internet Protocol)프로토콜을 기반으로 하고 있다. 계층3 프로토콜인 IP(Internet Protocol)는 전송 네트워크로부터 응용이 분리되도록 해 줌으로, 사용자들로 하여금 하부 네트워크 기술들과 무관하게 자신들이 선호하는 응용들을 IP 계층상에서 사용할 수 있게 해주고, 응용과 무관하게 IP 계층 아래 다양한 하부 네트워크 기능을 사용할 수 있도록 한다.
가장 광범위하게 사용되는 IP 버전은 흔히 IPv4 라고 표기되는 버전 4인 것이다. 이 IPv4는 견고하고 쉽게 구현할 수 있으며 상호 운용적임이 입증되었고, 인터 네트워크를 오늘날의 인터넷 규모에 해당하는 글로벌 유틸리티까지 확장하는 테스트를 통과했다. 상기 IPv4의 주소체계는 32비트로 표시하며 한 바이트씩 점(.)으로 분리하여 10진수로 나타낸다.
하나의 IP 주소는 크게 네트워크 주소와 호스트 컴퓨터 주소 두 부분으로 나뉘며 네트워크의 크기나 호스트 컴퓨터의 수에 따라 클래스(Class) A, B, C, D, 클래스(Class) E 등급이 있다. 이중 클래스 A, B, C가 일반 사용자에게 부여된다. 상기 클래스 A 는 초/대규모의 네트워크에 할당되는 바, 128개의 사용 가능한 네트워크로써 각 네트워크는 약 16,777,216개의 주소들로 구성된다. 상기 클래스 B 는 대규모 네트워크에 적용이 되며, 약 16,000개의 사용 가능한 네트워크로써 각 네트워 크는 65,536개의 주소들로 구성된다. 상기 클래스 C 는 하나의 네트워크에 적은 수의 컴퓨터를 소유하고 있는 소규모 기관을 위해 설계되었으며, 약 2,097,152개의 사용 가능한 네트워크로써 각 네트워크는 256개의 주소들로 구성된다. 상기 클래스 D는 멀티캐스트 그룹으로도 불리며, 멀티캐스트 패킷을 수신하기 위해서는 멀티캐스트 그룹에 가입해야 한다. 멀티캐스트 방식은 데이터 전송의 목적지가 하나의 호스트가 아니라, 멀티캐스트 그룹(Multicast Group)에 속해 있는 모든 호스트들이 목적지가 된다. 즉, 단 한 번의 데이터 전송으로 여러 클라이언트들에게 데이터를 전달할 수 있게 된다. 서버 측의 한 번의 전송으로 멀티캐스트 그룹에 속한 모든 호스트들이 패킷을 받을 수 있는 데에는 라우터가 멀티캐스트 패킷을 복사하여 멀티캐스트 그룹에 속한 호스트에게 전달한다. 그러나, 현재 인터넷 상의 모든 라우터들이 멀티캐스트를 지원하지 않기 때문에 IPv4 네트워크에서는 완벽한 멀티캐스트 환경을 제공하지 않는다.
한편, IPv4 환경에서 IP 멀티캐스트가 지원되지 않고 있는 현재 원활한 대용량 콘텐츠 전송을 위해 콘텐츠 제공자 측에서는 많은 비용을 들여 전송할 콘텐츠 성격에 맞추어 콘텐츠 전송 네트워크(CDN:Contents Delivery Network) 등의 서버 측 장비를 증설해야 한다. 하지만 투자한 만큼의 수익 모델을 발굴하지 못하는 한계를 드러내고 있다.
여기서, 콘텐츠 전송 네트워크는 일종의 캐시 역할을 할 수 있도록 전체 네트워크 상에 동일한 콘텐츠 내용을 복제하여 대규모 인트라넷 또는 인터넷 상에 분산시켜 놓은 시스템인 것이다.
상기와 같은 문제를 해결하기 위해 네트워크 계층에서의 멀티캐스트를 지원하는 방법과 응용 계층에서 접근하는 방법이 있다. 먼저, 네트워크 계층에서 해결하려는 접근은, 모든 라우터의 모듈 교체를 하지 않는 한 글로벌 인터넷 환경에서 쓰는 데에 제약이 있고, 모듈을 교체하지 않은 라우터에 멀티캐스트 패킷 전송 시 터널링하는 방식으로 해결할 수 있으나 일정 수의 클라이언트만을 수용할 수 있다는 문제점이 있었다.
이와 달리 응용 계층에서 접근하는 방법은, 보다 확장력이 있으나 클라이언트 시스템을 이용하는 방법이기 때문에, 네트워크 구성 및 효율적 유지, 데이터 전송에 있어서 신뢰성 보장의 문제를 해결해야 한다는 문제점이 있었다.
본 발명은 상기와 같은 제반 문제점을 해소하기 위해 발명한 것으로, 클라이언트가 협력, 제1클라이언트인 콘텐츠 제공자의 전송 부하를 분담하여 현 인터넷 환경에서 대용량 콘텐츠 배포를 원활히 할 수 있는 응용 계층에서의 네트워크 제어시스템을 제공하고자 함에 그 목적이 있다.
또한, 본 발명의 다른 목적은, 콘트롤 서버(control server)와 클라이언트 에이전트(client agent)를 통해 물리적인 인터넷 환경을 이용하여 콘텐츠 전송을 위한 응용 계층에서의 클라이언트 간 논리적 네트워크를 구성하고 효율적으로 관리하며 인텔리전트한 복구 방법과 그 시스템을 제공하는 데에 있다.
상기 목적을 달성하기 위한 본 발명은, 서버 사이드시스템(10) 엔티티인 데이터베이스 서버(11), 로그인 서버(12), 과금 서버(13)및 콘트롤 서버(14)로 구성되고; 클라이언트 시스템(20)은 각기 데이터 채널이 연결된 다수의 클라이언트(21 - 25)로 구성되며; 상기 콘트롤 서버(14)로부터 상기 각 클라이언트(21 - 25)에 네트워크 제어 채널이 연결되고, 네트워크 제어 알고리즘이 구현된 클라이언트 에이전트는 대용량 콘텐츠 전송이 필요한 서비스를 이용하려는 클라이언트에 연동되는 모듈로 응용 계층에서의 네트워크 제어를 위한 기능을 가지게 된 것을 그 특징으로 한다.
본 발명의 다른 구체적인 실시 예는, 클라이언트 시스템에서의 사용자(본 발명을 이용하려는 서비스 클라이언트)와 클라이언트 에이전트, 서버 사이드시스템에서의 콘트롤 서버, 데이터베이스 서버, 로그인 서버 및 과금 서버로 네트워크를 구성하여; 로그인 서버에서 사용자 인증 처리하고 콘트롤 서버에서 접속 채널을 관리하는 사용자 인증 처리 시퀀스와; 클라이언트 에이전트에서 콘텐츠 정보 등록과 콘텐츠 제공자 정보 등록을 하고, 콘트롤 서버에서 콘텐츠 채널 생성, 사용자 정보 생성/관리 및 콘텐츠 정보 관리를 하는 콘텐츠 등록 및 콘텐츠 제공자 등록 시퀀스와; 그리고 콘트롤 서버에서 콘텐츠 채널을 검색하여 채널 검색 결과 리스트를 생성하고, 채널을 검색하여 콘텐츠 전달자(제2클라이언트) 리스트 생성과 예약 플래그를 세팅하며, 채널을 갱신하여 네트워크 구성 정보저장, 사용자 정보생성 및 관리, 백업 콘텐츠 전달자(브로커) 리스트 생성을 하는 콘텐츠 요청 처리 시퀀스를 포함한 것을 그 특징으로 한다.
이하, 본 발명의 바람직한 실시 예를 예시도면에 의거하여 상세히 설명한다.
도 1 은 본 발명의 실시 예에 관한 대용량 콘텐츠 전송을 위한 네트워크 제어시스템을 도시해 놓은 구성도로서, 본 발명은 예컨대 대용량 파일이나 동영상 등의 콘텐츠를 콘트롤 서버(14)에 의해 제1클라이언트인 콘텐츠 제공자(21)에서 콘텐츠 전달자(브로커로서 제2클라이언트)(22)를 통해 각 제3클라이언트의 콘텐츠 요청자(23 - 25)들로 전송할 수 있도록 네트워크를 구성, 효율적으로 유지하고 복구할 수 있는 대용량 콘텐츠 전송을 위한 네트워크 제어시스템인 것이다.
전체 시스템의 주요 요소는 크게 서버 사이드 엔티티(SERVER SIDE ENTITY)의 콘트롤 서버(14)와 클라이언트 엔티티(CLIENT ENTITY)인 각각의 클라이언트(21 - 25) 시스템으로 구성되어 있다. 여기서 다섯 대의 클라이언트 컴퓨터를 일례로 하여 설명했지만, 그 이상의 클라이언트 컴퓨터를 네트워크 상에 배치하여 사용해도 좋다.
상기 서버 사이드시스템(10)은 데이터베이스 서버(11), 로그인 서버(12), 과금 서버(13) 및 콘트롤 서버(14)로 구성되고, 상기 클라이언트 시스템(20)은 다수의 클라이언트(21 - 25)로 구성되어 콘트롤 서버(14)의 제어에 의해 각각의 클라이언트 간의 데이터 채널이 연결, 유지되고 있다. 또한, 상기 콘트롤 서버(14)로부터 상기 각 클라이언트(21 - 25)에 네트워크 제어 채널이 연결, 유지되고 있다.
상기 클라이언트 에이전트는 네트워크 관점의 클라이언트/서버 모델에서 서 버 어플리케이션과 정보를 준비하고 교환하는 역할을 수행하는 클라이언트 시스템 부분인 것이다.
본 발명은 응용 계층에서 클라이언트(21 - 25) 간의 논리적 네트워크를 구성하는 방법과, 이렇게 구성된 네트워크를 효율적으로 유지/복구하는 방법의 두 가지 주요 알고리즘으로 구성된다. 상기 네트워크 제어를 담당하는 콘트롤 서버(14)와 클라이언트 에이전트(client agent)에 모든 알고리즘이 구현될 수 있도록 구성되어 있다.
상기 클라이언트 에이전트는 대용량 콘텐츠 전송이 필요한 서비스를 이용하려는 클라이언트에 연동되는 모듈로 응용 계층에서의 네트워크 제어(콘텐츠 제공자 요청, 콘텐츠 요청, 서비스 종료, 네트워크 유지를 위한 정보 및 복구 정보 동기화)를 위한 기능을 가진다. 상기 서버 사이드시스템(10)의 콘트롤 서버(14)는 클라이언트(21 - 25)와 제어 채널을 유지하고 이 채널을 통해 네트워크 구성을 하고, 효율적으로 유지하며 특정한 상황에 네트워크를 복구할 수 있다.
상기 네트워크 제어에 필요한 모든 정보는 네트워크 상황이 변경될 때마다 해당 클라이언트 에이전트와 콘트롤 서버(14) 사이에 양방향으로 동기화한다. 따라서, 상기 클라이언트 에이전트는 해당 클라이언트가 콘트롤 서버와 연결될 때의 어플리케이션 또는 모니터링 하는 소프트웨어 상태라 할 수 있다. 그리고, 예컨대 대용량 파일이나 동영상등을 대용량 콘텐츠로 하여 설명하기로 한다.
상기 클라이언트 시스템(20)에서 클라이언트 에이전트가 탑재된 클라이언트(21 - 25)들은 서비스 상황에 따라 세 가지의 다른 논리적인 별칭을 갖는다. 콘텐츠 제공자로 작동하는 제1클라이언트(21)는 콘텐츠 제공자 또는 발행자(content publisher)라 부르고, 그 하위에서 콘텐츠를 전송 받으며 다른 클라이언트에게 서비스(라우팅) 하는 제2클라이언트(22)는 콘텐츠 전달자(content broker)라 부르며, 가장 하위에서 콘텐츠를 전송받기만 하는 클라이언트들(23 - 25)은 제3콘텐츠 요청자(content subscriber)라 명명하고 있다. 상기 콘텐츠 전달자(content broker)는 콘텐츠 요청자(content subscriber)의 개념을 포함한다.
도 2 내지 도 6 은 본 발명의 대용량 콘텐츠 전송을 위한 네트워크 제어시스템을 설명하기 위한 각 처리 시퀀스로서, 도 1 에 도시된 클라이언트 시스템의 클라이언트와 클라이언트 에이전트, 서버 사이드시스템의 콘트롤 서버, 데이터베이스 서버, 로그인 서버 및 과금(BILLING) 서버로 네트워크를 구성하고 있다.
상기 시퀀스는 단계로서 소프트웨어적인 처리과정을 명칭하고 있는 바, 단일노드에서 이뤄지는 것만을 의미하는 것이 아니고 클라이언트 에이전트와 콘트롤 서버의 알고리즘을 설명하는 것이다.
도 2 는 사용자 인증 처리 시퀀스이고, 도 3 은 콘텐츠 등록 및 콘텐츠 제공자등록 시퀀스이며, 도 4 는 콘텐츠 요청 처리 시퀀스이고, 도 5 는 콘텐츠 제공자의 종료 처리 시퀀스이며, 도 6 은 콘텐츠 전달자(브로커)의 종료 처리 시퀀스를 나타내고 있다.
도 2 에 도시된 사용자 인증 처리 시퀀스는, 사용자가 본 발명의 네트워크 제어시스템을 이용하기 위해서는 로그인 서버로부터 사용자 인증(LOGIN)을 받아야 한다. 상기 로그인 서버는 사용자의 접속 로그를 데이터베이스(DB) 서버의 테이블에 관리하고 이후 과금 시스템과 연동한다. 인증의 절차를 마친 사용자는 콘트롤 서버와 사용자 측에 있는 에이전트를 이용해 네트워크 제어 정보를 전송할 제어 채널(control channel)을 생성한다.
데이터베이스 서버 내의 사용자 인증 테이블에서 사용자 인증로그는 클라이언트 식별자, 로그인/아웃 시간정보, 로그인/아웃 상태표시를 갖도록 되어 있다.
상기 클라이언트가 로그인 서버에 사용자 인증을 행하게 되면, 이 로그인 서버에서는 데이터베이스 서버로 사용자 로그를 처리하고, 클라이언트로도 사용자 인증의 성공/실패 여부를 행한다. 상기 클라이언트는 사용자 인증이 성공할 경우 에이전트로 제어 채널의 연결을 요청하고, 이 클라이언트 에이전트는 콘트롤 서버로 제어 채널의 연결을 요청한다. 그러면 상기 콘트롤 서버에서는 채널 연결 요청의 승인 여부를 결정하고, 접속 채널을 관리하고 클라이언트로 제어 채널 생성의 성공/실패 여부를 행한다. 따라서, 사용자 인증 처리가 이루어지게 된다.
도 3 에 도시된 콘텐츠 등록 및 콘텐츠 제공자 등록 시퀀스에는, 제1클라이언트로서 콘텐츠 제공자(콘텐츠 발행자) 클라이언트는 콘트롤 서버에 콘텐츠에 대한 정보와 자신이 다른 클라이언트에게 서비스할 수 있는 정보(라우팅 카운트)를 전송하여 콘텐츠 제공자임을 등록한다.
상기 콘트롤 서버는 이 정보로 콘텐츠 채널을 생성하고, 이 채널에 콘텐츠 정보와 콘텐츠 제공자의 정보를 저장, 관리한다. 그리고, 콘텐츠 채널 생성 정보도 데이터베이스(DB) 서버의 콘텐츠 등록 테이블로 관리하여 과금 시스템과 연동한다. 상기 콘트롤 서버의 처리를 마치면 상기 콘텐츠 제공자에게 콘텐츠 등록 결과와 함께 채널 식별자(CID)를 전송하게 되고, 이후 다른 사용자가 콘텐츠 검색을 할 때 채널 검색 대상이 된다.
데이터베이스 서버 내의 콘텐츠 등록 테이블에서 콘텐츠 등록 로그는 콘텐츠 제공자 식별자, 콘텐츠 등록 날짜, 콘텐츠 등록 시간, 콘텐츠 채널 식별자(CID) 및 전송 상태(시작/종료)를 갖도록 되어 있다.
콘텐츠 제공자인 제1클라이언트는 클라이언트 에이전트로 콘텐츠 제공자 정보와 콘텐츠를 등록을 알리고, 이 클라이언트 에이전트는 콘트롤 서버로 콘텐츠 정보를 등록하고 콘텐츠 제공자 정보를 등록하며 클라이언트 서비스 카운트(라우팅 카운트(routing count))를 유지한다. 그러면, 이 콘트롤 서버는 콘텐츠 정보 생성, 사용자 정보 생성/관리, 콘텐츠 정보 관리가 이루어진다. 상기 콘트롤 서버는 데이터베이스 서버로 콘텐츠 정보를 저장하고 콘텐츠 제공자 정보를 저장한다. 또한, 클라이언트로 콘텐츠 채널식별자(CID)를 전송하고 콘텐츠제공자의 등록 성공/실패 결과 값을 전송한다.
도 4 에 도시된 콘텐츠 요청 처리 시퀀스에는, 클라이언트의 콘텐츠 요청 처리과정은 클라이언트가 검색할 콘텐츠 키워드를 콘트롤 서버에 전송하여 시작한다. 이 콘트롤 서버는 키워드를 이용하여 콘텐츠 채널의 콘텐츠 이름을 부분 문자열 검색하고, 검색 결과를 콘텐츠 채널 식별자(CID)와 콘텐츠 정보로 매핑된 리스트로 생성하여 클라이언트 측으로 전송한다.
콘텐츠 요청자인 제3클라이언트는 전달받은 리스트 중에 하나의 콘텐츠를 선택하여 그 정보(콘텐츠 채널 식별자(CID))를 콘트롤 서버로 전송하고, 콘트롤 서버는 전송된 콘텐츠 채널 식별자(CID)를 기반으로 채널 검색을 하여 클라이언트가 서비스 받을 콘텐츠 전달자(브로커로서 제2클라이언트) 리스트를 생성하며, 선택된 콘텐츠 전달자에는 예약 플래그를 세팅하여 해당 콘텐츠 전달자(브로커)가 서비스할 수 있는 라우팅 카운트 이하의 숫자로 서비스할 수 있도록 유지한다.
클라이언트 에이전트는 전송받은 콘텐츠 전달자(브로커) 리스트를 이용하여 모든 콘텐츠 전달자와의 응답 속도를 측정하여 최적의 콘텐츠 전달자를 선택하고, 해당 전달자로 콘텐츠 전송 서비스를 요청한다. 상기 클라이언트 에이전트는 서비스 받는 콘텐츠 전달자(브로커) 정보와 자신이 콘텐츠 전달자로 동작할 때 필요한 정보를 콘트롤 서버로 전송하여 사용자(자기 자신)의 정보를 생성하고 관리하며, 네트워크 구성 정보를 갱신하고 백업 콘텐츠 전달자(브로커) 리스트를 생성한다.
콘트롤 서버는 데이터베이스(DB) 서버의 채널 트랜잭션 테이블에 네트워크 구성 정보 및 서비스 상황을 저장하여 과금 시스템과 연동하고, 클라이언트 에이전트에 백업 콘텐츠 전달자(브로커) 리스트와 전송 결과를 전송하여 해당 클라이언트에게 전송하는 콘텐츠 전달자가 비정상적으로 종료했을 경우 콘텐츠 전송 서비스를 요청하게 하여 능동적이고 빠른 응답 속도를 보장한다.
데이터베이스 서버 내의 채널 트랜잭션 테이블에서 채널 트랜잭션 로그는 클라이언트 식별자, 채널 접속 날짜, 채널 접속 시간, 콘텐츠 채널 식별자(CID), 트랜잭션 타입(전송/종료/이동) 및 콘텐츠 전달자(브로커) 식별자를 갖도록 되어 있다.
도 5 에 도시된 콘텐츠 제공자의 종료 처리 시퀀스에는, 클라이언트의 콘텐츠 전송 서비스 종료 요청은 콘텐츠 제공자와 클라이언트(콘텐츠 전달자 포함)에 따라 처리 과정이 다른데, 먼저 콘텐츠 제공자의 경우에는 서비스 종료 메시지를 전송하면 콘트롤 서버에서 해당 콘텐츠 채널을 검색하여 서비스 종료 처리를 하고 채널 정보를 삭제한다.
즉, 콘텐츠 제공자인 제1클라이언트는 에이전트로 서비스 종료 메시지를 보내면, 이 클라이언트 에이전트는 콘트롤 서버로 서비스 종료 메시지를 보낸다. 그러면, 이 콘트롤 서버는 콘텐츠 채널을 검색하여 서비스 종료를 처리한 다음, 데이터베이스 서버로는 네트워크 구성 정보 및 채널 종료 정보를 저장하고, 클라이언트 에이전트로는 서비스 종료 처리 결과를 전송한다.
도 6 에 도시된 클라이언트(콘텐츠 전달자 포함)의 종료처리 시퀀스에는, 클라이언트(콘텐츠 전달자 포함)가 종료하는 경우에는 클라이언트가 서비스 종료 메시지를 콘트롤 서버에 전송하면, 이 콘트롤 서버에서는 콘텐츠 채널을 검색하고 채널을 검색하여 해당 클라이언트를 찾고 서비스 클라이언트가 없는 경우(순수 클라이언트의 경우)에는 종료 처리를 하고 메시지를 전송한다.
하지만 서비스 클라이언트가 있는 콘텐츠 전달자(브로커)의 경우에는 서비스 클라이언트가 이동할 때까지 종료를 지연시키기 위해 종료 예약 플래그를 세팅하고, 서비스 클라이언트에 이동 메시지를(콘텐츠 전달자(브로커) 리스트 전달) 해당 클라이언트 에이전트에 푸시하여 전달하고 이동 트랜잭션이 종료하는 시점에 해당 콘텐츠 전달자(브로커) 종료를 처리한다.
즉, 콘텐츠 전달자(브로커)는 에이전트로 서비스 종료 메시지를 보내면, 이 클라이언트 에이전트는 콘트롤 서버로 서비스 종료 메시지를 보낸다. 그러면, 이 콘트롤 서버는 콘텐츠 채널을 검색하고 서비스 클라이언트가 있는 경우에는 종료 예약하며, 서비스 클라이언트에게 이동을 명령한다(콘텐츠 전달자 리스트 생성/전 달).
상기 콘트롤 서버는 클라이언트 에이전트로 서비스 종료 처리 결과를 전송하면 이 클라이언트는 서비스 클라이언트가 이동할 때까지 서비스 종료 대기 처리를 하고 서비스 진행을 한다. 상기 콘트롤 서버는 제1서비스 클라이언트(브로커의 클라이언트1)와 제2서비스 클라이언트(브로커의 클라이언트2)로 이동 명령하여 이동할 콘텐츠 전달자(브로커) 리스트를 전달한다. 이 서비스 제1 클라이언트(브로커의 클라이언트1)와 제2서비스 클라이언트(브로커의 클라이언트2)는 콘트롤 서버로 이동 완료 결과를 전송한다(도 4 참조).
상기 콘트롤 서버는 종료 예약된 콘텐츠 전달자의 서비스를 종료하고, 상기 클라이언트 에이전트는 서비스 종료 처리를 진행한다.
도 7 은 본 발명의 대용량 콘텐츠 전송을 위한 네트워크 제어시스템을 이용한 백업 콘텐츠 전달자(브로커) 리스트 계산 방법의 구성도이다. 본 발명에서 클라이언트 에이전트와 콘트롤 서버 측에서 네트워크를 효율적으로 유지하기 위한 알고리즘이 구현되고 있다. 콘트롤 서버(14)는 네트워크 제어 채널을 통해 각각의 클라이언트(21 - 27)와 연결되는 한편, 상기 클라이언트(21 - 27)들 사이에는 데이터 채널이 연결되어져 있다.
상기 클라이언트(21)는 클라이언트 ID : A, 상기 클라이언트(22)는 클라이언트 ID : B, 상기 클라이언트(24)는 클라이언트 ID : C, 상기 클라이언트(25)는 클라이언트 ID : D, 상기 클라이언트(23)는 클라이언트 ID : E, 상기 클라이언트(26)는 클라이언트 ID : F, 상기 클라이언트(27)는 클라이언트 ID : G 를 나타낸다. 도 1 에 도시된 구성도와 동일 부호를 사용하고 동작의 상세한 설명은 생략한다.
먼저, 클라이언트 에이전트 측에서 보면 해당 사용자가 서비스 시작을 콘트롤 서버(14)에 알리면 저장된 콘텐츠 채널의 네트워크 구성을 보고 사용자에게 자신에게 전달하고 있는 콘텐츠 전달자를 제외한 콘텐츠 제공자까지의 모든 콘텐츠 전달자를 백업 콘텐츠 전달자 리스트로 계산하고 클라이언트 에이전트에게 전달하고 저장한다.
예를 들면, 클라이언트 F(26)는 백업 콘텐츠 전달자 정보로 콘텐츠 전달자(브로커) B(22)와 콘텐츠 제공자 A(21)를 가지고 있다. 이 테이블을 이용하여 클라이언트는 콘텐츠 전달자의 종료가 콘트롤 서버를 통하지 않고 콘텐츠 전송이 비정상적으로 종료하였을 경우 상위의 콘텐츠 전달자에게 전송 요청을 하여 능동적인 복구로 빠른 응답 속도를 보장할 수 있다.
클라이언트는 자신의 시스템 및 네트워크 상황에 변동이 있을 때마다 콘트롤 서버(14)에 자신의 정보를 동기화하고, 변동 사항에 맞춰서 클라이언트 서비스 카운트(라우팅 카운트)를 재계산한다. 이때 변경된 서비스 카운트 보다 많은 사용자에게 서비스하고 있는 경우에는 일부 사용자에게 이동 메시지를 푸시하여 전송하게 되며, 서비스 카운트 이하로 데이터 채널을 유지하여 네트워크 효율을 개선한다.
콘트롤 서버 측에서는 사용자의 콘텐츠 요청 시에 클라이언트의 사양과 네트워크 위상을 고려하여 상위의 콘텐츠 전달자 리스트를 전송한다. 전송의 상위부터 클라이언트 사양에 따라 다른 클라이언트 서비스 카운트(라우팅 카운트)를 모두 채우는 식으로 클라이언트의 데이터 전송 계층을 만들도록 유도하여 네트워크의 효율 을 유지한다. 그리고, 클라이언트의 서비스 중지에 따른 네트워크의 효율이 저하될 수 있는 상황이 있기 때문에 주기적으로 채널 별로 네트워크 최적화를 한다.
네트워크 최적화는 각 채널의 상위 콘텐츠 전달자의 서비스 카운트를 채워서 유지하고, 클라이언트 에이전트로 메시지를 푸시(push)하여 클라이언트에게 서비스하는 콘텐츠 전달자(브로커)를 바꿔서 네트워크 효율을 유지한다. 푸시 메시지는 최소의 클라이언트에게 전송하기 위하여 일정 서브 네트워크의 상위 콘텐츠 전달자에게 전송한다.
이상 설명한 바와 같이 본 발명에 의하면, 클라이언트가 협력, 콘텐츠 제공자의 전송 부하를 분담하여 현 인터넷 환경에서 대용량 콘텐츠 배포를 원활히 할 수 있는 응용 계층에서의 네트워크 제어시스템을 제시할 수 있고, 콘트롤 서버와 클라이언트 에이전트를 통해 물리적인 인터넷 환경을 이용하여 콘텐츠 전송을 위한 응용 계층에서의 클라이언트들 간 논리적 네트워크를 구성하고 효율적으로 관리하며 인텔리전트한 복구 방법과 그 시스템을 제공할 수 있다.
본 발명의 대용량 콘텐츠 전송을 위한 네트워크 제어시스템에 대한 기술 사상을 예시 도면에 의거하여 설명했지만, 이는 본 발명의 가장 양호한 실시 예를 예시적으로 설명한 것이지 본 발명의 특허 청구 범위를 한정하는 것은 아니다. 본 발명은 이 기술 분야의 통상 지식을 가진 자라면 누구나 본 발명의 기술 사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.

Claims (9)

  1. (삭제)
  2. (삭제)
  3. (삭제)
  4. (삭제)
  5. 클라이언트 시스템에서 컨텐츠 전송을 위한 서비스 클라이언트와 클라이언트 에이전트, 서버 사이드시스템에서 콘트롤 서버, 로그인 서버 및 과금 서버로 네트워크를 구성하여;
    상기 로그인 서버에서 사용자 인증을 하고 콘트롤 서버에서 접속 채널을 관련하는 사용자 인증처리과정;
    상기 클라이언트 에이전트에서 콘텐츠 정보 등록과 콘텐츠 제공자 정보 등록을 하고, 콘트롤 서버에서 콘텐츠 채널 생성, 상용자 정보 생성/관리 및 콘텐츠 정보관리를 하는 콘텐츠 등록 및 콘텐츠 제공자 등록과정 및;
    상기 콘트롤 서버에서 콘텐츠 채널 검색하여 채널 검색결과 리스트를 생성하고, 해당 채널을 검색하여 콘텐츠 전달자(브로커)리스트 생성과 예약 플래그세팅하며, 클라이언트 구성과 각 시스템 상황 정보를 동기화, 채널을 생신하여 네트워크 구성 정보저장, 사용자 정보 생성 및 관리, 백업 콘텐츠 전달자 리스트 생성을 하는 콘텐츠 요청 처리과정을 포함하는 네트워크 제어시스템에 있어서,
    상기 사용자 인증처리과정은 클라이언트가 로그인 서버에 사용자 인증을 처리하게 되면 이 로그인 서버에서는 데이터베이스 서버로 사용자 로그를 처리하고, 클라이언트로 사용자 인증의 성공/실패 여부를 체크하고;
    상기 클라이언트는 에이전트로 제어 채널의 연결을 요청하고, 이 클라이언트 에이전트는 콘트롤 서버로 제어 채널의 연결을 요청하면 상기 콘트롤 서버에서는 접속채널을 관리하고 클라이언트로 제어 채널 생성의 성공/실패 여부를 통보, 처리한 것을 특징으로 하는 대용량 콘텐츠 전송을 위한 네트워크 제어시스템.
  6. 클라이언트 시스템에서 컨텐츠 전송을 위한 서비스 클라이언트와 클라이언트 에이전트, 서버 사이드시스템에서 콘트롤 서버, 로그인 서버 및 과금서버로 네트워크를 구성하여;
    상기 로그인 서버에서 사용자 인증을 하고 콘트롤 서버에서 접속 채널을 관련하는 사용자 인증처리과정;
    상기 클라이언트 에이전트에서 콘텐츠 정보 등록과 콘텐츠 제공자 정보 등록을 하고, 콘트롤 서버에서 콘텐츠 채널 생성, 상용자 정보 생성/관리 및 콘텐츠 정보관리를 하는 콘텐츠 등록 및 콘텐츠 제공자 등록과정 및;
    상기 콘트롤 서버에서 콘텐츠 채널 검색하여 채널 검색결과 리스트를 생성하고, 해당 채널을 검색하여 콘텐츠 전달자(브로커)리스트 생성과 예약 플래그세팅하며, 클라이언트 구성과 각 시스템 상황 정보를 동기화, 채널을 생신하여 네트워크 구성 정보저장, 사용자 정보 생성 및 관리, 백업 콘텐츠 전달자 리스트 생성을 하는 콘텐츠 요청 처리과정을 포함하는 네트워크 제어시스템에 있어서,
    상기 콘텐츠등록 및 콘텐츠 제공자 등록과정은 콘텐츠 제공자가 에이전트로 콘텐츠 제공자/콘텐츠 등록을 알리고, 이 클라이언트 에이전트는 콘트롤 서버로 콘텐츠 정보를 등록하고 콘텐츠 제공자 정보를 등록하며 타 클라이언트 서비스 카운트(라운딩 카운트)를 저장하고, 이 콘트롤 서버는 콘텐츠 정보 생성, 콘텐츠 제공자 정보 생성/관리, 콘텐츠 정보 관리가 이루어지고, 상기 콘트롤 서버는 데이터베이스 서버로 콘텐츠 정보와 콘텐츠 제공자 정보를 저장하고, 클라이언트로 콘텐츠 채널 식별자(CID)를 전송하고 콘텐츠 제공자의 등록 성공/실패 결과 값을 전송하는 것을 특징으로 하는 대용량 콘텐츠 전송을 위한 네트워크 제어시스템.
  7. 클라이언트 시스템에서 컨텐츠 전송을 위한 서비스 클라이언트와 클라이언트 에이전트, 서버 사이드시스템에서 콘트롤 서버, 로그인 서버 및 과금 서버로 네트워크를 구성하여;
    상기 로그인 서버에서 사용자 인증을 하고 콘트롤 서버에서 접속 채널을 관련하는 사용자 인증처리과정;
    상기 클라이언트 에이전트에서 콘텐츠 정보 등록과 콘텐츠 제공자 정보 등록을 하고, 콘트롤 서버에서 콘텐츠 채널 생성, 상용자 정보 생성/관리 및 콘텐츠 정보관리를 하는 콘텐츠 등록 및 콘텐츠 제공자 등록과정 및;
    상기 콘트롤 서버에서 콘텐츠 채널 검색하여 채널 검색결과 리스트를 생성하고, 해당 채널을 검색하여 콘텐츠 전달자(브로커)리스트 생성과 예약 플래그세팅하며, 클라이언트 구성과 각 시스템 상황 정보를 동기화, 채널을 생신하여 네트워크 구성 정보저장, 사용자 정보 생성 및 관리, 백업 콘텐츠 전달자 리스트 생성을 하는 콘텐츠 요청 처리과정을 포함하는 네트워크 제어시스템에 있어서,
    상기 콘텐츠 요청 처리과정은 콘텐츠 요청자(클라이언트)가 에이전트로 콘텐츠 키워드 검색을 알리고, 이 클라이언트 에이전트는 콘트롤 서버로 콘텐츠 검색을 위하여 검색 키워드를 전송하며, 콘트롤 서버는 콘텐츠 채널을 검색하고 채널 검색 결과 리스트를 생성하고, 상기 클라이언트 에이전트로 채널 검색 결과 리스트를 전송하고;
    상기 클라이언트 에이전트가 콘텐츠를 선택하여 콘트롤 서버로 콘텐츠 채널 식별자를 전송하면 콘트롤 서버는 채널을 검색하여 해당 클라이언트에게 전송 가능한 콘텐츠 전달자(브로커) 리스트를 생성하고 예약 플래그 세팅을 하고, 상기 클라이언트 에이전트로 콘텐츠 전달자 리스트를 전송하며, 상기 클라이언트 에이전트는 전송받은 콘텐츠 전달자 리스트 모두(브로커1, 브로커2, ...)로 응답 속도를 측정하고, 상기 최적의 콘텐츠 전달자(브로커1)로 콘텐츠 전송 서비스를 요청하며;
    상기 클라이언트 에이전트가 콘트롤 서버로 서비스 받은 콘텐츠 전달자(브로커) 정보와 자신의 정보를 전송하고, 콘트롤 서버는 정보를 받아 채널을 갱신하여 네트워크 구성 정보를 저장하고 클라이언트 정보를 생성 및 관리하며 백업 콘텐츠 전달자(브로커) 리스트를 생성하며, 상기 콘트롤 서버는 데이터베이스 서버로 네트워크 구성 정보 및 서비스 트랙잭션 정보를 저장하고, 클라이언트 에이전트로 결과 전송 및 백업 콘텐츠 전달자(브로커) 리스트를 전송하는 것을 특징으로 하는 대용량 콘텐츠 전송을 위한 네트워크 제어시스템.
  8. 클라이언트 시스템에서 컨텐츠 전송을 위한 서비스 클라이언트와 클라이언트 에이전트, 서버 사이드시스템에서 콘트롤 서버, 로그인 서버 및 과금 서버로 네트워크를 구성하여;
    상기 로그인 서버에서 사용자 인증을 하고 콘트롤 서버에서 접속 채널을 관련하는 사용자 인증처리과정;
    상기 클라이언트 에이전트에서 콘텐츠 정보 등록과 콘텐츠 제공자 정보 등록을 하고, 콘트롤 서버에서 콘텐츠 채널 생성, 상용자 정보 생성/관리 및 콘텐츠 정보관리를 하는 콘텐츠 등록 및 콘텐츠 제공자 등록과정 및;
    상기 콘트롤 서버에서 콘텐츠 채널 검색하여 채널 검색결과 리스트를 생성하고, 해당 채널을 검색하여 콘텐츠 전달자(브로커)리스트 생성과 예약 플래그세팅하며, 클라이언트 구성과 각 시스템 상황 정보를 동기화, 채널을 생신하여 네트워크 구성 정보저장, 사용자 정보 생성 및 관리, 백업 콘텐츠 전달자 리스트 생성을 하는 콘텐츠 요청 처리과정을 포함하는 네트워크 제어시스템에 있어서,
    상기 콘텐츠 제공자는 에이전트로 서비스 종료 메시지를 보내면 이 클라이언트 에이전트는 콘트롤 서버로 서비스 종료 메시지를 보내고, 이 콘트롤 서버는 콘텐츠 채널을 검색하여 서비스 종료를 처리한 다음, 데이터베이스 서버로는 네트워크 구성 정보 및 채널 종료 정보를 저장하고, 클라이언트 에이전트로는 서비스 종료 처리 결과를 전송하는 콘텐츠 제공자의 종료 처리과정을 더 포함한 것을 특징으로 하는 대용량 콘텐츠 전송을 위한 네트워크 제어시스템.
  9. 삭제
KR1020050053411A 2005-06-21 2005-06-21 대용량 콘텐츠 전송을 위한 네트워크 제어시스템 KR100756597B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050053411A KR100756597B1 (ko) 2005-06-21 2005-06-21 대용량 콘텐츠 전송을 위한 네트워크 제어시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050053411A KR100756597B1 (ko) 2005-06-21 2005-06-21 대용량 콘텐츠 전송을 위한 네트워크 제어시스템

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020070060911A Division KR20070078755A (ko) 2007-06-21 2007-06-21 대용량 콘텐츠 전송을 위한 네트워크 제어시스템

Publications (2)

Publication Number Publication Date
KR20060133666A KR20060133666A (ko) 2006-12-27
KR100756597B1 true KR100756597B1 (ko) 2007-09-07

Family

ID=37812415

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050053411A KR100756597B1 (ko) 2005-06-21 2005-06-21 대용량 콘텐츠 전송을 위한 네트워크 제어시스템

Country Status (1)

Country Link
KR (1) KR100756597B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102047764B1 (ko) * 2013-12-12 2019-11-25 한국전자통신연구원 피드백 정보를 선택적으로 전송하기 위한 mmt 시그널링 메시지 처리 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040110957A (ko) * 2003-06-18 2004-12-31 (주)켐파크 피투피(피어 투 피어) 기술을 이용한 웹 컨텐츠를검색하는 방법 및 그 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040110957A (ko) * 2003-06-18 2004-12-31 (주)켐파크 피투피(피어 투 피어) 기술을 이용한 웹 컨텐츠를검색하는 방법 및 그 장치

Also Published As

Publication number Publication date
KR20060133666A (ko) 2006-12-27

Similar Documents

Publication Publication Date Title
US6182224B1 (en) Enhanced network services using a subnetwork of communicating processors
US8799511B1 (en) Synchronizing state information between control units
Hefeeda et al. A hybrid architecture for cost-effective on-demand media streaming
US7684352B2 (en) Distributed storage of routing information in a link state protocol controlled network
JP5016063B2 (ja) 整合性のとれた耐障害性分散ハッシュテーブル(dht)オーバレイネットワーク
JP5227955B2 (ja) 自己統制ネットワークのための分散ハッシュメカニズム
US8423678B2 (en) Resilient network database
US20130322451A1 (en) System and Method for a Context Layer Switch
US20060146999A1 (en) Caching engine in a messaging system
WO2006074109A2 (en) A caching engine in a messaging system
US7095857B2 (en) Key distribution system for protection of route-update notification in micromobility networks
Trossen et al. Towards an information centric network architecture for universal internet access
JPH11313059A (ja) マルチキャスト通信方法及びそのシステム並びにマルチキャスト通信プログラムを記録した記録媒体
Hefeeda et al. On-demand media streaming over the internet
US7246148B1 (en) Enhanced network services using a subnetwork of communicating processors
CN1442987A (zh) 用于大规模并行路由器的冗余机制协议
KR100756597B1 (ko) 대용량 콘텐츠 전송을 위한 네트워크 제어시스템
KR100435985B1 (ko) 투표를 활용한 무정지 서비스 시스템 및 그 시스템에서의정보 갱신 및 제공 방법
Sathiaseelan et al. Information centric delay tolerant networking: an internet architecture for the challenged
KR20070078755A (ko) 대용량 콘텐츠 전송을 위한 네트워크 제어시스템
JP2011150382A (ja) コンテンツ配信システムと方法およびプログラム
KR20040001355A (ko) 멀티미디어 컨텐츠 분배망 구성 방법 및 그를 이용한멀티미디어 컨텐츠 서비스 방법
WO2021005756A1 (ja) コンテンツ配信システム、ユニキャストマルチキャスト変換装置、コンテンツ配信方法及びコンテンツ配信プログラム
US9942311B2 (en) Method and apparatus for transferring content among large clusters of storage devices to achieve a target replication distribution
US6816479B1 (en) Method and system for pre-loading in an NBBS network the local directory database of network nodes with the location of the more frequently requested resources

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
A107 Divisional application of patent
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee