I am a strong proponent of free and open source software, and I am also an advocate for software patent reform. Please support the Electronic Frontier Foundation.
omnet-extension and inet-extension: Code for OMNET++ that enables the simulator to interact with the decision engine of a streaming video player, from the Dynamic Adaptive Streaming over HTTP project.
leaf:A free website to analyze your FamilySearch tree and find people that need your attention. You can search for people who are missing a birth or marriage date, haven't yet been baptized, or numerous other criteria. Uses colorful charts or a Google-style search to show the results.
Some of the code for leaf has been released FamilyTree sample app.
Python GEDCOM Parser: A basic parser for the GEDCOM 5.5 format.
I have started putting up all of the web pages as open source, with the graphics and design elements licensed via Creative Commons. These include:
- My personal web pages for this site, zappala.byu.edu.
- My campaign campaign pages for Cedar Hills City Council, hosted at vote.zappala.org.
- The pages for the BYU Internet Research Lab.
- The pages for the BYU Open Source Lab.
- The pages for CS 360 and CS 660, containing all of my course materials, including assignments and lecture notes.
Past projects (code not available here, but may be found on the Internet) include:
- RSVP: Resource Reservation Protocol. RVSP helps to provide Quality of Service connections in the Internet by making resource reservations on routers. It was conceived by a group of researchers at USC/ISI and Xerox PARC, then evolved into a proposed standard within the IETF. I worked as the primary author of RSVP code in the SunOS 4.3 kernel, which was later ported to the BSD operating system kernels. Reference code can be downloaded from the FreeBSD team. I was also a member of the ISI Development team, which wrote the RSVP daemon distributed by ISI. ISI's RSVP daemon is a reference implementation for various venders; for example, RSVP is currently implemented in several Cisco routers. See L. Zhang , S. Deering, D. Estrin, S. Shenker and D. Zappala, RSVP: A Resource ReSerVation Protocol. IEEE Network, September 1993 and RFC 2205.
- RSRR: A Routing Interface for RSVP Daniel Zappala, with revisions by Jeff Kann and others. RSRR is the interface between RSVP (Internet resource reservation protocol) and multicast routing protocols; RSRR is implemented in mrouted (multicast routing daemon) and RSVPd (Resource Reservation Protocol daemon). mrouted is distributed with most Unix operating systems.
- Treecalc: A Tool for Evaluating Multicast Routing Protocols, Daniel Zappala, with contributions by Aaron Fabbri. Treecalc compares different types of multicast trees based on delay, cost, traffic concentration, and router state. This simulator was used for our work on multiple cores and SSM proxies.
- SDRP: Source Demand Routing Protocol, Daniel Zappala and Kannan Varadhan. SDRP can be used to source route packets in the Internet, for example to avoid congestion. See RFC 1940.