Forward The Foundation

So this is the end of Foundation series. I liked it, nice twists in the story, some drama and deaths. Robots and mental powers are the key! So all is connected at the end. Although the last sentence of the book looks like to leave something open. To be honest, I dont like the typical “Hollywood End” where everybody is happy ever after.

Pain aux Raisins

I wasn’t fan of this pastry until some time ago that I tasted it at this bakery. Since then I wanted to try so last weekend was finally the time. I used this video as inspiration (recipe) I used my typical croissant dough, pastry cream and soaked the raising as the bakery mentions.

Pain aux Raisins Ingredints:

  • 1 or 2 bags of your favourite tea
  • 200g or raisins, sultanas and mixed fruit
  • Bloody orange marmelade
  • Splash of spirit (scotch, rum, etc) – optional
  • 1 egg for egg wash.

Process:

  • Boil 500ml of water. Put the tea bags and dry fruit on it. Optional add the spirit.
  • Remove tea bag after a couple of minutes.
  • Let it soak for 1h.
  • ** Do this when doing the croissant folds
  • Filter the liquid (you can drink it) and let the fruit to dry at room temperature

Pastry Cream Ingredients:

  • 500ml milk
  • 2 eggs
  • 4 yolks
  • 125g sugar
  • 75g plain flour
  • 50g butter
  • 1 ts vanilla paste
  • pinch of salt
  • glass sugar to cover the cream

Process:

  • In a pan, put the milk to boil. Add a bit of sugar and dont stir it!
  • In a bowl, mix eggs, yolks, sugar and vanilla. Then Add flour. Mix all well. Add a pinch of salt.
  • Just when the milk starts boiling, remove from the heat, and pour it bit a bit in the egg mix.
  • Return the mix to the pan, and dont stop stirring, this is the key for cooking the flour!
  • Keep stirring until the mix thickes up. You should see bubbles forming up.
  • Remove from the heat and add the butter. Mix until all combined.
  • Spread the cream in a clean tray, spread sugar on top so a crust doesnt form.
  • Cover with cling film and put into the fridge.
  • ** you can do this the day before or while doing the croissant folds.

Croissant Dough Ingredients:

  • 500g strong white flour
  • 12g fine sea salt
  • 55g sugar
  • 40g soft butter
  • 15g dried yeast
  • 140ml cold water
  • 140mg milk
  • 250g butter block – unsalted if possible.

Croissant Dough Process:

  • Put flour, salt and sugar in a bowl. Mix all together
  • Add the butter and crumb it with your fingers until all is mixed.
  • In a another bowl, mix water, milk and dried yeast.
  • Make a well in the center of the flour mix and add the liquid. Mix all until all is combined. Dont over do it.
  • Cover the bowl and put in the bridge for 8-12 hours.
  • Make an envelope of 20x20cm aprox with baking paper. Put the butter block inside and pounce the butter until it fills the paper with a rolling pin. You should have a nice thin flat block of butter. Put the envelope back in the fridge
  • Take the dough out of the bridge and place it on a lightly floured surface.
  • Roll it out to for a rectangle double of your butter blocker.
  • Place the butter in the center and then cover it with the rest of the dough.
  • Tap the dough gently with the rolling pin to help to seal the sides.
  • With the seam running top to bottom, roll the dough out into a rectangular shape, roughly 1/2 rolling wide, 1 1/4 rolling pin long (rolling pin aprox 50cm).
  • Brush any flour and fold the dough in thirds. Tap the dough with the rolling pin. Repeat the same process: roll the dough 1/2 rolling wide, 1 1/4 long and fold. This is a full fold.
  • Wrap the dough in baking paper and cling film. Rest in the fridge for 30 minutes.
  • Take the dough and give it half fold, so only roll and fold once instead of twice. Rest for another 30 minutes in the fridge wrapped in baking paper and cling film.
  • Apply the last half fold and put back in the fridge for 30 minutes.
  • Take the cream pastry cream from the fridge and give it a whisk until becomes manageable, like a cream and not solid as we will have to spread it over the dough.
  • Take the dough out of the fridge. In a lightly floured surface, roll it 3/4 pin wide and 1 1/4 long.
  • Spread the pastry cream with a spatula evenly on top of the dough.
  • Spread the raisins, sultanas, etc on top.
  • Roll the dough as like making a giant cigar or pipe line.
  • Get ready two trays with baking paper.
  • Slide the dough roll with a sharp knife. Clean it after each cut. Put each slide into the trays. I managed 16 slides plus two leftovers.
  • Seal putting the seam underneath each slide.
  • Egg wash all slides.
  • Turn the lights from the oven, put the two trays on it and add a small bowl of boiling water. We want to create a proving room.
  • Let it raise for 1h, check it and be sure they dont over proof
  • Pre-heat the oven at 180C-190C.
  • Egg wash again all slides.
  • Put one tray in the oven and add some splash of water to create steam.
  • Bake for 20m aprox or until all golden on top
  • Remove and add second tray.
  • In a small bowl, add 3-4 tsp of bloody orange mermelade and boiling water so it gets thinner and more liquid.
  • Brush the pastries with the mermelade as soon as you take them from the oven.

This is the result!

To be honest, for being the first time, I was quite happy with the outcome.

Room for improvement:

1- I think I put too much pastry cream

2- I think I over proof them (2h in the oven!) as the pastry wasn’t really crunchy.

3- A bit mor fruit?

4- Pastry cream had only 3 egg yolks. I should try 4 and use full fat milk.

NANOG 86

This is something I had in my to-watch list… and finally found some time to check out a couple of talks that looked interesting:

  • Emulating Network Topologies in k8s (Google): video

I liked this talk. It is about network simulation with kubernetes. It reminds me to “containerlab” as it uses containers. I was surprises that Google showed Nokia SROS and Arista cEOS. Do they use them in production? Funny enough, there was no Cisco.

I checked KNE and looks interesting, I should try it at some point.

  •    Towards a new Ethernet for High-Performance Data Centers – Activities and Enhancements in IEEE 802.1: video

Mentions infinibad is still king in top 100 HPC. There are 3 improvements in the pipeline for Ethernet QoS to make PFC more “flow” aware. Still some “time” until it hits the market though.

As well, there is a moment, where it mentions Azure managed to get RDMA working at 100km with MACSEC. I think this is the video.

This is the whole video list and slides.

Chips wars

I was reading this news recently about Huaewi capability of building 14nm chips.

Today, the EDA (Electronic Design Automation) market is largely controlled by three companies: California-based Synopsys and Cadence, as well as Germany's Siemens. 

I wonder, are the export controls good long term? Maybe the solution is worse than the illness…

And based on that, I learned that ASML is the biggest valued company in Europe!

As well, there is a book about “chip wars” that I want to read at some point.

Python: cycle and setattr

This week a colleague refactor a script that I wrote and the end was pretty different from what I did. The logic was the same but the code was very differnt. I learnt two things about python

setattr: This method provides an alternate means to assign values to class variables, in addition to constructors and object functions. It comes in handy when we want to add a new attribute to an object and assigning it a value
cycle: . This function takes an iterable inputs as an argument and returns an infinite iterator over the values in inputs that returns to the beginning once the end of inputs is reached. 

CXL

In one meeting somebody mentioned CXL, and I had to look it up.

Interesting:

Eventually CXL it is expected to be an all-encompassing cache-coherent interface for connecting any number of CPUs, memory, process accelerators (notably FPGAs and GPUs), and other peripherals.

BFD Multihop

BFD is a protocol that I assumed I knew “well” as it is quite straightforward…. But after having to check how to configure BFD multihop works I notices, I had actually no idea. As usual, I need to read the RFC at some point.

From this link, I noticed that the concept of Hellos and Echo…. and that echo uses the same IP as src and destination…. I really like the wireshark captures.

Copy/Paste from the link

Packet Types

Control Packets

Control packets are used to establish BFD peerings. Essential information are included within these packets, to include flags for things such as authentication, in addition to the timer negotiations. 
These packets are send via UDP to the destination of the far side IP, utilizing the bfd-control port of 3784. 
Because these packets must actually be processed by the peer, they are sent less frequently then the actual BFD echos used for sub second failure detection.


Echo Packets

BFD echo packets are essentially for local use. They are sent with the same source, and destination IP of itself, destined for the UDP bfd-echo port of 3785. When an echo packet is received, because the destination IP is not of the router receiving it, it simple forwards it out of the appropriate interface, ridding the need to punt it up to the processor.
Because the source and destination IP are the local router, BFD can be ran asynchronous. As in, you can set up a single side to utilize BFD echo detection, while the other side merely maintains a BFD neighbor relationship through control packets.

And now about the BFD multihop. It is a short read, and main point is the UDP port is 4784 compared with 3784 in single-hop.

Then checking for the specific details for configuring BFD MH in NX-OS, it is better to check the official documentation. That for example confirms “Echo mode is not supported for multihop BFD.”

Another thing to take into account is the COPP. You need to check if your device OS captures BFD in the CoPP policies as multi-hop goes to CPU. As well, check if there is any other hardware configuration required.

Another thing that bites me is that when testing this in a software lab, BFD is always down but at least the routing protocols come up.

NVIDIA GTC March 2023

I watched this week some interesting videos from NVIDA GTC related to networking. And it is a pain that you need to use a “work” email to register….

  • S51839 – Designing the Next Generation of AI Systems:

— A quick summary, it seems any HPC networks needs to use InfiniBand… NVIDA has solution for all sizes. They can provide a POD solution!!! All Cloud providers provide their services.

  • S51112 – How to Design an AI Supercomputer for Fast Distributed Training, and its Use Cases:

— Very interesting talk from NEC Japan. They built a network based on Ethernet switches for HPC with GPUs (and not IB as seen in the other video). As well they are heavy in RDMA/ROCEv2. And seems they have dedicated ports in the network for storage, management, etc. They are very happy with Cumulus/Linux as NOS.

  • S51339 – Hit the Ground Running with Data Center Digital Twin Automation:

— Interesting tool NVIDIA air for creating labs. I expected in the demonstration to show off and built a huge network. “Digital Twin” looks like the new buzzword in the network automation world.

  • S51751 – Powering Telco Cloud Services with Open Accelerated Ethernet:

— This is from COMCAST. And it is very interesting how “big” looks like SONIC is becoming. And NVIDIA is the second contributor to SONIC after M$! I need to try SONIC at some point.

  • S51204 – Transforming Clouds to Cloud-Native Supercomputing Best Practices with Microsoft Azure:

— Obviously, building NVIDIA based supercomputers in M$ Azure. Again, all infiniband.

And another thing, the Spectrum-4 switch looks insane.

AWS Networking Videos – March 2023

I watched very interesting videos about AWS networking. They are high level, so they dont tell you the magic sauce you would like to know but it is nice that this info is out in the public.

  • DKNOG – How AWS is evolving its peering-edge in 2023 and onwards link + event:

— Evolution from buying chassis to building your own devices: consume -> create (NOC-less, auto-remediation, active telemetry, etc)-> innovate (freedom to examine trade-offs, 1U devices). Clearly use of “Clos” networks and they linux-based software.

— Delighted: low complexity + high innovation

— Simplicity Scales

— It is interesting the view of a router/brick like a set of 1U devices (rack 102.8T – 200x400G ports for customers, non-blocking). An it is very good they have pictures of the concept of “bricks” and “spines”.

— Challenges with cabling (SN connector — no patching rack needed) and 400G ZR+ (heating!)

— BGP peering is actually with a container:

— James Hamilton paper – link + pdf

  • AWS re:Invent 2022 – Dive deep on AWS networking infrastructure (NET402)– link

— summary: This is “similar” to the DKNOG but with longer and some other details like:

— “We dont like chassis”. 1+million devices

— SDR at NIC level so one TCP flow is actually load-balanced in several paths

— Hybrid SDN approach: You have controllers to give you a big picture view (I guess it provides the visibility to say “just send 70% traffic to this device” – but not sure how) and the own device device capability to deal with changes.

— Telemetry, continuous monitoring, triangulation: Be able to detect the port/device is causing the problem.

  • AWS re:Invent 2022 – Leaping ahead: The power of cloud network innovation (NET211-L) – link:

— AWS Global Infrastructure: Backbone capacity

— Customer SW/HW

— Everything fails all the time

— GPS locations in fibers! + inject light in fiber to double check fault -> intelligent optical routing/failover -> better than BGP….

— Termite sheet fibers for Australia 🙂

— Nitro card = NIC (offload card)

— SDR: not need in-order packet deliver as required by TCP. 25Gbps flows allowed now.