In
computing, a
shared resource or
network share is a device or piece of information on a computer that can be remotely accessed from another computer, typically via a
local area network or an enterprise
Intranet, as if it were a resource in the local machine.
Examples are
shared file access (also known as
disk sharing and
folder sharing),
shared printer access (
printer sharing),
shared scanner access, etc. The shared resource is called a
shared disk (also known as
mounted disk),
shared drive volume,
shared folder,
shared file,
shared document,
shared printer or
shared scanner.
The term
file sharing traditionally means shared file access, especially in the context of operational systems and
LAN services, for example in Microsoft Windows documentation. Though, as
BitTorrent and similar protocols became available in the early 2000's, the term
file sharing increasingly has become associated with
peer-to-peer file sharing over the Internet.
Shared file and printer access within a local area network may either be based on a centralized
file server or
print server, sometimes denoted
client-server paradigm, or on a
decentralized model, sometimes denoted
peer-to-peer network topology or
Workgroup (computer networking). In client-server communications, a client process on the local user computer takes the initiative to start the communication, while a server process on the
file server or
print server remote computer passively waits for requests to start a communication session. In a peer-to-peer network, any computer can be server as well as client.
Security issues
A network share is typically made accessible to other users by marking any
folder or file as shared, or by changing the
file system permissions or access rights in the properties of the folder or file. The exact procedure varies by platform. In
Windows XP Home Edition operating system, shared files and folders must be placed in the
Shared documents folder, typically with the
path C:\Documents and Settings\All users\Shared documents.
A network share can become a security liability when access to the shared files is gained (often by devious means) by those who should not have access to them. Network shares relies on a fixed network access, and would consume extensive communication capacity in non-broadband network access. Because of that, shared printer and file access is normally prohibited in
firewalls from computers outside the
local area network or enterprise
Intranet. However, by means of
virtual private networks (VPN), shared resources can securely be made available for certified users outside the local network.
Naming convention and mapping
The share can be accessed by client computers through some naming convention, such as
UNC (Universal Naming Convention) used on
DOS and
Windows PC computers. This implies that a network share can be addressed according to the following:
\\ServerComputerName\ShareName
where
ServerComputerName is the
WINS name,
DNS name or
IP address of the server computer, and
ShareName may be a folder or file name, or its
path. The shared folder can also be given a ShareName that is different from the folder local name at the server side. For example
\\server\c$ usually denotes a drive with drive letter
C: on a Windows machine.
A shared drive or folder is often
mapped at the client PC computer, meaning that it is assigned a
drive letter on the local PC computer. For example, the drive letter
H: is typically used for the user home directory on a central file server.
Common file systems and protocols
Shared file and printer access require an
operating system on the client that supports access to resources on a server, an operating system on the server that supports access to its resources from a client, and an
application layer (in the four or five layer
TCP/IP reference model) file sharing protocol and
transport layer protocol to provide that shared access. Modern operating systems for
personal computers include
distributed file systems that support file sharing, while hand-held computing devices sometimes require additional software for shared file access.
The most common such file systems and protocols are:
The "primary operating system" is the operating system on which the file sharing protocol in question is most commonly used.
On
Microsoft Windows, a network share is provided by the Windows network component "File and Printer Sharing for Microsoft Networks", using Microsoft's SMB (
Server Message Block) protocol. Other operating systems might also implement that protocol; for example,
Samba is an SMB server running on
Unix-like operating systems and some other non-MS-DOS/non-Windows operating systems such as
OpenVMS. Samba can be used to create network shares which can be accessed, using SMB, from computers running
Microsoft Windows.
Shared resource access can also be implemented with
Web-based Distributed Authoring and Versioning (WebDAV).
Centralized and decentralized architecture
In large enterprise networks, the network share is typically a resource on a centralized
file server or printer server, made available to user client computers. In home and small office networks, a decentralized approach is often used, where every user may make their local resources available to others. This approach is sometimes denoted a peer-to-peer network, since the same computer may be used as client as well as server.
Difference from file transfer
Shared file access should not be confused with file transfer using the
file transfer protocol (FTP), or the
Bluetooth or
IRDA OBject EXchange (OBEX) protocol. Shared access involves automatic synchronization of folder information whenever a folder is changed on the server, and may provide server side file searching, while file transfer is a more rudimentary service.
Shared file access is normally considered as a local area network (LAN) service, while FTP is an Internet service.
Shared file access is transparent to the user, as if it was a resource in the local file system, and supports a multi-user environment. This includes
concurrency control or
locking of a remote file while a user is editing it, and
file system permissions.
Difference from synchronization
Shared file access involves but should not be confused with
file synchronization and other information synchronization. Internet based information synchronization may for example use the
SyncML language. Shared file access is based on server side pushing of folder information, and is normally used over an "always on"
Internet socket. File synchronization allows the user to be offline from time to time, and is normally based on an agent software that polls synchronized machines at reconnect, and sometimes repeatedly with a certain time interval, to discover differences. Modern operational systems often includes a local
cache of remote files, allowing
offline access and synchronization when reconnected.
See also