Skip to content
This repository
branch: stable
Octocat-spinner-32 cppcheck Clean up cppcheck-reported diagnostics. March 08, 2013
Octocat-spinner-32 doc Update doc on shared ptr. Closes #14. TODO: All example code in the d… September 02, 2013
Octocat-spinner-32 include Fix signed(enum)/unsigned(u32) warnings that leak into code bases usi… December 26, 2013
Octocat-spinner-32 samples Fix bad signature in overriding virtual function in SimpleChat sample. March 06, 2013
Octocat-spinner-32 src Fix if-else chain in previous addition to FormatBytes. Thanks to e` f… February 11, 2014
Octocat-spinner-32 tests Clean up build warnings. Use type 'int' for SOCKET instead of 'unsign… March 08, 2013
Octocat-spinner-32 ui Initial implementation of NetworkSimulator, which enables testing dif… January 25, 2012
Octocat-spinner-32 .gitignore .gitignore: Ignore VS2008 projct files and generated Qt moc and ui fi… February 28, 2012
Octocat-spinner-32 CMakeLists.txt Don't do DEBUG_CPP_NAME on Xcode. Fixes #3. March 06, 2013
Octocat-spinner-32 Deploy.bat Added a Deploy.bat deployment script to help making prebuilt lib+head… May 02, 2011
Octocat-spinner-32 LICENSE.txt Migrated to Hg. Initial population. September 27, 2010
Octocat-spinner-32 README.txt Update README. February 08, 2012
Octocat-spinner-32 WHATSNEW.txt Updated WHATSNEW.txt. March 23, 2012
Octocat-spinner-32 cmake_vs2008.bat Pass command line in cmake VS batch files to allow setting options an… February 10, 2014
Octocat-spinner-32 cmake_vs2010.bat Pass command line in cmake VS batch files to allow setting options an… February 10, 2014
Octocat-spinner-32 linuxBuild Add batch files for cmake and build invocations. Use boost::mutex. Ad… September 29, 2010
   Welcome to kNet!

kNet is a low-level networking protocol library designed for bit-efficient realtime streaming of custom application-specified messages on top of TCP or UDP. kNet is written in C++.

   Supported Platforms.

kNet has been tested to build on the following platforms:
 - Windows 7 & Visual Studio 2010 Professional
 - Windows 7 & Visual Studio 2008 Standard
 - Ubuntu 9.04 & GCC 4.4.1
 - Windows 7 & MinGW GCC 4.6.1 versioned 20111118 (beware though, MinGW is not actively supported)

kNet uses doxygen to generate its documentation. See the web page for an online hosted copy.
   Building kNet.

kNet uses cmake (2.6 or newer) as its build system. On Linux it can use pthreads or boost v1.38.0 or newer for threading support. On Windows a CMake flag USE_BOOST can be used to specify whether to depend on boost or not. By default USE_BOOST is on.

kNet can optionally use Qt to provide a debugging and statistics window for profiling and simulation of different network conditions.

 1. Install cmake. 
 2a. Optional: Install and build Boost. Edit the root CMakeLists.txt to specify the source directory to boost path.
 2b. If you do not want to use Boost, edit the root CMakeLists.txt and comment out the USE_BOOST directive. If Boost is not used, kNet will utilize native threading APIs on each platform (WIN32 CreateThread or POSIX threads). There are no functional differences with using either.
 3. Optional: If you do not want to use TinyXML, edit the root CMakeLists.txt and make sure the USE_TINYXML directive is commented out. This will disable the functionality of SerializedMessageList/MessageListParser though. 
 4. Optional: kNet can use Qt to provider debug statistics and profiling windows. Install and build Qt (4.6.2 or newer recommended) and uncomment #set(USE_QT TRUE) in the root CMakeLists.txt.
 5a. Windows VS2008: Execute in project root folder the command 'cmake -G "Visual Studio 9"' (case sensitive!), or click on the cmake_vs2008.bat.
 5b. Windows VS2010: Execute in project root folder the command 'cmake -G "Visual Studio 10"' (case sensitive!), or click on the cmake_vs2010.bat.
 5c. Linux and Mac: Run 'cmake .' in kNet root folder.
 6. If CMake fails to find your Qt installation, or if you want to explicitly specify the source location, set the QMAKESPEC and QTDIR environment variables or alter the cmake_vs2008.bat/cmake_vs2010.bat files.
 7a. Windows: Open and build the kNet.sln.
 7b. Linux and Mac: Run 'make'.

The project output files are placed in the directory kNet/lib.


The following people have contributed to the project:

   Toni Alatalo
   Jukka Jylänki
   Erno Kuusela
   Ali Kämäräinen
   Jonne Nauha
   Ville Saarinen
   Cvetan Stefanovski
   Kari Vatjus-Anttila
   Lasse Öörni


The kNet repository is hosted at github: Please report bugs using the github issue tracker.
There exists a Wireshark dissector plugin for kNet: .
A SCTP -enabled branch of kNet is being developed at .
Something went wrong with that request. Please try again.