KR100841217B1 - Apparatus and method for controlling file streaming - Google Patents
Apparatus and method for controlling file streaming Download PDFInfo
- Publication number
- KR100841217B1 KR100841217B1 KR1020070008790A KR20070008790A KR100841217B1 KR 100841217 B1 KR100841217 B1 KR 100841217B1 KR 1020070008790 A KR1020070008790 A KR 1020070008790A KR 20070008790 A KR20070008790 A KR 20070008790A KR 100841217 B1 KR100841217 B1 KR 100841217B1
- Authority
- KR
- South Korea
- Prior art keywords
- file
- reception
- streaming
- web server
- reception speed
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004891 communication Methods 0.000 claims description 12
- 238000012546 transfer Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003139 buffering effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/613—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Environmental & Geological Engineering (AREA)
- Primary Health Care (AREA)
- Health & Medical Sciences (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
도 1은 본 발명에 의한 파일 스트리밍 제어기가 적용된 복수의 클라이언트PC와 웹서버에 관한 시스템 구성도,1 is a system configuration diagram of a plurality of client PCs and a web server to which a file streaming controller according to the present invention is applied;
도 2는 본 발명에 의한 파일 스트리밍 제어방법의 일례의 흐름도,2 is a flowchart of an example of a file streaming control method according to the present invention;
도 3은 본 발명에 의한 파일 스트리밍 제어방법에 따른 웹서버 - 클라이언트PC 간 파일 스트리밍의 흐름을 나타낸 흐름도,3 is a flowchart illustrating a flow of file streaming between a web server and a client PC according to the file streaming control method according to the present invention;
도 4는 도 3의 일부를 더욱 자세히 나타낸 도면,4 shows a part of FIG. 3 in more detail;
도 5는 도 3의 다른 일부를 더욱 자세히 나타낸 도면이다. 5 is a view showing another part of FIG. 3 in more detail.
본 발명은 파일 스트리밍 제어기 및 제어방법에 관한 것으로서, 보다 상세하게는 통신 네트워크를 통하여 동영상 콘텐츠를 다운로드받는 복수의 클라이언트PC에 대한 파일 스트리밍 트래픽을 제어하는 별도의 스트리밍 서버가 없이도 트래픽을 제어할 수 있는 동영상의 스트리밍 시스템 및 방법에 관한 것이다. The present invention relates to a file streaming controller and a control method, and more particularly, to control traffic without a separate streaming server for controlling file streaming traffic for a plurality of client PCs that download video content through a communication network. A streaming system and method for video.
최근 초고속 인터넷의 급속한 보급에 따른 대역폭의 증가로 인하여 인터넷을 통한 대용량의 동영상 파일 전송이 가능해졌다. 이에 따라, 대용량의 동영상 파일 전체를 웹서버로부터 내려받거나(이른바 "파일 다운로드(download)"), 파일 전체를 내려받지 않은 상태에서 실시간으로 웹서버에 접속하여 동영상 파일을 계속적으로 내려받는(이른바 "스트리밍(streaming)") 방식을 통하여 일반 이용자들이 웹서버에 저장되어 있는 동영상 파일을 재생할 수 있게 되었다. Recently, due to the increase in bandwidth due to the rapid spread of the high-speed Internet, it is possible to transfer a large amount of video files through the Internet. Accordingly, a large amount of video files can be downloaded from a web server (so-called "download"), or a video file can be accessed in real time without downloading the whole file and continuously downloaded (so-called " Streaming "allows end users to play video files stored on a web server.
그러나, 종래기술에 의한 동영상 제공의 문제점은, 웹서버에 접속하는 복수의 클라이언트PC 각각에 대한 트래픽 제어를 하지 않는 경우, 회선의 대역폭 또는 클라이언트PC의 성능 등의 요인에 따라 특정 클라이언트PC에 웹서버로의 대역폭이 편중된다는 것이었다. 이에 따라, 다른 다수의 클라이언트PC에서는 파일 전송율이 저하됨으로써 정상적인 동영상 스트리밍이 불가능해지고 계속적인 버퍼링이 수행되는 결과가 초래되었다. However, the problem of providing a moving picture according to the prior art is that when the traffic control for each of the plurality of client PCs connected to the web server is not controlled, the web server is connected to a specific client PC depending on the factors such as the bandwidth of the line or the performance of the client PC. The bandwidth of the furnace was biased. As a result, the file transfer rate is reduced in many other client PCs, and thus, normal video streaming is impossible and continuous buffering is performed.
이를 해결하기 위하여, 종래기술에서는 특정 웹서버에 접속하여 동영상 스트리밍 서비스를 이용하고자 하는 복수의 클라이언트PC에 대한 스트리밍 트래픽 제어를 담당하기 위한 별도의 서버, 예를 들어 플래시 미디어 서버(Flash Media Server)를 웹서버측에 설치하는 것이 일반화되었다. In order to solve this problem, in the related art, a separate server for controlling streaming traffic for a plurality of client PCs that want to use a video streaming service by accessing a specific web server is provided, for example, a flash media server. Installation on the web server side has become common.
그러나, 종래기술에서와 같이 웹서버와 별도의 플래시 미디어 서버를 구축하는 경우에는, 플래시 미디어 서버의 구축을 위하여 추가적으로 하드웨어 및 소프트웨어의 구매비용 부담이 발생하는 문제가 있었다. 더욱이, 웹사이트에 접속하는 사용자의 증가에 비례하여 플래시 미디어 서버의 처리용량 향상을 위하여 이러한 비용부담이 가중된다는 문제점이 있었다.However, in the case of constructing a flash media server separate from the web server as in the related art, there is a problem in that a purchase cost of hardware and software is additionally generated for the construction of the flash media server. Moreover, there is a problem that this cost burden is increased in order to improve the processing capacity of the flash media server in proportion to the increase of users accessing the website.
이러한 문제점으로 말미암아, 별도의 스트리밍 서버가 없이도 통신 네트워크를 통하여 동영상 콘텐츠를 스트리밍함에 있어서 복수의 클라이언트PC에 대한 트래픽 제어를 구현할 수 있는 동영상의 스트리밍 제어기 및 제어방법의 발명에 관한 요청이 꾸준히 제기되어 왔다.Due to these problems, requests for the invention of a video streaming controller and a control method capable of implementing traffic control for a plurality of client PCs in streaming video content through a communication network without a separate streaming server have been steadily raised. .
본 발명은 상기와 같은 요청에 부응하여 착안된 것으로서, 트래픽 제어를 위한 별도의 스트리밍 서버가 없이도 통신 네트워크를 통하여 동영상 콘텐츠를 다운로드받는 복수의 클라이언트에 대한 트래픽을 제어할 수 있는 파일 스트리밍 제어기 및 제어방법을 제공하는 것을 목적으로 한다. The present invention has been conceived in response to the above-described request, and a file streaming controller and control method capable of controlling traffic for a plurality of clients downloading video content through a communication network without a separate streaming server for traffic control. The purpose is to provide.
상기와 같은 목적을 달성하기 위하여, 본 발명에 의한 파일 스트리밍 제어기는, 통신 네트워크를 통하여 웹서버와 연결된 클라이언트PC 내에서, 상기 웹서버로부터 제1 수신시간 동안 수신한 데이터의 수신속도가 제1 수신속도를 초과하는지 여부를 판단하여, 상기 제1 수신속도를 초과한 경우에는 상기 파일 데이터의 수신을 제1 대기시간만큼 일시중지한 후 수신을 재개하는 역할을 수행한다. In order to achieve the above object, the file streaming controller according to the present invention, in the client PC connected to the web server through a communication network, the reception speed of the data received during the first reception time from the web server is received first It is determined whether the speed is exceeded, and when the first reception speed is exceeded, the reception of the file data is paused by a first waiting time and then the reception is resumed.
또한, 본 발명의 다른 특징에 의한 파일 스트리밍 제어방법은, 통신 네트워크를 통하여 웹서버와 연결된 클라이언트PC 내의 스트리밍 제어기에서 수행되며, 상기 웹서버로부터 스트리밍의 대상이 되는 파일을 이루는 파일 데이터를 수신하는 단계와, 제1 수신시간 동안 수신한 상기 파일 데이터의 수신속도가 제1 수신속도를 초과하였는지 여부를 상기 스트리밍 제어기가 판단하는 단계와, 상기 파일 데이터 의 수신속도가 상기 제1 수신속도를 초과한 경우에는 상기 스트리밍 제어기가 상기 파일 데이터의 수신을 제1 대기시간만큼 일시중지한 후 수신을 재개하는 단계를 포함하여 이루어진다. In addition, the file streaming control method according to another aspect of the present invention, performed in a streaming controller in a client PC connected to a web server via a communication network, receiving a file data forming a file to be streamed from the web server And the streaming controller determines whether the reception speed of the file data received during the first reception time exceeds the first reception speed, and when the reception speed of the file data exceeds the first reception speed. And the streaming controller pauses the reception of the file data by a first waiting time and then resumes the reception.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. As those skilled in the art would realize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present invention. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.
한편, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.On the other hand, when a part is said to "include" a certain component, this means that it can further include other components, except to exclude other components unless otherwise stated.
이제 본 발명의 실시예에 따른 파일 스트리밍 제어기 및 제어방법에 대하여 도면을 참고로 하여 상세하게 설명한다.A file streaming controller and a control method according to an embodiment of the present invention will now be described in detail with reference to the drawings.
도 1은 본 발명에 의한 파일 스트리밍 제어기가 적용된 복수의 클라이언트PC와 웹서버에 관한 시스템 구성도이다. 1 is a system configuration diagram of a plurality of client PCs and a web server to which a file streaming controller according to the present invention is applied.
도 1에서 나타낸 바와 같이, 본 발명에 의한 파일 스트리밍 제어기가 적용된클라이언트PC(110)는 인터넷 등의 통신 네트워크(120)를 통하여 동영상을 제공하는 웹서버(100)에 연결되어 있다. 웹서버는 다양한 동영상을 관리하는 데이터베이스(101)를 포함하고 있다. As shown in FIG. 1, the client PC 110 to which the file streaming controller according to the present invention is applied is connected to a
도 1에서, 본 발명에 의한 파일 스트리밍 제어기는 복수의 클라이언트PC 각각(110a, 110b, 110c, 110d)에 소프트웨어적으로 또는 하드웨어적으로 내장된다. 여기에서 도면부호 110a, 110b, 110c, 110d는 본 발명이 4대의 클라이언트PC에 대하여 적용된다는 의미가 아니라 클라이언트PC가 복수임을 뜻하는 것으로서, 본 발명은 클라이언트PC가 몇 대가 되더라도 적용될 수가 있다. 1, the file streaming controller according to the present invention is embedded in software or hardware in each of a plurality of
본 발명에 의한 파일 스트리밍 제어기는 각각의 클라이언트PC(110a ~110d)에 소프트웨어적으로 또는 하드웨어적으로 내장되어 그 클라이언트PC의 동영상 스트리밍이 이미 설정된 스트리밍 속도를 초과하지 않도록 제어함으로써, 결과적으로 통신 네트워크를 통하여 웹서버(100)에 접속하는 모든 클라이언트PC(110)에 대하여 스트리밍 트래픽이 편중되지 않도록 하는 역할을 수행하게 된다. The file streaming controller according to the present invention is embedded in each client PC (110a ~ 110d) by software or hardware to control the video streaming of the client PC does not exceed the already set streaming rate, consequently the communication network Through this, the streaming traffic is not biased for all the
도 2는 본 발명에 의한 파일 스트리밍 제어방법의 일례를 나타낸 흐름도이다.2 is a flowchart illustrating an example of a file streaming control method according to the present invention.
도 2에서와 같이, 본 발명에 의한 파일 스트리밍 제어기를 통한 파일 스트리밍 제어방법은, 파일 데이터 수신 규칙을 설정하는 단계(S20), 웹서버로부터 데이터를 수신하는 단계(S21), 설정된 수신속도를 초과하였는지 여부를 파일 스트리밍 제어기가 판단하는 단계(S22) 및 파일 스트리밍 제어기가 판단결과에 따른 처리를 행하는 단계(S23, S24)를 포함하여 이루어진다. As shown in Figure 2, the file streaming control method through the file streaming controller according to the present invention, the step of setting the file data reception rule (S20), the step of receiving data from the web server (S21), exceeds the set reception speed And the step S22 of determining whether or not the file streaming controller determines whether or not the file streaming controller performs processing according to the determination result (S23, S24).
먼저, 본 발명에 의한 파일 스트리밍 제어방법을 구현하기 위해서는, 클라이언트PC 각각에 내장된 파일 스트리밍 제어기 상에서 파일 데이터 수신 규칙을 설정하는 단계가 선행되어야 한다(S20).First, in order to implement the file streaming control method according to the present invention, the step of setting the file data reception rule on the file streaming controller embedded in each of the client PC must be preceded (S20).
이 단계는, 그 클라이언트PC가 웹서버에 접속하여 파일, 예를 들어 특정 동영상 파일을 스트리밍받고자 하는 경우에, 파일 데이터의 수신속도에 관한 규칙을 설정하기 위한 단계이다. This step is a step for setting a rule regarding the reception speed of file data when the client PC connects to a web server and wants to stream a file, for example, a specific video file.
이 단계에서 설정할 수 있는 규칙으로서, 파일 스트리밍 제어기에는 "수신속도가 초당 초당 몇 바이트를 초과하지 말 것"을 지시하는 규칙(이하 "제1 규칙"이라 한다)을 설명한다. As a rule that can be set at this stage, the file streaming controller describes a rule (hereinafter referred to as "first rule") indicating that "the reception speed should not exceed a few bytes per second".
파일 데이터의 수신속도를 지정하기 위한 규칙인 제1 규칙을 설정하기 위해서, 파일 스트리밍 제어기는 수신받고자 하는 파일데이터 내에 포함된, 해당 파일의 수신속도에 관한 설정값을 참조할 수 있다. In order to set a first rule, which is a rule for specifying a reception speed of file data, the file streaming controller may refer to a setting value of a reception speed of a corresponding file included in file data to be received.
가령, 수신속도를 초당 50킬로바이트로 할 것에 관한 설정값이 파일 데이터 내의 헤더 등 특정 부분에 저장되어 있는 경우, 파일 스트리밍 제어기는 수신속도에 관한 파일 데이터 내의 이 설정값을 읽어들인 후 설정값에 따라 해당 파일의 데이터가 초당 50킬로바이트를 초과하지 않도록 하는 수신속도 규칙이 설정될 수 잇다. For example, if the setting value for setting the reception speed to 50 kilobytes per second is stored in a specific part such as a header in the file data, the file streaming controller reads this setting value in the file data regarding the reception speed and then sets the value accordingly. Rate rules can be set to ensure that data in the file does not exceed 50 kilobytes per second.
한편, 파일 데이터의 수신속도에 관한 규칙은 수신받고자 하는 파일 데이터에 수신속도에 관한 설정값을 참조하지 않고, 파일 스트리밍 제어기가 자체적으로 설정한 수신속도 값에 따라 제1 규칙을 설정하도록 하는 실시예 또한 가능하다.Meanwhile, an embodiment in which a rule regarding a reception speed of file data does not refer to a setting value of a reception speed in file data to be received, but sets the first rule according to a reception speed value set by the file streaming controller itself. It is also possible.
또한, 파일 데이터 수신 규칙을 설정하는 단계에서는, 수신속도가 제1 규칙을 초과한 경우에는 "일정시간 동안 파일 데이터 수신을 일시중지할 것"을 지시하는 규칙(이하 "제2 규칙"이라 한다)이 제1 규칙과 함께 더 설정될 수 있다. Further, in the step of setting the file data reception rule, a rule indicating "to pause file data reception for a predetermined time" when the reception speed exceeds the first rule (hereinafter referred to as "second rule") It may be set further with this first rule.
서버-클라이언트 간의 네트워크에서의 트래픽 상황에 따라 해당 파일 데이터의 수신속도는 빨라질 수도 있고 느려질 수도 있다. 그런데, 본 발명에 따르면 파일 스트리밍 제어기는 제1 규칙에 따른 수신속도 설정값보다 빠르게 파일데이터를 수신하지 않도록 하고 있다. Depending on the traffic situation in the network between server and client, the reception speed of the file data may be faster or slower. However, according to the present invention, the file streaming controller does not receive the file data faster than the reception speed setting value according to the first rule.
따라서, 실제 수신속도가 제1 규칙에 따른 수신속도 설정값을 초과한 경우에는 일정 대기시간동안 파일 데이터 수신을 일시중지하도록 함으로써, 평균 수신속도가 제1 규칙에 따른 수신속도 설정값을 초과하지 않도록 유지하게 된다.Therefore, when the actual reception speed exceeds the reception speed setting value according to the first rule, the file data reception is paused for a predetermined waiting time so that the average reception speed does not exceed the reception speed setting value according to the first rule. Will be maintained.
이때, 대기시간은 다음과 같이 계산된다.At this time, the waiting time is calculated as follows.
예를 들어 수신속도 설정값이 50킬로바이트/초로 설정이 되어 있는 동영상을 스트리밍 재생하는 경우를 가정해본다. For example, suppose that you are streaming a video whose reception rate is set to 50 kilobytes per second.
이 동영상을 스트리밍하는 과정 중의 특정 구간에서 1초 동안 60킬로바이트/초의 파일 데이터가 전송되었다면, 해당 구간에서 본래 전송되어야 하는 데이터량보다 10킬로바이트가 초과 전송된 것이 된다. If 60 kilobytes / sec of file data is transmitted for one second in a specific section of the video streaming process, more than 10 kilobytes of data is originally transmitted in the corresponding section.
따라서, 실제 수신속도의 평균값이 수신속도가 수신속도 설정값인 50킬로바이트/초를 초과하지 않는 값이 되도록 파일 스트리밍 제어기가 파일 데이터 수신을 일시중지하여야 하는 대기시간(t)은, Therefore, the waiting time t at which the file streaming controller should pause the reception of file data so that the average value of the actual reception speed is a value not exceeding 50 kilobytes / sec, which is the reception speed setting value,
가 된다.Becomes
여기에서는 실제 수신속도의 1초로 한 경우를 예로 들었으나, 파일 스트리밍 제어기는 파일 데이터의 수신이 이루어지는 동안 이보다 작은 시간단위, 가령 1/1000초 이내의 시간단위에서 반복적으로 모니터링을 행한다. 이에 따라, 그때 그때 제1 대기시간은 변경이 된다. In this example, the case where the actual reception speed is set to 1 second is used as an example. However, the file streaming controller repeatedly monitors a time unit smaller than this, for example, a time unit within 1/1000 second. Accordingly, at that time, the first waiting time is changed.
파일 데이터 수신 규칙이 설정되는 단계(S20)가 행해진 다음에, 클라이언트PC는 웹서버로부터 스트리밍받고자 하는 파일을 구성하는 데이터를 수신하게 된다(S21). 본 발명에서는 동영상 스트리밍 트래픽을 관리하는 별도의 플래시 미디어 서버가 없으므로, 클라이언트PC는 직접 웹서버로부터 파일 데이터를 수신하게 되는 것이다. After the step S20 of setting the file data reception rule is performed, the client PC receives data constituting the file to be streamed from the web server (S21). In the present invention, since there is no separate flash media server managing video streaming traffic, the client PC directly receives the file data from the web server.
클라이언트PC가 웹서버로부터 파일을 구성하는 데이터를 수신하면, 다음으로 파일 스트리밍 제어기는 데이터의 수신속도가 선행단계인 S20 단계에서 설정된 값을 초과하는지 여부를 판단하는 단계가 수행된다(S22). When the client PC receives the data constituting the file from the web server, the file streaming controller next determines whether the reception speed of the data exceeds the value set in the step S20 (S22).
만약 데이터의 수신속도가 제1 규칙으로 설정된 수신속도값을 초과한 경우에는, 제2 규칙에 따라 파일 스트리밍 제어기가 설정하는 제1 대기시간 동안 파일 데이터의 수신을 일시중지하는 단계가 수행된다(S23). 파일 스트리밍 제어기가 파일 데이터를 수신하는 동안 반복적으로 수신속도를 모니터링하여 적절한 제1 대기시간을 가변적으로 설정함은 앞서 살펴본 바와 같다.If the reception speed of the data exceeds the reception speed value set in the first rule, the step of suspending the reception of the file data for the first waiting time set by the file streaming controller according to the second rule is performed (S23). ). As described above, the file streaming controller variably sets the appropriate first waiting time by repeatedly monitoring the reception speed while receiving the file data.
파일 스트리밍 제어기가 이 단계를 수행함으로써, 본 발명에 의한 파일 스트 리밍 방법에서는 데이터를 수신한 시간과 일시중지한 제1 대기시간을 합한 시간대역에서의 평균 수신속도가 제1 규칙으로 설정된 수신속도값을 넘지 않도록 트래픽을 제어할 수 있게 된다.As the file streaming controller performs this step, in the file streaming method according to the present invention, a reception rate value in which the average reception speed in a time band in which the data reception time and the paused first waiting time are added is set as the first rule. Traffic can be controlled so as not to exceed.
데이터의 수신속도가 제1 규칙으로 설정된 수신속도값을 초과하지 않았거나, 단계S23이 수행된 이후에는, 클라이언트PC는 웹서버로부터 파일 데이터의 수신을 계속 행하게 된다(S24). If the reception speed of the data does not exceed the reception speed value set in the first rule or after step S23 is performed, the client PC continues to receive the file data from the web server (S24).
도 3은 본 발명에 의한 파일 스트리밍 제어방법에 따른 웹서버 - 클라이언트PC 간 파일 스트리밍 절차와 파일 재생 절차의 흐름을 자세히 나타낸 흐름도이다. 3 is a flowchart illustrating in detail a flow of a file streaming procedure and a file playback procedure between a web server and a client PC according to the file streaming control method according to the present invention.
클라이언트PC가 웹서버로부터 스트리밍하는 파일이 특정 동영상 파일인 경우에는 도 3에서 나타낸 바와 같이 클라이언트PC에 동영상재생기와 본 발명에 의한 스트리밍 제어기가 포함된다. 또한, 웹서버에는 스트리밍의 대상이 되는 동영상 파일이 저장되어 있다. 웹서버와 클라이언트PC는 인터넷 등의 통신 네트워크를 통하여 서로 연결되어 있다. If the file that the client PC streams from the web server is a specific video file, the video player and the streaming controller according to the present invention are included in the client PC as shown in FIG. In addition, a web server stores a video file to be streamed. The web server and the client PC are connected to each other through a communication network such as the Internet.
클라이언트PC에서 동영상 스트리밍을 행하기 위하여, 먼저 동영상재생기로부터 스트리밍 제어기측으로 파일요청신호가 전달된다(300). 스트리밍 제어기는 동영상재생기로부터 파일요청신호를 수신한 후(310), 해당 파일이 저장되어 있는 웹서버를 식별하여 그 웹서버에 파일 스트리밍 요청을 행한다(320). In order to perform video streaming on the client PC, a file request signal is first transmitted from the video player to the streaming controller (300). After receiving the file request signal from the video player (310), the streaming controller identifies a web server where the file is stored and makes a file streaming request to the web server (320).
웹서버는 파일 스트리밍 요청신호를 수신한 경우(321), 신호에 대응되는 동영상 파일을 구성하는 데이터를 해당 클라이언트PC로 전송하기 시작한다(322). When the web server receives the file streaming request signal (321), the web server starts transmitting data constituting the video file corresponding to the signal to the client PC (322).
클라이언트PC의 스트리밍 제어기는 웹서버로부터 전송되는 파일 데이터의 수 신을 개시하고, 수신된 파일 데이터를 로컬 하드디스크 등의 저장공간에 임시저장한다. The streaming controller of the client PC initiates the reception of the file data transmitted from the web server, and temporarily stores the received file data in a storage space such as a local hard disk.
스트리밍 제어기는 저장된 파일 데이터가 일정 버퍼링 크기에 도달하게 되면, 동영상재생기로부터 입력된 파일요청신호(300)에 대한 응답으로서 파일재생시작메시지(341)를 전송한다(340). 이에 따라 동영상재생기는 파일요청신호(300)에서 요청했던 내용에 따른 동영상 파일의 재생을 개시하게 된다(342). When the stored file data reaches a predetermined buffering size, the streaming controller transmits a file
동영상재생기에서 파일 재생을 개시한 후에도, 스트리밍 제어기에서는 스트리밍의 대상이 되는 동영상 파일의 전송이 종료될 때까지 웹서버로부터 파일 데이터를 계속 수신하게 된다. 이 때, 데이터 수신속도가 앞서 도 2의 단계S20에서 설정된 바와 같은 제1 규칙에 따른 전송속도 제한을 초과하지 않았는지 여부를 계속적으로 판단하고, 전송속도 제한을 초과한 경우에는 제2 규칙에 따라 파일 전송 제어기가 가변적으로 설정한 제1 대기시간 동안 전송을 일시중지함으로써 평균 전송속도가 제1 규칙에 따른 제한을 초과하지 않도록 스트리밍 제어기가 그 클라이언트PC의 수신 트래픽을 제어하는 단계(350)를 수행하는 것은 앞서 도 2를 참조하여 설명한 바와 동일하다. Even after starting the file playback in the video player, the streaming controller continues to receive the file data from the web server until the transmission of the video file to be streamed ends. At this time, it is continuously determined whether the data reception rate has not exceeded the transmission rate limit according to the first rule as set in step S20 of FIG. 2, and when the transmission rate limit is exceeded, according to the second rule. The streaming controller controls the received traffic of the client PC so that the average transfer rate does not exceed the limit according to the first rule by pausing the transmission for the first waiting time that the file transfer controller is variably set (350). The same as described above with reference to FIG.
웹서버로부터 전체 동영상 파일 데이터의 수신을 완료하여 전체 파일 저장이 완료되면, 스트리밍 제어기는 전체 파일의 저장이 완료되었음을 동영상재생기에 알릴 수 있다(360). 동영상재생기는 이후, 스트리밍 제어기에 의하여 웹서버로부터 수신되어 클라이언트PC의 저장공간에 임시저장되어 있는 데이터 파일의 마지막까지를 재생한 후 파일 재생을 종료하게 된다(362). When the entire file storage is completed by receiving the entire video file data from the web server, the streaming controller may inform the video player that the storage of the entire file is completed (360). The video player then plays back up to the end of the data file received from the web server by the streaming controller and temporarily stored in the storage space of the client PC and ends file playback (362).
도 4는 도 3의 일부를 더욱 자세히 나타낸 도면이다. 4 is a view showing a portion of FIG. 3 in more detail.
도 4에는 도 3에서 나타낸 스트리밍 제어기에서 수행되는 각 단계 중에서 동영상재생기로부터 파일요청신호를 수신하는 단계(310) 및 수신한 파일요청신호에 따라 특정 웹서버에 파일 스트리밍 요청신호를 전송하는 단계(320)가 더욱 자세히 나타나 있다. 4 illustrates a
동영상재생기는 특정 동영상 파일을 맨 처음부터 재생할 수도 있으나, 사용자의 선택에 따라서는 중간부터 재생하도록 할 수도 있다. The video player may play a specific video file from the beginning, but may play the video from the middle according to the user's selection.
본 발명에 의한 스트리밍 제어기 및 제어방법에서는 동영상 파일을 맨 처음부터 재생할 것인지 중간의 특정부분부터 재생할 것인지 여부에 따라 이들 각각의 요청을 처리하는 절차가 다소 달라진다. In the streaming controller and control method according to the present invention, the procedure for processing each request varies somewhat depending on whether the video file is played from the beginning or from a specific part in the middle.
먼저 동영상 파일이 맨 처음부터 재생되는 경우를 살펴보기로 한다.First, a case in which a video file is played from the beginning will be described.
사용자가 스트리밍하고자 하는 특정 동영상 파일을 선택하게 되면, 선택에 따라 동영상재생기는 파일요청신호(300)를 스트리밍 제어기로 입력한다. When the user selects a specific video file to stream, the video player inputs the
파일요청신호(300)에는, 통신 네트워크 상에서의 해당 동영상의 위치에 관한 데이터(서버의 ip주소 정보, 서버 내의 해당 동영상의 위치 및 파일명을 포함한다)와, 해당 동영상을 처음부터 재생할 것인지 또는 중간의 특정 부분부터 재생할 것인지에 대한 데이터(중간의 특정 부분부터 재생한다면 재생 시작구간의 정확한 위치에 관한 정보를 포함한다)가 포함된다. The
스트리밍 제어기는 파일요청신호(300)를 수신한 후, 파일요청신호(300)에 포함된 재생요청 위치에 관한 정보를 판독함으로써 대상 파일이 처음부터 스트리밍되 어야 하는지 여부를 판단하게 된다(310a). After receiving the
처음부터 재생되어야 하는 파일인 것으로 판단된 경우에는, 스트리밍 제어기는 해당 동영상을 처음부터 스트리밍하고자 한다는 요청을 그 동영상 파일을 저장하고 있는 웹서버에 전송하기 위한 일반 다운로드 HTTP(Hyper Text Transfer Protocol) 전문을 작성한다(310b).If it is determined that the file should be played from the beginning, the streaming controller sends a general download Hyper Text Transfer Protocol (HTTP) message to send a request to stream the video from the beginning to the web server storing the video file. (310b).
이후, 웹서버에 접속을 하고, 작성한 전문을 웹서버에 전송하며, 웹서버로부터 전문에 따른 응답을 대기하는 것으로써 도 2에서의 파일 스트리밍 요청 단계(320)가 수행된다.Thereafter, the file
한편, 동영상재생기가 동영상을 중간의 특정구간부터 재생되도록 파일요청신호(300)를 전송한 경우에는, 스트리밍 제어기는 파일요청신호로부터 이에 관한 정보를 판독한 후(310a), 파일요청신호(300)에 포함된 재생 시작구간의 위치에 관한 정보에 의거하여 구간(Range) 헤더를 추가한 다운로드 HTTP 전문을 작성한다(310c). On the other hand, when the video player transmits the
이후, 파일 스트리밍 요청단계(320)를 수행하는 절차는 동영상을 처음부터 재생하기 위하여 수행되는 절차와 마찬가지이므로 이를 생략키로 한다. Subsequently, the procedure for performing the file
도 5는 도 3의 다른 일부를 더욱 자세히 나타낸 도면이다. 5 is a view showing another part of FIG. 3 in more detail.
도 5에는 도 3에서 나타낸 스트리밍 제어기에서 수행되는 각 단계 중에서 웹서버로부터 파일 수신 및 저장을 개시하는 단계(330), 동영상재생기의 파일요청신호에 대하여 파일재생시작메시지 응답을 하는 단계(340), 파일 수신 및 저장을 계속하면서 스트리밍 제어를 행하는 단계(350) 및 전체 파일 수신을 완료하는 단 계(360)가 더욱 자세히 나타나 있다. 5 shows a
웹서버에 대한 파일 스트리밍 요청신호에 대한 응답으로 동영상 파일 데이터가 전송되어오면(A), 스트리밍 제어기는 웹서버로부터 데이터 수신을 개시한다(320a). When video file data is transmitted in response to the file streaming request signal to the web server (A), the streaming controller starts receiving data from the web server (320a).
이 때, 스트리밍 제어기는 수신한 데이터가 웹서버로부터 그 동영상 파일에 관하여 수신한 최초의 데이터인지 여부를 판단한 후(320b), 최초 데이터인 경우에는 그 데이터를 로컬 하드디스크 등 저장공간에 저장할 임시파일을 생성하기 위하여 HTTP 헤더를 파싱하고(320c), 추가 헤더정보를 삽입한 후(320d) 데이터 파일에 저장하는 단계를 수행한다(320e). At this time, the streaming controller determines whether the received data is the first data received from the web server with respect to the video file (320b), and in the case of the first data, the temporary file to store the data in a storage space such as a local hard disk. Parse the HTTP header (320c), generate additional header information (320d), and store the data in a data file (320e).
이후, 스트리밍 제어기는 클라이언트PC의 저장공간에 저장된 파일 데이터가 최초 버퍼링 크기에 도달했는지 여부를 판단하여(340a), 아직 도달하지 않았다면 웹서버로부터 파일 데이터 수신을 계속 행하고, 만약 최초 버퍼링 크기에 도달했다면 동영상재생기가 동영상 파일의 재생을 개시하여도 됨을 알리기 위하여 재생시작 이벤트 신호를 전송한다(340c). 만약 재생시작 이벤트 신호가 일단 동영상재생기로 전송되었다면 이를 재차 전송할 필요는 없으므로, 스트리밍 제어기는 해당 동영상 파일에 관하여 재생시작 이벤트를 동영상재생기에 전송한 적이 있는지 여부를 판단하는 단계(340b)를 재생시작 이벤트 신호 전송 단계(340c)의 이전에 행한다. Thereafter, the streaming controller determines whether the file data stored in the storage space of the client PC has reached the initial buffering size (340a), and if not yet, continues to receive the file data from the web server, and if the initial buffering size has been reached The video player transmits a playback start event signal to inform that the video player may start playing the video file (340c). If the play start event signal is once transmitted to the video player, it does not need to be transmitted again, so the streaming controller determines whether the play start event has been transmitted to the video player with respect to the video file (340b). Before the
다음으로 스트리밍 제어기가 파일 데이터의 수신 및 저장을 계속 행함에 있어서 스트리밍 제어를 행하는 절차(350)에 대하여 더욱 자세하게 살펴본다.Next, a detailed description will be given of a
스트리밍 제어기는 스트리밍 제어기를 포함하는 클라이언트PC로 전송되는 데 이터파일의 수신속도가 수신속도 제한값(도 2의 제1 규칙)을 초과하였는지 여부를 판단한다(350a). 만약 제1 규칙의 수신속도 제한값 이하로 파일 데이터를 수신하고 있다면, 지나치게 웹서버의 대역폭을 점유하고 있지는 않은 것이므로 계속해서 파일 전송을 수행하게 된다. The streaming controller determines whether the reception speed of the data file transmitted to the client PC including the streaming controller exceeds the reception speed limit value (first rule of FIG. 2) (350a). If the file data is received below the reception speed limit value of the first rule, the file data is not continuously occupied by the web server.
그러나, 만약 제1 규칙의 수신속도 제한값을 초과한 수신속도로써 파일 데이터를 수신하고 있다면, 해당 클라이언트PC가 지나치게 웹서버의 대역폭을 점유하고 있는 결과가 되어, 수신속도를 낮추어야 한다. 따라서, 스트리밍 제어기는 수신속도가 제1 규칙보다 빠르지 않은 값이 되도록 앞서 도 2를 참조하여 설명한 바와 같이 가변적으로 제1 대기시간을 지정하고, 제1 대기시간 동안 파일 데이터 수신을 일시중지시킨다(350b). 이로써 스트리밍 제어기는 실제로 파일 데이터를 전송받은 시간과 일시중지된 제1 대기시간을 합친 시간 구간으로써 전송받은 파일 데이터의 크기를 나눈 평균 수신속도가 제1 규칙의 수신속도 제한값을 밑돌도록 유지함으로써 해당 클라이언트PC에 관한 트래픽을 제어하게 된다.However, if the file data is received at a reception speed exceeding the reception speed limit value of the first rule, the client PC may be occupying too much bandwidth of the web server, and the reception speed should be lowered. Accordingly, the streaming controller variably designates the first waiting time as described above with reference to FIG. 2 so that the reception speed is not faster than the first rule, and pauses file data reception for the first waiting time (350b). ). As a result, the streaming controller is a time interval in which the file data is actually transmitted and the paused first waiting time, so that the average receiving speed divided by the size of the received file data is kept below the receiving rate limit of the first rule. You will control traffic to your PC.
단계350a에서의 판단결과에 따른 작업이 수행된 후, 스트리밍 제어기는 버퍼링 이벤트를 전송하는 단계를 더 수행한다(350c). After the operation according to the determination result in step 350a is performed, the streaming controller further performs a step of transmitting a buffering event (350c).
이와 같이 해당 웹서버에 접속하는 모든 클라이언트PC에서 스트리밍 제어기가 각각 그 클라이언트PC의 트래픽을 제어함으로써, 웹서버에 의한 동영상 스트리밍의 전체적인 트래픽 제어가 가능케 된다.As such, the streaming controller controls the traffic of the client PCs in all client PCs accessing the web server, thereby enabling overall traffic control of video streaming by the web server.
다음으로, 스트리밍 제어기는 웹서버로부터의 파일 데이터 전송이 완료되었는지 여부를 판단하여, 수신이 완료되지 않은 경우에는 파일 데이터의 수신을 계속 수행하며, 수신이 완료된 경우에는 해당 동영상 파일 데이터의 수신 절차를 마무리하게 된다. 이 때, 스트리밍 제어기가 해당 동영상 파일 데이터의 수신이 완료되었다는 사실을 알리는 신호를 동영상재생기로 전송할 수도 있음은 앞서 살펴본 바와 같다. Next, the streaming controller determines whether the file data transmission from the web server is completed, and continues to receive the file data if the reception is not completed, and if the reception is complete, the streaming controller performs the procedure of receiving the video file data. This is the end. In this case, as described above, the streaming controller may transmit a signal indicating that the reception of the corresponding video file data is completed to the video player.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다. The embodiments of the present invention described above are not implemented only through the apparatus and the method, but may be implemented through a program for realizing a function corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded. Implementation may be easily implemented by those skilled in the art from the description of the above-described embodiments.
또한, 이상에서 나타낸 실시예에서는 동영상 파일의 스트리밍 서비스를 예로 들어 본 발명에 의한 파일 스트리밍 제어기 및 제어방법을 설명하였지만, 이는 본 발명은 동영상 파일의 스트리밍 서비스만으로 대상을 한정하고자 하는 의도가 아니다. 즉, 동영상 파일이 아니더라도 본 발명의 사상이 적용될 수 있는 어떠한 형태의 파일에 대해서도 본 발명에 의한 스트리밍 제어기 및 제어방법이 적용될 수 있는 것이다.In addition, although the above-described embodiment has described a file streaming controller and a control method according to the present invention taking a streaming service of a video file as an example, the present invention is not intended to limit the object to only the streaming service of a video file. In other words, the streaming controller and the control method according to the present invention can be applied to any type of file to which the spirit of the present invention can be applied even if it is not a video file.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements of those skilled in the art using the basic concepts of the present invention defined in the following claims are also provided. It belongs to the scope of rights.
이상에서 살펴본 바와 같이, 본 발명에 의한 파일 스트리밍 제어기 및 제어방법을 이용하면, 트래픽 제어를 위한 별도의 스트리밍 서버가 없이도 통신 네트워크를 통하여 동영상 콘텐츠를 다운로드받는 복수의 클라이언트에 대한 트래픽을 제어할 수 있는 파일 스트리밍 제어기 및 제어방법을 구현할 수 있는 효과가 있다. As described above, using the file streaming controller and the control method according to the present invention, it is possible to control the traffic for a plurality of clients to download the video content through a communication network without a separate streaming server for traffic control There is an effect that can implement a file streaming controller and control method.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070008790A KR100841217B1 (en) | 2007-01-29 | 2007-01-29 | Apparatus and method for controlling file streaming |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070008790A KR100841217B1 (en) | 2007-01-29 | 2007-01-29 | Apparatus and method for controlling file streaming |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100841217B1 true KR100841217B1 (en) | 2008-06-26 |
Family
ID=39772444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070008790A KR100841217B1 (en) | 2007-01-29 | 2007-01-29 | Apparatus and method for controlling file streaming |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100841217B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006093812A (en) | 2004-09-21 | 2006-04-06 | Daiichikosho Co Ltd | Method and apparatus for packetizing high-efficiency coded time series information, applying real-time streaming transmission to information, and receiving and reproducing the information |
KR20060068547A (en) * | 2004-12-16 | 2006-06-21 | 엘지전자 주식회사 | Method for controlling transport rate of real-time streaming service |
KR20070008069A (en) * | 2005-07-12 | 2007-01-17 | 엘지전자 주식회사 | Appratus and method for synchronizing audio/video signal |
-
2007
- 2007-01-29 KR KR1020070008790A patent/KR100841217B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006093812A (en) | 2004-09-21 | 2006-04-06 | Daiichikosho Co Ltd | Method and apparatus for packetizing high-efficiency coded time series information, applying real-time streaming transmission to information, and receiving and reproducing the information |
KR20060068547A (en) * | 2004-12-16 | 2006-06-21 | 엘지전자 주식회사 | Method for controlling transport rate of real-time streaming service |
KR20070008069A (en) * | 2005-07-12 | 2007-01-17 | 엘지전자 주식회사 | Appratus and method for synchronizing audio/video signal |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102047495B1 (en) | Method and apparatus for playing multimedia content of server via streaming at client using cache | |
US7725557B2 (en) | Client-side caching of streaming media content | |
JP2007080161A (en) | Data distribution system, partial content storing server, method and program for increasing response speed | |
JP4944484B2 (en) | Playback apparatus, playback method, and program | |
KR101503121B1 (en) | Streaming data downloading method and computer readable recording medium thereof | |
WO2013008867A1 (en) | Transmission device, method for controlling transmission device, control program, and recording medium | |
KR20210135338A (en) | How to broadcast streaming content on a peer-to-peer (P2P) network | |
KR20070020727A (en) | Apparatus and method of using pseudo streaming download with partially progressive download in terminal | |
JP2006109480A (en) | Method for streaming multimedia content | |
JP5150459B2 (en) | Content distribution method and receiving apparatus | |
TWI666928B (en) | Delivery control apparatus and delivery control method for abr streaming of content delivery | |
CN113315810A (en) | Online audio playing method and equipment | |
JP5699619B2 (en) | Cache device, data management method, program, and cache system | |
KR102521753B1 (en) | A method for playing content streamed over a network in a player on a client device | |
JP4637602B2 (en) | Content distribution system, content distribution method, and program | |
JP2022042997A (en) | Method, server, and computer-readable recording medium for minimizing delay in real time live streaming | |
KR100841217B1 (en) | Apparatus and method for controlling file streaming | |
JP2002094560A (en) | Method for providing information | |
JP2004356829A (en) | Data receiving reproducing method and data receiving reproducing apparatus | |
US11743540B2 (en) | Method for playing on a player of a client device a content streamed in a network | |
JP2017130957A (en) | Transmitter, transmission method, playback device, and playback method | |
KR100931344B1 (en) | Method for providing video streaming service and system, server and user terminal for same | |
JP2003208398A (en) | Data input/output device, data input/output method, program and medium | |
JP2005167891A (en) | Content server, content receiving apparatus, program and storage medium | |
JP2007067521A (en) | Downloading device, streaming content download system, downloading method, and downloading program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
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: 20130619 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140619 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150619 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20160617 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20170619 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20180619 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20190619 Year of fee payment: 12 |