Skip to content

Latest commit

 

History

History
61 lines (46 loc) · 3.68 KB

README.md

File metadata and controls

61 lines (46 loc) · 3.68 KB

M/M/1 Loss Simulation

Описание

Этот проект — симулятор работы модели M/M/1 с потерями, написанный на TypeScript. Он предоставляет пользователю графики, отображающие данные о потерях в системе, и использует алгоритмы на бекенде для минимизации потерь, перераспределяя пакеты между виртуальными "операторами". Хотя физические операторы не задействованы, проект точно моделирует поведение сети с потерями и перераспределением нагрузки.

Функциональность

  • Симуляция работы M/M/1 с потерями: система моделирует очередь с одним сервером, обрабатывающим входящие пакеты. Если сервер перегружен, пакеты теряются.
  • Графики потерь: интерфейс пользователя отображает графики, показывающие динамику потерь в системе в реальном времени.
  • Анализ потерь на бекенде: система анализирует текущие потери и предпринимает действия для их минимизации, перераспределяя пакеты на других "виртуальных операторов".
  • Минимизация потерь: алгоритмы на бекенде анализируют ситуацию с нагрузкой и управляют перераспределением пакетов между операторами, чтобы снизить потери.

Технологии

  • Frontend: TypeScript, использующий библиотеки для визуализации (например, Chart.js или D3.js).
  • Backend: Логика на TypeScript для анализа и минимизации потерь.
  • Используемые подходы: Теория очередей M/M/1, алгоритмы перераспределения нагрузки.

Установка и запуск

Требования

  1. Установите Node.js (рекомендуется версия 14.x и выше).
  2. Установите пакетный менеджер npm.

Установка

  1. Клонируйте репозиторий:
    git clone <URL репозитория>
  2. Перейдите в директорию проекта:
    cd <папка проекта>
  3. Установите зависимости:
    npm install

Запуск

  1. Для запуска разработки:
    npm run dev
  2. Для запуска сборки проекта:
    npm run build
  3. Для запуска тестов (если есть):
    npm run test

Использование

  1. При запуске откроется веб-страница, на которой будет отображаться график потерь.
  2. В реальном времени данные о потерях и перераспределении пакетов будут обновляться.
  3. В режиме работы система будет стараться минимизировать потери, перераспределяя пакеты на доступных "виртуальных операторов".