KR100428714B1 - IP packet transmission apparatus and method for using DPRAM - Google Patents

IP packet transmission apparatus and method for using DPRAM Download PDF

Info

Publication number
KR100428714B1
KR100428714B1 KR10-2001-0050192A KR20010050192A KR100428714B1 KR 100428714 B1 KR100428714 B1 KR 100428714B1 KR 20010050192 A KR20010050192 A KR 20010050192A KR 100428714 B1 KR100428714 B1 KR 100428714B1
Authority
KR
South Korea
Prior art keywords
packet
cell
port ram
dual port
buffer
Prior art date
Application number
KR10-2001-0050192A
Other languages
Korean (ko)
Other versions
KR20030016558A (en
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-2001-0050192A priority Critical patent/KR100428714B1/en
Publication of KR20030016558A publication Critical patent/KR20030016558A/en
Application granted granted Critical
Publication of KR100428714B1 publication Critical patent/KR100428714B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

이중포트램을 이용한 아이피 패킷 전달 장치 및 그 방법에 관한 것임.The present invention relates to an IP packet transmission device using a dual port RAM and a method thereof.

2. 발명이 해결하려고 하는 기술적 과제2. The technical problem to be solved by the invention

ATM 기반 IP 패킷을 IP 검색 및 처리 기능으로 전달하기 위하여 고속의 별도 로컬버스와 이중포트램을 사용하는 방식으로서, IP 패킷의 전달속도를 고속화하기 위하여 별도 로컬버스와 이중포트램을 사용하는 이중포트램을 이용한 아이피 패킷 전달 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공함.It uses high speed separate local bus and dual port RAM to deliver ATM-based IP packet to IP search and processing function. Dual port using separate local bus and dual port RAM to speed up IP packet delivery speed An apparatus for delivering an IP packet using a RAM, a method thereof, and a computer-readable recording medium having recorded thereon a program for realizing the method.

3. 발명의 해결방법의 요지3. Summary of Solution to Invention

이중포트램을 이용한 아이피 패킷 전달 장치에 있어서, ATM 셀을 전달하기 위한 셀 전달수단; 상기 셀 전달수단으로부터 ATM 셀을 재결합하여 IP 패킷을 구성한 후 패킷 전달수단으로 송신하고, 상기 패킷 전달수단을 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후 상기 셀 전달수단으로 전송하는 셀 처리수단; 상기 셀 처리수단을 통해 전달되는 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후 로컬 메모리의 IP 패킷 수신 상태 큐를 통하여 패킷 처리수단으로 전달하고, 상기 패킷 처리수단을 통해 처리된 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후 상기 로컬 메모리의 IP 패킷 송신 버퍼 큐를 통하여 상기 셀 처리 수단으로 전달하는 상기 패킷 전달수단; 및 상기 이중포트램 패킷 메모리를 통해 전달된 IP 패킷을 IP 상위 프로토콜 처리기능에 따라 처리하기 위한 상기 패킷 처리수단을 포함함.An IP packet transmission apparatus using a dual port RAM, comprising: a cell forwarding means for delivering an ATM cell; Cell processing means for recombining the ATM cells from the cell forwarding means to form an IP packet and transmitting the packet to the packet forwarding means, dividing the IP packet received through the packet forwarding means into an ATM cell, and then transmitting the packet to the cell forwarding means. ; The IP packet transmitted through the cell processing means is stored in the dual port RAM packet memory and then transferred to the packet processing means through an IP packet reception status queue of a local memory, and the IP packet processed through the packet processing means is transferred. The packet forwarding means for storing in a dual port RAM packet memory and delivering the packet to the cell processing means through an IP packet transmission buffer queue of the local memory; And the packet processing means for processing the IP packet transferred through the dual port RAM packet memory according to an IP upper protocol processing function.

4. 발명의 중요한 용도4. Important uses of the invention

DPRAM을 이용한 IP 패킷 전달 장치 등에 이용됨.Used for IP packet transmission device using DPRAM.

Description

이중포트램을 이용한 아이피 패킷 전달 장치 및 그 방법{IP packet transmission apparatus and method for using DPRAM}IP packet transmission apparatus and method for using DPRAM

본 발명은 이중포트램(DPRAM : Dual Port Random Access Memory)을 이용한 아이피(IP : Internet Protocol) 패킷 전달 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히 ATM(Asynchronous Transfer Mode) 기반 IP 패킷을 IP 검색 및 처리 기능으로 전달하기 위하여 고속의 별도 로컬버스와 이중포트램을 사용하는 방식으로서, IP 패킷의 전달속도를 고속화하기 위하여 별도 로컬버스와 이중포트램을 사용하는 이중포트램을 이용한 아이피 패킷 전달 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.The present invention relates to an IP (Internet Protocol) packet forwarding apparatus using Dual Port Random Access Memory (DPRAM), and a method and a computer readable recording medium recording a program for realizing the method. In particular, high speed separate local bus and dual port RAM are used to deliver ATM (Asynchronous Transfer Mode) based IP packet to IP search and processing function. The present invention relates to an IP packet transmission device using a dual port RAM using a forram, and a method thereof and a computer-readable recording medium having recorded thereon a program for realizing the method.

본 발명은 ATM 기반 IP 패킷을 IP 검색 및 처리 기능으로 전달하는 방식을 고속화하기 위하여 별도의 로컬버스와 DPRAM을 사용하는 방식에 관한 것으로서, 종래 방식의 경우 ATM SAR(Segmentation and Re-assembly) 기능을 거친 IP 패킷을 32비트 33MHz로 동작하는 PCI(Peripheral Component Interface) 버스(Bus)를 통하여 IP 검색 및 처리 기능으로 전달하거나 전달 받는 방식으로서 IP 패킷의 전달속도가 저속인 경우 이와 같은 방식을 적용할 수 있지만 IP 패킷의 전달속도가 622Mbps 이상의 경우 공용 버스 구조인 PCI 버스를 사용하여 IP 패킷을 동시에 전달하거나 전달 받는 것은 기본 구조상 불가능하다는 문제점을 가지고 있다. 이에 대한 예를 설명하면 다음과 같다.The present invention relates to a method of using a separate local bus and DPRAM in order to speed up the method of delivering ATM-based IP packets to the IP search and processing function, and in the conventional method, the ATM segmentation and re-assembly function Coarse IP packets are delivered or received through the IP (Bus) Peripheral Component Interface (PCI) bus operating at 32-bit 33 MHz. However, when the IP packet transmission rate is 622Mbps or more, it is impossible to simultaneously transmit or receive IP packets using the PCI bus, which is a common bus structure. An example of this is as follows.

도1은 종래의 PCI 버스를 통한 IP 패킷 전달 구조에 대한 설명도이다. 도1에 도시된 바와 같이, 물리계층 프로세서(101)에서 수신 UTOPIA(Universal Test Operations PHY Interface for ATM) 인터페이스를 통하여 전달되는 셀은 ATM SAR 프로세서(102)의 IP 패킷 재결합 작업을 거쳐서 IP 패킷 메모리(103)에 전달되며, IP 패킷 메모리(103)내의 IP 패킷을 PCI 버스를 통하여 고속 IP 룩-업(Look-Up) 및 패킷 처리 기능 프로세서(104)가 처리하는 구조이다. 고속 IP 룩-업 및 패킷 처리 기능 프로세서(104)에서 처리된 IP 패킷은 IP 패킷 메모리(103)를 통하여 ATM SAR 프로세서(102)로 전달되어 IP 패킷에 대한 ATM 분할작업을 거친 후, 송신 UTOPIA 인터페이스를 통하여 물리계층 프로세서(101)로 전달된다. PCI 버스가 통상적으로 많이 사용하는 33MHz 33비트 급일 경우 1Gbps 정도의 데이터 버스 속도를 지원할 수 있으므로 물리계층 프로세서(101)를 통하여 전달되는 IP 패킷 데이터가 155Mbps 급인 경우 IP 패킷을 송/수신하는 것을 감안하더라도 순수 데이터 속도가 약 310Mbps 정도이므로 1Gbps 급의 PCI 버스를 통하여 IP 패킷을 전달할 수 있지만 PCI 버스에 다양한 고속의 네트워크 디바이스들이 접속될 경우 PCI 버스를 사용하기 위해 충돌이 발생할 수 있으므로 요구되는 버스 대역 사용을 보장 받을 수도 없다. 최근 IP 패킷을 전달하는 선로의 속도는 고속 ISP(Internet Service Provider) 서버의 경우 622Mbps급이 기본으로서 이 경우 IP 패킷의 송/수신을 고려하며 최소한 1.244Gbps 급의 전용버스가 필요하므로 1Gbps 급의 PCI 버스는 기본 구조상 적용이 불가능한 문제점이 있다.1 is an explanatory diagram of an IP packet delivery structure through a conventional PCI bus. As shown in FIG. 1, a cell transmitted from a physical layer processor 101 through a receiving Universal Test Operations PHY Interface for ATM (UTOPIA) interface undergoes an IP packet recombination operation of an ATM SAR processor 102 to perform an IP packet memory ( 103, a high-speed IP look-up and packet processing function processor 104 processes the IP packet in the IP packet memory 103 through the PCI bus. The IP packet processed by the fast IP look-up and packet processing function processor 104 is passed through the IP packet memory 103 to the ATM SAR processor 102 for ATM segmentation on the IP packet, and then sent to the sending UTOPIA interface. It is transmitted to the physical layer processor 101 through. If the PCI bus is a commonly used 33MHz 33-bit class can support a data bus speed of about 1Gbps, even if the IP packet data transmitted through the physical layer processor 101 is 155Mbps, even if considering the IP packet transmission / reception Since the pure data rate is about 310 Mbps, IP packets can be delivered through the 1 Gbps PCI bus. However, when various high-speed network devices are connected to the PCI bus, conflicts may occur to use the PCI bus. There is no guarantee. The speed of the line that delivers the latest IP packet is 622Mbps in case of high speed ISP (Internet Service Provider) server. In this case, considering the transmission / reception of IP packet, it requires a dedicated bus of at least 1.244Gbps. There is a problem that the bus is not applicable to the basic structure.

본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, ATM 기반 IP 패킷을 IP 검색 및 처리 기능으로 전달하기 위하여 고속의 별도 로컬버스와 이중포트램을 사용하는 방식으로서, IP 패킷의 전달속도를 고속화하기 위하여 별도 로컬버스와 이중포트램을 사용하는 이중포트램을 이용한 아이피 패킷 전달 장치 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.The present invention has been proposed to solve the above problems, and uses a high-speed separate local bus and dual port RAM to deliver ATM-based IP packets to IP searching and processing functions. The purpose of the present invention is to provide an IP packet transmission device using a dual port RAM using a separate local bus and a dual port RAM, and a computer readable recording medium recording a program for realizing the method. have.

도1은 종래의 PCI 버스를 통한 IP 패킷 전달 구조에 대한 설명도.1 is an explanatory diagram of an IP packet forwarding structure through a conventional PCI bus;

도2는 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치의 일실시예 구성도.2 is a block diagram of an embodiment of an IP packet delivery apparatus using DPRAM according to the present invention.

도3은 상기 도2에서 UTOPIA+를 통한 IP 패킷 전달 프레임에 대한 일실시예의 설명도.3 is an explanatory diagram of an embodiment of an IP packet forwarding frame via UTOPIA + in FIG. 2;

도4는 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 패킷 전달 기능 프로세서의 구조를 나타낸 일실시예 구성도.FIG. 4 is a diagram illustrating the structure of a packet forwarding function processor in an IP packet forwarding apparatus using DPRAM according to the present invention; FIG.

도5는 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 로컬 메모리의 구조를 나타낸 일실시예 설명도.FIG. 5 is a diagram for explaining an embodiment of a local memory in an IP packet delivery apparatus using DPRAM according to the present invention; FIG.

도6은 상기 도5의 로컬 메모리에 포함된 송신 버퍼 큐의 내부 구조에 대한 일실시예 설명도.FIG. 6 is a diagram for explaining an internal structure of a transmission buffer queue included in the local memory of FIG. 5; FIG.

도7은 상기 도5의 로컬 메모리에 포함된 송신 상태 큐의 내부 구조에 대한 일실시예 설명도.FIG. 7 is a diagram for explaining an internal structure of a transmission status queue included in the local memory of FIG. 5; FIG.

도8은 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 DPRAM 패킷 분할부의 일실시예 흐름도.8 is a flowchart illustrating an embodiment of a DPRAM packet splitter in an IP packet transfer apparatus using DPRAM according to the present invention.

도9는 상기 도5의 로컬 메모리에 포함된 프리 버퍼 큐의 내부 구조에 대한 일실시예 설명도.FIG. 9 is a diagram for explaining an internal structure of a free buffer queue included in the local memory of FIG. 5; FIG.

도10은 상기 도5의 로컬 메모리에 포함된 수신 상태 큐의 내부 구조에 대한 일실시예 흐름도.FIG. 10 is a flow diagram of an embodiment of an internal structure of a reception status queue included in the local memory of FIG.

도11은 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 DPRAM 패킷 결합부의 일실시예 흐름도.11 is a flowchart illustrating an embodiment of a DPRAM packet combiner in an IP packet delivery apparatus using DPRAM according to the present invention.

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

201 : 물리계층 프로세서 202 : ATM SAR 프로세서201: physical layer processor 202: ATM SAR processor

203 : 고속 IP 룩-업 및 패킷 처리 기능 프로세서203: Fast IP Lookup and Packet Processing Function Processor

204 : 패킷 전달 기능 프로세서 205 : DPRAM 패킷 메모리204: packet forwarding processor 205: DPRAM packet memory

206 : 로컬 메모리206: local memory

상기 목적을 달성하기 위한 본 발명은, 이중포트램(DPRAM)을 이용한 아이피(IP) 패킷 전달 장치에 있어서, ATM(Asynchronous Transfer Mode) 셀을 전달하기 위한 셀 전달수단; 상기 셀 전달수단으로부터 ATM 셀을 재결합하여 IP 패킷을 구성한 후 패킷 전달수단으로 송신하고, 상기 패킷 전달수단을 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후 상기 셀 전달수단으로 전송하는 셀 처리수단; 상기 셀 처리수단을 통해 전달되는 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후 로컬 메모리의 IP 패킷 수신 상태 큐를 통하여 패킷 처리수단으로 전달하고, 상기 패킷 처리수단을 통해 처리된 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후 상기 로컬 메모리의 IP 패킷 송신 버퍼 큐를 통하여 상기 셀 처리 수단으로 전달하는 상기 패킷 전달수단; 및 상기 이중포트램 패킷 메모리를 통해 전달된 IP 패킷을 IP 상위 프로토콜 처리기능에 따라 처리하기 위한 상기 패킷 처리수단을 포함하는 이중포트램을 이용한 아이피 패킷 전달 장치를 제공한다.According to an aspect of the present invention, there is provided an IP packet transfer apparatus using a dual port RAM (DPRAM), comprising: cell transfer means for transferring an Asynchronous Transfer Mode (ATM) cell; Cell processing means for recombining the ATM cells from the cell forwarding means to form an IP packet and transmitting the packet to the packet forwarding means, dividing the IP packet received through the packet forwarding means into an ATM cell, and then transmitting the packet to the cell forwarding means. ; The IP packet transmitted through the cell processing means is stored in the dual port RAM packet memory and then transferred to the packet processing means through an IP packet reception status queue of a local memory, and the IP packet processed through the packet processing means is transferred. The packet forwarding means for storing in a dual port RAM packet memory and delivering the packet to the cell processing means through an IP packet transmission buffer queue of the local memory; And the packet processing means for processing the IP packet transmitted through the dual port RAM packet memory according to an IP upper protocol processing function.

또한, 본 발명은, 이중포트램을 이용한 아이피 패킷 전달 장치에 적용되는 아이피 패킷 전달 방법에 있어서, 상기 셀 처리 수단이 상기 셀 전달 수단으로부터 ATM 셀을 재결합하여 IP 패킷을 구성한 후 상기 패킷 전달 수단으로 송신하는 제1단계; 상기 패킷 전달 수단이 상기 상기 셀 처리 수단을 통해 전달되는 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 수신 상태 큐를 통하여 상기 패킷 처리 수단으로 전달하는 제2단계; 상기 패킷 처리 수단이 상기 이중포트램 패킷 메모리를 통해 전달된 IP 패킷을 IP 상위 프로토콜 처리기능에 따라 처리하는 제3단계; 상기 패킷 전달 수단이 상기 패킷 처리 수단을 통해 처리된 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 송신 버퍼 큐를 통하여 상기 셀 처리 수단으로 전달하는 제4단계; 및 상기 셀 처리 수단이 상기 패킷 전달 수단을 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후 상기 셀 전달 수단으로 전송하는 제5단계를 포함하는 이중포트램을 이용한 아이피 패킷 전달 방법을 제공한다.In addition, the present invention, in the IP packet forwarding method applied to the IP packet forwarding apparatus using a dual port RAM, wherein the cell processing means recombines ATM cells from the cell forwarding means to configure the IP packet to the packet forwarding means A first step of transmitting; A second step of the packet forwarding means storing the IP packet transmitted through the cell processing means in the dual port RAM packet memory and then delivering the IP packet to the packet processing means through an IP packet reception status queue of the local memory; A third step of processing, by the packet processing means, an IP packet transferred through the dual port RAM packet memory according to an IP upper protocol processing function; A fourth step of the packet forwarding means storing the IP packet processed through the packet processing means in the dual port RAM packet memory and then delivering the IP packet to the cell processing means through an IP packet transmission buffer queue of the local memory; And a fifth step of the cell processing means dividing the IP packet received through the packet forwarding means into an ATM cell form and then transmitting the IP packet to the cell forwarding means.

또한, 본 발명은, 프로세서를 구비한 이중포트램을 이용한 아이피 패킷 전달 장치에, 상기 셀 처리 수단이 상기 셀 전달 수단으로부터 ATM 셀을 재결합하여 IP 패킷을 구성한 후 상기 패킷 전달 수단으로 송신하는 제1기능; 상기 패킷 전달 수단이 상기 상기 셀 처리 수단을 통해 전달되는 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 수신 상태 큐를 통하여 상기 패킷 처리 수단으로 전달하는 제2기능; 상기 패킷 처리 수단이 상기 이중포트램 패킷 메모리를 통해 전달된 IP 패킷을 IP 상위 프로토콜 처리기능에 따라 처리하는 제3기능; 상기 패킷 전달 수단이 상기 패킷 처리 수단을 통해 처리된 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 송신 버퍼 큐를 통하여 상기 셀 처리 수단으로 전달하는 제4기능; 및 상기 셀 처리 수단이 상기 패킷 전달 수단을 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후 상기 셀 전달 수단으로 전송하는 제5기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.The present invention also provides a first IP packet forwarding apparatus using a dual port RAM having a processor, wherein the cell processing unit reassembles an ATM cell from the cell forwarding unit to form an IP packet and then transmits the IP packet to the packet forwarding unit. function; A second function of the packet forwarding means storing the IP packet transmitted through the cell processing means in the dual port RAM packet memory and then delivering the IP packet to the packet processing means through an IP packet reception status queue of the local memory; A third function of processing, by the packet processing means, an IP packet transferred through the dual port RAM packet memory according to an IP upper protocol processing function; A fourth function of the packet forwarding means storing the IP packet processed through the packet processing means in the dual port RAM packet memory and then transferring the IP packet to the cell processing means through an IP packet transmission buffer queue of the local memory; And a computer-readable recording medium having recorded thereon a program for realizing a fifth function of dividing an IP packet received through the packet forwarding means into an ATM cell form after the cell forwarding means is transmitted to the cell forwarding means. do.

상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.도2는 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치의 일실시예 구성도이다. 도2에 도시된 바와 같이, DPRAM을 이용한 IP 패킷 전달 장치는, 유토피아(UTOPIA) 인터페이스를 통하여 ATM 셀을 송수신하는 물리계층 프로세서(201)와, 물리계층 프로세서(201)에서 수신 UTOPIA 인터페이스를 통하여 전달되는 셀을 IP 패킷 재결합 작업을 통해 패킷 버퍼에 저장하고, 패킷 전달 기능 프로세서(204)를 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후, 송신 UTOPIA 인터페이스를 통하여 물리계층 프로세서(201)로 전송하는 ATM SAR 프로세서(202)와, DPRAM 패킷 메모리(205)를 통해 수신된 IP 패킷을 처리한 후 DPRAM 패킷 메모리(205)를 통해 전달하는 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)와, DPRAM 패킷 메모리(205)에 IP 패킷을 저장할 공간이 있을 경우 ATM SAR 프로세서(202)로부터 IP 패킷을 32비트 단위의 수신 UTOPIA+인터페이스를 통하여 읽어내어 DPRAM 패킷 메모리(205)에 저장한 후, 로컬 메모리(206)의 IP 패킷 수신 상태 큐를 통하여 고속 IP 룩-업(Look-Up) 및 패킷 처리 기능 프로세서(203)로 64비트 단위의 고속 로컬 버스를 통하여 전달하고, 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)에서 처리된 IP 패킷을 역으로 64비트 단위의 고속 로컬 버스를 통하여 DPRAM 패킷 메모리(205)에 저장한 후, 로컬 메모리(206)의 IP 패킷 송신 버퍼 큐를 통하여 전달하며, ATM SAR 프로세서(202)가 IP 패킷을 받을 준비가 되어 있을 경우 송신 UTOPIA+인터페이스를 통하여 IP 패킷을 전달하는 기능을 제공하기 위한 패킷 전달 기능 프로세서(204)를 구비한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the accompanying drawings. FIG. 2 is a diagram illustrating an embodiment of an IP packet delivery apparatus using a DPRAM according to the present invention. As shown in FIG. 2, an IP packet transmission apparatus using DPRAM includes a physical layer processor 201 transmitting and receiving an ATM cell through a UTOPIA interface, and a physical layer processor 201 transmitting the received packet through a receiving UTOPIA interface. The cell is stored in a packet buffer through an IP packet recombination operation, the IP packet received through the packet forwarding function processor 204 is divided into ATM cells, and then transmitted to the physical layer processor 201 through the transmitting UTOPIA interface. An ATM SAR processor 202, a fast IP look-up and packet processing function processor 203 for processing the IP packet received through the DPRAM packet memory 205 and then passing it through the DPRAM packet memory 205; DPRAM packet memory (205) packets DPRAM memory taking the IP packet from the ATM SAR processor 202. If there is room for the IP packet read by the reception unit in the 32-bit UTOPIA interface + 205 and then, via the IP packet reception status queue of local memory 206, to a high speed IP look-up and packet processing function processor 203 via a 64-bit high speed local bus. And store the IP packet processed by the fast IP look-up and packet processing function processor 203 in the DPRAM packet memory 205 through the fast local bus in a 64-bit unit, and then the IP of the local memory 206. A packet forwarding function processor 204 for forwarding through a packet transmit buffer queue and providing a function of forwarding an IP packet over a transmitting UTOPIA + interface when the ATM SAR processor 202 is ready to receive an IP packet. do.

이와 같이, 고속의 전용 로컬버스와 DPRAM을 사용하여 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)로 IP 패킷을 전달하고, PCI 인터페이스를 통하여 ATM SAR 프로세서(202)에 대한 구성관리, 연결관리 등의 실시간이 요구되지 않는 기능만을 수행할 경우 기존에 PCI 버스가 가지고 있는 기본 구조상의 문제점을 해결할 수 있다.도3은 상기 도2에서 UTOPIA+를 통한 IP 패킷 전달 프레임에 대한 일실시예의 설명도로서, UTOPIA+인터페이스를 통하여 패킷 전달 기능 프로세서(204)와 ATM SAR 프로세서(202) 사이에 IP 패킷을 전달하는 방식을 도시한 것이다.As such, the IP packet is delivered to the high-speed IP look-up and packet processing function processor 203 using a high-speed dedicated local bus and DPRAM, and the configuration management and connection management of the ATM SAR processor 202 through the PCI interface. When performing only a function that does not require real time, such as a conventional structural problem that the PCI bus has can be solved. FIG. 3 is an explanatory diagram of an embodiment of an IP packet transmission frame through UTOPIA + in FIG. As an example, a method of transferring IP packets between the packet forwarding function processor 204 and the ATM SAR processor 202 through the UTOPIA + interface is shown.

ATM SAR 프로세서(202)는 결합이 완성된 IP 패킷을 UTOPIA+인터페이스를 통하여 고속으로 전달할 때 IP 패킷을 일정길이로 분할하여 전달한다. 예를 들면, 도3에 나타나 있는 바와 같이 전달할 IP 패킷(301)은 64바이트 단위의 일정길이로 분할된 후, IP 패킷의 처음에 해당되는 BOM(Begging of Message)(302)와 IP 패킷의 마지막에 해당되는 EOM(End of Message)(304)와 그 사이의 정보인 COM(Continuity of Message)(303)으로 분할되어 전달된다. 이는, IP 패킷이 64 바이트의 배수가 되어야 한다는 제약조건이 없으므로 EOM(304)의 경우 64 바이트 이하의 값을 취할 수 있다.The ATM SAR processor 202 divides and delivers the IP packet by a predetermined length when the combined IP packet is delivered at high speed through the UTOPIA + interface. For example, as shown in FIG. 3, the IP packet 301 to be delivered is divided into a predetermined length of 64 bytes, and then a BOM (Begging of Message) 302 corresponding to the beginning of the IP packet and the last of the IP packet are divided. It is divided into an EOM (End of Message) 304 and a Continuity of Message (COM) 303 which is information therebetween. This may take a value of 64 bytes or less for the EOM 304 since there is no constraint that the IP packet should be a multiple of 64 bytes.

이와 같이, 패킷 전달 기능 프로세서(204)와 ATM SAR 프로세서(202)는 IP 패킷을 상호 전달할 때 일정길이로 분할하여 UTOPIA+인터페이스를 통하여 전달하며, 분할된 IP 패킷을 UTOPIA+인터페이스를 통하여 수신한 후 IP 패킷을 재결합하는 기능을 제공한다.도4는 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 패킷 전달 기능 프로세서의 구조를 나타낸 일실시예 구성도이다. 도4에 도시된 바와 같이, 패킷 전달 기능 프로세서의 구조는, 수신 셀 버퍼(402)에 셀을 저장할 공간이 있을 경우 ATM SAR 프로세서(202)로부터IP 패킷 분할 정보를 받아들여 저장하는 기능을 제공하기 위한 수신 UTOPIA+처리부(401)와, 수신 셀 버퍼(402)에 셀이 있을 경우 이를 DPRAM 패킷 메모리(205)내에 IP 패킷을 재결합하기 위한 DPRAM 패킷 결합부(403)와, 송신 셀 버퍼(406)에 셀을 저장할 공간이 있을 경우 DPRAM 패킷 메모리 (205)내에 저장된 IP 패킷을 분할하여 저장하기 위한 DPRAM 패킷 분할부(405)와, 송신 셀 버퍼(406)에 저장되어 있는 셀을 송신 UTOPIA+인터페이스를 통하여 전달하기 위한 송신 UTOPIA+처리부(407)와, DPRAM 패킷 결합부(403)와 DPRAM 패킷 분할부(405)가 DPRAM 패킷 메모리(205)를 액세스하는 것을 중재하기 위한 DPRAM 액세스 중재부(404)와, 패킷 전달 기능 프로세서(204)의 동작모드, 동작상태, 인터럽트 발생 등을 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203) 사이에 통신하기 위한 내부 레지스터(408)를 구비한다.In this way, after the packet forwarding processor 204 and the ATM SAR processor 202 is divided into a predetermined length when the cross-forward IP packets transmitted through the UTOPIA + interface, and receives the divided IP packet through the UTOPIA + interface 4 provides a function of recombining IP packets. FIG. 4 is a diagram illustrating a structure of a packet forwarding function processor in an IP packet forwarding apparatus using DPRAM according to the present invention. As shown in Fig. 4, the structure of the packet forwarding processor provides a function of receiving and storing IP packet fragmentation information from the ATM SAR processor 202 when there is space in the receiving cell buffer 402 to store a cell. A receiving UTOPIA + processing unit 401, a DPRAM packet combining unit 403 for recombining IP packets in the DPRAM packet memory 205, if there are cells in the receiving cell buffer 402, and a transmitting cell buffer 406. if there is a room for the cell DPRAM packet memory 205 in the stored IP and DPRAM packet division 405 for storing to fragment the packet, it transmits the cell stored in the transmit cell buffer (406) UTOPIA + interface A transmission UTOPIA + processing unit 407 for forwarding, and a DPRAM access arbitration unit 404 for arbitrating access of the DPRAM packet memory 205 by the DPRAM packet combiner 403 and DPRAM packet divider 405; Packet forwarding process An internal register 408 is provided for communicating the operating mode, operating state, interrupt generation, etc. of the server 204 between the fast IP look-up and packet processing function processor 203.

여기서, 수신 셀 버퍼(402)와 송신 셀 버퍼(406)는 2개의 64바이트 단위의 셀 버퍼로 구성되어 셀을 수신함과 동시에 셀을 전달할 수 있어서 셀의 송/수신에 따른 별도의 처리 지연이 일어나지 않게 한다.Here, the receiving cell buffer 402 and the transmitting cell buffer 406 are composed of two 64-byte cell buffers to receive the cell and simultaneously deliver the cell, so that a separate processing delay occurs according to the transmission / reception of the cell. Do not

그리고, 내부 레지스터(408)는 도5에 제시한 로컬 메모리(206)내의 다양한 큐를 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)가 액세스할 수 있는 제어기능도 제공한다.The internal register 408 also provides control for the fast IP look-up and packet processing function processor 203 to access the various queues in the local memory 206 shown in FIG.

도5는 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 로컬 메모리의 구조를 나타낸 일실시예 설명도이다. 도5에 도시된 바와 같이, 로컬메모리(206)내에는 송신 버퍼 큐(TBQ)(501), 송신 상태 큐(TSQ)(502), 프리 버퍼 큐(FBQ)(503), 수신 상태 큐(RSQ)(504)가 존재한다.FIG. 5 is a diagram illustrating a structure of a local memory in an IP packet delivery apparatus using DPRAM according to the present invention. As shown in Fig. 5, in the local memory 206, a transmission buffer queue (TBQ) 501, a transmission status queue (TSQ) 502, a free buffer queue (FBQ) 503, and a reception status queue (RSQ). 504 is present.

송신 버퍼 큐(501)는 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)가 DPRAM 패킷 메모리(205)에 전달한 IP 패킷 정보를 DPRAM 패킷 분할부(405)에 알려주고, 송신 상태 큐(502)는 DPRAM 패킷 분할부(405)에서 IP 패킷을 분할한 상태 정보를 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)에게 전달하며, 프리 버퍼 큐(503)는 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)가 DPRAM 패킷 메모리(205)내에 IP 패킷을 저장 가능한 프리 버퍼 영역에 대한 정보를 DPRAM 패킷 결합부(403)에게 알려주기 위하여 사용되며, 수신 상태 큐(504)는 DPRAM 패킷 결합부(403)가 IP 패킷을 재결합한 상태를 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)에게 알려주기 위하여 사용된다.The transmit buffer queue 501 informs the DPRAM packet divider 405 of the IP packet information transmitted by the fast IP look-up and packet processing function processor 203 to the DPRAM packet memory 205, and the transmit status queue 502 The DPRAM packet divider 405 transmits the state information obtained by dividing the IP packet to the fast IP look-up and packet processing function processor 203, and the free buffer queue 503 is a fast IP look-up and packet processing function processor. 203 is used to inform the DPRAM packet combiner 403 of information on the free buffer area capable of storing IP packets in the DPRAM packet memory 205, and the reception status queue 504 is a DPRAM packet combiner 403. ) Is used to inform the fast IP look-up and packet processing function processor 203 of the recombination of the IP packets.

