Главная страница
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.48 MB
Время: 0.024 c
3-1099281637
sanek
2004-11-01 07:00
2004.11.28
как создать вычисляемое поле через DBGRId


1-1099646985
Dimedrol
2004-11-05 12:29
2004.11.28
Как пункты меню и captions писать unicod-ом ?


4-1097676921
Rico-X
2004-10-13 18:15
2004.11.28
Перехват сообщений нестандартного оборудования.


9-1091015986
Evgeniy_K
2004-07-28 15:59
2004.11.28
Параметры экрана


14-1100286504
Muchacho
2004-11-12 22:08
2004.11.28
Каким должен быть серийный номер?