Currently, advertising over the Internet is done by inserting advertisements into webpages on websites.  The code for the webpage includes advertising content or one or more links to advertising servers that produce advertisements either on the webpage itself (in-line advertising) or in a separate window for the advertisement (“pop-up” or “pop-under” advertising).  The types of advertisements are controlled by the content provider for the website as the advertising is built into the webpage code.  However, the advertisement is limited in that the advertisement is only viewed by end-users who visit the website and run the code.  In this respect, Internet advertising works much like billboards on a highway in that the advertisements are only seen by those who travel there. 
This method presents two problems.  First, there is no way to direct advertising to users who are not visiting a given website.  The result is a smaller potential target audience for advertisers, as the audience is based on the visitors to any given website, which is a fraction of the total users on the Internet at any given time.  Second, the advertising content is arranged by the content provider for the website.  The Internet service provider (ISP), who is responsible for providing the bandwidth for the Internet and often the hardware for hosting the website, is not provided with a means of advertising on the Internet itself. 
Thus, a need exists for systems and methods for directly targeting and directing advertisements to end users.