Abstract:
A network switch apparatus which receives data at physical input ports and outputs the data from a plurality of link-aggregated physical output ports includes a distribution processing unit configured to receive data input at one of the physical input ports and to assign the input data to one of the physical output ports for outputting therefrom such that the one of the physical output ports is determined according to part of the input data, and a queue utilization monitoring unit configured to monitor a utilization rate of a queue provided separately for each of the physical output ports and to send an alarm to the distribution processing unit in response to the utilization rate of the queue exceeding a predetermined threshold, wherein the distribution processing unit is configured to assign the input data to the one of the physical output ports for which the alarm is not reported.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     The present invention generally relates to network switch apparatuses, and particularly relates to a network switch apparatus which receives data input at physical ports and assigns the data to a plurality of physical ports for outputting which are link-aggregated.  
         [0003]     2. Description of the Related Art  
         [0004]     Link aggregation defined in IEEE802.3ad is designed for use as a technology that increases physical bandwidth. In carrier networks, link aggregation is often used as redundancy technology.  
         [0005]     Link aggregation serves to group physical links  3 ,  4 ,  5  into a single logical link  6  between network switch apparatuses  1  and  2  as shown in  FIG. 1 .  
         [0006]     When data needs to be output from a link-aggregated trunk (i.e., logical port into which physical ports are aggregated), Hash computation is performed on the side where physical data-input ports are situated. Then, the physical ports of the trunk are selected such that data of the same flow (having the same destination address and the same source address) are output from the same physical port.  
         [0007]     Patent Document 1 discloses putting up a flag to request an action by an available channel when it becomes impossible to process traffic in some of the plurality of channels.  
         [0008]     Patent Document 2 discloses using the bandwidth of a detour channel when the bandwidth of the link-aggregated channel becomes insufficient.  
         [0009]     [Patent Document 1] Japanese Patent Application Publication No. 57-41055  
         [0010]     [Patent Document 2] Japanese Patent Application Publication No. 2003-244200  
         [0011]     Related-art network switches select physical ports such that data of the same flow is output from the same physical port of the trunk. If the Hash computation produces a large number of data flows for which a particular physical port is selected as an output port among the plurality of physical ports of the trunk, there is a risk of causing congestion at this particular physical port despite the fact that the other physical ports in the trunk are available.  
         [0012]     A priority control service may be provided by use of three classes comprised of the highest priority, a high priority, and a low priority, for example. In such a case, data of the same flow having the highest priority are assigned to a particular physical port that is selected by Hash computation to serve as an output port among the plurality of physical ports of the trunk. Despite the fact that a storage area for data of the highest priority is available in the other physical ports of the trunk, the data having the highest priority may suffer congestion at the particular physical port.  
         [0013]     Accordingly, there is a need for a network switch apparatus that can reduce congestion at a particular physical port in a trunk.  
       SUMMARY OF THE INVENTION  
       [0014]     It is a general object of the present invention to provide a network switch apparatus that substantially obviates one or more problems caused by the limitations and disadvantages of the related art.  
         [0015]     Features and advantages of the present invention will be presented in the description which follows, and in part will become apparent from the description and the accompanying drawings, or may be learned by practice of the invention according to the teachings provided in the description. Objects as well as other features and advantages of the present invention will be realized and attained by a network switch apparatus particularly pointed out in the specification in such full, clear, concise, and exact terms as to enable a person having ordinary skill in the art to practice the invention.  
         [0016]     To achieve these and other advantages in accordance with the purpose of the invention, the invention provides a network switch apparatus which receives data at physical input ports and outputs the data from a plurality of link-aggregated physical output ports, said network switch apparatus including a distribution processing unit configured to receive data input at one of the physical input ports and to assign the input data to one of the physical output ports for outputting therefrom such that said one of the physical output ports is determined according to part of the input data, and a queue utilization monitoring unit configured to monitor a utilization rate of a queue provided separately for each of the physical output ports and to send an alarm to said distribution processing unit in response to the utilization rate of the queue exceeding a predetermined threshold, wherein said distribution processing unit is configured to assign the input data to the one of the physical output ports for which said alarm is not reported.  
         [0017]     According to another aspect of the present invention, a network switch apparatus which receives data at physical input ports and outputs the data from a plurality of link-aggregated physical output ports includes a distribution processing unit configured to receive data input at one of the physical input ports and to assign the input data to one of the physical output ports for outputting therefrom such that said one of the physical output ports is determined according to part of the input data, and an output signal rate computing unit configured to compute an output signal rate of said one of the physical output ports and to notify said distribution processing unit of the computed output signal rate, wherein said distribution processing unit is configured to assign the input data to the one of the physical output ports for which said computed output signal rate is less than a predetermined proportion of a maximum output signal rate of said one of the physical output ports.  
         [0018]     According to another aspect of the present invention, a network switch apparatus which receives data at physical input ports and outputs the data from a plurality of link-aggregated physical output ports includes a distribution processing unit configured to receive data input at one of the physical input ports and to assign the input data to one of the physical output ports for outputting therefrom such that said one of the physical output ports is determined according to part of the input data, a queue utilization monitoring unit configured to monitor a utilization rate of a queue provided separately for each of the physical output ports, and a queue utilization comparing unit configured to compare, between the physical output ports, the utilization rate of the queue reported from said queue utilization monitoring unit, and to notify said distribution processing unit of a physical output port having a lowest utilization rate, wherein said distribution processing unit is configured to assign the input data to the one of the physical output ports that is the physical output port having the lowest utilization rate.  
         [0019]     According to at least one embodiment of the present invention, congestion is reduced at a particular physical port in the trunk. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0020]     Other objects and further features of the present invention will be apparent from the following detailed description when read in conjunction with the accompanying drawings, in which:  
         [0021]      FIG. 1  is an illustrative drawing for explaining link aggregation;  
         [0022]      FIG. 2  is a drawing showing the configuration of an embodiment of a wide-area network system to which the present invention is applied;  
         [0023]      FIG. 3  is a block diagram showing a first embodiment of a network switch apparatus;  
         [0024]      FIG. 4  is a drawing showing a VLAN tag header format;  
         [0025]      FIG. 5  is a flowchart showing a first embodiment of the distribution process performed by a distribution processing unit;  
         [0026]      FIG. 6  is a flowchart showing a second embodiment of the distribution process performed by the distribution processing unit;  
         [0027]      FIG. 7  is a block diagram showing a third embodiment of the network switch apparatus;  
         [0028]      FIG. 8  is a flowchart showing a third embodiment of the distribution process performed by the distribution processing unit;  
         [0029]      FIG. 9  is a block diagram showing a fourth embodiment of the network switch apparatus; and  
         [0030]      FIG. 10  is a flowchart showing a fourth embodiment of the distribution process performed by the distribution processing unit.  
     
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0031]     In the following, embodiments of the present invention will be described with reference to the accompanying drawings.  
         [0032]      FIG. 2  is a drawing showing the configuration of an embodiment of a wide-area network system to which the present invention is applied. In  FIG. 2 , a carrier network  10  is formed via a mesh topology or tree topology by network switch apparatuses  11 ,  12 , and  13  serving as Layer- 2  switches, for example. Each of the network switch apparatuses  11  and  13  of the carrier network  10  are connected to end users  15  and  16 , respectively.  
         [0033]     This configuration can provide a service that transfers Layer- 2  MAC frames of a subscriber LAN or the like from the end user  15  to another end user  16  via the network switch apparatuses  11 ,  12 , and  13 .  
         [0034]     If Layer- 3  switches are used in place of the Layer- 2  switches, the IP (Internet Protocol) protocol may be used to provide a similar service.  
         [0035]     The network switch apparatuses  11 ,  12 , and  13  are link-aggregated in order to increase the physical bandwidth. Another purpose is to secure a detour route for data when a failure occurs along a transmission path in the network.  
       First Embodiment  
       [0036]      FIG. 3  is a block diagram showing a first embodiment of a network switch apparatus. In  FIG. 3 , a physical port  21  receives frames from an end user or another network switch apparatus. The physical port  21  supplies the received frames to a distribution processing unit  22 . If the frames are supplied from the end user, the physical port  21  generates and attaches a VLAN tag (i.e., Virtual Local Area Network tag).  FIG. 3  illustrates only the physical port  21  as an input port. In actuality, however, a plurality of physical ports are provided as input ports.  
         [0037]     The distribution processing unit  22  selects output ports by performing Hash computation on the input frames. The distribution processing unit  22  attaches to the frames a switching tag for indicating an output port, and supplies the frames to a switch unit  23 .  
         [0038]     As a method for performing the Hash computation, a first method performs Hash computation with respect to a destination IP address and source IP address in the data area as well as DA-MAC (MAC destination address) and SA-MAC (MAC source address) in the VLAN tag header format defined in IEEE802.1Q as shown in  FIG. 4 . A second method performs Hash computation with respect to VID (VLAN-ID: ID of a source-side end user) of the VLAN tag header.  
         [0039]     According the VLAN tag header format shown in  FIG. 4 , a 3-bit user priority, a 1-bit CFI (Canonical Format Indicator), and a 12-bit VID are provided in the TCI (Tag Control Information) of the VLAN tag. The user priority assumes values 6 and 7 to indicate the highest priority class, values 4 and 5 to indicate a high priority class, and values 0 through 3 to indicate a low priority class. Further, the values 6, 4, 2, and 0 indicate no preferential disposal, and the values 7, 5, 3, and 1 indicate preferential disposal.  
         [0040]     When link aggregation configuration is implemented, a plurality of output ports are assigned with respect to the results of the Hash computation described above. In  FIG. 3 , two physical ports  26   1  and  26   2  are link-aggregated with respect to the results of predetermined Hash computation. In  FIG. 3 , only the physical ports  26   1  and  26   2  are illustrated as output ports. In reality, three or more physical ports are provided as output ports.  
         [0041]     The switch unit  23  performs switching of frames by referring to the switching tags, and supplies the frames to queues provided separately for each of the physical output ports. The queues are provided in one-to-one correspondence to the plurality of priority classes. The frames supplied to the physical ports  26   1  and  26   2  by the switch unit  23  are queued in the queues  24   1a  through  24   1c  and queues  24   2a  through  24   2c  before being supplied to the physical ports  26   1  and  26   2 .  
         [0042]     The queues  24   1a  through  24   2a  serve to store frames having the highest priority class (e.g., audio data or the like). The queues  24   1b  through  24   2b  serve to store frames having the high priority class (e.g., business-purpose data or the like). The queues  24   1c  through  24   2c  serve to store frame having the low priority class (e.g., personal data or the like).  
         [0043]     The frames queued in the queues  24   1a  through  24   1c  are output from the physical port  26   1  in the descending order of priority classes (i.e., in the following order:  24   1a ,  24   1b ,  24   1c ). The same applies in the case of the other physical ports serving as output ports. When the frames are output from the physical ports, the switching tags attached to the frames by the distribution processing unit  22  are detached in one case, and are kept attached in another case for switching by switches at the subsequent stages.  
         [0044]     The queues provided separately for each physical port are provided with a queue utilization monitoring unit. Queue utilization monitoring units  25   1  and  25   2  monitor the utilization rates of the queues  24   1a  through  24   1c  and the queues  24   2a  through  24   2c , respectively. If the utilization rate of any priority class exceeds a first threshold such as approximately 80%, a remaining quantity alarm is issued, and is reported with an indication of priority class to the distribution processing unit  22 .  
         [0045]      FIG. 5  is a flowchart showing a first embodiment of the distribution process performed by the distribution processing unit  22 . This process is carried out each time a frame is input.  
         [0046]     In  FIG. 5 , at step S 11 , Hash computation of the input frame is performed to derive an output port candidate. If link aggregation is put in place, n output ports are assigned to the result of the Hash computation. If one trunk is comprised of two physical ports, for example, n physical ports (n=2) are assigned as output ports. That is, “n” indicates the number of physical ports that are link-aggregated.  
         [0047]     Here, sequence numbers  1  and  2  are assigned as the identifiers of the two physical ports that are link-aggregated. In this example, it is assumed that the Hash computation results in the physical port having sequence number  2  being selected as an output port candidate.  
         [0048]     The distribution processing unit  22  sets a variable i to the initial value that is the sequence number of the physical port selected as the output port candidate by the Hash computation. In this example, i=2 because sequence number  2  corresponds to the output port candidate.  
         [0049]     At step S 12 , a check is made as to whether a remaining quantity alarm for the queue of the priority class corresponding to the user priority indicated in the VLAN tag header of the input frame has been received from the queue utilization monitoring unit corresponding to the i-th physical port. If the remaining quantity alarm has been received, the variable i is incremented (i=i+1) at step S 13 . If i becomes larger than n as a result of the incrementing, i is set to 1.  
         [0050]     In this example, i becomes 3 as a result of the incrementing, which satisfies i&gt;n, so that i is set to 1.  
         [0051]     At step S 14 , a check is made as to whether a remaining quantity alarm for the queue of the priority class corresponding to the user priority indicated in the VLAN tag header of the input frame has been received from all the 1st to n-th physical ports. If a remaining quantity alarm has been received from all the 1st to n-th physical ports (i.e., from all the queue utilization monitoring units), the procedure proceeds to step S 15 . Otherwise, the procedure proceeds to step S 12 . Instead of proceeding to step S 15  in the event that a remaining quantity alarm has been received from all the 1st to n-th physical ports, provision may be made to dispose of the frame if the value of the user priority of the frame indicates preferential disposal.  
         [0052]     If it is ascertained at step S 12  that a remaining quantity alarm for the queue of the priority class corresponding to the user priority indicated in the VLAN tag header of the input frame has not been received, the procedure proceeds to step S 15 . At step S 15 , the i-th physical port is selected as an output port. A switching tab for indicating the output port is attached to the frame, which is then supplied to the switch unit  23 .  
         [0053]     This provision can reduce congestion at a particular physical port in the trunk. In the embodiment described above, a description has been given of a case in which the queues provided for a physical output port are provided in one-to-one correspondence to the priority classes. Nonetheless, it should be noted that the number of priority classes may be one.  
       Second Embodiment  
       [0054]     The block diagram of the network switch apparatus according to the second embodiment is the same as  FIG. 3 . The queue utilization monitoring units  25 , and  252  shown in  FIG. 3  monitor the utilization rates of the queues  24   1a  through  24   1c  and the queues  24   2a  through  24   2c , respectively. If the utilization rate of a queue of any priority class exceeds a second threshold that is larger than the first threshold, a back pressure is issued, and is reported with an indication of the priority class to the distribution processing unit  22 . The function to generate a back pressure is one of the conventional functions provided in the queue utilization monitoring units. Upon being informed of a back pressure, the distribution processing unit  22  disposes of the input frame.  
         [0055]      FIG. 6  is a flowchart showing a second embodiment of the distribution process performed by the distribution processing unit  22 . This process is carried out each time a frame is input.  
         [0056]     In  FIG. 6 , at step S 21 , Hash computation of the input frame is performed to derive an output port candidate. If link aggregation is put in place, n output ports are assigned to the result of the Hash computation. If one trunk is comprised of two physical ports, for example, n physical ports (n=2) are assigned as output ports.  
         [0057]     The distribution processing unit  22  sets a variable i to the initial value that is the sequence number of the physical port selected as the output port candidate by the Hash computation.  
         [0058]     At step S 22 , a check is made as to whether a back pressure notice for the queue of the priority class corresponding to the user priority indicated in the VLAN tag header of the input frame has been received from the queue utilization monitoring unit corresponding to the i-th physical port. If the back pressure notice has been received, the variable i is incremented (i=i+1) at step S 23 . If i becomes larger than n as a result of the incrementing, i is set to 1.  
         [0059]     At step S 24 , a check is made as to whether a back pressure notice for the queue of the priority class corresponding to the user priority indicated in the VLAN tag header of the input frame has been received from all the 1st to n-th physical ports. If a back pressure notice has been received from all the 1st to n-th physical ports (i.e., from all the queue utilization monitoring units), the procedure proceeds to step S 25 . Otherwise, the procedure proceeds to step S 22 . Instead of proceeding to step S 25  in the event that a back pressure notice has been received from all the 1st to n-th physical ports, provision may be made to dispose of the frame if the value of the user priority of the frame indicates preferential disposal.  
         [0060]     If it is ascertained at step S 22  that a back pressure notice for the queue of the priority class corresponding to the user priority indicated in the VLAN tag header of the input frame has not been received, the procedure proceeds to step S 25 . At step S 25 , the i-th physical port is selected as an output port. A switching tab for indicating the output port is attached to the frame, which is then supplied to the switch unit  23 .  
         [0061]     This provision can reduce congestion at a particular physical port in the trunk.  
       Third Embodiment  
       [0062]      FIG. 7  is a block diagram showing a third embodiment of the network switch apparatus. In FIG.  7 , the same elements as those of  FIG. 3  are referred to by the same numerals.  
         [0063]     In  FIG. 7 , the physical port  21  receives frames from an end user or another network switch apparatus. The physical port  21  supplies the received frames to the distribution processing unit  22 . If the frames are supplied from the end user, the physical port  21  generates and attaches a VLAN tag.  FIG. 7  illustrates only the physical port  21  as an input port. In actuality, however, a plurality of physical ports are provided as input ports.  
         [0064]     The distribution processing unit  22  selects output ports by performing Hash computation on the input frames. The distribution processing unit  22  attaches to the frames a switching tag for indicating an output port, and supplies the frames to the switch unit  23 . Further, the distribution processing unit  22  notifies an outlet-side bandwidth monitoring unit (output signal rate computing unit)  30  of the user priority, frame length, and selected output port of the input frames.  
         [0065]     As a method for performing the Hash computation, a first method performs Hash computation with respect to a destination IP address and source IP address in the data area as well as DA-MAC and SA-MAC in the VLAN tag header format defined in IEEE802.1Q as shown in  FIG. 4 . A second method performs Hash computation with respect to VID of the VLAN tag header.  
         [0066]     According the VLAN tag header format shown in  FIG. 4 , a 3-bit user priority, a 1-bit CFI, and a 12-bit VID are provided in the TCI of the VLAN tag. The user priority assumes values 6 and 7 to indicate the highest priority class, values 4 and 5 to indicate a high priority class, and values 0 through 3 to indicate a low priority class. Further, the values 6, 4, 2, and 0 indicate no preferential disposal, and the values 7, 5, 3, and 1 indicate preferential disposal.  
         [0067]     When link aggregation configuration is implemented, a plurality of output ports are assigned with respect to the results of the. Hash computation described above. In  FIG. 7 , the two physical ports  26   1  and  26   2  are link-aggregated with respect to the results of predetermined Hash computation. In  FIG. 7 , only the physical ports  26   1  and  26   2  are illustrated as output ports. In reality, three or more physical ports are provided as output ports.  
         [0068]     The outlet-side bandwidth monitoring unit  30  computes an output signal rate separately for each output port based on the information about the user priority, frame length, and selected output port of the input frames reported from the distribution processing unit  22 . The computed output signal rate is reported to the distribution processing unit  22 .  
         [0069]     The switch unit  23  performs switching of frames by referring to the switching tags, and supplies the frames to queues provided separately for each of the physical output ports. The queues are provided in one-to-one correspondence to the plurality of priority classes. The frames supplied to the physical ports  26   1  and  26   2  by the switch unit  23  are queued in the queues  24   1a  through  24   1c  and queues  24   2a  through  24   2c  before being supplied to the physical ports  26   1  and  26   2 .  
         [0070]     The queues  24   1a  through  24   2a  serve to store frames having the highest priority class (e.g., audio data or the like). The queues  24   1b  through  24   2b  serve to store frames having the high priority class (e.g., business-purpose data or the like). The queues  24   1c  through  24   2c  serve to store frames having the low priority class (e.g., personal data or the like).  
         [0071]     The frames queued in the queues  24   1a  through  24   1c  are output from the physical port  26   1  in the descending order of priority classes (i.e., in the following order:  24   1a ,  24   1b ,  24   1c ). The same applies in the case of the other physical ports serving as output ports. When the frames are output from the physical ports, the switching tags attached to the frames by the distribution processing unit  22  are detached in one case, and are kept attached in another case for switching by switches at the subsequent stages.  
         [0072]     The queues provided separately for each physical port are provided with a queue utilization monitoring unit. The queue utilization monitoring units  25   1  and  25   2  monitor the utilization rates of the queues  24   1a  through  24   1c  and the queues  24   2a  through  24   2c , respectively. If the utilization rate of any priority class exceeds the second threshold, a back pressure is generated, and is reported with an indication of the priority class to the distribution processing unit  22 .  
         [0073]      FIG. 8  is a flowchart showing a third embodiment of the distribution process performed by the distribution processing unit  22 . This process is carried out each time a frame is input.  
         [0074]     In  FIG. 8 , at step S 31 , Hash computation of the input frame is performed to derive an output port candidate. If link aggregation is put in place, n output ports are assigned to the result of the Hash computation. If one trunk is comprised of two physical ports, for example, n physical ports (n=2) are assigned as output ports. The distribution processing unit  22  sets a variable i to the initial value that is the sequence number of the physical port selected as the output port candidate by the Hash computation.  
         [0075]     At step S 32 , a check is made as to whether an output signal rate computed by the outlet-side bandwidth monitoring unit  30  with respect to the i-th physical port exceeds a predetermined proportion (e.g., 80%) of the maximum output signal rate of that physical port. If the computed output signal rate exceeds the predetermined proportion, the variable i is incremented (i=i+1) at step S 33 . If i becomes larger than n as a result of the incrementing, i is set to 1.  
         [0076]     At step S 34 , a check is made as to whether an output signal rate computed with respect to every single one of the 1 st  to i-th physical ports exceeds the predetermined proportion of the maximum output signal rate. If the output signal rate exceeds the predetermined proportion with respect to every single one of the 1 st  to i-th physical ports, the procedure proceeds to step S 35 . Otherwise, the procedure proceeds to step S 32 . Instead of proceeding to step S 35  in the event that the output signal rate exceeds the predetermined proportion with respect to every single one of the 1 st  to i-th physical ports, provision may be made to dispose of the frame if the value of the user priority of the frame indicates preferential disposal.  
         [0077]     If it is ascertained at step  32  that the computed output signal rate does not exceed the predetermined proportion of the maximum output signal rate of the relevant physical port, the procedure proceeds to step S 35 . At step S 35 , the i-th physical port is selected as an output port. A switching tab for indicating the output port is attached to the frame, which is then supplied to the switch unit  23 .  
         [0078]     This provision can reduce congestion at a particular physical port in the trunk. In the embodiment described above, a description has been given of a case in which the queues provided for a physical output port are provided in one-to-one correspondence to the priority classes. Nonetheless, it should be noted that the number of priority classes may be one.  
       Fourth Embodiment  
       [0079]      FIG. 9  is a block diagram showing a fourth embodiment of the network switch apparatus. In  FIG. 9 , the same elements as those of  FIG. 3  are referred to by the same numerals.  
         [0080]     In  FIG. 9 , the physical port  21  receives frames from an end user or another network switch apparatus. The physical port  21  supplies the received frames to the distribution processing unit  22 . If the frames are supplied from the end user, the physical port  21  generates and attaches a VLAN tag.  FIG. 9  illustrates only the physical port  21  as an input port. In actuality, however, a plurality of physical ports are provided as input ports.  
         [0081]     The distribution processing unit  22  selects output ports by performing Hash computation on the input frames. The distribution processing unit  22  attaches to the frames a switching tag for indicating an output port, and supplies the frames to the switch unit  23 .  
         [0082]     As a method for performing the Hash computation, a first method performs Hash computation with respect to a destination IP address and source IP address in the data area as well as DA-MAC and SA-MAC in the VLAN tag header format defined in IEEE802.1Q as shown in  FIG. 4 . A second method performs Hash computation with respect to VID of the VLAN tag header.  
         [0083]     According the VLAN tag header format shown in  FIG. 4 , a 3-bit user priority, a 1-bit CFI, and a 12-bit VID are provided in the TCI of the VLAN tag. The user priority assumes values 6 and 7 to indicate the highest priority class, values 4 and 5 to indicate a high priority class, and values 0 through 3 to indicate a low priority class. Further, the values 6, 4, 2, and 0 indicate no preferential disposal, and the values 7, 5, 3, and 1 indicate preferential disposal.  
         [0084]     When link aggregation configuration is implemented, a plurality of output ports are assigned with respect to the results of the Hash computation described above. In  FIG. 9 , the two physical ports  26   1  and  26   2  are link-aggregated with respect to the results of predetermined Hash computation. In  FIG. 9 , only the physical ports  26   1  and  26   2  are illustrated as output ports. In reality, three or more physical ports are provided as output ports.  
         [0085]     The switch unit  23  performs switching of frames by referring to the switching tags, and supplies the frames to queues provided separately for each of the physical output ports. The queues are provided in one-to-one correspondence to the plurality of priority classes. The frames supplied to the physical ports  26   1  and  26   2  by the switch unit  23  are queued in the queues  24   1a  through  24   1c  and queues  24   2a  through  24   2c  before being supplied to the physical ports  26   1  and  26   2 .  
         [0086]     The queues  24   1a  through  24   2a  serve to store frames having the highest priority class (e.g., audio data or the like) The queues  24   1b  through  24   2b  serve to store frames having the high priority class (e.g., business-purpose data or the like). The queues  24   1c  through  24   2c  serve to store frames having the low priority class (e.g., personal data or the like).  
         [0087]     The frames queued in the queues  24   1a  through  241 , are output from the physical port  26   1  in the descending order of priority classes (i.e., in the following order:  24   1a ,  24   1b ,  24   1c ). The same applies in the case of the other physical ports serving as output ports. When the frames are output from the physical ports, the switching tags attached to the frames by the distribution processing unit  22  are detached in one case, and are kept attached in another case for switching by switches at the subsequent stages.  
         [0088]     The queues provided separately for each physical port are provided with a queue utilization monitoring unit. The queue utilization monitoring units  25   1  and  25   2  monitor the utilization rates of the queues  24   1a  through  24   1c  and the queues  24   2a  through  24   2c , respectively. If the utilization rate of any priority class exceeds the second threshold, a back pressure is generated, and is reported with an indication of the priority class to the distribution processing unit  22 . Further, the utilization rate of each queue is supplied to a queue utilization comparing unit  32 .  
         [0089]     The queue utilization comparing unit  32  compares, on a priority-class-by-priority-class basis, the queue utilization rates between the plurality of output ports assigned to the results of the Hash computation through link aggregation. The queue utilization comparing unit  32  notifies the distribution processing unit  22  of the output port having the lowest utilization rate with respect to each priority class. If the utilization rates of the queues  24   1a  through  24   2a  are 40% and 50%, respectively, for example, the queue utilization comparing unit  32  notifies the distribution processing unit  22  that the queue  24   1a  is the lowest output port.  
         [0090]      FIG. 10  is a flowchart showing a fourth embodiment of the distribution process performed by the distribution processing unit  22 . This process is carried out each time a frame is input.  
         [0091]     In  FIG. 10 , at step S 41 , Hash computation of the input frame is performed to derive an output port candidate. If link aggregation is put in place, n output ports are assigned to the result of the Hash computation. If one trunk is comprised of two physical ports, for example, n physical ports (n=2) are assigned as output ports.  
         [0092]     At step S 42 , an output port candidate is determined by selecting the physical port reported from the queue utilization comparing unit  32  as having the lowest utilization rate among the n physical ports assigned as output ports. At step S 43 , a check is made as to whether a back pressure notice for the queue of the priority class corresponding to the user priority indicated in the VLAN tag header of the input frame has been received from the queue utilization monitoring unit corresponding to the candidate physical port.  
         [0093]     If the back pressure notice has been received, the input frame is disposed of at step S 44 . If the back pressure notice has not been received, the candidate physical port is selected conclusively as an output port. A switching tag for indicating the selected output port is attached to the frame, which is then supplied to the switch unit  23 .  
         [0094]     This provision can reduce congestion at a particular physical port in the trunk. In the embodiment described above, a description has been given of a case in which the queues provided for a physical output port are provided in one-to-one correspondence to the priority classes. Nonetheless, it should be noted that the number of priority classes may be one.  
         [0095]     Further, the present invention is not limited to these embodiments, but various variations and modifications may be made without departing from the scope of the present invention.  
         [0096]     The present application is based on Japanese priority application No. 2005-236934 filed on Aug. 17, 2005, with the Japanese Patent Office, the entire contents of which are hereby incorporated by reference.