Hi Recently I've looked into net/haproxy port on FreeBSD.
Contrary to recent Linux there is no splice() functionality, so all data move between sockets is done through user-space. First idea - to use ksocket netgraph node to accept connections, and send data to both directions, theoretically it may give even better performance then using splice() syscall per every block of data. On first stage (while haproxy read/rewrite http headers) both ksocket nodes to be ended in user-space, initial negotiation finished - these nodes just connected to each other in kernel and no user-space interaction required for further data send through that pair. Second, probably you have tried ongoing splice work Suleiman Souhlal ? (not sure about current status) http://p4db.freebsd.org/branchView.cgi?BRANCH=ssouhlal_splice -- Vladimir B. Grebenschikov Project Manager, Automation Parallels Inc. vgrebenschi...@parallels.com _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"