Hallo, ich möchte mich mal ein bisschen mehr mit dem Internet und Netzwerken (LAN/Ethernet) beschäftigen. Die groben Abläufe kenne ich. Aber wie funktioniert das genau? Kennt jemand ein gutes Tutorial, wo das Internet von Grund auf erklärt wird. Wie sieht das bei Mikrocontrollern aus, wenn ich z.B ein Client bauen will, mit dem ich z.B E-Mails verschicken kann. Moritz
Der wohl wichtigste Teil, den man für das Verständnis braucht ist das OSI Schichtenmodell: http://de.wikipedia.org/wiki/OSI-Modell
Suche Infos zu diesem ominösen Schichtenmodell. Es erklärt einiges, z.B. wie die ganzen Buchstaben aus dem Internet auf den Bildschirm kommen.
Moritz M. schrieb: > Aber wie > funktioniert das genau? Was denn überhaupt? Das Internet? Mir wäre so etwas nicht bekannt. Teil des Problems ist ja auch, dass "das Internet" mitunter aus sehr vielen verschiedenen Protokollen bzw. Aspekten besteht. Man muss ja nicht ein jedes solches Protokoll bis ins Detail kennen, um zu wissen wie "das Internet" prinzipiell funktioniert. Moritz M. schrieb: > Kennt jemand ein gutes Tutorial, wo das Internet > von Grund auf erklärt wird. Klassischerweise erklärt man den Aufbau von Rechnernetzen anhand des OSI-Schichtenmodells (siehe https://de.wikipedia.org/wiki/OSI-Modell) und geht dabei auf je ein paar Beispiele ein. Moritz M. schrieb: > Wie sieht das bei Mikrocontrollern aus, wenn > ich z.B ein Client bauen will, mit dem ich z.B E-Mails verschicken kann. Das ist nicht unbedingt etwas, dass du mit einem klassischen Mikrocontroller erledigen willst. Überhaupt ist das Thema "Netzwerk" mit Mikrocontrollern "problematisch". Im Idealfall hat man nämlich ein Betriebssystem, welches mit Hilfe seines bereits vorhandenen Netzwerk-Stacks vieles wegabstrahiert. Ansonsten könnte es nämlich durchaus eine Lebensaufgabe werden erst einen solchen programmieren zu müssen. Auch das Thema E-Mail ist allse andere als trivial. Zwar mag es oberflächlich betrachtet einfach aussehen, aber die entsprechenden RFCs sind sehr lang und sich mit E-Mail-Headern auseinandersetzen zu müssen ist eigentlich eine Bestrafung. Insofern würde man wohl auch in einem solchen Fall etwas fertiges nehmen.
das OSI Modell definiert 7 Schichten, TCP/IP definiert 4 Schichten. Wer das OSI Modell kennt, weiss wie es sein sollte, wer TCP/IP kennt, weiss wie das Internet funktioniert. Um auf die Frage zurückzukommen, kaufe ein NET-IO und schaue dir die ETH_M32_EX Firmware dazu an. Ein bisschen Theorie zu TCP/IP und Netbios Protokoll rundet die Sache ab. Gruß, dasrotemopped.
Karol Babioch schrieb: > Auch das Thema E-Mail ist allse andere als trivial. Wenn man auf senden klickt, dann überträgt der Computer die E-Mail per SMTP an den SMTP-Server des Mailproviders. Irgendwie schon sehr trivial.
1. Grundlagen (OSI ist da nicht schlecht) 2. Viel Geduld 3. Selber bauen Oder, wenn es schnell gehen soll, kaufe dir z.B. im grossen Auktionshaus aus China ein ENC28J60 Modul. http://www.mikrocontroller.net/articles/ENC28J60 Du findest fertige Software die läuft (hier im Forum, bzw. von Ulrich Radig). Darauf aufbauen sollte das ganze kein Problem sein. Dann fehlt dir fürs Mailversenden nur noch SMTP, welches ziemlich einfach ist und du durch googeln leicht mehr erfährst. (Stichwort: SMTP telnet) Der Aufbau des Webserver, den du hier irgendwo im Forum findest (Wikiartikel, hab den jetzt nicht durchgelesen) funktionierte bei mir auf Anhieb. Dafür brauchst du keine Vertieften Kenntnisse. Durch studieren des Code etc. kannst du jedoch vieles lernen. Ich denke das hier waren die Links: http://www.ulrichradig.de/home/index.php/software/avr-webserver-software http://www.ulrichradig.de/home/index.php/avr/eth_m32_ex#download mfg Andreas
Es gibt eine Trilogie TCP/IP : TCP/IP Illustrated TCP/IP Illustrated Volume 1 TCP/IP Illustrated Volume 2 TCP/IP Illustrated Volume 3 Dann kann man sich mit dem Routing System auseinander setzen. Das nennt sich dann ARP, DNS, BIND. Da gib't auch wieder Buecher drueber. Dann gibt's noch die Internet Protkolle, zu email usw. Mit schnell mal ein Tutorial downloaden ist da nichts. Das ist eher Knockenarbeit.
Nachtrag (Editieren geht nicht mehr, weil schon eine Antwort vorhanden): http://www.ulrichradig.de/forum/viewtopic.php?f=27&t=1328&p=5407 Mailversand ist wohl schon dabei. Und noch eine Anmerkung: Wenn du es ganz genau wissen willst kann ich dir ein Studium empfehlen;-) Da lernst du dann jedes Bit von z.B. TCP/IP kennen und was es bedeutet... Die Unterlagen dazu kriegst du z.B. hier: https://olat.zhaw.ch/olat/url/RepositoryEntry/56623108 (einfach "Gastzugang" wählen) Ich wünsche viel Spass beim lesen, es hat ein Skript und Folien. mfg Andreas
Kan asta schrieb: > Wenn man auf senden klickt, dann überträgt der Computer die E-Mail per > SMTP an den SMTP-Server des Mailproviders. Irgendwie schon sehr trivial. Sofern das ernst gemeint ist: Dann schaue dir mal an was der Computer im Hintergrund macht bzw. letztendlich verschickt. I.d.R. wirst du haufenweise Header finden, welche nicht unbedingt selbsterklärend sind. Wenn du willst, dass deine E-Mail zugestellt wird bzw. nicht in irgendwelchen Spam-Filtern landet, dann ist es durchaus empfehlenswert, dass die E-Mail die entsprechenden RFCs erfüllt (was generell eine gute Idee ist ;)). Und wenn du schon einmal einen Blick in die entsprechenden RFCs geworfen hättest, dann wüsstest du, dass diese unheimlich lang sind. Das ist sicherlich nicht "rocket science", aber trotzdem ist das etwas, dass man mal "nicht eben so" vollständig und richtig macht. Andreas B. schrieb: > Dann fehlt dir fürs Mailversenden nur noch SMTP, welches ziemlich > einfach ist und du durch googeln leicht mehr erfährst. Nein, STMP ist eben nicht so einfach, wie es viele darstellen. Ja, der prinzipielle Aufbau ist einfach. Aber sobald man ins Detail geht und sich mit den vielen Headern auseinandersetzt, sowie mit dem Thema der Kodierung und ähnlichem, wird man feststellen, dass es doch "ein wenig" komplexer ist. Morz Kerl schrieb: > ann kann man sich mit dem Routing System auseinander setzen. Das nennt > sich dann ARP, DNS, BIND. Da gib't auch wieder Buecher drueber. Und damit hast du schon angefangen, Missinformationen zu verteilen bzw. für Verwirrung zu sorgen. Das Routing ist ein Problem von Schicht 3 (d.h. IP). ARP hat damit nichts zu tun und ist Bestandteil von Schicht 2 (welches der Zuordnung von MAC-Adressen zu IP-Adressen dient). DNS und BIND haben damit absolut nichts zu tun. Die dienen zur Namensauflösung und sind i.d.R. nur Komfort.
Karol Babioch schrieb: > I.d.R. wirst du haufenweise Header finden Nunja, einen SMTP-Header. Da hast du Recht. Wenn du TCP selbst bauen willst, wirst du auch TCP/IP-Header finden.
Karol Babioch schrieb: > Kan asta schrieb: >> Wenn man auf senden klickt, dann überträgt der Computer die E-Mail per >> SMTP an den SMTP-Server des Mailproviders. Irgendwie schon sehr trivial. > Sofern das ernst gemeint ist: > > Dann schaue dir mal an was der Computer im Hintergrund macht bzw. > letztendlich verschickt. I.d.R. wirst du haufenweise Header finden, > welche nicht unbedingt selbsterklärend sind. Wenn du willst, dass deine > E-Mail zugestellt wird bzw. nicht in irgendwelchen Spam-Filtern landet, > dann ist es durchaus empfehlenswert, dass die E-Mail die entsprechenden > RFCs erfüllt (was generell eine gute Idee ist ;)). Und wenn du schon > einmal einen Blick in die entsprechenden RFCs geworfen hättest, dann > wüsstest du, dass diese unheimlich lang sind. Da er kaum ein kompletten Email Client schreiben wird empfehle ich in dieser Hinsicht Wireshark und z.B. Thunderbird. Und schaue mal was Thunderbird macht, so als Beispiel, nicht als Spez. Solange der Text 7bit ASCII und keine Ahänge etc. beinhaltet halten sich die Encodingprobleme in Grenzen, und etwas anderes würde ich als Anfänger garnicht erst versuchen. > Morz Kerl schrieb: >> ann kann man sich mit dem Routing System auseinander setzen. Das nennt >> sich dann ARP, DNS, BIND. Da gib't auch wieder Buecher drueber. > Und damit hast du schon angefangen, Missinformationen zu verteilen bzw. > für Verwirrung zu sorgen. Das Routing ist ein Problem von Schicht 3 > (d.h. IP). ARP hat damit nichts zu tun und ist Bestandteil von Schicht 2 > (welches der Zuordnung von MAC-Adressen zu IP-Adressen dient). DNS und > BIND haben damit absolut nichts zu tun. Die dienen zur Namensauflösung > und sind i.d.R. nur Komfort. Ich stimme kanasta zu. Hier würde ich als Anfänger eben nicht anfangen, von oben nach unten (im OSI Modell) ist meiner Meinung nach einfacher als von unten nach oben. mfg Andreas
Natuerlich braucht man ARP, DNS und dergleichen wenn man email implementieren will. Erst man muss man sich beim naechsten Router anmelden. Dann muss man den Namen des SMTP Servers aufloesen. Und erst dann kann eine email lossenden. Schoen wenn ein Stack das macht, aber wenn nicht, dann eben nicht. Aeh ja. Mit einem Mega8 macht man's nicht.
Morz Kerl schrieb: > Mit einem Mega8 macht man's nicht. Dafür mit einem Mega32. Morz Kerl schrieb: > Erst man muss man sich beim naechsten Router anmelden. P.S.:Es gibt auch "statische" IPs. Ist doch alles alte Hose. Gibt es längst. Schauen die Stümper hier: http://home.arcor.de/fuenfundachtzig/me/me.htm Ich finde es immer wieder belustigend, wie Anfänger Anfänger davor warnen, wie kompliziert und unüberschaubar alles ist. Natürlich muss man nicht bücherweise RFCs wälzen, um eine einfache Mail abzusetzen. Auch haben RFCs und Spam-Filter nix miteinander zu tun. Und dass das Greenhorn den TCP-Stack nicht selbst schreiben wird, ist doch wohl auch allen klar. Dafür gibt es doch die generische und allseits beliebte CopyPaste-Programmiersprache. @Karol Babioch: http://www.ceseros.de/wer-wir-sind peinlich, peinlich.
.... schrieb: > 3 riesen themengebiete in einem schlag... ob das eine gute idee ist? Naja, wenn man sich bereits in der AVR-Welt zurechtgefunden hat, ist das AVR NetIO von Pollin kombiniert mit z.B. Ulrich Radigs Firmware eine ganz interessante Sache. Mich hat es fasziniert, wie man mit solch begrenzten Ressourcen einen kleinen Webserver aufziehen kann. Alles was man wissen muß gibt es ja hier http://www.mikrocontroller.net/articles/AVR_Net-IO_Bausatz_von_Pollin Servus Michael
Kan asta schrieb: > Nunja, einen SMTP-Header. Da hast du Recht. Nein. nicht einen, sondern eine Vielzahl solcher. Hast du dir denn überhaupt schon einmal den "Quellcode" einer E-Mail angesehen. Sofern diese über richtig konfigurierte E-Mailserver geleitet werden soll, bedarf es schon ein wenig mehr als das was du im Screenshot gezeigt hast. Gerade mit Kodierung, Anhängen und derlei Lustigkeiten wird es "interessant". Kan asta schrieb: > Wenn du TCP selbst bauen willst, wirst du auch TCP/IP-Header finden. Wobei da schon ein beträchtlicher Unterschied besteht. TCP/IP Header sind "binär" und verhältnismäßig kurz. SMTP-Header liegen in Textform vor und können fast beliebig komplex werden. Andreas B. schrieb: > Solange der Text 7bit ASCII und keine Ahänge etc. beinhaltet halten sich > die Encodingprobleme in Grenzen, und etwas anderes würde ich als > Anfänger garnicht erst versuchen. Ich würde als Anfänger nicht einmal das versuchen. Wozu auch ;). Andreas B. schrieb: > Hier würde ich als Anfänger eben nicht anfangen, von oben nach unten (im > OSI Modell) ist meiner Meinung nach einfacher als von unten nach oben. Keine Ahnung, ob das wirklich einfacher ist. Klassischerweise macht man es eben von unten nach oben (d.h. von Schicht 1 an aufwärts). Das hat halt den Vorteil, dass man sich in den "oberen" Schichten auf die unteren "verlassen" kann, da man diese bereits kennt. Das macht es vielleicht einfacher das "große Ganze" zu überblicken. Ansonsten müsste man ja stets sagen, dass sich da untere Schichten drum kümmern, ohne diese bereits zu kennen. Wenn man sich mit diesen dann befasst, hat man unter Umständen das Problem, dass man vielleicht den Überblick verloren hat. Morz Kerl schrieb: > Natuerlich braucht man ARP, DNS und dergleichen wenn man email > implementieren will. Es ging konkret um das Routing. Der Satz oben ist so formuliert, als ob ARP und DNS etwas mit dem Routing zu zu hätten. Das haben sie aber definitiv nicht. Und was BIND mit dem Ganzen zu tun hat, weiß ich auch nicht. BIND ist eine konkrete Implementierung eines DNS-Servers. Wir haben bisher nur von Protokollen bzw. abstrakten Konzepten gesprochen. Kan asta schrieb: > Ich finde es immer wieder belustigend, wie Anfänger Anfänger davor > warnen, wie kompliziert und unüberschaubar alles ist. Das sagst natürlich du als Profi, der schon alles mindestens zweimal implementiert hat? Kan asta schrieb: > Auch haben RFCs und Spam-Filter nix miteinander zu tun. Das lässt mich wiederum daran zweifeln, ob du schon je etwas in dieser Richtung implementiert hast. Ein jeder moderne Spamfilter (bzw. sogar Mailserver, welcher die E-Mail dann gar nicht erst annimmt) wird nämlich die E-Mail darauf prüfen, ob sie den gängigen RFCs entspricht, da man in der Vergangenheit beobachtet hat, dass diejenigen, die viel Spam verschicken i.d.R. eben keine Lust haben sich durch diese zu "wälzen". Das fängt mit einfachen Datums- und E-Mailangaben an, und zieht sich durch den Rest der Header. Kan asta schrieb: > @Karol Babioch: > http://www.ceseros.de/wer-wir-sind > peinlich, peinlich. Ich nehme an, dass man es als eine Form der Anerkennung ansehen kann, wenn man sein Gegenüber "googlet" ;). Und zu o.g. Seite kann ich nur soviel sagen: Meine Idee war es nicht ;).
Karol Babioch schrieb: > Gerade mit Kodierung, Anhängen und derlei Lustigkeiten wird es > "interessant". Natürlich, der Anfänger will mit seinem Mikrocontroller lange BASE64-Passagen mit mehreren gechunkten Bilddateien übertragen. Karol Babioch schrieb: > Ich würde als Anfänger nicht einmal das versuchen. Aber hauptsache mitreden. Karol Babioch schrieb: > Es ging konkret um das Routing. Der TO will keinen Router bauen. Karol Babioch schrieb: > Das sagst natürlich du als Profi, der schon alles mindestens zweimal > implementiert hat? Einmal reicht. Karol Babioch schrieb: > Ein jeder moderne Spamfilter (bzw. sogar > Mailserver, welcher die E-Mail dann gar nicht erst annimmt) wird nämlich > die E-Mail darauf prüfen, ob sie den gängigen RFCs entspricht Natürlich, mit formaler Verifikation und Induktion. Karol Babioch schrieb: > eine Idee war es nicht ;). Würd ich jetzt auch so sagen, wenn ich in diesem Affen- ähh Appzirkus drinstecken würde.
Kan asta schrieb: > Natürlich, der Anfänger will mit seinem Mikrocontroller lange > BASE64-Passagen mit mehreren gechunkten Bilddateien übertragen. Das sollte nur einen Ausblick darüber verschaffen, dass es schnell "kompliziert" wird. Kan asta schrieb: > Aber hauptsache mitreden. Entgegen deiner Einschätzung bilde ich mir ein, durchaus mitreden zu können. Lass das vielleicht andere entscheiden. Kan asta schrieb: > Der TO will keinen Router bauen. Der TO hat aber nach den Grundlagen des Internets gefragt. Router gehören da sicherlich mit dazu. Außerdem hast du das natürlich wunderschön aus dem Kontext gerissen. "Morz Kerl" hatte ARP und DNS (bzw. BIND) mit dem Routing in Verbindung gebracht. Ich habe ihn lediglich darauf hingewiesen, dass das falsch ist. Kan asta schrieb: > Einmal reicht. Dem setze ich das folgende Zitat entgegen: "Plan to throw one away; you will, anyhow." Kan asta schrieb: > Natürlich, mit formaler Verifikation und Induktion. Das du versucht das jetzt ins Lächerliche zu ziehen, soll zeigen, dass ich recht habe, oder wie ;)? Kan asta schrieb: > Würd ich jetzt auch so sagen, wenn ich in diesem Affen- ähh Appzirkus > drinstecken würde. Interessant, dass du dich so auf die persönliche Schiene verbissen hast: Fehlen dir die Argumente?
Wozu braucht ein Vollprofi wie ich Argumente? Wieso rede ich überhaupt noch mit dir? wieso hast du keine Ahnung? Fragen über Fragen...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.