mpm + networking   281

smoltcp
smoltcp is a standalone, event-driven TCP/IP stack that is designed for bare-metal, real-time systems. Its design goals are simplicity and robustness. Its design anti-goals include complicated compile-time computations, such as macro or type tricks, even at cost of performance degradation.
networking  tcp 
8 weeks ago by mpm
Leveraging eBPF for programmable network functions with IPv6 Segment Routing
With the advent of Software Defined Networks (SDN), Network Function Virtualisation (NFV) or Service Function Chaining (SFC), operators expect networks to support flexible services beyond the mere forwarding of packets. The network programmability framework which is being developed within the IETF by leveraging IPv6 Segment Routing enables the realisation of in-network functions. In this paper, we demonstrate that this vision of in-network programmability can be realised. By leveraging the eBPF support in the Linux kernel, we implement a flexible framework that allows network operators to encode their own network functions as eBPF code that is automatically executed while processing specific packets. Our lab measurements indicate that the overhead of calling such eBPF functions remains acceptable. Thanks to eBPF, operators can implement a variety of network functions. We describe the architecture of our implementation in the Linux kernel. This extension has been released with Linux 4.18. We illustrate the flexibility of our approach with three different use cases: delay measurements, hybrid networks and network discovery. Our lab measurements also indicate that the performance penalty of running eBPF network functions on Linux routers does not incur a significant overhead.
ebpf  networking  performance 
9 weeks ago by mpm
Fitting Square Pegs Through Round Pipes: Unordered Delivery Wire-Compatible with TCP and TLS
Internet applications increasingly employ TCP not as a stream abstraction, but as a substrate for application-level transports, a use that converts TCP's in-order semantics from a convenience blessing to a performance curse. As Internet evolution makes TCP's use as a substrate likely to grow, we offer Minion, an architecture for backward-compatible out-of-order delivery atop TCP and TLS. Small OS API extensions allow applications to manage TCP's send buffer and to receive TCP segments out-of-order. Atop these extensions, Minion builds application-level protocols offering true unordered datagram delivery, within streams preserving strict wire-compatibility with unsecured or TLS-secured TCP connections. Minion's protocols can run on unmodified TCP stacks, but benefit incrementally when either endpoint is upgraded, for a backward-compatible deployment path. Experiments suggest that Minion can noticeably improve performance of applications such as conferencing, virtual private networking, and web browsing, while incurring minimal CPU or bandwidth costs.
networking  protocol 
may 2019 by mpm
linux-network-performance-parameters
This brief tutorial shows where some of the most used and quoted sysctl/network parameters are located into the Linux network flow
linux  networking  performance 
april 2019 by mpm
Writing User Space Network Drivers
We present ixy, a userspace network driver designed for simplicity and educationalpurposes to show that fast packet IO is not black magic butcareful engineering. Ixy focuses on the bare essentials of user space packet processing: a packet forwarder including the whole NIC driver uses less than 1000 lines of C code.
networking  performance 
march 2019 by mpm
io_submit: The epoll alternative you've never heard about
Disk files are not the same thing as network sockets! Is it even possible to use the Linux AIO API with network sockets in the first place? The answer turns out to be a strong YES
linux  networking 
january 2019 by mpm
MSG_ZEROCOPY
The MSG_ZEROCOPY flag enables copy avoidance for socket send calls. The feature is currently implemented for TCP sockets.
linux  networking  performance  memory 
january 2019 by mpm
Optimizing UDP for content delivery: GSO, pacing and zerocopy
UDP is a popular basis for the experimentation with and rapid deployment of new protocols. Experience shows a large gap in cycle efficiency compared to in-kernel TCP. This talk presents recent optimizations to the UDP stack that narrow this gap. At the core are optimizations long available to TCP: segmentation offload, pacing and zerocopy. We present the recently merged UDP GSO and SO_TXTIME interfaces and discuss select implementation details. We also review partial GSO as it fits in this context and discuss optimizations that are in submission: UDP zerocopy transmit with MSG_ZEROCOPY and UDP GRO.
linux  udp  networking  performance 
january 2019 by mpm
The eXpress Data Path: Fast Programmable Packet Processing in the Operating System Kernel
In XDP, the operating system kernel itself provides a safe execution environment for custom packet processing applications, executed in device driver context.
ebpf  linux  networking  performance 
january 2019 by mpm
gRPC On HTTP/2: Engineering A Robust, High Performance Protocol
In this article, we’ll look at how gRPC builds on HTTP/2’s long-lived connections to create a performant, robust platform for inter-service communication. gRPC is a high-performance, open-source universal RPC framework. We will explore the relationship between gRPC and HTTP/2, how gRPC manages HTTP/2 connections, and how gRPC uses HTTP/2 to keep connections alive, healthy, and utilized.
http  networking  protocol 
december 2018 by mpm
Computer Networks: A Systems Approach
This site contains source text for Computer Networks: A Systems Approach, now available under terms of the Creative Commons (CC BY 4.0) license.
book  networking 
august 2018 by mpm
OpenFastPath
OpenFastPath is an open source implementation of a high performance TCP/IP stack that provides features that network application developers need to cope with today’s fast-paced network.
networking  tcp  performance 
august 2018 by mpm
Open-sourcing Katran, a scalable network load balancer
Katran offers a software-based solution to load balancing with a completely reengineered forwarding plane that takes advantage of two recent innovations in kernel engineering: eXpress Data Path (XDP) and the eBPF virtual machine.
networking  performance  ebpf  linux 
june 2018 by mpm
Service Fabric: A Distributed Platform for Building Microservices in the Cloud
We describe Service Fabric (SF), Microsoft’s distributed platform for building, running, and maintaining microservice applications in the cloud. SF has been running in production for 10+ years, powering many critical services at Microsoft. This paper outlines key design philosophies in SF. We then adopt a bottom-up approach to describe low-level components in its architecture, focusing on modular use and support for strong semantics like fault-tolerance and consistency within each component of SF. We discuss lessons learned, and present experimental results from production data
networking  service-location 
june 2018 by mpm
Tracing a packet journey using Linux tracepoints, perf and eBPF
At the end of this post, we’ll have a simple and easy to use low level packet tracer
ebpf  observability  networking 
may 2018 by mpm
libmoon
LuaJIT + DPDK = fast and flexible packet processing at speeds above 100 Gbit/s.
lua  networking  performance 
april 2018 by mpm
eBPF, Sockets, Hop Distance and manually writing eBPF assembly
A friend gave me an interesting task: extract IP TTL values from TCP connections established by a userspace program. This seemingly simple task quickly exploded into an epic Linux system programming hack
ebpf  networking  overlay 
april 2018 by mpm
Linux Raw Sockets
I've learnt a lot about raw socktet programing under Linux and here I want to share a few things with you.
linux  networking 
march 2018 by mpm
Maglev: A Fast and Reliable Software Network Load Balancer
Maglev is Google’s network load balancer. It is a large distributed software system that runs on commodity Linux servers. Unlike traditional hardware network load balancers, it does not require a specialized physical rack deployment, and its capacity can be easily adjusted by adding or removing servers. Network routers distribute packets evenly to the Maglev machines via Equal Cost Multipath (ECMP); each Maglev machine then matches the packets to their corresponding services and spreads them evenly to the service endpoints. To accommodate high and ever-increasing traffic, Maglev is specifically optimized for packet processing performance. A single Maglev machine is able to saturate a 10Gbps link with small packets. Maglev is also equipped with consistent hashing and connection tracking features, to minimize the negative impact of unexpected faults and failures on connection-oriented protocols. Maglev has been serving Google's traffic since 2008. It has sustained the rapid global growth of Google services, and it also provides network load balancing for Google Cloud Platform.
networking 
march 2018 by mpm
Datacenter Traffic Control: Understanding Techniques and Trade-offs
Datacenters provide cost-effective and flexible access to scalable compute and storage resources necessary for today's cloud computing needs. A typical datacenter is made up of thousands of servers connected with a large network and usually managed by one operator. To provide quality access to the variety of applications and services hosted on datacenters and maximize performance, it deems necessary to use datacenter networks effectively and efficiently. Datacenter traffic is often a mix of several classes with different priorities and requirements. This includes user-generated interactive traffic, traffic with deadlines, and long-running traffic. To this end, custom transport protocols and traffic management techniques have been developed to improve datacenter network performance. In this tutorial paper, we review the general architecture of datacenter networks, various topologies proposed for them, their traffic properties, general traffic control challenges in datacenters and general traffic control objectives. The purpose of this paper is to bring out the important characteristics of traffic control in datacenters and not to survey all existing solutions (as it is virtually impossible due to massive body of existing research). We hope to provide readers with a wide range of options and factors while considering a variety of traffic control mechanisms. We discuss various characteristics of datacenter traffic control including management schemes, transmission control, traffic shaping, prioritization, load balancing, multipathing, and traffic scheduling. Next, we point to several open challenges as well as new and interesting networking paradigms. At the end of this paper, we briefly review inter-datacenter networks that connect geographically dispersed datacenters which have been receiving increasing attention recently and pose interesting and novel research problems.
protocol  networking 
february 2018 by mpm
DCCast: Efficient Point to Multipoint Transfers Across Datacenters
Using multiple datacenters allows for higher availability, load balancing and reduced latency to customers of cloud services. To distribute multiple copies of data, cloud providers depend on inter-datacenter WANs that ought to be used efficiently considering their limited capacity and the ever-increasing data demands. In this paper, we focus on applications that transfer objects from one datacenter to several datacenters over dedicated inter-datacenter networks. We present DCCast, a centralized Point to Multi-Point (P2MP) algorithm that uses forwarding trees to efficiently deliver an object from a source datacenter to required destination datacenters. With low computational overhead, DCCast selects forwarding trees that minimize bandwidth usage and balance load across all links. With simulation experiments on Google's GScale network, we show that DCCast can reduce total bandwidth usage and tail Transfer Completion Times (TCT) by up to 50% compared to delivering the same objects via independent point-to-point (P2P) transfers.
networking  alm  protocol 
february 2018 by mpm
QuickCast: Fast and Efficient Inter-Datacenter Transfers using Forwarding Tree Cohorts
Large inter-datacenter transfers are crucial for cloud service efficiency and are increasingly used by organizations that have dedicated wide area networks between datacenters. A recent work uses multicast forwarding trees to reduce the bandwidth needs and improve completion times of point-to-multipoint transfers. Using a single forwarding tree per transfer, however, leads to poor performance because the slowest receiver dictates the completion time for all receivers. Using multiple forwarding trees per transfer alleviates this concern--the average receiver could finish early; however, if done naively, bandwidth usage would also increase and it is apriori unclear how best to partition receivers, how to construct the multiple trees and how to determine the rate and schedule of flows on these trees. This paper presents QuickCast, a first solution to these problems. Using simulations on real-world network topologies, we see that QuickCast can speed up the average receiver's completion time by as much as 10× while only using 1.04× more bandwidth; further, the completion time for all receivers also improves by as much as 1.6× faster at high loads.
alm  networking  protocol 
february 2018 by mpm
Benchmarking and Analysis of Software Data Planes
This technical paper introduces the main concepts underpinning a systematic methodology for benchmarking and analysis of compute-native network SW data plane performance running on modern compute server HW
networking  performance  memory 
february 2018 by mpm
ixy
Simple userspace packet processing for educational purposes
networking  performance 
january 2018 by mpm
The kernel connection multiplexer
As the introduction to Tom Herbert's kernel connection multiplexer (KCM) patch set notes, TCP is often used for message-oriented communication protocols even though, as a streaming transport, it has no native support for message-oriented communications. KCM is an effort to make it easier to send and receive messages over TCP which adds a couple of other interesting features as well.
networking  tcp  messaging 
december 2017 by mpm
About Microservices, Containers and their Underestimated Impact on Network Performance
Microservices are used to build complex applications composed of small, independent and highly decoupled processes. Recently, microservices are often mentioned in one breath with container technologies like Docker. That is why operating system virtualization experiences a renaissance in cloud computing. These approaches shall provide horizontally scalable, easily deployable systems and a high-performance alternative to hypervisors. Nevertheless, performance impacts of containers on top of hypervisors are hardly investigated. Furthermore, microservice frameworks often come along with software defined networks. This contribution presents benchmark results to quantify the impacts of container, software defined networking and encryption on network performance. Even containers, although postulated to be lightweight, show a noteworthy impact to network performance. These impacts can be minimized on several system layers. Some design recommendations for cloud deployed systems following the microservice architecture pattern are derived.
networking  performance 
december 2017 by mpm
iproute2 cheat sheet
This document aims to provide comprehensive but easy to use documentation for the ip command included in iproute2 package.
linux  networking 
august 2017 by mpm
Let's code a TCP/IP stack
In this blog series, we will implement a minimal userspace TCP/IP stack for Linux.
tcp  networking 
july 2017 by mpm
BBR, the new kid on the TCP block
BBR is very similar to TCP Vegas, in that it is attempting to operate the TCP session at the point of onset of queuing at the path bottleneck. The specific issues being addressed by BBR is that the determination of both the underlying bottleneck available bandwidth and path RTT is influenced by a number of factors in addition to the data being passed through the network for this particular flow, and once BBR has determined its sustainable capacity for the flow, it attempts to actively defend it in order to prevent it from being crowded out by the concurrent operation of conventional AIMD protocols.
networking  tcp  protocol  performance 
may 2017 by mpm
Queueing in the Linux Network Stack
This article aims to explain where IP packets are queued in the Linux network stack, how interesting new latency reducing features such as BQL operate and how to control buffering for reduced latency.
linux  networking 
april 2017 by mpm
Crossbar.io
Crossbar.io is a networking platform for distributed and microservice applications, implementing the open Web Application Messaging Protocol (WAMP).
messaging  networking 
march 2017 by mpm
SR-IOV for NFV Solutions
There are a number of published articles and papers from various Ethernet vendors touting their
SR-IOV solutions as being ideal for NFV; some focus on “Smart NIC” type of capabilities, others have
vSwitch offloading, and others speak of raw packet performance. Some of the data is compelling
enough to warrant closer examination. This paper outlines the results of that examination and
experimentation
networking  performance 
march 2017 by mpm
Boost UDP Transaction Performance
Kernel configuration to fix udp latency & throughput issues
udp  performance  networking  actors 
february 2017 by mpm
RINASim
RINASim is a stand-alone framework for OMNeT++ discrete event simulator environment. RINASim is coded from scratch and independent on another library. The main purpose is to offer the community with reliable and the most up-to-date tool (in the sense of RINA specification compliance) for simulating RINA-based computer networks
RINA  networking 
february 2017 by mpm
elle
Elle is a collection of libraries, written in modern C++ (C++14). It contains a rich set of highly reusable concepts, algorithms, API wrappers, ... Elle is split into different smaller specialized libraries to provide elegant ways to approach coroutine, networking, formatting, serialization, logging, RPCs, etc.
concurrency  networking  c++ 
february 2017 by mpm
Monitoring and Tuning the Linux Networking Stack: Sending Data
This blog post explains how computers running the Linux kernel send packets, as well as how to monitor and tune each component of the networking stack as packets flow from user programs to network hardware.
linux  networking  performance  monitoring 
february 2017 by mpm
Understanding TCP/IP Network Stack & Writing Network Apps
This article will describe the overall operation scheme of the network stack based on data flow and control flow in Linux OS and the hardware layer.
linux  networking  tcp 
january 2017 by mpm
Illustrated Guide to Monitoring and Tuning the Linux Networking Stack: Receiving Data
A series of diagrams aimed to help readers form a more clear picture of how the Linux network stack works.
linux  networking 
january 2017 by mpm
Monitoring and Tuning the Linux Networking Stack: Receiving Data
It is impossible to tune or monitor the Linux networking stack without reading the source code of the kernel and having a deep understanding of what exactly is happening.This blog post will hopefully serve as a reference to anyone looking to do this
linux  networking  monitoring 
january 2017 by mpm
BBR: Congestion-Based Congestion Control
Today TCP's loss-based congestion control is the primary cause of these problems. When bottleneck buffers are large, loss-based congestion control keeps them full, causing bufferbloat. When bottleneck buffers are small, loss-based congestion control misinterprets loss as a signal of congestion, leading to low throughput. Fixing these problems requires an alternative to loss-based congestion control
networking  performance  protocol 
december 2016 by mpm
Packet mmap
This file documents the mmap() facility available with the PACKET socket interface on 2.4/2.6/3.x kernels
linux  networking  performance 
october 2016 by mpm
Capturing Packets in Linux at a Speed of Millions of Packets per Second without Using Third Party Libraries
My article will tell you how to accept 10 million packets per second without using such libraries as Netmap, PF_RING, DPDK and other. We are going to do this with Linux kernel version 3.16 and some code in C and C++.
networking  performance  linux 
october 2016 by mpm
tcp_bbr: add BBR congestion control
Anew TCP congestion control algorithm: BBR
(Bottleneck Bandwidth and RTT)
tcp  protocol  networking 
september 2016 by mpm
Envoy
C++ L7 proxy and communication bus
c++  networking 
september 2016 by mpm
Turtles on the wire: understanding how the OS uses the modern NIC
We're going to be focusing on how the Operating System sees NICs, what abstractions they provide together, how things have changed to deal with the increased tenancy and performance demands
networking  performance 
september 2016 by mpm
UdpPinger
UdpPinger is our high performance UDP packet generation, reflection and collection library
networking  performance  testing 
august 2016 by mpm
Multiplexing on top of TCP
Some messaging technologies (e.g. AMQP) allow for multiplexing several data streams on top of a single TCP connection
networking  protocol  tcp 
july 2016 by mpm
Sprout
Sprout is a transport protocol for interactive applications that desire high throughput and low delay
protocol  networking 
july 2016 by mpm
RFC 5166 - Metrics for the Evaluation of Congestion Control Mechanisms
This document discusses the metrics to be considered in an evaluation of new or modified congestion control mechanisms for the Internet
networking  protocol  testing 
july 2016 by mpm
BeeHive: An Efficient Fault-Tolerant Routing Algorithm Inspired by Honey Bee
Bees organize their foraging activities as a social and com-municative effort, indicating both the direction, distance and quality of food sources to their fellow foragers through a ”dance ” inside the bee hive (on the ”dance floor”). In this paper we present a novel routing algorithm, BeeHive, which has been inspired by the communicative and evaluative methods and procedures of honey bees. In this algorithm, bee agents travel through network regions called foraging zones. On their way their information on the network state is delivered for updating the local routing tables. BeeHive is fault tolerant, scalable, and relies com-pletely on local, or regional, information, respectively. We demonstrate through extensive simulations that BeeHive achieves a similar or better performance compared to state-of-the-art algorithms
fault-tolerance  networking  bio-inspired  bees 
june 2016 by mpm
Monitoring and Tuning the Linux Networking Stack: Receiving Data
This blog post explains how computers running the Linux kernel receive packets, as well as how to monitor and tune each component of the networking stack as packets flow from the network toward userland programs
linux  networking  monitoring  performance 
june 2016 by mpm
TCP Friendly Rate Control (TFRC)
TFRC is a congestion control mechanism for unicast flows operating in a best-effort Internet environment. It is reasonably fair when competing for bandwidth with TCP flows
networking  tcp  protocol 
june 2016 by mpm
Much Faster Networking
David Riddoch talks about technologies that make very high performance networking possible on commodity servers and networks, with a special focus on kernel bypass technologies including sockets acceleration and NFV
networking  performance 
may 2016 by mpm
Tng: Transport Next Generation
We are developing a new transport service architecture that decomposes "true" end-to-end transport functions such as reliable packet delivery and security from middlebox-relevant functions such as endpoint naming and congestion control.
networking  tcp  protocol 
april 2016 by mpm
asio_sodium_socket
This is a header-only C++14 library implementing custom transport encryption using libsodium and Asio's stackless coroutines. It assumes pre-shared public keys and uses only the sealed box and crypto box constructs
c++  confidentiality  integrity  networking 
april 2016 by mpm
OpenFastPath
OpenFastPath is an open source implementation of a high performance TCP/IP stack that provides features that network application developers need to cope with today’s fast-paced network
networking  performance  tcp 
april 2016 by mpm
Folklore of Network Protocol Design
This talk describes things that should be considered when designing a protocol, such as being able to manage parameters while the network continues to operate, designing to allow graceful migration to new features, scalability, and robustness. It talks about things that might seem obvious, but everyone gets wrong, like the purpose of a "version number" in a protocol
networking 
february 2016 by mpm
nicstat
nicstat is a Solaris and Linux command-line that prints out network statistics for all network interface cards (NICs), including packets, kilobytes per second, average packet sizes and more
networking  monitoring  linux 
january 2016 by mpm
Controlling Queue Delay
The solution for persistently full buffers, AQM (active queue management), has been known for two decades but has not been widely deployed because of implementation difficulties and general misunderstanding about Internet packet loss and queue dynamics. Unmanaged buffers are more critical today since buffer sizes are larger, delay-sensitive applications are more prevalent, and large (streaming) downloads common. The continued existence of extreme delays at the Internet’s edge can impact its usef...
networking  performance  memory 
january 2016 by mpm
lwIP
lwIP is a small independent implementation of the TCP/IP protocol suite
networking 
december 2015 by mpm
Network Coordinate Research at Harvard
We are researching how to develop stable and accurate large-scale network coordinate systems and what one can do with such systems once they exist
overlay  nc  networking 
november 2015 by mpm
The Locator/ID Separation Protocol (LISP)
This document describes a network-layer-based protocol that enables separation of IP addresses into two new numbering spaces: Endpoint Identifiers (EIDs) and Routing Locators (RLOCs). No changes are required to either host protocol stacks or to the "core" of the Internet infrastructure. The Locator/ID Separation Protocol (LISP) can be incrementally deployed, without a "flag day", and offers Traffic Engineering, multihoming, and mobility benefits to early adopters, even when there are relatively few LISP-capable sites.
networking  addressing  overlay 
november 2015 by mpm
Computer Networking : Principles, Protocols and Practice
Computer Networking : Principles, Protocols and Practice (aka CNP3) is an ongoing effort to develop an open-source networking textbook that could be used for an in-depth undergraduate or graduate networking courses.
book  networking 
november 2015 by mpm
The Harmful Consequences of Postel's Maxim
Jon Postel's famous statement in RFC 1122 of "Be liberal in what you accept, and conservative in what you send" - is a principle that has long guided the design of Internet protocols and implementations of those protocols. The posture this statement advocates might promote interoperability in the short term, but that short term advantage is outweighed by negative consequences that affect the long term maintenance of a protocol and its ecosystem
networking  protocol 
november 2015 by mpm
Snabb Switch: kernel-bypass networking illustrated
Snabb Switch is a networking application that runs on Linux. However, it does not typically use Linux's networking functionality. Instead it negotiates with the kernel to take control of whole PCI network devices and perform I/O directly without using the kernel as a middle-man. This is kernel-bypass networking
linux  networking  performance 
october 2015 by mpm
Per-process netfilter rules
This article documents how the traffic of specific Linux processes can be subjected to a custom firewall or routing configuration, thanks to the magic of cgroups. We will use the Network classifier cgroup, which allows tagging the packets sent by specific processes.
linux  networking 
october 2015 by mpm
Speeding up Packet I/O in Virtual Machines
Most of the work on VM network performance has focused so far on bulk TCP traffic, which covers classical applications of virtualization. Completely new "paravirtualized devices" (Xenfront, VIRTIO, vmxnet) have been designed and implemented to improve network throughput
networking  performance 
october 2015 by mpm
The Delay-Tolerant Networking Research Group
The Delay-Tolerant Networking Research Group (DTNRG) is a research group chartered as part of the Internet Research Task Force (IRTF). Members of DTNRG are concerned with how to address the architectural and protocol design principles arising from the need to provide interoperable communications with and among extreme and performance-challenged environments where continuous end-to-end connectivity cannot be assumed. Said another way, we are concerned with interconnecting highly heterogeneous net...
networking 
october 2015 by mpm
Fun with BPF, or, shutting down a TCP listening socket the hard way
Unlike in BSD, where Berkeley Packet Filter is implemented as a root-only device that attaches to entire network interfaces, on Linux it is implemented in terms of a socket option that usually attaches to AF_PACKET or AF_RAW sockets, however it is a little known fact you can also attach such filters to AF_INET sockets, and better yet, the ability to do so does not require root. Essentially, Linux allows non-root programs to configure their own little private firewall
linux  networking  tcp 
july 2015 by mpm
CCN-lite.net
CCN-lite is a lightweight (no bells & whistles), and functionally interoperable implementation of the Content Centric Networking protocol CCNx of XEROX PARC
networking  ccn 
july 2015 by mpm
How to achieve low latency with 10Gbps Ethernet
[How to] optimize our UDP application for latency
linux  networking  performance  udp 
july 2015 by mpm
RakNet
RakNet is a cross platform, open source, C++ networking engine for game programmers
networking  c++ 
june 2015 by mpm
ENet
ENet's purpose is to provide a relatively thin, simple and robust network communication layer on top of UDP (User Datagram Protocol).The primary feature it provides is optional reliable, in-order delivery of packets
networking  udp 
june 2015 by mpm
On the Naming and Binding of Network Destinations
This brief paper offers a perspective on the subject of names of destinations in data communication networks. It suggests two ideas: First, it is helpful to distinguish among four different kinds of objects that may be named as the destination of a packet in a network. Second, the operating system concept of binding is a useful way to describe the relations among the four kinds of objects. To illustrate the usefulness of this approach, the paper interprets some more subtle and confusing prope...
networking  addressing 
june 2015 by mpm
How to receive a million packets per second
On Linux, how hard is it to write a program that receives 1 million UDP packets per second? Hopefully, answering this question will be a good lesson about the design of a modern networking stack
linux  networking  performance 
june 2015 by mpm
Secure Socket Funneling
Secure Socket Funneling (SSF) is a network tool and toolkit. It provides simple and efficient ways to forward data from multiple sockets (TCP or UDP) through a single secure TLS link to a remote computer
networking  confidentiality 
june 2015 by mpm
MoldUDP
MoldUDP is a networking protocol that allows efficient and scaleable transmission of data messages in a "one transmitter to many listeners" scenario. MoldUDP is a lightweight protocol layer built on top of UDP that provides a mechanism for listeners to detect and re-request missed packets.
networking  performance  udp 
may 2015 by mpm
seastar
High performance server-side application framework
c++  networking 
april 2015 by mpm
libmtev
a toolkit for building high-performance servers
performance  networking  concurrency 
february 2015 by mpm
« earlier      
per page:    204080120160

Copy this bookmark:



description:


tags: