I have a dashcam-style DVR which records video data to an SD card. The device hosts a HTTP service which allows you to configure it and download the videos.
My computer running Windows 10 has a 1 GBit Ethernet Network card, the DVR has 100 mbit Ethernet interface and the SD card is 45MB/s. They are directly connected by an Ethernet cable to create a point to point link.
When I go to the web GUI and download a video I would expect to see a maximum of 12.5MBps download, as the DVR Ethernet is the bottleneck. But I get around 3.5-4MBps.
Does anyone have any idea what would make the speed is so low? What can I do to troubleshoot this?
EDIT: The SD card is https://www.mymemory.co.uk/kingston-128gb-sd-card-sdxc-45mb-s.html
I want to be able to backup without removing the SD card because I'm going to hide it inside my car but an ethernet port will be easily accessible.
I can use the web-gui but I've also written a C# program which uses a http get request and the System.IO.Stream class to save the files and that runs at about 3-3.5MBps.
The files are 5 minutes long each so they are all consistent sizes.