DE69934226T2 - TCP/IP/PPP Modem - Google Patents

TCP/IP/PPP Modem Download PDF

Info

Publication number
DE69934226T2
DE69934226T2 DE69934226T DE69934226T DE69934226T2 DE 69934226 T2 DE69934226 T2 DE 69934226T2 DE 69934226 T DE69934226 T DE 69934226T DE 69934226 T DE69934226 T DE 69934226T DE 69934226 T2 DE69934226 T2 DE 69934226T2
Authority
DE
Germany
Prior art keywords
modem
network
packet
data
network stack
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
Application number
DE69934226T
Other languages
English (en)
Other versions
DE69934226D1 (de
Inventor
Ward Michael Petaluma JOHNSON
John Shigeto San Jose MINAMI
Ryo Palo Alto KOYAMA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of DE69934226D1 publication Critical patent/DE69934226D1/de
Application granted granted Critical
Publication of DE69934226T2 publication Critical patent/DE69934226T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • H04L12/2858Access network architectures
    • H04L12/2859Point-to-point connection between the data network and the subscribers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/165Combined use of TCP and UDP protocols; selection criteria therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/168Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] specially adapted for link layer protocols, e.g. asynchronous transfer mode [ATM], synchronous optical network [SONET] or point-to-point protocol [PPP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • H04M11/06Simultaneous speech and data transmission, e.g. telegraphic transmission over the same conductors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Description

  • Hintergrund der Erfindung
  • Technisches Gebiet
  • Die Erfindung bezieht sich auf ein Kombinieren eines Netzwerkstapels mit einem Modemkern für eine Verwendung bei sowohl Computer- als auch Nicht-Computer-Anwendungen. Insbesondere bezieht sich die Erfindung auf ein internetbewusstes Modem, das irgendeine Anzahl von Punkt-Zu-Punkt-Vorrichtungen mit den Netzwerkprotokollen kombiniert, die notwendig sind, um in dem Internet zu kommunizieren, wobei diese Vorrichtungen herkömmliche Modems verschiedener Geschwindigkeit von 2400 kbps bis 56 kbps, ISDN-Modems, neuere xDSL-Modems und digitale zelluläre Modems umfassen.
  • Beschreibung des Stands der Technik
  • Computermodems wurden in einer Zeit entwickelt, als die meisten Verbindungen zu proprietären Online-Diensten, interaktiven Terminals, Nachrichtenbrettdiensten (BBSs = Bulletin Board Services) oder Firmennetzwerksystemen hergestellt wurden. An sich war es notwendig, Verbindungsprotokolle in einer Software zu implementieren, weil zu der Zeit eine Anzahl derartiger Protokolle existierte. Diese Protokolle umfassten x-Modem, y-Modem, z-Modem, Kermit und interaktive schriftzeichenbasierte Schnittstellen.
  • Heute wird mit einer Beliebtheit des Internet eine große Mehrheit von Modems nun ausschließlich verwendet, um eine Verbindung zu ISPs herzustellen, die wiederum den Benutzer mit dem Internet verbinden. Deshalb gibt es nun einen vorherrschenden Satz von Verbindungsprotokollen. Derartige Protokolle werden für die meisten Modemverbindungen verwen det. Folglich gibt es einen echten Bedarf und einen Vorteil bei einem Entwerfen eines Modems, das internetbereit ist.
  • Die Verbindungsprotokolle, die durch das Internet verwendet werden, und die hierarchische Beziehung derselben sind in 1 gezeigt. Diese Protokolle umfassen TCP 10, IP 11, UDP 13 und PPP 12. Ein Optimieren eines Modems für eine Verwendung mit dem Internet bietet viele Vorteile, einschließlich einer reduzierten Übertragungslatenz, reduzierter Wartungsanforderungen, niedrigerer Verarbeitungsanforderungen von der CPU des Systems und optimierter Übertragungsraten.
  • Aktuelle Computersysteme behandeln ein Modemuntersystem als eine serielle Vorrichtung. Ein Blockdiagramm eines existierenden Systems ist in 2 gezeigt. Bei einem derartigen System wird eine Internetanwendung, wie beispielsweise ein Web-Browser 21, in einer Software 19 auf der Haupt-CPU 22 ausgeführt. Diese Anwendung wiederum ruft den Computernetzwerkstapel 23 auf, der ebenfalls in einer Software implementiert ist. Der Netzwerkstapel implementiert die Protokolle TCP, IP, UDP und PPP. Sobald die Daten verarbeitet wurden, werden die resultierenden Pakete durch die CPU über den Computerbus 28 zu einer Seriell-Tor-Schnittstelle 27 in dem Modemsystem 30 gesendet. Das Modemsystem, z. B. eine Modemkarte 18, wird durch den Host-Prozessor als eine serielle I/O-Vorrichtung angesehen. Diese Vorrichtungen nehmen gewöhnlich Daten in Bytemengen an und platzieren dieselben in einem ausgehenden FIFO 24. Diese FIFOs können irgendwo zwischen 8 Byte und 64 Byte liegen. Die CPU schreibt normalerweise eine feste Anzahl von Bytes, wartet dann darauf, dass die serielle I/O-Vorrichtung dieselbe benachrichtigt, dass alle Daten gesendet wurden und dass dieselbe bereit ist, mehr Daten anzunehmen. Diese Benachrichtigung wird häufig über Systemunterbrechungen vorgenommen. Die Paketdaten werden, nachdem dieselben in den FIFO geschrieben sind, mit der ausgehenden Datenrate dem Modemkern 25 und somit der Telefonleitung 29 zugeführt.
  • Für empfangene Daten platziert das Modem zuerst alle eingehenden Pakete in den Eingangs-FIFO 26. Die Vorrichtung kann dann konfiguriert sein, um die Host-CPU zu unterbrechen, wenn irgendwelche Daten verfügbar sind oder wenn die empfangenen Daten einen gewissen Pegel (d. h. 16 Byte) erreichen. Wenn dieselbe benachrichtigt ist, liest die CPU alle Daten in dem Eingangs-FIFO und speichert die Daten temporär in einem Puffer in einem Systemspeicher (nicht gezeigt). Das untere Protokoll, PPP (siehe 1), kann anfangen, die Daten zu verarbeiten, aber dasselbe kann die Daten nicht zu der nächsten Schicht hinaufleiten, bis das gesamte Paket empfangen ist.
  • Sobald das gesamte Paket empfangen ist, leitet der PPP-Abschnitt des Softwarenetzwerkstapels die Daten hinauf zu dem zweiten Protokoll (IP). Die IP-Software verarbeitet dann den IP-Kopfblock und leitet nach einem Verifizieren der Kopfblockprüfsumme das Paket zu der TCP-Handhabungseinrichtung. Die TCP-Handhabungseinrichtung prüft dann die Prüfsumme derselben und leitet die Daten zu der geeigneten Anwendung weiter, wie es durch die TOR-Nummer (PORT-Nummer) in dem TCP-Kopfblock spezifiziert ist.
  • Weil die meisten Modems in Computern heute verwendet werden, um eine Verbindung mit dem Internet herzustellen, macht dasselbe es ökonomisch machbar und praktisch, ein Modem für diese Umgebung zu optimieren. Was dies nach sich zieht, ist ein Einbetten der Fähigkeit in dem Modemsystem, die nötigen Netzwerkprotokolle zu handhaben, und eine Verwendung der Kenntnis der Protokolle, um die Übertragungscharakteristika des Modems abzustimmen. Dies ist das gleiche Grundprinzip hinter der Beliebtheit von Windows-Beschleunigergrafikkarten. Weil Grafikchiphersteller wissen, dass eine große Mehrheit von PCs heutzutage das Betriebssystem Microsoft Windows® ausführen, stellen dieselben die Architekturen derselben fein ein, um die Leistungsfähigkeit in dieser Umgebung zu verbessern. Dies wäre nicht praktisch, falls es eine Anzahl von Betriebssystemen mit unterschiedlichen Grafik-APIs gäbe, jede mit unterschiedlichen Grafik-APIs gäbe, jede mit einem erheblichen Marktanteil. Bei dem einen überwiegenden Standard jedoch haben sich die meisten Grafikkartenhersteller entschieden, die Software derselben für die Windows-Umgebung zu optimieren, obwohl heutige Pentiumklasse-Prozessoren sehr wohl zum Handhaben der Grafikaufgaben ohne eine externe Unterstützung in der Lage sind. Dies ist so, weil die Funktion unter den meisten Umständen erforderlich ist und es vorteilhaft ist, den Host-Prozessor zu entlasten, so dass derselbe so viel mehr MIPs aufweist, um Standardanwendungen auszuführen.
  • Eine ähnliche Situation besteht nun auf dem Modemkartenmarkt. Es wäre deshalb vorteilhaft, den Internetnetzwerkprotokollstapel zusammen mit einer speziellen Logik einzubetten, wodurch ermöglicht wird, dass die Modemvorrichtung internetbereit wird, derart, dass das Modemsystem viel von der Netzwerkprotokollverarbeitung von der Haupt-CPU entlädt, während die Gesamtleistungsfähigkeit des Kommunikationssystems verbessert wird.
  • PORTABLE COMPUTER AND COMMUNICATIONS ASSOCIATION – MODEM STANDARDS COMMITTEE: „The IP Modem Interface Standard" PCCA DRAFT, [Online] 5. Juni 1998, XP002120914 (ftp://ftp.wrp.com/pcca/ipmd0506.pdf>) offenbart eine Architektur, die eine DCE-Vorrichtung umfasst, die unter Verwendung von V.24-Schaltungen mit einer DTE-Vorrichtung verbunden ist. Zum Implementieren eines IP-Modems weist die DCE einen Internetprotokollstapel auf.
  • Die WO 97/17764 bezieht sich auf eine Vorrichtung für einen globalen Netzwerkkommunikator, der eine anwendungsspezifische Kommunikationsvorrichtung im Wesentlichen lediglich für Globalnetzwerkkommunikationen umfasst und eine anwendungsspezifische Globalnetzwerkbenutzerschnittstelle umfasst. Eine Netzwerkprotokollverarbeitungsschaltungsanordnung ist für eine Kommunikation mit dem globalen Netzwerk und zum Formatieren von Daten zu einem erforderlichen Protokoll, das durch das globale Netzwerk eingesetzt wird, und zum Übersetzen von Daten, die von dem globalen Netzwerk empfangen werden, in ein Format wirksam, das für die Benutzerschnittstelle annehmbar ist. Eine Kommunikationsleitungsschnittstelle verbindet die Netzwerkprotokollverarbeitungsschaltungsanordnung mit dem globalen Netzwerk und umfasst logische und physische Schnittstellenvorrichtungen und Modulations- und Demodulationsvorrichtungen für Informationen, die zu dem globalen Netzwerk gesendet werden, bzw. Informationen, die von dem globalen Netzwerk empfangen werden, und eine Netzwerkzugriffsaktivierungsschaltungsanordnung zum Einleiten einer Kommunikation zwischen dem Kommunikator und dem globalen Netzwerk.
  • Die Erfindung bettet den Internetnetzwerkprotokollstapel zusammen mit einer speziellen Logik ein, wodurch ermöglicht wird, dass die Modemvorrichtung internetbereit wird. Folglich entlädt das Modemsystem viel von der Netzwerkprotokollverarbeitung von der Haupt-CPU und verbessert die Gesamtleistungsfähigkeit des Kommunikationssystems. Die Erfindung schafft ein internetbewusstes Modem gemäß Anspruch 1 und ein Verfahren zum Herstellen eines derartigen Modems gemäß Anspruch 2, wobei das Modem irgendeine Anzahl von Punkt-Zu-Punkt-Vorrichtungen mit den Protokollen kombiniert, die nötig sind, um in dem Internet zu kommunizieren, wobei diese Vorrichtungen herkömmliche Modems verschiedener Geschwindigkeit von 2400 kbps bis 56 kbps, ISDN-Modems, neuere xDSL-Modems und digitale zelluläre Modems umfassen.
  • Senden von Daten
  • Bei einem System, das mit einem internetbereiten Modem ausgerüstet ist, richtet die Internetanwendung zuerst die Sockelparameter ein. Diese umfassen die Bestimmungstornummer, den Verbindungstyp (TCP/UDP), die TOS-Anforderungen (TOS = Type-Of-Service = Diensttyp) und die Bestimmungs-IP-Adresse. Wenn der Netzwerkstapel an einer internetbereiten Modemkarte diese Informationen erhält, versucht derselbe, eine Verbindung durch ein Aussenden eines SYN-Pakets zu beginnen. Dieses Paket wird zu der IP-Maschine geleitet, die den IP-Kopfblock anbringt und die IP-Kopfblock-Prüfsumme berechnet. Das Paket wird dann zu der PPP-Handhabungseinrichtung geleitet, die den PPP-Kopfblock anbringt, die Daten verkapselt, und die PPP-Prüfsumme beifügt. Nach einer PPP-Einkapselung wird das resultierende Netzwerkpaket durch den Ausgangs-FIFO hindurch zu dem Modemkern gesendet. Für dieses Paket gibt die TCP-Maschine dem Paketanalysatorblock an, dass dasselbe ein SYN-Paket ist. Der Paketanalysator gibt dann dem Modem an, dass dieses ein alleinstehendes Paket ist und dass dasselbe unmittelbar gesendet werden kann. Auf ein Empfangen dieser Informationen hin sendet das Modem das Netzwerkpaket aus, ohne zuerst die üblichen 50 ms abzuwarten, um zu sehen, ob zusätzliche Informationen unterwegs sind.
  • Nachdem der Bestimmungssockel ein Rück-SYN-ACK-Paket sendet, wird ein ACK-Paket von der Modemkarte gesendet. Dieses Paket folgt den gleichen Schritten wie diesen für das SYN-Paket. An diesem Punkt steht die Sockelverbindung und die Anwendungssoftware (wie beispielsweise ein Web-Browser) wird benachrichtigt. Die Anwendung kann nun die Daten derselben direkt zu dem Modem in einem Datenpaketformat senden. Bei diesem Beispiel, bei dem die Anwendung ein Web-Browser ist, kann die Anwendung eine HTTP-Anforderung direkt zu dem Modemsystem über eine Paketschnittstelle senden, gegenüber der Seriell-Tor-I/O-Schnittstelle bei einem regulären Modemsystem. Datentransporte im DMA-Stil können zu diesem Zweck verwendet werden. Bei diesem Verfahren ist ein Datenbytezählwert in die Paketschnittstelle programmiert. Daten können dann automatisch von einem Speicher in eine Speicherkarte übertragen werden, ohne einen weiteren Eingriff von der Host-CPU. Nachdem alle Daten übertragen wurden, kann eine Unterbrechung von der Modemkarte zu der Host-CPU gesendet werden, wobei angegeben wird, dass der Datentransfer abgeschlossen ist.
  • Wenn die Daten bei der Modemkarte ankommen, werden dieselben (bei diesem Beispiel) zu einem TCP-Datenausgangspuffer gesendet. Nachdem alle Daten empfangen sind oder wenn die maximale Datengröße pro Paket empfangen wurde, beginnt der TCP-Block ein Berechnen der Prüfsumme. Das Paket wird in der gleichen Weise wie das SYN-Paket eingekapselt. Parallel dazu gibt die TCP-Maschine dem Paketanalysatorblock an, dass das Bestimmungstor für das Paket 80 ist, was das gut bekannte HTTP-Tor ist. Der Paketanalysator weiß dann, dass es nicht mehr Daten gibt und das Modem wieder das aktuelle Paket unmittelbar senden sollte.
  • Empfangen von Daten
  • Bei einem Empfangen von Netzwerkpaketen werden die Daten von dem Modemkern durch den Eingangs-FIFO zu der PPP-Maschine gesendet, die den PPP-Kopfblock syntaktisch analysiert, die Daten entkapselt und eine laufende Prüfung an dem Paket für Prüfsummenberechnungen beginnt. Falls die Maschine bestimmt, dass die eingekapselten Daten ein IP-Paket sind, gibt dieselbe die IP-Maschine frei, und alle Daten nach dem PPP-Kopfblock werden zu der IP-Maschine weitergeleitet. Die IP-Maschine analysiert den IP-Kopfblock syntaktisch, prüft die Prüfsumme, und sendet, falls dieselbe bestimmt, dass das eingekapselte Protokoll TCP ist, dann alle Daten nach dem IP-Kopfblock zu der TCP-Maschine. Die TCP-Maschine analysiert dann den TCP-Kopfblock syntaktisch und sendet den Datenabschnitt zu der Sicherheitsschicht. Falls die Daten HTML-Daten sind, können dieselben durch eine Bewertungsprüfung geleitet werden, die Bewertungskennungen von Seiten syntaktisch herausanalysiert. Falls die Seite eine Bewertung unter oder gleich der Modemkarteneinstellung aufweist, dann dürfen die Daten passieren. Falls die Bewertung die Einstellung an der Karte überschreitet, wird anstelle dessen eine Nachricht weitergeleitet, die solches angibt. Falls die Seite keine Bewertungen enthält, kann ein Bit gesetzt werden, um die Seite entweder durchzu lassen oder zu blockieren. Alle Nicht-HTML-Daten werden direkt zu dem TCP-Datenpuffer geleitet.
  • Wenn die Daten in den Puffer geschrieben werden, wird ein laufender Zählwert gehalten, um zu sehen, wie viele Daten empfangen wurden. An dem Ende des Netzwerkpakets kann dann, falls die PPP-Prüfsumme angibt, dass das gesamte Paket ohne Fehler empfangen wurde, eine Unterbrechung zu der Host-CPU erzeugt werden. Die Anwendung kann dann den empfangenen Datenzählwert lesen und eine DMA-Übertragung programmieren, um Daten von dem TOP-Puffer in einen Hauptspeicher zu übertragen.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das Verbindungsprotokolle, die durch das Internet verwendet werden, und die hierarchische Beziehung derselben zeigt;
  • 2 ist ein Blockdiagramm, das ein typisches Modemuntersystem zeigt;
  • 3 ist ein schematisches Blockdiagramm, das ein internetbereites Modemsystem gemäß der Erfindung zeigt;
  • 4 ist ein schematisches Blockdiagramm, das ein Modem mit einem vollen Netzwerkstapel gemäß der Erfindung zeigt;
  • 5 ist ein Blockschema, das eine PPP-Funktion gemäß der Erfindung zeigt;
  • 6a ist ein schematisches Blockdiagramm, das ein Modem und eine Netzwerkkarte des Stands der Technik zeigt;
  • 6b ist ein schematisches Blockdiagramm, das ein Modem gemäß der Erfindung und eine verbesserte Ethernet-Netzwerkkarte zeigt;
  • 7 ist ein schematisches Diagramm, das Felder zeigt, die bei einem PPP-Protokollpaket verwendet werden, um eine Latenz zu bestimmen, gemäß der Erfindung;
  • 8 ist ein schematisches Blockdiagramm, das eine Optimierung basierend auf TOS gemäß der Erfindung zeigt;
  • 9 ist ein schematisches Blockdiagramm, das eine Optimierung basierend auf einem Bestimmungstor gemäß der Erfindung zeigt;
  • 10 ist ein schematisches Blockdiagramm, das eine Optimierung basierend auf einem Paketzustand gemäß der Erfindung zeigt;
  • 11 ist ein schematisches Blockdiagramm, das kombinierte Latenztabellen gemäß der Erfindung zeigt;
  • 12 ist ein schematisches Blockdiagramm, das ein verbessertes Modemsystem gemäß der Erfindung zeigt;
  • 13 ist ein schematisches Blockdiagramm, das einen Datenfluss eines empfangenen Pakets durch eine HTML-Abhörvorrichtung gemäß der Erfindung zeigt; und
  • 14 ist ein schematisches Blockdiagramm, das eine HTML-Abhörvorrichtung gemäß der Erfindung zeigt.
  • Detaillierte Beschreibung der Erfindung
  • Die Erfindung sieht ein internetbewusstes Modem vor, das irgendeine Anzahl von Punkt-Zu-Punkt-Vorrichtungen mit den Netzwerkprotokollen kombiniert, die nötig sind, um in dem Internet zu kommunizieren, wobei diese Vorrichtungen herkömmliche Modems verschiedener Geschwindigkeit von 2400 kbps bis 56 kbps, ISDN-Modems, neuere xDSL-Modems und digitale zelluläre Modems umfassen. Die Erfindung bettet den Internetnetzwerkprotokollstapel zusammen mit einer speziellen Logik ein, wodurch ermöglicht wird, dass die Modemvorrichtung internetbereit wird. Folglich entlädt das Modemsystem viel von der Netzwerkprotokollverarbeitung von der Haupt-CPU und verbessert die Gesamtleistungsfähigkeit des Kommunikationsuntersystems.
  • Die Erfindung sieht mehrere Technologien vor, die eine Modemleistungsfähigkeit und -effizienz bei einer Verwendung mit Internetprotokollen verbessern. Diese Technologien umfassen:
    • • blockbasierte Kommunikation,
    • • Latenz-Optimierung,
    • • reduzierte Verarbeitungsleistung,
    • • reduzierte Energieanforderungen und
    • • Sicherheitsverbesserungen.
  • Reduzierung von Datenübertragungsmehraufwand
  • Modems kommunizieren heute alle über serielle Tore. Diese serielle Kommunikation weist mehrere Leistungsfähigkeitsnachteile gegenüber anderen Kommunikationsvorrichtungen auf, wie beispielsweise Ethernet-Adaptern, die durch ein Senden und Empfangen von Datenblöcken über DMA (Direct Memory Access = Direktspeicherzugriff) mit der Host-CPU kommunizieren.
  • Serielle Kommunikationen
  • Eine serielle Kommunikation unter Verwendung einer älteren seriellen Hardware (z. B. UARTs) erfordert eine Unterbrechung für jedes gesendete oder empfangene Schriftzeichen. Dies bewirkt so viel Mehraufwand, dass es nicht möglich ist, mit Geschwindigkeiten über 19200 bps zu kommunizieren, ohne bei den meisten Computersystemen Daten fallen zu lassen. Eine serielle Hardware einer zweiten Generation (z. B. der 16550 UART und die Derivate desselben) sind in der Lage, bis zu 16 Byte bei einem Senden und Empfangen zu Puffern, und können Unterbrechungen verzögern, bis ein Puffer einen bestimmten Pegel erreicht. Dies reduziert die Anzahl von Unterbrechungen, die erforderlich sind, um Daten zu und von dem Modem zu übertragen. Dies ermöglicht, dass moderne Modems serielle Datenraten von 56000 bps bis 230400 bps erreichen, ohne bei den meisten CPUs Daten zu verlieren.
  • Obwohl eine serielle Hochgeschwindigkeitskommunikation unter Verwendung einer seriellen Hardware der zweiten Generation nun möglich ist, können bei diesen höheren Datenraten serielle Kommunikationen eine merkliche Verschlechterung bei einer Systemleistungsfähigkeit bewirken, besonders wenn das Computersystem internetfähige Action-Spiele oder Multimediakommunikationsprogramme ausführt. Tausende von Unterbrechungen pro Sekunde sind bei den höheren Datenraten erforderlich (siehe Tabelle 1 unten). Tabelle 1. Beispiel einer Anforderung einer seriellen Unterbrechung
    Figure 00120001
  • Jede Unterbrechung benötigt eine Unterbrechungsdienstroutine, um Daten zu/von der seriellen Hardware und zu/von dem Betriebssystem des Computers zu lesen und zu schreiben. Diese Unterbrechungsroutinen lesen und schreiben zu I/O-Toren, die Systemressourcen nicht effizient verwenden.
  • Optimierung unter Verwendung von Blockübertragungen
  • Es gab Gespräche über einen UART einer nächsten Generation, der entweder 32- oder 64-Byte-Puffer aufweisen würde, um die Anzahl von Unterbrechungen und eine Belastung an einem System zu reduzieren. Während dies eventuell hilfreich ist, haben die Erfinder erkannt, dass die korrekte Lösung darin besteht, das Modem für Internetprotokolle zu optimieren und Daten als Blöcke von Datenpaketen zu übertragen.
  • Eine blockbasierte Kommunikation zu/von Modems wurde bisher nicht betrachtet, weil die Internetprotokolle, die entworfen sind, um ein Modemeine serielle Vorrichtung schnittstellenmäßig zu verbinden, seriell-basiert sind (SLIP/PPP) und herkömmlicherweise in dem Betriebssystem des Computersystems implementiert sind. Unter Verwendung der hierin beschriebenen Erfindung ist es vorteilhaft, die Netzwerkstapelprotokolle von dem Computerbetriebssystem in das Modem zu bewegen. Die Schichten des Netzwerkprotokolls, die in einer Hardwarevorrichtung gemäß der Erfindung implementiert sein können, können von nur der PPP-Schicht bis hin zu der IP-, der TCP- und der UDP-Schicht reichen.
    • Beispiel: blockbasierte Unterbrechungsanforderung: unter der Annahme eines durchschnittlichen IP-Pakets von 100 Byte: 25600 Bps/100 = 256 Unterbrechungen pro Sekunde.
  • Wie es bei dem obigen Beispiel gezeigt ist, reduziert ein Übertragen von Blöcken anstelle von Brocken von Schriftzeichen, wie bei der seriellen Lösung, die Anzahl von erforderlichen Unterbrechungen. Ein zusätzlicher Vorzug besteht darin, dass die Übertragungsroutine einen Direktspeicherzugriff (DMA) verwenden kann, um Daten zu leiten, anstelle eines langsameren I/O-Tor-Pumpens. Eine aktuelle Seriell-Tor-Hardware und -Software unterstützt keinen DMA.
  • Dies ermöglicht die Entwicklung einer Software, die schnellere, effizientere Datenhandhabungsroutinen erzeugen kann, weil die Host-CPU eines Handhabens des Übertragens einzelner Bytes von Daten erleichtert ist.
  • Reduzierte Latenz
  • Sobald das Modem weiß, dass dasselbe es mit IP-Paketen zu tun hat, weist dasselbe eine Kenntnis dessen auf, wo Daten einheiten anfangen und enden. Modemprotokolle, wie beispielsweise V.42 und V.42 bis, können optimiert sein, um diese Kenntnis auszunutzen.
  • V.42 weist eine veraltete Ansicht dessen auf, welche Art von Daten über ein Modem getragen wird, aber falls der Netzwerkstapel zusammen mit einem Modemkern eingebettet ist, kann derselbe dem Modemkern das Ende von Dateneinheiten angeben. Der Modemkern kann dann die V.42-Pakete desselben entsprechend segmentieren. Dies reduziert eine Latenz bei einer Neuübertragung, weil eine Neuübertragung eine höhere Wahrscheinlichkeit eines Beeinflussens von lediglich einem IP-Paket aufweisen würde. Eine Kenntnis des Endes eines Pakets kann ebenfalls verwendet werden, um das Warten auf einen Zeitablauf von mehr Daten zu reduzieren, den das V.42-Protokoll einbringt. Falls bekannt ist, dass das letzte empfangene Byte ein Ende eines physischen Datenblocks ist, muss das Modem nicht warten oder kann die Zeit reduzieren, die dasselbe wartet, dass mehr Daten zu demselben gesendet werden, bevor dasselbe diese Daten sendet, die dasselbe zum Senden bereit hat.
  • Dieser Aspekt der Erfindung kann erweitert werden, um ein IP- und TCP-Paket-Abhören durchzuführen, um weiter zu optimieren, was wann gesendet wird und wie lange das V.42-Protokoll vor einem Komprimieren und Senden des aktuellen Blocks wartet. Das TOS-Feld in dem IP-Kopfblock beispielsweise kann verwendet werden, um den Betrag einer Latenz zu bestimmen, der bei der Übertragung des Pakets verwendet wird. Falls das Paket ein Paket mit hoher Priorität ist, kann das System entscheiden, das Paket unmittelbar zu senden, wobei nicht geprüft wird, um zu bestimmen, ob mehr Pakete bereit zum Senden sind. Das System kann basierend auf diesen TOS-Informationen variierende Zeitdauern lang auf mehr Daten warten.
  • Eine zusätzliche Latenzoptimierung kann durch ein Überprüfen des TCP-Kopfblocks erzielt werden. Falls das SYN-Flag in dem TCP-Kopfblock gesetzt ist, dann sollten die Daten auch unmittelbar gesendet werden, weil nichts mehr passieren kann, bis das SYN-ACK von der anderen Seite der Verbindung zurückgegeben wird.
  • Ungleich vorheriger Fortschritte bei einer Modemtechnologie, die erforderten, dass die gleichen technischen Fortschritte sowohl an dem empfangenden als auch dem sendenden Ende der Kommunikationsverbindung bestehen, kann ferner das hierin offenbarte Modem bei allen heute existierenden Modems wirksam sein und ist kompatibel zu denselben. Deshalb ist es möglich, Leistungsfähigkeitserhöhungen durch ein Aktualisieren lediglich eines Endes der Verbindung zu gewinnen. Auf diese Weise ist eine Übernahme der Technologie nicht von Veränderungen bei einer ISP-Infrastruktur abhängig.
  • Reduzierte, von Host-CPU benötigte Verarbeitungsleistung
  • Durch ein Einbetten des Netzwerkstapels zusammen mit dem Modemkern ist eine deutliche Reduzierung bei einer Verarbeitungsleistung möglich, die erforderlich ist, um eine Verbindung mit dem Internet herzustellen und über dasselbe zu kommunizieren. Dies ermöglicht, dass kleine, kostengünstige Vorrichtungen mit wenig Leistung unter Verwendung von Modems über das Internet kommunizieren. Beispiele dieser Typen von Vorrichtungen umfassen Spielkonsolen, PDAs, Spielzeuge und andere Verbraucherelektronik und mobile elektronische Geräte.
  • Prozessorleistungsreduzierung von PPP
  • Das PPP-Protokoll erfordert, dass Pakete an dem Ende jedes Pakets angehängt eine CRC umfassen. Diese Berechnung erfordert etwas, was ein erheblicher Betrag an Verarbeitungsleistung bei kostengünstigen Prozessoren sein könnte.
  • Andere Aspekte des Protokolls, wie beispielsweise ein Verkapseln von Daten und Parameterverhandlungen, benötigen Speicherzugriffe für jedes Byte, wenn dieselben als eine Softwarelösung implementiert sind. Durch ein Implementieren von PPP in dem Modem können alle Verhandlungen örtlich begrenzt auf das Modem und das System gehalten werden, wodurch ein Systembusverkehr und ein Verarbeitungsmehraufwand erleichtert werden.
  • Prozessorleistungsreduzierung eines Einbettens von IP
  • Ein Einbetten von IP entlädt die Kopfblockprüfsummenberechnungen von dem Host-Prozessor. Dasselbe hält ferner eine ICMP-Echo-Paketverarbeitung örtlich begrenzt auf die Modemkarte. Dieses Protokoll wird für PING-Anwendungen verwendet.
  • Prozessorleistungsreduzierung eines Einbettens von UDP
  • Obwohl es möglich ist, UDP als eine Einkapselungsvorrichtung zu verwenden, die wenig Verarbeitungsleistung benötigt, wenn dieselbe bei Prüfsummen verwendet wird, kann UDP einige Prozessorressourcen benötigen. Hier ist zu beachten, dass die meisten dünnen Internet-Clients auf IP/UDP basieren, um die Daten derselben zu übertragen.
  • Prozessorleistungsreduzierung eines Einbettens von TCP
  • TCP ist ein viel komplizierteres Protokoll als UDP und erfordert somit viel mehr Verarbeitungsleistung. Das TCP weist viele Zustände auf und erfordert, dass Prüfsummen an Paketen vorgeformt sind. Für eingebettete Produkte, die eine TCP-Unterstützung benötigen, liefert die hierin beschriebene Erfindung eine Möglichkeit, die ganze Komplexi tät und alle Prozessoranforderungen auf eine zweckgebundene Hardwareschaltung zu entladen.
  • Portierbarkeit der Lösung
  • Durch ein Einbetten des Netzwerkstapels innerhalb des Modemuntersystems kann das gleiche Modemsystem nun über mehrere Rechen- und Systemplattformen hinweg verwendet werden. Weil kein Portieren irgendeiner Netzwerkstapelsoftware erforderlich ist, wird ein Bewegen des Modems in unterschiedliche Systeme sehr einfach. Dies ist besonders auf dem Markt eingebetteter Systeme bedeutsam, der nicht eines oder zwei Haupt-OS aufweist, sondern anstelle dessen aus einer Anzahl unterschiedlicher OS, RIOS und in einigen Fällen keinem OS gebildet ist. Der Markt eingebetteter Systeme ist ferner dadurch gekennzeichnet, dass derselbe aus einer Anzahl inkompatibler Prozessoren gebildet ist. Dieses Fehlen eines überwiegenden Standards begünstigt ebenfalls eine sehr portierbare Netzwerklösung.
  • Reduzierte Energieanforderungen
  • Die hierin beschriebene Erfindung ist ferner sehr effizient hinsichtlich Energieanforderungen. Eine sehr optimierte Zustandsmaschine reduziert die Taktrate, die erforderlich ist, um die Funktionalität der Internetprotokollfolge durchzuführen, um zwei Größenordnungen. Dies übersetzt sich in eine erweiterte Batterielebensdauer und weniger Wärme, die durch Produkte erzeugt wird, die mit der hierin beschriebenen Erfindung entworfen sind.
  • Sicherheitsverbesserungen
  • Durch ein Implementieren des Netzwerkstapels in einer Hardware zusammen mit dem Modem liefert die Erfindung einen sehr sicheren, nicht hackbaren Netzwerkstapel. Dies rührt von der Hardwarearchitekturimplementierung her, die ein jegliches empfangenes Paket nicht beachtet, wenn nicht bereits eine Sockelverbindung für dasselbe eingerichtet ist. Ferner kommen die Pakete nicht an der Modemkarte vorbei, wodurch eine jegliche Wechselwirkung zwischen unangeforderten Paketen und einer Software unmöglich gemacht wird.
  • Durch ein Umfassen einer HTML-Paketabhörvorrichtung ist es zusätzlich möglich, HTML-Bewertungskennungen zu decodieren. Die Paketabhörvorrichtung interpretiert Bytes in dem Paketpuffer und kann eingerichtet sein, um lediglich diese Seiten durchzulassen, die innerhalb des voreingestellten Bewertungspegels derselben liegen. Für Seiten, die den programmierten Bewertungspegel überschreiten, leitet die HTML-Abhörvorrichtung eine Wiedererlangung-fehlgeschlagen-Nachricht hinauf und lässt den HTML-Inhalt nicht an dem Modemuntersystem vorbei. Dies macht das Modem zu einer inhaltsgetriebenen Mini-Firewall.
  • Für diese Seiten, die keine Bewertungskennung umfassen, kann die Abhörvorrichtung konfiguriert sein, um entweder diese Seiten gar nicht durchzulassen oder um zu ermöglichen, dass die Seiten durchgelassen werden. Der Bewertungspegel kann lediglich über Platineneinstellungen programmiert, d. h. fest verdrahtet werden. Der Vorteil eines Implementierens dieser Lösung in einer Hardware besteht darin, dass es für Eltern oder irgendjemanden, der bestimmte Websites herausfiltern möchte, unmöglich ist, um dieses System herumzukommen, ohne die Modemkarte aus dem System zu nehmen. Bei irgendeiner Softwarelösung könnte der Benutzer einfach einen nichtfilternden Browser laden oder ein bestimmtes Plug-in sperren und das Filter würde umgangen. Durch ein Vorsehen des Filters in einer Hardware auf der Modemkarte gibt es keine Möglichkeit, die Funktion zu umgehen.
  • Systemimplementierung
  • 3 ist ein schematisches Blockdiagramm eines internetbereiten Modemsystems.
  • Senden von Daten
  • Bei einem System, das mit einem internetbereiten Modem 31 ausgerüstet ist, richtet die Internetanwendung zuerst die Sockelparameter ein. Diese umfassen die Bestimmungstornummer, den Verbindungstyp (TCP/UDP), die TOS-Anforderungen (TOS = Type-Of-Service) und die Bestimmungs-IP-Adresse. Wenn der Netzwerkstapel 30 an dem internetbereiten Modem 31 diese Informationen erhält, versucht derselbe, durch ein Aussenden eines SYN-Pakets eine Verbindung zu beginnen. Dieses Paket wird zu der IP-Maschine innerhalb des Netzwerkstapels geleitet, die den IP-Kopfblock anbringt und die IP-Kopfblockprüfsumme berechnet. Das Paket wird dann zu der PPP-Handhabungseinrichtung innerhalb des Netzwerkstapels geleitet, die den PPP-Kopfblock anbringt, die Daten verkapselt und die PPP-Prüfsumme anhängt. Nach einer PPP-Einkapselung wird das resultierende Netzwerkpaket durch den Ausgangs-FIFO 32 zu dem Modemkern 33 gesendet. Für dieses Paket gibt die TCP-Maschine dem Paketanalysatorblock 34 an, dass dasselbe ein SYN-Paket ist. Der Paketanalysator 34 gibt dann dem Modem an, dass dies ein alleinstehendes Paket ist und dass dasselbe unmittelbar gesendet werden kann. Auf ein Empfangen dieser Informationen hin sendet das Modem das Netzwerkpaket aus, ohne die normalen 50 ms zu warten, um zu sehen, ob zusätzliche Informationen unterwegs sind.
  • Nachdem der Bestimmungssockel ein Rück-SYN-ACK-Paket sendet, wird ein ACK-Paket von der Modemkarte gesendet. Dieses Paket folgt den gleichen Schritten wie diesen für das SYN-Paket. An diesem Punkt steht die Sockelverbindung und die Anwendungssoftware (wie beispielsweise ein Web-Browser 21) wird benachrichtigt. Die Anwendung kann nun die Daten derselben direkt zu dem Modem in einem Datenpaketformat senden.
  • Bei dem in 3 gezeigten Beispiel, bei dem die Anwendung ein Web-Browser ist, kann die Anwendung eine HTTP-Anforderung direkt zu dem Modemsystem über eine Paketschnittstelle 38 senden, im Gegensatz zu der Seriell-Tor-I/O-Schnittstelle bei einem gewöhnlichen Modemsystem (siehe 2). Datentransporte im DMA-Stil können zu diesem Zweck verwendet werden. Bei diesem Verfahren wird ein Datenbytezählwert in die Paketschnittstelle programmiert. Daten können dann automatisch von einem Speicher in eine Modemkarte übertragen werden, ohne einen weiteren Eingriff von der Host-CPU. Nachdem alle Daten übertragen wurden, kann eine Unterbrechung von der Modemkarte zu der Host-CPU 23 gesendet werden, wobei angegeben wird, dass der Datentransfer abgeschlossen ist.
  • Wenn die Daten an der Modemkarte ankommen, werden dieselben (bei diesem Beispiel) zu einem TCP-Datenausgangspuffer gesendet. Nachdem alle Daten empfangen sind oder wenn die maximale Datengröße pro Paket empfangen wurde, beginnt der TCP-Block ein Berechnen der Prüfsumme. Das Paket wird in der gleichen Weise wie das SYN-Paket eingekapselt. Parallel dazu gibt die TCP-Maschine in dem Netzwerkstapel dem Paketanalysatorblock an, dass das Bestimmungstor für das Paket 80 ist, was das gut bekannte HTTP-Tor ist. Der Paketanalysator weiß dann, dass es keine weiteren Daten gibt und erneut das Modem das aktuelle Paket unmittelbar senden sollte.
  • Empfangen von Daten
  • Bei einem Empfangen von Netzwerkpaketen werden die Daten von dem Modemkern 33 durch den Eingangs-FIFO 35 hindurch zu der PPP-Maschine in dem Netzwerkstapel gesendet, der den PPP-Kopfblock syntaktisch analysiert, die Daten entkapselt und eine laufende Prüfung an dem Paket für Prüfsummenberechnungen beginnt. Falls die Maschine bestimmt, dass die eingekapselten Daten ein IP-Paket sind, gibt dieselbe die IP-Maschine in dem Netzwerkstapel frei und alle Daten nach dem PPP-Kopfblock werden zu der IP-Maschine weitergeleitet. Die IP-Maschine analysiert den IP-Kopfblock syntaktisch, prüft die Prüfsumme, und falls dieselbe bestimmt, dass das eingekapselte Protokoll TOP ist, dann sendet dieselbe alle Daten nach dem IP-Kopfblock zu der TCP-Maschine in dem Netzwerkstapel. Die TCP-Maschine analysiert dann den TOP-Kopfblock syntaktisch und sendet den Datenabschnitt zu der Sicherheitsschicht 36. Falls die Daten HTML-Daten sind, können dieselben durch eine Bewertungsprüfung geleitet werden, die Bewertungskennungen von Seiten syntaktisch herausanalysiert. Falls die Seite eine Bewertung unterhalb oder gleich der Einstellung der Modemkarte aufweist, dann dürfen die Daten passieren. Falls die Bewertung die Einstellung an der Karte überschreitet, wird eine Nachricht, die dies angibt, anstelle dessen weitergeleitet. Falls die Seite keine Bewertungen enthält, kann ein Bit gesetzt werden, um die Seite entweder durchzulassen oder zu blockieren. Alle Nicht-HTML-Daten werden direkt zu dem TCP-Datenpuffer 37 geleitet.
  • Wenn die Daten in den Puffer geschrieben werden, wird ein laufender Zählwert gehalten, um zu sehen, wie viele Daten empfangen wurden. An dem Ende des Netzwerkpakets kann dann eine Unterbrechung zu der Host-CPU 23 erzeugt werden, falls die PPP-Prüfsumme angibt, dass das gesamte Paket ohne Fehler empfangen wurde. Die Anwendung kann dann den Empfangene-Daten-Zählwert lesen und einen DMA-Transfer programmieren, um Daten von dem TCP-Puffer in einen Hauptspeicher zu übertragen.
  • Merkmale der Erfindung
  • Die folgende Erörterung beschreibt verschiedene Merkmale der Erfindung:
    • 1. Ein Modem als eine Blockvorrichtung.
    • 2. Latenzoptimierung basierend auf Paketparametern: a) grundlegende Paketende-Optimierung, b) Optimierung basierend auf einem IP-TOS-Flag, c) Optimierung basierend auf UDP/TCP-Tornummern, d) Optimierung basierend auf einem TCP-Zustand und e) Latenztabelle.
    • 3. Ein Modem als eine vollständige Internetzugriffsvorrichtung: a) Teilstapellösungen: i) PPP/IP, ii) PPP/IP/ICMP und iii) PPP/IP/ICMP/UDP; und b) vollständige Stapellösungen (PPP/IP/ICMP/UDP/ TCP).
    • 4. Verbesserte Sicherheit und HTML-Filterung bei einem internetfähigen Modem.
  • Die folgende Erörterung beschreibt die obigen Merkmale detaillierter.
  • Ein Modem als eine Blockvorrichtung
  • Abhängig von den Netzwerkschichten, die bei der Modemhardware enthalten sind, werden unterschiedliche Datenformate zu dem Modemuntersystem gesendet. Bei irgendeiner der Implementierungen jedoch können DMA-Transfers verwendet werden, um einen CPU-Mehraufwand zu optimieren, der für die Transfers erforderlich ist.
  • Für die folgende Erörterung nehme man Bezug auf 4. Bei der Implementierung, bei der der gesamte Netzwerkstapel 40 bei der Modemkarte 41 enthalten ist, müssen lediglich die Daten der Anwendung 42 übertragen werden. Softwareanwendungen 44 kommunizieren mit der Modemkarte über eine Sockel-API 43.
  • Zumindest kann lediglich PPP zu dem Modem hinzugefügt werden. Die Funktion von PPP besteht darin, IP-Pakete (Blöcke von Daten) in einen seriellen Strom zu transformieren, so dass derselbe über eine serielle Vorrichtung (siehe 5) transportiert werden kann. Das PPP-Protokoll ist ferner für ein Verhandeln der Parameter verantwortlich, die verwendet werden, um Daten über die serielle Verbindung zu übertragen (z. B. Komprimierungsschemata und verkapselte Bytes). Wenn die PPP-Funktion 50 innerhalb des Modems durchgeführt wird, ist die Kommunikation zwischen dem Modem und der IP-Protokollstapelsoftware auf eine Weise wirksam, die dieser ähnlich ist, in der ein IP-Stapel mit einer Ethernet-Karte kommuniziert.
  • Wie bei einer Ethernet-Karte werden Pakete von dem IP-Protokollstapel zu dem Vorrichtungstreiber versandt. In dem Fall des Modems ist der Vorrichtungstreiber ein einfaches Schnittstellenbildungssoftwareprogramm, das Datenblöcke zu und von dem Modem und dem Host-Computer überträgt. Man vergleiche die Architektur des Modems von 6a des Stands der Technik mit dieser eines Modems gemäß der Erfindung, wie es in 6b gezeigt ist.
  • Dieses Ausführungsbeispiel der Erfindung ermöglicht alle der oben beschriebenen Effizienzvorzüge und ist eine attraktive Lösung, weil dasselbe durch ein Hinzufügen lediglich einer minimalen Menge an zusätzlicher Logik zu bestehenden Modemchipsätzen implementiert werden kann und weil dasselbe nur 512 Byte Speicher zu einer Unterstützung benötigt. Dies macht dasselbe sehr kostengünstig zu irgendeinem bestehenden Modem hinzuzufügen.
  • Latenzoptimierung
  • Herkömmliche Modems weisen keine Kenntnis des Datentyps auf, den dieselben tragen, und die Protokolle derselben sind für Schnittstellen auf Basis interaktiver Schriftzeichen optimiert. Die herkömmlichen Modemprotokolle weisen eine eingebaute Verzögerung von 50 ms vor einem Senden von Informationen auf. Diese Verzögerung liegt vor, weil das Modem keine Ahnung davon hat, wo die Daten aufhören und anfangen, so dass dasselbe wartet, bis dasselbe weiß, dass keine Daten mehr gesendet werden.
  • Bei der Beliebtheit des Internet werden beinahe alle Modems heute verwendet, um eine Verbindung mit dem Internet herzustellen. Ein Verwenden dieser Kenntnis und der Informationen darüber, wann die Pakete anfangen und enden, kann helfen, Modemübertragungen zu optimieren. Diese Optimierung kann die Menge an Zeit reduzieren, die benötigt wird, um ein Internetprotokollpaket von einem Modem zu einem anderen zu bewegen, durch ein Reduzieren oder Eliminieren der Verzögerung von 50 ms, die in die Modemprotokolle eingebaut ist. Dieses Merkmal der Erfindung kann unter Verwendung unterschiedlicher Teile des Netzwerkpakets erweitert werden, um Entscheidungen dahingehend zu treffen, ob es irgendeine Verzögerung geben sollte oder wie lange dieselbe sein sollte, bevor das Modem ein Paket verarbeitet. Das Hardwaremodul, das diese Optimierung handhabt, ist der Paketanalysatorblock 34 (siehe 3).
  • Grundlegende Paketende-Optimierung
  • Auf der grundlegendsten Ebene könnte man die Kenntnis des Endes des PPP-Pakets verwenden, um den Modemprotokollen zu sagen, eine geringe Menge an Zeit zu warten, bevor das Paket gesendet wird (siehe 7). Bei dem herkömmlichen Modemmodell würde das Modem, falls es genug Bytes gäbe, um einen Modemprotokollrahmen (wie beispielsweise V42) herzustellen, auf mehr Daten bis zu 50 ms lang warten, bevor dasselbe einen Zeitablauf feststellt und das Paket sendet. Mit einer Kenntnis des Endes des PPP-Pakets und des eingekapselten Protokolls könnte das Modem das Senden des Pakets mit dem Wissen beschleunigen, dass dasselbe ein vollständiges Paket aufweist.
  • Dieser Algorithmus ist für PPP-Unterprotokolle nützlich, wie beispielsweise LCP (Link Control Protocol), PAP (Password Authentication Protocol), CHAP (Challenge Handshake Authentication Protocol) und NCP (Network Control Protocol). Bei diesen und ähnlichen PPP-Unterprotokollen sind Pakete, die übertragen werden, dahingehend alleinstehend, dass alle Informationen innerhalb eines einzigen Pakets enthalten sind. In den meisten Fällen werden ferner, nachdem das Paket gesendet ist, keine weiteren Daten gesendet, weil die Vorrichtung auf eine Antwort von der anderen Vorrichtung wartet. Falls deshalb der Paketanalysator erfasst, dass ein PPP-Paket ein PPP-Unterprotokoll enthält, wenn derselbe das PPP-FCS-Feld erfasst, kann derselbe das Modem anweisen, lediglich 2 ms zu warten, bevor die Daten gesendet werden, anstelle der normalen 50 ms. Der Grund dafür, ein Minimum von zumindest 2 ms zu warten, besteht darin, dass bei dem Übergang zwischen der LTP-, der Authentifizierungs- und der NCP-Phase der PPP-Verhandlungen Rücken-an-Rücken-Pakete ausgesendet werden können. Es gäbe jedoch niemals mehr als zwei Rücken-an-Rücken-Pakete und das zweite Paket folgt immer unmittelbar innerhalb von 2 ms des ersten Pakets.
  • Eine weitere Optimierung kann durch ein Betrachten des Befehlcodes des PPP-Unterprotokollpakets auftreten. Eine beispielhafte Matrix von Befehlstypen und der entsprechenden Latenzeinstellung ist in der Tabelle 1 unten gezeigt. Tabelle 2. Matrix von Befehlstypen und entsprechender Latenzeinstellung
    Figure 00260001
  • Optimierung basierend auf IP-Kopfblockfeldern
  • Optimierung basierend auf dem TOS-Feld
  • Für IP-, TOP- und UDP-Pakete kann eine intelligentere Entscheidung darüber, wie lange zu warten ist oder wann Pakete zu senden sind, durch ein Untersuchen des Diensttypfelds (TOS-Felds) in dem IP-Kopfblock bestimmt werden. Das TOS-Feld beschreibt die Priorität und Zuverlässigkeit, die für das Paket angefordert sind. Die Eigenschaften, die für das TOS-Feld einstellbar sind, sind Verzögerung Minimieren, Durchsatz Maximieren, Zuverlässigkeit Maximieren und Kosten Minimieren. Es kann mehr als eine der TOS-Flag-Eigenschaften zu einer Zeit gesetzt sein. Diese Informationen können verwendet werden, um variable Wartezeitverzögerungen zu setzen oder das zu senden, was sich unmittelbar in dem Modempuffer befindet.
  • 8 zeigt, wie es möglich ist, in das TOS-Flag 80 nach einer Verzögerung-Minimieren-Eigenschaft zu suchen und diese Informationen und die Informationen darüber, wann das IP-Paket endet, zu verwenden, um den Modemprotokollen zu sagen, das Paket unmittelbar zu senden.
  • Optimierung basierend auf dem eingekapselten Protokoll
  • Eine weitere Optimierung, die basierend auf IP-Kopfblockfeldern durchgeführt werden kann, besteht darin, die Latenzeinstellung auf dem Protokollfeld zu basieren. Die meisten ICMP- und IGMP-Pakete sind in sich abgeschlossen, weshalb minimale Wartezeiten benötigt werden, nachdem dieselben gesendet sind. Nachdem der Paketanalysator bestimmt, dass das IP-Paket entweder ein IGMP- oder ICMP-Paket enthält, signalisiert derselbe dem Modemkern, das Paket unmittelbar zu senden.
  • Optimierung basierend auf Pakettoren
  • Bestimmte Arten von Internetdiensten weisen Informationsverteilungen auf, die erfordern, dass lediglich ein Paket von Daten gesendet und empfangen wird. Bei diesen Typen von Diensten ist es optimal, immer ein Paket unmittelbar zu senden, ohne auf mehr Daten zu warten. Andere Internetdienste weisen jedoch andere Paketverteilungsmuster auf, die für UDP und TCP optimiert sein können, die Hauptprotokolle, die zusätzlich zu IP verwendet werden. Beide verwenden Tore, um Dienste zu beschreiben. 9 liefert ein Beispiel dessen, wie die Torinformationen, die sowohl in UDP als auch TCP getragen sind, verwendet werden, um eine Modemlatenz zu optimieren.
  • Die Latenztabelle 90 enthält eine Tabelle von Toren und die Zeitdauer, die nach dem Ende des Pakets auf mehr Daten zu warten ist. Ein Beispiel eines Optimierens unter Verwendung dieses Verfahrens ist die DNS-Anwendung. Bei dieser Anwendung kann der gesamte Datenabschnitt der Nachricht ohne weiteres in ein Internetpaket passen. Falls nach einem Untersuchen des Bestimmungstors in dem UDP-Kopfblock deshalb bestimmt wird, dass dasselbe ein DNS-Paket ist, kann das Paket unmittelbar gesendet werden, weil keine weiteren Pakete kommen. Tabelle 3 unten stellt eine beispielhafte Protokoll-Tor-Latenztabelle bereit. Tabelle 3. Latenztabelle – Beispiel I
    Figure 00280001
  • Latenzoptimierung basierend auf Paketzustand
  • TCP ist ein zustandsbasiertes Protokoll und bestimmte Zustände weisen gut bekannte Eigenschaften auf, die für eine Latenzoptimierung verwendet werden können. Ein Beispiel ist der Dreiwege-Quittungsaustausch (Dreiwege-Handshake), mit dem alle TCP-Verbindungen beginnen. Die ersten wenigen Pakete dieser Transaktion sind kleine Pakete, die gesendet werden müssen, bevor irgendwelche weiteren Kommunikationen stattfinden können. Die Erfindung kann die Zeit, die dieser Verbindungsprozess benötigt, merklich verbessern. Dies kann eine sehr merkliche Verbesserung sein, besonders wenn eine Software betrieben wird, die viele TCP-Verbindungen zu einer Zeit während einer Transaktion verbindet, wie beispielsweise mit einem Web-Browser.
  • In 10 werden Informationen von dem IP-Kopfblock (TCP-Protokolltyp) 100 und der TCP-Zustand 101 verwendet, um einen Latenzwert nachzuschlagen, der durch das Modemprotokoll an dem Ende des Pakets geleitet werden soll. Tabelle 4 unten stellt eine beispielhafte Latenztabelle unter Verwendung dieser Informationen bereit. Tabelle 4. Latenztabelle – Beispiel II
    Figure 00290001
    • X = bedeutungslos
  • Die Latenztabelle
  • Latenztabellen sind Zustandsmaschinen, die eine Anzahl von Eingaben aufweisen, die durch Charakteristika eines Pakets ausgelöst werden. Aus diesen Eingaben erzeugt die Latenztabelle einen optimierten Latenzwert für das Modemprotokoll, wobei jedes Paket wirksam optimiert wird, wenn dasselbe das System durchläuft. Ein schematisches Blockdiagramm der Latenztabellen ist in der 11 gezeigt, in der die oben erörterten Informationen kombiniert sind.
  • Die IP-Latenzauflöseeinrichtung 110 nimmt die Eingaben von der IP-Unterprotokoll-Latenztabelle 111 und der IP-TOS-Feld-Latenztabelle 112 und wählt den niedrigeren der zwei Werte aus. Die TCP-Latenzauflöseeinrichtung 113 führt eine ähnliche Funktion für die Bestimmungstor-Latenztabelle 114 und die TCP-Zustand-Latenztabelle 115 durch. Die Ausgaben der IP-Latenzauflöseeinrichtung und der TCP-Latenzauflöseeinrichtung werden gemultiplext 117, um einen kombinierten Latenzwert für dasselbe zu erzeugen. (Die Multiplexauswahl ist durch das Protokollfeld in dem IP-Kopfblock bestimmt, wie es durch die IP-Unterprotokoll-Latenztabelle III syntaktisch analysiert ist.) Ein Wert wird auch durch die PPP-Latenztabelle 116 geliefert. Dieser Wert wird mit dem gemultiplexten 117 Wert der IP-Latenzauflöseeinrichtung und der TCP-Latenzauflöseeinrichtung gemultiplext. Die Multiplexauswahl für einen Multiplexer 118 ist durch das Protokollfeld in dem PPP-Kopfblock bestimmt, wie es durch die PPP-Latenztabelle 116 syntaktisch analysiert ist. Der endgültige Latenzwert wird dann zu dem Modemuntersystem gesendet.
  • Ein Modem als eine vollständige Internetzugriffsvorrichtung
  • Das erweiterte Internetmodemmodell ist ein alleinstehendes, einbettbares, höchst integriertes Kommunikationsprodukt, das beinahe eine jegliche elektronische Vorrichtung (siehe 12) internetfähig machen kann. Diese Lösung weist eine Anzahl von Vorteilen gegenüber den oben erörterten prozessorbasierten Lösungen auf. Genauer gesagt ermöglicht diese Architektur die Hinzufügung einer Internetunterstützung zu Nicht-Computer-Anwendungen, wie beispielsweise Spielkonsolen und VCRs. Dieselbe ist auch sehr nützlich für diese Vorrichtungen, die begrenzte Speicherstandflächen (Spei cher-Footprints) aufweisen und nicht die ganze Zeit eine Netzwerkunterstützung benötigen. Ein Beispiel für dies sind Vorrichtungen des Typs Palm Pilot, bei denen das einzige Mal, wenn die zusätzliche Netzwerkunterstützung benötigt wird, dann ist, wenn das Modem verwendet wird. Ein Vorteil der Erfindung besteht darin, dass es nicht nötig ist, Speicherressourcen an Merkmale zu verschwenden, die nicht die ganze Zeit verwendet werden.
  • Verbesserte Sicherheitsvorzüge
  • Wie es oben angemerkt ist, besteht ein Sicherheitsvorzug eines Aufweisens eines hardwarebasierten Netzwerkstapels darin, dass lediglich diese empfangenen Pakete, die für eine vorkonfigurierte Sockelverbindung bestimmt sind, das Modemuntersystem passieren dürfen. Alle anderen Pakete werden auf der Hardwareebene herausgefiltert, wobei eine jegliche Wechselwirkung zwischen diesen Paketen und einer Software unmöglich gemacht ist. Mit der Hinzufügung der HTML-Abhörvorrichtung kann ferner eine V-Chip-ähnliche Filterung geliefert werden, die nicht ohne weiteres umgangen werden kann. Blockdiagramme der HTML-Abhörvorrichtung sind in 13 und 14 gezeigt.
  • In 13 wird ein Paket 138 an der TCP-Maschine 139 empfangen. Das Paket ist für einen spezifischen Sockel bestimmt. Die HTML-Paketabhörvorrichtung 144 weist eine voreingestellte Bewertung 146 auf, die auf das Paket angewandt wird, um zu bestimmen, ob das Paket in dem Empfangspaketpuffer 145 platziert werden soll.
  • Wie es in 14 gezeigt ist, nimmt innerhalb der HTML-Paketabhörvorrichtung der HTTP-Ansprechen-Parser 140 (die Einrichtung zum syntaktischen Analysieren eines HTTP-Ansprechens) empfangene Pakete von dem Sockel 141 und interpretiert den HTTP-Kopfblock, um zu bestimmen, ob der Dateninhalt gültige HTML-Daten enthält. Falls dem so ist, gibt derselbe den HTML-Bewertungsdecoder 142 frei, der beginnt, die HTML-Daten hinsichtlich Bewertungskennungen syntaktisch zu analysieren. Der HTML-Decoder schreibt alle empfangenen Daten zu dem Empfangspaketpuffer 145 (einschließlich des HTTP-Kopfblocks) und analysiert zu der gleichen Zeit Kennungen syntaktisch. Falls derselbe eine Bewertungskennung erfasst, vergleicht derselbe die Bewertung der Seite mit dem voreingestellten Bewertungspegel der Karte. Falls dieselbe besteht, dann wird fortgefahren, die Seite in dem Empfangspuffer zu speichern. Falls die Seite durchfällt, dann werden alle weiteren Daten unterdrückt, wird der Speicherpuffer auf den Punkt vor dem Empfangen des aktuellen Pakets rückgesetzt und wird eine Zurückweisungsnachricht in einem Speicher gespeichert. Falls die Seite keine Bewertungen an dem Kopf der Seite enthält, kann die Karte entweder konfiguriert sein, um die Seite durchzulassen oder die Seite zurückzuweisen.

