From nobody Sun Apr 17 13:02:40 2022 X-Original-To: freebsd-virtualization@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id DD54011CB0CE for ; Sun, 17 Apr 2022 13:03:24 +0000 (UTC) (envelope-from pgollucci@p6m7g8.com) Received: from mail-oa1-x2f.google.com (mail-oa1-x2f.google.com [IPv6:2001:4860:4864:20::2f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Kh9Gz65Pvz3Lcp for ; Sun, 17 Apr 2022 13:03:23 +0000 (UTC) (envelope-from pgollucci@p6m7g8.com) Received: by mail-oa1-x2f.google.com with SMTP id 586e51a60fabf-d6e29fb3d7so12010410fac.7 for ; Sun, 17 Apr 2022 06:03:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=p6m7g8-com.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=QODkAROC/a9UrjQ/7k5yj/B7y0XjRxV8KweXMD0Klo0=; b=NHdBB2Ib/KhfK+SGxVElQacagQrz+Xn9Kk7s06V03MGRpPZdeFaVeSjfAG4NVi9KgM kYakseUOZS+OB6mMHpr7Vxjx60j/23ruORJy3sI79g/ZKFnXwqmrps2Qj9C+J5DNs3Jt F/5EJXRwiiwWfT2HOJAy4vIfC5m5qgVa+kt4aVeUioP6Bd2S+tY0Yl+MJ3ttYSj5ZO9L 359xPIfzz+SxA0ScogtIbF0l0EZriv/WTOYCdyKidEWtZBQjwBid8CuP1k/t/tYJIKDY R60PT+/WV/6lanmODpXJhaWWubJ44wo6g3cjokyVIj+aSr6puvf3ug1BfjNrA+5r67RG ApTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=QODkAROC/a9UrjQ/7k5yj/B7y0XjRxV8KweXMD0Klo0=; b=4qZ64HJW8gqwKQYu3jMvo0aELqPhfF6GhsP6q15fE0+9oeMBUUlIkSBdb/xcH4NMq8 O+5fpVgi5yA51KDsK2KB/WORM2r7oPJwbBFHSm+Xmv3/hM0um+nJJRqcZFjqkb11JizF R5hnt9i5/Sp94z2xR8+abpnMcHvmJhPJMGcKLYeyQ3gaFTsln1z0Yz7PtAE3kgjxaESX NgTbNeFCHUcnTvl4/RG5afBSYMIJaCcdAodZd3NoGyVODYhRe0fPbjBI1Kp55tbVVNBl FO8djN6DuqDATCmmsb01sTgRNPFWYFfRj4VJz1auyu80E6FkbxkOA72SnNExneTe7VkT KZWA== X-Gm-Message-State: AOAM532TbKCwEOhK5/XosMgW7nDyuTWKH6m7TGqhLQngbMiejxhmP8nw mjO7EGTMqQdabas3CMGlZEH6hWrQoCyOrOq7kLntzN8JJtw= X-Google-Smtp-Source: ABdhPJx8BBvQOWA228afET+TTRif+Gza2D0eRzOhCXCRaweIOHC9u2XxZAXTGlx+kh3ZJcL/hezSry4i4beaLmszu+4= X-Received: by 2002:a05:6870:8920:b0:e5:e38e:fd7c with SMTP id i32-20020a056870892000b000e5e38efd7cmr593323oao.202.1650200596559; Sun, 17 Apr 2022 06:03:16 -0700 (PDT) List-Id: Discussion List-Archive: https://lists.freebsd.org/archives/freebsd-virtualization List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-virtualization@freebsd.org X-BeenThere: freebsd-virtualization@freebsd.org MIME-Version: 1.0 References: <117D2715-7471-449A-988E-BE8A526D983B@nstr.no> In-Reply-To: <117D2715-7471-449A-988E-BE8A526D983B@nstr.no> From: "Philip M. Gollucci" Date: Sun, 17 Apr 2022 09:02:40 -0400 Message-ID: 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?= To: Erik N Cc: freebsd-virtualization@freebsd.org Content-Type: multipart/alternative; boundary="0000000000005dccf805dcd944e3" X-Rspamd-Queue-Id: 4Kh9Gz65Pvz3Lcp X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; dkim=pass header.d=p6m7g8-com.20210112.gappssmtp.com header.s=20210112 header.b=NHdBB2Ib; dmarc=none; spf=none (mx1.freebsd.org: domain of pgollucci@p6m7g8.com has no SPF policy when checking 2001:4860:4864:20::2f) smtp.mailfrom=pgollucci@p6m7g8.com X-Spamd-Result: default: False [1.70 / 15.00]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[p6m7g8-com.20210112.gappssmtp.com:s=20210112]; FREEFALL_USER(0.00)[pgollucci]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; NEURAL_SPAM_SHORT(1.00)[1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-virtualization@freebsd.org]; DMARC_NA(0.00)[p6m7g8.com]; NEURAL_SPAM_MEDIUM(1.00)[1.000]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[p6m7g8-com.20210112.gappssmtp.com:+]; RCPT_COUNT_TWO(0.00)[2]; RCVD_IN_DNSWL_NONE(0.00)[2001:4860:4864:20::2f:from]; MLMMJ_DEST(0.00)[freebsd-virtualization]; R_SPF_NA(0.00)[no SPF record]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; SUBJECT_ENDS_QUESTION(1.00)[]; ASN(0.00)[asn:15169, ipnet:2001:4860:4864::/48, country:US]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] X-ThisMailContainsUnwantedMimeParts: N --0000000000005dccf805dcd944e3 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 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 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-f= reebsd_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.fre= ebsd.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 that only has > code for a utility that would interact with the code from the > aforementioned now gone repository. > > Erik N. > --=20 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. --0000000000005dccf805dcd944e3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I may be able to get ahold of Brian Cantrill.=C2=A0 He= 9;s likely the best PoC too.

On Sun, Apr 17, 2022 at 2:49 AM Erik N &l= t;erik@nstr.no> wrote:
I was watch= ing 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=C2=A0https://youtu.be/La4ekkKbM5o=C2=A0and slides are at=C2= =A0https://papers.freebsd= .org/2018/chittenden-freebsd_vpc.files/chittenden-freebsd_vpc-slides.pdf


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 ethe= rnet interface
vpclink(4) - Performs VXLAN encapsulation

New System Calls
vpc_open(2) - Create= s a new VPC descriptor vpc_ctl(2) - Manipulates VPC descriptors Capsicum-li= ke, intended for privilege separation Intended for idempotent tooling
=
Makes aggressive use of UUIDs as operator handles to be compatible wit= h Triton

At the very end of the presentation= slides are links to for kernel code and kernel library code on GitHub:


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 sepa= rate, archived repository=C2=A0https://github.com/joyent/freebsd-vpc=C2=A0that= only has code for a utility that would interact with the code from the afo= rementioned now gone repository.

Erik N.


--
Philip M. Gollucci
= IT Executive and Engineering Leader
301.818.= 0719

TRULY HUMAN NOTICE:=C2=A0=C2=A0Getting this email out of normal= working hours? We work at a digitally-enabled relentless pace, which can d= isrupt our ability to sleep enough, eat right, exercise, and spend time wit= h the people that matter most. I am sending you this email at a time that w= orks for me. I only expect you to respond to it when convenient to you.

<= /div>
--0000000000005dccf805dcd944e3--