KR20120056728A - Opportunistic Fair Parallel Download Method and System Based on Priority of Connection Link - Google Patents
Opportunistic Fair Parallel Download Method and System Based on Priority of Connection Link Download PDFInfo
- Publication number
- KR20120056728A KR20120056728A KR1020100118403A KR20100118403A KR20120056728A KR 20120056728 A KR20120056728 A KR 20120056728A KR 1020100118403 A KR1020100118403 A KR 1020100118403A KR 20100118403 A KR20100118403 A KR 20100118403A KR 20120056728 A KR20120056728 A KR 20120056728A
- Authority
- KR
- South Korea
- Prior art keywords
- priority
- group
- server
- receiving
- parallel
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000012544 monitoring process Methods 0.000 claims abstract description 15
- 230000005540 biological transmission Effects 0.000 claims description 6
- 230000000593 degrading effect Effects 0.000 description 3
- 238000011056 performance test Methods 0.000 description 3
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- 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
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- 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/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- 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/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 다수의 서버에 병렬 연결 설정하고 사용자의 정책 혹은 연결 링크의 상태에 따라 서로 다른 우선 순위를 부여함으로써 콘텐츠 다운로드 시간을 줄이고 분산을 통해 서버의 부하를 줄여 시스템의 신뢰도(Reliability)를 향상시킬 수 있는 기회주의적 병렬 다운로드 방법 및 시스템에 관한 것이다.
본 발명의 일면에 따른, 복수 서버에 분산 저장된 콘텐츠를 병렬 다운로드하기 위한 수신 단말에서의 병렬 다운로드 방법은, 복수의 수신 장치들이 각각의 대응 서버와 네트워크로 연결되어 콘텐츠를 수신하는 단계, 상기 복수의 수신 장치들의 네트워크 연결 상태를 모니터링하는 단계, 및 복수의 우선 순위 그룹에서 선택하여 상기 복수의 수신 장치들의 네트워크 연결 방식의 설정을 변경하는 단계를 포함한다.The present invention improves the reliability of the system by reducing the download time of the content and reducing the load of the server through distribution by setting up parallel connections to a plurality of servers and assigning different priorities according to the user's policy or the status of the connection link. And an opportunistic parallel download method and system.
According to an aspect of the present invention, there is provided a parallel download method in a receiving terminal for parallel downloading of contents stored in a plurality of servers, the plurality of receiving apparatuses being connected to a network with a corresponding server to receive the contents, the plurality of Monitoring a network connection state of receiving devices, and changing a setting of a network connection method of the plurality of receiving devices by selecting from a plurality of priority groups.
Description
본 발명은 콘텐츠 다운로드 방법 및 시스템에 관한 것으로서, 다수의 서버에 병렬 연결 설정하고 사용자의 정책 혹은 연결 링크의 상태에 따라 서로 다른 우선 순위를 부여함으로써 콘텐츠 다운로드 시간을 줄이고 분산을 통해 서버의 부하를 줄여 시스템의 신뢰도(Reliability)를 향상시킬 수 있는 기회주의적 병렬 다운로드 방법 및 시스템에 관한 것이다. The present invention relates to a method and a system for downloading a content. By setting up a parallel connection to a plurality of servers and assigning different priorities according to a user's policy or the status of a connection link, the content download time is reduced and the server load is reduced through distribution. The present invention relates to an opportunistic parallel download method and system that can improve the reliability of the system.
콘텐츠 분배 네트워크 (Contents Distribution Network)나 피어-투-피어 (Peer-to-Peer) 파일 공유 네트워크에서 파일의 복제 및 분배는 매우 중요한 문제 중 하나이다. 즉, 동일한 콘텐츠를 여러 서버에 분산하여 저장할 경우, 서버의 부하를 분산할 수 있을 뿐만 아니라 서버의 고장 (fault) 에 따른 서비스 중단을 예방 할 수 있어 시스템의 신뢰도를 향상 시킬 수 있다. In a Contents Distribution Network or Peer-to-Peer File Sharing Network, the replication and distribution of files is one of the most important issues. In other words, if the same content is distributed and stored in multiple servers, not only can the load of the server be distributed but also the service interruption due to the server's fault can be prevented, thereby improving the reliability of the system.
병렬 다운로드 프로토콜은 하나의 수신 노드에서 다수의 서버로 연결을 설정하여 동시에 다운로드 받는 방식으로 각 연결 링크의 병목지점이 서로 다를 경우 연결을 설정한 수에 따라 다운로드 처리량 (Throughput)을 증가시켜 다운로드 시간을 줄일 수 있다. 그러나 병렬 다운로드 프로토콜은 같은 병목 지점을 공유할 경우 다른 연결 링크의 성능을 저하시켜 형평성 문제를 야기한다.The parallel download protocol establishes a connection from one receiving node to multiple servers and downloads simultaneously. If the bottlenecks of each connection link are different, the download throughput is increased by increasing the number of connections established. Can be reduced. However, parallel download protocols cause performance problems when sharing the same bottlenecks, resulting in poor performance of other connection links.
따라서, 본 발명은 상술한 문제점을 해결하기 위한 것으로서, 본 발명의 목적은, 복제된 콘텐츠가 다수의 서버에 분산되어 저장되어 있는 네트워크 상에서 콘텐츠 다운로드 시간을 단축시키고 병렬 다운로드로 인해 발생하는 형평성 문제를 극복할 수 있는 기회주의적 병렬 다운로드 방법 및 시스템을 제공하는 데 있다. Accordingly, an object of the present invention is to solve the above-described problem, and an object of the present invention is to reduce content download time on a network in which replicated content is distributed and stored in a plurality of servers, and to solve the problem of equity caused by parallel download. To provide an opportunistic parallel download method and system that can overcome.
또한, 다수의 서버와 다중 경로의 TCP 연결을 설정함에 있어서, 사용자의 정책 (Policy)이나 연결 링크의 상태를 기반으로 병렬 연결의 우선순위를 다르게 부여하여 콘텐츠를 다운로드하는 기회주의적 병렬 다운로드 방법 및 시스템을 제공하는 데 있다. In addition, in establishing a multipath TCP connection with multiple servers, an opportunistic parallel download method and system for downloading contents by assigning priorities to parallel connections based on a user's policy or the status of a connection link. To provide.
그리고, 연결이 설정되어 콘텐츠를 다운로드 받는 동안 연결 상태를 지속적으로 모니터링하여 연결 상태의 변화에 따라 할당된 우선 순위도 변경하여 성능저하 없이 타 연결과의 형평성 문제를 해결할 수 있는 기회주의적 병렬 다운로드 방법 및 시스템을 제공하는 데 있다. Opportunistic parallel download method that continuously monitors the connection status while the connection is established and downloads the content, and changes the priority assigned as the connection status changes to solve the problem of equity with other connections without degrading performance. To provide a system.
먼저, 본 발명의 특징을 요약하면, 상기와 같은 본 발명의 목적을 달성하기 위한 본 발명의 일면에 따른, 복수 서버에 분산 저장된 콘텐츠를 병렬 다운로드하기 위한 수신 단말에서의 병렬 다운로드 방법은, 복수의 수신 장치들이 각각의 대응 서버와 네트워크로 연결되어 콘텐츠를 수신하는 단계; 상기 복수의 수신 장치들의 네트워크 연결 상태를 모니터링하는 단계; 및 복수의 우선 순위 그룹에서 선택하여 상기 복수의 수신 장치들의 네트워크 연결 방식의 설정을 변경하는 단계를 포함한다.First, to summarize the features of the present invention, in accordance with an aspect of the present invention for achieving the object of the present invention, a parallel download method in the receiving terminal for parallel downloading of the content stored in a plurality of servers in parallel, Receiving devices connected to respective corresponding servers in a network to receive content; Monitoring a network connection state of the plurality of receiving devices; And changing a setting of a network connection scheme of the plurality of receiving devices by selecting from a plurality of priority groups.
상기 모니터링하는 단계는, 상기 복수의 수신 장치들로부터 각각의 패킷 수신량을 수집하는 단계를 포함하고, 상기 설정을 변경하는 단계는, 상기 각각의 패킷 수신량을 임계치와 비교하여 해당 수신 장치에 대하여 상기 복수의 우선 순위 그룹 중 어느 하나를 결정하는 단계, 및 결정된 우선 순위 그룹의 네트워크 연결 방식으로 해당 수신 장치의 네트워크 연결 방식을 설정하는 단계를 포함한다.The monitoring may include collecting respective packet reception amounts from the plurality of receiving devices, and the changing of the setting may be performed by comparing the respective packet reception amounts with a threshold for the corresponding reception apparatus. Determining any one of the plurality of priority groups, and setting a network connection method of a corresponding receiving device based on the determined network connection method of the priority group.
상기 복수의 우선 순위 그룹은, 서버의 패킷 전송 후 재전송 타임 아웃 시간 동안 아무런 응답이 없으면 재전송하는 과정을 수행하는 서버와 단말간의 연결 그룹인 일반 TCP 그룹; 및 서버의 패킷 전송 후 ECN(Early Congestion Notification) 메시지에 따라 재전송하는 과정을 수행하는 서버와 단말간의 연결 그룹인 TCP_LP 그룹을 포함한다.The plurality of priority groups may include: a general TCP group, which is a connection group between a server and a terminal that performs a process of retransmitting if there is no response during a retransmission timeout after the packet transmission of the server; And a TCP_LP group, which is a connection group between the server and the terminal performing retransmission according to an ECN (Early Congestion Notification) message after packet transmission of the server.
그리고, 본 발명의 다른 일면에 따른, 복수 서버에 분산 저장된 콘텐츠를 병렬 다운로드하기 위한 수신 단말의 병렬 다운로드 장치는, 각각의 대응 서버와 네트워크로 연결되어 콘텐츠를 수신하는 복수의 수신 장치들; 및 상기 복수의 수신 장치들의 네트워크 연결 상태를 모니터링하고, 복수의 우선 순위 그룹에서 선택하여 상기 복수의 수신 장치들의 네트워크 연결 방식의 설정을 변경하는 혼잡 제어 조율자를 포함한다.In addition, according to another aspect of the present invention, a parallel download apparatus of a receiving terminal for parallelly downloading contents distributed and stored in a plurality of servers includes: a plurality of receiving apparatuses connected to a network corresponding to each corresponding server to receive the contents; And a congestion control coordinator for monitoring a network connection state of the plurality of receiving apparatuses and selecting from a plurality of priority groups to change a setting of a network connection scheme of the plurality of receiving apparatuses.
상기 혼잡 제어 조율자는, 상기 복수의 수신 장치들로부터 각각의 패킷 수신량을 수집하는 네트워크 모니터링부; 상기 각각의 패킷 수신량을 임계치와 비교하여 해당 수신 장치에 대하여 상기 복수의 우선 순위 그룹 중 어느 하나를 결정하는 우선순위 결정부; 및 결정된 우선 순위 그룹의 네트워크 연결 방식으로 해당 수신 장치의 네트워크 연결 방식을 설정하는 설정부를 포함한다.The congestion control coordinator, the network monitoring unit for collecting each packet receiving amount from the plurality of receiving devices; A priority determining unit which determines one of the plurality of priority groups with respect to a corresponding receiving device by comparing each packet receiving amount with a threshold; And a setting unit configured to set a network connection method of the corresponding reception device as the network connection method of the determined priority group.
본 발명에 따른 병렬 다운로드 방법 및 시스템에 따르면, 하나의 TCP 연결을 이용할 때와 비교하여 다수의 TCP 연결을 이용하여 콘텐츠를 다운 받을 경우 다운로드 시간을 줄 일 수 있다.According to the parallel download method and system according to the present invention, the download time can be reduced when downloading content using a plurality of TCP connections compared to when using one TCP connection.
또한, 연결 링크의 상태에 따라 우선순위를 변경함으로써 성능저하 없이 형평성 문제를 해결할 수 있다. In addition, by changing the priority according to the state of the connection link, it is possible to solve the problem of equity without degrading performance.
도 1은 본 발명의 실시예에 따른 콘텐츠 제공 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 혼잡 제어 조율자를 설명하기 위한 도면이다.
도 3은 본 발명의 실시예에 따른 혼잡 제어 조율자의 동작을 설명하기 위한 흐름도이다.
도 4는 성능 시험을 위한 하나의 토폴로지 예이다.
도 5는 성능 시험 결과 높은 우선 순위 부여 링크 수에 대한 다운로드 완료 시간의 그래프이다.
도 6은 높은 우선 순위를 부여한 링크의 수에 따른 낮은 우선 순위 부여 링크의 기여도를 백분율로 정규화한 그래프이다.1 is a view for explaining a content providing system according to an embodiment of the present invention.
FIG. 2 is a diagram for describing the congestion control coordinator of FIG. 1.
3 is a flowchart illustrating an operation of a congestion control coordinator according to an embodiment of the present invention.
4 is an example of one topology for performance testing.
5 is a graph of download completion time versus performance test results for a high number of prioritized links.
FIG. 6 is a graph normalizing the contribution of low priority links in percentages according to the number of high priority links.
이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명하지만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Reference will now be made in detail to the preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout.
도 1은 본 발명의 일실시예에 따른 콘텐츠 제공 시스템(100)을 설명하기 위한 도면이다. 도 1을 참조하면, 본 발명의 일실시예에 따른 콘텐츠 제공 시스템(100)은, 복수의 서버(110)에서 TCP/IP(간단히 TCP라 약칭함) 네트워크를 통해 수신 단말(120)로 콘텐츠(텍스트, 이미지, 동영상 등)를 제공한다. 특히, 본 발명의 일실시예에 따른 콘텐츠 제공 시스템(100)은, TCP/IP(Transmission Control Protocol/Internet Protocol) 방식에 따른 콘텐츠 분배 네트워크(Content Distribution Network)나 피어-투-피어(Peer-to-Peer) 파일 공유 네트워크에서, 송신자에 해당하는 서버의 부하를 분산시키고 시스템의 신뢰도를 높이기 위해 콘텐츠를 복수의 서버(110)에 분산하여 저장하며, 필요시 수신자에 해당하는 수신 단말(120)로 콘텐츠를 병렬 배포할 수 있는 시스템이다. 1 is a view for explaining a
본 발명에서, 수신 단말(120)은 응용 프로그램을 기동하여 병렬 다운로드 기능을 지원하는 실행부(121)를 포함하며, 실행부(121)는 전송 계층에 구비된 복수의 수신장치들(123)를 통해 콘텐츠를 수신할 수 있으며, 특히, 복수의 수신장치들(123)은 혼잡 제어 조율자(Congestion Control Coordinator)(122)에 의해 제어되어 복수의 수신 장치들(123)의 네트워크 연결 방식이 결정된다. In the present invention, the
예를 들어, n개의 수신장치들(123)은 n개의 서버들(110)과 하나씩 대응되어 해당 서버와 네트워크로 연결되어 콘텐츠를 수신하되, 혼잡 제어 조율자(122)는 수신장치들(123)의 네트워크 연결 방식의 설정을 유동적으로 변경하게 된다. 즉, 혼잡 제어 조율자(122)는 수신장치들(123)의 네트워크 연결 상태를 지속적으로 모니터링하고, 사용자의 정책이나 네트워크 연결 상태에 따라 우선 순위 그룹들(예를 들어, 높은 우선 순위의 빠른 일반 TCP 그룹/ 낮은 우선 순위의 느린 TCP_LP 그룹) 중 선택하여 수신장치들(123)의 네트워크 연결 방식을 유동적으로 설정 변경할 수 있다. For example, the
이에 따라 실행부(121)는 수신장치들(123)을 통해 기회주의적으로 병렬 다운로드되는 콘텐츠 블록들을 모아 합성하여 소정 코덱으로 실행 가능한 하나의 텍스트, 이미지, 또는 동영상 등의 파일을 생성하고, 재생할 수 있게 된다. Accordingly, the
이와 같은 본 발명의 기회주의적 병렬 다운로드 기법에 따라 하나의 일반 TCP 네트워크 연결을 이용할 때와 비교하여 다수의 TCP 연결 방식을 이용함으로써 콘텐츠를 다운 받는 다운로드 시간을 줄일 수 있게 되며, 네트워크 연결 링크 상태에 따라 우선 순위를 변경함으로써 성능저하 없이 병목 현상 공유시 발생하는 형평성 문제를 해결할 수 있게 된다. According to the opportunistic parallel download technique of the present invention, the download time for downloading content can be reduced by using a plurality of TCP connection methods as compared to when using one general TCP network connection. By changing the priority, we can solve the equity issue that occurs when sharing bottlenecks without compromising performance.
이하, 도 2의 혼잡 제어 조율자(122)의 구성과 도 3의 흐름도를 참조하여 좀 더 자세히 설명한다. Hereinafter, the configuration of the
도 2를 참조하면, 혼잡 제어 조율자(122)는 네트워크 모니터링부(210), 우선순위 결정부(220), 및 설정부(230)를 포함할 수 있다. 혼잡 제어 조율자(122)의 이와 같은 각 구성 요소는 하드웨어, 소프트웨어, 또는 이들의 조합으로 구현될 수 있다. 2, the
네트워크 모니터링부(210)는 수신 장치들(123)의 네트워크 연결 상태를 지속적으로 모니터링하는데, 예를 들어, 수신 장치들(123)로부터 각각의 패킷 수신량을 수집할 수 있다(S10). 각 수신 장치(123)는 콘텐츠를 수신할 때 네트워크 연결 상태에 따라 패킷 수신량 (예를 들어, 초당 바이트 수)이 다를 수 있는데, 네트워크 모니터링부(210)는 각 수신 장치(123)로부터 패킷 수신량에 대한 정보를 수집할 수 있다.The network monitoring unit 210 continuously monitors network connection states of the
우선순위 결정부(220)는 네트워크 모니터링부(210)가 수집하는 수신 장치들(123)의 패킷 수신량에 대한 정보를 바탕으로 수신 장치들(123)의 네트워크 연결 방식의 우선 순위를 결정한다. 예를 들어, 우선순위 결정부(220)는 수신 장치들(123) 각각의 패킷 수신량을 임계치와 비교하여(S20) 해당 수신 장치에 대하여 우선 순위 그룹들(예를 들어, 높은 우선 순위의 빠른 일반 TCP 그룹/ 낮은 우선 순위의 느린 TCP_LP 그룹) 중 어느 하나를 결정할 수 있고(S30), 이에 따라 설정부(230)는 우선순위 결정부(220)에 의해 결정된 우선 순위 그룹의 네트워크 연결 방식으로 해당 수신 장치의 네트워크 연결 방식을 설정하게 된다(S40). 네트워크 모니터링부(210), 우선순위 결정부(220), 및 설정부(230)의 위와 같은 동작은 지속적으로 반복하여 수행된다(S50).The
예를 들어, 우선순위 결정부(220)가 결정하는 우선 순위 그룹들은 높은 우선 순위의 빠른 일반 TCP 그룹, 낮은 우선 순위의 느린 TCP_LP 그룹 등일 수 있고, 이러한 우선 순위 그룹은 하나의 예시를 위한 것이고, 네트워크 연결 방식을 좀 더 세분하여 더 많은 그룹이 포함되도록 할 수도 있다. For example, the priority groups determined by the priority determiner 220 may be a fast general TCP group having a high priority, a slow TCP_LP group having a low priority, and the like. You may want to further refine your network connectivity to include more groups.
위의 예에서, 일반 TCP 그룹은 네트워크 연결 상태가 좋은 그룹으로서, 일반적인 TCP 의 혼잡 제어 기능에 따라 서버(110)의 패킷 전송 후 소정 재전송 타임 아웃(retransmission timeout) 시간 동안 아무런 응답이 없으면 서버(110)가 해당 패킷을 재전송하게 되는 서버와 단말 간의 연결 그룹을 나타낸다. 또한, 일반적인 TCP 의 혼잡 제어 기능에서는 서버(110)로부터 단말(120)로 전송된 패킷에 대하여 네트워크 상의 라우터(또는 이더넷 스위치) 등을 통하여 손실 패킷에 대한 응답 메시지를 서버(110)가 소정 회수(예를 들어, 3회) 수신하지 못하면 패킷을 재전송하는 기능을 갖는다. 이때, 위와 같은 소정 재전송 타임 아웃 시간 동안 수신 단말(120)로부터 아무런 응답(응답 메시지)이 없으면 서버(110)는 해당 패킷을 재전송할 수도 있게 된다. In the above example, the general TCP group is a group having a good network connection state. If there is no response for a predetermined retransmission timeout after the packet transmission of the
위의 예에서, TCP_LP 그룹은 네트워크 연결 상태가 좋지 않은 LP(Low Priority) 그룹으로서, 위와 같은 재전송 타임 아웃 시간을 기다리는 지연을 없애기 위하여 재전송 타임 아웃 시간을 기다리지 않고, 서버(110)의 패킷 전송 후 네트워크 상의 라우터(또는 이더넷 스위치) 등을 통하여 해당 패킷에 대하여 서버(110)가 수신하는 ECN(Early Congestion Notification) 메시지에 따라 재전송하게 되는 서버와 단말 간의 연결 그룹을 나타낸다. ECN 메시지는 소정 응답 패킷의 소정 TCP 필드에 혼잡에 대한 소정 통보값이 포함된 메시지일 수 있다. In the above example, the TCP_LP group is a LP (Low Priority) group having a poor network connection, and does not wait for the retransmission timeout time to eliminate the delay of waiting for the retransmission timeout time. A connection group between a server and a terminal that is retransmitted according to an Early Congestion Notification (ECN) message received by the
이와 같이, 본 발명에서는 혼잡 제어 조율자(122)를 이용하여 수신 장치들(123)의 네트워크 연결 상태에 따라 우선 순위 그룹을 변경함으로써, 성능저하 없이 병목 현상 공유시 발생하는 형평성 문제를 해결할 수 있게 된다. 예를 들어, 높은 우선 순위 그룹의 연결 방식으로 통신하는 해당 그룹의 수(서버와 수신 장치의 수)가 많을수록 다운로드 시간을 줄일 수 있지만 다른 연결의 성능을 저하시켜 형평성이 저하될 수 있고, 반대로 낮은 우선 순위 그룹의 연결 방식으로 통신하는 해당 그룹의 수가 많을 수록 형평성은 향상되지만 성능은 저하될 수 있다. 본 발명에서는 혼잡 제어 조율자(122)를 이용하여 높은 우선 순위 그룹의 수를 결정함으로써 병렬 연결의 성능과 형평성을 조율할 수 있고, 또한 수신 단말(120)과 서버(110) 사이의 네트워크 상태가 우수하거나 지연이 적은 서버-수신장치 간의 연결에 높은 우선 순위를 부여하고, 연결 상태가 좋지 않은 서버-수신장치 간의 연결에 낮은 우선 순위를 부여함으로써 형평성 저하 없이 성능을 개선할 수 있다. As described above, in the present invention, by changing the priority group according to the network connection state of the receiving
도 4는 성능 시험을 위한 하나의 토폴로지 예이다. 도 4와 같이 성능 시험에는 수신 단말(노드)이 네트워크 상의 라우터들을 통하여 8개의 서버와 연결되어 콘텐츠를 다운로드 하는 것으로 가정하였고, 8개의 서버와 수신 단말(노드) 간의 모든 연결 링크는 양측 라우터를 통과하는 하나의 병목 구간을 경유하는 것으로 가정하였다.4 is an example of one topology for performance testing. In the performance test as shown in FIG. 4, it is assumed that the receiving terminal (node) is connected to 8 servers to download contents through routers on the network, and all connection links between the 8 servers and the receiving terminal (node) pass through both routers. It is assumed to pass through one bottleneck.
도 5는 성능 시험 결과 높은 우선 순위 부여 링크 수에 대한 다운로드 완료 시간의 그래프이다. 도 5에서, 5가지 그래프들은 각각의 백그라운드 트래픽(Cross Traffic)의 높은 우선 순위 부여 링크 수에 대한 다운로드 완료 시간을 나타낸다. 도 5와 같이 높은 우선 순위를 부여한 링크의 수(그룹의 수)가 증가함에 따라 다운로드 시간도 줄어듦을 확인 할 수 있다. 예를 들어, 0 cross TCP 패킷의 경우에, 높은 우선 순위를 부여한 링크 수가 1인 경우 2.3 초에서 높은 우선 순위를 부여한 링크 수를 8로 증가 했을 경우 1.45초로 단축됨을 확인할 수 있다. 5 is a graph of download completion time versus performance test results for a high number of prioritized links. In FIG. 5, the five graphs show the download completion time for the high priority link number of each background traffic. As shown in FIG. 5, the download time decreases as the number of high priority links (number of groups) increases. For example, in the case of a 0 cross TCP packet, when the number of high priority links is 1, when the number of high priority links is increased from 2.3 to 8, it is shortened to 1.45 seconds.
도 6은 높은 우선 순위를 부여한 링크의 수에 따른 낮은 우선 순위 부여 링크의 기여도를 백분율로 정규화한 그래프이다. 도 6과 같이 높은 우선 순위를 부여한 링크의 수가 0일 경우에 낮은 우선 순위를 부여한 링크의 기여도는 100%이며 이는 콘텐츠 전체를 낮은 우선 순위 부여 링크를 이용해서 다운로드 했다는 것을 의미하며, 높은 우선 순위를 부여한 링크의 수가 8인 경우에는 낮은 우선 순위를 부여한 링크의 기여도는 0%이고 이는 콘텐츠 전체를 높은 우선 순위 부여 링크를 이용해서 다운로드 했다는 것을 의미한다. 높은 우선 순위를 부여한 링크의 수를 늘려 다운로드 성능을 높일 수 있으며, 높은 우선 순위를 부여한 링크의 수가 3이상에서 다운로드 성능이 유사하므로 높은 우선 순위를 부여한 링크의 수가 최대가 되지 않도록 적절히 선택하여 낮은 우선 순위를 부여한 링크의 기여도를 어느 정도 확보함으로써 형평성의 저하 없이 콘텐츠 다운로드 성능을 높일 수 있게 된다.FIG. 6 is a graph normalizing the contribution of low priority links in percentages according to the number of high priority links. As shown in FIG. 6, when the number of high priority links is 0, the contribution of the low priority link is 100%, which means that the entire content is downloaded using the low priority link. If the number of links assigned is 8, the contribution of the low priority link is 0%, which means that the entire content is downloaded using the high priority link. You can increase the download performance by increasing the number of high-priority links, and the download performance is similar when the number of high-priority links is higher than 3, so select the appropriate number so that the number of high-priority links is not maximum. By securing the degree of contribution of the ranked links, the content download performance can be improved without compromising equity.
이와 같이 본 발명에서는 콘텐츠가 다수의 서버에 분산되어 있는 환경에서 하나의 수신 노드가 다수의 서버에 병렬 연결을 설정하고 동시에 콘텐츠를 다운로드 받는 병렬 다운로드 기법에 있어서, 수신 노드의 처리량(Throughput)을 향상시켜 콘텐츠의 다운로드 시간을 줄일 수 있을 뿐만 아니라 서버의 부하 분산을 통해 과부하에 따른 문제를 해결할 수 있다. 같은 서버를 이용하는 타 연결의 성능 저하 유발함으로써 형평성(Fairness)의 문제가 야기 될 수 있는데, 본 발명에서는 병렬 다운로드 시 야기되는 형평성 문제를 완화하기 위한 방법으로 혼잡 제어 조율자를 이용하여 병렬 연결 설정 시 사용자의 정책 (policy) 혹은 연결 링크(connection)의 상태에 따라 우선 순위를 다르게 결정하고 연결 링크의 상태를 지속적으로 모니터링하여 반영함으로써 연결 링크의 우선 순위를 변경하여 성능 저하를 예방할 수 있도록 하였다.As described above, in the present invention, in a parallel download scheme in which one receiving node establishes a parallel connection to a plurality of servers and simultaneously downloads content in an environment in which content is distributed among multiple servers, throughput of the receiving node is improved. In addition to reducing the download time of the content, it is possible to solve the problem of overload through load balancing of the server. The problem of fairness may be caused by causing performance degradation of other connections using the same server. In the present invention, a method for mitigating a problem of equity caused by parallel download is used to set up a parallel connection using a congestion control coordinator. The priority is determined differently according to the policy or connection status, and the status of the connection link is continuously monitored and reflected to change the priority of the connection link to prevent performance degradation.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined not only by the claims below but also by the equivalents of the claims.
콘텐츠 제공 시스템(100)
복수의 서버(110)
수신 단말(120)
혼잡 제어 조율자(122)
네트워크 모니터링부(210)
우선순위 결정부(220)
설정부(230)Content Provision System (100)
Receiving
Congestion Control Tuner (122)
Network monitoring unit 210
Setting
Claims (6)
복수의 수신 장치들이 각각의 대응 서버와 네트워크로 연결되어 콘텐츠를 수신하는 단계;
상기 복수의 수신 장치들의 네트워크 연결 상태를 모니터링하는 단계; 및
복수의 우선 순위 그룹에서 선택하여 상기 복수의 수신 장치들의 네트워크 연결 방식의 설정을 변경하는 단계
를 포함하는 것을 특징으로 하는 병렬 다운로드 방법.In the parallel download method in the receiving terminal for parallel downloading the content distributed in a plurality of servers,
A plurality of receiving devices connected to respective corresponding servers through a network to receive contents;
Monitoring a network connection state of the plurality of receiving devices; And
Changing a setting of a network connection method of the plurality of receiving devices by selecting from a plurality of priority groups
Parallel download method comprising a.
상기 모니터링하는 단계는, 상기 복수의 수신 장치들로부터 각각의 패킷 수신량을 수집하는 단계를 포함하고,
상기 설정을 변경하는 단계는,
상기 각각의 패킷 수신량을 임계치와 비교하여 해당 수신 장치에 대하여 상기 복수의 우선 순위 그룹 중 어느 하나를 결정하는 단계, 및
결정된 우선 순위 그룹의 네트워크 연결 방식으로 해당 수신 장치의 네트워크 연결 방식을 설정하는 단계
를 포함하는 것을 특징으로 하는 병렬 다운로드 방법.The method of claim 1,
The monitoring may include collecting each packet received amount from the plurality of receiving devices,
Changing the setting,
Determining one of the plurality of priority groups for the corresponding receiving device by comparing the received packet amount with each threshold; and
Setting the network connection method of the corresponding receiving device with the network connection method of the determined priority group
Parallel download method comprising a.
상기 복수의 우선 순위 그룹은,
서버의 패킷 전송 후 재전송 타임 아웃 시간 동안 아무런 응답이 없으면 재전송하는 과정을 수행하는 서버와 단말간의 연결 그룹인 일반 TCP 그룹; 및
서버의 패킷 전송 후 ECN(Early Congestion Notification) 메시지에 따라 재전송하는 과정을 수행하는 서버와 단말간의 연결 그룹인 TCP_LP 그룹
을 포함하는 것을 특징으로 하는 병렬 다운로드 방법.The method of claim 1,
The plurality of priority groups,
A normal TCP group, which is a connection group between a server and a terminal which performs a retransmission process if there is no response during the retransmission timeout after the packet transmission by the server; And
TCP_LP group, which is a connection group between a server and a terminal that performs a process of retransmitting a packet according to an ECN (Early Congestion Notification) message after transmitting the packet
Parallel download method comprising a.
각각의 대응 서버와 네트워크로 연결되어 콘텐츠를 수신하는 복수의 수신 장치들; 및
상기 복수의 수신 장치들의 네트워크 연결 상태를 모니터링하고, 복수의 우선 순위 그룹에서 선택하여 상기 복수의 수신 장치들의 네트워크 연결 방식의 설정을 변경하는 혼잡 제어 조율자
를 포함하는 것을 특징으로 하는 병렬 다운로드 장치.In the parallel download device of the receiving terminal for downloading the content distributed in a plurality of servers in parallel,
A plurality of receiving devices connected to a network corresponding to each corresponding server to receive contents; And
A congestion control coordinator for monitoring a network connection state of the plurality of receiving devices and changing a setting of a network connection method of the plurality of receiving devices by selecting from a plurality of priority groups.
Parallel download device comprising a.
상기 혼잡 제어 조율자는,
상기 복수의 수신 장치들로부터 각각의 패킷 수신량을 수집하는 네트워크 모니터링부;
상기 각각의 패킷 수신량을 임계치와 비교하여 해당 수신 장치에 대하여 상기 복수의 우선 순위 그룹 중 어느 하나를 결정하는 우선순위 결정부; 및
결정된 우선 순위 그룹의 네트워크 연결 방식으로 해당 수신 장치의 네트워크 연결 방식을 설정하는 설정부
를 포함하는 것을 특징으로 하는 병렬 다운로드 장치.The method of claim 4, wherein
The congestion control coordinator,
A network monitoring unit collecting respective packet reception amounts from the plurality of receiving devices;
A priority determining unit which determines one of the plurality of priority groups with respect to a corresponding receiving device by comparing each packet receiving amount with a threshold; And
Setting unit for setting the network connection method of the receiving device to the network connection method of the determined priority group
Parallel download device comprising a.
상기 복수의 우선 순위 그룹은,
서버의 패킷 전송 후 재전송 타임 아웃 시간 동안 아무런 응답이 없으면 재전송하는 과정을 수행하는 서버와 단말간의 연결 그룹인 일반 TCP 그룹; 및
서버의 패킷 전송 후 ECN(Early Congestion Notification) 메시지에 따라 재전송하는 과정을 수행하는 서버와 단말간의 연결 그룹인 TCP_LP 그룹
을 포함하는 것을 특징으로 하는 병렬 다운로드 장치.The method of claim 4, wherein
The plurality of priority groups,
A normal TCP group, which is a connection group between a server and a terminal which performs a retransmission process if there is no response during the retransmission timeout after the packet transmission by the server; And
TCP_LP group, which is a connection group between a server and a terminal that performs a process of retransmitting a packet according to an Early Congestion Notification (ECN) message.
Parallel download device comprising a.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100118403A KR20120056728A (en) | 2010-11-25 | 2010-11-25 | Opportunistic Fair Parallel Download Method and System Based on Priority of Connection Link |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100118403A KR20120056728A (en) | 2010-11-25 | 2010-11-25 | Opportunistic Fair Parallel Download Method and System Based on Priority of Connection Link |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20120056728A true KR20120056728A (en) | 2012-06-04 |
Family
ID=46608803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100118403A KR20120056728A (en) | 2010-11-25 | 2010-11-25 | Opportunistic Fair Parallel Download Method and System Based on Priority of Connection Link |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20120056728A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014180359A1 (en) * | 2013-11-21 | 2014-11-13 | 中兴通讯股份有限公司 | File download method and device |
KR20160084826A (en) * | 2014-06-27 | 2016-07-14 | 주식회사 케이티 | Network apparatus and terminal for multi-path transmission, operating method of the same, and program of the same method |
-
2010
- 2010-11-25 KR KR1020100118403A patent/KR20120056728A/en not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014180359A1 (en) * | 2013-11-21 | 2014-11-13 | 中兴通讯股份有限公司 | File download method and device |
KR20160084826A (en) * | 2014-06-27 | 2016-07-14 | 주식회사 케이티 | Network apparatus and terminal for multi-path transmission, operating method of the same, and program of the same method |
US10355982B2 (en) | 2014-06-27 | 2019-07-16 | Kt Corporation | Network device and terminal for multi-path communication, operation method thereof, and program implementing operation method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7556579B2 (en) | Packet transmission system and method | |
EP2959645B1 (en) | Dynamic optimization of tcp connections | |
KR101278742B1 (en) | Adapting a communication network to varing conditions | |
CN106612284B (en) | Streaming data transmission method and device | |
WO2020232184A1 (en) | Congestion avoidance in a slice-based network | |
US12120169B2 (en) | Edge node control | |
CN111669665B (en) | Real-time pushing method of media stream and server | |
KR20120056728A (en) | Opportunistic Fair Parallel Download Method and System Based on Priority of Connection Link | |
CN108574615B (en) | Content transmission method, device and system based on multipath MPTCP | |
JP4285101B2 (en) | Real-time data communication system, real-time data communication apparatus, and real-time data communication method | |
CN111147386B (en) | Method, electronic device and computer readable medium for handling data transmission congestion | |
CN114024917A (en) | Method, device, device and storage medium for Internet service bandwidth guarantee | |
CN117032914A (en) | Interrupt processing method, system, electronic device and storage medium | |
CN119324891A (en) | Multi-path data transmission method and system | |
CN117914797A (en) | Data transmission delay adjusting method and data transmission delay adjusting device | |
JP2011211376A (en) | Multicast distribution system, server device, and terminal device | |
Wilson | An adaptive packet size approach to tcp congestion control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20101125 |
|
PG1501 | Laying open of application | ||
A201 | Request for examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20151125 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20101125 Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20161220 Patent event code: PE09021S01D |
|
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20170420 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20161220 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |