Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2003.03.17;
Скачать: [xml.tar.bz2];

Вниз

Быстрый gethostbyaddr   Найти похожие ветки 

 
dumb   (2003-01-27 09:10) [0]

Вот такой стандартный код, но мне кажется он работает медленно. Вы можете сказать, что это из-за конфигурации моей сети и т.д. Возможно.. Я прошу вас показать мне какой-нибудь аналог для сравнения.


function GetHostName(AIP: string) : string;
var
wsdata : TWSAData;
he : PHostEnt;
ip : TInAddr;

begin
Result := AIP;
WSAStartup(MakeWord(1, 1), wsdata);
ip.S_addr := inet_addr(PChar(AIP));
he := gethostbyaddr(@ip.S_un_b, 4, AF_INET);
if he<>nil then
Result := string(he.h_name);
WSACleanup();
end;


 
dumb   (2003-01-27 09:21) [1]

Желательно с TIdDNSResolver :)


 
dumb   (2003-01-27 14:49) [2]

Еще одно наблюдение, которое подтверждает мои опасения - системная утилита nslookup работает мгновенно, а gethostbyaddr - гораздо медленнее. Разница ощущается букально невооруженным глазом. Особенно это ощущается при лукапе IP несуществующих доменов - nslookup возвращает ответ мгновенно, gethostbyaddr - "думает" 4-5 секунд.


 
Wonder   (2003-01-27 15:17) [3]

nslookup, насколько я помню, не использует вызов gethostbyaddr, а общается с name-сервером напрямую, в следствие чего и работает быстрее.

Именно твой код, на мой взгляд, "убыстрить" нереально :) Т.е. он работает как и должен работать.


 
dumb   (2003-01-27 15:22) [4]

Совершенно верно. Мой код убыстрять не надо, мне надо аналог моей функции, но, как вы правильно сказали, работающий напрямую (как nslookup).


 
Wonder   (2003-01-27 15:46) [5]

К сожалению, таких задач не решал.
Совет: взять исходники nslookup-а (например, под Linux) и портировать на win32.
Можно попытаться в Сети найти исходники сразу под win32, хотя это маловероятно...



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2003.03.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.01 c
4-54367
Shuric
2003-01-24 21:48
2003.03.17
Приветик всем... Может кто подскажет?


7-54326
Selesty
2003-01-21 02:02
2003.03.17
EIP


1-54113
[BAD]Angel
2003-03-05 20:44
2003.03.17
Помогите с консольным приложением!!! ПЛЗ!


7-54351
Zevsus
2003-01-22 19:04
2003.03.17
камера, TWAIN и нажатие кнопки Take Picture


1-54093
An
2003-03-05 12:59
2003.03.17
Умный ресайз формы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский