An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.

Top 5.8% on proxy.golang.org
Top 1.8% dependent packages on proxy.golang.org
Top 4.7% dependent repos on proxy.golang.org
Top 9.0% forks on proxy.golang.org

proxy.golang.org : github.com/getlantern/multipath

Package multipath provides a simple way to aggregate multiple network paths between a pair of hosts to form a single connection from the upper layer perspective, for throughput and resilience. The term connection, path and subflow used here are the same as mentioned in MP-TCP https://www.rfc-editor.org/rfc/rfc8684.html#name-terminology Each subflow is a bidirectional byte stream each side in the following form until being disrupted or the connection ends. When establishing the very first subflow, the client sends an all-zero connnection ID (CID) and the server sends the assigned CID back. Subsequent subflows use the same CID. There are two types of frames. Data frame carries application data while ack frame carries acknowledgement to the frame just received. When one data frame is not acked in time, it is sent over another subflow, until all available subflows have been tried. Payload size and frame number uses variable-length integer encoding as described here: https://tools.ietf.org/html/draft-ietf-quic-transport-29#section-16 Ack frames with frame number < 10 are reserved for control. For now only 0 and 1 are used, for ping and pong frame respectively. They are for updating RTT on inactive subflows and detecting recovered subflows. Ping frame: Pong frame:

Registry - Source - Documentation - JSON
purl: pkg:golang/github.com/getlantern/multipath
License: Apache-2.0
Latest release: about 2 years ago
First release: over 3 years ago
Namespace: github.com/getlantern
Dependent packages: 12
Dependent repositories: 1
Stars: 23 on GitHub
Forks: 4 on GitHub
See more repository details: repos.ecosyste.ms
Last synced: 3 months ago

    Loading...
    Readme
    Loading...