The Unofficial Samba HOWTO

Historical overview and introduction to the installation, configuration and optimization of Samba on Linux for providing cross-platform solution.

Once upon a time, there was a sophisticated technology known as DCE/RPC, which stood for Distributed Computing Environment/Remote Procedure Calls. It began as an ambitious idea, conceived by the Open Software Foundation, with the goal of enabling developers to write software that could run seamlessly across multiple computers, without needing to dive into the complexities of network communication. The original vision was solid, but when there was a need to run it over TCP to make it compatible with Digital Equipment Corporation’s network protocols, DCE/RPC underwent significant redesigns. This iteration officially adopted the name DCE/RPC.

Then, Microsoft entered the picture. Rather than paying $20 per seat for licensing the technology, Microsoft chose to re-implement and rebrand DCE/RPC as MS-RPC (Microsoft Remote Procedure Call). From there, the concept evolved further, eventually becoming the foundation for SMB (Server Message Block)—a protocol that facilitates file sharing and network communication—built on the NetBIOS (Network Basic Input/Output System) compatibility layer.

If you’re feeling a bit lost with all the terminology, you’re not alone. The history of DCE/RPC, SMB, and their related technologies is long, tangled, and filled with twists. A particularly memorable description of the origins of SMB/CIFS can be found in Avian Research’s 1997 article, CIFS: Common Insecurities Fail Scrutiny.