{
  "patent_number": "US 4063220",
  "country": "US",
  "title": "How Multiple Computers Share a Network Cable Without Crashing",
  "original_title": "Multipoint data communication system with collision detection",
  "summary": "This patent describes how multiple computers can share a single communication cable by listening for other transmissions and stopping their own if a collision occurs, then trying again later.",
  "what_it_does": "The patent describes a system for multiple data processing stations to communicate over a shared cable, like a bus. Each station has a \"transceiver\" (a device that transmits and receives) connected to the cable. When a station wants to send data, it first listens to the cable (Claim 5, \"signal detecting means\"). If the cable is busy, it waits. If the cable is clear, it starts transmitting. Crucially, if another station starts transmitting at the same time, causing a \"collision,\" the system detects this (Claim 1, \"collision detecting means\"). Upon detecting a collision, the transmitting station immediately stops sending data (Claim 1, \"interrupting the transmission\"). It then waits a random amount of time before attempting to transmit again, with the wait time increasing if collisions keep happening (Abstract, \"random number generator\"). For example, if two computers try to send data at the exact same moment on a shared cable, this system detects the garbled signal, tells both computers to stop, and makes them wait different random times before trying again, preventing a continuous jam.",
  "what_it_does_not_cover": [
    "Does not cover communication systems where each device has its own dedicated connection (e.g., point-to-point links).",
    "Does not cover network protocols that use tokens or central controllers to manage access to a shared medium.",
    "Does not cover wireless communication systems where collisions are handled by different methods like listen-before-talk (LBT) without explicit collision detection on the medium.",
    "Does not cover systems where the transmitting means does not interrupt its transmission upon detecting a collision.",
    "Does not cover systems that do not use a random backoff mechanism to reattempt transmission after a collision."
  ],
  "filed": "1975-03-31",
  "granted": "1977-12-13",
  "expires": "1995-03-31",
  "status": "expired",
  "holder": "Xerox Corp",
  "holder_url": "https://patentbrief.org/company/xerox-corp",
  "inventors": [
    {
      "name": "Robert M. Metcalfe",
      "url": "https://patentbrief.org/inventor/robert-m-metcalfe"
    },
    {
      "name": "Butler W. Lampson",
      "url": "https://patentbrief.org/inventor/butler-w-lampson"
    },
    {
      "name": "Charles P. Thacker",
      "url": "https://patentbrief.org/inventor/charles-p-thacker"
    },
    {
      "name": "David R. Boggs",
      "url": "https://patentbrief.org/inventor/david-r-boggs"
    }
  ],
  "times_cited": 301,
  "tags": [
    "telecommunications",
    "software",
    "consumer_electronics",
    "semiconductors"
  ],
  "abstract": "Apparatus for enabling communications between two or more data processing stations comprising a communication cable arranged in branched segments including taps distributed thereover. Tied to each tap is a transceiver which on the other side connects to an associated interface stage. Each transceiver includes, in addition to the usual transmitter and receiver sections, a gate which compares the data from the interface stage with the data on the cable and indicates whether such are equal. Should such be unequal, an interference between the transceiver and the cable is indicated, disabling the associated transmitter section. Each interface stage tied to such transceiver also includes an input and an output buffer on the other end thereof interfacing with a using device, such input and output buffers storing both the incoming and outgoing data. The output buffer is connected to a clock-driven shift register which converts the buffered data to a serial stream, feeds such data to a phase encoder, which then connects to the transmitter or driver section of the transceiver. The input buffer is loaded by an input shift register which derives its clock from a phase decoder, the shift register and the phase decoder both connecting to the receiver section. When the station is to start transmitting, the phase decoder detects the presence of other transmissions on the cable and detains the output shift register until no other transmissions are sensed. Once a transmission has begun, if interference is detected and the transmitter section is disabled, a random number generator is used to select an interval of time at the completion of which the next attempted transmission will take place. Concurrently, a counter counts the number of interferences, or collisions, which recur in the attempted transmissions of one data packet and weights the mean of the random number generator accordingly. The input shift register is also connected to an address decoder which enables data transfer to the input buffer only during those times when the data is preceded by an appropriate address.",
  "url": "https://patentbrief.org/patent/us/4063220/ethernet-packet-network",
  "markdown_url": "https://patentbrief.org/patent/us/4063220/ethernet-packet-network/md",
  "google_patents_url": "https://patents.google.com/patent/US4063220",
  "relatedPatents": [
    {
      "patentNumber": "4677614",
      "countryCode": "US",
      "title": "How Self-Healing Data Loops Automatically Elect a New Master Controller",
      "url": "https://patentbrief.org/patent/us/4677614/data-communication-system-and-method-and-communication-controller-and-method-therefor-having-a-dataclock-synchronizer-and-method"
    },
    {
      "patentNumber": "6665308",
      "countryCode": "US",
      "title": "How Cable Modems Fix Signal Distortions Before Sending Data",
      "url": "https://patentbrief.org/patent/us/6665308/apparatus-and-method-for-equalization-in-distributed-digital-data-transmission-systems"
    },
    {
      "patentNumber": "7904576",
      "countryCode": "US",
      "title": "How to Send Data Streams Independently Without Connection Overload",
      "url": "https://patentbrief.org/patent/us/7904576/reliable-datagram-via-independent-source-destination-resources"
    },
    {
      "patentNumber": "5487069",
      "countryCode": "US",
      "title": "CSIRO's High-Frequency Wireless Network Technology",
      "url": "https://patentbrief.org/patent/us/5487069/wifi-csiro-wireless-lan"
    },
    {
      "patentNumber": "4549302",
      "countryCode": "US",
      "title": "How Modems Use Guard Time to Switch Between Data and Commands",
      "url": "https://patentbrief.org/patent/us/4549302/hayes-modem-escape-sequence"
    }
  ]
}