Gibt es eine spezifische Berechnung, die durchgeführt wurde, um zu dieser Zahl zu gelangen, und welche Faktoren wurden für diese Berechnung berücksichtigt?
Gibt es eine spezifische Berechnung, die durchgeführt wurde, um zu dieser Zahl zu gelangen, und welche Faktoren wurden für diese Berechnung berücksichtigt?
Antworten:
Die Antwort ist im Entwurf-ietf-isis-ext-eth-01 , Abschnitte 3-5. Ethernet verwendet dieselben zwei Bytes auf unterschiedliche Weise in den Ethernet II (DIX) - und 802.3-Kapselungen:
Ich füge ein kommentiertes Diagramm unter jedem Rahmentyp hinzu, das genau zeigt, wo sich die widersprüchlichen Bytes im Ethernet-Header befinden:
RFC 894 (allgemein als Ethernet II-Frames bezeichnet) verwendet diese Bytes für Type
+----+----+------+------+-----+
| DA | SA | Type | Data | FCS |
+----+----+------+------+-----+
^^^^^^^^
DA Destination MAC Address (6 bytes)
SA Source MAC Address (6 bytes)
Type Protocol Type (2 bytes: >= 0x0600 or 1536 decimal) <---
Data Protocol Data (46 - 1500 bytes)
FCS Frame Checksum (4 bytes)
IEEE 802.3 mit 802.2 LLC / SNAP (verwendet von Spanning-Tree, ISIS) verwendet diese Bytes für die Länge
+----+----+------+------+-----+
| DA | SA | Len | Data | FCS |
+----+----+------+------+-----+
^^^^^^^^
DA Destination MAC Address (6 bytes)
SA Source MAC Address (6 bytes)
Len Length of Data field (2 bytes: <= 0x05DC or 1500 decimal) <---
Data Protocol Data (46 - 1500 bytes)
FCS Frame Checksum (4 bytes)
Sowohl Ethernet II- als auch 802.3-Kapselungen müssen auf derselben Verbindung vorhanden sein. Wenn IEEE zulässt, dass Ethernet-Nutzdaten 1536 Byte (0x600 hex) überschreiten, ist es unmöglich, große 802.3 LLC- oder SNAP-Frames von Ethernet II-Frames zu unterscheiden. Die Werte für den Typ des Ethernets beginnen bei 0x600 hex.
BEARBEITEN:
Ich füge einen Link zu PDF-Kopien der Ethernet-Version 1-Spezifikation und der Ethernet-Version 2-Spezifikation hinzu , falls jemand interessiert ist ...
0x600
eine Nummer kleiner gewählt werden. Damit der Standard nicht weiter erweitert werden konnte, musste im Bedarfsfall noch ein Band verfügbar sein.
Am anderen Ende des Bereichs - 1500 Byte - gab es zwei Faktoren, die zur Einführung dieses Grenzwerts führten. Erstens, wenn die Pakete zu lang sind, führen sie über das Ethernet-Kabel zu zusätzlichen Verzögerungen für anderen Datenverkehr. Der andere Faktor war eine Sicherheitsvorrichtung, die in die frühen gemeinsam genutzten Kabeltransceiver eingebaut war. Diese Sicherheitsvorrichtung war ein Anti-Babble-System.Wenn das an einen Transceiver angeschlossene Gerät einen Fehler aufweist und mit der kontinuierlichen Übertragung beginnt, wird die Verwendung dieses Ethernet-Kabelsegments durch anderen Verkehr effektiv blockiert. Um dies zu verhindern, wurden die frühen Transceiver so konzipiert, dass sie sich automatisch abschalten, wenn die Übertragung etwa 1,25 Millisekunden überschreitet. Dies entspricht einem Dateninhalt von etwas mehr als 1500 Bytes. Da der Transceiver jedoch einen einfachen analogen Timer verwendete, um die Übertragung zu unterbrechen, wenn ein Geplapper festgestellt wurde, wurde die Grenze von 1500 als sichere Annäherung an die maximale Datengröße gewählt, die die Sicherheitseinrichtung nicht auslösen würde.
Quelle: http://answers.yahoo.com/question/index?qid=20120729102755AAn89M1
Als Ethernet ursprünglich als gemeinsames Medium oder Bus mit 10Base5 und 10Base2 entwickelt wurde, kam es häufig zu Frame-Kollisionen, die als Teil des Designs erwartet wurden. Im Gegensatz zu heute, wo fast alles mit separaten Kollisionsdomänen geschaltet wird und Vollduplex ausgeführt wird, bei dem niemand erwartet, Kollisionen zu sehen.
Der Mechanismus zum Teilen des "Ethers" verwendete CMSA / CD (Carrier Sense Multiple Access / Collision Detection)
Carrier Sense bedeutete, dass ein Sender, der senden möchte, die Leitung abhören muss - das Trägersignal abfühlen -, um sicherzustellen, dass niemand anderes spricht, da es sich auf diesem Medium um einen Mehrfachzugriff handelt. Allowing 1500 bytes (though an arbitrary number as far as I can tell) was a compromise that meant a station could not capitalize the wire too long by talking too much at one time.
Je mehr Bytes in einem Frame übertragen werden, desto länger müssen alle anderen Stationen warten, bis diese Übertragung abgeschlossen ist. Mit anderen Worten, kürzere Bursts oder kleinere MTUs bedeuteten, dass andere Sender mehr Übertragungsmöglichkeiten und einen faireren Anteil hatten. Je langsamer die Rate des Übertragungsmediums (10 Mbit / s) ist, desto länger würde die Übertragungsverzögerung dauern, wenn die MTU zunimmt (wenn 1500 überschritten werden dürfen).
Eine interessante Folgefrage wäre, warum die minimale Framegröße von 64 Bytes? Frames wurden in "Slots" übertragen, die 512 Bit umfassen und 51,2 us für die Umlaufsignalausbreitung im Medium benötigten. Ein Sender muss nicht nur hören, wann er mit dem Sprechen beginnen soll, indem er die IFG (Interframe Gap von 96 Bit) abtastet, sondern auch auf Kollisionen mit anderen Frames achten. Die Kollisionserkennung geht von einer maximalen Ausbreitungsverzögerung aus und verdoppelt diese (aus Sicherheitsgründen), damit keine etwa zeitgleich beginnende Übertragung am anderen Ende des Kabels oder eine Signalreflexion der eigenen Übertragung verpasst wird, wenn jemand den Abschlusswiderstand am hat Kabelenden. Die Station darf das Senden ihrer Daten nicht abschließen, bevor eine Kollision erkannt wird. Warten auf 512 Bit oder 64 Byte garantiert dies.
Ursprünglich max. Die Nutzlast wurde in 802.3 als 1500 Byte definiert. Ethernet v2 unterstützt eine Frame-Länge von> = 1536, und dies wird von IP-Implementierungen verwendet. Die meisten Anbieter der Carrier-Klasse unterstützen heutzutage etwa 9000 Bytes ("Jumbo-Frames"). Da 1500 Byte der Standard sind, den alle Ethernet-Implementierungen unterstützen müssen, wird dies normalerweise auf allen Schnittstellen als Standard festgelegt.
Der minimale Ethernet-Frame basiert auf der Ethernet-Slot-Zeit, die 512 Bit (64 Byte) für 10M-Ethernet beträgt. Nach dem Subtrahieren von 18 Bytes für den Ethernet-Header und die CRC erhalten Sie 46 Bytes Nutzlast.
Die Ethernet-Slot-Zeit wurde angegeben, damit CSMA / CD ordnungsgemäß funktioniert. Es ist darauf zu achten, dass die minimale Baugröße die maximal mögliche Kabellänge nicht überschreitet; Andernfalls wäre eine deterministische Kollisionserkennung nicht möglich. Nach der Kollisionserkennung bei maximaler Kabellänge benötigen Sie das Kollisionserkennungssignal, um zum Absender zurückzukehren.