DESCRIPTION NETWORK RELAY SERVICE USING SOURCE ADDRESS-BASED PRIORITY CONTROL
Field of the Invention The present invention relates to a network relay device such as an Ethernet (Registered Trademark) switch, a switching hub, and the like, and more specifically, it relates to a data priority control technique of a communication terminal connected to a network.
Background Information Fig. 17 is a diagram showing a configuration of a related switching hub. As shown in Fig. 17, in a priority control in a related data communication, a switching hub 1201 first acquires information regarding an IP Precedence (priority control) value of a terminal device 1203 and a target MAC (Media Access Control) address from a router 1202. Then, the switching hub 1201 registers acquired information in a bridge table 1204 thereof and transfers data to the terminal device 1203 according to a priority indicated by the IP Precedence value (for example, see JP2000-354057A) . Further, the priority control may be realized by using a port to which the terminal device 1203 is connected, a virtual LAN (hereinafter, referred to as 'VLAN') tag of an
Ethernet (Registered Trademark) frame, or the like, instead of the target MAC address. In the case of the related method, a network address or a priority of a terminal device to be connected needs to be sequentially registered in a network device such as a router or a switching hub. Further, there is a problem in that only a person, e.g. a network administrator, who has a good •knowledge of the LAN can set the priority control. When the priority control is performed with the connection port, a communication terminal which performs the priority control cannot be moved. In addition, when the priority control is performed with the VLAN tag, the tags for both of the network apparatus and the communication terminal need to be set. Accordingly, the knowledge of the LAN is required.
Summary of the Invention An object of the present invention is to automatically recognize a communication terminal which performs a priority control by previously registering a network address of a communication terminal, to which data is transmitted with a priority, in a network relay device, and to perform data transmission. According to the present invention, it has an advantage that the priority is easily added by means of the judgment
with an address storing section, in which a priority is correlated with a network address and a type of a network product, by using the fact that the network address is managed by a manufacturer of the communication terminal. Further, when a user of the communication terminal uses the communication terminal which is previously registered in the network relay device, a priority communication terminal can be simply provided without setting the network relay device and the communication terminal.
Brief Description of the Drawings . Fig. 1 is a block diagram of an Ethernet (Registered Trademark) switch according to a first embodiment of the present invention. Fig. 2 is a diagram showing a format of an Ethernet (Registered Trademark) frame. Fig. 3 is a diagram showing a format of a MAC address. Fig. 4 is a diagram showing an example of a hardware configuration of the first embodiment. Fig. 5 is a block diagram showing the details of an output data processing section according to the first embodiment of the present invention. Fig. 6 is a diagram showing an example of source MAC address information. Fig. 7 is a flowchart for setting a priority of a MAC
address of a source communication terminal. Fig. 8 is a block diagram showing the details of an output data processing section according to a second embodiment of the present invention. Fig. 9 is a diagram showing a format of a header of an IPv6 packet. Fig. 10 is a diagram showing a format of a source IPv6 address . Fig. 11 is a diagram showing an example of source IPv6 address information. Fig. 12 is a flowchart for setting a priority of an IPv6 address of a source communication terminal. Fig. 13 is a block diagram of an Ethernet (Registered Trademark) switch according to a third embodiment of the present invention. Fig. 14 is a block diagram of a network address receiving section according to the third embodiment of the present invention. Fig. 15 is a flowchart for registering a MAC address according to the third embodiment of the present invention. Fig. 16 is a flowchart for registering an IPv6 address according to a fourth embodiment of the present invention. Fig. 17 is a diagram showing a configuration of a related switching hub.
Best Mode for Carrying Out the Invention Hereinafter, embodiments of the present invention will be described with reference to the drawings. (First Embodiment) Fig. 1 is a block diagram of an Ethernet (Registered Trademark) switch according to a first embodiment of the present invention. In the present embodiment, for example, an Ethernet (Registered Trademark) switch will be described as a representative for the network relay device. In Fig. 1, the Ethernet (Registered Trademark) switch 101 receives data (in the present embodiment, an Ethernet (Registered Trademark) frame) transmitted from a communication terminal 102, by a reception MAC section 103 and recognizes the Ethernet (Registered Trademark) frame. If the Ethernet (Registered Trademark) frame is correct data, the Ethernet (Registered Trademark) switch 101 decodes the Ethernet (Registered Trademark) frame by an input data processing section 104 and searches a target MAC address. The target MAC address is stored in a switching address storing section 105. When the Ethernet (Registered Trademark) switch 101 acquires a target MAC address of the Ethernet (Registered Trademark) frame from the switching address storing section 105, a switching is performed by a switch fabric section 106 for the connection to a port of a destination. The Ethernet
(Registered Trademark) frame that is connected to the destination by the switching is transmitted to a target communication terminal 109 after a transmission priority control of the Ethernet (Registered Trademark) frame is performed by an output data processing section 107 and the Ethernet (Registered Trademark) frame is constructed by a transmission MAC section 108. At that time, a prioritization is performed according to an address and priority information stored in a source MAC address storing section 110 described later. Fig. 2 shows the format of the Ethernet (Registered Trademark) frame that is communicated among the source communication terminal 102, the target communication terminal 109, and the Ethernet (Registered Trademark) switch 101. A preamble is a field of a 7-byte (56-bit) length and is to synchronize with the Ethernet (Registered Trademark) frame received by the Ethernet (Registered Trademark) switch 101 or the target communication terminal 109 from the source communication terminal 102. An SFD is a field of a 1-byte (8-bit) length and indicates the start of the Ethernet (Registered Trademark) frame. The target MAC address is a field of a 6-byte (48-bit) length and, in the present embodiment, indicates the unique address of the target communication terminal 109. The source MAC address is a field of a 6-byte (48-bit) length and, in the present
embodiment, indicates the unique address of the source communication terminal 102. A type is a field of a 2-byte (16-bit) length and is an identification number for identifying a protocol of a high-order network layer of the Ethernet (Registered Trademark) . Data is a variable length field ranging from 46 bytes (368 bits) to 1500 bytes (12000 bits) and indicates data that the Ethernet (Registered Trademark) carries. An FCS is a field of a 4-byte (32-bit) length and is formed with a field for performing an error check of data. With the above-described Ethernet (Registered Trademark) frame, the source communication terminal 102, the target communication terminal 109, and the Ethernet (Registered Trademark) switch 101 communicate with one another. Fig. 3 shows the format of the MAC address. The MAC address is a field of a 6-byte (48-bit) length and high- order 3 bytes (24 bits) thereof are managed and allocated as a vendor ID uniquely for each network apparatus manufacturer by IEEE. Therefore, the network apparatus manufacturer can be easily searched from the vendor ID. Further, low-order 3 bytes (24 bits) represent a serial ID that the network apparatus manufacturer individually allocates and the manufacturer can easily see the product group from the serial ID. "00-80-FO" is one example of the vendor ID. Accordingly, each network apparatus can have a unique MAC
address which is the only one in the whole world. Fig. 4 shows an example of a hardware configuration. An Ethernet (Registered Trademark) switch controller chip 301 is an LSI (Large Scale Integration) circuit which is one of essential parts of the present invention. The Ethernet Switch Controller Chip 301is designed as ASIC (Application Specific Integrated Circuit) by implementing the function of RTL2326 available from Realtek and a priority discriminating section of the present invention. As physical connectors that are connected to the network, RJ-45 connectors 302-1 to 302-n are used. A signal from any one of the RJ-45 connectors 302-1 to 302-n is inputted to a corresponding one of pulse transformers 303-1 to 303-n. Here, an outside and an inside of each of the pulse transformers 303-1 to 303-n are electrically isolated. As the pulse transformer, H1164 available from Pulse may be used. A signal outputted from one of the pulse transformers 303-1 to 303-n is inputted to a corresponding one of PHY (Physical) chips 304-1 to 304-n. Each of the PHY chips 304- 1 to 304-n converts an input signal, which is attenuated when passing through a cable and is distorted due to the influence of a noise from an exterior, into a signal string of digital signals "0" and "1" which is used within the relay device 101. A digitalized signal in such a manner is
outputted to one of the Ethernet switch controller chips 301, such that a relay process is performed. As the PHY chip, RTL8208 available from Realtek may be used. The Ethernet switch controller chip 301 has MAC chips 305-1 to 305-n, a frame buffer 304, and an address table 305. Each of the MAC chips 305-1 to 305-n performs a process of the division of the signal string of "0" and "1" inputted from the corresponding one of the PHY (Physical) chips 305-1 to 305-n into the Ethernet (Registered Trademark) frames communicated on the network and performs a process of the division into frame formats described later. Further, the error check on whether or not the frame is .correctly received is performed. Data of the divided Ethernet (Registered Trademark) frame is stored in the frame buffer 304. Further, the source MAC address of the Ethernet (Registered Trademark) frame and each of data source AC addresses of the previously received Ethernet (Registered Trademark) frames which are stored in the address table 305 are compared with each other to check whether or not they matches with each other. If there is no match, an identifier for indicating one RJ-45 connector among the RJ-45 connectors 302-1 to 302- n and the data source MAC address are stored in the address table 305 in pairs. Next, each of the MAC chips 305-1 to 305-n reads the
data target MAC address from the Ethernet (Registered Trademark) frame stored in the frame buffer 304. If there exists data which matches with the MAC address stored in the address table 305, an identifier for indicating the RJ-45 connector corresponding to the MAC address is read and the Ethernet (Registered Trademark) frame is outputted to the corresponding one of the PHY (Physical) chips 304-1 to 304-n. The Ethernet (Registered Trademark) frame to the one of the PHY (Physical) chips 304-1 to 304-n is outputted to the network which is connected to each of the pulse transformers 303-1 to 303-n. Further, a micro processor 306 is configured to execute the control of the Ethernet switch controller chip 301 according to a control program stored in an EEPROM 307. Fig. 5 is a block diagram showing the details of the output data processing section 107. A priority discriminating section 401 in the output data processing section 107 judges whether the' Ethernet (Registered Trademark) frame transmitted from the switch fabric section 106 is transmitted to the transmission MAC section 108 with a high priority or low priority. In the present embodiment, source MAC address information and priority information which are previously registered in the source MAC address storing section 110 serve as a reference for the division of the high priority or low priority of the Ethernet
(Registered Trademark) frame in the priority discriminating section 401. Fig. 6 shows an example of an address stored in the source MAC address storing section 110. At this point, MSB (Most Significant Bit) is described as the first bit. In the source MAC address storing section 110, bits ranging from MSB to 32nd bit of the previously registered source MAC address and the priority are stored in a pair in a table format. The source 48 bits (6 bytes) are represented with having been divided with "-" by one byte. A portion in which represented as "XX" is not compared. A priority which matches with MAC address information of bits ranging from MSB to 32nd bit of the MAC address of the source communication terminal and bits ranging from MSB to 32nd bit of each source MAC address stored in the source MAC address storing section 110 is used for relay data outputted from the source communication terminal of the MAC address . The Ethernet (Registered Trademark) frame transmitted from the switch fabric section 106 is stored in an output queue 403 according to its priority by the source MAC address storing section 110 and the priority discriminating section 401. An Ethernet (Registered Trademark) frame having a source MAC address which does not exist in the source MAC address storing section 110 is stored in a low-
priority output queue 403 (in the example of Fig. 5, an output queue 4) . Then, the Ethernet (Registered Trademark) frame stored in a high-priority output queue of the output data processing section 107 is transmitted more than the Ethernet (Registered Trademark) frame stored in the low- priority output queue of the output data processing section 107. Fig. 7 shows a flowchart of such an operation. (Step S01) It is judged whether or not source MAC address information stored in the source MAC address storing section 110 is compared up to the last. (Step S02) When the comparison up to the last is completed, a priority of a predetermined unregistered address is set. (Step S03) It is judged whether or not a predetermined portion of the MAC address of the source communication terminal, in this example, bits ranging from 25th bit to 32nd bit match with source MAC address information stored in the source MAC address storing section 110. (Step S04) If they match with each other, a corresponding priority is set. (Step S05) If they do not match with each other, next source MAC address information stored in the source MAC address storing section 110 is selected and the process returns to the step S01.
As such, the priority corresponding to source MAC address information stored in the source MAC address storing section 110 can be set. Further, as regards the source MAC address that is not stored, the predetermined priority can be set. The searching method of the priority is not limited to the sequential searching method described above. For example, a method by a hash function may be used. In the present embodiment, there is provided an example in which a terminal which needs to perform the communication in real time, for example, a video terminal such as a television conferencing device or a voice terminal such as an IP telephone is allocated with a high priority, while a data terminal which does not need the real time process, for example, a personal computer (PC) or the like, is allocated with a low priority. As a priority determination reference, data having a large scale such as motion picture data and on which a user feels inconvenience when broken is allocated with the highest priority. As next prioritized data, data, such as sound data, having a scale not as large as the motion picture, but on which a user feels inconvenience when broken is exemplified. Specifically, as regards a device that controls data with the highest priority, one that communicates the motion
picture is set. A video terminal that is connected to a network such as video on demand, a video server such as a video recording device having a large-scale storing device, a television conferencing device, a videophone device, or the like may be exemplified. As regards a device that controls data with the next priority level, one that communicates sound information is set. A sound streaming device such as an internet radio, an audio server such as an audio recording device having a large-scale storing device, an IP telephone, or the like may be exemplified. As such, the source communication terminal 102 having the MAC address stored in the source MAC address storing section 110 can performs the transmission according to its priority irregardless of the connection port. (Second Embodiment) Next, another embodiment of the present invention will be described. The Ethernet (Registered Trademark) switch according to a second embodiment of the present invention adopts a source IPv6 (Internet Protocol version 6) address storing section 111, instead of the source MAC address storing section 110 in Fig. 1. Fig. 8 is a block diagram showing the details of the output data processing section 107 according to the second embodiment of the present invention.
The priority discriminating section 401 in the output data processing section 107 judges whether an IPv6 packet transmitted from the switch fabric 106 is to be transmitted with the high priority or the low priority. In the present embodiment, as the discrimination reference, a source IPv6 address is used. The source IPv6 address serving as the discrimination reference and priority information are stored in advance in the source IPv6 address storing section 111. An example of a hardware configuration in the second embodiment can be implemented by substituting the Ethernet switch controller chip 301 in the example of the hardware configuration in the first embodiment with one corresponding to IPv6. Fig. 9 shows an example of the format of a header of the IPv6 packet and the source IPv6 address storing section 111. The detailed description of the format of the IPv6 is omitted, but, in the present embodiment, the priority discriminating section 401 judges a high-priority IPv6 packet or a low-priority IPv6 packet by referring to a field of 128 bits of a source IPv6 address from this format. Fig. 10 shows the format of the 128 bits of the source IPv6 address. High-order 64 bits represent path information which is called a network ID. Low-order 64 bits represent information indicating a hardware address of a network which is called an interface ID and corresponds to the MAC address
in the first embodiment. The interface ID in the IPv6 address is constructed based on the total 64 bits which is obtained by dividing the MAC address 48 bits of the first embodiment into high-order 24 bits and low-order 24 bits and by inserting information of 16 bits represented by FFFE in a hexadecimal number therebetween. According to this configuration, similarly to the MAC address of the first embodiment, each network apparatus can have a unique IPv6 address which is the only one on earth. In the source IPv6 address storing section 111, the previously registered source IPv6 address and its priority are stored in a pair. In the present embodiment, a terminal which needs to perform the communication in real time, for example, a video terminal such as a television conferencing device or a voice terminal such as an IP telephone is allocated with a high priority, while a data terminal which does not need the real time process, for example, a PC or the like, is allocated with a low priority. The priority discriminating section 401 transmits the IPv6 packet to the corresponding output queue 403 according to the source IPv6 address and the priority of the source IPv6 address storing section 111. An IPv6 packet having a source IPv6 address which does not exist in the source IPv6 address storing section 111 is stored in a low-priority output queue 403 (in
the example of Fig. 8, an output queue 4) . Then, the IPv6 packet stored in a high-priority output queue of the output data processing section 107 is transmitted more than the IPv6 packet stored in the low-priority output queue of the output data processing section 107. Fig. 11 shows an example of an address stored in the source IPv6 address storing section 111. In the source IPv6 address storing section 111, bits ranging from 65th bit to 80th bit of the previously registered source IPv6 address and the priority are stored in a pair in a table format. The low-order 8 bytes of the source 128 bits (16 bytes) are represented with having been divided with ":" by two bytes. A portion in which represented as "XX" is not compared. A priority which matches with IPv6 address information of bits ranging from 65th bit to 80th bit of the IPv6 address of the source communication terminal and bits ranging from 65th bit to 80th bit of each source IPv6 address stored in the source IPv6 address storing section 111 is used for relay data outputted from the source communication terminal of the IPv6 address. Fig. 12 shows a flowchart of such an operation. (Step Sll) It is judged whether or not source IPv6 address information stored in the source IPv6 address storing section 111 is compared up to the last. (Step S12) When the comparison up to the last is
completed, a priority of a predetermined unregistered address is set. (Step S13) It is judged whether or not a predetermined portion of the IPv6 address of the source communication terminal, for example, in this example, bits ranging from 65th bit to 80th bit match with source IPv6 address information stored in the source IPv6 address storing section 111. (Step S14) If they match with each other, a corresponding priority is set. (Step S15) If they do not match with each other, next source IPv6 address information stored in the source IPv6 address storing section 111 is selected and the process returns to the step Sll. As such, the priority corresponding to source IPv6 address information stored in the source IPv6 address storing section 111 can be set. Further, as regards the source IPv6 address that is not stored, the predetermined priority can be set. The searching method of the priority is not limited to the sequential searching method described above. For example, a method by a hash function may be used. The set ranking of the priority can be set with the same reference as that of the first embodiment. As such, the source communication terminal 102 having
the IPv6 address registered in the source IPv6 address storing section 111 can performs the transmission according to its priority irregardless of the connection port. (Third Embodiment) Next, still another embodiment of the present invention will be described. An Ethernet (Registered Trademark) switch according to a third embodiment of the present invention is configured by adding a network address receiving section 801 to the elements of the Ethernet (Registered Trademark) switch in the first embodiment. Fig. 13 is a block diagram of the Ethernet (Registered Trademark) switch according to the third embodiment. In the third embodiment, there is provided an example in which a HTTP (HyperText transfer Protocol) server according to a HTTP is used as the network address receiving section 801. A method in which a source MAC address is newly registered by using a WWW (World Wide Web) browser function according to the HTTP of a connected communication terminal 102 will be described. As shown in Fig. 14, the network address receiving section 801 has an HTML (HyperText Markup Language) data analyzing section 901 that analyzes the Ethernet (Registered Trademark) frame of the source communication terminal 102 which is received from the input data processing section 104 and judges whether or not it is HTML data, an HTTP section
902 that communicates HTML data, a CGI (Common Gateway Interface) section 903 that processes a request for reference of the source MAC address storing section 110 or registration of the MAC address from a WWW browser of the source communication terminal 102, a storing section 904 that stores an operation program of the HTTP section or the CGI section or temporary data, and a control section 905 that controls and manages the HTML data analyzing section 901, the HTTP section 902, the CGI section 903, and the storing section 904. The registration method of the MAC address will be described with reference to Fig. 15. When the HTML data analyzing section 901 receives HTML data from the source communication terminal 102 (Step PI), the control section 905 confirms whether or not HTML data is the request for the registration of the MAC address (Step P2) . If HTML data is not the request for the registration of the MAC address, received HTML data is discarded. Then, the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step P7) . If HTML data is the request for the registration of the MAC address, a MAC address registration form described in an HTML format is transmitted from the HTTP section 902 to the source communication terminal 102 which transmits HTML data (Step P3) . Next, the HTML data analyzing section 901
confirms whether or not the MAC address to be registered from the source communication terminal 102 is received (Step P4) . If the MAC address is not received within the predetermined time or if the connection from the source communication terminal 102 is cut off, the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step P7) . When the MAC address of the HTML data format is received from the source communication terminal 102, the control unit 905 confirms whether or not the MAC address is a registerable MAC address (Step P5) . In a case of an unregisterable MAC address, received HTML data is discarded and the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step P7) . In a case of the registerable MAC address, the CGI section 903 registers the MAC address in the source MAC address storing section 110 (Step P6) . After the registration of the MAC address, the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step P7) . When HTML data exists in the HTML data analyzing section 901, the control section 905 confirms whether or not HTML data is the request for the registration of the MAC address (Step P2) . When HTML data does not exist in the HTML data analyzing section 901, the
registration process is ended. In such a manner, the MAC address can be registered from the WWW browser of the source communication terminal 102 to the Ethernet (Registered Trademark) switch 101. The hardware configuration can be implemented with the hardware configuration of the first embodiment. The Ethernet (Registered Trademark) switch controller chip 301 judges whether it is data to be transmitted to the source or data for controlling the relay device itself with the MAC chips 305-1 to 305-n. With control data, the functions of the third embodiment can be implemented. (Fourth Embodiment) Next, a further embodiment of the present invention will be described. The Ethernet (Registered Trademark) switch according to a fourth embodiment of the present invention adopts a source IPv6 address storing section 111, instead of the source MAC address storing section 110 in the third embodiment . In the fourth embodiment, there is provided an example in which a HTTP server according to a HTTP is used as the network address receiving section 801. A method in which a source IPv6 address is newly registered by using the WWW browser function according to the HTTP of the connected communication terminal 102 will be described. A registration method of an IPv6 address will be
described with reference to Fig. 16. When the HTML data analyzing section 901 receives HTML data from the source communication terminal 102 (Step P8), the control section 905 confirms whether or not HTML data is the request for the registration of the IPv6 address (Step P9) . If HTML data is not the request for the registration of the IPv6 address, received HTML data is discarded. Then, the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step P14) . If HTML data is the request for the registration of the IPv6 address, an IPv6 address registration form described in an HTML format is transmitted from the HTTP section 902 to the source communication terminal 102 which transmits HTML data (Step P10) . Next, the HTML data analyzing section 901 confirms whether or not the IPv6 address to be registered from the source communication terminal 102 is received (Step Pll) . If the IPv6 address is not received within the predetermined time or if the connection from the source communication terminal 102 is cut off, the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step PI4) . When the IPv6 address of the HTML data format is received from the source communication terminal 102, the control unit 905 confirms whether or not the IPv6 address is
a registerable IPv6 address (Step P12) . In a case of an unregisterable IPv6 address, received HTML data is discarded and the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step P14) . In a case of the registerable IPv6 address, the CGI section 903 registers the IPv6 address in the source IPv6 address storing section 111 (Step P13) . After the registration of the IPv6 address, the HTML data analyzing section 901 confirms whether or not there exists next HTML data (Step P14) . When HTML data exists in the HTML data analyzing section 901, the control section 905 confirms whether or not HTML data is the request for the registration of the IPv6 address (Step P9) . When HTML data does not exist in the HTML data analyzing section 901, the registration process is ended. In such a manner, the IPv6 address can be registered from the WWW browser of the source communication terminal 102 to the Ethernet (Registered Trademark) switch 101. In the third embodiment and the fourth embodiment, there is provided the example in which the address is registered using the HTTP server. Alternatively, data about all or some of the network address and the priority of the network address may be transmitted from the source communication terminal 102 to the network relay device according to the HTTP. Further, data may be transmitted
from the source communication terminal 102 to the network relay device of the present invention according to an FTP. The network relay device of the present invention has an advantage that, by using the fact that the network address is managed by the manufacturer of the communication terminal, the priority is easily added by the judgment through the address storing section in which the priority is correlated with the network address and the kind of the network product. Further, if the user of the communication terminal uses a communication terminal which is previously registered in the network relay device, the priority communication terminal can be simply provided without setting the network relay device and the communication terminal . This application is based on Japanese Patent Application No. 2004-66900 filed on March 10, 2004, which is incorporated herein by reference.
Industrial Applicability
The network relay device of the invention achieves that the priority is easily added by means of the judgment with an address storing section, in which a priority is correlated with a network address and a type of a network product. Further, the network relay device of the invention can provide a priority communication terminal simply without
setting the network relay device and the communication terminal .