KR100694231B1 - 패킷 처리 장치 및 그 방법 - Google Patents

패킷 처리 장치 및 그 방법 Download PDF

Info

Publication number
KR100694231B1
KR100694231B1 KR1020060004588A KR20060004588A KR100694231B1 KR 100694231 B1 KR100694231 B1 KR 100694231B1 KR 1020060004588 A KR1020060004588 A KR 1020060004588A KR 20060004588 A KR20060004588 A KR 20060004588A KR 100694231 B1 KR100694231 B1 KR 100694231B1
Authority
KR
South Korea
Prior art keywords
packet
destination host
address
host
received
Prior art date
Application number
KR1020060004588A
Other languages
English (en)
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 삼성전자주식회사
Priority to KR1020060004588A priority Critical patent/KR100694231B1/ko
Priority to US11/523,050 priority patent/US7864782B2/en
Application granted granted Critical
Publication of KR100694231B1 publication Critical patent/KR100694231B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/26Route discovery packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • 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
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]

Landscapes

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

Abstract

본 발명에 따른 이더넷 스위칭 시스템에서의 패킷 처리 장치는, 이더넷 스위칭 칩의 레이어 3 테이블의 업데이트가 완료되전까지 인입되는 패킷을 CPU로 트랩시키지 않고 가상의 더미 포트(Dummy Port)로 스위칭하여 폐기시킴으로써 CPU의 부하를 최소화시킨 후 ARP 프로토콜을 구동할 수 있도록 한 것으로, 본 발명에 따르면, 임의의 호스트로부터 존재하지 않는 IP 어드레스를 목적지로 하는 패킷이 수신되면, 목적지 IP 어드레스로 목적지 호스트의 라우팅 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 전송하고, 상기 ARP 요구 패킷에 상응하는 ARP 응답 패킷이 수신되어 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보를 획득할 때 까지 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 가상으로 설정된 목적지 호스트 라우팅 정보를 이용하여 스위칭 처리하는 패킷 처리 장치를 포함할 수 있다.

Description