도6은 상기 도5의 로컬 메모리에 포함된 송신 버퍼 큐의 내부 구조에 대한 일실시예 설명도이다. 도6에 도시된 바와 같이, 송신 버퍼 큐(501)는 회전 링(Circular Ring) 구조로서 송신 버퍼 큐(501)에 대한 베이스 어드레스 정보는 TBQ 베이스 포인터(601)가 제공한다. 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)는 전달할 IP 패킷이 있을 경우 TBQ 베이스 포인터(601)로부터 송신 IP 패킷에 대한 정보(603)를 송신 버퍼 큐(501)를 통하여 순차적으로 전달하며, 송신 버퍼 큐(501)의 마지막 영역까지 사용할 경우 송신 버퍼 큐(501)의 처음 영역부터 작업을 재개하는 과정을 반복 수행한다.FIG. 6 is a diagram for explaining an internal structure of a transmission buffer queue included in the local memory of FIG. As shown in FIG. 6, the transmit buffer queue 501 is a circular ring structure, and the base address information for the transmit buffer queue 501 is provided by the TBQ base pointer 601. FIG. The fast IP look-up and packet processing function processor 203 sequentially delivers information 603 about the transmission IP packet from the TBQ base pointer 601 through the transmission buffer queue 501 when there is an IP packet to forward, When the last area of the transmission buffer queue 501 is used, the process of resuming work from the first area of the transmission buffer queue 501 is repeated.

DPRAM 패킷 분할부(405)는 송신 버퍼 큐(501)를 순차적으로 검색하면서 송신 IP 패킷에 대한 정보가 있을 경우 이에 대한 정보(603)를 사용하여 IP 패킷을 분할하는 기능을 제공한다. 현재 TBQ 사용 포인터(602)는 DPRAM 패킷 분할부(405)가 앞으로 IP 패킷 분할작업을 할 IP 패킷에 대한 정보(603)를 가지고 있는 송신 버퍼 큐(501) 내의 엔트리 위치 정보를 나타낸다.The DPRAM packet dividing unit 405 sequentially searches the transmission buffer queue 501 and provides a function of dividing the IP packet using information 603 about the transmission IP packet if there is information on the transmission IP packet. The current TBQ usage pointer 602 indicates the entry position information in the transmission buffer queue 501 which has information 603 for the IP packet for which the DPRAM packet divider 405 will perform the IP packet dividing operation in the future.

송신 패킷에 대한 정보(603)에는 1비트의 플래그 정보 F와 16비트의 송신 패킷 버퍼 포인터와 32비트의 송신 패킷의 길이 정보로 이루어진다. 플래그 정보 F는 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)가 송신 패킷에 대한 정보(603)를 송신 버퍼 큐(501)에 저장하면서 '1'로 셋팅하며 DPRAM 패킷 분할부(405)가 송신 패킷에 대한 정보(603)를 송신 버퍼 큐(501)로부터 가져가면서 '0'으로 리셋 함으로써 송신 버퍼 큐(501)에서 유효한 엔트리 영역에 대한 세마포어(Semaphore) 정보를 제공한다. 16비트의 송신 패킷 버퍼 포인터는 DPRAM 패킷 메모리(205)내의 송신 패킷 버퍼(예 : 송신 패킷 버퍼(604) 또는 송신 패킷 버퍼(606)),의 위치를 나타낸다. 32비트의 송신 패킷의 길이 정보는 송신 IP 패킷의 길이를 나타낸다.The information 603 for the transmission packet includes 1-bit flag information F, 16-bit transmission packet buffer pointer, and 32-bit transmission packet length information. The flag information F is set to '1' while the fast IP look-up and packet processing function processor 203 stores the information 603 for the transmission packet in the transmission buffer queue 501, and the DPRAM packet division section 405 By taking the information 603 for the transmission packet from the transmission buffer queue 501 and resetting it to '0', semaphore information for a valid entry area in the transmission buffer queue 501 is provided. The 16-bit transmit packet buffer pointer indicates the position of the transmit packet buffer (eg, transmit packet buffer 604 or transmit packet buffer 606) in the DPRAM packet memory 205. The length information of the 32-bit transmission packet indicates the length of the transmission IP packet.

송신 IP 패킷의 길이가 송신 패킷 버퍼의 크기보다 클 경우 송신 패킷 버퍼(604)의 마지막 영역에 있는 포인터를 사용하여 연속되는 송신 패킷 버퍼(605)를 링크할 수도 있으며, 이 경우 DPRAM 패킷 분할부(405)는 32비트의 송신 패킷의 길이 정보 만큼 송신 패킷 버퍼(604)와 송신 패킷 버퍼(605)를 사용하여 IP 패킷을 분할하는 작업을 수행한다.If the length of the transmission IP packet is larger than the size of the transmission packet buffer, the pointers in the last area of the transmission packet buffer 604 may be used to link successive transmission packet buffers 605, in which case the DPRAM packet divider ( 405 divides the IP packet using the transmission packet buffer 604 and the transmission packet buffer 605 by the length information of the 32-bit transmission packet.

도7은 상기 도5의 로컬 메모리에 포함된 송신 상태 큐의 내부 구조에 대한 일실시예 설명도이다. 도7에 도시된 바와 같이, 송신 상태 큐(502)는 회전 링(Circular Ring) 구조로서 송신 상태 큐(502)에 대한 베이스 어드레스 정보는 TSQ 베이스 포인터(701)가 제공한다. DPRAM 패킷 분할부(405)는 IP 패킷 분할 작업 완료된 IP 패킷이 있을 경우 TSQ 베이스 포인터(701)로부터 송신 완료 IP 패킷에 대한 정보(703)를 송신 상태 큐(502)를 통하여 순차적으로 전달하며, 송신 상태 큐(502)의 마지막 영역까지 사용할 경우 송신 상태 큐(502)의 처음 영역부터 작업을 재개하는 과정을 반복한다.FIG. 7 is a diagram for explaining an internal structure of a transmission status queue included in the local memory of FIG. As shown in Fig. 7, the transmission status queue 502 is a circular ring structure, and the base address information for the transmission status queue 502 is provided by the TSQ base pointer 701. The DPRAM packet splitter 405 sequentially transmits the information 703 for the transmitted IP packet from the TSQ base pointer 701 through the transmission status queue 502 when there is an IP packet that has been completed with the IP packet splitting operation. When the last area of the status queue 502 is used, the process of resuming work from the first area of the transmission status queue 502 is repeated.

고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)는 송신 상태 큐(502)를 순차적으로 검색하면서 송신 완료된 IP 패킷에 대한 정보를 파악할 수 있다. 현재 TSQ 사용 포인터(702)는 DPRAM 패킷 분할부(405)가 분할 완료된 IP 패킷에 대한 상태 정보를 저장할 송신 상태 큐(502) 내의 위치 정보를 나타내는 것이다.The fast IP look-up and packet processing function processor 203 may find information about the transmitted IP packet while sequentially searching the transmission status queue 502. The current TSQ usage pointer 702 indicates the positional information in the transmission status queue 502 in which the DPRAM packet divider 405 stores state information about the divided IP packet.

송신 패킷에 대한 상태 정보(703)에는 1비트의 플래그 정보 F와 16비트의 송신 완료 버퍼 포인터 정보로 이루어진다. 플래그 정보 F는 DPRAM 패킷 분할부(405)가 송신 완료한 패킷에 대한 정보(703)를 송신 상태 큐(502)에 저장하면서 '1'로 셋팅하며, 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)에서 이 송신 패킷에 대한 정보(703)를 송신 상태 큐(502)로부터 가져가면서 '0'으로 리셋 함으로서 송신 상태 큐(502)의 유효한 엔트리 영역에 대한 세마포어(Semaphore) 정보를 제공한다.The status information 703 for the transmission packet includes one bit of flag information F and 16 bits of transmission completion buffer pointer information. The flag information F is set to '1' while the DPRAM packet divider 405 stores the information 703 of the transmitted packet in the transmission status queue 502, and sets the fast IP look-up and packet processing function processor ( At 203, the information 703 for this transmission packet is taken from the transmission status queue 502 and reset to '0' to provide semaphore information for the valid entry area of the transmission status queue 502.

16비트의 송신 완료 버퍼 포인터는 DPRAM 패킷 메모리(205)내의 송신 패킷 버퍼(예 : 송신 패킷 버퍼(704) 또는 송신 패킷 버퍼 (706))의 위치를 나타낸다. 또한, 16비트의 송신 완료 버퍼 포인터는 송신 IP 패킷의 길이가 송신 패킷 버퍼의 크기보다 커서 패킷 버퍼가 링크 되어있을 경우(예 : 송신 패킷 버퍼(704) 및 송신 패킷 버퍼(705))에 IP 패킷의 첫 번째 송신 패킷 버퍼(704)만을 알려준다. 이와 같이 16비트의 송신 완료 버퍼 포인터 값을 사용하여 IP 룩-업 및 패킷 처리 기능 프로세서(203)는 DPRAM 패킷 메모리(205) 내에서 전송 완료된 IP 패킷 버퍼의 영역을 파악하여 새로운 IP 패킷의 전달에 재사용한다.The 16-bit transmit completion buffer pointer indicates the position of the transmit packet buffer (eg, transmit packet buffer 704 or transmit packet buffer 706) in the DPRAM packet memory 205. In addition, the 16-bit transmit completion buffer pointer is used when the packet buffer is linked because the length of the transmit IP packet is larger than the size of the transmit packet buffer (for example, the transmit packet buffer 704 and the transmit packet buffer 705). Tells only the first transmission packet buffer 704. Using the 16-bit transmit completion buffer pointer value, the IP look-up and packet processing function processor 203 identifies the area of the transmitted IP packet buffer in the DPRAM packet memory 205 to transfer the new IP packet. Reuse

도8은 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 DPRAM 패킷 분할부의 일실시예 흐름도이다. 도8에 도시된 바와 같이, DPRAM 패킷 분할부(405)는 송신 버퍼 큐(501) 내 송신 패킷이 있는지를 확인하여(801) 있을 경우 송신 버퍼 큐(501)로부터 송신 패킷 버퍼 정보(603)를 가져오고(802), 송신 패킷이 없을 경우 (801)과정을 반복 수행한다.8 is a flowchart illustrating an embodiment of a DPRAM packet splitter in an IP packet transfer apparatus using DPRAM according to the present invention. As shown in FIG. 8, the DPRAM packet partitioning unit 405 checks whether there is a transmission packet in the transmission buffer queue 501 (801) and, if there is, transmits the transmission packet buffer information 603 from the transmission buffer queue 501. If there is no transmission packet (802), the process is repeated (801).

이후, 송신 셀 버퍼(406)에 셀을 전달이 가능한지를 확인하여(803) 가능한 경우 송신 패킷 버퍼로부터 셀을 읽어 셀 버퍼에 전달하며(804), 그렇지 않을 경우 (803)과정을 반복 수행한다.Thereafter, the cell is transmitted to the transmission cell buffer 406 to determine whether the cell can be delivered (803). If possible, the cell is read from the transmission packet buffer and transferred to the cell buffer (804). Otherwise, the process is repeated (803).

이렇게, 송신 셀 버퍼에 셀을 전달하는 작업을 완료한 후, 송신 IP 패킷의 분할 작업이 완료되었는지를 확인하여(805) IP 패킷의 분할이 완료될 경우 현재 송신 상태 큐(502)를 사용하여 송신 패킷에 대한 정보(703)를 전달한 후(806), 새로운 IP 패킷에 대한 송신 작업을 재개하기 위하여 송신 버퍼 큐 내 송신 패킷이 있는지를 확인하는 과정(801)으로 진행하고, 송신 IP 패킷의 분할이 완료되지 않았을 경우 현재 사용중인 송신 IP 패킷 버퍼의 분할 작업이 완료되었는지를 확인한다(807).In this way, after the operation of delivering the cell to the transmission cell buffer is completed, it is confirmed whether the division of the transmission IP packet is completed (805), and when the division of the IP packet is completed, transmission is performed using the current transmission status queue 502. After passing information 703 on the packet (806), the process proceeds to step 801 to check whether there is a transmission packet in the transmission buffer queue in order to resume the transmission operation for the new IP packet. If it is not completed, it is checked whether the partitioning operation of the transmission IP packet buffer currently being used is completed (807).

확인결과, 현재 사용중인 송신 IP 패킷 버퍼의 분할 작업이 완료되었을 경우 현재 송신 패킷 버퍼로부터 다음 송신 패킷 버퍼 포인터를 사용하여 다음 송신패킷의 위치를 파악하여 IP 패킷의 분할 작업을 수행한 후(808), 송신 셀 버퍼에 셀 전달이 가능한지를 확인하는 과정(803)부터 반복 수행하고, 그렇지 않을 경우 바로 현재 송신 버퍼를 사용하여 IP 패킷의 분할 작업을 하도록 (803)과정을 반복 수행한다.As a result of the check, when the partitioning operation of the currently used transmission IP packet buffer is completed, the location of the next transmission packet is determined by using the next transmission packet buffer pointer from the current transmission packet buffer, and then the IP packet division is performed (808). In step 803, it is repeated to check whether the cell can be delivered to the transmission cell buffer. Otherwise, the process 803 is repeated to divide the IP packet using the current transmission buffer.

도9는 상기 도5의 로컬 메모리에 포함된 프리 버퍼 큐의 내부 구조에 대한 일실시예 설명도이다. 도9에 도시된 바와 같이, 프리 버퍼란 수신되는 IP 패킷을 저장할 수 있는 버퍼를 의미하며, 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)가 프리 버퍼 큐(503)를 통하여 이와 같은 정보를 전달하게 된다. 프리 버퍼 큐(503)는 회전 링(Circular Ring) 구조로서 프리 버퍼 큐(503)에 대한 베이스 어드레스 정보는 FBQ 베이스 포인터(901)가 제공한다. 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)는 프리 버퍼가 있을 경우 FBQ 베이스 포인터(901)로부터 프리 버퍼에 대한 정보(903)를 프리 버퍼 큐(503)를 통하여 순차적으로 전달하며 프리 버퍼 큐(503)의 마지막 영역까지 사용할 경우 프리 버퍼 큐(503)의 처음 영역부터 작업을 재개하는 과정을 반복한다.FIG. 9 is a diagram for explaining an internal structure of a free buffer queue included in the local memory of FIG. As shown in FIG. 9, the pre-buffer means a buffer capable of storing received IP packets, and the fast IP look-up and packet processing function processor 203 transmits such information through the pre-buffer queue 503. Will be delivered. The pre buffer queue 503 is a circular ring structure, and the base address information for the pre buffer queue 503 is provided by the FBQ base pointer 901. The fast IP look-up and packet processing function processor 203 sequentially passes information 903 about the pre-buffer from the FBQ base pointer 901 through the pre-buffer queue 503, if there is a pre-buffer, and the pre-buffer queue. When using the last area of 503, the process of resuming work from the first area of the free buffer queue 503 is repeated.

DPRAM 패킷 결합부(403)는 프리 버퍼 큐(503)를 순차적으로 검색하면서 수신 IP 패킷이 있을 경우 프리 버퍼를 사용하여 IP 패킷을 결합하는 기능을 제공한다. 현재 FBQ 사용 포인터(902)는 DPRAM 패킷 결합부(403)가 앞으로 사용할 프리 버퍼에 대한 정보(903)를 가지고 있는 프리 버퍼 큐(503) 내의 엔트리에 대한 위치 정보를 나타낸다.The DPRAM packet combiner 403 sequentially searches the pre-buffer queue 503 and provides a function of combining IP packets using a free buffer when there is a received IP packet. The current FBQ usage pointer 902 indicates the location information for the entry in the free buffer queue 503 that holds information 903 for the free buffer that the DPRAM packet combiner 403 will use in the future.

프리 버퍼에 대한 정보(903)에는 1비트의 플래그 정보 F와 16비트의 프리 버퍼 포인터 정보로 이루어진다. 플래그 정보 F는 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)가 프리 버퍼 정보(903)를 프리 버퍼 큐(503)에 저장하면서 '1'로 셋팅하며, DPRAM 패킷 결합부(403)가 프리 버퍼에 대한 정보(903)를 프리 버퍼 큐(503)로부터 가져가면서 '0'으로 리셋 함으로서 프리 버퍼 큐(503)내에서 유효한 엔트리 영역에 대한 세마포어(Semaphore) 정보를 제공한다. 16비트의 프리 버퍼 포인터는 DPRAM 패킷 메모리(205)내의 수신 패킷 버퍼(904)의 위치를 나타낸다.The information 903 on the prebuffer consists of flag information F of 1 bit and prebuffer pointer information of 16 bits. The flag information F is set to '1' while the fast IP look-up and packet processing function processor 203 stores the pre buffer information 903 in the pre buffer queue 503, and the DPRAM packet combiner 403 is free. By taking the information about the buffer 903 from the free buffer queue 503 and resetting it to '0', semaphore information on the valid entry area in the free buffer queue 503 is provided. The 16-bit free buffer pointer indicates the position of the receive packet buffer 904 in the DPRAM packet memory 205.

도10은 상기 도5의 로컬 메모리에 포함된 수신 상태 큐의 내부 구조에 대한 일실시예 흐름도이다. 도10에 도시된 바와 같이, 수신 상태 큐란 수신 완료된 IP 패킷의 상태를 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)에 전달하기 위한 큐이다. 수신 상태 큐(504)는 회전 링(Circular Ring) 구조로서 수신 상태 큐(504)에 대한 베이스 어드레스 정보는 RSQ 베이스 포인터(1001)가 제공한다. DPRAM 패킷 결합부(403)는 IP 패킷에 대한 결합이 완성될 경우 수신 상태 큐(504)의 RSQ 베이스 포인터(1001)로부터 수신 패킷 정보(1003)를 수신 상태 큐(504)를 통하여 순차적으로 전달하며 수신 상태 큐(504)의 마지막 영역까지 사용할 경우 수신 상태 큐(504)의 처음 영역부터 작업을 재개하는 과정을 반복한다.FIG. 10 is a flowchart illustrating an internal structure of a reception status queue included in the local memory of FIG. 5. As shown in Fig. 10, the reception status queue is a queue for transferring the status of the received IP packet to the fast IP look-up and packet processing function processor 203. The reception status queue 504 is a circular ring structure, and the base address information for the reception status queue 504 is provided by the RSQ base pointer 1001. The DPRAM packet combiner 403 sequentially transfers the received packet information 1003 from the RSQ base pointer 1001 of the receive status queue 504 through the receive status queue 504 when the combining with the IP packet is completed. When the last area of the reception status queue 504 is used, the process of resuming work from the first area of the reception status queue 504 is repeated.

고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)는 수신 상태 큐(504)를 순차적으로 검색하면서 수신 IP 패킷에 상태 정보(1003)를 수집하게 된다. 현재 RSQ 사용 포인터(1002)는 DPRAM 패킷 결합부(403)가 앞으로 IP 패킷 결합이 완성된 IP패킷에 대한 정보를 저장할 수신 상태 큐(504)내의 엔트리에 대한 위치 정보를 나타낸다.The fast IP look-up and packet processing function processor 203 sequentially retrieves the receive status queue 504 and collects state information 1003 in the received IP packet. The current RSQ usage pointer 1002 indicates the location information for the entry in the reception status queue 504 in which the DPRAM packet combiner 403 will store information on the IP packet in which IP packet combining has been completed in the future.

