[Scamper-dev] Scamper Data Objects
Bradley Huffaker
bhuffake at caida.org
Mon May 24 18:15:38 PDT 2004
https://staff.caida.org/~bhuffake/projects/scamper/specifications/data_specifications.20040524.txt
##############################################################
Mon May 24 18:14:42 PDT 2004
written by Bradley Huffaker
##############################################################
--------------------------------------------------------------------
Goals
--------------------------------------------------------------------
This should outline the different data objects:
--------------------------------------------------------------------
Scamper Data Objects
--------------------------------------------------------------------
Start Cycle Object - This marks the beginning of the cycle and lists
the set of options which will be used for the
comming cycle. These options can include: collect
hop RTT, number of tries for a non responsive
hope,or to use source routing.
End Cycle Object - This will mark the end of a cycle and will be used
by archive/sorter to close off the filehandler
for this cycle.
IP Key Object - This holds a Dictionary Index for each IPv6
address seen.
Ip Path Object - This holds the collection of information which
is stored when IP path discovery is preformed for a
destination with a fixed set of Source Routed IPs.
MTU Path Object - This will hold the collection of information which
is stored when MTU discovery is preformed for a
destination with a fixed set of Source Routed IPs.
--------------------------------------------------------------------
Start Cycle Object
--------------------------------------------------------------------
This marks the beginning of the cycle and lists the set of options which
were used in the following cycle.
Main Attributes
ListId int List ID to which is starting a cycle
Description text field Short decription of list's
goal.
Options Attributes
NumTries int The num of Times to try a
destination be quiting
CollectHopRtt boolean Whether to colelct Rtt,NumTries
for the intermidate hops.
GapLimit int This is the limited number of
nonresponsive hops
collect hop RTT, number of tries for a non responsive hope,or to use
source routing.
--------------------------------------------------------------------
End Cycle Object
--------------------------------------------------------------------
This marks the end of a cycle. Not sure how important it is. Although
we could choose to store some statistics about the cycle just run and since
it would always be a the end of the file it should be easy to just skip to
that point to collect them.
Main attributs
ListId int List ID to which is ending a cycle
Statics Attributes
NumberIps int number of traces
NumberComplete int number of traces complete
NumberReply int number of traces with replies
--------------------------------------------------------------------
IP Key Object
--------------------------------------------------------------------
This holds the Dictionary Key to IP address mapping.
ListId int List to which this key belongs
CycleId int Cycle to which this key belongs
IpKey 32 bits Unique Key for a given IP
Address Family int The address family of the IP
IP 128 bits network ordered IP address
--------------------------------------------------------------------
IP Path Object
--------------------------------------------------------------------
This holds the information collected about a trace to a given destination.
Header Attributes
ListId int List to which this trace belongs
CycleId int Cycle to which this trace belongs
Address Family int Address Family used in the trace
SourceIP 32 bits IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
DestinationIP 32 bits IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
Timestamp long int When trace started probing
Reply Attributes
ReplyRecieved boolean Flag to whether Destination responded
RequestTTL int TTL of request which got first
response
ReplyRTT double RTT to get reply from destination
ReplyTTL int TTL found in replying packet
NumTries int Number of attempts at given TTL
before a Response.
Halt Attributes
HaltReason int Possible Flags
HaltReason HaltReasonData
------------------------------------
S success/no_halt - null -
U icmp_unreachable icmp_code
L loop_detected loop_length
G gap_detected gap_limit
HaltReasonData int icmp_code - The IMCP code that
caused the halt
loop_length - length of loop
that caused the halt
gap_detected - gap length that
caused the halt.
Source Route Attributes
NumSourceRouteIPs int Number of Source Routed IPs
SourceRouteIPs 32 bit Array Array of IPs
IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
IP Hop Attributes
NumIpHopObjects int Number of IpHopObjects
IP Hop Object
ReplyIP 32 bits IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
RequestTTL int TTL of request which got first
response
ReplyRTT double RTT to get reply from destination
ReplyTTL int TTL found in replying packet
NumTries int Number of attempts at given TTL
--------------------------------------------------------------------
MTU Path Object
--------------------------------------------------------------------
This holds the information collected about a MTU hops
Header Attributes
ListId int List to which this trace belongs
CycleId int Cycle to which this trace belongs
Address Family int Address Family used in the trace
SourceIP 32 bits IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
DestinationIP 32 bits IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
Timestamp long int When trace started probing
Halt Attributes
HaltReason int Possible Flags
HaltReason HaltReasonData
------------------------------------
S success/no_halt - null -
U icmp_unreachable icmp_code
L loop_detected loop_length
G gap_detected gap_limit
HaltReasonData int icmp_code - The IMCP code that
caused the halt
loop_length - length of loop
that caused the halt
gap_detected - gap length that
caused the halt.
Source Route Attributes
NumSourceRouteIPs int Number of Source Routed IPs
SourceRouteIPs 32 bit Array Array of IPs
IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
MTU Hop Attributes
NumMtuObjects int Number of Mtu Objects Stored
MTU Hop Object
MTU int MTU recorded
ReplyIP 32 bits IPv4 - actual IP address
IPv6 - IpKey from IP Key Object
RequestTTL int TTL of request which got first
response
ReplyRTT double RTT to get reply from destination
ReplyTTL int TTL found in replying packet
NumTries int Number of attempts at given TTL
--
Bradley Huffaker Terrorism is the price of Liberty
CAIDA/SDSC/UCSD Tyranny is the price of Security
More information about the Scamper-dev
mailing list