KR20020081569A - The Management Method of tables that have entries of same size on CAM in Network device - Google Patents
The Management Method of tables that have entries of same size on CAM in Network device Download PDFInfo
- Publication number
- KR20020081569A KR20020081569A KR1020020053341A KR20020053341A KR20020081569A KR 20020081569 A KR20020081569 A KR 20020081569A KR 1020020053341 A KR1020020053341 A KR 1020020053341A KR 20020053341 A KR20020053341 A KR 20020053341A KR 20020081569 A KR20020081569 A KR 20020081569A
- Authority
- KR
- South Korea
- Prior art keywords
- size
- cam
- entry
- separator
- value
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/74591—Address table lookup; Address filtering using content-addressable memories [CAM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/54—Organization of routing tables
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 CAM(Content Addressable Memory)을 검색용 테이블로 사용하는 네트워크 장치와 관련된 것으로 특히 CAM내 관리하는 테이블들을 더욱 효율적으로 사용하기 위한 방법에 관한 것이다.The present invention relates to a network device using a CAM (Content Addressable Memory) as a table for retrieval, and more particularly to a method for more efficiently using tables managed in a CAM.
본 발명의 종래의 기술에는 CAM 방법과 Ternary CAM 방법이 있다.Conventional techniques of the present invention include a CAM method and a ternary CAM method.
CAM 방법은 CAM내에 있는 특정 엔트리를 하드웨어적으로 지정된 시간, 즉, 고정된 몇 clock cycle 내에 찾아주는 장점을 갖는다.The CAM method has the advantage of finding a particular entry in the CAM within a hardware-specified time, i.e., a fixed number of clock cycles.
네트워크 환경과 네트워크 장치 내에서 관리되는 테이블 구조와 같이 MAC 주소(130), IP 주소(140), {송신 IP 주소, 송신 포트 번호, 수신 IP 주소, 수신 포트 번호}(160) 등, 테이블 내 데이터 필드들로 이루어진 튜플을 CAM에 저장한 후 CAM을 검색해서 찾고 그 결과를 적절하게 패킷 송수신에 이용하는 것이다.Data in the table, such as MAC address 130, IP address 140, {sending IP address, sending port number, receiving IP address, receiving port number} 160, as in a table structure managed within a network environment and network devices. After storing a tuple of fields in the CAM, the CAM is searched and found, and the result is used for packet transmission and reception.
Ternary CAM 방법은 기존의 binary CAM이 가지던 0과 1 값뿐만 아니라 "don't care" 값을 가지는 것을 가능하게 함으로써 비교할 필요가 없는 엔트리내 특정 필드를 don't care로 둘 수 있다. 이것은 CAM을 다양한 어플리케이션으로의 응용을 훨씬 용이하게 해준다. 그래서 CAM은 고속을 요구하는 차세대 네트워크 장치에 빠질 수 없는 보조 메모리로 등장하게 되었다.The ternary CAM method enables not only the specific fields in the entries that do not need to be compared to the don't care by making it possible to have "don't care" values as well as the 0 and 1 values of the existing binary CAM. This makes it much easier to apply CAM to a variety of applications. CAM has emerged as a secondary memory that is indispensable for next-generation network devices that demand high speed.
본 발명과 관련된 종래의 특허에는 현재 출원 된 "다이나믹 콘텐츠 주소지정 가능 메모리(CAM) 셀(출원번호 10-2001-712599, 공개번호 특2002-0012168, 공개일자 2002년2월15일)" 이다. 이 특허는 CAM의 응용이라기보다는 CAM 자체 고유 기능에 관한 특허이다.Conventional patents related to the present invention are the presently filed "Dynamic Content Addressable Memory (CAM) Cells (Application No. 10-2001-712599, Publication No. 2002-0012168, Publication Date February 15, 2002)." This patent is not about the application of CAM but rather a patent on CAM's own functions.
종래의 기술인 CAM이 가지는 단점은 CAM의 특징상 엔트리 크기가 36bit, 72bit, 144bit, 288bit 등과 같이 고정되어 있다는 것과, 같은 크기의 엔트리를 가지는 테이블들 간에는 구분하여 검색할 방법이 없다는 것이다. 테이블이란 것은 CAM 사용자 입장에서 논리적으로 나눈 것이지, 하드웨어적으로 나뉘어져 있는 것이아니기 때문에 CAM 자체는 검색 시 검색하고자 하는 테이블 만을 검색하는 것이 아니라 검색용 엔트리 크기에 맞춰서 CAM 내 동일한 크기를 가지는 모든 엔트리들을 테이블 종류에 상관없이 검색하므로 본 발명을 발생시킨 효과를 가져왔다.The disadvantage of the conventional CAM is that the entry size is fixed, such as 36bit, 72bit, 144bit, 288bit, etc. due to the characteristics of the CAM, and there is no way of searching separately between tables having the same size. Because a table is logically divided from the CAM user's point of view, and not divided in hardware, the CAM itself does not search only the table to be searched. Instead, it searches all entries of the same size in the CAM according to the size of the search entry. Regardless of the type of search, the present invention produced the effect.
CAM내에 들어가는 테이블들의 실시 예에서 보면 사용자가 CAM 메모리(210) 내에 A 테이블(211)에서만 검색을 하려고 검색 명령을 내리게 되면, CAM내에 동일한 엔트리 크기를 가지는 B 테이블(212)이 있으므로 A 와 B 테이블은 동시에 검색되고 두 테이블 내에서 최초로 검색되어 일치된 엔트리 값을 그 결과로 얻게 될 것이다. 그래서 A 테이블에서 일치가 최초로 발생하면 원하는 결과 값을 얻을 수 있으나, 만일 B 테이블(212)에서 최초로 일치가 발생한 경우에는 원하는 결과를 얻지 못하게 되는 상황이 발생하게 된다.In the embodiment of the tables in the CAM, if the user issues a search command to search only in the A table 211 in the CAM memory 210, there is a B table 212 having the same entry size in the CAM. Will be searched at the same time and the first searched in the two tables will result in matching entry values. Thus, if a match occurs first in the A table, a desired result value may be obtained. However, if a match occurs first in the B table 212, a situation occurs in which a desired result is not obtained.
본 발명의 목적은 동일한 CAM 엔트리 크기를 가지는 다양한 테이블을 CAM내에 구성하는 네트워크 장치의 경우, 검색하지 못하는 단점을 갖는 종래의 기술을 극복할 수 있는 CAM 엔트리 추가 방법을 발명하였다. 본 발명으로 인하여 동일한 크기의 엔트리를 갖는 테이블의 경우 CAM 방식에서 검색하지 못한 단점을 극복하여 검색할 수 있게 되었다.It is an object of the present invention to invent a method for adding a CAM entry that can overcome the prior art, which has the disadvantage of not being able to search for a network device constituting various tables in the CAM having the same CAM entry size. According to the present invention, a table having an entry of the same size can be searched by overcoming a disadvantage that the CAM method cannot search.
제 1 도 네트워크 환경과 네트워크 장치 내에서 관리되는 테이블 구조Figure 1 Table structure managed within network environment and network device
제 2 도 CAM내에 들어가는 테이블들의 실시 예Figure 2 An embodiment of the tables falling within the CAM
제 3 도 네트워크 장치 내 패킷 전달 방법Figure 3 Packet forwarding method in a network device
제 4 도 CAM 테이블에 테이블 구분자 정보를 포함한 엔트리 추가 방법Fig. 4 How to add an entry including table separator information in CAM table
제 5 도 테이블 구분자 값 설정 방법Figure 5. How to Set Table Separator Values
제 6 도 CAM 테이블에 테이블 구분자 정보를 포함하여 추가한 엔트리 구조Fig. 6 Entry structure added by including table separator information in CAM table
제 7 도 테이블 구분자 값 설정 방법의 실시 예7 Example of Setting a Table Separator Value
제 8 도 CAM 테이블 내 엔트리 검색 방법Fig. 8 Entry Search Method in CAM Table
이하 첨부된 도면에 의해 본 발명의 구성을 설명하면 다음과 같다.Referring to the configuration of the present invention by the accompanying drawings as follows.
제 1 도 네트워크 환경과 네트워크 장치 내에서 관리되는 테이블 구조는 MAC 주소(130)와 IP 주소(140) 테이블을 갖는다. 이들 테이블은 스위치 라우터(120)내에 존재하며, 인터넷(110)을 통한 데이터 전송을 하거나, 스위치라우터(120)에 연결된 컴퓨터들(121,122, 123)과 데이터 전송을 한다. 발신지에서 착신지까지 데이터를 전송하기 위한 정보는 송신 IP 주소(150), 송신 포트 번호(160), 수신 IP 주소(170), 수신 포트 번호(180)등으로 구성한다. 이러한 정보를 갖는 테이블 내 데이터 필드들로 이루어진 튜플을 CAM에 저장한 후 CAM을 검색해서 찾고 그 결과를 적절하게 패킷 송수신에 이용하는 것이다.The table structure managed in the network environment and the network device has a MAC address 130 and an IP address 140 table. These tables exist in the switch router 120 and perform data transmission via the Internet 110 or data transmission with the computers 121, 122, and 123 connected to the switch router 120. Information for transmitting data from the source to the destination consists of a sending IP address 150, a sending port number 160, a receiving IP address 170, a receiving port number 180, and the like. A tuple of data fields in a table with this information is stored in the CAM, and then the CAM is searched for and used to properly transmit and receive packets.
제 2 도 CAM내에 들어가는 테이블들의 실시 예에서 보면 사용자가 CAM 메모리(210) 내에 36bit-size entry를 갖는 Table A(211)에서만 검색을 하려고 검색 명령을 내리게 되면, CAM내에 동일한 엔트리 크기를 가지는 Table A(211)와 Table B(212)가 있으므로 Table A(211)와 Table B(212)는 동시에 검색되고 두 테이블 내에서 최초로 검색되어 일치된 엔트리 값을 그 결과로 얻게 될 것이다. 그래서 원하는 엔트리가 A 테이블(211)에 있는 경우, Table A(211)에서 일치가 최초로 발생하면 원하는 결과 값을 얻을 수 있으나, 만일 Table B(212)에서 최초로 일치가 발생한 경우에는 원하는 결과를 얻지 못하게 되는 문제가 발생된다.FIG. 2 shows an example of tables in the CAM. When a user issues a search command to search only in Table A 211 having a 36-bit entry in the CAM memory 210, Table A having the same entry size in the CAM. Since there are 211 and Table B 212, Table A 211 and Table B 212 will be searched at the same time and the first searched in both tables will result in matching entry values. Therefore, if the desired entry is in the A table 211, if a match occurs first in Table A 211, a desired result value may be obtained. However, if a match occurs first in Table B 212, the desired result may not be obtained. Problem occurs.
72bit-size entry를 갖는 Table C(213)인 경우에는 동일한 크기가 하나 밖에 없으므로 항상 하나만 선택되므로 문제가 발생하지 않는다.In the case of Table C (213) having a 72-bit entry, there is no problem because only one is always selected because there is only one same size.
144bit-size entry를 갖는 Table D(214), Table E(215), Table F(216)인 경우에는 동일한 크기의 테이블이 CAM내에 3개가 있으므로 Table D와 Table E, Table F는 동시에 검색되고 3개 테이블 내에서 최초로 검색되어 일치된 엔트리 값을 그 결과로 얻게 될 것이다. 그래서 원하는 엔트리가 F 테이블(216)에 있는 경우,Table F(216)에서 일치가 최초로 발생하면 원하는 결과 값을 얻을 수 있으나, 만일 Table D(214) 또는 Table E(215)에서 최초로 일치가 발생한 경우에는 원하는 결과를 얻지 못하게 되는 문제가 발생된다.In the case of Table D (214), Table E (215), and Table F (216) with 144bit-size entry, there are three tables of the same size in CAM, so Table D, Table E, and Table F are searched simultaneously and three The first searched entry in the table will result in the matched entry value. Thus, if the desired entry is in the F table 216, if the match occurs first in Table F 216, the desired result can be obtained, but if the first match occurs in Table D (214) or Table E (215). The problem arises that the desired result is not achieved.
제 3 도 네트워크 장치 내 패킷 전달 방법은 테이블 초기화(310)에서 CAM 엔트리를 추가(311)하고, 데이터 패킷을 수신(320)하고, 테이블 검색 용 튜플을 작성(330)한 후에, 테이블을 검색(340), 테이블 검색 결과분석(350)을 한다. 테이블 검색 결과분석(350)에서는 CAM 엔트리 추가(351)를 하고 해당 포트로 패킷 송신 또는 폐기를 한다. 이와 같이 일련의 절차가 종료되면, 데이터 패킷 수신(320)으로 이동한다.FIG. 3 illustrates a method of packet forwarding within a network device. In the table initialization 310, a CAM entry is added 311, a data packet is received 320, a table search tuple is created 330, and a table is searched ( 340), the table search result analysis 350. In the table search result analysis 350, the CAM entry is added 351, and the packet is transmitted or discarded to the corresponding port. When the series of procedures is completed as described above, the process moves to the data packet reception 320.
즉, 먼저 CAM에 들어갈 테이블을 위한 기본적인 초기화 루틴을 실시한다. 이 때 필요한 테이블을 미리 만들 수도 있다. 그런 뒤 데이터 패킷을 수신하게 되는데 수신된 패킷이 유효한지 여부와 어떤 포트로 전달할 것인지를 결정하게 되는데 이때 사용되는 것이 CAM에 있는 테이블이다. 테이블을 초기화할 때(310)와 테이블의 검색 결과를 분석할 때(350) 'CAM 엔트리 추가'(311, 351)라는 항목이 있는데, 엔트리 추가시 동일한 CAM 엔트리 크기를 가지는 복수의 테이블을 구분할 수 있는 테이블 구분자를 테이블 내 하나의 필드로 추가하는 것이 이 발명의 요지이다.In other words, we first perform a basic initialization routine for a table to be in the CAM. You can also create the tables you need at this time. It then receives the data packet, which determines whether the received packet is valid and to which port to forward it. This is the table in the CAM. When initializing a table (310) and analyzing a search result of a table (350), there is an item called 'Add CAM entry' (311, 351). When adding an entry, a plurality of tables having the same CAM entry size can be distinguished. Adding a table delimiter as a field in a table is the subject of this invention.
제 4 도 CAM 테이블에 테이블 구분자 정보를 포함한 엔트리 추가 방법은 제 3 도의 CAM 엔트리 추가(311, 351)하는 방법을 나타낸 것이다. 종래의 기술에서 갖고 있지 못한 CAM 엔트리 추가(311, 351)하는 방법을 제 4 도에서 설명한다. 첫째로 만들고자하는 테이블의 엔트리 크기 값을 정의한다(401). 그리고 테이블의 엔트리 크기 값보다 큰 CAM 엔트리 크기 값을 정한다(402). 동일한 크기의 CAM 엔트리를 가지는 다른 테이블들 중에서 가장 큰 데이터 튜플을 가지는 테이블의 데이터 튜플 크기 값과 CAM 엔트리 크기 값의 차이가 테이블 구분자의 크기(403)가 되고, 테이블 구분자 크기를 비교(404)하여 테이블 구분자 크기가 0보다 크면, 테이블 구분자 크기 내에서 실제 구분자 값을 설정(405)하고, 테이블 구분자 크기를 비교(404)하여 테이블 구분자 크기가 0보다 작으면, CAM 엔트리 크기 선택(402)를 다시 실행한다.FIG. 4 illustrates a method for adding an entry including table separator information to a CAM table in FIG. 3. A method of adding CAM entries 311 and 351, which is not available in the prior art, is described in FIG. First, an entry size value of a table to be created is defined (401). A CAM entry size value larger than the entry size value of the table is determined (402). The difference between the data tuple size value and the CAM entry size value of the table having the largest data tuple among other tables with the same size CAM entry becomes the size of the table separator (403), and the table separator size is compared (404). If the table delimiter size is greater than zero, set the actual delimiter value within the table delimiter size (405), compare the table delimiter size (404), and if the table delimiter size is less than zero, select CAM entry size selection (402) again. Run
제 5 도 테이블 구분자 값 설정 방법은 테이블 구분자 값 설정 방법(405)을 구체적으로 설명하고 있다. 테이블 구분자 값의 범위는 0 ∼ (2테이블 구분자 크기-1) 까지 가능한데(501), 이것은 동일한 크기의 엔트리를 가지는 가능한 테이블의 수를 의미하기도 한다. 테이블에 첫 번째 테이블 값을 세팅(502)한다. 첫 번째 테이블의 구분자 값을 0으로 초기화(503)한 후, 만일 구분자 값을 비교(504)하여 2(테이블 구분자 크기)보다 작게 되면, 테이블에 동일크기의 엔트리를 가지는 다음 테이블을 세팅(505)하고 존재하는 테이블인가를 수행(506)하여, 아니면 종료(508)하고, 존재하는 테이블이면 해당 테이블의 구분자 값을 1씩 증가시켜서 구분자 값을 설정(507)한다. 만일 구분자 값을 비교(504)하여 2(테이블 구분자 크기)보다 크거나 같게 되면, 제 4 도에서의 테이블 구분자 크기 구하는 방법을 다시 수행(401)하여 더 큰 크기의 구분자 값을 할당할 수 있도록 한다. 이렇게 설정된 테이블 구분자 값은 테이블 내 엔트리 작성 시 함께 작성되어 하나의 엔트리가 된다(406).5 illustrates a table separator value setting method 405 in detail. The table delimiter value can range from 0 to (2 table delimiter size -1) (501), which also means the number of possible tables with entries of the same size. Set the first table value in the table (502). After initializing the delimiter value of the first table to 0 (503), if the delimiter value is compared (504) and smaller than 2 (table delimiter size) , the next table having the same size entry in the table is set (505). If the existing table is present (506), or terminates (508), and if the existing table, the delimiter value of the table is increased by one to set the delimiter value (507). If the delimiter value is compared (504) to be greater than or equal to 2 (table delimiter size) , the method of obtaining the table delimiter size in FIG. 4 is performed again (401) so that a larger delimiter value can be allocated. . The table delimiter value set in this way is created together when creating an entry in the table, and becomes one entry (406).
제 6 도 CAM 테이블에 테이블 구분자 정보를 포함하여 추가한 엔트리구조는 72 bit인 구조와 144 bit인 구조가 있다. 72bit 크기의 CAM 엔트리 내에 48bit의 검색 데이터 튜플을 가지는 경우 최대 24bit 크기의 테이블 구분자(601)가 있다. 그리고 검색하고자하는 데이터 튜플의 크기가 112bit이고 CAM이 지원 가능한 엔트리 크기가 144bit인 경우, 같은 크기의 144bit 엔트리를 가지는 또 다른 테이블의 테이블 구분자 값이 16bit 크기이면 다음과 같이 Reserved 필드(603)를 추가하여 테이블 구분자 값 크기를 16bit로 한다(602).FIG. 6 shows an entry structure added to the CAM table including the table separator information by 72 bits and 144 bits. In the case of having a 48-bit search data tuple in a 72-bit CAM entry, there is a table separator 601 having a maximum size of 24 bits. If the size of the data tuple to be searched is 112 bits and the CAM can support 144 bits, the reserved identifier field 603 is added as follows when the table separator value of another table having the same size of 144 bits is 16 bits. The table delimiter value is set to 16 bits (602).
제 7도는 테이블 구분자 값 설정 방법의 실시 예이다. 테이블 A와 B는 36bit 크기의 CAM 엔트리를 가지는 테이블로서 각각 0 값(701)과 1 값(702)을 테이블 구분자 값으로 사용하고 있다. 테이블 구분자의 크기는 6bit 이다. 테이블 D와 E, F는 144bit 크기의 CAM 엔트리를 가지는 테이블로서 각각 0 값(704)과 1 값(705), 그리고 2 값(706)을 테이블 구분자값으로 사용하고 있다. 테이블 구분자의 크기는 8bit 이다.7 is an embodiment of a method of setting a table separator value. Tables A and B are tables having 36-bit CAM entries, which use 0 value 701 and 1 value 702 as table delimiter values, respectively. The table separator is 6 bits in size. Tables D, E, and F are tables with 144-bit CAM entries, which use 0 value 704, 1 value 705, and 2 value 706 as table delimiter values, respectively. The table separator is 8 bits in size.
이렇게 테이블 엔트리 내에 테이블 구분자를 두어 테이블을 생성함으로써 동일한 크기의 CAM 엔트리를 가지는 두 개 이상의 테이블이 CAM에 있더라도 검색 시 검색 결과를 목적 테이블에서만 얻을 수 있게 되었다.By creating a table with table separators within the table entries, the search results can be obtained only from the target table even if two or more tables with the same size CAM entries exist in the CAM.
검색방법은 제 8 도에 나온 것과 같이 먼저 테이블 구분자와 함께 테이블 검색용 튜플을 작성(801)한 후, 검색용 테이블 구분자를 추가(802)하고, CAM검색을 실시(803)한다. match된 엔트리의 유무를 판단(804)하고, 없으면 검색하고자 하는엔트리가 해당 테이블에 없음(806)을 지정하고, 있으면 테이블 구분자에서 해당 테이블에서 찾음(805)을 실행한다. 이렇게 얻어진 결과는 제 3 도의 마지막으로 패킷을 폐기할 것인지 해당 목적지로 송신할 것인지를 결정(360)하게 된다.In the searching method, as shown in FIG. 8, a table search tuple is first created (801) with a table separator, a table separator for searching is added (802), and a CAM search is performed (803). It determines whether there is a matched entry (804), and if there is no entry to search for in the table (806), and if it finds in the table (805) in the table separator. The result thus obtained determines whether the packet is discarded at the end of FIG. 3 or transmitted to the corresponding destination (360).
이상에서 설명한바와 같이 본 발명은 동일한 엔트리 크기를 가지는 테이블을 구분할 수 있는 테이블 구분자를 테이블 엔트리 내에 둠으로써 동일한 크기의 엔트리를 갖는 경우 CAM 방식에서 검색하지 못한 단점을 극복하여 검색할 수 있게 되었다.As described above, in the present invention, a table delimiter capable of distinguishing a table having the same entry size may be placed in a table entry, thereby overcoming the shortcomings that the CAM method cannot search in the case of having an entry of the same size.
종래의 기술인 CAM이 가지는 단점은 CAM의 특징상 엔트리 크기가 36bit, 72bit, 144bit, 288bit 등과 같이 고정되어 있다는 것과 같은 크기의 엔트리를 가지는 테이블들 간에는 구분하여 검색할 수 있는 방법이 없다는 것이다. 이러한 단점을 해결하기위해서 복수의 테이블 검색 시 검색하고자 하는 테이블 만을 검색할 수 있는 발명의 효과가 발생하였다.A disadvantage of the conventional technology, CAM, is that there is no way to search separately among tables having entries of the same size, such that the entry size is fixed, such as 36 bits, 72 bits, 144 bits, 288 bits. In order to solve this drawback, the effect of the invention that only the table to be searched when searching a plurality of tables has occurred.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020020053341A KR20020081569A (en) | 2002-09-04 | 2002-09-04 | The Management Method of tables that have entries of same size on CAM in Network device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020020053341A KR20020081569A (en) | 2002-09-04 | 2002-09-04 | The Management Method of tables that have entries of same size on CAM in Network device |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20020081569A true KR20020081569A (en) | 2002-10-28 |
Family
ID=27728150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020020053341A KR20020081569A (en) | 2002-09-04 | 2002-09-04 | The Management Method of tables that have entries of same size on CAM in Network device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20020081569A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100564768B1 (en) * | 2003-12-26 | 2006-03-27 | 한국전자통신연구원 | Apparatus for performing packet header lookup based on sequential lookup and method of the same |
KR100705593B1 (en) * | 2006-01-25 | 2007-04-09 | 삼성전자주식회사 | Apparatus and method for managing ternary content addressable memory |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998041922A1 (en) * | 1997-03-14 | 1998-09-24 | Music Semiconductors, Inc. | Accelerated hierarchical address filtering and translation |
JP2001119432A (en) * | 1999-10-21 | 2001-04-27 | Toshiba Corp | Data retrieval device, packet identification device, and inter-network repeater |
JP2001156840A (en) * | 1999-11-25 | 2001-06-08 | Nec Corp | Method and device for flow discrimination and method and device for flow processing |
EP1180882A2 (en) * | 2000-08-17 | 2002-02-20 | Nippon Telegraph and Telephone Corporation | Packet classification search device and method |
WO2002019638A2 (en) * | 2000-08-31 | 2002-03-07 | Mosaid Technologies Incorporated | Method and apparatus for searching a filtering database with one search operation |
-
2002
- 2002-09-04 KR KR1020020053341A patent/KR20020081569A/en not_active Application Discontinuation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998041922A1 (en) * | 1997-03-14 | 1998-09-24 | Music Semiconductors, Inc. | Accelerated hierarchical address filtering and translation |
JP2001119432A (en) * | 1999-10-21 | 2001-04-27 | Toshiba Corp | Data retrieval device, packet identification device, and inter-network repeater |
JP2001156840A (en) * | 1999-11-25 | 2001-06-08 | Nec Corp | Method and device for flow discrimination and method and device for flow processing |
EP1180882A2 (en) * | 2000-08-17 | 2002-02-20 | Nippon Telegraph and Telephone Corporation | Packet classification search device and method |
WO2002019638A2 (en) * | 2000-08-31 | 2002-03-07 | Mosaid Technologies Incorporated | Method and apparatus for searching a filtering database with one search operation |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100564768B1 (en) * | 2003-12-26 | 2006-03-27 | 한국전자통신연구원 | Apparatus for performing packet header lookup based on sequential lookup and method of the same |
US7433357B2 (en) | 2003-12-26 | 2008-10-07 | Electronics And Telecommunications Research Institute | Apparatus and method for performing header lookup based on sequential lookup |
KR100705593B1 (en) * | 2006-01-25 | 2007-04-09 | 삼성전자주식회사 | Apparatus and method for managing ternary content addressable memory |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2643762B1 (en) | Method and apparatus for high performance, updatable, and deterministic hash table for network equipment | |
US10496680B2 (en) | High-performance bloom filter array | |
Yu et al. | Efficient multimatch packet classification and lookup with TCAM | |
EP2020125B1 (en) | Method of performing table lookup operation with table index that exceeds CAM key size | |
CA2385331C (en) | Method and apparatus for a four-way hash table | |
US20070133593A1 (en) | Searching Strings Representing a Regular Expression | |
JP5518135B2 (en) | Extensible multicast forwarding method and apparatus for data center | |
US7096277B2 (en) | Distributed lookup based on packet contents | |
WO2016060715A1 (en) | Hash-based address matching | |
CN111937360B (en) | Longest prefix matching | |
JP3881663B2 (en) | Packet classification apparatus and method using field level tree | |
US20100014516A1 (en) | Table lookup mechanism for address resolution | |
US7403526B1 (en) | Partitioning and filtering a search space of particular use for determining a longest prefix match thereon | |
Yang et al. | Fast OpenFlow table lookup with fast update | |
CN110035074A (en) | A kind of chip implementing method and device of ACL matching UDF message | |
CN103825824A (en) | Message processing method and message processing device | |
CN101099347A (en) | Maskable content addressable memory | |
WO2024067746A1 (en) | Method and system for mask matching implemented on basis of fpga | |
US20230041395A1 (en) | Method and Device for Processing Routing Table Entries | |
US11888743B1 (en) | Network device storage of incremental prefix trees | |
US7296100B1 (en) | Packet buffer management apparatus and method | |
US20230367720A1 (en) | Data search method and apparatus, and integrated circuit | |
CN103581020B (en) | The method of a kind of message forwarding, Apparatus and system | |
KR20020081569A (en) | The Management Method of tables that have entries of same size on CAM in Network device | |
CN103841083A (en) | Method and apparatus for enhancing message identification capability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G15R | Request for early publication | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |