Title: Dip Author: Kaisen Lin (kaisenl@cs.ucsd.edu) ------------------ Dip is a dissemination protocol for detecting and disseminating new items in a network. It uses the same interfaces as Drip. It improves node density and item scalability by sending only one packet per interval rather than many. If the network is small and with very few data items, Drip may be more efficient due to Dip's advertisement overhead. Notes: ------ Data disseminated under Dip cannot be larger than 16 bytes. It was not designed for large data items, but rather for many small data items. Ties, like Drip, are handled with higher node IDs serving as tiebreakers. Key 0 is reserved, do not use it. There is minimal error checking, don't try to intentionally break it. (e.g. illegal keys, weird and wacky version numbers) Usage: ------ To use include the following in your Makefile: CFLAGS += -I$(TOSDIR)/lib/net CFLAGS += -I$(TOSDIR)/lib/net/dip CFLAGS += -I$(TOSDIR)/lib/net/dip/interfaces