{"id":331,"date":"2019-01-22T17:13:36","date_gmt":"2019-01-22T16:13:36","guid":{"rendered":"https:\/\/hhk3.kau.se\/dpp\/?page_id=331"},"modified":"2022-01-16T13:35:21","modified_gmt":"2022-01-16T12:35:21","slug":"module-1-introduction-to-data-plane-programming-2-2-2-2","status":"publish","type":"page","link":"https:\/\/hhk3.kau.se\/dpp\/modules\/module-1-introduction-to-data-plane-programming\/module-1-introduction-to-data-plane-programming-2-2-2-2\/","title":{"rendered":"Module 1 &#8211; Introduction to Data Plane Programming (DVAD41) &#8211; Week 3"},"content":{"rendered":"<p>Welcome to module 1: January 24 \u2013 March 13, 2022<\/p>\n<h2>Learning Outcomes &#8211; Introduction to Data Plane Programming\u00a0(DVAD41)<\/h2>\n<p>January 24 \u2013 March 13, 2022<\/p>\n<p>During the initial seven course weeks, the focus will be on familiarizing oneself with the online learning spaces,\u00a0connecting with peers and facilitators. In addition, you will start reading about the theoretical foundations of data plane programming in order to gain a comprehensive understanding of the area. You will get a basic introduction to the P4 language, and can work on three basic labs, that will make you familiar with programming in P4. For that, you will be getting access to a Virtual machine that comes preinstalled with developing environment and mininet network emulator. On the discussion slack, you will share expectations, background knowledge, as well as your own experiences and practices.<\/p>\n<h2>Week 3: 7\/2-13\/2\/2022<\/h2>\n<h3>Participate in the Second Webinar<\/h3>\n<p>Monday, February 7th at 17.00-18.30 CET<\/p>\n<ul>\n<li>The second webinar will focus on\u00a0whats the difference between SDN and Data Plane Programming. We will start to introduce P4 and walk through different language constructs. In order to participate, simply click the following link and enter your name: Zoom: <a href=\"https:\/\/kau-se.zoom.us\/j\/66276262445\">https:\/\/kau-se.zoom.us\/j\/66276262445<\/a><\/li>\n<li>Learn more how to participate in the webinar.<\/li>\n<li><a href=\"https:\/\/kauplay.kau.se\/media\/t\/0_7m9horlm\"><strong>View a recording<\/strong><\/a> of the webinar.<\/li>\n<li><strong>View the Slides<\/strong> presented at the Webinar. <a href=\"https:\/\/hhk3.kau.se\/dpp\/wp-content\/uploads\/sites\/19\/2021\/02\/DVAD41-P4Intro-Webinar-2.pdf\">DVAD41-P4Intro-Webinar 2<\/a>, <a href=\"https:\/\/hhk3.kau.se\/dpp\/wp-content\/uploads\/sites\/19\/2021\/02\/DVAD41-P4Exercise1-Webinar-2_compressed.pdf\">DVAD41-P4Exercise1-Webinar 2_compressed<\/a>.<\/li>\n<\/ul>\n<h3>Watch the videos<\/h3>\n<p>V. Gurevich: Introduction to P4_16, Part 1, P4 Developers Day (P4 D2), Stanford, CA. May 2017<\/p>\n<p><iframe loading=\"lazy\" title=\"Introduction to P4_16. Part 1\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/GslseT4hY1w?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p>V. Gurevich: Introduction to P4_16, Part 2, P4 Developers Day (P4 D2), Stanford, CA. May 2017<\/p>\n<p><iframe loading=\"lazy\" title=\"Introduction to P4_16. Part 2\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/yqxpypXIOtQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<h3>Additional material<\/h3>\n<div class=\"row\">\n<div class=\"col-lg-5 col-md-5\">\n<h4>P4<sub>16<\/sub><\/h4>\n<p>The <i>current release<\/i> of the language is P4<sub>16<\/sub>.<\/p>\n<ul>\n<li>Version 1.2.2 [\u00a0<a href=\"https:\/\/p4.org\/p4-spec\/docs\/P4-16-v1.2.2.html\">HTML<\/a>\u00a0|\u00a0<a href=\"https:\/\/p4.org\/p4-spec\/docs\/P4-16-v1.2.2.pdf\">PDF<\/a>\u00a0] (May 2021)<\/li>\n<li><i>Working draft<\/i>\u00a0[\u00a0<a href=\"https:\/\/p4.org\/p4-spec\/docs\/P4-16-working-spec.html\">HTML<\/a>\u00a0|\u00a0<a href=\"https:\/\/p4.org\/p4-spec\/docs\/P4-16-working-spec.pdf\">PDF<\/a>\u00a0]<\/li>\n<\/ul>\n<hr class=\"featurette-divider\" \/>\n<\/div>\n<div class=\"col-lg-2 col-md-2\"><\/div>\n<div class=\"col-lg-5 col-md-5\">\n<h4>P4<sub>14<\/sub><\/h4>\n<p>The <i>previous release<\/i> of the language is P4<sub>14<\/sub>.<\/p>\n<ul>\n<li>Version 1.0.5 [ <a href=\"https:\/\/p4lang.github.io\/p4-spec\/p4-14\/v1.0.5\/tex\/p4.pdf\">PDF<\/a> ] (Nov 2018)<\/li>\n<\/ul>\n<hr class=\"featurette-divider\" \/>\n<\/div>\n<\/div>\n<div class=\"row\">\n<div class=\"col-lg-5 col-md-5\">\n<h4>P4<sub>16<\/sub> PSA<\/h4>\n<p>The current release of the Portable Switch Architecture (PSA)<\/p>\n<ul>\n<li>v1.1 [<a href=\"https:\/\/p4.org\/p4-spec\/docs\/PSA-v1.1.0.html\">HTML<\/a> | <a href=\"https:\/\/p4.org\/p4-spec\/docs\/PSA-v1.1.0.pdf\">PDF<\/a>] (Nov 2018)<\/li>\n<li><i>Working draft<\/i>: [<a href=\"https:\/\/p4.org\/p4-spec\/docs\/PSA.html\">HTML<\/a>\u00a0|\u00a0<a href=\"https:\/\/p4.org\/p4-spec\/docs\/PSA.pdf\">PDF<\/a>]<\/li>\n<\/ul>\n<hr class=\"featurette-divider\" \/>\n<\/div>\n<div class=\"col-lg-2 col-md-2\"><\/div>\n<div class=\"col-lg-5 col-md-5\"><\/div>\n<\/div>\n<div class=\"row\">\n<div class=\"col-lg-5 col-md-5\">\n<h4>P4Runtime<\/h4>\n<p>Releases for P4Runtime<\/p>\n<ul>\n<li>v1.3.0 [<a href=\"https:\/\/p4.org\/p4-spec\/p4runtime\/v1.3.0\/P4Runtime-Spec.html\">HTML<\/a>\u00a0|\u00a0<a href=\"https:\/\/p4.org\/p4-spec\/p4runtime\/v1.3.0\/P4Runtime-Spec.pdf\">PDF<\/a>] (Dec 2020)<\/li>\n<li><i>Working draft<\/i>: [<a href=\"https:\/\/p4.org\/p4-spec\/p4runtime\/main\/P4Runtime-Spec.html\">HTML<\/a>\u00a0|\u00a0<a href=\"https:\/\/p4.org\/p4-spec\/p4runtime\/main\/P4Runtime-Spec.pdf\">PDF<\/a>]<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<h3>Assignment for this week \u2013\u00a0P4 Lab Exercise<\/h3>\n<p>As you now have your P4 development VM ready, do the first P4 Lab exercise implementing <a href=\"https:\/\/git.cse.kau.se\/courses\/dvad40\/vt19\/tree\/master\/P4lab\/exercises\/basic\">Basic Forwarding<\/a>. You find more information on the GIT. A nice summary of all P4 language constructs can be found on the<br \/>\n<a href=\"https:\/\/git.cse.kau.se\/courses\/dvad40\/vt19\/blob\/master\/P4lab\/p4-cheat-sheet.pdf\">P4 CheatSheet<\/a>.<\/p>\n<div class=\"entry-content\">\n<div class=\"discussion-section message_wrapper\"><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Welcome to module 1: January 24 \u2013 March 13, 2022 Learning Outcomes &#8211; Introduction to Data Plane Programming\u00a0(DVAD41) January 24 \u2013 March 13, 2022 During the initial seven course weeks, the focus will be on familiarizing oneself with the online learning spaces,\u00a0connecting with peers and facilitators. In addition, you will start reading about the theoretical [&hellip;]<\/p>\n","protected":false},"author":347,"featured_media":0,"parent":284,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-331","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/pages\/331","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/users\/347"}],"replies":[{"embeddable":true,"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/comments?post=331"}],"version-history":[{"count":19,"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/pages\/331\/revisions"}],"predecessor-version":[{"id":941,"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/pages\/331\/revisions\/941"}],"up":[{"embeddable":true,"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/pages\/284"}],"wp:attachment":[{"href":"https:\/\/hhk3.kau.se\/dpp\/wp-json\/wp\/v2\/media?parent=331"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}