Human Communication Data Conversion: A Deep Dive
Human Communication Data Conversion
Seven Steps of Data Conversion
- User enters data via hardware interface.
- Software/hardware converts data to digital format.
- Application services initiate data transfer.
- OSI layers encapsulate data (downstack).
- Encapsulated data is conveyed to destination.
- Destination OSI layers decapsulate data (upstack).
- Data is ready for processing.
Application Layer Software
Application layer software has two forms:
- Applications: Interact directly with users, providing an interface between people and hardware. Data transfer starts when the user initiates an action (e.g., pressing “Send”).
- Services: Background programs performing specific network functions. Invoked by devices or applications; generally invisible to the end-user. They connect applications to the network.
Client-Server Roles in Data Networks
In data communication, the data source is the server, and the receiver is the client. Client and server processes are application-layer services enabling network connectivity.
Servers are information reservoirs (text, databases, images, etc.), often managing real-time communication (e.g., a university student registration system).
The server process (or “server daemon”) typically runs in the background. It “listens” for client requests.
Client processes allow users to request data from a server. Client software is usually user-initiated. The client initiates communication, sending requests; the server responds with data. Data transfer from client to server is uploading; from server to client is downloading.
Examples of client-server services include DNS, FTP, HTTP, and Telnet.
Client-Server vs. Peer-to-Peer Data Transfer
Client-server transfer uses a centralized server and multiple clients. Peer-to-peer transfer uses devices that act as both client and server within the same communication. Both ends can initiate communication; devices are considered equal. Unlike client-server’s centralized data, peer-to-peer networks have distributed data. Data isn’t processed by another network device in the application layer.
Five Application Layer Protocol Functions
- Communication endpoint processes: Data handling and protocol data unit structuring.
- Message types: Application, receipt, data, status, and error messages.
- Message syntax: Expected order of information (fields) in a message.
- Field meaning: Consistent field meanings for proper interpretation.
- Message dialogues: Response to each message, invoking services and enabling data transfer.
Application Layer Protocols: Specific Objectives
These protocols use client-server processes:
- DNS (Domain Name System): Resolves resource names and email domains to numerical network addresses.
- HTTP (Hypertext Transfer Protocol): Transfers data in hypermedia information systems (e.g., the World Wide Web).
- SMB (Server Message Block): Shares network resources (directories, files, printers).
- SMTP (Simple Mail Transfer Protocol): Transfers outgoing email to mail servers.
- POP (Post Office Protocol): Delivers email from mail server to client.
Comparing Application Layer Protocol Messages
These protocols use client-server request/response messages:
- DNS: Uses a single message format for queries, responses, errors, and resource record transfers.
- HTTP: Uses request/response messages. A client (e.g., web browser) sends a request; the server responds.
- SMB: Uses a common format for session control (start, authenticate, terminate) and message sending/receiving.
- SMTP: Uses commands and responses for login, mail transactions, forwarding, mailbox verification, and list expansion.
- POP: A client-server protocol where the client initiates the connection to retrieve email.
While users interact with applications using HTTP, SMB, and SMTP/POP, DNS operates transparently in the background.