노트북에서 거의 모든 네트워크를 모방하는 가장 좋은 방법!
미네넷 2.3.1B4
Mininet은 단일 시스템의 호스트, 링크 및 스위치의 전체 네트워크를 에뮬레이션합니다. 샘플 2 호스트, 원 스위치 네트워크를 만들려면 실행 중입니다.
sudo mn
Mininet은 대화식 개발, 테스트 및 데모, 특히 OpenFlow 및 SDN을 사용하는 데 유용합니다. Mininet에 프로토 타입으로 된 OpenFlow 기반 네트워크 컨트롤러는 일반적으로 최소한의 변경으로 최소한의 변경으로 하드웨어로 전송 될 수 있습니다.
Mininet은 프로세스 기반 가상화 및 네트워크 네임 스페이스를 사용하여 최근 Linux 커널에서 사용할 수있는 기능을 사용하여 가상 네트워크를 만듭니다. Mininet에서는 호스트가 네트워크 네임 스페이스에서 실행되는 bash
프로세스로 에뮬레이션되므로 일반적으로 Linux 서버 (웹 서버 또는 클라이언트 프로그램)에서 실행되는 모든 코드는 미니넷 "호스트"내에서 잘 실행됩니다. 미니넷 "호스트"는 자체 사각형 네트워크 인터페이스를 갖추고 있으며 자체 프로세스 만 볼 수 있습니다. Mininet의 스위치는 Open vSwitch 또는 OpenFlow 참조 스위치와 같은 소프트웨어 기반 스위치입니다. 링크는 가상 이더넷 쌍으로 Linux 커널에 살고 에뮬레이트 스위치를 에뮬레이션 된 호스트 (프로세스)에 연결합니다.
미니 넷은 다음과 같습니다.
네트워크를 인스턴스화하기위한 명령 줄 런처 ( mn
).
다양한 크기와 토폴로지의 네트워크를 생성하기위한 편리한 Python API.
시작하는 데 도움이되는 예제 ( examples/
디렉토리).
Python help()
docstrings를 통한 전체 API 문서와 make doc
사용하여 PDF/HTML 문서를 생성하는 기능.
Mininet 객체를 사용하여 매개 변수화 된 토폴로지 ( Topo
서브 클래스). 예를 들어, 트리 네트워크는 명령으로 작성 될 수 있습니다.
mn --topo tree,depth=2,fanout=3
유용한 진단 명령 ( iperf
및 ping
)을 제공하는 명령 줄 인터페이스 ( CLI
클래스)와 노드로 명령을 실행하는 기능을 제공합니다. 예를 들어,
mininet> h11 ifconfig -a
호스트 H11에 ifconfig -a
명령을 실행하도록 지시합니다
미네넷이나 리눅스가 남을 수있는 정크 ( /tmp의 파일 등)를 제거하기위한 "정리"명령. 일이 작동하지 않으면 이것을 시도하십시오!
mn -c
Mininet 2.3.1B4는 Python 3 및 Python 2를 지원합니다
Python 3 및 Python 2 버전의 Mininet 버전을 나란히 설치할 수 있지만 가장 최근의 설치는 기본적으로 mn
에서 어떤 Python 버전을 사용하는지 결정합니다.
적절한 버전의 미니넷이 설치되는 한 Python 2 또는 Python 3으로 mn
직접 실행할 수 있습니다.
$ sudo python2 `which mn`
Python 3 및 Python 2 지원에 대한 자세한 내용은 http://docs.mininet.org의 릴리스 노트에서 찾을 수 있습니다.
우분투 지원 22.04 LTS (및 20.04)
GitHub 작업을 통한보다 신뢰할 수있는 테스트 및 CI
CGroups v2 (및 v1)에 대한 예비 지원
사소한 버그 수정 (2.3.1)
이 릴리스 및 이전 릴리스에 대한 추가 정보는 http://docs.mininet.org의 릴리스 노트에서 찾을 수 있습니다.
설치 지침 및 세부 사항은 INSTALL
참조하십시오.
API 문서 ( make doc
) 외에도 미니 넷 연습 및 Python API 소개를 포함한 많은 유용한 정보가 미니넷 웹 사이트에서 제공됩니다. http://faq.mininet.org에서 특히 자주 묻는 질문 (FAQ)에 읽고 기여하도록 권장되는 위키도 있습니다.
미니넷은 커뮤니티 지원입니다. 미니넷 메일 링리스트에 가입 mininet-discuss
것이 좋습니다.
https://mailman.stanford.edu/mailman/listinfo/mininet-discuss
모든 미니 네트 기고자와 사용자에게 다시 한번 감사드립니다!
Mininet은 오픈 소스 프로젝트이며 현재 https://github.com/mininet에서 호스팅하고 있습니다. 코드를 다운로드, 검사 및 수정하고 버그 보고서, 버그 수정, 기능 요청, 새로운 기능 및 기타 문제 및 요청 요청을 제출하는 것이 좋습니다. 미니넷 프로젝트에 코드를 기여한 모든 분들께 감사드립니다 (자세한 내용은 기고자 참조) 미네넷이 계속 성장하고 향상시키는 것은 모든 사람들의 노력 때문입니다.
재미있게 보내세요! 우리는 네트워킹 세계를 바꾸기 위해 미니 넷으로 무엇을 할 것인지 기대합니다.
Bob Lantz, 미니 넷 기고자를 대신하여