Поняття сервер і клієнт і закріплені за ними ролі утворять програмну концепцию «клиент-сервер».
Для взаємодії із клієнтом (або клієнтами, якщо підтримується одночасна робота з декількома клієнтами) сервер виділяє необхідні ресурси міжпроцесної взаємодії (поділювана пам'ять, пайп, сокет, і т.п.) і очікує запитів на відкриття з’єднання (або запитів на надаваний сервіс). Залежно від типу такого ресурсу, сервер може обслуговувати процеси в межах однієї комп'ютерної системи або процеси на інших машинах через канали передачі даних (наприклад COMM-порт) або мережні з'єднання.
Формат запитів клієнта й відповідей сервера визначається протоколом. Специфікації відкритих протоколів описуються відкритими стандартами, наприклад протоколи Інтернету визначаються в документах RFC.
Залежно від виконуваних завдань одні сервери, при відсутності запитів на обслуговування, можуть простоювати чекаючи. Інші можуть виконувати якусь роботу (наприклад, роботу зі збору інформації), у таких серверів робота із клієнтами може бути другорядним завданням.
Класифікація стандартних серверів
Як правило, кожен сервер обслуговує один (або трохи схожих) протоколів і сервери можна класифікувати по типі послуг які вони надають.