BEGIN:VCALENDAR
CALSCALE:GREGORIAN
PRODID:-//Apple Inc.//iOS 6.1.3//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Europe/Berlin
BEGIN:DAYLIGHT
DTSTART:19810329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
BEGIN:STANDARD
DTSTART:19961027T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DESCRIPTION:Network cards (NICs) are often seen as black boxes: you put data in a socke
 t on one side and packets come out at the other end - or the other way arou
 nd.\nLet's have a deeper look at how a network card actually works at the l
 ower levels by writing a simple userspace driver from scratch for a 10 Gbit
 /s NIC.\n\n\nThe first part of the talk looks at the evolution from 10 Mbit
 /s to 100 Gbit/s networks - both from a hardware perspective and how the so
 ftware had to change from Linux pre-NAPI all the way to Linux XDP to keep u
 p.\nHundreds of thousands of lines of code are involved when handling a pac
 ket in a typical operating system.\nReading and understanding so much code 
 is quite tedious\, so the obvious next question is: How hard can it be to i
 mplement a driver for a modern 10 Gbit/s NIC from scratch while ignoring al
 l of the existing software layers?\nTurns out that it's not very hard: I've
  written <a href="https://github.com/emmericp/ixy">ixy</a>\, a userspace dr
 iver for 10 Gbit/s NICs from the Intel 82599 family (X520\, X540\, X550) fr
 om scratch in just about 1000 lines of C code.\nThe second part of the talk
  focuses on userspace drivers and the Intel 82599 architecture as it is eas
 y to understand\, has a great datasheet\, and the core functionality is in 
 the driver as opposed to a magic black-box firmware.\nYou will not only lea
 rn about my driver implementation - the talk also discusses how it relates 
 to similar network frameworks like DPDK or Snabb and seemingly similar fram
 eworks like netmap\, XDP\, pf_ring\, or pfq.\n
DTEND;TZID=Europe/Berlin:20171227T131500
DTSTAMP:20171220T105656Z
DTSTART;TZID=Europe/Berlin:20171227T124500
LAST-MODIFIED:20171220T105651Z
LOCATION:Saal Borg
SEQUENCE:0
SUMMARY:Demystifying Network Cards - Paul Emmerich
TRANSP:OPAQUE
UID:19b7e5d7-bba7-46da-afbc-f16d43fe395f@frab.cccv.de
URL;VALUE=URI:https://fahrplan.events.ccc.de/congress/2017/Fahrplan/events/9159.html
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:Reminder
TRIGGER:-PT1H
UID:E9E26617-BE62-411D-BAD5-0B7B29178BF7
X-APPLE-DEFAULT-ALARM:TRUE
X-WR-ALARMUID:E9E26617-BE62-411D-BAD5-0B7B29178BF7
END:VALARM
END:VEVENT
END:VCALENDAR
