Anycast
i3 provides support for anycast by allowing applications to specify a prefix for each trigger identifier. Packets are then matched to the identifiers according to the longest matching prefix rule.
Suppose receivers Ri insert triggers whose identifiers share a common prefix p. A packet with the identifier p|a (where p is the prefix and a is the suffix) is matched according to the longest prefix rule and forwarded to the corresponding receiver.
Receivers can choose suffixes to implement different anycast policies. For example, if the suffixes of all triggers and packets (requests) are randomly chosen, this scheme provides load balancing within a factor of log N, where N is the number of receivers. Similarly, if suffixes encode the host locations (e.g. zip code where the host which inserts a trigger or sends a packet is located) the packets will be delivered to a nearby receiver.

i3 Anycast