ns-3 9

(NS-3) IRSML 시뮬레이션 직접 구성하기 - 1

이번에는 공부한 NS-3 내용을 바탕으로 IRSML에서 제시한 토폴로지를 직접 구현, 시뮬레이션을 통해 SL,RL 과정을 거쳐 score를 산출해볼 것이다. 구현을 하다가 부족한 부분이 있으면 중간중간 NS-3를 추가로 공부하는 방법으로 접근하려고 한다. 2024.01.17 논문 상의 내용으로보면, 30~60개의 MH들은 17개의 AP에 연결되어있고, 3개의 AP는 optical fiber with the gigabit ethernet standard로 연결되어있다고 한다. 그리고 해당 시뮬레이션을 1020회 반복했다고 한다. 따라서 구현부에서 우선적으로 생각을 해볼 수 있는건 매 반복마다 number of mobile host 값을 정하는 것 이었다. (참고하면 좋은 attribute name 모음 :..

구현 2024.01.17

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

모각코 팀장을 맡으며.

이번 23학년 겨울학기 충남대학교에서 진행하는 "모여서 각자 코딩"이라는 활동에서 조를 구성하여 참여하기로 결정하였다. 지금껏 내가 공부해온 것들과 공부하는 과정을 기록해본 적이 없어 꽤 재미있는 경험이 될 것 같아서도 있고, 이렇게라도 나를 구속시켜야 자유로운 방학기간동안 한 글자라도 더 공부를 할 수 있을 것이라고 생각한 것이 그 이유이다. 말이 길었는데, 결론적으로 모각코 때 학습하려고 계획 중인 리스트는 다음과 같다. 1. ns3 2. 졸업 프로젝트 관련 공부. (추후 교수님과 상담을 하고 구체화 시킬 예정) 3. 알고리즘, 자료구조 관련 공부 누군가 보기에는 '뭐야? 고작 3개?' 라고 생각할 수는 있지만 내 그릇이 딱 그 정도인 것을 잘 알기에 일단 소박하게 구성해보았다. 현재 목표는 이번 주..