KR20230142921A - 네트워크 본딩 시스템 - Google Patents
네트워크 본딩 시스템 Download PDFInfo
- Publication number
- KR20230142921A KR20230142921A KR1020220041562A KR20220041562A KR20230142921A KR 20230142921 A KR20230142921 A KR 20230142921A KR 1020220041562 A KR1020220041562 A KR 1020220041562A KR 20220041562 A KR20220041562 A KR 20220041562A KR 20230142921 A KR20230142921 A KR 20230142921A
- Authority
- KR
- South Korea
- Prior art keywords
- packets
- network
- data
- time
- unit
- Prior art date
Links
- 239000000872 buffer Substances 0.000 claims abstract description 36
- 238000012544 monitoring process Methods 0.000 claims abstract description 3
- 230000005540 biological transmission Effects 0.000 claims description 26
- 230000007423 decrease Effects 0.000 claims description 11
- 230000008707 rearrangement Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
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/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
- H04L47/562—Attaching a time tag to queues
-
- 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/0852—Delays
-
- 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/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- 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/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
- H04L47/2433—Allocation of priorities to traffic types
-
- 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/38—Flow control; Congestion control by adapting coding or compression rate
-
- 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/43—Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9005—Buffering arrangements using dynamic buffer space allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/30—Types of network names
- H04L2101/375—Access point names [APN]
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
본 발명은, 실시간 데이터를 일정 크기로 패킷화하여 복수의 패킷을 생성하며, 복수의 패킷의 순서를 나타내는 오더링 넘버를 복수의 패킷에 부여하고, 복수의 패킷을 버퍼에 저장하는 패킷화부와, 복수의 패킷을 복수의 네트워크 노드로 분배하는 스케줄링부와, 복수의 네트워크 노드를 통해 복수의 패킷을 입력 받으며, 복수의 패킷을 그 입력 순서에 따라 순차적으로 출력하는 순차 출력부와, 순차 출력부로부터 복수의 패킷을 입력 받으며, 오더링 넘버에 따라 복수의 패킷을 재정렬한 재정렬 데이터를 생성하고, 기준 지연 시간을 기초로 재정렬 데이터의 출력 여부를 결정하는 재정렬부와, 기준 지연 시간에 따라 버퍼의 크기를 가변하는 버퍼 관리부를 포함하는 네트워크 본딩 시스템을 제공한다.
Description
본 발명은 네트워크 본딩 시스템에 관한 것으로, 더욱 상세하게는 다중 네트워크를 통해 실시간 데이터를 전송함에 있어서 가변 지연 설정이 가능한 네트워크 본딩 시스템에 관한 것이다.
하나의 네트워크 노드를 통해서 고화질 동영상 같은 대용량의 실시간 데이터를 전송하기에는 적합하지 않은 경우가 많다. 특히, 무선 환경에서는 지속적으로 안정적인 네트워크 대역폭을 확보하기 어렵기 때문에 여러 네트워크의 대역폭을 합쳐서 사용하는 네트워크 본딩 기술을 사용하고 있다.
이와 같은 네트워크 본딩 기술을 사용하면 인터넷 사용이 어려운 산간 지방이나 재난 지역 혹은 많은 사람들이 모여있는 대규모 집회 현장 같은 곳에서도 안정적으로 대용량의 데이터를 실시간으로 보낼 수 있기 때문에 고화질 실시간 방송을 할 수 있다.
한편, 여러 네트워크 노드를 통해서 일반 데이터 혹은 실시간성이 요구되는 데이터를 전송하는데 있어서 네트워크의 기본 문제점이 있다.
구체적으로, 네트워크의 특성 상 여러 네트워크 노드를 통해서 데이터를 전송하면 전송 프로토콜에 따라 또는 네트워크의 특성과 품질에 따라 수신부에 도착하는 시점은 항상 변화한다. 따라서, 대부분의 네트워크 본딩 기술들은 기본적으로 송신부에서 복수의 패킷에 순차적인 패킷 넘버를 부여하여 여러 네트워크에 분배하여 전송하면, 수신부에서 패킷 넘버를 이용해 복수의 패킷을 다시 순차적으로 재정렬하는 방법을 사용하고 있다. 그러나, 이와 같은 방법은 복수의 패킷 중 일부 패킷이 유실되거나 너무 늦게 수신되면 데이터의 실시간성이 낮아지는 문제점이 있다.
본 발명은, 복수의 네트워크 노드의 지연 정도(latency), 데이터 처리량(throughput) 및 이용 가능한 대역폭(available bandwidth) 등의 정보를 실시간으로 모니터링할 수 있는 네트워크 본딩 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은, 복수의 네트워크 노드의 우선 순위에 따라 복수의 패킷을 복수의 네트워크 노드에 분배함으로써, 실시간 데이터를 효율적으로 전송하여 데이터의 실시간성을 향상시킬 수 있는 네트워크 본딩 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은, 실시간 데이터의 종류 또는 특성에 따라 기준 지연 시간을 조절하여 데이터의 실시간성 및 데이터 안정성 정도를 조절할 수 있는 네트워크 본딩 시스템을 제공하는 것을 목적으로 한다.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
전술한 목적을 달성하기 위하여, 본 발명은, 실시간 데이터를 일정 크기로 패킷화하여 복수의 패킷을 생성하며, 복수의 패킷의 순서를 나타내는 오더링 넘버를 복수의 패킷에 부여하고, 복수의 패킷을 버퍼에 저장하는 패킷화부와, 복수의 패킷을 복수의 네트워크 노드로 분배하는 스케줄링부와, 복수의 네트워크 노드를 통해 복수의 패킷을 입력 받으며, 복수의 패킷을 그 입력 순서에 따라 순차적으로 출력하는 순차 출력부와, 순차 출력부로부터 복수의 패킷을 입력 받으며, 오더링 넘버에 따라 복수의 패킷을 재정렬한 재정렬 데이터를 생성하고, 기준 지연 시간을 기초로 재정렬 데이터의 출력 여부를 결정하는 재정렬부와, 기준 지연 시간에 따라 버퍼의 크기를 가변하는 버퍼 관리부를 포함하는 네트워크 본딩 시스템을 제공한다.
또한, 본 발명의 네트워크 본딩 시스템은, 실시간 데이터를 인코딩하여 패킷화부에 출력하는 인코더와, 버퍼 및 복수의 네트워크 노드의 상태에 따라 인코더의 비트레이트를 가변하는 비트레이트 제어부를 더 포함할 수 있다.
여기서, 비트레이트 제어부는, 버퍼의 여유 크기가 기준 크기 미만이면 복수의 네트워크 노드의 상태에 따라 인코더의 비트레이트의 증감 기울기를 결정할 수 있다.
또한, 패킷화부는, 복수의 패킷이 생성된 시점을 나타내는 타임 스탬프를 복수의 패킷에 부여할 수 있다.
또한, 재정렬부는, 현재 시간과 상기 타임 스탬프의 시간의 차이 값이 기준 지연 시간 이상이면 상기 재정렬 데이터를 출력할 수 있다.
또한, 재정렬부는, 실시간 데이터의 종류 또는 특성에 따라 기준 지연 시간을 조절할 수 있다.
또한, 기준 지연 시간이 작을수록 실시간 데이터의 전송 지연 시간은 감소하고, 기준 지연 시간이 클수록 상기 실시간 데이터의 패킷 손실률은 감소할 수 있다.
또한, 버퍼 관리부는, 기준 지연 시간이 작을수록 버퍼의 크기를 감소시키고, 기준 지연 시간이 클수록 상기 버퍼의 크기를 증가시킬 수 있다.
또한, 스케줄링부는, 복수의 패킷에 분배된 복수의 네트워크 노드를 나타내는 네트워크 아이디를 복수의 패킷에 부여할 수 있다.
또한, 순차 출력부는 타임 스탬프를 기초로 복수의 네트워크 노드의 지연 정도, 데이터 처리량 및 이용 가능한 대역폭을 모니터링할 수 있다.
또한, 스케줄링부는 복수의 네트워크 노드의 지연 정도, 처리량 및 이용 가능한 대역폭 중 적어도 하나를 기초로 네트워크의 우선 순위를 결정할 수 있다.
또한, 스케줄링부는, 우선 순위에 따라 복수의 패킷을 상기 복수의 네트워크 노드로 분배할 수 있다.
본 발명에 따르면, 다중 네트워크를 통해서 실시간 데이터를 전송하는데 있어서 송신부에서 복수의 패킷에 오더링 넘버(ordering number), 타임 스탬프(timestamp) 및 네트워크 아이디(network identity)를 부여하여 복수의 패킷을 송신하고, 수신부에서 오더링 넘버, 타임 스탬프 및 네티워크 아이디를 이용하여 복수의 네트워크 노드의 지연 정도(latency), 데이터 처리량(throughput) 및 이용 가능한 대역폭(available bandwidth) 등의 정보를 실시간으로 모니터링할 수 있다.
또한, 본 발명에 따르면, 복수의 네트워크 노드의 지연 정도, 데이터 처리량 및 이용 가능한 대역폭 등의 정보를 실시간으로 모니터링하여 복수의 네트워크 노드의 우선 순위를 결정하고, 우선 순위에 따라 복수의 패킷을 복수의 네트워크 노드에 분배함으로써, 실시간 데이터를 보다 효율적으로 전송하여 데이터의 실시간성을 향상시킬 수 있다.
또한, 본 발명에 따르면, 실시간 데이터의 종류 또는 특성에 따라 기준 지연 시간을 조절하여 데이터의 실시간성 및 데이터 안정성 정도를 조절할 수 있다.
또한, 본 발명에 따르면, 네트워크 상태에 따라 복수의 패킷이 임시 저장되는 버퍼의 크기를 가변하여 데이터의 전송 안정성을 향상시키고, 실시간 데이터를 인코딩하는 인코더의 비트레이트를 가변하여 실시가 데이터의 전송 특성을 유지시킬 수 있다.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당해 기술분야에 있어서의 통상의 지식을 가진 자가 명확하게 이해할 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 네트워크 본딩 시스템의 전체 구성도이다.
도 2는 본 발명의 실시예에 따른 패킷화부의 동작을 설명하기 위한 도면이다.
도 3 내지 도 5는 본 발명의 실시예에 따른 분류기가 복수의 패킷을 우선 순위에 따라 복수의 네트워크 노드로 분배하는 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 실시예에 따른 스케줄링부의 분류기 동작을 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따른 재정렬부의 동작을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 패킷화부의 동작을 설명하기 위한 도면이다.
도 3 내지 도 5는 본 발명의 실시예에 따른 분류기가 복수의 패킷을 우선 순위에 따라 복수의 네트워크 노드로 분배하는 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 실시예에 따른 스케줄링부의 분류기 동작을 설명하기 위한 도면이다.
도 7은 본 발명의 실시예에 따른 재정렬부의 동작을 설명하기 위한 도면이다.
첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
도 1은 본 발명의 실시예에 따른 네트워크 본딩 시스템의 전체 구성도이다.
도 1을 참조하면, 본 발명의 실시예에 따른 네트워크 본딩 시스템은 송신부(100) 및 수신부(200)를 포함하여 구성될 수 있다. 여기서, 송신부(100)는 패킷화(Packetizing)부(110), 스케줄링(Scheduling)부(120)를 포함하고, 수신부(200)는 순차 출력(Serializing)부(210) 및 재정렬부(220)를 포함할 수 있다.
도 2는 본 발명의 실시예에 따른 패킷화부의 동작을 설명하기 위한 도면이다.
도 1 및 2를 참조하면, 패킷화부(110)는, 실시간 데이터(10)를 일정 크기로 패킷화(Packetizing)하여 복수의 패킷(10a)을 생성한다.
한편, 실시간 데이터(10)는 시간당 패킷의 크기가 일정하지 않다. 특히, 동영상 데이터의 경우 초당 수십 Kbyte에서 수 Mbyte까지 변화할 수 있다.
이에 따라, 네트워크의 전송 효율성 향상을 위해 실시간 데이터(10)를 일정 크기로 패킷화하여 복수의 패킷(10a)을 생성하는 것이 바람직하다.
다만, 일정 크기로만 패킷화할 경우 데이터의 실시간성이 낮아지기 때문에 설정된 최대 크기를 초과하지 않도록 패킷화하는 것이 더욱더 바람직하다.
한편, 하나의 네트워크를 통하여 복수의 패킷(10a)을 전송하는 경우 송신부(100)에서 순서에 따라 순차적으로 복수의 패킷(10a)을 전송하더라도 수신부(200)에 복수의 패킷(10a)이 순서에 따라 도착하지 않는다.
특히, 본 발명과 같이 복수의 네트워크를 통하여 복수의 패킷(10a)을 전송하는 경우 복수의 네트워크의 특성 또는 품질 차이로 인해 수신부(200)에 복수의 패킷(10a)이 더욱더 순서에 따라 도착하지 않는다.
이에 따라, 본 발명은 송신부(100)가 복수의 패킷(10a)에 순서를 부여하여 수신부(200)에 전송하면, 수신부(200)에서 복수의 패킷(10a)의 도착 시간과 무관하게 패킷(10a)의 순서에 따라 복수의 패킷(10a)을 재정렬한다.
이를 위해, 패킷화부(110)는 복수의 패킷(10a)의 순서를 나타내는 오더링 넘버(Ordering number; ONUM)를 복수의 패킷(10a)에 각각 부여할 수 있다.
또한, 패킷화부(110)는 복수의 패킷(10a)이 생성된 시점을 나타내는 타임 스탬프(Time stamp; TS)를 복수의 패킷(10a)에 각각 부여할 수 있다.
이에 따라, 수신부(200)는 복수의 패킷(10a)에 부여된 타임 스탬프(TS)를 기초로 네트워크의 전송 품질을 모니터링 하거나 기준 지연 시간을 조절할 수 있고, 재정렬 데이터(20)의 출력 여부를 결정할 수 있다.
도 1을 참조하면, 스케줄링부(120)는 분류기(Classfier)(121) 및 스케줄러(Scheduler)(122)를 포함할 수 있다.
분류기(121)는 복수의 패킷(10a)을 복수의 네트워크 노드로 분배할 수 있다. 여기서, 복수의 네트워크 노드는 WiFi, LAN, 4G 및 5G 등 다양한 무선 통신 네트워크로 구성될 수 있다.
스케줄러(122)는 복수의 네트워크 노드의 지연 정도(latency), 데이터 처리량(throughput) 및 이용 가능한 대역폭(available bandwidth) 중 적어도 하나를 기초로 네트워크의 우선 순위를 결정할 수 있다. 즉, 복수의 네트워크 노드 중 지연 정도 및 데이터 처리량이 작고, 이용 가능한 대역폭이 큰 네트워크 노드일수록 우선 순위를 높게 부여할 수 있다.
그리고, 분류기(121)는 스케줄러(122)에 의해 결정된 우선 순위에 따라 복수의 패킷(10a)을 복수의 네트워크 노드로 분배할 수 있다. 즉, 우선 순위가 상대적으로 높은 네트워크 노드에 우선적으로 복수의 패킷(10a)을 할당할 수 있다.
도 3 내지 도 5는 본 발명의 실시예에 따른 분류기가 복수의 패킷(10a)을 우선 순위에 따라 복수의 네트워크 노드로 분배하는 방법을 설명하기 위한 도면이다.
먼저, 도 3을 참조하면, 실시간 데이터(10)는 복수의 패킷(10a)으로 패킷화되고 복수의 패킷(10a)은 오더링 넘버(ONUM)로 각각 1번 내지 16번이 부여되어 있다.
여기서, 복수의 네트워크의 우선 순위가 동일한 경우, 즉, Ethernet, WiFi, LTE 4G 및 5G가 우선 순위가 모두 1로 동일한 경우, 분류기(121)는 Ethernet, WiFi, LTE 4G 및 5G에 각각 1번 패킷, 2번 패킷, 3번 패킷 및 4번 패킷을 할당한 후 다시 Ethernet, WiFi, LTE 4G 및 5G에 각각 5번 패킷, 6번 패킷, 7번 패킷 및 8번 패킷을 할당하는 방식으로 복수의 패킷(10a)을 복수의 네트워크 노드에 분배한다.
다음, 도 4를 참조하면, 실시간 데이터(10)는 복수의 패킷(10a)으로 패킷화되고 복수의 패킷(10a)은 오더링 넘버(ONUM)로 각각 1번 내지 16번이 부여되어 있다.
여기서, 복수의 네트워크의 전송 우선 순위가 순차적인 경우, 즉, Ethernet, WiFi, LTE 4G 및 5G의 우선 순위가 각각 1 내지 4로 순차적인 경우, 분류기(121)는 우선 순위가 가장 높은 Ethernet에 할당 가능한 최대 패킷 개수에 한하여 1번 내지 5번 패킷을 할당한 후 우선 수위가 그 다음 높은 WiFi에 할당 가능한 최대 패킷 개수에 한하여 6번 내지 10번 패킷을 할당하는 방식으로 복수의 패킷(10a)을 복수의 네트워크 노드에 분배한다.
다음, 도 5를 참조하면, 실시간 데이터(10)는 복수의 패킷(10a)으로 패킷화되고 복수의 패킷(10a)은 오더링 넘버(ONUM)로 각각 1번 내지 16번이 부여되어 있다.
여기서, 복수의 네트워크의 전송 우선 순위가 순차적이고 동일한 경우, 예를 들어, Ethernet, WiFi는 우선 순위가 1로 동일하고, LTE 4G 및 5G는 우선 순위가 2로 동일한 경우, 분류기(121)는 Ethernet 및 WiFi에 할당 가능한 최대 패킷 개수에 한하여 각각 1번 내지 10번 패킷을 번갈아 할당한 후, LTE 4G 및 5G에 할당 가능한 최대 패킷 개수에 한하여 각각 11번 내지 16번 패킷을 번갈아 할당하는 방식으로 복수의 패킷(10a)을 복수의 네트워크 노드에 분배한다.
이에 따라, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 인터넷 사용이 어려운 산간 지방이나 재난 지역 혹은 많은 사람들이 모여있는 대규모 집회 현장 같은 곳에서도 안정적으로 대용량의 데이터를 실시간으로 보낼 수 있기 때문에 고화질 실시간 방송을 할 수 있다.
또한, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 복수의 네트워크의 우선 순위에 따라 복수의 패킷(10a)을 복수의 네트워크 노드에 분배함으로써, 실시간 데이터(10)를 보다 효율적으로 전송하여 데이터의 실시간성을 향상시킬 수 있다.
도 6은 본 발명의 실시예에 따른 스케줄링부의 분류기 동작을 설명하기 위한 도면이다.
분류기(121)는, 복수의 패킷(10a)을 복수의 네트워크 노드에 분배하고 나면, 복수의 패킷(10a)에 분배된 복수의 네트워크 노드를 나타내는 네트워크 아이디(Network node ID; NID)를 복수의 패킷(10a)에 각각 부여할 수 있다.
이에 따라, 수신부(200)는 복수의 패킷(10a)에 부여된 네트워크 아이디(NID)를 기초로 특정 네트워크의 전송 품질을 모니터링할 수 있다. 예를 들어, 특정 네트워크 아이디(NID)가 부여된 특정 패킷(10a)이 전송 과정에서 유실되거나 지연 정도(latency)가 큰 경우 이 특정 네트워크 아이디(NID)에 해당하는 네트워크 노드의 전송 품질을 낮게 평가할 수 있다.
도 1을 참조하면, 순차 출력부(210)는 순차 출력기(Serializer)(211) 및 네트워크 모니터(Network monitor)(212)를 포함할 수 있다.
순차 출력기(211)는 복수의 네트워크 노드를 통해 복수의 패킷(10a)을 각각 입력 받으며, 복수의 패킷(10a)을 그 입력 순서에 따라 순차적으로 출력할 수 있다.
네트워크 모니터(212)는 복수의 패킷(10a)에 부여된 타임 스탬프(TS) 및 네트워크 아이디(NID)를 기초로 네트워크의 전송 품질을 실시간으로 모니터링할 수 있다.
구체적으로, 네트워크 모니터(212)는 복수의 네트워크 노드의 지연 정도, 데이터 처리량, 이용 가능한 대역폭 및 패킷 손실 여부 등의 정보를 실시간으로 모니터링하여 스케줄러(122)로 전송할 수 있다. 예를 들어, 네트워크 모니터(212)는, 현재 시간과 특정 네트워크 아이디(NID)가 부여된 특정 패킷(10a)의 타임 스탬프(TS)를 비교하여 특정 네트워크 아이디(NID)에 해당하는 네트워크 노드의 지연 정도(latency)를 파악할 수 있다.
이에 따라, 스케줄러(122)는 복수의 네트워크 노드의 지연 정도, 처리량 및 이용 가능한 대역폭 중 적어도 하나를 기초로 네트워크의 우선 순위를 결정할 수 있고, 분류기(121)는 우선 순위에 따라 복수의 패킷(10a)을 복수의 네트워크 노드로 분배할 수 있다.
이와 같이, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 복수의 네트워크 노드의 지연 정도, 데이터 처리량 및 이용 가능한 대역폭 등의 정보를 실시간으로 모니터링하여 복수의 네트워크 노드의 우선 순위를 결정하고, 우선 순위에 따라 복수의 패킷(10a)을 복수의 네트워크 노드에 분배함으로써, 실시간 데이터(10)를 효율적으로 전송하여 데이터의 실시간성을 향상시킬 수 있다.
도 7은 본 발명의 실시예에 따른 재정렬부의 동작을 설명하기 위한 도면이다.
도 7을 참조하면, 재정렬부(220)는 순차 출력부(210)로부터 복수의 패킷(10a)을 순차적으로 입력 받으며, 오더링 넘버(ONUM)에 따라 복수의 패킷(10a)을 재정렬한 재정렬 데이터(20)를 생성할 수 있다.
한편, 복수의 패킷(10a)은 재정렬부(220)에 오더링 넘버(ONUM) 순으로 입력되지 않을 수 있으며, 복수의 패킷(10a) 중 일부의 패킷은 전송 과정에서 유실되거나 재정렬부(220)에 너무 늦게 입력될 수 있다. 예를 들어, 1번 내지 10번 패킷 중 7번 패킷은 전송 과정에서 유실되거나 1번 패킷은 재정렬부(220)에 너무 늦게 입력될 수 있다.
여기서, 복수의 패킷(10a)이 재정렬부(220)에 모두 입력될 때까지 기다렸다가 복수의 패킷(10a)을 재정렬하게 되면 데이터의 실시간성이 낮아지게 된다.
이와 같은 문제점을 해결하기 위해, 재정렬부(220)는 설정된 기준 지연 시간(Latency timeout)을 기초로 재정렬 데이터(20)의 출력 여부를 결정할 수 있다.
구체적으로, 재정렬부(220)는 현재 시간과 복수의 패킷(10a)에 부여된 타임 스탬프(TS)의 시간의 차이 값이 기준 지연 시간 이상이면 재정렬 데이터를 출력할 수 있다. 즉, 재정렬부(220)는 복수의 패킷(10a) 중 일부의 패킷이 전송 과정에서 유실되거나 재정렬부(220)에 너무 늦게 입력되어 패킷 순서가 맞지 않더라도, 현재 시간과 타임 스탬프(Ts)의 차이값이 기준 지연 시간 이상이면 재정렬 데이터(20)를 출력할 수 있다.
여기서, 재정렬부(220)에 입력된 복수의 패킷(10a) 중 어느 하나에 부여된 타임 스탬프(TS)의 시간을 기준으로 재정렬 데이터(20)의 출력 여부를 결정할 수 있다. 또는, 재정렬부(220)에 입력된 복수의 패킷(10a) 중 가장 먼저 입력된 패킷(10a)에 부여된 타임 스탬프(TS)의 시간을 기준으로 재정렬 데이터(20)의 출력 여부를 결정할 수 있다.
도 7을 참조하면, 1번 내지 10번 패킷 중 7번 패킷은 전송 과정에서 유실되거나 재정렬부(220)에 아직 입력되지 않은 경우 7번 패킷을 제외하고 6번 및 8번 패킷을 결합할 수 있다. 그리고, 1번 내지 10번 패킷 중 1번 패킷이 너무 늦게 입력되는 경우 1번 패킷을 제외하고 나머지 패킷들을 결합할 수 있다.
한편, 기준 지연 시간이 작을수록 실시간 데이터(10)의 전송 지연 시간은 감소하는 반면, 실시간 데이터(10)의 패킷 손실률은 증가한다. 이와 달리, 기준 지연 시간이 클수록 실시간 데이터(10)의 패킷 손실률은 감소하는 반면, 실시간 데이터(10)의 전송 지연 시간은 증가한다.
이와 같이, 기준 지연 시간과 실시간 데이터(10)의 실시간성 및 패킷 손실률을 고려하여, 재정렬부(220)는 실시간 데이터(10)의 종류 또는 특성에 따라 기준 지연 시간을 조절할 수 있다.
예를 들어, 재정렬부(220)는 비교적 높은 실시간성이 요구되는 데이터는 기준 지연 시간을 비교적 짧게 설정하고, 비교적 높은 안정성이 요구되는 데이터는 기준 지연 시간을 비교적 길게 설정할 수 있다.
이와 같이, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 인터넷 사용이 어려운 산간 지방이나 재난 지역 혹은 많은 사람들이 모여있는 대규모 집회 현장 같은 곳에서도 안정적으로 대용량의 데이터를 실시간으로 보낼 수 있기 때문에 고화질 실시간 방송을 할 수 있다.
또한, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 복수의 네트워크의 우선 순위에 따라 복수의 패킷을 복수의 네트워크 노드에 분배함으로써, 실시간 데이터(10)를 효율적으로 전송하여 데이터의 실시간성을 더욱더 향상시킬 수 있다.
또한, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 실시간 데이터(10)의 종류 또는 특성에 따라 기준 지연 시간을 조절하여 데이터의 실시간성 및 데이터 안정성 정도를 조절할 수 있다.
도 8은 본 발명의 실시예에 따른 버퍼 관리부의 동작을 설명하기 위한 도면이고, 도 9는 도 8의 버퍼 관리부의 적용에 따른 데이터의 비트레이트를 도시한 그래프이다.
도 8을 참조하면, 본 발명의 실시에에 따른 네트워크 본딩 시스템은 인코더(140) 및 버퍼 관리부(130)를 더 포함하여 구성될 수 있다.
인코더(140)는 실시간 데이터를 인코딩하여 패킷화부(110)에 출력할 수 있다. 그러면, 패킷화부(110)는 인코딩된 실시간 데이터를 일정 크기로 패킷화하여 복수의 패킷(10a)을 생성할 수 있고, 복수의 패킷(10a)을 버퍼(111)에 임시 저장할 수 있다.
한편, 전술한 바와 같이, 수신부(200)는 복수의 패킷(10a)을 송신부(100)로부터 입력 받아 이를 재정렬하여 재정렬 데이터를 생성하고, 설정된 기준 지연 시간(Latency timeout)이 경과하면 재정렬 데이터(20)를 출력할 수 있다.
이 때, 수신부(200)는 실시간 데이터(10)의 종류 또는 특성에 따라 기준 지연 시간을 조절할 수 있다. 예를 들어, 수신부(200)는 비교적 높은 실시간성이 요구되는 데이터는 기준 지연 시간을 비교적 짧게 설정하고, 비교적 높은 안정성이 요구되는 데이터는 기준 지연 시간을 비교적 길게 설정할 수 있다.
버퍼 관리부(130)는 설정된 기준 지연 시간에 따라 버퍼(111)의 크기를 가변할 수 있다. 구체적으로, 버퍼 관리부(130)는 기준 지연 시간이 작을수록 버퍼(111)의 크기를 감소시키고, 기준 지연 시간이 클수록 버퍼(111)의 크기를 증가시킬 수 있다.
즉, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 비교적 높은 안정성이 요구되는 데이터의 경우 기준 지연 시간을 비교적 길게 설정하고 버퍼(111)의 크기를 증가시킬 수 있다. 이에 따라, 네트워크의 상태가 나빠져 송신부(100)에서 수신부(200)로 전송되는 데이터의 비트레이트(bitrate)가 감소되더라도, 전송되지 못한 데이터를 기준 지연 시간 동안 크기가 증가된 버퍼(111)에 임시 저장하였다가, 다시 네트워크의 상태가 좋아지면 수신부(200)에 전송함으로써, 실시간 데이터의 전송 안정성을 향상시킬 수 있다.
도 9에서, (a), (b), (c) 및 (d)는 복수의 네트워크 노드에서 분산 전송하는 데이터의 시간에 따른 비트레이트를 나타내고, (e)는 송신부(100)에서 수신부(200)로 전송하는 데이터의 시간에 따른 비트레이트를 나타내고, (f)는 수신부(200)에서 최종 방송 목적지로 전송하는 데이터의 시간에 따른 비트레이트를 나타낸다.
그리고, 비트레이트(e)가 비트레이트(f) 보다 낮은 구간은 네트워크 상태가 나빠져 송신부(100)에서 수신부(200)로 충분한 데이터가 전송되지 못함을 의미하고, 비트레이트(e)가 비트레이트(f) 보다 높은 구간은 네트워크 상태가 좋아져 송신부(100)에서 수신부(200)로 충분한 데이터가 전송됨을 의미한다.
도 9를 참조하면, 수신부(200)는 데이터를 설정된 기준 지연 시간(Latency timeout) 동안 지연한 후 최종 방송 목적지에 전송하는 것을 확인할 수 있다.
그리고, 비트레이트(e)가 비트레이트(f) 보다 낮은 구간에서 전송되지 못한 데이터를 기준 지연 시간 동안 버퍼(111)에 임시 저장하였다가, 비트레이트(e)가 비트레이트(f) 보다 높은 구간에서 수신부(200)에 전송함으로써, 실시간 데이터의 전송 안정성을 향상시키는 것을 확인할 수 있다.
도 10은 본 발명의 실시예에 따른 비트레이트 제어부의 동작을 설명하기 위한 도면이고, 도 11은 도 10의 비트레이트 제어부의 적용에 따른 데이터의 비트레이트를 도시한 그래프이다.
도 10을 참조하면, 본 발명의 실시에에 따른 네트워크 본딩 시스템은 비트레이트 제어부(150)를 더 포함하여 구성될 수 있다.
비트레이트 제어부(150)는 버퍼(111) 및 복수의 네트워크 노드의 상태에 따라 인코더(140)의 비트레이트를 가변할 수 있다. 구체적으로, 비트레이트 제어부(150)는 버퍼(111)의 여유 크기가 기준 크기 미만이면 복수의 네트워크 노드의 상태에 따라 인코더(140)의 비트레이트의 증감 기울기를 결정할 수 있다. 여기서, 버퍼(111)의 여유 크기가 기준 크기 미만이라는 것은 네트워크 상태가 나빠져 송신부(100)에서 수신부(200)로 충분한 데이터가 전송되지 못함을 의미하고, 복수의 네트워크 상태는 스케줄링부(120)로부터 제공받을 수 있다.
즉, 본 발명의 실시예에 따른 네트워크 본딩 시스템은, 네트워크 상태가 나빠지는 경우 인코터(140)의 비트레이트를 감소시켜 데이터의 전송 안정성은 낮추는 대신 실시간 데이터 전송의 특성을 유지시키고, 다시 네트워크 상태가 좋아지는 경우 인코더(140)의 비트레이트를 증가시시켜 실시간 데이터의 전송 안정성을 향상시킬 수 있다.
도 11에서, (a) 및 (b)는 복수의 네트워크 노드에서 분산 전송하는 데이터의 시간에 따른 비트레이트를 나타내고, (c)는 송신부(100)에서 수신부(200)로 전송하는 데이터의 시간에 따른 비트레이트를 나타내고, (d)는 수신부(200)에서 최종 방송 목적지로 전송하는 데이터의 시간에 따른 비트레이트를 나타낸다.
그리고, 비트레이트(c)가 비트레이트(d) 보다 낮은 구간은 네트워크 상태가 나빠져 송신부(100)에서 수신부(200)로 충분한 데이터가 전송되지 못함을 의미하고, 비트레이트(c)가 비트레이트(d) 보다 높은 구간은 네트워크 상태가 좋아져 송신부(100)에서 수신부(200)로 충분한 데이터가 전송됨을 의미한다.
도 11을 참조하면, 수신부(200)는 데이터를 설정된 기준 지연 시간(Latency timeout) 동안 지연한 후 최종 방송 목적지에 전송하는 것을 확인할 수 있다.
그리고, 비트레이트(a) 및 비트레이트(b)가 감소되어 비트레이트(c)가 감소되는 경우 비트레이트(d)도 감소시켜 실시간 데이터 전송의 특성을 유지시키고, 다시 비트레이트(a) 및 비트레이트(b)가 증가되어 비트레이트(c)가 증가되는 경우 비트레이트(d)도 증가시켜 실시간 데이터의 전송 안정성을 향상시키는 것을 확인할 수 있다.
본 명세서에서 설명되는 실시예와 첨부된 도면은 본 발명에 포함되는 기술적 사상의 일부를 예시적으로 설명하는 것에 불과하다. 따라서 본 명세서에 개시된 실시예들은 본 발명의 기술적 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이므로, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것이 아님은 자명하다. 본 발명의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당해 기술분야에 있어서의 통상의 지식을 가진 자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시예는 모두 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 송신부
110: 패킷화부
120: 스케줄링부
130: 버퍼 관리부
140: 인코더
150: 비트레이트 제어부
210: 순차 출력부
220: 재정렬부
110: 패킷화부
120: 스케줄링부
130: 버퍼 관리부
140: 인코더
150: 비트레이트 제어부
210: 순차 출력부
220: 재정렬부
Claims (12)
- 실시간 데이터를 일정 크기로 패킷화하여 복수의 패킷을 생성하며, 상기 복수의 패킷의 순서를 나타내는 오더링 넘버를 상기 복수의 패킷에 부여하고, 상기 복수의 패킷을 버퍼에 저장하는 패킷화부;
상기 복수의 패킷을 복수의 네트워크 노드로 분배하는 스케줄링부;
상기 복수의 네트워크 노드를 통해 상기 복수의 패킷을 입력 받으며, 상기 복수의 패킷을 그 입력 순서에 따라 순차적으로 출력하는 순차 출력부;
상기 순차 출력부로부터 상기 복수의 패킷을 입력 받으며, 상기 오더링 넘버에 따라 상기 복수의 패킷을 재정렬한 재정렬 데이터를 생성하고, 기준 지연 시간을 기초로 상기 재정렬 데이터의 출력 여부를 결정하는 재정렬부; 및
상기 기준 지연 시간에 따라 상기 버퍼의 크기를 가변하는 버퍼 관리부
를 포함하는 네트워크 본딩 시스템.
- 제 1 항에 있어서,
상기 실시간 데이터를 인코딩하여 상기 패킷화부에 출력하는 인코더; 및
상기 버퍼 및 상기 복수의 네트워크 노드의 상태에 따라 상기 인코더의 비트레이트를 가변하는 비트레이트 제어부
를 더 포함하는 네트워크 본딩 시스템.
- 제 2 항에 있어서,
상기 비트레이트 제어부는
상기 버퍼의 여유 크기가 기준 크기 미만이면 상기 복수의 네트워크 노드의 상태에 따라 상기 인코더의 비트레이트의 증감 기울기를 결정하는
네트워크 본딩 시스템.
- 제 1 항에 있어서,
상기 패킷화부는
상기 복수의 패킷이 생성된 시점을 나타내는 타임 스탬프를 상기 복수의 패킷에 부여하는
네트워크 본딩 시스템.
- 제 4 항에 있어서,
상기 재정렬부는
현재 시간과 상기 타임 스탬프의 시간의 차이 값이 상기 기준 지연 시간 이상이면 상기 재정렬 데이터를 출력하는
네트워크 본딩 시스템.
- 제 1 항에 있어서,
상기 재정렬부는
상기 실시간 데이터의 종류 또는 특성에 따라 상기 기준 지연 시간을 조절하는
네트워크 본딩 시스템.
- 제 6 항에 있어서,
상기 기준 지연 시간이 작을수록 상기 실시간 데이터의 전송 지연 시간은 감소하고,
상기 기준 지연 시간이 클수록 상기 실시간 데이터의 패킷 손실률은 감소하는
네트워크 본딩 시스템.
- 제 6 항에 있어서,
상기 버퍼 관리부는
상기 기준 지연 시간이 작을수록 상기 버퍼의 크기를 감소시키고, 상기 기준 지연 시간이 클수록 상기 버퍼의 크기를 증가시키는
네트워크 본딩 시스템.
- 제 4 항에 있어서,
상기 스케줄링부는
상기 복수의 패킷에 분배된 상기 복수의 네트워크 노드를 나타내는 네트워크 아이디를 상기 복수의 패킷에 부여하는
네트워크 본딩 시스템.
- 제 9 항에 있어서,
상기 순차 출력부는
상기 타임 스탬프를 기초로 상기 복수의 네트워크 노드의 지연 정도, 데이터 처리량 및 이용 가능한 대역폭을 모니터링하는
네트워크 본딩 시스템.
- 제 10 항에 있어서,
상기 스케줄링부는
상기 복수의 네트워크 노드의 지연 정도, 처리량 및 이용 가능한 대역폭 중 적어도 하나를 기초로 상기 네트워크의 우선 순위를 결정하는
네트워크 본딩 시스템.
- 제 11 항에 있어서,
상기 스케줄링부는
상기 우선 순위에 따라 상기 복수의 패킷을 상기 복수의 네트워크 노드로 분배하는
네트워크 본딩 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220041562A KR102672112B1 (ko) | 2022-04-04 | 2022-04-04 | 네트워크 본딩 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220041562A KR102672112B1 (ko) | 2022-04-04 | 2022-04-04 | 네트워크 본딩 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230142921A true KR20230142921A (ko) | 2023-10-11 |
KR102672112B1 KR102672112B1 (ko) | 2024-06-04 |
Family
ID=88295241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220041562A KR102672112B1 (ko) | 2022-04-04 | 2022-04-04 | 네트워크 본딩 시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102672112B1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366959B1 (en) * | 1997-10-01 | 2002-04-02 | 3Com Corporation | Method and apparatus for real time communication system buffer size and error correction coding selection |
KR20070075693A (ko) * | 2006-01-16 | 2007-07-24 | 삼성전자주식회사 | 이동통신 기지국 시스템에서 하향 음성 패킷망 패킷스케줄링 장치 및 방법 |
US20090183197A1 (en) * | 2008-01-10 | 2009-07-16 | Kim Matthews | Method of splicing encoded multimedia data streams |
KR20110016749A (ko) * | 2009-08-12 | 2011-02-18 | 주식회사 케이티 | 다중 접속 무선망에서 대역폭 확장을 위한 다중링크 데이터 분배/집중 장치 |
WO2019078682A1 (ko) * | 2017-10-19 | 2019-04-25 | 삼성전자 주식회사 | 유니캐스트 기반 멀티미디어 서비스를 위한 방법 및 장치 |
-
2022
- 2022-04-04 KR KR1020220041562A patent/KR102672112B1/ko active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366959B1 (en) * | 1997-10-01 | 2002-04-02 | 3Com Corporation | Method and apparatus for real time communication system buffer size and error correction coding selection |
KR20070075693A (ko) * | 2006-01-16 | 2007-07-24 | 삼성전자주식회사 | 이동통신 기지국 시스템에서 하향 음성 패킷망 패킷스케줄링 장치 및 방법 |
US20090183197A1 (en) * | 2008-01-10 | 2009-07-16 | Kim Matthews | Method of splicing encoded multimedia data streams |
KR20110016749A (ko) * | 2009-08-12 | 2011-02-18 | 주식회사 케이티 | 다중 접속 무선망에서 대역폭 확장을 위한 다중링크 데이터 분배/집중 장치 |
WO2019078682A1 (ko) * | 2017-10-19 | 2019-04-25 | 삼성전자 주식회사 | 유니캐스트 기반 멀티미디어 서비스를 위한 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR102672112B1 (ko) | 2024-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100559727B1 (ko) | 무선 시스템의 패킷 기반 데이터 트래픽에 대한 업링크스케줄링 시스템 | |
JP3792631B2 (ja) | パケット伝送方法及び装置、それを用いた基地局装置、無線lan端末装置、無線lanシステム | |
US6917984B1 (en) | Time based multimedia objects streaming apparatus and method | |
US8937920B2 (en) | High capacity network communication link using multiple cellular devices | |
US20020122395A1 (en) | Method and apparatus for implementing a mac coprocessor in a communication system | |
US20060077981A1 (en) | Network connection device | |
JP2014239521A (ja) | チャネルボンディングを用いたネットワーク上のデータ送信 | |
US7339923B2 (en) | Endpoint packet scheduling system | |
US11349595B2 (en) | Service multiplexing method, service demultiplexing method, and related device | |
JP3866713B2 (ja) | マルチユーザ1ポイント対多ポイント型デジタルデータ送信システムによるデータ送信の方法 | |
US11838574B2 (en) | Content distribution system | |
US20110158093A1 (en) | Bandwidth control method and bandwidth control device in node device | |
RU2324304C2 (ru) | Способ передачи данных и система, базовая станция, абонентская станция, блок обработки, компьютерный программный продукт, распространяемый носитель компьютерной программы и модуль исходных сигналов для его осуществления | |
US20060146775A1 (en) | Access point for ensuring quality of service of broadcasting service in wireless local area network | |
US20110047271A1 (en) | Method and system for allocating resources | |
KR102672112B1 (ko) | 네트워크 본딩 시스템 | |
KR20220138195A (ko) | 네트워크 본딩 시스템 | |
JP2002247063A (ja) | パケット多重化方式 | |
Huang et al. | MHTP-a multimedia high-speed transport protocol | |
Chini et al. | Dynamic resource allocation based on a TCP-MAC cross-layer approach for interactive satellite networks | |
Panju et al. | Queuing theoretic models for multicasting under fading | |
US8218474B2 (en) | Bandwidth allocation in satellite communication networks | |
EP3293923B1 (en) | Method and device for media packet distribution over multiple access wireless communication network | |
CN111866946B (zh) | 一种带宽分配方法及系统 | |
Roussos et al. | Congestion control protocols for interconnected LANs supporting voice and data traffic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |