Назад к вопросам
МТС
Intern — Junior
99
Имел ли опыт работы с протоколом UDP в своих проектах?
Компании, где спрашивали
А-стор
Ответ от нейросети
sobes.tech AI
Да, опыт работы с протоколом UDP был. UDP (User Datagram Protocol) — это протокол транспортного уровня, который обеспечивает передачу данных без установления соединения и без гарантии доставки.
В проектах на C/C++ UDP используется для приложений, где важна скорость и низкая задержка, например, в играх или потоковой передаче данных.
Пример простого UDP-клиента на C++:
#include <iostream>
#include <cstring>
#include <arpa/inet.h>
#include <sys/socket.h>
int main() {
int sock = socket(AF_INET, SOCK_DGRAM, 0);
if (sock < 0) {
std::cerr << "Ошибка создания сокета" << std::endl;
return 1;
}
sockaddr_in server_addr{};
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(12345);
inet_pton(AF_INET, "127.0.0.1", &server_addr.sin_addr);
const char* message = "Привет, UDP сервер!";
sendto(sock, message, strlen(message), 0, (sockaddr*)&server_addr, sizeof(server_addr));
close(sock);
return 0;
}
UDP удобен для приложений, где потеря некоторых пакетов не критична, но важна скорость передачи.