GB2333428A - Congestion control in a management port - Google Patents

Congestion control in a management port Download PDF

Info

Publication number
GB2333428A
GB2333428A GB9826248A GB9826248A GB2333428A GB 2333428 A GB2333428 A GB 2333428A GB 9826248 A GB9826248 A GB 9826248A GB 9826248 A GB9826248 A GB 9826248A GB 2333428 A GB2333428 A GB 2333428A
Authority
GB
United Kingdom
Prior art keywords
communications
communications device
port
portions
buffer
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
GB9826248A
Other versions
GB2333428B (en
GB9826248D0 (en
Inventor
Kevin Loughran
Kevin Jennings
John Hickey
Kam Choi
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
Priority claimed from GBGB9725376.9A external-priority patent/GB9725376D0/en
Application filed by 3Com Technologies Ltd filed Critical 3Com Technologies Ltd
Priority to GB9826248A priority Critical patent/GB2333428B/en
Publication of GB9826248D0 publication Critical patent/GB9826248D0/en
Publication of GB2333428A publication Critical patent/GB2333428A/en
Application granted granted Critical
Publication of GB2333428B publication Critical patent/GB2333428B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Abstract

The possibility of congestion for a management port 18a in a computer network communications device 10 is reduced by limiting the amount of data which is copied to the port for statistics purposes. This facilitates the reception by the port of data packets addressed to the device itself. Preferably the limiting is done by setting a maximum time-averaged rate at which statistics data may be passed to the management port. This is done by a counter 22 and first monitoring means 20. A second monitoring means 30 ensures that communications actually addressed to part 18a via bridge or repeater 14 can always be received into buffer memory 16, preferably to any broadcast or multicast communications or statistics data.

Description

Congestion Control in a Management Port The present invention relates to communication devices for computer networks and in particular to controlling the volume of traffic passing through internal management ports within such communication devices.
As is well known computer networks such as local area networks can be formed by interconnecting a plurality of computers or other computing devices enabling them to communicate with each other. Typically, such interconnections are by way of communication devices each of which provides a plurality of external ports to which another such communication device or a computing device may be connected. A computing device wishing to issue a communication forwards that communication to one of the communication devices via one of the external ports and it is forwarded from there to other parts of the network to enable it to reach its intended destination.
As is also well known, there are a number of different types of communication devices, in particular two types may be mentioned, that is repeaters and bridges. A repeater simply retransmits all communications received by any port to all of its other ports thereby enabling all communications of the parts of the network attached to the repeater to reach all other portions of that part.
A bridge is a more intelligent device which retains information about which computing devices are associated with which of its ports, and it only retransmits received communications on those ports which are necessary to enable that communication to reach its intended destination or destinations. The present invention is not limited to use with any one particular type of communication device, for instance bridge or repeater, as will become apparent in the following.
All communication devices, be they repeaters, bridges or other types of device, may have, in addition to their external ports, an internal port by way of which communications can be sent to the CPU which is at the heart of the communication device. Such communications may be sent by network management to control the operation of the communication device in question. It is important that such control communications reach the internal port efficiently so that proper control of the network can be achieved.
It is also well known to collect statistics relating to the operation of the network to enable monitoring of the network to be conducted. Statistics may be collected by monitoring the activity on a particular port of a communication device, a selection of ports, activity within a virtual network defined within the overall network, etc. The first step in such monitoring is to copy the packets of interest to a particular location to gather them together in order to be able to commence the statistical analysis. A typical implementation is for the packet of interest to be copied to the internal management port in a communication device as the initial collection point.
As the complexity and use of networks have increased so as the demand for statistical analysis. Also, there is a trend for an increasing amount of broadcast communication which is automatically sent to all ports in the network.
Both of these have the effect of increasing the amount of communication passing through the internal management port in communication devices causing congestion in these ports and reducing the efficiency with which the control communications which are intended to be received via the internal management port as mentioned above are actually received.
The present invention provides a communications device for a computer network in which a plurality of network devices are interconnected and enabled to communicate with each other, the communications device comprising: a plurality of ports via which network communications may be received and transmitted; a communications core means connected with said ports and arranged to re-transmit communications received at said ports according to a defined functionality; analysis means arranged to receive at least portions of at least some of said communications independently of their re-transmission according to said flinctionality, said core means being arranged to pass said at least portions to said analysis means; limiting means arranged to limit the number of said at least portions which are passed to said analysis means.
The present invention thus provides a mechanism for controlling the amount of packets which are copied to an internal management port in a communicating device in a computer network for statistical analysis purposes by setting a maximum rate at which such packets may be passed to the port. This maximum rate would be set low enough so that even if packets for analysis purposes are being passed at this rate this will not effect substantially the efficiency at which control communications are received by the internal port.
While this may mean that some packets which would otherwise be copied for statistical analysis purposes are not copied this will not affect the results of the statistical analysis as the majority of the analysis which is conducted is based on a random sample of received communications in any event.
This aspect of the invention may be implemented by providing a counter associated with the monitoring means present in the communication device which is arranged to locate and copy the packets of interest. The counter is incremented by a clock operating at the maximum rate to be set and is decremented every time a packet is copied to the management port for statistical purposes. The copying of such packets is only enabled when the counter has a value greater that zero and any packets of interest which occur while the counter is at zero are simply ignored.
In a further aspect the invention provides a method of operating a FIFO memory which is provided to buffer the input to the internal management port. It is well known to provide FIFO memories on the ports of communicating devices simply as a buffer to smooth out different rates of arrival of packets at the port. In this aspect of the invention, a predetermined level is set in the FIFO representing a specific proportion of the FIFO being full. If the amount of data stored in the FIFO ready for reception by the management port reaches this level, then only those communication packets specifically addressed to the management port are subsequently received into the FIFO for processing by the management port until such time as the level falls below the predetermined level. Implementing this arrangement means that there should always be available in the FIFO some space available to receive communication packets directly intended for the internal management port so that these can be received efficiently.
In a development of this arrangement, a number of different levels or water marks may be set in the FIFO memory representing levels at which different types of received communication may be ignored. These various types of communication may be the communicating packets copied for analysis purposes, broadcast communications, and multicast communications in which the internal management port is one of the intended destinations.
Either or both of the above aspects of the present invention may be implemented singularly or in combination in any particular communication device and it would be seen that these have a significant impact in reducing the congestion caused by broadcasting communications and packets copied for statistical analysis purposes in the management port, enabling the more efficient reception of packers directed specifically to that port.
In a further development, it may be recognised that, for at least some of the packets which are to be copied for statistical analysis purposes, it is unnecessary to copy all of each packet for the analysis to be properly carried out.
It is preferred therefore that only the portion necessary of these packets is copied to the internal management port, again reducing the amount of data which passes through this port, thereby reducing the congestion.
This invention will be better understood from the following description of preferred embodiments given by way of example and with reference to the accompanying drawings in which: Figure 1 is a schematic illustration of a communicating device according to the preferred embodiment of the present invention; and Figure 2 illustrates a further preferred operation of the buffer memory.
In this invention the possibility for a management port in a computer network communications device is reduced by limiting the amount of data which is copied to the port for statistics purposes. This facilitates the reception by the port of data packets addressed to the device itself. Preferably the limiting is done by setting a maximum time-averaged rate at which statistics data may be passed to the management port.
Figure 1 is a schematic block diagram of a communication device embodying the present invention. The communication device 10 comprises a plurality of ports 12a to 12e to which computing devices may be attached to form a computer network. Five ports are shown in Figure 1 for the purposes of illustration but it will be understood that any number of ports may in fact be provided. Ports 12a to 12e are connected to core 14 of the communication device and core 14 provides the basic function of the device, that is either a repeater, a bridge or other known device. The exact operation of core 14 is well known and does not form part of the present invention and will therefore not be discussed in detail here.
Communication device 10 is also provided with management means 18 which functions to control the operation of communication device 10 as is well known. Management means 18 is provided with management port 18a by way of which communications may be sent via the network to management means 18.
Communicating core 14 is also arranged to forward communications addressed to management means 18 to port 18a via buffer memory 16, in a conventional fashion. It should be noted that there may also be provided buffer memories in association with ports 12a to 12e but these are not significant for the purpose of understanding the present invention and therefore not illustrated.
The embodiment of the invention illustrated in Figure 1 further comprises first monitoring means 20. First monitoring means 20 monitors of the activity of core 14 to identify those communications which it is desired to copy to port 1 8a, in addition to those packets specifically addressed to port 18a, for the purposes of statistical analysis as mentioned above. Monitoring means 20, which may in fact be integrated with management means 18, or under its control, is programmed in the normal fashion to identify the communications of interest and to instruct core 14 to copy those communications to port 18a via memory 16.
In the embodiment of the invention, there is provided, in association with first monitoring means 20, a counter 22. There is provided a clock input to counter 22 in response to which the count in counter 22 is incremented. Count 24 is provided by counter 22 as an enable signal to first monitoring means 20 such that whenever the value of counter 24 is greater than zero first monitoring means 20 is able to authorise the copying of communications to port 18a by core 14, but if the value of counter 24 is zero first monitoring means 20 cannot authorise such copying. Each time first monitoring means 20 instructs the copying of a communication to port 18a, it acts to decrement counter 22 by way of another input to counter 22.
It will be appreciated therefore that for each pulse received by counter 22 from the clock signal one communication may be copied by core 14 to port 18a. The frequency of the clock signal is therefore, broadly speaking, the maximum average rate at which packets should be allowed to be copied for the purposes of statistical analysis to port 18a. The amount of packets so copied can therefore be limited by an appropriate frequency set for the clock signal thereby reducing the overall number of packets copied to port 18a, reducing the congestion on this port, and permitting communications specifically addressed to management port 18a to be properly received.
Counter 22 may be configured to have a maximum possible value so that, in times where very few communications are copied, the count does not build up to a high level which may cause congestion problems later on. Other configurations of counter 22 may be possible, but essentially it is configured to provide an enable signal 24 to first monitoring means 20 in order to limit the number of communication packets which may be copied to port 1 8a for statistical purposes to acceptable levels.
The embodiment of the invention illustrated in Figure 1 also comprises a second monitoring means 30 which monitors the operation of buffer memory 16. Buffer memory 16 simply receives the communications which are intended to be received by port 18a and stores them temporarily until port 18a is ready to receive them. It simply therefore buffers the input of port 1 8a to cope with varying rates of reception of packets. The memory available in buffer memory 16 is finite and the proportion of this memory which is used at any time will vary according to the amount of communications directed to port 1 8a by core 14 and the rate at which they are read into port 18a. Second monitoring means 30 monitors the amount of memory 16 which is currently used and, if the amount of memory which is used reaches a predetermined level, monitoring means 30 sends a signal to reset counter 22. This reset signal causes count 24 to take a value of zero and therefore first monitoring means will not cause any further communications to be copied to port 18a for the purposes of statistical analysis.
This in turn will reduce the rate at which communications are put into buffer memory 16 in order to minimise the chances of buffer memory 16 becoming full and unable to accept further communications. This will maximise the possibility for buffer memory 16 to receive communications from core 14 which are actually addressed to port 18a rather than simply being copied there as a result of first monitoring means 20.
The function of second monitoring means 30 is therefore to aim to ensure that communications addressed to the management means 18 can always be received into buffer memory 16 for transfer to port 18a.
Figure 2 is a schematic diagram of further operation of memory 16 and second monitoring means 30 in which three predetermined levels of data stored in memory 16 are monitored. Firstly, as described above, a first predetermined level is monitored such that, if the amount of data stored in memory 16 rises above this first level, no further packets will be copied to port 18a for the purposes of statistical monitoring. This level is represented by "STATS" in Figure 2 and, if the amount of data stored in memory 16 rises above this level, second monitoring means 30 provides the reset signal mentioned above to counter 22 such that no further communications are copied for statistical analysis.
Monitoring means 30 monitors a second predetermined level in memory 16 to decide whether any further broadcast signals should be supplied to port 18a. This level is represented by "B/C" in Figure 2 and, if it is determined by second monitoring means 30 that the amount of data stored in memory 16 is above this level, control signal 32 is provided to indicate that no further broadcast communications should be sent to port 18a. Control signal 32 will be input to core 14 to enable this function to be carried out.
In a similar way, a third predetermined level is provided ("M/C") above which no further multicast communications, which are addressed to a plurality of destinations, will be forwarded to port 18a and, if no further multicast packets are to be copied, control signal 34 is provided to core 14 to enable this function to be carried out.
It will be seen therefore that a balance is provided by way of the embodiments of this invention between the requirement, which may be considered the most important, that all communications which are specifically addressed to management means 18 should be received by port 18a to enable those communications to be acted on, and the desire to receive other communications at port 18a such as broadcast and multicast communications and to enable statistical analysis to be carried out. By way of this embodiment of the invention the congestion at port 18a caused by these other types of communication is significantly reduced enabling the directly addressed communications to be properly received.

Claims (12)

CLAIMS.
1. A communications device for a computer network in which a plurality of network devices are interconnected and enabled to communicate with each other, the communications device comprising: a plurality of ports via which network communications may be received and transrnitted; a communications core means connected with said ports and arranged to re-transmit communications received at said ports according to a defined functionality; analysis means arranged to receive at least portions of at least some of said communications independently of their re-transmission according to said functionality, said core means being arranged to pass said at least portions to said analysis means; limiting means arranged to limit the number of said at least portions which are passed to said analysis means.
2. A communications device according to claim 1 in which said limiting means is arranged to limit the rate at which said at least portions are passed.
3. A communications device according to claim 1 or 2 in which said limiting means comprises a counter means having a counter value stored therein, clock means arranged to increment said counter value at a predetermined frequency and monitoring means arranged to decrement said counter value each time said at least a portion of a communication is passed to said analysis means and to disable passing of said at least portions to said analysis means when said counter value is zero.
4. A communications device according to claim 3 in which said counter value cannot exceed a predetermined maximum value.
5. A communications device according to claim 1, 2, 3 or 4 in which said analysis means is an internal port within said device, said limiting means functioning to reduce the possibility that communications addressed to said internal port are not property received.
6. A communications device according to claim 5 in which said internal port is associated with management means arranged to control the operation of the communications device.
7. A communications device according to claim 5 or 6 in which said internal port is provided with buffer means in which all communications for reception by said internal port are temporarily stored, and buffer monitoring means arranged to monitor the usage of said buffer means and to disable the passing of said at least portions when said usage of said buffer exceeds a predetermined level.
8. A communications device according to any of claims 1-7 in which said defined functionality is repeater functionality.
9. A communications device according to any of claims 1-7 in which said defined functionality is bridge functionality.
10. A communications device according to any of claims 1-9 in which said analysis means comprises buffer means arranged to temporarily store data passed to said analysis means, said buffer means being arranged to reject data passed to it which is not data specifically addressed to said analysis means when an amount of data presently in said buffer means exceeds a predetermined level.
11. A communications device according to claim 10 in which said data passed to said analysis means may include said at least portions, multicast communications and broadcast communications and said buffer means is arranged to reject said at least portions when said amount of data exceeds a first predetermined level, and to reject said multicast or broadcast communications when said amount of data exceeds a second predetermined level greater than said first predetermined level.
12. A communications device substantially as hereinbefore described with reference to the accompanying drawings.
GB9826248A 1997-11-28 1998-11-30 Congestion control in a management port Expired - Fee Related GB2333428B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB9826248A GB2333428B (en) 1997-11-28 1998-11-30 Congestion control in a management port

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9725376.9A GB9725376D0 (en) 1997-11-28 1997-11-28 Congestion control in a management port
GB9826248A GB2333428B (en) 1997-11-28 1998-11-30 Congestion control in a management port

Publications (3)

Publication Number Publication Date
GB9826248D0 GB9826248D0 (en) 1999-01-20
GB2333428A true GB2333428A (en) 1999-07-21
GB2333428B GB2333428B (en) 2002-10-16

Family

ID=26312689

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9826248A Expired - Fee Related GB2333428B (en) 1997-11-28 1998-11-30 Congestion control in a management port

Country Status (1)

Country Link
GB (1) GB2333428B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2350530A (en) * 1999-05-25 2000-11-29 3Com Corp Port mirroring across a trunked stack of multi-port devices

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995003659A1 (en) * 1993-07-19 1995-02-02 Alantec Corporation Communication apparatus and methods
US5636345A (en) * 1995-03-30 1997-06-03 Bay Networks, Inc. Method and apparatus for detecting and preventing broadcast storms on an emulated local area network
GB2311634A (en) * 1996-03-29 1997-10-01 Mitsubishi Electric Corp Using network managing apparatus according to network load
GB2315967A (en) * 1995-05-31 1998-02-11 3Com Ireland Storm protection mechanism
GB2316589A (en) * 1995-05-31 1998-02-25 3Com Ireland Traffic monitoring and control in a switch

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995003659A1 (en) * 1993-07-19 1995-02-02 Alantec Corporation Communication apparatus and methods
US5636345A (en) * 1995-03-30 1997-06-03 Bay Networks, Inc. Method and apparatus for detecting and preventing broadcast storms on an emulated local area network
GB2315967A (en) * 1995-05-31 1998-02-11 3Com Ireland Storm protection mechanism
GB2316589A (en) * 1995-05-31 1998-02-25 3Com Ireland Traffic monitoring and control in a switch
GB2311634A (en) * 1996-03-29 1997-10-01 Mitsubishi Electric Corp Using network managing apparatus according to network load

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2350530A (en) * 1999-05-25 2000-11-29 3Com Corp Port mirroring across a trunked stack of multi-port devices
GB2350530B (en) * 1999-05-25 2001-05-30 3Com Corp Port mirroring across a trunked stack of multi-port communication devices
US6785286B1 (en) 1999-05-25 2004-08-31 3Com Corporation Port mirroring across a trunked stack of multi-port communication devices

Also Published As

Publication number Publication date
GB2333428B (en) 2002-10-16
GB9826248D0 (en) 1999-01-20

Similar Documents

Publication Publication Date Title
US7296093B1 (en) Network processor interface system
US5793978A (en) System for routing packets by separating packets in to broadcast packets and non-broadcast packets and allocating a selected communication bandwidth to the broadcast packets
US6697870B1 (en) Method and apparatus for real-time protocol analysis using an auto-throttling front end process
US7180862B2 (en) Apparatus and method for virtual output queue feedback
US6233236B1 (en) Method and apparatus for measuring traffic within a switch
US6252849B1 (en) Flow control using output port buffer allocation
CA2030349C (en) Dynamic window sizing in a data network
US8032655B2 (en) Configurable switching network interface controller using forwarding engine
US6425015B1 (en) Stacked communication devices and method for port mirroring using modified protocol
CN100514931C (en) Line card port protection rate limiter circuitry
US20040062200A1 (en) Packet storm control
JPH07221754A (en) Communication system for load balance and load dispersion
US7502375B2 (en) Modular and scalable switch and method for the distribution of fast ethernet data frames
US5442632A (en) Stale packet removal method and apparatus
US20030126280A1 (en) XON/XOFF flow control for computer network
US6928055B2 (en) Network interface unit
US8085658B1 (en) System and method of cross-chip flow control
US6236641B1 (en) Storm protection mechanism
US8930557B2 (en) Data transmission with constant data rate
US8131854B2 (en) Interfacing with streams of differing speeds
GB2333428A (en) Congestion control in a management port
US20060013137A1 (en) Network interface unit
US6747978B1 (en) Direct memory access packet router method and apparatus
JP3184138B2 (en) Apparatus and method for providing firewall protection for a system communicating with an asynchronous transfer mode system
US8068508B2 (en) Electronic circuit with processing units coupled via a communication network

Legal Events

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

Effective date: 20031130