Version 80 (modified by logan@…, 21 months ago) (diff) |
---|
IETF 101 Hackathon
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: Saturday and Sunday, March 17 and 18, 2018
Where: Hilton London Metropole, Room: Sovereign
Sign up for the Hackathon here: Register
View the list of registered Hackathon attendees: Attendees
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.
Agenda
Saturday, March 17 08:00: Room open for setup by project champions 09:00: Room open for all - Pastries and coffee provided 09:30: Hackathon kickoff 09:45: Form Teams 12:30: Lunch provided 15:30: Afternoon break - Snacks provided 19:00: Dinner provided 22:00: Room closes and is locked Sunday, March 18 09:00: Room opens - Pastries and coffee provided 12:30: Lunch provided 13:30: Hacking stops, prepare brief presentation of project 14:00: Project presentation to other participants and judges 15:00: Recap and suggestions for improvements 15:30: Awards presented, prizes given 16:00: Hackathon ends 17:00: Tear down complete
For your planning purposes, be aware that we will also have:
- Code Lounge: Space for groups to gather and collaborate on running code. View the schedule and reserve space for your team/project.
- Hot RFC: Lightning talks Sunday, 18 March 18:00-19:00. Submit your proposal related to your hackathon project. Deadline is noon Sunday.
- Hack Demo Happy Hour: Share your hackathon project with IETF community, Monday 18:00 - 20:00 in Code Lounge. More info soon ...
Meeting Materials
- IETF Hackathon Prep Call - Wednesday, 14 March, 7:30am Pacific Daylight Time (GMT-07:00) | 30 mins Join the WebEx
- Presentations can be uploaded and accessed from https://datatracker.ietf.org/group/hackathon/meetings/
- Send presentations you want uploaded to Charles Eckel: eckelcu@ cisco.com
- Code can be accessed from IETF Hackathon Github, or from links provided within project descriptions below.
- Request to be added to IETF Github organization by sending your Github ID to Charles Eckel: eckelcu@ cisco.com.
Participant Preparation and Prerequisites
- Champions will have table signs on the center of their table identifying their project and be available to answer questions at the start and throughout the hackathon. Optionally, champions may create and display posters on flip charts with additional information on their project. 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
- 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 or something similar will help
- Note to champions: if planning to make use of VMs, please bring on USB drives to make available to others as download times can be painful
- Specific coding languages are called out for some of projects (e.g. Python, Java), but this is heavily dependent on the project(s) you choose
- Network
- Wireless access to the IETF network will be provided, and from there to the outside world
- Wired access to the IETF network is available by request only
- If you have additional requirements, email Charles Eckel: eckelcu@ cisco.com
- Code Lab
- Thanks to Comcast and Arris, we have the ability to create experimental networks. We also have access to a CMTS and cable modems to simulate home networks. Email requests for these to Charles Eckel: eckelcu@ cisco.com and Chris Tuska: Chris.Tuska@ arris.com
- 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
- 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 event specific link https://developer.cisco.com/join/ietf101
- Champions for each technology are encouraged to share any other things they think would be helpful in preparation for the hackathon
Remote participation
- Participating in person is preferred, but we understand not everyone can travel. If you want to participate remotely, please contact the champion(s) for that project to determine how best to coordinate.
- Jabber room: xmpp:hackathon@jabber.ietf.org
- Meetecho: Active and recorded Saturday from 09.30-10.00 and Sunday from 14.00-16.00
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.
Projects Included in Hackathon (add your project using the template provided)
DNS
- Champion(s)
- Stéphane Bortzmeyer bortzmeyer+ietf at nic.fr
- Sara Dickinson (sara at sinodun.com)
- Willem Toorop (willem at nlnetlabs.nl)
- Benno Overeinder (benno at nlnetlabs.nl)
- Allison Mankin (allison.mankin at gmail.com)
- Project(s)
- Implementing a *part* of draft-bortzmeyer-dprive-resolver-to-auth ? For instance adding authentication in Unbound (which is already capable of talking TLS to upstream and has a pem CA list for HTTPS) and also NSD (if the NSD patch here https://dnsprivacy.org/wiki/display/DP/DNS-over-TLS+patches is ported to the most recent release) ? Is it possible to combine it with https://github.com/shuque/chainserver, which implements DNSSEC-in-TLS?
- Implementing draft-woodworth-bulk-rr in NSD? Possible application: porting asn.routeviews.org to IPv6 (where you need dynamicity, you cannot pre-generate all the names)
- Implementing draft-ietf-doh-dns-over-https Python server and Go client should be fine. The Go client may be done as a patch to Go-DNS https://github.com/miekg/dns Or getdns https://getdnsapi.net/ as the client. The Go work will be done by Miek Gieben https://miek.nl/2018/february/19/ietf-101-dns-hackathon/
- Implement padding according to https://datatracker.ietf.org/doc/draft-ietf-dprive-padding-policy/ for all implementations that are missing it
- More work on DANE authentication from Stubby to DNS Privacy servers (connect to a server by name only)
ARC (related to DMARC WG)
- Champion(s)
- Kurt Andersen
- Project(s)
- Interoperability Validation across all known implementations
- Experimenting with strategies for crypto algorithm evolution
Multilingual email
- Champion(s)
- Nik Tomkinson (rfc.nik.tomkinson at gmail.com)
- Project(s)
- Development of Sending and Receiving Implementations of multipart/multilingual content types. This refers to RFC 8255 - Multiple Language Content Type - https://tools.ietf.org/html/rfc8255
QUIC
- Champion(s)
- Lars Eggert (lars@…)
- Project(s)
- Interop testing of current "implementation draft" (likely 08 or maybe 09)
(Privacy-Friendly, Scalable, Passive/Hybrid?) Transport Measurability
- Champion(s)
- Brian Trammell (ietf@…)
- Project(s)
- Passive transport measurement using fd.io
- TCP SEQ/ACK RTX/loss
- TCP TSOPT RTT
- QUIC spin bit RTT/loss event
- QUIC Spin Bit development and interop (note: this is separate from QUIC to not distract from -08 / -09 interop, but we'll set up next to the QUIC table)
- QUIC loss/reordering measurement signals bake-off
- Passive transport measurement using fd.io
Public interest technology
- Champion(s)
- Mallory Knodel
- Project(s)
- HTTP status code 451
- Measuring leakage from IoT with a MITM proxy
- WebRTC Apple discoverability, IP route leaks
- Web protocol privacy considerations
- Privacy impact assessment tool on RFCs.
ANIMA voucher and ACP
- Champion(s)
- Michael Richardson
- Project(s)
- use of the ANIMA BRSKI for enrollment of devices into a PKI
- use of IPsec and RPL to construct the ANIMA ACP overlay between devices
- ACP construction can include people who are remote!
JMAP
- Champion(s)
- Bron Gondwana
- Neil Jenkins
- Project(s)
- Interoperability testing
- Check that spec covers client needs
DHCPv6
- Champion(s)
- Martine Lenders
- Project(s)
- Implementing (parts) of draft-dhcwg-dhc-rfc3315bis for the RIOT operating system. Main focus will be to replace the proprietary UHCP client implementation with DHCPv6 prefix delegation. If time permits address assignment via DHCPv6 will also be implemented.
SACM/XMPP Interface Discovery
- Champion(s)
- Adam Montville
- Bill Munyan
- Project(s)
- Configuring XMPP services extended with as much of an XMPP-grid Controller as possible (https://datatracker.ietf.org/doc/draft-ietf-mile-xmpp-grid/)
- Implementation of an XMPP-Grid connector for SCAP assessment engine
- Implementation of an XMPP-Grid connector for SCAP results repository/dashboard
Making Multicast IP more successful
- Champion(s)
- Lucas Pardue (lucas.pardue at bbc.co.uk)
- Project(s)
- HTTP over multicast QUIC (draft-pardue-quic-http-mcast-02)
- Uplift of sender application to IETF QUIC wire format
- Uplift of receiver application to IETF QUIC wire format
- (note: this is a separate activity to the QUIC interop)
- Browser HTTP Server push API
- Further exploration and interop of server push API
- HTTP over multicast QUIC (draft-pardue-quic-http-mcast-02)
- Champion(s)
- Jake Holland (jakeholland.net at gmail.com)
- Project(s)
- An open reference platform implementing an "AMT Gateway" as described in BCP 213 section 3.3 (https://tools.ietf.org/html/rfc8313#section-3.3)
- Integrate amtgwd into a quagga image
- Add support for pimd. (build membership reports from kernel forwarding table instead of forwarding a received membership report)
- Publish a deployable distro
- An open reference platform implementing an "AMT Gateway" as described in BCP 213 section 3.3 (https://tools.ietf.org/html/rfc8313#section-3.3)
WebRTC Data Channels
- Champion(s)
- Lennart Grahl (lgrahl@…), Felix Weinrank (weinrank@…), Michael Tüxen (tuexen@…)
- Project(s)
- NEAT Integration of WebRTC Data Channels.
- Portable C-based WebRTC Datachannel implementation (based on RAWRTC https://github.com/rawrtc/rawrtc).
WISHI (Work on IoT Semantic / Hypermedia Interoperability)
- Champion(s)
- Ari Keränen, Carsten Bormann
- Project(s)
For WISHI (Work on IoT Semantic / Hypermedia Interoperability), we meet in person at IETF101 at the Hackathon. For latest draft agenda, see https://github.com/t2trg/wishi/wiki/Hackathon-Planning
Interoperation between NEAT and PvD (provisining domains - intarea)
- Champion(s)
- Eric Vyncke (Cisco), Pierre Pfister (Cisco), Tom Jones (UoA)
- Project(s)
- Integration/interoperation between NEAT (https://www.neat-project.org/) and INTAREA PvD on Linux (https://github.com/IPv6-mPvD draft-ietf-intarea-provisioning-domains), interoperation between PvD implementations, interoperation between NEAT applications
Limited Usage of Remote Key (LURK) for TLS1.2
- Champion(s)
- Daniel Migault (daniel.migault@…), Dmitry Kravkov (Qwilt), Sanjay Mishra (Verizon)
- Project(s): LURK implementation on providing an interface between a cryptographic service (Key Server) and an Edge Server (TLS servers) terminating TLS sessions.
- Implementing LURK for TLS1.2: (draft-mglt-lurk-lurk and draft-mglt-lurk-tls12)
- Integrating LURK with NGINX Web Server.
- YANG models for configuring LURK Client / LURK Server
- Measuring LURK performances
- Porting LURK on UDP/DTLS
- Porting LURK on TCP/TLS
YANG/NETCONF/RESTCONF
- Champion(s)
- Benoit Claise
- Project(s)
- yangcatalog.org: Joe Clarke, Benoit Claise
- xxx : Vladimir Vassilev report
YANG based EVC Service Modeling in OpenDaylight?
- Champion(s)
- Mahesh Jethanandani (mjethanandani at gmail.com)
- Project(s)
- Demonstrate configuration and management of E-Line, E-LAN, and E-Tree Services in OpenDaylight?, Santanu De (Xoriant), Kiran Ambardekar (Xoriant), Shrinivas Joshi (Xoriant)
- Use Postman and other tools to invoke REST APIs to configure, update, and delete services, Santanu De (Xoriant), Kiran Ambardekar (Xoriant), Shrinivas Joshi (Xoriant)
DTN (Delay Tolerant Networking) - Bundle Protocol v7 PoC Python implementation
- Champion(s)
- Martin Pilka (X-works, martin.pilka at x-works.io), Boris Pilka (X-works), Kamil Szabo (X-works), Jakub Drastich (X-works), Alex Tokar (X-works), Felix Walter (Technische Universität Dresden)
- Project(s)
- Implement PoC (Proof-of-Concept) Python implementation of Bundle Protocol v7 (https://datatracker.ietf.org/doc/draft-ietf-dtn-bpbis/) in Python
- Demonstrate interoperability with uPCN implementation (https://upcn.eu/contact.html)
- Stretch goal: Demonstrate interoperability with ION implementation (http://ipnsig.org/2017/04/14/mitre-publishes-updated-dtn-development-kit/)
LPWAN: IPv6 compression+fragmentation implementation and testing, a shot at ICMPv6
- Champion(s)
- Laurent Toutain (firstname.lastname at imt-atlantique dot fr)
- Dominique Barthel (firstname.lastname at orange dot com)
- Project(s)
- IPv6 compression and fragmentation for LPWAN technologies is being defined at the LPWAN WG. See https://datatracker.ietf.org/doc/draft-ietf-lpwan-ipv6-static-context-hc/.
- At this hackathon, we'll improve/test a prototype implementation of the fragmentation, on both the End-Device and the Network server sides.
- We'll test it on a live LoRaWAN and Sigfox networks.
- For LoRaWAN a radio gateway will be provided, which can forward to your computer on the LAN or on the Internet. For Sigfox, devices can be connected on request.
- A few Pycom boards (https://pycom.io/product/lopy/) will be available as development platforms for the end-device.
- an open-source implementation of IPv6 compression/fragmentation will be made available to work on / test
- As a complement, we'll discuss views and clobber some ICMPv6 processing to work jointly with the IPv6 compression/fragmentation.
6LoRITT: 6LoWPAN Interoperability Testing Sessions (plugtest) with the F-Interop Testing Platform
- Champion(s)
- Alain Ribault (firstname.lastname at kereval dot com)
- Benjamin Tertereau (firstname.lastname at kereval dot com)
- Project(s)
- 6LoWPAN interoperability testing sessions (plugtest)
- At the hackaton, we'll organize a 6LoWPAN plugtest using the F-Interop Testing Platform
- F-Interop Testing Platform is composed of a website (test management) describing the tests to realize and gathering tests results and of agents (sniffer) to collect test logs to be analyzed
- The tests cover the following RFCs:
- We'll come with an implementation based on linux-WPAN running on a RPi and the radio chip
- For the testing session, we could provide the agents (sniffer)
- During the hackaton, we'll discuss about the needs of such a testing platform for 6lo and other protocols
WebRTC Identity
- Champion(s)
- Harald Alvestrand <harald at alvestrand.no>
- Project(s)
- Use Firefox' "identity" API to perform protection of WebRTC media channels
- Set up at least one, maybe several, identity providers and see if they interoperate
ICN-RIOT
- Champion(s)
- Cenk Gündoğan <firstname.guendogan at haw-hamburg.de>
- Peter Kietzmann <firstname.lastname at haw-hamburg.de>
- Project(s)
- Enable/improve CCNx packet format support in CCN-lite with RIOT
- Implement https://tools.ietf.org/html/draft-gundogan-icnrg-ccnlowpan-00 for CCNx using https://github.com/inetrg/libICNL, RIOT and CCN-lite
- Implement a clock synchronization protocol with authentication mechanisms (similar to NTPv4) for NDN / CCNx using CCN-lite and RIOT
IETF Mailing List Analysis
- Champion(s)
- Nick Doty <npdoty at ischool.berkeley.edu>
- Project(s)
- Bigbang open source mailing list/community analysis software https://github.com/datactive/bigbang
- What statistics/questions do you have about mailing list activity or IETF participation?
- Crawling/collecting new IETF mail archives format
DOTS Interop
- Champion(s)
- Kaname Nishizuka
- Jon Shallow
- Liang 'Frank' Xia
- Project(s)
- DDoS Open Threat Signaling (DOTS).
- The aim of DOTS is to develop a standards based approach for the realtime signaling of DDoS related telemetry and threat handling requests and data between elements concerned with DDoS attack detection, classification, traceback, and mitigation.
- We will test the interoperability between 4 independent implementations:
- The primary goal is to test the interoperability of signal-channel (CoAP over DTLS) of DOT protocol.
- DDoS Open Threat Signaling (DOTS).
- Specifications
- Implementations
- OSS by NTT: nttdots: https://github.com/nttdots/go-dots
- proprietary implementation of NCC Group
- proprietary implementation of Arbor
- proprietary implementation of Huawei
Messaging Layer Security
- Champion(s)
- Richard Barnes <rlb@…>
- Emad Omara <emadomara@…>
- Raphael Robert <raphael@…>
- Project(s)
- https://github.com/cisco/mlspp
- https://github.com/bifurcation/mls
- Implementation TBD from Google and Wire
NFV on a Federated and Orchestrated Virtualisation Platform
- Champion(s)
- Roberto Minerva <Roberto.Minerva at eitdigital.eu>
- Serdar Vural <s.vural at surrey.ac.uk>
- Project(s)
- VM-to-VM key performance metrics collection
- Useful links:
- Getting started: http://docs.softfire.eu/getting-started/
- Experiment manager: http://docs.softfire.eu/experiment-manager/
- Experiment definition: http://docs.softfire.eu/experiment-definition/
- NFV deployment tutorial: http://docs.softfire.eu/nfv-tutorial-custom/
Firmware Updates for Internet of Things
- Champion(s)
- Hannes Tschofenig <Hannes.Tschofenig at arm.com>
- Project(s)
- The main goal is to get hands-on experience with the firmware update mechanism and the manifest format. We will start on Saturday with a short tutorial to reach a common understanding and then start implementing the manifest functionality, particularly the security features, on IoT development boards. The boards will be made available by Arm.
- Useful links:
- IETF SUIT working group: https://datatracker.ietf.org/group/suit/about/
- Manifest specification: https://tools.ietf.org/html/draft-moran-suit-manifest-01
ECN / AQM Testing & Interop
- Champion(s)
- Dave Plonka, Kyle Rose, Igor Lubashev, Mojgan Ghasemi
- Project(s)
- Performance comparison w/ & w/o ECN/AQM of content delivery from Akamai origin through ECN-capable router(s) and with varying host congestion control algorithms
TLS 1.3
- Champion(s)
- Pirabarlen Cheenaramen (selven at hackers.mu) - remote
- Nitin Mutkawoa (jmutkawoa at hackers.mu) - remote
- Loganaden Velvindron (logan at hackers.mu) - remote
- Project(s)
- TLS 1.3 for applications
- XMPP/Jabber link: TLSHackathon on jabber.ietf.org
Interface to Network Security Functions (I2NSF) Framework
- Champion(s)
- Jaehoon Paul Jeong <pauljeong at skku.edu>
- Jinyong Tim Kim <timkim at skku.edu>
- Project(s)
- The Support of RESTCONF for Consumer-Facing Interface according to the lastest Consumer-Facing Interface YANG Data Model.
- Dynamic Selection for NSFs at Security Controller according to high-level security policy delivered via Consumer-Facing Interface.
- SFC Support using OpenDaylight?'s OVS SFC Implementation for SFC-based Traffic Steering according to I2NSF Capabilities Information Model.
- Specifications:
- https://tools.ietf.org/html/rfc8192
- https://tools.ietf.org/html/rfc8329
- https://tools.ietf.org/html/draft-ietf-i2nsf-applicability-02
- https://tools.ietf.org/html/draft-ietf-i2nsf-capability-00
- https://tools.ietf.org/html/draft-ietf-i2nsf-nsf-facing-interface-dm-00
- https://tools.ietf.org/html/draft-ietf-i2nsf-consumer-facing-interface-dm-00
- https://tools.ietf.org/html/draft-kumar-i2nsf-client-facing-interface-im-05
- https://tools.ietf.org/html/draft-hares-i2nsf-capability-data-model-06
- https://tools.ietf.org/html/draft-hyun-i2nsf-nsf-triggered-steering-05
- https://tools.ietf.org/html/draft-hyun-i2nsf-registration-interface-im-04
- https://tools.ietf.org/html/draft-hyun-i2nsf-registration-interface-dm-03
- https://tools.ietf.org/html/draft-zhang-i2nsf-info-model-monitoring-05
- https://tools.ietf.org/html/draft-hong-i2nsf-nsf-monitoring-data-model-02
EAP TLS with large certificates and long certificate chains
- Champion(s)
- Aleksi Peltonen <aleksi.peltonen at aalto.fi>
- Mohit Sethi <mohit at piuha.fi>
- Project(s)
- Test EAP-TLS 1.2 implementations with large certificates and long chains
- Experiment with open source wpa_supplicant and hostapd implementations
- Test with D-Link enterprise wireless AP
- Collect statistics as input to the EMU working group
DNS Service Discovery (DNSSD)
- Champion(s)
- Ted Lemon <mellon@…>
- Stuart Cheshire <cheshire@…>
- Project(s)
- Open source implementation of DNSSD DIscovery Relay (Ted)
- Open source implementation of DNSSD Discovery Proxy connecting to Discovery Relay (Stuart)
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.