Minimally, a Software Server requires two software components: an operating platform and an application. The operating platform provides the runtime infrastructure needed to support an application. The platform can include the hardware (real or virtual), the network, the Operating System (OS), the dependent services and the software libraries needed to access the services, operating system network and hardware.1)
In order to communicate with the clients in the outside world, typical Software Servers generally use domain names, TCP IP Addresses, ports and MAC addresses. These can be statically assigned or dynamic, as well as, virtual and real.
Some common Software Servers are: