Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Apr 2022 10:30:21 -0700
From:      Mark Peek <mp@freebsd.org>
To:        Erik N <erik@nstr.no>
Cc:        Mark Peek <mp@freebsd.org>, freebsd-virtualization@freebsd.org
Subject:   =?UTF-8?Q?Re=3A_Anyone_have_a_copy_of_the_work_that_Joyent_did_o?= =?UTF-8?Q?n_FreeBSD_=E2=80=9CVPC=E2=80=9D_software_defined_networking=3F?=
Message-ID:  <CAGGgMJcTqw%2B56epsNJNV8E%2B=Zo_11GqRriOvLDp717NefG5U%2Bg@mail.gmail.com>
In-Reply-To: <C0A15723-7600-4F1D-B381-392A7C61B0C1@nstr.no>
References:  <CAGGgMJfNa12PbfMSomx5RMYbTcHqg7McQhQ4bESw1BSzVk3qTQ@mail.gmail.com> <C0A15723-7600-4F1D-B381-392A7C61B0C1@nstr.no>

next in thread | previous in thread | raw e-mail | index | archive | help
--000000000000330abc05dcdd00f6
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Erik,
Sorry about that, teach me to respond from my phone.

How about this for the FreeBSD related code?
https://github.com/sean-/freebsd

which has a default branch of projects/VPC?

Mark

On Sun, Apr 17, 2022 at 9:10 AM Erik N <erik@nstr.no> wrote:

> Thank you Mark but as mentioned that=E2=80=99s not it.
>
> Erik
>
> On 17 Apr 2022, at 16:58, Mark Peek <mp@freebsd.org> wrote:
>
> =EF=BB=BF
> Perhaps this?
> https://github.com/joyent/freebsd-vpc
>
> Mark
>
> On Sun, Apr 17, 2022 at 6:03 AM 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> wrote:
>>
>>> I was watching this presentation from BSDCan 2018, by Sean Chittenden,
>>> titled =E2=80=9CIntroducing FreeBSD VPC=E2=80=9D.
>>>
>>> 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 f=
or
>>> 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.f=
reebsd.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, archived repository https://github.com/joyent/freebsd-vpc tha=
t
>>> 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 abili=
ty
>> to sleep enough, eat right, exercise, and spend time with the people tha=
t
>> 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.
>>
>>

--000000000000330abc05dcdd00f6
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Erik,<div>Sorry about that, teach me to respond from my ph=
one.</div><div><br></div><div>How about this for the FreeBSD=C2=A0related c=
ode?</div><div><a href=3D"https://github.com/sean-/freebsd">https://github.=
com/sean-/freebsd</a><br></div><div><br></div><div>which has a default bran=
ch of projects/VPC?</div><div><br></div><div>Mark</div></div><br><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">erik@nstr.no</a>&gt;=
 wrote:<br></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">Thank you Mark but as mentioned that=E2=80=99s not it.<br><br><di=
v dir=3D"ltr">Erik</div><div dir=3D"ltr"><br><blockquote type=3D"cite">On 1=
7 Apr 2022, at 16:58, Mark Peek &lt;<a href=3D"mailto:mp@freebsd.org" targe=
t=3D"_blank">mp@freebsd.org</a>&gt; wrote:<br><br></blockquote></div><block=
quote type=3D"cite"><div dir=3D"ltr">=EF=BB=BF<div dir=3D"ltr">Perhaps this=
?<br><a href=3D"https://github.com/joyent/freebsd-vpc" target=3D"_blank">ht=
tps://github.com/joyent/freebsd-vpc</a><br><div><br></div><div>Mark</div></=
div><br><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:pgol=
lucci@p6m7g8.com" target=3D"_blank">pgollucci@p6m7g8.com</a>&gt; wrote:<br>=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;b=
order-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><d=
iv class=3D"gmail_default" style=3D"font-family:&quot;comic sans ms&quot;,s=
ans-serif">I may be able to get ahold of Brian Cantrill.=C2=A0 He&#39;s lik=
ely the best PoC too.</div></div><br><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 hr=
ef=3D"mailto:erik@nstr.no" target=3D"_blank">erik@nstr.no</a>&gt; wrote:<br=
></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">=
I was watching this presentation from BSDCan 2018, by Sean Chittenden, titl=
ed =E2=80=9CIntroducing FreeBSD VPC=E2=80=9D.<div><br></div><div>The video =
recording of said presentation is at=C2=A0<a href=3D"https://youtu.be/La4ek=
kKbM5o" target=3D"_blank">https://youtu.be/La4ekkKbM5o</a>=C2=A0and slides =
are at=C2=A0<a href=3D"https://papers.freebsd.org/2018/chittenden-freebsd_v=
pc.files/chittenden-freebsd_vpc-slides.pdf" target=3D"_blank">https://paper=
s.freebsd.org/2018/chittenden-freebsd_vpc.files/chittenden-freebsd_vpc-slid=
es.pdf</a></div><div><br></div><div>The presentation details enhancements t=
o FreeBSD, to allow efficient private networking between bhyve guests as we=
ll as jails on overlay networks, running across separate FreeBSD hosts. Thi=
s, according to the presentation, comes in the form of a suite of VXLAN-rel=
ated network interfaces.</div><div><br></div><div>From two of the slides:</=
div><div><br></div><div><div>vpc(4) Interfaces</div><div>vpcsw(4) - switche=
s packets - one packet per customer, multiple subnets supported in the same=
 switch</div><div>vmnic(4) - dedicated guest NIC, looks like a virtio netwo=
rk device to guests</div><div>vpcp(4) - plugs vmnic(4) ports into vpcsw(4) =
switches vpci(4) - Non-bhyve(4) interface, usable in jails(2)</div><div>eth=
link(4) - Performs unencapsulated packet forwarding, wraps a cloned or phys=
ical ethernet interface</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 descriptor vpc_ctl(2) - Manipulates VPC descriptors Ca=
psicum-like, intended for privilege separation Intended for idempotent tool=
ing</div><div>Makes aggressive use of UUIDs as operator handles to be compa=
tible with Triton</div></div><div><br></div><div>At the very end of the pre=
sentation slides are links to for kernel code and kernel library code on Gi=
tHub:</div><div><br></div><div><div><a href=3D"https://github.com/joyent/fr=
eebsd/tree/projects/VPC" target=3D"_blank">https://github.com/joyent/freebs=
d/tree/projects/VPC</a></div><div><br></div><div><a href=3D"https://github.=
com/joyent/freebsd/tree/projects/VPC/libexec/go/src/go.freebsd.org/sys/vpc"=
 target=3D"_blank">https://github.com/joyent/freebsd/tree/projects/VPC/libe=
xec/go/src/go.freebsd.org/sys/vpc</a></div></div><div><br></div><div>Unfort=
unately, the whole repository on GitHub is gone. 404. And I couldn=E2=80=99=
t find any forks of it either.</div><div><br></div><div>Does anyone have a =
copy of the VPC branch that Joyent had in that repository?</div><div><br></=
div><div>All that seems to be left of the project on Joyent&#39;s GitHub is=
 a separate, archived repository=C2=A0<a href=3D"https://github.com/joyent/=
freebsd-vpc" target=3D"_blank">https://github.com/joyent/freebsd-vpc</a>=C2=
=A0that only has code for a utility that would interact with the code from =
the aforementioned now gone repository.</div><div><br><div dir=3D"ltr">Erik=
 N.</div></div></div></blockquote></div><br clear=3D"all"><div><br></div>--=
 <br><div dir=3D"ltr"><div dir=3D"ltr"><div><div dir=3D"ltr"><div dir=3D"lt=
r"><div dir=3D"ltr"><div><font face=3D"verdana, sans-serif">Philip M. Gollu=
cci</font></div><div><font face=3D"verdana, sans-serif">IT Executive and En=
gineering Leader<br></font></div><div><span style=3D"color:rgb(0,0,0)"><fon=
t face=3D"verdana, sans-serif"><a href=3D"http://www.linkedin.com/in/pgollu=
cci/" target=3D"_blank">http://www.linkedin.com/in/pgollucci/</a></font></s=
pan></div><div><span style=3D"color:rgb(0,0,0)">301.818.0719</span></div><d=
iv><span style=3D"color:rgb(0,0,0)"><br></span></div><div><span style=3D"co=
lor:rgba(0,0,0,0.6);font-family:-apple-system,system-ui,system-ui,&quot;Seg=
oe 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">TRULY H=
UMAN NOTICE:=C2=A0=C2=A0Getting 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 m=
atter 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"c=
olor:rgb(0,0,0)"><br></span></div><div><br></div></div></div></div></div></=
div></div>
</blockquote></div>
</div></blockquote></div></blockquote></div>

--000000000000330abc05dcdd00f6--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGGgMJcTqw%2B56epsNJNV8E%2B=Zo_11GqRriOvLDp717NefG5U%2Bg>