Client-Server Model, Peer-to-Peer, NFS, Samba, and SSL

Classified in Computers

Written at on English with a size of 3.39 KB.

Client-Server Model

  • The client-server model defines the structure of communicating applications and their synchronization.
  • It consists of two interacting processes:
    • Server Process
    • Client Process
  • Client and server are inseparable; one cannot exist without the other.

Server

  • This process awaits hearing on a given server port. It continuously waits for remote client processes to connect.
  • Authentication
  • Security and information privacy in the system where they reside.
  • Must be able to handle requests from multiple clients simultaneously.
  • Important: All clients will be connected to the same server port.

In general, we say that a computer is a server when its operating system runs one or more server processes (FTP, HTTP, DNS, etc.).

Client

  • It is a process that sends requests to a server process and waits for the server's responses.
  • Its programming is simpler than the server's, which awaits hearing on a given port.
  • The server continuously waits for remote client processes to connect.

They can be distinguished:

  • Standard Client: Makes requests to services such as HTTP, FTP, etc.
  • Non-standard Client: Tailored to our local network and also uses TCP/IP below. They use locally-known ports.

A server must specify the IP address and the port or ports that will remain open to listen to requests from clients.

A client must specify the IP address and port of the server to which it wants to connect. Once this is done, the operating system allocates a port number to the client process.

Peer-to-Peer Communication

  • Here, communication occurs between equals. There is no server process itself to "control" access to clients.
  • All processes are either clients or servers.
  • A machine can have "server" and "client" processes running simultaneously. Examples: Torrent, eMule, etc.
  • Peer-to-peer Utility: Allows for distributed and more efficient information sharing because, instead of having to access a server (usually centrally), you can access any computer on our network, reducing traffic to and from the server.

NFS (Network File System)

  • NFS is an application-level protocol used for distributed file systems in a local area network environment.
  • It enables different systems connected to the same network to access files remotely as if they were local.
  • The system consists of an NFS server and one or more clients that remotely access the data stored on the server.

Samba

  • Samba is a free implementation of the Microsoft file-sharing protocol, formerly for Unix and Linux systems. Thus, it is possible for computers with Linux, Mac, or Unix in general to be seen as acting as servers or clients on Windows networks. Samba also allows user validation.
  • Samba configuration is done by editing a single file, accessible at /etc/smb.conf or /etc/samba/smb.conf.

SSL (Secure Sockets Layer)

SSL protocols are cryptographic protocols that provide secure communications on a network, typically the Internet. They provide authentication and privacy of information between points on the Internet using cryptographic techniques.

Entradas relacionadas: