The best way to deal with a DDoS is to start as far away from your connection as possible; you want to cut off such an attack as close to the source as possible.
First, find out the IP addresses being used, whois them, and talk to the ISP on the far end. They might not be able to help if they're in a foreign country, or spread all over the world, but if it's an isolated region, you might be in luck.
If that is a dead-end, you can ask your ISP to provide a black hole for a range of IPs. Most consumer-grade accounts won't have this option, but it doesn't hurt to ask. Unless, of course, you're violating the TOU (Terms of Use) for that provider by running a server at all. You'd be admitting to using their connection in a way they don't like. They could decide to shut you down.
If you have a dynamic IP address, you can try pulling out the battery and power cord of your modem/router (the ISP-connected one, not any internal one you may have), and let it sit a few minutes. Hopefully, you'll renew with a new IP address and you can just update your DNS. It'll take a while for the DDoS to realize you've moved, although your legitimate customers will have the same problem. It will sort itself out over a few minutes/hours, but you might be better off in the end.
If you can't get down to getting ISP support or changing your IP address, you'll need a firewall. Go to your local store and buy a nice hardware firewall if you can. One with drop rules specific to traffic types/IP addresses/etc. It'll cost you dearly, but you can configure the firewall to drop all suspicious traffic. The benefit here is that most connections have a much smaller upstream cap than a downstream cap, so by dropping packets, you save your upstream bandwidth (going to your visitors) for actual page visits and not pings, naks, 404s, and whatever else might be going on.
You can try a software firewall but it has to be a good one. Windows Firewall just isn't going to cut it here. You need something like Linux, where you can configure drop rules on the IPs that are bombarding you. You'll still be using a lot of downstream bandwidth to your network, but your server will be able to take a breather while your other system takes the heat.
You might also just set up another virtual server on your server, with a single file that redirects (302) from the default port 80 or 443 to a non-standard port, and set up your services there. Normal browsers will get redirected to the new service without too much hassle on next page load, while the bots will probably continue hammering away on the default port. A simple HTTP redirect costs a lot less bandwidth than full-blown page loads, so it might reduce the effects of the attack. It really depends on how intelligent the DDoS attack scripts are. They might simply harmlessly bounce of the 302, which means they'd have to massively scale up their attack.
Finally, if everything else fails, just turn off your server for 10 minutes and see what happens. The DDoS scripts might get bored and wander off (not likely, but it's worth a shot). If you are hosting your own server on a consumer-grade connection, by the way, it's time to upgrade. Consumer-grade packages are not suitable for hosting, because they have very small upstreams (relatively) and little to no support included for DDoS, DNS, mail servers, and other usual problems.