Have you ever tried sending one Ethernet packet every 78 microseconds? If not, what would you expect to happen? Actually, I did that kind of experiment (and many others) last year in my graduation thesis “Development of a Scalable and Distributed System for Precise Performance Analysis of Communication Networks“, which is now published. For the thesis I developed a system called the Lightweight Universal Network Analyzer (LUNA), which can generate packets at precise times and record their arrival times, among other things. When I tested it on different hardware, I got some surprising results.
Tag Archives: network
Multiple Network Devices in KVM
Recently I needed to build a test system at work which required a client to communicate with a server through a NAT router. I decided to assemble the system from three KVM-based virtual machines with tap networking. The router would get two network interfaces, and two bridge interfaces on the host connect server and clientContinue reading “Multiple Network Devices in KVM”
GnuTLS and GLib, Part 2: Socket layer
A description of how to let GnuTLS use a GSocket as transport layer.
Getting network interface information in Java
How to get all available interfaces on the local host in Java, with a few additional hints for Android.
First steps with libnl
How to find out the IP addresses associated with an interface via libnl, and some GLib stuff I learned in the process.
SCTP socket in stream mode
SCTP sockets can operate in two modes: SOCK_SEQPACKET or SOCK_STREAM. When migrating my server from UDP to SCTP, I initially used the sequential packet mode. However, changing to stream mode offered me two significant advantages: I use threads to process data from different clients. With sequential packet mode, the callback for new data has toContinue reading “SCTP socket in stream mode”
Using SCTP in GLib
A while ago, I wrote about using a UDP socket as event source in GLib. Now, I’m migrating my program to SCTP. The main reason is that SCTP provides reliability for sequential messages, but some of the advanced features might become useful later. Surprisingly few changes were necessary in my program: Create the socket withContinue reading “Using SCTP in GLib”
Using a UDP socket as event source in GLib main loop
I found out how to get an event in the GLib main loop when a UDP socket receives data (with code snippets).