Единственное техническое преимущество, которое я могу себе представить, заключается в том, что оно позволяет приложению выполнить преобразование один раз и кэшировать его.
Затем, для множества вызовов, скажем sendto()
для UDP, или что у вас,адрес «переупорядоченный при необходимости» передается в ОС, которая может копировать его «как есть» непосредственно в исходящие сетевые пакеты.
В качестве альтернативы выполнению этого в ядре потребуется каждый вызов sendto()
длявозьмите то, что приложение знает как один и тот же адрес снова и снова, и пересчитывайте его каждый раз.
Так как sendto()
выигрывает от этого, остальные API работают одинаково.