Claims (11)

  1. Ein Modem (31), das folgende Merkmale aufweist: einen Modemkern (33); und einen Netzwerkstapel (30), der in einer Hardware eingebettet ist und die Netzwerkprotokolle ausführt, um zu ermöglichen, dass das Modem in einem elektronischen Netzwerk kommuniziert, wobei der Netzwerkstapel einen Internet-Netzwerkprotokollstapel aufweist, wobei der Netzwerkstapel Datenblöcke sendet und empfängt, wobei Netzwerkprotokolle, die bei dem Netzwerkstapel implementiert sind, irgendwelche der Protokolle umfassen, die durch PPP-, IP-, TCP- und UDP-Kommunikationsschichten benötigt werden, wobei der Netzwerkstapel Direktspeicherzugriffsoperationen für Datenübertragungen zwischen dem Netzwerkstapel und einem Speicher verwendet.
  2. Ein Verfahren zum Herstellen eines Modems (31), das folgende Schritte aufweist: Bereitstellen eines Modemkerns (33); und Einbetten eines Netzwerkstapels (30) in einer Hardware, wobei der Netzwerkstapel Netzwerkprotokolle ausführt, um zu ermöglichen, dass das Modem in einem elektronischen Netzwerk kommuniziert, wobei der Netzwerkstapel einen Internet-Netzwerkprotokollstapel aufweist, wobei der Netzwerkstapel Datenblöcke sendet und empfängt, wobei Netzwerkprotokolle, die bei dem Netzwerkstapel implementiert sind, irgendwelche der Protokolle umfassen, die durch PPP-, IP-, TCP- und UDP-Kommunikationsschichten benötigt werden, wobei der Netzwerkstapel Direktspeicherzugriffsoperationen für Datenübertragungen zwischen dem Netzwerkstapel und einem Speicher verwendet.
  3. Das Verfahren gemäß Anspruch 2, das ferner folgenden Schritt aufweist: Durchführen eines IP- und TCP-Paket-Abhörens.
  4. Das Verfahren gemäß Anspruch 2, das ferner folgenden Schritt aufweist: Verwenden eines TOS-Felds in einem IP-Kopfblock, um den Betrag einer Latenz zu bestimmen, der bei der Sendung eines Pakets verwendet wird.
  5. Das Verfahren gemäß Anspruch 2, das ferner folgenden Schritt aufweist: Durchführen einer Latenzoptimierung durch Prüfen eines TCP-Kopfblocks.
  6. Das Verfahren gemäß Anspruch 2, bei dem alle Protokollverhandlungen durch den Netzwerkstapel auf das Modem örtlich begrenzt gehalten werden.
  7. Das Verfahren gemäß Anspruch 2, bei dem der Netzwerkstapel ein jegliches empfangenes Paket nicht beachtet, außer es ist bereits eine Sockelverbindung für dasselbe eingerichtet.
  8. Das Verfahren gemäß Anspruch 2, das ferner folgenden Schritt aufweist: Bereitstellen einer Paketabhörvorrichtung zum Decodieren von HTML-Bewertungskennungen, wobei die Paketab hörvorrichtung lediglich diese Seiten durchlässt, die innerhalb eines voreingestellten Bewertungspegels liegen.
  9. Das Verfahren gemäß Anspruch 8, bei dem die Paketabhörvorrichtung konfiguriert ist, um unbewertete Seiten, die überhaupt keine Bewertungskennung umfassen, entweder nicht durchzulassen oder zu ermöglichen, dass die unbewerteten Seiten durchgelassen werden.
  10. Das Verfahren gemäß Anspruch 8, bei dem ein Bewertungspegel lediglich über fest verdrahtete Einstellungen programmiert werden kann.
  11. Das Verfahren gemäß Anspruch 2, bei dem Softwareanwendungen mit dem Modemkern und dem Netzwerkstapel über eine Sockel-API kommunizieren.
