미들박스 서비스를 위한 전용 소프트웨어 플랫폼과 네트워크 기능 가상화

  • 박경수 (카이스트 전기 및 전자공학과)
  • Published : 2014.05.30

Abstract

소프트웨어기반의 네트워크 미들박스 시스템은 특정 하드웨어의 종속성을 탈피하고, 다양한 여러 기능을 유연하게 제공할 수 있는 장점이 있어 최근 큰 각광을 받고 있다. 더욱이 최근 멀티코어 및 매니코어 프로세서의 발전 및 큰 대역폭을 지원하는 네트워크 카드의 등장은 저렴한 범용 컴퓨팅 하드웨어 기반에서도 높은 성능의 미들박스 서비스를 소프트웨어만으로 쉽게 제공할 수 있는 가능성을 보여주고 있다. 하지만 기존의 소프트웨어기반 네트워크 미들박스 시스템 개발에서 쓰이는 네트워킹 소프트웨어 스택은 여러 미들박스 서비스를 쉽게 만들고 유지하기에 불편한 점이 많이 있다. 첫째로, 리눅스(Linux)와 같은 범용 운영체제는 버클리 소켓(Berkeley socket)과 같이 엔드 노드를 위한 네트워킹 스택을 지원하는 반면 네트워크 미들박스 서비스 제작을 위한 전용 스택은 지원하지 않고 있다. 이로 인해 미들박스에서 많이 쓰는 플로 관리 같은 기능을 IP 패킷처리부터 새로 구현해야 하는 부담이 생긴다. 두번째로, 전용 스택의 부재는 같은 기능을 갖는 여러 미들박스 서비스가 공존할 때에도 그 구현을 공유하지 못하는 문제를 만들어 낸다. 또, 여러 미들박스 서비스가 하나의 물리적 하드웨어 위에서 수행될 경우에도 인터페이스가 일정하지 않아 같은 연산을 중복 수행해 자원 낭비를 초래한다. 본 논문에서는 차세대 소프트웨어기반 미들박스 서비스 설계 및 제작을 용이하게 하기 위한 전용 소프트웨어 스택의 필요성을 알아보고, 이런 전용 스택이 만들어 낼 수 있는 여러 가능성을 짚어본다.

Keywords

References

  1. J. Novak., "Suricata TCP Evasions," Personal Blog, 2010 (http://www.packetstan.com/2010/09/ suricata-tcp-evasions.html).
  2. A. Pesterev, J. Strauss, N. Zeldovich, and R. T. Morris. "Improving network connection locality on multi-core systems," In Proceedings of the ACM European conference on Computer Systems (EuroSys), 2012.
  3. S. Han, S. Marshall, B.-G. Chun, and S. Ratnasamy. "MegaPipe: a new programming interface for scalable network I/O," In Proceedings of the USENIX conference on Operating Systems Design and Implementation (OSDI), 2012.
  4. E. Jung, S. Woo, M. Jamshed, H. Jung, S. Ihm, D. Han, K. Park. "mTCP: A Highly Scalable User-level TCP Stack for Multicore Systems," In Proceedings of the USENIX Symposium on Networked System Design and Implementation (NSDI), 2014.
  5. TCPDUMP. http://www.tcpdump.org.
  6. M. Roesch. "Snort - Lightweight Intrusion Detection for Networks," In Proceedings of the USENIX Systems Administration Conference (LISA), 1999.
  7. Y. Go, J. Won, D. Kune, E. Jung, Y. Kim, K. Park. "Gaining Control of Cellular Traffic Accounting by Spurious TCP Retransmission," In Proceedings of the 21st Annual Network and Distributed System Security Symposium (NDSS), 2014.
  8. Intel DPDK: Data Plane Development Kit. http:// dpdk.org/.
  9. S. Han, K. Jang, K. Park, and S. Moon . "PacketShader: a GPU-accelerated Software Router," In Proceedings of ACM SIGCOMM, 2010.
  10. L. Rizzo. "netmap: a novel framework for fast packet I/O,"In Proceedings of the USENIX conference on Annual Technical Conference (ATC), 2012.
  11. L. Deri. "Improving Passive Packet Capture: Beyond Device Polling," In Proceedings of the International System Administration and Network Engineering Conference (SANE), 2004.
  12. V. Sekar, N. Egi, S. Ratnasamy, M. K. Reiter, and G. Shi. "Design and Implementation of a Consolidated Middlebox Architecture,"In Proceedings of the USENIX Symposium on Networked Systems Design and Implementation (NSDI), 2012.
  13. J. W. Anderson, R. Braud, R. Kapoor, G. Porter, and A. Vahdat. "xOMB: Extensible Open Middleboxes with Commodity Servers,"In Proceedings of the eighth ACM/IEEE symposium on Architectures for networking and communications systems (ANCS), 2012.
  14. Suricata Intrusion Detection System. http://www. openinfosecfoundation.org/index.php/downloadsuricata.
  15. S. Woo, E. Jeong, S. Park, J. Lee, S. Ihm, and K.Park. "Comparison of caching strategies in modern cellular backhaul networks," In Proceedings of the Annual International Conference on Mobile Systems, Applications, and Services (MobiSys), 2013.
  16. M. Jamshed, J. Lee, S. Moon, I. Yun, D. Kim, S. Lee, Y. Yi, and K. Park. "Kargus: A Highly-scalable Software-based Intrusion Detection System,"In Proceedings of the 19th ACM Conference on Computer and Communications Security (CCS '12), 2012.
  17. K. Jang, S. Han, S. Han, S. Moon, and K. Park. "SSLShader: Cheap SSL Acceleration with Commodity Processors," In Proceedings of the 8th USENIX conference on Networked Systems Design and Implementation (NSDI), 2011.