1. Field of the Invention
The present invention relates to a LAN relaying/switching apparatus, and in particular to a LAN relaying/switching apparatus which can guarantee data to be transmitted.
In the LAN relaying/switching apparatus, even if a transmission line fault occurs in a specific data flow, it is desirable to guarantee the data with the least influence on the data of other data flows.
2. Description of the Related Art
As a control method to guarantee data to be transmitted, a xe2x80x9cbandwidth control methodxe2x80x9d and a xe2x80x9cpriority control methodxe2x80x9d have been known so far. Particularly, the bandwidth control method is one for preliminarily allocating the band of a LAN transmission line to each data flow and guaranteeing a data transmission so far as the reserved bandwidth. Also, the priority control method is one for efficiently using the band of the LAN transmission line and guaranteeing the transmission of data with a higher priority by relatively enhancing the processing priority for an important data flow as compared to that for other data flows.
Recent LAN environments have increased data flows which always require the guarantee of a transmission bandwidth such as that for voice and motion pictures (video). In such a case, the above-mentioned bandwidth control method is the best in that the data transmission is guaranteed up to the reserved bandwidth.
However, the bandwidth control method is disadvantageous in that a transmission line cannot be efficiently used since a fixed transmission line band is occupied without fail regardless of whether or not the transmission line band is actually used.
On the other hand, the above-mentioned priority control method makes it possible to efficiently use the transmission line since the transmission of data is guaranteed according to the priority. However, this method may not attend to the case where a fixed transmission band is required to be guaranteed such as for the above-mentioned voice and motion pictures.
It is accordingly an object of the present invention to provide a LAN relaying/switching apparatus which can guarantee data to be transmitted and efficiently use a transmission line band by combining a bandwidth control method and a priority control method.
In order to achieve the above-mentioned object, a LAN relaying/switching apparatus, of the present invention includes; at least one bandwidth control queue unit, a priority control queue unit, and a controller for setting a predetermined transmission line band part for a part of the data flows to the bandwidth control queue unit with a top priority, securing a remaining transmission line bandwidth part in the priority control queue unit according to the priority orders for the remaining data flows, and performing a read processing of the priority control queue unit at a timing different from a timing of reading the bandwidth control queue unit.
Such a principle of the present invention will be described by referring to FIGS. 1A-1C.
In FIG. 1A, there are provided five queue units 61-65 in all, to which predetermined data flows are assumed to be allocated respectively. To the bandwidth control queue units 61-63 among these queue units 61-65, a data flow FNA, an account system, and a VoIP are allocated and predetermined transmission line band parts are reserved, respectively. The controller guarantees the data flow FNA, the account system, and the VoIP for the respective reserved bands with a top priority.
The higher priority control queue units 64 transmits the remaining data flows by the remaining band parts according to the priority of the data flows. It is to be noted that the higher priority control queue unit 64 and the lower priority control queue unit 65 are illustrated to present a priority control, while the latter is especially illustrated to have no priority at all and to be given no bandwidth guarantee.
Thus, for the data flows of the bandwidth control queue units 61-63 which require the bandwidth guarantee, a data transmission up to the reserved bandwidth is guaranteed. For the data flows of the priority control queue units 64 and 65 with priority, the data transmission is guaranteed so far as the transmission line bandwidth from which the sum of the bandwidths allocated to the bandwidth transmission line queue units 61-63 is subtracted, so that it becomes possible to transmit the data according to the priority within that limited bandwidth.
In this case, the controller can perform read processings of the priority control queue units 64 and 65 while read timings of the bandwidth control queue units 61-63 are not generated. Accordingly, it becomes possible to guarantee the band of read data of the bandwidth control queue units 61-63 and to transmit read data of the priority control queue unit 64 in the absence of the former read data, thereby enabling the transmission line to be efficiently used.
Also, in the present invention, the controller may control both of the queue units independent of each other.
Namely, as illustrated in FIG. 1A, when a jam occurs at the bandwidth control queue unit 63, the jammed flow should not be transmitted with the band allocated to the priority control queue unit 64 in order to eliminate the jam.
Also, as illustrated in FIG. 1B, when a jam occurs at the priority control queue unit 64 conversely, the data flow for the priority control should not be transmitted with the bandwidth allocated to the bandwidth control queue units 61-63 in order to eliminate the jam.
Furthermore, it is a matter of course, as illustrated in FIG. 1C, that the data flow should not be transmitted with the band allocated to the bandwidth control queue units 61-63 and the priority control queue unit 64 when a jam occurs in the data flow of the lower priority control queue unit 65.
Also, in the present invention, when there are a plurality of bandwidth control queue units, the controller may control each of the bandwidth control queue units independent of each other.
Namely, when there are provided a plurality of bandwidth control queue units 61-63 as illustrated in FIG. 1A, the data flow of e.g. the bandwidth control queue unit 63 where a jam has occurred among the portions 61-63 is not transmitted with the bandwidth allocated to the other bandwidth control queue units 61 and 62 where a jam does not occur.
According to the present invention of, it is possible to prevent a transmission fault which has occurred in a specific data flow from spreading to other data flows.
Also, in the present invention, when there is a blank in the transmission line bandwidth, the controller may extend a setting bandwidth of the bandwidth control queue unit so as to fill a blank bandwidth.
Namely, it is possible to extend the present bandwidth of the bandwidth control queue unit by using a bandwidth which the bandwidth control queue unit and the priority control queue unit do not use at the moment.
Thus, it becomes possible to efficiently use a blank bandwidth of a LAN transmission line which occurs due to the variation of data lengths, data arrival intervals, and the like in a data flow.
Also, in the present invention, when there is a blank of the bandwidth in the bandwidth control queue unit, a bandwidth of the priority control queue unit may be extended.
Also, in the present invention, the controller may identify a data flow of the bandwidth control queue unit by an MAC address.
Also, in the present invention, the controller may identify a data flow of the bandwidth control queue unit by at least one of a VP or a VC at an ATM.
Also, in the present invention, the controller may identify a data flow of each of the bandwidth control queue units by a protocol classification in IEEE802.3.
Also, in the present invention, the controller may identify a data flow of the bandwidth control queue unit by an IP address in IPv4.
Also, in the present invention, the controller may identify a data flow of the bandwidth control queue unit by an IP address in IPv4 and a port number of either a TCP or a UDP.
Also, in the present invention, the controller may identify a data flow of the bandwidth control queue unit by an IP address in IPv6.
Also, in the present invention, the controller may identify a data flow of each of the bandwidth control queue units by a flow label in IPv6.
Namely, in the present invention, the controller can identify the data flow based on the MAC address, the VP and the VC, the protocol classification, the IP address in the Ipv4, the port number of either the TCP or the UDP, the IP address in the Ipv6, and the flow label in the Ipv6, respectively included in the data flow.