Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.8%) to scientific vocabulary
Last synced: 8 months ago · JSON representation ·

Repository

gNB simulator

Basic Info
  • Host: GitHub
  • Owner: omec-project
  • Language: Go
  • Default Branch: main
  • Size: 7.75 MB
Statistics
  • Stars: 81
  • Watchers: 9
  • Forks: 43
  • Open Issues: 1
  • Releases: 10
Created almost 5 years ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

Go Report Card GitHub latest release (SemVer)

Table Of Contents

Introduction

This repository is part of the SD-Core project. SD-Core is open source 5G implementation of 5G Core Network. SD-Core provides a tool to simulate gNodeB and UE by generating NAS and NGAP messages for the configured UEs and call flows.

gNBSim Simulator Block Diagram

gNBSim

Supported features

Supported 3gpp procedures:

  • UE Registration
  • UE Initiated PDU Session Establishment
  • UE Initiated De-registration
  • AN Release
  • UE Initiated Service Request
  • N/W triggered PDU Session Release
  • UE Requested PDU Session Release
  • N/W triggered UE Deregistration

Supported System level features

  • Gnbsim can generate and send user data packets (ICMP echo request) and process downlink user data (ICMP echo response) over the established data plane path (N3 Tunnel)
  • Executing all enabled profiles in parallel or in sequential order
  • Timeout for each call flow within profile
  • Logging summary result
  • HTTP API to execute profile
  • Configure number of data packets to be sent and time interval between consecutive packets
  • Configure AS (Application Server) address. This is used to send data packets
  • Run gNBSim with single Interface or multi interface
  • Support of Custom Profiles
  • Delay between Procedures
  • Timeout for every profile
  • Logic to calculate latency per transaction/ operation
  • Support retransmission of Service Request Message
  • Support deployment of gNBSim as standalone container
  • Reporting profile errors from all levels

Pending Features

  • Provision data interface to gNBSim Container/POD/executable for data traffic testing
  • [3gpp] Generating GTPU echo request & handle incoming GTPU response
  • [3gpp] Handle incoming GTPu echo request & generate GTPu echo response
  • [3gpp] Support to send Error indication Message
  • [3gpp] Adding support for handling End Marker packet
  • [3gpp] GUTI based registration
  • [3gpp] Adding support for Resynchronization Profile
  • [3gpp] Adding Support for N2 handover profile
  • Support to handle Paging Request
  • Controlling Profiles - Adding support for aborting profile
  • Controlling Profiles - Suspend & resume profiles
  • Adding support for configurable rate of events
  • HTTP APIs to fetch subscriber/profile status from gNBSim
  • Adding Support for Xn Handover profile
  • Dropping incoming messages based on configuration
  • Sending negative responses to request/command type messages based on configuration
  • Handling security mode failure message
  • Triggering downlink data from gNB Sim (CI/CD feature as well)
  • UI Support
  • 3gpp Release Upgrade
  • Extensive gnbsim documentation
  • Command line options to send logs and/or events to file in specific format for post processing.

Support and Contributions

The gnbsim project welcomes new contributors. Feel free to propose a new feature or fix bugs!

Before contributing, please follow these guidelines:

  1. gNBSim documentation details here
  2. Please refer to the official SD-Core documentation for more details.
  3. #sdcore-dev channel in ONF Community Slack
  4. Raise Github issues

License

The project is licensed under the Apache License, version 2.0.

Owner

  • Name: OMEC - Open Mobile Evolved Core
  • Login: omec-project
  • Kind: organization

Open Source Virtualized Mobile Core Project from ONF

Citation (CITATION.cff)

# SPDX-License-Identifier: Apache-2.0
# Copyright 2023 Intel Corporation
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "ONF project"
title: "5G Test tool - gNBSim"
version: 1.1.0
date-released: 2022-03-13
url: "https://github.com/omec-project/gnbsim"

GitHub Events

Total
  • Create event: 81
  • Release event: 4
  • Issues event: 9
  • Watch event: 9
  • Delete event: 67
  • Issue comment event: 65
  • Push event: 122
  • Pull request review comment event: 3
  • Pull request review event: 87
  • Pull request event: 178
  • Fork event: 5
Last Year
  • Create event: 81
  • Release event: 4
  • Issues event: 9
  • Watch event: 9
  • Delete event: 67
  • Issue comment event: 65
  • Push event: 122
  • Pull request review comment event: 3
  • Pull request review event: 87
  • Pull request event: 178
  • Fork event: 5

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 13
  • Total pull requests: 205
  • Average time to close issues: 6 months
  • Average time to close pull requests: 11 days
  • Total issue authors: 8
  • Total pull request authors: 19
  • Average comments per issue: 3.38
  • Average comments per pull request: 0.8
  • Merged pull requests: 146
  • Bot issues: 0
  • Bot pull requests: 82
Past Year
  • Issues: 2
  • Pull requests: 73
  • Average time to close issues: 5 months
  • Average time to close pull requests: 1 day
  • Issue authors: 2
  • Pull request authors: 6
  • Average comments per issue: 2.0
  • Average comments per pull request: 0.33
  • Merged pull requests: 47
  • Bot issues: 0
  • Bot pull requests: 56
Top Authors
Issue Authors
  • yoursunny (5)
  • orion-belt (4)
  • Royal-Rangers (2)
  • dependabot[bot] (2)
  • MaFe1401 (1)
  • gruyaume (1)
  • onf-bot (1)
  • lpatil81 (1)
  • gab-arrobo (1)
  • gatici (1)
  • ntutangyun (1)
  • matba1984 (1)
  • thakurajayL (1)
  • souravpaul8 (1)
Pull Request Authors
  • dependabot[bot] (146)
  • gab-arrobo (43)
  • gajjarvini (36)
  • thakurajayL (35)
  • onf-bot (10)
  • badhrinathpa (5)
  • vthiruveedula (4)
  • ghislainbourgeois (4)
  • patriciareinoso (3)
  • gatici (3)
  • joshuazhu78 (2)
  • sindack (2)
  • mbilal92 (1)
  • dariofaccin (1)
  • yoursunny (1)
Top Labels
Issue Labels
dependencies (2) go (2)
Pull Request Labels
dependencies (146) go (96) docker (26) github_actions (24)

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total docker downloads: 796
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 13
proxy.golang.org: github.com/omec-project/gnbsim
  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Docker Downloads: 796
Rankings
Forks count: 3.8%
Stargazers count: 4.3%
Average: 6.1%
Dependent packages count: 7.0%
Dependent repos count: 9.3%
Last synced: 8 months ago

Dependencies

go.mod go
  • git.cs.nctu.edu.tw/calee/sctp v1.1.0
  • github.com/antonfisher/nested-logrus-formatter v1.3.1
  • github.com/calee0219/fatal v0.0.1
  • github.com/gin-contrib/cors v1.3.1
  • github.com/gin-gonic/gin v1.7.0
  • github.com/kr/text v0.2.0
  • github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e
  • github.com/omec-project/CommonConsumerTestData v1.1.0
  • github.com/omec-project/UeauCommon v1.1.0
  • github.com/omec-project/amf v1.1.0
  • github.com/omec-project/aper v1.1.0
  • github.com/omec-project/http2_util v1.1.0
  • github.com/omec-project/idgenerator v1.1.0
  • github.com/omec-project/logger_util v1.1.0
  • github.com/omec-project/milenage v1.1.0
  • github.com/omec-project/nas v1.1.1
  • github.com/omec-project/ngap v1.1.0
  • github.com/omec-project/openapi v1.1.0
  • github.com/sirupsen/logrus v1.8.1
  • github.com/ugorji/go v1.2.3
  • github.com/urfave/cli v1.22.4
  • github.com/yerden/go-util v1.1.4
  • golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad
  • golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d
  • golang.org/x/sys v0.0.0-20210423082822-04245dca01da
  • gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f
  • gopkg.in/yaml.v2 v2.4.0
  • gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b
go.sum go
  • 605 dependencies
Dockerfile docker
  • alpine 3.16 build
  • golang 1.18.0-stretch build
.github/workflows/main.yml actions
  • actions/checkout v4 composite
  • fossa-contrib/fossa-action v3 composite
  • fsfe/reuse-action v2 composite
.github/workflows/push.yml actions
  • actions/checkout v4 composite
  • actions/setup-go v5 composite
  • docker/login-action v3.1.0 composite
  • peter-evans/create-pull-request v6 composite
  • peterjgrainger/action-create-branch v3.0.0 composite
.github/workflows/stale.yml actions
  • actions/stale v9 composite