Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Golang: tcp, udp, transport protocol, connection, reliability

В чём принципиальное отличие TCP и UDP?

Вопрос проверяет знание двух основных транспортных протоколов и понимание, когда и какой из них использовать.

Короткий ответ

TCP — надёжный протокол с установлением соединения и гарантией доставки, а UDP — простой и быстрый, но без гарантии доставки и порядка. TCP используют, где важна надёжность, а UDP — где важна скорость.

Длинный ответ

TCP (Transmission Control Protocol):

  • Устанавливает соединение (handshake).

  • Гарантирует доставку всех пакетов в правильном порядке.

  • Подходит для HTTP, FTP, SMTP.

UDP (User Datagram Protocol):

  • Не устанавливает соединение.

  • Не гарантирует доставку и порядок.

  • Быстрее и легче.

  • Подходит для видеостриминга, DNS, онлайн-игр.

Пример в Go:

// TCP клиент
conn, _ := net.Dial("tcp", "example.com:80")
fmt.Fprintf(conn, "GET / HTTP/1.0\r\n\r\n")

// UDP клиент
conn, _ := net.Dial("udp", "example.com:53")
conn.Write([]byte("data"))

Вывод:

TCP — если нужна надёжность.

UDP — если нужна скорость и можно потерять часть данных.

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    6

Навыки

  • Golang

    Golang

Ключевые слова

#tcp

#udp

#transport protocol

#connection

#reliability

Подпишись на Golang Developer в телеграм

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.