KR20020091203A - Programmable layer 3 address self-learning scheme in a network switch - Google Patents

Programmable layer 3 address self-learning scheme in a network switch Download PDF

Info

Publication number
KR20020091203A
KR20020091203A KR1020027013752A KR20027013752A KR20020091203A KR 20020091203 A KR20020091203 A KR 20020091203A KR 1020027013752 A KR1020027013752 A KR 1020027013752A KR 20027013752 A KR20027013752 A KR 20027013752A KR 20020091203 A KR20020091203 A KR 20020091203A
Authority
KR
South Korea
Prior art keywords
layer
address
data packet
port
router
Prior art date
Application number
KR1020027013752A
Other languages
Korean (ko)
Inventor
쳉쉬르-지에
Original Assignee
어드밴스드 마이크로 디바이시즈, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 어드밴스드 마이크로 디바이시즈, 인코포레이티드 filed Critical 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Publication of KR20020091203A publication Critical patent/KR20020091203A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • H04L49/602Multilayer or multiprotocol switching, e.g. IP switching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/59Network arrangements, protocols or services for addressing or naming using proxies for addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • H04L49/352Gigabit ethernet switching [GBPS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

패킷 식별자 모듈은 수신 데이터 패킷이 라우터에서 발생하였는지 여부를 판정하도록 구성된다. 패킷 식별자 모듈이 수신 데이터 패킷이 라우터 이외의 네트워크 노드에서 수신된 것으로 식별하면, 스위치 모듈은 데이터 패킷의 층 2 어드레스 및 연관 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 선택적으로 저장한다. 연관 층 2-층 3 어드레스의 선택적인 저장을 데이터 패킷의 인터넷 프로토콜(IP)-매체 액세스 제어 연관(MAC)의 학습이라고도 한다. 비라우터 포트로부터의 선택된 데이터 패킷의 IP-MAC 연관을 선택적으로 학습함으로써, 어드레스 테이블의 오버플로 가능성이 감소된다. 또한, 학습된 IP-MAC 연관을 이용함으로써, 네트워크 스위치는 층 3 데이터 패킷을 스위치하여 라우터를 바이패스하고 대기시간을 줄일 수 있다.The packet identifier module is configured to determine whether a received data packet has occurred at the router. If the packet identifier module identifies that the received data packet was received at a network node other than the router, the switch module selectively stores the layer 2 address and associated layer 3 address of the data packet as an associated layer two-layer three address pair in the address table. do. Selective storage of an association layer two-layer three address is also referred to as learning the Internet Protocol (IP) -Media Access Control Association (MAC) of the data packet. By selectively learning the IP-MAC association of selected data packets from non-router ports, the possibility of overflow of the address table is reduced. In addition, by using the learned IP-MAC association, the network switch can switch layer 3 data packets to bypass the router and reduce latency.

Description

네트워크 스위치에서 프로그램 가능한 층 3 어드레스 자가학습 계획{PROGRAMMABLE LAYER 3 ADDRESS SELF-LEARNING SCHEME IN A NETWORK SWITCH}PROGRAMMABLE LAYER 3 ADDRESS SELF-LEARNING SCHEME IN A NETWORK SWITCH}

로컬 영역 네트워크는 네트워크상에서 스테이션을 링크하는데 네트워크 케이블 또는 다른 매체를 사용한다. 각 로컬 영역 네트워크 아키텍처는 각 네트워크 노드의 네트워크 인터페이스장치가 네트워크 매체에 액세스할 수 있게 하는 매체 액세스 제어(MAC)를 사용한다.Local area networks use network cables or other media to link stations on the network. Each local area network architecture uses a medium access control (MAC) that allows the network interface devices of each network node to access the network medium.

이서넷 프로토콜 IEEE 802.3은 데이터 패킷 전송을 위한 단방향(half-duplex) 매체 액세스 메커니즘 및 양방향(full-duplex) 매체 액세스 메커니즘을 특정하기 위해 발전되어 왔다. 양방향 매체 액세스 메커니즘은 두 네트워크 요소간 예를 들어 네트워크 노드와 스위치 허브간에 두 방향, 포인트-투-포인트(point-to-point) 통신 링크를 제공한다.The Ethernet protocol IEEE 802.3 has been developed to specify half-duplex and full-duplex media access mechanisms for data packet transmission. Bidirectional media access mechanisms provide two-way, point-to-point communication links between two network elements, for example, between network nodes and switch hubs.

스위치 로컬 영역 네트워크에서 고속 연결, 더욱 유연한 스위칭 성능, 복잡한 네트워크 아키텍처를 수용할 수 있는 능력에 대한 요구가 증가하고 있다. 예를들어, 미국 특허 제 5,953,335호에서는 다른 네트워크 노드간에 층 2 타입 이서넷(IEEE 802.3) 데이터 패킷을 스위칭하기 위해 구성된 네트워크 스위치를 개시한다. 수신 데이터 패킷은 다른 서브네트워크(라우터를 통해) 또는 규정된 스테이션 그룹을 특정하는 IEEE 802.1q 프로토콜에 따라서 VLAN(virtual LAN) 태그 프레임을 포함할 수 있다. 스위칭이 층 2 레벨에서 발생하기 때문에, 라우터가 서브네트워크간 데이터 패킷을 전송하는 것이 필요하다.In switch local area networks, there is an increasing demand for high speed connectivity, more flexible switching performance, and the ability to accommodate complex network architectures. For example, US Pat. No. 5,953,335 discloses a network switch configured to switch Layer 2 Type Ethernet (IEEE 802.3) data packets between different network nodes. The received data packet may comprise a VLAN (virtual LAN) tag frame in accordance with the IEEE 802.1q protocol specifying another subnetwork (via a router) or a defined group of stations. Since switching occurs at the layer 2 level, it is necessary for the router to transmit data packets between subnetworks.

층 3(예를 들어, 인터넷 프로토콜) 프로세싱을 포함하는 네트워크 스위치의 스위칭 성능을 향상시키기 위한 노력은 전형적으로 층 3 어드레스 학습을 위한 네트워크 어드레스 테이블의 CPU 기반 제어를 요구한다. 예를 들어, 라우터는 규정된 어드레스 결정 프로토콜에 기초하여 층 2-층 3 연관(association)을 수행할 수 있다. 현재 층 2 스위치는 비차단 모드(데이터 패킷이 수신속도와 동일한 속도로 네트워크 스위치로부터 출력될 수 있다)에서 동작하도록 구성되어 있어서 라우터는 LAN에 대한 병목(bottleneck)이다. 따라서, 층 2-층 3 스위칭 능력을 갖는 스위치의 사용은 라우터를 오프로드할 수 있고 대기시간을 줄일 수 있다. 또한, 모든 수신 데이터 패킷의 매체 액세스 제어(MAC) 어드레스를 학습하는 층 2 스위치에서 종래 학습 기술은 층 3 학습이 네트워크 스위치 내 어드레스 테이블을 빨리 압도(overwhelm)하기 때문에 층 3 스위치에서 실용적이지 못하다.Efforts to improve the switching performance of network switches, including layer 3 (eg, Internet protocol) processing, typically require CPU based control of the network address table for layer 3 address learning. For example, a router may perform layer two-layer three association based on a defined address resolution protocol. Currently, Layer 2 switches are configured to operate in non-blocking mode (data packets can be output from the network switch at the same rate as the receive rate) so that the router is a bottleneck for the LAN. Thus, the use of a switch with Layer 2-Layer 3 switching capability can offload the router and reduce latency. In addition, conventional learning techniques in layer 2 switches that learn the media access control (MAC) addresses of all received data packets are not practical in layer 3 switches because layer 3 learning quickly overwhelms the address table in the network switch.