패킷 처리 장치 및 그 방법{APPARATUS AND MEHTOD FOR PROCESSING PACKET}
도 1은 종래 기술에 따른 이더넷 스위치 기반으로 레이어 2 및 레이어 3(Layer2/3) 스위칭 기능을 제공하는 네트워크 시스템에서의 패킷 처리 장치에 대한 구성 및 패킷 처리 절차를 설명하기 위한 도면.
도 2는 본 발명에 따른 이더넷 스위치 기반으로 레이어 2 및 레이어 3(Layer2/3) 스위칭 기능을 제공하는 네트워크 시스템에서의 패킷 처리 장치에 대한 구성 및 패킷 처리 절차를 설명하기 위한 도면.
도 3은 도 2에 도시된 패킷 처리 장치를 이용한 패킷 처리 방법에 대한 동작 플로우챠트를 나타낸 도면.
*도면의 주요 부분에 대한 부호의 설명*
100 : 이더넷 스위치 110 : CPU
120 : 이더넷 스위칭 칩 122, 123 : 호스트 연결 포트
124 : 더미 포트
본 발명은 패킷 처리 장치 및 그 방법에 관한 것으로서, 특히 이더넷 스위칭 칩을 기반으로 레이어 2, 3(Layer 2, 3) 스위칭 기능을 제공하는 네트워크 시스템에서 이더넷 스위칭 칩을 이용한 IP 스위칭을 사용하기 위해 필요한 넥스트 홉(Next Hop)의 IP, MAC 어드레스 정보를 패킷의 과부하 상황에서도 능동적으로 업데이트하여 패킷을 목적지 호스트로 전송할 수 있도록 한 이더넷 스위칭 시스템에서의 패킷 처리 장치 및 그 방법에 관한 것이다.
일반적으로 이더넷 스위칭 칩 기반의 레이어 2(MAC 기반)와 레이어 3(IP 기반) 스위칭 장비에서 이더넷 스위칭 기반의 레이어 3 스위치(IP Routing) 기능을 사용하기 위해서는 소스(Source) 와 목적지(Destination) 호스트의 IP 어드레스 및 MAC 어드레스가 반드시 필요하게 된다.
이하, 첨부한 도 1을 참조하여 상기한 소스와 목적지 호스트의 IP 어드레스 및 MAC 어드레스 정보를 ARP(Address Resolution Protocol) 프로토콜을 이용하여 획득하는 동작에 대하여 설명해 보기로 하자.
도 1은 종래 기술에 따른 이더넷 스위치 기반으로 레이어 2 및 레이어 3(Layer2/3) 스위칭 기능을 제공하는 네트워크 시스템에서의 패킷 포워딩 장치에 대한 구성 및 패킷 포워딩 절차를 설명하기 위한 도면으로서, 도 1에 도시된 호스트 A(20)에서 호스트 B(30)를 목적지로 하는 패킷을 CPU(11)의 관여없이 이더넷 스위치 칩(12)의 기능만으로 전송하고자 하는 경우를 일예로 하여 설명해 보기로 한 다.
호스트 A(20)는 먼저 자신의 게이트웨이인 10. 10. 10. 1의 MAC 어드레스정보를 획득하기 위해 ARP 패킷을 브로드캐스팅 방식을 통해 이더넷 스위치(10)의 이더넷 스위칭 칩(12)을 통해 CPU(11)로 전송한다.
이더넷 스위치(10)의 CPU(11)는 이에 대한 응답으로 이더넷 스위치(10)의 MAC 어드레스 00:00:00:00:00:01 정보를 이더넷 스위칭 칩(12)을 통해 호스트 A(20)로 전송한다. 이때, CPU(12)는 호스트 A(20)의 IP, MAC 어드레스 정보를 이더넷 스위칭 칩(12)내의 레이어 3 테이블(13)에 업데이트하게 된다.
호스트 A(20)는 상기한 방법을 통해 게이트웨이 MAC 어드레스 정보를 획득한 후, 목적지 호스트인 호스트 B(30)를 목적지 IP로 하는 패킷을 이더넷 스위치(100의 이더넷 스위칭 칩(12)으로 전송한다. 이때 전송되는 패킷의 전송 포맷은 아래의 표 1과 같다.
Destination MAC Address Destination IP Address Source MAC Address Source IP Address
00:00:00:00:00:01 20. 20. 20. 2 00:00:00:00:00:02 10. 10. 10. 1
호스트 A(20)에서 호스트 B(30)를 목적지로 하는 패킷이 이더넷 스위치(10)의 이더넷 스위칭 칩(12)으로 전달되면, 이더넷 스위칭 칩(12)은 스위칭 메커니즘에 의해 전달된 패킷의 목적지 IP 주소가 자신의 레이어 3 테이블(13)에 존재하는지를 확인한다.
확인 결과, 레이어 3 테이블에 목적지 호스트 B(30)의 IP 주소가 존재하는 경우에는 해당 IP 주소로 즉, 호스트 B(30)가 연결되어 있는 포트로 수신된 패킷을 전송한다.
그러나, 레이어 3 테이블(13)에 목적지 호스트인 호스트 B(30)의 IP 주소가 존재하지 않는 경우, 호스트 MAC 어드레스 정보를 획득하기 위해 호스트 A(20)로부터 수신된 패킷을 CPU(11)로 트랩(Trap)시킨다.
CPU(11)는 트랩된 패킷의 목적지 호스트 B(30)의 IP 어드레스가 자신의 서브넷(Subnet)에 포함되는지 판단하고, 판단 결과 목적지 호스트 B(30)의 IP 어드레스가 자신의 서브넷에 포함된 IP 어드레스인 경우, 해당 IP 어드레스의 MAC 어드레스를 알고 있는지 판단하게 된다.
만약, 트랩된 패킷의 목적지 호스트 B(30)의 IP 어드레스가 자신의 서브넷에 포함되고, 호스트 B(30)의 MAC 어드레스를 알고 있지 않는 경우, 해당 IP 주소의 MAC 어드레스를 획득하기 위해 ARP 패킷을 해당 IP 어드레스로 전송한다.
CPU(11)가 호스트 B(30)의 MAC 어드레스를 획득하기 위하여 APR 패킷을 전송한 후, 호스트 B(30)가 존재한다면 ARP 패킷을 수신한 후 이에 대한 응답으로 MAC 어드레스 정보를 이더넷 스위칭 칩(12)을 통해 CPU(11)로 전송하고, 만약 호스트 B(30)가 존재하지 않는 경우, CPU(11)는 호스트 B(30)의 MAC 어드레스를 획득할 때까지 주기적으로 ARP를 호스트 B(30)로 전송하게 된다.
이와 같이 주기적으로 ARP를 전송한 결과 호스트 B(30)로부터 응답이 있는 경우 CPU(11)는 호스트 B(30)의 IP 어드레스 및 획득한 MAC 어드레스정보를 이더넷 스위칭 칩(12)의 레이어 3 테이블(13)에 업데이트하게 된다.
이와 같이 목적지 호스트인 호스트 B(30)의 레이어 3 정보 즉, 호스트 B(30)의 IP 어드레스 및 MAC 어드레스 정보가 레이어 3 테이블(13)에 업데이트되면, 호스트 A(20)에서 호스트 B(30)로 전송되어질 패킷들은 CPU(11)의 관여없이 이더넷 스위칭 칩(12)에 의해 하드웨어적으로 스위칭이 이루어져 호스트 B(30)로 패킷이 전송되어 지게 되는 것이다.
그러나, 이와 같이 이더넷 스위칭 칩의 레이어 3 테이블을 이용하여 스위칭이 이루어지기 위해서는 이더넷 스위칭 칩의 레이어 3 테이블에 목적지 호스트의 IP 및 MAC 어드레스 정보가 CPU에 의해 업데이트 되어야 한다.
이러한 목적지 호스트의 IP 및 MAC 어드레스정보가 업데이트 되기 위해서는 이더넷 스위칭 칩은 레이어 3 테이블에 존재하지 않는 IP 주소를 목적지로 하는 패킷이 소스 호스트로부터 인입되는 경우, 해당 패킷을 CPU로 트랩시킴으로써 다음과 같은 문제점들이 발생하게 된다.
첫 째, 이더넷 스위칭 칩에 의한 패킷 트랩은 해당 레이어 3 테이블이 업데이트될 때까지 계속 이루어지기 때문에 CPU쪽으로 패킷의 과부가 발생되어 CPU가 ARP 패킷을 전송할 수 없는 상황이 발생할 수 있다. 이러한 경우 이더넷 스위칭 칩의 대역폭(Bandwidth)이 클수록 더욱 심각해 질 수 있는 것이다.
둘 째, 만약, 소스 호스트로부터 레이어 3 테이블에 존재하지 않는 IP 어드레스를 목적지로 하는 패킷이 인입되는 경우 CPU로부터 목적지 호스트로의 ARP 패킷 전송과정은 계속 될 것이며, 이로 인해 CPU 및 네트워크 대역폭의 낭비를 초래하게 되는 문제점이 발생하게 된다.
세 째, ARP 프로토콜을 통한 레이어 3 테이블의 업데이트 과정은 상기한 문제점 때문에 다른 패킷들 보다 우선순위를 가지는 것이 일반적인 악의적으로 존재하지 않는 넓은 IP 대역폭을 목적지로 하는 패킷이 인입될 경우 CPU에 의한 다량의 ARP 패킷이 계속적으로 발생되어 CPU 및 네트워크 대역폭의 낭비를 초래하고 네트워크 보안이 취약해지는 문제점이 발생할 수 있는 것이다.
결국, CPU에 의한 ARP 프로토콜을 구동하기 위해서는 해당하는 IP 어드레스 마다 한 개의 패킷에 대해서만 CPU로 트랩시키면 되지만, 이와 같은 기능이 이더넷 스위칭 칩에서 지원되지 않기 때문에 가능한 작게 CPU로 패킷을 트랩시키는 방법이 필요한 것이다.
따라서, 본 발명은, 상기한 종래 기술에 따른 문제점을 해결하기 위한 것으로, 본 발명의 목적은, 이더넷 스위칭 칩의 레이어 3 테이블의 업데이트가 완료되기 전까지 인입되는 패킷을 CPU로 트랩시키지 않고 가상의 더미 포트(Dummy Port)로 스위칭하여 폐기시킴으로써 CPU의 부하를 최소화시킨 후 ARP 프로토콜을 구동할 수 있도록 한 이더넷 스위칭 시스템에서의 패킷 처리 장치 및 그 방법을 제공함에 있다.
상기한 목적을 달성하기 위한 본 발명에 따른 이더넷 스위칭 시스템에서의 패킷 처리 방법의 일 측면에 따르면, 임의의 호스트로부터 전송되는 패킷의 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보가 라우팅 테이블에 존재하는지 않는 경우, CPU는 목적지 호스트의 IP 어드레스에 상응하는 가상의 라우팅 정보를 상기 라우팅 테이블에 설정하고, 목적지 호스트의 라우팅 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 단계; 상기 ARP 요구 패킷에 상응하는 ARP 응답 패킷이 수신되어 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보를 획득할 때까지 이더넷 스위칭 칩은 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 상기 라우팅 테이블에 설정한 가상의 라우팅 정보를 이용하여 스위칭 처리하는 단계를 포함할 수 있다.
상기 라우팅 테이블은, 레이어 3 라우팅 테이블이고, 상기 라우팅 테이블에 저장되는 가상의 라우팅 정보는, 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스 정보, 더미 포트 정보중 적어도 하나를 포함한다.
상기 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 단계에서, ARP 요구 패킷의 전송은 설정된 횟수만큼 설정된 주기로 목적지 호스트로 전송한다.
상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되지 않는 경우, 상기 라우팅 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하고, 상기 임의의 호스트로부터 패킷이 수신되면 새로운 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 재 설정한 후, 설정된 가상의 라우팅 정보를 이용하여 목적지 호스트의 실제 라 우팅 정보를 획득하기 위하여 ARP 요구 패킷을 목적지 호스트로 전송하는 단계를 포함한다.
상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되는 경우, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보로 상기 라우팅 테이블을 업데이트 하는 단계를 포함한다.
상기 라우팅 테이블을 업데이트한 후, 소스 호스트로부터 수신되는 동일 목적지 호스트의 IP 어드레스로 전송될 패킷이 수신되는 경우, 수신된 패킷을 라우팅 테이블에 업데이트된 MAC 어드레스 정보에 대한 포트로 스위칭하여 목적지 호스트로 전송하는 단계를 더 포함한다.
또한, 라우팅 테이블을 포함하는 이더넷 스위칭 칩과, CPU를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법의 일 측면에 따르면, 상기 이더넷 스위칭 칩은, 임의의 호스트로부터 전송되는 패킷의 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보가 자신의 라우팅 테이블에 존재하는지 않는 경우, 수신된 패킷을 상기 CPU로 트랩시키는 단계; 상기 CPU는, 상기 이더넷 스위칭 칩에서 트랩된 패킷의 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스 및 더미 포트 정보를 상기 이더넷 스위칭 칩의 라우팅 테이블에 설정하고, 목적지 호스트의 MAC 어드레스 및 포트 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 단계; ARP 요구 패킷에 상응하는 ARP 응답 패킷이 수신되어 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보를 획득할 때 까지 이더넷 스위칭 칩은 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 상기 CPU로 트랩시키지 않고 라우팅 테이블에 설정한 가상의 더미 포트로 스위칭 처리하는 단계를 포함할 수 있다.
상기 CPU에서 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 단계에서, ARP 요구 패킷의 전송은 설정된 횟수만큼 설정된 주기로 목적지 호스트로 전송한다.
상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 ARP 응답 패킷이 수신되지 않는 경우, CPU는 상기 이더넷 스위칭 칩의 라우팅 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하고, 상기 임의의 호스트로부터 패킷이 수신되면 새로운 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 상기 라우팅 테이블에 재 설정한 후, 설정된 가상의 라우팅 정보를 이용하여 목적지 호스트의 실제 라우팅 정보를 획득하기 위한 ARP 요구 패킷을 목적지 호스트로 전송하는 단계를 포함한다.
상기 CPU는 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되는 경우, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보를 상기 라우팅 테이블에 업데이트 하는 단계를 포함한다.
상기 CPU에서 라우팅 테이블을 업데이트된 후, 상기 이더넷 스위칭 칩은, 소스 호스트로부터 수신되는 동일 목적지 호스트의 IP 어드레스로 전송될 패킷을 라우팅 테이블에 업데이트된 목적지 호스트의 MAC 어드레스 정보에 대한 포트로 스위 칭하여 목적지 호스트로 전송하는 단계를 더 포함한다.
한편, 본 발명에 따른 이더넷 스위칭 시스템의 일 측면에 따르면, 임의의 호스트로부터 존재하지 않는 IP 어드레스를 목적지로 하는 패킷이 수신되면, 목적지 IP 어드레스로 목적지 호스트의 라우팅 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 전송하고, 상기 ARP 요구 패킷에 상응하는 ARP 응답 패킷이 수신되어 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보를 획득할 때 까지 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 가상으로 설정된 목적지 호스트 라우팅 정보를 이용하여 스위칭 처리하는 패킷 처리 장치를 포함할 수 있다.
상기 패킷 처리 장치는, 적어도 하나 이상의 호스트의 IP 어드레스, MAC 어드레스, 포트 정보 중 적어도 하나의 정보 및 존재하지 않는 목적지 호스트 IP 어드레스에 상응하는 가상의 MAC 어드레스 및 더미 포트 정보가 설정된 라우팅 테이블을 포함한다.
상기 패킷 처리 장치에서의 ARP 요구 패킷의 전송은 설정된 횟수만큼 설정된 주기로 목적지 호스트로 전송한다.
상기 패킷 처리 장치는, 상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되지 않는 경우, 상기 라우팅 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하고, 상기 임의의 소스 호스트로부터 패킷이 수신되면 새로운 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 재 설정한 후, 설정된 가상의 라우팅 정보를 이용하여 목적지 호스트의 실제 라우팅 정보를 획득하기 위하여 ARP 요구 패킷을 목적지 호스트로 전송한다.
상기 패킷 처리 장치는, ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되는 경우, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보로 상기 라우팅 테이블을 업데이트 한다.
상기 패킷 처리 장치는, 상기 라우팅 테이블을 업데이트한 후, 소스 호스트로부터 수신되는 동일 목적지 호스트의 IP 어드레스로 전송될 패킷이 수신되는 경우, 수신된 패킷을 라우팅 테이블에 업데이트된 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 정보에 대한 연결 포트로 스위칭하여 목적지 호스트로 전송한다.
또한, 본 발명에 따른 이더넷 스위칭 시스템의 패킷 처리 장치의 일 측면에 따르면, 임의의 호스트로부터 전송되는 패킷의 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보가 자신의 라우팅 테이블에 존재하는지 않는 경우, 수신된 패킷을 트랩시키는 이더넷 스위칭 처리부; 상기 이더넷 스위칭 처리부에서 트랩된 패킷의 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스 및 더미 포트 정보를 상기 이더넷 스위칭 처리부의 라우팅 테이블에 설정하고, 목적지 호스트의 MAC 어드레스 및 포트 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 ARP 처리부를 포함하되; 상기 이더넷 스위칭 처리부는, 상기 CPU에서 ARP 요구 패킷 상응하는 ARP 응답 패킷이 수신 되어 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보를 획득할 때 까지 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 상기 CPU로 트랩시키지 않고 상기 라우팅 테이블에 설정한 가상의 더미 포트로 스위칭 처리한다.
이하, 본 발명에 따른 패킷 처리 장치 및 그 방법에 대한 바람직한 실시예를 첨부한 도면을 참조하여 상세하게 설명해 보기로 하자.
도 2는 본 발명에 따른 이더넷 스위치 기반으로 레이어 2 및 레이어 3(Layer2/3) 스위칭 기능을 제공하는 네트워크 시스템에서의 패킷 처리 장치에 대한 구성 및 패킷 포워딩 절차를 설명하기 위한 도면이다.
도 2에 도시된 바와 같이, 본 발명에 따른 패킷 처리 장치는, 이더넷 스위치(100) 및 다수의 호스트(200,, 300)를 포함하고, 이더넷 스위치(100)는 CPU(100), 이더넷 스위칭 칩(120)을 포함하고, 이더넷 스위칭 칩(120)은, 레이어 3 테이블(121), 각 호스트(200, 300)와 각각 연결되어 패킷을 송수신하는 포트들(122, 123) 및 가상의 더미 포트(Dummy Port)를 포함한다.
이더넷 스위칭 칩(120)은 임의의 호스트로부터 패킷이 수신되면, 목적지 IP 어드레스에 대응되는 MAC 어드레스가 존재하는지 레이어 3 테이블(121)을 검색하여 존재하는 경우 해당 패킷을 목적지 호스트와 연결된 포트로 스위칭 처리하여 목적지 호스트로 전송하게 된다.
그러나, 목적지 호스트의 IP 어드레스에 대응하는 MAC 어드레스가 존재하지 않는 경우에는 수신된 패킷을 CPU(110)로 트랩시킨다.
그리고 이더넷 스위칭 칩(120)은 CPU(110)에서 ARP 전송 프로토콜을 통해 목적지 호스트의 MAC 어드레스를 획득할 때까지 소스 호스트로부터 수신되는 패킷들은 CPU(110)로 트랩시키지 않고 가상의 더미 포트로 스위칭하여 폐기 처리하게 된다.
그리고, CPU(110)에서 목적지 호스트의 MAC 어드레스를 획득하게 되는 시점부터 소스 호스트로부터 수신되는 패킷을 해당 목적지 호스트와 연결된 포트로 스위칭하여 목적지 호스트로 패킷을 전송처리하게 되는 것이다.
이더넷 스위칭 칩(120)의 더미 포트(124)는, 실제 물리적으로 존재하는 포트는 아니지만, 이더넷 스위칭 칩내에서 번호로만 존재하는 포트이다. 이 더미 포트는 하드웨어적으로 접근 가능한 유효 포트 번호가 부여되어 있지만 패킷을 더미 포트로 스위칭시킬 경우 모두 폐기되며 이 더미 포트로 패킷을 수신할 수는 없는 가상의 포트인 것이다.
이더넷 스위칭 칩(120)의 레이어 3 테이블(121)은, 호스들의 IP 어드레스, MAC 어드레스 및 포트 정보를 저장하고 있으며, 테이블내에 목적지 호스트의 IP 어드레스에 대응하는 MAC 어드레스가 존재하지 않는 경우 CPU(110)의 제어에 따라 목적지 IP 어드레스에 대응되도록 가상의 MAC 어드레스와 연결된 포트가 할당되면 해당 가상의 MAC 어드레스 및 더미 포트 번호 정보를 해당 목적지 호스트 IP 어드레스에 대응되도록 저장하게 된다.
이더넷 스위치(100)의 CPU(110)는 이더넷 스위칭 칩(120)으로부터 트랩된 패킷의 호스트 IP 어드레스에 대응하는 MAC 어드레스가 존재하는지 레이어 3 테이블 을 검색하여 확인하고, 존재하지 않는 경우, 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스를 가상으로 설정하고, 설정된 가상의 MAC 어드레스를 레이어 3 테이블(121)에 설정하고, 목적지 호스트가 더미 포트(124)에 연결되어 있는 것처럼 이더넷 스위칭 칩(120)의 레이어 3 테이블을 업데이트하게 된다.
그리고, 가상의 MAC 어드레스를 레이어 3 테이블에 업데이트한 후, CPU(110)는 실제의 목적지 호스트 IP 어드레스에 대응하는 MAC 어드레스와 목적지 호스트가 어떤 포트에 연결되어 있는지를 확인하기 위하여 ARP 패킷을 생성하여 목적지 호스트 IP 주소로 전송하게 된다. 여기서, ARP 패킷 전송 횟수 및 전송 주기는 미리 설정되어지거나, 운용자 선택에 따라 재설정 가능하도록 할 수 있다.
상기 설정된 전송 횟수 내에 목적지 호스트로부터 ARP 응답 신호가 수신되는 경우, CPU(110)는 레이어 3 테이블(121)에 저장된 가상의 MAC 어드레스 정보 및 더미 포트(124) 정보를 삭제한 후, 수신된 ARP 응답 신호에 포함된 MAC 어드레스 및 포트 정보를 레이어 3 테이블(121)에 업데이트하게 되는 것이다.
이와 같이 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보가 업데이트되면, 이더넷 스위칭 칩(120)은 소스 호스트로부터 전송되는 모든 패킷을 레이어 3 테이블(121)에 저장된 목적지 IP 어드레스에 상응하는MAC 어드레스 정보 및 포트 정보를 이용하여 해당 포트로 수신된 패킷을 스위칭 처리하여 목적지 호스트로 전송하게 되는 것이다.
또한, CPU(110)는 설정된 전송 횟수 동안에 목적지 호스트로부터 ARP 응답 신호가 수신되지 않는 경우에는 레이어 3 테이블(121)에 저장된 가상의 MAC 어드레 스 정보 및 더미 포트(124) 정보를 삭제한 후, 이더넷 스위칭 칩(120)으로부터 트랩된 패킷을 이용하여 상기한 동작을 다시 반복 처리하게 되는 것이다.
이와 같은 구성을 갖는 본 발명에 따른 이더넷 스위치에서의 패킷 처리 장치의 동작에 대하여 구체적으로 설명해 보기로 하자. 이하, 동작을 설명하는데 있어 호스트 A(200)(Source Host)에서 호스트 B(300)(Destination Host)로 패킷을 전송한다고 가정하고 그에 대한 패킷 처리 동작을 설명해 보기로 한다.
먼저, 소스 호스트인 호스트 A(200)로부터 동일한 서브넷에 존재하는 목적지 호스트 B(300)로 전송되어져야 할 패킷이 수신되면 이더넷 스위칭 칩(120)은 자신의 레이어 3 테이블(121)에 목적지 호스트 B(300)의 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보가 존재하는지 확인한다.
확인 결과, 목적지 호스트 B(300)의 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트정보가 레이어 3 테이블(121)에 존재하는 경우, 이더넷 스위칭 칩(120)은 해당 정보를 이용하여 소스 호스트 A(200)로부터 수신되는 패킷을 해당 포트로 스위칭하여 목적지 호스트 B(300)로 패킷을 전송학 되는 것이다.
그러나, 상기 레이어 3 테이블(121)에 목적지 호스트 B(300)의 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보가 존재하기 않는 경우 이더넷 스위칭 칩(120)은 수신된 패킷을 CPU(110)로 트랩시키게 된다.
CPU(110)는 이더넷 스위칭 칩(120)으로부터 트랩된 패킷을 이용하여 목적지 호스트 B(300)의 IP 주소에 상응하는 MAC 어드레스 및 포트 정보를 이더넷 스위칭 칩(120)내의 레이어 3 테이블(121)에 존재하는지 다시 한번 확인한 후, 해당 목적 지 호스트 B(300)의 IP 주소에 상응하는 MAC 어드레스 및 포트 정보가 존재하지 않는 경우, 목적지 호스트 B(300)의 IP 어드레스에 해당하는 MAC 어드레스를 가상으로 설정하고 해당 목적지 호스트 B(300)가 더미 포트(124)에 연결되어 있는 것처럼 이더넷 스위칭 칩(120)의 레이어 3 테이블(121)에 가상 MAC 어드레스 및 포트 정보를 업데이트하게 된다.
가상의 MAC 어드레스 정보 및 더미포트 정보를 레이어 3 테이블에 업데이트 가 되면, 이더넷 스위칭 칩(120)은 업데이트 이후에 소스 호스트 A(200)로부터 수신되는 목적지 호스트 B(300)의 IP 어드레스에 대한 패킷은 레이어 3 테이블(121)에 설정된 더미 포트(124)로 스위칭하여 해당 패킷을 폐기 처리하게 된다.
한편, CPU(110)는 가상의 목적지 호스트 B(300)에 대한 MAC 어드레스 정보 및 더미포트 정보를 레이어 3 테이블에 업데이트한 후, 실제의 목적지 호스트 B(300)의 MAC 어드레스 및 포트 정보를 획득하기 위하여 ARP 요구 패킷을 생성하여 목적지 호스트 B(300)의 IP 어드레스로 상기 생성한 ARP 요구 패킷을 전송하게 된다. 이때, ARP 요구 패킷의 전송은 목적지 호스트 B(300)로부터 ARP 응답 패킷을 수신하지 못하는 상황을 대비하여 설정된 주기로 설정된 횟수만큼 전송할 수도 있다.
설정된 횟수 이내에 목적지 호스트 B(300)로부터 ARP 응답 패킷이 수신되는 경우에 CPU(110)는 이더넷 스위칭 칩(120)의 레이어 3 테이블(121)에 설정된 가상의 목적지 호스트 B(300)에 대한 MAC 어드레스 및 더미 포트 정보를 삭제한 후, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 B(300)의 MAC 어드레스 및 포트정보를 이더넷 스위칭 칩(120)의 레이어 3 테이블(121)의 목적지 호스트 B(300)의 IP 어드레스에 대응되도록 업데이트하게 되는 것이다.
이와 같이 목적지 호스트 B(300)로부터 ARP 응답 패킷을 수신하여 수신된 ARP 응답 패킷에 따라 목적지 호스트 B(300)에 대한 MAC 어드레스 및 포트 정보가 이더넷 스위칭 칩(120)의 레이어 3 테이블(121)에 업데이트된 상태에서, 소스 호스트 A(200)로부터 수신되는 목적지 호스트 B(300)로 전송되는 패킷은 이더넷 스위칭 칩(120)에서 레이어 3 테이블(121)에 저장된 목적지 호스트 B(300)의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보를 이용하여 해당 포트로 수신된 패킷을 스위칭 처리하는 것이다.
한편, CPU(110)는 설정된 횟수 동안 ARP 요구 패킷을 목적지 호스트 B(300)로 전송함에도 불구하고 설정된 횟수 내에 호스트 B(300)로부터 ARP 응답 패킷이 수신되지 않을 경우에는 이더넷 스위칭 칩(120)의 레이어 3 테이블(121)에 설정된 목적지 호스트 B(300)의 IP 주소에 대응하는 가상의 MAC 어드레스 및 더미 포트 정보를 삭제한다. 그리고 소스 호스트 A(200)로부터 패킷이 수신되면 수신된 패킷을 다시 CPU(110)로 트랩시켜 상기한 바와 같은 동작을 재 수행하게 되는 것이다.
상기한 본 발명에 따른 이더넷 스위칭 시스템에서의 패킷 처리 장치의 동작과 상응하는 패킷 처리 방법에 대하여 첨부한 도 3을 참조하여 단계적으로 설명해 보기로 하자.
도 3은 도 2에 도시된 패킷 처리 장치를 이용한 패킷 처리 방법에 대한 동작 플로우챠트를 나타낸 도면이다.
도 3에 도시된 바와 같이, 먼저 임의의 호스트로부터 동일한 서브넷에 존재하는 임의의 목적지 호스트로 전송되어져야 할 패킷이 수신되면, 이더넷 스위치내의 이더넷 스위칭 칩은 자신의 레이어 3 테이블에 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보가 존재하는지 확인한다. 즉, 임의의 호스트로부터 이더넷 스위치내 레이어 3 테이블에 존재하지 않는 IP 주소를 목적지로 하는 패킷이 전송되면, 이더넷 스위칭 칩은 상기 목적지 호스트 IP 주소에 상응하는 MAC 어드레스 및 포트 정보가 레이어 3 테이블에 존재하는지 확인한 후 레이어 3 테이블에 해당 정보가 존재하지 않는 경우 수신된 패킷을 CPU로 트랩시킨다(S101, S102). 그러나, 이더넷 스위칭 칩에서 레이어 3 테이블 확인 결과, 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트정보가 레이어 3 테이블에 존재하는 경우, 이더넷 스위칭 칩은 해당 정보를 이용하여 소스 호스트로부터 수신되는 패킷을 해당 포트로 스위칭하여 목적지 호스트로 패킷을 전송하게 되는 것이다.
CPU는 이더넷 스위칭 칩으로부터 트랩된 수신 패킷이 전달된 목적지 호스트의 IP 어드레스에 대한 ARP 요구가 필요한지 판단하고, 즉, 목적지 호스트의 IP 어드레스에 대한 MAC 어드레스 정보와 포트 정보가 레이어 3 테이블에 저장되어 있는지 판단하여 목적지 호스트의 IP 어드레스에 대한 MAC 어드레스와 포트 정보가 테이블내에 존재하지 않는 경우 목적지 호스트의 MAC 어드레스와 포트 정보를 획득하기 위한 ARP 요구 패킷의 생성이 필요한 것으로 판단하는 것이다(S103).
목적지 호스트로의 ARP 요구 패킷을 전송해야만 하는 경우, CPU는 이더넷 스 위칭 칩의 레이어 3 테이블에 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스를 설정하고, 가성의 MAC 어드레스와 연결된 포트를 가상의 더미 포트로 할당하게 된다(S104).
가상의 MAC 어드레스와 MAC 어드레스에 상응하는 더미 포트를 할당한 후, CPU는 목적지 호스트의 MAC 어드레스와 포트 정보를 획득하기 위하여 ARP 요구 패킷을 생성하여 목적지 호스트로 전송한다(S105).
이때, CPU에서 목적지 호스트로의 ARP 요구 패킷의 전송은, 설정된 횟수만큼 설정된 주기로 ARP 응답이 있을 때까지 계속 전송하게 되는데, 상기 설정된 횟수 동안 ARP 요구 패킷을 전송 했음에도 불구하고, 목적지 호스트로부터 ARP 응답 패킷이 수신되지 않을 경우(S106), CPU는 이더넷 스위칭 칩의 레이어 3 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하고(S107), 상기 S101 단계로 피드백되어 그 동작을 다시 수행하게 된다.
그러나, S106 단계에서 CPU에서 설정된 횟수 동안 ARP 요구 패킷을 목적지 호스트로 전송하지 않았을 경우 설정된 횟수동안 지속적으로 ARP 요구 패킷을 전송하고(S108), 설정된 전송 횟수내에 목적지 호스트로부터 ARP 응답 패킷이 수신되는지를 판단하게 된다(S110). 이때, 이더넷 스위칭 칩은 CPU가 목적지 호스트로부터 ARP 응답 패킷을 수신하여 목적지 호스트의 MAC 어드레스 및 포트 정보를 획득할 때까지 소스 호스트로부터 수신되는 패킷은 CPU로 트랩시키지 않고, 레이어 3 테이블에 설정된 더미 포트르 스위칭하여 수신된 패킷을 폐기 처리하게 되는 것이다(S109).
한편, S110 단계에서 설정된 전송 횟수 내에 목적지 호스트로부터 ARP 응답 패킷을 수신하게 되는 경우, CPU는 목적지 호스트로부터 수신된 ARP 응답 패킷에 포함된 목적지 호스트의 MAC 어드레스와 포트 정보를 획득하고 획득한 MAC 어드레스 및 포트 정보를 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 정보와 포트 정보로 레이어 3 테이블을 업데이트하게 되는 것이다(S111).
이와 같이 목적지 호스트의 IP 어드레스에 상응하는 목적지 호스트의 MAC 어드레스 및 포트 정보가 이더넷 스위칭 칩의 레이어 3 테이블에 업데이트된 후, 소스 호스트로부터 패킷이 수신되면 이더넷 스위칭 칩은 수신된 패킷을 레이어 3 테이블에 저장된 포트로 스위칭하여 수신된 패킷이 목적지 호스트로 전송될 수 있도록 하는 것이다(S112).
결국, 본 발명에 따른 이더넷 스위칭 시스템에서의 패킷 처리 장치 및 그 방법은, 임의의 호스트로부터 패킷이 수신되는 경우, 이더넷 스위칭 시스템의 이더넷 스위칭 칩은 수신된 패킷의 목적지 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보가 라우팅 테이블(Layer 3 테이블)에 존재하지 않을 경우 해당 패킷을 CPU로 트랩시킨다.
CPU는 이더넷 스위칭 칩으로부터 패킷이 트랩되면, 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스와 가상의 더미 포트 정보를 이더넷 스위칭 칩의 레이어 3 테이블에 설정한 후, 목적지 호스트의 MAC 어드레스와 포트 정보를 획득하기 위하여 ARP 요구 패킷을 목적지 호스트의 IP 어드레스로 전송한다.
이더넷 스위칭 칩은 CPU에서 ARP 요구 패킷에 상응하는 ARP 응답 패킷을 수 신하여 목적지 호스트의 MAC 어드레스와 포트 정보를 획득할 때가지 소스 호스트로부터 동일한 목적지 호스트의 IP 어드레스로 전송될 패킷이 수신되면 CPU로 트랩시키지 않고 수신된 패킷을 상기 설정한 더미 포트로 스위칭하여 폐기 처리한다.
CPU는 ARP 요구 패킷이 상응하는 응답 패킷이 목적지 호스트로부터 수신되는 경우 수신된 ARP 응답 패킷에 포함된 목적지 호스트의 MAC 어드레스와 포트정보를 이더넷 스위칭 칩의 레이어 3 테이블에 업데이트하고, 이후 소스 호스트로부터 동일 목적지 호스트로 전송할 패킷이 수신되면 수신된 패킷을 업데이트한 목적지 호스트의 포트로 스위칭하여 수신된 패킷을 목적지 호스트로 전송할 수 있도록 하는 것이다.
상기한 바와 같은 본 발명에 따른 이더넷 스위칭 시스템에서의 패킷 처리 장치 및 그 방법은, 임의의 호스트로부터 패킷이 수신되는 경우, 이더넷 스위칭 시스템의 이더넷 스위칭 칩은 수신된 패킷의 목적지 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보가 라우팅 테이블(Layer 3 테이블)에 존재하지 않을 경우 해당 패킷을 CPU로 트랩시킨다.
CPU는 이더넷 스위칭 칩으로부터 패킷이 트랩되면, 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스와 가상의 더미 포트 정보를 이더넷 스위칭 칩의 레이어 3 테이블에 설정한 후, 목적지 호스트의 MAC 어드레스와 포트 정보를 획득하기 위하여 ARP 요구 패킷을 목적지 호스트의 IP 어드레스로 전송한다.
이더넷 스위칭 칩은 CPU에서 ARP 요구 패킷에 상응하는 ARP 응답 패킷을 수신하여 목적지 호스트의 MAC 어드레스와 포트 정보를 획득할 때가지 소스 호스트로부터 동일한 목적지 호스트의 IP 어드레스로 전송될 패킷이 수신되면 CPU로 트랩시키지 않고 수신된 패킷을 상기 설정한 더미 포트로 스위칭하여 폐기 처리한다.
CPU는 ARP 요구 패킷이 상응하는 응답 패킷이 목적지 호스트로부터 수신되는 경우 수신된 ARP 응답 패킷에 포함된 목적지 호스트의 MAC 어드레스와 포트정보를 이더넷 스위칭 칩의 레이어 3 테이블에 업데이트하고, 이후 소스 호스트로부터 동일 목적지 호스트로 전송할 패킷이 수신되면 수신된 패킷을 업데이트한 목적지 호스트의 포트로 스위칭하여 수신된 패킷을 목적지 호스트로 전송할 수 있도록 하는 것이다.
따라서, 동일한 목적지 IP글 가지는 패킷이 수신되는 경우 ARP 프로토콜을 수행하는데 필요한 패킷만을 CPU로 트랩시킴으로써 CPU에 불필요한 패킷이 전달되는 것을 방지하고, 불필요한 패킷을 CPU로 전달하지 않음으로서 CPU는 그 만큼의 자원을 확보할 수 있게 되는 것이다.
또한, 악의적으로 존재하지 않는 목적지 IP를 가지는 패킷이 CPU가 처리할 수 있는 한계 이상으로 수신되는 경우 CPU가 ARP 패킷을 처리하는데 모든 자원이 낭비되는 것을 방지할 수있다 즉, CPU는 이더넷 스위칭 칩으로부터 트랩되는 패킷을 처리하는데 모든 자원을 낭비하지 않도록 하드웨어적으로 제어할 수 있다.
또한, CPU는 확보된 자원 만큼 CPU 처리를 요하는 패킷을 처리할 수 있는 효과를 가지게 되는 것이다.

Claims (26)

  1. 이더넷 스위칭 시스템에서의 패킷 처리 방법에 있어서,
    임의의 호스트로부터 전송되는 패킷의 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보가 라우팅 테이블에 존재하지 않는 경우, CPU는 상기 목적지 호스트의 IP 어드레스에 상응하는 가상의 라우팅 정보를 상기 라우팅 테이블에 설정한 후, 상기 목적지 호스트의 라우팅 정보를 획득하기 위한 ARP 요구 패킷을 생성하고, 상기 생성된 ARP 요구 패킷을 목적지 호스트 IP 어드레스로 전송하는 단계;
    상기 전송된 ARP 요구 패킷에 상응하는 ARP 응답 패킷이 목적지 호스트로부터 수신되어 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보를 획득할 때까지 상기 이더넷 스위칭 칩은 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 상기 라우팅 테이블에 설정한 가상의 라우팅 정보를 이용하여 스위칭 처리하는 단계를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리방법.
  2. 제1항에 있어서,
    상기 라우팅 테이블은, 레이어 3 라우팅 테이블인 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  3. 제2항에 있어서,
    상기 라우팅 테이블에 저장되는 가상의 라우팅 정보는,
    목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스 정보, 더미 포트 정보중 적어도 하나를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  4. 제1항에 있어서,
    상기 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 단계에서, ARP 요구 패킷의 전송은 설정된 횟수만큼 설정된 주기로 목적지 호스트로 전송하는 이더넷 스위칭 시스템에서의 패킷 처리방법.
  5. 제4항에 있어서,
    상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되지 않는 경우, 상기 라우팅 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하고, 상기 임의의 호스트로부터 패킷이 수신되면 새로운 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 재 설정한 후, 설정된 가상의 라우팅 정보를 이용하여 목적지 호스트의 실제 라우팅 정보를 획득하기 위하여 ARP 요구 패킷을 목적지 호스트로 전송하는 단계를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 장치.
  6. 제4항에 있어서,
    상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되는 경우, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보로 상기 라우팅 테이블을 업데이트 하는 단계를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  7. 제6항에 있어서,
    상기 라우팅 테이블을 업데이트한 후, 소스 호스트로부터 수신되는 동일 목적지 호스트의 IP 어드레스로 전송될 패킷이 수신되는 경우, 수신된 패킷을 라우팅 테이블에 업데이트된 MAC 어드레스 정보에 대한 포트로 스위칭하여 목적지 호스트로 전송하는 단계를 더 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  8. 라우팅 테이블을 포함하는 이더넷 스위칭 칩과, CPU를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법에 있어서,
    상기 이더넷 스위칭 칩은, 임의의 호스트로부터 전송되는 패킷의 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보가 자신의 라우팅 테이블에 존재하는지 않는 경우, 수신된 패킷을 상기 CPU로 트랩시키는 단계;
    상기 CPU는, 상기 이더넷 스위칭 칩에서 트랩된 패킷의 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스 및 더미 포트 정보를 상기 이더넷 스위칭 칩의 라우팅 테이블에 설정하고, 목적지 호스트의 MAC 어드레스 및 포트 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 단계;
    상기 ARP 요구 패킷에 상응하는 ARP 응답 패킷이 수신되어 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보를 획득할 때 까지 상기 이더넷 스위칭 칩은 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 상기 CPU로 트랩시키지 않고 상기 라우팅 테이블에 설정한 가상의 더미 포트로 스위칭 처리하는 단계를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  9. 제8항에 있어서,
    상기 라우팅 테이블은, 레이어 3 라우팅 테이블인 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  10. 제9항에 있어서,
    상기 CPU에서 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 단계에서, ARP 요구 패킷의 전송은 설정된 횟수만큼 설정된 주기로 목적지 호스트로 전송하는 이더넷 스위칭 시스템에서의 패킷 처리방법.
  11. 제10항에 있어서,
    상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 ARP 응답 패킷이 수신되지 않는 경우, CPU는 상기 이더넷 스위칭 칩의 라우팅 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하고, 상기 임의의 호스트로부터 패킷이 수신되면 새로운 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 상기 라우팅 테이블에 재 설정한 후, 설정된 가상의 라우팅 정보를 이용하여 목적지 호스트의 실제 라우팅 정보를 획득하기 위한 ARP 요구 패킷을 목적지 호스트로 전송하는 단계를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  12. 제10항에 있어서,
    상기 CPU는 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되는 경우, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보를 상기 라우팅 테이블 에 업데이트 하는 단계를 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  13. 제12항에 있어서,
    상기 CPU에서 라우팅 테이블을 업데이트된 후, 상기 이더넷 스위칭 칩은, 소스 호스트로부터 수신되는 동일 목적지 호스트의 IP 어드레스로 전송될 패킷을 라우팅 테이블에 업데이트된 목적지 호스트의 MAC 어드레스 정보에 대한 포트로 스위칭하여 목적지 호스트로 전송하는 단계를 더 포함하는 이더넷 스위칭 시스템에서의 패킷 처리 방법.
  14. 이더넷 스위칭 시스템에 있어서,
    임의의 호스트로부터 존재하지 않는 IP 어드레스를 목적지로 하는 패킷이 수신되면, 목적지 IP 어드레스로 목적지 호스트의 라우팅 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 전송하고, 상기 ARP 요구 패킷에 상응하는 ARP 응답 패킷이 수신되어 목적지 호스트의 IP 어드레스에 상응하는 라우팅 정보를 획득할 때 까지 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 가상으로 설정된 목적지 호스트 라우팅 정보를 이용하여 스위칭 처리하는 패킷 처리 장치를 포함하는 이더넷 스위칭 시스템.
  15. 제14항에 있어서,
    상기 패킷 처리 장치는, 적어도 하나 이상의 호스트의 IP 어드레스, MAC 어드레스, 포트 정보 중 적어도 하나의 정보 및 존재하지 않는 목적지 호스트 IP 어드레스에 상응하는 가상의 MAC 어드레스 및 더미 포트 정보가 설정된 라우팅 테이블을 포함하는 이더넷 스위칭 시스템.
  16. 제15항에 있어서,
    상기 라우팅 테이블은 레이어 3 라우팅 정보를 저장하는 레이어 3 라우팅 테이블인 이더넷 스위칭 시스템.
  17. 제15항에 있어서,
    상기 패킷 처리 장치에서의 ARP 요구 패킷의 전송은 설정된 횟수만큼 설정된 주기로 목적지 호스트로 전송하는 이더넷 스위칭 시스템.
  18. 제17항에 있어서,
    상기 패킷 처리 장치는,
    상기 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되지 않는 경우, 상기 라우팅 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하고, 상기 임의의 소스 호스트로부터 패킷이 수신되면 새로운 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 재 설정한 후, 설정된 가상의 라우팅 정보를 이용하여 목적지 호스트의 실제 라우팅 정보를 획득하기 위하여 ARP 요구 패킷을 목적지 호스트로 전송하는 이더넷 스위칭 시스템.
  19. 제17항에 있어서,
    상기 패킷 처리 장치는,
    ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되는 경우, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보로 상기 라우팅 테이블을 업데이트 하는 이더넷 스위칭 시스템.
  20. 제19항에 있어서,
    상기 패킷 처리 장치는,
    상기 라우팅 테이블을 업데이트한 후, 소스 호스트로부터 수신되는 동일 목 적지 호스트의 IP 어드레스로 전송될 패킷이 수신되는 경우, 수신된 패킷을 라우팅 테이블에 업데이트된 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 정보에 대한 연결 포트로 스위칭하여 목적지 호스트로 전송하는 이더넷 스위칭 시스템.
  21. 이더넷 스위칭 시스템의 패킷 처리 장치에 있어서,
    임의의 호스트로부터 전송되는 패킷의 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보가 자신의 라우팅 테이블에 존재하는지 않는 경우, 수신된 패킷을 트랩시키는 이더넷 스위칭 처리부;
    상기 이더넷 스위칭 처리부에서 트랩된 패킷의 목적지 호스트의 IP 어드레스에 상응하는 가상의 MAC 어드레스 및 더미 포트 정보를 상기 이더넷 스위칭 처리부의 라우팅 테이블에 설정하고, 목적지 호스트의 MAC 어드레스 및 포트 정보를 획득하기 위한 ARP 요구 패킷을 생성하여 목적지 호스트의 IP 어드레스로 전송하는 ARP 처리부를 포함하되;
    상기 이더넷 스위칭 처리부는, 상기 CPU에서 ARP 요구 패킷 상응하는 ARP 응답 패킷이 수신되어 목적지 호스트의 IP 어드레스에 상응하는 MAC 어드레스 및 포트 정보를 획득할 때 까지 상기 임의의 호스트로부터 동일 목적지 호스트의 IP 어드레스로 수신되는 패킷을 상기 CPU로 트랩시키지 않고 상기 라우팅 테이블에 설정한 가상의 더미 포트로 스위칭 처리하는 이더넷 스위칭 시스템에서의 패킷 처리 장치.
  22. 제21항에 있어서,
    상기 라우팅 테이블은, 레이어 3 라우팅 테이블인 이더넷 스위칭 시스템에서의 패킷 처리 장치.
  23. 제21항에 있어서,
    상기 CPU는 ARP 요구 패킷 설정된 횟수만큼 설정된 주기로 목적지 호스트로 전송하는 이더넷 스위칭 시스템에서의 패킷 처리장치.
  24. 제23항에 있어서,
    상기 CPU는 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 ARP 응답 패킷이 수신되지 않는 경우, 상기 이더넷 스위칭 처리부의 라우팅 테이블에 설정한 가상의 목적지 호스트의 MAC 어드레스 및 더미 포트 정보를 삭제하는 이더넷 스위칭 시스템에서의 패킷 처리 장치.
  25. 제23항에 있어서,
    상기 CPU는 ARP 요구 패킷에 대한 ARP 응답 패킷이 설정된 전송 횟수 이내에 목적지 호스트로부터 수신되는 경우, 수신된 ARP 응답 패킷에 포함된 목적지 호스트 IP 어드레스에 상응하는 MAC 어드레스 정보 및 포트 정보를 상기 이더넷 스위칭 처리부의 라우팅 테이블에 업데이트 하는 이더넷 스위칭 시스템에서의 패킷 처리 장치.
  26. 제25항에 있어서,
    상기 이더넷 스위칭 처리부는 상기 CPU에 의해 라우팅 테이블이 업데이트된 후, 소스 호스트로부터 수신되는 동일 목적지 호스트의 IP 어드레스로 전송될 패킷을 라우팅 테이블에 업데이트된 목적지 호스트의 MAC 어드레스 정보에 대한 포트로 스위칭하여 목적지 호스트로 전송하는 이더넷 스위칭 시스템에서의 패킷 처리 장치.
KR1020060004588A 2006-01-16 2006-01-16 패킷 처리 장치 및 그 방법 KR100694231B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060004588A KR100694231B1 (ko) 2006-01-16 2006-01-16 패킷 처리 장치 및 그 방법
US11/523,050 US7864782B2 (en) 2006-01-16 2006-09-19 Packet processing apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060004588A KR100694231B1 (ko) 2006-01-16 2006-01-16 패킷 처리 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR100694231B1 true KR100694231B1 (ko) 2007-03-14

Family

ID=38103414

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060004588A KR100694231B1 (ko) 2006-01-16 2006-01-16 패킷 처리 장치 및 그 방법

Country Status (2)

Country Link
US (1) US7864782B2 (ko)
KR (1) KR100694231B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100823135B1 (ko) 2007-03-13 2008-04-21 삼성전자주식회사 효율적 arp 요청을 수행하는 라우팅 제어 장치 및 그방법
KR100827143B1 (ko) 2007-01-16 2008-05-06 삼성전자주식회사 패킷 스위치 장비 및 그 방법

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7757033B1 (en) 2004-02-13 2010-07-13 Habanero Holdings, Inc. Data exchanges among SMP physical partitions and I/O interfaces enterprise servers
US7843906B1 (en) 2004-02-13 2010-11-30 Habanero Holdings, Inc. Storage gateway initiator for fabric-backplane enterprise servers
US7685281B1 (en) 2004-02-13 2010-03-23 Habanero Holdings, Inc. Programmatic instantiation, provisioning and management of fabric-backplane enterprise servers
US8868790B2 (en) 2004-02-13 2014-10-21 Oracle International Corporation Processor-memory module performance acceleration in fabric-backplane enterprise servers
US7633955B1 (en) 2004-02-13 2009-12-15 Habanero Holdings, Inc. SCSI transport for fabric-backplane enterprise servers
US7873693B1 (en) 2004-02-13 2011-01-18 Habanero Holdings, Inc. Multi-chassis fabric-backplane enterprise servers
US8713295B2 (en) 2004-07-12 2014-04-29 Oracle International Corporation Fabric-backplane enterprise servers with pluggable I/O sub-system
US8477782B2 (en) * 2007-10-02 2013-07-02 Telefonaktiebolaget L M Ericsson (Publ) VRRP and learning bridge CPE
JP5328472B2 (ja) * 2009-05-13 2013-10-30 キヤノン株式会社 ネットワーク通信装置及び方法とプログラム
US8184648B2 (en) * 2009-06-18 2012-05-22 Rockstar Bidco, LP Method and apparatus for implementing control of multiple physically dual homed devices
CN102158895B (zh) * 2011-05-09 2014-04-02 北京傲天动联技术股份有限公司 在无线网络中提升站点漫游速度的方法
US9485276B2 (en) * 2012-09-28 2016-11-01 Juniper Networks, Inc. Dynamic service handling using a honeypot
CN103795635B (zh) * 2012-11-01 2017-04-12 华为技术有限公司 控制报文广播的处理方法、设备和系统
CN106100994A (zh) * 2016-08-01 2016-11-09 杭州迪普科技有限公司 一种基于分布式设备的报文转发方法及装置
CN112888022B (zh) * 2016-11-16 2024-02-02 华为技术有限公司 数据迁移方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970066032A (ko) * 1996-03-22 1997-10-13 신헌철 내연기관용 실린더와 피스톤 편 마모방지장치

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2944531B2 (ja) * 1996-09-12 1999-09-06 日本電気通信システム株式会社 Lan間接続装置
US6697862B1 (en) * 1999-05-21 2004-02-24 3Com Corporation System and method for network address maintenance using dynamic host configuration protocol messages in a data-over-cable system
US6574240B1 (en) * 2000-01-19 2003-06-03 Advanced Micro Devices, Inc. Apparatus and method for implementing distributed layer 3 learning in a network switch
US20030048501A1 (en) * 2001-09-12 2003-03-13 Michael Guess Metropolitan area local access service system
US7843968B2 (en) * 2002-09-30 2010-11-30 Sanyo Electric Co., Ltd. Communication apparatus and applications thereof
EP1733528A1 (en) * 2004-04-05 2006-12-20 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Method, communication device and system for address resolution mapping in a wireless multihop ad hoc network.

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970066032A (ko) * 1996-03-22 1997-10-13 신헌철 내연기관용 실린더와 피스톤 편 마모방지장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100827143B1 (ko) 2007-01-16 2008-05-06 삼성전자주식회사 패킷 스위치 장비 및 그 방법
KR100823135B1 (ko) 2007-03-13 2008-04-21 삼성전자주식회사 효율적 arp 요청을 수행하는 라우팅 제어 장치 및 그방법

Also Published As

Publication number Publication date
US7864782B2 (en) 2011-01-04
US20070165648A1 (en) 2007-07-19

Similar Documents

Publication Publication Date Title
KR100694231B1 (ko) 패킷 처리 장치 및 그 방법
KR100908320B1 (ko) IPv6 네트워크 내 호스트 차단 및 탐색방법
US9083554B2 (en) Apparatus for providing connection between networks
US20190280930A1 (en) Configuration of forwarding rules using the address resolution protocol
JP2004193844A (ja) 移動端末を収容できるパケット転送装置
WO2014015713A1 (en) Configuring virtual router redundancy protocol backup group
KR100827143B1 (ko) 패킷 스위치 장비 및 그 방법
US20160218958A1 (en) Method and system for forwarding packet in id/locator separation environment
KR101755829B1 (ko) Sdn 환경에서 arp 처리 방법 및 장치
JP6360012B2 (ja) ネットワーク統合システムおよびネットワーク統合方法
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands
Cisco Frame Relay Commands

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130227

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140227

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150226

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160226

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170224

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee