The Internet Engineering Task Force (IETF) is holding a Hackathon to encourage developers to discuss, collaborate and develop utilities, ideas, sample code and solutions that show practical implementations of IETF standards.
When: Monday November 9 through Friday November 13, 2020
Where: IETF 109 is an online only meeting and so is the Hackathon.
Sign up for the Hackathon here: Register.
View the list of registered Hackathon attendees: Here
IETF gather.town link:
Gather guidelines: https://docs.google.com/document/d/172eqRpW8dod_Hpts1kGleel8JrGF4vCzcahTTpn3c0s/edit?usp=sharing
Keep up to date by subscribing to https://www.ietf.org/mailman/listinfo/hackathon
The Hackathon is free to attend and is open to everyone. It is a collaborative event, not a competition. Any competition is friendly and in the spirit of advancing the pace and relevance of new and evolving internet standards.
Hackathon
- Monday, November 9
- Hackathon Kickoff - 05:00 UTC / 12:00 ICT - Hackathon kickoff Recording, Slides
- Monday, November 9 - Friday, November 13
- Friday, November 13
NOTE: You will need a datatracker account to login to the Hackathon Meetecho sessions and gather.town. When you register for the hackathon, you are sent a separate email to create a datatracker account. If you already have a datatracker account, please ensure that the email address you registered with is added to your account. If you received the email but the link to create an account has expired, please see the instructions below:
- Go to https://datatracker.ietf.org/accounts/create/
- Select ‘new account’ from the User menu at the top
- Enter the email address that you registered with for the hackathon
- Follow the instructions in the email you receive
¶ Participant Preparation and Prerequisites
- Choosing a Project
- Champions post and lead projects
- How and when teams meet during the week is up to them
- Details on each project and links to additional information for each project are in this wiki in the "Projects Included in Hackathon" section
- Familiarity with technology area(s) in which you plan to participate will certainly help
- It is perfectly fine, even encouraged, to work on multiple projects
- Lost & Found
- Participants looking for a team and champions wanting help on their projects are encouraged to visit the Lost & Found.
- Development Environment
- Bring a laptop on which you are comfortable developing software
- Some projects may require installing additional software or make use of VMs
- Installing and becoming familiar with !VirtualBox, Vagrant, or something similar will help
- Specific coding languages are called out by some projects (e.g. Python, Java), but this is heavily dependent on the project(s) you choose
- Sharing Code
- Git/GitHub is commonly used for open source projects. Familiarizing yourself with it is recommended.
- An online tutorial is available here: Git Tutorial
- IETF Hackathon GitHub Org
- If you would like to have your project/code hosted here, send your GitHub ID and the name of your project via email to Charles Eckel: eckelcu@cisco.com
- Training Materials
-
Network programmability based on IETF standard protocols and models is relevant to many projects. Self paced online training modules are available on Cisco DevNet. Access is free but a !DevNet account is required. You can login or create an account quickly with this IETF Hackathon specific link IETF 109 Hackathon
-
Champions for each technology are encouraged to share any other things they think would be helpful in preparation for the hackathon
- Project Presentations
- All teams have the opportunity to present what they did on during the closing session at the end of the hackathon
- [https://github.com/IETF-Hackathon/ietf107-project-presentations] is for IETF hackathon participants to upload their hackathon project presentations
- You must be a member of the IETF-Hackathon GitHub org to upload a new presentation or update/replace an existing presentation
- To be added as a member, email Charles Eckel: eckelcu@cisco.com your GitHub ID at your earliest convenience
- DO NOT WAIT until just before hackathon project presentations start or your request may be lost in the chaos
Access to virtual IETF network
- The NOC team has been working on an experiment that allows you to join the IETF network while attending the meeting remotely. The system provides a bunch of networks, very similar to what we offer at a meeting, just at your home, school, lab, office - just "virtual via the Internet".
- The goal is not to provide "Internet Access”, you already have that. This VPN rather puts you into the IETF network as close as possible, very much as if you were sitting next to each other plugged into the same switch or connected to the same WLAN. Currently, functionality is the priority, while performance varies based on your location and network speed. The NOC team has no control of over that.
- The system is based on one of our network hubs and your client provided equipment (CPE). The CPE is currently based on the Raspberry Pi platform, but designed to accommodate others. We have tested with Cisco and Mikrotik routers.
Requirements
- As a participant your requirements are simple. You need a Raspberry Pi, you download the image to the SD flash card, plug it in, and "get connected".
- Supported PIs:
- Pi 2B (requires a wireless adapter)
- Pi 3B
- Pi 4B
- Works with client side IPv6 and IPv4 Internet connection.
- Emits WLAN "ietf-virtual" (if supported by your Pi model)!
- Multiple ietf network options
Requesting Access
- Individuals or project champions can request access from https://tickets.meeting.ietf.org/newticket
- Provide in the Description
- Request for Virtual IETF Network
- Project: <your project/team name>
- Champion:
- The NOC will provide you with the configuration steps and a key needed to connect.
Champions can request a Webex account they can use to schedule meetings for their team. These are similar to the Webex accounts allocated to working group chairs to be used for virtual interim meetings. An account can be requested by a team champion at any time. Accounts will remain active and available for use until the end of November 2020. Request your account HERE. In the request form, you can use your project name where it asks for "Working Group Name".
In addition to registering for the hackathon and subscribing to the hackathon list, it is recommended to monitor both the hackathon wiki and the list as the hackathon approaches, determine which project(s) are of interest to you, and reach out to the champions of those projects to determine how best to be involved and coordinate with the rest of the team working on each project.
Champions are welcome and encouraged to list times and mechanisms for collaborating with their team in the Team Schedule. Participants can use this page to determine how and when to reach other team members.
The hackathon kickoff and the closing presentations will be available via Meetecho. The hackathon Jabber room may be used for general and project specific communication.
¶ IPR and Code Contribution Guideline
All hackathon participants are free to work on any code. The rules regarding that code are what each participant's organization and/or open source project says they are. The code itself is not an IETF Contribution. However, discussions, presentations, demos, etc., during the hackathon are IETF Contributions (similar to Contributions made in working group meetings). Thus, the usual IETF policies apply to these Contributions, including copyright, license, and IPR disclosure rules.
- Note, all projects are open to everyone. However, some champions have identified their projects as being particularly good for first time IETFers and/or first time hackathoners. These projects are marked with a star, i.e. '*'. If you are championing a project that is great for newcomers, please add a * at the end of your project name.
QUIC
- Champion(s)
- Lars Eggert
- Project(s)
- interop around the latest set of drafts
MASQUE
QUIC Measurements
- Champion(s) and participant(s)
- Jari Arkko
- Mauro Cociglio
- Giuseppe Fioccola
- Massimo Nilo
- Fabio Bulgarella
- ... add your name here!
- Start up call: Monday 11:30-12:30 CET and 17:30-18:30 CET, send email to jari.arkko(at)ericsson.com to get the meeting parameters
- Project(s)
- interop around the latest set of drafts
- spindump version updates
- explicit flow measurements
- other new measurements
- ... add your project here!
ANIMA/ACP
- Champion(s)
- Michael Richardson
- Project(s)
- interop around the latest set of RFCs
LPWAN SCHC header compression and fragmentation
- Champion(s)
- Laurent Toutain (IMT Atlantique) laurent dot toutain at imt dash atlantique dot fr
- Cedric Adjih (INRIA) cedric dot adjih at inria dot fr
- Shoichi Sakane (Cisco) ssakane at cisco dot com
- Olivier Gimenez (Semtech) ogimenez at semtech dot com
- Dominique Barthel (Orange Labs) dominique dot barthel at orange dot com
- Logistics
- working hours 11:00-17:00 UTC Tuesday-Thursday
- meet on Gather.town (link to be provided)
- Project(s)
- provide setup for interoperability testing. (more details to be provided)
- for documentation about SCHC, see
- Other goals can be to advance the python open source implementation of SCHC compression and fragmentation. See openschc.net
- improve the tutorial. In general, make it easier for a newcomer to join the project and contribute.
- iron out implementation to fit latest draft revisions
- interface to underlying network (UDP or interface to real hardware)
IPv6 IOAM (Kernel & VPP)
- Champion(s)
- Justin Iurman
- Project(s)
- Improve and complete the kernel implementation
- Align the vpp implementation with the latest draft version
- Interop between the kernel and vpp
- draft-herbert-6man-eh-attrib to allow in-flight modifications of EHs (forbidden by RFC8200)
- Resource(s)
WHIP: WebRTC HTTP Ingest Protocol
- Champion(s)
- Sergio Murillo
- Project(s)
- Gather feedback
- Improve available implementations
- work on additional implementations
Network Telemetry with BGP Monitoring Protocol (BMP) and YANG Push
- Champion(s)
- Yunan Gu (guyunan at huawei.com), Paolo Lucente (paolo at ntt.net), Pierre Francois (pierre.francois at insa-lyon.fr), Thomas Graf (thomas.graf at swisscom.com), Tianran Zhou (zhoutianran at huawei.com), Guangying Zheng (zhengguangying at huawei.com), Yi Qin (qinyi at huawei.com), Zhiguo Zhu (zhuzhiguo at huawei.com)
- YANG Push RFC and Draft(s)
- YANG Project(s)
- Improve YANG push data-collection by preserving end to end YANG schema and enable publishing directly from line card processors.
- Development of an open-source example YANG push UDP publisher.
- Development of an open-source YANG push UDP receiver with Apache Kafka JSON schema registry integration.
- Perform interoperability tests.
- BMP RFC and Draft(s)
- BMP Project(s)
- Bringing visibility into BGP control-plane and how it's being used in the forwarding plane.
- Extend existing BMP capabilities with new RIB's, message types and TLV's at router and data collection.
- Enable BMP BGP Local-RIB control-plane to IPFIX forwarding-plane metric correlation.
- Perform interoperability and loss/delay tests.
**MUD, MUD-PD, and such''
- Champion(s)
- Eliot Lear (lear at Cisco dot com), Paul Watrobski (paul.watrobski at nist dot gov), Joshua Klosterman (jklosterman at mitre dot org)
- Project(s)
- Validate functionality of MUD-PD
- Evaluate the accuracy of generated MUD files
- Gather feedback on usability of MUD-PD
- If time and interest, developing improvements
- Gather feedback on additional desirable features
- If time and interest, developing additional features
- Incorporate MUDdy into MUD-PD for more fine-grained MUD file generation
- If interest, containerize MUD-PD into a Docker Container
- Resources(s)
ASDF: Getting ready for SDF 1.1
- Champion(s)
- Carsten Bormann, Michael Koster
- Project(s)
- tbd, probably including:
- ASDF translators/converters (semantic proxy as a demo)
- fetchable URIs for OneDM reusable components
- support for convergence process -- base set of adopted models
YANG Mediator Framework
CoAP Group Communication with Group OSCORE
- Champion(s)
- Rikard Höglund <rikard.hoglund at ri.se>
- Marco Tiloca <marco.tiloca at ri.se>
- Project
- Verify that group key derivation from group context
- Verify that key pair derivation from group context
- Send and Reply to group messages with group context
- Send and Reply to group messages with paired group context
- Specifications:
ACE Group Key Controller
- Champion(s)
- Marco Tiloca <marco.tiloca at ri.se>
- Rikard Höglund <rikard.hoglund at ri.se>
- Project
- Send requests to an OSCORE Group Manager to join an OSCORE group and obtain the keying material
- Specifications:
BMWG - Containerized Infrastructure Benchmarking
- Champion(s)
- Quang Huy Nguyen(huynq at dcn.ssu.ac.kr)
- hyunsik Yang (yangun at dcn.ssu.ac.kr)
- Kyoungjae Sun (gomjae at dcn.ssu.ac.kr)
- Jangwon Lee(jangwon.lee at dcn.ssu.ac.kr)
- Project(s)
- figure out container networking performance impacts by various resource options
- Network performance measurement in a container environment configured with SRIOV and DPDK.(resource variation option: Huge page and CPU Pinining)
- Specifications:
BMWG - YANG model and implementation of Network Interconnect Tester
- Champion(s)
- Vladimir Vassilev (vladimir at lightside-instruments.com)
- Project(s)
- Model and implementation of YANG/NETCONF managed RFC2544 capable Network Interconnect Tester
- Specifications:
- Repositories
- Champion(s)
- Project(s)
- Implement roughtime
- Find rough edges and spec bugs
- Repositories
- Specfications
- Champion(s)
- Karen O'Donoghue
- Dieter Sibold <dsibold.ietf at gmail.com>
- Project(s)
- How to participate: Using slack (networktimesecurity.slack.com) and a mailing list (nts-hacking@elists.isoc.org) for comms, contact phil@robertskeys.net for access
ns-3 TCP models
- Champion(s)
* Tom Henderson
* Mohit Tahiliani
- Project(s)
- Improve ns-3 TCP-related models (Cubic, Prague, BBRv1/v2, ACK filtering)
- How to participate:
- https://www.nsnam.org/wiki/Sprints#IETF_109_Hackathon.2C_Nov_9-12.2C_2020
IP Wireless Access in Vehicular Environments (IPWAVE) Basic Protocols
- Champion(s)
* Jaehoon Paul Jeong
* Project(s)
* IP-Based Context-Aware Navigator Protocol
* This project is to develop a vehicular communication system for safe and secure driving using IETF IPWAVE protocols.
- Transmission of IPv6 Packets over IEEE 802.11-OCB (IPv6 over 802.11-OCB)
- Linux Kernel Compiling for OCB mode (Kernel version 4.4).
- Vehicular Mobility Information (VMI) option in IP-based vehicular networks.
- IPv6 packet transmission by two OCB-enabled WiFi modules.
- UDP packets transmission by Python script
- Video streaming by GStreamer
* Specifications:
- Where to get code:
* https://github.com/ipwave-hackathon-ietf
- Video clip demo:
* https://youtu.be/gQxOLU740b4
Interface to Network Security Functions (I2NSF) Framework
- Champion(s)
* Jaehoon Paul Jeong
- Project(s)
* This project is to develop a Cloud-based Security Service System using IETF I2NSF
(Interface to Network Security Functions) framework and interfaces.
DNS
- Champion(s)
- Benno Overeinder
- Project(s)
- DNS Catalog Zones
- Message Digest for DNS Zones
- Extended DNS Errors
- DNS Error Reporting
- Chat for and on DNS hackathon projects via:
TEEP
- Champion(s)
- Mingliang Pei <mingliang.pei at broadcom.com>
- David Thaler
- Hannes Tschofenig <hannes.tschofenig at arm.com>
- Akira Tsukamoto <akira.tsukamoto at aist.go.jp>
- Kohei Isobe
- Project(s)
- TEEP protocol: client and TAM
- TEEP transport protocol
- Specifications:
RATS & co.
APN6
- Champion(s)
- Weihong Wu
- Jiang Liu
- Project(s)
- The implementaion of a demo of APN6 based on P4 and TNA
- The processing latency evaluation of APN6 on a real Barefoot Tofino switch
- Specifications:
Don’t see anything that interests you? Feel free to add your preferred technology to the list, sign up as its champion and show up to work on it. Note: you must login to the wiki to add content. If you add a new technology, we strongly suggest that you send email to !hackathon@ietf.org to let others know. You may generate interest in your technology, and find other people who want to contribute to it.
TEMPLATE: Copy/paste and update the following template to add your project to the list:
Your-Technology-Name
* Champion(s)
* tbd
* Project(s)
* tbd
To edit the wiki, log in using your IETF datatracker login credentials. If you don't yet have an IETF datatracker account, you may get one by going here [https://datatracker.ietf.org/accounts/create/] and requesting a new account.