Сетевой протокол Photon Engine для онлайн-игр устроен в несколько уровней. 1 На нижнем уровне для передачи сообщений используется UDP. 1
Любой UDP-пакет содержит заголовок eNet и хотя бы одну команду eNet. 1 Каждая команда eNet несёт сообщения: операцию, результат или событие. 1 Они, в свою очередь, состоят из заголовка операции и предоставленных данных. 1
Каналы eNet позволяют использовать несколько независимых последовательностей команд. 1 В одном канале все команды отправляются и выполняются по порядку. 1 Если надёжная команда отсутствует, принимающая сторона не может продолжать отправлять обновления, и возникают задержки. 1
По умолчанию в Photon есть два канала, и нулевой канал используется для отправки операций. 1 Есть «фоновый» канал 255, который используется внутри для сообщений о подключении и отключении. 1
Каналы имеют приоритет: сначала отправляется канал с наименьшим номером. 1 Данные в более высоком канале могут быть отправлены позже, когда UDP-пакет уже заполнен. 1
Кроме того, в Photon есть концепция мастер-сервера для каждой игры или даже уникальной версии игры. 4 Это место, где находятся все игроки и комнаты для этой игры. 4