캐리어 급 주소 변환기(NAT)의 설계 및 구현

Design and Implementation of Carrier-Grade Network Address Translation (NAT)

  • 투고 : 2016.07.12
  • 심사 : 2016.10.05
  • 발행 : 2016.10.31


최근 들어, 유무선 망의 종단 사이에 위치하여 다양한 네트워크 기능을 제공하는 미들박스 서비스가 일반화되고 있다. 특히, 클라우드 컴퓨팅 분야의 가상화 기술이 네트워크 분야에 적용되면서 네트워크 가상화가 빠르게 진행되고, 가상 네트워크 장비들을 유연하게 연결하여 민첩한 네트워크 서비스를 제공하는 플랫폼들이 연구되고 있다. 본 논문에서는 캐리어 급 미들박스 서비스를 제공하기 위한 필수 요소들을 살펴보고, 범용서버에서 캐리어 급 네트워크 주소 변환 서비스를 제공하기 위한 프레임워크의 설계와 구현에 대해 기술한다. 실험 결과에 의하면, 제안하는 프레임워크는 기존의 리눅스 커널에서 제공하는 주소 변환 기능보다 15.5배 빠른 성능을 보인다.


  1. B. Carpenter, Middleboxes: taxonomy and issues, RFC 3234, 2002.
  2. J. Yang, H. Park, Y. Kim, and J. Choi, "A virtual object hosting technology for IoT device controlling on wireless AP's," J. KICS, vol. 39, no. 2, pp. 164-172, Feb. 2014.
  3. S. Perreault, Ed., Common requirements for carrier-grade NATs (CGNs), RFC 6888, 2013.
  4. T. Jeffree, IEEE draft standard for local and metropolitan area networks, virtual bridged local area networks, amendment 4: Provider bridges, IEEE 802.1ad, 2005.
  5. B. Leslie, P. Chubb, N. Fitzroy-Dale, S. Gotz, C. Gray, L. Macpherson, D. Potts, Y. Shen, K. Elphinstone, and G. Heiser, "User-level device drivers: achieved performance," J. Comput. Sci. Technol., vol. 20, no. 5, pp. 654-664, Sept. 2005.
  6. J. H. Salim, R. Olsson, and A. Kuznetsov, "Beyond softnet," in Proc. Linux 2.5 Kernel Developers Summit, San Jose, CA, USA, Mar. 2001.
  7. DPDK, Retrieved July 5, 2016, from
  8. J. Hwang, K. K. Ramakrishnan, and T. Wood. "NetVM: high performance and flexible networking using virtualization on commodity platforms," IEEE Trans. Netw. Serv. Management, vol. 12, no. 1, pp. 34-47, 2015.
  9. G. Pongracz, L. Molnar, and Z. L. Kis, "Removing roadblocks from SDN: OpenFlow software switch performance on Intel DPDK," in Proc. 2nd Eur. Wksp. Softw. Defined Netw., pp. 62-67, Berlin, Germany, Oct. 2013.
  10. I. Cerrato, M. Annarumma, and F. Risso, "Supporting fine-grained network functions through Intel DPDK," in 3rd Eur. Wksp. Softw. Defined Netw., pp. 1-6, Budapest, Hungary, Sept. 2014.
  11. OPNFV, Retrieved July 5, 2016, from
  12. ODP, Retrieved July 5, 2016, from
  13. M. Dobrescu, N. Egi, K. Argyraki, B. G. Chun, K. Fall, G. Iannaccone, A. Knies, M. Manesh, and S. Ratnasamy, "Routebricks: exploiting parallelism to scale software routers," in Proc. ACM SIGOPS 22nd Symp. Operating Syst. Principles, pp. 15-28, Big Sky, Montana, USA, Oct. 2009.
  14. S. Han, K. Jang, K. Park, and S. Moon, "Packetshader: a gpu-accelerated software router," ACM SIGCOMM Computer Commun. Rev., vol. 40, no. 4, pp. 195-206, Oct. 2010.
  15. T. Brecht, G. J. Janakiraman, B. Lynn, V. Saletore, and Y. Turner, "Evaluating network processing efficiency with processor partitioning and asynchronous I/O," ACM SIGOPS Operating Syst. Rev., vol. 40, no. 4, pp. 265-278, Oct. 2006.
  16. R. Bolla and R. Bruschi, "PC-based software routers: high performance and application service support," in Proc. ACM Wksp. Programmable routers for extensible services of tomorrow, pp. 27-32, Seattle, WA, USA, Aug. 2008.
  17. J. Martins, M. Ahmed, C. Raiciu, V. Olteanu, M. Honda, R. Bifulco, and F. Huici, "Clickos and the art of network function virtualization," in Proc. 11th USENIX Symp. NSDI 14, pp. 459-473, Seattle, WA, USA, Apr. 2014.
  18. The Pktgen Application, Retrieved July 6 2016, from
  19. T. Ahn, Y. Kim, and S. Lee, "Dynamic resource allocation in distributed cloud computing," J. KICS, vol. 38, no. 7, pp. 512-518, Jul. 2013.
  20. H. Kim and H. Kim, "Control algorithm for virtual machine-level fairness in virtualized cloud data center," J. KICS, vol. 38, no. 6, pp. 512-520, Jun. 2013.
  21. A. Drebes, A. Pop, K. Heydemann, N. Drach, and A. Cohen, "NUMA-aware scheduling and memory allocation for data-flow task-parallel applications," in Proc. 21st ACM SIGPLAN Symp. Principles and Practice of Parallel Programming, no. 44, Barcelona, Spain, Mar. 2016.