DE69934124T2 - Verfahren und vorrichtung für wiederversuch, versagen und wiederanlauf einer eingang/ausgangsverbindung in einem computernetz - Google Patents
Verfahren und vorrichtung für wiederversuch, versagen und wiederanlauf einer eingang/ausgangsverbindung in einem computernetz Download PDFInfo
- Publication number
- DE69934124T2 DE69934124T2 DE69934124T DE69934124T DE69934124T2 DE 69934124 T2 DE69934124 T2 DE 69934124T2 DE 69934124 T DE69934124 T DE 69934124T DE 69934124 T DE69934124 T DE 69934124T DE 69934124 T2 DE69934124 T2 DE 69934124T2
- Authority
- DE
- Germany
- Prior art keywords
- packet
- packets
- switch
- received
- point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1621—Group acknowledgement, i.e. the acknowledgement message defining a range of identifiers, e.g. of sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1635—Cumulative acknowledgement, i.e. the acknowledgement message applying to all previous messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1806—Go-back-N protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
- H04L1/1877—Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/188—Time-out mechanisms
- H04L1/1883—Time-out mechanisms using multiple timers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/17—Interaction among intermediate nodes, e.g. hop by hop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/265—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets sent by intermediate network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2876—Pairs of inter-processing entities at each side of the network, e.g. split proxies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/188—Time-out mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0092—Error control systems characterised by the topology of the transmission link
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0092—Error control systems characterised by the topology of the transmission link
- H04L2001/0096—Channel splitting in point-to-point links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/324—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
Description
- HINTERGRUNG DER ERFINDUNG
- Die vorliegende Erfindung betrifft allgemein Verfahren und Vorrichtungen zum Steuern des Datenflusses zwischen Knoten (oder zwei Punkten) in einem Computernetzwerk, und insbesondere ein Verfahren und eine Vorrichtung zum Steuern des Datenflusses zwischen zwei Knoten (oder zwei Punkten) in einem Systemnetz.
- Für die Zwecke dieser Anmeldung wird der Begriff "Knoten" zum Beschreiben entweder eines Ursprungspunktes einer Nachricht oder des Endpunktes einer Nachricht verwendet. Der Begriff "Punkt" wird verwendet, um auf einen vorübergehenden Ort in einer Übermittlung zwischen zwei Knoten zu verweisen. Die vorliegende Erfindung umfasst Kommunikationen zwischen entweder einem ersten Knoten und einem zweiten Knoten, einem Knoten und einem Switch, welcher Teil einer Verbindung ist, zwischen einem ersten Switch und einem zweiten Switch, welcher eine Verbindung aufweist, und zwischen einem Switch und einem Knoten.
- Ein existierendes Flusssteuerprotokoll, bekannt als Stopand-Wait-ARQ, übermittelt ein Datenpaket und wartet dann auf eine Bestätigung (ACK), bevor das nächste Paket übermittelt wird. während Datenpakete von einem Punkt zu dem nächsten Punkt durch das Netzwerk fließen, ist die Wartezeit ein Problem. Die Wartezeit ist bedingt durch die große Anzahl von Verbindungen und Switchen in Fabrics, welche das Netzwerk bilden, da jedes Paket von einem Empfangsknoten eine Bestätigung eines erfolgreichen Empfangs erfordert, bevor das nächste Datenpaket von einem Übermittlungsknoten gesendet wird. Folglich gibt es aufgrund der Laufzeit von dem Empfangsknoten zum Erreichen des Übermittlungsknotens eine inhärente Verzögerung.
- Eine Lösung, welche bekannt ist als Go-Back-n-ARQ, verwendet sequentiell nummerierte Pakete, bei welchen in dem Header des das Paket enthaltenden Rahmens eine Sequenznummer versen det wird. In diesem Fall werden mehrere aufeinanderfolgende Pakete ohne ein Warten auf die Zurückgabe der Bestätigung versendet. Gemäß diesem Protokoll akzeptiert der Empfangsknoten die Pakete lediglich in der korrekten Reihenfolge und sendet Anfragenummern (RN) zurück an den Übermittlungsknoten. Die Wirkung einer vergebenen Anfragenummer ist es, sämtliche Pakete vor dem angefragten Paket zu bestätigen, und eine Übermittlung des mit der Anfragenummer verknüpften Paketes anzufordern. Die Go-Back-Nummer n ist ein Parameter, der festlegt, wie viele aufeinanderfolgende Pakete von dem Sender in Abwesenheit einer Anfrage nach einem neuen Paket gesendet werden können. Insbesondere ist der Übermittlungsknoten nicht berechtigt, ein Paket i+n zu senden, bevor i bestätigt worden ist (d.h. bevor i+1 angefragt worden ist). Wenn somit i die zuletzt empfangene Anfrage von dem Empfangsknoten ist, gibt es ein Fenster von n Paketen, die der Sender vor einem Empfang der nächsten Bestätigung senden darf. Wenn bei diesem Protokoll ein Fehler auftritt, muss das gesamte Fenster erneut gesendet werden, da der Empfangsknoten nur die Annahme der Pakete in der Reihenfolge erlaubt. Somit muss das gesamte Fenster erneuet übermittelt werden, auch wenn der Fehler in der Nähe des Endes des Fensters liegt. Dieses Protokoll ist am besten geeignet für Großnetze mit hoher Fehlerwahrscheinlichkeit.
- Bei einer Architektur, die große Datenpakete erlaubt, kann ein unnötiges erneutes Übermitteln überschüssiger Pakete ein signifikantes Effizienzproblem werden. Beispielsweise wäre ein erneutes Übermitteln eines gesamten Fensters von Datenpaketen, jedes in der Größenordnung von 4 Gigabyte, relativ ineffizient.
- Andere bekannte Flusssteuerprotokolle erfordern ein nochmaliges Übermitteln lediglich der fehlerhaft empfangenen Pakete. Dieses verlangt von dem Empfänger, einen Puffer der korrekt empfangenen Pakete zu halten, und diese bei erfolgreichem Empfang des neu übermittelten Paketes umzusortieren. Während die Bandbreiteanforderungen minimal gehalten werden, verkom pliziert dieses Protokoll, verglichen mit dem von Go-Back-n-ARQ, das Empfängerdesign erheblich.
- Weitere Beispiele von bekannten Anordnungen sind in
EP 0 186 343 undGB 2 229 896 A - Die vorliegende Erfindung ist daher auf das Problem des Entwickeln eines Verfahrens und einer Vorrichtung zum Steuern des Datenflusses zwischen Knoten in einem Systemnetz gerichtet, das bzw. die die Effizienz der Kommunikation erhöht, ohne die Bearbeitung bei dem Empfangsknoten übermäßig zu verkomplizieren.
- ZUSAMMENFASSUNG DER ERFIDNUNG
- Die vorliegende Erfindung stellt ein Verfahren zum Übermitteln von Daten in einem Netzwerk von einem Quellknoten zu einem Zielknoten bereit. Gemäß dem Verfahren der vorliegenden Erfindung werden Datenpakete von dem Quellknoten zu zumindest einem Zwischenpunkt übermittelt. Jedem der Pakete wird von dem Quellknoten eine entsprechende Sequenznummer zugeordnet. Eine Kopie des Paketes wird bei dem Quellknoten in einem Puffer gehalten, bis eine Bestätigung erhalten wird, das das Paket von einem Zwischenpunkt erfolgreich empfangen wurde. Bei dem Zwischenpunkt wird jedem von dem Zwischenpunkt empfangenen Paket eine Zwischenpunkt-Sequenznummer zugeordnet.
- Die vorliegende Erfindung stellt eine Vorrichtung zum Kommunizieren von Daten zwischen zwei Verbindungen eines aus einer Mehrzahl von Verbindungen bestehenden Fabric's bereit. Die Vorrichtung umfasst zwei Switche und einen Puffer. Der erste Switch ist bei einem ersten Punkt einer Verbindung angeordnet und übermittelt die Datenpakete von dem ersten Punkt bei der Verbindung zu einem zweiten Punkt bei der Verbindung. Der erste Switch ordnet den Paketen erste Punkt-Sequenznummern zu, wobei die ersten Punkt-Sequenznummern von den von einer Quelle der Pakete zugeordneten Quell-Sequenznummern unabhängig sind. Der Puffer ist bei dem ersten Punkt angeordnet und ist mit dem ersten Switch gekoppelt und speichert jedes Paket, bis entweder eine Bestätigung, dass das Paket erfolgreich empfangen wurde, oder eine Fehleranzeige, das eine empfange Version des Paketes zumindest einen Fehler aufweist, empfangen wird. Der zweite Switch ist bei dem zweiten Punkt angeordnet, und empfängt jedes der übermittelten Datenpakete, und sendet nach Empfang eines fehlerfreien Paketes eine Bestätigung, um einen erfolgreichen Empfang des fehlerfreien Paketes und sämtlicher Pakete in der Sequenz zwischen einem letzten bestätigten Paket und dem fehlerfreien Paket anzuzeigen. Der zweite Switch ordnet sämtlichen empfangenen Paketen ferner eine zweite Punkt-Sequenznummer zu, wobei die zweiten Punkt-Sequenznummern unabhängig von den ersten Punkt-Sequenznummern sind.
- KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 zeigt eine gesamte NG-I/O-Verbindungsarchitektur gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. -
2 ist ein Blockdiagramm einer NG-I/O-Architektur für einen I/O-Pass-through gemäß einem beispielhaften Ausführungsbeispiel der vorliegenden Erfindung. -
3 veranschaulicht den punktbasierten Protokollbetrieb gemäß der vorliegenden Erfindung. -
4 veranschaulicht den punktbasierten Protokollbetrieb mit mehreren Knoten gemäß der Erfindung. - DETAILLIERTE BESCHREIBUNG
- Architektonischer Überblick
- Next Generation Input/Output(NG I/O)-Architektur ist ein allgemeiner Begriff, um Systeme zu beschreiben, die auf den Konzepten von NG I/O beruhen, und die ein NG I/O-Fabric verwenden. Das NG I/O-Fabric ist die Menge von Drähten und Switchen, die es zwei NG I/O-Einrichtungen ermöglicht, zu kommunizieren. Das NG I/O-Fabric ist eine Standardschnittstelle, die zum Verbinden von Server-Knoten in einem Cluster und zum Verbinden verschiedener I/O-Einrichtungen, wie beispielsweise Speichereinrichtungen, Bridges und Netzwerkschnittstellen, gestaltet ist. Ein oder mehrere NG I/O-"Switche", zusammen mit einer Reihe von Verbindungen, bilden ein "Fabric".
- Eine NG I/O-Verbindung umfasst die Drähte, die zum Verbinden von zwei Punkten verwendet werden, und das zugehörige Pro tokoll, das über diese Drähte läuft. Ein I/O-Pass-through ist ein Verfahren zum Verbinden von I/O-Einrichtungen mit einem Computerknoten, oder zum Verbinden von zwei Computerknoten miteinander, basierend auf Laden/Speichern-Speichertransaktionen. Eine auf einem I/O-Pass-through basierende Zwischenverbindung ist für die Einheiten bei beiden Enden der Zwischenverbindung transparent. NG I/O (physical) ist eine minimale Menge von Drähten und das Protokoll, das auf der Verbindung läuft, die zwei Einheiten verbindet. Beispielsweise stellen die Drähte und das einen Computerknoten mit einem Switch verbindende Protokoll eine Verbindung dar. NG I/O-bundled bezieht sich auf die Fähigkeit, zwei oder mehr NG I/O-Verbindungen parallel miteinander zu verbinden. Solche gebündelten Verbindungen können zum Erhalten einer erhöhten Bandbreite oder zum Verbessern der Gesamtzuverlässigkeit einer bestimmten Verbindung dienen. Gemäß der vorliegenden Erfindung ist ein Switch definiert als eine beliebige Einrichtung, die in der Lage ist, Pakete (auch bezeichnet als I/O-Pakete) über einen oder mehrere Ports zu empfangen und diese Pakete über einen anderen Port, basierend auf einer in dem Paket enthaltenen Zieladresse, erneut zu übermitteln. Mit Netzwerkbegriffen beschrieben, arbeitet ein Switch üblicherweise auf der Datenverbindungsschicht der Open Systems Interconnection (OSI).
-
1 veranschaulicht die NG I/O-Gesamtverbindungsarchitektur gemäß einem beispielhaften Ausführungsbeispiel der vorliegenden Erfindung. Die NG I/O-Gesamtverbindungsarchitektur kann als einen oder mehrere Computer210 (beispielsweise Server, Workstations, Personal-Computer oder ähnliches), einschließlich von Computer210A und210B , umfassend dargestellt werden. Die Computer210 kommunizieren miteinander über ein geschaltetes NG I/O-Fabric, das eine Schichtarchitektur aufweisen kann, einschließlich einer Netzsteuerungsschicht212 , einer Datenverbindungsschicht214 und einer Bitübertragungsschicht216 . Ein NG I/O-Switch220 (beispielsweise eine Datenverbindungsschicht und eine Bitübertragungsschicht aufweisend) verbindet die Computer210A und210B . Jeder Computer210 kann unter Verwendung von beispielsweise einer erfindungsgemäßen I/O-Pass-trhrough-Technik226 , welche detaillierter nachfolgend beschrieben wird, über das NG I/O-Fabric mit einer oder mehreren I/O-Einrichtungen224 (224A und224B ) kommunizieren. Jeder Computer210 kann unter alternativer Verwendung einer distributed-message-passing-Technik (DMP)227 mit einer oder mehreren I/O-Einrichtungen224 (224A und224B ) kommunizieren. Folglich können I/O-Einrichtungen224 entfernt von jedem Computer210 angeordnet sein. -
2 ist ein Blockdiagramm einer NG I/O-Architektur für einen I/O-Pass-through gemäß einem Ausführungsbeispiel der vorliegenden Erfindung. Die NG I/O-Architektur umfasst einen Computer310 und einen Computer360 , wobei jeder von diesen ein Server, eine Workstation, ein Personal-Computer (PC) oder ein anderer Computer sein kann. Die Computer310 und360 arbeiten als Host-Einrichtungen. Die Computer310 und360 sind jeweils über ein geschaltetes NG I/O-Fabric328 , einschließlich einer oder mehreren NG I/O-Verbindungen (beispielsweise NG I/O-Verbindungen330A ,330B ,330C ,330D ), mit I/O-Systemen318A und318B verbunden. Die I/O-Systeme318 können entfernt von den Computern310 und360 angeordnet sein. - Der Computer
310 umfasst einen CPU/Speicher-Komplex312 (einschließlich eines CPU und eines Hauptspeichers, die üblicherweise über einen nicht gezeigten Host-Bus verbunden sind), eine NG I/O-Host-Bridge314 , einen sekundären Speicher315 (wie beispielsweise ein Festplattenspeicher) und eine Netzwerksteuereinrichtung316 . Bei ausgehenden Transaktionen (beispielsweise von dem Computer310 an das I/O-System318 gesendete Informationen) verpackt die NG I/O-Host-Bridge314 die Host-Transaktion zur Übermittlung über das NG I/O-Fabric328 in ein NG I/O-Paket. Bei eingehenden Transaktionen (beispielsweise von einem I/O-System318 an den Computer310 gesendeten Informationen) entpackt die NG I/O-Host-Bridge314 die Daten (beispielsweise die PCI-Transaktion), die über das Fabric328 in einem NG I/O-Paket bereitgestellt wurden, und konvertiert die entpackten Daten (beispielsweise die PCI-Transaktion) dann in eine Host-Transaktion. Wie Computer310 umfasst der Computer360 einen CPU/Speicher-Komplex362 , eine NG I/O-Host-Bridge364 , einen sekundären Speicher365 und eine Netzwerksteuereinrichtung366 . Der Computer360 arbeitet auf die gleiche Weise wie der Computer310 . - Jedes I/O-System
318 umfasst eine NG I/O-zu-PCI-Bridge320 , eine PCI-Speichersteuereinrichtung324 , die über einen PCI-Bus322 mit der NG I/O-zu-PCI-Bridge320 gekoppelt ist, und eine oder mehrere I/O-Einrichtungen326 (wie in2 dargestellt, identifiziert das Suffix A Komponenten für I/O-System318A und das Suffix B kennzeichnet entsprechende Komponenten von I/O-System318B ). Bei ausgehenden Transaktionen entpackt die NG I/O-zu-PCI-Bridge320 die Daten aus einem über das NG I/O-Fabric328 empfangenen NG I/O-Paket und wandelt die entpackten Daten (beispielsweise eine Host-Transaktion oder – Daten) in eine PCI-Transaktion. Bei eingehenden Transaktionen packt die NG I/O-zu-PCI-Bridge320 die PCI-Transaktion zur Übermittlung über das NG I/O-Fabric328 und den Computer310 in ein NG I/O-Paket. - Die PCI-Speichersteuereinrichtung
324 steuert und koordiniert die Übermittlung und Annahme von PCI-Transaktionen zwischen dem PCI-Bus322 und I/O-Einrichtungen326 . Die I/O-Einrichtungen326 können beispielsweise eine SCSI-Speichereinrichtung oder eine andere I/O-Einrichtung umfassen. - Während das erfindungsgemäße, in
2 dargestellte Ausführungsbeispiel der NG I/O-Architektur eine NG I/O-zu-PCI-Bridge320 umfasst, ist für den Fachmann verständlich, dass andere Arten von Brücken verwendet werden können. Beispielsweise kann, allgemein gesprochen, die Bridge320 als eine "Netzwerk zur Peripherie-Bridge" zum Konvertieren von Netzwerkpaketen in und aus einem Format, das mit dem Bus322 kompatibel ist, bezeichnet werden (bei dem Bus322 kann es sich um eine breite Vielzahl von I/O- oder Peripherie-Bussen, wie beispielsweise einen PCI-Bus, handeln). Entsprechend kann die PCI-Speichersteuereinrichtung324 allgemein bezeichnet werden als eine "periphere Speichersteuereinrichtung" für eine beliebige von verschiedenen I/O-Einrichtungen. Daher ist die vorliegende Erfindung nicht begrenzt auf PCI-Bridges, sondern vielmehr anwendbar mit einer breiten Vielzahl von anderen I/O- Bussen, wie beispielsweise die Industry Standard Architecture (ISA), Extended Industriy Standard Architecture (EISA), Accelerated Graphics Port (AGP) etc. PCI wird lediglich als ein Beispiel zum Beschreiben der Prinzipien der vorliegenden Erfindung verwendet. Entsprechend kann die NG I/O-zu-Host-Bridge364 allgemein bezeichnet werden als eine "Netzwerk zu Host Bridge", da sie (NG I/O) Netzwerkpakete in und aus einem Host-Format (Host-Transaktionen) konvertiert. -
2 veranschaulicht, dass ein NG I/O-Fabric328 zum Bewegen von Speichereinrichtungen aus dem Server-Gehäuse und Anordnen der Speichereinrichtungen entfernt von dem Computer310 verwendet werden kann. Das Fabric328 kann eine oder mehrere Punkt-zu-Punkt-Verbindungen zwischen dem Computer410 und jedem I/O-System418 umfassen oder kann eine Anzahl von Punktzu-Punkt-Verbindungen, die durch einen oder mehrere Switche verbunden sind, aufweisen. Diese Architektur ermöglicht eine verteiltere Umgebung als zur Zeit verfügbar. - Die vorliegende Erfindung stellt ein einfaches Mittel zum Erzeugen eines Arbeitsnetzwerkes mit einem Flusssteuermechanismus bereit, welcher keinen Datenverlust aufgrund Überlastung und vorübergehender Bitfehler aufgrund von internem oder externem Systemrauschen aufweist. Die vorliegende Erfindung verwendet zur Flusssteuerung einen Ansatz, der keine Ende-zu-Ende- oder Verbindung-zu-Verbindung-Credits benötigt, stattdessen kombiniert die vorliegende Erfindung die Fähigkeit, beschädigte oder Pakete außerhalb der Reihenfolge zu erfassen und beliebige/sämtliche Pakete erneut zu versuchen (erneut zu versenden), um sicherzustellen, dass alle Daten unbeschädigt, und zwar ohne irgendwelche Daten zu verlieren, und in der Reihenfolge, in der die Daten gesendet wurden, geliefert wurden. Dieses wird erreicht, indem eine Sequenznummer zugeordnet wird und für jedes Paket ein 32-Bit-Cyclic Redundancy Check (CRC) berechnet wird und jedes Paket bestätigt (ACK) oder negativ bestätigt (NAK) wird.
- Die vorliegende Erfindung setzt ein Netzwerk aus Punkt-zu-Punkt-Verbindungen voraus. Es wird auf
3 Bezug genommen. Ein Netzwerk10 minimaler Größe umfasst zwei Endpunkte3 und4 , die über ein Fabric15 verbunden sind. Zur Vereinfachung werden die zwei Endpunkte in dem Netzwerk3 und4 als die Quelle bzw. das Ziel bezeichnet, und werden zum Beschreiben der vorliegenden Erfindung verwendet, wobei bemerkt sei, dass die vorliegende Erfindung für ein Netzwerk unbegrenzter Größe geeignet ist. Das Fabric15 umfasst einen Switch13 und Verbindungen8 und9 . Die Verbindung8 verbindet die Quelle mit dem Switch13 und die Verbindung9 verbindet das Ziel mit dem Switch13 . Wie oberhalb angemerkt, arbeitet das NG I/O-Protokoll Punkt-zu-Punkt200 und nicht Ende-zu-Ende100 , wie gezeigt. - Die vorliegende Erfindung setzt eine Sendewarteschlange und eine Empfangswarteschlange bei jedem Endpunkt (d.h. bei der Quelle gibt es eine Sendewarteschlange SE1 und eine Empfangswarteschlange RE1, und bei dem Ziel gibt es eine Sendewarteschlange SE2 und eine Empfangswarteschlange RE2) und eine Sende- und Empfangswarteschlange bei jeder Verbindung-Switch-Verbindung in dem Fabric
13 voraus (d.h. bei der Verbindung-Switch-Verbindung für Verbindung8 gibt es eine Sendewarteschlange X1 und eine Empfangswarteschlange X2 und bei der Verbindung-Switch-Verbindung für Verbindung9 gibt es eine Sendewarteschlange X3 und eine Empfangswarteschlange X4). Die Größe der Sendewarteschlange SE1 muss nicht mit der Größe der Empfangswarteschlange X2 übereinstimmen, noch muss die Sendewarteschlange X1 mit der Größe der Empfangswarteschlange RE1 übereinstimmen. Dies trifft ebenfalls zu für die Sende- und Empfangswarteschlangen zu und von dem Ziel4 und der Verbindung-Switch-Verbindung für die Verbindung9 . Üblicherweise sind Sendewarteschlangen größer als Empfangswarteschlangen (jedoch ist dies für Zwecke der vorliegenden Erfindung nicht erforderlich). Bei diesem Beispiel ist die Größe der Sendewarteschlange RE1 bei der Quelle als S1 definiert, die Größe der Empfangswarteschlange2 bei der Quelle als R1 definiert, die Größe der Sendewarteschlange2 bei dem Ziel als S2 definiert und die Größe der Empfangswarteschlange2 bei dem Ziel als R2 definiert. Darüber hinaus weisen die Sende- und Empfangswarteschlangen X1–X4 als LX1–LX4 definierte Größen auf. - Der Quelle
3 ist es erlaubt, bis zu S1 Pakete an die Empfangswarteschlange X1 bei dem Switch13 zu senden. Bei überlastungsfreien Bedingungen werden die bei Switch13 empfangenen Pakete bearbeitet und unverzüglich an das Ziel4 weitergegeben. Es wird erneut Bezug genommen auf das Beispiel in3 . Der Switch13 muss durch Bestätigen einer Sequenznummer eine Bestätigung (ACK) zurücksenden, die der Quelle anzeigt, dass die Pakete von der Verbindung-Switch-Verbindung für die Verbindung8 korrekt empfangen wurden. Pakete weisen eine einzigartige, von der Verbindung zugeordnete Sequenznummer auf. Bei einer gegebenen Verbindung müssen Pakete in der übermittelten Reihenfolge ankommen. Bei einer gegebenen Verbindung werden Deskriptoren erneut in der Reihenfolge versucht, in der sie eingereiht wurden. Es sei angemerkt, dass als Effizienzsteigerung für diesen Algorithmus der Verbindungs-Switch für Verbindung8 eine Mehrzahl von Paketen zu einer bestimmten Zeit bestätigen kann, indem die höchste korrekt empfangene Sequenznummer bestätigt wird, d.h., wenn z.B. die Quelle3 ein ACK für Paket #9 empfängt, dann eine ACK für Paket #14 empfängt, die Pakete #10–#13 ebenfalls impliziert bestätigt sind. Nachdem der Verbindungs-Switch für Verbindung8 ein ACK sendet, dass die Pakete korrekt gesendet wurden, sendet der Verbindungs-Switch für Switch9 die Pakete an Ziel4 . Das Ziel4 muss an den Verbindungs-Switch für Switch9 eine Bestätigung zurücksenden, dass die Daten korrekt gesendet wurden. Ein neuer Satz von Sequenznummern wird den von dem Verbindungs-Switch für Switch9 an das Ziel gesendeten Paketen zugeordnet. - Transiente Fehler sind Fehler, die auftreten, wenn Pakete von einem Sendeknoten zu einem Empfangsknoten gesendet werden. Im Falle eines transienten Fehlers aufgrund von internem oder externem Systemrauschen können Daten zwischen der Quelle
3 und dem Ziel4 beschädigt werden. Der Empfänger der Pakete muss über die empfangenen Daten die CRC berechnen, und sie mit der an das Ende des Paketes angehängten CRC vergleichen. Wenn die kalkulierte CRC und die empfangene CRC übereinstimmen, wird das Paket bestätigt. Wenn die zwei CRCs nicht übereinstimmen, wird das Paket nicht bestätigt (NAKed), wobei es wiederum durch die Sequenznummer identifiziert wird. Bei Empfang eines NAK muss der Sender das spezifizierte Paket erneut senden, gefolgt von sämtlichen dem Paket folgenden Paketen. Wenn beispielsweise der Sender Pakete bis zu der Sequenznummer16 gesendet hat, jedoch ein NAK für Paket #14 empfängt, muss er Paket #14, gefolgt von Paket #15 und Paket #16, erneut senden. Es sei angemerkt, dass ACKs und NAKs dennoch kombiniert werden können. Es wird auf das Beispiel in dem vorhergehenden Paragraphen Bezug genommen. Wenn Paket9 bestätigt wird, dann wird von den Paketen #10–#13 angenommen, dass sie in Reihenfolge und ohne Datenfehler empfangen wurden, gefolgt von Paket #14 mit beschädigten Daten; ein NAK von Paket #14 zeigt an, dass die Pakete #10–#13 ohne Fehler empfangen wurden, dass aber Paket #14 mit einem Fehler empfangen wurde und erneut gesendet werden muss. -
4 ist ein Blockdiagramm, welche NG I/O-Verbindungen gemäß einem Ausführungsbeispiel der vorliegenden Erfindung darstellt. Ein Fabric400 ist zwischen mit401 ,402 bzw.403 bezeichneten Knoten A, B und C geschaltet. Wie es in4 gezeigt ist, ist eine Verbindung411 zwischen dem Knoten A und dem Fabric400 angeordnet, eine Verbindung412 ist zwischen dem Knoten B und dem Fabric400 angeordnet und eine Verbindung 413 ist zwischen dem Knoten C und dem Fabric400 angeordnet. Jede Verbindung ist ein bidirektionaler Kommunikationsweg zwischen zwei NG I/O-Verbindungspunkten in dem Fabric400 . Wie es in4 gezeigt ist, ist ein unidirektionaler Weg431 von Verbindung411 zwischen einem Ausgangsport422 des Knoten A und einem Eingangsport414 des Fabrics400 geschaltet und ein unidirektionaler weg432 ist geschaltet zwischen dem Eingangsport426 von Knoten A und dem Ausgangsport428 von Fabric400 , wodurch eine bidirektionale Verbindung bereitgestellt wird. - Es wird wieder Bezug genommen auf
4 . Als Beispiel sei angenommen, dass Knoten A und C wünschen, mit Knoten B durch Senden von Datenpaketen zu dem Knoten B zu kommunizieren. Gemäß den Prinzipien der vorliegenden Erfindung kann der Knoten A Pakete #1–#3 über die Verbindung411 an das Fabric400 weitergeben. Diesen Paketen wird eine Sequenznummer zuge ordnet, welche die Reihenfolge anzeigt, in welcher die Pakete von dem Empfangspunkt oder -knoten empfangen werden müssen. Der Knoten C, der ebenfalls mit dem Knoten B zu kommunizieren wünscht, leitet Pakete #11–#12 über die Verbindung413 an das Fabric400 weiter. wiederum werden diesen Paketen Sequenznummern zugeordnet, um sicherzustellen, dass sie in der übermittelten Reihenfolge empfangen werden. Das Fabric400 umfasst zumindest einen zum Empfangen der übermittelten Pakete verwendeten Switch410 . Der Switch410 ordnet ferner sämtlichen Paketen, die er empfängt, eine neue Sequenznummer zu. Beispielsweise ordnet der Switch410 den Paketen #1–#3 und #11–#13 eine neue Sequenznummer zu. Die Sequenznummer für diese Pakete kann auf mehr als einem Wege vergeben werden, solang sie der gleichen Sequenz folgen, in der die Pakete von den Transmitter zu dem Switch410 gesendet wurden. Beispielsweise kann der Switch410 neue Sequenznummern101 –106 den Paketen #1–#3 bzw. #11–#13 zuweisen. Darüber hinaus können die neuen Sequenznummern101 –106 den Paketen #1, #11, #2, #12, #3 bzw. #13 zugeordnet werden. Andere Zuordnungen sind möglich, ohne von der vorliegenden Erfindung abzuweichen. - Gemäß dem Prinzip der vorliegenden Erfindung ist die Identifikation der die Pakete übermittelnden Quelle nicht länger notwendig. Sobald die Pakete von der Quelle zu dem Switch gesendet sind und von dem Switch bestätigt wurden, ist somit die Identifikation der Quelle nicht länger erforderlich. Es wird erneut Bezug auf das vorherige Beispiel genommen. Den Paketen #1–#3 und #11–#13 werden neue Sequenznummern
101 –106 zugeordnet, dann werden sie an den Knoten B weitergeleitet. Bei dem Knoten B werden die Pakete entweder bestätigt oder negativ bestätigt. wenn die Pakete bestätigt werden, dann ist eine erfolgreiche Datenübermittlung beendet. Bei der Alternative, d.h., wenn ein NAK von dem Knoten B von dem Switch empfangen wurde, dann bestimmt der Switch, welche Pakete erneut gesendet werden müssen. Gemäß den Merkmalen der vorliegenden Erfindung werden neue Sequenznummern101 –106 zum Identifizieren der Pakete verwendet. Ein NAK für Sequenznummer104 zeigt somit an, dass durch die Sequenznummern101 –106 dargestellte Pakete ohne Fehler empfangen wurden, jedoch die durch die Sequenznummern101 –106 dargestellten Pakete mit Fehler empfangen wurden und erneut gesendet werden müssen. - Wenn in dem Netzwerk eine Überlastung auftritt, können empfangene Pakete ggf. nicht in der Lage sein, augenblicklich über das Netzwerk weitergereicht zu werden. Eine Überlastung in einem Netzwerk ist eine Überfüllung des Netzwerkes mit Paketen. Eine Überlastungssteuerung und Überlastungsverwaltung sind zwei Mechanismen, die für ein Netzwerk bereitstehen, um effizient mit hohen Verkehrsvolumen umgehen zu können. Es wird erneut Bezug genommen auf
3 . Wenn ein lokaler Pufferraum bei einer Empfangswarteschlange gefüllt ist, gehen zusätzliche Pakete verloren. Wenn beispielsweise Warteschlange X1 gefüllt ist, werden nachfolgende Pakete verworfen. Unter der Annahme jedoch, dass ein erneuter Versuch über jeden Punkt eines Netzwerkes anstatt bei jedem Ende auftreten kann, können verworfene Pakete relativ einfach wiedererlangt werden. Sobald die Empfangswarteschlange X1 damit beginnt, Pakete aus ihren Empfangspuffern zu bewegen, macht sie Raum für zu empfangende zusätzliche Pakete. Die Empfangswarteschlange X2 prüft die Sequenznummer des nächsten Paketes, das sie empfängt. In dem Falle, dass die Quelle3 Pakete sendet, die verworfen wurden, wird das erste verworfene Paket negativ bestätigt und daher wird beginnend mit dem Paket erneut gesendet. - Gemäß der vorliegenden Erfindung behält die Sendewarteschlange S1 einfach ein Senden von Paketen bei, bis ihre Sendewarteschlange mit Paketen gefüllt ist, die nicht bestätigt wurden. Sie muss auf ein ACK für diese Pakete warten, bevor diese Puffer erneut verwendet werden können (sie muss in der Lage sein, diese Pakete, falls notwendig, erneut zu versuchen).
- Die vorliegende Erfindung weist viele Vorteile auf. Beispielsweise ermöglicht es die vorliegende Erfindung, beschädigte Pakete bei jedem Punkt in dem Netzwerk erneut zu versuchen, anstatt bei der Quelle und dem Ziel des Netzwerkes. Nachdem ein erster Knoten (Quelle) eine Bestätigung übermittelt und von einem Zwischenpunkt empfängt, muss sich der erste Knoten nicht länger darauf verlassen, Informationen, die später auf dem Übermittlungsweg von anderen Zwischenknoten zu dem Ziel beschädigt werden, erneut zu senden. Somit vereinfacht das Retry-Merkmal der vorliegenden Erfindung eine Datenübermittlung und macht sie effizienter. Da sich der erste Knoten nicht länger darauf verlassen muss, Daten erneut zu senden, wenn eine Beschädigung während der Übermittlung auftritt, ist der erste Knoten frei, zusätzliche Daten an andere Orte oder an das gleiche Ziel zu senden, nachdem der erste Knoten eine Bestätigung von dem ersten Zwischenpunkt erhalten hat.
- Ferner ermöglicht die vorliegende Erfindung auch eine Erfassung von Fehlerpaketen auf dem Zellenlevel. Gemäß den Prinzipien der vorliegenden Erfindung wird jede Zelle in dem Paket auf Fehler geprüft. Bei der Erfassung der ersten beschädigten Zelle in einem Paket wird eine Fehleranzeige an den Übermittler des Paketes zurückgegeben. Somit muss nicht das gesamte Paket geprüft werden, bevor eine Fehleranzeige zurückgegeben wird.
- Darüber hinaus implementiert die vorliegende Erfindung eine Flusssteuerung zwischen zwei Punkten, was eine bessere Bandbreite für eine Verbindungseffizienz ergibt als eine übliche Credit-basierte Flusssteuerung – ein Credit-basiertes Schema stoppt ein Senden von Paketen, wenn sämtliche Credits aufgebraucht sind, und eine Übermittlung kann nicht fortgeführt werden, bis zusätzliche Credits empfangen wurden. Bei einem Credit-basierten Schema hängt die Zeit zum Starten und Stoppen einer Datenübermittlung daher von der Round-Trip-Zeit der Traversing-Verbindung ab. Die vorliegende Erfindung ist dahingehend optimistisch, dass sie Pakete mit der Erwartung versendet, dass sie korrekt empfangen werden, und hängt nicht von der Round-Trip-Zeit der Verbindung ab.
Claims (20)
- Ein Verfahren zum Übermitteln von Daten in einem Netzwerk von einem Quellknoten (
3 ) zu einem Zielknoten (4 ), aufweisend die Schritte: a) Übermitteln von Daten in einer Mehrzahl von Paketen von dem Quellknoten (3 ) zu zumindest einem Zwischenpunkt (13 ), wobei der Mehrzahl von Paketen eine entsprechende Sequenznummer zugeordnet wird; b) Halten einer Kopie jedes Pakets in einem Puffer (S1) bei dem Quellknoten bis eine Bestätigung empfangen wird, daß das besagte jede Paket erfolgreich bei dem Zwischenpunkt (13 ) empfangen wurde; und c) Zuordnen einer Zwischenpunkt-Sequenznummer zu jedem bei dem Zwischenpunkt empfangenen Paket, wobei die Zwischenpunkt-Sequenznummer von der Sequenznummer des Quellknotens unabhängig ist. - Das Verfahren nach Anspruch 1, ferner aufweisend den Schritt des Haltens einer Kopie jedes Pakets in einem Puffer (X2) bei dem Zwischenpunkt bis eine Bestätigung empfangen wird, daß das besagte jede Paket erfolgreich bei dem nächsten Zustellungsort empfangen wurde.
- Das Verfahren nach Anspruch 1, ferner aufweisend die Schritte: d) Freigeben eines bestimmten Pakets in dem Puffer (S1) bei dem Quellknoten (
3 ) nach Empfang einer mit dem bestimmten Paket verknüpften Bestätigung von dem Zwischenknoten; und e) Freigeben sämtlicher anderer Pakete in dem Puffer bei dem Quellknoten zwischen dem bestimmten Paket und einem letzten bestätigten Paket. - Das Verfahren nach Anspruch 1, ferner aufweisend die Schritte: d) neu Übermitteln, und zwar bei dem Quellknoten (
3 ), des besagten jeden Pakets und sämtlicher nachfolgender Pakete nach Empfang einer Fehleranzeige; und e) Verwerfen, und zwar bei dem Zwischenpunkt, sämtlicher nach dem besagten jeden Paket, mit dem die Fehleranzeige verknüpft ist, empfangenen Pakete, bis eine neu übermittelte Version von dem besagtem jeden Paket erfolgreich empfangen wird. - Das Verfahren nach Anspruch 1, wobei Daten über ein Fabric (
400 ) in einem Systemnetzwerk mit einer Mehrzahl von Verbindungen unter Verwendung eines Punkt-zu-Punkt-Protokolls übertragen werden, wobei in Schritt b) eine Kopie jedes Pakets in einem Puffer (S1) bei einem Quellknoten (3 ) gehalten wird, bis von dem zumindest einen Zwischenpunkt entweder die Bestätigung, die anzeigt, daß besagtes jedes Paket erfolgreich empfangen wurde, oder eine Fehleranzeige, daß eine empfangene Version des besagten jeden Pakets zumindest einen Fehler umfaßte, erhalten wird, während simultan zusätzliche Pakete übertragen werden; und wobei in Schritt c) jedem der besagten Pakete eine Verbindungs-Sequenznummer zugeordnet wird, bevor jedes der Pakete von einem Ursprungspunkt in einer Verbindung (8 ,9 ) übertragen wird, wobei das Verfahren ferner aufweist: d) Verwendung einer einzigen negativen Bestätigung für die Fehleranzeige, um anzuzeigen, daß ein mit der negativen Bestätigung verknüpftes Paket zumindest einen Fehler aufweist, und um simultan anzuzeigen, daß sämtliche vorherigen, vor dem mit der negativen Bestätigung verknüpften Paket empfangenen Pakete korrekt empfangen wurden. - Das Verfahren nach Anspruch 5, ferner aufweisend den Schritt des Anzeigens eines erfolgreichen Empfangs sämtlicher Pakete zwischen einem letzten bestätigten Paket und einem bestimmten Paket durch Senden einer einzigen Bestätigung.
- Das Verfahren nach Anspruch 5, ferner aufweisend die Schritte: e) Freigeben eines bestimmten Pakets in dem Puffer bei dem Quellknoten nach Empfang der mit dem bestimmten Paket verknüpften Bestätigung, und f) Freigeben sämtlicher anderer Pakete in dem Puffer zwischen dem bestimmten Paket und einem letzten bestätigten Paket.
- Das Verfahren nach Anspruch 5, ferner aufweisend den Schritt des Freigebens, und zwar bei dem Quellknoten (
3 ), sämtlicher gepufferter, einem mit der negativen Bestätigung verknüpften Paket nachfolgender Pakete, und neu Übermitteln, und zwar von dem Quellknoten, sämtlicher Pakete ab dem mit der negativen Bestätigung verknüpften Paket, und zwar einschließlich des mit der negativen Bestätigung verknüpften Pakets. - Eine Vorrichtung zum Kommunizieren von Daten zwischen zwei Verbindungen eines Fabrics mit einer Mehrzahl von Verbindungen (
8 ,9 ) einschließlich eines ersten, bei einem ersten Punkt einer Verbindung angeordneten Switches, und zum Übermitteln der Daten in einer Mehrzahl von Paketen von dem ersten Punkt in der Verbindung an einen zweiten, bei einem zweiten Punkt in der Verbindung angeordneten Switch, wobei die Vorrichtung dadurch gekennzeichnet ist, daß: a) der erste Switch der Mehrzahl von Paketen erste Punkt-Sequenznummern zuordnet, wobei die ersten Punkt-Sequenznummern unabhängig von den von einer Quelle der Pakete zugeordneten Quelle-Sequenznummern sind; b) ein Puffer (S1) bei dem ersten Punkt angeordnet ist und mit dem ersten Switch gekoppelt ist, und jedes Paket bis zum Empfang entweder einer Bestätigung, daß das besagte jede Paket erfolgreich empfangen wurde, oder einer Fehleranzeige, daß eine empfangene Version des besagten jeden Pakets zumindest einen Fehler umfaßte, speichert; und c) der zweite Switch nach Empfang eines fehlerfreien Pakets die Bestätigung sendet, um den erfolgreichen Empfang des besagten fehlerfreien Pakets und sämtlicher Pakete in Folge zwischen einem letzten bestätigten Paket und dem besagten fehlerfreien Paket anzuzeigen, wobei der zweite Switch den empfangenen Paketen eine zweite Punkt-Sequenznummer zuordnet, und wobei die zweiten Punkt-Sequenznummern unabhängig von den ersten Punkt-Sequenznummern sind. - Die Vorrichtung nach Anspruch 9, wobei der erste Switch jedes Paket in dem Puffer (S1) nach Empfang einer mit dem Paket in dem Puffer verknüpften Bestätigung freigibt, zusätzlich zu sämtlichen dem Paket in dem Puffer vorausgehenden Paketen.
- Die Vorrichtung nach Anspruch 9, wobei der erste Switch ein bestimmtes Paket und sämtliche Pakete in Folge nachfolgend zu dem bestimmten Paket nach Empfang einer mit dem bestimmten Paket verknüpften Fehleranzeige neu übermittelt.
- Die Vorrichtung nach Anspruch 11, wobei der zweite Switch sämtliche empfangenen Pakete in Folge nachfolgend dem bestimmten Paket verwirft, bis eine neu übermittelte Version des bestimmten Pakets erfolgreich empfangen wird.
- Eine maschinenlesbare Programmspeichereinrichtung, greifbar aufweisend ein von einer Maschine ausführbares Programm aus Befehlen zum Ausführen von Verfahrensschritten zum Übermitteln von Daten zwischen Switchen in einem Fabric mit einer Mehrzahl von Verbindungen, wobei das Verfahren aufweist die Schritte: a) Übermitteln von Daten in einer Mehrzahl von Paketen von einem Quell-Switch zu zumindest einem Zwischen-Switch, wobei der Mehrzahl von Paketen eine entsprechende Sequenznummer von dem Quell-Switch zugeordnet wird; b) Halten einer Kopie jedes Pakets in einem Puffer bei dem Quell-Switch bis eine Bestätigung empfangen wird, daß das be sagte jede Paket erfolgreich bei dem Zwischen-Switch empfangen wurde; und c) Zuordnen einer Zwischen-Switch-Sequenznummer zu jedem bei dem Zwischen-Switch empfangenen Paket, wobei die Zwischen-Switch-Sequenznummer von der Sequenznummer des Quell-Switches unabhängig ist.
- Die Einrichtung nach Anspruch 13, wobei das Verfahren ferner aufweist den Schritt des Haltens einer zweiten Kopie jedes Pakets in einem Puffer bei dem Zwischen-Switch bis bei dem Zwischen-Switch eine Bestätigung empfangen wird, daß jedes Paket erfolgreich empfangen wurde.
- Die Einrichtung nach Anspruch 13, wobei das Verfahren ferner aufweist die Schritte: d) Freigeben eines bestimmten Pakets in dem Puffer (S1) bei dem Quell-Switch nach Empfang einer mit dem bestimmten Paket verknüpften Bestätigung von dem Zwischen-Switch; und e) Freigeben sämtlicher anderer Pakete in dem Puffer bei dem Quellknoten zwischen dem bestimmten Paket und einem letzten bestätigten Paket.
- Die Einrichtung nach Anspruch 13, wobei das Verfahren ferner aufweist die Schritte: d) neu Übermitteln, und zwar bei dem Quell-Switch, jedes Pakets und sämtlicher nachfolgender Pakete nach Empfang einer Fehleranzeige; und e) Verwerfen, und zwar bei dem Zwischen-Switch, sämtlicher nach dem besagten jeden Paket, mit dem die Fehleranzeige verknüpft ist, empfangenen Pakete, bis eine neu übermittelte Version von dem besagtem jeden Paket erfolgreich empfangen wird.
- Die Einrichtung nach Anspruch 13, wobei Daten in einer Mehrzahl von Paketen zwischen Switchen in einem Fabric mit einer Mehrzahl von Verbindungen übermittelt werden, wobei bei Schritt b) eine Kopie jedes Pakets in einem Puffer (S1) bei einem ersten Switch gehalten wird, bis entweder eine Bestätigung, die anzeigt, daß besagtes jedes Paket erfolgreich empfangen wurde, oder eine Fehleranzeige, daß eine empfangene Version des besagten jeden Pakets zumindest einen Fehler umfaßte, erhalten wird, während simultan zusätzliche Pakete übertragen werden; und wobei in Schritt c) jedem der besagten Pakete eine Verbindungs-Sequenznummer zugeordnet wird, bevor jedes der Pakete von einem zweiten Switch übertragen wird, wobei die von dem zweiten Switch zugeordnete Sequenznummer unabhängig von der von dem ersten Switch zugeordneten Sequenznummer ist und wobei das Verfahren ferner aufweist: d) Verwendung einer einzigen negativen Bestätigung, um anzuzeigen, daß ein mit der negativen Bestätigung verknüpftes Paket zumindest einen Fehler aufweist, und um simultan anzuzeigen, daß sämtliche vorherigen, vor dem mit der negativen Bestätigung verknüpften Paket empfangenen Pakete korrekt empfangen wurden.
- Die Einrichtung nach Anspruch 17, wobei das Verfahren ferner aufweist den Schritt des Anzeigens eines erfolgreichen Empfangs sämtlicher Pakete zwischen einem letzten bestätigten Paket und einem bestimmten Paket durch Senden einer einzigen Bestätigung.
- Die Einrichtung nach Anspruch 17, wobei das Verfahren ferner aufweist die Schritte: e) Freigeben eines bestimmten Pakets in dem Puffer bei dem ersten Switch nach Empfang einer mit dem bestimmten Paket verknüpften Bestätigung, und f) Freigeben sämtlicher anderer Pakete in dem Puffer, und zwar bei dem ersten Switch, zwischen dem bestimmten Paket und einem letzten bestätigten Paket.
- Die Einrichtung nach Anspruch 17, ferner aufweisend den Schritt des Freigebens sämtlicher gepufferter Pakete bei dem ersten Switch, welche einem mit der negativen Bestätigung verknüpften Paket folgen, und des neu Übermittelns, bei dem ersten Switch, sämtlicher Pakete nachfolgend dem mit der negativen Bestätigung verknüpften Paket, einschließlich des mit der negativen Bestätigung verknüpften Pakets.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US141136 | 1998-08-27 | ||
US09/141,136 US6181704B1 (en) | 1997-08-29 | 1998-08-27 | Method and apparatus for input/output link retry, failure and recovery in a computer network |
PCT/US1999/017229 WO2000013455A1 (en) | 1998-08-27 | 1999-07-30 | Method and apparatus for input/output link retry, failure and recovery in a computer network |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69934124D1 DE69934124D1 (de) | 2007-01-04 |
DE69934124T2 true DE69934124T2 (de) | 2007-10-11 |
Family
ID=22494321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69934124T Expired - Lifetime DE69934124T2 (de) | 1998-08-27 | 1999-07-30 | Verfahren und vorrichtung für wiederversuch, versagen und wiederanlauf einer eingang/ausgangsverbindung in einem computernetz |
Country Status (8)
Country | Link |
---|---|
US (1) | US6181704B1 (de) |
EP (1) | EP1108343B1 (de) |
CN (3) | CN1135895C (de) |
AT (1) | ATE346473T1 (de) |
AU (1) | AU5242199A (de) |
DE (1) | DE69934124T2 (de) |
HK (1) | HK1041413B (de) |
WO (1) | WO2000013455A1 (de) |
Families Citing this family (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6333929B1 (en) * | 1997-08-29 | 2001-12-25 | Intel Corporation | Packet format for a distributed system |
JP3722969B2 (ja) * | 1998-01-08 | 2005-11-30 | 株式会社東芝 | 再送制御方法及び再送制御装置 |
JP2000020490A (ja) * | 1998-07-01 | 2000-01-21 | Fujitsu Ltd | 遠隔手続き呼出し機構またはオブジェクトリクエストブローカ機構を有する計算機、データ転送方法、および転送方法記憶媒体 |
US6700871B1 (en) * | 1999-05-04 | 2004-03-02 | 3Com Corporation | Increased throughput across data network interface by dropping redundant packets |
US6400724B1 (en) * | 1999-07-16 | 2002-06-04 | Qualcomm Inc. | Method and apparatus for efficient data transmission in a voice-over-data communication system |
JP3788125B2 (ja) * | 1999-08-25 | 2006-06-21 | 株式会社日立製作所 | パケット送受信方法およびその装置 |
US7035214B1 (en) * | 1999-09-28 | 2006-04-25 | Nortel Networks Limited | System and method for a negative acknowledgement-based transmission control protocol |
JP2001142845A (ja) * | 1999-11-17 | 2001-05-25 | Toshiba Corp | コンピュータシステムおよびデータ転送制御方法 |
US6646991B1 (en) | 1999-12-22 | 2003-11-11 | Intel Corporation | Multi-link extensions and bundle skew management |
US6687840B1 (en) | 2000-04-21 | 2004-02-03 | Intel Corporation | Multi-link extensions and bundle skew management |
US7225383B1 (en) | 2000-01-19 | 2007-05-29 | Sun Microsystems, Inc. | System and method for enhancing communication between devices in a computer system |
US7245594B1 (en) * | 2000-05-12 | 2007-07-17 | Qualcomm Incorporated | Method and apparatus for fast closed-loop rate adaptation in a high rate packet data transmission |
US7103016B1 (en) * | 2000-08-11 | 2006-09-05 | Echelon Corporation | System and method for providing transaction control on a data network |
US6965916B1 (en) * | 2000-12-14 | 2005-11-15 | Bellsouth Intellectual Property Corp. | System and method for data distribution and recovery |
US20020107706A1 (en) * | 2001-02-02 | 2002-08-08 | Oliver Mitchell B. | Virtual negotiation |
US7865915B1 (en) * | 2001-05-23 | 2011-01-04 | Cisco Technology, Inc. | Content discovery and differential advertising in video distribution networks |
GB2376857B (en) * | 2001-06-22 | 2003-07-23 | Motorola Inc | Proxy server and method for delivering information in a multimedia communication system |
WO2003005629A1 (en) * | 2001-06-30 | 2003-01-16 | Nokia Inc. | Apparatus and method for delivery of packets in multi-hop wireless networks |
KR100428659B1 (ko) * | 2001-07-20 | 2004-04-28 | 엘지전자 주식회사 | 데이터 통신망의 더블 버퍼를 이용한 데이터 업레이트장치 및 그 방법 |
US7133893B2 (en) * | 2001-08-03 | 2006-11-07 | Hewlett-Packard Development Company, L.P. | Opportunistic transmission of portably stored digital data |
US6996537B2 (en) * | 2001-08-13 | 2006-02-07 | Qualcomm Incorporated | System and method for providing subscribed applications on wireless devices over a wireless network |
US9203923B2 (en) * | 2001-08-15 | 2015-12-01 | Qualcomm Incorporated | Data synchronization interface |
JP2003174479A (ja) * | 2001-12-07 | 2003-06-20 | Fujitsu Ltd | パケット通信方法及びその装置 |
US7337234B2 (en) * | 2002-04-05 | 2008-02-26 | Oracle International Corporation | Retry technique for multi-tier network communication systems |
US7200115B2 (en) * | 2002-05-17 | 2007-04-03 | Lucent Technologies Inc. | Method of managing non-acknowledgement responses |
US20040043753A1 (en) * | 2002-08-30 | 2004-03-04 | Wake Susan L. | System and method for third party application sales and services to wireless devices |
KR100498932B1 (ko) * | 2002-12-30 | 2005-07-04 | 삼성전자주식회사 | 이동 노드들로 구성된 무선망에서의 세션 설정 장치 및 방법 |
TW200522598A (en) * | 2003-12-19 | 2005-07-01 | Iwics Inc | Data transport protocol for a multi-station network |
CN101065765A (zh) * | 2004-01-21 | 2007-10-31 | 高通股份有限公司 | 无线订户网络中基于应用程序的价值记帐 |
US7480267B2 (en) * | 2004-02-06 | 2009-01-20 | M-Stack Limited | Apparatus and method for operating a communications device in a mobile communications network |
US7525935B2 (en) * | 2004-02-06 | 2009-04-28 | M-Stack Limited | Apparatus and method for operating a communications device in a mobile communications network |
US7339904B2 (en) * | 2004-02-06 | 2008-03-04 | M-Stack Limited | Apparatus and method for operating a communications device in a mobile communications network |
US20050289047A1 (en) * | 2004-06-28 | 2005-12-29 | Oliver Mitchell B | Virtual marketplace for wireless device applications and services with integrated multi-party settlement |
US7539142B1 (en) * | 2004-07-21 | 2009-05-26 | Adtran, Inc. | Ethernet LAN interface for T3 network |
CN100361430C (zh) * | 2004-08-11 | 2008-01-09 | 华为技术有限公司 | 一种数据传输的方法 |
JP2006209579A (ja) * | 2005-01-31 | 2006-08-10 | Palenet Co Ltd | レンタル契約方法 |
KR100785293B1 (ko) * | 2005-02-11 | 2007-12-12 | 삼성전자주식회사 | 다중 tcp확인응답을 이용한 tcp 혼잡 제어 시스템및 그 방법 |
US9185538B2 (en) * | 2005-05-31 | 2015-11-10 | Qualcomm Incorporated | Wireless subscriber application and content distribution and differentiated pricing |
US9350875B2 (en) * | 2005-05-31 | 2016-05-24 | Qualcomm Incorporated | Wireless subscriber billing and distribution |
US7970958B2 (en) * | 2005-06-20 | 2011-06-28 | Micron Technology, Inc. | Peripheral interface alert message for downstream device |
US7773630B2 (en) * | 2005-11-12 | 2010-08-10 | Liquid Computing Corportation | High performance memory based communications interface |
US9143622B2 (en) | 2006-02-17 | 2015-09-22 | Qualcomm Incorporated | Prepay accounts for applications, services and content for communication devices |
US9185234B2 (en) | 2006-02-22 | 2015-11-10 | Qualcomm Incorporated | Automated account mapping in a wireless subscriber billing system |
US7664026B2 (en) * | 2006-06-19 | 2010-02-16 | Liquid Computing Corporation | Methods and systems for reliable data transmission using selective retransmission |
US7873964B2 (en) * | 2006-10-30 | 2011-01-18 | Liquid Computing Corporation | Kernel functions for inter-processor communications in high performance multi-processor systems |
WO2008068729A1 (en) * | 2006-12-08 | 2008-06-12 | Iwics Inc | Enhanced data transport protocol for a multi-station network |
US7924766B2 (en) * | 2007-04-10 | 2011-04-12 | Mitsubishi Electric Research Labs, Inc. | Hybrid multiple access method and system in wireless networks |
CN101340267B (zh) * | 2007-07-03 | 2015-05-13 | 财团法人工业技术研究院 | 通讯系统的传输控制方法与装置 |
CN101212285B (zh) * | 2007-12-25 | 2010-08-18 | 中国人民解放军理工大学 | 基于机会协同的自动重传请求方法 |
US8146094B2 (en) * | 2008-02-01 | 2012-03-27 | International Business Machines Corporation | Guaranteeing delivery of multi-packet GSM messages |
US8239879B2 (en) * | 2008-02-01 | 2012-08-07 | International Business Machines Corporation | Notification by task of completion of GSM operations at target node |
US8200910B2 (en) * | 2008-02-01 | 2012-06-12 | International Business Machines Corporation | Generating and issuing global shared memory operations via a send FIFO |
US8255913B2 (en) * | 2008-02-01 | 2012-08-28 | International Business Machines Corporation | Notification to task of completion of GSM operations by initiator node |
US8275947B2 (en) * | 2008-02-01 | 2012-09-25 | International Business Machines Corporation | Mechanism to prevent illegal access to task address space by unauthorized tasks |
US8484307B2 (en) * | 2008-02-01 | 2013-07-09 | International Business Machines Corporation | Host fabric interface (HFI) to perform global shared memory (GSM) operations |
US8214604B2 (en) * | 2008-02-01 | 2012-07-03 | International Business Machines Corporation | Mechanisms to order global shared memory operations |
US8756477B2 (en) * | 2009-12-21 | 2014-06-17 | Qualcomm Incorporated | System, method and apparatus for early termination based on transport block fail for acknowledgment bundling in time division duplex |
CN102368700B (zh) * | 2011-10-25 | 2014-10-22 | 曙光信息产业(北京)有限公司 | 一种分布式系统中消息的传递方法 |
JP6024419B2 (ja) * | 2012-11-29 | 2016-11-16 | 富士通株式会社 | データ配置方法、及び中継装置 |
US9262270B2 (en) * | 2012-12-28 | 2016-02-16 | Intel Corporation | Live error recovery |
CN103957081B (zh) * | 2014-05-05 | 2018-07-20 | 深圳证券通信有限公司 | 一种用于分布式系统的指令传输方法和系统 |
WO2016018383A1 (en) | 2014-07-31 | 2016-02-04 | Hewlett-Packard Development Company | Live migration of data |
US10540109B2 (en) | 2014-09-02 | 2020-01-21 | Hewlett Packard Enterprise Development Lp | Serializing access to fault tolerant memory |
US10594442B2 (en) * | 2014-10-24 | 2020-03-17 | Hewlett Packard Enterprise Development Lp | End-to-end negative acknowledgment |
WO2016122642A1 (en) | 2015-01-30 | 2016-08-04 | Hewlett Packard Enterprise Development Lp | Determine failed components in fault-tolerant memory |
US10409681B2 (en) | 2015-01-30 | 2019-09-10 | Hewlett Packard Enterprise Development Lp | Non-idempotent primitives in fault-tolerant memory |
WO2016122610A1 (en) | 2015-01-30 | 2016-08-04 | Hewlett Packard Enterprise Development Lp | Preventing data corruption and single point of failure in a fault-tolerant memory |
US10402261B2 (en) | 2015-03-31 | 2019-09-03 | Hewlett Packard Enterprise Development Lp | Preventing data corruption and single point of failure in fault-tolerant memory fabrics |
GB2539003B (en) * | 2015-06-03 | 2018-05-09 | Openwave Mobility Inc | A method and apparatus for managing connections in a communication network |
US20170093726A1 (en) | 2015-09-25 | 2017-03-30 | Fsa Technologies, Inc. | High-speed communications platform |
WO2017212118A1 (en) * | 2016-06-10 | 2017-12-14 | Tttech Flexibilis Oy | Receiving frames at redundant port connecting node to communications network |
US10389342B2 (en) | 2017-06-28 | 2019-08-20 | Hewlett Packard Enterprise Development Lp | Comparator |
US10432536B1 (en) * | 2017-12-11 | 2019-10-01 | Xilinx, Inc. | Systems and methods for policing streams in a network |
US10996891B2 (en) | 2019-02-28 | 2021-05-04 | International Business Machines Corporation | Token management for write commands transmitted by a host over a plurality of interfaces to a storage controller |
US11010248B2 (en) * | 2019-02-28 | 2021-05-18 | International Business Machines Corporation | Reuse of resources in a storage controller for executing write commands over a plurality of interfaces |
CN111064674B (zh) * | 2019-11-05 | 2021-02-26 | 珠海格力电器股份有限公司 | 数据的传输方法及装置、系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1220830A (en) * | 1984-12-28 | 1987-04-21 | David S. Drynan | Transmitting sequence numbers of information in a packet data transmission system |
US5245616A (en) * | 1989-02-24 | 1993-09-14 | Rosemount Inc. | Technique for acknowledging packets |
GB2229896B (en) * | 1989-02-24 | 1993-06-30 | Rosemount Inc | Technique for acknowledging packets |
GB2252020A (en) * | 1990-12-04 | 1992-07-22 | Ibm | Flow control in data communication systems. |
US5260933A (en) | 1992-05-15 | 1993-11-09 | International Business Machines Corporation | Acknowledgement protocol for serial data network with out-of-order delivery |
US5459725A (en) * | 1994-03-22 | 1995-10-17 | International Business Machines Corporation | Reliable multicasting over spanning trees in packet communications networks |
US5959995A (en) * | 1996-02-22 | 1999-09-28 | Fujitsu, Ltd. | Asynchronous packet switching |
US5809025A (en) * | 1996-03-15 | 1998-09-15 | Motorola, Inc. | Virtual path-based static routing |
-
1998
- 1998-08-27 US US09/141,136 patent/US6181704B1/en not_active Expired - Lifetime
-
1999
- 1999-07-30 AU AU52421/99A patent/AU5242199A/en not_active Abandoned
- 1999-07-30 WO PCT/US1999/017229 patent/WO2000013455A1/en active IP Right Grant
- 1999-07-30 CN CNB998127035A patent/CN1135895C/zh not_active Expired - Lifetime
- 1999-07-30 CN CNB2003101196571A patent/CN1233194C/zh not_active Expired - Lifetime
- 1999-07-30 EP EP99937628A patent/EP1108343B1/de not_active Expired - Lifetime
- 1999-07-30 AT AT99937628T patent/ATE346473T1/de not_active IP Right Cessation
- 1999-07-30 DE DE69934124T patent/DE69934124T2/de not_active Expired - Lifetime
- 1999-07-30 CN CN2005101180411A patent/CN100407615C/zh not_active Expired - Lifetime
-
2002
- 2002-04-23 HK HK02103050.9A patent/HK1041413B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
ATE346473T1 (de) | 2006-12-15 |
AU5242199A (en) | 2000-03-21 |
CN100407615C (zh) | 2008-07-30 |
DE69934124D1 (de) | 2007-01-04 |
CN1510964A (zh) | 2004-07-07 |
US6181704B1 (en) | 2001-01-30 |
HK1041413B (zh) | 2004-12-03 |
WO2000013455A1 (en) | 2000-03-09 |
CN1135895C (zh) | 2004-01-21 |
HK1041413A1 (en) | 2002-07-05 |
CN1324555A (zh) | 2001-11-28 |
CN1764099A (zh) | 2006-04-26 |
EP1108343A1 (de) | 2001-06-20 |
EP1108343B1 (de) | 2006-11-22 |
EP1108343A4 (de) | 2004-02-25 |
CN1233194C (zh) | 2005-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69934124T2 (de) | Verfahren und vorrichtung für wiederversuch, versagen und wiederanlauf einer eingang/ausgangsverbindung in einem computernetz | |
DE60111551T2 (de) | Mechanismus zur vervollständigung von nachrichten im speicher | |
US6343067B1 (en) | Method and apparatus for failure and recovery in a computer network | |
DE69531410T2 (de) | Mehrrechnerumgebungen | |
DE112020002496T5 (de) | System und verfahren zur erleichterung eines effizienten host-speicherzugriffs von einer netzwerkschnittstellensteuerung (nic) | |
DE69632147T2 (de) | Verbund-fehlererkennung und datenpaketnumerierung in einem hierarchischen arq-übertragungssystem | |
DE60309527T2 (de) | System und Verfahren zur Identifikation von Grenzen von Nachrichten höherer Schichten | |
DE69735740T2 (de) | Asynchrone paketvermittlung | |
DE19924922A1 (de) | System und Verfahren für Nachrichtenübermittlung zwisfchen Netzwerkknoten, die durch parallele Verbindungen verbunden sind | |
DE112013000398B4 (de) | Multisprung-Fehlerbehebung | |
US6760307B2 (en) | Method and apparatus for controlling the flow of data between servers using optimistic transmitter | |
DE60213616T2 (de) | Eine allgemeine eingabe-/ausgabearchitektur, protokoll und entsprechende verfahren zur umsetzung der flusssteuerung | |
DE60031263T2 (de) | Umhüllungsverfahren für protokolldateneinheiten | |
DE60303026T2 (de) | System, verfahren und produkt zur verwaltung des datenverkehrs in einem netzwerk | |
DE112015003004B4 (de) | Hybrider Ansatz für leistungssteigernde Proxies | |
DE602004012660T2 (de) | System und Verfahren für einen nachrichtenorientierten anpassungsfähigen Datentransport | |
DE60318252T2 (de) | Verfahren und vorrichtungen zur datenübertragung zwischen speichernetzwerken | |
DE102005062575B4 (de) | Verfahren und Vorrichtung zum Übertragen von Daten über eine Datenverbindung von einem Sender zu einem Empfänger mittels Pakete | |
DE60036121T2 (de) | Hochgeschwindigkeitsverbindung für eingebettete Systeme in einem Rechnernetzwerk | |
DE69922369T2 (de) | Verfahren und vorrichtung zur erhöhung eines datendurchsatzes | |
DE69735546T2 (de) | Paketvermittelte leitweglenkung-architektur für mehrere gleichzeitige verbindungen | |
DE60202124T2 (de) | Verfahren und Netzwerkelement zum sicheren Transport von Ethernet-Rahmen über ein SDH/SONET Transport-Netzwerk | |
DE112012004138T5 (de) | Hochleistungsfähiges virtuelles Converged-Enhanced-Ethernet mit persistenter Zustandsflusssteuerung | |
WO2002017092A2 (en) | Message sequence numbers and their use in completing messages in memory | |
DE102023204029A1 (de) | Transaktionsbasierter zuverlässiger transport |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |