KR101319678B1 - 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법 - Google Patents

플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법 Download PDF

Info

Publication number
KR101319678B1
KR101319678B1 KR1020110125519A KR20110125519A KR101319678B1 KR 101319678 B1 KR101319678 B1 KR 101319678B1 KR 1020110125519 A KR1020110125519 A KR 1020110125519A KR 20110125519 A KR20110125519 A KR 20110125519A KR 101319678 B1 KR101319678 B1 KR 101319678B1
Authority
KR
South Korea
Prior art keywords
transmission
transmission rate
rate
data
transmission method
Prior art date
Application number
KR1020110125519A
Other languages
English (en)
Other versions
KR20130059504A (ko
Inventor
오경진
박주현
구교준
전중배
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020110125519A priority Critical patent/KR101319678B1/ko
Publication of KR20130059504A publication Critical patent/KR20130059504A/ko
Application granted granted Critical
Publication of KR101319678B1 publication Critical patent/KR101319678B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법이 제공된다. 제1전송부는 제2전송방식과 네트워크를 공유하는 플로우 간의 공평성을 제공하기 위한 기준으로 사용되는 제1전송방식을 이용하여 데이터를 전송하고, 제2전송부는 제2전송방식으로 데이터를 전송하며, 전송속도 산출부는 데이터를 전송하는 동안 제1전송방식의 전송속도와 사전에 산출된 기준 전송속도를 비교하여 제1전송방식의 전송속도가 기준 전송속도 이하이면, 제1전송방식이 기준 전송속도보다 높은 전송속도로 상기 데이터를 전송하도록 제2전송방식의 전송속도를 조절할 수 있다.

Description

플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법{Apparatus and Method for Controlling Data Transmission Rate for Fairness between Flows}
본 발명은 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법에 관한 것으로, 보다 상세하게는 네트워크를 공유하는 플로우들 간의 공평성을 제공하기 위한 데이터 전송속도 제어 장치 및 방법에 관한 것이다.
UDP(User Datagram Protocol) 전송 방식은 네트워크 점유율을 높여 전송 성능 측면에서 우수하지만 경우에 따라 네트워크를 마비시키기도 한다. 네트워크를 공유하는 데이터 전송 세션(즉, 플로우)들은 사용하는 전송 프로토콜에 따라 네트워크 혼잡 발생시 대응하는 메커니즘이 다르다. 일례로, TCP(Transmission Control Protocol) 전송 방식의 경우, 패킷 유실이 발생하게 되면 연속으로 전송하는 패킷의 수를 절반으로 줄여 네트워크 혼잡을 최소화하고, 네트워크에서 여러 트래픽들과 함께 공존할 수 있는 기능을 갖는다. 반면, UDP 전송 방식은 표준으로 규정된 혼잡 제어 방법이 없으므로 개발자의 구현 방법에 따라 공평성 유지 방법이 다르다. 따라서, UDP 전송 방식을 사용하는 경우, 실제 가용 대역폭에 비해 많은 트래픽을 네트워크에 흘려 보냄으로써 네트워크를 마비시키는 경우가 종종 발생한다.
본 발명적 개념의 예시적 실시예에 따르면, 사용하는 전송방식이 다른 플로우에 미치는 영향을 모니터링하고, 모니터링 결과에 기초하여 전송방식을 제어할 수 있는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법을 제공하는 것이다.
본 발명적 개념의 다른 예시적 실시 예에 따르면, 제2전송방식과 네트워크를 공유하는 플로우 간의 공평성을 제공하기 위한 기준으로 사용되는 제1전송방식을 이용하여 데이터를 전송하는 제1전송부; 상기 제2전송방식으로 데이터를 전송하는 제2전송부; 및 상기 데이터를 전송하는 동안 상기 제1전송방식의 전송속도와 사전에 산출된 기준 전송속도를 비교하여 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식이 상기 기준 전송속도보다 높은 전송속도로 상기 데이터를 전송하도록 상기 제2전송방식의 전송속도를 조절하는 전송속도 산출부;를 포함하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치가 제공될 수 있다.
상기 전송속도 산출부는, 상기 제1전송방식과 상기 제2전송방식으로 데이터를 전송하기 이전에 상기 제1전송부가 상기 제1전송방식만으로 데이터를 전송하면, 상기 제1전송방식의 초기 전송속도를 산출하고, 상기 산출된 제1전송방식의 초기 전송속도에 기초하여 상기 초기 전송속도보다 작은 상기 기준 전송속도를 산출할 수 있다.
상기 전송속도 산출부는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 판단부; 및 상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단되면, 상기 제2전송방식의 전송속도를 사전에 설정된 최소 전송속도 및 상기 제1전송방식의 최근 전송속도 중 하나로 하향 조절하는 전송속도 조절부;를 포함할 수 있다.
상기 판단부는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하고, 상기 제2전송부와 상기 제1전송부에 의해 각각 상기 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터가 전송되면 상기 제1전송방식의 전송속도 변화를 확인하며, 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 감소한 경우, 상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단할 수 있다.
상기 전송속도 산출부는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 판단부; 및 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단되면, 상기 제1전송방식의 전송속도, 상기 제2전송방식의 전송속도 및 상기 기준 전송속도를 이용하여 상기 제2전송방식의 전송속도를 하향 조절하는 전송속도 조절부;를 포함할 수 있다.
상기 판단부는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하고, 상기 제2전송부와 상기 제1전송부에 의해 각각 상기 전송속도가 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터가 전송되면 상기 제1전송방식의 전송속도 변화를 확인하며, 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단할 수 있다.
상기 판단부는, 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제2전송방식의 전송속도를 하향조절하고 상기 제1전송방식의 전송속도 변화를 확인하는 동작을 반복수행하여 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가하였는지를 확인하며, 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 횟수가 사전에 정해진 기준 횟수에 도달하면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단할 수 있다.
상기 전송속도 조절부는, 상기 제1전송방식의 전송속도와 상기 제2전송방식의 전송속도의 차이 및 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이 중 적어도 하나를 이용하여 상기 제2전송방식의 전송속도를 하향 조절할 수 있다.
상기 전송속도 조절부는, 상기 제2전송방식의 전송속도와 상기 제1전송방식의 전송속도의 차이가 크거나, 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이가 클수록 상기 제2전송방식의 전송속도의 감소폭이 크도록 할 수 있다.
상기 제2전송방식은 UDP(User Datagram Protocol) 전송방식이고, 상기 제1전송방식은 TCP(Transmission Control Protocol) 전송방식일 수 있다.
한편, 본 발명적 개념의 다른 예시적 실시 예에 따르면, 제2전송방식 및 상기 제2전송방식과 네트워크를 공유하는 플로우 간의 공평성을 제공하기 위한 기준으로 사용되는 제1전송방식을 이용하여 데이터를 전송하는 단계; 상기 데이터를 전송하는 동안 상기 제1전송방식의 전송속도와 사전에 산출된 기준 전송속도를 비교하는 단계; 및 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식이 상기 기준 전송속도보다 높은 전송속도로 상기 데이터를 전송하도록 상기 제2전송방식의 전송속도를 조절하는 단계;를 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법이 제공될 수 있다.
상기 제1전송방식과 상기 제2전송방식으로 데이터를 전송하기 이전에 상기 제1전송방식만으로 데이터를 전송하여 상기 제1전송방식의 초기 전송속도를 산출하는 단계; 및 상기 산출된 제1전송방식의 초기 전송속도에 기초하여 상기 초기 전송속도보다 작은 기준 전송속도를 산출하는 단계;를 더 포함할 수 있다.
상기 제2전송방식의 전송속도를 조절하는 단계는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 단계; 및 상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단되면, 상기 제2전송방식의 전송속도를 사전에 설정된 최소 전송속도 및 상기 제1전송방식의 최근 전송속도 중 하나로 하향 조절하는 단계;를 포함할 수 있다.
상기 판단하는 단계는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하는 단계; 상기 전송속도가 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터를 전송하여 상기 제1전송방식의 전송속도 변화를 확인하는 단계; 및 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 감소한 경우, 상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단하는 단계;를 포함할 수 있다.
상기 제2전송방식의 전송속도를 조절하는 단계는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 단계; 및 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단되면, 상기 제1전송방식의 전송속도, 상기 제2전송방식의 전송속도 및 상기 기준 전송속도를 이용하여 상기 제2전송방식의 전송속도를 하향 조절하는 단계;를 포함할 수 있다.
상기 판단하는 단계는, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하는 단계; 상기 전송속도가 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터를 전송하여 상기 제1전송방식의 전송속도 변화를 확인하는 단계; 및 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단하는 단계;를 포함할 수 있다.
상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제2전송방식의 전송속도를 하향조절하는 단계와 상기 제1전송방식의 전송속도 변화를 확인하는 단계는 반복수행되어 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가하였는지를 확인하며, 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 횟수가 사전에 정해진 기준 횟수에 도달하면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단할 수 있다.
상기 제2전송방식의 전송속도를 하향 조절하는 단계는, 상기 제1전송방식의 전송속도와 상기 제2전송방식의 전송속도의 차이 및 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이 중 적어도 하나를 이용하여 상기 제2전송방식의 전송속도를 하향 조절할 수 있다.
상기 제2전송방식의 전송속도를 하향 조절하는 단계는, 상기 제1전송방식의 전송속도와 상기 제2전송방식의 전송속도의 차이가 크거나, 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이가 클수록 상기 제2전송방식의 전송속도의 감소폭이 크도록 할 수 있다.
본 발명적 개념의 하나 이상의 예시적 실시예에 따르면, 사용하고자 하는 전송방식을 이용하여 네트워크를 통해 통신하는 경우, 네트워크에서 발생할 수 있는 혼잡도를 최소화하고, 다른 전송방식이 사용하는 플로우와의 공평성을 위한 기준을 제공하며, 전송속도를 조절함으로써 네트워크 혼잡도를 개선하면서 전송 효과는 높일 수 있다.
또한, 본 발명적 개념의 하나 이상의 예시적 실시예가 UDP 전송방식에 사용되는 경우, 다른 플로우와의 공평성을 확보하기 위해 공평성 제공의 기준이 되는 기준 전송방식을 직접 사용하여 데이터를 전송하면서, 기준 전송방식의 성능을 모니터링하고, 그 결과에 따라 UDP의 전송속도를 조절함으로써 UDP 전송성능과 기준 전송방식의 전송성능 모두를 보장할 수 있다.
또한, 본 발명적 개념의 하나 이상의 예시적 실시예에 따르면, 더미 데이터가 아닌 실제 데이터를 전송하면서 서로 다른 전송방식의 전송속도를 모니터링함으로써, 모니터링과 동시에 데이터를 보다 빠르게 전송할 수 있다.
도 1은 본 발명적 개념의 예시적 실시예에 따른 플로우 간 공평성 제공을 위한 데이터 전송률 제어 시스템을 도시한 도면,
도 2는 본 발명적 개념의 예시적 실시예에 따른 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법을 설명하기 위한 흐름도, 그리고,
도 3은 도 2에 도시된 S280단계를 보다 자세히 설명하기 위한 흐름도이다.
이상의 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다.
본 명세서에서, 어떤 구성요소가 다른 구성요소 상에 있다고 언급되는 경우에 그것은 다른 구성요소 상에 직접 형성될 수 있거나 또는 그들 사이에 제 3의 구성요소가 개재될 수도 있다는 것을 의미한다.
본 명세서에서 제1, 제2 등의 용어가 구성요소들을 기술하기 위해서 사용된 경우, 이들 구성요소들이 이 같은 용어들에 의해서 한정되어서는 안 된다. 이들 용어들은 단지 어느 구성요소를 다른 구성요소와 구별시키기 위해서 사용되었을 뿐이다. 여기에 설명되고 예시되는 실시예들은 그것의 상보적인 실시예들도 포함한다.
또한, 제1 엘리먼트 (또는 구성요소)가 제2 엘리먼트(또는 구성요소) 상(ON)에서 동작 또는 실행된다고 언급될 때, 제1 엘리먼트(또는 구성요소)는 제2 엘리먼트(또는 구성요소)가 동작 또는 실행되는 환경에서 동작 또는 실행되거나 또는 제2 엘리먼트(또는 구성요소)와 직접 또는 간접적으로 상호 작용을 통해서 동작 또는 실행되는 것으로 이해되어야 할 것이다.
어떤 엘리먼트, 구성요소, 장치, 또는 시스템이 프로그램 또는 소프트웨어로 이루어진 구성요소를 포함한다고 언급되는 경우, 명시적인 언급이 없더라도, 그 엘리먼트, 구성요소, 장치, 또는 시스템은 그 프로그램 또는 소프트웨어가 실행 또는 동작하는데 필요한 하드웨어(예를 들면, 메모리, CPU 등)나 다른 프로그램 또는 소프트웨어(예를 들면 운영체제나 하드웨어를 구동하는데 필요한 드라이버 등)를 포함하는 것으로 이해되어야 할 것이다.
또한 어떤 엘리먼트(또는 구성요소)가 구현됨에 있어서 특별한 언급이 없다면, 그 엘리먼트(또는 구성요소)는 소프트웨어, 하드웨어, 또는 소프트웨어 및 하드웨어 어떤 형태로도 구현될 수 있는 것으로 이해되어야 할 것이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다(comprises)' 및/또는 '포함하는(comprising)'은 언급된 구성요소는 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
이하, 도면을 참조하여 본 발명적 개념을 상세히 설명하도록 한다. 아래의 특정 실시예들을 기술하는데 있어서, 여러 가지의 특정적인 내용들은 발명적 개념을 더 구체적으로 설명하고 이해를 돕기 위해 작성되었다. 하지만 본 발명적 개념을 이해할 수 있을 정도로 이 분야의 지식을 갖고 있는 독자는 이러한 여러 가지의 특정적인 내용들이 없어도 사용될 수 있다는 것을 인지할 수 있다. 어떤 경우에는, 발명적 개념을 기술하는 데 있어서 흔히 알려졌으면서 발명과 크게 관련 없는 부분들은 본 발명적 개념을 설명하는 데 있어 별 이유 없이 혼돈이 오는 것을 막기 위해 기술하지 않음을 미리 언급해 둔다.
도 1은 본 발명적 개념의 예시적 실시예에 따른 플로우 간 공평성 제공을 위한 데이터 전송률 제어 시스템을 도시한 도면이다.
도 1에 예시적으로 도시된 시스템은 데이터 전송 장치(100) 및 데이터 수신 장치(200)를 포함한다. 데이터 전송 장치(100)와 데이터 수신 장치(200) 사이에는 제1전송방식의 플로우와 제2전송방식의 플로우가 동시에 사용될 수 있다. ‘플로우’는 데이터 전송 장치(100)와 데이터 수신 장치(200)에 데이터 송수신을 위해 연결된 세션이다.
제1전송방식은 TCP 전송방식, 제2전송방식은 UDP 전송방식을 예로 들 수 있으나, 이는 일 예로서 이에 한정되지 않는다. 또한, 제1전송방식은 데이터 전송 장치(100)가 제2전송방식과 제1전송방식으로 데이터를 전송하는 경우, 제2전송방식이 데이터 전송 시스템에 미치는 영향을 고려하여, 제2전송방식과 네트워크를 공유하는 플로우들 간의 공평성 기준을 제공하기 위해 사용되는 기준 전송방식일 수 있다.
본 발명의 예시적 일 실시예에 따르면, 데이터 전송 장치(100)는 데이터 분배부(110), 제1전송부(120), 제2전송부(130) 및 전송속도 산출부(140)를 포함할 수 있다.
데이터 분배부(110)는 데이터 전송 장치(100)로부터 데이터 수신 장치(200)로 전송해야 할 전체 데이터를 두 가지 전송방식에 대응하도록 분배할 수 있다. 즉, 데이터 분배부(110)는 전체 데이터를 제2전송부(130)에 의해 전송될 제1데이터와 제1전송부(120)에 의해 전송될 제2데이터로 분배할 수 있다. 전체 데이터는 데이터 송수신을 위한 실제 데이터이거나 또는 전송속도 제어를 위해 사용되는 더미(dummy) 데이터일 수 있다.
제1전송부(120)는 데이터 분배부(110)에 의해 분배된 제1데이터를 제1전송방식을 이용하여 제1전송방식 플로우를 통해 데이터 수신 장치(200)에게 전송할 수 있다. 제1전송부(120)와 제2전송부(130)는 각각 제1데이터와 제2데이터를 병행하여 동시에 전송할 수 있다. 또한, 제1전송부(120)는 후술할 초기 전송속도 산출을 위해, 단독으로 제1데이터를 전송할 수 있다.
제2전송부(130)는 데이터 분배부(110)에 의해 분배된 제2데이터를 제2전송방식을 이용하여 제2전송방식 플로우를 통해 데이터 수신 장치(200)에게 전송할 수 있다.
전송속도 산출부(140)는 제1전송방식과 제2전송방식으로 제1데이터와 제2데이터를 전송하기 이전에 제1전송부(120)가 제1전송방식으로 제1데이터를 전송하면, 제1전송방식의 초기 전송속도를 산출하고, 산출된 제1전송방식의 초기 전송속도에 기초하여 초기 전송속도보다 작은 기준 전송속도를 산출할 수 있다.
또한, 전송속도 산출부(140)는 제1전송부(120)와 제2전송부(130)가 각각 제1데이터와 제2데이터를 전송하는 동안 제1전송방식의 전송속도(이하, ‘제1전송속도’라 한다)와 사전에 산출된 기준 전송속도를 비교하고, 비교 결과, 제1전송속도가 기준 전송속도 이하이면, 제1전송방식이 기준 전송속도보다 높은 전송속도로 제1데이터를 전송하도록 제2전송방식의 전송속도를 조절할 수 있다. 제2전송부(130)는 전송속도 산출부(140)의 제어에 의해, 전송속도 산출부(140)에서 조절된 전송속도로 제2데이터를 전송할 수 있다.
이를 위하여, 전송속도 산출부(140)는 임계값 산출부(142), 판단부(144) 및 전송속도 조절부(146)를 포함할 수 있다.
임계값 산출부(142)는, 제1전송부(120)가 단독으로 제1데이터를 전송하면, 데이터 수신 장치(200)로부터 제1데이터의 수신률 및 유실 패킷 등에 대한 정보를 포함하는 컨트롤 정보를 제공받고, 컨트롤 정보로부터 제1전송방식으로 제1데이터만을 전송한 경우의 전송속도인 초기 전송속도를 알 수 있다. 그리고, 임계값 산출부(142)는 제1전송방식의 초기 전송속도를 포함하는 컨트롤 정보를 기반으로 공평성 수치를 나타낼 수 있는 기준 전송속도를 산출할 수 있다. 후술할 전송속도 조절부(146)는 제1전송방식의 전송속도가 기준 전송속도 이상이 되도록 제2전송방식의 전송속도를 산출 또는 조절할 수 있다.
임계값 산출부(142)는 [수식 1]을 이용하여 기준 전송속도를 산출할 수 있다.
Figure 112011094515303-pat00001
[수학식 1]에서 a는 상수로서 정책에 의해 설정된 값이고, 공평성의 기준으로 사용되는 기준 전송속도(TH)는 대상 플로우(즉, 제1전송방식 플로우)의 초기 전송속도의 특정 비율을 기준 전송속도로 설정한 것이다. 임계값 산출부(142)는 기준 전송속도보다 큰 전송속도로 제1전송방식의 전송이 이루어지도록, 제2전송방식의 전송속도(이하, ‘제2전송속도’라 한다)를 조절할 수 있다. 이하에서는 기준 전송속도를 임계 전송속도(TH)라 한다.
[수학식 1]에 의해 산출되는 임계 전송속도(TH)는 제2전송방식 플로우가 없거나 제2전송방식으로 제2데이터가 전송되지 않는 상태에서, 제1전송방식 플로우의 전송 성능 대비 a%를 최소한 유지 및 보장하겠다는 것을 의미한다. 이때, 제1전송방식의 초기 전송속도를 제2전송방식에 의한 데이터 전송없이 측정하는 이유는 제1전송방식과 제2전송방식으로 제1데이터와 제2데이터를 동시에 전송하는 경우와 비교하여 제1전송방식에 대한 제2전송방식의 영향도를 보다 정확히 측정하기 위함이다.
판단부(144)는 제1전송속도가 임계 전송속도 이하이면, 제1전송속도가 제2전송방식에 의해 감소되었는지를 판단할 수 있다. 즉, 판단부(144)는 제1전송부(120)와 제2전송부(130)가 제1데이터와 제2데이터를 동시에 전송하는 동안 제1전송속도가 임계 전송속도보다 작아지기 시작하면, 제2전송속도를 현 시점 기준으로 일정 수준 이하로 감소시키면서 제1전송속도의 변화를 모니터링한다.
그리고, 판단부(144)는 제2전송속도가 하향조절됨에 따라 제1전송속도가 증가하면 제1전송속도의 속도저하 원인은 제2전송방식에 있는 것으로 판단할 수 있다. 반면, 판단부(144)는 제2전송속도가 감소되어도 제1전송속도가 지속적으로 감소되면 제1전송속도는 제2전송속도 이외에 다른 트래픽들에 의한 영향으로 속도가 감소되는 것으로 판단할 수 있다.
자세히 설명하면, 판단부(144)는 제1전송속도가 임계 전송속도 이하이면, 제2데이터를 전송하는 동안 사용된 제2전송속도를 하향조절한다. 판단부(144)는 [수학식 2]를 이용하여 제2전송속도를 하향조절할 수 있다.
Figure 112011094515303-pat00002
[수학식 2]는 제2전송속도의 변화에 따른 제1전송속도의 변화를 파악하기 위해 사용되는 제2전송속도 하향조절을 위한 식이다. [수학식 2]에서 b는 제1전송방식과 제2전송방식의 상관관계를 판단하기 위해 사용되며, 데이터 수신 장치(200)로부터 수신되는 컨트롤 정보에 의해 변경될 수 있다. 판단부(144)는 컨트롤 정보 중 제1전송속도가 많이 저하될수록 b를 크게 할 수 있다. n은 제2전송속도가 하향조절된 횟수, 즉, 제2전송속도가 업데이트된 횟수이다.
그리고, 판단부(144)는 제1전송부(120)에 의해 제1전송속도로 제1데이터가 전송되고 제2전송부(130)에 의해 하향조절된 제2전송속도로 제2데이터가 동시에 전송되면, 제1전송속도의 변화를 확인한다. 판단부(144)는 [수학식 3]을 이용하여 제1전송속도의 변화를 확인할 수 있다.
Figure 112011094515303-pat00003
[수학식 3]에서 C는 새롭게 측정된 현재 제1전송속도가 이전 제1전송속도에 비해 빨라진 비율을 나타낸다. 현재 제1전송속도는 제2전송속도가 처음 하향조절된 후 제1전송속도와 제2전송속도로 제1데이터와 제2데이터를 동시 전송한 경우, 제1전송방식의 전송속도이고, 이전 제1전송속도는 제2전송속도가 하향조절되기 이전에 제1전송속도와 제2전송속도로 제1데이터와 제2데이터를 동시 전송한 경우, 제1전송방식의 전송속도이다.
[수학식 3]에 의한 확인 결과, 현재 제1전송속도가 이전 제1전송속도에 비해 감소한 경우, 즉, C가 1보다 작은 경우, 판단부(144)는 제1전송속도가 네트워크의 상태에 의해 감소된 것으로 판단할 수 있다. 네트워크 상태는 제2전송방식 플로우를 포함할 수도 있다.
반면, 판단부(144)는 [수학식 3]에 의한 확인 결과, 제1전송속도가 이전 제1전송속도에 비해 증가한 경우, 즉, C가 1보다 큰 경우, 제1전송속도가 제2전송방식의 영향으로 감소된 것으로 판단할 수 있다. 이는, 제2전송속도를 감소한 결과 제1전송속도가 증가하였기 때문이다.
또는, 판단부(144)는 C가 1보다 크면, 제2전송속도를 다시 하향조절하고, 하향조절된 제2전송속도와 제1전송속도를 데이터를 전송하면서 제1전송속도 변화를 확인하는 동작을 반복수행하여 제1전송속도가 이전의 제1전송속도에 비해 증가하였는지를 반복확인할 수 있다.
자세히 설명하면, 판단부(144)는 처음 제2전송속도를 하향조절한 결과 제1전송속도가 상향되면, 다시 제2전송속도를 2차 하향조절하여 제1전송속도의 변화를 모니터링할 수 있다. 이때, 판단부(144)는 2차 하향조절 시 제2전송속도의 감소폭을 이전의 감소폭도보다 더 증가시키기 위해 n의 제곱을 사용할 수 있다. 이때, n은 2이다. 이는, 공평성 유지를 위해 제2전송방식의 전송 성능을 처음부터 크게 떨어트리지 않기 위함이다. 판단부(144)는 이러한 방식으로 제2전송속도를 사전에 정해진 횟수만큼 하향조절하여 제1전송속도의 변화를 모니터링할 수 있다.
판단부(144)는 제2전송속도가 [수학식 2]에 의해 연속적으로 하향조절될 때마다 하향조절된 횟수(k)를 1씩 증가시킨다. 즉, k는 제1전송속도가 이전에 비해 연속적으로 증가한 횟수를 의미할 수 있다. 모니터링 결과, 제1전송속도가 이전에 비해 연속적으로 증가한 횟수가 m번에 미달하면, 판단부(144)는 제1전송속도가 네트워크의 상태에 의해 감소된 것으로 판단할 수도 있다. m은 제1전송방식과 제2전송방식의 상관관계를 판단하기 위해 사전에 정해진 기준값이다.
반대로, 판단부(144)는 제1전송속도가 이전에 비해 연속적으로 증가한 횟수(k)가 m번에 도달하면, 제1전송속도가 제2전송방식의 영향으로 감소된 것으로 판단할 수도 있다.
이하에서는, 제1전송방식과 제2전송방식 사이의 상관관계에 따른 전송속도 조절부(146)의 동작에 대해 설명한다.
먼저, 전송속도 조절부(146)는, 제1전송방식과 제2전송방식 사이에 상관관계가 없는 것으로 판단되면, 즉, 제1전송방식의 전송속도가 제2전송방식뿐만 아니라 네트워크의 상태에 의해 감소된 것으로 판단되면, 제2전송속도를 [수학식 4]와 같이 사전에 설정된 최소 전송속도로 하향조절할 수 있다.
Figure 112011094515303-pat00004
[수학식 4]에서와 같이, 제2전송속도를 제2전송방식의 최소 전송속도로 조절하는 이유는, 제2전송방식 뿐만 아니라 다른 복합적인 네트워크 요소로 인해 제1전송속도가 감소되어 네트워크 마비 현상이 예상되는 경우, 가능한 네트워크 상황이 개선될 때까지 기다리는 것이 플로우들 간에 공평성을 유지할 수 있기 때문이다.
또는, 전송속도 조절부(146)는 제1전송방식이 공평성 대상 기준 전송방식으로 사용되는 경우, 제2전송속도를 제1전송방식의 최근 전송속도로 하향조절할 수 있다. 제1전송방식의 최근 전송속도는 [수학식 2] 및 [수학식 3]을 통해 제1전송속도의 감속원인이 판단된 시점을 기준으로 가장 늦게 산출된 제1전송속도일 수 있다.
반면, 전송속도 조절부(146)는, 제1전송방식과 제2전송방식 사이에 상관관계가 있는 것으로 판단되면, 즉, 제1전송방식의 전송속도가 제2전송방식의 영향으로 감소된 것으로 판단되면, 제1전송속도, 제2전송속도 및 임계 전송속도를 이용하여 제2전송속도를 하향 조절할 수 있다.
자세히 설명하면, 제1전송방식과 제2전송방식 사이에 상관관계가 있는 것으로 판단되는 경우, 전송속도 조절부(146)는 1) 제1전송속도와 제2전송속도의 차이와 2) 제1전송속도와 임계 전송속도의 차이 중 적어도 하나를 고려하여 제2전송속도를 하향조절할 수 있다.
이는, 기준 전송방식인 제1전송방식의 전송속도에 비해 제2전송속도가 현격히 빠른 경우에는, 제2전송방식의 공격성에 의해 제1전송방식이 영향을 받고 있는 것으로 생각될 수 있다. 따라서, 전송속도 조절부(146)는 제1전송방식과 제2전송방식 간의 속도차이가 클수록 제2전송속도의 감소폭이 커지도록 할 수 있다.
또한, 제1전송방식의 전송속도를 유지 및 보장해주기 위한 기준인 임계 전송속도에 비해 현재 제1전송속도가 현격히 낮은 경우, 전송속도 조절부(146)는 제2전송속도의 감소폭이 커지도록 할 수 있다. 따라서, 전송속도 조절부(146)는 제2전송속도의 공평성 제공을 위해 상기 두 가지 중 적어도 하나를 고려하여 제2전송속도를 하향조절할 수 있다.
제2전송속도의 하향조절을 위해 전송속도 조절부(146)는 먼저 제2전송속도 감소폭을 [수학식 5]를 이용하여 산출할 수 있다.
Figure 112011094515303-pat00005
[수학식 5]에서
Figure 112011094515303-pat00006
는 상수로서 전송속도 산출부(140)가 네트워크 상태 또는 데이터 전송 장치(100)의 상태를 고려하여 변경할 수 있다. ‘현재 제2전송속도’와 ‘현재 제1전송속도’는 제1전송방식과 제2전송방식의 상관관계를 판단하기 위해 사용된 가장 최근의 제2전송속도 및 가장 최근의 제1전송속도이다. TH는 [수학식 1]에 의해 산출된 기준 전송속도, n은 [수학식 2]에서 제2전송속도가 하향조절된 횟수이다.
전송속도 조절부(146)는 [수학식 5]에 의해 산출된 제2전송속도 감소폭과 [수학식 6]을 이용하여 제2전송속도를 산출할 수 있다.
Figure 112011094515303-pat00007
전송속도 조절부(146)는 [수학식 6]에 의해 산출된 제2전송속도를 이용하여 제2데이터를 전송하도록 제2전송부(130)를 제어할 수 있다. 이와 함께, 제1전송부(120)는 보다 향상된 제1전송속도로 제1데이터를 데이터 수신 장치(200)로 전송할 수 있다.
한편, 데이터 수신 장치(200)는 제1수신부(210), 제2수신부(220), 수신데이터 정보 제공부(230) 및 데이터 취합부(240)를 포함할 수 있다.
제1수신부(210)는 제1전송부(120)와의 사이에 형성된 제1전송방식 플로우를 통해 제1데이터를 수신할 수 있다. 또한, 제1수신부(210)는 수신된 제1데이터의 수신률 및 유실된 패킷 정보를 수신데이터 정보 제공부(230)에게 제공할 수 있다.
제2수신부(220)는 제2전송부(130)와의 사이에 형성된 제2전송방식 플로우를 통해 제2데이터를 수신할 수 있다. 또한, 제2수신부(220)는 수신된 제2데이터의 수신률 및 유실된 패킷 정보를 수신데이터 정보 제공부(230)에게 제공할 수 있다.
수신데이터 정보 제공부(230)는 먼저, 제1전송부(120)가 단독으로 전송한 제1데이터에 대한 컨트롤 정보를 전송속도 산출부(140)에게 제공할 수 있다. 컨트롤 정보는 데이터 수신률 및 유실된 패킷 정보를 포함한다. ‘제1전송부(120)가 단독으로 전송한 제1데이터’는 제2전송부(130)는 제2데이터를 전송하지 않는 상태에서 제1전송부(120)가 초기에 전송한 데이터이다. 또한, 수신데이터 정보 제공부(230)는 제1수신부(210)와 제2수신부(220)가 동시에 수신하는 제1데이터와 제2데이터에 대한 컨트롤 정보를 전송속도 산출부(140)에게 제공할 수 있다.
데이터 취합부(240)는 제1수신부(210)와 제2수신부(220)가 동시에 수신하는 제1데이터와 제2데이터를 취합하여 저장매체에 저장할 수 있다.
도 2는 본 발명적 개념의 예시적 실시예에 따른 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법을 설명하기 위한 흐름도이다.
도 2에 예시적으로 도시된 데이터 전송속도 제어 방법을 위한 데이터 전송 장치는 도 1을 참조하여 설명한 데이터 전송 장치(100)일 수 있다. 또한, 도 2에서는 도 1에서 설명한 제1전송방식 및 제2전송방식을 각각 TCP를 이용한 전송방식(이하, ‘TCP’라 한다), UDP를 이용한 전송방식(이하, ‘UDP’라 한다)이라 하며, 이는 일 예로서, 이에 한정되지 않는다.
도 2를 참조하면, 데이터 전송 장치는 제2데이터를 전송하기 위한 UDP의 초기 전송속도를 산출하거나 또는 설정할 수 있다(S210).
데이터 전송 장치는 TCP만을 이용하여 제1데이터를 데이터 수신 장치에게 전송하여, TCP의 현재 전송속도, 즉, TCP의 초기 전송속도를 산출할 수 있다(S220). S220단계에서, 데이터 전송 장치는 제1데이터를 수신한 데이터 수신 장치로부터 수신률과 유실 패킷 정보를 포함하는 컨트롤 정보를 제공받아 TCP의 초기 전송속도를 산출할 수 있다. 제1데이터와 후술할 제2데이터는 데이터 전송 장치로부터 데이터 수신 장치로 전송해야 할 전체 데이터를 TCP와 UDP에 대응하도록 분배한 데이터이다.
데이터 전송 장치는 S220단계에서 산출된 TCP의 현재 전송속도에 기초하여 TCP의 현재 전송속도보다 작은 기준 전송속도를 산출할 수 있다(S230). S230단계에서, 데이터 전송 장치는 [수학식 1]을 이용하여 기준 전송속도를 산출할 수 있으며, 이하에서는 기준 전송속도를 TCP의 임계 전송속도(TH)라 한다.
데이터 전송 장치는 S210단계에서 산출된 UDP의 초기 전송속도와 현재 네트워크 상태를 고려하여 UDP의 최적 전송속도를 산출하고(S240), S240단계에서 산출된 UDP의 최적 전송속도를 이용하여 제2데이터를 전송하고, TCP를 이용하여 제1데이터를 데이터 수신 장치에게 전송할 수 있다(S250).
S250단계가 진행되는 동안 데이터 전송 장치는 TCP의 전송속도를 지속적으로 산출하고, 산출된 TCP의 전송속도와 임계 전송속도(TH)를 비교할 수 있다(S260).
비교 결과, 산출된 TCP의 전송속도가 임계 전송속도(TH)보다 크면(S260-Y), 데이터 전송 장치는 데이터 전송이 완료되었는지를 확인하고(S270), 데이터 전송이 완료될 때까지 S250단계 내지 S270단계를 반복수행할 수 있다.
반면, S260단계의 비교 결과, 산출된 TCP의 전송속도가 임계 전송속도(TH) 이하이면(S260-N), 데이터 전송 장치는 UDP가 TCP에 미치는 영향도를 측정하고, UDP의 전송속도를 조절할 수 있다(S280). 즉, S280단계에서, 데이터 전송 장치는 TCP의 전송속도가 UDP의 영향으로 감소되었는지의 여부를 판단하고, 판단 결과에 따라 UDP의 전송속도를 조절할 수 있다. 데이터 전송 장치는 S280단계에서 조절된 UDP의 전송속도를 이용하여 S250단계를 수행할 수 있다.
도 3은 도 2에 도시된 S280단계를 보다 자세히 설명하기 위한 흐름도이다.
데이터 전송 장치는 TCP의 전송속도가 임계 전송속도(TH) 이하인 경우(S260-N), TCP의 전송속도가 임계 전송속도보다 높은 전송속도로 제2데이터를 전송하도록 UDP의 전송속도를 조절할 수 있다.
이를 위하여, 데이터 전송 장치는 S250단계에서 TCP와 UPD로 데이터를 동시에 전송하는 동안 TCP의 전송속도가 임계 전송속도(TH)보다 작아지기 시작하면, UDP 전송속도를 현 시점 기준으로 일정 수준 이하로 하향조절할 수 있다(S300). S300단계에서, 데이터 전송 장치는 [수학식 2]를 이용하여 UDP의 전송속도를 하향조절할 수 있다.
데이터 전송 장치는 S300단계에서 하향조절된 UDP의 전송속도와 TCP를 이용하여 제1데이터와 제2데이터를 병행 전송할 수 있다(S310).
그리고, 데이터 전송 장치는 S310단계에서 사용된 TCP의 현재 전송속도와 이전의 TCP 전송속도의 비율(C)이 1보다 크면, 즉, 현재 TCP 전송속도가 이전 TCP 전송속도보다 크면(S320-Y), k를 ‘1’로 업데이트할 수 있다(S330). k는 C>1인 경우를 카운팅한 횟수로서, 데이터 전송 장치는 C가 연속적으로 1보다 큰 경우 k를 1씩 누적시킨다. S330단계에서, 데이터 전송 장치는 [수학식 3]을 이용하여 비율(C)를 산출할 수 있다.
데이터 전송 장치는 S330단계에서 업데이트된 k가 m(m은 기준횟수)에 도달하면(S340-Y), UDP가 TCP의 전송속도에 영향을 주는 것으로 판단할 수 있다(S350). 즉, S350단계에서, 데이터 전송 장치는 TCP의 전송속도가 임계 전송속도보다 감소된 원인이 UDP에 있는 것으로 판단할 수 있다. 이는, UDP의 전송속도를 감소한 결과 TCP의 전송속도가 이전에 비해 증가하였기 때문이다.
S350단계에서, UDP와 TCP 사이에 상관관계가 있는 것으로 판단되면, 즉, TCP의 전송속도가 UDP의 영향으로 감소된 것으로 판단되면, 데이터 전송 장치는 TCP의 전송속도, UDP의 전송속도 및 임계 전송속도를 이용하여 UDP의 전송속도를 하향 조절할 수 있다.
UDP의 전송속도를 하향조절하기 위해, 데이터 전송 장치는 [수학식 5]를 이용하여 UDP 전송속도의 감소폭을 산출할 수 있다(S360).
그리고, 데이터 전송 장치는 S360단계에서 산출된 UDP 전송속도의 감소폭 및 [수학식 6]을 이용하여 UDP 전송속도를 산출할 수 있다(S370). 데이터 전송 장치는 S370단계에서 하향조절된 UDP 전송속도를 이용하여 제2데이터를 전송하고, 이와 동시에 TCP를 이용하여 제1데이터를 데이터 수신 장치에게 전송할 수 있다.
상기와 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 데이터 전송 장치 110: 데이터 분배부
120: 제1전송부 130: 제2전송부
140: 전송속도 산출부 142: 임계값 산출부
144: 판단부 146: 전송속도 조절부
200: 데이터 수신 장치 210: 제1수신부
220: 제2수신부 230: 수신데이터 정보 제공부
240: 데이터 취합부

