ns-3 독학 7

NS-3 독학 - 5.fifth.cc

주어진 example Topology를 보면 2개의 노드가 "TCP" protocol을 사용해서 p2p link 연결이 되어있다. 해당 channel은 transmission rate 5 Mbps, delay : 2 ms 이며, IP는 10.1.1.0, SubnetMask 255.255.255.0을 사용하는 것 같다. 주어진 주석을 보면 다음과 같이 쓰여있다. 대충 읽어보면 sender socket 쪽의 TCP cwnd의 변화를 보고싶고, 이를 Tracing 해보자는 것 같다. 일반적으로, flow를 만들기 위해 on-off application을 사용한다. 그러나 on-off application socket은 Application이 시작될 때까지 생성되지 않으며, 따라서 configuration ti..

개인 공부 2024.01.15

NS-3 독학 - 3.Third.cc

second.cc에서 {n0,n5,n6,n7}이 Wifi (10.1.3.0)으로 연결되어있는 구조가 추가되었다. 이를 구현해보겠다. int main(int argc, char* argv[]) { bool verbose = true; uint32_t nCsma = 3; uint32_t nWifi = 3; bool tracing = false; CommandLine cmd(__FILE__); cmd.AddValue("nCsma", "Number of \"extra\" CSMA nodes/devices", nCsma); cmd.AddValue("nWifi", "Number of wifi STA devices", nWifi); cmd.AddValue("verbose", "Tell echo applications..

개인 공부 2024.01.12

NS-3 독학 - 2. Second.cc

NS-3 example 코드들의 2번째, Second.cc를 분석해보겠다. 토폴로지를 살펴보면, n0와 n1은 first.cc와 같이 구성되어있다. 다만, n1~n4는 10.1.2.0의 IP를 가진 LAN에 있다. int main(int argc, char* argv[]) { bool verbose = true; uint32_t nCsma = 3; CommandLine cmd(__FILE__); cmd.AddValue("nCsma", "Number of \"extra\" CSMA nodes/devices", nCsma); cmd.AddValue("verbose", "Tell echo applications to log if true", verbose); cmd.Parse(argc, argv); if (v..

개인 공부 2024.01.11

NS-3 독학 - 1. First.cc

- VS code에서 ns-3를 돌릴 예정이다. 따라서 vs code에 ns-3가 설치된 Linux를 연결해줄 필요가 있다. 1. VS code 설치 https://code.visualstudio.com/ 2. WSL 원격 연결, C,C++ Extension 설치 (python으로 해도 되는 것 같지만 나는 C++이 더 편해서 .cc code들로 진행을 했다.) 3. Terminal에서 필요한 패키지 설치 및 ns-3가 설치된 경로에서 VS code 실행 - sudo apt-get update -y - sudo apt-get install xdg-utils -y - sudo apt-get install gcc -y - sudo apt-get install gdb - code . (WSL 환경에서 VSCo..

개인 공부 2024.01.11

NS-3 독학 - 0. 설치하기

다양한 컴퓨터 네트워크 분야의 논문들을 읽어보니 이들을 직접 구현해보기 위해서는 결국 시뮬레이터의 필요성이 강하게 느껴졌다. 따라서 나도 직접 시뮬레이터를 돌려서 데이터 셋을 뽑아보고 이를 기반으로 논문들의 내용을 구현해보고자 NS-3를 공부하게 되었다. 일단 공부하려면 설치부터 하여야하기에, 설치법을 알아보도록 하겠다. - Linux 환경에서 NS-3를 구성 나는 Ubuntu 22.04.3 LTS를 사용하였다. 그 후, ns-3.40 버전을 다운받았다. (*링크 : https://www.nsnam.org/) ns-3.40을 다운받는 곳에 보면 documentation이 있다. 여기서 Tutorial을 보면 친절히 설치법이 다 설명되어있다. 만약 후에 이 글을 보고 설치하다가 버전이 달라 설치가 안되면 ..

개인 공부 2024.01.10