/DNSserver

This is lightweight DNS server. When you surfing on line. Your computer has to translate a website address into an IP address. Even we have distributed DNS server, but it still cost a lot of time when translate the domain name into an IP address. So I wrote this software. It saves the most frequently used website IP address. So when you attempt to log in that site. The response time is approximately zero. And I have my own algorithm to when should my software to update the address pool. Like when the user away from keyboard, my software update addresses pools. Or update the IP address pool when no network traffic jam.

Primary LanguageC++

DNSserver

This is a lightweight DNS server. Though we have several distributed DNS server today, it still cost a lot of time when translate the domain name into an IP address. Especially for website you not frequent use. So I wrote this software with my personal algorithm to calculate IP address time to live. Traditional DNS just discard the IP which expire time to live. And traditional DNS only select the first IP when object server has a load balance. This is a huge waste and not the optimum result. But in my DNS server will periodly check whether the IP changed not just discard the IP address. And every time, according to the delay, delay jitter, speed, etc to choose the best IP when encounter a load balance. As for period, it decided by frequency and original TTL. And it will update the IP address pool when no network traffic jam. Concurrent request to several root or DNS server, when attempt to access one site which its name is not in our database. It saves times to get a fastest response and discard others. So in most case, the response time is approximately zero.

Even now we have very famous DNS server software which name is BIND. But it can only run on Linux or Unix. But most users use Windows. Unfortunately, on Windows platform has seldom DNS server software. So I wrote one. And this software is used very little resource but has high efficiency.

I only upload the oldest version and sample codes to this website. Because I sold this software to others. According to the sale agreement. I can't put full codes on a public area or show the codes to others. I wish you can understand.