gonet

A TCP/IP network stack written in Go.

Github stars Tracking Chart

GoNet

GoDoc
Build Status
License

A network stack written in Go with the CSP style. GoNet was written for research purposes, and the accompanying paper is titled An Implementation and Analysis of a Kernel Network Stack in Go with the CSP Style.

Warning: GoNet was built for research purposes and is neither production-ready nor under active development. As an alternative, we would recommend looking into google/netstack.

Usage

Note: This project only works on linux machines (because of its dependency on the tap device).

To install GoNet:

  1. Run go get github.com/hsheth2/gonet
  2. In the directory, run make.

You can use its functionallity by importing it in your own projects. See the GoDoc for documentation.

We also included a simple demo application: a basic HTTP server. Once you have run make in the GoNet source directory, there will be an executable called gohttp in your Go bin. This executable will run the HTTP server, and will serve the files in whatever directory it is run in.

Because GoNet runs on the tap interface, it will be accessible at 10.0.0.2.

Contributors

This project was created by Harshal Sheth
and Aashish Welling.

License

GoNet is released under the MIT License.

Main metrics

Overview
Name With Ownerhsheth2/gonet
Primary LanguageGo
Program languageMakefile (Language Count: 5)
Platform
License:MIT License
所有者活动
Created At2016-03-18 02:43:05
Pushed At2023-11-27 13:06:56
Last Commit At2023-11-27 13:06:56
Release Count3
Last Release Namenhsee (Posted on 2016-03-19 23:52:14)
First Release Namesiemens (Posted on 2015-09-26 04:04:53)
用户参与
Stargazers Count316
Watchers Count14
Fork Count37
Commits Count748
Has Issues Enabled
Issues Count3
Issue Open Count0
Pull Requests Count1
Pull Requests Open Count0
Pull Requests Close Count0
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private