In computer networking, a network service is an application running at the network application layer and above, that provides data storage, manipulation, presentation, communication or other capability which is often implemented using a client-server or peer-to-peer architecture based on application layer network protocols.
Each service is usually provided by a server component running on one or more computers (often a dedicated server computer offering multiple services) and accessed via a network by client components running on other devices. However, the client and server components can both be run on the same machine.
Clients and servers will often have a user interface, and sometimes other hardware associated with them.
Examples are the Domain Name System (DNS) which translates domain names to Internet protocol (IP) addresses and the Dynamic Host Configuration Protocol (DHCP) to assign networking configuration information to network hosts. Authentication servers identify and authenticate users, provide user account profiles, and may log usage statistics.
Other network services include:
- Directory services
- File sharing
- Instant messaging
- Online game
- File server
- Voice over IP
- Video on demand
- Video telephony
- World Wide Web
- Simple Network Management Protocol
- Time service
- Wireless sensor network
|Internet protocol suite|
In computer network programming, the application layer is an abstraction layer reserved for communications protocols and methods designed for process-to-process communications across an Internet Protocol (IP) computer network. Application layer protocols use the underlying transport layer protocols to establish host-to-host connections for network services.
TCP-IP network services
Many Internet Protocol-based services are associated with a particular well-known port number which is standardized by the Internet technical governance.
For example, World-Wide-Web servers operate on port 80, and email relay servers usually listen on port 25.
TCP versus UDP
Different services use different packet transmission techniques.
In general, packets that must get through in the correct order, without loss, use TCP, whereas real time services where later packets are more important than older packets use UDP.
For example, file transfer requires complete accuracy and so is normally done using TCP, and audio conferencing is frequently done via UDP, where momentary glitches may not be noticed.
UDP lacks built-in network congestion avoidance and the protocols that use it must be extremely carefully designed to prevent network collapse.