Forum: PC Hard- und Software Wieso ist TCP full-duplex?


von Thomas F. (thomas-hn) Benutzerseite


Lesenswert?

Hallo,

ich setze mich momentan mit TCP (Transmission Control Protocol) 
auseinander. Nun steht in den RFCs (793 und 1323), dass TCP full-duplex 
ist.
Das will ich jedoch so nicht glauben, denn zum Beispiel im Ethernet kann 
zu jedem Zeitpunkt doch immer nur ein Paket übertragen werden. Somit 
kann auch TCP nicht gleichzeitig senden und empfangen, oder?!?!

Kann mir da bitte jemand auf die Sprünge helfen?

Danke,

Thomas

von Timo (Gast)


Lesenswert?

Hat Ethernet (mit Twisted Pair Kabeln) nicht vier Leitungen? Ein Paar 
für TX, das andere für RX? Dann ist es doch kein Problem.

von Andre F (Gast)


Lesenswert?

TCP hat erstmal nichts mit Ethernet zu tun.
Möglich wäre z.B. auch eine übertragung per Avian Carrier (gibt's sogar 
ne RFC zu) Siehe: http://de.wikipedia.org/wiki/IPoAC. Also völlig ohne 
Ethernet.

von Thomas F. (thomas-hn) Benutzerseite


Lesenswert?

Ja, ob wir da nun Ethernet oder sonstwas als darunterliegende Schicht 
haben. Die Frage ob TCP full-duplex ist wäre aber immer noch zu klären.

Überigens: Ich glaube auch nicht, dass "Avian Carrier" full-duplex 
arbeiten kann ;-)

von A.K. (Gast)


Lesenswert?

> Die Frage ob TCP full-duplex ist wäre aber immer noch zu klären.

Es ist. Aus Sicht des Programmierers. Was die Netzwerktransportschicht 
daraus macht, steht auf einem anderen Blatt.

Im Übrigen ist Ethernet schon seit geraumer Zeit full duplex. Nämlich 
seit man Ethernet-Switches statt Hubs verwendet. Nur im 
Microcontroller-Sektor hält sich half duplex standhaft, weil sich die 
Leute alle zu fein sind, das entsprechende Protokoll zwischen Adapter 
und Switch zu implementieren und ein nicht konfigurierbarer Switch daher 
auf half duplex entscheidet.

von noname (Gast)


Lesenswert?

Du hast wie schon oben gesagt 2 Adernpaare, die gleichzeitig senden und 
empfangen können und zwei Buffer: TX, RX.

Ethernet ist im Gegensatz zu ATM asynchron, so können Datenpakete über 
verschiedene Routen (in der praxis wohl kaum gegeben) ankommen und somit 
mit verschiedenen Laufzeiten, jedoch wie schon oben gesagt in beide 
Richtungen gleichzeitig.

4 Leitungen machen aber eine fullduplex Verbindung aus.
Wie z.B: rs482 mit 2 Adern -> half duplex
         rs422 mit 4 Adern -> full duplex

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

noname wrote:
> Ethernet ist im Gegensatz zu ATM asynchron, so können Datenpakete über
> verschiedene Routen (in der praxis wohl kaum gegeben) ankommen

Ethernet macht kein Routing, das passiert erst auf Layer 3 (IP).

Ob die Reihenfolge der Pakete verändert werden kann, hängt vom 
Routingverfahren ab (Virtueller Kanal (ATM) vs. Paketvermittlung (IP)).

von Markus (Gast)


Lesenswert?

> Ethernet macht kein Routing, das passiert erst auf Layer 3 (IP).

Na doch, wie sollen sonst Switche funktionieren?

Markus

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Ein Ethernet-Switch ist eine Bridge, kein Router. Siehe z.B.: 
http://www.erg.abdn.ac.uk/users/gorry/course/lan-pages/bridge.html

von Markus (Gast)


Lesenswert?

> Ein Ethernet-Switch ist eine Bridge, kein Router.

Wenn man den Begriff "Routing" exklusiv für Layer-3 Geräte verwenden 
möchte, dann hast Du natürlich recht. Wenn man unter "Routing" aber ganz 
allgemein  die Wegfindung von Paketen versteht, dann trifft das sehr 
wohl auch auf Switches zu.

Wie sollte die Wegfindung auf Layer2 auch sonst heißen? Das Paket wurde 
über 5 Geräte hinweg zum Ziel geswitched?

Markus

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Markus wrote:
>> Ein Ethernet-Switch ist eine Bridge, kein Router.
>
> Wenn man den Begriff "Routing" exklusiv für Layer-3 Geräte verwenden
> möchte, dann hast Du natürlich recht.

So ist das nun mal definiert.

> Wenn man unter "Routing" aber ganz
> allgemein  die Wegfindung von Paketen versteht, dann trifft das sehr
> wohl auch auf Switches zu.

Eine Bridge hat keine Ahnung von der Netztopologie und kennt keine 
Routen, sie weiss einfach nur: Geraet A ist an Port 1, Geraet B ist an 
Port 2, also muss ich ein Paket das an Geraet B adressiert ist an Port 2 
ausgeben.

> Wie sollte die Wegfindung auf Layer2 auch sonst heißen? Das Paket wurde
> über 5 Geräte hinweg zum Ziel geswitched?

Wie waer's mit "weitergeleitet"?

von Markus (Gast)


Lesenswert?

> Eine Bridge hat keine Ahnung von der Netztopologie

Doch, tut sie (Spanning Tree Protokoll), aber das wird nur dazu benutzt, 
Schleifen zu erkennen und die entsprechenden Ports abzuschalten, nicht 
um den Durchsatz zu erhöhen.

Ich kann hier auch den Unterschied zwischen einem kleinen Router ohne 
Routingprotokolle und einem Switch nicht so wirklich sehen. Der Router 
weiß halt, alles an Gruppe (Netz) A muss an Port A und alles an Gruppe B 
muss an Port B, während der Switch eben nicht mit Gruppen, sondern mit 
einzelnen Geräten arbeitet.

Um aber zur Ausgangsfrage zurückzukommen: Es gibt beim Ethernet 
normalerweise keine alternativen Wege, deswegen sollten sich Pakete auch 
nicht überholen können. Es gibt aber Switche, die Kanalbündelung 
beherrschen. Ich weiß nicht, ob die die Pakete zwingend in 
Originalreihenfolge auf der Gegenseite ankommen müssen.

Markus

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.