optimal_mtu.md
### About
* I faced bandwidth issues between a WG Peer and a WG server. Download bandwidth when downloading from WG Server to WG peer was reduced significantly and upload bandwidth was practically non existent.
* I found a few reddit posts that said that we need to choose the right MTU. So I wrote a script to find an optimal MTU.
* Ideally I would have liked to have run all possible MTU configurations for both WG Server and WG Peer but for simplicity I choose to fix the WG Server to the original 1420 MTU and tried all MTUs from 1280 to 1500 for the WG Peer.
### Testing
* On WG server, I started an `iperf3` server
* On WG peer, I wrote a script that does the following:
* `wg-quick down wg0`
* Edit MTU in the `/etc/wireguard/wg0.conf` file
This file has been truncated. show original
peer_mtu_vs_bandwidth.png
�PNG
IHDR�'��u}sBIT|d� IDATx��w|TU���of2�I&e�IHB���@��QdU�����u��OYź*� V��H)�t�H� �i���Ly�?��$�IЀ����f�w�}��wϽ�#ɲ,#�@ �
�ꏮ�@ �@
E��@ �@ �aF�@ �@ nX�Q+�@ �a�
�@ ���E��@ �@ �aF�@ �@ nX�Q+�@ �a�
�@ ���E��@ �@ �aF�@ �@ nX�Q+�@ �a�
�@ ���E��@ �@ �aF�@ �@ nX�Q+�@ �a�
�@ ���E��@ �@ �aF�@ �@ nX�Q+�@ �a�
�@ ���E��@ �@ �aF�@ �@ nX�Q+�@ �a�
�@ ���E��@ �@ �a���7�,#IR��_���e����~w����D}��n�SZZ��f���
��������bt:...��<O*++)))������dr���)..����Z��b���WWW�z}��n2�())����k��,�X,���0�h4��қ��rEE%%%xyy���tm7~��-))�j����UoY��BNNZ�www�Zm���3p5�z=�JY��������ՊN���ٙ��R<<<�j���YȲ��f�����zt%9�Ym�i�{��ߖ��STT�^�����Z}M��QO�>}�] ���Fii)�����䐛�K~~>eeeH�����6�+..��ٳ������L�/�.�����l��ٙ��L233���%77���<�߹���R����$++�V[m�-�2EEE�~w=�$ ��̅���V�^TTDEE��.������z�/����]�b4����9�C=Dyy9;v�Ո�����v���b2��j����vp��~�a����{��]�p!�F������Ã#G�0v�X�F#���X�V����$ �Z���
6p�}����Ill�5]�n��u�V��~��h����.�����`�v-Y����%--
�ٌN�C��0�|Əϰa����m�6�I��5k��.#G��WwSRR���d�ܹ$''ӡC�e���ŋ���&''���"L&j��w������������E���l���)//�`0����������Ϡꙧ���R���t5���������`p9���|���<��#���{�;w���J�L�BTT����T�ǁO�$RRR=z4z�����]K��:��r�t^^999dggSVV���K��c�&55���Jt:�r���
rss�x�"���������T�^����PVV�����N��l|��7�3���z�ӧOӫW�&]�����Z��`�֭�?///�z=�www����ĉ �C����3f�bcc�9s&����&&�� &�c���f̘��o�Ɏ;����ӧ������������w,����.={�P&�˖-㣏>�wޡG��۽�:u�{w��4���qrrB�����C�nݸ���h۶m��?3{���'� ;;�ш$I������ǤI�>|x�I����`�k�������ܹs4hIIIM��RVVƻ�ˠA�hݺ5�W�f���;w�~���}�*�B^^/��2�f�b��Ѽ�曄��5����w�����Y�n#G������>� ÇW�i6�ٴis��%33�Ʉ^���ח|��C�����8�w�JŢE���[�����yꩧX�h={�dٲe���kl۶
��JFFZ�V���tL�<���P�}�Y���2nܸj��駟x�ᇙ;w.�����^���k�����/ҪU+�f3ݺu��˫Y,�]
W��$�������/�;�ٳg�Сs��%""��ߔ��0o�<��yF�͌3hٲ%�V�b��dggSYY���=z�`ҤIDFF�V��e���<>��SV�X��d��ݝѣG3n�8�F#j��������~��I ��!�Z��wF�e��/���~�z>��s\\\����~�Vm�v;�,�9pvv�l6�{�nz���2:t�S�N)���@{�1&M�TM�'O��-�������F��e˖�[���u���Ҷ�O�����NF�
@NN�f�ʕ����L�>����Z��j] ��.7ʤ��ĉ:t(*����/^�+��BXX�;wn����pf͚������z�j��Ûl!�СC�߿�3f���Z���k%)) gggRSS9~�8����ʽ�>x�e����ٳ'K�.e������:��뉍�%>>^��g��|�Iz���ĉ1dggs�رz��jp�s*��I��Q�ҝr��V�+�R}�����_�~J�9x� .\����J����<��Ǐ 77���z��� Ə��hD�RѢE�9rm�p2b��T��|P�g}\�8�XY9ע&� '''����ɓ')((����f�����X��V/��'OҦMƍ���'���̟?���s�=���/6���˗��_r���Ν;�;w.AAA�z��t:����ի�ׯ������G ԏ0j�?��;ұcGZ�jʼn'8t�����?�֭[�����͍.]�ЩS't:�2���dÆ
ddd���L���ILL���Y�9x� 6l`ܸqlݺ���L����\���111$''s��BBBX�t)QQQTTT���B�v퀪�Fqq1z�����r�����n�̙3lذ��*��,SXXȧ�~ʐ!C�С/^d���9s�ݎ��'=z� ::���ۥ���PW�aÆѡCf̘��%K������ٳg��������Օ��x���pqq�l63k�,
����ڵ��۷3j�(����$�5k��Ž��KJJ
This file has been truncated. show original
wireguard_peer_mtu.csv
MTU_server,MTU_peer,upload_rcv_mbps,upload_send_mbps,download_rcv_mbps,download_send_mbps
1420,1280,9.779,10.085,363.282,367.822
1420,1281,10.037,10.221,365.3,367.071
1420,1282,11.266,11.709,304.065,309.068
1420,1283,16.128,16.773,436.708,440.421
1420,1284,9.085,9.32,439.456,442.93
1420,1285,14.175,14.784,405.159,409.575
1420,1286,15.324,17.204,461.383,464.782
1420,1287,9.089,10.135,393.274,396.265
1420,1288,13.843,14.456,417.028,420.83
This file has been truncated. show original