Forum: Mikrocontroller und Digitale Elektronik Wie funktioniert ein Gateway genau?


von Armin O. (Gast)


Lesenswert?

Hi Leute

Ich will mal wissen, wie ein Gateway im Detail funktioniert. D.h. wie 
funktioniert es dass eine Netzinformation in ein fremdes Netz kopiert 
wird genau? Z.B. CAN nach Ethernet.
Der Kern ist doch sicher das Zwischenpuffern der Nachrichten. Was muss 
man alles beachten, dass dort nichts schiefgehr oder verlorengeht?

Kenn jemand einen guten Link oder Buch?

von .... (Gast)


Lesenswert?

Das macht ein Gateway:
http://de.wikipedia.org/wiki/Gateway_%28Computer%29
Also benötigst Du erstmal alle Details zu den Protokollen die ineinander 
überführt werden sollen.
Dann mußt Du den kleinsten gemeinsamen Nenner der Protokolle im OSI 
Schichtmodell finden und den Gateway auf exakt diese Schicht trimmen.
Wenn die zu übertragenden Datenpakete in identischer Form vorliegen, 
mußt Du "lediglich" (!) den "Wrapper" um das Datenpaket von einem 
Protokoll ins andere übersetzen.
Wenn es jedoch unterschiedliche Datenpakete sind (z.B. mit extra 
Prüfsumme oder verschlüsselt usw.) mußt Du ein Datenpaket vollständig 
nach Protokoll dekodieren, gegebenenfalls Puffern und dann die passenden 
Daten ins neue Protokoll packen und versenden.
Das ganze in beide Richtungen.
Sowas kann sehr schnell in Extreme abgleiten, z.B: ein ATM Netz auf I2C 
umbasteln ...
Wäre aber prinzipiell auch möglich ;)
Klar geworden ?

von Armin (Gast)


Lesenswert?

hört sich eigentlich einfach an. Wo ist der meiste Aufwand? Jemand mit 
Erfahrung ?

von A.K. (Gast)


Lesenswert?

Wie .... schon vermittelt haben sollte, gibt DEN GATEWAY nicht. Es gibt 
nur ganz konkrete Gateways zwischen ganz konkreten 
Protokollen/Anwendungen. Erste Gegenfrage ist also: zwischen welchen?

von Armin (Gast)


Lesenswert?

CAN - Ethernet wird es werden.

von winne (Gast)


Lesenswert?

tja,

dann Daten von CAN_Bus puffern, prüfen(wenn Fehler, erneut anfordern), 
Empfang qittieren, decodieren, puffern, ins Ethernetprotokoll umsetzen, 
puffern und über LAN/WAN, auf die Reise schicken, auf Antwort vom Server 
warten.

und retour, na das bekommst du selbst herraus.

Sollte auf beiden Seiten ein CAN_Bus harren kannst du das CAN_Paket in 
eine LAN/WAN Tüte(Wrap) stecken und am andern Ende auspacken und 
weitersenden.

für die unwarscheinliche Variante

LAN/WAN <-- CAN-----CAN -->LAN/WAN  mußt du natürlich die WAN/LAN_Daten 
in eine CAN Tüte stecken.

In beiden Fällen brauchst du vor dem weitersenden nicht dekodieren 
sondern nur einpacken und auspacken. Achtung hier vergrößern sich die 
Paket_Laufzeiten z.T. erheblich ---> Timoutbedingungen anpassen.

Sollte der CAN stark frequentiert werden, so sollten die CAN Daten 
dringend vorgefiltert werde. Nur das was am andern Ende der WAN/LAN 
Strecke von Interesse ist und dort quittiert werden soll, sollte auch 
verschickt werden sonst kann sich das system schon nach wenigen Paketen 
restlos aufhängen.




von Armin O. (Gast)


Lesenswert?

gibt es eigentlich einen Standard der genau definiert, was ein Gateway 
alles können mus? Ich dachte da an die ISO.
Aber kann dort bei denen nichts finden.
Hab auch schon was bei dem "Federal Standard 1037C" gesehen, aber ist 
mir nicht bekannt.

von Unbekannter (Gast)


Lesenswert?

Es gibt nicht nur eine Standard ISO-32342.34b und ANSI-X.3465 der die 
Funktionalität eines Gateways beschreibt, sondern zusätzlich noch das 
GtwyVerGes, das noch genauere Vorschriften zu den Gateways enthält sowie 
auch das BetrGtwyG für Betreiber von Gateways.

von Armin O. (Gast)


Lesenswert?

kommt man an die Infos ran? Per internet meine ich.....
oder ist das alles kostenplichtig?

von A.K. (Gast)


Lesenswert?

ANSI- und ISO-Standards sind zwar kostenpflichtig, aber die Suche nach 
Titel und Bedeutung bestimmter Dokumente sicher nicht. Vor einer 
offiziellen Anfrage solltest du das erst einmal das machen. Hilft 
bestimmt weiter.

von timo (Gast)


Lesenswert?

hallo zusammen,
es gibt von beck relativ preiswerte module, die diese funktion 
übernehmen können. schau dir mal folgenden link an:

http://www.beck-ipc.com/home.asp?plugin=flash5&sp=de

ich habe mal ein modul eingesetzt, welches can-bus daten direkt in ein 
ethernet frame packt und dieses konnte problemlos über ein winsock 
angesprochen werden.
das modul heißt can2web und wird von synertronixx vertrieben. wobei der 
support bei synertronixx nicht so gut war. als ich mich dann direkt an 
beck gewendet habe klappte alles sofort.
gruß timo

von Armin O. (Gast)


Lesenswert?

Ok, das mit der Frame-Konvertierung geht dann klar.

Bleibt nur noch die Strategie ob man einen Zyklus verwendet oder bei 
jedem Nachrichteneingang die Konvertierung vornimmt.
Zyklus z.B. alle paar Millisekunden wo sich solange eingehende 
Nachrichten ansammeln dürfen (Puffer) und diese dann innerhalb des 
Warte-Zyklus verarbeitet und gesendet werden.
Wär das ne Idee?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.