Date: Sun, 17 Apr 2022 08:48:53 +0200 From: Erik N <erik@nstr.no> To: freebsd-virtualization@freebsd.org Subject: =?utf-8?Q?Anyone_have_a_copy_of_the_work_that_Joyent_did_on_Free?= =?utf-8?Q?BSD_=E2=80=9CVPC=E2=80=9D_software_defined_networking=3F?= Message-ID: <117D2715-7471-449A-988E-BE8A526D983B@nstr.no>
next in thread | raw e-mail | index | archive | help
--Apple-Mail-D65C886A-C1BA-4714-8115-1B8F4BD577A9 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable I was watching this presentation from BSDCan 2018, by Sean Chittenden, title= d =E2=80=9CIntroducing FreeBSD VPC=E2=80=9D. The video recording of said presentation is at https://youtu.be/La4ekkKbM5o a= nd slides are at https://papers.freebsd.org/2018/chittenden-freebsd_vpc.file= s/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, runni= ng across separate FreeBSD hosts. This, according to the presentation, comes= in the form of a suite of VXLAN-related network interfaces. =46rom two of the slides: vpc(4) Interfaces vpcsw(4) - switches packets - one packet per customer, multiple subnets supp= orted 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 ph= ysical ethernet interface vpclink(4) - Performs VXLAN encapsulation New System Calls vpc_open(2) - Creates a new VPC descriptor vpc_ctl(2) - Manipulates VPC desc= riptors Capsicum-like, intended for privilege separation Intended for idempo= tent tooling Makes aggressive use of UUIDs as operator handles to be compatible with Trit= on At the very end of the presentation slides are links to for kernel code and k= ernel library code on GitHub: https://github.com/joyent/freebsd/tree/projects/VPC https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src/go.freebs= d.org/sys/vpc Unfortunately, the whole repository on GitHub is gone. 404. And I couldn=E2=80= =99t 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, a= rchived repository https://github.com/joyent/freebsd-vpc that only has code f= or a utility that would interact with the code from the aforementioned now g= one repository. Erik N.= --Apple-Mail-D65C886A-C1BA-4714-8115-1B8F4BD577A9 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable <html><head><meta http-equiv=3D"content-type" content=3D"text/html; charset=3D= utf-8"></head><body dir=3D"auto">I was watching this presentation from BSDCa= n 2018, by Sean Chittenden, titled =E2=80=9CIntroducing FreeBSD VPC=E2=80=9D= .<div><br></div><div>The video recording of said presentation is at <a h= ref=3D"https://youtu.be/La4ekkKbM5o">https://youtu.be/La4ekkKbM5o</a> a= nd slides are at <a href=3D"https://papers.freebsd.org/2018/chittenden-= freebsd_vpc.files/chittenden-freebsd_vpc-slides.pdf">https://papers.freebsd.= org/2018/chittenden-freebsd_vpc.files/chittenden-freebsd_vpc-slides.pdf</a><= /div><div><br></div><div>The presentation details enhancements to FreeBSD, t= o allow efficient private networking between bhyve guests as well as jails o= n overlay networks, running across separate FreeBSD hosts. This, according t= o the presentation, comes in the form of a suite of VXLAN-related network in= terfaces.</div><div><br></div><div>=46rom two of the slides:</div><div><br><= /div><div><div>vpc(4) Interfaces</div><div>vpcsw(4) - switches packets - one= packet per customer, multiple subnets supported in the same switch</div><di= v>vmnic(4) - dedicated guest NIC, looks like a virtio network device to gues= ts</div><div>vpcp(4) - plugs vmnic(4) ports into vpcsw(4) switches vpci(4) -= Non-bhyve(4) interface, usable in jails(2)</div><div>ethlink(4) - Performs u= nencapsulated packet forwarding, wraps a cloned or physical ethernet interfa= ce</div><div>vpclink(4) - Performs VXLAN encapsulation</div></div><div><br><= /div><div><div>New System Calls</div><div>vpc_open(2) - Creates a new VPC de= scriptor vpc_ctl(2) - Manipulates VPC descriptors Capsicum-like, intended fo= r privilege separation Intended for idempotent tooling</div><div>Makes aggre= ssive use of UUIDs as operator handles to be compatible with Triton</div></d= iv><div><br></div><div>At the very end of the presentation slides are links t= o for kernel code and kernel library code on GitHub:</div><div><br></div><di= v><div>https://github.com/joyent/freebsd/tree/projects/VPC</div><div><br></d= iv><div>https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src/g= o.freebsd.org/sys/vpc</div></div><div><br></div><div>Unfortunately, the whol= e repository on GitHub is gone. 404. And I couldn=E2=80=99t find any forks o= f it either.</div><div><br></div><div>Does anyone have a copy of the VPC bra= nch that Joyent had in that repository?</div><div><br></div><div>All that se= ems to be left of the project on Joyent's GitHub is a separate, archived rep= ository <a href=3D"https://github.com/joyent/freebsd-vpc">https://githu= b.com/joyent/freebsd-vpc</a> that only has code for a utility that woul= d interact with the code from the aforementioned now gone repository.</div><= div><br><div dir=3D"ltr">Erik N.</div></div></body></html>= --Apple-Mail-D65C886A-C1BA-4714-8115-1B8F4BD577A9--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?117D2715-7471-449A-988E-BE8A526D983B>