2016-06-10 1 views
0

Veins/Omnet ++ 시뮬레이션에서 두 대의 차량이 데이터를 교환하기 위해 범위 내에있을 때 어떻게 결정할 수 있습니까? 제가 시뮬레이션에서 3 대의 차량을 가지고 있다고 가정 해보십시오 (v1, v2, v3). 시뮬레이션 동안이 차량들은 서로 몇 번지나갑니다. 이제 v1과 v2가 서로를 통과하고 각각이 반대 방향으로 진행된다고 가정합니다. 만남은 약 5 초 동안 지속됩니다 (이 두 차량이 5 초 동안 데이터를 교환하거나 v1이이 5 초 동안 v2에서 데이터를 수신 함). 제 질문은, v1과 v2가 얼마나 오래 서로 연락을 취했는지 알 수 있습니까? 시뮬레이션 과정에서 여러 번 서로 마주 칠 수 있음을 명심하십시오.두 차량이 접촉 할 때 결정 (Veins, Omnet ++)

tstartv1가 다른 차량 (VX)와 패킷을 교환하는 시작 시간을 나타내는 것
1- <tstart, tend, #packets exchanged> 
2- <tstart, tend, #packets exchanged> 
. 
. 
. 

tend 그 차량 데이터 교환의 끝을 나타내는 것 (: 그래서 결국에 나는 v1의 생성이 뭔가를 할 수 있습니다 vx) 및 #packets exchangedtstarttend 사이에 교환 된 패킷 수를 표시합니다.

답변

0

두 대의 차량이 데이터를 성공적으로 교환 할 수 있는지 여부는 여러 가지 요인에 따라 달라지며 그 중 누가 다른 사람이 데이터를 교환하고 있는지에 달려 있습니다.

즉, 실제로 시뮬레이션에서 데이터를 교환 할 수 있었던 사람을 찾을 수 있습니다. 이것이 당신에게주는 것은 "성공적으로 수신 된 패킷"목록입니다.

이러한 이벤트를 연속적인 "전송 블록"으로 그룹화하는 방법은 전적으로 귀하에게 달려 있습니다. 여기에는 거의 선택의 여지가 없다는 주장이 있습니다.

+0

전송 블록을 어떻게 그룹화 하시겠습니까? – dutu

+0

프레임이 일정한 간격으로 도착할 것으로 예상 할 수있는 경우이를 수신에 "갭"이 있는지 판단하기위한 기준으로 사용할 수 있습니다 –