Upgrading to BBB v2.3 and Ubuntu 18.04

I’ve been running a BBB server for well over a year now and recently it was time for a somewhat bigger update that was a bit out of the ordinary. For some reason or other, BBB v2.2 could only run on Ubuntu 16.04, which was already hopelessly outdated when I first installed the server last year. At the time, first efforts were done by the developers to base the next major version of BBB on Ubuntu 18.04. A bit of an odd decision from my point of view, as Ubuntu 20.04 was just around the corner and the current stable BBB release that requires the new OS version was only released a year later in May 2021. As the developers recommended not to update the OS and BBB, but rather start with a clean slate and install everything from scratch, I decided to do just that and was surprised that the approach is relatively painless, and can be done with a few commands. The only quirk I encountered was during the re-import of the user database on the new server that required some thinking.

Continue reading Upgrading to BBB v2.3 and Ubuntu 18.04

Antenna Games & Anti-Static Bags

When working on radio related things in a lab, there are usually shielded boxes with antenna connectors and attenuators, so it’s easy to simulate bad RF conditions. That’s quite useful when testing how devices behave under such conditions. Recently, I wanted to see how a router with an LTE modem behaves when RF is bad from home, so I had to come up with a different approach: Anti-static bags.

Continue reading Antenna Games & Anti-Static Bags

My ffmpeg Cheat Sheet for Video Transcoding

One of the reasons I bought a used Z440 workstation with a 6 core Xeon CPU and an Nvidia graphics card back in December was to offload and speedup occasional video transcoding tasks. As I wrote at the time, I could get a speed-up of up to 8x over my X250 notebook. Since then I have found further parameter improvements for ffmpeg and in some scenarios, my speed-up is now over 30x compared to running the same task on my notebook.

Continue reading My ffmpeg Cheat Sheet for Video Transcoding

Wondershaper, SSH and the TOS field

In the previous post, I’ve been looking at Wondershaper, a great script that uses the Traffic Control (tc) command to counter buffer bloat situations. The main mechanism to do that is to set the maximum transmission and reception rate of an interface slightly below the available line rate, and thus prevent large transmission buffers to fill up and create unacceptable delay. But Wondershaper does a lot more, such as preferring packets of interactive SSH session over other data packets. When I had a look at how this is done, I was quite surprised that the packets were not preferred based on their TCP port number.

Continue reading Wondershaper, SSH and the TOS field

Wondershaper In Action

In well-built networks with lots of capacity on all links between source and destination, even fully loaded links behave nicely and packet delay remains acceptable. In some scenarios, however, particularly when the bandwidth on the last leg is low, and packet buffers on some routers in the network are overdimensioned, packet delay becomes a real issue. When transferring larger files, bufferbloat quickly sets in, and applications such as interactive shell sessions, web browsing and voice calls become unusable. When I was recently faced with such a situation, I found an interesting traffic shaping tool that fixed the problem: Wondershaper.

Continue reading Wondershaper In Action

3G Switch-Off and Conversations

In just 6 weeks from now, two of the three German wireless network operators will switch-off their 3G networks. This has long been in the cards and gave me a bit of a worry. This is because I run LineageOS on my personal smartphone, and since it has a somewhat esoteric chipset from a LineageOS point of view, its unlikely to ever receive a software update with the Voice over LTE (VoLTE) stack activated.

Continue reading 3G Switch-Off and Conversations

Remotely – Part 2

In my first post on the topic, I’ve given an introduction to ‘Remotely‘, an open source and self-hostable remote support solution for Windows and Linux. I came away quite impressed but noted that in my virtualized setup, the connection to a supported device was often interrupted due to unknown reasons. Also, I hadn’t yet tried to run the dockerized Remotely server behind a reverse proxy, which would be a nice thing to have to benefit from https encryption and automatic Letsencrypt certificate updates. Since then, I had the time to work on my setup some more, and here are the results.

Continue reading Remotely – Part 2

Voice over NR Whitepapers

Now that the non-Standalone (NSA) flavor of 5G has been pretty much established around the globe, it is likely that more focus is put on the 5G standalone (SA) flavor of the technology. In effect that means two things: Instead of using LTE as an anchor for a 5G air interface connection, 5G can stand on it’s own feet. This requires a 5G core network (5GC) with a radically new service based architecture. One existing application that needs to be supported over 5G SA and the 5G core network is of course voice. This means that Voice over LTE (VoLTE) needs to evolve to Voice over NR (VoNR). Rohde & Schwarz has recently published great whitepaper on the topic which I liked very much, so I thought I’d say a few words about the topic here.

Continue reading Voice over NR Whitepapers

Remote Support with a Self-Hosted Remotely Instance

I’m always on the lookout for solutions to improve my remote working and support capabilities and recently came across ‘Remotely‘, an open source and self-hostable remote support solution for Windows and Linux. Self-hosted and open source, hm, sounds interesting, I thought, just what I like for privacy and confidentiality reasons. So I had a closer look!

Continue reading Remote Support with a Self-Hosted Remotely Instance

Stress Testing Guacamole

In the previous post, I had a look at Guacamole, an open source client-less remote desktop gateway. It’s a cool piece of software and I have already used it with 12 people connecting to the same number of workstations in the cloud. In this setup, the central Guacamole server that I equipped with 8 vCPUs hardly required any CPU resources at all. However, most of the time, not much was changing on the remote desktops, so my scenario was not very demanding. So while that’s good to know, I wanted to know the limits of my 8 vCPU setup, so I stress tested my setup. A fun experience!

Continue reading Stress Testing Guacamole