hallo, ich blättere gerade in ältere Buchern herum. Warum, benützt man getsockopt, sowie setsockopt? ok,es ist möglich die Quell-Route zuändern. Welchen Vorteil habe ich? Ich verstehe den Sinn nicht? Ist der Befehl noch zeitgemäss?
IP-Optionen...
![]() Anmeldungsdatum: Beiträge: 205 |
|
Projektleitung
Anmeldungsdatum: Beiträge: 12527 |
Im Stevens?
Bei dem "Befehl" handelt es sich um einen Systemaufruf, also eine Funktion, die man aus C-Code heraus aufruft. Das müsste da doch erwähnt sein. Man tut das, um eine ganze Reihe von Eigenschaften eines Sockets konfigurieren zu können, die Auswirkungen darauf haben, wie die Daten über diesen Socket empfangen und versendet werden. Bestimmte Klassen von Anwendungen haben spezielle Anforderungen, die man so erfüllen kann: in manchen Fällen ist geringe Latenz wichtig, in anderen hoher Durchsatz usw. |
(Themenstarter)
![]() Anmeldungsdatum: Beiträge: 205 |
danke, ja Stevens von 1998, woher weist du das ? Es ist alles richtig was du sagst, vielleicht habe ich meine Frage falsch gestellt. Laut wiki werden diese Packete von den heutigen Router verworfen, simmt das ?! Ich denke Stevens konnte nicht wissen was in 15 Jahren aktuell ist. Wie meinst du das mit hohem Durchsatz? Meinst du dass das Programm später schneller stabiler läuft um bestimmte umwege zu umgehen? Oder geht es in Richtig hacking? |
Projektleitung
Anmeldungsdatum: Beiträge: 12527 |
Tjaha... Um TL hier zu werden muss man übersinnliche Fähigkeiten haben. 😉 Im Ernst: ich vermisse mein Exemplar schon seit Ewigkeiten, und irgendwo musste es ja sein...
Ich fürchte, irgendein böses Missverständnis spukt da in Deinem Kopf herum, was es Dir jetzt schwer macht, die Sache zu verstehen. Wenn Du sagst "Es ist alles richtig was du sagst", gehe ich davon aus, dass Du die Sache verstanden hast, aber der Rest Deiner Antwort lässt da Zweifel aufkommen:
Was meinst Du mit "diesen Paketen"? Es geht bei dem Systemaufruf um Konfigurationseinstellungen des Sockets.
Alle IT-Gurus haben übersinnliche Fähigkeiten! 😉
Ich meine Durchsatz und Latenz der Netzwerkkommunikation. Vielleicht bringt es mehr, wenn Du das Buch von Beginn an liest. Wenn ich mich richtig erinnere, gibt es da einige einführende Kapitel. Ggf. hilft auch eine Suche, die z.B. so etwas (PDF) findet. Die Wikipedia hat auch eine schöne Beschreibung des Ablaufs der Socket-Kommunikation. |
(Themenstarter)
![]() Anmeldungsdatum: Beiträge: 205 |
thx, nein ☺ Ich habe das Buch von Anfang an gelesen. Ein Beispiel: Ich installiere ein Client bei mir und einen Server bei meinem Nachbar. Im Normalfall geht das Datenpaket über Frankfurt Russland, Budapest, Stuttgart. Der Server gibt aus: Frankfurt Russland, Budapest, Stuttgart. Ich modifiziere mein Datenpaket, und dann? Kann ich das Paket direkt nach Stuttgart schicken? Vielleicht mache ich einen Denkfehler ☹ Laut wiki:Die meisten Router verwerfen solchen Datenpakete, link finde ich nicht mehr. |
Projektleitung
Anmeldungsdatum: Beiträge: 12527 |
Initial berichtetest Du "ich blättere gerade in ältere Buchern herum", deshalb der Vorschlag.
Du wirfst Socket-Optionen durcheinander mit Veränderungen an Paketen. Das Routing und der Aufbau der Pakete passieren auf einer ganz anderen Ebene als die Socket-API. Lies mal etwas über das "OSI 7 Schichten-Modell".
Das ist schlecht. Ich kann und will Dir hier nicht die Grundlagen von Netzwerken erklären. Dafür gibt es reichlich Inhalte im Netz. Du musst nur mal danach suchen. |
Anmeldungsdatum: Beiträge: 243 |
setsockopt ist definitv noch zeitgemäß. Abgesehen vom (in meinen Augen) Spezialfall des direkten Setzens von IP_OPTIONS (und damit der Möglichkeit Source Routing Optionen zu setzen) ist setsockopt im Rahmen des Berkeley Socket API essentiell z.B. für
Wenn die entsprechenden Manpages installiert sind, sollten zum Einstieg "man 7 ip", "man 7 tcp" und "man 7 socket" jeweils im Abschnitt "Socket Options" eine Fülle von möglichen Einstellungen für setsockopt liefern. |
(Themenstarter)
![]() Anmeldungsdatum: Beiträge: 205 |
thx all, ich denke das beste wäre, ich probiere den Code einfach aus. Desweiterm werde ich eure links nachgehen. |