Пользователи сети Tor запускают «луковый» прокси-сервер на своей машине, который подключается к серверам Tor, периодически образуя цепочку сквозь tor onion сайт, которая использует многоуровневое шифрование.
Каждый пакет данных, попадающий в систему, проходит через три различных прокси-сервера — узла, которые выбираются случайным образом. Перед отправлением пакет последовательно шифруется тремя ключами: сначала для третьего узла, потом для второго и в конце, для первого.
Когда первый узел получает пакет, он расшифровывает «верхний» слой шифра (аналогия с тем, как чистят луковицу) и узнаёт, куда отправить пакет дальше. Второй и третий сервер поступают аналогичным образом. В то же время, программное обеспечение «лукового» прокси-сервера предоставляет SOCKS-интерфейс.
Программы, работающие по SOCKS-интерфейсу, могут быть настроены на работу через сеть Tor, который, мультиплексируя трафик, направляет его через виртуальную цепочку Tor и обеспечивает анонимный веб-серфинг в сети.
Внутри сети Tor трафик перенаправляется от одного маршрутизатора к другому и окончательно достигает точки выхода, из которой чистый (нешифрованный) пакет данных уже доходит до изначального адреса получателя (сервера). Трафик от получателя обратно направляется в точку выхода сети Tor.