Toon posts:

Traffiek controle in .NET

Pagina: 1
Acties:
  • 31 views sinds 30-01-2008

Verwijderd

Topicstarter
Hi,

Ik ben van plan op een Windows 2003 Server een soort applicatie te schrijven die het dataverkeer van elke client bijhoudt en ingrijpt wanneer hij te ver gaat.

Het internet komt langs netwerkkaart 1 binnen op mijn Windows 2003 Server, en langs netwerkaart 2 er weer uit naar de switch die verbonden is met mijn eindgebruikers.

Alle traffiek loopt dus door die Windows 2003 Server machine en daarop zou ik graag per client zijn dataverkeer loggen.

Ik heb er mij onozel op gegoogled maar vind nergens informatie over hoe je dit juist moet verwezenlijken. Ik vraag hier dus niet naar code want dat is geen probleem, maar zou graag weten hoe je zoiets best aanpakt?

grtz

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Je kunt per NIC het aantal bytes received/sent opvragen voor een totaal aan traffic in/uit, maar per client-ip wordt al wat moeilijker; dan zul je in Routing en Remote Access wat counters bij moeten gaan houden (en dus je app daar ergens tussen hangen). Of dat helemaal native met .Net gaat lukken? Denk het niet... En dan heb ik het nog niet eens over het "ingrijpen" (als in "afsluiten" of "knijpen" begrijp ik?) want dat is zowieso al niet iets waar windows native goed in is.

[ Voor 20% gewijzigd door RobIII op 20-10-2006 16:19 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • MAX3400
  • Registratie: Mei 2003
  • Laatst online: 27-01 18:54

MAX3400

XBL: OctagonQontrol

Volgens mij kan je beter NetLimiter op elke client zetten en daar een maximale waarde aan hangen (hetzij per seconde, hetzij per dag).

Kost wat maar bespaart je aaaanzienlijk meer tijd/moeite dan om iets centraals te willen doen.

Mijn advertenties!!! | Mijn antwoorden zijn vaak niet snowflake-proof


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
MAX3400 schreef op vrijdag 20 oktober 2006 @ 16:20:
Volgens mij kan je beter NetLimiter op elke client zetten en daar een maximale waarde aan hangen (hetzij per seconde, hetzij per dag).

Kost wat maar bespaart je aaaanzienlijk meer tijd/moeite dan om iets centraals te willen doen.
Dat zal vast, maar in PRG gaat het nog altijd over zélf programmeren; dat is misschien wel wat meer werk maar ook des te leuker ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • MAX3400
  • Registratie: Mei 2003
  • Laatst online: 27-01 18:54

MAX3400

XBL: OctagonQontrol

RobIII schreef op vrijdag 20 oktober 2006 @ 16:22:
[...]

Dat zal vast, maar in PRG gaat het nog altijd over zélf programmeren; dat is misschien wel wat meer werk maar ook des te leuker ;)
I know... :>

Misschien een applicatie dus die gebruikt maakt van technologie van NetLimited (alhoewel je niet kan/mag reverse engineren).

Aan de andere kant; is het niet eenvoudiger om een applicatie te schrijven die gewoon de snelheid van de internetlijn deelt door het aantal clients wat iets opvraagt?

1 client online => 2MB/s download-mogelijkheid?
10 clients online => 200K/s per client?

Mijn advertenties!!! | Mijn antwoorden zijn vaak niet snowflake-proof


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
MAX3400 schreef op vrijdag 20 oktober 2006 @ 16:26:
[...]

I know... :>

Misschien een applicatie dus die gebruikt maakt van technologie van NetLimited (alhoewel je niet kan/mag reverse engineren).
:D
Trust me; dan is reverse engineeren meer werk dan zelf schrijven (tenzij NetLimiter open source is?)
MAX3400 schreef op vrijdag 20 oktober 2006 @ 16:26:
Aan de andere kant; is het niet eenvoudiger om een applicatie te schrijven die gewoon de snelheid van de internetlijn deelt door het aantal clients wat iets opvraagt?

1 client online => 2MB/s download-mogelijkheid?
10 clients online => 200K/s per client?
Da's het idee; het gaat de TS nu om hoe dat te bereiken (qua code).

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
Ik zou het allemaal zelf schrijven, vind ik meer een uitdaging.
En met ingrijpen bedoel een gebruiker op "smallband" zetten.

Maar volgens jullie zou dit dus niet mogelijk zijn in .NET?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op vrijdag 20 oktober 2006 @ 16:56:
Ik zou het allemaal zelf schrijven, vind ik meer een uitdaging.
En met ingrijpen bedoel een gebruiker op "smallband" zetten.

Maar volgens jullie zou dit dus niet mogelijk zijn in .NET?
Oh jawel, het is vast mogelijk met .Net maar ik verwacht niet "native-.Net" nee. Je zult dus naar wat API calls moeten grijpen ofzo vermoed ik.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Met de API van Winpcap, die je met P/Invoke gewoon in .NET kan aanroepen, kun je wel een packet capture doen, en dan kun je uit die ruwe bytes IP/poort halen. En uiteraard kun je dan ook snelheden uithalen, inclusief overhead, want je krijgt gewoon packets zoals ze over de lijn gaan.

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


Verwijderd

Topicstarter
Ik ga om te beginnen eerst al eens proberen om een internet verbinding te delen via een windows 2003 server. Ik weet wel nog niet goed hoe ik de routing juist ga doen, momenteel is het allemaal vaag en weet ik niet direct hoe te beginnen.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Euh, dan is het zowieso wel aan te raden je uberhaupt eens te verdiepen in routing (NAT) e.d. (Routing & Remote Access in Windows) voordat je aan een dergelijk project begint :X Het is namelijk geen kattepis en als ik het zo hoor denk ik dat het dan nog wel even duurt voordat je iets (goed) werkends op rails hebt (NOFI, gewoon om je te waarschuwen waar je aan begint als goed bedoeld advies ;) )

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
Dus eigenlijk begin ik aan iets onmogelijk ? :/

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op zaterdag 21 oktober 2006 @ 12:47:
Dus eigenlijk begin ik aan iets onmogelijk ? :/
Als je "vers" begint met programmeren zou ik voorlopig even beginnen bij "Hello World" en het van daar uit opbouwen ;) Het is écht niet onmogelijk (er zijn zat tools die het kunnen/flikken), maar je moet wel fscking goed weten waar je mee bezig bent; routing/NAT is zowieso al best heftige stof om te begrijpen en dan moet je dat nog eens zien om te zetten in code met de juiste API's e.d. en dan is het 'limiten' van traffic wel je laatste zorg en de kleinste moeite ;)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
Programmeren is geen probleem, heb al genoeg projectjes gemaakt.

Maar waar raad je me dan aan om concrete info hierover te zoeken?

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op zaterdag 21 oktober 2006 @ 12:54:
Maar waar raad je me dan aan om concrete info hierover te zoeken?
Ik zou toch graag zien dat je zelf wat meer inzet toonde; hoe moeten wij nu weten wat je al weet en wat niet? Hoe ver gevorderd ben je met programmeren, hoeveel weet je nu al van routing, heb je een idee hoe TCP/IP op laag niveau werkt, enig idee welke API's je uberhaupt moet hebben... etc.?

Ik kan je dan ook maar 1 ding aanraden; begin met zoeken met de dingen die je niet weet en "go from there". Google de stuff op die je moet/wil weten en doe er iets mee.

Een leuke plek om te starten lijkt me hier; maar for all we know is dit abracadabra voor je :? Het is in PRG toch wel een beetje de bedoeling dat je met concrete vragen komt over dingen waar je niet uit komt; je vraag is nu wel héél erg breed...

[ Voor 23% gewijzigd door RobIII op 21-10-2006 13:00 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
Ik zal me eens een middagje bezighouden met grondige research ;)

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op zaterdag 21 oktober 2006 @ 13:08:
Ik zal me eens een middagje bezighouden met grondige research ;)
:D Een middagje? Maak daar maar weken tot maanden van als ik zo op mijn gevoel af ga van wat je al weet ;) Maar dat zul je snel genoeg zelf ontdekken :P Zelfs een die-hard God-like devver schrijft zoiets niet in een paar uurtjes of middagjes :)

Anyway; om te voorkomen dat dit een "hou mijn handje nog even vast" topic wordt brei ik hier toch maar een einde aan ;) We zien je graag terug met concrete vragen op het moment dat je ergens tegen aan loopt; tot die tijd zul je gewoon ergens moeten beginnen en kijken hoe ver je komt.

[ Voor 25% gewijzigd door RobIII op 21-10-2006 13:11 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1

Dit topic is gesloten.