GB2336076A - Controlling data flow through the ports of a communications device - Google Patents

Controlling data flow through the ports of a communications device Download PDF

Info

Publication number
GB2336076A
GB2336076A GB9807264A GB9807264A GB2336076A GB 2336076 A GB2336076 A GB 2336076A GB 9807264 A GB9807264 A GB 9807264A GB 9807264 A GB9807264 A GB 9807264A GB 2336076 A GB2336076 A GB 2336076A
Authority
GB
United Kingdom
Prior art keywords
value
port
counter
communications
ports
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.)
Granted
Application number
GB9807264A
Other versions
GB2336076B (en
GB9807264D0 (en
Inventor
Paul James Moran
David Law
Peter Wilson
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.)
3Com Technologies Ltd
Original Assignee
3Com Technologies Ltd
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 3Com Technologies Ltd filed Critical 3Com Technologies Ltd
Priority to GB9807264A priority Critical patent/GB2336076B/en
Publication of GB9807264D0 publication Critical patent/GB9807264D0/en
Publication of GB2336076A publication Critical patent/GB2336076A/en
Application granted granted Critical
Publication of GB2336076B publication Critical patent/GB2336076B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/13Flow control; Congestion control in a LAN segment, e.g. ring or bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A communication device (bridge 10) for use in a computer network is provided, the various ports 12e-12h of which may be configured to function at different maximum rates. This permits maximum flexibility in the configuration of the network and allows a network manager to take account of the different needs of various users of the network when the configuration takes place. A counter (20), Fig.2, (not shown), provides a "leaky bucket" implementation of the flow control for each port.

Description

1 1 1 2336076 Network Device The present invention relates to the control
of communication traffic in a computer network and in particular relates to an arrangement in which the volume of traffic on a network can be controlled.
As is well known computer networks are formed of interconnected network devices such as file servers, printers, workstations and PCs. In a typical configuration, these network devices are interconnected in a star or tree formation by using communication hubs to which the various network devices are connected. Each communications hub has a plurality of ports to which either a further hub or a network device can be connected. Communication hubs retransmit communications received on any one of their ports to others of their ports to enable the communications sent by the network devices to reach their intended destinations.
Typically, for instance in the Ethernet standard networks, communications occur by way of data packets which identify the source and destination addresses of the data packet in question as well as carrying the actual data to be communicated.
There are in existence a number of types of communication hubs, for instance repeaters, bridges and switches. These various types of devices handle the communications they receive in different manners, for instance a repeater simply retransnu'ts all commulu'cations received on any port to all others of its ports, while a switch or bridge determines the intended destination of a received communication packet and, if it knows the intended destination, retransmits that packet only on the port or ports necessary for it to reach its intended destination.
Repeaters, as mentioned above, have an essentially passive functionality, while bridges and switches are more complex devices in which some control over the data passing through the device is exercised. The present invention is applicable in devices, such as bridges or switches, which exercise such control.
2 Over the past several years, developments have occurred in the implementation of computer networks and 'm particular in the Ethernet standard communications in networks. In particular, the permitted maximum speeds of communication which can be achieved have increased and, while a few years ago a typical network could carry communications at a rate of 10 megabits per second (Mbps) there are now in existence standards which permit communications to occur at speeds of up to 100 Mbps or 1000 Mbps.
To allow inter-operability between network devices designed to operate at different speeds, there are proposed communication hubs which can handle data at two or three different speeds, for instance both 10 and 100 Mbps, or 10, 100 and 100 Mbps.
It has been found however that there is resistance, for instance from network administrators, to installmig highspeed networks in which all users of the network have access at the maximum possible rate. Reasons for this include the fact that if all users on the network were able to access the network at the higher rates, this would dramatically increase the load on the existing file servers and other pieces of network equipment for mistance those designed to interface with wide area networks.
Such an increase in load may in fact reduce the overall capacity of the network, contrary to the intention of installing a fast network.
In this context therefore the present invention provides a communications hub for a computer network comprismig a plurality of ports to which network devices may be attached and via which communications passing to and from the respective network devices can pass, comprising means associated with at least one of said ports arranged to set a limit for the rate at which communications can occur through the port said limit beffig less than the theoretical maximum communications rate via that port.
Such a communication device enables a network manager to 3 1 individually set a limit on the communication rate at which each user of the network can operate thereby preventing or reducmg the risk of the network becoming overloaded as outlined above. Different users may be permitted to access the network at different communication speeds according to the requirements of the different users and their relative priorities for access to the network.
One implementation of a communication device as outlined above would be for the port devices to allow communications to occur via the port only for a proportion of the time, equal to the proportion which the limit is of the maximum bandwidth which is allowed via the port. For instance, if Mi a 100 Mbps capacity network a particular user is to be allowed to communicate only at 20 Mbps, the port would be enabled for 20% of the time.
This approach does result in an accurate limitation in the bandwidth to the specified allowed level and for requests and responses which are completed within the permitted timesiot the response time is very good. However, this implementation results in a very bursty pattern of traffic on the network and also no distinction is made between light users and heavy users of the network. In particular, a light user of the network who never wishes to exceed its limit still has periods of time when it cannot access the network.
With these difficulties in mind, in a particularly preferred implementation of the present invention the control means associated with each port of the communication device has a counter. This counter is incremented m one direction according to the amount of data passing through the poM and is Micremented in tile other direction periodicaUy by an amount representing the permitted maximum data rate allowed through the port.
So long as a user of the port does not exceed the maximum allowed bandwidth the counter remains at or just above zero and the user has continuous access to the network at the permitted rate. In addition, a threshold is set representing 4 a significant deviation from the maximum allowed communication rate, and if the counter reaches this threshold then further communication via the port is more severely limited until such time has elapsed at the time average of the communications via the port falls to or below the maximum permitted commufflication rate for the port.
It is necessary to allow some temporary deviation from the maximum permitted rate 'm normal operation because the network components are capable of handling transmissions up to the maximum network rate and thus the rated value of the network will still dictate the mstantaneous speed at which data can arrive.
This implementation provides advantages in that a light user of the network has effectively permanent access to the network at the allowed communications speed and also the adjustment of the allowed data rates on different ports is easily effected simply by adjusting the amount which is periodically mcremented m the counter.
The present mivention will be better understood from the following description of a preferred embodiment given by way of example and for illustration purposes and with reference to the accompanying drawmigs, in which:
Figure 1 is a schematic illustration of a repeater device 'm which the invention is implemented; Figure 2 is a schematic illustration of parts of the communicating device implementing the present mivention; and Figure 3 is a table of values used in particular implementations of the mvention.
In general terms what is provided by this mivention and illustrated in more detail m the drawmgs discussed below is a communication device for use m a computer network the various ports of which may be configured to function at different maximum rates. This permits maximum flexibility m the configuration of the network and allows a network manager to take account of the dillerent needs of various users of the network when the configuration takes place.
Figure 1 illustrates, in schematic form, some basic features of a repeater device according to a preferred embodiment of this invention.
In Figure 1 bridge device 10 comprises a plurality of ports 12a to 12h to which network devices may be connected mi the normal fashion. Eight ports are shown Mi this embodiment by way of example, it being understood that it is quite common for a considerably large number of ports to be provided on a network device and this could equally well be done within the context of the present invention.
Associated with each port 12 is a corresponding Media Access Control (MAC) device and MAC devices 14a to 14h are illustrated associated with ports 12a to 12h respectively. As is well known, MAC devices are provided in communication devices in computer networks to control the first interface between the network medium connected to the port and the internal components of the communication device. The basic operations of MAC devices are well known and are not discussed here as, except to note that a MAC device is able to monitor transmission errors in communication packets and controls the flow of data through the port.
Within bridge device 10 is provided an ASIC device 16. ASIC device 16 provides the core flinctions of the bridge 10, that is it functions to receive incoming data from all of the ports and to retransmit the received data via the ports according to known protocols and schemes of operation. ASIC 16 is therefore provided with connections to the MAC devices 14 and, in the embodiments illustrated in Figure 1, this is by way of a data bus 17 via which ASIC 16 can receive data from and transmit data to all of the MAC devices 14. In such an architecture within the bridge device, there will also be present appropriate control signalling to enable and disable access to the bus by the various devices attached to it but the details of this are not shown in the present figures for clarity and because they are not necessary for 6 an understanding of the present invention. The bus architecture illustrated mi Figure 1 is merely by way of example, and any other connection architecture to carry the data between ASIC 16 and the MAC devices 14 could equally well be implemented m the context of the present invention, for instances a standard star connection could be used in which each MC device 14 is provided with an individual data link to ASIC 16.
Also it would be possible for the MAC devices to be integrated into the ASIC device such that a smigle chip provides the combined flinctions, although the parts are described separately heremi for clarity.
The final major component of the bridge 10 illustrated in Figure 1 is the management/control means 18 which is provided to control the overall functioning of bridge device 10. While this is shown as a separate device from ASIC 16 it may m fact be unplemented as an integral part of ASIC 16 or it may be implemented as illustrated as a separate device. In any event, management control means 18 is in communication with ASIC 16 to control and monitor its basic function M" the normal way, and is also provided with means for communicating with each of MAC devices 14 to monitor and control their operation.
The present invention is implemented along the following lines within bridge device 10. For each port on which a maximum permitted data rate is to be set the amount of data passmig through the port is monitored and at each time a transmission or reception of data occurs, a number corresponding to the amount of data passing through the port is added to a counter. Additionally, as an ongoing process, another number is regularly subtracted from the counter, if the value in the counter is above zero.
The value which is periodically subtracted from the counter represents the maximum permitted data rate which is allowed through the relevant port and it will therefore be understood that, so long as the maxu"nuin permitted data rate is not 7 exceeded, the counter wiII not depart substantially from zero. If however, for a period of time, there is activity to the port considerably in excess of the maximum allowed bandwidth, the net value in the counter will continue to increase as an indication of this.
Further in this implementation there is therefore set a threshold for the value 'm the counter and, if the counter value reaches the threshold value, then some flow control is implemented by the MAC on the port to restrict severely or prohibit further communication through the port until such time as the counter value has returned to a suitably low value.
This flow control is according to known network protocols and, as is known, while it is possible immediately to disable fluther data transmission, it may be that fin-ther data will be received until the protocol for disabling the port from the network takes full effect. Such data is still received in the normal way, and is noted m the counter as normal.
Such an implementation has been termed a leaky bucket implementation and it will be appreciated that the counter can be considered as a bucket for water having a hole in the bottom. Water can be poured into the top of the bucket and the size of the hole determines the rate at which water can dribble out. If a constant fill rate is less than or equal to the dribble rate then the bucket will always be empty, while if a constant fill rate is greater than the dribble rate then the bucket will gradually fill up and eventually overflow.
If the fill rate is not constant but over time averages to be equal to or less than the dribble rate then, so long as any sudden influx is not greater than the capacity of the bucket, then the capacity of the bucket will allow all of the water to dribble through the hole in the bucket without the bucket overflowmig.
It will be appreciated that this is analogous to the data rate limitation implementation discussed above in which the leaky bucket is represented by the 8 counter, a non-zero value mi the counter being eqwvalent to the presence of water in the bucket. Activity on the port is represented by adding water to the bucket and the periodic subtraction from the counter represents water dribbling out of the hole 'm the bucket. The bucket is set to sufficiently large that it can cope with the arrival of a reasonable number of maximum size communications packets effectively instantaneously, but the repeated arrival of such amounts of data may cause the bucket to overflow, depending on the dribble rate.
The threshold of the counter at which flow control for the port is implemented is analogous to the overflowmig of the bucket which must be prevented if no water is to be lost.
Figure 2 is a schematic illustration of the various means implemented within bridge 10 concerned with the uinplementation of the present mivention. In Figure 2 there are shown only the parts associated with a single port, it bemig understood that corresponding means are provided for each of the ports on which the flow control according to the present mivention is implemented.
In Figure 2 there is provided a counter 20 which, 'm this implementation, is a 32 bit counter and represents the leaky bucket discussed above. Also shown in Figure 2 is a control means, in the form of a part of the ASIC designated 16a 'm Figure 2 which is responsible for the uinplementation of the present embodiment. Associated with the ASIC 16a is a set of registers 21 which hold the control values for the process according to the present embodiment.
In particular it will be seen that the register 21 include an enable value, a dribble value, a threshold value and a stop traffic value. The enable value simply indicates whether or not the flow control according to the this invention is to be implemented on the port. In this implementation this is a single bit and for the remainder of the discussion it will be assumed that this bit is set to indicate that the flow control should be implemented. The threshold value held mi register 21 is a 32 9 bit value, corresponding to the fact that the counter 20 is a 32 bit counter, and sets the maximum value which will be allowed to accuinulate in counter 20 before action is taken to redlice the flow. The dribble value held in register 21 is, in this implementation, a 12 bit value and this is the value which is periodically subtracted from the counter to represent the leak in the bucket. These values are set by the network control Jun order to set up the flow control for a particular port and these values are then input to the control implemented by the ASIC 16a.
The final value held in register 21 is the stop traffic value, and again this is a single bit value which is controlled by the ASIC and indicates to the MAC device 14 whether or not flow control currently requires implementation for the port m order to bring the traffic on that port within the maximum allowed level.
ASIC 16a also has input to it a clock signal on line 22 and this clock is termed the dribble clock and ASIC 16a acts once every clock cycle of the dribble clock to subtract the dribble value from register 21 from the counter 20. Finally, as illustrated 'm Figure 2, MAC 14 signals to ASIC 16a the quantity of data passing through the port in order for ASIC 16a to. add the appropriate value to counter 20.
In the following there is described a particular nuinenical example of an implementation of this embodiment given by way of illustration. In this illustrative embodiment it will be the case that the numbers used to represent the quantity of data are actually the numbers of bytes (groups of 8 bits) passing through the port as this enables the use of smaller numbers. Figure 3 is a table setting out the various numbers which are used 'm this implementation of the embodiment.
In Figure 3 the first column, headed possible megabits. per second, corresponds to the rated speed of the network. As shown, this is typically either 10 megabits per second or 100 megabits per second in accordance with known network implementations. We appreciated that, in the present invention, even when the control according to this invention is implemented to reduce the overall data speed through a particular port, the network components are capable of handling transmissions up to the maximum network rate and therefore the rated value of the network speed will still dictate the instantaneous speed at which data can arrive. This therefore sets the fill rate mi bytes per second which is shown in the third column of Figure 3 and it will be seen that the fill rate per second 'm bytes is sinply 1/8 of the maximum value of megabits per second.
The second column of Figure 3 represents the various values which may be required to be set as the maximum allowed data rate through a particular port. Again, these are firstly given in the second column of Figure 3 in terms of megabits per second and these convert, again by factor of 1/8, to the values given 'm the fourth column of Figure 3. This column is headed ideal dribble rate because, as mentioned above, the dribble rate, that is the rate at which numbers are subtracted from the counter, equates to the maximum allowed data rate through the port. The next column 'm Figure 3, headed subtract value, is dictated by the ideal dribble rate and the frequency of the dribble clock 22 in Figure 2. This is the value which will be subtracted for every clock cycle. In this embodiment, the frequency of the dribble clock is 15,258 Hz (derived from 125 Nfliz clock) and, broadly speaking, the subtract value in Figure 3 is the ideal dribble rate value divided by 15,258. The actual values are rounded to give whole values for storing mi register 21 and for use in subtracting from the counter.
Finally, Figure 3 illustrates in its right most two columns the actual dribble rate and the actual maxunum megabits per second which are allowed by the rounded subtract values, and it will be seen that these do not depart substantially from the ideal values given in the lefthand side of the table.
Taking, by way of example, the example from Figure 3 of a 100 Mbps network 'm which it is desired to restrict the data flow through a particular port to 25 Mbps. It will be understood then that the value of 205 is set in the dribble register is 11 register 21 mi Figure 2. On each clock cycle of clock 22, operating at 15, 258 Hz, this value is subtracted, by ASIC 16a, from the current value 'm counter 20 so long as the current value -m counter 20 is not zero. Each time traffic is passed through the associated port, MAC device 14 communicates to ASIC 16a the number of bytes which have passed through the port and then this value is added to the value in counter 20. So long as the time averaged data flow through the port does not exceed Mbps the value mi counter 20 will not depart substantially from zero and data will continue to pass through the port.
Alternatively it may be that the value stored mi the dribble register is mi fact the 2's complement of the actual dribble value, such that the stored value can be added to the counter with an effect equivalent to subtracting the required dribble value.
As discussed above, there is also set mi register 21 a threshold value and, after each addition to counter 20, ASIC 16a compares the new value 'm counter with the threshold value from register 2 1. If the value in counter 20 is greater than the threshold value firom register 2 1, ASIC 16 a sets the stop traffic value to one.
MAC device 14 is responsive to the value of the stop traffic bit such that when it is set to one MAC device 14 implements flow control through the port such that it immediately prevents any further mission of data and, Mi accordance with known protocols, acts to prevent further reception of data.
ASIC 16a continues to subtract the dribble value from counter 20 on each clock cycle of clock 22 until such time as the value mi counter 20 reaches zero.
At this time the stop traffic bit is reset to zero, responsive to which the MAC device 14 again permits communication through the port.
In this implementation, if the current value 'm counter 20 is lower than the threshold value the value of the stop traffic bit is not changed. This means that the MAC device must wait until the counter has completely cleared until it is again 12 permitted to transRuit traffic through the port.
In an alternative implementation it would be possible to provide a further intermediate threshold value at which the transmission of data could be recommenced. The setting of the threshold value or values defines how much departure from the ideal data rate will be permitted and is a matter for consideration by the network controller.
As mentioned above the threshold value may be set to permit the arrival of a reasonable number, perhaps one or two, of maximum size packets without triggering the flow control. If the threshold is set too low it may interfere with the reception and forwarding of packets to the detriment of the overall network.
However, it is also important not to set the threshold too high because the higher the threshold, the longer the times will be during which communications will be prohibited or severely limited, while the counter micrements to zero by the dribble clock.
It will therefore be seen that the present invention provides a simple and effective way 'm which quantity of data passing through ports mi a communication device can be controlled, while also allowing for sinple alteration of the control values s hinply by resetting the values stored 'm register 2 1.
13

Claims (13)

CLAIMS:
1. A communications device for a computer network comprising a plurality of ports to which network devices may be attached and via which communications passing to and from the respective network devices can pass comprising control means associated with at least one of said ports arranged to set a limit for the rate at which communications can occur through the port said limit beffig less than the theoretical maximum communications rate via that port.
2. A communications device according to claim 1 comprising said control means associated with a plurality of ports in which said control means sets said limit for each of said plurality of ports independently of said limit set for the remainder of said plurality of ports.
3. A communications device according to claim 1 mi which said control means allows each of said at least one port to carry communications only for a proportion of the time, said proportion corresponding to the ratio between said limit and said theoretical maximum rate.
4. A communications device for a computer network comprising a plurality of ports to which network devices may be attached and via which communications passing to and from the respective network devices can pass comprising, associated with at least one of said ports; monitoring means for monitoring the amount of data passing through said port; a counter means having a value therein; means responsive to said monitoring means for adding to said counter 14 means values corresponding to said amount of data; storage means for storing first and second predetermined values; clock means providmig a periodic clock signal having a predetermined clock interval., means responsive to said clock signal for subtracting firom said counter, at each said clock mterval, the lower of said first predetermined value and the value m said counter; means for determining if the value in said counter means exceeds said second predeternuined value; and means responsive to said means for determining for restricting the passage of communications through said port when said value 'm said counter means exceeds said second predetermined value.
5. A communications device according to claim 4 mi which said means for restricting the passage of communications disables the transmission of data from the port until the value mi said counter means falls to a third predetermined value.
6. A communications device according to claim 4 Mi which said means for restricting the passage of communications initiates a disabling of the reception of data at the port usmig a network protocol when said value mi said counter means exceeds said second predetermined value and until the value in said counter means falls to a third predeternuined value.
7. A communications device according to claim 5 or 6 in which said third predetemimied value is zero.
8.
A communications device according to claim 5 or 6 in which said third predetermmied value is a value intermediate zero and said second predetermined value.
9. A method of operating a communications device for a computer network compnismig a plurality of ports to which network devices may be attached and via which communications passing to and from the respective network devices can pass; the method comprising, for at least one of said ports; monitoring the amount of data passing through said port; monitoring a count value; adding to said count value correspondmig: to said amount of data; storing first and second predetermined values; providing a periodic clock signal having a predeternimied clock interval; subtracting from said count value, at each said clock ffiterval, the lower of said first predetermined value and the count value; determining if the count value exceeds said second predetermined value; and restricting the passage of communlications through said port when said count value exceeds said second predetermined value.
10. A method according to claim 9 mi which the transmission of data from the port is disabled when said count value exceeds said second predetermined value until the value m said counter means falls to a third predetermined value.
11. A communications device according to claim 9 in which the reception of data at the port is disabled using a network protocol when said value mi said counter means exceeds said second predetermined value and until the value in said 16 counter means falls to a third predetermined value.
12. A communications device according to claim 10 or 11 'm which said third predetermined value is zero.
13. A commurucafions device according to claim 10 or 11 in which said third predetermined value is a value intermediate zero and said second predetermined value.
GB9807264A 1998-04-03 1998-04-03 Network device Expired - Fee Related GB2336076B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB9807264A GB2336076B (en) 1998-04-03 1998-04-03 Network device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB9807264A GB2336076B (en) 1998-04-03 1998-04-03 Network device

Publications (3)

Publication Number Publication Date
GB9807264D0 GB9807264D0 (en) 1998-06-03
GB2336076A true GB2336076A (en) 1999-10-06
GB2336076B GB2336076B (en) 2003-01-15

Family

ID=10829866

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9807264A Expired - Fee Related GB2336076B (en) 1998-04-03 1998-04-03 Network device

Country Status (1)

Country Link
GB (1) GB2336076B (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2349781A (en) * 1999-05-01 2000-11-08 3Com Corp Packet multicasting in a ring architecture
GB2356104A (en) * 1999-11-04 2001-05-09 3Com Corp Network switch including bandwidth controller
GB2370184A (en) * 2000-12-13 2002-06-19 3Com Corp Selectable bandwidth facility for a network port
WO2005107192A1 (en) * 2004-04-28 2005-11-10 Thomson Licensing System and method for enhancing network quality of service
US9372772B1 (en) 2015-03-27 2016-06-21 Cavium, Inc. Co-verification—of hardware and software, a unified approach in verification
US9506982B2 (en) 2014-11-14 2016-11-29 Cavium, Inc. Testbench builder, system, device and method including a generic monitor and transporter
US10282315B2 (en) 2015-03-27 2019-05-07 Cavium, Llc Software assisted hardware configuration for software defined network system-on-chip

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150372926A1 (en) * 2014-06-19 2015-12-24 XPLIANT, Inc Leaky bucket model to mimic behavior of a mac and a method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2280574A (en) * 1993-07-31 1995-02-01 Northern Telecom Ltd User interface for local area networks
EP0753950A1 (en) * 1995-07-12 1997-01-15 Compaq Computer Corporation Adaptive repeater system
US5604867A (en) * 1994-07-22 1997-02-18 Network Peripherals System for transmitting data between bus and network having device comprising first counter for providing transmitting rate and second counter for limiting frames exceeding rate
WO1998009408A1 (en) * 1996-08-30 1998-03-05 Advanced Micro Devices, Inc. Arrangement for regulating packet flow rate in shared-medium, point-to-point, and switched networks

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19745020B4 (en) * 1996-10-29 2008-01-31 Keymile Ag Method for controlling data traffic in an ATM network
JP3123447B2 (en) * 1996-11-13 2001-01-09 日本電気株式会社 Switch control circuit of ATM exchange
EP0952753B1 (en) * 1998-03-30 2013-09-11 Alcatel-Lucent ATM adaption layer traffic scheduling for variable bit rate connections

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2280574A (en) * 1993-07-31 1995-02-01 Northern Telecom Ltd User interface for local area networks
US5604867A (en) * 1994-07-22 1997-02-18 Network Peripherals System for transmitting data between bus and network having device comprising first counter for providing transmitting rate and second counter for limiting frames exceeding rate
EP0753950A1 (en) * 1995-07-12 1997-01-15 Compaq Computer Corporation Adaptive repeater system
WO1998009408A1 (en) * 1996-08-30 1998-03-05 Advanced Micro Devices, Inc. Arrangement for regulating packet flow rate in shared-medium, point-to-point, and switched networks

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2349781A (en) * 1999-05-01 2000-11-08 3Com Corp Packet multicasting in a ring architecture
GB2349781B (en) * 1999-05-01 2001-07-18 3Com Corp Packet multicasting in a ring architecture
US6661790B1 (en) 1999-05-01 2003-12-09 3Com Technologies Packet multicasting in a ring architecture
GB2356104A (en) * 1999-11-04 2001-05-09 3Com Corp Network switch including bandwidth controller
GB2356104B (en) * 1999-11-04 2001-10-10 3Com Corp Network switch including bandwidth controller
US6661803B1 (en) 1999-11-04 2003-12-09 3Com Corporation Network switch including bandwidth controller
GB2370184A (en) * 2000-12-13 2002-06-19 3Com Corp Selectable bandwidth facility for a network port
GB2370184B (en) * 2000-12-13 2003-06-18 3Com Corp Selectable bandwidth facility for a network port
CN101023633B (en) * 2004-04-28 2012-11-14 汤姆逊许可公司 System and method for enhancing network quality of service
KR101172491B1 (en) 2004-04-28 2012-08-10 톰슨 라이센싱 System and method for enhancing network quality of service
WO2005107192A1 (en) * 2004-04-28 2005-11-10 Thomson Licensing System and method for enhancing network quality of service
US8565077B2 (en) 2004-04-28 2013-10-22 Thomson Licensing System and method for enhancing network quality of service
US9506982B2 (en) 2014-11-14 2016-11-29 Cavium, Inc. Testbench builder, system, device and method including a generic monitor and transporter
US9547041B2 (en) 2014-11-14 2017-01-17 Cavium, Inc. Testbench builder, system, device and method with phase synchronization
US9778315B2 (en) 2014-11-14 2017-10-03 Cavium, Inc. Testbench builder, system, device and method having agent loopback functionality
US9817067B2 (en) 2014-11-14 2017-11-14 Cavium, Inc. Testbench builder, system, device and method including latency detection
US10006963B2 (en) 2014-11-14 2018-06-26 Cavium, Inc. Packet tracking in a verification environment
US10082538B2 (en) 2014-11-14 2018-09-25 Cavium, Inc. Testbench builder, system, device and method
US9372772B1 (en) 2015-03-27 2016-06-21 Cavium, Inc. Co-verification—of hardware and software, a unified approach in verification
US10282315B2 (en) 2015-03-27 2019-05-07 Cavium, Llc Software assisted hardware configuration for software defined network system-on-chip

Also Published As

Publication number Publication date
GB2336076B (en) 2003-01-15
GB9807264D0 (en) 1998-06-03

Similar Documents

Publication Publication Date Title
US6940818B2 (en) Selectable bandwidth facility for a network port
US6851008B2 (en) Adaptive flow control method and apparatus
EP0275678B1 (en) Packet switching system arranged for congestion control through bandwidth management
EP1705851B1 (en) Communication traffic policing apparatus and methods
JP2610098B2 (en) Network access control system
JPH0657017B2 (en) Congestion control type packet switching method and apparatus thereof
US20040223452A1 (en) Process for detecting network congestion
EP1411680B1 (en) Metro-ethernet network system with selective upstream pause messaging
GB2338154A (en) Providing fair access for VLANs to a shared transmission medium
US20110222394A1 (en) Fabric extra traffic
EP2442498B1 (en) Method and device for controlling switching network traffic
US20020124104A1 (en) Network element and a method for preventing a disorder of a sequence of data packets traversing the network
WO2008149207A2 (en) Traffic manager, method and fabric switching system for performing active queue management of discard-eligible traffic
GB2336076A (en) Controlling data flow through the ports of a communications device
US6249819B1 (en) Method for flow controlling ATM traffic
JPH0714163B2 (en) Packet flow control method
CN102144376A (en) Band control method and band control device for node device
US7016302B1 (en) Apparatus and method for controlling queuing of data at a node on a network
US7130271B1 (en) Relaying apparatus
US6882622B1 (en) Flow control system for network devices
US5926625A (en) Self-programming switch for computer networks
Cisco Configuring Ethernet LAN Interfaces
US6075771A (en) Fair allocation of excess resources in a communications system
Cisco Configuring Ethernet LAN Interfaces
Cisco Configuring Ethernet LAN Interfaces

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20060403