KR100506253B1 - 데이터 통신 시스템에서 전송 지연을 최소화하기 위한장치 및 방법 - Google Patents

데이터 통신 시스템에서 전송 지연을 최소화하기 위한장치 및 방법 Download PDF

Info

Publication number
KR100506253B1
KR100506253B1 KR10-2003-0033460A KR20030033460A KR100506253B1 KR 100506253 B1 KR100506253 B1 KR 100506253B1 KR 20030033460 A KR20030033460 A KR 20030033460A KR 100506253 B1 KR100506253 B1 KR 100506253B1
Authority
KR
South Korea
Prior art keywords
packet data
transmission
storage area
stored
storage
Prior art date
Application number
KR10-2003-0033460A
Other languages
English (en)
Other versions
KR20040101746A (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 KR10-2003-0033460A priority Critical patent/KR100506253B1/ko
Priority to US10/851,625 priority patent/US7558279B2/en
Priority to EP04012267A priority patent/EP1482684B1/en
Publication of KR20040101746A publication Critical patent/KR20040101746A/ko
Application granted granted Critical
Publication of KR100506253B1 publication Critical patent/KR100506253B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow
    • H04L49/9089Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
    • H04L49/9094Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element

Abstract

본 발명은, 패킷 데이터 전송 지연을 방지하기 위한 장치에 있어서, 송신하고자 하는 데이터를 저장하는 제1 저장영역과, 상기 패킷 데이터를 이후 수신될 데이터와 병합하기 위해 임시로 저장하는 제2 저장영역을 가지는 제1 저장부와, 상기 제2 저장영역에 임시 저장된 패킷 데이터의 복사본을 수신하여 저장하고, 링크 상태에 따라서 상기 패킷 데이터를 목적지로 전송하는 제2 저장부와, 상기 제2 저장부의 상태에 따라 상기 제2 저장 영역에 저장된 패킷 데이터의 복사본을 상기 제2 저장부에 저장하도록 제어하고, 상기 제2 저장부에 저장된 패킷 데이터의 복사본이 전송되면 상기 제2 저장영역에 저장된 패킷 데이터를 삭제하며, 상기 제2 저장영역의 상태에 따라 패킷 데이터 병합이 가능한지를 판단하고, 만일 패킷 데이터 병합이 가능하면, 상기 제1 저장영역에 저장된 패킷 데이터를 상기 제2 저장영역에 저장된 패킷 데이터와 병합하여 상기 제2 저장부에 저장하도록 제어하는 프레임 프로세서를 포함하는 것을 특징으로 한다.

Description

데이터 통신 시스템에서 전송 지연을 최소화하기 위한 장치 및 방법{Device and Method for minimizing transmission delay in data communication system}
본 발명은 데이터 전송 지연을 방지하기 위한 방법 및 장치에 관한 것으로서, 특히 고속의 라우터 및 스위치에서 병합 기법을 이용하여 데이터 전송 지연을 방지하기 위한 방법 및 장치에 관한 것이다.
인터넷 사용자가 급증하면서 데이터 전송률을 높이고자 하는 연구가 계속 진행되어 왔다. 이러한 연구에서 전송 데이터의 오버헤드를 줄임으로써 전송 자원을 절약하고 처리량(throughput)을 높이는 기술이 최근에 활발히 진행되고 있으며, 이중 대표되는 기술은 오버헤드 압축과 패킷 데이터 병합기술이 있다.
패킷 데이터를 전송할 때 TCP/IP(Transmission Control Protocol/Internet Protocol)와 같은 프로토콜을 사용하는데, 이러한 프로토콜은 40byte 이상의 헤더를 전송 데이터에 추가한다. 따라서 실제 전송되는 데이터의 양과는 상관없이 계속 일정양 만큼의 전송 오버헤드가 생기게 되므로 시스템의 성능이 떨어지게 된다.
상기 오버헤드 압축 기법은 헤더들을 4~6byte 크기로 압축해서 데이터에 추가해서 전송한다. 이러한 기법은 전체적인 전송 양을 줄일 수 있으므로 전송 처리량을 증가시키고, 라운드 트립 시간(round-trip-time)을 줄일 수 있다.
패킷 데이터 병합 기법은 하나의 계층에서 데이터의 오버헤드를 줄이며, 데이터 하나를 전송할 때마다 추가되는 헤더(header), 테일러(Tailer) 및 프로토콜 특성상 생기는 지연 시간들을 줄이기 위해서 두 개 이상의 데이터를 병합한 후 하나의 오버헤드를 이용하여 전송한다. 이러한 오버헤더는 유선 환경에서보다 무선 환경일 때 더 크기 때문에 병합 기법은 무선 매체접근 제어(Medium Access Control : MAC) 프로토콜에서 더욱 좋은 효과가 있으며, 고속의 라우터나 스위치에서 데이터를 전송할 때 일반적으로 많이 사용한다.
도 1은 종래의 패킷 데이터 전송 지연을 방지하기 위한 전송 모듈의 구조를 도시한 블록도이다.
데이터 전송을 위한 전송 모듈은 전송 데이터의 관리와 프로토콜 헤더를 위한 전처리를 담당하는 송신 관리부(10)와, 전송 프로토콜에 따라 실제 패킷 데이터를 전송하는 송신 프로토콜 엔진부(20)로 구성되어 있다.
상기 송신 관리부(10)는 데이터 관리를 위해 데이터를 저장하는 송신 큐(11)와, 상기 송신 큐(11)에 저장된 패킷 데이터들을 병합하는 프레임 프로세서(12)로 구성되어 있다. 그리고 상기 송신 관리부(11)는 송신 큐(11)에 저장된 패킷 데이터를 다음 수신될 패킷 데이터와의 병합하기 위해 인위적으로 지연시키는 송신 대기 타이머(Tx-WaitTimer)가 구비되어 있다.
상기 송신 프로토콜 엔진부(20)는 상기 송신 큐(11)로부터 수신된 패킷 데이터를 송신 시점에 따라 전송하기 위해 저장하는 송신 버퍼(21)와, 패킷 데이터 송신을 제어하는 송신 제어기(22)로 구성되어 있다. 이러한 구성을 갖는 전송 모듈에서 전송할 패킷 데이터를 병합하기 위한 동작을 도 2a 내지 도 2b를 참조하여 설명하면 다음과 같다.
도 2a에 도시된 바와 같이, 아이들(idle) 상태에서 송신 큐(11)로 새로운 패킷 데이터가 수신되면, 프레임 프로세서(12)는 송신 대기 타이머(13)를 동작시켜 수신된 패킷 데이터를 지연시킨다. 도 2b에 도시된 바와 같이, 채널이 붐비는(Busy) 상태에서 송신 큐(11)에 이전 패킷 데이터가 저장되어 있으면, 프레임 프로세서(12)는 현재 수신된 패킷 데이터와 이전 패킷 데이터를 병합하여 송신 버퍼(21)로 전송한다. 그러면 송신 버퍼(12)는 상기 병합된 패킷 데이터를 저장하였다가 전송 시점 시에 해당 도착지로 전송한다.
데이터 수신율이 낮을 경우에는 송신 큐(11)에 2개 이상의 패킷 데이터가 쌓일 확률이 낮다. 이러한 경우 송신 큐(11)에 데이터가 수신될 때 바로 송신 버퍼(21)에 보내지 않고 송신 대기 타이머(13)를 이용해서 강제적으로 지연시킴으로서 송신 큐(11)에 데이터가 쌓일 확률을 높이게 된다. 상기 병합 기법은 채널 상태가 좋아서 전송 지연 없이 빠르게 데이터를 전송할 수 있는 상태에서도 송신 대기 타이머로 인해 인위적으로 송신할 데이터가 지연되는 문제점이 있다.
게다가, 송신 버퍼에서 병합된 데이터가 저장되었으나, 채널이 붐비는 상태여서 전송되지 못하고 있는 경우 송신 큐에 데이터가 쌓이게 된다. 그런데 전송 처리량(throughput)을 높이기 위해서는 송신 버퍼의 데이터와 송신 큐의 데이터를 다시 한번 병합하는 것이 효과적이다. 그러나 종래의 병합 기법은 송신 관리부가 송신 버퍼의 상황을 고려하지 못하므로 송신 큐의 데이터들만을 병합할 수 있었다.
따라서, 본 발명의 목적은 재 병합할 수 있는 데스크립터 병합 기법을 이용하여 전송 지연을 방지하기 위한 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 전송 모듈에 백 큐를 추가하는 전송 지연을 방지하기 위한 장치 및 방법을 제공함에 있다.
상기 이러한 본 발명의 목적들을 달성하기 위한 장치는 패킷 데이터 전송 지연을 방지하기 위한 장치에 있어서, 송신하고자 하는 데이터를 저장하는 제1 저장영역과, 상기 패킷 데이터를 이후 수신될 데이터와 병합하기 위해 임시로 저장하는 제2 저장영역을 가지는 제1 저장부와, 상기 제2 저장영역에 임시 저장된 패킷 데이터의 복사본을 수신하여 저장하고, 링크 상태에 따라서 상기 패킷 데이터를 목적지로 전송하는 제2 저장부와, 상기 제2 저장부의 상태에 따라 상기 제2 저장 영역에 저장된 패킷 데이터의 복사본을 상기 제2 저장부에 저장하도록 제어하고, 상기 제2 저장부에 저장된 패킷 데이터의 복사본이 전송되면 상기 제2 저장영역에 저장된 패킷 데이터를 삭제하며, 상기 제2 저장영역의 상태에 따라 패킷 데이터 병합이 가능한지를 판단하고, 만일 패킷 데이터 병합이 가능하면, 상기 제1 저장영역에 저장된 패킷 데이터를 상기 제2 저장영역에 저장된 패킷 데이터와 병합하여 상기 제2 저장부에 저장하도록 제어하는 프레임 프로세서를 포함하는 것을 특징으로 한다.
또한, 상기 본 발명의 목적들을 달성하기 위한 방법은 송신하고자 하는 패킷 데이터를 저장하는 제1 저장영역과 상기 제1저장영역을 백업하는 제2 저장영역으로 구성되는 제1 저장부와, 전송 링크와 연결된 제2 저장부와, 프레임 프로세서를 구비하는 전송모듈에서, 상기 저장된 패킷 데이터를 송신시점 시에 목적지로 전송하기 위해 저장하는 제2 저장부를 구비하는 전송 모듈에서 상기 패킷 데이터를 목적지로 전송 시 발생되는 지연을 방지하기 위한 방법에 있어서, 상기 제2 저장부의 상태에 따라 상기 제2 저장영역에 저장된 패킷 데이터의 복사본을 상기 제2 저장부에 저장하는 과정과, 상기 제2 저장부에 저장된 패킷 데이터의 복사본이 전송되면 상기 제2 저장영역에 저장된 패킷 데이터를 삭제하는 과정과, 상기 제2 저장영역의 상태에 따라 패킷 데이터 병합이 가능한지를 판단하는 과정과, 패킷 데이터의 병합이 가능하면, 상기 제1 저장영역에 저장된 패킷 데이터를 상기 제2 저장영역에 저장된 패킷 데이터와 병합하여 상기 제2 저장부에 저장하는 과정을 포함하는 것을 특징으로 한다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 발명에 따라 데스크립터 병합 기법을 적용하기 위한 전송 모듈은 송신 큐에서 병합되지 않고 송신 버퍼로 전송되는 패킷 데이터를 재 병합을 위해 임시 저장하는 백업 큐를 송신 관리부에 추가한다. 이로 인해 송신 대기 타이머는 필요하지 않게 된다. 이러한 데스크립터 병합 기법의 전송 모듈의 구조를 도면을 참조하여 보다 상세히 설명하면 다음과 같다.
도 3은 본 발명의 실시예에 따른 병합을 위한 전송 모듈 구조를 도시한 블록도이다.
데이터 전송을 위한 전송 모듈은 전송 데이터의 관리와 프로토콜 헤더를 위한 전처리를 담당하는 송신 관리부(110)와, 전송 프로토콜에 따라 실제 패킷 데이터를 전송하는 송신 프로토콜 엔진부(120)로 구성되어 있다.
상기 송신 관리부(110)는 데이터 관리를 위해 데이터를 저장하는 송신 큐(11와, 상기 송신 큐(111)에 저장된 패킷 데이터들을 병합하는 프레임 프로세서(12)로 구성되어 있다. 그리고 송신 관리부(110)는 상기 송신 프로토콜 엔진부(120)로 송신할 패킷 데이터를 임시로 저장하는 백업 큐(112)를 추가로 구성하고 있다. 여기서 상기 백업 큐(112)는 별도의 새로운 메모리가 아닌 상기 송신 큐(111)에 별도의 링크된 리스트를 이용하여 구현된다. 즉, 상기 백업 큐(112)는 상기 송신 큐(111) 사이에 별도의 메모리 이동 없이 메모리 링크만을 이용해서 데이터를 관리한다.
상기 송신 프로토콜 엔진부(120)는 상기 송신 큐(111)로부터 수신된 패킷 데이터를 송신 시점에 따라 전송하기 위해 저장하는 송신 버퍼(121)와, 패킷 데이터 송신을 제어하는 송신 제어기(122)로 구성되어 있다.
이와 같은 구성을 갖는 본 발명의 실시예에 따른 전송 모듈에서 패킷 데이터의 병합 동작을 설명하면 다음과 같다.
도 4는 본 발명의 실시예에 따라 아이들 상태에서 전송 데이터를 백 큐에 연결한 후 송신 버퍼에 전달하는 동작을 도시한 블록도이다.
도 4에 도시된 바와 같이, 송신 관리부(110)의 송신 큐(111)로 새로운 데이터가 수신된 경우 프레임 프로세서(113)는 송신 큐(111)에 저장되어 있는 데이터와 송신 버퍼(121)에 저장되어있는 데이터를 병합할 수 있는지를 비교한다. 이때, 송신 큐(111)에 이전에 저장된 데이터가 없으면 즉, 송신 큐(111)가 비어있으면 병합할 데이터가 없으므로 401단계에서 프레임 프로세서(113)는 상기 수신된 패킷 데이터를 백업 큐(112)에 임시로 저장하고, 402단계에서 상기 동일한 패킷 데이터를 송신 버퍼(121)에 바로 전송한다.
그러면 송신 프로토콜 엔진부(120)의 송신 제어기(122)는 송신 버퍼(121)에 연결된 링크가 붐비는지를 확인한다. 이때 링크 상태가 좋은 상태(idle)이므로 송신 제어기(122)는 송신 버퍼(121)에 저장된 패킷 데이터를 바로 목적지로 전송한다. 이에 따라 상기 송신 버퍼(121)를 모니터링하고 있던 프레임 프로세서(113)는 백업 큐(112)에 저장되어 있는 상기 패킷 데이터를 삭제한다.
상기와 같은 아이들 상태에서 수신되는 패킷 데이터를 해당 목적지로 전송하다가 링크 상태가 좋지 않아 붐비는 상태에서 송신 큐로 새로운 패킷 데이터가 수신되는 경우를 도 5를 참조하여 설명하면 다음과 같다.
전송 모듈은 도 5에 도시된 바와 같이, 전송 링크가 붐비는 상태로서 송신 버퍼(121)에 저장된 데이터는 해당 목적지로 전송되지 못하고 대기하고 있는 상태이다. 이에 따라 이전에 도착한 패킷 데이터가 백업 큐(112)와 송신 버퍼(121)에 저장되어 있는 상태에서 새로운 패킷 데이터가 송신 큐(111)에 도착하면, 프레임 프로세서(113)는 송신 큐(111)와 백업 큐(112)에 저장된 패킷 데이터를 병합할 수 있는지를 판단한다. 즉, 백업 큐(112)에 패킷 데이터가 있는지를 확인한다.
판단 결과, 병합이 가능하면 송신 버퍼(121)에는 백업 큐(112)에 임시로 저장되어 있던 패킷 데이터들과 동일한 패킷 데이터들이 전송되지 않고 저장되어 있으므로 501단계에서 프레임 프로세서(113)는 송신 버퍼(121)의 패킷 데이터들을 플러시(Flush)를 통해서 삭제한다. 그런 다음 502단계에서 프레임 프로세서(113)는 송신 큐(111)에 현재 수신된 패킷 데이터와 백업 큐(112)에 임시로 저장되어 있는 이전 패킷 데이터를 병합하여 백업 큐(112)에 다시 임시로 저장한다.
이와 같이 백업 큐(112)에 임시로 저장된 패킷 데이터를 송신 버퍼(121)로 전송하는 동작이 도 6에 도시되어 있다.
상기 도 6을 참조하여 설명하면, 601단계에서 프레임 프로세서(113)는 상기 병합된 패킷 데이터를 송신 버퍼(121)로 전송한다. 이에 따라 송신 버퍼(121)는 상기 병합된 패킷 데이터를 저장하고, 송신 시점 시 연결된 링크의 상태가 좋으면 상기 병합된 패킷 데이터를 목적지로 전송한다. 반면, 링크가 계속해서 붐비는 상태일 경우에는 송신 시점 시 송신 버퍼(121)에 저장된 병합된 데이터가 전송되지 못하고 계속해서 대기하고 있는 상태가 된다. 이러한 경우 송신 큐(111)로 새로운 패킷 데이터가 수신되면 프레임 프로세서는 새로 수신된 패킷 데이터와 병합된 패킷 데이터를 재 병합하는데, 이러한 재 병합 동작을 도면을 참조하여 보다 상세히 설명하면 다음과 같다.
도 7은 본 발명의 실시예에 따라 병합된 데이터를 새로운 패킷 데이터와 재병합하는 동작을 도시한 블록도이다.
송신 큐(111)에 새로운 데이터가 수신되면 701단계에서 프레임 프로세서(113)는 송신 큐(111)의 수신된 데이터와 백업 큐(112)에 저장된 패킷 데이터를 다시 한번 병합하기 위해 송신 버퍼(121)의 패킷 데이터를 플러시를 통해 삭제한다. 그런 다음 702단계에서 프레임 프로세서(113)는 상기 송신 큐(111)의 수신된 패킷 데이터와 백업 큐(112)의 병합된 패킷 데이터를 재 병합하여 송신 버퍼(121)로 전송한다. 이때, 송신 제어기(122)는 지속적으로 링크 상태를 파악하여 송신 버퍼(121)에 저장된 패킷 데이터를 목적지로 전송한다.
이와 같이 링크가 붐비는 상태의 전송 모듈의 동작에서 예를 들어, MAC 프로토콜을 적용한 경우의 백업 큐와 송신버퍼의 상태를 데스크립터를 이용하여 설명하면 다음과 같다.
도 8은 본 발명의 실시예에 따라 아이들 상태에서 매체 접근 제어 프로토콜을 적용한 경우 전송모듈의 송신 버퍼 및 백업 큐의 상태를 도시한 블록도이다.
송신 큐(111)에 패킷 데이터가 도착되면 프레임 프로세서(113)는 병합 가능 여부를 확인한다. 즉, 백업 큐(112)에 패킷 데이터가 있는지를 확인한다. 확인 결과, 병합할 수 없는 상태이면, 프레임 프로세서(113)는 송신 큐(111)의 패킷 데이터(F1)를 송신 버퍼(121)로 전송한다. 그리고 백업 큐(112)에 상기 패킷 데이터(F1)를 임시로 저장한다. 여기서 송신 버퍼(121)의 첫 번째 영역은 상기 수신된 패킷 데이터가 저장되므로 "F1"로 표시되고, 나머지 영역은 저장된 패킷 데이터가 없으므로 "Null"로 표시되어 있는 상태이다. 여기서 송신 버퍼(121)의 패킷 데이터에 대한 정보를 가지고 있는 데스크립터(123)의 첫 번째 영역은 송신 버퍼(121)의 첫 번째 영역에 따라 "P_F1"로 표시되어 있고, 나머지 영역들은 "Null"로 표시되어 있다.
도 9a 내지 9e는 본 발명의 실시예에 따른 전송 모듈에서 매체 접근 제어 시스템에 적용한 경우의 전송 모듈의 송신 버퍼 및 백업 큐의 상태를 도시한 블록도이다.
도 9a에 도시된 바와 같이, 송신 큐(111)에 새로운 패킷 데이터(F2)가 수신됨에 따라 백업 큐(112)는 상기 수신된 패킷 데이터(F2)의 복사본을 저장한 상태가 된다. 이때 송신 버퍼(121)는 이전 패킷 데이터(F1)가 해당 목적지로 전송되지 않고 저장되어 있는 상태이다. 이에 따라 프레임 프로세서(113)는 상기 패킷 데이터들(F1, F2)을 병합할 수 있는 상태가 된다. 이때 송신 버퍼(121) 및 데스크립터(123)는 상기 도 8의 송신 버퍼(121) 및 데스크립터(123)의 상태와 같은 상태로 상기 패킷 데이터(F1)가 아직 전송되지 않은 상태이다. 이러한 상태에서 프레임 프로세서(113)는 도 9b에 도시된 바와 같이, 송신 버퍼(121)에 저장된 패킷 데이터(F1)를 삭제하여 모든 영역이 비어 있는(Null) 상태가 된다. 여기서 상기 데스크립터(123)의 모든 영역은 "Null"로 표시되어 있다.
도 9c에 도시된 바와 같이, 현재 수신된 패킷 데이터(F2)와, 이전 수신된 패킷 데이터(F1)가 병합됨에 따라 백업 큐(112)는 병합된 패킷 데이터(Agg1)의 복사본을 저장한 상태가 되고, 송신 버퍼(121)는 두 번째 영역에 병합된 데이터(Agg1)를 저장한 상태가 된다. 이때, 송신 버퍼(121)의 나머지 영역들은 모두 비어 있는(Null) 상태이다. 여기서 데스크립터(123)의 두 번째 영역은 "P_A1"로 표시되어 있고, 나머지 영역들은 "Null"로 표시되어 있다.
도 9d에 도시된 바와 같이, 백업 큐(112)에 새로운 패킷 데이터(F3)가 수신됨에 따라 프레임 프로세서(113)가 송신 버퍼(121)에 저장된 패킷 데이터(Agg1)를 삭제하여 송신 버퍼(121)의 모든 영역이 비어있는 상태가 된다. 여기서 데스크립터(123)의 모든 영역들은 "Null"로 표시되어 있다.
이후, 도 9e에 도시된 바와 같이, 프레임 프로세서(113)가 상기 새로운 패킷 데이터(F3)와 병합된 패킷 데이터(Agg1)를 병합함에 따라 백업 큐(112)는 재 병합된 패킷 데이터(Agg2)의 복사본을 저장한 상태가 되고, 그리고 송신 버퍼(121)는 상기 재 병합된 패킷 데이터(Agg2)를 세 번째 영역에 저장한 상태가 된다. 여기서 데스크립터(123)의 네 번째 영역은 "P_A2"를 표시되어 있고, 나머지 영역들은 "Null"로 표시되어 있다.
도 10은 본 발명의 실시예에 따른 전송 모듈에서 패킷 데이터들을 병합하기 위한 동작을 도시한 흐름도이다.
1010단계에서 프레임 프로세서(113)는 송신큐(111)에 데이터가 수신되는지를 확인한다. 확인 결과 데이터가 수신되면, 1020단계에서 상기 수신된 데이터를 병합할 수 있는지를 확인한다. 이때, 병합이 가능하지 않은 경우 1050단계에서 프레임 프로세서(113)는 그대로 수신된 패킷 데이터를 송신 버퍼(121)로 전송하고, 병합이 가능한 경우 1030단계에서 프레임 프로세서(113)는 송신 버퍼(121)에 저장되어 있는 패킷 데이터를 삭제한다. 이후, 1040단계에서 백업 큐(112)에 저장되어 있는 이전 패킷 데이터와 상기 수신된 패킷 데이터를 병합한 후 1050단계에서 병합된 데이터를 송신 버퍼(121)로 전송하고, 동시에 병합된 데이터의 복사본을 백업 큐(112)에 저장한다. 그런 다음 프레임 프로세서(113)는 1010단계로 진행하여 송신 큐(111)에 새로운 패킷 데이터가 수신되는지를 확인한다.
상술한 바와 같이 본 명세서에서는 패킷 데이터 병합 기법에 대해서 상세히 설명하였으나, 본 발명에 따른 패킷 데이터 병합 기법은 송신 큐에 저장되어 있는 패킷 데이터를 병합할 때 패킷 데이터의 헤더를 압축하는 기법과 동시에 적용될 수도 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 발명청구의 범위뿐 만 아니라 이 발명청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같이 본 발명은 송신버퍼로 전송할 패킷 데이터를 백업 큐에 임시로 저장하고 송신 버퍼의 상태를 파악하여 아이들 상태일 경우 바로 전송하고, 분비는 상태일 경우에는 새로 수신된 패킷 데이터와 이전 수신된 패킷 데이터를 병합하여 전송함으로서 패킷 데이터의 전송 지연을 막을 수 있으며, 전송 처리량을 높일 수 있다.
그리고 계속해서 분비는 상태에서 병합된 패킷 데이터가 전송되지 못하고 경우에도 재 병합이 가능하므로 더 효과적으로 전송 지연을 막고, 전송 처리량을 높일 수 있다.
또한, 기존의 링크 리스트로 구현된 송신 큐에 독립적인 링크만을 추가한 백업 큐를 사용하여 추가의 메모리 양이 필요하지 않고, 데이터의 메모리 이동이 최소화되므로 성능의 감소를 최소화 할 수 있는 효과가 있다.
도 1은 종래의 패킷 데이터 전송 지연을 방지하기 위한 전송 모듈의 구조를 도시한 블록도,
도 2a 내지 도 2b는 종래의 전송 모듈에서 데이터 전송 지연이 발생하는 동작을 도시한 블록도,
도 3은 본 발명의 실시예에 따른 병합을 위한 전송 모듈 구조를 도시한 블록도,
도 4는 본 발명의 실시예에 따라 아이들 상태에서 전송 데이터를 백 큐에 연결한 후 송신 버퍼에 전달하는 동작을 도시한 블록도,
도 5는 본 발명의 실시예에 따라 분비는 상태에서 새로운 데이터를 수신할 경우 데이터들을 병합하기 위한 동작을 도시한 블록도,
도 6은 본 발명의 실시예에 따라 병합 후 병합된 패킷 데이터를 송신버퍼로 전송하는 동작을 도시한 블록도,
도 7은 본 발명의 실시예에 따라 병합된 데이터를 새로운 패킷 데이터와 재병합하는 동작을 도시한 블록도,
도 8은 본 발명의 실시예에 따라 아이들 상태에서 매체 접근 제어 프로토콜을 적용한 경우 전송모듈의 송신 버퍼 및 백업 큐의 상태를 도시한 블록도,
도 9a 내지 9e는 본 발명의 실시예에 따라 채널이 붐비는 상태에서 매체 접근 제어 프로토콜을 적용한 경우 송신 모듈의 송신 버퍼 및 백업 큐의 상태를 도시한 블록도,
도 10은 본 발명의 실시예에 따른 전송 모듈에서 패킷 데이터들을 병합하기 위한 동작을 도시한 흐름도이다.

Claims (6)

  1. 패킷 데이터 전송 지연을 방지하기 위한 장치에 있어서,
    송신하고자 하는 데이터를 저장하는 제1 저장영역과, 상기 패킷 데이터를 이후 수신될 데이터와 병합하기 위해 임시로 저장하는 제2 저장영역을 가지는 제1 저장부와,
    상기 제2 저장영역에 임시 저장된 패킷 데이터의 복사본을 수신하여 저장하고, 링크 상태에 따라서 상기 패킷 데이터를 목적지로 전송하는 제2 저장부와,
    상기 제2 저장부의 상태에 따라 상기 제2 저장 영역에 저장된 패킷 데이터의 복사본을 상기 제2 저장부에 저장하도록 제어하고, 상기 제2 저장부에 저장된 패킷 데이터의 복사본이 전송되면 상기 제2 저장영역에 저장된 패킷 데이터를 삭제하며,상기 제2 저장영역의 상태에 따라 패킷 데이터 병합이 가능한지를 판단하고, 만일 패킷 데이터 병합이 가능하면, 상기 제1 저장영역에 저장된 패킷 데이터를 상기 제2 저장영역에 저장된 패킷 데이터와 병합하여 상기 제2 저장부에 저장하도록 제어하는 프레임 프로세서를 포함하는 것을 특징으로 하는 상기 전송지연을 최소화하기 위한 장치.
  2. 제1항에 있어서,
    상기 제2 저장부의 주소 및 패킷 데이터 저장상태를 나타내는 데스크립터를 더 포함함을 특징으로 하는 상기 전송지연을 최소화하기 위한 장치.
  3. 제1항에 있어서,
    상기 프레임 프로세서는 패킷 데이터의 병합이 가능하면, 상기 병합된 패킷 데이터를 상기 제2 저장부에 저장하기 이전에 상기 제2 저장부에 저장된 패킷 데이터를 플레시함을 특징으로 하는 상기 전송 지연을 최소화하기 위한 장치.
  4. 송신하고자 하는 패킷 데이터를 저장하는 제1 저장영역과 상기 제1저장영역을 백업하는 제2 저장영역으로 구성되는 제1 저장부와, 전송 링크와 연결된 제2 저장부와, 프레임 프로세서를 구비하는 전송모듈에서, 상기 저장된 패킷 데이터를 송신 시점시에 목적지로 전송하기 위해 저장하는 제2 저장부를 구비하는 전송 모듈에서 상기 패킷 데이터를 목적지로 전송시 발생되는 지연을 방지하기 위한 방법에 있어서,
    상기 제2 저장부의 상태에 따라 상기 제2 저장영역에 저장된 패킷 데이터의 복사본을 상기 제2 저장부에 저장하는 과정과,
    상기 제2 저장부에 저장된 패킷 데이터의 복사본이 전송되면 상기 제2 저장영역에 저장된 패킷 데이터를 삭제하는 과정과,
    상기 제2 저장영역의 상태에 따라 패킷 데이터 병합이 가능한지를 판단하는 과정과,
    패킷 데이터의 병합이 가능하면, 상기 제1 저장영역에 저장된 패킷 데이터를 상기 제2 저장영역에 저장된 패킷 데이터와 병합하여 상기 제2 저장부에 저장하는 과정을 포함하는 것을 특징으로 하는 상기 전송지연을 최소화하기 위한 방법.
  5. 제4항에 있어서,
    상기 제1 저장부의 다른 링크에 임시로 저장되어 있는 패킷 데이터는 상기 제2 저장부의 패킷 데이터가 목적지로 전송됨에 따라 삭제됨을 특징으로 하는 상기 전송 지연을 최소화하기 위한 방법.
  6. 제4항에 있어서,
    패킷 데이터의 병합이 가능하면, 상기 병합된 패킷 데이터를 상기 제2 저장부에 저장하기 이전에 상기 제2저장부에 저장된 패킷 데이터를 플레시함을 특징으로 하는 상기 전송 지연을 최소화하기 위한 방법.
KR10-2003-0033460A 2003-05-26 2003-05-26 데이터 통신 시스템에서 전송 지연을 최소화하기 위한장치 및 방법 KR100506253B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR10-2003-0033460A KR100506253B1 (ko) 2003-05-26 2003-05-26 데이터 통신 시스템에서 전송 지연을 최소화하기 위한장치 및 방법
US10/851,625 US7558279B2 (en) 2003-05-26 2004-05-21 Apparatus and method for minimizing transmission delay in a data communication system
EP04012267A EP1482684B1 (en) 2003-05-26 2004-05-24 Apparatus and method for minimizing transmission delay in a data communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0033460A KR100506253B1 (ko) 2003-05-26 2003-05-26 데이터 통신 시스템에서 전송 지연을 최소화하기 위한장치 및 방법

Publications (2)

Publication Number Publication Date
KR20040101746A KR20040101746A (ko) 2004-12-03
KR100506253B1 true KR100506253B1 (ko) 2005-08-10

Family

ID=33129038

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0033460A KR100506253B1 (ko) 2003-05-26 2003-05-26 데이터 통신 시스템에서 전송 지연을 최소화하기 위한장치 및 방법

Country Status (3)

Country Link
US (1) US7558279B2 (ko)
EP (1) EP1482684B1 (ko)
KR (1) KR100506253B1 (ko)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100633102B1 (ko) * 2004-01-27 2006-10-12 삼성전자주식회사 단일세션을 이용하는 패킷을 병합전송하는 무선 네트워크단말장치 및 그 전송방법
JP2006155817A (ja) * 2004-11-30 2006-06-15 Toshiba Corp 信号出力装置及び信号出力方法
US7532677B2 (en) * 2005-03-02 2009-05-12 Rohde & Schwarz Gmbh & Co., Kg Apparatus, systems and methods for producing coherent symbols in a single frequency network
US20060245516A1 (en) * 2005-03-02 2006-11-02 Rohde & Schwarz, Inc. Apparatus, systems and methods for providing in-band atsc vestigial sideband signaling or out-of-band signaling
US7822139B2 (en) * 2005-03-02 2010-10-26 Rohde & Schwarz Gmbh & Co. Kg Apparatus, systems, methods and computer products for providing a virtual enhanced training sequence
EP1854284B1 (en) 2005-03-02 2019-05-08 Rohde & Schwarz GmbH & Co. KG Apparatusand method for providing enhancements to atsc networks using synchronous vestigial sideband (vsb) frame slicing
US7532857B2 (en) * 2005-03-02 2009-05-12 Rohde & Schwarz Gmbh & Co. Kg Apparatus, systems and methods for providing time diversity for mobile broadcast services
CA2611337C (en) * 2005-06-07 2013-08-20 Rohde & Schwarz Gmbh & Co. Kg Apparatus, systems and methods for providing time diversity for mobile broadcast services
JP4372110B2 (ja) * 2006-02-10 2009-11-25 エヌイーシーコンピュータテクノ株式会社 データ転送回路、それを利用したマルチプロセッサシステム、及びデータ転送方法
WO2008092705A2 (en) 2007-02-01 2008-08-07 Rohde & Schwarz Gmbh & Co. Kg Systems, apparatus, methods and computer program products for providing atsc interoperability
DE102008017290A1 (de) * 2007-12-11 2009-06-18 Rohde & Schwarz Gmbh & Co. Kg Verfahren und Vorrichtung zur Bildung eines gemeinsamen Datenstroms insbesondere nach dem ATSC-Standard
DE102007059959B4 (de) * 2007-12-12 2020-01-02 Rohde & Schwarz Gmbh & Co. Kg Verfahren und System zur Übertragung von Daten zwischen einer zentralen Rundfunkstation und mindestens einem Sender
US8355458B2 (en) * 2008-06-25 2013-01-15 Rohde & Schwarz Gmbh & Co. Kg Apparatus, systems, methods and computer program products for producing a single frequency network for ATSC mobile / handheld services
DE102008056703A1 (de) * 2008-07-04 2010-01-07 Rohde & Schwarz Gmbh & Co. Kg Verfahren und System zur Zeitsynchronisierung zwischen einer Zentrale und mehreren Sendern
DE102008059028B4 (de) * 2008-10-02 2021-12-02 Rohde & Schwarz GmbH & Co. Kommanditgesellschaft Verfahren und Vorrichtung zur Erzeugung eines Transportdatenstroms mit Bilddaten
WO2010051864A2 (en) * 2008-11-06 2010-05-14 Rohde & Schwarz Gmbh & Co. Kg Method and system for synchronized mapping of data packets in an atsc data stream
EP2379310B1 (en) 2008-12-22 2018-11-28 Nederlandse Organisatie voor toegepast- natuurwetenschappelijk onderzoek TNO Method and apparatus for layerwise production of a 3d object
US8678805B2 (en) 2008-12-22 2014-03-25 Dsm Ip Assets Bv System and method for layerwise production of a tangible object
US8777602B2 (en) 2008-12-22 2014-07-15 Nederlandse Organisatie Voor Tobgepast-Natuurwetenschappelijk Onderzoek TNO Method and apparatus for layerwise production of a 3D object
US8982745B2 (en) * 2009-03-21 2015-03-17 Rohde & Schwarz Gmbh & Co. Kg Method for improving the data rate of mobile/handheld data and the quality of channel estimation in an ATSC-M/H transport data stream
DE102009025219A1 (de) * 2009-04-07 2010-10-14 Rohde & Schwarz Gmbh & Co. Kg Verfahren und Vorrichtung zur kontinuierlichen Anpassung von Kodierungsparametern an eine veränderliche Nutzdatenrate
DE102009057363B4 (de) 2009-10-16 2013-04-18 Rohde & Schwarz Gmbh & Co. Kg Verfahren und Vorrichtung zur effizienten Übertragung von überregional und regional auszustrahlenden Programm-und Servicedaten
US8989021B2 (en) 2011-01-20 2015-03-24 Rohde & Schwarz Gmbh & Co. Kg Universal broadband broadcasting
US20120226827A1 (en) * 2011-03-02 2012-09-06 Qualcomm Incorporated Mechanism for Performing SDIO Aggregation and Conveying SDIO Device Status to the Host Software
US11416159B2 (en) * 2019-04-29 2022-08-16 EMC IP Holding Company LLC Method and system for prioritizing critical data object storage during backup operations

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4998247A (en) * 1988-06-10 1991-03-05 Irvine Halliday David Active star-configured local area network
US6721334B1 (en) * 1999-02-18 2004-04-13 3Com Corporation Method and apparatus for packet aggregation in packet-based network
US6400724B1 (en) * 1999-07-16 2002-06-04 Qualcomm Inc. Method and apparatus for efficient data transmission in a voice-over-data communication system
US6826152B1 (en) 2000-09-13 2004-11-30 Harris Corporation System and method of conserving bandwidth in the transmission of message packets
US6741554B2 (en) * 2002-08-16 2004-05-25 Motorola Inc. Method and apparatus for reliably communicating information packets in a wireless communication network
US7185338B2 (en) * 2002-10-15 2007-02-27 Sun Microsystems, Inc. Processor with speculative multithreading and hardware to support multithreading software
US7414989B2 (en) * 2003-05-07 2008-08-19 Motorola, Inc. ACK/NACK determination reliability for a communication device

Also Published As

Publication number Publication date
KR20040101746A (ko) 2004-12-03
EP1482684A2 (en) 2004-12-01
EP1482684A3 (en) 2005-11-23
US7558279B2 (en) 2009-07-07
EP1482684B1 (en) 2011-08-10
US20040240460A1 (en) 2004-12-02

Similar Documents

Publication Publication Date Title
KR100506253B1 (ko) 데이터 통신 시스템에서 전송 지연을 최소화하기 위한장치 및 방법
US7644230B1 (en) Dynamic load management of network memory
JP3321043B2 (ja) Tcpネットワーク内のデータ端末
CA2573162C (en) Apparatus and method for supporting connection establishment in an offload of network protocol processing
EP1784735B1 (en) Apparatus and method for supporting memory management in an offload of network protocol processing
US20090268747A1 (en) Communication apparatus
US6678244B1 (en) Congestion management system and method
EP1889421B1 (en) Multi-stream acknowledgement scheduling
JP2000332817A (ja) パケット処理装置
US20120054362A1 (en) Mechanism for autotuning mass data transfer from a sender to a receiver over parallel connections
US7269752B2 (en) Dynamically controlling power consumption within a network node
US6026090A (en) Method and system for receiving ATM cells from an ATM network by a host
CN112953967A (zh) 网络协议卸载装置和数据传输系统
CN111131075A (zh) 一种高并发数据包缓冲方法
US20070291782A1 (en) Acknowledgement filtering
JPH11239163A (ja) Lan間フロー制御方法及びスイッチ
US20060067311A1 (en) Method of processing packet data at a high speed
US7373419B2 (en) Method, system, and article of manufacture for increasing network throughput
US8069270B1 (en) Accelerated tape backup restoration
JP2005210385A (ja) 他装置とのバッファ共有方法及び装置
US20040146059A1 (en) Method for controlling the bandwidth of a bridge device
CN116684354A (zh) 网络流拥塞管理装置及其方法
CN112769710A (zh) 路由器及其运行方法
Zuberi et al. An E cient End-Host Protocol Processing Architecture for Real-Time Audio and Video Tra c
KR19990055723A (ko) 전전자교환기의 프로세서간 통신제어보드의 송신대기열 관리방법

Legal Events

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

Payment date: 20120615

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130624

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee