Seite 1 von 15

EasyNetworkManager [Neu: Log - System][V# 1.3.3][Include]

Verfasst: 26.01.2011 15:33
von cxAlex
Servus.

Nachdem ich schon einige Client-Server Anwendungen mit PB realisiert habe, bin ich immer wieder auf dieselben Probleme gestoßen die die PB-Netzwerk Verwaltung mit sich bring:
  • Nicht Threadsicher
  • Kein Disconnect-Event am Client
  • Keine einfache Client/Connection Verwaltung (z.B. zuweisen von ExtraDaten wie äquivalent SetGadgetData())
Zudem finde ich die Verwaltung von mehreren Servern in einem Programm nicht gerade komfortabel.

Dafür arbeite ich nun an meinen Easy Network Manager, der all diese Probleme umschiffen soll. Der bisherige Stand:
  • vollständig Threadsicher
  • vollständiges Callback Managemant
  • einfach Multi-Server & Multi-Connections Verwaltung
  • einfacher Interface Zugriff
  • Client & Server Verwaltung
  • Client #PB_NetworkEvent_Disconnect
  • UDP #PB_NetworkEvent_Connect und #PB_NetworkEvent_Disconnect
  • Einfache Paket Verwaltung inkl. Kompression
  • Einfache Übertragung großer Daten via Streams
  • stark Parallelisiert für gute Performance
  • Einfaches Cache - Managemant
  • Protokol Manager zum einfachen entwickeln eigener Protokolle
  • Authentication System zur einfachen Benutzeranmeldung und Verwaltung
  • Log System zum Aufzeichnen sämtlicher Aktionen

Todo:
  • weitere Optimierungen des Codes
Ständig in Entwicklung. Updates folgen. Wünsche/Kritik/Anregungen immer gern :D

Eine Vollständige, gut kommentierte Beschreibung aller Befehle und wie man Sie benutzt findet man in der Datei ENM_CommandDescription.pbi im Download-Paket.
Das Projekt ENM ist nun bereits sehr umfangreich, und wird ständig weiterentwickelt und verbessert. Wenn dir ENM in einem deiner Projekte hilf bedank dich doch mit einem Bier ; ) Bild
Download:
http://www.rsbasic.de/backupprogramme/E ... anager.zip
Achtung! Veraltet, nicht an 5.x angepasst! Überarbeitung in Planung!

Gruß, Alex

Re: Easy Network Manager [Include]

Verfasst: 28.01.2011 11:48
von Morty
Hi Alex.

Von der Sache her wirklich TOP !!!! :allright:
Ich hoffe Du arbeitest noch weiter dran.

Ich denke Du würdest auch etwas mehr Zuspruch bekommen, wenn Du zu den Includes auch noch 2-3 kleine Beispiele machen würdest.
Es ist am Anfang immer schwierig, sich in die Topologie fremder Programme einzuarbeiten.

Gruß, Morty

Re: Easy Network Manager [Include]

Verfasst: 28.01.2011 12:48
von cxAlex
:)

Sicher arbeite ich dran weiter. Beispiele gibts dazu sobald ich die Sende/Empfangs - Funktionen eingebaut habe. Das ganze sind einfach die grundlegendsten Netzwerkfunktionen, nur einfach viel einfacher und effizienter zu verwenden als die Standard PB - Funktionen (meiner Meinung nach)

Gruß, Alex

Re: Easy Network Manager [Include]

Verfasst: 28.01.2011 12:56
von Morty
:D

Okay, da bin ich mal gespannt wie es weiter geht.
Mache nämlich auch gerade viel mit Client / Server Verbindungen und suche quasi noch eine gut, aber vorallem "sichere" Methode für das gesamte Handling.

Nebenbei: Was wichtig wäre für das Senden und Empfangen von Daten wäre die Prüfung auf Vollständigkeit der Daten beim Empfang. Wurde ja hier schon öfters im Forum drüber diskutiert.

Gruß, Morty

Re: Easy Network Manager [Include]

Verfasst: 28.01.2011 13:01
von cxAlex
Eben das will ich beim Senden/Empfangen einbauen. Eine kleine Paket-Verwaltung, gegebenenfalls mit Kompression die sicherstellt das die Daten so ankommen wie sie abgesendet werden.

Gruß, Alex

Re: Easy Network Manager [Include]

Verfasst: 28.01.2011 15:27
von RSBasic
Nicht schlecht :allright:

Re: Easy Network Manager [Include]

Verfasst: 28.01.2011 18:41
von cxAlex
Neu Version ist online, Paket-Verwaltung implementiert 8)

Leider hab ich noch keine Zeit gehabt ein anschauliches Beispiel zu stricken. Wer sich aber schonmal mit den neuen Befehlen auseinandersetzen will findet die Beschreibung in der Datei ENM_CommandDescription.pbi.

Dowloadlink im 1. Post

Gruß, Alex

Re: Easy Network Manager [Include]

Verfasst: 30.01.2011 12:55
von cxAlex
Update.

Paket-Verwaltung optimiert, nachladen fehlender Parts verbessert, bzw. kleinen Bug gefixt. Das Signatur-Byte wird nun für jedes Paket dynamisch erzeugt und mit einem Gegenbyte geprüft. Ungültige Pakete sollten so zu 99.9% ausgeschlossen sein, bzw. ENM - Pakete lassen sich nicht mehr so leicht durch beispielsweise einen Netzwerksniffer erkennen.

Kompression für Pakete wurde integriert und ist einfach über einen Flag bei ENM\SendPaket() nutzbar. Packen/Entpacken usw. geschieht im Hintergrund.

Im Ordner sample\ gibt es nun ein kleines Client - Server Demo das die Grundzüge des ENM demonstriert.

Download im 1. Post.

Gruß, Alex

Re: Easy Network Manager [Include]

Verfasst: 30.01.2011 20:19
von Morty
Hey, schön das Du dran bleibst. :allright:

Werde es morgen gleich mal auf Arbeit austesten und dann noch mal Bericht erstatten.

Gruß, Morty

Re: Easy Network Manager [Include]

Verfasst: 30.01.2011 22:44
von Andreas21
Hi,

Ich habe die vorlage des Servers und Client mal getestet.
Mir ist ein Problem aufgefallen.

Ab und zu bleibt der Client bei Packet 3 stehen.

Wenn man die verbindung zum Server aufbaut mit dem Client geht es super beim erstenmal.
Beendet man den Client dann und startet ihn neu, sendet der Server ihm zwar die Packete und der Client antwortet auch.
Nur der Server reagiert auf die antwort vom Client nicht.