Chelsio Communications Chelsio T4 Guía de usuario Pagina 78

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 374
  • Tabla de contenidos
  • SOLUCIÓN DE PROBLEMAS
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 77
Chapter V. WD-UDP
Copyright ©2013.Chelsio Communications. All Rights Reserved. Page 78
4. Software/Driver Configuration and Fine-tuning
4.1. Accelerating UDP Socket communications
The libcxgb4_sock library is a LD_PRELOAD-able library that accelerates UDP Socket
communications transparently and without recompilation of the user application. This section
describes how to use libcxgb4_sock.
By preloading libcxgb4_sock, all sockets created by the application are intercepted and possibly

transmitted or received via HW queues allocated specifically for the accelerated endpoint,
bypassing the kernel, the host networking stack and sockets framework, and enabling ultra-low
latency and high bandwidth utilization.
Due to HW resource limitations, only a small number of queues can be allocated for UDP
acceleration. Therefore only performance critical UDP applications should use libcxgb4_sock.
Only 64 IPv4 UDP sockets / 28 IPv6 UDP Sockets can be accelerated per Chelsio T4
device used.
4.1.1. Application Requirements
Certain application behavior is not supported by libcxb4_sock in this release. If your application
does any of the following, it will not work with libcxgb4_sock:
Calling fork() after creating UDP sockets and using the UDP socket in the child process.
Using multiple threads on a single UDP socket without serialization. For instance, having
one thread sending concurrently with another thread receiving. If your application does this,
you need to serialize these paths with a spin or mutex lock.
Only 1 UDP endpoint is allowed to bind to a given port per host. So if you have multiple
processes on the same host binding to the same UDP port number, you cannot use
libcxgb4_sock.
Applications must have root privileges to use libcxgb4_sock.
Applications requiring bonded T4 interfaces are not currently supported.
The performance benefit observed with       
behavior. While all UDP IO is handled properly, only certain datagrams are accelerated. Non
accelerated IO is handled by libcxgb4_sock via the host networking stack seamlessly. Both
Unicast and Multicast datagrams can be accelerated, but the datagrams must meet the
following criteria:
Non fragmented. In other words, they fit in a single IP datagram that is <= the T4 device
MTU.
Routed through the T4 acceleration device. If the ingress datagram arrives via a device
other than the T4 acceleration device, then it will not utilize the acceleration path. On
Vista de pagina 77
1 2 ... 73 74 75 76 77 78 79 80 81 82 83 ... 373 374

Comentarios a estos manuales

Sin comentarios