KR100895859B1 - 분산형 멀티미디어 서버 시스템 및 멀티미디어 정보분배방법 - Google Patents

분산형 멀티미디어 서버 시스템 및 멀티미디어 정보분배방법 Download PDF

Info

Publication number
KR100895859B1
KR100895859B1 KR1020077003308A KR20077003308A KR100895859B1 KR 100895859 B1 KR100895859 B1 KR 100895859B1 KR 1020077003308 A KR1020077003308 A KR 1020077003308A KR 20077003308 A KR20077003308 A KR 20077003308A KR 100895859 B1 KR100895859 B1 KR 100895859B1
Authority
KR
South Korea
Prior art keywords
server module
multimedia information
information
memory
divided
Prior art date
Application number
KR1020077003308A
Other languages
English (en)
Other versions
KR20070088476A (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 니폰덴신뎅와 가부시키가이샤
Publication of KR20070088476A publication Critical patent/KR20070088476A/ko
Application granted granted Critical
Publication of KR100895859B1 publication Critical patent/KR100895859B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23103Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • 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
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/232Content retrieval operation locally within server, e.g. reading video streams from disk arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

분산형 멀티미디어 서버 시스템(50)은, 버퍼 서버모듈(21)과 스토리지 서버모듈(31)과 클러스터간 접속 네트워크(51)를 가진다. 버퍼 서버모듈(21)은 스토리지 서버모듈(31) 내의 분할 멀티미디어 정보가 격납된 버퍼 메모리에 관한 정보인 메모리 정보를 바탕으로 스토리지 서버모듈(31)내의 버퍼 메모리로부터 원격 다이렉트 메모리 액세스 기능에 의해 분할 멀티미디어 정보를 취득하는 수단을 구비한다. 스토리지 서버모듈(31)은 버퍼 서버모듈(21)로부터 요구된 분할 멀티미디어 정보를 축적 장치(41)로부터 판독하고, 자신의 모듈내의 버퍼 메모리에 격납하는 수단을 구비한다.
분산형 멀티미디어, 서버모듈, 버퍼, 스토리지, 정보.

Description

분산형 멀티미디어 서버 시스템 및 멀티미디어 정보분배방법 {DISTRIBUTED MULTI-MEDIA SERVER SYSTEM, MULTI-MEDIA INFORMATION DISTRIBUTION METHOD}
본 발명은, 복수의 단말로부터의 요구에 따라, 요구된 멀티미디어 정보를 각 단말에 지체 없이 분배, 또는, 단말로부터 송신된 멀티미디어 정보를 축적하는 것이 가능한 분산형 멀티미디어 서버 시스템 및 멀티미디어 정보분배방법에 관한 것이다.
종래의 분산형 멀티미디어 서버 시스템의 구성 예로서, 특허문헌1 등에 기재된 것이 있다. 도 1에, 이러한 종래의 분산형 멀티미디어 서버 시스템을 나타낸다. 도 1에 나타나 있는 바와 같이, 분산형 멀티미디어 서버 시스템(1)은, 통신 서버 모듈(2), 축적 서버 모듈(3, 4) 및 근거리 통신망(5)을 가지고 있다.
멀티미디어 정보의 축적은 도 2에 나타내는 순서로 행해진다. 통신 서버 모듈(2)이, 단말로부터의 기록 요구와 멀티미디어 정보를 수신함과 아울러 분할하고, 기록 요구를 축적 서버 모듈(3)에 송신하고, 그 응답을 받고 나서, 분할한 멀티미 디어 정보를 축적 서버 모듈(3)에 송신한다. 마찬가지로, 축적 서버 모듈(4)에 송신하고, 이것을 반복한다.
멀티미디어 정보의 분배는 도 3에 나타낸 순서로 행해진다. 통신 서버 모듈(2)이 단말로부터의 판독 요구를 수신하고, 요구된 멀티미디어 정보의 판독 요구를 축적 서버 모듈(3)에 대하여 송신한다. 이 판독 요구를 수신한 축적 서버 모듈(3)은, 요구된 멀티미디어 정보를 통신 서버 모듈(2)에 송신한다. 그것을 수신한 통신 서버 모듈(2)은, 멀티미디어 정보를 받아들여서, 분배용 네트워크를 통해서 단말에 송신한다. 마찬가지로, 통신 서버 모듈(2)은 멀티미디어 정보의 판독 요구를 축적 서버 모듈(4)에 대하여 송신하고, 축적 서버 모듈(4)은 요구된 멀티미디어 정보를 통신 서버 모듈(2)에 송신하고, 이것을 반복한다.
특허문헌1:특허 제3461278호 공보
비특허문헌1:INFINIBAND(SM)TRADE ASSOCIATION, [online], [평성 17년 5월 6일 검색], 인터넷
<http://www.infinibandta.org/events/past/it_roadshow/fabric_tco_ibm.pdf>
비특허문헌2:Myrinet Overview, [online], [평성17년 5월 6일 검색], 인터넷 <http://www.myrinet.com/myrinet/overview/>
비특허문헌3:독립행정법인 산업기술종합연구소 선단정보 계산센터,"AIST, 슈퍼클러스터", [online], [평성 17년 5월 6일 검색], 인터넷
<http://unit.aist.go.jp/tacc/supercluster.html>
(발명의 개시)
(발명이 이루고자 하는 기술적 과제)
근거리 통신망을 사용한 도 1의 시스템에서는, 근거리 통신망(5)으로서 Ethernet(등록상표)을 사용하는 것이 일반적이다. 그 환경하에 있어서는, 네트워크내의 통신은 신뢰성을 중점으로 두기 때문에, 그 프로토콜로서 TCP/IP을 사용할 필요가 있다.
TCP/IP은 범용성을 높게 하기 위해서, 각 서버 모듈내의 범용의 연산장치(6, 7, 8)가 그 처리를 행한다. 접속 단말수가 많아져 네트워크의 최대대역에 근접하면, 네트워크의 공백을 기다리는 시간이 길어져, 부하가 급격하게 높아지는 것이 알려져 있다. 또한, 이 연산장치는, 단말과의 사이의 메시지의 처리나, 서버 모듈간의 판독 요구, 기록 요구의 처리도 행하지 않으면 안되기 때문에, 부하가 한층 더 커진다. 그 결과, 처리 지연이 증대하고, 필요한 시간까지 멀티미디어 정보의 판독이 완료하지 않는 현상이 발생하기 때문에, 서버 모듈 1대당의 처리부하를 낮게 억제하여 사용하지 않으면 안되어져, 처리 능력에 여유를 가지게 하여 모듈 수를 결정하지 않으면 안되고, 필요 이상으로 큰 설비를 준비해야만 한다. 또한, 근거리 통신망 내에 설치된 스위치로, 각 서버로부터의 트래픽이 충돌을 일으키고, 그 결과, 근거리 통신망 내에서의 랜덤한 송신 지연이 발생한다. 이 송신 지연은, TCP/IP의 폭주 검출 메커니즘을 기동시키고, 그 결과, 근거리 통신망 내에서의 송신 속도가 저하하기 때문에, 실제로 사용하는 전송 속도보다도 충분히 높은 전송 속도를 갖는 근거리 통신망과 서버를 사용해서 분산 서버 시스템을 구축할 필요가 있다.
이상과 같이, 종래의 시스템에서는, 서버, 네트워크와도 처리 능력에 여유를 갖게 해서 설계할 필요가 있다. 그 때문에, 하이비전 등의 고품질의 영상을 복수 동시에 네트워크로 송신하는 서버에는 최고속의 프로세서를 탑재한 것을 클러스터화하고, 그것들을 접속하는 내부 네트워크는 10Gbit 이더넷(등록상표) 등의 기가 비트 초과의 네트워크를 사용할 필요가 있고, 아주 고가의 시스템이 되어버린다는 문제가 있다.
한편, 근거리 통신망 이외의 네트워크로서, 병렬 계산기를 구성하기 위한 클러스터간 접속 네트워크(예를 들면, 비특허문헌1, 2, 3등)가 있다. 이 네트워크는, 하드웨어에서 통신의 신뢰성 확보를 실현하고 있기 때문에, 고속 저부하, 저비용인 반면, 서버간의 메시지의 송수신이나 메모리 공유에 사용할 목적으로 설계되어 있기 때문에, 영상 데이터와 같은 스트림의 전송 기능은 가지고 있지 않고 있다. 그러나, 이 메모리 공유 기능(원격 다이렉트 메모리 액세스 기능)은, 이 클러스터간 접속 네트워크에 의해 접속된 서버의 메모리를 다른 서버로부터 자유롭게 액세스할 수 있게 하는 기능으로, 대부분의 처리를 네트워크 카드의 하드웨어로 실현하고 있어, 서버의 CPU에 부하를 대부분 걸지 않고 데이터의 전송을 행할 수 있다. 또한, 이 원격 다이렉트 메모리 액세스 기능에서는, 상대측의 어드레스를 얻어버리면, 상대측이 아무것도 하지 않아도 데이터의 전송을 행할 수 있기 때문에, 예를 들면 TCP/IP을 사용한 처리에서는 상대측은 send()등의 시스템 콜을 호출하지 않으면 안되지만, 이 기능을 사용함으로써, 쓸데없는 처리를 상대측에서 행하지 않고 데이터 의 전송을 실현할 수 있다. 이 네트워크를 사용할 수 있으면, 저부하로 데이터의 전송을 할 수 있기 때문에, 고가이고 하이스펙 서버 시스템을 도입하지 않아, 저비용 서버에 의해 높은 전송 능력을 가지는 서버 시스템을 구축할 수 있고, 서버와 내부 결합 네트워크의 비용을 삭감할 수 있다. 본 발명의 목적은, 예를 들면 클러스터간 접속 네트워크와 같은 원격 다이렉트 메모리 액세스 기능을 이용할 수 있는 네트워크 혹은 버스 시스템을 사용해서 스트림을 전송하기 위한 수단을 제공하고, 저렴하고 고속인, 고품질 영상의 분배 시스템을 제공하는 데에 있다.
(발명의 구성)
본 발명의 분산형 멀티미디어 시스템을 설명하기 위한 시스템 구성 예를 도 4에 나타낸다. 이하, 상기 발명의 구성에 대해서 도 4를 사용하여 설명하지만, 이것은 이해하기 쉽게 설명하기 위함이고, 본 발명을 한정하는 것은 아니다. 본 발명은 청구항에 기재된 것과 같다.
도 4에 나타낸 시스템 구성 예에 있어서는, 분산형 멀티미디어 서버 시스템(10)은, 버퍼 서버모듈(제1의 서버 모듈)(21, 22, 23, …), 스토리지 서버모듈(제2의 서버 모듈)(31, 32, 33, …), 축적 장치(41, 42, 43, …), 클러스터간 접속 네트워크(51)를 가지고, 단말(11, 12)은 분배용 네트워크(61)를 거쳐서 분산형 멀티미디어 서버 시스템(10)에 접속되어 있다. 버퍼 서버모듈(21, 22, 23, …)과 스토리지 서버모듈(31, 32, 33, …)의 사이에 개재하는 클러스터간 접속 네트워크(51)가 원격 다이렉트 메모리 액세스 기능을 제공하고 있다. 클러스터간 접속 네트워크(51)의 원격 다이렉트 메모리 액세스 기능에 의해, 버퍼 서버모듈(21, 22, 23, …)과 스토리지 서버모듈(31, 32, 33)은, 스토리지 서버모듈(31, 32, 33, …) 및 버퍼 서버모듈(21, 22, 23, …) 내의 메모리의 내용을 서로 참조하는 것이 가능해진다. 52는 버퍼 서버모듈(21, 22, 23, …)과 스토리지 서버모듈(31, 32, 33, …) 사이에서 메시지를 교환하기 위한 근거리 통신망이다. 도 4의 구성 예에서는, 분산형 멀티미디어 서버 시스템(10)은, 여러 개의 버퍼 서버모듈, 스토리지 서버모듈, 축적 장치를 가지고 있지만, 이것들은 1개씩이어도 된다. 또한, 도 4의 구성 예에서는, 메시지 교환용으로 근거리 통신망(52)을 사용하고 있지만, 메시지 교환도 클러스터간 접속 네트워크(51)로 행해도 된다.
우선, 재생용 단말(11)로부터 멀티미디어 정보의 판독 요구를 버퍼 서버모듈(21)이 수신한다. 그 버퍼 서버모듈(21)은, 멀티미디어 정보가 격납된 축적 장치(41)를 가지는 스토리지 서버모듈(31)에 대하여, 멀티미디어 정보의 판독 요구를 송신한다. 그 메시지를 받은 스토리지 서버모듈(31)이, 자기의 메모리에 판독한다. 그리고, 멀티미디어 정보의 판독 요구의 응답으로서, 멀티미디어 정보를 저장한 메모리에 관한 정보(메모리 어드레스나, 그 크기, 또는, 이것들의 메모리에 관한 정보가 격납되어 있는 메모리 어드레스 등)를 버퍼 서버모듈(21)에 되돌린다.
멀티미디어 정보의 판독 요구에 대한 응답을 수신한 버퍼 서버모듈(21)은, 응답에 포함되어 있는 스토리지 서버모듈(31) 중의 멀티미디어 정보가 격납되어 있는 메모리에 관한 정보를 바탕으로, 원격 다이렉트 메모리 액세스 기능을 사용하여, 멀티미디어 정보를 취득하고, 그것을, 단말 또는 단말로부터의 멀티미디어 정 보의 판독 요구로 지정된 단말에 패킷화해서 송신한다.
수많은 단말에 송신하고 싶은 경우에는, 버퍼 서버모듈(21, 22, 23, …), 스토리지 서버모듈(31, 32, 33, …)을 도 4와 같이 복수 배치한다. 또한, 스토리지 서버모듈(31, 32, 33, …)에 각각 접속된 축적 장치(41, 42, 4l, …)에 대하여, 예를 들면 세그먼트 혹은 프레임 단위로, 멀티미디어 정보를 분할해서 격납하고, 버퍼 서버모듈로부터, 멀티미디어 정보가 격납된 축적 장치(스토리지)가 접속되어 있는 각 스토리지 서버모듈에 대하여 순차적으로 판독 요구를 송신하고, 메모리에 관한 정보를 각 스토리지 서버모듈로부터 수신하고, 그 정보를 바탕으로, 순차적으로 각 스토리지 서버모듈로부터 멀티미디어 정보를 판독하여, 멀티미디어 정보를 조립해서 지정된 단말에 송신한다. 버퍼 서버모듈이 멀티미디어 정보의 판독 요구를 송신하는 타이밍은, 1개 앞의 스토리지 서버모듈에 대한 원격 다이렉트 메모리 액세스에 의한 멀티미디어 정보의 판독이 완료하기 전이어도 된다.
복수의 단말로부터 동시에 판독하는 경우에는, 다른 버퍼 서버모듈로부터도 각 스토리지 서버모듈에 대하여, 멀티미디어 정보의 판독 요구를 송신하고, 마찬가지로 판독한다. 이렇게, 복수가 동시에 스토리지 서버모듈에 대하여 액세스했을 경우, 처리의 경합에 의해, 스토리지 서버로부터의 응답이 지연되어, 언더플로우를 일으키는 것을 생각할 수 있다. 그러나, 버퍼 서버모듈 내에서 멀티미디어 정보를 버퍼링하고, 송신 시작을 지연시키는 것에 의해, 응답의 지연을 흡수하는 것은 가능하다.
또한, 스토리지 서버모듈은, 멀티미디어 정보의 판독 요구에 대한 응답에 멀티미디어 정보가 격납되어 있는 메모리 정보를 응답으로 되돌려 놓는 대신에, 메모리 정보와 신규로 기록된 것인가 아닌가의 정보(제 2 메모리 정보)가 격납되어 있는 스토리지 서버모듈 중의 메모리에 관한 정보를 되돌려 놓는 것도 가능하다. 버퍼 서버 모듈은, 신규로 기록된 것인가 아닌가를 판정함과 동시에, 간접적으로 멀티미디어 정보가 격납되어 있는 메모리로부터, 멀티미디어 정보를 판독하는 것이 가능하다.
응답 데이터양을 절감하는 것을 목적으로, 시스템 기동시에 버퍼 서버모듈은 상기 메모리 정보나 상기 제 2 메모리 정보를 스토리지 서버모듈로부터 취득해 두는 것에 의해, 멀티미디어 정보의 판독 요구에 대한 응답에 이것들의 정보를 포함하지 못하게 하는 것도 가능하다. 또한, 이 취득한 상기 제 2 메모리 정보를 바탕으로, 멀티미디어 정보의 판독 요구를 최초만 실행하고, 2회째 이후는, 신규 기록정보 메모리에 액세스하고, 신규로 기록이 행해진 것인가 아닌가를 판정함에 의해, 오버헤드가 큰 통신의 회수를 한층 더 줄일 수 있다.
이하, 상기 과제를 해결하기 위한 다른 수단에 관하여 설명한다.
우선, 재생용 단말(11)로부터 멀티미디어 정보의 판독 요구를 버퍼 서버모듈(21)이 수신한다. 그 버퍼 서버모듈(21)은, 멀티미디어 정보가 격납된 축적 장치(41)를 갖는 스토리지 서버모듈(31)에 대하여, 멀티미디어 정보의 판독 요구를 송신한다. 이 요구에 버퍼 서버모듈(21) 내에 확보된 멀티미디어 정보 격납용 메모리에 관한 정보(메모리 정보)를 함께 실어서 송신한다. 이 멀티미디어 정보의 판독 요구를 수신한 스토리지 서버모듈(31)은, 축적 장치(41)로부터 판독한 멀티미디어 정보를, 상기 메모리 정보로 지정된 메모리에 대하여, 원격 다이렉트 메모리 액세스 기능을 사용해서 기록함과 동시에, 기록이 완료한 것을 나타내기 위한 응답을, 상기 버퍼 서버모듈(21)에 대하여 송신한다. 그 응답을 수신한 버퍼 서버모듈(21)은 지정된 단말에 대하여 멀티미디어 정보를 송신한다.
또한, 부하가 높은 통신 회수를 삭감하기 위해서는, 버퍼 서버모듈(21)은, 분할 멀티미디어 정보의 판독 요구 중에, 메모리 정보에 더해서, 신규로 기록된 것인가 아닌가를 나타낸 신규 기록정보를 격납하기 위한 메모리(신규 기록 정보 메모리)에 관한 정보(제 2 메모리 정보)를 송신한다. 이 요구를 수신한 스토리지 서버모듈(31)은, 상기 축적 장치(41)에서 판독한 멀티미디어 정보를, 상기 메모리 정보로 지정된 메모리에 대하여, 원격 다이렉트 메모리 액세스 기능을 사용해서 기록함과 동시에, 제 2 메모리 정보로 지정된 메모리에, 신규로 멀티미디어 정보가 씌어진 것을 나타낸 정보를 기록하고, 응답은 송신하지 않는다. 버퍼 서버모듈(21)은, 멀티미디어 정보의 판독 요구 송신 후, 신규 기록 정보 메모리를 참조하여, 신규로 멀티미디어 정보가 기록된 것인가 아닌가를 판정한다. 그 결과, 신규로 기록이 행해지고 있으면, 원격 다이렉트 메모리 액세스 기능을 사용해서 분할 멀티미디어 정보를 취득하여, 단말에 송신한다.
단말(11)로부터 보내진 멀티미디어 정보를 분산형 멀티미디어 서버 시스템(10) 내에 축적하는 경우에는, 이하의 순서로 행한다. 우선, 단말(11)로부터 멀티미디어 정보 기록 요구를 버퍼 서버모듈(21)이 수신하면, 스토리지 서버모듈(31)에 대하여, 분할 멀티미디어 정보기록 요구를 송신한다. 스토리지 서버모듈(31)은 그 응답으로서, 분할 멀티미디어 정보가 기록 가능한 버퍼 메모리에 관한 정보를 버퍼 서버모듈(21)에 대하여 송신한다. 그 응답을 수신한 버퍼 서버모듈(21)은, 그 정보를 바탕으로 단말(11)로부터 수신한 멀티미디어 정보를 분할하고, 원격 다이렉트 메모리 액세스 기능을 사용해서 그 버퍼 메모리에 기록한다. 스토리지 서버모듈(31)은, 기록된 것을 확인하면 축적 장치(41)에 기록한다.
또한, 다음에 나타낸 별도의 순서로 축적할 수도 있다. 단말(11)로부터 멀티미디어 정보기록 요구를 버퍼 서버모듈(21)이 수신하면, 스토리지 서버모듈(31)에 대하여, 분할 멀티미디어 정보 기록 요구를 송신한다. 이 때, 버퍼 서버모듈(21)은, 이 요구 중에 버퍼 서버모듈(21) 내의 분할 멀티미디어 정보가 축적되어 있는 버퍼 메모리에 관한 정보를 포함해서 송신한다. 이 요구를 수신한 스토리지 서버모듈(31)은, 이 요구에 포함되어 있는 버퍼 메모리에 관한 정보를 바탕으로, 분할 멀티미디어 정보를, 원격 다이렉트 메모리 액세스 기능을 사용해서 취득하여, 축적 장치(41)에 기록한다.
본 발명을 사용함으로써, 부하가 높은 통신을 될 수 있는 한 사용하지 않고, 버퍼 서버 모듈, 스토리지 서버모듈간에서, 멀티미디어 정보의 전송을 할 수 있기 때문에, 적은 서버로 높은 동시 분배 성능을 얻을 수 있다.
(발명의 효과)
본 발명에 의해, 부하가 높은 통신에 의한 멀티미디어 정보의 전송을, 부하가 낮은 원격 다이렉트 메모리 액세스로 바꿔 놓는 것이 가능해지고, 그 결과, 낮 은 시스템 비용으로 높은 토털 스루풋을 얻는 것이 가능해진다. 또한, 부하가 낮아진 만큼, 예를 들면 멀티미디어 정보의 포맷의 변환이나 압축 등의 고도의 처리를 서버 시스템 내에 내장하는 것이 가능하게 되고, 적은 서버 리소스로 부가가치가 높은 서비스를 시스템으로 제공하는 것이 가능해진다.
도 1은, 종래의 분산형 멀티미디어 서버 시스템의 구성 예를 나타낸 도면이다.
도 2는, 종래의 분산형 멀티미디어 서버 시스템에 있어서의 축적 시퀸스 예를 나타낸 도면이다.
도 3은, 종래의 분산형 멀티미디어 서버 시스템에 있어서의 재생 시퀸스 예를 도시한 도면이다.
도 4는, 본 발명의 분산형 멀티미디어 서버 시스템을 설명하기 위한 시스템 구성 예를 도시한 도면이다.
도 5는, 실시 예의 분산형 멀티미디어 서버 시스템의 구성 예(최소 구성)를 도시한 도면이다.
도 6은, 재생 처리의 제1의 실시 예를 설명하는 개략 시퀀스 도면이다.
도 7은, 재생 처리의 제1의 실시 예에서 복수의 버퍼를 사용하는 경우의 개략 시퀀스 도면이다.
도 8은, 재생 처리의 제2의 실시 예를 설명하는 개략 시퀀스 도면을 나타낸 도면이다.
도 9는, 재생 처리의 제2의 실시 예의 스토리지 서버모듈에 있어서의 버퍼 메모리 구성을 도시한 도면이다.
도 10은, 재생 처리의 제2의 실시 예에서 복수의 버퍼를 사용하는 경우의 개략 시퀀스 도면이다.
도 11은, 재생 처리의 제2의 실시 예에서 기동시에 제 2 메모리 정보를 얻은 경우의 개략 시퀀스 도면이다.
도 12는, 재생 처리의 제3의 실시 예를 설명하는 개략 시퀀스 도면이다.
도 13은, 재생 처리의 제4의 실시 예를 설명하는 개략 시퀀스 도면이다.
도 14는, 다수의 단말에 송신 가능한 분산형 멀티미디어 서버 시스템에 있어서의 멀티미디어 정보의 축적 방식과 송신방식을 설명하는 도면이다.
도 15는, 복수 스토리지 서버모듈 구성 대응에 재생 처리의 제1의 실시 예를 확장한 개략 시퀀스 도면이다.
도 16은, 등록 처리의 제1의 실시 예를 설명하는 개략 시퀀스 도면이다.
도 17은, 등록 처리의 제1의 실시 예에서 복수의 버퍼를 사용하는 경우의 개략 시퀀스 도면이다.
도 18은, 등록 처리의 제1의 실시 예를 설명하는 개략 시퀀스 도면이다.
도 19는, 복수 스토리지 서버모듈 구성 대응에 등록 처리의 제1의 실시 예를 확장한 개략 시퀀스 도면이다.
도 20은, 일반적인 클러스터형 병렬계산방식을 설명하기 위한 도면이다.
도 21은, 리퀘스트에 따른 버퍼 메모리의 확보 예를 도시한 도면이다.
도 22는, 이전의 데이터 판독에 의한 버퍼 메모리의 확보 예를 도시한 도면이다.
(부호의 설명)
1…분산형 멀티미디어 서버 시스템, 2…통신 서버 모듈, 3, 4…축적 서버 모듈, 5…근거리 통신망, 6, 7, 8…연산장치, 10, 50…분산형 멀티미디어 서버 시스템, 11, 12, 13…단말, 21, 22, 23…버퍼 서버모듈, 31, 32, 33…스토리지 서버모듈, 41, 42, 43…축적 장치, 51…클러스터간 접속 네트워크, 52…근거리 통신망, 61…분배용 네트워크, 62…로드 밸런서, 91…신규 기록 메모리, 92…갱신 정보, 93…메모리 정보, 94, 95, 96…분할 멀티미디어 정보용 버퍼 메모리
이하, 본 발명을 실시 예를 사용해서 상세하게 설명한다.
도 5에 본 발명에 있어서의 분산형 멀티미디어 서버 시스템(50)의 구성의 일례(최소 구성)를 나타낸다. 도면의 단말(11, 12)은 유저가 조작하는 단말이다. 버퍼 서버모듈(21)은, 단말(11, 12)로부터의 요구를 받아, 멀티미디어 정보의 송신 또는 수신을 행하는 모듈이다. 스토리지 서버모듈(31)은, 멀티미디어 정보를 분할해서 격납하는 축적 장치(41)를 가지고 있고, 이 축적 장치로부터의 멀티미디어 정보의 판독 혹은 기록을 행한다. 버퍼 서버모듈(21)과 스토리지 서버모듈(31)과의 사이는, 원격 다이렉트 메모리 액세스 기능을 이용할 수 있는 네트워크 혹은 버스 시스템으로 접속되어 있다. 도 5에서는 클러스터간 접속 네트워크(5l)로 접속되어 있다. 버퍼 서버모듈(21)과 스토리지 서버모듈(31)과는, 원격 다이렉트 메모리 액세스 기능을 사용하고, 서로의 버퍼 메모리의 데이터를 참조하는 것이 가능하다. 본 실시예에서는, 네트워크(51)로서 병렬계산기용 클러스터간 접속 네트워크를 이용하는 것을 목적으로 하고 있기 때문에, 메시지 통신의 기능은 구비하고 있는 것으로 한다. 그러나, 그것이 불가능한 경우 등의 경우에는, 후술하는 분할 멀티미디어 정보 판독 요구나 그 응답 등의 메시지의 교환용으로, 예를 들면, 도 5에 나타나 있는 바와 같은 근거리 통신망(52)을 이용하는 것도 가능하다. 이 경우에는, 버퍼 서버모듈(21)과 스토리지 서버모듈(31)은, 원격 다이렉트 메모리 액세스 기능을 사용할 수 있는 네트워크(51)와 원격 다이렉트 메모리 액세스 기능을 사용할 수 없는 근거리 통신망(52)의 양쪽에서 접속된다. 단말(11, 12)과 분산형 멀티미디어 서버 시스템(50)의 사이는 WAN 등의 분배용 네트워크(61)로 연결되어 있다.
우선, 재생시, 즉 분산멀티미디어 서버 시스템으로부터 단말에 송신할 경우의 처리에 관하여 설명한다.
도 6에 판독 처리의 제1의 실시 예의 처리 시퀀스를 나타낸다. 도면에서의 버퍼 서버모듈(21)과 스토리지 서버모듈(31)간의 가는 선의 화살표는 TCP/IP를 포함한 메시지 통신, 굵은선의 화살표는 원격 다이렉트 메모리 액세스 기능을 사용한 데이터의 전송을 보이고 있다. 유저가 단말(11)로부터 시청하고 싶은 멀티미디어 정보를 요구하기 위해서, 버퍼 서버모듈(21)에 대하여 멀티미디어 정보판독 요구를 송신한다(단계61). 그 요구를 수신한 버퍼 서버모듈(21)은, 그 요구에 의거하여 요구된 멀티미디어 정보가 분할되어서 격납되어 있는 축적 장치(41)가 접속되어 있는 스토리지 서버모듈(31)에 대하여, 분할 멀티미디어 정보 판독 요구를 송신한다(단계62). 다음에, 그 요구를 받은 스토리지 서버모듈(31)은, 축적 장치(41)로부터 해당하는 분할 멀티미디어 정보를 스토리지 서버모듈(31)내의 버퍼 메모리 중에 판독해(단계63), 그 버퍼 메모리의 어드레스나 메모리중의 데이터의 사이즈 등 이 버퍼 메모리에 관한 정보(메모리 정보)를 응답으로서 되돌려 놓는다(단계64). 이 정보를 바탕으로, 버퍼 서버모듈(21)은, 분할 멀티미디어 정보를, 원격 다이렉트 메모리 액세스 기능을 사용함으로써 스토리지 서버모듈(31) 내에서 판독해(단계65), 멀티미디어 정보 판독 요구에 의해 지정된 단말 네트워크를 사용하여 송신한다(단계66). 송신처는, 최초의 멀티미디어 정보 판독 요구를 낸 단말(11)이어도 물론 개의치 않는다. 또한, 단계62∼66을 반복해 행함으로써, 요구된 멀티미디어 정보의 모든 송신을 실행한다. 또한, 스토리지 서버모듈(31) 내에 복수의 버퍼 메모리를 준비해 둠으로써, 도 7과 같이, 다음에 송신하는 분할 멀티미디어 정보를 이전 판독하여(단계73-2), 버퍼 메모리에 격납해 둠으로써, 버퍼 서버모듈(21)과 스토리지 서버모듈(31)과의 사이에서, 효율적으로 처리하는 것이 가능하다.
여기서, 도 20을 사용하여, 클러스터간 접속 네트워크를 이용한 클러스터형 계산기에 의한 일반적인 병렬계산방법에 관하여 설명한다.
동 도면에 나타나 있는 바와 같이, 클러스터형 계산기에 의한 병렬계산은 이하와 같은 순서로 행해진다. 우선, 최초에, 마스터 계산기는, 메시지 송수신 기능 을 이용해서 병렬계산에 필요한 파라미터를 각 슬레이브 계산기에 송신한다(동 도면의 (1)참조). 파라미터를 수신한 각 슬레이브 계산기는 각각 병렬계산을 실행한다(동 도면의 (2) 참조). 병렬계산 종료 후, 각 슬레이브 계산기는, 메시지 송수신 기능을 이용해서 계산 결과를 마스터 계산기에 송신하거나, 또는, 메모리 공유 기능을 이용해서 계산 결과를 마스터 계산기내의 메모리에 기록한다(동 도면의 (3)참조). 각 슬레이브 계산기로부터 계산 결과를 수신, 또는, 기록된 마스터 계산기는, 최종결과의 계산을 실행해(동 도면의 (4)참조), 최종결과를 제시한다(동 도면의 (5)참조).
이와 같이, 클러스터간 접속 네트워크를 이용한 클러스터형 계산기에 의한 일반적인 병렬계산방법은, 미리 결정된 메모리 영역을 사용해서 최저한의 정보를 마스터 계산기와 슬레이브 계산기와의 사이에서 교환하는 것이므로, 계산 개시시에 사용하는 메모리 영역을 결정해 두면, 그 후는 결정된 영역에 기록할 뿐이다.
한편, 종래의 분산형 멀티미디어 서버 시스템(예를 들면, 도 1 참조)에 있어서는, 대량의 데이터를 단시간에 고속으로 송수신하기 위해서 각 서버 모듈에서 대량의 메모리를 사용하고, 또한 송수신하는 스트림의 레이트(단위시간당 데이터 양)에 따라 사용하는 메모리 양이 다르다. 그 때문에, 사용하지 않는 메모리는 적극적으로 해방해서 효율적으로 사용하고, 리퀘스트마다, 그 리퀘스트에 따른 메모리 영역을 동적으로 확보할 필요가 있다.
이에 대하여, 본 발명에 따른 제1 실시예에서는, 도 21에 예시한 것처럼, 스토리지 서버모듈(31)에 있어서, 예를 들면 전번 리퀘스트에 따라 확보한 버퍼 메모 리 영역(사이즈:S)과 이번 리퀘스트에 따라 확보한 버퍼 메모리 영역(사이즈:T)이 다르다. 즉, 리퀘스트마다 리퀘스트에 따른 버퍼 메모리 영역을 동적으로 확보하도록 하고 있다.
또한, 종래의 분산형 멀티미디어 서버 시스템(예를 들면, 도 1참조)에 있어서, 각 축적 서버 모듈(3,4)에 접속되어 있는 스토리지에 대하여 분할 멀티미디어 정보를 읽고 쓰기하는 경우, 그 읽고 쓰기에 걸리는 처리 시간은 일정하지는 않고 그 정보가 격납되어 있는 스토리지중의 물리적인 위치에 의존해 크게 변화된다. 축적 서버 모듈(4)과 통신 서버 모듈(2)과의 사이도 읽고 쓰기가 완료한 타이밍에서 통신이 행해진다. 그 때문에, 축적 서버 모듈(4)과 스토리지와 사이의 분할 멀티미디어 정보의 전송 속도, 축적 서버 모듈(4)과 통신 서버 모듈(2)과의 사이의 전송 속도, 통신 서버 모듈과 단말과의 사이의 전송 속도는, 장기간 관측하면 같아지지만, 단시간 관측한 경우에는 각각 다르다. 그 속도차이를 흡수하기 위해서, 각 서버 모듈에 복수의 메모리 영역을 준비하고, 데이터의 격납 장소를 동적으로 통지 할 필요가 있다.
이에 대하여, 본 발명에 따른 제1 실시예에서는, 도 22에 예시하는 것 같이, 스토리지 서버모듈(31)은, 버퍼 서버모듈(21)로부터 리퀘스트를 받은 멀티미디어 데이터를, 복수 설치한 버퍼 메모리 영역에 축적 장치(41)로부터 이전 판독하여 격납하고, 최초의 분할 멀티미디어 데이터의 다음에 판독되는 분할 멀티미디어 데이터가 격납되어 있는 메모리 정보(예를 들면, 어드레스:D-2, 사이즈:W)를 동적으로 버퍼 서버모듈(21)에 통지한다. 즉, 각 서버 모듈에 있어서 생길 수 있는 속도차이 를 흡수하고, 데이터의 격납 장소를 동적으로 통지하도록 하고 있다.
이러한 것으로부터, 본 발명은, 고정적으로 메모리 영역을 사용하는 일반적인 클러스터형 병렬계산기와는 달리, 동적으로 메모리 영역을 사용 함에 의해, 클러스터형 접속 네트워크를 이용한 분산형 멀티미디어 서버 시스템에 있어서, 스트림 전송 기능을 실현한다.
도 8에 송신시의 처리의 제2의 실시 예의 시퀀스를 나타낸다. 도 9에, 제2의 실시 예에 있어서의 스토리지 서버모듈(31)의 버퍼 메모리 구성을 나타낸다. 도 9에 있어서, 91은 신규 기록 메모리이며, 신규 기록 메모리(91)에는 갱신 정보(92), 메모리 정보(93)가 기억된다. 94는 분할 멀티미디어 정보용 버퍼 메모리이며, 필요에 따라서 분할 멀티미디어 정보용 버퍼 메모리(95, 96, …)가 증설된다. 갱신 정보(92)는 새롭게 기록된 것인가 아닌가를 나타낸 정보이며, 메모리 정보(93)는 분할 멀티미디어 정보용 버퍼 메모리에 관한 정보(어드레스, 사이즈 등)이다.
유저가 단말(11)로부터 시청하고 싶은 멀티미디어 정보를 요구하기 위해서 버퍼 서버모듈(21)에 대하여 멀티미디어 정보 판독 요구를 송신한다(단계81). 그 요구를 수신한 버퍼 서버모듈(21)은, 요구된 멀티미디어 정보가 분할되어서 격납되어 있는 축적 장치(41)가 접속되어 있는 스토리지 서버모듈(31)에 대하여, 분할 멀티미디어 정보 판독 요구를 송신한다(단계82). 다음에, 그 요구를 받은 스토리지 서버모듈(31)은, 축적 장치(41)로부터 해당하는 분할 멀티미디어 정보를 스토리지 서버모듈(31) 내의 분할 멀티미디어 정보용 버퍼 메모리(94) 중에서 판독하고(단계83), 그 버퍼 메모리(94)의 어드레스나 메모리중의 데이터의 사이즈 등 이 버퍼 메모리에 관한 정보(메모리 정보 93)를 신규 기록 메모리(91)에 격납하고, 응답으로서 되돌린다(단계84). 이 응답에는, 신규 기록 메모리(91)의 어드레스 등의 이 메모리에 관한 정보(제 2 메모리 정보)가 포함되어 있다. 이 응답을 받아들인 버퍼 서버모듈(21)은, 이 응답을 바탕으로, 메모리 정보(93)를 원격 다이렉트 메모리 액세스 기능을 사용함으로써 스토리지 서버모듈(31) 내로부터 판독해(단계85), 그 메모리 정보(93)를 바탕으로, 분할 멀티미디어 정보를, 원격 다이렉트 메모리 액세스 기능을 사용함으로써 스토리지 서버모듈(31) 내의 분할 멀티미디어 정보용 버퍼 메모리로부터 판독하고(단계 86), 멀티미디어 정보판독 요구에 의해 지정된 단말에 분배용 네트워크(61)를 사용해서 송신한다(단계87). 연속해서 분할 멀티미디어 정보를 송신할 경우, 제1의 실시 예와 마찬가지로, 단계82∼87을 반복하여 실현한다. 또한, 단계84의 응답에 포함되는 제 2 메모리 정보를 버퍼 서버모듈(21)내에 보존해 두는 것에 의해, 2회째 이후의 분할 멀티미디어 정보 판독 요구의 송신(단계82) 및 그 응답의 반송(단계84)을 생략할 수 있고, 그 대신에, 분할 멀티미디어 정보가 격납되어 있었던 버퍼 메모리를 해방하기 위한 버퍼 해방 요구를 스토리지 서버모듈(31)에 대하여 송신한다. 그 만큼도 가미해도, 통신 처리의 회수를 삭감할 수 있다. 또한, 단계84에 있어서, 신규 기록 메모리(91)에 포함되는 메모리 정보(93)가 지시하는 버퍼 메모리(분할 멀티미디어 정보용 버퍼 메모리)(94)에 분할 멀티미디어 정보가 새롭게 기록된 것인가 아닌가를 나타낸 정보(갱신 정보 92)를 도 9에 나타낸 바와 같이 신규 기록 메모리(91) 속에 함께 격납함에 의해, 버퍼 서버모듈(21)은, 단계85에 있어서, 스토리지 서버모듈(31)이 새롭게 분할 멀티미디어 정보를 새롭게 기록한 것인가 아닌가를 알 수 있다. 이 갱신 정보(92)는 1씩 증분하는 카운터나, 0/1을 교대로 반복하는 카운터에 의해 실현하는 것은 가능하다. 만약, 버퍼 서버모듈(21)이 단계85에서, 이 갱신 정보(92)에 의해, 분할 멀티미디어 정보용 버퍼 메모리중의 데이터가 갱신되어 있지 않다고 판정하면, 버퍼 서버모듈(21)은, 적당히 재시도 시간을 설정해서 갱신 정보(92)가 갱신될 때까지 단계85를 반복함으로써, 이후의 처리를 계속한다.
또한, 제1의 실시 예와 마찬가지로, 복수의 버퍼 메모리를 스토리지 서버모듈(31) 내에 준비함으로써(도 9에 나타나 있는 바와 같이 분할 멀티미디어 정보용 버퍼 메모리 95, 96, …을 증설한다), 도 10과 같이, 축적 장치로부터의 판독(단계103-2)과 단말에의 송신(단계107)을 병렬로 동작시킬 수 있고, 스토리지 서버모듈(31), 버퍼 서버모듈(21)과의 사이에서 파이프라인적으로 처리할 수 있기 때문에, 높은 성능을 얻을 수 있다.
또한, 제1의 실시 예(도 6 및 도 7), 제2의 실시 예(도 8 및 도 10)에 있어서, 도 6의 단계64 및 도 7의 단계74의 메모리 정보, 도 8의 단계84 및 도 10의 단계104의 제 2 메모리 정보를, 분할 멀티미디어 정보 판독 요구가 오기 전에 미리(예를 들면, 시스템의 기동시에) 버퍼 서버모듈(21)에 대하여, 스토리지 서버모듈(31)을 포함한 것 외의 모듈로부터 통지하거나, 또는, 미리 버퍼 서버모듈(21) 내에 기록해 두는 것에 의해, 제1의 실시 예에서는, 도 6의 단계64의 메모리 정보를 송신하지 않도록 하여, 버퍼 서버모듈(21)과 스토리지 서버모듈(31)과의 사이의 송신 데이터 양을 절감할 수 있다.
또한, 제2의 실시 예에서는, 도 8의 단계84의 제 2 메모리 정보를 송신하지 않는 방법뿐만 아니라, 도 11에 나타나 있는 바와 같이 우선, 최초의 1회, 분할 멀티미디어 정보 판독 요구를 송신한다(단계112). 계속해서, 미리(예를 들면, 도 11의 단계110에 나타나 있는 바와 같이 시스템 기동시에) 얻은 제 2 메모리 정보를 바탕으로, 원격 다이렉트 메모리 액세스 기능을 사용함으로써, 메모리 정보(93)를 스토리지 서버모듈(31) 중에서 판독해(단계113), 그 메모리 정보(93)를 바탕으로, 분할 멀티미디어 정보를, 원격 다이렉트 메모리 액세스 기능을 사용함으로써 스토리지 서버모듈(31)내에서 판독한다(단계114). 그리고, 멀티미디어 정보 판독 요구에 의해 지정된 단말에 네트워크를 사용해서 송신하고(단계115), 스토리지 서버모듈에 대하여 버퍼 해방 요구를 송신하는 단계(단계116) 이후는, 이것들 단계113∼116을 반복함으로써, 한층 더 송신의 회수를 절감할 수 있다.
또한, 제3의 실시 예의 처리 시퀀스를 도 12에 나타낸다. 우선, 유저가 단말(11)로부터 시청하고 싶은 멀티미디어 정보를 요구하기 위해서 버퍼 서버모듈(21)에 대하여 멀티미디어 정보 판독 요구를 송신한 후(단계121), 그 요구를 수신한 버퍼 서버모듈(21)은, 요구된 멀티미디어 정보가 분할되어, 격납되어 있는 축적 장치(41)가 접속되어 있는 스토리지 서버모듈(31)에 대하여, 분할 멀티미디어 정보 판독 요구를 송신한다(단계122). 이 요구에는, 버퍼 서버모듈(21) 내의 버퍼 메모리에 관한 정보(메모리 정보)를 함께 격납해둔다. 다음에, 그 요구를 받은 스토리지 서버모듈(31)은, 축적 장치(41)로부터 해당하는 분할 멀티미디어 정보를 분할 멀티미디어 정보 판독 요구에서 지정된 버퍼 메모리중에 원격 다이렉트 메모리 액세스 기능에 의해 판독하고(단계123), 기록한 것을 나타내기 위해 응답을 되돌린다(단계124). 버퍼 서버모듈은, 자신의 버퍼 메모리내의 분할 멀티미디어 정보를 단말(11)로부터의 멀티미디어 정보 판독 요구에 의해 지정된 단말에 네트워크를 사용해서 송신한다(단계125). 그리고, 다음의 분할 멀티미디어 정보를 송신하기 위해서, 상기의 단계122∼125를 반복한다.
이 제3의 실시 예와, 제1의 실시 예, 제2의 실시 예와의 차이는, 원격 다이렉트 메모리 액세스를 실행하는 모듈이 다른 곳에 있다. 이것은, 원격 다이렉트 메모리 액세스에 의한 부하나 성능이 원격 다이렉트 메모리 액세스에서 기록하는 편이 나은 경우와 나쁜 경우가, 원격 다이렉트 메모리 액세스 기능을 갖춘 제품에 따라 다르기 때문에, 그것에 맞춘 방식의 선택을 가능하게 하기 위함이다.
제3의 실시 예의 통신 회수를 절감하는 실시 예가 다음의 제4의 실시 예다. 이 실시 예의 처리 시퀀스를 도 13에 나타낸다. 우선, 유저가 단말(11)로부터 시청하고 싶은 멀티미디어 정보를 요구하기 위해서 버퍼 서버모듈(21)에 대하여 멀티미디어 정보 판독 요구를 송신하면(단계131), 그 요구를 수신한 버퍼 서버모듈(21)은, 요구된 멀티미디어 정보가 분할되어, 격납되어 있는 축적 장치(41)가 접속되어 있는 스토리지 서버모듈(31)에 대하여, 분할 멀티미디어 정보판독 요구를 송신한다(단계132). 이 요구에는, 버퍼 서버모듈(21)내의 버퍼 메모리에 관한 정보와 버퍼 메모리가 비어 있는 것인가 아닌가를 나타낸 정보(제 2 메모리 정보)가 격납되어 있는 버퍼 메모리에 관한 정보를 함께 격납해둔다. 다음에, 그 요구를 받은 스토리지 서버모듈(31)은, 분할 멀티미디어 정보 판독 요구로 지정된 버퍼 메모리중의 제 2 메모리 정보를, 원격 다이렉트 메모리 액세스 기능을 사용해서 판독하고(단계133), 그 정보로 지정된 버퍼 메모리가 비어 있는 것을 확인하고, 축적 장치(41)로부터 해당하는 분할 멀티미디어 정보를 판독하고, 원격 다이렉트 메모리 액세스 기능에 의해 버퍼 서버모듈(21)의 버퍼 메모리에 전송해(단계134), 기록한 것을 나타내기 위해 응답을 되돌린다(단계135). 혹은, 응답을 되돌려 놓는 대신에, 제 2 메모리 정보가 격납되어 있는 버퍼 메모리에 대하여, 원격 다이렉트 메모리 액세스 기능에 의해 기록한 것을 나타낸 정보를 기록하는 것도 가능하다. 응답을 받은 버퍼 서버모듈은, 자신의 버퍼 메모리내의 데이터를, 단말(11)로부터의 버퍼 메모리내의 분할 멀티미디어 정보를 멀티미디어 정보 판독 요구에 의해 지정된 단말에 네트워크를 사용해서 송신한다(단계136). 그리고, 다음의 분할 멀티미디어 정보를 송신하기 위해서, 상기의 단계133∼136을 반복한다. 통신 회수를 절감하기 위해서, 스토리지 서버모듈(31)이 분할 멀티미디어 정보 판독 요구중의 제 2 메모리 정보를 자신의 모듈내에 보존해 둠으로써, 2회째 이후의 분할 멀티미디어 정보 판독 요구의 송신을 생략할 수 있다.
또한, 많은 단말에 송신하는 시스템에서는, 도 14와 같이 복수의 스토리지 서버모듈(31, 32, 33, …)에, 멀티미디어 정보를 분할해서 축적해 (도 14의 예에서는 영상데이터의 축적을 프레임 단위로 행하고 있는 예다), 이것들의 복수의 스토리지 서버모듈(31, 32, 33, …)에 대하여 액세스하는 방식을 채용한다. 도 14에 있어서는, 프레임#1이 축적 장치41에 축적되고, 프레임#2가 축적 장치42에 축적되고, 프레임#3이 축적 장치43에 축적되어 있다. 도 15에, 복수의 스토리지 서버를 사용 한 구성에 대응시키기 위해서, 상기 제1의 실시 예를 확장한 처리 시퀀스를 나타낸다. 우선, 유저가 단말(11)로부터 시청하고 싶은 멀티미디어 정보를 요구하기 위해서 버퍼 서버모듈(21)에 대하여 멀티미디어 정보 판독 요구를 송신하면(단계151), 그 요구를 수신한 버퍼 서버모듈(21)은, 요구된 멀티미디어 정보의 선두(프레임#1)가 격납되어 있는 축적 장치(41)가 접속되어 있는 스토리지 서버모듈(31)에 대하여, 분할 멀티미디어 정보 판독 요구를 송신한다(단계152). 그 요구를 받은 스토리지 서버모듈(31)은, 축적 장치(41)로부터 해당하는 분할 멀티미디어 정보를 스토리지 서버모듈(31) 내의 버퍼 메모리중에서 판독해(단계153), 그 버퍼 메모리의 어드레스나 메모리중의 데이터의 사이즈 등 이 버퍼 메모리에 관한 정보(메모리 정보)를 응답으로서 되돌려 놓는다(단계154). 이 정보를 바탕으로, 버퍼 서버모듈(21)은, 분할 멀티미디어 정보를, 원격 다이렉트 메모리 액세스 기능을 사용함으로써, 스토리지 서버모듈(31)내로부터 판독해(단계155), 멀티미디어 정보 판독 요구에 의해 지정된 단말에 네트워크를 사용해서 송신한다(단계156). 송신처는, 최초의 요구를 낸 단말이어도 물론 개의치 않는다. 다음의 분할 멀티미디어 정보를 판독하기 위한 분할 멀티미디어 정보 판독 요구를 다음의 분할 멀티미디어 정보(프레임#2)가 격납되어 있는 축적 장치(42)가 접속되어 있는 스토리지 서버모듈(32)에 대하여 송신한다(단계152-2). 이후, 단계153∼156과 같은 처리를 반복하고, 다음 스토리지 서버모듈(33)에 대하여, 분할 멀티미디어 정보 판독 요구를 송신한다. 이상의 처리를 요구된 멀티미디어 정보가 격납되어 있는 축적 장치를 갖는 모든 스토리지 서버모듈에 대하여, 순서로 행하고, 다시, 최초에 분할 멀티미디어 정보 판독 요구를 송신한 스토리지 서버모듈에 대하여, 분할 멀티미디어 정보 판독 요구를 송신하고, 단계152 이후를 다시 반복함으로써, 송신을 행한다. 이렇게 하여, 도 14의 실선으로 나타낸 바와 같이 단말(11)에 멀티미디어 정보를 송신한다. 마찬가지로, 단말(13)로부터 버퍼 서버모듈(23)에 판독 요구가 있었던 경우에는, 도 14의 점선으로 나타낸 바와 같이 멀티미디어 정보를 송신한다. 이 방법은, 상기 제2, 제3, 제4의 실시 예에도 마찬가지로 적용이 가능하다. 이 방법에 의해, 스토리지 서버모듈에 대한 부하는 스토리지 서버모듈의 수를 N으로 하면 1/N이 되기 때문에, 다수의 단말로부터 요구를 접수한 경우에도 문제없이 처리가 가능하다. 버퍼 서버모듈에 관해서는 도 14와 같이 , 버퍼 서버모듈도 복수 준비하고, 버퍼 서버모듈(21, 22, 23, …)과 단말과의 사이에 로드 밸런서(62) 등의 부하 분산장치를 둠으로써 부하를 분산되게 할 수 있기 때문에, 분산 서버 시스템 전체에서 높은 스루풋을 얻을 수 있다.
다음에, 단말로부터 멀티미디어 정보를 분산형 멀티미디어 서버 시스템에 등록한다, 즉, 단말로부터 분산형 멀티미디어 서버 시스템에 송신할 경우의 제1의 실시 예를 설명한다. 도 16에 그 처리 시퀀스를 나타낸다. 유저가 단말(11)을 사용하여, 멀티미디어 정보 기록 요구를 버퍼 서버모듈(21)에 대하여 송신한다(단계161). 그것을 받아들인 버퍼 서버모듈(21)은, 분할 멀티미디어 정보 기록 요구를 스토리지 서버모듈(31)에 대하여 송신한다(단계162). 이 요구를 받아들인 스토리지 서버모듈(31)은, 버퍼 서버모듈(21)로부터 분할 멀티미디어 정보를 받기 위한 자신의 모듈내의 버퍼 메모리에 관한 정보(메모리 정보)를 응답으로서 되돌려 놓는다(단계 163). 그 응답을 수신한 버퍼 서버모듈(21)은, 멀티미디어 정보를 수신하여, 분할함과 아울러(단계164), 원격 다이렉트 메모리 액세스 기능을 사용하고, 분할 멀티미디어 정보 기록 요구에 대한 응답중에 포함되어 있는 메모리 정보를 바탕으로, 스토리지 서버모듈(31) 내의 버퍼에 전송한다(단계165). 스토리지 서버모듈(31)은, 다음 분할 멀티미디어 정보 기록 요구를 계기로 전송된 분할 멀티미디어 정보를 축적 장치(41)에 축적한다(단계166). 상기의 단계162∼166을 반복해 실행하는 것에 의해 모든 멀티미디어 정보를 축적할 수 있다. 분할 멀티미디어 정보를 축적하기 위한 버퍼 메모리를 복수 스토리지 서버모듈(31)내에 준비함으로써 도 17과 같이 단계174-2∼175-2와 단계176을 병렬로 동작시켜, 파이프라인적으로 처리시킴으로써 고속으로 동작시키는 것이 가능하다.
또한, 단말로부터 멀티미디어 정보를 등록하기 위한 제2의 실시 예를 설명한다. 도 18에 그 처리 시퀀스를 나타낸다. 유저가 단말(11)을 사용하여, 멀티미디어 정보 기록 요구를 버퍼 서버모듈(21)에 대하여 송신한다(단계181). 그것을 받아들인 버퍼 서버모듈(21)은, 멀티미디어 정보를 단말(11)로부터 수신해 분할한 후(단계182), 이 분할 멀티미디어 정보를 일시적으로 보관하고 있는 버퍼 메모리에 관한 정보(메모리 정보)를 포함해서, 스토리지 서버모듈(31)에 대하여 분할 멀티미디어 정보기록 요구를 송신한다(단계183). 그것을 수신한 스토리지 서버모듈은, 그 메모리 정보를 바탕으로 원격 다이렉트 메모리 액세스 기능을 사용해서 분할 멀티미디어 정보를 판독하고(단계184), 축적 장치(41)에 축적하여(단계185), 축적을 완료한 것을 버퍼 서버모듈(21)에 대하여 통지한다(단계186). 이렇게 단계182∼186의 처리 를 반복해 함으로써, 모든 멀티미디어 정보를 축적 장치에 격납할 수 있다. 또한, 버퍼 서버모듈 내에 버퍼 메모리를 복수 갖게 함으로써, 단계182와 단계184∼185를 병렬로 동작시켜, 파이프라인적으로 처리시킴으로써 고속으로 처리하는 것이 가능하다.
재생시와 마찬가지로, 많은 단말로부터 등록하는 경우, 도 14와 같이 복수의 스토리지 서버모듈에, 멀티미디어 정보를 분할해서 축적하고, 이것들의 복수의 스토리지 서버모듈에 대하여 액세스하는 방식을 채용한다. 도 19에, 2대의 스토리지 서버를 사용한 구성에 대응시키기 위해서, 상기 제1의 실시 예를 확장한 처리 시퀀스를 나타낸다. 우선, 유저가 단말(11)을 사용해서 멀티미디어 정보 기록 요구를 버퍼 서버모듈(21)에 대하여 송신한다(단계191). 그것을 받아들인 버퍼 서버모듈(21)은, 분할 멀티미디어 정보 기록 요구를 스토리지 서버모듈(31)에 대하여 송신한다(단계192). 이 요구를 받은 스토리지 서버모듈(31)은, 버퍼 서버모듈(21)로부터 분할 멀티미디어 정보를 받기 위한 자신의 모듈내의 버퍼 메모리에 관한 정보(메모리 정보)를 응답으로서 되돌린다(단계193). 그 응답을 수신한 버퍼 서버모듈(21)은, 멀티미디어 정보를 수신하여, 분할함과 아울러(단계194), 원격 다이렉트 메모리 액세스 기능을 사용하고, 분할 멀티미디어 정보 기록 요구에 대한 응답에 포함되어 있는 메모리 정보를 바탕으로, 스토리지 서버모듈(31)내의 버퍼에 송신한다(단계195). 스토리지 서버모듈(31)은, 다음 분할 멀티미디어 정보 기록 요구의 수신(단계192-3)을 계기로, 전송된 분할 멀티미디어 정보를 축적 장치(41)에 축적한다(단계196). 다음에, 버퍼 서버모듈(21)은, 분할 멀티미디어 정보 기록 요구를 스토리지 서버모듈(32)에 대하여 송신하고(단계192-2), 단계193∼196를 반복해 실행한다. 또한, 스토리지 서버모듈을 늘린 경우에는, 상기의 처리에 이어서 스토리지 서버모듈(33, 34, 35, …)과 순서적으로 분할 멀티미디어 정보를 축적하고, 최후의 스토리지 서버모듈까지 가면, 다시, 최초의 스토리지 서버모듈(31)로부터 축적을 행한다. 이렇게 함에 따라, 다수의 단말로부터 요구를 받아도 처리가 가능해진다.
이상, 재생 처리의 복수의 실시 예와 등록 처리의 복수의 실시 예에 관하여 설명했지만, 대응한 실시 예를 조합해서(예를 들면, 재생 처리의 제1의 실시 예와 등록 처리의 제1의 실시 예를 조합해서) 분산형 멀티미디어 서버 시스템을 구성해도 좋고, 대응하지 않는 실시 예를 조합해서(예를 들면, 재생 처리의 제1의 실시 예와 등록 처리의 제2의 실시 예를 조합해서) 분산형 멀티미디어 서버 시스템을 구성해도 좋다.
이상 설명한 각 실시 예의 각 서버 모듈은, 각각의 기능, 동작, 단계를 실현하기 위한 수단을 가지고 있고, 그것들의 수단은 컴퓨터와 프로그램으로 구성할 수 있고, 그 프로그램은 기억매체에 기억할 수 있다. 또한, 프로그램을 사용하는 대신에, 그 일부 또는 전부를 하드웨어로 구성할 수도 있다.
이상, 본 발명자에 의해 이루어진 발명을, 상기 실시 예에 근거해 구체적으로 설명했지만, 본 발명은, 상기 실시 예에 한정되는 것이 아니고, 그 요지를 일탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다.

Claims (34)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 멀티미디어 정보를 분할하여 축적하고, 단말로부터의 요구에 따라 분산하는 분산형 멀티미디어 서버 시스템으로서, 상기 분산형 멀티미디어 서버 시스템은,
    제1의 서버 모듈과,
    분할 방식으로 멀티미디어 정보를 저장하는 축적장치에 연결되고, 상기 축적장치로부터 판독된 분할된 멀티미디어 정보를 저장하는 버퍼 메모리를 구비한 제2의 서버 모듈과,
    원격 다이렉트 메모리 액세스에 의해 서로의 메모리를 상기 제 1의 서버 모듈과 상기 제 2의 서버 모듈이 서로 액세스 가능하게 하는 네트워크 또는 버스 시스템을 구비하고,
    상기 제1의 서버 모듈은,
    단말로부터의 멀티미디어 정보에 대한 제 1 판독 요구를 수신하는 수신부와,
    상기 제 1 판독 요구에 따라, 상기 제2의 서버 모듈에 대하여, 상기 멀티미디어 정보에 대응한 분할된 멀티미디어 정보에 대한 제 2 판독 요구를 송신하는 요구부와,
    상기 제2의 서버 모듈로부터 수신한 상기 분할 멀티미디어 정보가 격납된 버퍼 메모리에 관한 제 1 메모리 정보를 바탕으로, 버퍼 메모리로부터 상기 원격 다이렉트 메모리 액세스에 의해 분할 멀티미디어 정보를 전송 및 취득하는 전송부와,
    상기 단말 또는 또 다른 단말 중 어느 하나에 상기 멀티미디어 정보와, 상기 제 1 판독 요구로 지정된 어드레스를 송신하는 송신부를 구비하고,
    상기 제2의 서버 모듈은, 상기 제 2 판독 요구에서 요구된 분할 멀티미디어정보를 축적 장치로부터 판독하여 버퍼 메모리에 저장하는 판독부를 구비한 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  16. 제 15 항에 있어서,
    상기 제2의 서버 모듈은,
    상기 버퍼 메모리에 상기 분할 멀티미디어 정보를 새롭게 기록한 것을 나타낸 갱신 정보와, 상기 제 1 메모리 정보를, 저장하는 정보 메모리와,
    상기 정보 메모리에 관한 제 2 메모리 정보를 상기 제1의 서버 모듈에 통지하는 통지부를 더 구비하고,
    상기 전송부는, 상기 통지부로부터 제 2 메모리 정보를 받을 때, 상기 원격 다이렉트 메모리 액세스를 사용하여 제 2 메모리 정보에 의거하여 상기 갱신 정보와 상기 제 1 메모리 정보를 취득하고, 새롭게 분할 멀티미디어 정보가 기록되는 경우에 그 분할 멀티미디어 정보를 취득하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  17. 제 15 항 또는 제 16 항에 있어서,
    상기 제2의 서버 모듈은, 상기 제1의 서버 모듈로부터의 제 2 판독 요구에 대한 응답으로서, 상기 제1의 서버 모듈이 제 1 메모리 정보를 판독하기 전까지 미리, 상기 제1의 서버 모듈에 대하여, 상기 제 1 메모리 정보 또는 상기 제 2 메모리 정보를 통지하는 수단을 구비하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  18. 제 16 항에 있어서,
    상기 제2의 서버 모듈은, 상기 제1의 서버 모듈이 제 1 메모리 정보를 판독하기 전까지 미리, 상기 제1의 서버 모듈에 대하여 상기 제 2 메모리 정보를 송신하는 수단을 구비하고,
    상기 제1의 서버 모듈은, 상기 제 2 판독 요구를 상기 제2의 서버 모듈에 대하여 송신한 후, 상기 미리 취득한 상기 제 2 메모리 정보를 바탕으로, 상기 제2의 서버 모듈내의 신규 기록 정보 메모리로부터 상기 갱신 정보와 상기 제 1 메모리 정보를 취득하는 수단을 구비하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  19. 제 15 항에 있어서,
    상기 제2의 서버 모듈은, 분할 멀티미디어 정보를 순환적으로 축적하고 있는 복수의 제2의 서버 모듈을 구비하고,
    상기 요구부는, 순차로, 제2의 서버 모듈에 제 2 판독 요구를 송신하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  20. 제 15 항에 있어서,
    상기 수신부는, 단말로부터의 멀티미디어 정보를 기록하는 제 1 기록 요구를 수신하고,
    상기 요구부는, 상기 제 1 기록 요구에 따라, 상기 제2의 서버 모듈에 대하여, 상기 멀티미디어 정보에 대응한 분할 멀티미디어 정보를 기록하는 제 2 기록 요구를 송신하고,
    상기 전송부는, 상기 제2의 서버 모듈로부터 수신한 상기 분할 멀티미디어 정보를 저장하는데 사용 가능한 버퍼 메모리에 관한 정보인 제 2 메모리 정보를 바탕으로, 상기 버퍼 메모리에 상기 원격 다이렉트 메모리 액세스에 의해 분할 멀티미디어 정보를 전송하고,
    상기 제2의 서버 모듈은, 상기 전송부에 의해 버퍼 메모리에 기록된 분할 멀티미디어 정보를 축적 장치에 기록하는 기록부를 더 구비하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  21. 제 15 항에 있어서,
    상기 제1의 서버 모듈은, 분할된 멀티미디어 정보를 저장하는 버퍼 메모리를 더 구비하고,
    상기 수신부는, 단말로부터의 멀티미디어 정보를 기록하는 제 1 기록 요구를 수신하고,
    상기 요구부는, 상기 제 1 기록 요구에 따라, 상기 제2의 서버 모듈에 대하여, 상기 멀티미디어 정보에 대응한 분할 멀티미디어 정보를 기록하는 제 2 기록 요구를 송신하고, 상기 제 2 기록 요구는 상기 분할 멀티미디어 정보를 저장하는 버퍼 메모리에 관한 제 2 메모리 정보를 포함하고,
    상기 제2의 서버 모듈은, 제 2 메모리 정보에 의거하여 상기 버퍼 메모리로부터 상기 분할 멀티미디어 정보를 판독하여 원격 다이렉트 메모리 액세스에 의해 상기 축적 장치에 전송하는 전송부를 더 구비한 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  22. 제 20 항에 있어서,
    상기 제2의 서버 모듈은 복수의 제2의 서버 모듈을 구비하고,
    상기 요구부는, 순차로, 제2의 서버 모듈에 제 2 판독 요구를 송신하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  23. 제 21 항에 있어서,
    상기 제2의 서버 모듈은 복수의 제2의 서버 모듈을 구비하고,
    상기 요구부는, 순차로, 제2의 서버 모듈에 제 2 판독 요구를 송신하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  24. 멀티미디어 정보를 분할하여 축적하고, 단말로부터의 요구에 따라 분산하는 분산형 멀티미디어 서버 시스템으로서, 상기 분산형 멀티미디어 서버 시스템은,
    분할 멀티미디어 정보를 저장하는 버퍼 메모리를 구비한 제1의 서버 모듈과,
    분할 방식으로 멀티미디어 정보를 저장하는 축적장치에 연결되는 제2의 서버 모듈과,
    원격 다이렉트 메모리 액세스에 의해 서로의 메모리를 상기 제 1의 서버 모듈과 상기 제 2의 서버 모듈이 서로 액세스 가능하게 하는 네트워크 또는 버스 시스템을 구비하고,
    상기 제1의 서버 모듈은,
    단말로부터의 멀티미디어 정보에 대한 제 1 판독 요구를 수신하는 수신부와,
    상기 제 1 판독 요구에 따라, 상기 제2의 서버 모듈에 대하여, 상기 멀티미디어 정보에 대응한 분할된 멀티미디어 정보에 대한 상기 버퍼 메모리에 관한 제 1 메모리 정보를 갖는 제 2 판독 요구를 송신하는 요구부와,
    상기 단말 또는 또 다른 단말 중 어느 하나에 상기 멀티미디어 정보와, 상기 제 1 판독 요구로 지정된 어드레스를 송신하는 송신부를 구비하고,
    상기 제2의 서버 모듈은,
    상기 제 2 판독 요구에서 요구된 분할 멀티미디어정보를 축적 장치로부터 판독하여 원격 다이렉트 메모리 액세스를 사용한 제 1 메모리 정보에 의거하여 상기 버퍼 메모리에 그 분할 멀티미디어 정보를 전송하는 전송부와,
    상기 분할 멀티미디어 정보가 버퍼 메모리에 기록된 것을 제 1의 서버 모듈에 통지하는 통지부를 구비한 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  25. 제 24 항에 있어서,
    상기 제1의 서버 모듈은,
    상기 제2의 서버 모듈에 의해 상기 분할 멀티미디어 정보가 기록되었는지를 나타낸 정보를 저장하는 정보 메모리를 더 구비하고,
    상기 제 2 판독 요구는 그 정보 메모리의 어드레스를 더 포함하고,
    상기 통지부는 분할 멀티미디어 정보를 기록한 것을 나타낸 정보를 상기 정보 메모리에 기록하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  26. 제 24 항에 있어서,
    상기 제2의 서버 모듈은, 분할 멀티미디어 정보를 순환적으로 축적하고 있는 복수의 제2의 서버 모듈을 구비하고,
    상기 요구부는, 순차로, 제2의 서버 모듈에 제 2 판독 요구를 송신하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  27. 제 24 항에 있어서,
    상기 수신부는, 단말로부터의 멀티미디어 정보를 기록하는 제 1 기록 요구를 수신하고,
    상기 요구부는, 상기 제 1 기록 요구에 따라, 상기 제2의 서버 모듈에 대하여, 상기 멀티미디어 정보에 대응한 분할 멀티미디어 정보를 기록하는 제 2 기록 요구를 송신하고,
    상기 제1의 서버 모듈은, 상기 제2의 서버 모듈로부터 수신한 상기 분할 멀티미디어 정보를 저장하는데 사용 가능한 제2의 서버 모듈의 버퍼 메모리에 관한 정보인 제 2 메모리 정보를 바탕으로, 상기 버퍼 메모리에 원격 다이렉트 메모리 액세스에 의해 분할 멀티미디어 정보를 전송하는 전송부를 더 구비하고,
    상기 제2의 서버 모듈은, 상기 전송부에 의해 버퍼 메모리에 기록된 분할 멀티미디어 정보를 축적 장치에 기록하는 기록부를 더 구비하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  28. 제 24 항에 있어서,
    상기 수신부는, 단말로부터의 멀티미디어 정보를 기록하는 제 1 기록 요구를 수신하고,
    상기 요구부는, 상기 제 1 기록 요구에 따라, 상기 제2의 서버 모듈에 대하여, 상기 멀티미디어 정보에 대응한 분할된 멀티미디어 정보에 대한 상기 버퍼 메모리에 관한 제 2 메모리 정보를 갖는 제 2 기록 요구를 송신하고,
    상기 전송부는, 상기 제 2 메모리 정보에 의거하여 분할 멀티미디어정보를 버퍼 메모리로부터 판독하여 원격 다이렉트 메모리 액세스를 사용하여 상기 축적장치에 그 분할 멀티미디어 정보를 전송하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  29. 제 27 항에 있어서,
    상기 제2의 서버 모듈은, 복수의 제2의 서버 모듈을 구비하고,
    상기 요구부는, 순차로, 제2의 서버 모듈에 제 2 판독 요구를 송신하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  30. 제 28 항에 있어서,
    상기 제2의 서버 모듈은, 복수의 제2의 서버 모듈을 구비하고,
    상기 요구부는, 순차로, 제2의 서버 모듈에 제 2 판독 요구를 송신하는 것을 특징으로 하는 분산형 멀티미디어 서버 시스템.
  31. 멀티미디어 정보를 분할하여 축적하고 단말로부터의 요구에 따라 분산하되,제1의 서버 모듈과, 분할 방식으로 멀티미디어 정보를 저장하는 축적장치에 연결되고 상기 축적장치로부터 판독된 분할 멀티미디어 정보를 저장하는 버퍼 메모리를 구비한 제2의 서버 모듈과, 원격 다이렉트 메모리 액세스에 의해 서로의 메모리를 상기 제1의 서버 모듈과 상기 제2의 서버 모듈이 서로 액세스 가능하게 하는 네트워크 또는 버스 시스템을 구비한 분산형 멀티미디어 서버 시스템에 적용된 멀티미디어 정보 분배방법으로서,
    상기 제1의 서버 모듈이, 단말로부터의 멀티미디어 정보에 대한 제 1 판독 요구를 수신하는 공정과,
    상기 제1의 서버 모듈이, 상기 제 1 판독 요구에 따라, 상기 멀티미디어 정보에 대응한 분할 멀티미디어 정보에 대한 제 2 판독 요구를, 상기 제2의 서버 모듈에 송신하는 공정과,
    상기 제2의 서버 모듈이, 상기 제 2 판독 요구에 의해 요구된 분할 멀티미디어 정보를 축적 장치로부터 판독하여, 버퍼 메모리에 그 분할 멀티미디어 정보를 저장하는 공정과,
    상기 제1의 서버 모듈이, 상기 제2의 서버 모듈에서 수신한 분할 멀티미디어 정보를 저장하는 버퍼 메모리에 관한 메모리 정보를 바탕으로, 버퍼 메모리로부터 상기 원격 다이렉트 메모리 액세스 기능에 의해 분할 멀티미디어 정보를 취득하는 공정과,
    상기 단말 또는 또 다른 단말 중 어느 하나에 상기 멀티미디어 정보와, 상기 제 1 판독 요구로 지정된 어드레스를 송신하는 공정을 포함한 것을 특징으로 하는 멀티미디어 정보 분배방법.
  32. 멀티미디어 정보를 분할하여 축적하고 단말로부터의 요구에 따라 분산하되,분할 멀티미디어 정보를 저장하는 버퍼 메모리를 구비한 제1의 서버 모듈과, 분할 방식으로 멀티미디어 정보를 저장하는 축적장치에 연결된 제2의 서버 모듈과, 원격 다이렉트 메모리 액세스에 의해 서로의 메모리를 상기 제1의 서버 모듈과 상기 제2의 서버 모듈이 서로 액세스 가능하게 하는 네트워크 또는 버스 시스템을 구비한 분산형 멀티미디어 서버 시스템에 적용된 멀티미디어 정보 분배방법으로서,
    상기 제1의 서버 모듈이, 단말로부터의 멀티미디어 정보에 대한 제 1 판독 요구를 수신하는 공정과,
    상기 제1의 서버 모듈이, 상기 제 1 판독 요구에 따라, 상기 멀티미디어 정보에 대응한 분할 멀티미디어 정보에 대한 상기 버퍼 메모리에 관한 메모리 정보를 포함한 제 2 판독 요구를, 상기 제2의 서버 모듈에 송신하는 공정과,
    상기 제2의 서버 모듈이, 상기 제 2 판독 요구에 의해 요구된 분할 멀티미디어 정보를 축적 장치로부터 판독하여, 원격 다이렉트 메모리 액세스를 사용하여 메모리 정보에 의거하여 상기 버퍼 메모리에 그 분할 멀티미디어 정보를 전송하는 공정과,
    상기 제2의 서버 모듈이 상기 분할 멀티미디어 정보를 버퍼 메모리에 기록한 것을 상기 제1의 서버 모듈에 통지하고,
    상기 제1의 서버 모듈이, 상기 단말 또는 또 다른 단말 중 어느 하나에 상기 멀티미디어 정보와, 상기 제 1 판독 요구로 지정된 어드레스를 송신하는 공정을 포함한 것을 특징으로 하는 멀티미디어 정보 분배방법.
  33. 삭제
  34. 삭제
KR1020077003308A 2005-05-18 2006-05-18 분산형 멀티미디어 서버 시스템 및 멀티미디어 정보분배방법 KR100895859B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005145922 2005-05-18
JPJP-P-2005-00145922 2005-05-18

Publications (2)

Publication Number Publication Date
KR20070088476A KR20070088476A (ko) 2007-08-29
KR100895859B1 true KR100895859B1 (ko) 2009-05-06

Family

ID=37431319

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077003308A KR100895859B1 (ko) 2005-05-18 2006-05-18 분산형 멀티미디어 서버 시스템 및 멀티미디어 정보분배방법

Country Status (6)

Country Link
US (1) US9002969B2 (ko)
EP (1) EP1883240B1 (ko)
JP (1) JP4300238B2 (ko)
KR (1) KR100895859B1 (ko)
CN (1) CN101006727B (ko)
WO (1) WO2006123747A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4675290B2 (ja) * 2006-07-04 2011-04-20 日本電信電話株式会社 マルチメディア蓄積配信サーバ、および、マルチメディアデータ多重読出し書込み方法
US7924456B1 (en) * 2007-01-12 2011-04-12 Broadbus Technologies, Inc. Data distribution and buffering
JP4879815B2 (ja) * 2007-04-27 2012-02-22 日本電信電話株式会社 マルチメディア情報転送蓄積方法、分散型マルチメディアサーバ装置、分散型マルチメディアサーバシステム、マルチメディア情報転送蓄積方法を実現するプログラムおよび当該プログラムを記録した記録媒体
JP2008294794A (ja) * 2007-05-25 2008-12-04 Nippon Telegr & Teleph Corp <Ntt> 分散型マルチメディアサーバシステムおよびそのマルチメディア情報配信・蓄積方法
JP4860549B2 (ja) * 2007-05-29 2012-01-25 日本電信電話株式会社 音声映像多重信号記録システム、音声映像多重信号記録方法、データ転送プログラム、多重信号記録プログラムおよび音声映像多重信号記録装置
JP4772752B2 (ja) * 2007-06-14 2011-09-14 日本電信電話株式会社 分散型マルチメディアサーバシステム、そのためのバッファサーバ、およびその分割マルチメディア情報蓄積配信方法
WO2009107881A1 (en) * 2008-02-26 2009-09-03 Samsung Electronics Co, . Ltd. Method and apparatus for recording digital multimedia based on buffering states of the multimedia service
JP5470828B2 (ja) * 2008-12-10 2014-04-16 株式会社日立製作所 データ配信用通信装置、及びデータ配信システム
CN101887640B (zh) * 2010-06-21 2012-05-23 北京世纪高通科技有限公司 交通信息发布的方法及系统
WO2012143975A1 (en) * 2011-04-21 2012-10-26 Hitachi, Ltd. Storage apparatus and data control method of the same
US10275375B2 (en) 2013-03-10 2019-04-30 Mellanox Technologies, Ltd. Network interface controller with compression capabilities
CN104581404B (zh) * 2013-10-21 2018-12-07 腾讯科技(深圳)有限公司 多媒体数据的处理方法、装置及系统
US9575893B2 (en) * 2014-10-22 2017-02-21 Mediatek Inc. Snoop filter for multi-processor system and related snoop filtering method
CN110677686B (zh) * 2019-10-14 2022-04-15 体奥动力(北京)体育传播有限公司 一种多媒体信息调用方法、装置、系统及服务器
KR20230170328A (ko) 2022-06-10 2023-12-19 김수한 무인 음주측정기

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001071524A1 (en) 2000-03-22 2001-09-27 Yotta Yotta, Inc. Method and system for providing multimedia information on demand over wide area networks

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE451219B (sv) * 1986-03-05 1987-09-14 Stiftelsen Inst Mikrovags Dataanordning fremst avsedd for exekvering av program i form av soktred, s k or parallel execution
US6173329B1 (en) * 1997-02-19 2001-01-09 Nippon Telegraph And Telephone Corporation Distributed multimedia server device and distributed multimedia server data access method
JP3461278B2 (ja) 1997-02-19 2003-10-27 日本電信電話株式会社 分散マルチメディアサーバ装置,分散マルチメディアサーバ情報アクセス方法およびこの方法を実現するプログラムを記録した記録媒体
US6061720A (en) * 1998-10-27 2000-05-09 Panasonic Technologies, Inc. Seamless scalable distributed media server
US7034838B2 (en) * 2001-12-27 2006-04-25 Ricoh Company, Ltd. Information processing apparatus
US20030145230A1 (en) 2002-01-31 2003-07-31 Huimin Chiu System for exchanging data utilizing remote direct memory access
CN1272932C (zh) * 2003-04-28 2006-08-30 王生安 基于ip网络的分布式多媒体会议系统
US7424562B2 (en) * 2004-03-01 2008-09-09 Cisco Technology, Inc. Intelligent PCI bridging consisting of prefetching data based upon descriptor data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001071524A1 (en) 2000-03-22 2001-09-27 Yotta Yotta, Inc. Method and system for providing multimedia information on demand over wide area networks

Also Published As

Publication number Publication date
EP1883240B1 (en) 2014-04-02
CN101006727A (zh) 2007-07-25
EP1883240A4 (en) 2013-01-16
WO2006123747A1 (ja) 2006-11-23
CN101006727B (zh) 2010-05-19
JPWO2006123747A1 (ja) 2008-12-25
US9002969B2 (en) 2015-04-07
KR20070088476A (ko) 2007-08-29
EP1883240A1 (en) 2008-01-30
JP4300238B2 (ja) 2009-07-22
US20080091789A1 (en) 2008-04-17

Similar Documents

Publication Publication Date Title
KR100895859B1 (ko) 분산형 멀티미디어 서버 시스템 및 멀티미디어 정보분배방법
CN107391271B (zh) 一种基于消息队列系统的延时任务触发方法和装置
US8880650B2 (en) System and method for storing streaming media file
US9621620B2 (en) Apparatus and method for providing content with a distributed architecture, and system for providing content with the said apparatus
JP3320985B2 (ja) ノードを選択する方法、分散ビデオ・サーバー・システム、記憶装置を選択する方法、および、分散計算システム
KR100396109B1 (ko) 패킷스위치및패킷스위치용제어기
US8799535B2 (en) Storage of data utilizing scheduling queue locations associated with different data rates
JP2002314598A (ja) データ配送方法
CN102055718B (zh) 一种在http streaming系统中实现分层请求内容的方法,装置和系统
JP2002111716A (ja) パケットスイッチ及びそれに用いるマルチキャスト制御方式
US20150088995A1 (en) Method and apparatus for sharing contents using information of group change in content oriented network environment
JP2013257798A (ja) データ収集システムおよびデータ収集方法
Lu et al. Memory efficient loss recovery for hardware-based transport in datacenter
CN110445723A (zh) 一种网络数据调度方法及边缘节点
CN107438201B (zh) 消息处理系统、方法及装置
CN117278628B (zh) 数据传输方法、装置、系统、计算机设备和存储介质
CN105610823A (zh) 一种基于任务向量的流媒体处理方法及其处理系统架构
US20150199298A1 (en) Storage and network interface memory share
US20130254268A1 (en) Method for streaming media and media controller
CN116668415A (zh) 流媒体数据处理方法及系统
Keller et al. Performance bottlenecks in digital movie systems
CN101212452B (zh) 一种基于实时传输协议的多媒体数据传输控制方法
JP5498875B2 (ja) 分散型マルチメディアサーバシステム、分散型マルチメディア蓄積方法、及び分散型マルチメディア配信方法
JP2008294794A (ja) 分散型マルチメディアサーバシステムおよびそのマルチメディア情報配信・蓄積方法
CN110881133B (zh) 一种视频播放方法和设备

Legal Events

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

Payment date: 20130311

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140121

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150202

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180413

Year of fee payment: 10