Если делать
надёжно, можно взять всем известный
ipef3, исходники на
Си благополучно находятся здесь
https://github.com/esnet/iperf
Пишите простую обёртку на
Swift с нужными Вам типами измерений над этой библиотекой. (Это делается очень легко, информации куча)
Ну собственно теперь подключается свою обёртку на Swift(
import MySwiftIperf
) и начинаете измерять.
Если делать
проще, то можно качать обычным
URLSession
некий большой файл. У
URLSession
есть отличный делегат, в котором можно глянуть текущую порцию скаченных данных. Этого достаточно для измерения скорости. Начальное время, текущее время, текущее кол-во скаченных байт, всё это делим на нужное измерение в кб/мб/...
P.S. Красивая стрелка это тема для отдельного разговора.