Are there any easy ways we can get performance increases?
You need to employ a systematic process of identifying bottlenecks and eliminating them. You can shovel money into new gear, services, etc, but if you’re not being methodical about it there’s really no point. I’ll make some specific recommendations at the end of my answer for some things you should look at.
Would it make sense to get a switch with a fiber port and then put in
a fiber NIC on the server?
Nope. Your fiber-based Ethernet media choices are gigabit and 10 gigabit. Gigabit fiber and gigabit copper are the same speed, so there’s no “win” to using fiber for gigabit speed (though, as @ChrisS says, fiber does excel in some specific use cases). You don’t have a server in your office that can even begin to saturate 10 gigabit fiber, so there’s no “win” with 10 gigabit either.
I haven’t even Google’d how to log into the Dell switch, so I’m
assuming it’s unmanaged. I was going to visit the switch for a
webserver so I checked the DHCP server (on firewall box) and the
switch doesn’t show up among the clients. I’ve only scratched the
surface of reading up on all that: should the switch and RAID server
be using large packets or something?
The PowerConnect 2716 is a low-end “web managed” switch when its set up in “Managed” mode (which, by default, it isn’t, but it sounds like you’ve figured out you can enable web management). You can get a manual from Dell for that switch that will explain the management functionality. They aren’t great performers. I’ve got a couple of them in little “backwater” places and my experience has been that they won’t even do wire-speed gigabit switching.
When you say “large packets” I believe you’re referring to jumbo frames. You have no reason to use jumbo frames. Generally you’ll only see jumbo frames in use in very specialized, isolated networks– like between iSCSI targets and initiators (SANs and the servers that “connect” to them). You’re not going to see any marked improvement in general file/print sharing performance on your LAN using jumbo frames. You’d likely have headaches and performance problems, actually, because all the devices would need to be configured for jumbo frame support– and I would suspect that you have at least one device that doesn’t have support (just based on the wide variety of gear you have).
Here are some things I’d look at doing if I wanted to isolate bottlenecks:
Enable web management on the PowerConnect 2716 switch so that you can see error and traffic counters. This switch doesn’t have SNMP-based management so you’re not going to get any fancy traffic graphing, but you’ll at least be able to see if you’re having errors.
Benchmark the server performance w/ a single client computer connected directly to the server’s NIC (for which you should be able to use a regular straight-through patch cable, assuming the client computer you’re using has a gigabit NIC). That will give you a feeling for the server’s maximum possible I/O throughput with a real file sharing workload. (If I had to hazard a guess I’d bet that the server’s I/O to/from the disks is your biggest bottleneck.)
Use a tool like iperf (ttcp, etc) to get a feeling for the network bandwidth available between various places in the network.
The best single thing you can change, from a reliability perspective, is to eliminate all the little Ethernet switches and home-run all the cabling back to a single core switch. In a network as small as the one you’ve diagrammed there’s no reason to have more than a single Ethernet switch (assuming all the nodes are within 100 meters of a single point).