The definition of “hosting” doesn't describe one service, but a number of services that offer numerous functions to a domain. Having a website and emails, for example, are two individual services although in the general case they come together, so most of the people consider them as one single service. In reality, each domain has a several DNS records called A and MX, which show the server that deals with each specific service - the former is a numeric IP address, that identifies where the site for the domain is loaded from, while the latter is an alphanumeric string, which shows the server that manages the e-mails for the domain address. As an illustration, an A record would be 123.123.123.123 and an MX record is mx1.domain.com. Every time you open a site or send an e-mail, the global DNS servers are contacted to check the name servers that a Internet domain has and the traffic/message is first directed to that company. If you have custom records on their end, the web browser request or the e-mail will be sent to the correct server. The idea behind using separate records is that the two services use different web protocols and you could have your site hosted by one service provider and the e-mails by another.