WO2010071303A4 - Method and apparatus for data transmission - Google Patents
Method and apparatus for data transmission Download PDFInfo
- Publication number
- WO2010071303A4 WO2010071303A4 PCT/KR2009/006749 KR2009006749W WO2010071303A4 WO 2010071303 A4 WO2010071303 A4 WO 2010071303A4 KR 2009006749 W KR2009006749 W KR 2009006749W WO 2010071303 A4 WO2010071303 A4 WO 2010071303A4
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- transmission
- information
- file
- time
- Prior art date
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 277
- 238000000034 method Methods 0.000 title claims abstract description 92
- 238000004891 communication Methods 0.000 claims description 12
- 238000012546 transfer Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 description 11
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- OAICVXFJPJFONN-UHFFFAOYSA-N Phosphorus Chemical compound [P] OAICVXFJPJFONN-UHFFFAOYSA-N 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910052698 phosphorus Inorganic materials 0.000 description 1
- 239000011574 phosphorus Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
Definitions
- a weight is calculated and data So that the transmission can be performed.
- a sudden change in the amount of data transmitted per unit of transmission time on the server means that the load on the server is relatively uneven.
- the tb and b constituting the burst section of FIG. 6 and the tc and c constituting the rate limiting section are calculated using the file information, respectively.
- a weight is applied to each transmission time unit, It is also possible that the constituent tb and b and the constituent tc and c constituting the speed limit section are changed.
- the operation unit 810 calculates the transmission time of the entire data and the amount of data to be transmitted per transmission unit time using the file information read by the file information reading unit 800.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
A method and apparatus for data transmission are disclosed. According to one preferred embodiment of the present invention, file information on the data to be transmitted is read and extracted and the file information is used to calculate the time for entire data transmission and data volume per unit transmission time, the file information is used to calculate weighted values, and the calculated weighted values are applied to the time for entire data transmission and the data volume per unit transmission time to transmit data. The present invention is advantageous in that changes in network status can be reflected in data transmission, the transmission of unnecessary data can be minimized, and data can be transmitted to a client with stability even when data requests are continuously received from a client.
Description
본 발명은 데이터 전송 방법 및 장치에 관한 것으로서, 보다 상세하게는 전체 데이터 전송 시간과 전송 단위 시간당 데이터량이 동적으로 변화되도록 하면서 데이터를 전송할 수 있는 데이터 전송 방법 및 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data transmission method and apparatus, and more particularly, to a data transmission method and apparatus capable of transmitting data while dynamically varying the data transmission time per transmission unit time.
통신망의 발달과 함께 데이터를 전송하는 다양한 방법과 기술들이 개발되고 있다.Various methods and techniques for transmitting data with the development of communication networks have been developed.
종래의 데이터 전송 방법은 다양한 방법이 있으나 일반적으로 전체 데이터의 크기에 따라 전체 전송 시간과 전송 단위 시간당 데이터량을 계산하여 결정하고 결정된 전체 전송 시간과 전송 단위 시간당 데이터량에 따라 데이터 전송이 이루어지게 된다.In the conventional data transmission method, there are various methods, but generally, the total transmission time and the data amount per transmission unit time are calculated and determined according to the size of the whole data, and the data transmission is performed according to the determined total transmission time and the data amount per transmission unit time .
종래의 데이터 전송 방법을 도 1 및 도 2를 참조하여 살펴보기로 한다.A conventional data transmission method will be described with reference to FIGS. 1 and 2. FIG.
먼저 도 1에 도시된 바와 같이, 종래의 데이터 전송 방법은 전체 전송 시간과 전송 단위 시간당 전송되는 데이터량을 일정하게 하여 전송하는 경우이다.First, as shown in FIG. 1, the conventional data transmission method is a transmission method in which the total transmission time and the amount of data transmitted per transmission unit time are constant.
하지만, 도 2에 도시된 바와 같이, 전송할 데이터의 인코딩 정보인 비트 레이트가 가변적으로 변화되는 경우 전송 단위 시간당 전송되는 데이터의 양은 변화하게 된다.However, as shown in FIG. 2, when the bit rate, which is the encoding information of the data to be transmitted, varies variably, the amount of data transmitted per transmission unit time changes.
비트 레이트는 전송 단위 시간당 얼마만큼의 데이터를 차지하게 압축할 것인지를 지정하는 단위이며, 또한 데이터를 통신망을 통해 전송하는 경우 비트 레이트는 전송 단위 시간당 처리되는 비트 수를 나타낸다. The bit rate is a unit for specifying how much data is to be compressed to occupy the data per transmission unit time. When the data is transmitted through the communication network, the bit rate represents the number of bits processed per transmission unit time.
데이터 전송시 인코딩된 방식대로 전송하는 것이 일반적이므로, 통신망에서의 비트 레이트라는 용어는 데이터의 전송 속도를 나타내기도 한다.Since it is common to transmit data in an encoded manner during data transmission, the term bit rate in a communication network may indicate the transmission speed of data.
예를 들어, 300Kbps 또는 1Mbps로 인코딩된 데이터를 전송하는 경우 통신망의 대역폭을 어느 정도로 사용하여 데이터를 전송해야 되는지를 나타내게 되며, 이는 비트 레이트가 높을수록 손실 데이터가 적어 데이터의 질은 높아지나, 압축율은 낮아지며 전송 대역폭은 커지게 되어 전송시 비용이 증가하게 된다.For example, when data encoded at 300 Kbps or 1 Mbps is transmitted, the bandwidth of the communication network is used to indicate how much data should be transmitted. The higher the bit rate, the lower the loss data and the higher the data quality. The transmission bandwidth is increased and the transmission cost is increased.
한편, 데이터 파일을 인코딩시 비트 레이트의 크기 및/또는 비트 레이트 종류를 선택하여 인코딩을 하게 된다.On the other hand, when encoding the data file, the size and / or bit rate type of the bit rate are selected and encoded.
이러한 비트 레이트의 종류에는 비트 레이트가 가변적으로 변화되는 경우인 가변 비트 레이트(VBR: Variable Bit Rate)와 비트 레이트가 일정한 고정 비트 레이트(CBR: Constant Bit Rate)로 크게 구분되며, 가변 비트 레이트와 유사한 방법으로 평균 비트 레이트(ABR: Average Bit Rate)가 있으나, 가변 비트 레이트의 범주에 있음은 자명하다.Variable bit rate (VBR) and constant bit rate (CBR) in which the bit rate is constant are widely classified into variable bit rates Method has an average bit rate (ABR), but it is obvious that it is in the variable bit rate category.
따라서 종래의 데이터 전송 방법에서는 비트 레이트가 가변 비트 레이트인 경우에는 단위 시간당 전송되는 데이터량이 변화함에 비해 고정 비트 레이트인 경우 단위 시간당 전송되는 데이터의 양이 일정하게 된다.Therefore, in the conventional data transmission method, when the bit rate is a variable bit rate, the amount of data transmitted per unit time is changed, whereas when the bit rate is a fixed bit rate, the amount of data transmitted per unit time is constant.
도 1에서와 같이 고정 비트 레이트인 경우 전체 전송 시간 t동안 모두 전송된 데이터의 량은 a*t가 되게 된다.As shown in FIG. 1, in the case of a fixed bit rate, the amount of data transmitted during the entire transmission time t becomes a * t.
그러나, 도 2에서와 같이 가변 비트 레이트인 경우 전체 전송 시간 t동안 모두 전송된 데이터의 량은 각 전송 단위 시간당으로 전송된 데이터 전송량의 합계가 된다.However, as shown in FIG. 2, in the case of a variable bit rate, the amount of data transmitted during the entire transmission time t is the sum of data transmission amounts transmitted per transmission unit time.
한편, 도 1 및 도 2에서 살펴본 종래의 데이터 전송 방법들은 모두 전송할 데이터의 전체 량에 따라 미리 전체 전송 시간과 각각의 전송 단위 시간당으로 전송될 데이터 양이 계산되고 계산된 전체 전송 시간과 각각의 전송 단위 시간당으로 전송될 데이터 양에 따라 데이터의 전송이 이루어지게 된다.In the conventional data transmission methods shown in FIGS. 1 and 2, the total transmission time and the amount of data to be transmitted per each transmission unit time are calculated according to the total amount of data to be transmitted, The data is transmitted according to the amount of data to be transmitted per unit time.
그리고 전체 전송 시간과 각각의 전송 단위 시간당으로 전송될 데이터의 양을 결정하는 것은 일반적으로 클라이언트의 버퍼나 서버의 부하, 클라이언트와 서버 사이의 대역폭 등 네트워크 상태 정보만 이용하여 계산하게 된다.The total transmission time and the amount of data to be transmitted per each transmission unit time are generally calculated using only the network status information such as the buffer of the client, the load of the server, and the bandwidth between the client and the server.
그러나 전체 전송 시간과 각각의 전송 단위 시간당으로 전송될 데이터의 양을 결정된 후에도 네트워크의 상황은 변화할 수 있어 이러한 네트워크 상태의 변화를 데이터 전송에 즉각 반영하기 어려운 문제점이 있다.However, even after the total transmission time and the amount of data to be transmitted per each transmission unit time are determined, the situation of the network may change and it is difficult to immediately reflect the change of the network state in the data transmission.
또한, 예를 들어 스트리밍 서비스를 통해 사용자 동영상을 시청하는 도중 통신 연결이 단절되는 경우 클라이언트의 버퍼에 저장되어 수신된 데이터만이 플레이될 수 있으므로 시청 도중 동영상이 끊기는 현상 등이 발생되는 문제점이 있다.In addition, for example, when a communication connection is disconnected while viewing a user's moving image through a streaming service, only the received data stored in the buffer of the client can be played back.
또한, 사용자의 기호에 따라 앞부분만을 보고 시청 여부를 결정하여 마음에 들지 않을 때에는 동영상 시청을 중단하고, 다른 콘텐츠 보기를 시도하는 경우가 많이 있다.Also, depending on the user's preference, the user may decide whether to watch only the first part, and if not, stop watching the video and try to view other contents.
이때 사용자가 전체를 모두 시청하지 않음에도 불구하고, 종래의 데이터 전송 방법에서는 동영상의 전체 파일이 사용자의 클라이언트에 다운로드 되거나 사용자가 시청하지 않는 동영상 부분까지 데이터 전송이 이루어지게 되어 결국 불필요한 데이터의 전송이 이루어지게 되는 문제점이 있다.In this case, in the conventional data transmission method, the entire file of the moving picture is downloaded to the client of the user or the data is transmitted to the moving picture part not watched by the user, so that unnecessary data transmission There is a problem to be solved.
또한, 클라이언트부터의 데이터 요청이 연속적으로 수신되는 경우 서버의 자원을 계속하여 사용하여야 하므로 서버의 부하가 증가되며, 이러한 경우에도 클라이언트로 안정적으로 데이터를 전송하여야 할 필요성이 있다.In addition, when a data request from a client is received consecutively, the load of the server is increased because resources of the server must be continuously used. In such a case, there is a need to transmit data stably to the client.
상기한 바와 같은 종래의 문제점을 해결하기 위해, 본 발명은 네트워크 상태의 변화를 데이터 전송에 즉시 반영할 수 있는 데이터 전송 방법 및 장치를 제안하는 것이다.In order to solve the above problems, the present invention proposes a data transmission method and apparatus capable of immediately reflecting a change in network status in data transmission.
그리고 불필요한 데이터의 전송을 최소화하고, 클라이언트부터의 데이터 요청이 연속적으로 수신되는 경우에도 클라이언트로 안정적으로 데이터를 전송할 수 있는 데이터 전송 방법 및 장치를 제안하는 것이다.It is another object of the present invention to provide a data transmission method and apparatus capable of minimizing transmission of unnecessary data and capable of transmitting data reliably to a client even when data requests from a client are continuously received.
본 발명의 또 다른 목적들은 이하의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.Other objects of the present invention will become readily apparent from the following description of the embodiments.
상기한 바와 같은 목적을 달성하기 위해, 본 발명의 일 측면에 따르면 데이터 전송 방법이 제공된다.According to an aspect of the present invention, there is provided a data transmission method.
본 발명의 바람직한 일 실시예에 따르면, 데이터 전송 방법에 있어서, 전송할 데이터의 파일 정보를 독출하는 단계(a); 상기 파일 정보를 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량을 계산하는 단계(b); 상기 파일 정보를 이용하여 가중치를 계산하는 단계(c); 및 상기 계산된 가중치를 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용하여 데이터를 전송하는 단계(d)를 포함하는 것을 특징으로 하는 데이터 전송 방법이 제공된다.According to a preferred embodiment of the present invention, there is provided a data transfer method comprising the steps of: (a) reading file information of data to be transferred; (B) calculating a total data transmission time and a data amount per transmission unit time using the file information; (C) calculating a weight using the file information; And (d) transmitting data by applying the calculated weight to the total data transmission time and the data amount per transmission unit time.
상기 단계(a)에서 상기 파일 정보는 상기 파일의 헤더(header) 크기 정보 및 인코딩 정보를 포함하는 정보일 수 있다.In the step (a), the file information may be information including header size information and encoding information of the file.
또한, 상기 단계(b)에서, 상기 전송 단위 시간당 데이터량은 상기 데이터의 파일의 전체 크기에서 상기 파일의 헤더 크기를 감하여 계산될 수 있다.In the step (b), the amount of data per transmission unit time may be calculated by subtracting the header size of the file from the total size of the file of the data.
상기 인코딩 정보는 인코딩 방식, 인코딩 알고리즘 중 적어도 하나를 포함하는 정보일 수 있으며, 상기 인코딩 방식이 가변 비트 레이트(VBR: Variable Bit Rate)인 경우 상기 가중치는 상기 전송 단위 시간당 데이터량의 편차가 최소로 되도록 계산될 수 있다.The encoding information may be information including at least one of an encoding method and an encoding algorithm. When the encoding method is a Variable Bit Rate (VBR), the weight is set such that the deviation of the amount of data per transmission unit time is at a minimum .
상기 단계(b)와 상기 단계(c)는 데이터 수신단의 버퍼의 크기 및 데이터 수신단 및 데이터 송신단 사이의 대역폭 정보 중 적어도 하나의 정보를 포함하는 정보인 네트워크 상태 정보를 더 이용하여 계산될 수 있다.The step (b) and the step (c) may be further performed using the network status information, which is information including at least one of the size of the buffer of the data receiving end and the bandwidth information between the data receiving end and the data transmitting end.
상기 단계(c)에서, 상기 가중치는 미리 설정된 최대값 및 최소값을 가질 수 있다.In the step (c), the weight may have a predetermined maximum value and a minimum value.
상기 단계(c)에서, 상기 가중치는 상기 전송 단위 시간별로 계산될 수 있다.In the step (c), the weight may be calculated for each transmission unit time.
상기 데이터의 전송은 데이터가 버스트 방식으로 전송되는 버스트 구간과 버스트 방식이 아닌 방식으로 전송되는 속도 제한 구간으로 나누어 수행될 수 있다.The transmission of the data may be performed by dividing the data into a burst period in which data is transmitted in a burst mode and a rate limiting period in which data is transmitted in a non-burst mode.
본 발명의 다른 측면에 의하면, 데이터 전송 장치가 제공된다.According to another aspect of the present invention, a data transfer apparatus is provided.
본 발명의 바람직한 일 실시예에 따르면, 데이터 전송 장치에 있어서,According to a preferred embodiment of the present invention, in the data transfer apparatus,
전송할 데이터의 파일 정보를 독출하는 파일 정보 독출부; 상기 파일 정보를 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량을 계산하고, 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용될 가중치를 계산하는 연산부; 및 상기 계산된 가중치를 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용하여 데이터를 전송하는 통신부를 포함하는 것을 특징으로 하는 데이터 전송 장치가 제공된다.A file information reading unit for reading file information of data to be transmitted; An operation unit for calculating a total data transmission time and a data amount per transmission unit time using the file information and calculating a weight to be applied to the data amount per transmission time unit and the transmission unit time; And a communication unit for transmitting the data by applying the calculated weight to the total data transmission time and the data amount per transmission unit time.
상기 파일 독출부에서 독출하는 상기 파일 정보는 상기 파일의 헤더(header) 크기 정보 및 인코딩 정보를 포함하는 정보일 수 있다.The file information read by the file reading unit may be information including header size information and encoding information of the file.
또한, 상기 연산부는 상기 전송 단위 시간당 데이터량을 상기 데이터의 파일의 전체 크기에서 상기 파일의 헤더 크기를 감하여 계산할 수 있다.The operation unit may calculate the amount of data per unit time of transmission by subtracting the header size of the file from the total size of the file of the data.
상기 인코딩 정보는 인코딩 방식, 인코딩 알고리즘 중 적어도 하나를 포함하는 정보일 수 있으며, 이 경우 상기 연산부는 상기 인코딩 정보가 가변 비트 레이트(VBR: Variable Bit Rate)인 경우 상기 가중치는 상기 전송 단위 시간당 데이터량의 편차가 최소로 되도록 계산할 수 있다.The encoding information may be information including at least one of an encoding method and an encoding algorithm. In this case, when the encoding information is a Variable Bit Rate (VBR), the weight is a data amount per transmission unit time Can be calculated so as to minimize the deviation.
상기 연산부는 데이터 수신단의 버퍼의 크기 및 데이터 수신단 및 데이터 송신단 사이의 대역폭 정보 중 적어도 하나의 정보를 포함하는 정보인 네트워크 상태 정보를 더 이용하여 상기 가중치를 계산할 수 있다.The operation unit may calculate the weight using the network state information, which is information including at least one of a size of a buffer of a data receiving end and a bandwidth information of a data receiving end and a data transmitting end.
상기 연산부는 미리 설정된 최대값 및 최소값에 따라 상기 가중치를 계산할 수 있다.The operation unit may calculate the weight according to a preset maximum value and a minimum value.
상기 연산부는 상기 전송 단위 시간당으로 상기 가중치를 계산할 수 있다.The operation unit may calculate the weight per unit time of the transmission unit.
상기 통신부에서의 데이터 전송은 데이터가 버스트 방식으로 전송되는 버스트 구간과 버스트 방식이 아닌 방식으로 전송되는 속도 제한 구간으로 나누어 상기 데이터의 전송을 수행할 수 있다.The data transmission in the communication unit may be performed by dividing the data into a burst period in which data is transmitted in a burst mode and a rate limiting period in which the data is transmitted in a non-burst mode.
본 발명의 다른 측면에 의하면, 데이터 전송 방법을 구현하기 위한 프로그램을 기록한 기록매체가 제공된다.According to another aspect of the present invention, there is provided a recording medium on which a program for implementing a data transfer method is recorded.
본 발명의 바람직한 일 실시예에 따르면, 데이터 전송 방법을 구현하기 위한 프로그램을 기록한 기록매체에 있어서, 전송할 데이터의 파일 정보를 독출하는 단계(a); 상기 파일 정보를 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량을 계산하는 단계(b); 상기 파일 정보를 이용하여 가중치를 계산하는 단계(c); 및 상기 계산된 가중치를 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용하여 데이터를 전송하는 단계(d)를 포함하는 것을 특징으로 하는 데이터 전송 방법을 구현하기 프로그램을 기록한 기록매체가 제공된다.According to a preferred embodiment of the present invention, there is provided a recording medium on which a program for implementing a data transfer method is recorded, the method comprising: (a) reading file information of data to be transferred; (B) calculating a total data transmission time and a data amount per transmission unit time using the file information; (C) calculating a weight using the file information; And transmitting the data by applying the calculated weight to the total data transmission time and the amount of data per transmission unit time, and (d) transmitting the data.
상기 단계(a)에서 상기 파일 정보는 상기 파일의 헤더(header) 크기 정보 및 인코딩 정보를 포함하는 정보일 수 있다.In the step (a), the file information may be information including header size information and encoding information of the file.
또한, 상기 단계(b)에서, 상기 전송 단위 시간당 데이터량은 상기 데이터의 파일의 전체 크기에서 상기 파일의 헤더 크기를 감하여 계산될 수 있다.In the step (b), the amount of data per transmission unit time may be calculated by subtracting the header size of the file from the total size of the file of the data.
상기 인코딩 정보는 인코딩 방식, 인코딩 알고리즘 중 적어도 하나를 포함하는 정보일 수 있으며, 상기 인코딩 방식이 가변 비트 레이트(VBR: Variable Bit Rate)인 경우 상기 가중치는 상기 전송 단위 시간당 데이터량의 편차가 최소로 되도록 계산될 수 있다.The encoding information may be information including at least one of an encoding method and an encoding algorithm. When the encoding method is a Variable Bit Rate (VBR), the weight is set such that the deviation of the amount of data per transmission unit time is at a minimum .
상기 단계(b)와 상기 단계(c)는 데이터 수신단의 버퍼의 크기 및 데이터 수신단 및 데이터 송신단 사이의 대역폭 정보 중 적어도 하나의 정보를 포함하는 정보인 네트워크 상태 정보를 더 이용하여 계산될 수 있다.The step (b) and the step (c) may be further performed using the network status information, which is information including at least one of the size of the buffer of the data receiving end and the bandwidth information between the data receiving end and the data transmitting end.
상기 단계(c)에서, 상기 가중치는 미리 설정된 최대값 및 최소값을 가질 수 있다.In the step (c), the weight may have a predetermined maximum value and a minimum value.
상기 단계(c)에서, 상기 가중치는 상기 전송 단위 시간별로 계산될 수 있다.In the step (c), the weight may be calculated for each transmission unit time.
상기 데이터의 전송은 데이터가 버스트 방식으로 전송되는 버스트 구간과 버스트 방식이 아닌 방식으로 전송되는 속도 제한 구간으로 나누어 수행될 수 있다.The transmission of the data may be performed by dividing the data into a burst period in which data is transmitted in a burst mode and a rate limiting period in which data is transmitted in a non-burst mode.
이상에서 설명한 바와 같이, 본 발명에 의한 데이터 전송 방법 및 장치에 의하면 네트워크 상태의 변화를 데이터 전송에 반영할 수 있는 장점이 있다.INDUSTRIAL APPLICABILITY As described above, according to the data transmission method and apparatus of the present invention, there is an advantage that a change in the network status can be reflected in data transmission.
그리고 불필요한 데이터의 전송을 최소화하고, 클라이언트부터의 데이터 요청이 연속적으로 수신되는 경우에도 클라이언트로 안정적으로 데이터를 전송할 수 있는 장점이 있다.In addition, it is possible to minimize the transmission of unnecessary data, and to reliably transmit data to the client even when data requests from the client are continuously received.
도 1은 종래의 데이터 전송 방법이 적용되는 경우 데이터 전송량과 전송 시간의 관계를 그래프를 통해 예시한 예시도.FIG. 1 is a graph illustrating a relationship between a data transmission amount and a transmission time when a conventional data transmission method is applied.
도 2는 종래의 다른 데이터 전송 방법이 적용되는 경우 데이터 전송량과 전송 시간의 관계를 그래프를 통해 예시한 예시도.BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a data transmission method and a data transmission method.
도 3은 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법이 적용되는 순서를 도시한 순서도.3 is a flowchart showing a procedure in which a data transmission method according to a preferred embodiment of the present invention is applied.
도 4는 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법이 적용되는 경우 데이터 전송량과 전송 시간의 관계를 그래프를 통해 예시한 예시도.4 is a graph illustrating a relationship between a data transmission amount and a transmission time when a data transmission method according to a preferred embodiment of the present invention is applied.
도 5은 본 발명의 바람직한 다른 일 실시예에 따른 데이터 전송 방법이 적용되는 경우 데이터 전송량과 전송 시간의 관계를 그래프를 통해 예시한 예시도.BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a data transmission method and a data transmission method.
도 6은 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법을 버스트 전송 방법에 적용하여 데이터를 전송하는 경우 데이터 전송량과 전송 시간의 관계를 그래프를 통해 예시한 도면.FIG. 6 is a graph illustrating a relationship between a data transmission amount and a transmission time when data is transmitted by applying a data transmission method according to a preferred embodiment of the present invention to a burst transmission method; FIG.
도 7은 본 발명의 바람직한 또 다른 일 실시예에 따른 데이터 데이터 전송 방법이 적용되는 경우 데이터 전송량과 전송 시간의 관계를 그래프를 통해 예시한 예시도.FIG. 7 is a graph illustrating a relationship between a data transmission amount and a transmission time when a data data transmission method according to another preferred embodiment of the present invention is applied.
도 8은 본 발명의 바람직한 일 실시예에 따른 데이터 전송 장치의 구성을 도시한 구성도.8 is a configuration diagram showing a configuration of a data transmission apparatus according to a preferred embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Like reference numerals are used for like elements in describing each drawing. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, .
반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like or corresponding elements are denoted by the same reference numerals, and a duplicate description thereof will be omitted.
한편, 이하의 설명에서는 설명의 편의를 위해 데이터의 전송단을 서버, 데이터의 수신단을 클라이언트라 칭하기로 하나, 본 발명에 의한 데이터 전송 방법은 클라이언트와 서버뿐만 아니라 통신망을 통해 데이터를 송수신하는 장치이면 모두 적용될 수 있음은 자명하다.In the following description, a data transmission terminal is referred to as a server and a data reception terminal is referred to as a client. However, the data transmission method according to the present invention is not limited to a client and a server as well as an apparatus for transmitting and receiving data through a communication network It is obvious that all of them can be applied.
먼저 도 3을 참조하여 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법이 적용되는 순서를 살펴보기로 한다.Referring to FIG. 3, the procedure of applying the data transmission method according to the preferred embodiment of the present invention will be described.
도 3은 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법이 적용되는 순서를 도시한 순서도이다.3 is a flowchart illustrating a procedure in which a data transmission method according to a preferred embodiment of the present invention is applied.
도 3에 도시된 바와 같이 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법은 먼저 전송할 데이터의 파일 정보를 독출한다(S300).As shown in FIG. 3, a data transmission method according to an exemplary embodiment of the present invention first reads file information of data to be transmitted (S300).
독출되는 파일 정보에는 파일의 헤더(header) 크기, 인코딩 정보, 파일 크기 그리고 동영상 파일인 경우 파일의 재생 시간, 키 프레임(key frame), 프레임, 프레임 인덱스(frame index) 등의 다양한 정보 중 적어도 하나의 정보를 포함할 수 있다.The read file information includes at least one of various information such as a header size of a file, encoding information, a file size, a file playback time, a key frame, a frame, and a frame index, And the like.
독출되는 파일 정보 중 인코딩 정보는 전술한 바와 같이 정보를 부호화하는 형식을 나타내는 정보로써 인코딩 방식, 인코딩 알고리즘, 프레임당 데이터 크기 등 다양한 정보 중 적어도 하나의 정보를 포함할 수 있다.Among the file information to be read out, the encoding information is information indicating a format for encoding the information as described above, and may include at least one of various information such as an encoding method, an encoding algorithm, and a data size per frame.
파일의 인코딩(encoding) 정보 중 인코딩 방식은 가변 비트 레이트(VBR: Variable Bit Rate)와 고정 비트 레이트(CBR: Constant Bit Rate)로 구분될 수 있음은 전술한 바와 같으며, 인코딩 알고리즘은 정보를 부호화하는데 이용되는 알고리즘에 대한 정보로써 이러한 알고리즘 정보를 이용하여 디코딩 과정이 수행될 수 있으나 이에 한되는 것은 아니다.The encoding method among the encoding information of the file can be divided into a variable bit rate (VBR) and a constant bit rate (CBR) as described above. The decoding process can be performed using the algorithm information, but not limited thereto.
키 프레임 정보는 동영상 데이터에서 순서 내의 단일 동작의 시작 프레임과 끝 프레임 등 가장 중심이 되는 프레임에 대한 정보이다.The key frame information is information on the most central frame such as the start frame and the end frame of a single operation in the sequence in the moving image data.
키 프레임은 일반적으로 프레임 단위 들 중 가장 앞에 위치하게 되며, 뒤 프레임을 재생하는 데 있어 기준이 되는 프레임으로서 전체 동영상 데이터를 기준으로 판단하면 중간 중간에 기준이 되는 프레임에 해당한다.The key frame is generally positioned at the front of the frame units and corresponds to a frame that is a reference frame for reproducing the following frame and is a reference frame in the middle if it is determined based on the entire moving image data.
프레임 인덱스는 동영상 데이터를 구성하는 각 프레임의 위치에 대한 색인 정보이다.The frame index is index information on the position of each frame constituting the moving picture data.
한편, 이러한 다양한 파일 정보들은 바람직하게는 파일 헤더로부터 독출될 수 있으며, 다양한 파일 정보를 독출함으로써 필요한 다른 다양한 정보를 계산해 내는 것도 가능하다.Meanwhile, the various file information can be read out from the file header, and it is also possible to calculate various other necessary information by reading various file information.
예를 들면, 만약 파일의 전체 재생 시간 정보가 파일 정보에 포함되어 있지 않는 경우 파일의 전체 크기와 인코딩 형식, 프레임 인덱스 정보 등을 이용하여 파일의 전체 재생 시간 정보를 계산하는 것도 가능하다.For example, if the file reproduction time information is not included in the file information, it is also possible to calculate the total reproduction time information of the file by using the total size of the file, the encoding format, the frame index information, and the like.
이러한 재생 시간 정보의 계산 등은 예시에 불과하며, 파일 정보를 이용하여 재생 시간 정보뿐만 아니라 다른 다양한 정보를 계산하거나 추출할 수 있음은 자명하다.The calculation of the reproduction time information is merely an example, and it is obvious that not only the reproduction time information but also various other information can be calculated or extracted by using the file information.
한편, 본 발명의 바람직한 일 실시예에 따르면 전송할 데이터의 파일에 포함된 정보를 독출하여 독출된 정보를 함께 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당으로 데이터량을 계산하여 결정한다(S302).Meanwhile, according to a preferred embodiment of the present invention, information included in a file of data to be transmitted is read and the data amount is calculated and determined by using the read information together (S302).
*전체 데이터 전송 시간 및 전송 단위 시간당 데이터량의 계산은 전송하여야 할 전체 데이터의 파일 크기와 파일의 인코딩 정보 그리고 클라이언트의 버퍼의 크기, 클라이언트와 서버간의 대역폭 정보와 같은 네트워크 상태 정보를 함께 이용하여 계산될 수 있다.* Total Data Transmission Time and Transmission Unit The data amount per hour is calculated by using the file size of all data to be transmitted, encoding information of the file, the size of the buffer of the client, and the network status information such as the bandwidth information between the client and the server .
예를 들면, 본 발명에서는 전송 단위 시간당 전송되는 데이터의 크기는 실제 데이터의 내용을 구성하지 않는 파일의 헤더 크기와 실제 데이터의 내용을 구성하는 본문의 크기를 고려하여 계산될 수 있다.For example, in the present invention, the size of data transmitted per unit time of transmission can be calculated in consideration of a header size of a file that does not constitute actual data contents and a size of a body that constitutes actual data contents.
따라서 전송 단위 시간당 전송되는 데이터의 크기가 변화되는 경우 전체 데이터 전송 시간 또한 변화될 수 있다.Therefore, if the size of the data transmitted per transmission unit time changes, the total data transmission time may also be changed.
데이터 전송 시간 및 전송 단위 시간당 데이터 전송량의 계산이 종래의 클라이언트의 버퍼 크기나 클라이언트와 서버간의 대역폭 정보 등의 네트워크 상태 정보만을 고려하여 되는 경우에 비해 본 발명과 같이 파일의 헤더(header) 크기 정보, 인코딩 정보, 파일 크기 정보, 재생 시간 정보, 키 프레임(key frame) 정보 등의 다양한 파일 정보를 더 이용함으로써 보다 효과적인 데이터 전송이 가능하게 한다.The data transmission time and the data transmission amount per transmission unit time are calculated considering only the network status information such as the buffer size of the conventional client or the bandwidth information between the client and the server, By using various file information such as encoding information, file size information, reproduction time information, and key frame information, more effective data transmission is enabled.
예를 들면, 파일의 헤더 크기 정보를 독출하여 전체 파일의 크기에서 본문을 구성하지 않는 파일의 헤더 크기를 빼면 실제 데이터의 내용을 구성하는 본문의 크기를 계산할 수 있다.For example, if the header size information of a file is read and the header size of a file that does not constitute a body is subtracted from the size of the whole file, the size of the body of the actual data can be calculated.
또한, 본문의 크기 계산이 이루어질 수 있게 되면 파일의 인코딩 정보를 이용하여 사용자에게 실제 재생되는 시간을 보다 정확하게 알 수 있으며, 만약 프레임의 구성과 관련된 정보까지 독출하여 이용하는 경우 사용자에게 실제 재생되는 시간의 계산은 더욱 정확하게 계산될 수 있게 된다.In addition, if the size of the main text can be calculated, the time of actual reproduction can be known more accurately to the user by using the encoding information of the file. If the information related to the configuration of the frame is read and used, The calculation can be calculated more accurately.
한편, 이러한 본 발명의 일 실시예에 의한 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량의 계산 방법은 전송할 데이터를 구성하는 파일의 정보를 미리 독출하고, 독출된 정보를 이용하는 경우라면 아무런 제한이 없다.Meanwhile, the method of calculating the total data transmission time and the data amount per transmission unit time according to the embodiment of the present invention is not limited if the information of the file constituting the data to be transmitted is read in advance and the read information is used.
전체 데이터 전송 시간과 전송 단위 시간당 데이터량이 계산되면, 계산된 전체 전송 시간 동안 각각의 전송 단위 시간당으로 계산된 데이터 양의 데이터를 전송한다(S304).When the total data transmission time and the data amount per transmission unit time are calculated, data of the calculated data amount per transmission unit time is transmitted during the calculated total transmission time (S304).
본 발명의 바람직한 일 실시예에 따르면 단계 304에서의 데이터 전송시 계산된 전체 데이터 전송 시간과 전송 단위 시간당 데이터량에 따라 무조건적으로 데이터의 전송을 수행하는 것이 아니라 가중치를 계산하고 계산된 가중치에 따라 데이터 전송이 이루어지도록 할 수 있다.According to a preferred embodiment of the present invention, instead of performing data transmission unconditionally according to the total data transmission time calculated at the time of data transmission in step 304 and the data amount per transmission unit time, a weight is calculated and data So that the transmission can be performed.
가중치는 전술한 전체 데이터의 전송 시간과 전송 단위 시간당 데이터 양을 계산할 때와 같이 독출한 파일 정보를 이용하여 계산할 수 있다.The weights can be calculated using the read file information, such as when calculating the transmission time of the entire data and the amount of data per transmission unit time.
즉, 본 발명의 바람직한 일 실시예에 따르면 전체 데이터 전송 시간과 전송 단위 시간당 데이터 양이 계산되면 종래와 같이 계산된 결과에 따라 무조건적으로 데이터의 전송이 이루어지도록 하는 것이 아니라 실제 데이터가 전송될 때에도 가중치를 적용하여 보다 효율적으로 데이터 전송이 이루어지도록 하는 것이다.That is, according to a preferred embodiment of the present invention, if the total data transmission time and the amount of data per transmission unit time are calculated, not the data is unconditionally transmitted according to the result calculated in the conventional manner, So that data can be transferred more efficiently.
그리고 가중치는 전술한 전송할 파일의 정보를 이용하여 계산되도록 함으로써 보다 효율적으로 데이터 전송이 이루어지도록 하는 것이다.The weight is calculated by using the information of the file to be transmitted, so that data can be transmitted more efficiently.
가중치의 계산시에는 파일 정보뿐만 아니라 전술한 네트워크 상태 정보를 더 이용하여 계산할 수 있다.In calculating the weights, not only the file information but also the above-described network status information can be further calculated.
한편, 가중치의 계산과 계산된 가중치를 데이터 전송시에 적용함으로써 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량은 동적으로 변화하게 된다.On the other hand, by calculating the weights and applying the calculated weights to the data transmission, the total data transmission time and the data amount per transmission unit time dynamically change.
도 4 내지 도 7을 참조하여 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법이 적용되는 경우의 예시를 살펴본다.An example of a case where a data transmission method according to a preferred embodiment of the present invention is applied will be described with reference to FIG. 4 to FIG.
먼저 도 4와 도 5를 전술한 도 1과 비교하여 살펴보면, 도 1과 같은 종래의 데이터 전송 방법에서는 전체 전송 시간(t)과 전송 단위 시간당 전송 데이터량(a)이 계산되어 결정되면 계산된 결과에 따라 데이터의 전송이 이루어지게 된다.1 and FIG. 5, in the conventional data transmission method as shown in FIG. 1, when the total transmission time t and the transmission data amount a per transmission unit time are calculated and determined, The data transmission is performed according to the received data.
그러나 본 발명의 바람직한 일 실시예에서는 도 4와 도 5에 예시한 바와 같이, 전체 데이터 전송 시간과 전송 단위 시간당 데이터량이 계산되더라도 실제 데이터의 전송시에는 전체 전송 시간(t1)과 전송 단위 시간당 데이터량(a1)이 변화할 수 있다.However, in the preferred embodiment of the present invention, as shown in FIGS. 4 and 5, even when the total data transmission time and the data amount per transmission unit time are calculated, the actual transmission time t1 and the data amount per transmission unit time (a1) may change.
도 4의 예시에서 도 1과 같이 전송 시간이 t로 전송 단위 시간당 데이터량은 a로 계산된 경우라도 전송할 데이터의 파일 정보에 따라 전송 시간과 전송 단위 시간당 데이터량이 t1과 a1로 변화할 수 있으며, 이는 파일 정보를 이용하여 계산되는 가중치를 적용함으로써 수행된다.In the example of FIG. 4, even if the transmission time is t and the data amount per transmission unit time is calculated as a, the data amount per transmission time and transmission unit time may change to t1 and a1 according to the file information of the data to be transmitted, This is done by applying weights calculated using the file information.
도 4에서는 전체 데이터 전송 시간은 줄어들고 전송 단위 시간당 데이터량은 증가한 경우를 나타내는 것이고, 도 5는 전체 반대로 데이터 전송 시간은 늘어났지만 전송 단위 시간당 데이터량은 감소한 경우를 나타내는 것이다.FIG. 4 shows a case where the total data transmission time is reduced and the data amount per transmission unit time is increased. FIG. 5 shows a case where the data amount per unit time is decreased although the data transmission time is increased inversely.
도 4는 전체 데이터 전송 시간과 전송 단위 시간당 데이터량의 계산 후 네트워크 상태가 좋아졌거나 복수의 클라이언트로부터의 데이터 전송 요청이 줄어든 경우 전체 데이터 전송 시간에 대한 가중치를 줄이고 전송 단위 시간당 데이터량에 대한 가중치를 증가시킴으로써 수행될 수 있다.FIG. 4 is a flowchart illustrating a method of reducing a weight for an entire data transmission time and a weight for a data transmission amount per unit time in a case where a network state is improved or data transmission requests from a plurality of clients are reduced after calculation of data transmission time per unit time . ≪ / RTI >
반대로 도 5는 전체 데이터 전송 시간과 전송 단위 시간당 데이터량의 계산 후 네트워크 상태가 나빠졌거나 복수의 클라이언트로부터의 데이터 전송 요청이 증가된 경우 전체 데이터 전송 시간에 대한 가중치를 늘리고 전송 단위 시간당 데이터량에 대한 가중치를 감소시킴으로써 수행될 수 있다.Conversely, FIG. 5 shows an example in which when the network status becomes worse after calculation of the total data transmission time and the data amount per transmission unit time, or when a request for data transmission from a plurality of clients increases, the weight for the entire data transmission time is increased, Can be performed by reducing the weight.
도 1과 비교하여 전체 데이터 전송량은 t*a=t1*a1으로 같지만, 전체 전송 시간과 전송 단위 시간당 데이터량을 변화시킴으로써 보다 효율적인 데이터의 전송이 가능할 수 있게 한다.Compared with FIG. 1, the total data transmission amount is the same as t * a = t1 * a1. However, by changing the total transmission time and the data amount per transmission unit time, more efficient data transmission can be performed.
특히, 가중치를 데이터의 파일 정보를 포함하여 계산하고 계산된 가중치를 데이터 전송 단계에서 적용함으로써 전체 데이터 전송 시간과 전송 단위 시간당 데이터량의 동적인 변화가 가능하게 하고 더욱 효율적인 데이터의 전송이 가능할 수 있게 한다.In particular, by calculating the weights including the file information of the data and applying the calculated weights at the data transmission step, it is possible to dynamically change the data amount per unit time of the entire data transmission unit and the transmission unit time, do.
한편, 데이터를 버스트 방식으로 전송하는 경우에도 본 발명의 바람직한 일 실시예에 의한 데이터 전송 방법이 적용될 수 있다.Meanwhile, the data transmission method according to the preferred embodiment of the present invention can also be applied to transmission of data in the burst mode.
도 6을 참조하여 본 발명의 바람직한 일 실시예에 의한 데이터 전송 방법에 데이터 버스트 전송 방법을 적용하여 전송하는 경우에 대해 살펴보기로 한다.Referring to FIG. 6, a description will be made of a case where a data burst transmission method is applied to a data transmission method according to a preferred embodiment of the present invention.
버스트 전송(Burst Mode Transfer)은 비트 레이트보다 큰 크기를 가지는 데이터를 전송하는 방법으로 정의될 수 있다.Burst Mode Transfer can be defined as a method of transmitting data having a size larger than a bit rate.
전술한 바와 같이 비트 레이트는 단위 시간당 출력되는 데이터의 양 즉 데이터의 전송 속도를 나타내는 것이므로 버스트 전송(Burst Mode Transfer)은 데이터를 일반적인 데이터 전송 속도보다 빠른 속도로 전송하는 것일 수 있다.As described above, since the bit rate represents the amount of data output per unit time, that is, the data transmission speed, the Burst Mode Transfer may be the transmission of data at a rate higher than a normal data transmission rate.
버스트 방식의 데이터 전송은 네트워크의 상태 등에 따라 비트 레이트보다 큰 값으로 데이터를 전송하게 되며, 따라서 보다 빠르게 같은 양의 데이터의 전송이 이루어질 수 있게 하므로 전송 속도의 측면에서 유리하며, 여러 단말 사이에서 통신을 할 수 있는 이점이 있다.The burst-type data transmission transmits data with a value larger than the bit rate according to the state of the network, and therefore, the same amount of data can be transmitted more quickly, which is advantageous in terms of transmission speed. There is an advantage to be able to do.
그러나 네트워크의 구성이 복잡해고 연결되는 서버나 클라이언트의 처리 능력이나 각각의 상태 등이 서로 다르며 네트워크의 상태가 연속적으로 변화하므로 지속적으로 데이터를 버스트 방식으로 전송하기 어렵다.However, since the configuration of the network is complicated and the processing capability and the status of the connected server or client are different from each other, it is difficult to continuously transmit data in the burst mode because the state of the network continuously changes.
특히 버스트 전송 방식은 전송 측인 서버의 자원을 계속하여 사용하는 것이므로 수신측인 다른 클라이언트의 추가적인 요청에 신속하게 대응하기 어렵다.Particularly, since the burst transmission method continuously uses the resources of the server, which is the transmitting side, it is difficult to quickly respond to additional requests from other clients as the receiving side.
도 6은 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법을 버스트 방식에 적용하여 데이터를 전송하는 경우 데이터량과 전송 시간의 관계를 그래프를 통해 예시한 도면이다.FIG. 6 is a graph illustrating a relationship between a data amount and a transmission time when data is transmitted by applying a data transmission method according to a preferred embodiment of the present invention to a burst method.
도 6에 도시된 바와 같이, 먼저 구간1은 버스트 방식으로 데이터가 전송되는 구간으로서 이하에서는 설명의 편의를 위해 '버스트 구간'이라 칭하기로 한다.As shown in FIG. 6, the interval 1 is a period in which data is transmitted in a burst mode, and will be referred to as a 'burst interval' hereinafter for convenience of explanation.
다음으로 구간2는 버스트 방식이 아닌 데이터 전송 방식으로 데이터를 전송하는 구간으로서 설명의 편의를 위해 버스트 구간과 대비하여 '속도 제한 구간'이라 칭하기로 한다.Next, the interval 2 is a period for transmitting data in a data transmission mode other than a burst mode, and is referred to as a 'speed limit period' in contrast to the burst period for convenience of explanation.
이러한 버스트 구간과 속도 제한 구간을 모두 포함하여 전송되는 전체 데이터량은 전술한 도 1과 비교하여 살펴보면, 도 1에서 전송한 데이터의 총량 a*t는 결국 버스트 구간의 데이터 전송량인 b*tb와 속도 제한 구간의 데이터 전송량인 c*tc의 합과 같게 된다.1, the total amount a * t of the data transmitted in FIG. 1 is expressed as b * tb, which is the data transmission amount of the burst period, And is equal to the sum of c * tc, the data transmission amount of the restricted section.
버스트 방식을 이용한 데이터 전송을 보다 효율적으로 이용하기 위해 특히 스트리밍 서비스와 같은 서비스를 제공하는 경우 초기에 버스트 구간을 설정하고 일정 시간이 지난 후 속도 제한 구간을 설정할 수 있다.In order to more efficiently use the data transmission using the burst method, in particular, when a service such as a streaming service is provided, a burst interval may be initially set and a rate limiting period may be set after a predetermined time.
이러한 경우 사용자가 콘텐츠를 시청함에 있어서 미리 많은 양의 데이터를 수신하여 클라이언트의 버퍼 등에 저장하여 둠으로써 콘텐츠 시청 도중 데이터의 수신이 용이하게 이루어지지 않아 콘텐츠 시청이 중단되는 것을 방지할 수 있게 한다.In this case, when a user views a content, a large amount of data is received in advance and stored in a buffer of a client, thereby preventing data from being easily received during viewing of the content, thereby preventing the viewing of the content from being interrupted.
한편, 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법에서는 버스트 구간과 속도 제한 구간 각각에 대해서도 파일 정보를 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량과 가중치를 계산하여 데이터 전송시 적용할 수 있다.Meanwhile, in the data transmission method according to the preferred embodiment of the present invention, the data amount and the weight per unit time of the entire data transmission and transmission unit are calculated using the file information for each of the burst period and the rate limiting period, have.
즉, 도 6에서 tb와 tc 그리고 b와 c의 값이 계산되는 가중치의 적용에 따라 동적으로 변화하게 되어 버스트 구간과 속도 제한 구간이 변화될 수 있게 되는 것이다.That is, in FIG. 6, the values of tb and tc, and b and c are changed dynamically according to the weight value to be calculated, so that the burst interval and the speed limit interval can be changed.
한편, 도 4 내지 도 6은 비트 레이트 정보가 고정 비트 레이트인 경우 이를 도시한 것이나, 도 2와 같이 비트 레이트 정보가 가변 비트 레이트인 경우에는 전송 단위 시간당 데이터량이 가변적이다.4 to 6 illustrate the case where the bit rate information is a fixed bit rate. However, when the bit rate information is a variable bit rate as shown in FIG. 2, the amount of data per transmission unit time is variable.
본 발명의 바람직한 다른 일 실시예에서는 데이터의 비트 레이트 정보가 가변 비트 레이트인 경우에도 전체 전송 시간과 전송 단위 시간당 데이터량을 변화되도록 할 수 있다.In another preferred embodiment of the present invention, even when the bit rate information of the data is a variable bit rate, the total transmission time and the data amount per transmission unit time can be changed.
데이터의 비트 레이트 정보가 가변 비트 레이트인 경우 본 발명의 바람직한 다른 일 실시예에 따른 데이터 데이터 전송 방법에 대하여 도 7을 참조하여 살펴본다.When the bit rate information of the data is a variable bit rate, a data data transmission method according to another embodiment of the present invention will be described with reference to FIG.
도 7에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법에서는 데이터의 비트 레이트 정보가 가변 비트 레이트인 경우 인코딩된 정보의 데이터 크기가 데이터량이 변화되어 전송될 수 있으므로 전송하여야 할 데이터량에 급격한 변화가 있는 경우 급격한 데이터량의 변화가 있는 해당 전송 단위 시간 이전의 가중치를 증가시킨다.As shown in FIG. 7, in the data transmission method according to the preferred embodiment of the present invention, when the bit rate information of the data is a variable bit rate, the data size of the encoded information can be transmitted by changing the amount of data, If there is a sudden change in the amount of data, the weight before the corresponding transmission unit time, which has a sudden change in the amount of data, is increased.
이러한 가중치의 증가는 가중치 계산이 파일 정보에 포함된 인코딩 정보를 이용하여 수행됨으로써 적용될 수 있게 된다.The increase of the weight can be applied by performing the weight calculation using the encoding information included in the file information.
한편, 해당 전송 단위 시간 이전의 가중치를 증가시킴으로써 데이터량이 큰 특정 전송 단위 시간에서 서버의 데이터 전송을 위한 부하를 줄여줄 수 있게 된다.On the other hand, by increasing the weight before the transmission unit time, the load for data transmission of the server can be reduced in a specific transmission unit time with a large amount of data.
도 2와 도 7을 비교하여 살펴보면, 도 2에 예시된 바와 같이, 종래의 데이터 전송 방법에 의해 데이터의 비트 레이트 정보가 가변 비트 레이트인 경우 전송 단위 시간당 데이터량이 급격하게 변화할 수 있다.2 and 7, as illustrated in FIG. 2, when the bit rate information of the data is variable bit rate according to the conventional data transmission method, the amount of data per unit time of transmission can be abruptly changed.
그러나 도 7에 도시된 바와 같이 본 발명의 바람직한 일 실시예에 의한 데이터 전송 방법에 의하면 데이터의 비트 레이트 정보가 가변 비트 레이트인 경우에도 전송 단위 시간당 데이터량이 급격하게 변화하지 않고 비교적 선형을 유지하게 된다.However, according to the data transmission method of the present invention as shown in FIG. 7, even if the bit rate information of the data is variable bit rate, the amount of data per unit time of transmission is not changed abruptly and maintained relatively linear .
예를 들면, 도 7에서 전송 단위 시간 t9의 급격하게 증가한 데이터량에 해당하는 부분인 700 및 710 부분을 가중치에 따라 전송 단위 시간 t7과 t8에서 각각 나누어 전송 단위 시간 t7과 t8에서 전송되는 데이터량을 증가시켜주는 것이다.For example, in FIG. 7, the portions 700 and 710 corresponding to the abruptly increased data amount of the transmission unit time t9 are divided by the transmission unit times t7 and t8, respectively, according to the weights, and the data amount transmitted at the transmission unit times t7 and t8 .
즉, 데이터의 비트 레이트 정보가 가변 비트 레이트인 경우 가중치를 이용하여 전송 단위 시간당 전송되는 데이터 양의 편차를 최소화하는 것이다.That is, when the bit rate information of the data is a variable bit rate, the deviation of the amount of data transmitted per transmission unit time is minimized by using the weight.
종래에는 파일 정보의 이용하지 않거나 이용하는 경우라도 단순히 데이터 전송을 위한 전체 전송 시간 및 전송 단위 시간당 데이터량을 계산하여 결정하는 데에만 이용하였다.Conventionally, even when file information is not used or used, it is simply used to calculate and determine the total transmission time and data amount per transmission unit time for data transmission.
그러나 본 발명에서는 데이터의 파일 정보를 독출하고 독출된 파일 정보를 이용하여 전체 전송 시간 및 전송 단위 시간당 데이터량을 계산하도록 한다.However, in the present invention, the file information of the data is read and the data amount per transmission time unit and transmission unit time is calculated using the read file information.
또한, 데이터 전송이 이루어지는 전송 단위 시간에서도 독출된 파일 정보를 이용하여 전체 전송 시간 및 전송 단위 시간당 전송할 데이터량을 변화시킬 수 있도록 하는 가중치를 계산하여 가중치에 따라 데이터의 전송이 이루어지게 함에 따라 서버의 안정성을 확보할 수 있다.In addition, by using the file information read in the transmission unit time during which the data transmission is performed, the weight is calculated so that the total transmission time and the amount of data to be transmitted per transmission unit time can be changed, Stability can be ensured.
예를 들어, 서버에서의 전송 단위 시간당 전송되는 데이터량이 급격하게 변화하는 것은 결국 상대적으로 서버의 부하가 고르지 못한 것을 의미한다.For example, a sudden change in the amount of data transmitted per unit of transmission time on the server means that the load on the server is relatively uneven.
왜냐하면, 도 7의 예시에서 종래의 데이터 전송 방법이라면 전송 단위 시간이 t9에서 클라이언트로부터의 데이터 전송 요청이 추가적으로 발생하는 경우 서버가 많은 양의 데이터를 전송 중이므로 만약 추가적으로 발생한 클라이언트로부터의 데이터 전송 요청이 수신되는 경우 신속하게 이를 처리하기 어렵다.In the example of FIG. 7, in the conventional data transmission method, if a data transmission request from the client is additionally generated at the transmission unit time t9, the server is transmitting a large amount of data. Therefore, It is difficult to handle it quickly.
특히 네트워크의 구성이 복잡해지면 복잡해질수록 클라이언트로부터의 추가적인 데이터 전송 요청에 대하여 신속하게 대응하기 어렵게 되며 결국 네트워크에서 중요한 요소인 안정성과 신속성이 낮아지게 된다.In particular, as the complexity of a network becomes complicated, it becomes difficult to quickly respond to requests for additional data transmission from the client, which in turn decreases reliability and speed, which are important elements in the network.
그러나 본 발명에서는 데이터 전송을 수행함에 있어서 서버에서의 전송 단위 시간당 데이터량이 급격하게 변화되는 것을 방지하면서도 클라이언트로 효율적으로 데이터 전송이 이루어질 수 있도록 함으로써 서버의 부하를 고르게 분산하여 결국 네트워크의 안정성을 높일 수 있게 된다.However, according to the present invention, in data transmission, it is possible to prevent the data amount per unit time of transmission from being changed abruptly in the server, and to efficiently transmit data to the client so that the load of the server is evenly dispersed, .
또한, 데이터의 파일 정보를 이용하여 계산되는 가중치를 적용하여 데이터 전송이 이루어지므로 불필요한 데이터의 전송까지 이루어지는 것을 방지할 수 있다.In addition, since the data transfer is performed by applying the weight calculated by using the file information of the data, unnecessary data transmission can be prevented.
예를 들어, 사용자 동영상을 시청하는 경우 동영상 중 앞부분만을 시청하고 동영상 시청을 중단한다고 가정한다.For example, if you watch a user video, it is assumed that you are watching only the first part of the video and stop watching the video.
이 경우 동영상 데이터를 전송하는 경우 사용자가 시청한 동영상 앞부분 이상의 크기에 해당하는 동영상 데이터가 클라이언트로 전송되어 저장되게 된다.In this case, when the moving picture data is transmitted, the moving picture data corresponding to the size larger than the front part of the moving picture viewed by the user is transmitted to the client and stored.
그러나 본 발명의 바람직한 일 실시예에서는 데이터 전송시 적용되는 가중치가 독출된 파일 정보에 따라 변화될 수 있고 또한, 이러한 가중치를 예를 들면, 최대값과 최소값을 가지도록 설정하여 미리 설정된 범위내로 조정함으로써 클라이언트에 저장되는 데이터의 크기를 최소화할 수 있다.However, in a preferred embodiment of the present invention, the weight applied at the time of data transmission may be changed according to the read file information, and the weight may be set to have a maximum value and a minimum value, for example, The size of data stored in the client can be minimized.
즉, 전체 데이터의 전송 시간과 전송 단위 시간당 데이터 양을 파일 정보를 이용하여 계산하고 또한, 파일 정보를 이용하여 계산되는 가중치를 데이터 전송시에도 적용하여 클라이언트에 저장되는 데이터의 크기를 최소화할 수 있게 된다.That is, the transmission time of the entire data and the amount of data per transmission unit time are calculated using the file information, and the weight calculated using the file information is also applied at the time of data transmission so that the size of data stored in the client can be minimized do.
그리고 이러한 가중치의 적용은 보다 바람직하게는 전송 단위 시간별로 수행될 수 있다.Further, the application of the weight may be more preferably performed for each transmission unit time.
한편, 이러한 본 발명의 바람직한 다른 일 실시예에 따른 데이터의 비트 레이트 정보가 VBR인 경우의 데이터 전송 방법은 전술한 도 6과 같이 버스트 구간과 속도 제한 구간을 나누어 데이터를 전송하는 경우에도 적용될 수 있다.Meanwhile, the data transmission method in the case where the bit rate information of the data according to another preferred embodiment of the present invention is VBR can be applied to the case of transmitting the data by dividing the burst interval and the rate limiting interval as shown in FIG. 6 .
예를 들어, 도 6의 버스트 구간을 구성하는 tb와 b, 그리고 속도 제한 구간을 구성하는 tc와 c를 파일 정보를 이용하여 각각 계산하고 데이터 전송시에는 전송 시간 단위별로 가중치를 적용함으로써 버스트 구간을 구성하는 tb와 b, 그리고 속도 제한 구간을 구성하는 tc와 c가 변화될 수 있도록 하는 것도 가능하다.For example, the tb and b constituting the burst section of FIG. 6 and the tc and c constituting the rate limiting section are calculated using the file information, respectively. In the data transmission, a weight is applied to each transmission time unit, It is also possible that the constituent tb and b and the constituent tc and c constituting the speed limit section are changed.
본 발명의 바람직한 일 실시예에 따른 데이터 전송 방법은 특히 사용자가 데이터로 구성되는 콘텐츠를 일부만 시청하는 경우 등에 불필요한 데이터의 전송을 최소화할 수 있게 한다.The data transmission method according to the preferred embodiment of the present invention minimizes the transmission of unnecessary data, especially when the user views only a part of the content composed of data.
예를 들어, 사용자 제작 콘텐츠(UCC: User Created Contents)의 경우 대부분의 사용자가 대부분 5초 이내 등 앞부분에서 시청을 중단하는 사례가 많은 경우 버스트 구간에서의 전체 전송 시간(도 6에서 tb)에 대한 가중치를 변화시킴으로써 클라이언트에 저장되는 데이터의 크기를 최소화할 수 있다.For example, in the case of user-created contents (UCC: User Created Contents), in most cases, most of users stop watching at the beginning such as within 5 seconds, the total transmission time (tb in FIG. 6) By changing the weight, the size of the data stored in the client can be minimized.
한편, 이러한 데이터 전송시 가중치를 적용하여 전체 데이터 전송 시간과 전송 단위 시간당 데이터 양을 제한하는 경우라도 파일의 헤더가 차지하는 데이터 양은 가중치를 적용하지 않고 우선적으로 데이터 전송되도록 하는 것도 가능하다.On the other hand, even in the case of limiting the total data transmission time and the amount of data per transmission unit time by applying the weight during the data transmission, it is also possible to preferentially transmit the data amount occupied by the header of the file without applying the weight.
예를 들어, 스트리밍 방식의 경우 빠른 플레이의 시작이 가능하기 위해서는 파일의 헤더 정보가 우선적으로 필요하므로 이는 가중치와 무관하게 먼저 버스트 구간에서 데이터 전송이 이루어지도록 하는 것도 가능하나, 이에 한정되는 것은 아니다.For example, in the case of the streaming method, header information of a file is preferentially required in order to enable fast play. Therefore, it is possible to transmit data in a burst period irrespective of a weight, but the present invention is not limited thereto.
한편, 도 6에서 예시한 바와 같이 버스트 구간과 속도 제한 구간으로 나누어 데이터를 전송하는 경우 예를 들면, 버스트 구간에서 수행된 데이터 전송량과 데이터 전송 시간을 고려하여 다음 구간인 속도 제한 구간의 가중치가 변화되도록 할 수 있다.6, when data is divided into a burst period and a rate limiting period, for example, in consideration of the data transmission amount and the data transmission time performed in the burst period, the weight of the rate limiting period, which is the next period, .
만약, 전송하여야 할 데이터의 총량이 100MB이고 버스트 구간에서 전송되어야 할 데이터의 량이 10MB라고 설정되어 있다고 가정하면, 본 발명의 바람직한 일 실시예에 의한 데이터 전송에서는 네트워크 상태와 파일 정보에 따라 다른 값으로 계산되는 가중치에 따라 10MB의 데이터가 모두 전송되지 않을 수 있다.Assuming that the total amount of data to be transmitted is 100 MB and the amount of data to be transmitted in the burst period is set to 10 MB, the data transmission according to the preferred embodiment of the present invention may have different values depending on the network status and file information Depending on the weights calculated, 10 MB of data may not be transmitted at all.
이러한 경우 속도 제한 구간에서 가중치가 증가되도록 가중치를 계산하여 데이터 전송시 적용함으로써 속도 제한 구간에서의 데이터 전송량을 증가시킬 수 있게 된다.In this case, the weight is calculated so as to increase the weight in the rate limiting period, and the amount of data transmission in the rate limiting period can be increased by applying the weighting during data transmission.
반대로 본 발명의 바람직한 일 실시예에서는 계산되는 가중치에 따라 버스트 구간에서 10MB 이상의 데이터가 전송될 수도 있으므로 이러한 경우 속도 제한 구간에서 가중치가 감소되도록 가중치를 계산하여 데이터 전송시 적용함으로써 속도 제한 구간에서의 데이터 전송량을 감소시킬 수 있게 된다.On the other hand, in a preferred embodiment of the present invention, data of 10 MB or more may be transmitted in the burst period according to the calculated weight. In this case, the weight is calculated so that the weight is reduced in the rate limiting period, The transmission amount can be reduced.
이러한 파일 정보를 이용하여 버스트 구간과 속도 제한 구간의 전체 전송 시간 및 전송 단위 시간당 데이터량을 계산하고 또한 데이터 전송시 적용되는 가중치를 계산하여 버스트 구간과 속도 제한 구간에 모두 이용함으로써 서버의 효율을 더욱 증가시키고 원하는 데이터의 전송은 더욱 효율적으로 이루어지도록 하는 것이 가능하게 된다.By using these file information, it is possible to calculate the total transmission time and the data amount per transmission unit time of the burst section and the rate limiting section, and calculate the weight to be applied in the data transmission and to use both the burst section and the speed limit section, And the transmission of the desired data can be performed more efficiently.
한편, 이러한 전술한 본 발명에 의한 디지털 콘텐츠 보호 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드디스크, 광자기디스크 등)에 저장될 수 있다.The method for protecting digital contents according to the present invention may be implemented as a program and stored in a computer-readable recording medium such as a CD-ROM, a RAM, a ROM, a floppy disk, a hard disk, or a magneto-optical disk.
이하에서는 도 8을 참조하여 본 발명에 의한 데이터 전송 방법을 구현할 수 있는 장치의 구성을 살펴보기로 한다.Hereinafter, a configuration of an apparatus capable of implementing a data transmission method according to the present invention will be described with reference to FIG.
도 8은 본 발명의 바람직한 일 실시예에 따른 데이터 전송 장치의 구성을 도시한 구성도이다.8 is a configuration diagram illustrating a configuration of a data transmission apparatus according to an exemplary embodiment of the present invention.
도 8에 도시된 바와 같이 본 발명의 바람직한 일 실시예에 따른 데이터 전송 장치는 파일 정보 독출부(800), 연산부(810) 및 통신부(820)를 포함할 수 있다.As shown in FIG. 8, the data transmission apparatus according to an exemplary embodiment of the present invention may include a file information reading unit 800, an operation unit 810, and a communication unit 820.
파일 정보 독출부(800)는 전송할 데이터의 파일 정보를 독출한다.The file information reading unit 800 reads the file information of the data to be transmitted.
독출되는 파일 정보는 전술할 바와 같이 파일의 헤더(header) 크기 정보, 인코팅 정보, 파일 크기 정보, 재생 시간 정보, 키 프레임(key frame) 정보 등의 정보를 포함할 수 있다.As described above, the file information to be read may include information such as header size information, phosphorus coating information, file size information, reproduction time information, and key frame information of the file.
연산부(810)는 파일 정보 독출부(800)에서 독출한 파일 정보를 이용하여 전체 데이터의 전송 시간과 전송 단위 시간당 전송할 데이터량을 계산한다.The operation unit 810 calculates the transmission time of the entire data and the amount of data to be transmitted per transmission unit time using the file information read by the file information reading unit 800. [
또한, 연산부(810)는 실제 데이터 전송시 적용되는 가중치를 계산한다.In addition, the operation unit 810 calculates a weight to be applied to the actual data transmission.
연산부(810)는 전체 데이터의 전송 시간 및 전송 단위 시간당 전송할 데이터량과 데이터 전송시 적용되는 가중치를 계산함에 있어서 데이터의 파일 정보뿐만 아니라 네트워크 상태 정보를 함께 이용하여 계산할 수 있다.The calculation unit 810 can calculate the transmission time of the entire data, the amount of data to be transmitted per transmission unit time, and the weight to be applied when transmitting data, together with the network status information as well as the file information of the data.
네트워크 상태 정보는 전술한 바와 같이 데이터를 수신하는 클라이언트의 버퍼의 크기나 클라이언트와 서버간의 대역폭과 같은 정보를 포함하는 정보일 수 있다.The network status information may be information including information such as the size of the buffer of the client receiving the data or the bandwidth between the client and the server as described above.
통신부(820)는 데이터를 송수신하며, 특히 데이터 전송시 연산부(810)에서 계산된 전체 데이터의 전송 시간 및 전송 단위 시간당 데이터량에 연산부(810)에서 계산된 가중치를 적용하여 데이터를 전송한다.The communication unit 820 transmits and receives data, and in particular, transmits data by applying a weight calculated by the operation unit 810 to the data amount per transmission unit time and the transmission time of the entire data calculated by the operation unit 810 at the time of data transmission.
그리고, 도 8에서는 미도시 하였으나 본 발명의 바람직한 일 실시예에 의한 데이터 전송 장치에는 각각의 구성 요소들의 기능을 제어하는 제어 신호를 생성하는 제어부를 더 포함할 수 있다.Although not shown in FIG. 8, the data transmission apparatus according to an exemplary embodiment of the present invention may further include a controller for generating control signals for controlling functions of the respective components.
한편, 도 8에서는 본 발명의 바람직한 일 실시예에 의한 데이터 전송 장치를 별도로 도시하였으나 본 발명의 바람직한 일 실시예에 의한 데이터 전송 장치는 서버에 본 발명의 바람직한 일 실시예에 의한 데이터 전송 방법이 구현된 프로그램이 설치된 형태로 구현되거나 서버와 연결되는 별도의 장치로 구성될 수 있다.8, a data transmission apparatus according to an exemplary embodiment of the present invention is separately shown. However, a data transmission apparatus according to an exemplary embodiment of the present invention may include a data transmission method according to a preferred embodiment of the present invention Or a separate device connected to the server.
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.It will be apparent to those skilled in the relevant art that various modifications, additions and substitutions are possible, without departing from the spirit and scope of the invention as defined by the appended claims. The appended claims are to be considered as falling within the scope of the following claims.
Claims (19)
- 데이터 전송 방법에 있어서,In a data transmission method,전송할 데이터의 파일 정보를 독출하는 단계(a);(A) reading file information of data to be transferred;상기 파일 정보를 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량을 계산하는 단계(b);(B) calculating a total data transmission time and a data amount per transmission unit time using the file information;상기 파일 정보를 이용하여 가중치를 계산하는 단계(c); 및(C) calculating a weight using the file information; And상기 계산된 가중치를 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용하여 데이터를 전송하는 단계(d)를 포함하는 것을 특징으로 하는 데이터 전송 방법.And (d) transmitting data by applying the calculated weight to the total data transmission time and the data amount per transmission unit time.
- 제1항에 있어서,The method according to claim 1,상기 단계(a)에서 상기 파일 정보는 상기 파일의 헤더(header) 크기 정보 및 인코딩 정보를 포함하는 정보인 것을 특징으로 하는 데이터 전송 방법.Wherein the file information in the step (a) is information including header size information and encoding information of the file.
- 제2항에 있어서,3. The method of claim 2,상기 단계(b)에서,In the step (b)상기 전송 단위 시간당 데이터량은 상기 데이터의 파일의 전체 크기에서 상기 파일의 헤더 크기를 감하여 계산되는 것을 특징으로 하는 데이터 전송 방법.Wherein the data amount per transmission unit time is calculated by subtracting the header size of the file from the total size of the file of the data.
- 제2항에 있어서,3. The method of claim 2,상기 인코딩 정보는 인코딩 방식, 인코딩 알고리즘 중 적어도 하나를 포함하는 정보인 것을 특징으로 하는 데이터 전송 방법.Wherein the encoding information is information including at least one of an encoding method and an encoding algorithm.
- 제4항에 있어서,5. The method of claim 4,상기 단계(c)에서,In the step (c)상기 인코딩 방식이 가변 비트 레이트(VBR: Variable Bit Rate)인 경우 상기 가중치는 상기 전송 단위 시간당 데이터량의 편차가 최소로 되도록 계산되는 것을 특징으로 하는 데이터 전송 방법. Wherein when the encoding scheme is a variable bit rate (VBR), the weight is calculated such that a deviation of a data amount per unit time of the transmission is minimized.
- 제1항에 있어서,The method according to claim 1,상기 단계(b)와 상기 단계(c)는 데이터 수신단의 버퍼의 크기 및 데이터 수신단 및 데이터 송신단 사이의 대역폭 정보 중 적어도 하나의 정보를 포함하는 정보인 네트워크 상태 정보를 더 이용하여 계산되는 것을 특징으로 하는 데이터 전송 방법.Wherein the step (b) and the step (c) are calculated by further using network state information, which is information including at least one of a size of a buffer of a data receiving end and a bandwidth information between a data receiving end and a data transmitting end / RTI >
- 제1항에 있어서,The method according to claim 1,상기 단계(c)에서,In the step (c)상기 가중치는 미리 설정된 최대값 및 최소값을 가지는 것을 특징으로 하는 데이터 전송 방법.Wherein the weight has a predetermined maximum value and a minimum value.
- 제1항에 있어서,The method according to claim 1,상기 단계(c)에서,In the step (c)상기 가중치는 상기 전송 단위 시간별로 계산되는 것을 특징으로 하는 데이터 전송 방법.And the weight is calculated for each transmission unit time.
- 제1항에 있어서,The method according to claim 1,상기 데이터의 전송은 데이터가 버스트 방식으로 전송되는 버스트 구간과 버스트 방식이 아닌 방식으로 전송되는 속도 제한 구간으로 나누어 수행되는 것을 특징으로 하는 데이터 전송 방법.Wherein the data transmission is divided into a burst interval in which data is transmitted in burst mode and a rate limit interval in which data is transmitted in non-burst mode.
- 데이터 전송 장치에 있어서,A data transfer apparatus comprising:전송할 데이터의 파일 정보를 독출하는 파일 정보 독출부;A file information reading unit for reading file information of data to be transmitted;상기 파일 정보를 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량을 계산하고, 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용될 가중치를 계산하는 연산부; 및An operation unit for calculating a total data transmission time and a data amount per transmission unit time using the file information and calculating a weight to be applied to the data amount per transmission time unit and the transmission unit time; And상기 계산된 가중치를 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용하여 데이터를 전송하는 통신부를 포함하는 것을 특징으로 하는 데이터 전송 장치.And a communication unit for transmitting the data by applying the calculated weight to the total data transmission time and the data amount per transmission unit time.
- 제10항에 있어서,11. The method of claim 10,상기 파일 독출부에서 독출하는 상기 파일 정보는 상기 파일의 헤더(header) 크기 정보 및 인코딩 정보를 포함하는 정보인 것을 특징으로 하는 데이터 전송 장치.Wherein the file information read by the file reading unit is information including header size information and encoding information of the file.
- 제10항에 있어서,11. The method of claim 10,상기 연산부는,The operation unit,상기 전송 단위 시간당 데이터량을 상기 데이터의 파일의 전체 크기에서 상기 파일의 헤더 크기를 감하여 계산하는 것을 특징으로 하는 데이터 전송 장치.And calculates a data amount per unit time of the transmission by subtracting a header size of the file from a total size of the file of the data.
- 제10항에 있어서,11. The method of claim 10,상기 인코딩 정보는 인코딩 방식, 인코딩 알고리즘 중 적어도 하나를 포함하는 정보인 것을 특징으로 하는 데이터 전송 방법.Wherein the encoding information is information including at least one of an encoding method and an encoding algorithm.
- 제13항에 있어서,14. The method of claim 13,상기 연산부는 상기 인코딩 정보가 가변 비트 레이트(VBR: Variable Bit Rate)인 경우 상기 가중치는 상기 전송 단위 시간당 데이터량의 편차가 최소로 되도록 계산하는 것을 특징으로 하는 데이터 전송 장치.Wherein the calculation unit calculates the weight so that a deviation of a data amount per unit time of transmission is minimized when the encoding information is a variable bit rate (VBR).
- 제10항에 있어서,11. The method of claim 10,상기 연산부는 데이터 수신단의 버퍼의 크기 및 데이터 수신단 및 데이터 송신단 사이의 대역폭 정보 중 적어도 하나의 정보를 포함하는 정보인 네트워크 상태 정보를 더 이용하여 상기 가중치를 계산하는 것을 특징으로 하는 데이터 전송 장치.Wherein the operation unit further calculates the weight using the network status information, which is information including at least one of a size of a buffer of the data receiving end and a bandwidth between the data receiving end and the data transmitting end.
- 제10항에 있어서,11. The method of claim 10,상기 연산부는 미리 설정된 최대값 및 최소값에 따라 상기 가중치를 계산하는 것을 특징으로 하는 데이터 전송 장치.Wherein the calculating unit calculates the weight according to a preset maximum value and a minimum value.
- 제10항에 있어서,11. The method of claim 10,상기 연산부는 상기 전송 단위 시간당으로 상기 가중치를 계산하는 것을 특징으로 하는 데이터 전송 장치.Wherein the calculation unit calculates the weight per unit time of the transmission.
- 제10항에 있어서,11. The method of claim 10,상기 통신부에서의 데이터 전송은 데이터가 버스트 방식으로 전송되는 버스트 구간과 버스트 방식이 아닌 방식으로 전송되는 속도 제한 구간으로 나누어 상기 데이터의 전송을 수행하는 것을 특징으로 하는 데이터 전송 장치.Wherein the data transmission in the communication unit is performed by dividing the data into a burst period in which data is transmitted in a burst mode and a rate limiting period in which the data is transmitted in a non-burst mode.
- 데이터 전송 방법을 구현하기 위한 프로그램을 기록한 기록매체에 있어서,A recording medium on which a program for implementing a data transfer method is recorded,전송할 데이터의 파일 정보를 독출하는 단계(a);(A) reading file information of data to be transferred;상기 파일 정보를 이용하여 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량을 계산하는 단계(b);(B) calculating a total data transmission time and a data amount per transmission unit time using the file information;상기 파일 정보를 이용하여 가중치를 계산하는 단계(c); 및(C) calculating a weight using the file information; And상기 계산된 가중치를 상기 전체 데이터 전송 시간 및 전송 단위 시간당 데이터량에 적용하여 데이터를 전송하는 단계(d)를 포함하는 것을 특징으로 하는 데이터 전송 방법을 구현하기 프로그램을 기록한 기록매체.And (d) transmitting data by applying the calculated weight to the total data transmission time and the data amount per transmission unit time.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080129019A KR101051709B1 (en) | 2008-12-18 | 2008-12-18 | Data transmission method and device |
KR10-2008-0129019 | 2008-12-18 |
Publications (3)
Publication Number | Publication Date |
---|---|
WO2010071303A2 WO2010071303A2 (en) | 2010-06-24 |
WO2010071303A3 WO2010071303A3 (en) | 2010-09-10 |
WO2010071303A4 true WO2010071303A4 (en) | 2010-10-28 |
Family
ID=42269200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2009/006749 WO2010071303A2 (en) | 2008-12-18 | 2009-11-17 | Method and apparatus for data transmission |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101051709B1 (en) |
WO (1) | WO2010071303A2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101226012B1 (en) * | 2011-05-31 | 2013-01-24 | 삼성중공업 주식회사 | System and method for transmiting/receiving data in satellite communication environments |
KR102063089B1 (en) * | 2014-07-18 | 2020-01-07 | 에스케이플래닛 주식회사 | System for cloud streaming service, method of improving content picture quality and apparatus for the same |
KR101722735B1 (en) * | 2016-04-01 | 2017-04-03 | (주)판도라티비 | Server and method for transmitting of variable bit rate(vbr) contents in cdn |
CN114760491A (en) * | 2022-04-18 | 2022-07-15 | 北京金山云网络技术有限公司 | Live broadcast data transmission system, method and device, electronic equipment and storage medium |
CN116723152B (en) * | 2023-08-11 | 2023-10-20 | 国网江苏省电力有限公司电力科学研究院 | Data transmission method and system of intelligent distribution transformer quick detection device |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100486713B1 (en) * | 2002-09-17 | 2005-05-03 | 삼성전자주식회사 | Apparatus and method for streaming multimedia data |
KR100550099B1 (en) * | 2003-10-31 | 2006-02-08 | 주식회사 케이티프리텔 | VOD service system and method thereof |
KR101208520B1 (en) * | 2005-03-12 | 2012-12-05 | 엘지전자 주식회사 | Method for Communicating Feedback Information |
JP4643330B2 (en) * | 2005-03-28 | 2011-03-02 | ソニー株式会社 | COMMUNICATION PROCESSING DEVICE, DATA COMMUNICATION SYSTEM, COMMUNICATION PROCESSING METHOD, AND COMPUTER PROGRAM |
-
2008
- 2008-12-18 KR KR1020080129019A patent/KR101051709B1/en active IP Right Grant
-
2009
- 2009-11-17 WO PCT/KR2009/006749 patent/WO2010071303A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2010071303A3 (en) | 2010-09-10 |
KR101051709B1 (en) | 2011-07-25 |
WO2010071303A2 (en) | 2010-06-24 |
KR20100070470A (en) | 2010-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2011059272A2 (en) | Method and apparatus for providing trick play service | |
WO2012030178A2 (en) | Method and device for providing streaming content | |
WO2010071303A4 (en) | Method and apparatus for data transmission | |
WO2011152675A2 (en) | Method and apparatus for adaptive streaming based on plurality of elements for determining quality of content | |
WO2010019022A2 (en) | System and method for transmitting and receiving a call on a home network | |
WO2012047028A2 (en) | Apparatus and method for providing streaming content | |
WO2013162312A1 (en) | Method and apparatus for transceiving data for multimedia transmission system | |
WO2012011726A2 (en) | Method and apparatus for providing drm service | |
WO2016021773A1 (en) | Qos guaranteed video stream method and system, and transmission server | |
WO2010071269A1 (en) | Request signal of an image program according to specific input sources based on the received list to the external display devices | |
WO2016003234A1 (en) | Method and device for receiving and transmitting information in multimedia system | |
WO2014077458A1 (en) | Method for distinguishing type of communication network and method for providing content using same | |
WO2019223600A1 (en) | Bluetooth audio transmission method, device, and computer readable storage medium | |
WO2011037358A2 (en) | Digital device able to access broadcast networks and ip networks, and a control method therefor | |
WO2014073902A1 (en) | Method and apparatus for providing web service in wireless communication system | |
WO2017035787A1 (en) | Method, device, and system for storing streaming media file | |
WO2017035786A1 (en) | Method, device, and system for playing and checking streaming media file | |
WO2011136538A2 (en) | Method and apparatus for transmitting ethernet data through audio/video interface | |
WO2011071334A2 (en) | Method and apparatus for transmitting video contents compressed by codec | |
WO2011031097A2 (en) | Method for setting plurality of sessions and node using same | |
WO2010090465A2 (en) | Method for sending and receiving session history in a communications system | |
WO2016080586A1 (en) | System and method for providing cloud based user interfaces | |
WO2014204225A1 (en) | Broadcasting transmission/reception apparatus and broadcasting transmission/reception method | |
WO2011145896A2 (en) | Method and apparatus for determining a coordinator | |
WO2016099183A1 (en) | Hybrid transmission protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09833581 Country of ref document: EP Kind code of ref document: A2 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09833581 Country of ref document: EP Kind code of ref document: A2 |