Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Apr 2022 19:55:28 +0200
From:      erik@nstr.no
To:        Mark Peek <mp@freebsd.org>
Cc:        freebsd-virtualization@freebsd.org, "Philip M. Gollucci" <pgollucci@p6m7g8.com>, Mark Peek <mp@freebsd.org>
Subject:   =?utf-8?Q?Re=3A_Anyone_have_a_copy_of_the_work_that_Joyent_did_on?= =?utf-8?Q?_FreeBSD_=E2=80=9CVPC=E2=80=9D_software_defined_networking=3F?=
Message-ID:  <5E1FDCD3-8406-460D-ACC3-C727E7BB9E53@nstr.no>
In-Reply-To: <CAGGgMJcTqw%2B56epsNJNV8E%2B=Zo_11GqRriOvLDp717NefG5U%2Bg@mail.gmail.com>
References:  <CAGGgMJfNa12PbfMSomx5RMYbTcHqg7McQhQ4bESw1BSzVk3qTQ@mail.gmail.com> <C0A15723-7600-4F1D-B381-392A7C61B0C1@nstr.no> <CAGGgMJcTqw%2B56epsNJNV8E%2B=Zo_11GqRriOvLDp717NefG5U%2Bg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_171BE1C9-2914-4867-98C3-237379371987
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

That=E2=80=99s the one! Awesome! Thank you very much Mark!

Erik

> On 17 Apr 2022, at 19:30, Mark Peek <mp@freebsd.org> wrote:
>=20
> Erik,
> Sorry about that, teach me to respond from my phone.
>=20
> How about this for the FreeBSD related code?
> https://github.com/sean-/freebsd <https://github.com/sean-/freebsd>;
>=20
> which has a default branch of projects/VPC?
>=20
> Mark
>=20
> On Sun, Apr 17, 2022 at 9:10 AM Erik N <erik@nstr.no =
<mailto:erik@nstr.no>> wrote:
> Thank you Mark but as mentioned that=E2=80=99s not it.
>=20
> Erik
>=20
>> On 17 Apr 2022, at 16:58, Mark Peek <mp@freebsd.org =
<mailto:mp@freebsd.org>> wrote:
>>=20
>> =EF=BB=BF
>> Perhaps this?
>> https://github.com/joyent/freebsd-vpc =
<https://github.com/joyent/freebsd-vpc>;
>>=20
>> Mark
>>=20
>> On Sun, Apr 17, 2022 at 6:03 AM Philip M. Gollucci =
<pgollucci@p6m7g8.com <mailto:pgollucci@p6m7g8.com>> wrote:
>> I may be able to get ahold of Brian Cantrill.  He's likely the best =
PoC too.
>>=20
>> 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 =E2=80=9CIntroducing FreeBSD VPC=E2=80=9D.
>>=20
>> The video recording of said presentation is at =
https://youtu.be/La4ekkKbM5o <https://youtu.be/La4ekkKbM5o>; and slides =
are at =
https://papers.freebsd.org/2018/chittenden-freebsd_vpc.files/chittenden-fr=
eebsd_vpc-slides.pdf =
<https://papers.freebsd.org/2018/chittenden-freebsd_vpc.files/chittenden-f=
reebsd_vpc-slides.pdf>
>>=20
>> 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.
>>=20
>> =46rom two of the slides:
>>=20
>> 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
>>=20
>> 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
>>=20
>> At the very end of the presentation slides are links to for kernel =
code and kernel library code on GitHub:
>>=20
>> https://github.com/joyent/freebsd/tree/projects/VPC =
<https://github.com/joyent/freebsd/tree/projects/VPC>;
>>=20
>> =
https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src/go.free=
bsd.org/sys/vpc =
<https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src/go.fre=
ebsd.org/sys/vpc>
>>=20
>> Unfortunately, the whole repository on GitHub is gone. 404. And I =
couldn=E2=80=99t find any forks of it either.
>>=20
>> Does anyone have a copy of the VPC branch that Joyent had in that =
repository?
>>=20
>> All that seems to be left of the project on Joyent's GitHub is a =
separate, archived repository https://github.com/joyent/freebsd-vpc =
<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.
>>=20
>> Erik N.
>>=20
>>=20
>> --=20
>> Philip M. Gollucci
>> IT Executive and Engineering Leader
>> http://www.linkedin.com/in/pgollucci/ =
<http://www.linkedin.com/in/pgollucci/>;
>> 301.818.0719
>>=20
>> 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.
>>=20


