Сокеты - IPPPROTO_TCP Vs. 0 - PullRequest
0 голосов
/ 19 августа 2011

Какая разница под крышками между использованием:

socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);

и

socket(AF_INET, SOCK_STREAM, 0);

У меня была причина использовать потоковый сокет в приложении, и мне сказали использовать 2-й (я предполагаю, что TCP будет излишним, поскольку он входит в комплект поставки и надежен по умолчанию). Однако я не был уверен, что на самом деле был сокет, созданный с нулевым конечным параметром, поэтому я не решаюсь его использовать.

Ответы [ 2 ]

4 голосов
/ 19 августа 2011

Разницы нет. Оба вернут сокет TCP, потому что TCP является стандартным протоколом STREAM семейства INET.

3 голосов
/ 19 августа 2011

socket() ссылка:

Указание протокола из 0 заставляет socket () использовать неуказанный протокол по умолчаниюсоответствует запрашиваемому типу сокета.

Протокол по умолчанию для потокового сокета, естественно, TCP.Итак, чтобы ответить на ваш вопрос, нет никакой разницы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...