Libra - Datasets

What is Libra?

Libra is a tool to verify that a snapshot of the network forwarding table state satisfies some basic properties such as connectivity, lack of blackholes, and policies such as isolation (the opposite of reachability). What makes Libra unique is that it is specifically designed with scalability in mind. Using MapReduce, Libra runs on a network with 2.6 million forwarding rules and 11 thousand subnets in less than a minute.

Libra was presented at NSDI 2014. Here is the talk video:

This website has a description of the datasets we used to evaluate Libra and external links to download it. We are releasing ONE of these datasets as it will help the community in two ways:

Dataset

There are three datasets:

The table below shows the sizes of the topology. Section 8.1 in the paper has a more detailed description.

Dataset Switches Rules Subnets
DCN 11,260 2,657,422 11,136
DCN-G 1,126,001 265,742,626 1,113,600
INET 316 151,649,486 482,966

INET

Download INET RIB CSV here. To generate INET by yourself, visit Libra data repo and follow the instructions.

DCN

Work in progress.

DCN-G

Work in progress.

Format

The RIB CSV file contains the following:

Prefix,LocalRouter,RemoteRouter
Here, Prefix is in IPAddress/PrefixLength format denoting the prefix (e.g. 1.0.0.0/8). LocalRouter is a string that is the name of the node in the topology. RemoteRouter is the next hop router name the packet matching the routing entry should be forwarded to.

Citation

If you use this dataset in your project, please use this citation. The one on Google Scholar has some errors.

@article{zeng2014libra,
  title={{Libra: Divide and Conquer to Verify Forwarding Tables in Huge Networks}},
  author={Zeng, Hongyi and Zhang, Shidong and Ye, Fei and Jeyakumar, Vimalkumar and Ju, Mickey and Liu, Junda and McKeown, Nick and Vahdat, Amin},
  journal={NSDI},
  year={2014}
}