KR101724778B1 - 적응형 컨텐츠 검사 - Google Patents
적응형 컨텐츠 검사 Download PDFInfo
- Publication number
- KR101724778B1 KR101724778B1 KR1020127018395A KR20127018395A KR101724778B1 KR 101724778 B1 KR101724778 B1 KR 101724778B1 KR 1020127018395 A KR1020127018395 A KR 1020127018395A KR 20127018395 A KR20127018395 A KR 20127018395A KR 101724778 B1 KR101724778 B1 KR 101724778B1
- Authority
- KR
- South Korea
- Prior art keywords
- input data
- content inspection
- data
- inspection processor
- processor
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in the payload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
적응형 컨텐츠 검사를 포함하는 방법 및 장치를 제공한다. 일 실시예에서, 컨텐츠 검사 프로세서는 입력 데이터에 관한 정보를 식별하고 상기 정보를 호스트 제어기에 제공할 수 있다. 호스트 제어기는 탐색 기준 또는 다른 파라미터를 적응시키며 적응된 파라미터를 컨텐츠 검사 프로세서에 제공할 수 있다. 다른 실시예는 결과 데이터를 컨텐츠 검사 프로세서로 피드백되도록 통합 피드백을 갖는 컨텐츠 검사 프로세서를 포함할 수 있다. 결과 데이터는 컨텐츠 검사 프로세서에 제공되기 전에 프로세싱될 수 있다.
Description
본 발명은 일반적으로 컨텐츠 검사 프로세서에 관한 것으로서, 더 상세하게는 이러한 프로세서들의 프로그래밍 및 동작에 관한 것이다.
컴퓨터 분야에서, 컨텐츠 검사 태스크는 증가하는 도전 과제이다. 예를 들어, 컨텐츠 검사 태스크의 일 서브세트로서 패턴-인식은 사용자가 식별하기 원하는 데이터의 양과 패턴의 개수가 커짐에 따라 구현하는 것이 더 어려워질 수 있다. 예를 들어, 스팸 또는 멀웨어는 컨텐츠, 예를 들어 특정 코드의 구절 또는 조각들과 같은, 데이터 스트림에서의 패턴을 검색함으로써 검출될 수도 있다. 패턴들의 개수는 스팸 및 멀웨어가 다양할수록 증가하며, 새로운 패턴들은 새로운 변종을 탐색하기 위해 구현될 수 있다. 이들 패턴 각각의 데이터 스트림을 탐색하는 것은 계산 병목(computing bottleneck)을 형성할 수 있다. 데이터 스트림이 수신됨에 따라, 한번에 하나씩 각각의 패턴이 탐색될 수도 있다. 시스템이 데이터 스트림의 다음 부위를 탐색할 준비가 되기 전의 지연은 패턴들의 수에 따라 증가한다. 따라서, 컨텐츠 검사는 데이터 수신을 느리게 할 수 있다.
또한, 여러 패턴 인식, 탐색, 또는 다른 컨텐츠 검사 태스크에서, 컨텐츠 검사 프로세스는 고정적이고 정의된 탐색 기준 세트를 사용하여(예를 들어, 이들에 따라서, 이들과 비교하여, 이들에 대하여) 수행된다. 컨텐츠 검사 프로세스를 수행하는 장치는 입력 데이터 및/또는 결과 데이터의 변경을 조절하지 않는다.
도 1은 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서를 구비한 장치의 실시예의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서 및 호스트 제어기의 동작을 예시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서를 위한 동적 적응 프로세스의 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 적응 가능 프로그래밍을 갖는 컨텐츠 검사 프로세서를 도시한다.
도 5는 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서의 적응 가능 프로그래밍의 제2 레벨을 도시한다.
도 6은 본 발명의 일 실시예에 따른 통합 피드백(integrated feedback)을 갖는 컨텐츠 검사 프로세서를 도시한다.
도 7은 본 발명의 다른 실시예에 따른 결과 프로세싱과의 통합 피드백을 갖는 컨텐츠 검사 프로세서를 도시한다.
도 8은 본 발명의 일 실시예에 따른 통합 피드백을 갖는 컨텐츠 검사 프로세서의 동적 적응 프로세스를 도시한다.
도 2는 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서 및 호스트 제어기의 동작을 예시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서를 위한 동적 적응 프로세스의 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 적응 가능 프로그래밍을 갖는 컨텐츠 검사 프로세서를 도시한다.
도 5는 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서의 적응 가능 프로그래밍의 제2 레벨을 도시한다.
도 6은 본 발명의 일 실시예에 따른 통합 피드백(integrated feedback)을 갖는 컨텐츠 검사 프로세서를 도시한다.
도 7은 본 발명의 다른 실시예에 따른 결과 프로세싱과의 통합 피드백을 갖는 컨텐츠 검사 프로세서를 도시한다.
도 8은 본 발명의 일 실시예에 따른 통합 피드백을 갖는 컨텐츠 검사 프로세서의 동적 적응 프로세스를 도시한다.
도 1은 참조 부호(10)로 일반적으로 표기되어 있는 장치 또는 시스템과 같은 전자 장치의 일 실시예를 도시한 블록도이다. 장치(10)는 컴퓨터, 무선호출기, 무선전화기, 전자 수첩, 휴대용 오디오 플레이어, 네트워크 장치(예를 들어, 라우터, 방화벽, 스위치 또는 이들의 임의의 조합), 제어 회로, 카메라 등과 같이 임의의 다양한 타입의 장치일 수 있다. 장치(10)는 장치(10) 내의 기능 및 요청의 프로세싱을 제어하는 마이크로 프로세서와 같은 장치 프로세서(12)를 포함할 수 있다. 또한, 프로세서(12)는 장치 제어를 공유하는 복수의 프로세서를 포함할 수 있다. 프로세서(12)는 범용 프로세서 또는 장치(10)의 기능 및 요청들을 위한 특수 목적 프로세서일 수도 있다.
장치(10)는 컨텐츠 검사 프로세서(14)를 포함할 수도 있다. 컨텐츠 검사 프로세서(14)는 탐색 기준을 사용하여 데이터를 검사하도록 구성된 하나 이상의 프로세서일 수 있다. 예를 들어, 컨텐츠 검사 프로세서(14)는 탐색 기준을 사용하여 컨텐츠 검사 프로세서(14)에 제공되는 데이터 스트림 또는 데이터 세트 내의 패턴을 매칭할 수 있다. 컨텐츠 검사 프로세서(14)는 하나 이상의 버스를 통해 컨텐츠 검사 프로세서(14)와 통신하는 호스트 제어기(16)와 같은 프로세싱 로직에 연결되어 이에 따라 제어될 수 있다. 호스트 제어기(16)는 동작 중에 컨텐츠 검사 프로세서(14)에 의해 사용되는 탐색 기준 또는 임의의 다른 파라미터로 컨텐츠 검사 프로세서(14)를 프로그래밍할 수 있다. 컨텐츠 검사 프로세서(14)는 장치(10)의 1차적 또는 2차적 기능들을 제공할 수 있다. 일 실시예에서, 컨텐츠 검사 프로세서(14)는 미국 특허출원 제12/350,132호에 설명된 바와 같은 패턴 인식 프로세서일 수 있다.
통상적으로 장치(10)는 전원 공급기(18)를 포함한다. 예를 들어, 장치(10)가 휴대용 시스템이라면, 전원 공급기(18)는 유익하게 영구 배터리, 교체가능 배터리, 및/또는 충전용 배터리를 포함할 수도 있다. 전원 공급기(18)는 AC 어댑터를 포함할 수도 있는데, 이로써 장치(10)는 예를 들어, 콘센트(wall outlet)에 플러그인(plug-in)될 수도 있다. 전원 공급기(18)는 DC 어댑터를 포함할 수도 있는데, 이로써 장치(10)는 예를 들어, 차량용 담배 라이터에 플러그인될 수도 있다.
장치(10)가 수행하는 기능들에 따라 다른 다양한 장치들이 프로세서(12)에 연결될 수 있다. 예를 들어, 입력 장치(20)가 프로세서(12)에 연결될 수 있다. 입력 장치(20)는 예를 들어, 버튼, 스위치, 키보드, 광전 펜(light pen), 스타일러스, 마우스, 및/또는 음성 인식 시스템을 포함할 수 있다. 디스플레이(22)는 프로세서(12)에 연결될 수도 있다. 디스플레이(22)는 예를 들어, LCD, CRT, LED, 및/또는 임의의 다른 적합한 디스플레이를 포함할 수 있다.
또한, RF 서브 시스템/베이스밴드 프로세서(24)가 프로세서(12)에 연결될 수도 있다. RF 서브 시스템/베이스밴드 프로세서(24)는 RF 수신기 및 RF 송신기(미도시)에 연결되는 안테나를 포함할 수 있다. 통신 포트(26)가 프로세서(12)에 연결될 수도 있다. 통신 포트(26)는 모뎀, 프린터, 컴퓨터와 같은 하나 이상의 주변 장치(28)에 연결되거나, 로컬 영역 네트워크, 원거리 네트워크, 인트라넷, 또는 인터넷과 같은 네트워크에 연결되도록 적응될 수 있다.
일반적으로, 메모리는 프로세서(12)에 연결되어 다양한 프로그램들을 저장하거나 이들의 실행을 용이하게 한다. 예를 들어, 프로세서(12)는 메모리 제어기(32)를 통해 시스템 메모리(30)에 연결될 수도 있다. 시스템 메모리(30)는 DRAM(Dynamic Random Access Memory) 및/또는 SRAM(Static Random Access Memory)과 같은 휘발성 메모리를 포함할 수 있다. 시스템 메모리(30)는 휘발성 메모리와 함께 사용될 ROM(read-only memory), 다양한 아키텍처의 플래시 메모리(예를 들어, NAND 메모리, NOR 메모리 등)와 같은 비휘발성 메모리를 포함할 수도 있다. 추가적으로, 장치(10)는 자기 기억 장치와 같은 하드 드라이브(34)를 포함할 수 있다.
도 2는 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서(14) 및 호스트 제어기(16)의 동작을 도시한다. 도 2에 도시된 바와 같이, 호스트 제어기(16)는 프로그램 버스(36) 및 입력 버스(38)를 통해 컨텐츠 검사 프로세서(14)와 통신할 수 있다. 입력 버스(38)는 컨텐츠 검사 프로세서(14)에 의해 검사될 입력 데이터를 전송한다. 일부 실시예에서, 입력 데이터는 (“정적 데이터”라고 지칭되는) 고정 데이터 세트 또는 (“동적 데이터”라고 지칭되는) 스트리밍 데이터로서 전달될 수 있다. 입력 데이터는 장치(10)에 연결된 데이터베이스, 센서, 네트워크 등과 같은 임의의 소스로부터 수신될 수 있다. 예를 들어, 입력 데이터는 통신 포트(26)를 통해 장치(10)와 통신하는 임의의 장치 또는 시스템으로부터 수신될 수 있다.
프로그램 버스(36)는 호스트 제어기(16)로부터 컨텐츠 검사 프로세서(14)로 프로그래밍 데이터를 전송한다. 이러한 프로그래밍 데이터는 검사 프로세스 중에 사용되는 동작 파라미터로 컨텐츠 검사 프로세서(14)를 프로그래밍하는데 사용된다. 예를 들어, 일 실시예에서, 프로그래밍 데이터는 컨텐츠 검사 프로세서(14)에 의해 사용되는 탐색 기준(예를 들어, 패턴 또는 다른 관심 기준)을 포함하여 입력 버스(38)를 통해 수신되는 입력 데이터와 매칭할 수 있다. 탐색 기준은 임의의 길이 및 복잡도를 갖는 하나 이상의 패턴들을 포함할 수 있다.
컨텐츠 검사 프로세서(14)의 출력은 결과 버스(40)를 통해 전송될 수 있다. 결과 버스(40)는 컨텐츠 검사 프로세서(14)에 의한 입력 데이터의 프로세싱으로부터의 결과 데이터(예를 들어, 탐색 결과)를 호스트 제어기(16)에 제공할 수 있다. 예를 들어, 일부 실시예에서, 결과 버스(40)를 통해 제공되는 결과 데이터는 매칭 또는 비-매칭(no match)을 나타낼 수 있으며, 매칭되는 특정 탐색 기준 및/또는 매칭이 발생한 경우의 입력 데이터에서의 위치를 포함할 수 있다. 일부 실시예에서, 컨텐츠 검사 프로세서(14)는 결과 버스(40)를 통해 출력에 전송함으로써 임의의 특정 결과 데이터를 호스트 제어기(16)에 통지할 수 있다.
일부 실시예에서, 입력 버스(38), 프로그램 버스(36), 및 결과 버스(40)는 물리적으로 구분되는 버스일 수 있으며, 입력 버스(38), 프로그램 버스(36), 및 결과 버스(40)의 임의의 조합은 단일 버스 인터페이스에 물리적으로 구현될 수 있다. 예를 들어, 이러한 실시예에서, 단일 버스 인터페이스는 컨텐츠 검사 프로세서(14)에 제공되고, 이로부터 수신되는 상이한 타입들의 데이터를 송신하는 임의의 적합한 기법을 통해 다중화되거나 제어될 수 있다.
도 3은 본 발명의 일 실시예에 따른 컨텐츠 검사 프로세서(14)를 위한 동적 적응형 프로세스(44)를 도시한다. 초기에, 블록(46)에 도시된 바와 같이, 컨텐츠 검사 프로세서(14)는 예를 들어, 입력 버스(38)를 통해 입력 데이터(예를 들어, 데이터 세트 또는 데이터 스트림)를 수신할 수 있다. 컨텐츠 검사 프로세서(14)는 컨텐츠 검사 프로세서(14)에 제공되는 입력 데이터에 관한 정보를 식별할 수 있다(블록(48)). 이러한 정보는 데이터의 특성, 포맷, 프로토콜, 및/또는 임의의 다른 타입의 식별 정보를 포함할 수 있다. 입력 데이터에 관한 정보를 식별한 후, 이 정보는 수집, 분석되어, 컨텐츠 검사 프로세서의 탐색 기준 및/또는 다른 동작 파라미터들을 적응하는데 사용될 수 있다(블록(50)). 예를 들어, 호스트 제어기(16) 또는 다른 프로세싱 로직은 입력 데이터의 식별 특성에 기반하여 탐색 기준들을 수집, 분석, 및/또는 적응시킬 수 있다. 그 다음, 컨텐츠 검사 프로세서(14)는 적응된 탐색 기준들로 프로그래밍될 수 있다(블록(52)). 마지막으로, 컨텐츠 검사 프로세서(14)는 적응된 탐색 기준들을 사용하여 입력 데이터를 검사할 수 있다(블록(54)). 아래 설명하는 바와 같이, 프로세스(44)는 입력 데이터에서 발견되는 추가 식별 정보가 탐색 기준의 추가적인 적응을 허용하도록 하기 위해 반복될 수도 있다(화살표(56)에 의해 도시됨).
도 4 내지 도 6은 컨텐츠 검사 프로세서의 동적 적응형 프로그래밍을 위해 실행 시간 중에 입력 데이터에 적합한 능력을 컨텐츠 검사 프로세서에 제공하는 상이한 기법들을 설명한다. 컨텐츠 검사 프로세서의 실시예에는 도 4 내지 도 6에 설명한 기법들 중 어느 하나 또는 이들의 조합을 포함할 수 있다.
도 4는 본 발명의 일 실시예에 따른 적응 가능 프로그래밍(예를 들어, 탐색 기준)을 갖는 컨텐츠 검사 프로세서(14)를 도시한다. 도 4에 도시된 바와 같이, 컨텐츠 검사 프로세서(14)는 입력 데이터에 관한 식별 정보에 기초하여 탐색 기준을 동적으로 적응시키는 능력을 포함한다.
예를 들어, 도 4는 컨텐츠 검사 프로세서(14)가 다양한 가능한 타입의 입력 데이터(60)(예를 들어, 데이터 세트 또는 데이터 스트림)를 수신할 수 있는 실시예를 도시한다. 각 타입의 입력 데이터(60)는 (도 4에 아이덴티티 1(identity 1), 아이덴티티 2, 아이덴티티 3 등으로 설명된) 상이한 식별 정보를 가질 수 있다. 예를 들어, 입력 데이터(60A)는 아이덴티티 1을 가지며, 입력 데이터(60B)는 아이덴티티 2를 가지며, 입력 데이터(60C)는 아이덴티티 3을 가질 수 있는 등이다. 예를 들어, 일 실시예에서, 컨텐츠 검사 프로세서(14)는 자연 언어(natural language) 번역을 수행할 수 있다. 들어오는 입력 데이터(60)는 컨텐츠 검사 프로세서에 의한 번역을 위한 임의의 가능한 자연 언어를 포함할 수 있다. 이러한 실시예에서, 아이덴티티들은 상이한 자연 언어일 수 있는데, 아이덴티티 1은 프랑스어, 아이덴티티 2는 스페인어, 아이덴티티 3은 영어, 아이덴티티 4는 러시아어, 아이덴티티 5는 폴란드어, 아이덴티티 6은 만다린 중국어, 아이덴티티 7은 일본어 등일 수 있다.
컨텐츠 검사 프로세서(14)는 예를 들어 탐색 기준을 사용하여 입력 데이터의 일정한 특성들을 매칭함으로써, 입력 데이터에 관한 정보를 식별할 수 있는 탐색 기준들로 프로그래밍될 수 있다. 또한, 컨텐츠 검사 프로세서(14)는 컨텐츠 검사 프로세서(14)의 기능(예를 들어, 자연 언어 번역, 네트워크 방화벽 등)에 기반한 탐색 기준으로 프로그래밍될 수 있다. 따라서, 자연 언어 번역을 제공하는 실시예에서, 컨텐츠 검사 프로세서(14)는 들어오는 입력 데이터(60)의 자연 언어를 식별하도록 프로그래밍될 수 있다. 이러한 실시예에서, 컨텐츠 검사 프로세서(14)는 각각의 타입의 입력 데이터(60)(예를 들어, 각각 가능한 자연 언어)에 관한 탐색 기준 전부를 저장하기에 충분한 메모리가 없을 수도 있다. 입력 데이터(60)가 식별된 후에, 아이덴티티는 결과 버스(40)를 통해 호스트 제어기(16)에 제공될 수 있다. 호스트 제어기(16)는 입력 데이터(60)의 아이덴티티에 기초하여 탐색 기준들을 적응시킬 수 있으며, 특히 식별된 타입의 입력 데이터를 위해 적응된 탐색 기준으로 컨텐츠 검사 프로세서(14)를 프로그래밍할 수 있다. 예를 들어, 입력 데이터가 영어로 식별된다면, 탐색 기준들은 영어로 관심 패턴들을 매칭시키도록 적응될 수 있다.
또한, 임의의 개수의 적응성 레벨들이 컨텐츠 검사 프로세서(14)에 의해 제공될 수 있다. 예를 들어, 도 5는 입력 데이터의 아이덴티티에 기반하여 추가 적응성 레벨을 도시한다. (입력 데이터(60A)를 “아이덴티티 1”로 식별하는 바와 같이) 입력 데이터에 관한 정보를 식별한 후, 컨텐츠 검사 프로세서(14)는 입력 데이터(60A)의 추가 정보(예를 들어, 서브-아이덴티티)를 식별하도록 적응된 탐색 기준들로 프로그래밍될 수 있다. 도 5에 도시된 바와 같이, 입력 데이터(60A)는 “서브 아이덴티티 1”, “서브 아이덴티티 2", “서브 아이덴티티 3” 등과 같은 추가적이고 잠재적인 식별 정보(62)를 가질 수 있다. 예를 들어, 특정 자연 언어를 식별한 (예를 들어, 입력 데이터(60A)를 “영어”라고 식별한) 실시예에서, 언어를 식별한 후, 컨텐츠 검사 프로세서(14)는 지역 방언, 억양, 또는 식별된 언어의 다른 서브-아이덴티티를 식별할 수 있다. 컨텐츠 검사 프로세서(14)가 이러한 서브 아이덴티티를 일단 식별하면, 이러한 서브 아이덴티티는 결과 버스(40)를 통해 호스트 제어기(14)에 제공될 수 있다. 호스트 제어기(16)는 탐색 기준을 더 적응시켜서, 추가 적응된 탐색 기준으로 컨텐츠 검사 프로세서(14)를 프로그래밍할 수 있다. 이 프로세스는 임의의 원하는 레벨의 입력 데이터의 서브 식별자에 관해 반복될 수 있다. 앞서 설명한 탐색 기준들의 연속적인 적응은 컨텐츠 검사 프로세서가 검사 프로세스에 관해 더 높은 레벨의 정확도를 달성하게 할 수 있다는 장점이 있다.
다른 실시예에서, 입력 데이터의 식별은 네트워크 보안을 향상시키는데 사용될 수 있다. 예를 들어, 컨텐츠 검사 프로세서(14)는 바이러스, 웜, 또는 다른 멀웨어의 공격의 징후에 근접하여 공통적으로 발견되는 코드 조각(code fragment)들에 대응하는 입력 데이터의 코드 조각들을 식별할 수 있다. 이러한 코드 조각들이 식별된 후, 호스트 제어기(16)는 이러한 코드 조각들과 관련하여 공지되어 있는 공격 징후와 매칭하도록 탐색 기준을 적응시킬 수 있다. 이들 적응된 탐색 기준이 컨텐츠 검사 프로세서(14)에 제공됨으로써, 컨텐츠 검사 프로세서(14)는 이들 코드 조각들과 관련된 각각의 공격 징후를 더 잘 탐색하며, 검사 프로세스의 정확도를 증가시킬 수 있다.
다른 실시예에서, 입력 데이터에서 탐색된 식별 정보는 HTTP(hypertext transfer protocol), FTP(file transfer protocol), DNS 요청등과 같은 네트워크 프로토콜일 수 있다. 프로토콜을 식별하고 이 아이덴티티를 호스트 제어기(16)에 제공함으로써, 호스트 제어기(16)는 특정 프로토콜을 위한 탐색 기준을 적응시켜 그에 따라 컨텐츠 검사 프로세서(14)를 프로그래밍할 수 있다. 다른 실시예에서, 탐색된 식별 정보(예를 들어, 아이덴티티)는 입력 데이터의 인코딩/디코딩 정보일 수 있으며, 이 경우 입력 데이터의 식별 정보는 인코더 또는 디코더로 피드백되어 인코딩 또는 디코딩 프로세스를 조정한다. 예를 들어, 비디오 또는 다른 매체 인코더는 컨텐츠 검사 프로세서(14)를 사용하여 인코딩 프로세스의 출력을 검사하고, 인코더에 피드백을 제공함으로써 인코더가 인코딩 프로세스를 동적으로 적응시킬 수 있게 한다. 또 다른 실시예에서, 식별 정보는 임의의 디지털 인코딩 정보일 수 있다.
다른 실시예에서, 컨텐츠 검사 프로세서(14)는 입력 데이터에 기초하여 컨텐츠 검사 프로세서(14)에 동적 적응성을 제공하는 피드백 메커니즘을 포함할 수 있다. 도 6은 본 발명의 일 실시예에 따른 통합 피드백을 갖는 컨텐츠 검사 프로세서(14)를 도시한다. 도 6에 도시된 바와 같이, 컨텐츠 검사 프로세서(14)로부터의 결과 데이터는 결과 버스(40)를 통해 프로그램 버스(36)로 전송되어, 피드백 루프(66)를 생성할 수 있다. 이러한 피드백 루프(66)는 검사 프로세스의 결과에 기초하여 (예를 들어, 컨텐츠 검사 프로세서(14)로 프로그래밍된 탐색 기준과 매칭되거나 매칭되지 않는 입력 데이터에 기초하여) 컨텐츠 검사 프로세서(14)가 입력 데이터에 동적으로 적응할 수 있게 한다.
다른 실시예에서, 피드백 루프는 추가적인 포스트-결과 프로세싱을 포함할 수 있다. 도 7은 본 발명의 다른 실시예에 따른 결과 프로세싱과의 통합 피드백을 갖는 컨텐츠 검사 프로세서(14)를 도시한다. 도 7에 도시된 바와 같이, 컨텐츠 검사 프로세서(14)로부터의 결과 버스(40)는 결과 프로세싱 로직(68)에 연결될 수 있다. 컨텐츠 검사 프로세서(14)로부터 출력된 결과 데이터는 프로그램 버스(36)에 제공되기 전에 결과 프로세싱 로직(68)에 의해 프로세싱될 수 있다. 결과 프로세싱 로직(68)은 결과 검사를 수행하는 추가 컨텐츠 검사 프로세서, 로컬 저장소로부터 새로운 탐색 기준을 가져 오는 룩업 동작(lookup operation) 등과 같은 임의의 적합한 하드웨어 및/또는 소프트웨어 로직을 포함할 수 있다.
도 8은 본 발명의 일 실시예에 따른 통합 피드백을 갖는 컨텐츠 검사 프로세서의 동적 적응 프로세스(70)를 도시한다. 초기에, 컨텐츠 검사 프로세서(14)는 입력 버스(38)를 통해 수신된 데이터 세트 또는 데이터 스트림과 같은 입력 데이터를 수신한다(블록(72)). 컨텐츠 검사 프로세서(14) 안에 프로그래밍되어 있는 탐색 기준을 사용하여 입력 데이터를 검사할 수 있다(블록(74)). 일부 실시예에서, 앞서 설명한 바와 같이, 이러한 탐색 기준은 입력 데이터에 관한 정보를 식별하는데 사용될 수 있다. 일부 실시예에서, 검사 프로세스의 결과 데이터는 결과 프로세싱 로직(68)에 제공될 수 있다(블록(76)). 결과 데이터는 결과 프로세싱 로직(68)에 의해 프로세싱될 수 있다(블록(78)). 프로세싱된 결과 데이터는 예를 들어, 프로그램 버스(36)를 통해 컨텐츠 검사 프로세서(14)로 피드백될 수 있다(블록(80)). 화살표(82)에 의해 도시된 바와 같이, 프로세스(70)는 컨텐츠 검사 프로세서(14)에 지속적인 피드백을 계속 제공할 수 있다. 다른 실시예에서, 앞서 설명한 바와 같이, 프로그램 버스(36)로 결과 데이터를 피딩함으로써 결과 데이터는 (화살표(84)에 의해 도시된 바와 같이) 프로세싱 없이 컨텐츠 검사 프로세서(14)에 직접 제공될 수 있다.
Claims (28)
- 입력 데이터를 검사하고 상기 입력 데이터의 검사에 적어도 부분적으로 기초하여 제1 결과 데이터를 출력하도록 구성된 컨텐츠 검사 프로세서; 및
하나 이상의 버스를 통해 상기 컨텐츠 검사 프로세서에 통신가능하게 연결된 호스트 제어기
를 포함하고,
상기 호스트 제어기는,
상기 입력 데이터를 상기 하나 이상의 버스를 통해 상기 컨텐츠 검사 프로세서에 전달하고,
상기 하나 이상의 버스를 통해 상기 컨텐츠 검사 프로세서로부터 상기 제1 결과 데이터를 수신하고,
상기 제1 결과 데이터에 적어도 부분적으로 기초하여 프로그래밍 데이터를 결정하도록 구성되고,
상기 컨텐츠 검사 프로세서는 상기 컨텐츠 검사 프로세서의 동작을 적응시키기 위해 상기 프로그래밍 데이터를 이용하여 프로그래밍되는 장치. - 제1항에 있어서, 상기 하나 이상의 버스는,
상기 컨텐츠 검사 프로세서로부터 상기 호스트 제어기로 상기 제1 결과 데이터를 전달하도록 구성되는 결과 버스;
상기 호스트 제어기로부터 상기 컨텐츠 검사 프로세서로 상기 입력 데이터를 전달하도록 구성되는 입력 버스; 및
상기 호스트 제어기로부터 상기 컨텐츠 검사 프로세서로 상기 프로그래밍 데이터를 전달하도록 구성되는 프로그램 버스를 포함하는 장치. - 제1항에 있어서, 상기 호스트 제어기는,
상기 컨텐츠 검사 프로세서에 의해 사용되는 제1 탐색 기준을 상기 제1 결과 데이터에 적어도 부분적으로 기초하여 상기 입력 데이터를 검사하도록 적응시켜 제2 탐색 기준을 결정하고,
상기 프로그래밍 데이터가 상기 제2 탐색 기준을 나타내도록 결정하고,
상기 프로그래밍 데이터를 상기 컨텐츠 검사 프로세서에 전달하여 상기 컨텐츠 검사 프로세서가 상기 제2 탐색 기준을 이용하여 상기 입력 데이터를 검사하는 것을 가능하게 하도록 구성되는 장치. - 제1항에 있어서, 상기 컨텐츠 검사 프로세서는,
제1 탐색 기준을 이용하여 상기 입력 데이터를 검사하여 상기 제1 결과 데이터를 결정하고 - 상기 제1 결과 데이터는 상기 입력 데이터와 연관된 제1 특성 타입의 제1 식별 특성을 나타냄 - ,
상기 호스트 제어기로부터 상기 프로그래밍 데이터를 수신하고 - 상기 프로그래밍 데이터는 상기 제1 식별 특성에 적어도 부분적으로 기초하여 상기 제1 탐색 기준을 적응시킴으로써 결정되는 제2 탐색 기준을 포함함 - ,
상기 제2 탐색 기준을 이용하여 상기 입력 데이터를 검사함으로써 제2 결과 데이터를 결정하도록 구성되고,
상기 제2 결과 데이터는 상기 입력 데이터와 연관된 상기 제1 특성 타입과는 상이한 제2 특성 타입의 제2 식별 특성을 나타내는 장치. - 제4항에 있어서, 상기 컨텐츠 검사 프로세서는,
공격의 징후에 근접하여 발견되는 것으로 예상되는 상기 입력 데이터 내의 코드 조각들을 식별하기 위해 상기 제1 탐색 기준을 사용하도록 구성되고,
상기 호스트 제어기는 상기 공격 징후에 기초하여 상기 제1 탐색 기준을 적응시킴으로써 상기 제2 탐색 기준을 결정하도록 구성되는 장치. - 제4항에 있어서,
상기 제1 특성 타입은 상기 입력 데이터의 자연 언어를 포함하고,
상기 제2 특성 타입은 상기 자연 언어의 지역 방언을 포함하는 장치. - 제4항에 있어서, 상기 제1 식별 특성, 상기 제2 식별 특성, 또는 양자는 상기 입력 데이터의 인코딩/디코딩 정보를 포함하고,
상기 컨텐츠 검사 프로세서는,
상기 인코딩/디코딩 정보를 인코더에 전달하여 상기 인코더가 상기 입력 데이터의 인코딩을 조정하는 것을 가능하게 하거나,
상기 인코딩/디코딩 정보를 디코더에 전달하여 상기 디코더가 상기 입력 데이터의 디코딩을 조정하는 것을 가능하게 하거나,
양쪽 모두 가능하게 하는 장치. - 제4항에 있어서,
상기 컨텐츠 검사 프로세서는 상기 입력 데이터를 전달하기 위해 사용되는 네트워크 프로토콜을 식별하기 위해 상기 제1 탐색 기준을 사용하도록 구성되고,
상기 호스트 제어기는 상기 네트워크 프로토콜에 기초하여 상기 제1 탐색 기준을 적응시킴으로써 상기 제2 탐색 기준을 결정하도록 구성되는 장치. - 제1항에 있어서,
상기 장치는 컴퓨터, 무선호출기, 무선전화기, 전자 수첩, 휴대용 오디오 플레이어, 네트워크 장치, 제어 회로, 또는 카메라를 포함하는 장치. - 제1항에 있어서, 상기 프로그래밍 데이터는 탐색 기준을 포함하는 장치.
- 전자 장치를 동작시키는 방법으로서,
컨텐츠 검사 프로세서를 이용하여, 호스트 제어기로부터 입력 데이터를 수신하는 단계;
상기 컨텐츠 검사 프로세서를 사용하여, 제1 결과 데이터를 결정하기 위해 상기 입력 데이터를 검사하는 단계;
상기 컨텐츠 검사 프로세서를 이용하여, 상기 호스트 제어기에 상기 제1 결과 데이터를 출력하여 상기 호스트 제어기가 상기 제1 결과 데이터에 적어도 부분적으로 기초하여 프로그래밍 데이터를 결정하는 것을 가능하게 하는 단계; 및
상기 컨텐츠 검사 프로세서를 이용하여, 상기 호스트 제어기로부터 상기 프로그래밍 데이터를 수신하는 단계 - 상기 프로그래밍 데이터는 상기 컨텐츠 검사 프로세서의 동작을 적응시키기 위해 상기 컨텐츠 검사 프로세서를 프로그래밍하는데 사용됨 -
를 포함하는 방법. - 제11항에 있어서,
상기 컨텐츠 검사 프로세서를 이용하여, 제1 탐색 기준을 이용하여 상기 입력 데이터를 검사함으로써 상기 입력 데이터의 제1 식별 특성을 결정하는 단계 - 상기 제1 식별 특성은 상기 입력 데이터와 연관된 제1 특성 타입을 포함함 - ;
상기 컨텐츠 검사 프로세서를 이용하여, 상기 입력 데이터를 검사하는데 사용될 제2 탐색 기준을 결정하는 단계 - 상기 제2 탐색 기준은 상기 제1 식별 특성에 적어도 부분적으로 기초하여 상기 제1 탐색 기준을 적응시킴으로써 결정됨 - ;
상기 컨텐츠 검사 프로세서를 이용하여, 상기 제2 탐색 기준을 이용하여 상기 입력 데이터를 검사함으로써 상기 입력 데이터의 제2 식별 특성을 결정하는 단계 - 상기 제2 식별 특성은 상기 입력 데이터와 연관된 상기 제1 특성 타입과는 상이한 제2 특성 타입을 포함함 - ; 및
상기 컨텐츠 검사 프로세서를 이용하여, 장치 프로세서가 상기 제1 결과 데이터 및 제2 결과 데이터에 적어도 부분적으로 기초하여 상기 전자 장치의 동작을 제어하는 것을 가능하게 하기 위해 상기 장치 프로세서에 상기 제1 결과 데이터 및 상기 제2 결과 데이터를 전달하는 단계 - 상기 제1 결과 데이터는 상기 입력 데이터의 상기 제1 식별 특성을 포함하고 상기 제2 결과 데이터는 상기 입력 데이터의 상기 제2 식별 특성을 포함함 -
를 포함하는 방법. - 제12항에 있어서,
상기 제1 특성 타입은 상기 입력 데이터의 자연 언어를 포함하고,
상기 제2 특성 타입은 상기 자연 언어의 지역 방언을 포함하는 방법. - 제12항에 있어서,
상기 제1 식별 특성을 결정하는 단계는,
공격 징후에 근접하여 발견되는 것으로 예상되는 상기 입력 데이터 내의 코드 조각들;
상기 입력 데이터를 전달하는데 사용되는 네트워크 프로토콜;
상기 입력 데이터를 인코딩하는데 사용되는 인코딩 정보;
상기 입력 데이터를 디코딩하는데 사용되는 디코딩 정보; 또는
그들의 임의의 조합
을 식별하기 위해 상기 제1 탐색 기준을 이용하여 상기 입력 데이터를 검사하는 단계를 포함하는 방법. - 제11항에 있어서,
상기 호스트 제어기를 사용하여, 상기 컨텐츠 검사 프로세서에 의해 사용되는 제1 탐색 기준을 상기 제1 결과 데이터에 적어도 부분적으로 기초하여 상기 입력 데이터를 검사하도록 적응시켜 제2 탐색 기준을 결정하는 단계;
상기 호스트 제어기를 사용하여, 상기 제2 탐색 기준을 나타내는 상기 프로그래밍 데이터를 결정하는 단계; 및
상기 호스트 제어기를 사용하여, 상기 컨텐츠 검사 프로세서가 상기 제2 탐색 기준을 사용하여 상기 입력 데이터를 검사하는 것을 가능하게 하도록 상기 컨텐츠 검사 프로세서에 상기 프로그래밍 데이터를 전달하는 단계
를 포함하는 방법. - 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/638,767 | 2009-12-15 | ||
US12/638,767 US8489534B2 (en) | 2009-12-15 | 2009-12-15 | Adaptive content inspection |
PCT/US2010/059311 WO2011081800A1 (en) | 2009-12-15 | 2010-12-07 | Adaptive content inspection |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120093441A KR20120093441A (ko) | 2012-08-22 |
KR101724778B1 true KR101724778B1 (ko) | 2017-04-07 |
Family
ID=43770635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020127018395A KR101724778B1 (ko) | 2009-12-15 | 2010-12-07 | 적응형 컨텐츠 검사 |
Country Status (7)
Country | Link |
---|---|
US (4) | US8489534B2 (ko) |
EP (1) | EP2514163B1 (ko) |
JP (1) | JP5701316B2 (ko) |
KR (1) | KR101724778B1 (ko) |
CN (1) | CN102714660B (ko) |
TW (1) | TWI433520B (ko) |
WO (1) | WO2011081800A1 (ko) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100138575A1 (en) | 2008-12-01 | 2010-06-03 | Micron Technology, Inc. | Devices, systems, and methods to synchronize simultaneous dma parallel processing of a single data stream by multiple devices |
US20100174887A1 (en) | 2009-01-07 | 2010-07-08 | Micron Technology Inc. | Buses for Pattern-Recognition Processors |
US9323994B2 (en) | 2009-12-15 | 2016-04-26 | Micron Technology, Inc. | Multi-level hierarchical routing matrices for pattern-recognition processors |
US8489534B2 (en) * | 2009-12-15 | 2013-07-16 | Paul D. Dlugosch | Adaptive content inspection |
US8766666B2 (en) | 2010-06-10 | 2014-07-01 | Micron Technology, Inc. | Programmable device, hierarchical parallel machines, and methods for providing state information |
US8601013B2 (en) | 2010-06-10 | 2013-12-03 | Micron Technology, Inc. | Analyzing data using a hierarchical structure |
WO2012103146A2 (en) | 2011-01-25 | 2012-08-02 | Micron Technology, Inc. | Utilizing special purpose elements to implement a fsm |
US8726256B2 (en) | 2011-01-25 | 2014-05-13 | Micron Technology, Inc. | Unrolling quantifications to control in-degree and/or out-degree of automaton |
JP5763783B2 (ja) | 2011-01-25 | 2015-08-12 | マイクロン テクノロジー, インク. | 正規表現をコンパイルするための方法および装置 |
EP2668576B1 (en) | 2011-01-25 | 2024-04-24 | Micron Technology, INC. | State grouping for element utilization |
US9443156B2 (en) | 2011-12-15 | 2016-09-13 | Micron Technology, Inc. | Methods and systems for data analysis in a state machine |
US8680888B2 (en) | 2011-12-15 | 2014-03-25 | Micron Technologies, Inc. | Methods and systems for routing in a state machine |
US8593175B2 (en) | 2011-12-15 | 2013-11-26 | Micron Technology, Inc. | Boolean logic in a state machine lattice |
US8782624B2 (en) | 2011-12-15 | 2014-07-15 | Micron Technology, Inc. | Methods and systems for detection in a state machine |
US8648621B2 (en) * | 2011-12-15 | 2014-02-11 | Micron Technology, Inc. | Counter operation in a state machine lattice |
US20130275709A1 (en) | 2012-04-12 | 2013-10-17 | Micron Technology, Inc. | Methods for reading data from a storage buffer including delaying activation of a column select |
US9367745B2 (en) | 2012-04-24 | 2016-06-14 | Liveclips Llc | System for annotating media content for automatic content understanding |
US20130283143A1 (en) | 2012-04-24 | 2013-10-24 | Eric David Petajan | System for Annotating Media Content for Automatic Content Understanding |
US9389841B2 (en) | 2012-07-18 | 2016-07-12 | Micron Technology, Inc. | Methods and systems for using state vector data in a state machine engine |
US9235798B2 (en) | 2012-07-18 | 2016-01-12 | Micron Technology, Inc. | Methods and systems for handling data received by a state machine engine |
US9524248B2 (en) | 2012-07-18 | 2016-12-20 | Micron Technology, Inc. | Memory management for a hierarchical memory system |
US9304968B2 (en) | 2012-07-18 | 2016-04-05 | Micron Technology, Inc. | Methods and devices for programming a state machine engine |
US9075428B2 (en) | 2012-08-31 | 2015-07-07 | Micron Technology, Inc. | Results generation for state machine engines |
US9501131B2 (en) | 2012-08-31 | 2016-11-22 | Micron Technology, Inc. | Methods and systems for power management in a pattern recognition processing system |
US9703574B2 (en) | 2013-03-15 | 2017-07-11 | Micron Technology, Inc. | Overflow detection and correction in state machine engines |
US9448965B2 (en) | 2013-03-15 | 2016-09-20 | Micron Technology, Inc. | Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine |
US10430210B2 (en) | 2014-12-30 | 2019-10-01 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
US11366675B2 (en) | 2014-12-30 | 2022-06-21 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
WO2016109571A1 (en) | 2014-12-30 | 2016-07-07 | Micron Technology, Inc | Devices for time division multiplexing of state machine engine signals |
US10846103B2 (en) | 2015-10-06 | 2020-11-24 | Micron Technology, Inc. | Methods and systems for representing processing resources |
US10977309B2 (en) | 2015-10-06 | 2021-04-13 | Micron Technology, Inc. | Methods and systems for creating networks |
US10691964B2 (en) | 2015-10-06 | 2020-06-23 | Micron Technology, Inc. | Methods and systems for event reporting |
US10028145B2 (en) | 2016-04-15 | 2018-07-17 | Microsoft Technology Licensing, Llc | Blocking undesirable communications in voice over internet protocol systems |
US10146555B2 (en) | 2016-07-21 | 2018-12-04 | Micron Technology, Inc. | Adaptive routing to avoid non-repairable memory and logic defects on automata processor |
US10019311B2 (en) | 2016-09-29 | 2018-07-10 | Micron Technology, Inc. | Validation of a symbol response memory |
US10268602B2 (en) | 2016-09-29 | 2019-04-23 | Micron Technology, Inc. | System and method for individual addressing |
US10592450B2 (en) | 2016-10-20 | 2020-03-17 | Micron Technology, Inc. | Custom compute cores in integrated circuit devices |
US10929764B2 (en) | 2016-10-20 | 2021-02-23 | Micron Technology, Inc. | Boolean satisfiability |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090141634A1 (en) * | 2007-12-04 | 2009-06-04 | Jesse Abraham Rothstein | Adaptive Network Traffic Classification Using Historical Context |
JP2009223908A (ja) | 2001-04-16 | 2009-10-01 | Xaxon R & D Corp | コンピュータウイルス検査装置及び半導体集積回路 |
WO2009130203A1 (en) | 2008-04-22 | 2009-10-29 | Alcatel Lucent | Attack protection for a packet-based network |
Family Cites Families (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04167069A (ja) * | 1990-10-31 | 1992-06-15 | Oki Electric Ind Co Ltd | 辞書分割型音声翻訳機 |
US5300830A (en) * | 1992-05-15 | 1994-04-05 | Micron Semiconductor, Inc. | Programmable logic device macrocell with an exclusive feedback and exclusive external input lines for registered and combinatorial modes using a dedicated product term for control |
US5331227A (en) * | 1992-05-15 | 1994-07-19 | Micron Semiconductor, Inc. | Programmable logic device macrocell with an exclusive feedback line and an exclusive external input line |
JP4010589B2 (ja) * | 1997-02-18 | 2007-11-21 | 株式会社東芝 | 文書検索システムおよび同システムに適用される検索文書提示方法 |
CA2287689C (en) | 1998-12-03 | 2003-09-30 | P. Krishnan | Adaptive re-ordering of data packet filter rules |
US6880087B1 (en) * | 1999-10-08 | 2005-04-12 | Cisco Technology, Inc. | Binary state machine system and method for REGEX processing of a data stream in an intrusion detection system |
US6240003B1 (en) * | 2000-05-01 | 2001-05-29 | Micron Technology, Inc. | DRAM content addressable memory using part of the content as an address |
TWI263920B (en) | 2002-06-12 | 2006-10-11 | Chunghwa Telecom Co Ltd | Right protection method for remote registration and local authentication |
JP4145582B2 (ja) * | 2002-06-28 | 2008-09-03 | Kddi株式会社 | コンピュータウィルス検査装置およびメールゲートウェイシステム |
JP4309102B2 (ja) * | 2002-07-16 | 2009-08-05 | Necネクサソリューションズ株式会社 | 不正コマンド・データ検知方式、不正コマンド・データ検知方法および不正コマンド・データ検知プログラム |
US20040044907A1 (en) * | 2002-08-30 | 2004-03-04 | Hung-Ming Sun | Method of self-adjusting sensitivity for filtering documents |
US7146643B2 (en) * | 2002-10-29 | 2006-12-05 | Lockheed Martin Corporation | Intrusion detection accelerator |
US7089352B2 (en) * | 2002-12-23 | 2006-08-08 | Micron Technology, Inc. | CAM modified to be used for statistic calculation in network switches and routers |
US6944710B2 (en) * | 2002-12-30 | 2005-09-13 | Micron Technology, Inc. | Multiple category CAM |
US10110632B2 (en) * | 2003-03-31 | 2018-10-23 | Intel Corporation | Methods and systems for managing security policies |
US7685254B2 (en) * | 2003-06-10 | 2010-03-23 | Pandya Ashish A | Runtime adaptable search processor |
US6906938B2 (en) * | 2003-08-15 | 2005-06-14 | Micron Technology, Inc. | CAM memory architecture and a method of forming and operating a device according to a CAM memory architecture |
JP4201263B2 (ja) * | 2003-10-27 | 2008-12-24 | 日本電信電話株式会社 | 侵入検知システムおよび記録媒体 |
US7392229B2 (en) * | 2005-02-12 | 2008-06-24 | Curtis L. Harris | General purpose set theoretic processor |
MX2007013025A (es) * | 2005-04-18 | 2008-01-11 | Univ Columbia | Sistemas y metodos para detectar e inhibir ataques mediante el uso de colmenas. |
JP2006350749A (ja) * | 2005-06-17 | 2006-12-28 | Ricoh Co Ltd | 文書フィルタリング装置、文書フィルタリング方法、プログラムおよび記録媒体 |
FR2891075B1 (fr) * | 2005-09-21 | 2008-04-04 | St Microelectronics Sa | Circuit de memoire pour automate de reconnaissance de caracteres de type aho-corasick et procede de memorisation de donnees dans un tel circuit |
JP4774307B2 (ja) * | 2006-02-06 | 2011-09-14 | アラクサラネットワークス株式会社 | 不正アクセス監視装置及びパケット中継装置 |
US7512634B2 (en) * | 2006-06-05 | 2009-03-31 | Tarari, Inc. | Systems and methods for processing regular expressions |
EP2018013A1 (en) | 2007-07-17 | 2009-01-21 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Method and telecommunications apparatus for protecting VoIP services against attacks |
US20090064337A1 (en) * | 2007-09-05 | 2009-03-05 | Shih-Wei Chien | Method and apparatus for preventing web page attacks |
JP4488074B2 (ja) * | 2008-02-13 | 2010-06-23 | 日本電気株式会社 | パターン検出装置、パターン検出システム、パターン検出プログラム、およびパターン検出方法 |
US20100057695A1 (en) * | 2008-08-28 | 2010-03-04 | Microsoft Corporation | Post-processing search results on a client computer |
US8209521B2 (en) | 2008-10-18 | 2012-06-26 | Micron Technology, Inc. | Methods of indirect register access including automatic modification of a directly accessible address register |
US8938590B2 (en) | 2008-10-18 | 2015-01-20 | Micron Technology, Inc. | Indirect register access method and system |
US8850571B2 (en) * | 2008-11-03 | 2014-09-30 | Fireeye, Inc. | Systems and methods for detecting malicious network content |
US7970964B2 (en) | 2008-11-05 | 2011-06-28 | Micron Technology, Inc. | Methods and systems to accomplish variable width data input |
US9639493B2 (en) | 2008-11-05 | 2017-05-02 | Micron Technology, Inc. | Pattern-recognition processor with results buffer |
US7917684B2 (en) * | 2008-11-05 | 2011-03-29 | Micron Technology, Inc. | Bus translator |
US8402188B2 (en) * | 2008-11-10 | 2013-03-19 | Micron Technology, Inc. | Methods and systems for devices with a self-selecting bus decoder |
GB2465378A (en) * | 2008-11-14 | 2010-05-19 | Want2Bthere Ltd | Image based search system and method |
US9164945B2 (en) | 2008-12-01 | 2015-10-20 | Micron Technology, Inc. | Devices, systems, and methods to synchronize parallel processing of a single data stream |
US10007486B2 (en) | 2008-12-01 | 2018-06-26 | Micron Technology, Inc. | Systems and methods to enable identification of different data sets |
US9348784B2 (en) | 2008-12-01 | 2016-05-24 | Micron Technology, Inc. | Systems and methods for managing endian mode of a device |
US20100138575A1 (en) | 2008-12-01 | 2010-06-03 | Micron Technology, Inc. | Devices, systems, and methods to synchronize simultaneous dma parallel processing of a single data stream by multiple devices |
US8140780B2 (en) | 2008-12-31 | 2012-03-20 | Micron Technology, Inc. | Systems, methods, and devices for configuring a device |
US8281395B2 (en) | 2009-01-07 | 2012-10-02 | Micron Technology, Inc. | Pattern-recognition processor with matching-data reporting module |
US8214672B2 (en) | 2009-01-07 | 2012-07-03 | Micron Technology, Inc. | Method and systems for power consumption management of a pattern-recognition processor |
US20100174887A1 (en) | 2009-01-07 | 2010-07-08 | Micron Technology Inc. | Buses for Pattern-Recognition Processors |
US8843523B2 (en) | 2009-01-12 | 2014-09-23 | Micron Technology, Inc. | Devices, systems, and methods for communicating pattern matching results of a parallel pattern search engine |
US9836555B2 (en) | 2009-06-26 | 2017-12-05 | Micron Technology, Inc. | Methods and devices for saving and/or restoring a state of a pattern-recognition processor |
US8489534B2 (en) * | 2009-12-15 | 2013-07-16 | Paul D. Dlugosch | Adaptive content inspection |
US8782624B2 (en) * | 2011-12-15 | 2014-07-15 | Micron Technology, Inc. | Methods and systems for detection in a state machine |
US9443156B2 (en) * | 2011-12-15 | 2016-09-13 | Micron Technology, Inc. | Methods and systems for data analysis in a state machine |
US8648621B2 (en) * | 2011-12-15 | 2014-02-11 | Micron Technology, Inc. | Counter operation in a state machine lattice |
US8593175B2 (en) * | 2011-12-15 | 2013-11-26 | Micron Technology, Inc. | Boolean logic in a state machine lattice |
US9448965B2 (en) * | 2013-03-15 | 2016-09-20 | Micron Technology, Inc. | Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine |
US10019311B2 (en) * | 2016-09-29 | 2018-07-10 | Micron Technology, Inc. | Validation of a symbol response memory |
-
2009
- 2009-12-15 US US12/638,767 patent/US8489534B2/en active Active
-
2010
- 2010-12-07 KR KR1020127018395A patent/KR101724778B1/ko active IP Right Grant
- 2010-12-07 CN CN201080062081.8A patent/CN102714660B/zh active Active
- 2010-12-07 EP EP10798411.4A patent/EP2514163B1/en active Active
- 2010-12-07 JP JP2012544613A patent/JP5701316B2/ja active Active
- 2010-12-07 WO PCT/US2010/059311 patent/WO2011081800A1/en active Application Filing
- 2010-12-15 TW TW099144051A patent/TWI433520B/zh active
-
2013
- 2013-06-26 US US13/928,171 patent/US9684867B2/en active Active
-
2017
- 2017-06-09 US US15/618,935 patent/US10235627B2/en active Active
-
2019
- 2019-02-20 US US16/280,872 patent/US20190180191A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009223908A (ja) | 2001-04-16 | 2009-10-01 | Xaxon R & D Corp | コンピュータウイルス検査装置及び半導体集積回路 |
US20090141634A1 (en) * | 2007-12-04 | 2009-06-04 | Jesse Abraham Rothstein | Adaptive Network Traffic Classification Using Historical Context |
WO2009130203A1 (en) | 2008-04-22 | 2009-10-29 | Alcatel Lucent | Attack protection for a packet-based network |
Also Published As
Publication number | Publication date |
---|---|
CN102714660B (zh) | 2015-06-03 |
US20190180191A1 (en) | 2019-06-13 |
JP2013513895A (ja) | 2013-04-22 |
TWI433520B (zh) | 2014-04-01 |
US8489534B2 (en) | 2013-07-16 |
US10235627B2 (en) | 2019-03-19 |
EP2514163B1 (en) | 2020-09-02 |
US20170278002A1 (en) | 2017-09-28 |
KR20120093441A (ko) | 2012-08-22 |
CN102714660A (zh) | 2012-10-03 |
WO2011081800A1 (en) | 2011-07-07 |
JP5701316B2 (ja) | 2015-04-15 |
US20110145182A1 (en) | 2011-06-16 |
US9684867B2 (en) | 2017-06-20 |
TW201145940A (en) | 2011-12-16 |
US20130290235A1 (en) | 2013-10-31 |
EP2514163A1 (en) | 2012-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101724778B1 (ko) | 적응형 컨텐츠 검사 | |
CN108984529B (zh) | 实时庭审语音识别自动纠错方法、存储介质及计算装置 | |
US10599645B2 (en) | Bidirectional probabilistic natural language rewriting and selection | |
CN100452025C (zh) | 自动检测文件中搭配错误的系统和方法 | |
CN103649956B (zh) | 用于社交网络的馈送翻译 | |
CN110490246B (zh) | 垃圾类别确定方法、装置、存储介质及电子设备 | |
KR101864361B1 (ko) | 다양한 의미 범주에 기반한 번역 결과 제공 방법 및 시스템 | |
NZ604980A (en) | Pay-for-access legal research system with access to open web content | |
ATE443297T1 (de) | Musteridentifikationsverfahren, vorrichtung und programm | |
EP3016350A1 (en) | Systems, devices, and methods for separating malware and background events | |
TW200731074A (en) | Hardware-assisted device configuration detection | |
CN110069769B (zh) | 应用标签生成方法、装置及存储设备 | |
CN106649253A (zh) | 基于后验证的辅助控制方法及系统 | |
CN114298039A (zh) | 敏感词识别方法、装置、电子设备及存储介质 | |
CN109960752B (zh) | 应用程序内的查询方法、装置、计算机设备和存储介质 | |
CN103064967A (zh) | 一种用于建立用户二元关系库的方法与设备 | |
Hahn et al. | Optimizing CRFs for SLU tasks in various languages using modified training criteria | |
CN112989805A (zh) | 一种文本检测方法、装置、设备及存储介质 | |
CN116992448B (zh) | 基于数据源重要程度的样本确定方法及装置、设备及介质 | |
CN105630928B (zh) | 文本的标识方法及装置 | |
CN116846568A (zh) | 一种网络攻击检测方法以及相关设备 | |
CN109545200A (zh) | 编辑语音内容的方法及存储装置 | |
Arild Dahl et al. | Stack-based Buffer Overflow Detection using Recurrent Neural Networks | |
CN114742152A (zh) | 数据分类方法和装置、计算机可读存储介质、电子设备 | |
TW200709076A (en) | System and method for image recognizing and operation thereof |
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 |