• Skip to main content
  • Skip to primary sidebar
  • Skip to footer
  • 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...

  • How To Connect Everything From Everywhere with ZeroTier
  • Electric Car Over the Internet: My Experience Buying From…
  • Introducing Rabbit: I Bought a Cloud!
  • Liberate Wi-Fi Smart Bulbs and Switches with Tasmota!
  • Tortoise or Hare? Nvidia Jetson TK1

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

If you can keep your head when all about you are losing theirs…
If you can wait and not be tired by waiting…
If you can think – and not make thoughts your aim…
If you can trust yourself when all men doubt you…
Yours is the Earth and everything that’s in it.

Rudyard Kipling

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

How To Install ZeroTier on TrueNAS 12

February 3, 2022

Scam Alert: Fake DMCA Takedown for Link Insertion

January 24, 2022

How To Connect Everything From Everywhere with ZeroTier

January 14, 2022

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

Symbolic Links

    Featured Posts

    What’s the Deal with Containers?

    October 21, 2016

    Replacing Google Reader With Feedbin and Reeder

    May 5, 2013

    Defining Failure: What Is MTTR, MTTF, and MTBF?

    July 6, 2011

    What’s the Difference Between a Jailbroken and an Unlocked Phone?

    May 5, 2012

    My Advice For New Business Travelers: Get The Credit Cards!

    March 20, 2014

    The Rack Endgame: Open Compute Project

    September 17, 2014

    How Will Cisco Recover From The Consumer Strategy Blunder?

    January 2, 2013

    10 Mysteries The Lost Finale Definitively Settled

    May 25, 2010

    The Best Mac OS X Terminal Font: Glass TTY VT220

    October 6, 2015

    Sony QX100 Lens Camera: Ruined by a Flaky iOS App

    October 7, 2013

    Footer

    Legalese

    Copyright © 2022 · Log in