--Apple-Mail=_171BE1C9-2914-4867-98C3-237379371987
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" =
class=3D"">That=E2=80=99s the one! Awesome! Thank you very much =
Mark!<div class=3D""><div class=3D""><br class=3D""></div><div =
class=3D"">Erik<br class=3D""><div><br class=3D""><blockquote =
type=3D"cite" class=3D""><div class=3D"">On 17 Apr 2022, at 19:30, Mark =
Peek &lt;<a href=3D"mailto:mp@freebsd.org" =
class=3D"">mp@freebsd.org</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><div dir=3D"ltr" =
class=3D"">Erik,<div class=3D"">Sorry about that, teach me to respond =
from my phone.</div><div class=3D""><br class=3D""></div><div =
class=3D"">How about this for the FreeBSD&nbsp;related code?</div><div =
class=3D""><a href=3D"https://github.com/sean-/freebsd" =
class=3D"">https://github.com/sean-/freebsd</a><br class=3D""></div><div =
class=3D""><br class=3D""></div><div class=3D"">which has a default =
branch of projects/VPC?</div><div class=3D""><br class=3D""></div><div =
class=3D"">Mark</div></div><br class=3D""><div class=3D"gmail_quote"><div =
dir=3D"ltr" class=3D"gmail_attr">On Sun, Apr 17, 2022 at 9:10 AM Erik N =
&lt;<a href=3D"mailto:erik@nstr.no" class=3D"">erik@nstr.no</a>&gt; =
wrote:<br class=3D""></div><blockquote class=3D"gmail_quote" =
style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid =
rgb(204,204,204);padding-left:1ex"><div dir=3D"auto" class=3D"">Thank =
you Mark but as mentioned that=E2=80=99s not it.<br class=3D""><br =
class=3D""><div dir=3D"ltr" class=3D"">Erik</div><div dir=3D"ltr" =
class=3D""><br class=3D""><blockquote type=3D"cite" class=3D"">On 17 Apr =
2022, at 16:58, Mark Peek &lt;<a href=3D"mailto:mp@freebsd.org" =
target=3D"_blank" class=3D"">mp@freebsd.org</a>&gt; wrote:<br =
class=3D""><br class=3D""></blockquote></div><blockquote type=3D"cite" =
class=3D""><div dir=3D"ltr" class=3D"">=EF=BB=BF<div dir=3D"ltr" =
class=3D"">Perhaps this?<br class=3D""><a =
href=3D"https://github.com/joyent/freebsd-vpc" target=3D"_blank" =
class=3D"">https://github.com/joyent/freebsd-vpc</a><br class=3D""><div =
class=3D""><br class=3D""></div><div class=3D"">Mark</div></div><br =
class=3D""><div class=3D"gmail_quote"><div dir=3D"ltr" =
class=3D"gmail_attr">On Sun, Apr 17, 2022 at 6:03 AM Philip M. Gollucci =
&lt;<a href=3D"mailto:pgollucci@p6m7g8.com" target=3D"_blank" =
class=3D"">pgollucci@p6m7g8.com</a>&gt; wrote:<br =
class=3D""></div><blockquote class=3D"gmail_quote" style=3D"margin:0px =
0px 0px 0.8ex;border-left:1px solid =
rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr" class=3D""><div =
class=3D"gmail_default" style=3D"font-family:&quot;comic sans =
ms&quot;,sans-serif">I may be able to get ahold of Brian Cantrill.&nbsp; =
He's likely the best PoC too.</div></div><br class=3D""><div =
class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sun, Apr =
17, 2022 at 2:49 AM Erik N &lt;<a href=3D"mailto:erik@nstr.no" =
target=3D"_blank" class=3D"">erik@nstr.no</a>&gt; wrote:<br =
class=3D""></div><blockquote class=3D"gmail_quote" style=3D"margin:0px =
0px 0px 0.8ex;border-left:1px solid =
rgb(204,204,204);padding-left:1ex"><div dir=3D"auto" class=3D"">I was =
watching this presentation from BSDCan 2018, by Sean Chittenden, titled =
=E2=80=9CIntroducing FreeBSD VPC=E2=80=9D.<div class=3D""><br =
class=3D""></div><div class=3D"">The video recording of said =
presentation is at&nbsp;<a href=3D"https://youtu.be/La4ekkKbM5o" =
target=3D"_blank" class=3D"">https://youtu.be/La4ekkKbM5o</a>&nbsp;and =
slides are at&nbsp;<a =
href=3D"https://papers.freebsd.org/2018/chittenden-freebsd_vpc.files/chitt=
enden-freebsd_vpc-slides.pdf" target=3D"_blank" =
class=3D"">https://papers.freebsd.org/2018/chittenden-freebsd_vpc.files/ch=
ittenden-freebsd_vpc-slides.pdf</a></div><div class=3D""><br =
class=3D""></div><div class=3D"">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.</div><div class=3D""><br =
class=3D""></div><div class=3D"">=46rom two of the slides:</div><div =
class=3D""><br class=3D""></div><div class=3D""><div class=3D"">vpc(4) =
Interfaces</div><div class=3D"">vpcsw(4) - switches packets - one packet =
per customer, multiple subnets supported in the same switch</div><div =
class=3D"">vmnic(4) - dedicated guest NIC, looks like a virtio network =
device to guests</div><div class=3D"">vpcp(4) - plugs vmnic(4) ports =
into vpcsw(4) switches vpci(4) - Non-bhyve(4) interface, usable in =
jails(2)</div><div class=3D"">ethlink(4) - Performs unencapsulated =
packet forwarding, wraps a cloned or physical ethernet =
interface</div><div class=3D"">vpclink(4) - Performs VXLAN =
encapsulation</div></div><div class=3D""><br class=3D""></div><div =
class=3D""><div class=3D"">New System Calls</div><div =
class=3D"">vpc_open(2) - Creates a new VPC descriptor vpc_ctl(2) - =
Manipulates VPC descriptors Capsicum-like, intended for privilege =
separation Intended for idempotent tooling</div><div class=3D"">Makes =
aggressive use of UUIDs as operator handles to be compatible with =
Triton</div></div><div class=3D""><br class=3D""></div><div class=3D"">At =
the very end of the presentation slides are links to for kernel code and =
kernel library code on GitHub:</div><div class=3D""><br =
class=3D""></div><div class=3D""><div class=3D""><a =
href=3D"https://github.com/joyent/freebsd/tree/projects/VPC" =
target=3D"_blank" =
class=3D"">https://github.com/joyent/freebsd/tree/projects/VPC</a></div><d=
iv class=3D""><br class=3D""></div><div class=3D""><a =
href=3D"https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/src=
/go.freebsd.org/sys/vpc" target=3D"_blank" =
class=3D"">https://github.com/joyent/freebsd/tree/projects/VPC/libexec/go/=
src/go.freebsd.org/sys/vpc</a></div></div><div class=3D""><br =
class=3D""></div><div class=3D"">Unfortunately, the whole repository on =
GitHub is gone. 404. And I couldn=E2=80=99t find any forks of it =
either.</div><div class=3D""><br class=3D""></div><div class=3D"">Does =
anyone have a copy of the VPC branch that Joyent had in that =
repository?</div><div class=3D""><br class=3D""></div><div class=3D"">All =
that seems to be left of the project on Joyent's GitHub is a separate, =
archived repository&nbsp;<a href=3D"https://github.com/joyent/freebsd-vpc"=
 target=3D"_blank" =