수신 패킷 정보(1003)에는 1 비트의 플래그 정보 F와 16비트의 수신 패킷 버퍼 포인터 정보 및 32 비트의 수신 패킷 길이 정보로 이루어진다. 플래그 정보 F는 DPRAM 패킷 결합부(403)가 수신 패킷 정보(1003)를 수신 상태 큐(504)에 저장하면서 '1'로 셋팅하며, 고속 IP 룩-업 및 패킷 처리 기능 프로세서(203)가 수신 패킷 정보(1003)를 수신 상태 큐(504)로부터 가져가면서 '0'으로 리셋 함으로서 수신 상태 큐(504) 내에서 유효한 엔트리 영역에 대한 세마포어(Semaphore) 정보를 제공한다. 16비트의 수신 패킷 버퍼 포인터는 DPRAM 패킷 메모리(205)내의 수신 패킷 버퍼(예 : 수신 패킷 버퍼(1004) 또는 수신 패킷 버퍼(1006))의 위치를 나타낸다. 32 비트의 수신 패킷 길이 정보는 수신된 IP 패킷의 길이를 나타낸다.The received packet information 1003 includes flag information F of 1 bit, received packet buffer pointer information of 16 bits, and received packet length information of 32 bits. The flag information F is set to '1' while the DPRAM packet combiner 403 stores the received packet information 1003 in the receive status queue 504, and the fast IP look-up and packet processing function processor 203 receives it. The packet information 1003 is taken from the reception status queue 504 and reset to '0' to provide semaphore information for a valid entry area in the reception status queue 504. The 16-bit receive packet buffer pointer indicates the position of the receive packet buffer (eg, receive packet buffer 1004 or receive packet buffer 1006) in the DPRAM packet memory 205. The received packet length information of 32 bits indicates the length of the received IP packet.

수신 IP 패킷의 길이가 수신 버퍼의 크기보다 클 경우 새롭게 사용하는 수신 패킷 버퍼(예 : 수신 패킷 버퍼(1005))에 대한 포인터 정보를 이전 수신 패킷 버퍼(904)의 다음 포인터 영역에 표기하는 방식으로, 수신 패킷 버퍼를 링크 함으로서 동일한 크기의 프리 버퍼를 사용하여 가변 길이의 IP 패킷을 저장 가능한 구조를 제공한다.If the length of the received IP packet is larger than the size of the receive buffer, the pointer information for the newly used receive packet buffer (for example, the receive packet buffer 1005) is displayed in the next pointer area of the previous receive packet buffer 904. By linking the received packet buffer, a structure capable of storing variable length IP packets using a free buffer of the same size is provided.

도11은 본 발명에 따른 DPRAM을 이용한 IP 패킷 전달 장치 중 DPRAM 패킷 결합부의 일실시예 흐름도이다. 도11에 도시된 바와 같이, DPRAM 패킷 결합부(403)는 프리 버퍼 큐(503) 내에 프리 버퍼가 있는지를 확인하여(1101) 있을 경우 프리 버퍼 큐(503)로부터 프리 버퍼 정보(903)를 가져오고(1102), 프리 버퍼가 없을 경우 (1101)과정을 반복 수행한다.11 is a flowchart illustrating an embodiment of a DPRAM packet combiner in an IP packet delivery apparatus using DPRAM according to the present invention. As shown in FIG. 11, the DPRAM packet combiner 403 checks whether there is a prebuffer in the prebuffer queue 503 (1101), and if so, obtains the prebuffer information 903 from the prebuffer queue 503. In step 1102, if there is no free buffer, the process is repeated 1101.

이후, 프리 버퍼에 저장 예정인 IP 패킷 정보가 BOM(302)인지를 확인하여(1103) 아닐 경우 수신 패킷 버퍼의 링크 작업이 필요하므로 현재 프리 버퍼의 다음 포인터에 이전 수신 패킷 버퍼의 포인터 정보를 저장하여 수신 패킷 버퍼의 링크 작업을 수행하게 되며(1104), 프리 버퍼에 저장할 IP 패킷 정보가 BOM(302)일 경우 별도의 수신 패킷 버퍼에 대한 링크 작업은 하지 않는다.After that, it is determined whether the IP packet information to be stored in the free buffer is the BOM 302 (1103). If not, link operation of the received packet buffer is required. Therefore, pointer information of the previous received packet buffer is stored in the next pointer of the current free buffer. The link operation of the received packet buffer is performed (1104). If the IP packet information to be stored in the free buffer is the BOM 302, the link operation of the received packet buffer is not performed.

이후, 수신 셀 버퍼(406) 내에 수신 셀이 있는지를 확인하여(1105) 있을 경우 프리 패킷 버퍼에 수신 셀의 재결합 작업을 수행하고(1106), 수신 셀이 없으면 수신 셀 버퍼(406) 내에 셀이 있는지를 확인하는 과정(1105)부터 반복 수행한다.Thereafter, if there is a receiving cell in the receiving cell buffer 406 (1105), if there is a receiving cell in the free packet buffer, a recombination operation of the receiving cell is performed (1106). Repeat step 1105 to check whether there is a check.

이어서, 이전 수신 셀이 EOM(304)인지를 확인하여(1107) EOM일 경우 IP 패킷의 결합이 완성된 단계이므로 수신 상태 큐(504)에 수신 패킷에 대한 결합 정보를 저장한 후(1108), 프리 버퍼 큐내에 프리 버퍼가 있는지를 확인하는 과정(1101)으로 진행하고, EOM이 아닐 경우 현재 사용중인 프리 패킷 버퍼의 사용이 완료되었는지를 확인하여(1109) 사용이 완료되었을 경우 새로운 프리 버퍼가 필요하므로 프리 버퍼 큐(503)내 프리 버퍼가 있는지를 확인하는 과정(1101)으로 진행하고, 그렇지 않을 경우 기존의 프리 버퍼를 사용하여 IP 패킷의 결합 작업을 계속하도록 수신 셀 버퍼(406) 내에 셀이 있는지를 확인하는 과정(1105)부터 반복 수행한다.Subsequently, it is determined whether the previous receiving cell is the EOM 304 (1107), and in the case of the EOM, since the combining of the IP packets is completed, the combining information about the received packets is stored in the receiving status queue 504 (1108). The process proceeds to checking whether there is a free buffer in the free buffer queue (1101), and if it is not an EOM, checks whether the use of the free packet buffer currently being used is completed (1109). Therefore, the process proceeds to step 1101 to check whether there is a free buffer in the free buffer queue 503, otherwise the cell in the receiving cell buffer 406 to continue combining IP packets using the existing free buffer. Repeat step 1105 to check whether there is a check.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크등)에 저장될 수 있다.The method of the present invention as described above may be implemented as a program and stored in a computer-readable recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.).

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.

상기한 바와 같은 본 발명은, ATM 기반 IP 패킷을 IP 검색 및 처리 기능으로 전달하는 방식을 고속 로컬버스와 DPRAM을 사용하여 전달하는 방식으로서 IP 패킷의 전달속도가 고속인 경우에 IP 검색 및 처리 기능과의 IP 패킷 버퍼 처리를 IP 검색 및 처리 기능의 처리 속도에 맞게 흐름제어를 하면서 전달하는 방식으로서 이와 같은 구조에서 로컬버스와 DPRAM은 ATM SAR과 IP 검색 및 처리 기능 사이에서 전용으로 운용될 수 있으므로 ATM 기반 IP 패킷을 IP 검색 및 처리 기능에 고속으로 전달할 수 있는 효과가 있다.As described above, the present invention provides a method of delivering an ATM-based IP packet to an IP searching and processing function using a high-speed local bus and DPRAM, and an IP searching and processing function when the IP packet is delivered at a high speed. IP packet buffer processing is delivered with the flow control according to the processing speed of IP search and processing functions. In this structure, local bus and DPRAM can be dedicated between ATM SAR and IP search and processing functions. It has the effect of delivering ATM-based IP packets to IP search and processing at high speed.

Claims (10)

