Mark Oliver's World

Latest Blog posts

Here are the synopses of my most recent posts. Click on a heading to read the full article...


Playing A Captured VoIP Recording Through Wireshark

If you have a Pcap file network capture (generated by Wireshark perhaps) with a SIP or any Voice Over IP (VoIP) call traffic, you can listen to the raw calls within the Wireshark.

Open the pcap file in Wireshark.

On the menu, Choose Telephony->VoIP Calls
![VoIP Call Menu Op...


Replaying Network Captures

When building any network related software, sometimes you need to capture the network traffic to debug an issue. The tool of choice tends to be Wireshark, which is truly excellent and I have used it for many years debugging TELNET, HTTP, SIP, UDP & RTP traffic.



Explicitly Including A DLL In A Project

Have you ever seen this kind of error on running your code:

            System.IO.FileNotFoundException: Could not load file or assembly 'XXXXXXXXXXXXXXX, Version=X.Y.Z.0, Culture=neutral, PublicKeyToken=yyyyyyyy'. The system cannot find the file specified. File name: 'XXXXXXXXXXXXXXX, Version=X.Y.Z.0, Cu...


Hosting A Large Number Of Participants In Microsoft Teams

Something I learned about today, was the different ways to host people in MS Teams.

1 on 1 calls are great, but sometimes you want to talk to a large group. Normally I reach straight for a "Meeting" in Teams when I want to talk to a bigger number of people.

But if you are talking to a whole depar...


Dynamically Changing Docker Container Limits

We have limits set on our docker containers to limit things like CPU usage, and memory usage.

These are defined in docker compose configuration YAML files, and are set at runtime.

For instance, this setting sets the CPU to only be 95% of the available CPUs, and limit the Memory to 5000MB



Docker Compose Parallel Gotcha

Time for another Gotcha with Docker.

This time, we kept seeing calls in Azure DevOps to docker compose up that would never complete. It would start some of the services (We have about 40), and then it would just hang.

We have recently upgraded to Docker Compose V2 due to V1...


Intermittent Playwright Exception

I have been getting this error intermittently in our Azure Devops based Playwright tests using a headless Chrome browser:

            Microsoft.Playwright.PlaywrightException: net::ERR_NETWORK_CHANGED Stack Trace:    at Microsoft.Playwright.Transport.Connection.InnerSendMessageToServerAsync[T](String...


Its Time To Talk About Lego

I am a big fan of lego, which is a fairly new thing for me, I didn't have any as a kid.

However as an adult with disposable income, I get lots of pleasure from Lego. It is a great stress and anxiety reliever for me.

My "Want to Buy list" at the moment contains:


Docker Compose Scaling Gotcha

Today I ran this command:

            docker-compose up -d --scale service1=10

Then ran this command:

            docker-compose up -d --scale anotherservice2=10

What do you think happens?

Well not what I was expecting.

I was expecting service1 to have 10 scaled versions, and `anotherservi...


Three Years Have Gone


3 years have gone by, and it feels like yesterday. So much has happened, yet so little too.

Families have wained, friendships needed rekindling, and through it all there has been that feeling of emptiness and loss.

3 years without a part of me, 3 years without my whole heart, 3 years withou...