class=3D"">https://github.com/joyent/freebsd-vpc</a>&nbsp;that only has =
code for a utility that would interact with the code from the =
aforementioned now gone repository.</div><div class=3D""><br =
class=3D""><div dir=3D"ltr" class=3D"">Erik =
N.</div></div></div></blockquote></div><br clear=3D"all" class=3D""><div =
class=3D""><br class=3D""></div>-- <br class=3D""><div dir=3D"ltr" =
class=3D""><div dir=3D"ltr" class=3D""><div class=3D""><div dir=3D"ltr" =
class=3D""><div dir=3D"ltr" class=3D""><div dir=3D"ltr" class=3D""><div =
class=3D""><font face=3D"verdana, sans-serif" class=3D"">Philip M. =
Gollucci</font></div><div class=3D""><font face=3D"verdana, sans-serif" =
class=3D"">IT Executive and Engineering Leader<br =
class=3D""></font></div><div class=3D""><span style=3D"" class=3D""><font =
face=3D"verdana, sans-serif" class=3D""><a =
href=3D"http://www.linkedin.com/in/pgollucci/" target=3D"_blank" =
class=3D"">http://www.linkedin.com/in/pgollucci/</a></font></span></div><d=
iv class=3D""><span style=3D"" class=3D"">301.818.0719</span></div><div =
class=3D""><span style=3D"" class=3D""><br class=3D""></span></div><div =
class=3D""><span style=3D"font-family: -apple-system, system-ui, =
system-ui, &quot;Segoe UI&quot;, Roboto, &quot;Helvetica Neue&quot;, =
&quot;Fira Sans&quot;, Ubuntu, Oxygen, &quot;Oxygen Sans&quot;, =
Cantarell, &quot;Droid Sans&quot;, &quot;Apple Color Emoji&quot;, =
&quot;Segoe UI Emoji&quot;, &quot;Segoe UI Symbol&quot;, &quot;Lucida =
Grande&quot;, Helvetica, Arial, sans-serif; font-size: 14px;" =
class=3D"">TRULY HUMAN NOTICE:&nbsp;&nbsp;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=3D"" class=3D""><br =
class=3D""></span></div><div class=3D""><br =
class=3D""></div></div></div></div></div></div></div>
</blockquote></div>
</div></blockquote></div></blockquote></div>
</div></blockquote></div><br class=3D""></div></div></body></html>=

--Apple-Mail=_171BE1C9-2914-4867-98C3-237379371987--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5E1FDCD3-8406-460D-ACC3-C727E7BB9E53>