2016-09-26 4 views
0

혈관과 inet을 연결하는 동안 내 차가 등록되지 않았습니다. nic80211p interfaceEntry가 InterfaceTable에 있습니다. 실제로, 인터페이스에는 모든 노드에 대한 루프백 10 만 포함됩니다. 그것은 기록되는 omnet/INET 설명서에 omnet ++/veins : nic 용 인터페이스 항목을 등록하는 방법 80211p

:.

"인터페이스가 네트워크 인터페이스 카드 (NIC)를 나타내는 모듈에 의해 초기화 단계에서 동적으로 등록은 INET 프레임 워크는 다단 초기화 이용한다 OMNeT ++의 기능 및 인터페이스 등록은 첫 번째 단계에서 수행됩니다 (즉, INITSTAGE_LINK_LAYER 단계).

그렇다면 Nic80211p.ned와 특히 Mac1609_4 :: initialize()에서 등록 정보를 이해할 수 있습니까?

당신은 어떻게 생각하십니까?

도움 주셔서 감사합니다. 감사합니다,이 질문에 질문을 받았다 때문에

+0

에 (Browse Files를 클릭 한 후, 당신은 전체 프로젝트의 .ZIP 아카이브를 다운로드 할 수 있습니다, 등) 필요한 코드를 볼 수 있습니다, 그것은에 가장 쉬운 방법입니다 호스트 자동 구성기를 사용하여 인터페이스를 등록하십시오. 이렇게하면 모든 것이 INET 프레임 워크에 의해 예상대로 설정됩니다. 다른 버전은 완전히 다르게 동작 할 수도 있지만 사용중인 버전을 모른 채로는 추측하기 어렵습니다. –

+0

크리스토프 감사합니다. Inet 3.4.0과 veins4.4를 사용하고 있습니다. 정맥에서 BaseMacLayer :: registerInterface()에 등록 인터페이스를 추가했고 이제 인터페이스는 ipv4 주소를 표시합니다. – cnvp

+0

하지만 다른 문제에 직면하고 있습니다. Mac1609_4.ned는 WaveShortMessages가 아닌 것을 거부합니다. 그래서 IPv4의 메시지는 거부 ... "만약 ((thisMsg = dynamic_cast는 (MSG)) == NULL) { \t \t 오류 ("WaveMac 만 WaveShortMessages 받아 들인다 "); 이 \t}" – cnvp

답변

0

는 Github에서의 혈관 저장소 노드의 이동성을 위해 정맥을 사용하여 INET 프레임 워크 (INET 3.4.0) 시뮬레이션을 실행하는 샘플 하위 프로젝트 (veins_inet)를 포함하도록 개정되었다.

당신은 4.4과 호환되는 정맥 INET 프레임 워크 https://github.com/sommer/veins/commit/90d4586e