Date: Sun, 17 Apr 2022 16:27:53 +0000 From: Jason King <jason.brian.king@gmail.com> To: Erik N <erik@nstr.no>, "Philip M. Gollucci" <pgollucci@p6m7g8.com> Cc: "freebsd-virtualization@freebsd.org" <freebsd-virtualization@freebsd.org> Subject: =?utf-8?B?UmU6IEFueW9uZSBoYXZlIGEgY29weSBvZiB0aGUgd29yayB0aGF0IEpveWVu?= =?utf-8?B?dCBkaWQgb24gRnJlZUJTRCDigJxWUEPigJ0gc29mdHdhcmUgZGVmaW5lZCBu?= =?utf-8?Q?etworking=3F?= Message-ID: <SN6PR14MB2463E2512EB8E384273AD77CA4F09@SN6PR14MB2463.namprd14.prod.outlook.com> In-Reply-To: <15F3C677-BE67-4CE3-8828-8CC7F4CE6CFF@nstr.no> References: <CACM2dAaMJfuUoShmRCBD_HeB%2B3v0NDYNXSaEzK%2BL69RBKg2bfQ@mail.gmail.com> <15F3C677-BE67-4CE3-8828-8CC7F4CE6CFF@nstr.no>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] Byran left Joyent a couple of years ago, and Samsung has a rather peculiar view of what open source is, so I wouldn’t get your hopes up too much. From: owner-freebsd-virtualization@freebsd.org <owner-freebsd-virtualization@freebsd.org> on behalf of Erik N <erik@nstr.no> Date: Sunday, April 17, 2022 at 12:12 PM To: Philip M. Gollucci <pgollucci@p6m7g8.com> Cc: freebsd-virtualization@freebsd.org <freebsd-virtualization@freebsd.org> Subject: Re: Anyone have a copy of the work that Joyent did on FreeBSD “VPC” software defined networking? Thank you Philip, that would be great! Erik On 17 Apr 2022, at 15:03, Philip M. Gollucci <pgollucci@p6m7g8.com> wrote: I may be able to get ahold of Brian Cantrill. He's likely the best PoC too. On Sun, Apr 17, 2022 at 2:49 AM Erik N <erik@nstr.no<mailto:erik@nstr.no>> wrote: I was watching this presentation from BSDCan 2018, by Sean Chittenden, titled “Introducing FreeBSD VPC”. The video recording of said presentation is at https://youtu.be/La4ekkKbM5o and slides are at https://papers.freebsd.org/2018/chittenden-freebsd_vpc.files/chittenden-freebsd_vpc-slides.pdf The presentation details enhancements to FreeBSD, to allow efficient private networking between bhyve guests as well as jails on overlay networks, running across separate FreeBSD hosts. This, according to the presentation, comes in the form of a suite of VXLAN-related network interfaces. From two of the slides: vpc(4) Interfaces vpcsw(4) - switches packets - one packet per customer, multiple subnets supported in the same switch vmnic(4) - dedicated guest NIC, looks like a virtio network device to guests vpcp(4) - plugs vmnic(4) ports into vpcsw(4) switches vpci(4) - Non-bhyve(4) interface, usable in jails(2) ethlink(4) - Performs unencapsulated packet forwarding, wraps a cloned or physical ethernet interface vpclink(4) - Performs VXLAN encapsulation New System Calls vpc_open(2) - Creates a new VPC descriptor vpc_ctl(2) - Manipulates VPC descriptors Capsicum-like, intended for privilege separation Intended for idempotent tooling Makes aggressive use of UUIDs as operator handles to be compatible with Triton At the very end of the presentation slides are links to for kernel code and kernel library code on GitHub: https://github.com/joyent/freebsd/tree/projects/VPC https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src/go.freebsd.org/sys/vpc Unfortunately, the whole repository on GitHub is gone. 404. And I couldn’t find any forks of it either. Does anyone have a copy of the VPC branch that Joyent had in that repository? All that seems to be left of the project on Joyent's GitHub is a separate, archived repository https://github.com/joyent/freebsd-vpc that only has code for a utility that would interact with the code from the aforementioned now gone repository. Erik N. -- Philip M. Gollucci IT Executive and Engineering Leader http://www.linkedin.com/in/pgollucci/ 301.818.0719 TRULY HUMAN NOTICE: Getting this email out of normal working hours? We work at a digitally-enabled relentless pace, which can disrupt our ability to sleep enough, eat right, exercise, and spend time with the people that matter most. I am sending you this email at a time that works for me. I only expect you to respond to it when convenient to you. [-- Attachment #2 --] <html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="Generator" content="Microsoft Word 15 (filtered medium)"> <style><!-- /* Font Definitions */ @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4;} @font-face {font-family:Verdana; panose-1:2 11 6 4 3 5 4 4 2 4;} @font-face {font-family:"Comic Sans MS"; panose-1:3 15 7 2 3 3 2 2 2 4;} @font-face {font-family:"Segoe UI"; panose-1:2 11 5 2 4 2 4 2 2 3;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0in; font-size:10.0pt; font-family:"Calibri",sans-serif;} a:link, span.MsoHyperlink {mso-style-priority:99; color:blue; text-decoration:underline;} span.EmailStyle18 {mso-style-type:personal-reply; font-family:"Calibri",sans-serif; color:windowtext;} .MsoChpDefault {mso-style-type:export-only; font-size:10.0pt;} @page WordSection1 {size:8.5in 11.0in; margin:1.0in 1.0in 1.0in 1.0in;} div.WordSection1 {page:WordSection1;} --></style> </head> <body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word"> <div class="WordSection1"> <p class="MsoNormal"><span style="font-size:11.0pt">Byran left Joyent a couple of years ago, and Samsung has a rather peculiar view of what open source is, so I wouldn’t get your hopes up too much. <o:p></o:p></span></p> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> <div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in"> <p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">owner-freebsd-virtualization@freebsd.org <owner-freebsd-virtualization@freebsd.org> on behalf of Erik N <erik@nstr.no><br> <b>Date: </b>Sunday, April 17, 2022 at 12:12 PM<br> <b>To: </b>Philip M. Gollucci <pgollucci@p6m7g8.com><br> <b>Cc: </b>freebsd-virtualization@freebsd.org <freebsd-virtualization@freebsd.org><br> <b>Subject: </b>Re: Anyone have a copy of the work that Joyent did on FreeBSD “VPC” software defined networking?<o:p></o:p></span></p> </div> <p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:11.0pt">Thank you Philip, that would be great!<o:p></o:p></span></p> <div> <p class="MsoNormal"><span style="font-size:11.0pt">Erik<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><br> <br> <o:p></o:p></span></p> <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt"> <p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:11.0pt">On 17 Apr 2022, at 15:03, Philip M. Gollucci <pgollucci@p6m7g8.com> wrote:<o:p></o:p></span></p> </blockquote> </div> <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt"> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p></o:p></span></p> <div> <div> <p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Comic Sans MS"">I may be able to get ahold of Brian Cantrill. He's likely the best PoC too.<o:p></o:p></span></p> </div> </div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> <div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">On Sun, Apr 17, 2022 at 2:49 AM Erik N <<a href="mailto:erik@nstr.no">erik@nstr.no</a>> wrote:<o:p></o:p></span></p> </div> <blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in"> <div> <p class="MsoNormal"><span style="font-size:11.0pt">I was watching this presentation from BSDCan 2018, by Sean Chittenden, titled “Introducing FreeBSD VPC”.<o:p></o:p></span></p> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">The video recording of said presentation is at <a href="https://youtu.be/La4ekkKbM5o" target="_blank">https://youtu.be/La4ekkKbM5o</a> and slides are at <a href="https://papers.freebsd.org/2018/chittenden-freebsd_vpc.files/chittenden-freebsd_vpc-slides.pdf" target="_blank">https://papers.freebsd.org/2018/chittenden-freebsd_vpc.files/chittenden-freebsd_vpc-slides.pdf</a><o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">The presentation details enhancements to FreeBSD, to allow efficient private networking between bhyve guests as well as jails on overlay networks, running across separate FreeBSD hosts. This, according to the presentation, comes in the form of a suite of VXLAN-related network interfaces.<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">From two of the slides:<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">vpc(4) Interfaces<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">vpcsw(4) - switches packets - one packet per customer, multiple subnets supported in the same switch<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">vmnic(4) - dedicated guest NIC, looks like a virtio network device to guests<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">vpcp(4) - plugs vmnic(4) ports into vpcsw(4) switches vpci(4) - Non-bhyve(4) interface, usable in jails(2)<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">ethlink(4) - Performs unencapsulated packet forwarding, wraps a cloned or physical ethernet interface<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">vpclink(4) - Performs VXLAN encapsulation<o:p></o:p></span></p> </div> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">New System Calls<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">vpc_open(2) - Creates a new VPC descriptor vpc_ctl(2) - Manipulates VPC descriptors Capsicum-like, intended for privilege separation Intended for idempotent tooling<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">Makes aggressive use of UUIDs as operator handles to be compatible with Triton<o:p></o:p></span></p> </div> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">At the very end of the presentation slides are links to for kernel code and kernel library code on GitHub:<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><a href="https://github.com/joyent/freebsd/tree/projects/VPC" target="_blank">https://github.com/joyent/freebsd/tree/projects/VPC</a><o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><a href="https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src/go.freebsd.org/sys/vpc" target="_blank">https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src/go.freebsd.org/sys/vpc</a><o:p></o:p></span></p> </div> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">Unfortunately, the whole repository on GitHub is gone. 404. And I couldn’t find any forks of it either.<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">Does anyone have a copy of the VPC branch that Joyent had in that repository?<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt">All that seems to be left of the project on Joyent's GitHub is a separate, archived repository <a href="https://github.com/joyent/freebsd-vpc" target="_blank">https://github.com/joyent/freebsd-vpc</a> that only has code for a utility that would interact with the code from the aforementioned now gone repository.<o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> <div> <p class="MsoNormal"><span style="font-size:11.0pt">Erik N.<o:p></o:p></span></p> </div> </div> </div> </blockquote> </div> <p class="MsoNormal"><span style="font-size:11.0pt"><br clear="all"> <o:p></o:p></span></p> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <p class="MsoNormal"><span style="font-size:11.0pt">-- <o:p></o:p></span></p> <div> <div> <div> <div> <div> <div> <div> <p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Verdana",sans-serif">Philip M. Gollucci</span><span style="font-size:11.0pt"><o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Verdana",sans-serif">IT Executive and Engineering Leader</span><span style="font-size:11.0pt"><o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Verdana",sans-serif;color:black"><a href="http://www.linkedin.com/in/pgollucci/" target="_blank">http://www.linkedin.com/in/pgollucci/</a></span><span style="font-size:11.0pt"><o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt;color:black">301.818.0719</span><span style="font-size:11.0pt"><o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:10.5pt;font-family:"Segoe UI",sans-serif">TRULY HUMAN NOTICE: Getting this email out of normal working hours? We work at a digitally-enabled relentless pace, which can disrupt our ability to sleep enough, eat right, exercise, and spend time with the people that matter most. I am sending you this email at a time that works for me. I only expect you to respond to it when convenient to you.</span><span style="font-size:11.0pt"><o:p></o:p></span></p> </div> <div> <p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p> </div> </div> </div> </div> </div> </div> </div> </div> </blockquote> </div> </body> </html>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?SN6PR14MB2463E2512EB8E384273AD77CA4F09>