DE69934226T 1998-06-11 1999-06-10 TCP/IP/PPP Modem Expired - Lifetime DE69934226T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US8886598P 1998-06-11 1998-06-11
US88865P 1998-06-11
US09/321,902 US6765901B1 (en) 1998-06-11 1999-05-28 TCP/IP/PPP modem
US321902 1999-05-28
PCT/US1999/013184 WO1999065219A1 (en) 1998-06-11 1999-06-10 Tcp/ip/ppp modem

Publications (2)

Publication Number Publication Date
DE69934226D1 DE69934226D1 (de) 2007-01-11
DE69934226T2 true DE69934226T2 (de) 2007-10-11

Family

ID=26779128

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69934226T Expired - Lifetime DE69934226T2 (de) 1998-06-11 1999-06-10 TCP/IP/PPP Modem

Country Status (12)

Country Link
US (4) US6765901B1 (de)
EP (1) EP1086573B1 (de)
JP (1) JP2002518892A (de)
KR (1) KR20010043790A (de)
CN (1) CN1305681A (de)
AT (1) ATE347230T1 (de)
AU (1) AU741089B2 (de)
CA (1) CA2328829A1 (de)
DE (1) DE69934226T2 (de)
HK (1) HK1037901A1 (de)
TW (1) TW431099B (de)
WO (1) WO1999065219A1 (de)

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5978379A (en) 1997-01-23 1999-11-02 Gadzoox Networks, Inc. Fiber channel learning bridge, learning half bridge, and protocol
US8539112B2 (en) 1997-10-14 2013-09-17 Alacritech, Inc. TCP/IP offload device
US6687758B2 (en) 2001-03-07 2004-02-03 Alacritech, Inc. Port aggregation for network connections that are offloaded to network interface devices
US6470415B1 (en) 1999-10-13 2002-10-22 Alacritech, Inc. Queue system involving SRAM head, SRAM tail and DRAM body
US7167927B2 (en) 1997-10-14 2007-01-23 Alacritech, Inc. TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6434620B1 (en) * 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US7237036B2 (en) 1997-10-14 2007-06-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding a TCP connection
US8621101B1 (en) 2000-09-29 2013-12-31 Alacritech, Inc. Intelligent network storage interface device
US6389479B1 (en) 1997-10-14 2002-05-14 Alacritech, Inc. Intelligent network interface device and system for accelerated communication
US7042898B2 (en) 1997-10-14 2006-05-09 Alacritech, Inc. Reducing delays associated with inserting a checksum into a network message
US7284070B2 (en) 1997-10-14 2007-10-16 Alacritech, Inc. TCP offload network interface device
US7174393B2 (en) 2000-12-26 2007-02-06 Alacritech, Inc. TCP/IP offload network interface device
US6658480B2 (en) 1997-10-14 2003-12-02 Alacritech, Inc. Intelligent network interface system and method for accelerated protocol processing
US6427173B1 (en) 1997-10-14 2002-07-30 Alacritech, Inc. Intelligent network interfaced device and system for accelerated communication
US8782199B2 (en) 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US6757746B2 (en) 1997-10-14 2004-06-29 Alacritech, Inc. Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
US6591302B2 (en) 1997-10-14 2003-07-08 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US6427171B1 (en) 1997-10-14 2002-07-30 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US6697868B2 (en) 2000-02-28 2004-02-24 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US6765901B1 (en) * 1998-06-11 2004-07-20 Nvidia Corporation TCP/IP/PPP modem
US7664883B2 (en) 1998-08-28 2010-02-16 Alacritech, Inc. Network interface device that fast-path processes solicited session layer read commands
US7430171B2 (en) 1998-11-19 2008-09-30 Broadcom Corporation Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
US8135842B1 (en) * 1999-08-16 2012-03-13 Nvidia Corporation Internet jack
US6625640B1 (en) * 1999-09-01 2003-09-23 Inventec Corporation Modem having embedded network transmission protocols
KR20020029783A (ko) * 1999-09-08 2002-04-19 밀러 럿셀 비 무선 통신망에서 인입 패킷 데이터 호에 언제 응답할지를자동으로 결정하는 시스템 및 방법
GB2355163A (en) * 1999-10-05 2001-04-11 Inventec Corp A modem having embedded network transmission protocols
EP1188294B1 (de) 1999-10-14 2008-03-26 Bluearc UK Limited Vorrichtung und verfahren zur hardware-ausführung oder hardware-beschleunigung von betriebssystemfunktionen
US6778505B1 (en) 2000-01-03 2004-08-17 Agere Systems Inc. DSL automatic protocol detection system
KR20010076328A (ko) * 2000-01-19 2001-08-11 이정태 티씨피/아이피를 하드웨어적으로 처리하는 장치 및 그동작방법
US6731201B1 (en) 2000-02-23 2004-05-04 Robert Shaw Controls Company Communications module and system
KR100321822B1 (ko) * 2000-02-29 2002-03-07 윤영찬 이더넷용 티씨피/아이피 모뎀
US6993010B1 (en) * 2000-07-07 2006-01-31 Mindspeed Technologies, Inc. Spoofing to preserve a communication link
WO2002015475A2 (en) * 2000-08-16 2002-02-21 Polycom, Inc. High-bandwidth network access device with integrated server capability
PT1180893E (pt) * 2000-08-16 2007-01-31 Zyxel Communications Corp Dispositivo de modem
US8019901B2 (en) 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
NL1016533C2 (nl) * 2000-11-02 2002-05-07 Industree B V Werkwijze en inrichting voor het in een datacommunicatienetwerk beperken van de overdracht van data.
US7039717B2 (en) * 2000-11-10 2006-05-02 Nvidia Corporation Internet modem streaming socket method
US7379475B2 (en) * 2002-01-25 2008-05-27 Nvidia Corporation Communications processor
WO2003005672A2 (en) * 2001-07-06 2003-01-16 Livedevices Limited Improvements relating to reduction of resource usage in tcp/ip implementation
US7171562B2 (en) 2001-09-05 2007-01-30 International Business Machines Corporation Apparatus and method for providing a user interface based on access rights information
US6892201B2 (en) 2001-09-05 2005-05-10 International Business Machines Corporation Apparatus and method for providing access rights information in a portion of a file
KR20030080443A (ko) * 2002-04-08 2003-10-17 (주) 위즈네트 하드웨어 프로토콜 프로세싱 로직으로 구현된 인터넷 통신프로토콜 장치 및 상기 장치를 통한 데이터 병렬 처리 방법
US7543087B2 (en) 2002-04-22 2009-06-02 Alacritech, Inc. Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device
US7007103B2 (en) * 2002-04-30 2006-02-28 Microsoft Corporation Method to offload a network stack
US7181531B2 (en) * 2002-04-30 2007-02-20 Microsoft Corporation Method to synchronize and upload an offloaded network stack connection with a network stack
US7403542B1 (en) * 2002-07-19 2008-07-22 Qlogic, Corporation Method and system for processing network data packets
US7934021B2 (en) 2002-08-29 2011-04-26 Broadcom Corporation System and method for network interfacing
US7346701B2 (en) 2002-08-30 2008-03-18 Broadcom Corporation System and method for TCP offload
US7411959B2 (en) 2002-08-30 2008-08-12 Broadcom Corporation System and method for handling out-of-order frames
US8180928B2 (en) 2002-08-30 2012-05-15 Broadcom Corporation Method and system for supporting read operations with CRC for iSCSI and iSCSI chimney
US7313623B2 (en) * 2002-08-30 2007-12-25 Broadcom Corporation System and method for TCP/IP offload independent of bandwidth delay product
US7457822B1 (en) 2002-11-01 2008-11-25 Bluearc Uk Limited Apparatus and method for hardware-based file system
US20040088262A1 (en) * 2002-11-06 2004-05-06 Alacritech, Inc. Enabling an enhanced function of an electronic device
US7460523B2 (en) * 2003-09-08 2008-12-02 Bradley Richard Ree Client-server architecture for the delivery of broadband services
US7623894B2 (en) 2003-10-09 2009-11-24 Freescale Semiconductor, Inc. Cellular modem processing
US8176545B1 (en) 2003-12-19 2012-05-08 Nvidia Corporation Integrated policy checking system and method
US8549170B2 (en) 2003-12-19 2013-10-01 Nvidia Corporation Retransmission system and method for a transport offload engine
US8572289B1 (en) 2003-12-19 2013-10-29 Nvidia Corporation System, method and computer program product for stateless offloading of upper level network protocol operations
US8065439B1 (en) 2003-12-19 2011-11-22 Nvidia Corporation System and method for using metadata in the context of a transport offload engine
US7636372B2 (en) * 2003-12-19 2009-12-22 Broadcom Corporation Method and system for providing smart offload and upload
US8311127B2 (en) * 2004-03-04 2012-11-13 Nvidia Corporation Method and apparatus to check for wrongly decoded macroblocks in streaming multimedia applications
US7698413B1 (en) 2004-04-12 2010-04-13 Nvidia Corporation Method and apparatus for accessing and maintaining socket control information for high speed network connections
US8248939B1 (en) 2004-10-08 2012-08-21 Alacritech, Inc. Transferring control of TCP connections between hierarchy of processing mechanisms
US7957379B2 (en) 2004-10-19 2011-06-07 Nvidia Corporation System and method for processing RX packets in high speed network applications using an RX FIFO buffer
KR100654190B1 (ko) 2004-12-14 2006-12-05 한국전자통신연구원 응용 프로그램내의 소켓 인터페이스와 toe 사이의 연결을 제어하는 통신 인터페이스 방법
US20060182143A1 (en) * 2005-02-11 2006-08-17 Lu Hongqian K System and method for filtering communications packets on electronic devices
KR100649643B1 (ko) * 2005-05-11 2006-11-27 부산대학교 산학협력단 Tcp/ip 가속장치
US20070168579A1 (en) 2005-09-20 2007-07-19 Telefonaktiebolaget Lm Ericsson (Publ) DMA transfer and hardware acceleration of PPP frame processing
US7738500B1 (en) 2005-12-14 2010-06-15 Alacritech, Inc. TCP timestamp synchronization for network connections that are offloaded to network interface devices
JP4845674B2 (ja) * 2006-10-26 2011-12-28 キヤノン株式会社 データ処理装置及び方法、通信装置、並びにプログラム
US9794378B2 (en) * 2006-11-08 2017-10-17 Standard Microsystems Corporation Network traffic controller (NTC)
US8862748B2 (en) * 2007-03-30 2014-10-14 St-Ericsson Sa Method and system for optimizing power consumption and reducing MIPS requirements for wireless communication
US8806028B2 (en) * 2007-04-26 2014-08-12 Novatel Wireless, Inc. System and method for accessing data and applications on a host when the host is in a dormant state
US7986217B2 (en) * 2007-09-27 2011-07-26 Intel Corporation Mitigating processing latency in RFID exchanges
US8893013B1 (en) 2007-10-11 2014-11-18 Teradici Corporation Method and apparatus for providing a hybrid computing environment
US8539513B1 (en) 2008-04-01 2013-09-17 Alacritech, Inc. Accelerating data transfer in a virtual computer system with tightly coupled TCP connections
US20090276549A1 (en) * 2008-05-01 2009-11-05 Nokia Corporation Access for host stacks
KR200452139Y1 (ko) * 2008-07-10 2011-02-08 주식회사 대현상공 미닫이창문용 잠금장치
US8341286B1 (en) 2008-07-31 2012-12-25 Alacritech, Inc. TCP offload send optimization
US9306793B1 (en) 2008-10-22 2016-04-05 Alacritech, Inc. TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies
JP5001983B2 (ja) 2009-07-21 2012-08-15 株式会社エヌ・ティ・ティ・ドコモ 通信制御システム、及び通信制御方法
US20110151922A1 (en) * 2009-12-18 2011-06-23 Chris Venteicher Method and system for conducting wireless communications
US8458149B2 (en) * 2010-03-29 2013-06-04 Welch Allyn, Inc. Small footprint medical information transfer protocol stack
US20120029305A1 (en) * 2010-07-27 2012-02-02 Physician's Ancillary Services, Llc Polysomnography method with remote administration
US10091251B2 (en) * 2013-04-04 2018-10-02 Nvidia Corporation Establishing communications
JP6123476B2 (ja) * 2013-05-16 2017-05-10 株式会社リコー 通信装置及び通信システム
USRE49652E1 (en) * 2013-12-16 2023-09-12 Qualcomm Incorporated Power saving techniques in computing devices
US9535490B2 (en) * 2013-12-16 2017-01-03 Qualcomm Incorporated Power saving techniques in computing devices

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4800559A (en) 1986-07-30 1989-01-24 Contel Information Systems, Inc. Ethernet and broadband lan interface
US5613100A (en) * 1989-09-12 1997-03-18 Nec Corporation Computer system having an open systems interconnection (OSI) management system for an information conversion for management of non-open systems
US5195093A (en) * 1991-02-14 1993-03-16 Motorola, Inc. Method and apparatus for ensuring CRC error generation by a data communication station experiencing transmitter exceptions
JPH06350675A (ja) * 1993-06-08 1994-12-22 Oki Electric Ind Co Ltd 通信プロトコル制御方法
JP3358254B2 (ja) * 1993-10-28 2002-12-16 株式会社日立製作所 通信制御装置および通信制御用回路装置
US5479475A (en) 1993-11-15 1995-12-26 Qualcomm Incorporated Method and system for providing communication between standard terminal equipment using a remote communication unit
US5606594A (en) * 1994-01-27 1997-02-25 Dell Usa, L.P. Communication accessory and method of telecommunicating for a PDA
JP3192318B2 (ja) * 1994-05-20 2001-07-23 松下電工株式会社 無線式情報伝送システム
JPH088977A (ja) * 1994-06-15 1996-01-12 Hitachi Ltd データ通信装置
US5724370A (en) * 1995-02-28 1998-03-03 Harris Corporation CRC generation and detection method
US5674003A (en) * 1995-04-28 1997-10-07 Andersen; David B. Mechanisms for accessing unique features of telephony networks from a protocol-Independent data transport interface
CA2176775C (en) * 1995-06-06 1999-08-03 Brenda Sue Baker System and method for database access administration
US5678041A (en) * 1995-06-06 1997-10-14 At&T System and method for restricting user access rights on the internet based on rating information stored in a relational database
US6304574B1 (en) * 1995-06-07 2001-10-16 3Com Corporation Distributed processing of high level protocols, in a network access server
US5752078A (en) * 1995-07-10 1998-05-12 International Business Machines Corporation System for minimizing latency data reception and handling data packet error if detected while transferring data packet from adapter memory to host memory
US5764955A (en) * 1995-10-19 1998-06-09 Oasys Group, Inc. Gateway for using legacy telecommunications network element equipment with a common management information protocol
US5826026A (en) * 1995-11-09 1998-10-20 Connect-One, Ltd. Internet message communicator with direct output to a hard copy device
JPH09198199A (ja) * 1995-11-17 1997-07-31 Matsushita Electric Ind Co Ltd マルチメディアデータ再生方法、及びマルチメディアサーバシステム
US5974466A (en) 1995-12-28 1999-10-26 Hitachi, Ltd. ATM controller and ATM communication control device
US5956391A (en) * 1996-02-09 1999-09-21 Telefonaktiebolaget Lm Ericsson Billing in the internet
US5838910A (en) * 1996-03-14 1998-11-17 Domenikos; Steven D. Systems and methods for executing application programs from a memory device linked to a server at an internet site
US5894557A (en) * 1996-03-29 1999-04-13 International Business Machines Corporation Flexible point-to-point protocol framework
US5666366A (en) * 1996-05-24 1997-09-09 National Semiconductor Corporation Inter-base synchronization technique for a TDMA communication system
JP2000511724A (ja) * 1996-06-04 2000-09-05 テレフオンアクチーボラゲツト エル エム エリクソン(パブル) 専用媒体を通じてのアクセス網
US5865480A (en) * 1996-09-06 1999-02-02 Bain, Jr.; Lincoln Grady Sliding door security and child safety latch
US5983350A (en) * 1996-09-18 1999-11-09 Secure Computing Corporation Secure firewall supporting different levels of authentication based on address or encryption status
JPH10107646A (ja) * 1996-09-25 1998-04-24 Mitsubishi Electric Corp Crc符号発生回路、符号誤り検出回路、及びcrc回路
US5956651A (en) * 1996-09-30 1999-09-21 Qualcomm Incorporated Cellular telephone interface system for AMPS and CDMA data services
JPH10112739A (ja) * 1996-10-03 1998-04-28 Nec Telecom Syst Ltd モデム装置
US6034963A (en) * 1996-10-31 2000-03-07 Iready Corporation Multiple network protocol encoder/decoder and data processor
US5970066A (en) * 1996-12-12 1999-10-19 Paradyne Corporation Virtual ethernet interface
US5983271A (en) * 1997-02-06 1999-11-09 Paradyne Corporation Method for processing asynchronous low-level protocols in a communication device to off load the main processor
US6295292B1 (en) * 1997-03-06 2001-09-25 Bell Atlantic Network Services, Inc. Inbound gateway authorization processing for inter-carrier internet telephony
US6075796A (en) * 1997-03-17 2000-06-13 At&T Methods and apparatus for providing improved quality of packet transmission in applications such as internet telephony
US5974463A (en) * 1997-06-09 1999-10-26 Compaq Computer Corporation Scaleable network system for remote access of a local network
US5953352A (en) * 1997-06-23 1999-09-14 Micron Electronics, Inc. Method of checking data integrity for a raid 1 system
US6289023B1 (en) * 1997-09-25 2001-09-11 Hewlett-Packard Company Hardware checksum assist for network protocol stacks
US7042898B2 (en) * 1997-10-14 2006-05-09 Alacritech, Inc. Reducing delays associated with inserting a checksum into a network message
US7185266B2 (en) * 2003-02-12 2007-02-27 Alacritech, Inc. Network interface device for error detection using partial CRCS of variable length message portions
US7237036B2 (en) * 1997-10-14 2007-06-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding a TCP connection
US6687758B2 (en) * 2001-03-07 2004-02-03 Alacritech, Inc. Port aggregation for network connections that are offloaded to network interface devices
US7089326B2 (en) * 1997-10-14 2006-08-08 Alacritech, Inc. Fast-path processing for receiving data on TCP connection offload devices
US6470415B1 (en) * 1999-10-13 2002-10-22 Alacritech, Inc. Queue system involving SRAM head, SRAM tail and DRAM body
US6434620B1 (en) * 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US7174393B2 (en) * 2000-12-26 2007-02-06 Alacritech, Inc. TCP/IP offload network interface device
US6427171B1 (en) * 1997-10-14 2002-07-30 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US7076568B2 (en) * 1997-10-14 2006-07-11 Alacritech, Inc. Data communication apparatus for computer intelligent network interface card which transfers data between a network and a storage device according designated uniform datagram protocol socket
US6427173B1 (en) * 1997-10-14 2002-07-30 Alacritech, Inc. Intelligent network interfaced device and system for accelerated communication
US8782199B2 (en) * 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US7167927B2 (en) * 1997-10-14 2007-01-23 Alacritech, Inc. TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism
US7133940B2 (en) * 1997-10-14 2006-11-07 Alacritech, Inc. Network interface device employing a DMA command queue
US6807581B1 (en) * 2000-09-29 2004-10-19 Alacritech, Inc. Intelligent network storage interface system
US6697868B2 (en) * 2000-02-28 2004-02-24 Alacritech, Inc. Protocol processing stack for use with intelligent network interface device
US6226680B1 (en) * 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6591302B2 (en) * 1997-10-14 2003-07-08 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US7284070B2 (en) * 1997-10-14 2007-10-16 Alacritech, Inc. TCP offload network interface device
US6658480B2 (en) * 1997-10-14 2003-12-02 Alacritech, Inc. Intelligent network interface system and method for accelerated protocol processing
US6389479B1 (en) 1997-10-14 2002-05-14 Alacritech, Inc. Intelligent network interface device and system for accelerated communication
US6757746B2 (en) * 1997-10-14 2004-06-29 Alacritech, Inc. Obtaining a destination address so that a network interface device can write network data without headers directly into host memory
US5937169A (en) * 1997-10-29 1999-08-10 3Com Corporation Offload of TCP segmentation to a smart adapter
US5943604A (en) 1997-10-31 1999-08-24 Cisco Technology, Inc. Echo device method for locating upstream ingress noise gaps at cable television head ends
US6301258B1 (en) * 1997-12-04 2001-10-09 At&T Corp. Low-latency buffering for packet telephony
US6058421A (en) * 1998-02-04 2000-05-02 3Com Corporation Method and system for addressing network host interfaces from a cable modem using DHCP
US6105068A (en) * 1998-02-10 2000-08-15 3Com Corporation Method and apparatus for determining a protocol type on a network connection using error detection values stored within internetworking devices
US6148336A (en) * 1998-03-13 2000-11-14 Deterministic Networks, Inc. Ordering of multiple plugin applications using extensible layered service provider with network traffic filtering
US6012096A (en) * 1998-04-23 2000-01-04 Microsoft Corporation Method and system for peer-to-peer network latency measurement
US6246683B1 (en) * 1998-05-01 2001-06-12 3Com Corporation Receive processing with network protocol bypass
US6304578B1 (en) * 1998-05-01 2001-10-16 Lucent Technologies Inc. Packet routing and queuing at the headend of shared data channel
US6775276B1 (en) * 1998-05-27 2004-08-10 3Com Corporation Method and system for seamless address allocation in a data-over-cable system
US6765901B1 (en) * 1998-06-11 2004-07-20 Nvidia Corporation TCP/IP/PPP modem
US6191614B1 (en) * 1999-04-05 2001-02-20 Xilinx, Inc. FPGA configuration circuit including bus-based CRC register
US8019901B2 (en) * 2000-09-29 2011-09-13 Alacritech, Inc. Intelligent network storage interface system
US20020091884A1 (en) 2000-11-17 2002-07-11 Andrew Chang Method and system for translating data formats
US6701478B1 (en) * 2000-12-22 2004-03-02 Nortel Networks Limited System and method to generate a CRC (cyclic redundancy check) value using a plurality of CRC generators operating in parallel
US20020116525A1 (en) * 2001-02-16 2002-08-22 Peters Marcia L. Method for automatically directing browser to bookmark a URL other than a URL requested for bookmarking
US6601208B2 (en) * 2001-04-17 2003-07-29 William W. Wu Forward error correction techniques
US7496689B2 (en) * 2002-04-22 2009-02-24 Alacritech, Inc. TCP/IP offload device
US7543087B2 (en) * 2002-04-22 2009-06-02 Alacritech, Inc. Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device
US6845283B2 (en) * 2002-07-26 2005-01-18 Kimberly-Clark Worldwide, Inc. Process and apparatus for making articles
US7191241B2 (en) * 2002-09-27 2007-03-13 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US7337241B2 (en) * 2002-09-27 2008-02-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US20040088262A1 (en) * 2002-11-06 2004-05-06 Alacritech, Inc. Enabling an enhanced function of an electronic device
US20050015506A1 (en) * 2003-05-30 2005-01-20 Kristian Padborg System and method for anonymous information exchange
US7287092B2 (en) * 2003-08-11 2007-10-23 Sharp Colin C Generating a hash for a TCP/IP offload device
US6996070B2 (en) * 2003-12-05 2006-02-07 Alacritech, Inc. TCP/IP offload device with reduced sequential processing
US7249306B2 (en) * 2004-02-20 2007-07-24 Nvidia Corporation System and method for generating 128-bit cyclic redundancy check values with 32-bit granularity
DE102005041460A1 (de) * 2005-08-31 2007-03-01 Daimlerchrysler Ag Umformwerkzeugsystem und Verfahren zu seiner Herstellung

Also Published As

Publication number Publication date
WO1999065219A1 (en) 1999-12-16
ATE347230T1 (de) 2006-12-15
DE69934226D1 (de) 2007-01-11
TW431099B (en) 2001-04-21
EP1086573B1 (de) 2006-11-29
EP1086573A1 (de) 2001-03-28
AU741089B2 (en) 2001-11-22
US20040213290A1 (en) 2004-10-28
JP2002518892A (ja) 2002-06-25
US20070044002A1 (en) 2007-02-22
US6765901B1 (en) 2004-07-20
US7483375B2 (en) 2009-01-27
CA2328829A1 (en) 1999-12-16
KR20010043790A (ko) 2001-05-25
AU4435999A (en) 1999-12-30
HK1037901A1 (en) 2002-02-22
US20070030861A1 (en) 2007-02-08
US7996568B2 (en) 2011-08-09
CN1305681A (zh) 2001-07-25

Similar Documents

Publication Publication Date Title
DE69934226T2 (de) TCP/IP/PPP Modem
DE60114942T2 (de) Verfahren und System für das Verwenden eines Kernnetz-Protokolls zur Verbesserung der Netzleistung
DE60213616T2 (de) Eine allgemeine eingabe-/ausgabearchitektur, protokoll und entsprechende verfahren zur umsetzung der flusssteuerung
DE60309527T2 (de) System und Verfahren zur Identifikation von Grenzen von Nachrichten höherer Schichten
DE102009061731B3 (de) Bereitstellung eines Präfixes für einen Datenkopf
DE60305378T2 (de) Verfahren zum Weitergeben von einem Netzwerkstapel
US8121125B2 (en) Accelerated TCP (transport control protocol) stack processing
DE69533790T2 (de) Telekommunikationsschnittstelle für einheitliche Handhabung von variierten analog-abgeleiteten und digitalen Datenströmen
Haas A protocol structure for high-speed communication over broadband ISDN
DE602004012361T2 (de) Verfahren und Vorrichtung zum Offload von TCP/IP Protokoll unabhängig von Bandbreitenverzögerungsprodukt
DE19800772C2 (de) Verfahren und Vorrichtung zur Verbindung mit einem Paketaustauschnetz
US8458280B2 (en) Apparatus and method for packet transmission over a high speed network supporting remote direct memory access operations
US5627829A (en) Method for reducing unnecessary traffic over a computer network
DE60035882T2 (de) Protokoll einer zerteilten transaktion für ein bussystem
DE69829840T2 (de) Medienzugriffskontroller und Medienunabhängige Schnittstelle(MII) zum Verbinden an eine physikalische Schicht Vorrichtung
US20020059451A1 (en) System and method for highly scalable high-speed content-based filtering and load balancing in interconnected fabrics
DE69928603T2 (de) Medienzugriffssteuerung
DE112004002544B4 (de) Verfahren, System und Programm zur Identifizierung von Datenüberlauf
US7523179B1 (en) System and method for conducting direct data placement (DDP) using a TOE (TCP offload engine) capable network interface card
US11620250B2 (en) Systems and methods for data transfer over a shared interface
EP1482701B1 (de) Verfahren zum paketorientierten Übertragen von Daten in Telekommunikationsnetzen mittels Umsetzung in einem Zwischenknoten von einem verbindungslosen zu einem verbindungsorientierten Übertragungsprotokoll und umgekehrt
DE10336121B4 (de) Serielle asynchrone Schnittstelle mit SLIP-Kodierung/Dekodierung und CRC-Prüfung im Sende- und Empfangspfad
WO2022120974A1 (zh) 一种虚拟化安全网关系统
DE69635116T2 (de) Kommunikationszugangssystem mit verteilter verarbeitung
JPH11275102A (ja) 電力線によるネットワークシステム、データの伝送方法及び記録媒体

Legal Events

Date Code Title Description
8364 No opposition during term of opposition