이중포트램(DPRAM)을 이용한 아이피(IP) 패킷 전달 장치에 있어서,In the IP packet transfer device using a dual port RAM (DPRAM), ATM(Asynchronous Transfer Mode) 셀을 전달하기 위한 셀 전달수단;Cell transfer means for transferring an Asynchronous Transfer Mode (ATM) cell; 상기 셀 전달수단으로부터 ATM 셀을 재결합하여 IP 패킷을 구성한 후 패킷 전달수단으로 송신하고, 상기 패킷 전달수단을 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후 상기 셀 전달수단으로 전송하는 셀 처리수단;Cell processing means for recombining the ATM cells from the cell forwarding means to form an IP packet and transmitting the packet to the packet forwarding means, dividing the IP packet received through the packet forwarding means into an ATM cell, and then transmitting the packet to the cell forwarding means. ; 상기 셀 처리수단을 통해 전달되는 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후 로컬 메모리의 IP 패킷 수신 상태 큐를 통하여 패킷 처리수단으로 전달하고, 상기 패킷 처리수단을 통해 처리된 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후 상기 로컬 메모리의 IP 패킷 송신 버퍼 큐를 통하여 상기 셀 처리 수단으로 전달하는 상기 패킷 전달수단; 및The IP packet transmitted through the cell processing means is stored in the dual port RAM packet memory and then transferred to the packet processing means through an IP packet reception status queue of a local memory, and the IP packet processed through the packet processing means is transferred. The packet forwarding means for storing in a dual port RAM packet memory and delivering the packet to the cell processing means through an IP packet transmission buffer queue of the local memory; And 상기 이중포트램 패킷 메모리를 통해 전달된 IP 패킷을 IP 상위 프로토콜 처리기능에 따라 처리하기 위한 상기 패킷 처리수단The packet processing means for processing the IP packet transmitted through the dual port RAM packet memory according to an IP upper protocol processing function 을 포함하는 이중포트램을 이용한 아이피 패킷 전달 장치.IP packet transmission device using a dual port RAM including a. 제1항에 있어서,The method of claim 1, 상기 패킷 전달수단과 상기 셀 처리 수단 간에 IP 패킷을 전달할 때,When transferring an IP packet between the packet forwarding means and the cell processing means, IP 패킷을 소정길이로 분할하여 IP 패킷의 처음에 해당되는 BOM(Begging of Message)과 IP 패킷의 마지막에 해당되는 EOM(End of Message)과 그 사이의 정보인 COM(Continuity of Message)으로 분할하여 전달하는 것을 특징으로 하는 이중포트램을 이용한 아이피 패킷 전달 장치.By dividing the IP packet into predetermined lengths, the IP packet is divided into a BOM (Begging of Message) corresponding to the beginning of the IP packet, an End of Message (EOM) corresponding to the end of the IP packet, and a continuity of message (COM) in between. IP packet transmission device using a dual port RAM, characterized in that for transmitting. 제1항 또는 제2항에 있어서,The method according to claim 1 or 2, 상기 패킷 전달수단은,The packet delivery means, 수신 셀 버퍼에 셀을 저장할 공간이 있을 경우, 상기 셀 처리 수단으로부터 IP 패킷 분할 정보를 받아들여 저장하기 위한 수신 유토피아(UTOPIA+) 처리부;If there is room for the cells in the cell reception buffer, IP packet fragmentation information received Utopia (UTOPIA +) processing unit for storing the accepted from the cell processing means; 상기 수신 셀 버퍼에 셀이 있을 경우, 상기 이중포트램 패킷 메모리내에 IP 패킷을 재결합하기 위한 이중포트램 패킷 결합부;A dual port RAM packet combiner for reassembling an IP packet into the dual port RAM packet memory when there is a cell in the receiving cell buffer; 송신 셀 버퍼에 셀을 저장할 공간이 있을 경우, 상기 이중포트램 패킷 메모리 내에 저장된 IP 패킷을 분할하여 저장하기 위한 이중포트램 패킷 분할부;A dual port RAM packet divider for dividing and storing an IP packet stored in the dual port RAM packet memory when there is space to store a cell in a transmission cell buffer; 상기 송신 셀 버퍼에 저장되어 있는 셀을 상기 셀 처리 수단으로 전달하기 위한 송신 유토피아(UTOPIA+) 처리부;Transmission UTOPIA (UTOPIA +) processor for transmitting the cell stored in said cell buffer into said transmission cell processing means; 상기 이중포트램 패킷 결합부 및 상기 이중포트램 패킷 분할부가 상기 이중포트램 패킷 메모리를 액세스하는 것을 중재하기 위한 이중포트램 액세스 중재부; 및A dual port RAM access arbiter for arbitrating the dual port RAM packet combiner and the dual port RAM packet divider to access the dual port RAM packet memory; And 상기 패킷 전달 수단의 동작모드, 동작상태, 인터럽트 발생 정보를 상기 패킷 처리 수단으로 전달하는 내부 레지스터부An internal register for transmitting the operation mode, operation state, and interrupt occurrence information of the packet transfer means to the packet processing means 를 포함하는 이중포트램을 이용한 아이피 패킷 전달 장치.IP packet transmission device using a dual port RAM comprising a. 제3항에 있어서,The method of claim 3, 상기 수신 셀 버퍼 및 상기 송신 셀 버퍼는,The receiving cell buffer and the transmitting cell buffer, 2개의 64바이트 단위의 셀 버퍼로 구성되어 셀을 수신하고 셀을 전달하는 과정을 동시에 수행할 수 있어, 셀의 송/수신에 따른 별도의 처리 지연이 일어나지 않게 하고,It consists of two 64-byte cell buffers to simultaneously receive and forward cells, so that no additional processing delays occur due to cell transmission and reception. 상기 내부 레지스터부는,The internal register portion, 상기 로컬 메모리내의 다양한 큐를 상기 패킷 처리 수단이 액세스할 수 있도록 하는 것Allowing the packet processing means to access various queues in the local memory 을 특징으로 하는 이중포트램을 이용한 아이피 패킷 전달 장치.IP packet transmission device using a dual port RAM, characterized in that. 제1항의 이중포트램을 이용한 아이피 패킷 전달 장치에 적용되는 아이피 패킷 전달 방법에 있어서,In the IP packet forwarding method applied to the IP packet forwarding apparatus using the dual port RAM of claim 1, 상기 셀 처리 수단이 상기 셀 전달 수단으로부터 ATM 셀을 재결합하여 IP 패킷을 구성한 후 상기 패킷 전달 수단으로 송신하는 제1단계;A first step of the cell processing means for reassembling an ATM cell from the cell forwarding means to form an IP packet and then transmitting the IP packet to the packet forwarding means; 상기 패킷 전달 수단이 상기 상기 셀 처리 수단을 통해 전달되는 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 수신 상태 큐를 통하여 상기 패킷 처리 수단으로 전달하는 제2단계;A second step of the packet forwarding means storing the IP packet transmitted through the cell processing means in the dual port RAM packet memory and then delivering the IP packet to the packet processing means through an IP packet reception status queue of the local memory; 상기 패킷 처리 수단이 상기 이중포트램 패킷 메모리를 통해 전달된 IP 패킷을 IP 상위 프로토콜 처리기능에 따라 처리하는 제3단계;A third step of processing, by the packet processing means, an IP packet transferred through the dual port RAM packet memory according to an IP upper protocol processing function; 상기 패킷 전달 수단이 상기 패킷 처리 수단을 통해 처리된 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 송신 버퍼 큐를 통하여 상기 셀 처리 수단으로 전달하는 제4단계; 및A fourth step of the packet forwarding means storing the IP packet processed through the packet processing means in the dual port RAM packet memory and then delivering the IP packet to the cell processing means through an IP packet transmission buffer queue of the local memory; And 상기 셀 처리 수단이 상기 패킷 전달 수단을 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후 상기 셀 전달 수단으로 전송하는 제5단계A fifth step of the cell processing means dividing the IP packet received through the packet forwarding means into an ATM cell form and then transmitting the packet to the cell forwarding means; 를 포함하는 이중포트램을 이용한 아이피 패킷 전달 방법.IP packet delivery method using a dual port RAM comprising a. 제5항에 있어서,The method of claim 5, 상기 패킷 전달 수단과 상기 셀 처리 수단 간에 IP 패킷을 전달할 때,When transferring an IP packet between the packet forwarding means and the cell processing means, IP 패킷을 소정길이로 분할하여 IP 패킷의 처음에 해당되는 BOM(Begging of Message)과 IP 패킷의 마지막에 해당되는 EOM(End of Message)과 그 사이의 정보인 COM(Continuity of Message)으로 분할하여 전달하는 것을 특징으로 하는 이중포트램을 이용한 아이피 패킷 전달 방법.By dividing the IP packet into predetermined lengths, the IP packet is divided into a BOM (Begging of Message) corresponding to the beginning of the IP packet, an End of Message (EOM) corresponding to the end of the IP packet, and a continuity of message (COM) in between. IP packet transmission method using a dual port RAM, characterized in that for transmitting. 제5항에 있어서,The method of claim 5, 상기 패킷 전달수단은,The packet delivery means, 수신 셀 버퍼에 셀을 저장할 공간이 있을 경우, 상기 셀 처리 수단으로부터 IP 패킷 분할 정보를 받아들여 저장하기 위한 수신 유토피아(UTOPIA+) 처리부;If there is room for the cells in the cell reception buffer, IP packet fragmentation information received Utopia (UTOPIA +) processing unit for storing the accepted from the cell processing means; 상기 수신 셀 버퍼에 셀이 있을 경우, 상기 이중포트램 패킷 메모리내에 IP 패킷을 재결합하기 위한 이중포트램 패킷 결합부;A dual port RAM packet combiner for reassembling an IP packet into the dual port RAM packet memory when there is a cell in the receiving cell buffer; 송신 셀 버퍼에 셀을 저장할 공간이 있을 경우, 상기 이중포트램 패킷 메모리 내에 저장된 IP 패킷을 분할하여 저장하기 위한 이중포트램 패킷 분할부;A dual port RAM packet divider for dividing and storing an IP packet stored in the dual port RAM packet memory when there is space to store a cell in a transmission cell buffer; 상기 송신 셀 버퍼에 저장되어 있는 셀을 상기 셀 처리 수단으로 전달하기 위한 송신 유토피아(UTOPIA+) 처리부;Transmission UTOPIA (UTOPIA +) processor for transmitting the cell stored in said cell buffer into said transmission cell processing means; 상기 이중포트램 패킷 결합부 및 상기 이중포트램 패킷 분할부가 상기 이중포트램 패킷 메모리를 액세스하는 것을 중재하기 위한 이중포트램 액세스 중재부; 및A dual port RAM access arbiter for arbitrating the dual port RAM packet combiner and the dual port RAM packet divider to access the dual port RAM packet memory; And 상기 패킷 전달 수단의 동작모드, 동작상태, 인터럽트 발생 정보를 상기 패킷 처리 수단으로 전달하는 내부 레지스터부An internal register for transmitting the operation mode, operation state, and interrupt occurrence information of the packet transfer means to the packet processing means 를 포함하고,Including, 상기 로컬메모리는,The local memory, 상기 패킷 처리 수단이 상기 이중포트램 패킷 메모리에 전달한 IP 패킷 정보를 상기 이중포트램 패킷 분할부에 알려주기 위한 송신 버퍼 큐와, 상기 이중포트램 패킷 분할부를 통해 IP 패킷을 분할한 상태 정보를 전달하기 위한 송신 상태 큐와, 상기 패킷 처리 수단이 상기 이중포트램 패킷 메모리 내에 IP 패킷을 저장 가능한 프리 버퍼 영역에 대한 정보를 상기 이중포트램 패킷 결합부로 통보하기 위한 프리 버퍼 큐 및 상기 이중포트램 패킷 결합부가 IP 패킷을 재결합한 상태를 상기 패킷 처리 수단으로 통보하기 위한 수신 상태 큐를 포함하는 것을 특징으로 하는 이중포트램을 이용한 아이피 패킷 전달 방법.A transmission buffer queue for informing the dual port RAM packet divider of the IP packet information transmitted by the packet processing means to the dual port RAM packet memory, and state information obtained by dividing the IP packet through the dual port RAM packet divider. A pre-buffer queue and the dual-port RAM for transmitting a transmission status queue, and the packet processing means to inform the dual-port RAM packet combiner of information on a free buffer area capable of storing an IP packet in the dual-port RAM packet memory. And a receiving status queue for notifying the packet processing means of the recombination of the IP packet by the packet combining unit. 제7항에 있어서,The method of claim 7, wherein 상기 이중포트램 패킷 분할부에서의 패킷 분할 과정은,The packet division process in the dual port RAM packet division unit, 송신 버퍼 큐 내 송신 패킷의 여부에 따라, 송신 버퍼 큐로부터 송신 패킷 버퍼 정보를 불러오는 제6단계;A sixth step of retrieving transmission packet buffer information from the transmission buffer queue according to whether there is a transmission packet in the transmission buffer queue; 송신 셀 버퍼에 셀 전달이 가능한지의 여부에 따라, 상기 송신 패킷 버퍼로부터 셀을 읽어 셀 버퍼로 전달하는 제7단계;A seventh step of reading a cell from the transmission packet buffer and delivering it to a cell buffer according to whether or not cell transmission is possible to a transmission cell buffer; 상기 송신 셀 버퍼에 셀을 전달하는 작업을 완료한 후, 송신 IP 패킷의 분할 작업이 완료되었는지를 확인하여 IP 패킷의 분할이 완료될 경우 현재 송신 상태 큐를 사용하여 송신 패킷에 대한 정보를 전달한 후, 상기 제6단계로 진행하고, 송신 IP 패킷의 분할이 완료되지 않았을 경우 현재 사용중인 송신 IP 패킷 버퍼의 분할 작업이 완료되었는지를 확인하는 제8단계; 및After the operation of delivering the cell to the transmission cell buffer is completed, it is determined whether the division of the transmission IP packet is completed. When the division of the IP packet is completed, the information on the transmission packet is transmitted using the current transmission status queue. An eighth step of checking whether the division of the transmission IP packet buffer currently in use is completed when the division of the transmission IP packet is not completed; And 상기 제8단계의 확인결과에 따라, 현재 사용중인 송신 IP 패킷 버퍼의 분할 작업이 완료되면 현재 송신 패킷 버퍼로부터 다음 송신 패킷 버퍼 포인터를 사용하여 다음 송신 패킷의 위치를 파악하여 IP 패킷의 분할 작업을 수행하는 제9단계According to the checking result of the eighth step, when the dividing operation of the currently used transmission IP packet buffer is completed, the operation of dividing the IP packet is performed by identifying the position of the next transmission packet using the next transmission packet buffer pointer from the current transmission packet buffer. 9th Step 를 포함하는 이중포트램을 이용한 아이피 패킷 전달 방법.IP packet delivery method using a dual port RAM comprising a. 제7항에 있어서,The method of claim 7, wherein 상기 이중포트램 패킷 결합부에서의 패킷 결합 과정은,The packet combining process in the dual port RAM packet combiner, 상기 프리 버퍼 큐 내에 프리 버퍼가 있는지의 여부에 따라, 상기 프리 버퍼 큐로부터 프리 버퍼 정보를 가져오는 제6단계;Obtaining prebuffer information from the prebuffer queue according to whether a prebuffer is in the prebuffer queue; 상기 프리 버퍼에 저장 예정인 IP 패킷 정보가 BOM(Begging of Message)인지의 여부에 따라 현재 프리 버퍼의 다음 포인터에 이전 수신 패킷 버퍼의 포인터 정보를 저장하여 수신 패킷 버퍼의 링크 작업을 수행하는 제7단계;A seventh step of linking the received packet buffer by storing pointer information of the previous received packet buffer in the next pointer of the current free buffer according to whether the IP packet information scheduled to be stored in the free buffer is a BOM (Begging of Message) ; 상기 수신 셀 버퍼 내에 수신 셀이 있는지를 확인하여 있을 경우 프리 패킷 버퍼에 수신 셀의 재결합 작업을 수행하고, 수신 셀이 없으면 상기 수신 셀 버퍼 내에 셀이 있는지를 확인하는 과정으로 진행하는 제8단계; 및An eighth step of checking whether there is a receiving cell in the receiving cell buffer, performing recombination of the receiving cells in a free packet buffer, and checking whether there is a cell in the receiving cell buffer if there is no receiving cell; And 이전 수신 셀이 EOM(End of Message)인지를 확인하여 EOM일 경우 IP 패킷의 수신 상태 큐에 수신 패킷에 대한 결합 정보를 저장한 후, 상기 제6단계로 진행하고, EOM이 아닐 경우 현재 사용중인 프리 패킷 버퍼의 사용이 완료되었는지를 확인하여 사용이 완료되었을 경우 상기 제6단계로 진행하며, 그렇지 않을 경우 기존의 프리 버퍼를 사용하여 IP 패킷의 결합 작업을 계속하도록 수신 셀 버퍼 내에 셀이 있는지를 확인하는 상기 제8단계로 진행하는 제9단계After confirming whether the previous receiving cell is an end of message (EOM), in the case of the EOM, after storing the combined information about the received packet in the reception status queue of the IP packet, proceed to step 6 above. Check whether the use of the free packet buffer is completed, and if the use is completed, proceed to the sixth step above. Otherwise, check whether there is a cell in the receiving cell buffer to continue combining IP packets using the existing free buffer. Ninth step proceeding to the eighth step to confirm 를 포함하는 이중포트램을 이용한 아이피 패킷 전달 방법.IP packet delivery method using a dual port RAM comprising a. 프로세서를 구비한 제1항의 이중포트램을 이용한 아이피 패킷 전달 장치에,In the IP packet transmission device using a dual port RAM of claim 1 having a processor, 상기 셀 처리 수단이 상기 셀 전달 수단으로부터 ATM 셀을 재결합하여 IP 패킷을 구성한 후 상기 패킷 전달 수단으로 송신하는 제1기능;A first function of the cell processing means for reassembling an ATM cell from the cell forwarding means to form an IP packet and then transmitting it to the packet forwarding means; 상기 패킷 전달 수단이 상기 상기 셀 처리 수단을 통해 전달되는 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 수신 상태 큐를 통하여 상기 패킷 처리 수단으로 전달하는 제2기능;A second function of the packet forwarding means storing the IP packet transmitted through the cell processing means in the dual port RAM packet memory and then delivering the IP packet to the packet processing means through an IP packet reception status queue of the local memory; 상기 패킷 처리 수단이 상기 이중포트램 패킷 메모리를 통해 전달된 IP 패킷을 IP 상위 프로토콜 처리기능에 따라 처리하는 제3기능;A third function of processing, by the packet processing means, an IP packet transferred through the dual port RAM packet memory according to an IP upper protocol processing function; 상기 패킷 전달 수단이 상기 패킷 처리 수단을 통해 처리된 IP 패킷을 상기 이중포트램 패킷 메모리에 저장한 후, 상기 로컬 메모리의 IP 패킷 송신 버퍼 큐를 통하여 상기 셀 처리 수단으로 전달하는 제4기능; 및A fourth function of the packet forwarding means storing the IP packet processed through the packet processing means in the dual port RAM packet memory and then transferring the IP packet to the cell processing means through an IP packet transmission buffer queue of the local memory; And 상기 셀 처리 수단이 상기 패킷 전달 수단을 통해 수신된 IP 패킷을 ATM 셀 형태로 분할한 후 상기 셀 전달 수단으로 전송하는 제5기능A fifth function in which the cell processing means divides the IP packet received through the packet forwarding means into an ATM cell form and then transmits the IP packet to the cell forwarding means 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this.
KR10-2001-0050192A 2001-08-21 2001-08-21 IP packet transmission apparatus and method for using DPRAM KR100428714B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0050192A KR100428714B1 (en) 2001-08-21 2001-08-21 IP packet transmission apparatus and method for using DPRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0050192A KR100428714B1 (en) 2001-08-21 2001-08-21 IP packet transmission apparatus and method for using DPRAM

Publications (2)

Publication Number Publication Date
KR20030016558A KR20030016558A (en) 2003-03-03
KR100428714B1 true KR100428714B1 (en) 2004-04-30

Family

ID=27719949

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0050192A KR100428714B1 (en) 2001-08-21 2001-08-21 IP packet transmission apparatus and method for using DPRAM

Country Status (1)

Country Link
KR (1) KR100428714B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100804223B1 (en) * 2006-06-14 2008-02-18 (주) 시스메이트 IP Flow Information Management System using Dual Flow Record Memories
KR101047427B1 (en) * 2010-12-30 2011-07-08 국방과학연구소 Buffer managing apparatus and method thereof
CN102609378B (en) 2012-01-18 2016-03-30 中国科学院计算技术研究所 A kind of message type internal storage access device and access method thereof
KR101658360B1 (en) * 2015-07-06 2016-09-21 차보영 The transforming panel supplying electric power to catenary tram and the controlling system of a CCTV

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990004515A (en) * 1997-06-28 1999-01-15 김영환 Apparatus and method for processing asynchronous transfer mode application layer by central processing unit in asynchronous transfer mode terminal
KR20000069994A (en) * 1997-11-11 2000-11-25 마스다 노부유키 A wet gas processing method and the apparatus using the same
KR20010011741A (en) * 1999-07-30 2001-02-15 김진찬 Asynchronous transfer mode having no.7 signal mode
KR20010048910A (en) * 1999-11-30 2001-06-15 김진찬 Asymmetric Digital Subscriber Line MODEM unit for Personal Computers
KR20020040078A (en) * 2000-11-23 2002-05-30 박종섭 Processor board in local router of bsc system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990004515A (en) * 1997-06-28 1999-01-15 김영환 Apparatus and method for processing asynchronous transfer mode application layer by central processing unit in asynchronous transfer mode terminal
KR20000069994A (en) * 1997-11-11 2000-11-25 마스다 노부유키 A wet gas processing method and the apparatus using the same
KR20010011741A (en) * 1999-07-30 2001-02-15 김진찬 Asynchronous transfer mode having no.7 signal mode
KR20010048910A (en) * 1999-11-30 2001-06-15 김진찬 Asymmetric Digital Subscriber Line MODEM unit for Personal Computers
KR20020040078A (en) * 2000-11-23 2002-05-30 박종섭 Processor board in local router of bsc system

Also Published As

Publication number Publication date
KR20030016558A (en) 2003-03-03

Similar Documents

Publication Publication Date Title
US8843655B2 (en) Data transfer, synchronising applications, and low latency networks
US5761427A (en) Method and apparatus for updating host memory in an adapter to minimize host CPU overhead in servicing an interrupt
USRE44151E1 (en) Switching ethernet controller
US7281030B1 (en) Method of reading a remote memory
US7631106B2 (en) Prefetching of receive queue descriptors
US7751404B2 (en) Method, system, and computer program product for high performance bonding resequencing
US5491802A (en) Network adapter for inserting pad bytes into packet link headers based on destination service access point fields for efficient memory transfer
US6356962B1 (en) Network device and method of controlling flow of data arranged in frames in a data-based network
US8719456B2 (en) Shared memory message switch and cache
US6615282B1 (en) Adaptive messaging
US6944688B1 (en) Queuing system using dual receive FIFO
US20060212633A1 (en) Method and system of routing network-based data using frame address notification
EP1302853A2 (en) Data transfer, synchronising applications, and low latency networks
US10178018B2 (en) Transmission and reception devices
US7209489B1 (en) Arrangement in a channel adapter for servicing work notifications based on link layer virtual lane processing
KR100428714B1 (en) IP packet transmission apparatus and method for using DPRAM
US7292593B1 (en) Arrangement in a channel adapter for segregating transmit packet data in transmit buffers based on respective virtual lanes
US6601150B1 (en) Memory management technique for maintaining packet order in a packet processing system
JPH07111507A (en) Data reception system and communication controller
CN110765044A (en) Data packet transmission device and system
KR100236941B1 (en) Dma read and cell transfer apparatus of atm cell segmentation system
JP2004094931A (en) Network system and communication method in network
JP2001024661A (en) Multicast system and exchanging method therefor
KR100256679B1 (en) Atm cell segmentation

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: 20120330

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20130325

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee