WO1997045985A1 - Efficient communication in a network having a minimum data transmission time - Google Patents

Efficient communication in a network having a minimum data transmission time Download PDF

Info

Publication number
WO1997045985A1
WO1997045985A1 PCT/US1997/001333 US9701333W WO9745985A1 WO 1997045985 A1 WO1997045985 A1 WO 1997045985A1 US 9701333 W US9701333 W US 9701333W WO 9745985 A1 WO9745985 A1 WO 9745985A1
Authority
WO
WIPO (PCT)
Prior art keywords
time interval
data packet
transmission time
data transmission
minimum
Prior art date
Application number
PCT/US1997/001333
Other languages
French (fr)
Inventor
Jayant Kadambi
Mohan Kalkunte
James Mangin
Original Assignee
Advanced Micro Devices, Inc.
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 Advanced Micro Devices, Inc. filed Critical Advanced Micro Devices, Inc.
Publication of WO1997045985A1 publication Critical patent/WO1997045985A1/en

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/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)

Definitions

  • the present invention pertains to the field of networks. More particularly, this invention relates to a method for improving the efficiency of a network.
  • Local area networks are commonly employed in a wide variety of computer related applications. For example, local area networks commonly provide communication among groups of personal computer systems as well as engineering work stations and mainframe systems. In addition, local area networks commonly provide sharing of a variety of peripheral devices.
  • the individual computer systems and peripheral devices are coupled to a common transmission medium which may include coaxial transmission lines or other types of transmission lines.
  • Each individual computer system and peripheral device coupled to the transmission medium may be referred to as a communication node on the network.
  • Some networks implement a communication protocol that enables the individual communication nodes to independently initiate data transmissions as required. Such a communication protocol usually includes collision detection schemes that enable error recovery should multiple communication nodes undertake overlapping data transmissions.
  • One type of prior communication network that implements such a communication protocol with collision detection is referred to as an Ethernet communication network or a CSMA/CD communication network.
  • Each individual communication node of such a communication network typically monitors the transmission medium for possible data transmissions underway before initiating an outgoing data transmission. If another data transmission is not detected, then the communication node usually initiates the outgoing data transmission. Thereafter, if a collision occurs on the transmission medium then each transmitting communication node aborts transmission and schedules a re-transmission according to a predetermined backoff algorithm.
  • the protocols that govern such communication networks typically impose a minimum time interval for data transmissions.
  • the IEEE 802.3 standard for Ethernet networks defines a minimum slot time interval for data transmission equal to 512 bit times.
  • Such a minimum data transmission time interval is typically selected to ensure that all communication nodes coupled to the transmission medium are able to detect collisions in view of the round trip propagation delay across the diameter of the network.
  • Such a minimum data transmission time interval imposes a maximum physical diameter of the network for a given data transmission speed.
  • An Ethernet network for example, that supports a 10 megabits per second data transmission rate is limited by the 512 bit minimum slot time interval to a maximum diameter of approximately 2 kilometers.
  • An Ethernet network having a data transmission rate of 100 megabits per second is restricted to a diameter of approximately 200 meters by the minimum slot time interval of 512 bits.
  • protocols that govern higher bandwidth networks such as gigabit Ethernet networks may increase the minimum slot time in order to yield a practical maximum network diameter.
  • an Ethernet communication network having a data transmission rate of 1000 megabits per second and a minimum slot time interval of 4096 bits would yield a maximum network diameter of approximately 200 meters.
  • a communication node that transmits a data packet having fewer bits than the 512 bit minimum slot time interval typically pads the data packet until the end 85
  • Such slot time padding in prior networks usually has a relatively small negative impact on network efficiency because the minimum slot time in such networks is a relatively short 512 bit times.
  • One object of the present invention is to improve the efficiency of high bandwidth communication networks that have a minimum data transmission time interval.
  • Another object of the present invention is to provide improved efficiency in high bandwidth Ethernet communication networks.
  • a further object of the present invention is to provide efficient throughput in a communication network without requiring changes to existing communications software.
  • a method for efficient communication in a network having a minimum data transmission time interval wherein a data packet is transmitted beginning at a start of the minimum data transmission time interval. An end of the minimum data transmission time interval is determined and then at least one next data packet is transmitted after the data packet if the end of the minimum data transmission time is after the end of the data packet.
  • Fig. 1 illustrates a communication network having a protocol that enables data transmissions with collision detection and that imposes a minimum data transmission time interval
  • Fig. 2 illustrates a communication node including a communication controller having circuitry for tracking the minimum data transmission time interval on a communication link and circuitry for packing and unpacking multiple data packets during each minimum data transmission time interval;
  • Fig. 3 illustrates the communication controller in one embodiment
  • Fig. 4a illustrates a minimum data transmission time interval that includes multiple packet transmissions on a communication link
  • Fig. 4b illustrates a minimum data transmission time interval that includes multiple packet transmissions wherein a data packet extends past the end of the minimum data transmission interval
  • Fig. 4c illustrates a minimum data transmission time interval that includes multiple packet transmissions wherein a final data packet contains fewer data bits than is required for minimum data transmission interval
  • Fig. 5 illustrates a minimum data transmission time interval on a communication link that includes a collision
  • Fig. 6 illustrates a series of data packets received via a communication link during a single data transmission time interval.
  • Fig. 1 illustrates a communication network 10 having a protocol that enables data transmissions with collision detection and that imposes a minimum data transmission time interval.
  • the communication network 10 includes a set of communication nodes 20- 23.
  • the communication node 22 performs multiple data packet transmissions during each minimum data transmission time interval as disclosed hereinafter while communication nodes 20, 21 and 23 pad small packets to meet the minimum data transmission time interval in accordance with prior systems.
  • the communication network 10 is an Ethernet communication network that includes a communication hub 12.
  • the communication hub 12 enables data transmission among the communication nodes 20-23 via a set of transmission lines 30-33.
  • the communication links 30-33 each comprise a coaxial transmission line, a fiber optic transmission line, or a twisted pair transmission line.
  • the transmission lines 30-33 carry data at a rate of 1 gigabit per second with a minimum slot time interval of 4096 bit times.
  • Fig. 2 illustrates the communication node 22 in one embodiment.
  • the communication node 22 includes a processor 40, a memory 42, and a communication controller 44.
  • the communication controller 44 transmits and receives data packets via the communication link 32.
  • the communication controller 44 includes circuitry for tracking the minimum data transmission time interval on the communication link 32 and circuitry for packing and unpacking multiple data packets during each minimum data transmission time interval.
  • the processor 40 communicates with the memory 42 and the communication controller 44 via an input/output bus 46.
  • the processor 40 reads and writes data packets and commands to the communication controller 44 via the input/output bus 46.
  • Fig. 3 illustrates the communication controller 44 in one embodiment.
  • the communication controller 44 includes a bus interface unit 50, a transmit buffer 52, a receive buffer 54, a media access control (MAC) circuit 56, and a set of physical layer circuitry 58.
  • the transmit buffer 52 and the receive buffer 54 are each implemented as first in/first out (FIFO) buffers.
  • the processor 40 transfers outgoing data packets and commands into the transmit buffer 52 via the bus interface unit 50.
  • the processor 40 reads incoming data packets from the receive buffer 54 via the bus interface unit 50.
  • the MAC circuitry 56 in one embodiment receives a byte stream of data for an outgoing data packet from the transmit buffer 52. In other embodiments, the MAC circuitry 56 receives the outgoing data packet from the transmit buffer 52 as a serial data stream or octet data stream. The MAC circuitry 56 generates a corresponding transmit data signal 66 containing the outgoing data packet. The physical layer circuitry 58 in turn drives the transmit data signal 66 over the communication link 32 as a transmit data signal 70. In addition, the physical layer circuitry 58 receives a receive data signal 72 over the communication link 32 and generates a corresponding receive data signal 68. The MAC circuitry 56 assembles the receive data signal 68 into a byte stream for transfer into the receive buffer 54.
  • a carrier sense signal 60 to the MAC circuitry 56 indicates the occurrences of data transmissions on the communication link 32.
  • a collision detect signal 62 to the MAC circuitry 56 indicates whether a collision occurs on the communication link 32.
  • the MAC circuitry 56 receives a receive data valid circuit 64 that indicates the start of packet and end of packet boundaries data packets carried via the received data signal 72.
  • the MAC circuitry 56 has the capability to transmit multiple data packets over the communication link 32 during each minimum data transmission time interval on the communication link 32.
  • the MAC circuitry 56 includes logic for tracking the length of each data transmission time interval and circuitry for determining whether additional data packets may be transferred during a particular data transmission time interval.
  • the MAC circuitry 56 includes a counter that increments, or alternatively decrements, for each of the 4096 bit times for a minimum slot time interval. After transmission of a particular data packet, the MAC control circuitry 56 uses the slot time counter to determine whether additional data packets may be transferred prior to the end of the minimum 4096 bit slot time interval.
  • Fig. 4a illustrates a slot time interval that includes multiple packet transmissions on the communication link 32 in one example.
  • the slot time interval occurs between time tl and t6 which in one embodiment equals 4096 of 1 nanosecond bit times.
  • the MAC circuitry 56 drives packet #1 via the transmit data signal 66.
  • the time interval between times t2 and t3 corresponds to the inter-packet gap interval specified by the Ethernet communication protocol.
  • the inter-packet gap (IPG) interval equals 96 bit times.
  • the MAC circuitry 56 starts transmitting data packet #2 to the physical layer circuitry 58 via the transmit data signal 66.
  • the MAC circuitry 56 transfers packet #3 via the transmit data signal 66.
  • the end of packet #3 is reached at time t6 which corresponds to the end of the slot time interval.
  • Fig. 4b illustrates a slot time interval that includes multiple packet transmissions wherein a data packet extends past the end of the slot time interval.
  • the slot time interval occurs between time tlO and tl6.
  • the MAC circuitry 56 drives packet #1 via the transmit data signal 66.
  • the MAC circuitry 56 starts transmitting data packet #2 and then another IPG interval occurs between times tl3 and tl4.
  • the MAC circuitry 56 starts transmitting packet #3 via the transmit data signal 66.
  • the slot time counter in the MAC circuitry 56 indicates that the remainder of the slot time interval between time tl5 and tl6 will accommodate only a packet terminator.
  • the packet terminator is a cyclic redundancy code (CRC) having 4 bytes which normally terminates each of the packets #1, #2 and #3.
  • CRC cyclic redundancy code
  • the slot time counter at time tl5 contains a count equal to 32 in an embodiment that employs a down counter for the slot time interval.
  • the MAC circuitry 56 continues to receive data for packet #3 from the transmit buffer 52 which indicates that the data packet extends past the slot time taking into account the 32 bit CRC. in such a case, the MAC circuitry 56 forces the termination of packet #3 by generating an abnormal termination with a false error code.
  • the false error code is a false cyclic redundancy code (CRC) transmitted between times tl5 and tl6. The false CRC transmitted between times tl5 and tl6 causes later re-transmission of packet #3 in the same manner as if a collision detection had abnormally terminated packet #3.
  • CRC false cyclic redundancy code
  • Fig. 4c illustrates a slot time interval that includes multiple packet transmissions wherein a final data packet contains fewer data bits than is required to fill out the entire slot time interval.
  • This example slot time interval occurs between time t20 and t26.
  • the MAC circuitry 56 drives packet #1 via the transmit data signal 66 and then waits an IPG time interval between times t21 and t22.
  • the MAC circuitry 56 transmits data packet #2 and then another IPG interval occurs between times t23 and t24.
  • the MAC circuitry 56 transmits packet #3 via the transmit data signal 66.
  • the slot time counter in the MAC circuitry 56 indicates that the slot time interval extends past time t25. In this case, the MAC circuitry 56 pads the remainder of the slot time interval between times t25 and t26.
  • Fig. 5 illustrates a slot time interval on the communication link 32 that includes a collision. This example slot time interval occurs between time t30 and t35. Between times t30 and t31, the MAC circuitry 56 drives packet #1 via the transmit data signal 66 and then waits an IPG time interval between times t31 and t32. Starting at time t32, the MAC circuitry 56 transmits packet #2 over the communication link 32.
  • the MAC circuitry 56 senses the activated collision detect signal 62 which indicates a collision has occurred on the communication link 32. Thereafter, at time t34 the MAC circuitry 56 terminates packet #2 with an abnormal termination.
  • the abnormal termination of packet #2 at time t34 causes a later re-transmission of packets #1 and #2 as well as any other data packets that can be transferred before the end the retransmitted slot time interval.
  • Fig. 6 illustrates a series of data packets received via the communication link 32 during a single slot time interval.
  • the receive data valid signal 64 indicates the start of packet and end of packet boundaries for packets #1 through #3 between times t41 and t46.
  • the carrier sense signal 60 bounds the received data signal 64 at times t40 and t47.
  • the control algorithm employed by the MAC circuitry 56 to determine whether a slot time interval can accommodate multiple packets and for selecting an appropriate termination of a slot time interval is illustrated by the following pseudo code:

Abstract

Efficient communication in a network having a minimum data transmission time interval wherein a data packet is transmitted beginning at a start (t20) of the minimum data transmission time interval. An end (t26) of the minimum data transmission time interval is determined and then at least one next data packet is transmitted after the data packet if the end of the minimum data transmission time (t26) is after the end of the data packet (t21).

Description

EFFICIENT COMMUNICATION IN A NETWORK HAVING A MINIMUM DATA TRANSMISSION TIME
BACKGROUND OF THE INVENTION
Field of Invention
The present invention pertains to the field of networks. More particularly, this invention relates to a method for improving the efficiency of a network. Art Background
Communication networks such as local area networks are commonly employed in a wide variety of computer related applications. For example, local area networks commonly provide communication among groups of personal computer systems as well as engineering work stations and mainframe systems. In addition, local area networks commonly provide sharing of a variety of peripheral devices.
In a typical local area network, the individual computer systems and peripheral devices are coupled to a common transmission medium which may include coaxial transmission lines or other types of transmission lines. Each individual computer system and peripheral device coupled to the transmission medium may be referred to as a communication node on the network. Some networks implement a communication protocol that enables the individual communication nodes to independently initiate data transmissions as required. Such a communication protocol usually includes collision detection schemes that enable error recovery should multiple communication nodes undertake overlapping data transmissions. One type of prior communication network that implements such a communication protocol with collision detection is referred to as an Ethernet communication network or a CSMA/CD communication network.
Each individual communication node of such a communication network typically monitors the transmission medium for possible data transmissions underway before initiating an outgoing data transmission. If another data transmission is not detected, then the communication node usually initiates the outgoing data transmission. Thereafter, if a collision occurs on the transmission medium then each transmitting communication node aborts transmission and schedules a re-transmission according to a predetermined backoff algorithm.
The protocols that govern such communication networks typically impose a minimum time interval for data transmissions. For example, the IEEE 802.3 standard for Ethernet networks defines a minimum slot time interval for data transmission equal to 512 bit times. Such a minimum data transmission time interval is typically selected to ensure that all communication nodes coupled to the transmission medium are able to detect collisions in view of the round trip propagation delay across the diameter of the network.
Typically, such a minimum data transmission time interval imposes a maximum physical diameter of the network for a given data transmission speed. An Ethernet network, for example, that supports a 10 megabits per second data transmission rate is limited by the 512 bit minimum slot time interval to a maximum diameter of approximately 2 kilometers. An Ethernet network having a data transmission rate of 100 megabits per second is restricted to a diameter of approximately 200 meters by the minimum slot time interval of 512 bits.
As a consequence, protocols that govern higher bandwidth networks such as gigabit Ethernet networks may increase the minimum slot time in order to yield a practical maximum network diameter. For example, an Ethernet communication network having a data transmission rate of 1000 megabits per second and a minimum slot time interval of 4096 bits would yield a maximum network diameter of approximately 200 meters. In prior 10 or 100 megabit Ethernet networks, a communication node that transmits a data packet having fewer bits than the 512 bit minimum slot time interval typically pads the data packet until the end 85
- 4 - of the minimum slot time interval. Such slot time padding in prior networks usually has a relatively small negative impact on network efficiency because the minimum slot time in such networks is a relatively short 512 bit times.
Unfortunately, an increase in minimum slot time to, for example, 4096 bit times causes a drastic reduction in network efficiency during transmission of relatively small data packets that are padded to meet the minimum slot time. In addition, the existing communication software for various computer related networks commonly perform polling and negotiation transactions over the network. Such transactions usually involve the transmission of relatively small data packets. For instance, 64 byte data packets are quite common for Ethernet communication networks.
Unfortunately, such relatively small data packets would occupy only 1/8 of a single minimum slot time for a gigabit Ethernet communication network having a minimum slot time interval for 4096 bit times. As a consequence, 7/8 of the capacity of such a high bandwidth network is wasted as individual communication nodes pad such 64 byte data packets to meet the minimum slot time specification. Such inefficiencies limit the overall throughput of such a network by wasting a significant portion of available bandwidth. SUMMARY AND OBJECTS OF THE INVENTION One object of the present invention is to improve the efficiency of high bandwidth communication networks that have a minimum data transmission time interval.
Another object of the present invention is to provide improved efficiency in high bandwidth Ethernet communication networks.
A further object of the present invention is to provide efficient throughput in a communication network without requiring changes to existing communications software.
These and other objects are provided by a method for efficient communication in a network having a minimum data transmission time interval wherein a data packet is transmitted beginning at a start of the minimum data transmission time interval. An end of the minimum data transmission time interval is determined and then at least one next data packet is transmitted after the data packet if the end of the minimum data transmission time is after the end of the data packet.
Other objects, features and advantages of the present invention will be apparent from the detailed description that follows.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention is described with respect to particular exemplary embodiments thereof and reference is accordingly made to the drawings in which:
Fig. 1 illustrates a communication network having a protocol that enables data transmissions with collision detection and that imposes a minimum data transmission time interval;
Fig. 2 illustrates a communication node including a communication controller having circuitry for tracking the minimum data transmission time interval on a communication link and circuitry for packing and unpacking multiple data packets during each minimum data transmission time interval;
Fig. 3 illustrates the communication controller in one embodiment; Fig. 4a illustrates a minimum data transmission time interval that includes multiple packet transmissions on a communication link;
Fig. 4b illustrates a minimum data transmission time interval that includes multiple packet transmissions wherein a data packet extends past the end of the minimum data transmission interval;
Fig. 4c illustrates a minimum data transmission time interval that includes multiple packet transmissions wherein a final data packet contains fewer data bits than is required for minimum data transmission interval; Fig. 5 illustrates a minimum data transmission time interval on a communication link that includes a collision;
Fig. 6 illustrates a series of data packets received via a communication link during a single data transmission time interval.
PETAILEP PESCRIPTIQN Fig. 1 illustrates a communication network 10 having a protocol that enables data transmissions with collision detection and that imposes a minimum data transmission time interval. The communication network 10 includes a set of communication nodes 20- 23. The communication node 22 performs multiple data packet transmissions during each minimum data transmission time interval as disclosed hereinafter while communication nodes 20, 21 and 23 pad small packets to meet the minimum data transmission time interval in accordance with prior systems. in one embodiment, the communication network 10 is an Ethernet communication network that includes a communication hub 12. The communication hub 12 enables data transmission among the communication nodes 20-23 via a set of transmission lines 30-33. The communication links 30-33 each comprise a coaxial transmission line, a fiber optic transmission line, or a twisted pair transmission line. The transmission lines 30-33 carry data at a rate of 1 gigabit per second with a minimum slot time interval of 4096 bit times.
Fig. 2 illustrates the communication node 22 in one embodiment. The communication node 22 includes a processor 40, a memory 42, and a communication controller 44. The communication controller 44 transmits and receives data packets via the communication link 32. The communication controller 44 includes circuitry for tracking the minimum data transmission time interval on the communication link 32 and circuitry for packing and unpacking multiple data packets during each minimum data transmission time interval.
The processor 40 communicates with the memory 42 and the communication controller 44 via an input/output bus 46. The processor 40 reads and writes data packets and commands to the communication controller 44 via the input/output bus 46.
Fig. 3 illustrates the communication controller 44 in one embodiment. The communication controller 44 includes a bus interface unit 50, a transmit buffer 52, a receive buffer 54, a media access control (MAC) circuit 56, and a set of physical layer circuitry 58. In this embodiment, the transmit buffer 52 and the receive buffer 54 are each implemented as first in/first out (FIFO) buffers.
The processor 40 transfers outgoing data packets and commands into the transmit buffer 52 via the bus interface unit 50. In addition, the processor 40 reads incoming data packets from the receive buffer 54 via the bus interface unit 50.
The MAC circuitry 56 in one embodiment receives a byte stream of data for an outgoing data packet from the transmit buffer 52. In other embodiments, the MAC circuitry 56 receives the outgoing data packet from the transmit buffer 52 as a serial data stream or octet data stream. The MAC circuitry 56 generates a corresponding transmit data signal 66 containing the outgoing data packet. The physical layer circuitry 58 in turn drives the transmit data signal 66 over the communication link 32 as a transmit data signal 70. In addition, the physical layer circuitry 58 receives a receive data signal 72 over the communication link 32 and generates a corresponding receive data signal 68. The MAC circuitry 56 assembles the receive data signal 68 into a byte stream for transfer into the receive buffer 54.
A carrier sense signal 60 to the MAC circuitry 56 indicates the occurrences of data transmissions on the communication link 32. A collision detect signal 62 to the MAC circuitry 56 indicates whether a collision occurs on the communication link 32. In addition, the MAC circuitry 56 receives a receive data valid circuit 64 that indicates the start of packet and end of packet boundaries data packets carried via the received data signal 72.
The MAC circuitry 56 has the capability to transmit multiple data packets over the communication link 32 during each minimum data transmission time interval on the communication link 32. The MAC circuitry 56 includes logic for tracking the length of each data transmission time interval and circuitry for determining whether additional data packets may be transferred during a particular data transmission time interval.
In one embodiment for gigabit Ethernet, the MAC circuitry 56 includes a counter that increments, or alternatively decrements, for each of the 4096 bit times for a minimum slot time interval. After transmission of a particular data packet, the MAC control circuitry 56 uses the slot time counter to determine whether additional data packets may be transferred prior to the end of the minimum 4096 bit slot time interval.
Fig. 4a illustrates a slot time interval that includes multiple packet transmissions on the communication link 32 in one example. The slot time interval occurs between time tl and t6 which in one embodiment equals 4096 of 1 nanosecond bit times.
Between times tl and t2, the MAC circuitry 56 drives packet #1 via the transmit data signal 66. The time interval between times t2 and t3 corresponds to the inter-packet gap interval specified by the Ethernet communication protocol. In one embodiment, the inter-packet gap (IPG) interval equals 96 bit times. At time t3, the MAC circuitry 56 starts transmitting data packet #2 to the physical layer circuitry 58 via the transmit data signal 66. After an IPG interval between times t4 and t5, the MAC circuitry 56 transfers packet #3 via the transmit data signal 66. In this example, the end of packet #3 is reached at time t6 which corresponds to the end of the slot time interval. The total bits in packets #1 through #3 including preamble and cyclic redundancy codes (CRC) along with the two IPG time intervals equals 4096 bits. Fig. 4b illustrates a slot time interval that includes multiple packet transmissions wherein a data packet extends past the end of the slot time interval. The slot time interval occurs between time tlO and tl6. Between times tlO and til, the MAC circuitry 56 drives packet #1 via the transmit data signal 66. After the IPG time interval between times til and tl2, the MAC circuitry 56 starts transmitting data packet #2 and then another IPG interval occurs between times tl3 and tl4. At time tl4, the MAC circuitry 56 starts transmitting packet #3 via the transmit data signal 66.
At time tl5, the slot time counter in the MAC circuitry 56 indicates that the remainder of the slot time interval between time tl5 and tl6 will accommodate only a packet terminator. In one embodiment, the packet terminator is a cyclic redundancy code (CRC) having 4 bytes which normally terminates each of the packets #1, #2 and #3. The slot time counter at time tl5 contains a count equal to 32 in an embodiment that employs a down counter for the slot time interval.
At time tl5, the MAC circuitry 56 continues to receive data for packet #3 from the transmit buffer 52 which indicates that the data packet extends past the slot time taking into account the 32 bit CRC. in such a case, the MAC circuitry 56 forces the termination of packet #3 by generating an abnormal termination with a false error code. In one embodiment, the false error code is a false cyclic redundancy code (CRC) transmitted between times tl5 and tl6. The false CRC transmitted between times tl5 and tl6 causes later re-transmission of packet #3 in the same manner as if a collision detection had abnormally terminated packet #3.
Fig. 4c illustrates a slot time interval that includes multiple packet transmissions wherein a final data packet contains fewer data bits than is required to fill out the entire slot time interval. This example slot time interval occurs between time t20 and t26. Between times t20 and t21, the MAC circuitry 56 drives packet #1 via the transmit data signal 66 and then waits an IPG time interval between times t21 and t22. Between times t22 and t23, the MAC circuitry 56 transmits data packet #2 and then another IPG interval occurs between times t23 and t24.
Between times t24 and t25, the MAC circuitry 56 transmits packet #3 via the transmit data signal 66. At time t25, the slot time counter in the MAC circuitry 56 indicates that the slot time interval extends past time t25. In this case, the MAC circuitry 56 pads the remainder of the slot time interval between times t25 and t26.
Fig. 5 illustrates a slot time interval on the communication link 32 that includes a collision. This example slot time interval occurs between time t30 and t35. Between times t30 and t31, the MAC circuitry 56 drives packet #1 via the transmit data signal 66 and then waits an IPG time interval between times t31 and t32. Starting at time t32, the MAC circuitry 56 transmits packet #2 over the communication link 32.
At time t33, the MAC circuitry 56 senses the activated collision detect signal 62 which indicates a collision has occurred on the communication link 32. Thereafter, at time t34 the MAC circuitry 56 terminates packet #2 with an abnormal termination. The abnormal termination of packet #2 at time t34 causes a later re-transmission of packets #1 and #2 as well as any other data packets that can be transferred before the end the retransmitted slot time interval.
Fig. 6 illustrates a series of data packets received via the communication link 32 during a single slot time interval. The receive data valid signal 64 indicates the start of packet and end of packet boundaries for packets #1 through #3 between times t41 and t46. The carrier sense signal 60 bounds the received data signal 64 at times t40 and t47.
The control algorithm employed by the MAC circuitry 56 to determine whether a slot time interval can accommodate multiple packets and for selecting an appropriate termination of a slot time interval is illustrated by the following pseudo code:
#define slottime 4096 #define minFrameSize 512 #define ipgtime 96
counter slotcounter; /* increments for each transmitted bit (packet and ipg */
int len; /* len of current frame */ int total_packets;
total_packets = 1; begin: transmit(len) ; if (minFrameSize < len < (slottime - minFrameSize) ) then wait (ipgtime) ; total__packets = total_packets + 1; goto begin:
and
expire: if (slotcounter > (slottime - 4) ) & (total_packets > 1) then abort_transmit() ; generate false_crc; /* or other false error code */ endif
collision: if (CollisionDetect) then retransmit all packets endif
The foregoing detailed description of the present invention is provided for the purposes of illustration and is not intended to be exhaustive or to limit the invention to the precise embodiment disclosed. Accordingly, the scope of the present invention is defined by the appended claims.

Claims

What is claimed is: 1. A method for efficient communication in a network having a minimum data transmission time interval, comprising the steps of: transmitting a data packet beginning at a start of the minimum data transmission time interval; determining an end of the minimum data transmission time interval; transmitting at least one next data packet after the data packet if the end of the minimum data transmission time is after the end of the data packet.
2. The method of claim 1, further comprising the step of forcing a termination of the next data packet at the end of the minimum data transmission time interval if the next data packet extends past then end of the minimum data transmission time interval.
3. The method of claim 2, wherein the step of forcing the termination includes the step of transmitting a false error detection code for the next data packet.
4. The method of claim 3, wherein the false error detection code is a false cyclic redundancy code for the next data packet.
5. The method of claim 1, wherein the step of transmitting at least one next data packet after the data packet includes the step of separating the data packet and the next data packet by an inter packet time interval.
6. The method of claim 1, further comprising the step of padding the next data packet until the end of the minimum data transmission time interval if the next data packet ends before the end of the minimum data transmission time interval.
7. The method of claim 1, wherein the network is a gigabit Ethernet local area network.
8. The method of claim 7, wherein the minimum data transmission time interval is 4096 bit slot time interval on the gigabit Ethernet local area network.
9. An apparatus for efficient communication in a network having a minimum data transmission time interval, comprising: means for transmitting a data packet beginning at a start of the minimum data transmission time interval; means for determining an end of the minimum data transmission time interval; means for transmitting at least one next data packet after the data packet if the end of the minimum data transmission time is after the end of the data packet.
10. The apparatus of claim 9, further comprising means for forcing a termination of the next data packet at the end of the minimum data transmission time interval if the next data packet extends past then end of the minimum data transmission time interval.
11. The apparatus of claim 10, wherein the means for forcing the termination includes means for transmitting a false error detection code for the next data packet.
12. The apparatus of claim 11, wherein the false error detection code is a false cyclic redundancy code for the next data packet.
13. The apparatus of claim 9, wherein the means for transmitting at least one next data packet after the data packet includes means for separating the data packet and the next data packet by an inter packet time interval.
14. The apparatus of claim 9, further comprising means for padding the next data packet until the end of the minimum data transmission time interval if the next data packet ends before the end of the minimum data transmission time interval.
15. The apparatus of claim 9, wherein the network is a gigabit Ethernet local area network.
16. The apparatus of claim 15, wherein the minimum data transmission time interval is 4096 bit slot time interval on the gigabit Ethernet local area network.
PCT/US1997/001333 1996-05-28 1997-01-28 Efficient communication in a network having a minimum data transmission time WO1997045985A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/654,406 1996-05-28
US08/654,406 US5812554A (en) 1996-05-28 1996-05-28 Efficiency of a network having a minimum data transmission time

Publications (1)

Publication Number Publication Date
WO1997045985A1 true WO1997045985A1 (en) 1997-12-04

Family

ID=24624716

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1997/001333 WO1997045985A1 (en) 1996-05-28 1997-01-28 Efficient communication in a network having a minimum data transmission time

Country Status (3)

Country Link
US (1) US5812554A (en)
TW (1) TW312067B (en)
WO (1) WO1997045985A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0971512A2 (en) * 1998-07-10 2000-01-12 STMicroelectronics, Inc. Method and apparatus for controlling data flow in data communication networks

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5959613A (en) * 1995-12-01 1999-09-28 Immersion Corporation Method and apparatus for shaping force signals for a force feedback device
FR2740636B1 (en) * 1995-10-31 1997-11-28 Thomson Multimedia Sa PROCESS ALLOWING THE CASCADE OF DETACHABLE CONDITIONAL ACCESS MODULES, CIRCUIT FOR INSERTING A PREDEFINED SEQUENCE AND DETECTION CIRCUIT OF THE SAID SEQUENCE FOR THE IMPLEMENTATION OF THE PROCEDURE
US5894559A (en) * 1996-08-15 1999-04-13 Advanced Micro Devices, Inc. System for selectively reducing capture effect in a network station by increasing delay time after a predetermined number of consecutive successful transmissions
US6625166B2 (en) * 1996-11-15 2003-09-23 Canon Kabushiki Kaisha Communication system for communicating a plurality of time-division multiplexed data, and control method therefor
US5963560A (en) * 1997-03-05 1999-10-05 Advanced Micro Devices, Inc. Method and arrangement for providing multi-level priority in a rotating priority arrangement for access to medium in an ethernet network
CA2275408C (en) * 1997-10-20 2003-04-01 Comsat Corporation A method for generation of accurate doppler-free local clock in satellite/wireless networks
US6330248B1 (en) * 1997-12-05 2001-12-11 Advanced Micro Devices, Inc. Arrangement for transmitting data packets from a media access controller across multiple physical links
US6081523A (en) * 1997-12-05 2000-06-27 Advanced Micro Devices, Inc. Arrangement for transmitting packet data segments from a media access controller across multiple physical links
US6810042B1 (en) * 1999-01-04 2004-10-26 Cisco Technology, Inc. Method of queuing traffic to many destinations covering a wide range of transmission speeds while minimizing buffer size
US7184408B2 (en) * 2001-07-31 2007-02-27 Denton I Claude Method and apparatus for programmable generation of traffic streams
FI20031646A0 (en) * 2003-11-12 2003-11-12 Nokia Corp Traffic and radio resource management on a wireless communication device
US8144589B2 (en) * 2007-05-07 2012-03-27 Qualcomm Incorporated Learning-based semi-persistent scheduling in wireless communications

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4954965A (en) * 1989-02-09 1990-09-04 International Business Machines Corporation Enhanced frame utilization for CSMA/CD communication protocol

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5048009A (en) * 1989-02-28 1991-09-10 Hewlett-Packard Company Broadcast station locator for a local area network
US5555244A (en) * 1994-05-19 1996-09-10 Integrated Network Corporation Scalable multimedia network
US5673254A (en) * 1995-06-07 1997-09-30 Advanced Micro Devices Inc. Enhancements to 802.3 media access control and associated signaling schemes for ethernet switching

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4954965A (en) * 1989-02-09 1990-09-04 International Business Machines Corporation Enhanced frame utilization for CSMA/CD communication protocol

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
P. GBURZYNSKI AND ZIAO YOU ZHOU: "ETHERNET FOR SHORT PACKETS", INTERNATIONAL JOURNAL OF MODELLING AND SIMULATION, vol. 13, no. 2, 1993, USA, pages 62 - 66, XP000676833 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0971512A2 (en) * 1998-07-10 2000-01-12 STMicroelectronics, Inc. Method and apparatus for controlling data flow in data communication networks

Also Published As

Publication number Publication date
TW312067B (en) 1997-08-01
US5812554A (en) 1998-09-22

Similar Documents

Publication Publication Date Title
US5436902A (en) Ethernet extender
USRE38309E1 (en) Full duplex flow control for Ethernet networks
EP0422914B1 (en) Station-to-station full duplex communication in a communications network
US6192422B1 (en) Repeater with flow control device transmitting congestion indication data from output port buffer to associated network node upon port input buffer crossing threshold level
US6947997B2 (en) Method for controlling ethernet data flow on a synchronous digital hierarchy transmission network
US4970720A (en) Packet communication exchange including dummy packet transmission
EP0254047B1 (en) Packet length traffic control in a local area network
US4623886A (en) Prioritized data packet communication
US5631905A (en) Communications network control method
US4884266A (en) Variable speed local area network
US5812554A (en) Efficiency of a network having a minimum data transmission time
EP0307931B1 (en) Interface module for connecting collision detection LAN user terminals to a switching network having a different access mode.
GB2332128A (en) Arrangement for transmitting packet data segments from a media access controller across multiple physical links
WO1998009408A1 (en) Arrangement for regulating packet flow rate in shared-medium, point-to-point, and switched networks
US5568469A (en) Method and apparatus for controlling latency and jitter in a local area network which uses a CSMA/CD protocol
US5576702A (en) Method and apparatus for fault-tolerant transmission in multi-channel networks
US6111890A (en) Gigabuffer lite repeater scheme
US6370115B1 (en) Ethernet device and method for applying back pressure
US4751700A (en) Method and apparatus for local area communication networks
US6594283B1 (en) Network communication device
CN113238537A (en) High-speed industrial field bus based on Ethernet and data transmission method thereof
EP1065831B1 (en) Early preamble transmission
JPS62164340A (en) Data switching method for combining bus and star data networks
GB2333675A (en) Computer network communications devices
Thomas Extending CAN networks by incorporating remote bridging

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: JP

Ref document number: 97542310

Format of ref document f/p: F

122 Ep: pct application non-entry in european phase