Chapter 8. Networking
Red Hat Enterprise Linux 6.2 introduces the multi-message send
system call which is the send
version of the existing recvmmsg
system call in Red Hat Enterprise Linux 6.
sendmmsg
socket API looks like this:
struct mmsghdr { struct msghdr msg_hdr; unsigned msg_len; }; ssize_t sendmmsg(int socket, struct mmsghdr *datagrams, int vlen, int flags);
Red Hat Enterprise Linux 6.2 includes Transmit Packet Steering (XPS) for multiqueue devices. XPS introduces more efficient transmission of network packets for multiqueue devices by specifically targeting the processor involved in sending the packet. XPS enables the selection of the transmit queue for packet transmission based on configuration. This is analogous to the receive-side functionality implemented in Red Hat Enterprise Linux 6.1 which allowed for processor selection based on the receive queue (RPS). XPS has shown to improve throughput by 20% to 30%.
Previously, the bridge flooded packets to unregistered groups via all ports. However, this behavior is not desirable in environments where traffic to unregistered groups is always present. In Red Hat Enterprise Linux 6.2, traffic is only sent to unregistered groups via ports marked as router ports. To force flooding to any given port, mark that port as a router port.
Red Hat Enterprise Linux 6.2 adds support for SCTP multihoming—the ability of nodes (that is, multi-home nodes) to be reached at several IP addresses.
In Red Hat Enterprise Linux 6.2, more tracepoints have been added for UDP packet drop events. These tracepoints provide a way to analyze the reasons why UDP packets are dropped.
The IPSet feature in the kernel has been added to store multiple IP addresses or port numbers, and match them against a collection via iptables.
The TCP initial receive window default has been increased from 4 kB to 15 kB. The benefit of this increase is that more data (15 kB > payload > 4 kB) can now fit in the initial window. With a 4 kB setting (IW3), any payload larger than 4 kB would have to be broken into multiple transfers.
In Red Hat Enterprise Linux 6.2, the TCP initial congestion window default is now set to 10
, according to RFC 5681. Additionally, the initial-window code common to TCP and CCID-2 has been consolidated.
GSO (Generic Segmentation Offload) support for the IPv6 forward path has been added, improving the performance of host to guest communication if GSO is enabled.
vios-proxy is a stream-socket proxy for providing connectivity between a client on a virtual guest and a server on a Hypervisor host. Communication occurs over virtio-serial links. This feature is introduced as a Technology Preview in Red Hat Enterprise Linux 6.2.