An apparatus and a method for performing an efficient address search in an ethernet switch having a plurality of ports. Information packets where the source and destination addresses are one and the same are rejected and not processed. When destination address is not in a local port, the main look up table for the entire switch is then consulted. If the main look up table does not have the destination address, the main look up table learns the address and the port broadcasts the information packet to all ports in the switch. A hash algorithm is used to look up addresses in tables. Thus, more efficient processing of information in the switch can be realized.
|
4. An address search method in an ethernet switch, said method comprising the steps of:
determining whether or not a port has received an input packet for transmission;
reading a destination address from a header of said input packet;
determining whether said destination address exists in a local search block of said port;
filtering the received input packet when said destination address and source address are the same, to thereby purge the input packet;
updating a destination address received from a main search block when the destination address does not exist in the local search block of said port and when said main search block includes the destination address; and
sending no-port information from said main search block to said port if said main search block does not comprise said destination address; and
broadcasting said input packet to all ports in said ethernet switch.
1. An address search apparatus in an ethernet switch, said apparatus comprising:
a plurality of ports;
a plurality of local search blocks corresponding to each of said plurality of ports, each of said plurality of local search blocks configured to analyze a destination address of an input packet received in the port thereof and to search for a transmission port of said ethernet switch and provide a source address thereof;
a main search block configured to analyze said source address to establish an address data structure of said plurality of local search blocks, said main search block being also configured to respond to a destination address request from at least one of said plurality of local search blocks by providing said requested destination address to a corresponding local search block by using said address data structure upon said main search unit having said destination address, said main search block being further configured to respond to a destination address request from at least one of said plurality of local search blocks by sending a “no port” signal to said at least one of said plurality of local search blocks upon said main search block not having said destination address; and
a scheduler for controlling said local search blocks and said main search block to enable an interface therebetween.
3. An address search apparatus in an ethernet switch, said apparatus comprising:
a plurality of ports;
a plurality of local search blocks corresponding to each of said plurality of ports, each of said plurality of local search blocks configured to analyze a destination address of an input packet received in the port thereof and to search for a transmission port of said ethernet switch and provide a source address thereof;
a main search block configured to analyze said source address to establish an address data structure of said plurality of local search blocks, said main search block also configured to respond to a destination address request from at least one of said plurality of local search blocks by either providing said requested destination address to a corresponding local search block by using said address data structure when said main search block has said destination address or by sending a “no port” signal to said at least one of said plurality of local search blocks when said main search block does not have said destination address; and
a scheduler for controlling said local search blocks and said main search unit to enable an interface therebetween, said main search block includes:
an address table for storing addresses known to the ethernet switch system and port information corresponding to said addresses;
a table access logic for accessing said address table;
an address sorting logic for classifying addresses having same characteristics to store data known to the ethernet switch system into said address table; and
a control block for control and condition detection of elements.
2. The address search apparatus according to
a destination address table having destination addresses and destination information corresponding to said destination addresses which are matched therein;
a source address table having source addresses and source information corresponding to said source addresses which are matched therein;
an address sorting logic configured to classify an ethernet address into groups as many as necessary, and corresponding to each of said destination address table and said source address table;
a control logic for control of corresponding local search blocks; and
a register block for temporal storage of data.
5. The method of
6. The method of
7. The apparatus of
8. The apparatus of
9. The apparatus of
10. The apparatus of
11. The apparatus of
12. The method of
performing an internal search for the destination address of header information received from said local search block in said main search block; and
performing, when the address search is finished, an update by sending the searched destination address to the corresponding local search block.
|
This application makes reference to, incorporates the same herein, and claims all benefits accruing under 35 U.S.C. §119 from my application ADDRESS SEARCH APPARATUS AND METHOD IN ETHERNET SWITCH filed with the Korean Industrial Property Office on 22 Nov. 1999 and there duly assigned Ser. No. 51825/1999.
1. Field of the Invention
The invention relates to a data network, and more particularly an apparatus and a method for performing an efficient address search in a switch network.
2. Description of the Related Art
Ethernet is a most typical protocol of LAN (Local Area Network) which occupies a very important portion in data networks. Ethernet is widely accepted in the industry already, and the application thereof reaches all kinds of data networks. At the present, since users are rapidly increasing and more various services are getting provided, bandwidth of a network is required to be wider than before. Providing wide bandwidth of a network enables converting from a repeater so called hub into a switch in a remarkably rapid speed. As compared to a repeater which shares a transmission medium, a switch efficiently uses only required sources from transmission means to receiver means thereby having a very rapid transmission speed.
Herein, “address search” means that an ethernet switch establishes required information to determine an output terminal, and collects and utilizes information for address. The address search is particularly important in an application in which management for address is highly required. Examples of the application include ARP (Address Resolution Protocol) management, NMS (Network Management System), RMON (Remote Monitoring) and etc.
In an example of an address searching method in an ethernet switch as shown in
However, in
Therefore, it is an object of the present invention to provide an improved ethernet switch and switching process.
It is also an object of the present invention to provide an apparatus and a method for performing an efficient address search operation in an ethernet switch network.
It is another object of the present invention to provide an apparatus and a method in which conversion from a non-management switch structure into a management structure or a port expansion is easy.
According to the foregoing objects of the present invention, it is provided with a processing structure in which a number of ports use one search unit, said structure having a local search block corresponding to each of the ports to perform a search operation as a distributed processing structure. It is also provided with a structure in which an information exchange between the local search blocks and a main search block for port and a search operation on individual addresses can be proceeded without an error.
Furthermore, it is provided with an address search apparatus in an ethernet switch having a plurality of ports, having a local search unit corresponding to each of the plurality of ports; wherein the local search unit includes: a plurality of local search blocks for analyzing a destination address of an input packet received in the port thereof to search for a transmission port of the ethernet switch and provide a source address thereof; a main search unit for analyzing the source address to establish an address data structure of the plurality of local search blocks, and for responding to a destination address request from at least one of the plurality of local search blocks to provide the requested destination address to a corresponding local search block by using the address data structure; and a scheduler for controlling the local search blocks and the main search unit to enable an interface therebetween.
A more complete appreciation of the invention, and many of the attendant advantages thereof, will be readily apparent as the same becomes better understood by reference to the following detailed description when considered in conjunction with the accompanying drawings in which like reference symbols indicate the same or similar components, wherein:
Referring to
Hereinafter, operations for address search according to the embodiment of the present invention will be described in more detail in reference to
In turn, when the destination address of the input packet does not exist in the address table 30 in the local search block 20-N (Step 110), the address sorting logic 36 receives a corresponding destination address from the main search block 26 to update the destination address table 30 in the local search block 20-N. Describing the above in more detail, the local search block 20-N sends a message loaded with a search command in the command field CMD, a source ID and a destination ID in the identifier field ID, and header information of the packet in the specification information field according to the CMD information to the main search block 26 (Step 130), according to the protocol defined between the local search blocks 20-0, . . . , 20-7 and the main search block 26. Then, the main search block 26 performs an internal search (Step 135) about the destination address in the received header information, and when the address search is successfully completed, transmits an information about the searched destination address to the corresponding local search block 20-N. Then, the corresponding local search block 20-N transmits the destination information (transmission port) received from the main search block 26 to the corresponding port device 22-N thereby permitting the port device 22-N to transmit the input packet (Step 160), and updates the table information of the destination address table 30 (Step 155) in the local search block 20-N at the same time. If an information of the corresponding destination address (hereinafter referred to “port information”) does not exist in the main search block 26 in addition to being found in the local search block, the main search block 26 sends a no-port information of the destination to the corresponding local search block 20-N (Step 145) since the port information about the address does not exist in the present system. When the corresponding local search block 20-N receives the no-port information, the corresponding port device 22-N performs a forwarding operation. The forwarding operation means broadcasting (Step 150). In other words, since it is not determined to which port the input packet is required to be transmitted, the packet is transmitted to all available ports (except input ports) in the ethernet switch. In turn, the local search blocks 20-0, 20-1, . . . , 20-7 corresponding to the ports respectively and the main search block 26 periodically perform an update operation of the source and destination addresses.
Hereinafter, the operation will be described in detail. The local search blocks 20-0, 20-1, . . . , 20-7 corresponding to the ports respectively periodically transmit header information (such as source addresses, destination addresses and etc.) to the main search block 26 so that the main search block 26 can perform an address update (Steps 143 & 157). The main search block 26 establishes an address data structure via address learning via input of the header information (such as source addresses, destination addresses and etc.) transmitted from the local search blocks 20-0, 20-1, . . . , 20-7 which correspond to the ports respectively. In other words, the information used for establishing the address data are port information of the sub hosts of the system and addresses allocated thereto. This information can be obtained since each of the hosts causes its address information to be included in the header of the packet while transmitting and receiving the packets. The information corresponding to the source address, as though it may be varied according to objects to which the system is aimed, can be supposed simply as a port information in the system (i.e., as to which port the source address corresponds).
Describing the address learning process in more detail, the main search block 26 searches whether a corresponding information (such as address information, port information and etc.) exists in the address table 50 of the main search block 26 about the destination and source addresses (Step 140). When a corresponding information exists (Step 140=Yes), the main search block 26 performs an information update operation desired by the system including an address aging. Herein, the address aging means clearing old address data, i.e. address data which are not used for a predetermined period, from the addresses stored in the address table 50 of the main search block 26 (Step 157). Performing the information operation including the address aging like this can establish new information as address data. When a corresponding information does not exist (Step 140=No), the address learning operation is performed. The address learning is generally performed by an external processor, and data insertion is carried out into the link structure by using hash within the main search block 26 (Step 143). In other words, the search information (such as MAC address, port number and add command) connected in respect to the corresponding source address is provided by the external processor, but actual operation to connect data to the link according to the hash key is carried out in the main search block 26.
In turn, the local search block 20-N requests port information of the destination and source addresses to the main search block 26 when the destination and source addresses of the input packets do not exist in the destination table 30 and the source address table 32 of the local search block 20-N. Then, the main search block 26 provides port information of the requested destination address and source addresses to the local search block 20-N so that the local search block 20-N may update the destination and source addresses and corresponding port information in the destination address table 30 and the source address table 32.
As described above, the invention can reduce required time in a large amount by managing a small table for each port than search operation which are carried out via competition while sharing single search logic. Therefore, the main search block can carry out more tasks. Also, exchange of address information with other system can be carried out by conversion into a management switch structure or a port expansion, and the overall search efficiency can be enhanced by management of suitable table by each port.
While the invention has been described in detail by specific reference to preferred embodiments thereof such as an ethernet switch, it is understood that variations and modifications thereof may be made without departing from the true spirit and scope of the invention. In other words, the variations and modifications can be made to a switch network which include at least one of packet switch, asynchronous transfer mode (ATM) network and etc. Therefore, it should be understood that the true spirit and the scope of the invention are not limited by the above embodiment, but defined by the appended claims and the equivalents thereof.
Patent | Priority | Assignee | Title |
10263880, | Dec 06 2006 | FEDERAL HOME LOAN MORTGAGE CORPORATION | Method apparatus, and computer program product for dynamic security based grid routing |
11146478, | Dec 06 2006 | FEDERAL HOME LOAN MORTGAGE CORPORATION | Method, apparatus, and computer program product for dynamic security based grid routing |
11848854, | Dec 06 2006 | FEDERAL HOME LOAN MORTGAGE CORPORATION | Method, apparatus, and computer program product for dynamic security based grid routing |
7961730, | Feb 15 2003 | Samsung Electronics Co., Ltd. | Packet forwarding system having an efficient packet management unit and an operation method thereof |
Patent | Priority | Assignee | Title |
5111453, | May 18 1990 | Verizon Patent and Licensing Inc | Apparatus and method for recognizing addresses of information packets |
5138611, | Oct 16 1987 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Blocking message transmission or signaling error in response to message addresses in a computer interconnect coupler for clusters of data processing devices |
5343471, | May 11 1992 | U S BANK NATIONAL ASSOCIATION | Address filter for a transparent bridge interconnecting local area networks |
5345441, | Oct 20 1992 | AT&T Bell Laboratories | Hierarchical path hunt for multirate connections |
5559883, | Aug 19 1993 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Method and apparatus for secure data packet bus communication |
5784373, | Feb 23 1995 | PANASONIC ELECTRIC WORKS CO , LTD | Switching device for LAN |
5790546, | Jan 28 1994 | ENTERASYS NETWORKS, INC | Method of transmitting data packets in a packet switched communications network |
5802278, | May 10 1995 | Hewlett Packard Enterprise Development LP | Bridge/router architecture for high performance scalable networking |
5915097, | Aug 14 1996 | Winbond Electronics Corporation | Method and apparatus for data storage and search in an address table of an ethernet switch |
5938736, | Jun 30 1997 | Oracle America, Inc | Search engine architecture for a high performance multi-layer switch element |
5978951, | Sep 11 1997 | PLECTRUM LLC | High speed cache management unit for use in a bridge/router |
6032194, | Dec 24 1997 | Cisco Technology, Inc | Method and apparatus for rapidly reconfiguring computer networks |
6061351, | Feb 14 1997 | Advanced Micro Devices, INC | Multicopy queue structure with searchable cache area |
6088356, | Jun 30 1997 | Oracle America, Inc | System and method for a multi-layer network element |
6104696, | Jul 08 1998 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Method for sending packets between trunk ports of network switches |
6154462, | Aug 21 1997 | CommScope EMEA Limited; CommScope Technologies LLC | Circuits and methods for a ring network |
6304575, | Aug 31 1998 | Cisco Technology, Inc | Token ring spanning tree protocol |
6463032, | Jan 27 1999 | GLOBALFOUNDRIES Inc | Network switching system having overflow bypass in internal rules checker |
6549519, | Jan 23 1998 | ALCATEL INTERNETWORKING PE , INC | Network switching device with pipelined search engines |
6553000, | Jan 27 1998 | WSOU Investments, LLC | Method and apparatus for forwarding network traffic |
6625146, | May 28 1999 | GLOBALFOUNDRIES Inc | Method and apparatus for operating a network switch in a CPU-less environment |
6658015, | May 28 1999 | Advanced Micro Devices, Inc.; Advanced Micro Devices, INC | Multiport switch with plurality of logic engines for simultaneously processing different respective data frames |
6678248, | Aug 29 1997 | ARISTA NETWORKS, INC | Policy based quality of service |
6678269, | Oct 05 1998 | Alcatel Lucent | Network switching device with disparate database formats |
6907469, | Apr 11 2000 | International Business Machines Corporation | Method for bridging and routing data frames via a network switch comprising a special guided tree handler processor |
20020051450, | |||
20020067726, | |||
20030058864, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Nov 21 2000 | PARK, WOO-JONG | SAMSUNG ELECTRONICS CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 011324 | /0939 | |
Nov 22 2000 | Samsung Electronics Co., Ltd. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Aug 22 2008 | ASPN: Payor Number Assigned. |
Jan 06 2011 | RMPN: Payer Number De-assigned. |
Jan 07 2011 | ASPN: Payor Number Assigned. |
May 24 2011 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Jul 24 2015 | REM: Maintenance Fee Reminder Mailed. |
Dec 11 2015 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Dec 11 2010 | 4 years fee payment window open |
Jun 11 2011 | 6 months grace period start (w surcharge) |
Dec 11 2011 | patent expiry (for year 4) |
Dec 11 2013 | 2 years to revive unintentionally abandoned end. (for year 4) |
Dec 11 2014 | 8 years fee payment window open |
Jun 11 2015 | 6 months grace period start (w surcharge) |
Dec 11 2015 | patent expiry (for year 8) |
Dec 11 2017 | 2 years to revive unintentionally abandoned end. (for year 8) |
Dec 11 2018 | 12 years fee payment window open |
Jun 11 2019 | 6 months grace period start (w surcharge) |
Dec 11 2019 | patent expiry (for year 12) |
Dec 11 2021 | 2 years to revive unintentionally abandoned end. (for year 12) |