FTP perfomance < 2MB

Hi,

I am transferring files to a Solaris 10 installation on Sun Fire 480.

I find that when transferring large files > 1G via FTP, the performance is < 2GB. I am using FileZilla and the network is 100Mbit.
I am currently transferring 2 files concurrently & there are only having a bandwidth of 400+KiB/s each.

I do not have the same issue when transferring to other linux based servers (Intel x86-84).

Any ideas how I can improve the performance?

Thanks,
Raymond

I've had a similar problem in Linux (proftpd), by default there is a setting in FTP server config that limits the speed.

Hi orange47,

Do you remember what's the setting?

Thanks,
Raymond

um, for proftpd should be this: ProFTPd Server - Wiki

what daemon are you using?

from what?

We've had trouble with what was termed a packet shaper I think. It's basically something that has rules to ensure everyone gets a fair deal on the network, but it means large transfers take longer. There may be more to this than simply my two servers do thing a bit oddly.

There is always a reason, but finding it may take a long time.

Robin

What are your TCP settings on the Solaris server? As root, run this from a sh/bash shell:

for parm in `ndd /dev/tcp \? | awk '{ print $1 }'`; do
    echo -n $parm": "
    ndd /dev/tcp $parm
done

and

for dev in /dev/net/*; do
    for parm in `ndd $dev \? | awk '{ print $1 }' | grep -v '?'`; do
        echo -n $dev: $parm:" "
        ndd $dev $parm
    done
done

Also, what's the output from "ifconfig -a"?

Hi achenle,

Output of ndd /dev/tcp:

?: ?                             (read only)
tcp_time_wait_interval        (read and write)
tcp_conn_req_max_q            (read and write)
tcp_conn_req_max_q0           (read and write)
tcp_conn_req_min              (read and write)
tcp_conn_grace_period         (read and write)
tcp_cwnd_max                  (read and write)
tcp_debug                     (read and write)
tcp_smallest_nonpriv_port     (read and write)
tcp_ip_abort_cinterval        (read and write)
tcp_ip_abort_linterval        (read and write)
tcp_ip_abort_interval         (read and write)
tcp_ip_notify_cinterval       (read and write)
tcp_ip_notify_interval        (read and write)
tcp_ipv4_ttl                  (read and write)
tcp_keepalive_interval        (read and write)
tcp_maxpsz_multiplier         (read and write)
tcp_mss_def_ipv4              (read and write)
tcp_mss_max_ipv4              (read and write)
tcp_mss_min                   (read and write)
tcp_naglim_def                (read and write)
tcp_rexmit_interval_initial   (read and write)
tcp_rexmit_interval_max       (read and write)
tcp_rexmit_interval_min       (read and write)
tcp_deferred_ack_interval     (read and write)
tcp_snd_lowat_fraction        (read and write)
tcp_sth_rcv_hiwat             (read and write)
tcp_sth_rcv_lowat             (read and write)
tcp_dupack_fast_retransmit    (read and write)
tcp_ignore_path_mtu           (read and write)
tcp_smallest_anon_port        (read and write)
tcp_largest_anon_port         (read and write)
tcp_xmit_hiwat                (read and write)
tcp_xmit_lowat                (read and write)
tcp_recv_hiwat                (read and write)
tcp_recv_hiwat_minmss         (read and write)
tcp_fin_wait_2_flush_interval (read and write)
tcp_co_min                    (read and write)
tcp_max_buf                   (read and write)
tcp_strong_iss                (read and write)
tcp_rtt_updates               (read and write)
tcp_wscale_always             (read and write)
tcp_tstamp_always             (read and write)
tcp_tstamp_if_wscale          (read and write)
tcp_rexmit_interval_extra     (read and write)
tcp_deferred_acks_max         (read and write)
tcp_slow_start_after_idle     (read and write)
tcp_slow_start_initial        (read and write)
tcp_co_timer_interval         (read and write)
tcp_sack_permitted            (read and write)
tcp_trace                     (read and write)
tcp_compression_enabled       (read and write)
tcp_ipv6_hoplimit             (read and write)
tcp_mss_def_ipv6              (read and write)
tcp_mss_max_ipv6              (read and write)
tcp_rev_src_routes            (read and write)
tcp_local_dack_interval       (read and write)
tcp_ndd_get_info_interval     (read and write)
tcp_local_dacks_max           (read and write)
tcp_ecn_permitted             (read and write)
tcp_rst_sent_rate_enabled     (read and write)
tcp_rst_sent_rate             (read and write)
tcp_push_timer_interval       (read and write)
tcp_use_smss_as_mss_opt       (read and write)
tcp_wroff_xtra                (read and write)
tcp_mdt_hdr_head_min          (read and write)
tcp_mdt_hdr_tail_min          (read and write)
tcp_mdt_max_pbufs             (read and write)
tcp_extra_priv_ports          (read only)
tcp_extra_priv_ports_add      (write only)
tcp_extra_priv_ports_del      (write only)
tcp_status                    (read only)
tcp_bind_hash                 (read only)
tcp_listen_hash               (read only)
tcp_conn_hash                 (read only)
tcp_acceptor_hash             (read only)
tcp_host_param                (read and write)
tcp_host_param_ipv6           (read and write)
tcp_1948_phrase               (write only)
tcp_reserved_port_list        (read only)
tcp_close_wait_interval(obsoleted- use tcp_time_wait_interval) (no read or write)
tcp_time_wait_interval: 60000
tcp_conn_req_max_q: 128
tcp_conn_req_max_q0: 1024
tcp_conn_req_min: 1
tcp_conn_grace_period: 0
tcp_cwnd_max: 1048576
tcp_debug: 0
tcp_smallest_nonpriv_port: 1024
tcp_ip_abort_cinterval: 180000
tcp_ip_abort_linterval: 180000
tcp_ip_abort_interval: 480000
tcp_ip_notify_cinterval: 10000
tcp_ip_notify_interval: 10000
tcp_ipv4_ttl: 64
tcp_keepalive_interval: 7200000
tcp_maxpsz_multiplier: 10
tcp_mss_def_ipv4: 536
tcp_mss_max_ipv4: 65495
tcp_mss_min: 108
tcp_naglim_def: 4095
tcp_rexmit_interval_initial: 3000
tcp_rexmit_interval_max: 60000
tcp_rexmit_interval_min: 400
tcp_deferred_ack_interval: 100
tcp_snd_lowat_fraction: 0
tcp_sth_rcv_hiwat: 0
tcp_sth_rcv_lowat: 0
tcp_dupack_fast_retransmit: 3
tcp_ignore_path_mtu: 0
tcp_smallest_anon_port: 32768
tcp_largest_anon_port: 65535
tcp_xmit_hiwat: 49152
tcp_xmit_lowat: 4096
tcp_recv_hiwat: 49152
tcp_recv_hiwat_minmss: 4
tcp_fin_wait_2_flush_interval: 675000
tcp_co_min: 64
tcp_max_buf: 1048576
tcp_strong_iss: 1
tcp_rtt_updates: 20
tcp_wscale_always: 1
tcp_tstamp_always: 0
tcp_tstamp_if_wscale: 1
tcp_rexmit_interval_extra: 0
tcp_deferred_acks_max: 2
tcp_slow_start_after_idle: 4
tcp_slow_start_initial: 4
tcp_co_timer_interval: 20
tcp_sack_permitted: 2
tcp_trace: 0
tcp_compression_enabled: 1
tcp_ipv6_hoplimit: 60
tcp_mss_def_ipv6: 1220
tcp_mss_max_ipv6: 65475
tcp_rev_src_routes: 0
tcp_local_dack_interval: 50
tcp_ndd_get_info_interval: 1000
tcp_local_dacks_max: 8
tcp_ecn_permitted: 1
tcp_rst_sent_rate_enabled: 1
tcp_rst_sent_rate: 40
tcp_push_timer_interval: 50
tcp_use_smss_as_mss_opt: 0
tcp_wroff_xtra: 32
tcp_mdt_hdr_head_min: 32
tcp_mdt_hdr_tail_min: 32
tcp_mdt_max_pbufs: 16
tcp_extra_priv_ports: 2049
4045
tcp_extra_priv_ports_add: operation failed: Permission denied
tcp_extra_priv_ports_del: operation failed: Permission denied
tcp_status: TCP             zone dest            snxt     suna     swnd       rnxt     rack     rwnd       rto   mss   w sw rw t recent   [lport,fport] state
      600252fd840 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [0, 0] TCP_IDLE
      6002c5552c0 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [0, 0] TCP_IDLE
      600252fd180 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [111, 0] TCP_LISTEN
      600294b51c0 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [0, 0] TCP_IDLE
      600294b4440 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32771, 0] TCP_LISTEN
      600252fa240 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32772, 0] TCP_LISTEN
      600294b3d80 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [4045, 0] TCP_LISTEN
      600252fc400 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [5987, 0] TCP_LISTEN
      600294b36c0 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [898, 0] TCP_LISTEN
      600294b3000 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32773, 0] TCP_LISTEN
      600294b2940 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [5988, 0] TCP_LISTEN
      600294b2280 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32774, 0] TCP_LISTEN
      6002a4d38c0 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [7100, 0] TCP_LISTEN
      600294b5880 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32775, 0] TCP_LISTEN
      6002a4d3200 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32776, 0] TCP_LISTEN
      6002a4d2b40 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [6112, 0] TCP_LISTEN
      6002a4d2480 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [22, 0] TCP_LISTEN
      6002a4d1dc0 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [21, 0] TCP_LISTEN
      6002a4d1700 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [79, 0] TCP_LISTEN
      6002a4d1040 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [513, 0] TCP_LISTEN
      6002a4d0980 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [514, 0] TCP_LISTEN
      6002a4d02c0 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [514, 0] TCP_LISTEN
      6002a8e7900 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32777, 0] TCP_LISTEN
      6002a8e7240 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32778, 0] TCP_LISTEN
      600294b4b00 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32779, 0] TCP_LISTEN
      6002a8e6b80 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [515, 0] TCP_LISTEN
      6002a8e64c0 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [631, 0] TCP_LISTEN
      6002a8e5e00 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [6000, 0] TCP_LISTEN
      6002a8e5740 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [6000, 0] TCP_LISTEN
      6002c8479c0 0 ::ffff:xxx.xxx.9.207 86f64ed9 86f64ed9 0000262140 050b65b0 050b65b0 0000049640 00545 01460 1 02 00 0 00000000 [22, 52406] TCP_ESTABLISHED
      600252fa900 0 ::ffff:xxx.xxx.9.207 875f3239 875f31f5 0000262140 13ad7f29 13ad7f29 0000049640 00412 01460 1 02 00 0 00000000 [22, 52431] TCP_ESTABLISHED
      6002a8e4300 0 ::ffff:xxx.xxx.9.207 875f0f5e 875f0f2a 0000262140 e5558ad2 e5558ad2 0000049640 00417 01460 1 02 00 0 00000000 [22, 52432] TCP_ESTABLISHED
      6002da5b400 0 ::ffff:xxx.xxx.9.207 9005f569 9005f535 0000064864 cb614846 cb614846 0000049640 00408 01460 1 02 00 0 00000000 [22, 53302] TCP_ESTABLISHED

tcp_bind_hash:     TCP             zone dest            snxt     suna     swnd       rnxt     rack     rwnd       rto   mss   w sw rw t recent   [lport,fport] state
001       6002a4d1040 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [513, 0] TCP_LISTEN
002       6002a4d02c0 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [514, 0] TCP_LISTEN
003       600294b4440 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32771, 0] TCP_LISTEN
003       6002a8e6b80 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [515, 0] TCP_LISTEN
004       600252fa240 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32772, 0] TCP_LISTEN
005       600294b3000 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32773, 0] TCP_LISTEN
006       600294b2280 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32774, 0] TCP_LISTEN
007       600294b5880 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32775, 0] TCP_LISTEN
008       6002a4d3200 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32776, 0] TCP_LISTEN
009       6002a8e7900 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32777, 0] TCP_LISTEN
010       6002a8e7240 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32778, 0] TCP_LISTEN
011       600294b4b00 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32779, 0] TCP_LISTEN
021       6002a4d1dc0 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [21, 0] TCP_LISTEN
022       6002da5b400 0 ::ffff:xxx.xxx.9.207 900609d1 9006098d 0000065700 cb614846 cb614846 0000049640 00407 01460 1 02 00 0 00000000 [22, 53302] TCP_ESTABLISHED
079       6002a4d1700 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [79, 0] TCP_LISTEN
111       600252fd180 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [111, 0] TCP_LISTEN
119       6002a8e64c0 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [631, 0] TCP_LISTEN
355       600252fc400 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [5987, 0] TCP_LISTEN
356       600294b2940 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [5988, 0] TCP_LISTEN
368       6002a8e5740 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [6000, 0] TCP_LISTEN
386       600294b36c0 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [898, 0] TCP_LISTEN
444       6002a4d38c0 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [7100, 0] TCP_LISTEN
461       600294b3d80 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [4045, 0] TCP_LISTEN
480       6002a4d2b40 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [6112, 0] TCP_LISTEN

tcp_listen_hash:     TCP            zone IP addr         port  seqnum   backlog (q0/q/max)
000      6002a4d0980 0 ::ffff:0.0.0.0 00514 00000000 0/0/16
001      6002a8e6b80 0 :: 00515 00000000 0/0/16
003      6002a4d1040 0 :: 00513 00000000 0/0/16
021      6002a4d1dc0 0 :: 00021 00000009 0/0/16
022      6002a4d2480 0 :: 00022 00000005 0/0/8
079      6002a4d1700 0 :: 00079 00000000 0/0/16
111      600252fd180 0 ::ffff:0.0.0.0 00111 00000000 0/0/64
117      6002a8e64c0 0 ::ffff:0.0.0.0 00631 00000000 0/0/128
131      600294b4440 0 ::ffff:0.0.0.0 32771 00000000 0/0/64
132      600252fa240 0 ::ffff:0.0.0.0 32772 00000000 0/0/32
133      600294b3000 0 ::ffff:127.0.0.1 32773 00000000 0/0/7
134      600294b2280 0 ::ffff:127.0.0.1 32774 00000000 0/0/7
135      600294b5880 0 ::ffff:0.0.0.0 32775 00000000 0/0/10
136      6002a4d3200 0 ::ffff:0.0.0.0 32776 00000000 0/0/10
137      6002a8e7900 0 ::ffff:0.0.0.0 32777 00000000 0/0/64
138      6002a8e7240 0 ::ffff:0.0.0.0 32778 00000000 0/0/64
139      600294b4b00 0 ::ffff:0.0.0.0 32779 00000000 0/0/8
359      6002a8e5740 0 ::ffff:0.0.0.0 06000 00000000 0/0/128
371      600294b2940 0 ::ffff:127.0.0.1 05988 00000000 0/0/7
372      600252fc400 0 ::ffff:127.0.0.1 05987 00000000 0/0/7
385      600294b36c0 0 ::ffff:127.0.0.1 00898 00000000 0/0/7
423      6002a4d38c0 0 :: 07100 00000000 0/0/16
450      600294b3d80 0 ::ffff:0.0.0.0 04045 00000000 0/0/32
503      6002a4d2b40 0 ::ffff:0.0.0.0 06112 00000000 0/0/16

tcp_conn_hash: tcp_conn_hash_size = 98299
    TCP             zone dest            snxt     suna     swnd       rnxt     rack     rwnd       rto   mss   w sw rw t recent   [lport,fport] state
36395       600252fa900 0 ::ffff:xxx.xxx.9.207 875f327d 875f3239 0000262140 13ad7f29 13ad7f29 0000049640 00531 01460 1 02 00 0 00000000 [22, 52431] TCP_ESTABLISHED
39220       6002a8e4300 0 ::ffff:xxx.xxx.9.207 875f0f5e 875f0f2a 0000262140 e5558ad2 e5558ad2 0000049640 00417 01460 1 02 00 0 00000000 [22, 52432] TCP_ESTABLISHED
95903       6002c8479c0 0 ::ffff:xxx.xxx.9.207 86f64ed9 86f64ed9 0000262140 050b65b0 050b65b0 0000049640 00545 01460 1 02 00 0 00000000 [22, 52406] TCP_ESTABLISHED
97754       6002da5b400 0 ::ffff:xxx.xxx.9.207 9006203d 90061ff9 0000065700 cb6148ce cb6148ce 0000049640 00403 01460 1 02 00 0 00000000 [22, 53302] TCP_ESTABLISHED

tcp_acceptor_hash:     TCP             zone dest            snxt     suna     swnd       rnxt     rack     rwnd       rto   mss   w sw rw t recent   [lport,fport] state
023       6002cb1f340 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [0, 0] TCP_IDLE
039       6002a8e7240 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32778, 0] TCP_LISTEN
041       6002a8e7900 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32777, 0] TCP_LISTEN
046       600294b5880 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32775, 0] TCP_LISTEN
050       600294b3d80 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [4045, 0] TCP_LISTEN
053       600294b4440 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32771, 0] TCP_LISTEN
056       600294b51c0 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [0, 0] TCP_IDLE
057       600252fd180 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [111, 0] TCP_LISTEN
059       600252fa240 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32772, 0] TCP_LISTEN
061       6002a4d3200 0 ::ffff:0.0.0.0 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 00536 0 00 14 0 00000000 [32776, 0] TCP_LISTEN
065       600252fd840 0 :: 00000000 00000000 0000000000 00000000 00000000 0000049152 03375 01220 0 00 14 0 00000000 [0, 0] TCP_IDLE

tcp_host_param: Hash HSP             Address         Subnet Mask     Send       Receive    TStamp
tcp_host_param_ipv6: Hash HSP             Address         Subnet Mask     Send       Receive    TStamp
tcp_1948_phrase: operation failed: Permission denied
tcp_reserved_port_list: No port is reserved.
tcp_close_wait_interval(obsoleted-: name is non-existent for this module
for a list of valid names, use name '?'

---------- Post updated at 08:53 AM ---------- Previous update was at 08:50 AM ----------

My system doesn't have the /dev/net/ directory.

And "ifconfig -a" gives:

lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL> mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
ce0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
        inet xxx.xxx.9.25 netmask ffff0000 broadcast xxx.xxx.255.255
        ether 0:14:4f:39:83:25

I have masked the network part of the IP address with xxx.xxx. In this case xxx.xxx.9.25 is the Sun server & xxx.xxx.9.207 is the Windows client.

Thanks,
Raymond

---------- Post updated at 09:03 AM ---------- Previous update was at 08:53 AM ----------

Hi orange47,

I am not sure which ftp daemon I was using. When I issue a "svcs -a | grep ftp", I get:

online         15:23:20 svc:/network/ftp:default

I am trying using sftp connection but the throughput is still the same.
"ps -ef | grep ftp" gives:

    root  1668  1663   0 08:33:14 ?           0:00 /usr/lib/ssh/sftp-server
    root  1681  1671   0 08:33:36 ?           0:12 /usr/lib/ssh/sftp-server
    root  1682  1673   0 08:33:36 ?           0:11 /usr/lib/ssh/sftp-server

So I am thinking the problem may not be with the FTP daemon but more on the network side.

Thanks,
Raymond

---------- Post updated at 09:05 AM ---------- Previous update was at 09:03 AM ----------

Hi hicksd8,

I am transferring file from a Windows 7 PC using FileZilla version 3.9.0.2 64bit.

Thanks,
Raymond

---------- Post updated at 09:12 AM ---------- Previous update was at 09:05 AM ----------

Hi rbatte1,

We don't have any equipment/hardware between the client & the server except a 100Mb switch. I have also make sured that ipfilter is disabled on the Sun machine. And the client doesn't face the same issue when transferring files to other Linux servers. So I think we can rule this part out unless there is some other filtering on Solaris that I don't know about.

I would agree that this could potentially be both difficult & time consuming to diagnose & resolve.

Thanks,
Raymond

1 Like

Are You Seeing Slow Windows 7 Network Performance?

Hi hicksd8,

I did another test: ftping the same file of about 1.7GB from the same windows client using the same FileZilla to the Sun Solaris server in question and to a Linux server.
The average throughput to the Sun machine is about 1MiB/s.
The average throughput to the Linux machine is about 10MiB/s.

So it's not windows that is in question here.

Okay. Can you try ftp from the Linux box to the Sun box just to prove that the Sun box is not capable of receiving data at high rate. Try the Linux box initiating the transfer (ftp put) and the Sun box initiating the transfer (ftp get).

Also, can you tell us what NIC's are in the Windows, Linux and Solaris boxes? Not so much the make/model but the speeds. The problems I was eluding to in my previous (now removed) post only seems to occur with gigabit cards.

You can try:

ndd -set /dev/tcp tcp_max_buf 2097152
ndd -set /dev/tcp tcp_xmit_hiwat 1048576
ndd -set /dev/tcp tcp_recv_hiwat 1048576
ndd -set /dev/tcp tcp_cwnd_max 1048576

If that doesn't work, try this, especially if the FTP from the Linux box works at "normal" speed:

ndd -set /dev/tcp tcp_slow_start_initial 2

Because it is quite possible Windows is the problem here.

1 Like

Hi,

Today, transferring from windows to Solaris the throughput is about 1.3MiB/s.
This is true before & after:

ndd -set /dev/tcp tcp_max_buf 2097152
ndd -set /dev/tcp tcp_xmit_hiwat 1048576
ndd -set /dev/tcp tcp_recv_hiwat 1048576
ndd -set /dev/tcp tcp_cwnd_max 1048576

Transferring from Linux to Solaris has a speed of about 1.2+MB/s using lftp.

Ftp get on Solaris from Linux has a speed of about 1.7+MB/s using sftp.

After this:

ndd -set /dev/tcp tcp_slow_start_initial 2

The speed from Windows is about 1.5MiB/s.

One thing I noticed is that when transferring 2 files, the files have a speed of about 1.3MiB/s each but when one is done, the other's speed didn't increase.
This is also true for adding a new file transfer, the speed of the first one didn't decrease.
It looks very much like a per "channel" limit.

Thanks,
Raymond

Everything is just so slow then.

What network switch(es) have you got in between this lot?

What device(s) do you have at /dev/ce and /dev/ce0?

What's the output from

for dev in /dev/ce*; do
     for parm in `ndd $dev \? | awk '{ print $1 }' | grep -v '?'`; do
         echo -n $dev: $parm:" "
         ndd $dev $parm
     done
done

You may need to run

ndd -set /dev/ce instance 0

if there's no /dev/ce0 and just one /dev/ce device.

Also, what's in your ce.conf file? It's probably somewhere under /kernel or /platform:

find /kernel /platform -name ce.conf

Also, what's the performance if you FTP to/from localhost on the Solaris server?

Hi hicksd8,

Sorry for the late update.

We have DLink Gbit switches in between.
Windows client <---> DLink Gb switch <---> DLink Gb switch <---> server

The linux machine is also on the same path.

Thanks,
Raymond

---------- Post updated at 11:08 AM ---------- Previous update was at 10:54 AM ----------

Hi achenle,

ls -l /dev/ce*
lrwxrwxrwx 1 root root 28 May 24 2013 /dev/ce -> ../devices/pseudo/clone@0:ce

/dev/ce: instance: 0
/dev/ce: adv_autoneg_cap: 1
/dev/ce: adv_1000fdx_cap: 1
/dev/ce: adv_1000hdx_cap: 1
/dev/ce: adv_100T4_cap: 0
/dev/ce: adv_100fdx_cap: 1
/dev/ce: adv_100hdx_cap: 1
/dev/ce: adv_10fdx_cap: 1
/dev/ce: adv_10hdx_cap: 1
/dev/ce: adv_asmpause_cap: 0
/dev/ce: adv_pause_cap: 0
/dev/ce: master_cfg_enable: 0
/dev/ce: master_cfg_value: 0
/dev/ce: use_int_xcvr: 0
/dev/ce: enable_ipg0: 1
/dev/ce: ipg0: 8
/dev/ce: ipg1: 8
/dev/ce: ipg2: 4
/dev/ce: rx_intr_pkts: 8
/dev/ce: rx_intr_time: 3
/dev/ce: red_dv4to6k: 0
/dev/ce: red_dv6to8k: 0
/dev/ce: red_dv8to10k: 0
/dev/ce: red_dv10to12k: 0
/dev/ce: tx_dma_weight: 0
/dev/ce: rx_dma_weight: 0
/dev/ce: infinite_burst: 1
/dev/ce: disable_64bit: 0
/dev/ce: accept_jumbo: 0
/dev/ce: laggr_multistream: 0

The ce.conf file doesn't exist on the system.

I tried the localhost FTP & the speed is about 57MB/s.

Thanks,
Raymond

Any chance of eliminating the two d-links from this? Are the machines close enough to use a crossover cable for example?

Print Page - Poor performance on gigabit Network

I know that mis-configuration could be causing this but I think it unlikely from the Solaris side. That O/S runs large corporations and banks all around the planet and won't be bugged in network performance.

As you can tell I'm still believing that Solaris is not the problem here.

Will get back after I try out the direct link.