2013. 10. 24. 11:53ㆍ카테고리 없음
PeerSim
Peersim은 두가지 시뮬레이션 모델이 있으며 Cycle-based와 Event-Based모델이다. Cycle-based모델 같은 경우에는 비교적 간단하면 매번 주기마다 동작을 실행하며 확장성이 좋고 최대 1000만 수준의 노드를 지원한다. 그러나 전송 계층의 시뮬레이션을 지운하지 않으며 병행처리를 지원하지 않는다.
Event-Based모델 같은 경우에는 이벤트에 따라 동작이 실행되며 전송 계층의 시뮬레이션도 지원하고 Cycle-Based모델에서 개발한 모든 시뮬레이션도 실행할수 있다. 효율이 그닥 높지 않은 편이다.
시뮬레이션 실행 절차는 아래와 같다.
1. 노드의 네트워크 크기 정한다.
2. 하나 이상의 프로토콜을 선택하여 초기화
3. Control 개체 중 하나 혹은 그이상의 관심을 가진 속성을 모니터링하며 시뮬레이션 과정에서 변수를 수정
4. Config파일에 따라 시뮬레이터 클래스를 사용하여 시뮬레이션을 진행한다.
Node: 노드가 포함하고 있는 프로토콜들의 사용 방법을 제공하며 매개의 노드마다 고정ID를 제공하고 있다.
Linkable: 일반 프로토콜로 실행되며 다른 이웃노드 프로토콜에세 서비스를 제공하고 같은 linkable프로토콜 클래스 끼리 오버레이 네트워크를 구현한다. 주요 방법addNeighbor(Node neighbor), getNeighbor(int i), degree()
Control: 이 인터페이스는 시뮬레이션 스케줄을 실행하는 동안 시간에 실행될수 있으며 주로 초기화 및 성능 분석을 위한 시뮬레이션 작업을 모니터링하거나 수정하는 데사용 된다. 하나의 방법만 제공한다. execute()
CDProtocol: 매 사이클마다 노드 동작에 대한 설명이다.