KR20080083828A - 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리방법 - Google Patents
상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리방법 Download PDFInfo
- Publication number
- KR20080083828A KR20080083828A KR1020070024526A KR20070024526A KR20080083828A KR 20080083828 A KR20080083828 A KR 20080083828A KR 1020070024526 A KR1020070024526 A KR 1020070024526A KR 20070024526 A KR20070024526 A KR 20070024526A KR 20080083828 A KR20080083828 A KR 20080083828A
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- tcp
- state
- session
- session table
- Prior art date
Links
- 238000007726 management method Methods 0.000 title claims description 14
- 238000000034 method Methods 0.000 claims abstract description 20
- 238000001914 filtration Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 abstract description 7
- 230000005540 biological transmission Effects 0.000 abstract description 4
- 230000006866 deterioration Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/22—Arrangements for preventing the taking of data from a data transmission channel without authorisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
-
- 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/56—Routing software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리 방법에 관한 것으로, 패킷 수신시 룩업되는 세션 테이블로부터 출력되는 세션테이블 인덱스 주소를 저장하기 위한 인덱스 버퍼부와, 상기 인덱스 버퍼부에 저장된 세션테이블 인덱스 주소를 상태 테이블 주소값으로 사용하여 상태 테이블을 업데이트하는 테이블 관리부를 포함하는 것을 특징으로 한다.
Description
도 1은 본 발명에 따른 하드웨어 로직을 이용한 상태기반 패킷 필터기의 구조를 나타내는 도면.
도 2는 본 발명에 따른 상태기반 패킷 필터기에서의 TCAM 테이블 관리 흐름도.
* 도면의 주요 부분에 대한 부호의 설명 *
10 : 패킷 입력부 20 : TCAM
30 : 상태 관리기 40 : SRAM
50 : 작업 큐 60 : 인덱스 버퍼
70 : 테이블 관리기 80 : SRAM 인터페이스부
90 : 읽기 레지스터
본 발명은 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리 방법에 관한 것이다.
일반적으로 TCAM을 이용한 상태기반 패킷 필터기에서는 모든 TCP 패킷의 세션 연결에서부터 종료시간까지 세션테이블을 구성하여 관리하게 된다.
일반 데이터 패킷이 입력되는 경우에는 TCP 세션 연결을 위한 TCP 3-WAY 연결 설정 교환 단계가 끝난 후가 되었을 때이며, 이 때 필터기에서는 단순히 룩업을 통하여 기존 세션이 존재하는지 확인하지만, TCP 3-WAY 연결 설정 패킷인 경우에는 세션테이블의 추가, 룩업 등이 필요하며, 상태테이블에는 새로운 현재 세션의 상태 값에 대한 추가, 이전 세션에 대한 현재 세션의 업데이트 등이 필요하게 된다.
그리고, TCP 양단간에 설정되는 동일세션에 대해 2 개의 세션테이블과 2개의 상태테이블을 가지는 상태기반 패킷필터기에서는 TCP 3-Way의 초기 연결 설정 패킷을 위해 TCAM 엑세스를 많이 해야 한다.
즉, 종래에는 TCP 3-Way 핸드쉐이킹 단계에서의 세션에 대한 상태 값을 업데이트 하기 위해 항상 검색 키를 만들어 TCAM 룩업을 수행하여 인덱스 주소를 얻은 후에 SRAM의 상태 테이블 주소를 찾는 구조였다.
또한, TCP 3-Way 테이블 작업 데이터들은 일반 데이터 단계보다 사이클이 훨씬 더 길기 때문에 동시에 일시적으로 많은 TCP 3-Way 연결요청이 입력될 경우, 실제 "SYN" 패킷을 수신 받은 TCP 서버는 정상적인 대응으로 "SYN|ACK"를 보내더라도 TCAM 테이블 등록 지연으로 인해 TCP 서버에 의해 보내진 패킷은 미등록 세션으로 폐기될 수도 있다.
이와 같은 패킷 폐기의 경우는 상태기반 패킷 필터링을 사용하는 방화벽 시스템의 네트워크 입력 라인 속도에 따라 시스템의 처리성능에 큰 영향을 주게 된다.
특히, 방화벽 처리성능의 주요 지표로 TCP Session Concurrent Connection Capacity Test 와 TCP Maximum Session Rate Test 이 사용되고 있으며, 상술한 테이블 처리속도 저하로 인한 문제가 라인속도가 증가할수록 이 측정 항목들에 큰 영향을 주게 되며, 테이블 처리성능 저하로 인해 방화벽 시스템의 전체 처리성능도 저하되어 TCP 양단간에 전송지연을 초래하게 된다는 문제점이 있었다.
따라서, 본 발명의 목적은 상기와 같은 문제점을 해결하기 위한 것으로서, 동시에 일시적으로 많은 TCP 3-Way 연결요청이 입력될 경우 TCAM 테이블을 관리하기 위해 요구되는 TCAM 액세스 횟수를 줄임으로써 TCP 3-Way 연결설정 테이블 처리속도를 높여 TCP 양단간에 방화벽 시스템으로 인한 전송지연을 방지할 수 있도록 한 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리 방법을 제공함에 있다.
상기한 목적을 달성하기 위한 본 발명에 따른 상태기반 패킷필터링 장치의 일 측면에 따르면, 패킷 수신시 룩업되는 세션 테이블로부터 출력되는 세션테이블 인덱스 주소를 저장하기 위한 인덱스 버퍼부와, 상기 인덱스 버퍼부에 저장된 세션테이블 인덱스 주소를 상태 테이블 주소값으로 사용하여 상태 테이블을 업데이트하는 테이블 관리부를 포함하는 것을 특징으로 한다.
그리고, TCP 3-Way 연결설정을 위한 세션 테이블과 상태 테이블 작업 데이터를 저장하기 위한 작업 큐를 더 포함한다.
그리고, 인덱스 버퍼부는 상기 작업 큐에 저장된 패킷에 해당하는 세션테이블 인덱스 주소만을 가지며, 크기가 상기 작업 큐의 크기와 동일하여 항상 일대일 대응된다.
한편, 상기한 목적을 달성하기 위한 본 발명에 따른 상태기반 패킷필터링 장치에서의 테이블 관리 방법의 일 측면에 따르면, 패킷 수신 후 검색 키를 생성하여 세션 테이블을 룩업하는 과정과, 상기 세션 테이블로부터 전달되는 매칭 신호에 따라 세션 테이블에 등록된 엔트리의 유무를 확인하는 과정과, 상기 세션 테이블에 등록된 엔트리가 존재하는 경우 TCP 3-Way 연결 패킷인지를 확인함과 동시에 세션 테이블로부터 출력되는 세션테이블 인덱스 주소를 저장하는 과정과, 상기 TCP 3-Way 연결 패킷이 정상인 경우 패킷에 대한 작업 데이터를 저장하는 과정과, 상기 저장된 세션테이블 인덱스 주소를 상태 테이블 주소값으로 사용하여 상태 테이블을 업데이트하는 과정을 포함하는 것을 특징으로 한다.
상기 패킷 수신 후 검색 키를 생성하여 세션 테이블을 룩업하는 과정에서, 상기 상태기반 패킷필터링 장치로 입력되는 모든 패킷은 이전에 이미 존재하는 세션인지를 검사하기 위해 최초로 무조건 세션 테이블을 룩업하게 된다.
상기 세션 테이블 룩업 결과 TCP 3-Way 단계가 아닌 일반 데이터 단계의 패킷일 경우 룩업 결과에 따른 세션 테이블의 인덱스 주소에 해당하는 상태 테이블 값은 TCP 연결 설정완료를 의미하는 상태 값이다.
상기 TCP 3-Way 연결 패킷이 아닌 경우 패킷을 통과시키는 과정을 더 포함한다.
상기 TCP 3-Way 연결 패킷이 정상이 아닌 경우 패킷을 폐기시키는 과정을 더 포함한다.
상기 TCP 3-Way 연결 패킷이 정상인 경우 패킷에 대한 작업 데이터를 저장하는 과정에서, 상기 작업 데이터에는 패킷 ID와, IP 출발지 주소, IP 목적지 주소, TCP 출발지 포트, TCP 목적지 포트, 프로토콜 필드와, 현재 상태값과 Sequence/Acknowledge 번호가 포함된다.
상기 세션 테이블로부터 전달되는 매칭 신호에 따라 세션 테이블에 등록된 엔트리의 유무를 확인하는 과정에서, 상기 세션 테이블에 등록된 엔트리가 존재하지 않는 경우 수신된 패킷이 SYN 패킷인지를 확인하여 SYN 패킷이 아닌 경우에는 패킷을 폐기하는 과정을 더 포함한다.
상기 수신된 패킷이 SYN 패킷인 경우 세션 테이블의 빈공간을 탐색하여 세션 테이블 세션을 생성하고 상태 테이블에 현재 상태값을 쓰는 동작을 수행하는 과정을 더 포함한다.
이하, 본 발명의 바람직한 실시예의 상세한 설명이 첨부된 도면들을 참조하여 설명될 것이다. 도면들 중 참조번호들 및 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에 유의해야 한다. 하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 1은 본 발명에 따른 하드웨어 로직을 이용한 상태기반 패킷 필터기의 구조를 나타내는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 패킷 필터기는 패킷 입력부(10)와, TCAM(20)와, 상태 관리기(30)와, SRAM(40)과, 작업 큐(50)와, 인덱스 버퍼(60)와, 테이블 관리기(70)와, SRAM 인터페이스부(80) 및 읽기 레지스터(90)를 포함하여 구성된다.
패킷 입력부(10)는 패킷 데이터를 수신하여 헤더를 분리하고 검색 키를 생성하여 TCAM(20)으로 검색 키를 전달하고, 일부 분리한 헤더 필드들과 생성한 패킷 ID를 상태 관리기(30)로 전달한다.
TCAM(20)은 패킷 입력부(10)로부터 전달된 검색 키를 입력받아 테이블 엔트리에 룩업, 추가, 삭제하는 세션 테이블이다.
SRAM(40)은 TCAM(20)으로부터 출력된 인덱스 주소에 따른 SRAM의 주소에 해 당하는 상태 값을 출력시키는 상태 테이블이다.
상태 관리기(30)는 패킷 입력부(10)로부터 전달된 헤더 필드들과 패킷 ID를 수신하여 현재의 TCP 플래그 필드와 SRAM(40)으로부터 TCAM 룩업을 통한 상태 값을 서로 확인 및 검사하여 정상적인 TCP 3-Way 패킷이면 패킷 ID와 관리 키, 그리고 업데이트 할 상태 값들을 포함하는 작업 데이터를 작업 큐(50)에 저장한다.
또한, 상태 관리기(30)는 패킷 수신시에 무조건 룩업을 수행할 때 얻어지는 TCAM(20)의 인덱스 주소를 인덱스 버퍼(60)에 저장시키게 된다.
작업 큐(50)는 TCP 3-Way 연결설정을 위한 TCAM 세션테이블과 SRAM 상태 테이블 작업 데이터들을 저장한다. 여기서, 작업 데이터에는 나중에 패킷 포워딩으로 패킷의 통과에 대한 허용과 폐기정보를 알려 줄 때 함께 보내지는 패킷 ID와, 세션 테이블 관리를 위해 사용되는 IP 출발지 주소, IP 목적지 주소, TCP 출발지 포트, TCP 목적지 포트, 프로토콜 필드(5-Tuple)과, 현재 상태값 및 Sequence 번호/Acknowledge 번호가 포함된다.
인덱스 버퍼(60)는 TCP 3-Way 연결설정 중 상태 값 업데이트를 위한 테이블 작업 데이터일 경우, 작업 큐(50)와 동기되어 항상 순차적으로 테이블 관리기(70)에 출력시키게 된다.
테이블 관리기(70)는 작업 큐(50)와 인덱스 버퍼(60)로부터 수신한 정보를 가지고 TCAM 테이블 관리를 위한 명령어 및 그에 해당하는 관리 키를 생성하여 TCAM 테이블로 출력시키게 된다. 여기서, 관리키로는 TCAM의 특정 엔트리 주소에 대한 추가를 위한 키, 삭제를 위한 키, SRAM에 상태값을 업데이트하기 전에 우선 검색하는 검색키 등이 존재한다.
또한, 테이블 관리기(70)는 TCAM(20)으로부터 "match" 신호를 수신하였을 때 작업 큐(50)와 인덱스 버퍼(60)로부터 다음 작업을 가져와서 처리하며, 최초 패킷인 "SYN" 패킷 이외의 상태 값 업데이트의 경우에는 종래의 TCAM 룩업과 달리 인덱스 버퍼(60)에서 수신한 인덱스 주소의 SRAM으로 곧바로 쓰기 과정을 수행하여 상태 값을 업데이트한다.
SRAM 인터페이스부(80)는 테이블 관리기(70)와 상태 관리기(30)로 SRAM의 상태 값에 대한 입출력을 처리한다.
읽기 레지스터(90)는 SRAM 인터페이스부(80)로부터 전달되는 상태값을 상태 관리기(30)로 전달한다.
도 2는 본 발명에 따른 상태기반 패킷 필터기에서의 TCAM 테이블 관리 흐름도이다.
도 2에 도시된 바와 같이, 먼저, 상태기반 패킷필터링 장치에서 패킷을 수신하여 세션 테이블 검색을 위한 검색 키를 생성(S10)하게 된다.
이어서, TCP 양단간의 사이에 존재하는 상태기반 패킷필터링 장치로 입력되는 모든 패킷은 이전에 이미 존재하는 세션인지를 검사하기 위해 최초로 무조건 TCAM을 룩업(S20)하게 된다.
이때, TCP 3-Way 단계가 아닌 일반 데이터 단계의 패킷일 경우 룩업 결과에 따른 TCAM의 인덱스 주소에 해당하는 상태 테이블 값은 "TCP 연결 설정완료"를 의 미하는 상태 값을 내보내게 된다.
이어서, 테이블 관리기에서 TCAM으로부터 전달되는 매치(match) 신호에 따라 세션 테이블에 등록된 엔트리의 유무를 확인(Hit/Fail)(S30)하게 된다.
확인 결과, 세션 테이블에 등록된 엔트리가 존재하는 경우(Hit)에는 등록된 엔트리가 TCP 3-Way 연결 패킷인지를 확인(S40)하며, 이와 동시에 TCAM으로부터 출력되는 TCAM Index를 인덱스 버퍼 큐에 저장(S50)시키게 된다.
즉, TCAM 룩업 결과가 Hit일 때 인덱스 버퍼 큐에 TCAM에서 출력되는 인덱스 주소를 저장하여 나중에 상태 값 업데이트 시점에 상태 테이블 주소 값으로 사용될 수 있도록 한다.
확인 결과, TCP 3-Way 연결 패킷이면 TCP 3-Way 연결 패킷의 정상 유무를 검사(S60)하고, TCP 3-Way 연결 패킷이 아니면 패킷을 통과시키게 된다.
검사 결과, TCP 3-Way 연결 패킷이 정상인지를 확인(S70)하여 만약 정상이 아니면 패킷을 폐기시키고, 정상적인 TCP 3-Way 연결 패킷인 경우에는 3-Way 패킷에 대한 작업 데이터를 작업 큐에 저장(S80)시키게 된다. 여기서, 작업 데이터에는 패킷 ID, 5 Tuple, 현재 상태값, Seq/Ack No 등이 포함되어진다.
이어서, 인덱스 버퍼 큐에 저장되어 있는 TCAM 인덱스 주소를 사용하여 상태 테이블을 업데이트(S90)하게 된다. 이때, 인덱스 버퍼큐에 저장해 놓은 TCAM Index를 상태 테이블 주소값으로 사용하여 현재 상태값을 SRAM에 Write하여 업데이트한다.
즉, 종래의 구조에서는 상태 값 업데이트를 위한 테이블 작업 데이터일 경우 에도 인덱스 주소를 얻기 위해 TCAM을 룩업하므로 테이블 관리을 위해 본 발명의 구조보다 더 긴 사이클을 필요로 했으나, 본 발명에서는 인덱스 버퍼큐에 저장해 놓은 TCAM Index 주소를 사용하여 상태 테이블을 업데이트하게 됨으로써 TCAM Look 사이클이 필요없게 된다.
그리고, 이미 인덱스 버퍼 큐에 인덱스 주소가 저장된 이후의 시점에서 TCP 3-Way 패킷이 아니거나, 또는 TCP 3-Way 패킷의 정상 유무 검사에서 버려지는 패킷인 경우, 즉 작업 큐에 저장되는 패킷 이외의 경우에는 저장된 인덱스 주소는 없는 값으로 리셋된다.
또한, 인덱스 버퍼 큐는 항상 작업 큐에 저장되는 패킷에 해당하는 TCAM 인덱스 주소만을 가지도록 하며, 크기도 작업 큐와 동일하며 항상 일대일 대응이 된다.
이와 같이, 테이블 관리기에서 읽어들인 TCP 3-Way 연결 설정을 요구하는 작업 데이터가 상태 값 업데이트를 위한 테이블 작업 데이터일 경우에는 인덱스 버퍼 큐의 TCAM 인덱스 주소를 이용하여 SRAM I/F를 통해 상태 테이블에 업데이트 하지만, 그 이외의 패킷은 TCAM 인덱스 주소가 다른 상황 즉, 최초 "SYN" 상태등록일 경우에 세션테이블을 추가하기 위한 TCAM 빈공간 탐색 룩업의 결과인 빈공간 인덱스 주소와 같은 것은 인덱스 버퍼를 이용하지 않는다.
즉, 상기 세션 테이블에 등록된 엔트리의 유무를 확인(Hit/Fail)하는 S30 과정에서, 만약 세션 테이블에 등록된 엔트리가 존재하지 않는 경우(Fail)에는 수신된 패킷이 SYN 패킷인지를 확인(S100)하여 SYN 패킷이 아닌 경우에는 패킷을 폐기 하게 된다.
그러나, 만약 수신된 패킷이 SYN 패킷인 경우에는 TCAM 빈공간을 탐색(S110)하여 TCAM 세션을 생성(S120)하고 SRAM 인터페이스를 통해 SRAM에 현재 상태값을 Write(S130)하게 되며, 역방향에 대해서도 S110 내지 S130 과정이 반복되어진다.
이상에서는 본 발명에서 특정의 바람직한 실시예에 대하여 도시하고 또한 설명하였다. 그러나, 본 발명은 상술한 실시예에 한정되지 아니하며, 특허 청구의 범위에서 첨부하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능할 것이다.
본 발명에 따르면, 동시에 일시적으로 많은 TCP 3-Way 연결요청이 입력될 경우 TCAM 테이블을 관리하기 위해 요구되는 TCAM 액세스 횟수를 줄임으로써, 전체 세션 테이블 관리 사이클 수를 줄여 작업 큐에서의 오버플로우를 방지하게 된다.
또한, TCP 3-Way 연결설정 테이블 처리속도를 높여 TCP 양단간에 방화벽 시스템으로 인한 전송지연을 방지할 수 있고, 테이블 관리속도가 빨라져서 방화벽의 동시 TCP 연결 속도를 향상시켜 방화벽의 처리능력이 종래에 비해 훨씬 좋아지게 된다.
Claims (11)
- 상태기반 패킷필터링 장치에 있어서,패킷 수신시 룩업되는 세션 테이블로부터 출력되는 세션테이블 인덱스 주소를 저장하기 위한 인덱스 버퍼부와,상기 인덱스 버퍼부에 저장된 세션테이블 인덱스 주소를 상태 테이블 주소값으로 사용하여 상태 테이블을 업데이트하는 테이블 관리부를 포함하는 것을 특징으로 하는 상태기반 패킷필터링 장치.
- 제 1항에 있어서,TCP 3-Way 연결설정을 위한 세션 테이블과 상태 테이블 작업 데이터를 저장하기 위한 작업 큐를 더 포함하는 것을 특징으로 하는 상태기반 패킷필터링 장치.
- 제 2항에 있어서,상기 인덱스 버퍼부는,상기 작업 큐에 저장된 패킷에 해당하는 세션테이블 인덱스 주소만을 가지며, 크기가 상기 작업 큐의 크기와 동일하여 항상 일대일 대응되는 것을 특징으로 하는 상태기반 패킷필터링 장치.
- 상태기반 패킷필터링 장치에서의 테이블 관리 방법에 있어서,패킷 수신 후 검색 키를 생성하여 세션 테이블을 룩업하는 과정과,상기 세션 테이블로부터 전달되는 매칭 신호에 따라 세션 테이블에 등록된 엔트리의 유무를 확인하는 과정과,상기 세션 테이블에 등록된 엔트리가 존재하는 경우 TCP 3-Way 연결 패킷인지를 확인함과 동시에 세션 테이블로부터 출력되는 세션테이블 인덱스 주소를 저장하는 과정과,상기 TCP 3-Way 연결 패킷이 정상인 경우 패킷에 대한 작업 데이터를 저장하는 과정과,상기 저장된 세션테이블 인덱스 주소를 상태 테이블 주소값으로 사용하여 상태 테이블을 업데이트하는 과정을 포함하는 것을 특징으로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
- 제 4항에 있어서,상기 패킷 수신 후 검색 키를 생성하여 세션 테이블을 룩업하는 과정에서,상기 상태기반 패킷필터링 장치로 입력되는 모든 패킷은 이전에 이미 존재하는 세션인지를 검사하기 위해 최초로 무조건 세션 테이블을 룩업하는 것을 특징으 로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
- 제 5항에 있어서,상기 세션 테이블 룩업 결과 TCP 3-Way 단계가 아닌 일반 데이터 단계의 패킷일 경우 룩업 결과에 따른 세션 테이블의 인덱스 주소에 해당하는 상태 테이블 값은 TCP 연결 설정완료를 의미하는 상태 값인 것을 특징으로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
- 제 4항에 있어서,상기 TCP 3-Way 연결 패킷이 아닌 경우 패킷을 통과시키는 과정을 더 포함하는 것을 특징으로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
- 제 4항에 있어서,상기 TCP 3-Way 연결 패킷이 정상이 아닌 경우 패킷을 폐기시키는 과정을 더 포함하는 것을 특징으로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
- 제 4항에 있어서,상기 TCP 3-Way 연결 패킷이 정상인 경우 패킷에 대한 작업 데이터를 저장하는 과정에서,상기 작업 데이터에는 패킷 ID와, IP 출발지 주소, IP 목적지 주소, TCP 출발지 포트, TCP 목적지 포트, 프로토콜 필드와, 현재 상태값과 Sequence/Acknowledge 번호가 포함되는 것을 특징으로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
- 제 4항에 있어서,상기 세션 테이블로부터 전달되는 매칭 신호에 따라 세션 테이블에 등록된 엔트리의 유무를 확인하는 과정에서,상기 세션 테이블에 등록된 엔트리가 존재하지 않는 경우 수신된 패킷이 SYN 패킷인지를 확인하여 SYN 패킷이 아닌 경우에는 패킷을 폐기하는 과정을 더 포함하는 것을 특징으로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
- 제 10항에 있어서,상기 수신된 패킷이 SYN 패킷인 경우 세션 테이블의 빈공간을 탐색하여 세션 테이블 세션을 생성하고 상태 테이블에 현재 상태값을 쓰는 동작을 수행하는 과정 을 더 포함하는 것을 특징으로 하는 상태기반 패킷필터링 장치에서의 테이블 관리 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070024526A KR20080083828A (ko) | 2007-03-13 | 2007-03-13 | 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리방법 |
US12/073,999 US20080225874A1 (en) | 2007-03-13 | 2008-03-12 | Stateful packet filter and table management method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070024526A KR20080083828A (ko) | 2007-03-13 | 2007-03-13 | 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20080083828A true KR20080083828A (ko) | 2008-09-19 |
Family
ID=39762615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070024526A KR20080083828A (ko) | 2007-03-13 | 2007-03-13 | 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080225874A1 (ko) |
KR (1) | KR20080083828A (ko) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL220238A (en) * | 2007-03-12 | 2014-03-31 | Marvell Israel Misl Ltd | A method and system for determining the location of fields in information units |
US8315256B2 (en) * | 2008-04-17 | 2012-11-20 | Gigamon Llc | State-based filtering on a packet switch appliance |
US8660132B2 (en) * | 2010-06-28 | 2014-02-25 | Avaya Inc. | Control plane packet processing and latency control |
CN103095665A (zh) * | 2011-11-07 | 2013-05-08 | 中兴通讯股份有限公司 | 一种提升防火墙处理性能的方法和装置 |
US9276851B1 (en) | 2011-12-20 | 2016-03-01 | Marvell Israel (M.I.S.L.) Ltd. | Parser and modifier for processing network packets |
US9680747B2 (en) * | 2012-06-27 | 2017-06-13 | Futurewei Technologies, Inc. | Internet protocol and Ethernet lookup via a unified hashed trie |
US10581763B2 (en) | 2012-09-21 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | High availability application messaging layer |
US9967106B2 (en) * | 2012-09-24 | 2018-05-08 | Brocade Communications Systems LLC | Role based multicast messaging infrastructure |
US9602407B2 (en) | 2013-12-17 | 2017-03-21 | Huawei Technologies Co., Ltd. | Trie stage balancing for network address lookup |
US9350677B2 (en) | 2014-01-16 | 2016-05-24 | International Business Machines Corporation | Controller based network resource management |
CN104579972B (zh) * | 2014-12-23 | 2017-12-19 | 武汉烽火网络有限责任公司 | 一种软件定义网络中多控制器环境下表项老化的同步方法 |
US20170034055A1 (en) * | 2015-07-28 | 2017-02-02 | Futurewei Technologies, Inc. | Handling Consumer Mobility in Information-Centric Networks |
US20190059066A1 (en) * | 2016-02-23 | 2019-02-21 | Telefonaktiebolaget Lm Ericsson (Publ) | Time Synchronization Between Nodes Connected by a Wireless Network |
CN110383777B (zh) | 2017-03-28 | 2022-04-08 | 马维尔亚洲私人有限公司 | 端口扩展器设备的灵活处理器 |
US11343358B2 (en) | 2019-01-29 | 2022-05-24 | Marvell Israel (M.I.S.L) Ltd. | Flexible header alteration in network devices |
CN115088239A (zh) | 2019-12-13 | 2022-09-20 | 马维尔以色列(M.I.S.L.)有限公司 | 用于网络设备的混合固定/可编程报头解析器 |
CN113411380B (zh) * | 2021-06-01 | 2022-10-14 | 深圳市芯源网络科技有限公司 | 基于fpga可编程会话表的处理方法、逻辑电路和设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070027991A1 (en) * | 2005-07-14 | 2007-02-01 | Mistletoe Technologies, Inc. | TCP isolation with semantic processor TCP state machine |
US7818786B2 (en) * | 2005-08-19 | 2010-10-19 | Electronics And Telecommunications Research Institute | Apparatus and method for managing session state |
-
2007
- 2007-03-13 KR KR1020070024526A patent/KR20080083828A/ko not_active Application Discontinuation
-
2008
- 2008-03-12 US US12/073,999 patent/US20080225874A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20080225874A1 (en) | 2008-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20080083828A (ko) | 상태기반 패킷필터링 장치 및 그 장치에서의 테이블 관리방법 | |
US7237031B2 (en) | Method and apparatus for caching protocol processing data | |
US8913613B2 (en) | Method and system for classification and management of inter-blade network traffic in a blade server | |
US8576847B2 (en) | Mechanisms for discovering path maximum transmission unit | |
US8625448B2 (en) | Method and system for validating network traffic classification in a blade server | |
US9602428B2 (en) | Method and apparatus for locality sensitive hash-based load balancing | |
JP5544429B2 (ja) | 複数のデータを処理するための方法および通信パケットをスイッチングするためのスイッチングデバイス | |
US20180083876A1 (en) | Optimization of multi-table lookups for software-defined networking systems | |
US20140098669A1 (en) | Method and apparatus for accelerating forwarding in software-defined networks | |
US20090109974A1 (en) | Hardware Based Parallel Processing Cores with Multiple Threads and Multiple Pipeline Stages | |
US8397025B2 (en) | Apparatus and method for determining a cache line in an N-way set associative cache using hash functions | |
Woodruff et al. | P4dns: In-network dns | |
EP2940949A1 (en) | Method and device for packet handling | |
KR20070085272A (ko) | Rx fifo 버퍼를 사용하여 고속 네트워크애플리케이션에서 rx 패킷을 프로세싱하는 시스템 및방법 | |
KR102126592B1 (ko) | 멀티코어 프로세서들에 대한 내부 및 외부 액세스를 갖는 룩-어사이드 프로세서 유닛 | |
WO2016045056A1 (zh) | 交换机及业务请求报文的处理方法 | |
US11995004B2 (en) | Methods and systems for using a packet processing pipeline to accelerate InfiniBand administrative operations | |
Caiazzi et al. | Millions of Low-latency State Insertions on ASIC Switches | |
US11627081B2 (en) | Method and system segregating application traffic in a wide area network | |
KR100864889B1 (ko) | Tcp 상태 기반 패킷 필터 장치 및 그 방법 | |
US12056110B2 (en) | Managing subscriptions to data queries that react and update to change notifications | |
US10367758B2 (en) | Merging read requests in network device architecture | |
CN108833282A (zh) | 数据转发方法、系统、装置及sdn交换机 | |
WO2016183732A1 (zh) | 一种数据包转发方法和网络设备 | |
JP2010177942A (ja) | ルータ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |