How (not) to do Public Open WiFi – A Saturday Evening Lecture

Here’s a quick online lecture talk announcement for this Saturday evening, 10. September 2022, 19:00 CEST (Central European Time) that I have received today and which I will definitely attend:

Jan-Daniel Kaplanski of the German Red Cross will talk about his efforts to bring Internet connectivity to large refugee homes in Germany. I’ve been looking at such efforts in the past already and I’m looking forward to hear about Jan-Daniel’s experiences, what kind of technology was rolled out and how the system is used.

The talk is part of a lecture seriesof the Update computer club in Uppsala, Sweden and they’ll use their own BBB server for the event. Click here to join at 19:00 CEST on Saturday.

And here’s the announcement in full:

With increased refugee numbers, an unprecedented high demand for the possibility of communication with the remaining family members left home arose, rendering the previous solution insufficient. That previous solution was based on one WiFi AP and one repeater each per building, connected to a 50 Mbit/s DL/UL synchronous optical fibre network via an external VPN provider to ensure network separation with the company’s staff network. The aim of this project was to provide a new fast solution with its separate external connection, by building a separate network from the ground up. This is an ongoing endeavour, which has currently reached its test phase with three operational APs across two buildings and eight network switches across six buildings, more to follow.

Jan-Daniel Kaplanski (German Red Cross)

The lecture is free and open to everyone.

Edge Computing – Virtual Worlds in UDP Packets

An idea that has been floating through the news in recent years is Edge Computing. One flavor of the concept is to have relatively lightweight client devices that receive pre-processed data from servers that are located close to the edge of the network instead of doing it themselves. Recently, I’ve come across two applications that would fit the bill and that I could experiment with a bit: Cloud Gaming and immersive Virtual Reality.

Continue reading Edge Computing – Virtual Worlds in UDP Packets

TCP Tracing – Part 8 – BBR and Uplink Congestion Avoidance

Typical uplink throughput graph over Android Wi-Fi tethering and a slow uplink

Wi-Fi Tethering on Android is a great thing and has totally changed the way we use the mobile Internet today. One thing Android does not do well today at all, however, are bulk uploads over Wi-Fi tethering, especially under bad LTE radio conditions with low throughput. The screenshot above shows how a big file upload looks like over the course of one minute. Up to 22 seconds into the transmission, the throughput graph looks quite reasonable, throughput is around 4 Mbps in the uplink direction. But at 22 seconds into the upload, the curve suddenly goes crazy. Average throughput stays at 4 Mbps, but things could not be more wrong. Let’s have a closer look why that is so and what can be done about it.

Continue reading TCP Tracing – Part 8 – BBR and Uplink Congestion Avoidance

Steam – Giana Sisters – And Linux – 10 Years Later

Giana Sisters on the C64 – many eons ago

The favorite game of my teenage years was undoubtedly ‘Giana Sisters‘. I loved the game and the soundtrack and played it hours on end on my Commodore 64. A couple of decades then followed in which I didn’t play a lot of computer games at all, there were just so many other exciting things to do with computers that kept me engaged. Then, in 2012, Black Forrest Games had a Kickstarter campaign to create a modern successor to the game. I was hooked and once it was released, I bought it on Steam. Unfortunately, my 3 year old notebook I bought in 2009 would not run the game smoothly. I was a bit disappointed, but ok, it was not a gamer notebook. So I shelved the thing for a decade but was recently reminded of it again. So perhaps it would run now with my current media notebook with an Intel 11th generation CPU which still only has an integrated GPU? So lets see I thought…

Continue reading Steam – Giana Sisters – And Linux – 10 Years Later

The LTE Timing Advance

One nice thing about GSM ‘in the old days’ was, that there was a timing advance (TA) value that indicated to the mobile how much earlier it had to start transmitting relative to the network to account for the limited speed of radio waves. In my early ‘mobile days’, the TA was an invaluable help to get an idea of how far cell sites are apart from each other in the city and in the countryside, and if a cell site I stood in front of was actually the one my mobile communicated with or if it was from a different network operator. Unfortunately, the timing advance went away with UMTS, and when it came back with LTE, it was not shown in the ‘engineering menu’ of mobile devices any more. A pity. Also, I thought that the timing advance value was deeply buried in MAC messages, and hence difficult to get to with professional trace tools. Recently, however, I found out that at least the later assumption was not quite true.

Continue reading The LTE Timing Advance

Proper Shutdown of VMs on Host Reboot

In the past, I’ve always used KVM’s GUI to properly shut-down remote Virtual Machines when I needed to reboot the host and then re-launch them again after the reboot. Over time, this is a bit of a tiresome process, especially as the frequency of host reboots after security updates seems to increase. So at some point I thought that there must be an easier way to do this:

Continue reading Proper Shutdown of VMs on Host Reboot

TCP Tracing – Part 7 – Between Data Centers

Data transfer speed between a VM in Nürnberg and a VM in Helsinki

After the interesting throughput experiences I have made over the last mile, it was time to push the limit a bit and get an idea of how a high speed data transmission between virtual machines looks like that are in different data centers. While most of the public cloud infrastructure I used is located in Hetzner’s Helsinki data center, I do have a couple of virtual machines in Hetzner’s Nürnberg facility as well. In other words, an ideal setup to test inter-data center throughput.

The image at the beginning of the post shows the throughput when transferring large amounts of data from a VM in Nürnberg to a VM in Helsinki. Both VMs are running on servers that are connected by 1GbE links to the backbone. That means that the bandwidth on that link has to be shared by all VMs on the physical server. So at first I was not surprised that I could ‘only’ get a throughput of around 300 to 400 Mbps. Or so I thought…

Continue reading TCP Tracing – Part 7 – Between Data Centers

TCP Tracing – Part 6 – Segmentation Offloading

With multi gigabit per second Ethernet and wireless interfaces, CPUs are quite challenged by the sheer number of packets that need to be handled. Let’s say a transmission on a (meager) 1 Gbps Ethernet link is well utilized by large file transfers (let’s say 100 MBbytes per second) and a typical maximum segment size (MSS) of 1460 bytes is used. That’s 68.493 packets per second in one direction, not even counting the TCP ACKs in the other direction! Also, Wireshark starts smoking when it has to look at a 60 seconds trace with 4 million packets inside. But there’s a fix for that with almost no downsides that: Segmentation Offloading.

Continue reading TCP Tracing – Part 6 – Segmentation Offloading