Running Code for the Win at IETF Hackathon in Montreal

What do the World Cup, the Tour de France, and the Internet Engineering Task Force (IETF) have in common? They were all featured on the big screen at the IETF Hackathon at IETF 102 in Montreal. A World Cup full of surprises and late heroics concluded with France scoring an impressive victory over Croatia in the final. The Tour de France traversed the cobbles made famous by the Paris Roubaix race, also known as the Hell of the North. And the IETF Hackathon reached new heights, both in terms of participation and results, as the internet standards community took to their keyboards to produce running code that moves internet standards forward.

All three events featured incredible dedication, inspired performances, and fantastic results. However, at the IETF Hackathon, competition is pushed to the sidelines as participants collaborate on shared goals:

• Advance pace and relevance of IETF standards
– Bring speed and collaborative spirit of open source software into the IETF
– Flush out ideas, feed findings into working groups sessions
– Produce sample code/implementations and utilities

• Attract developers, and new people in general to IETF
– Match young, talented developers with IETF veterans
– Engage universities

The IETF Hackathon, which ran over the July 14-15 weekend, kicked off a full week of activities to make the internet better, faster, and more secure.

A record number of participants, 227 on site and 41 remote, worked tirelessly on 25 projects. More important is the positive impact on existing and evolving internet standards.

Lessons learned from implementing draft proposals were fed back into their corresponding working group sessions held later in the week, validating approaches in some cases and guiding course corrections in others. Newcomers to the IETF made new friends and became valued contributors to the standards process. Heated arguments and strong differences of opinion that often occur when debating exact wording of technical specifications gave way to teamwork and cooperation as competitors in the market worked side by side to iron out bugs and interoperability issues. Running code has a way of bringing clarity and common understanding to complex subjects that is often elusive when described merely in words.

IETF Hackathons are free and open to everyone. Work revolves around a set of projects. Each project is proposed and led by one of more volunteers, also known as “champions.” willing to lead work related to newly proposed, evolving, or existing IETF standards. It is these champions that truly define the IETF Hackathon. They deserve much of the credit for its success. Anyone can be a champion, and any project is welcome provided it has ties to existing or future IETF work.

The projects for IETF 102 were:
 QUIC
 LPWAN CoAP/UDP/IPv6 SCHC compression and fragmentation
 DNSSD extensions for multi-link networks
 DNS/DNSSEC/DNS Privacy
 YANG/NETCONF/RESTCONF
 MEF EVC Service YANG Models in Unimgr Project of OpenDaylight
 RIFT LIEs
 Network Time Security (NTS)
JSON Meta Application Protocol (JMAP)
 Security Automation and Continuous Monitoring (SACM)
 Control Plane and User Plane Separation BNG control channel Protocol (CUSP)
 Authentication and Authorization for Constrained Environments (ACE)
 WISHI (Work on IoT Semantic / Hypermedia Interoperability)
 Limited Usage of Remote Keys (LURK)
 TLS 1.3
 Software Update for IoT (SUIT)
 HTTP error code 451
 Human Rights Review Team
 MLS implementations
 DOTS Interop
 Interface to Network Security Functions (I2NSF) Framework
 Scalable, Privacy-preserving In-Network (SPIN Bit) Measurement
 YANG/CoMI
 NETVC
 PERC

Following a brief kickoff presentation Saturday morning, participants formed into teams and got to work. It is not uncommon for participants to work on multiple projects and for teams to work together on newly discovered areas of common interest. This level of cooperation and knowledge transfer is an important benefit of the hackathon. The increased awareness and the personal relationships established over the course of the weekend are as valuable as the code that gets written.

These newly established connections are not limited to people in different IETF working groups. In many cases, they involve people from open source communities, other standards organizations, and local universities. The NetDev community held Netdev 0x12 in the days leading up to the hackathon, and members of the NetDev and IETF communities benefited from getting to know each other and working together. These two communities are already planning to come together again in March 2019 at IETF 104 in Prague.

DevNet Sandboxes and dCloud labs were available to provide network resources for use in various projects. Also, DevNet learning labs on model driven network programmability were access by a number of hackathon participants.

The IETF Hackathon is not an all-night affair. The doors close at 10pm Saturday to encourage participants to take a break and get some sleep. They return at 8:30am Sunday as soon as the doors open and the coffee arrives. Teams worked hard, but it is important to have fun too. Running code and internet standards are not the only things of interest this day. When not needed for hackathon purposes, the large screen in the room was repurposed to show the end of the Tour de France stage followed by the World Cup final. The sound was muted so as to not be too distracting.

Following the conclusion of the game, all attention went back to the tasks at hand. This continued until 2pm, when coding stopped and sharing of results began. Each team delivered a brief presentation, 3 minutes or less, sharing what they achieved, lessons learned, and feedback they would bring back to relevant working groups to guide and accelerate corresponding standardization efforts. Following the presentations, participants voted for the project they thought best met the spirit and goals of the hackathon.

The winning teams were:

DNS/DNSSEC/DNS Privacy, with projects tackling real operational issues and improving DNS privacy (see presentation).

Privacy Enhanced Video Conferencing (PERC), which created a Go module implementing a minimal subset of the PERC architecture for secure conferencing (see presentation).

Software Update for IoT (SUIT), which implemented manifest parsing on different microcontrollers (see presentation).

The close of the Hackathon did not mark the end of efforts involving running code. Throughout the week, software development and experimentation continued in the Code Lounge, a portion of the IETF Lounge designated for ongoing work on hackathon and other projects. Monday night featured a happy hour in which hackathon teams had the opportunity to demo their projects to the rest of the IETF community.

The following teams took advantage of this opportunity:

Interface to Network Security Functions (I2NSF) Framework

MEF EVC Service YANG Models in Unimgr Project of OpenDaylight

Both projects featured standards combined with open source projects for mutual benefit of their respective communities.

The IETF Hackathon has become an indispensable part of the IETF meeting week. Special thanks to the IETF and all its financial supporters for directing the necessary funds to secure the space and cover expenses associated with running an event of this size. Thank you as well to Cisco DevNet, NBC Universal, and Juniper for providing additional support to the Hackathon. Sponsors for future hackathons are actively being sought. If interested, please contact Ken Boyden.

The next IETF Hackathon will be in at IETF 103 in Bangkok, November 3-4. Information on all IETF Hackathons, including photos, recordings, and project presentations can be found at the IETF 102 Hackathon wiki.

Subscribe to the hackathon mailing list to keep up on the latest announcements and discussions. We hope you will join us in Bangkok as we continue our work to improve the Internet.

Cisco DevNet sponsors and/or contributes technical speakers for technical workshops, hackathons, and events worldwide. You can find a schedule of past and upcoming events here.

Hackathon photos thanks to ©Stonehouse Photographic/ Internet Society.