The definition of “hosting” doesn't describe one service, but a variety of services that provide a variety of functions to a domain name. Having a site and emails, as an example, are two independent services despite the fact that in the general case they come together, so most people see them as one single service. The truth is, every single domain name has a number of DNS records called A and MX, which show the server that manages each particular service - the former is a numeric IP address, which defines where the site for the domain address is loaded from, while the latter is an alphanumeric string, which shows the server that manages the e-mails for the domain address. For instance, an A record would be 123.123.123.123 and an MX record can be mx1.domain.com. Whenever you open a site or send an e-mail, the global DNS servers are contacted to check the name servers that a domain address has and the traffic/message is first directed to that company. In case you have custom records on their end, the browser request or the email will be forwarded to the correct server. The concept behind using separate records is that the two services employ different web protocols and you could have your website hosted by one company and the e-mail messages by another.