{"id":50906943,"url":"https://github.com/omnetpp/mm1k","last_synced_at":"2026-06-16T06:02:59.917Z","repository":{"id":356491071,"uuid":"1232769732","full_name":"omnetpp/mm1k","owner":"omnetpp","description":"Finite-buffer M/M/1/K queue","archived":false,"fork":false,"pushed_at":"2026-06-04T07:26:55.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-06-04T09:13:20.555Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/omnetpp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-08T08:52:05.000Z","updated_at":"2026-06-04T07:26:58.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/omnetpp/mm1k","commit_stats":null,"previous_names":["levy/mm1k","omnetpp/mm1k"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/omnetpp/mm1k","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omnetpp%2Fmm1k","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omnetpp%2Fmm1k/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omnetpp%2Fmm1k/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omnetpp%2Fmm1k/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/omnetpp","download_url":"https://codeload.github.com/omnetpp/mm1k/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omnetpp%2Fmm1k/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34393302,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-16T02:00:06.860Z","response_time":126,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-16T06:02:58.206Z","updated_at":"2026-06-16T06:02:59.906Z","avatar_url":"https://github.com/omnetpp.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# M/M/1/K Queue Validation\n\nAn OMNeT++ simulation of a finite-buffer M/M/1/K queue, validated against\nclosed-form analytical results.\n\n## Model\n\n```\nSource --\u003e Queue --\u003e Sink\n```\n\n- **Source**: Poisson arrivals (exponential inter-arrival times)\n- **Queue**: Exponential service, finite capacity K (including job in service), drops when full\n- **Sink**: Absorbs completed jobs, records sojourn time\n\n## Parameters\n\n| Parameter | Value |\n|-----------|-------|\n| λ (arrival rate) | 0.8 |\n| μ (service rate) | 1.0 |\n| K (system capacity) | 5 |\n| Simulation time | 100 000 s |\n| Repetitions | 5 |\n\n## Analytical Reference (M/M/1/K)\n\nWith ρ = λ/μ = 0.8:\n\n| Metric | Formula | Value |\n|--------|---------|-------|\n| P(drop) | π_K = π_0 · ρ^K | 0.088819 |\n| Throughput | λ · (1 − P_drop) | 0.728944 |\n| Utilization | 1 − π_0 | 0.728944 |\n| E[N] | Σ n·π_n | 1.868332 |\n| E[T] | E[N] / throughput | 2.563065 |\n\n## Building and Running (via opp_repl)\n\n```python\nfrom opp_repl import *\n\nload_opp_file(\"/home/levy/workspace/mm1k/mm1k.opp\")\np = get_simulation_project(\"mm1k\")\nbuild_project(simulation_project=p)\nr = run_simulations(simulation_project=p, config_filter=\"Mm1kValidation\")\n```\n\n## Files\n\n| File | Description |\n|------|-------------|\n| `mm1k.opp` | opp_repl project descriptor |\n| `Network.ned` | Network topology and module declarations |\n| `Source.h` / `Source.cc` | Poisson arrival generator |\n| `Queue.h` / `Queue.cc` | Finite-capacity queue with exponential service |\n| `Sink.h` / `Sink.cc` | Job sink, records lifetime statistics |\n| `omnetpp.ini` | Simulation configuration |\n\n## Recorded Statistics\n\n- **generated** — total jobs created (Source)\n- **accepted** / **dropped** / **dropProbability** — queue admission (Queue)\n- **busy:timeavg** — server utilization (Queue)\n- **queueLength:timeavg** — mean number in system (Queue)\n- **lifeTime:mean** — mean sojourn time (Sink)\n\n## Validation Results\n\n| Metric | Analytical | Simulated | Rel. Error |\n|--------|-----------|-----------|-----------|\n| Drop probability | 0.088819 | 0.089923 | 1.24% |\n| Throughput | 0.728944 | 0.727422 | 0.21% |\n| Utilization | 0.728944 | 0.727225 | 0.24% |\n| E[N] | 1.868332 | 1.864657 | 0.20% |\n| E[T] | 2.563065 | 2.563365 | 0.01% |\n\nAll errors are below 1.3%, consistent with statistical noise.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomnetpp%2Fmm1k","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fomnetpp%2Fmm1k","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomnetpp%2Fmm1k/lists"}