보안 업계의 뜨거운 테마로 'DPI(Deep Packet Inspection)'가 급부상 하고 있다. DPI는 기술적으로도 이슈지만 망 사업자들이 패킷 깊숙한 곳까지 들여다 보며 사적인 정보까지 캐낼 수 있다는 우려의 목소리 또한 높다. 참고로 본 칼럼에서는 시장 및 제도 관점이 아니라 DPI라는 새로운 패러다임 앞에서 오픈 소스 진영에서 어떤 움직임을 보이고 있는지 조망해보겠다.
대표적인 오픈소스 DPI 기술로 스노트(snort)와 미국 정부의 지원을 받고 있는 수리카타(Suricata)를 꼽을 수 있다. 스노트나 수리카타는 침입탐지시스템(IDS/IPS) 엔진이 아닌가? 그런데 뜬금없이 DPI라니! 의아한 독자도 있을 것이다.
DPI는 보안 기술 측면에서 볼 때 IDS/IPS의 미래 모습이다. 현재 IDS/IPS에서 불가능한 패킷 깊숙한 곳까지 일일이 들여다 보는 기술이 바로 DPI이고 당연히 스노트나 수리카타 역시 이를 지향하고 있다. 비단 이들뿐 아니라 netmap, PF_RING DNA, PacketShader 같은 오픈 소스 도구들 역시 DPI와 연결 고리를 찾을 수 있다.
그렇다면 다가오는 거대 물결인 DPI 시장에서 오픈소스는 과연 어떤 역할을 할 것인가? 스노트를 예로 들어 보면 기능적으로는 충분히 상용 솔루션들과 어깨를 나란히 할 것이라 감히 말하고 싶다.
그렇다면 IDS/IPS 시절처럼 성능이 발목을 잡지는 않을까? 스노트는 기능 면에서는 장족의 발전을 거듭해온 반면 패킷 입출력(I/O) 처리 면에서는 눈에 띌만한 개선이 없었다. 당연히 DPI까지 수용하며 기능이 강화된다 해도 상용 장비에 이를 얹을 시 성능 고민을 하지 않을 수 없다. 하지만 최근 동향을 보면 성능은 더 이상 이슈가 되지 않을 전망이다.
결론부터 말하자면 오픈소스 기반 DPI의 경우 성능 강화의 길이 다양하다. 성능 강화 방법은 대안을 찾아 연계하는 것이 하나 있고, 또 하나는 최신 멀티코어 프로세서의 힘을 빌리는 것이다.
먼저 대안을 통한 성능 향상 방안으로 netmap, PF_RING DNA, PacketShader 등의 활용이다. 이들은 스노트에서 패킷 캡처를 위해 사용하는 pcap의 성능 이슈를 극적으로 해결한 기술들이다. 이들은 pcap과 유사한 패킷 수신 인터페이스를 통한 패킷 송신 방법을 제공한다. 샌디브리지급 데스크톱에서 시험해 보면 64바이트 패킷의 경우 10~20Gbps 포워딩 성능을 어렵지 않게 얻을 수 있다. 더욱 높은 사양의 데스크톱을 쓸 경우 더 나은 성능을 이끌어 낼 수 있다.
다음으로 프로세서의 힘을 빌리는 방법이 있다. 네트워크 프로세서를 아는 독자라면 과거 목적에 따른 특수 설계 기반 프로세서가 주류를 이루던 것이 최근에는 범용적으로 다양한 제품 개발에 적용할 수 있는 프로세서가 대세가 되었다는 것을 잘 알 것이다. 네트워크 프로세서 업계의 대표 주자인 Cavium과 Tilela의 최근 행보를 보면 36개에서 48개까지 많은 수의 코어를 집적한 프로세서를 출시하고 있다. 낮은 클럭으로 동작해 전력 소모를 줄이는 동시에 코어 집적도를 높여 성능 부족을 메우는 것이 이들 업체의 공통적 전략이다.
이런 네트워크 프로세서들의 범용화, 고집적화, 저전력화는 오픈소스, 특히 스노트에 있어 성능 극대화의 새로운 가능성을 열어 주고 있다. Cavium과 Tilela 역시 자사의 프로세서 성능 평가 지표로 스노트를 올렸을 때 벤치마크 값을 제시하고 있다.
실제로 보안 장비 개발 업체에서는 Cavium과 Tilela의 프로세서 상에 스노트를 코어 마다 올려 병렬로 가동시켜 네트워크 입출력 성능을 끌어 올리고 있다. 개발사에서 할 일은 병렬화에 대한 최적화 작업을 잘 하면 그만이다. 그렇다면 어느 정도까지 성능이 개선될 것인가? 놀라지 마시길! 최근 스노트 스폰서 회사 중 한 곳에서 멀티 코어 장비에 스노트를 올린 Next-Generation IPS란 제품을 출시했는데 그 성능이 무려 40Gbps급에 이른다.
오픈소스 기반 DPI 성능 보장에 대한 긍정적 시그널은 네트워크 프로세서 업계뿐 아니라 인텔에서도 감지되고 있다. 인텔이 네트워크 프로세서 사업을 매각할 때만 해도 시장에서 완전히 손을 떼는 줄 알았다. 하지만 실상은 그게 아니었다. x86 프로세서 상에 모든 것을 다 담겠다는 의지를 가지고 관련 칩 통합부터 패킷 입출력을 위한 개발 킷, 써드파티 툴 보강까지 일사 분란하게 움직이며 화려한 귀환을 했다.
인텔의 경우 네트워크 프로세서 진영과 달리 2.0Ghz를 넘는 높은 클럭의 코어를 가진 프로세서를 사용하기 때문에 소비 전력이 높고 발열량 또한 많다. 반면에 보다 적은 수의 코어로 높은 성능을 낼 수 있다. 이는 분명한 장점이다. 일 할 때 사람이 늘수록 오버헤드가 커져 작업이 더뎌진다는 것을 떠올려 보면 코어 수가 많다고 무작정 좋지 많은 않다는 것을 유추해 볼 수 있다. 인텔 만의 장점이 무엇인지 쉽게 이해할 수 있다.
관련기사
- [칼럼]안드로이드 "스마트폰에서 벗어나라"2012.10.15
- [칼럼]개발자들에게 좋은 아키텍처란?2012.10.15
- [칼럼]'오픈플로' SW지향적 미래 네트워크를 그리다2012.10.15
- [칼럼]가상화의 어제와 오늘, 그리고 내일2012.10.15
정리해 보자면 IDS/IPS 시장에서 보여 준 오픈소스 기반 솔루션들의 영향력은 DPI 분야까지 명백히 이어질 것이다. 앞서 언급한 바와 같이 DPI라는 높은 목표 아래 관련 오픈 소스들이 긴밀히 연계되며 하나의 모습을 보여주고 여기에 더해 프로세서 기술의 발전까지 더해진다면... 오픈소스 DPI가 시장의 주류가 될 것이란 것은 상상이 아니라 현실이 될 가능성도 높다.
이런 추이는 네트워크 및 보안 관련 고성능 장비 시장의 진입 장벽이 낮아지고 있는 것과도 연관시켜 볼 수 있다. 그 동안 네트워크 및 보안 관련 장비 성능 확보는 몇몇 선도 주자들이 아무에게도 알려주지 않는 레시피 같은 것이었다. 그러던 것이 이제 누구에게나 레시피가 공개되는 분위기다. 이런 시장의 변화 속에서 오픈 소스 기반 상용 제품들이 어느 정도 위력을 발휘하며 나름의 자리를 잡아 갈지 그 귀추가 주목된다.
*본 칼럼 내용은 본지 편집방향과 다를 수 있습니다.