Ok, so we have three identical server-grade machines,
that I'm labelling as follows:

  1-OpenSolaris
  2-Linux
  3-Initiator(Linux)

So your results are:

'3-Initiator(Linux)' to '1-OpenSolaris': 630Mbits/s

'3-Initiator(Linux)' to '2-Linux'      : 520Mbits/s

'2-Linux' to '3-Initiator(Linux)'      : 733Mbits/s

'1-OpenSolaris' to '3-Initiator(Linux)': 297Mbits/s

So you can transmit data to a OpenSolaris server
at a higher speed than you can transmit to a Linux server,
which is good!

However, when OpenSolaris is transmitting data
it is slower, and is less than half the speed
that Linux can achieve.

As iscsi operates as a layer over TCP,
to get good iscsi performance,
we first need good TCP performance.

I know previously that some people have recommended
checking the settings for Nagle's algorithm.

http://en.wikipedia.org/wiki/Nagle%27s_algorithm
http://tools.ietf.org/rfc/rfc896.txt

(Also sometimes called 'Nagel's algorithm to cause confusion!)

Some people find it gives an improvements, others say no.
It would be interesting to know how this affects 
your performance results, both iscsi and iperf.

On OpenSolaris, I believe you disable nagle as follows:

  # ndd -get /dev/tcp tcp_naglim_def 
  4095
  # ndd -set /dev/tcp tcp_naglim_def 1
  # ndd -get /dev/tcp tcp_naglim_def 
  1

I'm not sure how you control nagle on Linux, so ask Google.

If that does not work, maybe some of the other tcp
tunable values will affect things:

  # ndd /dev/tcp \?

Best Regards
Nigel Smith
-- 
This message posted from opensolaris.org
_______________________________________________
storage-discuss mailing list
storage-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/storage-discuss

Reply via email to