Claims (19)

  1. 제2 전송 프로토콜에 따른 제2전송방식과 네트워크를 공유하는 플로우 간의 공평성을 제공하기 위한 기준으로 사용되는, 제1 전송 프로토콜에 따른 제1전송방식을 이용하여 데이터를 전송하는 제1전송부;
    상기 제2전송방식으로 데이터를 전송하는 제2전송부; 및
    상기 데이터를 전송하는 동안 상기 제1전송방식의 전송속도와 사전에 산출된 기준 전송속도를 비교하여 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식이 상기 기준 전송속도보다 높은 전송속도로 상기 데이터를 전송하도록 상기 제2전송방식의 전송속도를 조절하는 전송속도 산출부;를 포함하고,
    상기 전송속도 산출부는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 판단부; 및
    상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단되면, 상기 제2전송방식의 전송속도를 사전에 설정된 최소 전송속도 및 상기 제1전송방식의 최근 전송속도 중 하나로 하향 조절하는 전송속도 조절부;를 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  2. 제1항에 있어서,
    상기 전송속도 산출부는, 상기 제1전송방식과 상기 제2전송방식으로 데이터를 전송하기 이전에 상기 제1전송부가 상기 제1전송방식만으로 데이터를 전송하면, 상기 제1전송방식의 초기 전송속도를 산출하고, 상기 산출된 제1전송방식의 초기 전송속도에 기초하여 상기 초기 전송속도보다 작은 상기 기준 전송속도를 산출하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  3. 삭제
  4. 제1항에 있어서,
    상기 판단부는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하고, 상기 제2전송부와 상기 제1전송부에 의해 각각 상기 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터가 전송되면 상기 제1전송방식의 전송속도 변화를 확인하며,
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 감소한 경우, 상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  5. 제1항에 있어서,
    상기 전송속도 산출부는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 판단부; 및
    상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단되면, 상기 제1전송방식의 전송속도, 상기 제2전송방식의 전송속도 및 상기 기준 전송속도를 이용하여 상기 제2전송방식의 전송속도를 하향 조절하는 전송속도 조절부;를 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  6. 제5항에 있어서,
    상기 판단부는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하고, 상기 제2전송부와 상기 제1전송부에 의해 각각 상기 전송속도가 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터가 전송되면 상기 제1전송방식의 전송속도 변화를 확인하며,
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  7. 제6항에 있어서,
    상기 판단부는,
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제2전송방식의 전송속도를 하향조절하고 상기 제1전송방식의 전송속도 변화를 확인하는 동작을 반복수행하여 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가하였는지를 확인하며,
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 횟수가 사전에 정해진 기준 횟수에 도달하면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  8. 제6항에 있어서,
    상기 전송속도 조절부는,
    상기 제1전송방식의 전송속도와 상기 제2전송방식의 전송속도의 차이 및 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이 중 적어도 하나를 이용하여 상기 제2전송방식의 전송속도를 하향 조절하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  9. 제8항에 있어서,
    상기 전송속도 조절부는,
    상기 제2전송방식의 전송속도의 감소폭이, 상기 제2전송방식의 전송속도와 상기 제1전송방식의 전송속도의 차이에 비례하거나 또는 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이에 비례하도록 하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  10. 제1항에 있어서,
    상기 제2전송방식은 UDP(User Datagram Protocol) 전송방식이고, 상기 제1전송방식은 TCP(Transmission Control Protocol) 전송방식인 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치.
  11. 데이터 전송장치 내의 데이터 전송속도 제어 장치에 의한 전송속도 제어 방법에 있어서,
    상기 전송속도 제어 장치가, 제2 전송 프로토콜에 따르는 제2전송방식 및 상기 제2전송방식과 네트워크를 공유하는 플로우 간의 공평성을 제공하기 위한 기준으로 사용되며 제1 전송 프로토콜에 따르는 제1전송방식을 이용하여 데이터를 전송하는 단계;
    상기 전송속도 제어 장치가, 상기 데이터를 전송하는 동안 상기 제1전송방식의 전송속도와 사전에 산출된 기준 전송속도를 비교하는 단계;
    상기 전송속도 제어 장치가, 상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식이 상기 기준 전송속도보다 높은 전송속도로 상기 데이터를 전송하도록 상기 제2전송방식의 전송속도를 조절하는 단계;를 포함하고,
    상기 제2전송방식의 전송속도를 조절하는 단계는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 단계; 및
    상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단되면, 상기 제2전송방식의 전송속도를 사전에 설정된 최소 전송속도 및 상기 제1전송방식의 최근 전송속도 중 하나로 하향 조절하는 단계;를 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
  12. 제11항에 있어서,
    상기 전송속도 제어 장치가, 상기 제1전송방식과 상기 제2전송방식으로 데이터를 전송하기 이전에 상기 제1전송방식만으로 데이터를 전송하여 상기 제1전송방식의 초기 전송속도를 산출하는 단계; 및
    상기 전송속도 제어 장치가, 상기 산출된 제1전송방식의 초기 전송속도에 기초하여 상기 초기 전송속도보다 작은 기준 전송속도를 산출하는 단계;를 더 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
  13. 삭제
  14. 제11항에 있어서,
    상기 판단하는 단계는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하는 단계;
    상기 전송속도가 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터를 전송하여 상기 제1전송방식의 전송속도 변화를 확인하는 단계; 및
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 감소한 경우, 상기 제1전송방식의 전송속도가 상기 네트워크의 상태에 의해 감소된 것으로 판단하는 단계;를 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
  15. 제11항에 있어서,
    상기 제2전송방식의 전송속도를 조절하는 단계는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소되었는지를 판단하는 단계; 및
    상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단되면, 상기 제1전송방식의 전송속도, 상기 제2전송방식의 전송속도 및 상기 기준 전송속도를 이용하여 상기 제2전송방식의 전송속도를 하향 조절하는 단계;를 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
  16. 제15항에 있어서,
    상기 판단하는 단계는,
    상기 제1전송방식의 전송속도가 상기 기준 전송속도 이하이면, 상기 제2전송방식의 전송속도를 하향조절하는 단계;
    상기 전송속도가 하향조절된 제2전송방식과 상기 제1전송방식으로 데이터를 전송하여 상기 제1전송방식의 전송속도 변화를 확인하는 단계; 및
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단하는 단계;를 포함하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
  17. 제16항에 있어서,
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 경우, 상기 제2전송방식의 전송속도를 하향조절하는 단계와 상기 제1전송방식의 전송속도 변화를 확인하는 단계는 반복수행되어 상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가하였는지를 확인하며,
    상기 제1전송방식의 전송속도가 이전의 전송속도에 비해 증가한 횟수가 사전에 정해진 기준 횟수에 도달하면, 상기 제1전송방식의 전송속도가 상기 제2전송방식에 의해 감소된 것으로 판단하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
  18. 제16항에 있어서,
    상기 제2전송방식의 전송속도를 하향 조절하는 단계는,
    상기 제1전송방식의 전송속도와 상기 제2전송방식의 전송속도의 차이 및 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이 중 적어도 하나를 이용하여 상기 제2전송방식의 전송속도를 하향 조절하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
  19. 제17항에 있어서,
    상기 제2전송방식의 전송속도를 하향 조절하는 단계는,
    상기 제2 전송방식의 전송속도의 감소폭이, 상기 제1전송방식의 전송속도와 상기 제2전송방식의 전송속도의 차이에 비례하거나 또는 상기 제1전송방식의 전송속도와 상기 기준 전송속도의 차이에 비례하도록 하는 것을 특징으로 하는 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 방법.
