netspel

module
v0.0.0-...-ad2a216 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 3, 2016 License: Apache-2.0

README

netspel - A network protocol playground

netspel is a playground to analyze various network protocols in situ -- running in a variety of environments. It can be used to understand protocol characteristics and estimate theoretical maximums.

Configuration

The configuration glues everything together. Preferably the same configuration is used by both readers and writer but there may need to be minor differences. A JSON file is the base for all configuration; but as long as all of the required fields are present, the file is optional. The file is of the form:

{
    "scheme-type": "<scheme-type>",
    "writer-type": "<writer-type>",
    "reader-type": "<reader-type>",
    "additional": {
        ...
    }
}
Field CLI option Description
scheme-type --scheme or -s A type implementing the Scheme interface
writer-type --writer or -w A type implementing the Writer interface
reader-type --reader or -r A type implementing the Reader interface
additional --config-string or --config-int An optional section specifying arbitrary data used by the specified types. See below for CLI override mechanism.

Options specified on the command line take precedence over JSON values. Values in the additional section can be specified or override JSON values using the following format:

--config-string <dot path>=<value> or --config-int <dot path>=<value>

Dot paths are specified relative to the additional section. For example, given the following JSON config file:

{
    "additional": {
        "udp": {
            "port": 23456
        }
    }
}

The port value can be overridden to a value of 12345 using the CLI option --config-int .udp.port=12345.

Schemes

Schemes orchestrate a run without any coupling to a specific protocol. Schemes can exercise readers and writers all while measuring various attributes of the run.

Existing Schemes
Type Description
simple The simplest scheme available.
streaming The Streaming scheme continuously streams messages at a specific rate.

Adapters

Adapters allow schemes to read and write using a specific network protocol.

Existing Adapter Writers
Type Protocol
udp User Datagram Protocol
sse Server-Sent Events
Existing Adapter Readers
Type Protocol
udp User Datagram Protocol
sse Server-Sent Events

Directories

Path Synopsis
adapters
sse
udp
schemes

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL