Fight the Good Fight with SmokePing
Enter SmokePing.
With past ISP problems, I've been able to run a continuous ping to an outside IP address and show the tech-support representative that I have packet loss. Unfortunately, a running ping command doesn't give a history of when the packets are lost. With SmokePing, not only is there a record of when packets are lost, but there's also a graphical representation of how many packets were lost, and from several IP addresses to boot.
Notice packet loss to the Google DNS server, but none to my gateway. So, the problem isn't with my house connection.
For my purposes, I keep track of pings to my local router, to the gateway provided by my ISP, and then a Google IP address and a foreign IP address. With that information, I usually not only can tell the ISP when the packets drop, but also whether it's an issue between me and its gateway or routing somewhere past my subnet. (For what it's worth, the problem is almost always between my router and my ISP's gateway, because there's some problem with its line coming to my office.)
If you need to prove packet loss, or if you just like to keep track of potential problems between hosts, SmokePing is an awesome uptime tracker that comes with colorful graphs and lots of useful information. For its incredible usefulness and straightforward approach to monitoring, SmokePing gets this month's Editors' Choice Award. Check it out at http://oss.oetiker.ch/smokeping.