KR1020110125519A 2011-11-29 2011-11-29 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법 KR101319678B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110125519A KR101319678B1 (ko) 2011-11-29 2011-11-29 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110125519A KR101319678B1 (ko) 2011-11-29 2011-11-29 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20130059504A KR20130059504A (ko) 2013-06-07
KR101319678B1 true KR101319678B1 (ko) 2013-12-19

Family

ID=48858305

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110125519A KR101319678B1 (ko) 2011-11-29 2011-11-29 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101319678B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000207298A (ja) 1999-01-14 2000-07-28 Kdd Corp ファイル転送方法
JP2007508746A (ja) * 2003-10-10 2007-04-05 トムソン ライセンシング ネットワークにおけるトラフィック分離に基づいた帯域幅予約機構
KR100734247B1 (ko) 2007-03-12 2007-07-02 주식회사 셀런 유디피를 이용한 에프티피 전송 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000207298A (ja) 1999-01-14 2000-07-28 Kdd Corp ファイル転送方法
JP2007508746A (ja) * 2003-10-10 2007-04-05 トムソン ライセンシング ネットワークにおけるトラフィック分離に基づいた帯域幅予約機構
KR100734247B1 (ko) 2007-03-12 2007-07-02 주식회사 셀런 유디피를 이용한 에프티피 전송 방법

Also Published As

Publication number Publication date
KR20130059504A (ko) 2013-06-07

Similar Documents

Publication Publication Date Title
US11546268B2 (en) Systems and methods for pacing data flows
US10367738B2 (en) Throughput guidance based on user plane insight
KR101689778B1 (ko) 네트워크 통신 품질 및 트래픽의 실시간 분석에 기반한 개선된 데이터 전달
CN106301684B (zh) 一种媒体数据传输方法及装置
US9083637B2 (en) System and method for providing dynamic QoS to maximize bandwidth utilization
US8976656B2 (en) Available bandwidth measurement system, transmission device, available bandwidth measurement method and recording medium
JP5990640B2 (ja) 優先順位マーキングを用いる適応ストリーミングアウェアネットワークノード、クライアント及び方法
KR20040078559A (ko) 엔드-투-엔드 측정을 기초로 한 네트워크 상으로의 데이터스트림의 유입 제어
US20120155262A1 (en) Kernel awareness of physical environment
US11588736B2 (en) Communication apparatus, communication method, and program
EP3471458A1 (en) Method and apparatus for controlling data transmission speed in wireless communication system
US20140133316A1 (en) Parameter Estimation Device, Parameter Estimation Method, and Parameter Estimation Program
EP2119137A1 (en) Rnc capacity licensing
JP5308364B2 (ja) 送信装置、送信方法及びプログラム
WO2016100890A1 (en) Smooth bandwidth-delay product variation inside wireless networks
CN112953847A (zh) 网络的拥塞控制方法、装置、电子设备及存储介质
KR101319678B1 (ko) 플로우 간 공평성 제공을 위한 데이터 전송속도 제어 장치 및 방법
US11695847B2 (en) Throughput guidance based on user plane insight
Kato et al. Comparing TCP Congestion Control Algorithms Based on Passively Collected Packet Traces
US20120236715A1 (en) Measurement Based Admission Control Using Explicit Congestion Notification In A Partitioned Network
WO2019124290A1 (ja) 送信データ量制御装置、方法および記録媒体
JP6897769B2 (ja) データ送信装置、方法およびプログラム

Legal Events

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

Payment date: 20160920

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170928

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180927

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20191001

Year of fee payment: 7