A system and method for sending long distance telephone calls over the
Internet utilizes cost and quality of service data to optimize system
performance and to minimize the cost of completing the calls. The system
utilizes a network of gateways connected to the Internet. The gateways
receive calls from various service providers and convert the analog calls
into data packets which are then placed onto the Internet. Similarly, the
gateways take data packets off the Internet, convert the data packets
back into analog format, and provide the analog telephone calls to the
same or another service provider. Then system periodically checks the
quality of communications between each of the gateways, and uses this
information, in combination with cost information, to determine how to
route the calls over the Internet. Special addressing protocols can be
used by a system embodying the invention to reduce or eliminate
unnecessary signaling between gateways as call setup procedures are
carried out. The system can also use information about calls that has
been recorded in more than one location to determine how much to charge
for completing a call.