Universita' degli Studi di Napoli ''Federico II'' (Italy)
Dipartimento di Ingegneria Elettrica e delle Tecnologie dell'Informazione (DIETI)

Network Monitoring and Measurements  

ippo-lib - IP oPtion-based active PrObing

Active Probing Library for IP Options Equipped probes

IPPO is a library written in C++ to semplify sending packets probes typically used in Internet Measurements based on active probing and the analysis of the collected replies. In particular, the library allows to easily forge and send packet probes equipped with IP options and it has been purposely studied to support large scale active proving measurement campaigns.

The packet probes currently implemented are listed in the following table:

Packet Probe Expected Reply Description
ICMP Echo Request ICMP Echo Reply The classic ping probe
UDP ICMP Port Unreachable A UDP probe sent toward an unused destination port (default 33457) to solicit a ICMP Port Unreachable message
TCP SYN TCP RST A TCP SYN packet toward an unassigned well-known port (default 737) to solicit a TCP reset reply
PROTOCOL ICMP Protocol Unreachable An IP packet with a customized protocol number (by default set to 57, SKIP protocol) to solicit an ICMP Protocol Unreachable reply

All the packet probes highlighted above can be equipped with the following IP options:

Prespecified Timestamp IP option, rfc791

Equipping a packet probe with this variant of the IP Timestamp Option allows to request a timestamp from up to four "prespecified" IPs. We use the option according to the (D|XYZW) format with D represents the destination of the probe and XYZW the ordered list of prespecified IPs).

When using ICMP and TCP packet probes, IPPO extracts the returned option (if present) from the IP layer of the reply packet, while, regarding UDP and PROTOCOL packet probes, the option is extracted from the original probe carried back by the ICMP error packet. However, some devices replicate the IP option also in the IP header encapsulating the ICMP error packet. In those cases, the IPPO makes available both the encapsulated and encapsulating Prespecified Timestamp options. The term Outer and Inner Option refers respectively to the IP option of the encapsulating IP header and the IP header encapsulated in the ICMP error message.


IPPO Library is maintained and continueously improved by the Traffic group of the University of Napoli (UoN), headed by Antonio Pescapè.

Contributors: Francesco Cesareo,Pietro Marchetta, Antonio Pescapè,Walter de Donato.



Click here to downlad IPPO-lib. new

Documentation and examples are provided with the IPPOLib library package as well.

How to use ippo-lib

Click here to getting started with ippo-lib.

If you are interested in collaborating with us or in opportunities in Traffic, please send an e-mail to Antonio Pescapè