本文列出The ONE仿真器有关contact time的Report,包含ContactTimesReport
、InterContactTimesReport
、TotalContactTimeReport
、ContactsDuringAnICTReport
、ContactsPerHourReport
。
1. ContactTimesReport
ContactTimesReport
输出的结果是相遇时间的分布(contact time distribution, the count of connections that lasted for certain amount of time),举例如下:
time nrofContacts
0.0 0
1.0 1545
2.0 2712
3.0 3853
4.0 5232
5.0 6499
6.0 7912
7.0 9846
8.0 13021
9.0 18148
10.0 26595
例如,有6499个节点对(conections
),相遇时间是5.0秒。值得注意的是,粒度granularity
可以在设置文件设置,默认值为1秒。
//Defines how many simulated seconds are grouped in one reported interval.
public static final String GRANULARITY = "granularity";
protected double granularity; //How many seconds are grouped in one group
# 设置文件
ContactTimesReport.granularity = 1.0 # 默认值为1.0
1.1 InterContactTimesReport
InterContactTimesReport
继承ContactTimesReport
,输出的是inter-contact time distribution (the time between the end of previous contact and the beginning of a new contact between two hosts),通俗的说,节点对又过了多久才再次相遇。举例如下:
0.0 0
1.0 579
2.0 451
3.0 362
4.0 338
5.0 314
6.0 309
7.0 259
8.0 266
9.0 226
10.0 194
可见,有314节点对两次相遇间隔为5.0秒。
1.2 TotalContactTimeReport
TotalContactTimeReport
继承ContactTimesReport
,输出结果是total amount of contact times among hosts,举例如下:
# time totalContactTime
2.0000 35.0000
3.0000 71.0000
4.0000 106.0000
5.0000 141.0000
6.0000 174.0000
7.0000 206.0000
8.0000 240.0000
可见,在5.0秒时,节点之间的相遇时间总共为141.0,数值是累加得到的
2.ContactsDuringAnICTReport
与InterContactTimesReport
类似,不同的是,InterContactTimesReport
统计的是节点对再次相遇的间隔,而ContactsDuringAnICTReport
不一定非得要求是相同的节点。(不知道理解对了没)源代码注释如下:
/*
* The number of contacts during an inter-contact time metric is similar to
* the inter-contact times metric, except that instead of measuring the time
* until a node meets again, we count the number of other nodes both of the
* nodes meet separately. In contrast to the inter-contact times, the number
* of contacts during an inter-contact is not symmetric, i.e. during an
* inter-contact both nodes wait the exact same time but will meet a different
* number of nodes.
*/
输出结果,举例如下:
0 4563
1 3498
2 3227
3 3313
4 3398
5 3706
6 3985
7 4548
8 4883
9 5277
10 5516
3. ContactsPerHourReport
ContactsPerHourReport
输出的是每个小时,有多少节点对相遇(counts the number of contacts each hour),举例如下:
0 14454
1 14648
2 14449
3 14449
4 14722
5 14447
6 14334
7 14492
8 14553
9 14245
10 14447
可见,在第一个小时内,有14454次节点对相遇(connections
)。