ZFS zvol iSCSI: what functions can I turn off safely?

I have a server running FreeBSD 10.2 and a iSCSI client running FreeBSD 10.2.
The server serves one zvol over iSCSI to the client looking like this:
Code:
anders@aasennas:~ % zfs get all yoda/iscsi/win1
NAME  PROPERTY  VALUE  SOURCE
yoda/iscsi/win1  type  volume  -
yoda/iscsi/win1  creation  Sat Sep 26  1:55 2015  -
yoda/iscsi/win1  used  103G  -
yoda/iscsi/win1  available  2.29T  -
yoda/iscsi/win1  referenced  90.6G  -
yoda/iscsi/win1  compressratio  1.02x  -
yoda/iscsi/win1  reservation  none  default
yoda/iscsi/win1  volsize  100G  local
yoda/iscsi/win1  volblocksize  8K  -
yoda/iscsi/win1  checksum  on  default
yoda/iscsi/win1  compression  lz4  inherited from yoda
yoda/iscsi/win1  readonly  off  default
yoda/iscsi/win1  copies  1  default
yoda/iscsi/win1  refreservation  103G  local
yoda/iscsi/win1  primarycache  all  default
yoda/iscsi/win1  secondarycache  all  default
yoda/iscsi/win1  usedbysnapshots  0  -
yoda/iscsi/win1  usedbydataset  90.6G  -
yoda/iscsi/win1  usedbychildren  0  -
yoda/iscsi/win1  usedbyrefreservation  12.6G  -
yoda/iscsi/win1  logbias  latency  default
yoda/iscsi/win1  dedup  off  default
yoda/iscsi/win1  mlslabel  -
yoda/iscsi/win1  sync  standard  default
yoda/iscsi/win1  refcompressratio  1.02x  -
yoda/iscsi/win1  written  90.6G  -
yoda/iscsi/win1  logicalused  63.3G  -
yoda/iscsi/win1  logicalreferenced  63.3G  -
yoda/iscsi/win1  volmode  default  default
yoda/iscsi/win1  snapshot_limit  none  default
yoda/iscsi/win1  snapshot_count  none  default
yoda/iscsi/win1  redundant_metadata  all  default

The client then use the iSCSI device and use it as a zpool:
Code:
anders@GameBSD:~ % zfs get all storage
NAME  PROPERTY  VALUE  SOURCE
storage  type  filesystem  -
storage  creation  Wed Jan  2 19:25 2013  -
storage  used  62.9G  -
storage  available  33.5G  -
storage  referenced  100M  -
storage  compressratio  1.33x  -
storage  mounted  yes  -
storage  quota  none  default
storage  reservation  none  default
storage  recordsize  128K  default
storage  mountpoint  /storage  default
storage  sharenfs  off  default
storage  checksum  on  default
storage  compression  lz4  local
storage  atime  on  default
storage  devices  on  default
storage  exec  on  default
storage  setuid  on  default
storage  readonly  off  default
storage  jailed  off  default
storage  snapdir  hidden  default
storage  aclmode  discard  default
storage  aclinherit  restricted  default
storage  canmount  on  default
storage  xattr  off  temporary
storage  copies  1  default
storage  version  5  -
storage  utf8only  off  -
storage  normalization  none  -
storage  casesensitivity  sensitive  -
storage  vscan  off  default
storage  nbmand  off  default
storage  sharesmb  off  default
storage  refquota  none  default
storage  refreservation  none  default
storage  primarycache  all  default
storage  secondarycache  all  default
storage  usedbysnapshots  0  -
storage  usedbydataset  100M  -
storage  usedbychildren  62.8G  -
storage  usedbyrefreservation  0  -
storage  logbias  latency  default
storage  dedup  off  default
storage  mlslabel  -
storage  sync  standard  default
storage  refcompressratio  1.00x  -
storage  written  100M  -
storage  logicalused  81.0G  -
storage  logicalreferenced  100M  -
storage  volmode  default  default
storage  filesystem_limit  none  default
storage  snapshot_limit  none  default
storage  filesystem_count  none  default
storage  snapshot_count  none  default
storage  redundant_metadata  all  default
This works like a charm, but my question is as following, what fueatures can iI turn off to make the system faster, like do iI need checksum on both the client and the server? I guess it is no point in having compression enabled on the server since it is already compressed on the client?

The systems is connected by a 1Gb Ethernet.
The system feels snappy now but that might also be the arc on the local client doing a lot of the reading.

Any thought is appreciated.
 
Never ever turn off the checksum, zfs needs it for auto healing.

Compression wise you can set to lz4 and leave it there since it is very efficient to deal with those incompressible data.
 
With atime on every time you read a file the atime gets updated. Turning off atime should be safe and will improve performance.
 
Back
Top