The definition of “hosting” does not describe just one service, but a variety of services that provide various functions to a domain name. Having a website and emails, as an illustration, are two separate services though in the general case they come together, so many people think of them as one single service. Actually, every domain has a several DNS records called A and MX, which show the server that handles each specific service - the first one is a numeric IP address, that defines where the website for the domain is loaded from, while the second one is an alphanumeric string, which shows the server that manages the emails for the domain address. For instance, an A record would be 123.123.123.123 and an MX record is 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. When you have custom records on their end, the browser request or the e-mail will then be sent to the correct server. The idea behind working with separate records is that the two services use different web protocols and you could have your site hosted by one company and the emails by another.