KR20150074391A - 버퍼의 용량 설정방법 - Google Patents

버퍼의 용량 설정방법 Download PDF

Info

Publication number
KR20150074391A
KR20150074391A KR1020130162133A KR20130162133A KR20150074391A KR 20150074391 A KR20150074391 A KR 20150074391A KR 1020130162133 A KR1020130162133 A KR 1020130162133A KR 20130162133 A KR20130162133 A KR 20130162133A KR 20150074391 A KR20150074391 A KR 20150074391A
Authority
KR
South Korea
Prior art keywords
capacity
buffer
buffers
sub
setting
Prior art date
Application number
KR1020130162133A
Other languages
English (en)
Other versions
KR101752522B1 (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 KR1020130162133A priority Critical patent/KR101752522B1/ko
Priority to US14/575,978 priority patent/US9742706B2/en
Priority to CN201410858437.9A priority patent/CN104731524B/zh
Publication of KR20150074391A publication Critical patent/KR20150074391A/ko
Application granted granted Critical
Publication of KR101752522B1 publication Critical patent/KR101752522B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9005Buffering arrangements using dynamic buffer space allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

본 발명은 버퍼의 용량을 사용 환경에 따라 능동적으로 설정할 수 있어, 버퍼를 효율적으로 사용할 수 있는 버퍼의 용량 설정방법에 관한 것이다.
본 발명은 용량 설정 프로그램이 첫 번째로 실행되었는지를 판단하여, 첫 번째로 실행되었다고 판단하면, 메인 버퍼를 구성하는 다수의 서브 버퍼들을 초기화하는 초기화 단계; 첫 번째로 실행되는 것이 아니라고 판단하면, 상기 다수의 서브 버퍼들로부터 저장 회수 및 남은 용량을 수신하는 비교 데이터 수신단계; 상기 다수의 서브 버퍼들의 현재 저장 회수와 과거 저장 회수를 비교하여 같은지를 판단하는 데이터 비교단계; 상기 데이터 비교단계에서 현재 저장 회수와 과거 저장 회수가 다르면, 상기 다수의 서브 버퍼들의 할당 용량을 계산하는 설정 용량 계산단계; 및 상기 설정 용량 계산단계에서 계산된 할당 용량을 상기 다수의 서브 버퍼들의 용량을 재설정하는 용량 재설정단계로 이루어지는 버퍼의 용량 설정방법을 제공한다.

Description

버퍼의 용량 설정방법{Method for setting capacity of buffer}
본 발명은 버퍼의 용량을 설정하는 방법에 관한 것으로, 상세하게는 버퍼의 용량을 사용 환경에 따라 능동적으로 설정할 수 있어, 버퍼를 효율적으로 사용할 수 있는 버퍼의 용량 설정방법에 관한 것이다.
통신 시스템은 처리기(CPU)가 송수신 메시지를 처리하는 동안 발생하는 송수신 메시지의 손실을 막기 위해 버퍼(buffer)를 사용한다.
도 1은 일반적인 통시 시스템의 버퍼 사용 상태를 도시한 도면이다.
도 1을 참조하면, 일반적으로 통신 시스템은 내부에 통신을 위한 버퍼(이하 ‘통신 버퍼’라 함)(1)를 구비하고 있으며, 이때, 통신 버퍼(1)는 송신용 버퍼(2) 및 수신용 버퍼(3)로 이루어질 수 있는데, 송신용 버퍼(2)의 용량과 수신용 버퍼(3)의 용량의 합은 버퍼의 총량이 된다. 따라서, 송신용 버퍼(2)의 용량과 수신용 버퍼(3)의 용량을 합치면, 전체 버퍼 용량의 100%을 차지하게 된다.
이때, 통신 시스템을 사용하는 환경에 따라 송수신 메시지의 발생 빈도가 다르므로, 통신 기기 개발자나 사용자는 메시지 발생 빈도에 따라 레지스터(resistor)나 파라미터(parameter)를 설정해 송수신 버터 용량을 결정한다.
하지만, 통신 시스템과 사용 환경에 따라 송수신 메시지의 발생 빈도가 많아진다면 설정된 버퍼의 용량이 모자란 경우가 발생한다.
일반 통신 시스템은 송신 버퍼와 수신 버퍼 중에서 한쪽 버퍼의 용량이 가득 차면, 다른 한 쪽의 버퍼의 용량이 남아있더라도 초과되는 메시지는 메시지 수신 함수나 송신 메시지 생성 함수에서 모두 버리도록 설정된다.
개발자나 사용자가 버퍼 용량을 설정할 수 있는 경우는 메시지를 버리는 문제를 해결할 수 있지만, 송수신 메시지의 빈도는 항상 변하기 때문에 사용자가 버퍼 크기를 수시로 변경해야 하는 어려움이 있다.
또한, 사용자가 파라미터 설정으로 버퍼 용량을 변경할 수 없는 경우에는 이와 같은 문제를 해결할 수 있는 방법이 없다.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위하여 제안된 것으로, 버퍼의 용량을 사용 환경에 따라 능동적으로 설정할 수 있어, 버퍼를 효율적으로 사용할 수 있으며, 통신 시스템의 송신 버퍼 및 수신 버퍼의 용량을 설정하는데 사용할 수 있는 버퍼의 용량 설정방법을 제공하는 것을 목적으로 한다.
상기와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 버퍼의 용량 설정방법은, 용량 설정 프로그램이 첫 번째로 실행되었는지를 판단하여, 첫 번째로 실행되었다고 판단하면, 메인 버퍼를 구성하는 다수의 서브 버퍼들을 초기화하는 초기화 단계; 첫 번째로 실행되는 것이 아니라고 판단하면, 상기 다수의 서브 버퍼들로부터 저장 회수 및 남은 용량을 수신하는 비교 데이터 수신단계; 상기 다수의 서브 버퍼들의 현재 저장 회수와 과거 저장 회수를 비교하여 같은지를 판단하는 데이터 비교단계; 상기 데이터 비교단계에서 현재 저장 회수와 과거 저장 회수가 다르면, 상기 다수의 서브 버퍼들의 할당 용량을 계산하는 설정 용량 계산단계; 및 상기 설정 용량 계산단계에서 계산된 할당 용량을 상기 다수의 서브 버퍼들의 용량을 재설정하는 용량 재설정단계로 이루어진다.
이때, 상기 초기화 단계에 있어서, 상기 다수의 서브 버퍼들의 용량을 동일하게 설정하여 초기화하는 것을 특징으로 한다.
또한, 상기 초기화 단계에 있어서, 상기 다수의 서브 버퍼들을 초기화한 후, 용량 설정 프로그램이 첫 번째로 실행되었는지를 판단하는 것을 특징으로 한다.
한편, 상기 설정 용량 계산단계가 완료되면, 상기 다수의 서브 버퍼들의 현재 저장 회수를 과거 저장 회수로 변경하도록 하는 것을 특징으로 한다.
또한, 상기 설정 용량 계산단계는, 상기 다수의 서브 버퍼들의 현재 사용률을 계산하고, 상기 다수의 서브 버퍼들의 누적 사용률을 계산하고, 상기 메인 버퍼의 예상 사용용량 및 예상 잔여용량을 계산하고, 상기 다수의 서브 버퍼들의 새로 설정할 용량을 계산하는 과정을 통해 이루어지는 것을 특징으로 한다.
한편, 상기 데이터 비교단계에서, 현재 저장 회수와 과거 저장 회수가 같으면, 데이터의 변화가 없는 것으로 판단하여, 버퍼 용량 설정 동작을 종료하는 것을 특징으로 한다.
이때, 상기 메인 버퍼는 통신 시스템의 통신용 버퍼이고, 상기 다수의 서브 버퍼는 메시지를 송신하는데 사용되는 송신 버퍼 및 메시지를 수신하는데 사용되는 수신 버퍼일 수 있다.
이와 같은 본 발명의 실시 예에 따르면, 메인 버퍼를 구성하는 다수의 서브 버퍼들의 용량을 사용 환경에 따라 능동적으로 설정할 수 있어, 버퍼를 효율적으로 사용할 수 있다.
또한, 버퍼를 사용용량 및 사용 회수에 따라 능동적으로 설정할 수 있으므로, 고정적인 버퍼 용량을 사용하는 경우에 발생할 수 있는 데이터 유실을 방지할 수 있다.
도 1은 일반적인 통시 시스템의 버퍼 사용 상태를 도시한 도면이다.
도 2는 본 발명의 바람직한 실시 예에 따른 통신 시스템에서의 메시지 송수신을 위한 구조를 도시한 구성도이다.
도 3은 본 발명의 바람직한 실시 예에 따른 통신 시스템에서의 송수신 버퍼의 용량을 설정하기 위한 방법을 도시한 순서도이다.
도 4는 본 발명의 바람직한 실시 예에 따른 버퍼의 용량 설정방법에 있어서 설정 용량 계산단계의 세부 순서도이다.
이하, 본 발명의 바람직한 실시 예를 첨부된 도면들을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로, 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하에서는 본 발명의 실시 예에 따른 버퍼의 용량 설정방법을 통신 시스템의 송수신을 위한 송신 버퍼 및 수신 버퍼의 용량을 설정하는데 적용한 경우를 예로 들어 설명하나, 본 발명은 통신 시스템뿐만 아니라 버퍼를 사용하는 모든 기기에서 사용할 수 있으며, 버퍼의 수가 늘어나도 하기에서 설명되는 수학식의 일부를 수정해 적용할 수 있다.
도 2는 본 발명의 바람직한 실시 예에 따른 통신 시스템에서의 메시지 송수신을 위한 구조를 도시한 구성도이다.
이하에서는 도 2를 참조하여 본 발명의 바람직한 실시 예에 따른 통신 시스템에 있어서의 메시지 송수신 동작을 설명하도록 한다.
이때, 도 2에는 서로 메시지를 송수신하는 두 대의 통신 시스템(100, 200)이 도시되어 있으나, 두 통신 시스템의 메시지를 송수신하기 위한 구성 및 기능은 동일하므로, 하나의 통신 시스템(100)에 대해서만 설명하도록 한다.
또한, 도 3의 블록들은 장치를 나타낸 것일 수 있으며, 장치에 내장되어 기능을 수행하는 함수(프로그램)를 나타낸 것일 수 있다.
먼저, 본 발명의 실시 예에 따른 통신 시스템에 있어서의 메시지 송신은 다음과 같은 과정을 통해 이루어진다.
통신 시스템(100)의 처리기(110), 예를 들면 CPU가 데이터를 다른 통신 시스템(200)으로 보내기 위해 작업 관리자(120)에게 송신 메시지를 만들도록 명령하면, 상기 처리기(110)의 명령에 따라 상기 작업 관리자(120)가 메시지 생성부(130)를 이용하여 송신 메시지를 생성한다. 이때, 상기 메시지 생성부(130)는 송신 메시지 생성 함수를 저장하고 있다.
상기 메시지 생성부(130)에 의해 생성된 송신 메시지는 송신 버퍼(140)에 저장되고, 상기 작업 관리자(120)가 상기 송신 버퍼(140)에 저장된 상기 송신 메시지를 송신부(150)를 통해 다른 통신 시스템(200)으로 전송한다.
이때, 상기 송신부(150)는 다른 통신 시스템(200)과의 송수신을 위한 통신 모듈로서, 통신 규격에 적합하도록 송신 메시지를 처리하여 다른 통신 시스템(200)으로 전송한다.
또한, 본 발명의 바람직한 실시 예에 따른 통신 시스템(100)은 상기 송신 버퍼(140)에 저장된 송신 메시지의 양에 따라 상기 송신 버퍼(140)의 용량을 변경하는 버퍼 용량 설정부(160)를 포함한다.
또한, 상기 송신 버퍼(140)는 송신 메시지가 저장될 때마다, 저장 회수를 누적한다.
다음으로, 본 발명의 실시 예에 따른 통신 시스템에 있어서의 메시지 수신은 다음과 같은 과정을 통해 이루어진다.
통신 시스템(100)은 다른 통신 시스템(200)으로부터 전송되는 메시지를 수신부(170)를 통해 수신하고, 상기 작업 관리자(120)가 수신된 메시지(‘수신 메시지’)를 수신 버퍼(180)에 저장한다.
상기 수신 버퍼(180)에 저장된 상기 수신 메시지는 메시지 분석부(190)로 전송되고, 상기 메시지 분석부(190)는 수신 메시지를 분석하기 위한 분석 함수를 이용하여 주요 데이터만 분류하고, 분류된 데이터는 상기 작업 관리자(120)를 통해 상기 처리기(110)로 전달된다.
또한, 상기 버퍼 용량 설정부(160)는 상기 수신 버퍼(180)에 저장된 수신 메시지의 양에 따라 상기 수신 버퍼(180)의 용량을 변경한다.
또한, 상기 수신 버퍼(180)는 수신 메시지가 저장될 때마다, 저장 회수를 누적한다.
즉, 본 발명의 실시 예에 따른 통신 시스템(100)의 버퍼 용량 설정부(160)는 상기 송신 버퍼(140)에 저장되는 송신 메시지의 양 및 상기 수신 버퍼(180)에 저장되는 수신 메시지의 양에 따라 상기 송신 버퍼(140)의 용량 및 상기 수신 버퍼(180)의 용량을 변경한다.
도 3은 본 발명의 바람직한 실시 예에 따른 통신 시스템에서의 송수신 버퍼의 용량을 설정하기 위한 방법을 도시한 순서도이다. 이때, 송수신 버퍼의 용량 설정은 버퍼 용량 설정부(160)에 의해 이루어진다.
도 3을 참조하면, 상기 버퍼 용량 설정부(160)가 용량 설정 프로그램이 첫 번째로 실행되었는지를 판단하여, 송신 버퍼 및 수신 버퍼를 초기화하는 초기화 단계(S100)가 이루어진다.
이때, 상기 초기화 단계(S100)는 설정 프로그램이 첫 번째로 실행된 것인지를 확인하는 판단 단계(S110) 및 첫 번째로 실행된 경우라면(S110-Yes), 송신 버퍼와 수신 버퍼를 각각 버퍼 전체 용량의 50%씩 할당하는 용량 할당단계(S120)로 이루어질 수 있다.
상기 용량 할당단계(S120)가 종료되면, 상기 판단 단계(S110)로 돌아가, 설정 프로그램이 첫 번째로 실행된 것인지를 확인한다.
따라서, 시스템 최초 동작 시, 송신 버퍼(140) 및 수신 버퍼(180)는 각각 버퍼 전체 용량의 50% 비율을 차지하도록 동일한 용량으로 설정된다.
다음으로, 상기 초기화 단계(S100)에서 첫 번째로 실행된 것이 아니라고 판단되면, 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)로부터 남은 용량 및 저장 회수를 수신하는 비교 데이터 수신단계(S200)가 이루어진다.
다음으로, 현재 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수와 과거 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수를 비교하여 같은지를 판단하는 데이터 비교단계(S300)가 이루어진다.
따라서, 상기 버퍼 용량 설정부(160)는 상기 현재 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수와 과거 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수를 비교하기 위한 제어부(161)를 포함할 수 있다.
또한, 상기 버퍼 용량 설정부(160)는 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)로부터 수신한 남은 용량 및 저장 회수를 저장하기 위한 저장부(163)를 포함할 수 있다.
이때, 상기 제어부(161)는 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)로 데이터 요청 신호를 전송하여, 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)로부터 남은 용량 및 저장 회수를 수신할 수 있다.
또한, 상기 제어부(161)는 상기 저장부(163)로 데이터 요청 신호를 전송하여, 상기 저장부(161)에 저장된 과거의 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)의 저장 회수를 상기 저장부(161)로부터 수신할 수 있다.
만약, 상기 데이터 비교단계(S300)에서, 현재 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수와 과거 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수가 같으면, 데이터의 변화가 없는 것으로 판단하여, 통신 버퍼의 용량을 설정 동작이 종료된다.
만약, 상기 데이터 비교단계(S300)에서, 현재 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수와 과거 수신한 상기 송신 버퍼(140) 및 수신 버퍼(180)의 저장 회수가 다르면, 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)의 할당 용량을 계산하는 설정 용량 계산단계(S400)가 이루어진다.
이때, 설정 용량 계산단계(S400)가 종료되면, 현재 저장한 송신 버퍼 및 수신 버퍼의 저장 회수를 과거의 값으로 변환해 다시 프로그램이 시작될 때 활용한다.
다음으로, 상기 설정 용량 계산단계(S400)가 완료되면, 상기 설정 용량 계산단계(S400)에서 계산된 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)의 할당 용량으로 송신 버퍼(140) 및 수신 버퍼(180)의 용량을 재설정하는 용량 재설정단계(S500)가 이루어진다.
이때, 상기 설정 용량 계산단계(S400)에서, 상기 송신 버퍼(140) 및 상기 수신 버퍼(180)의 새로운 할당 용량은 하기 <수학식 1>과 같이 결정된다.
<수학식 1>은 새로 설정할 송수신 버퍼의 용량을 계산하는 식으로, <수학식 2> 내지 <수학식 5>는 백분율 값이므로 실제 사용하는 단위의 버퍼 용량 값으로 변환하기 위한 식이다.
<수학식 1>
Figure pat00001
여기서, SbTX 는 새로 설정할 송신 버퍼 용량이고, TbTX 는 송신 버퍼 총용량이고, RbTx 는 송신 버퍼 잔여용량이고, NRrTb 는 누적 송수신 버퍼 합산 평균 잔여량이고, ArTX 는 누적 송신 버퍼 사용률이고, ArRX 는 누적 수신 버퍼 사용률이고, SbRX 는 새로 설정할 수신 버퍼 용량이고, TbRX 는 수신 버퍼 총용량이고, RbRx 는 수신 버퍼 잔여용량이다.
한편, <수학식 1>의 누적 송수신 버퍼 합산 평균 잔여량(NRrTb)은 다음과 같은 <수학식 2>에 따라 결정된다.
<수학식 2>
Figure pat00002
여기서, TbTRX 는 송수신 버퍼 총용량이고, NRTX 는 누적 송신 버퍼 평균 사용량이고, NRRX 는 누적 수신 버퍼 평균 사용량이며, 누적 송신 버퍼 평균 사용량(NRTX) 및 누적 수신 버퍼 평균 사용량(NRRX)은 하기 <수학식 3>으로부터 구해진다.
<수학식 3>
Figure pat00003
여기서, TbTX 는 송신 버퍼 총용량이고, ArTX 는 누적 송신 버퍼 사용률이고, TbRX 는 수신 버퍼 총용량이고, ArRX 는 누적 수신 버퍼 사용률이다.
<수학식 2> 및 <수학식 3>은 송수신 버퍼 용량을 설정하기 위한 정보를 만들기 위해 사용되는 계산식으로, 송수신 버퍼의 누적 사용률로 버퍼의 예상 사용용량을 계산하고, 전체 버퍼 크기에서 예상한 버퍼 사용용량을 빼고 현재 남아있을 것이라고 예상되는 용량을 계산한다.
한편, 누적 송신 버퍼 사용률(ArTX) 및 누적 수신 버퍼 사용률(ArRX)은 다음과 같은 <수학식 4>와 같이 결정된다.
<수학식 4>는 송수신 버퍼의 누적 사용률을 계산하기 위한 식으로, <수학식 5>에서 계산한 송수신 버퍼의 사용용량 백분율 환산 값을 더해 누적하고, 누적된 값은 평균 누적 회수로 나눈다.
<수학식 4>에서는 과거의 사용용량 백분율 환산 값 1개와 현재의 사용용량 백분율 환산 값을 사용하기 때문에 2로 나눈 것으로, 나누는 값은 과거의 사용용량 백분율 환산 값을 몇 개 사용하는가에 따라서 결정된다.
나누는 값이 커지면 송신 버퍼 및 수신 버퍼의 사용률이 반전되는 경우에 버퍼 용량 변화 대응이 늦어지지만, 데이터가 일시적으로 증가하는 경우에는 각 버퍼에 할당한 용량을 조금씩 변경한다.
반대로, 나누는 값이 작으면 송신 버퍼와 수신 버퍼의 사용률이 반전되는 경우에 버퍼 용량 변화 대응이 빨라지지만, 데이터가 일시적으로 증가하는 경우에는 각 버퍼에 할당한 용량을 급격하게 변경한다.
<수학식 4>
Figure pat00004
여기서, RTX 는 송신 버퍼 사용률이고, RRX 는 수신 버퍼 사용률이고, k는 알고리즘을 실행한 회수이며, 송신 버퍼 사용률(RTX) 및 수신 버퍼 사용률(RRX)은 다음의 <수학식 5>로부터 구해진다.
<수학식 5>는 현재 송수신 버퍼 사용률을 계산하는 식으로, 송수신 버퍼의 사용 용량을 백분율로 환산한다.
<수학식 5>
Figure pat00005
여기서, TbTX 는 송신 버퍼 총용량이고, RbTX 는 송신 버퍼 잔여용량이고, TbRX 는 수신 버퍼 총용량이고, RbRX 는 수신 버퍼 잔여용량이고, n은 알고리즘의 실행 회수이다(n = 1, 2, 3, … ∞).
도 4는 본 발명의 바람직한 실시 예에 따른 버퍼의 용량 설정방법에 있어서 설정 용량 계산단계의 세부 순서도이다.
도 4를 참조하면, 상기 설정 용량 계산단계(S400)는 현재 송수신 버퍼 사용률을 계산하고(S410), 송수신 버퍼의 누적 사용률을 계산하고(S420), 버퍼의 예상 사용용량 및 예상 잔여용량을 계산하고(S430), 새로 설정할 송수신 버퍼의 용량을 계산하는(S440) 과정을 통해 이루어진다.
이와 같은 본 발명에 따르면, 통신 시스템의 송신 버퍼 및 수신 버퍼의 용량을 현재 송신 버퍼의 용량 및 수신 버퍼의 사용용량 및 사용 회수에 따라 송신 버퍼의 용량 및 수신 버퍼의 용량을 능동적으로 설정할 수 있으므로, 버퍼를 효율적으로 관리할 수 있다.
따라서, 버퍼를 사용용량 및 사용 회수에 따라 능동적으로 설정할 수 있으므로, 고정적인 버퍼 용량을 사용하는 경우에 발생할 수 있는 데이터 유실을 방지할 수 있다.
이러한 버퍼의 용량 설정방법은 통신 시스템에 국한되는 것이 아니며, 다수의 서브 버퍼로 이루어지는 메인 버퍼의 용량을 설정하는 데에도 유용하게 적용할 수 있다.
한편, 본 발명에 따른 버퍼의 용량 설정방법을 실시 예에 따라 설명하였지만, 본 발명의 범위는 특정 실시 예에 한정되는 것은 아니며, 본 발명과 관련하여 통상의 지식을 가진 자에게 자명한 범위 내에서 여러 가지의 대안, 수정 및 변경하여 실시할 수 있다.
따라서, 본 발명에 기재된 실시 예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
S100 : 초기화 단계
S200 : 비교 데이터 수신단계
S300 : 데이터 비교단계
S400 : 설정 용량 계산단계
S500 : 용량 재설정단계

Claims (7)

  1. 용량 설정 프로그램이 첫 번째로 실행되었는지를 판단하여, 첫 번째로 실행되었다고 판단하면, 메인 버퍼를 구성하는 다수의 서브 버퍼들을 초기화하는 초기화 단계;
    첫 번째로 실행되는 것이 아니라고 판단하면, 상기 다수의 서브 버퍼들로부터 저장 회수 및 남은 용량을 수신하는 비교 데이터 수신단계;
    상기 다수의 서브 버퍼들의 현재 저장 회수와 과거 저장 회수를 비교하여 같은지를 판단하는 데이터 비교단계;
    상기 데이터 비교단계에서 현재 저장 회수와 과거 저장 회수가 다르면, 상기 다수의 서브 버퍼들의 할당 용량을 계산하는 설정 용량 계산단계; 및
    상기 설정 용량 계산단계에서 계산된 할당 용량을 상기 다수의 서브 버퍼들의 용량을 재설정하는 용량 재설정단계로 이루어지는 버퍼의 용량 설정방법.
  2. 제 1 항에 있어서,
    상기 초기화 단계에 있어서, 상기 다수의 서브 버퍼들의 용량을 동일하게 설정하여 초기화하는 것을 특징으로 하는 버퍼의 용량 설정방법.
  3. 제 1 항에 있어서,
    상기 초기화 단계에 있어서, 상기 다수의 서브 버퍼들을 초기화한 후, 용량 설정 프로그램이 첫 번째로 실행되었는지를 판단하는 버퍼의 용량 설정방법.
  4. 제 1 항에 있어서,
    상기 설정 용량 계산단계가 완료되면, 상기 다수의 서브 버퍼들의 현재 저장 회수를 과거 저장 회수로 변경하도록 하는 것을 포함하는 버퍼의 용량 설정방법.
  5. 제 1 항에 있어서,
    상기 설정 용량 계산단계는,
    상기 다수의 서브 버퍼들의 현재 사용률을 계산하고, 상기 다수의 서브 버퍼들의 누적 사용률을 계산하고, 상기 메인 버퍼의 예상 사용용량 및 예상 잔여용량을 계산하고, 상기 다수의 서브 버퍼들의 새로 설정할 용량을 계산하는 과정을 통해 이루어지는 것을 특징으로 하는 버퍼의 용량 설정방법.
  6. 제 1 항에 있어서,
    상기 데이터 비교단계에서, 현재 저장 회수와 과거 저장 회수가 같으면, 데이터의 변화가 없는 것으로 판단하여, 버퍼 용량 설정 동작을 종료하는 버퍼의 용량 설정방법.
  7. 제 1 항에 있어서,
    상기 메인 버퍼는 통신 시스템의 통신용 버퍼이고, 상기 다수의 서브 버퍼는 메시지를 송신하는데 사용되는 송신 버퍼 및 메시지를 수신하는데 사용되는 수신 버퍼인 버퍼의 용량 설정방법.
KR1020130162133A 2013-12-24 2013-12-24 버퍼의 용량 설정방법 KR101752522B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020130162133A KR101752522B1 (ko) 2013-12-24 2013-12-24 버퍼의 용량 설정방법
US14/575,978 US9742706B2 (en) 2013-12-24 2014-12-18 Method for setting capacity of buffer
CN201410858437.9A CN104731524B (zh) 2013-12-24 2014-12-24 设置缓存器容量的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130162133A KR101752522B1 (ko) 2013-12-24 2013-12-24 버퍼의 용량 설정방법

Publications (2)

Publication Number Publication Date
KR20150074391A true KR20150074391A (ko) 2015-07-02
KR101752522B1 KR101752522B1 (ko) 2017-06-29

Family

ID=53401370

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130162133A KR101752522B1 (ko) 2013-12-24 2013-12-24 버퍼의 용량 설정방법

Country Status (3)

Country Link
US (1) US9742706B2 (ko)
KR (1) KR101752522B1 (ko)
CN (1) CN104731524B (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6833364B2 (ja) * 2016-07-01 2021-02-24 株式会社東芝 Icカード、および、icカード処理装置
KR102222133B1 (ko) * 2018-01-12 2021-03-03 엔에이치엔 주식회사 모바일 단말기 및 그의 어플리케이션 관리 방법과 이를 활용한 타겟 광고 제공 시스템

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI489822B (zh) 2002-05-10 2015-06-21 Signal Trust For Wireless Innovation 以容量分佈為基礎之認識流控制
CN1263241C (zh) * 2003-04-11 2006-07-05 中兴通讯股份有限公司 一种前向接入传输信道的自适应流量控制方法
US7787377B2 (en) * 2006-02-03 2010-08-31 Telefonaktiebolaget Lm Ericsson (Publ) Selective redundancy for Voice over Internet transmissions
CN103402136B (zh) * 2013-07-29 2016-05-11 重庆大学 自适应调整缓存的控制方法、装置及自适应播放器
KR20220159482A (ko) * 2013-12-02 2022-12-02 나이키 이노베이트 씨.브이. 체공 시간

Also Published As

Publication number Publication date
US20150180804A1 (en) 2015-06-25
CN104731524A (zh) 2015-06-24
CN104731524B (zh) 2018-01-12
US9742706B2 (en) 2017-08-22
KR101752522B1 (ko) 2017-06-29

Similar Documents

Publication Publication Date Title
CN110198275B (zh) 一种流量控制方法、***、服务器及存储介质
CN105072670B (zh) WiFi热点的共享方法和电子设备
CN108092908B (zh) 控制流量的方法和发送端设备
CN111787069A (zh) 业务接入请求的处理方法、装置、设备及计算机存储介质
CN109905259A (zh) 通信连接维持方法、***和相关设备
CN110417650A (zh) 多链路数据分配方法、装置及电子设备
CN107017911B (zh) 无线通讯装置及其控制方法
US10841804B2 (en) Wireless resource allocation device, wireless resource allocation method, and recording medium storing wireless resource allocation program
US20200028741A1 (en) Universal Scaling Controller for Software Network Functions
CN109245959B (zh) 统计活跃流数目的方法、网络设备和***
CN105468305A (zh) 一种数据缓存方法、装置和***
US9326161B2 (en) Application-driven control of wireless networking settings
KR101752522B1 (ko) 버퍼의 용량 설정방법
CN105764091B (zh) 一种有效利用无线带宽的方法
KR101223287B1 (ko) 무선 통신 시스템에서 자원 할당 방법 및 장치
CN113645145A (zh) 负载均衡方法、装置、网络设备及计算机可读存储介质
US9501321B1 (en) Weighted service requests throttling
CN109587806A (zh) 一种调度请求发送方法及终端设备
CN112367270A (zh) 一种报文发送的方法和设备
US10104571B1 (en) System for distributing data using a designated device
CN104468337A (zh) 消息传输方法及装置、消息管理中心设备及数据中心
CN105591980B (zh) 一种带宽消耗管理方法及装置
CN104754636B (zh) 一种小区负荷状态的检测方法及通信设备
US10177929B1 (en) System for distributing data to multiple devices
CN103559155B (zh) 一种数据传输方法、相关装置及数据传输***

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant