cni
by
containernetworking

Description: Container Network Interface - networking for Linux containers

View on GitHub ↗

Summary Information

Updated 25 minutes ago
Added to GitGenius on October 17th, 2024
Created on April 5th, 2015
Open Issues & Pull Requests: 157 (+0)
Number of forks: 1,149
Total Stargazers: 6,051 (+0)
Total Subscribers: 215 (+0)

Issue Activity (beta)

Open issues: 118
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,904 days
Stale 30+ days: 116
Stale 90+ days: 113

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • component/plugins (26)
  • kind/enhancement (24)
  • component/spec (20)
  • kind/bug (12)
  • kind/question (11)
  • kind/design (10)
  • kind/documentation (8)
  • area/ipv6 (7)

Most active issues this week

No issue events were indexed in the last 7 days.

Repository Insights (GitGenius)

Median issue/PR response: 3085.8 days
Mean response time: 1918.0 days
90th percentile: 3334.2 days
Tracked items: 54

Most active contributors

Detailed Description

The Container Network Interface (CNI) is a Cloud Native Computing Foundation project that provides a specification and libraries for writing plugins to configure network interfaces in Linux containers. The repository serves as the core implementation hub for CNI, containing the Go source code for a library that integrates CNI into applications, an example command-line tool called cnitool for executing CNI plugins, and the formal specification that defines how container networking should work. The project's primary focus is deliberately narrow: it addresses only network connectivity of containers and the removal of allocated resources when containers are deleted, which has enabled CNI to achieve broad adoption across diverse container platforms.

The repository is written in Go and maintains a plugin architecture that allows developers to create networking solutions tailored to specific environments. Rather than attempting to solve all networking problems with a single approach, CNI defines a common interface between network plugins and container execution, allowing the same specification to work across different container runtimes and orchestrators. The project includes documentation through its SPEC.md file and maintains reference plugins in a separate repository at containernetworking/plugins, a split that occurred in May 2017 to better organize the project's scope.

CNI has achieved significant adoption across the container ecosystem. Major container runtimes and orchestrators using CNI include Kubernetes, OpenShift, Cloud Foundry, Apache Mesos, Amazon ECS, Singularity, and OpenSVC. The project also supports numerous third-party plugins from organizations including Project Calico, Cilium, Contiv Networking, Multus, Romana, and many others, demonstrating the specification's flexibility for implementing various networking models from overlay networks to SDN integration.

According to GitGenius activity tracking, the repository shows median issue and pull request response latency of approximately 74,059 hours with a mean of 46,030 hours across 54 tracked items. The most active issue labels are kind/enhancement with 12 occurrences and component/plugins with 10 occurrences, indicating that feature requests and plugin-related discussions dominate the project's issue tracking. The most active contributors tracked include danwinship and squeed with 4 events each, and LionelJouin with 3 events. The repository's contributor network overlaps with microsoft/vscode, kubernetes/website, and rust-lang/rust, suggesting cross-project collaboration among maintainers.

The project maintains active community engagement through biweekly meetings held on Mondays at 10:00 US/Eastern on Jitsi, with meeting notes documented in a separate repository. The project welcomes contributions including bug reports, code improvements, and documentation enhancements, with guidelines provided in the CONTRIBUTING.md file. The CNI specification is language-agnostic, though the repository provides Go language libraries for implementation. The project's design philosophy emphasizes simplicity and pluggability, making it straightforward for developers to create new CNI plugins for existing container networking projects or to build entirely new container networking solutions from scratch using CNI as a framework.

cni
by
containernetworkingcontainernetworking/cni

Repository Details

Fetching additional details & charts...