네트워크 시뮬레이션

Network simulation

컴퓨터 네트워크 연구에서 네트워크 시뮬레이션은 소프트웨어 프로그램에 의해 실제 네트워크의 동작을 복제하는 기술이다. 이것은 라우터, 스위치, 노드, 액세스 포인트, 링크 등과 같은 서로 다른 네트워크 실체들 간의 상호작용을 계산함으로써 달성된다. 대부분의 시뮬레이터는 상태 변수가 불연속 지점에서 변하는 시스템의 모델링을 사용하는 이산 이벤트 시뮬레이션을 사용한다. 네트워크의 동작과 그것이 지원하는 다양한 애플리케이션과 서비스들은 시험소에서 관찰될 수 있다; 환경의 다양한 속성들 또한 네트워크/프로토콜이 다른 조건에서 어떻게 동작하는지를 평가하기 위해 통제된 방식으로 수정될 수 있다.

네트워크 시뮬레이터

네트워크 시뮬레이터컴퓨터 네트워크의 동작을 예측하는 소프트웨어다. 통신망은 전통적인 분석 방법으로는 시스템 행동에 대한 정확한 이해를 제공하지 못할 정도로 복잡해졌기 때문에, 네트워크 시뮬레이터가 사용된다. 시뮬레이터에서는 컴퓨터 네트워크를 기기, 링크, 애플리케이션 등으로 모델링하고, 네트워크 성능을 보고한다. 시뮬레이터는 5G, 사물인터넷(IoT), 무선랜, 모바일 애드혹 네트워크, 무선 센서 네트워크, 차량 애드혹 네트워크, 인지라디오 네트워크, LTE 등과 같이 오늘날 사용되고 있는 가장 인기 있는 기술과 네트워크에 대한 지원을 제공한다.

시뮬레이션

상용 시뮬레이터의 대부분은 GUI를 기반으로 하는 반면, 일부 네트워크 시뮬레이터는 CLI를 기반으로 한다. 네트워크 모델/구성은 네트워크(노드, 라우터, 스위치, 링크)와 이벤트(데이터 전송, 패킷 오류 등)를 설명한다. 출력 결과에는 네트워크 수준 메트릭스, 링크 메트릭스, 장치 메트릭 등이 포함될 수 있다. 또한 시뮬레이션 추적 파일 측면에서의 드릴다운도 이용할 수 있을 것이다. 추적 파일은 모든 패킷, 시뮬레이션에서 발생한 모든 이벤트를 기록하고 분석에 사용된다. 대부분의 네트워크 시뮬레이터는 보류 중인 "이벤트"의 목록이 저장되는 이산 이벤트 시뮬레이션을 사용하며, 그러한 이벤트는 미래 이벤트를 트리거하는 이벤트(예: 한 노드에서 패킷이 도착하는 이벤트)를 트리거하는 이벤트와 함께 순서대로 처리된다.

네트워크 에뮬레이션

네트워크 에뮬레이션은 사용자가 실제 장치와 애플리케이션을 테스트 네트워크(시뮬레이션)에 도입할 수 있도록 하며, 테스트 네트워크는 실시간 네트워크의 동작을 모방하는 방식으로 패킷 흐름을 변화시킨다. 실시간 트래픽은 시뮬레이터를 통과할 수 있으며 시뮬레이션 내의 물체에 의해 영향을 받을 수 있다.

일반적인 방법론은 라이브 애플리케이션의 실제 패킷이 에뮬레이션 서버(가상 네트워크를 시뮬레이션하는 위치)로 전송되는 것이다. 실제 패킷은 시뮬레이션 패킷으로 '변조'된다. 시뮬레이션 패킷은 손실, 오류, 지연, 지터 등의 효과를 경험한 후 실제 패킷으로 분해되어 이러한 네트워크 효과를 실제 패킷으로 전달한다. 따라서 실제 패킷이 실제 네트워크를 통해 흘러갔지만 실제로는 시뮬레이션 네트워크를 통해 흘러갔다면 그것은 그렇다.

에뮬레이션은 구축에 앞서 통신망의 유효성을 검증하기 위한 설계 단계에서 널리 사용된다.

네트워크 시뮬레이터 목록

무료/오픈 소스 및 독점적 네트워크 시뮬레이터가 모두 이용 가능하다. 주목할 만한 네트워크 시뮬레이터/에뮬레이터의 예는 다음과 같다.

  • NS2 ~/ NS3는 오픈 소스이며 무료임
  • IoTify Network & IoT Simulator
  • EstiNet Network Simulator & Emulator
  • OPNET(리버베드)
  • NetSim (Boson UK)
  • Altair Engineering WinProp(Altair Inc. 미국)
  • NetSim(Tetcos)
  • 글로모심

상업 및 오픈 소스 코드 편집 가능.

네트워크 시뮬레이터 사용

네트워크 시뮬레이터가 비용 효율적인 방법 제공

  • 기업/데이터 센터/센서 네트워크 등을 위한 네트워크 설계 검증
  • 서비스 제공업체 및 규제 기관을 위한 5G 용량 및 지연 연구
  • 네트워크 R&D(모든 네트워크 연구 논문의 70% 이상이 네트워크 시뮬레이터를 참조)
  • HF / UHF / VHF 라디오 기반 MANET 라디오, 전술 데이터 링크 등과 같은 방어 애플리케이션
  • 네트워크 중심전
  • IOT, VANET 시뮬레이션
  • UAV 네트워크/드론 군집 통신 시뮬레이션
  • 교육: 온라인 코스, 실험실 실험, R&D. 대부분의 대학들은 하드웨어 장비를 구입하는 것이 너무 비싸기 때문에 네트워크 시뮬레이터를 교수/R&D에 사용한다.

매우 단순한 것에서부터 매우 복잡한 것까지 다양한 네트워크 시뮬레이터가 있다. 최소한 네트워크 시뮬레이터는 사용자가 다음을 수행할 수 있도록 해야 한다.

  • 네트워크의 노드와 해당 노드 간의 링크를 지정하는 네트워크 토폴로지 모델링
  • 노드 간 애플리케이션 흐름(트래픽) 모델링
  • 네트워크 성능 메트릭을 출력으로 제공
  • 패킷 흐름 시각화
  • 기술/프로토콜 평가 및 장치 설계
  • 드릴다운 분석/디버깅을 위한 패킷/이벤트 로깅

참고 항목

참조