• Skip to main content
  • Skip to primary sidebar
  • Home
  • About
    • Stephen Foskett
      • My Publications
        • Urban Forms in Suburbia: The Rise of the Edge City
      • Storage Magazine Columns
      • Whitepapers
      • Multimedia
      • Speaking Engagements
    • Services
    • Disclosures
  • Categories
    • Apple
    • Ask a Pack Rat
    • Computer History
    • Deals
    • Enterprise storage
    • Events
    • Personal
    • Photography
    • Terabyte home
    • Virtual Storage
  • Guides
    • The iPhone Exchange ActiveSync Guide
      • The iPhone Exchange ActiveSync Troubleshooting Guide
    • The iPad Exchange ActiveSync Guide
      • iPad Exchange ActiveSync Troubleshooting Guide
    • Toolbox
      • Power Over Ethernet Calculator
      • EMC Symmetrix WWN Calculator
      • EMC Symmetrix TimeFinder DOS Batch File
    • Linux Logical Volume Manager Walkthrough
  • Calendar

Stephen Foskett, Pack Rat

Understanding the accumulation of data

You are here: Home / Everything / Computer History / From LAN Manager and SMB to CIFS: The Evolution of Prehistoric PC Network Protocols

From LAN Manager and SMB to CIFS: The Evolution of Prehistoric PC Network Protocols

March 22, 2012 By Stephen 3 Comments

SMB and CIFS was born out of the wild pre-history of PC networking

Computers aren’t much good on their own. This simple fact was evident even at the dawn of the microcomputing age, and has never been more true today in the “post-PC” world. If the standard microcomputer is the “Wintel” box (Microsoft’s Windows, Intel’s CPUs, and all that implies) then the standard network services protocol is SMB. So let’s take a nice deep dive into SMB, past, present, and future!

Networking PCs

In the mid-1980’s, IBM and Microsoft came to dominate microcomputers with what became known generically as “the PC.” PCs ran DOS, and DOS had no native networking capability whatsoever. But the use of PCs in business was growing rapidly, and a client/server computing paradigm loomed on the horizon.

It is just at this moment when standards-based local area networks (LANs) appeared. 3COM’s Ethernet rapidly gained strength, even against IBM’s own token ring, DECnet, and many others besides.

IBM was strong out of the gate with “PC-Network”, a line of proprietary networking equipment for PCs. Sytek created a complete API, known as NetBIOS, for inter-PC communication, along with their own layer-3 protocol. IBM ported NetBIOS to token ring, with an API emulator known as the NetBIOS Enhanced User Interface or NetBEUI. This term was later appropriated by Microsoft to refer to NBF, a layer-3 protocol for NetBIOS on Ethernet, causing much confusion.

Now that a standard LAN API was available, it was time for a higher-layer protocol for file access. IBM developed server message block (SMB), which used NetBIOS session and datagram services for transport.

One of the curious aspects of the single-tasking DOS operating system is the way it handles file open/close operations. Batch files would open and close a file many, many times as they proceeded through their instructions. This was no problem for a local disk, but network latency caused performance issues. So SMB included a client-side caching mechanism with opportunistic locks to reduce network traffic while still allowing the client and server to stay in sync. OpLocks are a hallmark of the SMB protocol even today.

The Rise and Fall of LAN Manager

At the same time, 3COM created their own storage networking protocol for PCs, called 3+Share, along with a server hardware product known as the 3Server. This had nothing in common with IBM’s SMB protocol, but it did work well with 3COM’s Ethernet equipment.

But another company quickly came to dominate the emerging PC LAN business: Novell’s NetWare roared ahead of 3COM, IBM, and everyone else and posed a serious threat to Microsoft’s hold on the PC itself. NetWare was a file server in the modern sense, and performed extremely well. So Microsoft turned to PC networking leaders, IBM and 3COM, to develop an entirely new PC stack.

The resulting operating system, OS/2, included a serious NetWare challenger called LAN Manager but sold under other names (IBM LAN Server, 3COM 3+Open, etc). LAN Manager included IBM’s basic SMB protocol and NetBEUI stack, allowing OS/2 and other operating systems to share files, printers, and other network resources. And it ran great on Ethernet, from 3COM and many others.

OS/2 flamed out as Microsoft pushed Windows instead, but the networking protocol survived. Around 1991, 3COM turned over their work to Microsoft and exited the market to focus on hardware. In 1992, Microsoft released Widows for Workgroups, which used SMB for most networking functions. This was followed a year later by Windows NT Advanced Server, which implemented much of LAN Manager (including SMB) separately from OS/2. Every version of Windows since then has relied heavily on SMB.

Towards a Common File System

Microsoft’s network offerings weren’t that great in the early 1990’s, but it was enough to cause competitors like Novell to stumble later in the decade. Novell remained dominant in business, but the Windows NT 3.51/Windows 95 push made SMB a popular workgroup alternative.

But the entire industry was in for a shock. By 1995, the Internet became the killer app for computers generally and PCs specifically. And the Internet was built on the Internet Protocol (IP), not NetBIOS’ NBF or NetWare’s IPX/SPX. Microsoft initially ported NetBIOS to run over TCP/IP, then released an experimental version of SMB that eliminated NetBIOS entirely, but these took a while to catch on.

Sun was a serious challenger to Microsoft in these early Internet days, and had proposed a standard file protocol. In 1996, Microsoft responded to Sun’s WebNFS protocol with their own Common Internet File System or CIFS, which was an enhanced version of SMB over IP. This would become the standard Windows networking protocol for the next decade.

Microsoft’s CIFS proposal specified a standard version of SMB with new enhancements like symbolic and hard links and larger file sizes. CIFS also offered an option of “direct host SMB,” which eliminated NetBIOS and allowed direct communication over TCP port 445. But most CIFS implementations still relied on NetBIOS’ broadcast-based service location protocol and LanMan authentication.

Every version of Microsoft Windows has relied on SMB for most network functions since Windows for Workgroups 3.11

Incidentally, the IETF drafts for CIFS were never completed or ratified and have now expired. Microsoft finally issued a standard MS-CIFS spec in 2007, but it has been criticized as incomplete. This is to be expected of a protocol that evolved organically over a decade of innovation through many diverse implementations!

Special thanks to Howard Marks for feedback and assistance!

You might also want to read these other posts...

  • Electric Car Over the Internet: My Experience Buying…
  • Introducing Rabbit: I Bought a Cloud!
  • GPS Time Rollover Failures Keep Happening (But…
  • Ranting and Raving About the 2018 iPad Pro
  • Liberate Wi-Fi Smart Bulbs and Switches with Tasmota!

Filed Under: Computer History, Enterprise storage, Features Tagged With: 3+Share, 3Com, 3Server, CIFS, DOS, Ethernet, IBM, Microsoft, NBF, NetBEUI, NetBIOS, NetWare, Novell, OpLocks, OS/2, PC-Network, SMB, Sytek, TCP/IP, Token Ring, WebNFS, Windows 95, Windows for Workgroups, Windows NT Advanced Server

Primary Sidebar

The less the prudence with which others conduct their affairs, the greater the prudence with which we must conduct our own

Warren Buffett

Subscribe via Email

Subscribe via email and you will receive my latest blog posts in your inbox. No ads or spam, just the same great content you find on my site!
 New posts (daily)
 Where's Stephen? (weekly)

Download My Book


Download my free e-book:
Essential Enterprise Storage Concepts!

Recent Posts

Electric Car Over the Internet: My Experience Buying From Vroom

November 28, 2020

Powering Rabbits: The Mean Well LRS-350-12 Power Supply

October 18, 2020

Tortoise or Hare? Nvidia Jetson TK1

September 22, 2020

Running Rabbits: More About My Cloud NUCs

September 21, 2020

Introducing Rabbit: I Bought a Cloud!

September 10, 2020

Remove ROM To Use LSI SAS Cards in HPE Servers

August 23, 2020

Test Your Wi-Fi with iPerf for iOS

July 9, 2020

Liberate Wi-Fi Smart Bulbs and Switches with Tasmota!

May 29, 2020

What You See and What You Get When You Follow Me

May 28, 2019

GPS Time Rollover Failures Keep Happening (But They’re Almost Done)

April 6, 2019

Symbolic Links

    Featured Posts

    Rocking Out With the Topping VX1 Desktop/Bookshelf Amplifier

    October 6, 2015

    A Complete List of VMware VAAI Primitives

    November 10, 2011

    Virtualized and Distributed Storage: This Time For Sure!

    September 2, 2014

    What You See and What You Get When You Follow Me

    May 28, 2019

    Co-Processors, GPGPU, and Heterogeneous Computing

    June 26, 2017

    The Best Mac OS X Terminal Font: Glass TTY VT220

    October 6, 2015

    Deduplication Coming to Primary Storage

    September 16, 2008

    Microsoft’s Big Chance to Change

    August 23, 2013

    The Rack Endgame: Converged Infrastructure and Disaggregation

    September 19, 2014

    The Prime Directive of Storage: Do Not Lose Data

    December 12, 2014

    Copyright © 2021 · Log in