Проверяет понимание различий между транспортными протоколами TCP и UDP и умение выбрать подходящий протокол для конкретной задачи.
TCP и UDP — два основных протокола транспортного уровня модели OSI. Они решают одну задачу — передать данные между приложениями по сети, но делают это принципиально по-разному. TCP (Transmission Control Protocol) создаёт надёжное соединение, а UDP (User Datagram Protocol) просто отправляет датаграммы без каких-либо гарантий.
Представим отправку сообщения через сокет на Node.js. Для TCP используется модуль net, для UDP — dgram.
// TCP-сервер
const net = require('net');
net.createServer(socket => {
socket.on('data', data => console.log('TCP:', data.toString()));
socket.write('ACK');
}).listen(4000);
// UDP-сервер
const dgram = require('dgram');
const server = dgram.createSocket('udp4');
server.on('message', (msg, rinfo) => {
console.log('UDP:', msg.toString());
});
server.bind(4001);TCP-сервер знает о подключении клиента и может отвечать ему, а UDP-сервер просто принимает датаграммы без состояния соединения.
Выбор протокола зависит от требований: если потеря пакета критична — берём TCP, если важнее задержка и допустимы потери — UDP. Современные протоколы вроде QUIC строятся поверх UDP, добавляя надёжность там, где она нужна, но сохраняя низкую задержку.
Итог: TCP применяйте для задач, где важна целостность и порядок данных, а UDP — для real-time сценариев, где скорость важнее гарантий доставки.
Уровень
Рейтинг:
5
Сложность:
3
Навыки
Node.js
Networks
Ключевые слова
Подпишись на React Developer в телеграм
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию