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

Вниз

Подсчитать трафик определенного сайта   Найти похожие ветки 

 
frEE)styler   (2006-01-23 16:48) [0]

Уважаемые мастера помогите реализовать процедуру чтобы возможно было подсчитывать трафик различных сайтов.
заранее спасибо!


 
Rouse_ ©   (2006-01-23 17:22) [1]

А как ты себе это вообще представляешь?


 
frEE)styler   (2006-01-23 19:13) [2]

ну видел программу трафик инспектор?
т.е мне нужно знать сколько я поратил трафика тех сайтов на которых был.
может я не так формулирую..


 
VirEx ©   (2006-01-23 19:26) [3]


>  [2] frEE)styler   (23.01.06 19:13)

не правильно формулируешь, уже сто раз были сделаны различные ветки про ЭТО:)
у Rouse_ © как раз есть исходник, хотя лан, вот код:

type
TMibIfRow = packed record
  wszName  : array[0..255] of WideChar;
  dwIndex  : DWORD;
  dwType  : DWORD;
  dwMtu  : DWORD;
  dwSpeed  : DWORD;
  dwPhysAddrLen : DWORD;
  bPhysAddr  : array[0..7] of Byte;
  dwAdminStatus : DWORD;
  dwOperStatus : DWORD;
  dwLastChange : DWORD;
  dwInOctets  : DWORD;
  dwInUcastPkts : DWORD;
  dwInNUCastPkts : DWORD;
  dwInDiscards : DWORD;
  dwInErrors  : DWORD;
  dwInUnknownProtos : DWORD;
  dwOutOctets  : DWORD;
  dwOutUCastPkts : DWORD;
  dwOutNUCastPkts : DWORD;
  dwOutDiscards : DWORD;
  dwOutErrors  : DWORD;
  dwOutQLen  : DWORD;
  dwDescrLen  : DWORD;
  bDescr  : array[0..255] of Char;
end;
TMibIfArray = array [0..512] of TMibIfRow;
PMibIfRow = ^TMibIfRow;
PmibIfArray = ^TmibIfArray;

type
TMibIfTable = packed record
dwNumEntries : DWORD;//кол-во соединений
Table     : TMibIfArray;
end;
PMibIfTable = ^ TMibIfTable;

var
Form1: TForm1;
GetIfTable:function(pIfTable: pMibIfTable; pdwSize:puLONG; bOrder:boolean):DWORD;stdcall;
Table   : tMibIfTable;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
h:THandle;
i,Size:integer;
buff:array [0..1024] of byte;
begin
h := LoadLibrary("IPHLPAPI.DLL"); //Загружаем библиотеку
if h = 0 then Exit;
@GetIfTable := GetProcAddress(h, "GetIfTable");
Size:=SizeOf(Table);
GetIfTable(@Table, @Size, False );
memo1.Lines.Clear;
for i:=0 to Table.dwNumEntries-1 do begin
memo1.Lines.Add(Table.Table[i].bDescr);

memo1.Lines.Add(format("MAC: %d.%d.%d.%d.%d.%d.%d.%d.",
[Table.Table[i].bPhysAddr[0],
Table.Table[i].bPhysAddr[1],
Table.Table[i].bPhysAddr[2],
Table.Table[i].bPhysAddr[3],
Table.Table[i].bPhysAddr[4],
Table.Table[i].bPhysAddr[5],
Table.Table[i].bPhysAddr[6],
Table.Table[i].bPhysAddr[7]
]));
memo1.Lines.Add("in: "+inttostr(Table.Table[i].dwInOctets)+" byte");
memo1.Lines.Add("out: "+inttostr(Table.Table[i].dwOutOctets)+" byte");
memo1.Lines.Add("all: "+inttostr(Table.Table[i].dwInOctets+Table.Table[i].dwOutOctets)+" byte");

memo1.Lines.Add("");
end;

FreeLibrary(h);
end;


 
frEE)styler   (2006-01-23 20:32) [4]

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


 
Корешь   (2006-01-24 08:07) [5]

Определись с задачей, стоит различать сайт и host(ip), на одном хосте(ip) может размещатся несколькой сайтов. Если хочешь считать трафик с хоста, то это подсчет пакетов и их размеров пришедших с заданного хоста, если тебя интересует http трафик, то тогда нужно делать прокси....


 
Rouse_ ©   (2006-01-24 10:48) [6]


> спасибо за код. но он дает информацию об общем количестве
> потраченного трафика...
> а мне нужно знать сколько потратил я после посещения определенного
> сайта.

Сниффером смотри куда и как он лезет. Или пускай траффик через свой прокси, а на нем уже считай...


 
frEE)styler   (2006-01-26 17:37) [7]

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


 
Rouse_ ©   (2006-01-26 21:39) [8]

Прокси пишеться без компонентов. Но раз ассоциации только с компонентом, то IdMappedPort



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

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

Наверх




Память: 0.49 MB
Время: 0.047 c
2-1146831602
Satanist
2006-05-05 16:20
2006.05.21
Словить click в Webbrowser


9-1129576649
Bogdan1024
2005-10-17 23:17
2006.05.21
Вообще игры на ВижуалБасике делают?


1-1144746277
DeadMoroz
2006-04-11 13:04
2006.05.21
Два и более обработчика события


15-1146057540
rolex2002
2006-04-26 17:19
2006.05.21
Как удалить системные точки восстановления?


15-1145305263
Petr V. Abramov
2006-04-18 00:21
2006.05.21
На Рособразование подали в суд за введение ЕГЭ