Cause #1 – Bad NIC Drivers (Most Common)
I see this one all the time. You set up iSCSI, everything works for a day, then the session drops. Windows Event Viewer shows error ID 207 or 203. The real culprit? Your network card drivers from three years ago.
Had a client last month – a small law firm with a Synology NAS. Their iSCSI volume for file storage kept disconnecting every 4-5 hours. Replaced the Intel PRO/1000 NIC driver with the latest from Dell's site. Problem gone. The Windows default driver just can't handle iSCSI's constant heartbeat traffic.
Fix it:
- Open Device Manager. Find your NIC under Network adapters.
- Right-click, select Update driver > Browse my computer > Let me pick.
- Uncheck 'Show compatible hardware' and pick the latest Intel or Broadcom driver from the list.
- Restart. Then test with a continuous ping:
ping -t 10.0.0.50(your iSCSI target IP).
If it still drops, try a different NIC brand. Realtek chipsets are trouble for iSCSI – they drop frames. Go with Intel X710 or Mellanox ConnectX-3. Cheap fix that saves headaches.
Cause #2 – Wrong MTU / Jumbo Frames Mismatch
Second most common. You've got jumbo frames enabled on the switch but not on the initiator, or vice versa. The session seems stable until you push data. Then boom – disconnect.
iSCSI needs consistent MTU across the whole path: initiator NIC, switch ports, target NIC. If one device is set to 1500 and another to 9000, packets fragment or get dropped. The initiator gives up.
Fix it:
- Set all devices to the same MTU. For iSCSI, use 9000 (jumbo frames) – it reduces CPU overhead.
- On Windows: open PowerShell as Admin, run
Set-NetAdapterAdvancedProperty -Name "iSCSI NIC" -DisplayName "Jumbo Packet" -DisplayValue 9014. - On your switch: set the iSCSI VLAN ports to MTU 9216 (extra bytes for headers).
- Test with:
ping -f -l 8972 10.0.0.50. The -f flag prevents fragmentation. If it fails, MTU mismatch.
I had a client with HP ProLiant servers and a QNAP NAS. They enabled jumbo frames only on the NAS. After setting both sides to 9000, the drops stopped completely.
Cause #3 – Flaky Switch Ports or LAG Problems
Third cause: the physical layer. A switch port on the edge of failing, or a LAG (Link Aggregation Group) that's misconfigured. iSCSI doesn't like load balancing. If you're using LAG for iSCSI, stop. Use MPIO instead.
One real scenario: a small medical practice with Dell PowerEdge servers and EqualLogic SAN. Their iSCSI session dropped every time they backed up overnight. Turned out port 2 on the Cisco switch was CRC error city – bad cable. Replaced the Cat6 cable and the problem vanished.
Fix it:
- Check switch port statistics. Look for CRC errors, runts, giants. If you see any, replace the cable or port.
- Disable LAG on iSCSI vlans. iSCSI initiator does round-robin by itself with MPIO. Set up two separate NICs, each on its own subnet.
- On Windows: install MPIO feature, then configure iSCSI to use multiple connections per session. In iSCSI Initiator, go to Configuration > Add portal, add the second IP.
If you're on VMware, check the vSwitch settings. Had an ESXi host drop sessions because the vSwitch's Teaming policy was set to 'Route based on IP hash' – that's LAG. iSCSI needs 'Route based on originating virtual port'.
Quick-Reference Summary Table
| Cause | Symptom | Fix |
|---|---|---|
| Bad NIC drivers | Drops every few hours, Event ID 207 | Update drivers, use Intel/Broadcom |
| MTU mismatch | Drops when transferring large files | Set all devices to 9000 MTU |
| Flaky switch / LAG | Drops during backups, CRC errors | Replace cable, disable LAG, use MPIO |
Final tip: always log iSCSI session events. In Windows, check Event Viewer > System > iScsiPrt. In VMware, check vmkernel logs. That's where the clues are.