본 발명은 서브네트워크들과 라우터간의 데이터 패킷을 스위칭하도록 구성된 비차단(nonblocking) 네트워크 스위치에서 데이터 패킷의 네트워크 어드레스를 학습하는 것에 관한 것이다.The present invention is directed to learning the network address of a data packet in a nonblocking network switch configured to switch data packets between subnetworks and routers.

첨부된 도면을 참조한다. 동일한 도면부호의 표기는 도면 전체에서 동일한 구성요소를 나타낸다.Reference is made to the accompanying drawings. Like reference numerals denote like elements throughout the drawings.

도 1은 본 발명의 실시예에 의하여 각 서브네트워크간에 데이터 패킷을 스위칭하는 다수 네트워크 스위치를 포함하는 패킷 스위치 네트워크의 블록도이다.1 is a block diagram of a packet switch network including multiple network switches for switching data packets between sub-networks according to an embodiment of the invention.

도 2는 본 발명의 실시예에 의하여 도 1의 네트워크 스위치를 도시한 블록도이다.2 is a block diagram illustrating a network switch of FIG. 1 according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 의하여 도 1의 네트워크 스위치에서 학습을 도시한 플로차트이다.3 is a flowchart illustrating learning in the network switch of FIG. 1 according to an embodiment of the present invention.

도 4는 본 발명의 실시예에 의하여 도 1의 네트워크 스위치에서 학습을 도시한 다른 플로차트이다.4 is another flow chart illustrating learning in the network switch of FIG. 1 in accordance with an embodiment of the present invention.

도 5는 본 발명의 실시예에 의하여 도 1의 네트워크 스위치에서 학습을 도시한 또 다른 플로차트이다.FIG. 5 is another flowchart illustrating learning in the network switch of FIG. 1 according to an embodiment of the present invention.

데이터 패킷의 차단 없이 100 Mbps 및 기가비트 링크를 위해 층 2 및 층 3 스위칭에 대한 네트워크 어드레스의 자동학습을 네트워크 스위치가 제공하도록 하는 장치가 필요하다.What is needed is a device that allows a network switch to provide auto-learning of network addresses for layer 2 and layer 3 switching for 100 Mbps and gigabit links without blocking of data packets.

또한 네트워크 스위치 어드레스 테이블을 압도하지 않고 와이어 속도로 들어오는 데이터 패킷의 층 2 어드레스 및 연관 층 3 어드레스를 비차단 네트워크 스위치가 선택적으로 학습하도록 하는 장치가 필요하다.There is also a need for an apparatus that allows non-blocking network switches to selectively learn the layer 2 addresses and associated layer 3 addresses of incoming data packets at wire speed without overwhelming the network switch address table.

이러한 필요 및 다른 필요는 본 발명에 의해 얻을 수 있다. 본 발명에서, 데이터 패킷을 스위칭하는 네트워크 스위치는 복수의 데이터 패킷을 송수신하는 복수의 포트를 포함한다. 들어오는 데이터 패킷은 수신 데이터 패킷이 네트워크 스위치에 연결된 라우터로부터 수신되는지 여부를 판정하기 위해 패킷 식별자 모듈에 의해 평가된다. 수신 데이터 패킷이 라우터 이외의 네트워크 노드로부터 수신되면, 스위치 모듈은 수신 데이터 패킷의 층 2 소스 어드레스 및 연관 층 3 소스 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 선택적으로 저장한다. 따라서, 어드레스 테이블이 거의 엔트리를 포함하지 않기 때문에 어드레스 테이블에서 오버플로의 가능성이 줄어든다.These and other needs can be obtained by the present invention. In the present invention, a network switch for switching data packets includes a plurality of ports for transmitting and receiving a plurality of data packets. Incoming data packets are evaluated by the packet identifier module to determine whether received data packets are received from a router connected to the network switch. When a received data packet is received from a network node other than a router, the switch module selectively stores the layer 2 source address and associated layer 3 source address of the received data packet as an associated layer two-layer three address pair in the address table. Thus, the possibility of overflow in the address table is reduced because the address table contains very few entries.

본 발명은 네트워크 스위치 포트에서 데이터 패킷을 스위칭하는 방법을 제공한다. 이 방법은 네트워크 스위치의 한 포트에 의해 데이터 패킷을 수신하는 단계와, 상기 포트가 상기 데이터 패킷을 라우터로부터 수신하였는지 여부를 판정하는 단계를 포함한다. 이 방법은 또한 상기 포트가 상기 라우터 이외의 다른 네트워크 노드로부터 상기 데이터 패킷을 수신하였다는 판정에 기초하여 상기 데이터 패킷으로부터의 층 2 어드레스 및 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 선택적으로 저장하는 단계를 포함한다. 따라서, 어드레스 테이블은 엔트리를 거의 포함하지 않아서 어드레스 테이블에서 오버플로의 가능성을 줄인다.The present invention provides a method of switching data packets at a network switch port. The method includes receiving a data packet by one port of a network switch and determining whether the port has received the data packet from a router. The method also based on the determination that the port received the data packet from a network node other than the router, the layer 2 address and layer 3 address from the data packet as an associated layer two-layer three address pair as an address table. And optionally storing at. Thus, the address table contains few entries, thus reducing the possibility of overflow in the address table.

본 발명은 네트워크 스위치 포트에서 수신된 데이터 패킷을 스위칭하는 네트워크 스위치를 제공한다. 네트워크 스위치는 복수의 데이터 패킷을 송수신하는 복수의 포트(상기 복수의 포트의 한 포트는 라우터에 연결된다), 패킷 식별자 모듈 및 스위치 모듈을 포함한다.The present invention provides a network switch for switching data packets received at a network switch port. The network switch includes a plurality of ports for transmitting and receiving a plurality of data packets (one port of the plurality of ports is connected to a router), a packet identifier module, and a switch module.

상기 패킷 식별자 모듈은 수신 데이터 패킷이 라우터로부터 수신되는지 여부를 판정하도록 구성된다. 상기 스위치 모듈은 상기 라우터 이외의 다른 네트워크 노드로부터 수신되고 있는 수신 데이터 패킷에 기초하여 상기 데이터 패킷으로부터의 층 2 어드레스 및 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 선택적으로 저장하도록 구성된다.The packet identifier module is configured to determine whether a received data packet is received from a router. The switch module is configured to selectively store layer 2 addresses and layer 3 addresses from the data packets as associated layer two-layer three address pairs in an address table based on received data packets being received from network nodes other than the router. It is composed.

본 발명의 부가적인 이점 및 신규한 특성은 다음의 설명에서 개시되며 다음의 검토로부터 당업자에게 명백하며 본 발명의 실시로부터 알 수 있을 것이다. 본 발명의 이점은 청구범위에서 특별히 지적한 수단 및 결합에 의해 얻을 수 있다.Additional advantages and novel features of the invention will be set forth in the description which follows, and will be apparent to those skilled in the art from the following review and may be learned from the practice of the invention. The advantages of the present invention can be obtained by means and combinations particularly pointed out in the claims.

도 1은 이서넷(IEEE 802.3) 네트워크와 같은 패킷 스위치 네트워크(10)를 도시한 블록도이다. 패킷 스위치 네트워크는 네트워크 스테이션들(14)간의 데이터 패킷 통신을 가능하게 하는 집적(즉, 단일칩) 멀티포트 스위치(12)를 포함한다. 각 네트워크 스테이션(14) 예를 들어 클라이언트 워크스테이션은 IEEE 802.3 프로토콜에 따라서 10Mbps 또는 100Mbps로 데이터 패킷을 송수신하도록 구성된다. 집적 멀티포트 스위치(12)의 각각은 기가비트 이서넷 링크(16)에 의해 상호 연결되어, 서브네트워크(서브넷)(18a, 18b, 18c)간의 데이터 패킷 송신을 가능하게 한다. 따라서, 각 서브네트워크는 스위치(12) 및 네트워크 스테이션들(14)을 포함한다.1 is a block diagram illustrating a packet switch network 10, such as an Ethernet (IEEE 802.3) network. The packet switch network includes an integrated (ie, single chip) multiport switch 12 that enables data packet communication between the network stations 14. Each network station 14, for example a client workstation, is configured to transmit and receive data packets at 10 Mbps or 100 Mbps according to the IEEE 802.3 protocol. Each of the integrated multiport switches 12 are interconnected by a gigabit Ethernet link 16 to enable data packet transmission between subnetwork (subnet) 18a, 18b, 18c. Thus, each subnetwork includes a switch 12 and network stations 14.

각 스위치(12)는 스위치 포트(20)를 포함한다. 스위치 포트(20)는 매체 액세스 제어(MAC) 모듈(22) 및 포트 필터(24)(패킷 식별자 모듈이라고도 함)를 포함한다. MAC 모듈(22)은 IEEE 802.3u 프로토콜에 따라서 10/100 Mbps 물리층(PHY) 트랜시버(도시하지 않음)를 통해, 연관된 네트워크 스테이션들(14)에 데이터 패킷을 송수신한다. 각 스위치(12)는 또한 수신 데이터 패킷에 대한 프레임 전달을 결정하도록 구성된 스위치 모듈(25)를 포함한다. 특히, 스위치 모듈(25)은 이서넷(IEEE 802.3) 헤더 내의 소스 MAC 어드레스, 목적지 MAC 어드레스, VLAN 정보에 기초하여 층 2 스위칭 결정을 하도록 구성된다. 스위치 모듈(25)은 또한 이서넷 패킷 내의 IP 데이터부분의 평가에 기초하여 선택층 3 스위칭 결정을 하도록 구성된다.Each switch 12 includes a switch port 20. The switch port 20 includes a media access control (MAC) module 22 and a port filter 24 (also called a packet identifier module). The MAC module 22 sends and receives data packets to and from associated network stations 14 via a 10/100 Mbps Physical Layer (PHY) transceiver (not shown) in accordance with the IEEE 802.3u protocol. Each switch 12 also includes a switch module 25 configured to determine frame delivery for received data packets. In particular, the switch module 25 is configured to make layer 2 switching decisions based on source MAC address, destination MAC address, VLAN information in the Ethernet (IEEE 802.3) header. The switch module 25 is also configured to make selective layer 3 switching decisions based on the evaluation of the IP data portion in the Ethernet packet.

도 1에서 도시된 바와 같이, 각 스위치(12)는 연관된 호스트 CPU(26) 및 버퍼 메모리(28)(예를 들어, SSRAM)를 갖는다. 호스트 CPU(26)는 스위치 모듈(25)의 프로그래밍을 포함하여 해당 스위치(12)의 전체동작을 제어한다. 버퍼 메모리(28)는 스위치 모듈(25)이 수신 데이터 패킷에 대한 전달 결정을 처리하는 동안 데이터 프레임을 저장하기 위해 해당 스위치에 의해 사용된다.As shown in FIG. 1, each switch 12 has an associated host CPU 26 and buffer memory 28 (eg, SSRAM). The host CPU 26 controls the overall operation of the switch 12 including programming of the switch module 25. The buffer memory 28 is used by the switch to store the data frame while the switch module 25 processes the forwarding decision for the received data packet.

각 스위치(12)는 또한 메모리(30)를 포함하고, 메모리(30)는 어드레스 테이블로서 데이터 패킷의 인터넷 프로토콜(IP)-매체 액세스 제어(MAC) 연관을 제한적으로 저장하도록 구성된다.Each switch 12 also includes a memory 30, which is configured to restrictively store an Internet Protocol (IP) -Media Access Control (MAC) association of data packets as an address table.

상기한 바와 같이, 스위치 모듈(25)은 층 2 스위치 결정 및 선택층 3 스위칭 결정을 수행하도록 구성된다. 층 3 스위칭 결정의 사용은 서브네트워크(18a)의 스테이션(14)이 서브네트워크(18b, 18c)의 선택된 네트워크 스테이션에 이메일을 보내려는 경우 특히 효과적이다. 서브네트워크(18b 18c)가 다른 서브넷상에 있기 때문에, 서브네트워크(18a)의 호스트는 서브네트워크(18b, 18c)상의 호스트에 대한 층 2 어드레스를 알 수 없다. 스위치(12a)의 스위치 모듈(25)은 라우터(19)에 이메일 메시지를 보낼 필요가 있는데, 라우터(19)는 부가적인 지연을 일으킨다. 스위치모듈(25)에 의한 층 3 스위칭 결정의 사용으로 스위치 모듈(25)은 개선된 전달결정을 포함하여 패킷을 어떻게 관리하고 패킷이 비디오 또는 음성 등 대기시간에 민감한 애플리케이션에 대하여 높은 우선권의 패킷으로 간주되어야 하는지 여부까지 결정할 수 있다. 라우터는 전형적으로 LAN에 대한 병목이므로, 스위치 모듈(25)은 라우터를 오프로드하고 또한 라운드 트립 지연(round trip delay)을 개선시킨다.As noted above, the switch module 25 is configured to perform layer 2 switch determination and selective layer 3 switching determination. The use of a layer 3 switching decision is particularly effective if the station 14 of the subnetwork 18a wants to send an email to selected network stations of the subnetwork 18b, 18c. Since the subnetwork 18b 18c is on a different subnet, the host of the subnetwork 18a does not know the layer 2 address for the host on the subnetwork 18b, 18c. The switch module 25 of the switch 12a needs to send an e-mail message to the router 19, which incurs an additional delay. The use of layer 3 switching decisions by the switch module 25 allows the switch module 25 to manage the packets, including improved forwarding decisions, and route them to higher priority packets for latency sensitive applications such as video or voice. You can decide whether it should be considered. Since the router is typically a bottleneck for the LAN, the switch module 25 offloads the router and also improves round trip delay.

개시된 실시예에 의하면, 네트워크 스위치(12)는 선택된 데이터 패킷의 IP-MAC 연관을 학습하도록 구성된다. 네트워크 스위치의 각 패킷 식별자 모듈(24)은 수신 데이터 패킷이 라우터(19)로부터 수신되는지 여부를 판단하도록 구성된다. 패킷 식별자 모듈(24)가 수신 데이터 패킷을 라우터(19) 이외의 네트워크 노드로부터 수신된 것으로 식별하면, 네트워크 스위치(12)의 스위치 모듈(25)은 선택적으로 데이터 패킷의 층 2 소스 어드레스 및 연관 층 3 소스 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 저장한다. 연관 층 2-층 3 어드레스의 선택적인 저장을 데이터 패킷의 IP-MAC 연관 학습이라고도 한다. 비라우터(non-router) 포트로부터 선택된 데이터 패킷의 IP-MAC 연관을 선택적으로 학습함으로써, 어드레스 테이블의 오버플로의 가능성이 줄어든다. 또한, 학습된 IP-MAC 연관을 사용하여, 네트워크 스위치는 층 3 스위칭을 수행하여 연결된 서브네트워크간의 라우터의 바이패스를 가능하게 하고 대기시간을 감소시키게 된다.According to the disclosed embodiment, the network switch 12 is configured to learn the IP-MAC association of the selected data packet. Each packet identifier module 24 of the network switch is configured to determine whether a received data packet is received from the router 19. If the packet identifier module 24 identifies the received data packet as being received from a network node other than the router 19, the switch module 25 of the network switch 12 optionally selects the layer 2 source address and associated layer of the data packet. The three source addresses are stored in the address table as associative layer two-layer three address pairs. Selective storage of associative layer two-layer three addresses is also referred to as IP-MAC association learning of data packets. By selectively learning the IP-MAC association of selected data packets from non-router ports, the possibility of overflow of the address table is reduced. In addition, using the learned IP-MAC association, the network switch performs layer 3 switching to enable bypass of routers between connected subnetworks and reduce latency.

도 2는 도 1에 도시한 포트 필터(24)의 상세한 블록도를 나타낸다. 포트 필터(24)는 수신 선입선출(FIFO) 버퍼(51), MAC 큐잉 로직(52), 메모리(53), MAC 디큐잉 로직(54), 송신 FIFP 버퍼(55) 및 프로세서 인터페이스 모듈(57)을 포함한다.FIG. 2 shows a detailed block diagram of the port filter 24 shown in FIG. Port filter 24 includes receive first in, first out (FIFO) buffer 51, MAC queuing logic 52, memory 53, MAC dequeuing logic 54, transmit FIFP buffer 55 and processor interface module 57. It includes.

수신 FIFO(51)는 포트(20)의 수신부분으로부터 들어오는 데이터 패킷의 수신에 응답하여 들어오는 데이터 패킷을 임시적으로 저장하도록 구성된 버퍼이다.Receive FIFO 51 is a buffer configured to temporarily store the incoming data packet in response to receiving the incoming data packet from the receive portion of port 20.

MAC 큐잉 로직(52)은 포트 필터(24)에 다양한 기능을 제공한다. MAC 큐잉 로직(52)은 수신 FIFO(51)에서 외부 메모리 인터페이스(56)로 데이터버스(59)를 통해 수신 데이터 패킷을 SSRAM(28)에 기입하는데 제공된다. MAC 큐잉 로직(52)은 또한 수신 데이터 패킷을 처리하는 MAC 큐잉 로직에 응답하여 스위치 모듈(25)로 복수의 상태신호(58)를 제공한다. 상태신호(58)는 수신 데이터 패킷이 에러없이 외부 메모리 인터페이스(56)에 전송되었다는 지시 또는 수신 데이터 패킷의 전송이 완벽하다는 지시를 스위치 모듈(25)에 제공한다. 상태신호(58)는 또한 서브네트워크 라우팅 신호(RNETS_ENABLE) 및 학습 신호(L3IRC_LEARN)를 포함한다.MAC queuing logic 52 provides various functions to port filter 24. MAC queuing logic 52 is provided for writing received data packets to SSRAM 28 via data bus 59 from receive FIFO 51 to external memory interface 56. The MAC queuing logic 52 also provides a plurality of status signals 58 to the switch module 25 in response to the MAC queuing logic that processes the received data packets. The status signal 58 provides the switch module 25 with an indication that the received data packet has been transmitted to the external memory interface 56 without error or that the transmission of the received data packet is complete. The status signal 58 also includes a subnetwork routing signal RNETS_ENABLE and a learning signal L3IRC_LEARN.

MAC 큐잉 로직(52)이 RNETS_ENABLE 신호를 설정하면, 스위치 모듈(25)은 수신 데이터 패킷이 네트워크 스위치(12a)에 직접 연결된 서브네트워크간의 상호 네트워크 트래픽의 부분이라는 것을 통지받는다.When the MAC queuing logic 52 sets the RNETS_ENABLE signal, the switch module 25 is informed that the received data packet is part of mutual network traffic between subnetworks directly connected to the network switch 12a.

MAC 큐잉 로직(52)가 L3IRC_LEARN 신호를 설정하면, 스위치 모듈(25)은 수신 데이터 패킷에 대한 IP-MAC 어드레스 연관을 학습하게 된다.When the MAC queuing logic 52 sets up the L3IRC_LEARN signal, the switch module 25 learns the IP-MAC address association for the received data packet.

메모리(53)는 학습 및 서브네트워크 라우팅 기능을 실행하기 위해 MAC 큐잉 로직(52) 파라미터를 위한 레지스터 공간(53a)을 제공한다. 레지스터 공간(53a)은 MAC 큐잉 로직을 위한 적어도 하나의 SUBNET_ID 및 SUBNET_MASK 레지스터를 제공한다. CPU(26)는 프로세서 인터페이스(pi_mod)(57)를 통해 레지스터를 프로그램한다. SUBNET_ID 레지스터는 각 포트가 속하는 IP 어드레스를 저장하는데 제공된다. 스위치(12a)상의 각 포트는 하나의 SUBNET_ID 레지스터를 갖는다. SUBNET_MASK는 각 포트의 32비트 IP 어드레스 마스크를 저장하는데 제공된다. 스위치(12a)상의 각 포트는 하나의 SUBNET_MASK 마스크 레지스터를 갖는다.Memory 53 provides register space 53a for MAC queuing logic 52 parameters to perform learning and subnetwork routing functions. Register space 53a provides at least one SUBNET_ID and SUBNET_MASK register for MAC queuing logic. The CPU 26 programs the registers through the processor interface (pi_mod) 57. The SUBNET_ID register is provided to store the IP address to which each port belongs. Each port on switch 12a has one SUBNET_ID register. SUBNET_MASK is provided to store the 32-bit IP address mask of each port. Each port on switch 12a has one SUBNET_MASK mask register.

MAC 디큐잉 로직(54)은 SSRAM(28)으로부터 수신 데이터 패킷을 검색하여 스위치 모듈(25)에 의한 처리에 응답하여 데이터 패킷을 적합한 포트에 전달하는데 제공된다.MAC dequeuing logic 54 is provided to retrieve the received data packet from SSRAM 28 and forward the data packet to the appropriate port in response to processing by the switch module 25.

송신 FIFO(55)는 포트(20)에 의한 송신 전에 나가는 데이터 패킷을 위한 버퍼를 제공한다.Transmit FIFO 55 provides a buffer for outgoing data packets before transmission by port 20.

들어오는 데이터 패킷이 포트(20)에서 수신되고 수신 FIFO(51)에 버퍼링된다. MAC 큐잉 로직(52)은 데이터버스(59)를 통해 SSRAM(28)에 저장하기 위해 데이터 패킷을 외부 메모리 인터페이스(56)에 전달한다. 층 3 정보를 사용하여. MAC 큐잉 로직(52)는 IP 헤더 내의 목적지 IP 어드레스와 메모리(53)의 레지스터에 저장된 값을 비교함으로써 수신 데이터 패킷이 상호 서브네트워크 트래픽의 부분인지 여부를 판단한다.Incoming data packets are received at port 20 and buffered at receive FIFO 51. MAC queuing logic 52 delivers the data packet to external memory interface 56 for storage in SSRAM 28 over data bus 59. Using layer 3 information. The MAC queuing logic 52 determines whether the received data packet is part of mutual subnetwork traffic by comparing the destination IP address in the IP header with the value stored in the register of the memory 53.

특별히, 수신 데이터 패킷이 비라우터 포트로부터 수신되면, IP 목적지 어드레스는 모든 다른 포트의 SUBNET_MASK에 대해 마스크된다. 다음 마스크 동작의 결과가 다른 모든 포트의 SUBNET_ID 레지스터에 대해 비교된다. 비교동작의 결과가 성공적이면, MAC 큐잉 로직(52)은 RNENTS_ENABLE 신호를 스위치 모듈(25)에 설정한다.In particular, if a received data packet is received from a non-router port, the IP destination address is masked for SUBNET_MASK of all other ports. The result of the next mask operation is compared against the SUBNET_ID register on all other ports. If the result of the compare operation is successful, the MAC queuing logic 52 sets the RNENTS_ENABLE signal to the switch module 25.

MAC 큐잉 로직(52)은 또한 패킷이 비라우터 포트로부터 도착하였다면 네트워크 스위치(12a)에 직접 연결되는 서브네트워크의 IP 어드레스에 대한 수신 데이터 패킷의 소스 IP-MAC 어드레스 연관을 스위치 모듈(25)이 학습할 필요가 있는지 여부를 판단하도록 구성될 수 있다. 호스트 CPU(26)는 스위치 모듈(25)이 어느 포트가 라우터에 연결되는지를 알 수 있도록 메모리(53)의 레지스터를 프로그램한다.The MAC queuing logic 52 also allows the switch module 25 to learn the source IP-MAC address association of the received data packet to the IP address of the subnetwork that is directly connected to the network switch 12a if the packet arrived from the non-router port. It may be configured to determine whether there is a need to do. The host CPU 26 programs the registers of the memory 53 so that the switch module 25 knows which port is connected to the router.

MAC 큐잉 로직(52)은 또한 포트 식별자 모듈(24)의 MAC 큐잉 로직(52)이 수신 데이터 패킷이 라우터용이고 상호 서브네트워크 트래픽의 부분이라고 판정하면 IP-MAC 연관을 학습하도록 구성될 수 있다.The MAC queuing logic 52 may also be configured to learn the IP-MAC association if the MAC queuing logic 52 of the port identifier module 24 determines that the received data packet is for a router and is part of a mutual subnetwork traffic.

또한 패킷 식별자 모듈(24)의 MAC 큐잉 로직(52)은 수신 데이터 패킷이 라우터용이고 상호 서브네트워크 트래픽의 부분이면 수신 데이터 패킷의 IP-MAC 연관을 학습하도록 구성될 수 있다.The MAC queuing logic 52 of the packet identifier module 24 may also be configured to learn the IP-MAC association of the received data packet if the received data packet is for a router and is part of a mutual subnetwork traffic.

특별히, MAC 큐잉 로직(52)은 수신 데이터 패킷의 MAC 목적지 어드레스와 메모리(53)에 저장된 라우터의 MAC 어드레스를 비교한다. 비교동작의 결과가 성공적이면, 수신 데이터 패킷은 라우터용이다. 이어서, 포트 식별자 모듈(24)의 MAC 큐잉 로직(52)은 스위치 모듈(25)에게 선택적으로 층 2 소스 어드레스 및 연관 층 3 어드레스를 어드레스 테이블(30)에 연관 층 2-층 3 어드레스쌍으로서 저장하도록 알린다.In particular, MAC queuing logic 52 compares the MAC destination address of the received data packet with the MAC address of the router stored in memory 53. If the result of the compare operation is successful, the received data packet is for a router. The MAC queuing logic 52 of the port identifier module 24 then optionally stores the layer 2 source address and associated layer 3 address in the address table 30 as an associated layer two-layer three address pair in the switch module 25. Tell them to.

패킷 식별자 모듈(24)의 MAC 큐잉 로직(52)은 네트워크 스위치(12)에서의 트래픽 흐름 또는 사용자의 선호에 따르는 이러한 기능들 중 어느 것이라도 실행하도록 구성될 수 있다. MAC 큐잉 로직(52)은 사용자에 의해 필요하게 된 여러 다른 기능들을 실행하도록 구성될 수 있다.The MAC queuing logic 52 of the packet identifier module 24 may be configured to perform any of these functions depending on the traffic flow at the network switch 12 or the user's preference. MAC queuing logic 52 may be configured to execute various other functions required by the user.

도 3은 도 2에서 도시한 패킷 식별자 모듈(24)에 의해 실행되는 학습의 플로차트이다. 단계(310)에서, 데이터 패킷이 포트(20)들 중 어느 하나로부터의 포트 식별자 모듈(24)에 수신된다.FIG. 3 is a flowchart of the learning executed by the packet identifier module 24 shown in FIG. In step 310, a data packet is received at the port identifier module 24 from any of the ports 20.

포트 식별자 모듈(24)은 단계(320)에서 수신 데이터 패킷이 비라우터 포트로부터 수신되고 있는지 여부를 판정하도록 구성된다. 호스트 CPU는 어느 포트가 라우터에 연결될 것인지를 프로그램한다.The port identifier module 24 is configured at step 320 to determine whether a received data packet is being received from a non-router port. The host CPU programs which port is connected to the router.

단계(320)에서 수신 데이터 패킷이 비라우터 포트상에 수신되고 있으면, 단계(330)에서, 포트 식별자 모듈(24)의 MAC 큐잉 로직(52)은 학습신호를 어서트(assert)하여 층 2 어드레스 또는 MAC 어드레스 및 연관 층 3 어드레스 또는 IP 어드레스를 연관 층 2-층 3 어드레스로서 메모리(30)의 어드레스 테이블에 저장하도록 스위치 모듈(25)에 알린다.If the received data packet is being received on the non-router port in step 320, then in step 330, the MAC queuing logic 52 of the port identifier module 24 asserts the learning signal to layer 2 address. Or inform the switch module 25 to store the MAC address and associated layer 3 address or IP address as an associated layer two-layer 3 address in an address table of memory 30.

단계(320)에서 수신 데이터 패킷이 라우터 포트로부터 수신되고 있으면, 단계(340)에서, 포트 식별자 모듈(24)의 MAC 큐잉 로직(52)은 스위치 모듈(25)에 학습신호를 디어서트(deassert)한다. 수신 데이터 패킷의 IP-MAC 연관은 학습되지 않는다.If a received data packet is being received from the router port in step 320, then in step 340, the MAC queuing logic 52 of the port identifier module 24 deasserts the learning signal to the switch module 25. )do. The IP-MAC association of the received data packet is not learned.

도 4는 도 2에 도시한 패킷 식별자 모듈(24)에 의해 실행되는 학습의 다른 플로차트이다. 여기서, IP-MAC 연관은 수신 데이터 패킷이 비라우터 포트로부터 수신되고 라우터의 목적지 MAC 어드레스를 갖는 경우에 학습된다. 단계(410)에서, 데이터 패킷은 포트(20)들 중 어느 하나로부터의 포트 식별자 모듈(24)에 수신된다.4 is another flowchart of the learning executed by the packet identifier module 24 shown in FIG. Here, the IP-MAC association is learned when the received data packet is received from the non-router port and has the destination MAC address of the router. At step 410, a data packet is received at the port identifier module 24 from any of the ports 20.

포트 식별자 모듈(24)은 단계(410)에서 수신 데이터 패킷이 비라우터 포트로부터 수신되고 있는지 그리고 데이터 패킷의 MAC 목적지 어드레스가 라우터인지 여부를 판정하도록 구성된다. 호스트 CPU는 어느 포트가 라우터에 연결될 것인지를 프로그램하고, MAC 큐잉 로직(52)은 수신 데이터 패킷의 목적지 MAC 어드레스와 라우터의 MAC 어드레스를 비교한다.The port identifier module 24 is configured at step 410 to determine whether a received data packet is being received from a non-router port and whether the MAC destination address of the data packet is a router. The host CPU programs which port is to be connected to the router, and the MAC queuing logic 52 compares the router's MAC address with the destination MAC address of the received data packet.

단계(420)으로부터 비교결과가 성공적이면, 단계(430)에서 수신 데이터 패킷이 비라우터 포트상에 수신되고 있고 목적지 MAC 어드레스가 라우터이다. 단계(430)에서, 포트 식별자 모듈(24)의 MAC 큐잉 로직(52)은 층 2 소스 어드레스 또는 MAC 소스 어드레스 및 연관 층 3 소스 어드레스 또는 IP 소스 어드레스를 연관 층 2-층 3 어드레스로서 메모리(30)의 어드레스 테이블에 저장하도록 스위치 모듈(25)에 알린다.If the comparison from step 420 is successful, then in step 430 the received data packet is being received on the non-router port and the destination MAC address is a router. In step 430, the MAC queuing logic 52 of the port identifier module 24 stores the layer 2 source address or MAC source address and the associated layer 3 source address or IP source address as the associated layer two-layer three address. Is notified to the switch module 25 to store in the address table.

단계(420)에서 비교가 실패하면, 포트 식별자 모듈(24)은 단계(440)에서 스위치 모듈(25)에 통지를 할 수 없게 된다. 수신 데이터 패킷의 IP-MAC 연관은 학습되지 않는다.If the comparison fails in step 420, the port identifier module 24 may not notify the switch module 25 in step 440. The IP-MAC association of the received data packet is not learned.

도 5는 도 4에 도시한 패킷 식별자 모듈(24)에 의해 실행되는 학습의 또 다른 플로차트이다. 여기서, 수신 데이터 패킷이 상호 서브네트워크 트래픽의 부분이고 목적지 MAC 어드레스가 라우터일 때 IP-MAC 연관이 학습된다. 단계(510)에서, 데이터 패킷은 포트(20)들 중 어느 하나로부터의 포트 식별자 모듈(24)에 수신된다.FIG. 5 is another flowchart of the learning executed by the packet identifier module 24 shown in FIG. Here, the IP-MAC association is learned when the received data packet is part of the mutual subnetwork traffic and the destination MAC address is a router. At step 510, a data packet is received at the port identifier module 24 from any of the ports 20.

포트 식별자 모듈(24)은 단계(510)에서 수신 데이터 패킷이 비라우터 포트로부터 수신되고 있는지를 판정하도록 구성된다. MAC 큐잉 로직(52)은 스위치모듈(25)에서 모든 다른 SUBNET_MASK로 목적지 IP 어드레스를 마스크한다. 다음, 마스크된 결과가 스위치(12a)에서 모든 다른 SUBNET_ID와 비교된다. 또한, MAC 큐잉 로직(52)는 수신 데이터 패킷의 목적지 MAC 어드레스와 라우터의 MAC 어드레스를 비교한다.The port identifier module 24 is configured at step 510 to determine if a received data packet is being received from the non-router port. MAC queuing logic 52 masks the destination IP address with every other SUBNET_MASK in switch module 25. The masked result is then compared with all other SUBNET_IDs at switch 12a. The MAC queuing logic 52 also compares the destination MAC address of the received data packet with the router's MAC address.

모든 비교가 단계(520)에서 성공적이면, 단계(530)에서 포트 식별자 모듈(24)의 MAC 큐잉 로직(52)은 층 2 소스 어드레스 또는 MAC 소스 어드레스 및 연관 층 3 소스 어드레스 또는 IP 소스 어드레스를 연관 층 2-층 3 어드레스로서 메모리(30)의 어드레스 테이블에 저장하도록 스위치 모듈(25)에 알린다.If all comparisons are successful at step 520, then at step 530 the MAC queuing logic 52 of the port identifier module 24 associates the layer 2 source address or MAC source address and the associated layer 3 source address or IP source address. The switch module 25 is informed to store in the address table of the memory 30 as the layer two-layer three address.

단계(520)에서 비교가 실패하면, 포트 식별자 모듈(24)의 MAC 큐잉 로직(52)은 단계(540)에서 스위치 모듈(25)에 통지를 할 수 없게 된다. 수신 데이터 패킷의 IP-MAC 연관은 학습되지 않는다.If the comparison fails in step 520, the MAC queuing logic 52 of the port identifier module 24 may not notify the switch module 25 in step 540. The IP-MAC association of the received data packet is not learned.

개시된 실시예에 의하면, 패킷 식별자 모듈은 수신 데이터 패킷이 라우터로부터 발생하였는지 여부를 판정하도록 구성된다. 패킷 식별자 모듈이 수신 데이터 패킷이 라우터 외의 다른 네트워크 노드로부터 수신된 것으로 식별하면, 스위치 모듈은 선택적으로 데이터 패킷의 층 2 어드레스 및 연관 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 저장한다. 선택된 데이터 패킷의 IP-MAC 연관을 저장함으로써, 네트워크 스위치는 스위치가 스위칭 시 어드레스 테이블을 참조할 때 어드레스 테이블에서 검색시간을 줄일 수 있다. 따라서, 패킷 식별자 모듈은 네트워크 스위치가 데이터 패킷의 차단 없이 100 Mbps 또는 기가비트 링크를 위해 층 3 및 층 2 스위칭 능력을 제공하도록 한다.According to the disclosed embodiment, the packet identifier module is configured to determine whether a received data packet originated from a router. If the packet identifier module identifies that the received data packet was received from a network node other than the router, the switch module optionally stores the layer 2 address and associated layer 3 address of the data packet as an associated layer two-layer three address pair in an address table. do. By storing the IP-MAC association of the selected data packet, the network switch can reduce the search time in the address table when the switch references the address table when switching. Thus, the packet identifier module allows the network switch to provide Layer 3 and Layer 2 switching capabilities for 100 Mbps or Gigabit links without blocking of data packets.

본 발명은 가장 바람직한 실시예를 설명한 것이나, 이에 한정되는 것은 아니며, 청구항의 사상 및 범위 내에 포함되는 다양한 수정 및 균등물을 포함한다.The present invention has been described in terms of the most preferred embodiments, but is not limited thereto and includes various modifications and equivalents included within the spirit and scope of the claims.

Claims (14)

네트워크 스위치의 한 포트에 의해 데이터 패킷을 수신하는 단계와,Receiving a data packet by one port of the network switch, 상기 포트가 상기 데이터 패킷을 라우터로부터 수신하였는지 여부를 판정하는 단계와,Determining whether the port has received the data packet from a router; 상기 포트가 상기 라우터 이외의 다른 네트워크 노드로부터 상기 데이터 패킷을 수신하였다는 판정에 기초하여 상기 데이터 패킷으로부터의 층 2 어드레스 및 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 선택적으로 저장하는 단계를 포함하는 것을 특징으로 하는 네트워크 스위치에서의 방법.Selectively storing layer 2 addresses and layer 3 addresses from the data packets as associated layer two-layer three address pairs in an address table based on a determination that the port has received the data packet from a network node other than the router. And at the network switch. 제 1항에 있어서, 상기 선택적 저장단계는 상기 포트가 라우터 이외의 다른 네트워크 노드로부터 상기 데이터 패킷을 수신하였다는 판정에 기초하고 상기 데이터 패킷 내 목적지 층 2 어드레스가 라우터를 특정한다는 판정에 응답하여 상기 연관 층 2-층 3 어드레스쌍으로서 층 2 어드레스 및 연관 층 3 어드레스를 저장하는 것을 포함하는 것을 특징으로 하는 네트워크 스위치에서의 방법.2. The method of claim 1, wherein the selectively storing step is based on a determination that the port has received the data packet from a network node other than a router and in response to determining that a destination layer 2 address in the data packet specifies a router. Storing a layer 2 address and an associated layer 3 address as an associative layer two-layer three address pair. 제 2항에 있어서, 상기 층 2 어드레스 및 연관 층 3 어드레스는 소스 어드레스인 것을 특징으로 하는 네트워크 스위치에서의 방법.3. The method of claim 2, wherein the layer 2 address and associated layer 3 address are source addresses. 제 1항에 있어서, 상기 네트워크 스위치는 제 1서브네트워크 및 제 2서브네트워크 각각에 연결된 제 2포트 및 제 3포트를 포함하는 것을 특징으로 하는 네트워크 스위치에서의 방법.The method of claim 1, wherein the network switch comprises a second port and a third port connected to each of the first subnetwork and the second subnetwork. 제 4항에 있어서, 상기 데이터 패킷이 상기 제 2포트와 상기 제 3포트간의 데이터 패킷 전송을 특정하는 어드레스 정보를 포함하는지 여부를 판정하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 스위치에서의 방법.5. The method of claim 4, further comprising determining whether the data packet includes address information specifying data packet transmission between the second port and the third port. 제 5항에 있어서, 상기 선택적 저장단계는 상기 포트가 라우터 이외의 다른 네트워크 노드로부터 상기 데이터 패킷을 수신하였다는 판정에 기초하고 상기 데이터 패킷이 상기 제 2포트와 상기 제 3포트간의 데이터 패킷 전송을 특정하는 어드레스 정보를 포함한다는 것에 응답하여 상기 연관 층 2-층 3 어드레스쌍으로서 층 2 어드레스 및 연관 층 3 어드레스를 저장하는 것을 포함하는 것을 특징으로 하는 네트워크 스위치에서의 방법.6. The method of claim 5, wherein the selectively storing step is based on a determination that the port has received the data packet from a network node other than a router and the data packet is configured to transfer data packets between the second port and the third port. Storing a layer 2 address and an associated layer 3 address as said associative layer two-layer three address pair in response to including address information specifying. 제 2항에 있어서, 상기 네트워크 스위치의 포트 식별자 모듈에 의해 상기 데이터 패킷이 제 2포트와 제 3포트간의 데이터 패킷 전송을 특정하는 어드레스 정보를 포함한다는 것을 판정하는 단계를 더 포함하고, 상기 제 2포트 및 상기 제 3포트는 각각 제 1 및 제 2서브네트워크에 연결된 것을 특징으로 하는 네트워크 스위치에서의 방법.3. The method of claim 2, further comprising determining, by the port identifier module of the network switch, that the data packet includes address information specifying a data packet transmission between a second port and a third port. And a third port connected to the first and second sub-networks, respectively. 복수의 데이터 패킷을 송수신하는 복수의 포트-상기 복수의 포트의 한 포트는 라우터에 연결된다-와,A plurality of ports for transmitting and receiving a plurality of data packets, one port of the plurality of ports being connected to a router; 수신 데이터 패킷이 라우터로부터 수신되는지 여부를 판정하도록 구성된 패킷 식별자 모듈과,A packet identifier module configured to determine whether a received data packet is received from a router; 상기 라우터 이외의 다른 네트워크 노드로부터 수신되고 있는 수신 데이터 패킷에 기초하여 상기 데이터 패킷으로부터의 층 2 어드레스 및 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 어드레스 테이블에 선택적으로 저장하도록 구성된 스위치 모듈을 포함하는 것을 특징으로 하는 네트워크 스위치.A switch module configured to selectively store layer 2 addresses and layer 3 addresses from the data packets as associated layer two-layer three address pairs in an address table based on received data packets being received from a network node other than the router. Network switch comprising a. 제 8항에 있어서, 상기 패킷 식별자 모듈은 상기 수신 데이터 패킷이 상기 라우터의 목적지 어드레스를 특정하는 어드레스 정보를 포함하는지 여부를 판정하도록 구성되고, 상기 스위치 모듈은 네트워크 노드로부터 수신되고 있는 수신 데이터 패킷에 기초하고 상기 라우터의 목적지 어드레스를 포함하는 어드레스 정보에 응답하여 상기 데이터 패킷으로부터의 층 2 어드레스 및 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 선택적으로 저장하도록 구성된 것을 특징으로 하는 네트워크 스위치.9. The apparatus of claim 8, wherein the packet identifier module is configured to determine whether the received data packet includes address information specifying a destination address of the router, and wherein the switch module is configured to receive data packet being received from a network node. And selectively store layer 2 addresses and layer 3 addresses from the data packet as associative layer two-layer three address pairs in response to address information based on the address information including the destination address of the router. 제 8항에 있어서, 상기 층 2 어드레스 및 연관 층 3 어드레스는 소스 어드레스인 것을 특징으로 하는 네트워크 스위치.9. The network switch of claim 8, wherein the layer 2 address and the associated layer 3 address are source addresses. 제 8항에 있어서, 상기 복수의 포트의 제 2포트는 제 1서브네트워크에 연결되고, 상기 복수의 포트의 제 3포트는 제 2서브네트워크에 연결되고, 상기 패킷 식별자 모듈은 상기 수신 데이터 패킷이 상기 제 1서브네트워크와 상기 제 2서브네트워크간의 수신 데이터 패킷의 전송을 특정하는 어드레스 정보를 포함하는지 여부를 판정하도록 구성된 것을 특징으로 하는 네트워크 스위치.9. The method of claim 8, wherein the second port of the plurality of ports is connected to a first subnetwork, the third port of the plurality of ports is connected to a second subnetwork, and the packet identifier module is configured to receive the received data packet. And determine whether the address information specifying the transmission of the received data packet between the first sub-network and the second sub-network is included. 제 11항에 있어서, 상기 스위치 모듈은 네트워크 노드로부터 수신되고 있는 수신 데이터 패킷에 기초하고 상기 제 1서브네트워크와 상기 제 2서브네트워크간의 수신 데이터 패킷의 전송을 특정하는 어드레스 정보에 응답하여 상기 데이터 패킷의 층 2 어드레스 및 층 3 어드레스를 연관 층 2-층 3 어드레스쌍으로서 선택적으로 저장하도록 구성된 것을 특징으로 하는 네트워크 스위치.12. The apparatus of claim 11, wherein the switch module is configured to receive the data packet in response to address information that is based on a received data packet being received from a network node and specifies the transmission of the received data packet between the first and second sub-networks. Selectively store layer 2 and layer 3 addresses of the network as associated layer two-layer three address pairs. 제 8항에 있어서, 제 1서브네트워크에 연결된 상기 복수의 포트의 제 2포트와, 제 2서브네트워크에 연결된 상기 복수의 포트의 제 3포트를 더 포함하고, 상기 패킷 식별자 모듈은 상기 수신 데이터 패킷이 상기 제 1서브네트워크와 상기 제 2서브네트워크간의 수신 데이터 패킷의 전송을 특정하는 어드레스 정보를 포함하는지 여부를 판정하도록 구성된 것을 특징으로 하는 네트워크 스위치.9. The apparatus of claim 8, further comprising a second port of the plurality of ports connected to a first subnetwork, and a third port of the plurality of ports connected to a second subnetwork, wherein the packet identifier module further comprises the received data packet. And determining whether or not to include address information specifying the transmission of the received data packet between the first and second sub-networks. 제 8항에 있어서, 상기 복수의 포트의 각 포트는 상기 패킷 식별자 모듈을 포함하도록 구성된 것을 특징으로 하는 네트워크 스위치.9. The network switch of claim 8, wherein each port of the plurality of ports is configured to include the packet identifier module.
KR1020027013752A 2000-04-13 2001-03-23 Programmable layer 3 address self-learning scheme in a network switch KR20020091203A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US54861200A 2000-04-13 2000-04-13
US09/548,612 2000-04-13
PCT/US2001/009373 WO2001080493A2 (en) 2000-04-13 2001-03-23 Method and device for layer 3 address learning

Publications (1)

Publication Number Publication Date
KR20020091203A true KR20020091203A (en) 2002-12-05

Family

ID=24189628

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027013752A KR20020091203A (en) 2000-04-13 2001-03-23 Programmable layer 3 address self-learning scheme in a network switch

Country Status (5)

Country Link
EP (1) EP1273139A2 (en)
JP (1) JP2004515088A (en)
KR (1) KR20020091203A (en)
CN (1) CN1456004A (en)
WO (1) WO2001080493A2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2858502B1 (en) * 2003-08-01 2006-02-24 Cit Alcatel DEVICE AND METHOD FOR PROCESSING NETWORK TRAFFIC DATA FOR SELF CONFIGURATION OF A ROUTER
CN1304994C (en) * 2003-08-27 2007-03-14 四川南山之桥微电子有限公司 Exchanger and router chip drawn by running chip general stardards and core logic and method
WO2005067532A2 (en) * 2004-01-14 2005-07-28 Riverstone Networks, Inc. Managing processing utilization in a network node
JP4186971B2 (en) 2005-09-01 2008-11-26 富士通株式会社 Packet transfer device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256314B1 (en) * 1998-08-11 2001-07-03 Avaya Technology Corp. Apparatus and methods for routerless layer 3 forwarding in a network

Also Published As

Publication number Publication date
WO2001080493A3 (en) 2002-05-16
JP2004515088A (en) 2004-05-20
EP1273139A2 (en) 2003-01-08
CN1456004A (en) 2003-11-12
WO2001080493A2 (en) 2001-10-25

Similar Documents

Publication Publication Date Title
US6574240B1 (en) Apparatus and method for implementing distributed layer 3 learning in a network switch
US6798788B1 (en) Arrangement determining policies for layer 3 frame fragments in a network switch
US6934260B1 (en) Arrangement for controlling learning of layer 3 network addresses in a network switch
US7079537B1 (en) Layer 3 switching logic architecture in an integrated network switch
US6950434B1 (en) Arrangement for searching packet policies using multi-key hash searches in a network switch
EP1002401B1 (en) Multi-layer destributed network element
US6981054B1 (en) Flow control arrangement in a network switch based on priority traffic
US6674769B1 (en) Simultaneous searching of layer 3 policy filter and policy cache in a network switch port
US6571291B1 (en) Apparatus and method for validating and updating an IP checksum in a network switching system
JP4076586B2 (en) Systems and methods for multilayer network elements
US6088356A (en) System and method for a multi-layer network element
US6094435A (en) System and method for a quality of service in a multi-layer network element
US8018852B2 (en) Equal-cost source-resolved routing system and method
US6744783B1 (en) Frame identifier for identifying layer 2 data packet types for upper layer packet classification in a network switch port
US7002955B1 (en) Selective address table aging in a network switch based on application state determined from a received data packet
US7099315B2 (en) Method and apparatus for enabling L3 switching by a network switch in a stacking environment
JP2000156713A (en) Transfer/filtering method of content base in network- switching device
US7502366B1 (en) Arrangement in a network switch for prioritizing data frames based on user-defined frame attributes
US6980547B1 (en) Distributed switch/router silicon engine
US6807183B1 (en) Arrangement for reading a prescribed location of a FIFO buffer in a network switch port
US6807176B1 (en) Arrangement for switching data packets in a network switch based on subnet identifier
US6697380B1 (en) Multiple key lookup arrangement for a shared switching logic address table in a network switch
WO2000056013A2 (en) Method for avoiding out-of-ordering of frames in a network switch
KR20030036700A (en) Apparatus and method for identifying data packet at wire rate on a network switch port
US6728246B1 (en) Arrangement for reducing layer 3 header data supplied to switching logic on a network switch

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid