Monday, halleluja sFlow
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2024-09-09 23:42:39 +02:00
parent 226a979c68
commit face6abb95
22 changed files with 170 additions and 2 deletions

View File

@ -1,8 +1,113 @@
---
title: "Week 7, Monday: sFlow"
title: "Week 7, Monday: A Huge Zuchhini"
date: 2024-09-09T21:55:00+02:00
draft: true
---
{{< image frame="true" width="17em" float="right" src="/img/headline/fluidified-04.png" alt="Credit: Fluidified, YouTube" >}}
I got up pretty early today, after a tremendously fine sleep. Marina was off to her water coloring
class, and Quinn was off to work. At 08:15 I walked downstairs to do my morning ritual (ie. inhale
caffeine). Marina pre-empted me there, putting a sticky note on the coffee machine, saying that
she'd love to go out to lunch with me (she suggested it yesterday!) but seeing as we're going to
travel to the Netherlands on Wednesday and we have lots of stuff still in the fridge, she was
feeling a little bit more of a _Carpe Diem_. I made my coffee and approved the eating at home
request.
Speaking of eating at home - the other day when Liv came to visit, she brought a rather ginormous
zucchini with her. I took a picture of it - with a full sized tomato for scale. But somehow that
picture didn't really show the truly massive nature of this vegetabohemoth. So I decided to make a
soup out of it -- and I cut it over length wise with a large pairing knife (this kitchen knife is
33.5cm). It looked a bit more like a green pumpkin! After removing the seeds, I chopped 'er up into
itty bitty pieces, and boiled for a good 35 minutes, added some spices (finely milled black pepper,
salt, vegetable bouillon, and cayenne pepper). It'll be a nice dinner soup for tonight!
In the morning, I finish all of my loadtests and publish the [[IPng
Article](https://ipng.ch/s/articles/2024/09/08/vpp-with-sflow-part-1/)] about sFlow, and I'm really
looking forward to my meeting with Neil tonight. I have lots of questions and thoughts on how we
might proceed and make the plugin more efficient (and: lockless). I spend most of the morning
listening to music, and doing an editorial pass over the article, fixing a few typo's and
rearranging the flow (no pun intended!) a little bit. With this Sabbatical website, I'm kind of just
writing using free word association, but the IPng articles take considerably more time (this one
took about 3 days).
At 11:00 I call my parents - on Wednesday we'll be driving over to them and spending a few days with
them before shipping off to Fryslan. We discuss the timing, the plans and if there's anything I
should bring. I'll be making dinner for them on Thursday, and they will feature on this blog!
Incidentally, I also told them about my writing, as I owe the discipline of journalling to my Mom
who used to always write really nice logs of our vacations; sitting in the caravan or tent in the
evening, very low tech with a pad and pencil. But, it's a habit I picked up from her, for sure!
Then around noon Marina tells me her ETA, which will be 12:15. I make my way upstairs and together
we have a spot of lunch. I'm eating the smoked salmon that I had originally bought for yesterday's
Brunch-Which-I-Never-Had, and to make up for it, I make some soft boiled eggs, njam.
After lunch, Marina needs to run some errands, and being the needy boyfriend I am, I chain myself to
her and go with. I don't think she minded that much. We go to Glatt Zentrum first, and visit
_Douglas_ for some perfume and sunscreen, then the _Qualipet_ for some wormiedealies for our
reptilian friends Heli and Sticky, and finally we make our way to the _Coop_ for a few more nights
of dinner for us, and a longer grocery list of shopping for Quinn, who will be home alone, hopefully
not like [[the movie](https://www.imdb.com/title/tt0099785/)]. In the _Coop_ we are now greeted by a
large array of wines. We chuckle as we recount having every red wine except for one, in our cellar.
We are not fans of white wines (sorry, we're a bit racist that way).
Back home at 14:00, I hang out online and read some e-mail. Speaking of which, my buddy Sebas from
IRC somehow feels the need to e-mail me on corp, so I humor him and grab the laptop. Whoops, battery
is completely empty! Teun says: you know you are having a successful sabbatical if your battery is
dead. And I agree with him totally. But, I charge the laptop, so that I can respond to this e-mail.
Meanwhile on IRC, the topic of the FrysIX website comes up. It was running off of an old webserver
of Arend's, without SSL, and with a Hurricane Electric IPv6 tunnel -- brrr. As an Internet Exchange
Point, I think we cao do better. On Telegram, a bright eyed Arend says: "Can we use *this* theme?",
and shows me what he wants, what he really raelly wants.
"OK, Gast, als jij dat wilt!", and with a _zigazig ah_, I present to you: the new FrysIX website.
The 80s called, they want their 80x25 ASCII art back! We have a littl bit of fun about the look and
feel on IRC, but honestly: I think the choice is pretty cool :) Tell me what you think about it!
Then comes for me a hilight of the day. 18:00 rolls around and Peter Phaal and Neil McKee from inMon
join me for a video call on the sFlow plugin. Neil has read my article, and we bounce questions back
and forth. In discussing this, we think of a few ways to make the PSAMPLE approach scale, by using a
worker queue to consume a multi-writer single reader lockless queue, or ring-buffer of sufficient
size. We do a few loadtests live and toy around with the setup a little bit.
{{< image src="/img/brain.png" width="7em" float="left" alt="brain" >}}
Somehow, we arrive at the topic of SPAN and mirror ports, and Peter mentions that there is an
ethertype for sFlow, which triggers the big-idea: what if we created a TAP from within VPP, calling
it in Linux, say, `sflow0`, and leveraged the fact that virtio already has multiple TX queues? Now
we could simply write the samples (and counters!) as ethernet packets into the TAP and read them
from `hsflowd`. That would be so slick!
Anyway, at 19:30 Marina is about to kick down the door to my room because I'm waaaay late for
dinner. Whoops, sorry! I scurry upstairs and make myself a cheese melt. Tonight, we're eating
zucchini vegetabohemoth soup and toasties, and that will do just fine!
After dinner, we watch a two episodes of _Black Mirror_ on TV, and I play around with the
performance of TUN/TAP in VPP a bit. I really get excited about this idea, because I manage to
easily push 7Mpps through a single tuntap device, coming from eight different interfaces, and each
worker thread is completely independent of others, no locks, no RPCs to main. You can expect a
second article in a few weeks as we noodle on this design a bit.
After _Black Mirror_, I go downstairs to write my journal for the day, while listening to very
relaxing, slow [[Fluidified](https://www.youtube.com/watch?v=NJQvtCmXx5g)] on YouTube. This was a
fun day, especially as a juxtaposition with yesterday's write-off due to the headache.
## Pictures of the Day
{{< gallery-category >}}
{{< gallery-photo fn="2024-09-07/IMG_1143.JPG" caption="The gift Liv brought - a giant zucchini, or as the Swiss say: Zucchetti" >}}
{{< gallery-photo fn="2024-09-09/IMG_1165.JPG" caption="I've sliced this zucchini length wise, and it's about 2kg or so. Lots of it has to be disposed of though - it looks a bit like a pumpkin in here!" >}}
{{< gallery-photo fn="2024-09-09/IMG_1166.JPG" caption="Marina thinks that maybe the atmospheric pressure differential is what gave my sinuses the heebie-jeebies. She may be right, there was a 10mBar dip the day before... hmmm." >}}
{{< gallery-photo fn="2024-09-09/IMG_1167.JPG" caption="The Douglas is full of powders, potions, Eyes of Newt, Gillyweed, and so on. All Marina bought was some sunscreen and parfume, though :(" >}}
{{< gallery-photo fn="2024-09-09/IMG_1169.JPG" caption="The Coop however is full of wine. And I like wine. And baking bread. And computers." >}}
{{< gallery-photo fn="2024-09-09/IMG_1172.JPG" caption="I write a default piss-off post-it note to PostFinance AG who are vulgar spammers. One Franc well spent!" >}}
{{< gallery-photo fn="2024-09-09/IMG_1173.JPG" caption="The corp laptop is completely dead. Also, its screen is gross, so I clean it up while it charges. I then send Phreak an e-mail." >}}
{{< gallery-photo fn="2024-09-09/frysix.png" caption="May I present to you: the all new and improved Frys-IX website!" >}}
{{< gallery-photo fn="2024-09-09/IMG_1174.JPG" caption="Simple cheese melt toastie and zucchini soup (with balls!)" >}}
{{< gallery-photo fn="2024-09-09/IMG_1176.JPG" caption="The singing that 'freed' this character Abi in Black Mirror. But because it's Black Mirror, she was not freed but got entirely messed up. No spoilers here :)" >}}
{{< /gallery-category >}}
{{< gallery-modal >}}
{{< gallery-script >}}

BIN
static/img/brain.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-07/IMG_1143.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1165.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1166.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1167.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1169.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1172.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1173.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1174.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/IMG_1176.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/fullsize/2024-09-09/frysix.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-07/IMG_1143.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1165.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1166.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1167.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1169.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1172.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1173.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1174.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/IMG_1176.JPG (Stored with Git LFS) Normal file

Binary file not shown.

BIN
static/img/thumbnails/2024-09-09/frysix.png (Stored with Git LFS) Normal file

Binary file not shown.