Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.28;
Скачать: CL | DM;

Вниз

PortMapping с логом обращений   Найти похожие ветки 

 
shuraspb   (2004-09-19 18:01) [0]

Использую компонент TIdMappedPortTCP
Компонент с локальной машины перенапрявляет запросы на proxy-сервер.
Все не плохо, читаю IP клиента, адрес куда идет, хост и т.д.

Подсткажите, можно ли получить размер полученного файла, после полной пересылки оного клиенту.
На некоторых страницах при обращении к ресурсу передается инфорамция о размере, но в основном надо считать самому, как это реализовать с минимальными потерями.


 
Defunct ©   (2004-09-20 04:04) [1]

с минимальными потерями чего?
Времени? Быстродействия?


 
shuraspb   (2004-09-20 10:02) [2]

Времени и быстродействия


 
Defunct ©   (2004-09-20 17:59) [3]

Боюсь с минимальными потерями времени не получится. Придется идентифицировать (ftp/http) пакет , и самостоятельно определять к чему он относится. Для высокого быстродействия можно создать класс в котором, вкидывая пакет, определять тип пакета, если это http или ftp пакет, то добавлять пакет в запись существующего или нового файла, длинну прикрепленных данных добавлять к объему файла.


 
atruhin ©   (2004-09-21 05:50) [4]

Вообщем смотри ссылки по прокси серверам. Тебе нужен полноценный прокси, что далеко не тривиальная задача. TIdMappedPortTCP тут ни как не поможет. Если С++ не пугает посмотри 3proxy хороший пример.


 
atruhin ©   (2004-09-21 05:53) [5]

>>можно ли получить размер полученного файла
А вообще, что ты подразумеваешь под этим. Может достаточно общего объема трафика, или трафика по соеденению?


 
shuraspb   (2004-09-22 10:32) [6]

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

но мне не подсчитать размер...
Пробовал считать символьно, но происходит дополнительная передача данных(не интересующая меня), которую мне не перехватить.
Нужно описать событие по завершении каждого такого соединения.


 
atruhin ©   (2004-09-22 10:44) [7]

>>При перекачке каждого файла устанавливается новое соединение
Это верно только в случае HTTP 1.0 для более старших версий неверно, для FTP тоже.
Подсчитать можно только полность разобрав HTTP протокол. Т.к. в разных случаях длинна передаваемого ресурса определяется по разному.
Читай внимательно http://book.itep.ru/4/45/http4561.htm



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

Текущий архив: 2004.11.28;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.052 c
6-1095316792
Григорьев Антон
2004-09-16 10:39
2004.11.28
Не могу разобраться с параметрами WSAEnumProtocols


14-1100199534
123
2004-11-11 21:58
2004.11.28
Linux


4-1097254182
Artin
2004-10-08 20:49
2004.11.28
Delphi: Чтения бит с CD диска


1-1100134176
Delph
2004-11-11 03:49
2004.11.28
Вставка текста в RichEdit (курсор за текстом)


1-1100371562
TSoftman
2004-11-13 21:46
2004.11.28
Прорисовка в TreeView





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский