NPU : Network Processor Unit 네트워크 처리장치란?

IPS 장비에 많이 사용되는 기술입니다.


인터넷이 갈수록 복잡해지면서 중앙처리장치(CPU)가 맡았던 네트워크 연결과 주변 기기 제어기능을 분담하는 장치로서 데이터 전송과 처리 등 각자 설계목적에 맞게 동작하는 신개념의 프로세서이다.

출처: http://blog.naver.com/ssilpooh/66292839


출처:  http://it.korea.ac.kr/research/research_area/area_content_np.htm

Network Processor

  IT기술의 수요가 세분화해나감에 따라 기존의 범용 마이크로프로세서가 특정한 응용 어플리케이션에서 더욱 나은 성능을 얻기 위해 특화된 구조로 변형되는 추세이다. 네트워크 망이 점점 높은 대역폭bandwidth을 갖게 되고 운용에 있어 응용력flexibility의 요구가 늘어남에 따라 이를 처리해 주기 위한 전용의 네트워크 프로세서가 새로이 출현하게 되었다. 곧, 네트워크 프로세서(NPU)란 네트워크에서 패킷 처리를 위해 최적화된 마이크로 프로세서를 지칭한다. NPU는 네트워크 망의 일부에 위치하며 다음과 같은 주 기능을 수행한다.

▣ 헤더 파싱(header parsing) ▣ 패턴 매칭(pattern matching)
▣ 비트 단위 조작(bit field manipulation) ▣ 테이블 룩업(table lookup)
▣ 패킷 순서 관리(packet ordering management) ▣ 패킷 수정(packet modification)
▣ 데이터 이동(data movement)  

  이는 OSI 7계층 프로토콜 스택으로 보자면 3계층부터 7계층까지의 수행에 필요한 작업들이다. NPU의 응용분야는 패킷 처리에 관한 한 제한이 없다 할 정도로 광범위하며 다음과 같은 응용 분야를 갖는다.

▣ 멀티서비스 스위치
사용자 삽입 이미지
▣ 멀티 기가비트 라우터에 서 패킷 스위칭 엔진
▣ VPN
▣ 방화벽
▣ 침입탐지 시스템 (IDS)에서 필터링과 암호화/복호화(encryption and decryption) 엔진
▣ VoIP 게이트웨이
▣ 영상의 게이트웨이
▣ 데이터 코드 변환 (data transcoding)에서 데이터 처리엔진
▣ 네트워크 주소 번역 (NAT)
▣ 웹 스위치
 
<NPU의 응용 예>

NPU는 두 가지 커다란 특징을 갖는다.

 첫째, 높은 선로 대역폭(wire bandwidth) 처리 ― 네트워크 프로세서의 주된 응용 분야의 하나인 라우터의 경우 현재 wire bandwidth가 10Gbps에 이르고 있다(OC-192). 이렇게 높은 bandwidth로 들어오는 packet들을 정체없이 처리하기 위해서 네트워크 프로세서에선 병렬처리와 멀티 스레딩 기법등을 구현하고 있다.

 둘째, 프로그램 가능한 flexibility ― 프로그램 가능한 특성은 NPU가 광범위한 응용에 걸쳐 융통성(flexibility)을 발휘할 수 있게 한다. 같은 NPU가 라우터, 방화벽(firewall), VPN, 응용 게이트웨이등 각 시스템에 맞게 프로그램 되어 그 엔진으로 장착될 수 있다.

사용자 삽입 이미지

  이러한 네트워크 프로세서의 특징은 General Purpose CPU와 Custom ASIC의 장점만을 갖추었다고 말할 수 있다. 응용환경에 특화된 설계(application specified design)되어 모든 프로세싱을 하드웨어로 처리하는 Custom ASIC은, 빠른 처리 속도라는 장점에 비해 설계상의 난점(complex design)과 긴 제품화 시간(time to market)이라는 단점을 갖고 있다. 반면 범용 프로세서(general purpose processor)를 사용하여 소프트웨어로 모든 작업을 처리하는 접근법은, 환경의 변화를 프로그램의 교체만으로 간단히 쫓아갈 수 있는 높은 응용력flexibility를 갖지만 낮은 처리속도로 인해 고속·고성능의 네트워크 어플리케이션에는 적합하지 않다. 네트워크 프로세서는 이러한 환경-요구에 특화된 설계 사상을 갖는 신개념의 프로세서이다. 곧, 패킷 처리(packet processing)에 맞춰 내부 아키텍처가 조직되었기에 ASIC 기반 설계만큼의 빠른 처리속도라는 장점을 가지며 또한, 프로그램 가능한 특성으로 인해 주변환경과 조건의 변화에 대해 능동적인 대응이 가능하다라는 장점 역시 갖고 있다. 이렇게 네트워크 수요에 특화된 NPU의 시장은 급격히 커지고 있다. Cahners In-Stat 그룹의 예측에 따르면, NPU의 수요가 2000년 180만 개에서 2004년에는 1800만 개로 성장할 것이며, 이는 년 81%의 급격한 성장을 뜻한다. 매출은 2000년 4억불에서 2004년에는 29억불로 매년 63%의 성장률을 보일 것으로 내다봤다.