KR101010554B1 - 네트워크 시스템, 런닝 브리지 노드, 런닝 방법 및 그프로그램 - Google Patents

네트워크 시스템, 런닝 브리지 노드, 런닝 방법 및 그프로그램 Download PDF

Info

Publication number
KR101010554B1
KR101010554B1 KR20057015444A KR20057015444A KR101010554B1 KR 101010554 B1 KR101010554 B1 KR 101010554B1 KR 20057015444 A KR20057015444 A KR 20057015444A KR 20057015444 A KR20057015444 A KR 20057015444A KR 101010554 B1 KR101010554 B1 KR 101010554B1
Authority
KR
South Korea
Prior art keywords
node
frame
tag
running
client
Prior art date
Application number
KR20057015444A
Other languages
English (en)
Other versions
KR20050101347A (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 KR20050101347A publication Critical patent/KR20050101347A/ko
Application granted granted Critical
Publication of KR101010554B1 publication Critical patent/KR101010554B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4645Details on frame tagging
    • H04L12/4666Operational details on the addition or the stripping of a tag in a frame, e.g. at a provider edge node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • 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
    • 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/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]

Landscapes

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

Abstract

런닝 프레임을 송수신하는 CPU 내의 런닝 관리 프로그램과, 런닝 프레임을 전송하는 프레임 전송기와, 런닝 완료인지 여부를 판정하는 런닝 프레임 송신 관리기를 구비한다.
Figure R1020057015444
네트워크 시스템, 런닝 브리지 노드, 런닝 방법, 프로그램

Description

네트워크 시스템, 런닝 브리지 노드, 런닝 방법 및 그 프로그램 {NETWORK SYSTEM, LEARNING BRIDGE NODE, LEARNING METHOD, AND PROGRAM THEREOF}
기술분야
본 발명은 네트워크 시스템에 관한 것으로, 특히 비대칭인 경로를 통과하는 쌍방향 플로우에 대해서도 런닝 (learning) 동작할 수 있고, 또한, 부가하는 포워딩 태그도 런닝하여 전송시에 부가할 수 있는, 네트워크 시스템, 런닝 브리지 구성 노드, 런닝 브리지 구성 방법 및 프로그램에 관한 것이다.
배경기술
종래, 이러한 종류의 런닝 브리지는 이더넷 (R) 등에서 전송 경로를 결정하기 위해 사용되고 있다. 그 런닝 브리지에 관한 종래 기술로는 다음에 속하는 것이 존재한다.
예를 들어, 「1998년, IEEE 스탠다드 802.1D (IEEE Std 802.1D)」라는 제목의 IEEE 가 발행한 표준화 문서에서는 프레임의 전송선 포트를 결정하기 위해 상기 프레임을 수신한 포트 및 상기 프레임의 송신원 MAC 어드레스 (MAC SA) 를 필터링 데이터베이스에 등록하는 런닝 프로세스라 불리는 방법이 규정되어 있다 (이하, 문헌 1 이라 함).
또한, 「1998년, IEEE 스탠다드 802.1Q (IEEE Std 802.1Q)」라는 제목의 IEEE 가 발행한 표준화 문서에서는 상기 런닝 프로세스를 VLAN 마다 개별적으로 행하여, 런닝 결과의 이용을 런닝에 이용한 프레임과 동일한 VLAN 에 속하는 프레임 도착시에 한정하기 위한, Independent Virtual Local Area Network (VLAN) Learning (IVL) 이라 불리는 방법 및 IVL 을 행하기 위한 IVL 브리지가 규정되어 있다 (이하, 문헌 2 라 함).
그리고, 확장 태그를 이용한 프레임 전송 방법에 관한 기술, 및 테이블 구성에 관한 기술, 그리고 포워딩 태그에 따라 경로를 결정하기 위해 스패닝 트리를 사용한 경로 결정 방법에 관한 기술은, 예를 들어 「차세대 이더넷 아키텍처 GOE (Global Optical Ethernet) 의 제안」 (전자정보통신학회 2002년 소사이어티 대회 강연 논문집 B-7-11∼B-7-13) 으로 개시되어 있다 (이하, 문헌 3 이라 함).
상기 서술한 종래의 기술에서는 다음에 서술하는 바와 같은 문제가 있었다.
첫 번째로, 문헌 1 및 문헌 2 에서 나타낸 어떤 종래 기술에서도 네트워크의 대역 이용 효율이 떨어진다는 문제가 있었다.
문헌 1 및 문헌 2 의 기술은 쌍방향 프레임이 대칭 경로를 흐르는 대칭 플로우를 전제로 하고 있다. 따라서, 문헌 3 에서 나타낸 바와 같은, 방향에 따라 플로우가 경유하는 노드가 다른 비대칭 플로우를 흘려보낸 경우, 런닝 프로세스가 기능하지 않고, 프레임은 수신선에 도달하지만, 불필요한 수신선에까지 전달되기 때문에 네트워크의 혼잡을 일으켜, 대역 이용 효율이 떨어진다는 문제가 있었다.
두 번째로, 문헌 3 으로 나타낸 종래 기술에서도 설정작업에 시간이 많이 걸 린다는 문제가 있었다.
문헌 3 의 기술을 이용하기 위해서는, 미리 각 노드에 수신선 MAC 어드레스 (MAC DA) 에 따라 부가해야 할 확장 태그 (포워딩 태그) 를 설정해 두어야 하는데, MAC 어드레스수는 네트워크에 따라서는 수 천, 수 만과 같은 수가 되기 때문에 이 설정 작업에는 많은 시간이 소요되었다.
발명의 개시
본 발명의 제 1 목적은, 비대칭 플로우가 흐르는 네트워크에 있어서, 대역 이용 효율을 높일 수 있는 네트워크 시스템, 런닝 브리지 구성 노드, 런닝 브리지 구성 방법 및 프로그램을 제공하는 것에 있다.
본 발명의 제 2 목적은, 부가해야 할 포워딩 태그의 설정 작업을 자동화할 수 있는 네트워크 시스템, 런닝 브리지 구성 노드, 런닝 브리지 구성 방법 및 프로그램을 제공하는 것에 있다.
상기 목적을 달성하는 청구항 1 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 주신호 프레임이 흐르는 경로와는 반대의 경로에 정기적으로 런닝 프레임을 송신하는 것을 특징으로 한다.
청구항 2 의 본 발명의 네트워크 시스템은, 상기 노드가 상기 런닝 프레임에 의해, 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 한다.
청구항 3 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크 에 있어서, 상기 네트워크에 속하는 노드가 MAC SA 테이블 캐시를 참조하여 런닝 프레임 송신 요구를 행할지의 여부를 결정하는 런닝 프레임 관리기와, 런닝 프레임 송신 요구를 행한 송신원 MAC 어드레스 (MAC SA) 를 기억하는 MAC SA 테이블 캐시를 구비하는 것을 특징으로 한다.
청구항 4 의 본 발명의 네트워크 시스템은, 상기 노드가 MAC SA 테이블 캐시의 에이징을 행하는 에이징 요구 접수기와, CPU 에 대하여 런닝 프레임 송신 요구를 행하는 송신 요구기를 구비하는 것을 특징으로 한다.
청구항 5 의 본 발명의 네트워크 시스템은, 상기 노드가 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 구비하는 것을 특징으로 한다.
청구항 6 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 구비하는 것을 특징으로 한다.
청구항 7 의 본 발명의 네트워크 시스템은, 상기 노드가 각종 설정을 행하는 기기 제어 프로그램을 구비하는 것을 특징으로 한다.
청구항 8 의 본 발명의 네트워크 시스템은, 상기 노드가 입력 프레임을 판별하는 프레임 타입 판정기를 구비하는 것을 특징으로 한다.
청구항 9 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 에이징 대상 엔트리의 에이징을 행하는 에이징 제어기와, 에이징 대상 엔트리를 기억하는 에이징 관리 테이블을 구비하는 것을 특징으로 한다.
청구항 10 의 본 발명의 네트워크 시스템은, 상기 노드가 수신선 MAC 어드레스 (MAC DA) 에 대한 출력 포트 및 태그 조작을 기억하는 MAC 포워딩 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 11 의 본 발명의 네트워크 시스템은, 상기 노드가 태그에 대한 브로드캐스트시의 출력선 포트를 기억하는 브로드캐스트 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 12 의 본 발명의 네트워크 시스템은, 상기 노드가 포워딩 태그에 대한 출력 포트를 기억하는 태그 포워딩 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 13 의 본 발명의 네트워크 시스템은, 상기 노드가 테이블, 에이징 회로 및 테이블 판독 입력, 기록 회로를 가진 포워딩 테이블을 구비하는 것을 특징으로 한다.
청구항 14 의 본 발명의 네트워크 시스템은, 상기 노드가 포워딩 태그에 대한 MAC 포워딩 테이블 메모리 상의 번지를 기억하는 TAG 어드레스 관리 테이블을 구비하는 것을 특징으로 한다.
청구항 15 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 이더넷 (R) 의 런닝 기능을 비대칭으로 흐르는 플로우에도 적용하는 것을 특징으로 한다.
청구항 16 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 브리지 노드에 있어서, 주신호 프레임이 흐르는 경로와는 반대의 경로에 정기적으로 런닝 프 레임을 송신하는 것을 특징으로 한다.
청구항 17 의 본 발명의 런닝 브리지 노드는 상기 런닝 프레임에 의해, 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 한다.
청구항 18 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 브리지 노드에 있어서, MAC SA 테이블 캐시를 참조하여 런닝 프레임 송신 요구를 행할지의 여부를 결정하는 런닝 프레임 관리기와, 런닝 프레임 송신 요구를 행한 송신원 MAC 어드레스 (MAC SA) 를 기억하는 MAC SA 테이블 캐시를 구비하는 것을 특징으로 한다.
청구항 19 의 본 발명의 런닝 브리지 노드는 MAC SA 테이블 캐시의 에이징을 행하는 에이징 요구 접수기와, CPU 에 대하여 런닝 프레임 송신 요구를 행하는 송신 요구기를 구비하는 것을 특징으로 한다.
청구항 20 의 본 발명의 런닝 브리지 노드는 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 구비하는 것을 특징으로 한다.
청구항 21 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 브리지 노드에 있어서, 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 구비하는 것을 특징으로 한다.
청구항 22 의 본 발명의 런닝 브리지 노드는 각종 설정을 행하는 기기 제어 프로그램을 구비하는 것을 특징으로 한다.
청구항 23 의 본 발명의 런닝 브리지 노드는 입력 프레임을 판별하는 프레임 타입 판정기를 구비하는 것을 특징으로 한다.
청구항 24 의 본 발명의 런닝 브리지 노드는 에이징 대상 엔트리의 에이징을 행하는 에이징 제어기와, 에이징 대상 엔트리를 기억하는 에이징 관리 테이블을 구비하는 것을 특징으로 한다.
청구항 25 의 본 발명의 런닝 브리지 노드는 수신선 MAC 어드레스 (MAC DA) 에 대한 출력 포트 및 태그 조작을 기억하는 MAC 포워딩 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 26 의 본 발명의 런닝 브리지 노드는 태그에 대한 브로드캐스트시의 출력선 포트를 기억하는 브로드캐스트 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 27 의 본 발명의 런닝 브리지 노드는 포워딩 태그에 대한 출력 포트를 기억하는 태그 포워딩 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 28 의 본 발명의 런닝 브리지 노드는 테이블, 에이징 회로 및 테이블 판독 입력, 기록 회로를 가진 포워딩 테이블을 구비하는 것을 특징으로 한다.
청구항 29 의 본 발명의 런닝 브리지 노드는 포워딩 태그에 대한 MAC 포워딩 테이블 메모리 상의 어드레스를 기억하는 TAG 어드레스 관리 테이블을 구비하는 것을 특징으로 한다.
청구항 30 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 브리지 노드에 있어서, 이더넷 (R) 의 런닝 기능을 비대칭으로 흐르는 플로우에도 적용하는 것을 특징으로 한다.
청구항 31 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 방법에 있 어서, 상기 네트워크에 속하는 노드가 주신호 프레임이 흐르는 경로와는 반대의 경로에 정기적으로 런닝 프레임을 송신하는 것을 특징으로 한다.
청구항 32 의 본 발명의 런닝 방법은, 상기 노드가 상기 런닝 프레임에 의해, 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 한다.
청구항 33 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 방법에 있어서, 상기 네트워크에 속하는 노드가 MAC SA 테이블 캐시를 참조하여 런닝 프레임 송신 요구를 행할지의 여부를 결정하고, 런닝 프레임 송신 요구를 행한 송신원 MAC 어드레스 (MAC SA) 를 MAC SA 테이블 캐시로 기억시키는 것을 특징으로 한다.
청구항 34 의 본 발명의 런닝 방법은, 상기 노드가 MAC SA 테이블 캐시의 에이징을 행하여, CPU 에 대하여 런닝 프레임 송신 요구를 행하는 것을 특징으로 한다.
청구항 35 의 본 발명의 런닝 방법은, 상기 노드가 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 구비하는 것을 특징으로 한다.
청구항 36 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 방법에 있어서, 상기 네트워크에 속하는 노드가 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 구비하는 것을 특징으로 한다.
청구항 37 의 본 발명의 런닝 방법은, 상기 노드가 각종 설정을 행하는 기기 제어 프로그램을 구비하는 것을 특징으로 한다.
청구항 38 의 본 발명의 런닝 방법은, 상기 노드가 입력 프레임을 판별하는 것을 특징으로 한다.
청구항 39 의 본 발명의 런닝 방법은, 상기 네트워크에 속하는 노드가 에이징 대상 엔트리의 에이징을 행하여, 에이징 대상 엔트리를 에이징 관리 테이블로 기억시키는 것을 특징으로 한다.
청구항 40 의 본 발명의 런닝 방법은, 상기 노드가 수신선 MAC 어드레스 (MAC DA) 에 대한 출력 포트 및 태그 조작을 MAC 포워딩 테이블 메모리로 기억시키는 것을 특징으로 한다.
청구항 41 의 본 발명의 런닝 방법은, 상기 노드가 태그에 대한 브로드캐스트시의 출력선 포트를 브로드캐스트 테이블 메모리로 기억시키는 것을 특징으로 한다.
청구항 42 의 본 발명의 런닝 방법은, 상기 노드가 포워딩 태그에 대한 출력 포트를 태그 포워딩 테이블 메모리로 기억시키는 것을 특징으로 한다.
청구항 43 의 본 발명의 런닝 방법은, 상기 노드가 테이블, 에이징 회로 및 테이블 판독 입력, 기록 회로를 가진 포워딩 테이블을 구비하는 것을 특징으로 한다.
청구항 44 의 본 발명의 런닝 방법은, 상기 노드가 포워딩 태그에 대한 MAC 포워딩 테이블 메모리 상의 번지를 TAG 어드레스 관리 테이블로 기억시키는 것을 특징으로 한다.
청구항 45 의 본 발명은, 복수의 노드를 접속한 네트워크의 런닝 방법에 있어서, 상기 네트워크에 속하는 노드가 이더넷 (R) 의 런닝 기능을 비대칭으로 흐르는 플로우에도 적용하는 것을 특징으로 한다.
청구항 46 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 프레임에 소스 태그를 부가하여 송신하는 것을 특징으로 하는 것을 특징으로 한다.
청구항 47 의 본 발명의 네트워크 시스템은, 상기 노드가 상기 소스 태그가 있는 프레임에 의해, 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 한다.
청구항 48 의 본 발명의 네트워크 시스템은, 상기 노드가 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 한다.
청구항 49 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 프레임이 입력된 포트를 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 50 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가, 입력된 프레임에 부가되어 있는 VLAN 태그를 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 51 의 본 발명의 네트워크 시스템은, 상기 노드가 상기 입력 포트와, 상기 VLAN 태그의 쌍방을 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 52 의 본 발명의 네트워크 시스템은, 상기 노드가 입력된 MAC 어드레스를 별도의 MAC 어드레스로 변환하여 출력하는 것을 특징으로 한다.
청구항 53 의 본 발명의 네트워크 시스템은, 상기 입력 MAC 어드레스가 Universal Administrative MAC 어드레스이고, 상기 출력 MAC 어드레스가 터널링 프레임 식별용 MAC 어드레스인 것을 특징으로 한다.
청구항 54 의 본 발명의 네트워크 시스템은, 상기 노드가 테이블을 참조하여 부가하는 태그의 종별을 결정하는 테이블 관리기를 구비하는 것을 특징으로 한다.
청구항 55 의 본 발명의 네트워크 시스템은, 상기 노드가 입력 포트 및 입력 VLAN 참조하여 부가하는 태그의 종별을 결정하기 위한 입력 포트 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 56 의 본 발명의 네트워크 시스템은, 복수의 노드를 접속한 네트워크에 있어서, 상기 노드 사이를 흐르는 프레임이 소스 태그를 구비하는 것을 특징으로 한다.
청구항 57 의 본 발명의 네트워크 시스템은, 상기 프레임이, 터널링 프레임 식별용 MAC 어드레스를 구비하는 것을 특징으로 한다.
청구항 58 의 본 발명의 런닝 브리지 노드는 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 프레임에 소스 태그를 부가하여 송신하는 것을 특징으로 한다.
청구항 59 의 본 발명의 런닝 브리지 노드는, 상기 노드가 상기 소스 태그가 있는 프레임에 의해, 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 한다.
청구항 60 의 본 발명의 런닝 브리지 노드는, 상기 노드가 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 한다.
청구항 61 의 본 발명의 런닝 브리지 노드는 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 프레임이 입력된 포트를 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 62 의 본 발명의 런닝 브리지 노드는 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 입력된 프레임에 부가되어 있는 VLAN 태그를 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 63 의 본 발명의 런닝 브리지 노드는, 상기 노드가 상기 입력 포트와 상기 VLAN 태그의 쌍방을 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 64 의 본 발명의 런닝 브리지 노드는, 상기 노드가 입력된 MAC 어드레스를 별도의 MAC 어드레스로 변환하여 출력하는 것을 특징으로 한다.
청구항 65 의 본 발명의 런닝 브리지 노드는, 상기 입력 MAC 어드레스가 Universal Administrative MAC 어드레스이고, 상기 출력 MAC 어드레스가 터널링 프레임 식별용 MAC 어드레스인 것을 특징으로 한다.
청구항 66 의 본 발명의 런닝 브리지 노드는, 상기 노드가 테이블을 참조하여 부가하는 태그의 종별을 결정하는 테이블 관리기를 구비하는 것을 특징으로 한다.
청구항 67 의 본 발명의 런닝 브리지 노드는, 상기 노드가 입력 포트 및 입력 VLAN 참조하여 부가하는 태그의 종별을 결정하기 위한 입력 포트 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 68 의 본 발명의 런닝 브리지 노드는 복수의 노드를 접속한 네트워크 에 있어서, 상기 노드 사이를 흐르는 프레임이 소스 태그를 구비하는 것을 특징으로 한다.
청구항 69 의 본 발명의 런닝 브리지 노드는, 상기 프레임이 터널링 프레임 식별용 MAC 어드레스를 구비하는 것을 특징으로 한다.
청구항 70 의 본 발명의 런닝 방법은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가 프레임에 소스 태그를 부가하여 송신하는 것을 특징으로 한다.
청구항 71 의 본 발명의 런닝 방법은, 상기 노드가, 상기 소스 태그가 있는 프레임에 의해, 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 한다.
청구항 72 의 본 발명의 런닝 방법은, 상기 노드가 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 한다.
청구항 73 의 본 발명의 런닝 방법은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가, 프레임이 입력된 포트를 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 74 의 본 발명의 런닝 방법은, 복수의 노드를 접속한 네트워크에 있어서, 상기 네트워크에 속하는 노드가, 입력된 프레임에 부가되어 있는 VLAN 태그를 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 75 의 본 발명의 런닝 방법은, 상기 노드가 상기 입력 포트와 상기 VLAN 태그의 쌍방을 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 한다.
청구항 76 의 본 발명의 런닝 방법은, 상기 노드가, 입력된 MAC 어드레스를 별도의 MAC 어드레스로 변환하여 출력하는 것을 특징으로 한다.
청구항 77 의 본 발명의 런닝 방법은, 상기 입력 MAC 어드레스가 Universal Administrative MAC 어드레스이고, 상기 출력 MAC 어드레스가 터널링 프레임 식별용 MAC 어드레스인 것을 특징으로 한다.
청구항 78 의 본 발명의 런닝 방법은, 상기 노드가 테이블을 참조하여 부가하는 태그의 종별을 결정하는 테이블 관리기를 구비하는 것을 특징으로 한다.
청구항 79 의 본 발명의 런닝 방법은, 상기 노드가 입력 포트 및 입력 VLAN 참조하여 부가하는 태그의 종별을 결정하기 위한 입력 포트 테이블 메모리를 구비하는 것을 특징으로 한다.
청구항 80 의 본 발명의 런닝 방법은, 복수의 노드를 접속한 네트워크에 있어서, 상기 노드 사이를 흐르는 프레임이 소스 태그를 구비하는 것을 특징으로 한다.
청구항 81 의 본 발명의 런닝 방법은, 상기 프레임이 터널링 프레임 식별용 MAC 어드레스를 구비하는 것을 특징으로 한다.
도면의 간단한 설명
도 1 은 본 발명의 제 1 실시예에서의 물리 네트워크의 구성예를 나타내는 블록도이다.
도 2 는 본 발명의 제 1 실시예에서의 이더넷 (R) 프레임의 구성을 나타내는 블록도이다.
도 3 은 본 발명의 제 1 실시예에서의 VLAN Tagged 이더넷 (R) 프레임의 구성을 나타내는 블록도이다.
도 4 는 본 발명의 제 1 실시예에서의 VLAN 태그의 구성을 나타내는 블록도이다.
도 5 는 본 발명의 제 1 실시예에서의 포워딩 태그가 있는 이더넷 (R) 프레임의 구성을 나타내는 블록도이다.
도 6 은 본 발명의 제 1 실시예에서의 태그의 구성을 나타내는 블록도이다.
도 7 은 본 발명의 제 1 실시예에서의 런닝 프레임의 구성을 나타내는 블록도이다.
도 8 은 본 발명의 제 1 실시예에서의 런닝 프레임의 구성을 나타내는 블록도이다.
도 9 는 본 발명의 제 1 실시예에서의 노드 (G1) 의 구성을 상세하게 나타낸 블록도이다.
도 10 은 본 발명의 제 1 실시예에서의 패킷 포워딩 기구 (20) 의 구성을 상세하게 나타낸 블록도이다.
도 11 은 본 발명의 제 1 실시예에서의 프레임 해석기 (201) 의 구성을 상세하게 나타낸 블록도이다.
도 12 는 본 발명의 제 1 실시예에서의 런닝 프레임 송신 관리기 (202) 의 구성을 상세하게 나타낸 블록도이다.
도 13 은 본 발명의 제 1 실시예에서의 MAC SA 테이블 캐시 (2025) 의 구성을 상세하게 나타낸 블록도이다.
도 14 는 본 발명의 제 1 실시예에서의 테이블 서치기 (203) 의 구성을 상세하게 나타낸 블록도이다.
도 15 는 본 발명의 제 1 실시예에서의 포워딩 테이블 (204) 의 구성을 상세하게 나타낸 블록도이다.
도 16 은 본 발명의 제 1 실시예에서의 MAC 포워딩 테이블 메모리 (2043) 의 구성을 상세하게 나타낸 블록도이다.
도 17 은 본 발명의 제 1 실시예에서의 태그 포워딩 테이블 메모리 (2041) 의 구성을 상세하게 나타낸 블록도이다.
도 18 은 본 발명의 제 1 실시예에서의 브로드캐스트 테이블 메모리 (2042) 의 구성을 상세하게 나타낸 블록도이다.
도 19 는 본 발명의 제 1 실시예에서의 에이징 관리 테이블 (2044) 의 구성을 상세하게 나타낸 블록도이다.
도 20 은 본 발명의 제 1 실시예에서의 프레임 재기록기 (205) 의 구성을 상세하게 나타낸 블록도이다.
도 21 은 본 발명의 제 1 실시예에서의 프레임 합성기 (206) 의 구성을 상세하게 나타낸 블록도이다.
도 22 는 본 발명의 제 1 실시예에서의 프레임 전송기 (207) 의 구성을 상세 하게 나타낸 블록도이다.
도 23 은 본 발명의 제 1 실시예에서의 CPU (30) 내에서 소프트웨어에 의해 실현되는 처리의 구성을 나타내는 블록도이다.
도 24 는 본 발명의 제 1 실시예에서의 TAG 어드레스 관리 테이블 (70134) 의 구성을 나타내는 표이다.
도 25 는 본 발명의 제 1 실시예에서의 이벤트 01 의 동작을 상세하게 설명한 플로우차트이다.
도 26 는 본 발명의 제 1 실시예에서의 이벤트 11 의 동작을 상세하게 설명한 플로우차트이다.
도 27 은 본 발명의 제 1 실시예에서의 이벤트 03 의 동작을 상세하게 설명한 플로우차트이다.
도 28 은 본 발명의 제 1 실시예에서의 이벤트 12 의 동작을 상세하게 설명한 플로우차트이다.
도 29 는 본 발명의 제 1 실시예에서의 이벤트 05 의 동작을 상세하게 설명한 플로우차트이다.
도 30 은 본 발명의 제 1 실시예에서의 이벤트 13 의 동작을 상세하게 설명한 플로우차트이다.
도 31 은 본 발명의 제 1 실시예에서의 이벤트 06 의 동작을 상세하게 설명한 플로우차트이다.
도 32 는 본 발명의 제 1 실시예에서의 이벤트 14 의 동작을 상세하게 설명 한 플로우차트이다.
도 33 은 본 발명의 제 1 실시예에서의 트리 T0 의 구성예를 나타내는 토폴로지도이다.
도 34 는 본 발명의 제 1 실시예에서의 트리 T1 의 구성예를 나타내는 토폴로지도이다.
도 35 는 본 발명의 제 1 실시예에서의 트리 T2 의 구성예를 나타내는 토폴로지도이다.
도 36 은 본 발명의 제 1 실시예에서의 트리 T3 의 구성예를 나타내는 토폴로지도이다.
도 37 은 본 발명의 제 1 실시예에서의 트리 T4 의 구성예를 나타내는 토폴로지도이다.
도 38 은 본 발명의 제 1 실시예에서의 동작예 1 의 시퀀스도이다.
도 39 는 본 발명의 제 1 실시예에서의 동작예 2 의 시퀀스도이다.
도 40 은 본 발명의 제 1 실시예에서의 동작예 3 의 시퀀스도이다.
도 41 은 본 발명의 제 2 실시예에서의 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 구성을 나타내는 블록도이다.
도 42 는 본 발명의 제 2 실시예에서의 테이블 서치기 (203A) 의 구성을 나타내는 블록도이다.
도 43 은 본 발명의 제 2 실시예에서의 런닝 관리기 (202A) 의 구성을 상세하게 나타낸 블록도이다.
도 44 는 본 발명의 제 2 실시예에서의 이벤트 01 의 동작을 상세하게 설명한 플로우차트이다.
도 45 는 본 발명의 제 2 실시예에서의 동작예 1 의 시퀀스도이다.
도 46 은 본 발명의 제 2 실시예에서의 동작예 2 의 시퀀스도이다.
도 47 은 본 발명의 제 3 실시예에서의 테이블 서치기 (203B) 의 구성을 나타내는 블록도이다.
도 48 은 본 발명의 제 3 실시예에서의 동작예 1 의 시퀀스도이다.
도 49 는 본 발명의 제 4 실시예에서의 테이블 서치기 (203C) 의 구성을 나타내는 블록도이다.
도 50 은 본 발명의 제 4 실시예에서의 포워딩 테이블 (204C) 의 구성을 나타내는 블록도이다.
도 51 은 본 발명의 제 4 실시예에서의 입력 포트 테이블 메모리 (2049) 의 구성을 나타내는 블록도이다.
도 52 는 본 발명의 제 4 실시예에서의 물리 네트워크의 구성예를 나타내는 블록도이다.
도 53 은 본 발명의 제 4 실시예에서의 소스 태그가 있는 이더넷 (R) 프레임 (62C) 의 구성을 나타내는 블록도이다.
발명을 실시하기 위한 최선의 형태
이하, 본 발명의 바람직한 실시예에 대하여 도면을 참조하여 상세하게 설명 한다.
도 1 은 본 발명을 적용하는 물리 네트워크의 구성예를 나타내는 블록도이다.
도 1 의 물리 네트워크는 노드 (G1∼G4) 를 링형으로 접속하여 구성되어 있고, 노드 (G1) 는 다운링크 포트 (D/L) 와 업링크 포트 (U/L) 를 갖는 이더넷 (R) 스위치이며, 그 다운링크 포트에는 클라이언트를 접속하고, 업링크 포트에는 스위치를 접속한다. 본 실시예에서는 다운링크 포트 (D/L) 에 클라이언트 (C1) 가, 업링크 포트 (U/L) 에 노드 (G3) 및 노드 (G4) 가 각각 접속되어 있다.
노드 (G1) 는 도 1 의 물리 네트워크에서 이하에 나타내는 바와 같은 동작을 행한다.
(1) 클라이언트 (C1) 로부터 도착한 프레임을, 필요에 따라 포워딩용 등의 태그 (예를 들어, 수신선 클라이언트가 접속되어 있는 노드의 ID 나 어드레스) 를 부가한 다음에 노드 (G3) 와 노드 (G4) 의 일방 또는 양방에 전송한다.
(2) 노드 (G3) 로부터 도착한 프레임을, 필요하다면 부가되어 있는 태그를 삭제한 다음에 클라이언트 (C1) 와 노드 (G4) 의 일방 또는 양방에 전송한다.
예를 들어, 도착한 프레임이 클라이언트 (C1) 앞인 것이면, 클라이언트 (C1) 가 해당 노드에 접속되어 있기 때문에, 부가되어 있는 태그 (노드 (G1) 의 어드레스 등의 정보) 를 삭제하여 클라이언트 (C1) 에 전송한다.
(3) 노드 (G4) 로부터 도착한 프레임을, 필요하다면 부가되어 있는 태그를 삭제한 다음에 클라이언트 (C1) 와 노드 (G3) 의 일방 또는 양방에 전송한다.
예를 들어, 도착한 프레임이 클라이언트 (C1) 앞인 것이면, 클라이언트 (C1) 가 해당 노드에 접속되어 있기 때문에, 부가되어 있는 태그 (노드 (G1) 의 어드레스 등의 정보) 를 삭제하여 클라이언트 (C1) 에 전송한다.
(4) 런닝 프레임을 노드 (G3) 또는 노드 (G4) 사이에서 송수신하여, (1) 부터 (3) 에 나타낸 프레임 전송을 행할 때 필요한 어드레스 정보를 교환한다.
(5) 고속 스패닝 트리 프로토콜에서 규정되어 있는 BPDU (Bridge Protocol Data Unit) 프레임을, 노드 (G3) 또는 노드 (G4) 사이에서 송수신하여, (1) 부터 (4) 에 나타낸 동작을 행할 때 필요한 경로 정보를 교환한다.
노드 (G2) 는 노드 (G1) 와 동일한 구성과 기능을 갖는 노드이고, 다운링크 포트 (D/L) 와 업링크 포트 (U/L) 를 갖는 이더넷 (R) 스위치이다. 다운링크 포트에는 클라이언트를 접속하고, 업링크 포트에는 스위치를 접속한다. 본 실시예에서는 다운링크 포트 (D/L) 에 클라이언트 (C2) 가, 업링크 포트 (U/L) 에 노드 (G3) 및 노드 (G4) 가 각각 접속되어 있다.
노드 (G2) 는 도 1 의 물리 네트워크에서 이하에 나타내는 바와 같은 동작을 행한다.
(1) 클라이언트 (C2) 로부터 도착한 프레임을, 필요에 따라 포워딩용 등의 태그 (예를 들어, 수신선 클라이언트가 접속되어 있는 노드의 ID 나 어드레스) 를 부가한 다음에 노드 (G3) 와 노드 (G4) 의 일방 또는 양방에 전송한다.
(2) 노드 (G3) 로부터 도착한 프레임을, 필요하다면 부가되어 있는 태그를 삭제한 다음에 클라이언트 (C2) 와 노드 (G4) 의 일방 또는 양방에 전송한다.
예를 들어, 도착한 프레임이 클라이언트 (C2) 앞인 것이면, 클라이언트 (C2) 가 해당 노드에 접속되어 있기 때문에, 부가되어 있는 태그 (노드 (G2) 의 어드레스 등의 정보) 를 삭제하여 클라이언트 (C2) 에 전송한다.
(3) 노드 (G4) 로부터 도착한 프레임을, 필요하다면 부가되어 있는 태그를 삭제한 다음에 클라이언트 (C2) 와 노드 (G3) 의 일방 또는 양방에 전송한다.
예를 들어, 도착한 프레임이 클라이언트 (C2) 앞인 것이면, 클라이언트 (C2) 가 해당 노드에 접속되어 있기 때문에, 부가되어 있는 태그 (노드 (G2) 의 어드레스 등의 정보) 를 삭제하여 클라이언트 (C2) 에 전송한다.
(4) 런닝 프레임을 노드 (G3) 또는 노드 (G4) 사이에서 송수신하여, (1) 부터 (3) 에 나타낸 프레임 전송을 행할 때 필요한 어드레스 정보를 교환한다.
(5) 고속 스패닝 트리 프로토콜에서 규정되어 있는 BPDU 프레임을, 노드 (G3) 또는 노드 (G4) 사이에서 송수신하여, (1) 부터 (4) 에 나타낸 동작을 할 때 필요한 경로 정보를 교환한다.
노드 (G3) 는 노드 (G1) 와 같은 구성과 기능을 갖는 노드이고, 다운링크 포트 (D/L) 와 업링크 포트 (U/L) 를 갖는 이더넷 (R) 스위치이다. 다운링크 포트에는 클라이언트를 접속하고, 업링크 포트에는 스위치를 접속한다. 본 실시예에서는 다운링크 포트 (D/L) 에 클라이언트 (C3) 가, 업링크 포트 (U/L) 에 노드 (G1) 및 노드 (G2) 가 각각 접속되어 있다.
노드 (G3) 는 도 1 의 물리 네트워크에서 이하에 나타내는 바와 같은 동작을 행한다.
(1) 클라이언트 (C3) 로부터 도착한 프레임을, 필요에 따라 포워딩용 등의 태그 (예를 들어, 수신선 클라이언트가 접속되어 있는 노드의 ID 나 어드레스) 를 부가한 다음에 노드 (G1) 와 노드 (G2) 의 일방 또는 양방에 전송한다.
(2) 노드 (G1) 로부터 도착한 프레임을, 필요하다면 부가되어 있는 태그를 삭제한 다음에 클라이언트 (C3) 와 노드 (G2) 의 일방 또는 양방에 전송한다.
예를 들어, 도착한 프레임이 클라이언트 (C3) 앞인 것이면, 클라이언트 (C3) 가 해당 노드에 접속되어 있기 때문에, 부가되어 있는 태그 (노드 (G3) 의 어드레스 등의 정보) 를 삭제하여 클라이언트 (C3) 에 전송한다.
(3) 노드 (G2) 로부터 도착한 프레임을, 필요하면 부가되어 있는 태그를 삭제한 다음에 클라이언트 (C3) 와 노드 (G1) 의 일방 또는 양방에 전송한다.
예를 들어, 도착한 프레임이 클라이언트 (C3) 앞인 것이면, 클라이언트 (C3) 가 해당 노드에 접속되어 있기 때문에, 부가되어 있는 태그 (노드 (G3) 의 어드레스 등의 정보) 를 삭제하여 클라이언트 (C3) 에 전송한다.
(4) 런닝 프레임을 노드 (G1) 또는 노드 (G2) 사이에서 송수신하여, (1) 부터 (3) 에 나타낸 프레임 전송을 행할 때 필요한 어드레스 정보를 교환한다.
(5) 고속 스패닝 트리 프로토콜에서 규정되어 있는 BPDU 프레임을, 노드 (G1) 또는 노드 (G2) 사이에서 송수신하여, (1) 부터 (4) 에 나타낸 동작을 할 때 필요한 경로 정보를 교환한다.
노드 (G4) 는 노드 (G1) 와 같은 구성과 기능을 갖는 노드이고, 다운링크 포트 (D/L) 와 업링크 포트 (U/L) 를 갖는 이더넷 (R) 스위치이다. 다운링크 포 트에는 클라이언트를 접속하고, 업링크 포트에는 스위치를 접속한다. 본 실시예에서는 다운링크 포트 (D/L) 에는 아무것도 접속되어 있지 않고, 업링크 포트 (U/L) 에 노드 (G1) 및 노드 (G2) 가 각각 접속되어 있다.
노드 (G4) 는 도 1 의 물리 네트워크에서 이하에 나타내는 바와 같은 동작을 행한다.
(1) 노드 (G1) 로부터 도착한 프레임을, 필요하다면 노드 (G2) 에 전송한다.
(2) 노드 (G2) 로부터 도착한 프레임을, 필요하다면 노드 (G1) 에 전송한다.
(3) 런닝 프레임을 노드 (G1) 또는 노드 (G2) 사이에서 송수신하여, (1) 부터 (2) 에 나타낸 프레임 전송 동작을 행할 때 필요한 어드레스 정보를 교환한다.
(4) 고속 스패닝 트리 프로토콜에서 규정되어 있는 BPDU 프레임을, 노드 (G1) 또는 노드 (G2) 사이에서 송수신하여, (1) 부터 (3) 에 나타낸 동작을 행할 때 필요한 경로 정보를 교환한다.
클라이언트 (C1) 는 PC, 서버, 라우터, 스위치 및 그 밖의 이더넷 (R) 프레임을 송수신하는 모든 전자기기를 의미한다. 본 실시예에서는 클라이언트 (C1) 를 ICMP PING 을 주고받을 수 있는 PC 와 기본 소프트웨어의 조합으로 간주한 경우에 대하여 설명한다. 또한, 여기에서 설명하는 동작은 ICMP PING 이외의 애플리케이션에서도 동일하게 행할 수 있다. 이 애플리케이션에는 NetBIOS 나 Apple Talk 에 의한 파일이나 프린터의 공유 외에 TCP/IP, UDP/IP 및 이들을 이용한 애플리케이션인 HTTP, TELNET, FTP, SMTP, POP, SSL 등이 포함된다. 본 구성예에서는 클라이언트 (C1) 는 노드 (G1) 의 다운링크 포트 (D/L) 에 접속되어 있 다.
클라이언트 (C2) 는 클라이언트 (C1) 와 동일한 클라이언트이며, PC, 서버, 라우터, 스위치 및 그 밖의 이더넷 (R) 프레임을 송수신하는 모든 전자기기를 의미한다. 본 실시예에서는 클라이언트 (C2) 를 ICMP PING 을 주고받을 수 있는 PC 와 기본 소프트웨어의 조합으로 간주한 경우에 대하여 설명한다. 본 구성예에서는 클라이언트 (C2) 는 노드 (G2) 의 다운링크 포트 (D/L) 에 접속되어 있다.
클라이언트 (C3) 는 클라이언트 (C1) 와 동일한 클라이언트이고, PC, 서버, 라우터, 스위치 및 그 밖의 이더넷 (R) 프레임을 송수신하는 모든 전자기기를 의미한다. 본 실시예에서는 클라이언트 (C3) 를 ICMP PING 을 주고받을 수 있는 PC 와 기본 소프트웨어의 조합으로 간주한 경우에 대하여 설명한다. 본 구성예에서는 클라이언트 (C3) 는 노드 (G3) 의 다운링크 포트 (D/L) 에 접속되어 있다.
도 2 는 도 1 의 네트워크 상에서 전송되는 이더넷 (R) 프레임의 구성을 나타내는 블록도이다.
IEEE 802.3 이더넷 (R) 프레임 (60) 은 이더넷 (R) 에서 사용되는 프레임 포맷이고, 도 2 의 프레임 포맷으로 형성된다. 수신선 MAC 어드레스에는, 네트워크 제어 프레임의 경우, 규격에 따라 특별한 MAC 어드레스가 저장된다.
도 3 은 도 1 의 네트워크를 흐르는 VLAN Tagged (VLAN 태그가 있는) 이더넷 (R) 프레임의 구성을 나타내는 블록도이다.
IEEE 802.3 VLAN Tagged 이더넷 (R) 프레임 (61) 은, IEEE 802.3 이더넷 (R) 프레임 (60) 의 VLAN 태그 (606) 가 있는 프레임이다. 이더넷 (R) 에서 사용되 는 프레임 포맷이고, 도 3 의 프레임 포맷으로 형성된다. 수신선 MAC 어드레스에는 네트워크 제어 프레임의 경우, 규격에 따라 특별한 MAC 어드레스가 저장되며, 네트워크 분리 정보를 저장하기 위한 VLAN 태그 (606) 를 프레임 내에 가진다.
도 4 는 도 3 의 VLAN Tagged 이더넷 (R) 프레임에서의 VLAN 태그의 구성을 나타내는 블록도이다.
VLAN 태그 (606) 의 프레임 포맷을 도 4 에 나타낸다. 태그 타입 (6061) 에는 프레임이 태그가 있는 것임을 나타내는 태그의 식별 ID 가 저장되며, 규격 상은 0x8100 이 저장된다. 우선도 (6062) 에는 0d000∼0d111 까지에서 3비트 사용하여 8단계 프레임의 우선 정보가 저장된다. CFI (6063) 는 토큰 링에서 사용되는 소스 라우팅을 위한 경로 지정 정보가 들어가 있는 것을 나타낸다. VLAN ID (6064) 는 네트워크를 분리하기 위한 ID 정보가 저장된다. 프레임을 중계하는 노드는 자체 ID 를 참조함으로써 ID 단위로 프레임을 전송하는 경로를 제한하여 네트워크 분리를 행한다.
도 5 는 도 1 의 네트워크 상에서 전송되는 포워딩 태그가 있는 이더넷 (R) 프레임의 구성을 나타내는 블록도이다.
포워딩 태그가 있는 이더넷 (R) 프레임 (62) 은 IEEE 802.3 이더넷 (R) 프레임 (60) 의 태그 (620) 가 있는 프레임이다. 이더넷 (R) 에서 사용되는 프레임 포맷과 동일한 프레임 포맷이고, 도 5 의 프레임 포맷으로 형성된다. 수신선 MAC 어드레스에는 네트워크 제어 프레임의 경우, 규격에 따라 특별한 MAC 어드레스가 저장되며, 프레임을 중계하기 위한 정보를 저장하기 위한 태그 (620) 를 가지는 것을 특징으로 한다. 태그 (620) 의 우선도·태그 식별 정보 (6201) 에는 포워딩 태그를 나타내는 비트가 사용된다.
도 6 은 도 5 의 포워딩 태그가 있는 이더넷 (R) 프레임에서의 태그 (620) 의 구성을 나타내는 블록도이다.
태그 (620) 의 프레임 포맷을 도 6 에 나타낸다. 태그 타입 (6061) 에는 프레임이 태그가 있는 것임을 나타내는 태그의 식별 ID 가 저장되고, 규격상과 동일한 0x8100 이 저장된다. 우선도·태그 식별 정보 (6201) 에는 0d000∼0d111 까지에서 3비트 사용하여 4단계의 프레임의 우선 정보와 태그의 종류를 나타내는 정보가 저장된다. 태그의 종류에는 프레임의 수신선 노드를 나타내는 포워딩 태그, 브로드캐스트 전송원이 나타내는 소스 태그 등, 사용자의 용도에 따라 태그에 저장하는 정보를 정의할 수 있다. CFI (6063) 는 토큰 링에서 사용되는 소스 라우팅을 위한 경로 지정 정보가 들어가 있는 것을 나타낸다. VLAN ID (6202) 에는 태그의 종류에 따라 송신선 클라이언트가 접속되어 있는 노드의 노드 어드레스, 또는 송신원 노드의 노드 어드레스 등의 정보가 저장된다.
도 7 은 도 1 의 네트워크 상에서 흐르는 런닝 프레임의 구성을 나타내는 블록도이다.
런닝 프레임 (63) 은 IEEE 802.3 이더넷 (R) 프레임 (60) 에, 태그 (620) 가 있는 프레임이고, 수신선 MAC 어드레스에, 프레임이 런닝 프레임인 것을 나타내는 런닝 프레임 식별용 MAC 어드레스 (631) 가 저장되는 것을 특징으로 한다. 태그 (620) 의 우선도·태그 식별 정보 (6201) 에는 브로드캐스트 태그를 나타내는 비트가 사용된다. 또한, 이더넷 (R) 에서 사용되는 프레임 포맷과 동일한 프레임 포맷이고, 도 5 와 동일한 프레임 포맷으로 형성된다.
도 8 은 도 1 의 네트워크를 흐르는 VLAN 태그가 있는 런닝 프레임의 구성을 나타내는 블록도이다.
런닝 프레임 (63) 은 IEEE 802.3 이더넷 (R) 프레임 (60) 에, 태그 (620) 가 있는 프레임이고, 수신선 MAC 어드레스에 프레임이 런닝 프레임인 것을 나타내는 런닝 프레임 식별용 MAC 어드레스 (631) 가 저장되는 것을 특징으로 한다. 태그 (620) 의 우선도·태그 식별 (6201) 에는 브로드캐스트 태그를 나타내는 비트가 사용된다. 또한, 이더넷 (R) 에서 사용되는 프레임 포맷과 동일한 프레임 포맷이고, 도 5 의 프레임 포맷에 VLAN 태그를 삽입한 포맷으로 형성된다.
도 9 는 도 1 에 나타낸 노드 (G1 ; 스위칭 허브 (1)) 의 구성을 상세하게 나타낸 블록도이다.
도 9 에 있어서, 스위칭 허브 (1 ; 즉 노드 (G1)) 는 본 발명의 방법 및 회로 구성을 적용한 패킷 포워딩 기구 (20), CPU (30), 메인 메모리 (40), 콘솔 I/O (51) 을 구비하여 구성되는 이더넷 (R) 스위치이다. 스위칭 허브 (1) 는 I/F (1), I/F (2), I/F (3), I/F (4) 에 접속되는 PHY (15), PHY (16), PHY (17), PHY (18), MAC (11), MAC (12), MAC (13), MAC (14) 를 사용하여 이더넷 (R) 프레임의 송수신을 행한다.
본 발명을 적용한 패킷 포워딩 기구 (20) 는 수신한 프레임을 적절한 인터페이스에 전송하고, CPU (30) 및 메인 메모리 (40) 에는 전송 제어 프로그램이 저장 되며, 패킷 포워딩 기구에 제어 지시를 행한다.
도 10 은 도 9 에 기재된 패킷 포워딩 기구 (20) 의 구성을 상세하게 나타낸 블록도이다.
패킷 포워딩 기구 (20) 는 종래의 회로인 프레임 재기록기 (205), 프레임 합성기 (206), 프레임 전송기 (207) 에 더하여 본 발명의 기능을 탑재한 프레임 해석기 (201), 런닝 프레임 송신 관리기 (202), 포워딩 테이블 (204), 테이블 서치기 (203) 를 구비하여 구성된다.
패킷 포워딩 기구 (20) 는 도 2 의 IEEE 802.3 이더넷 (R) 프레임 (60), 도 3 의 IEEE 802.3 VLAN Tagged 이더넷 (R) 프레임 (61), 도 5 의 포워딩 태그가 있는 이더넷 (R) 프레임, 도 6 의 런닝 프레임 (63) 을 입력 프레임 (101) 으로서 수신하고, I/F (1), I/F (2), I/F (3), I/F (4) 에 접속되는 MAC (11), MAC (12), MAC (13), MAC (14) 에 출력 프레임 (102) 으로서 전송하는 기구를 갖는다.
CPU (30) 에서는 네트워크의 제어 및 기기 제어를 위한 프로그램인 네트워크 제어 프로그램 (304) 이나 기기 제어 프로그램 (305) 이 동작하고 있음과 함께 프레임의 송신 처리나 후술하는 도 16, 도 17, 도 18 의 포워딩 테이블 메모리의 정보를 조작하는 포워딩 테이블 제어 프로그램 (301) 이 동작하고 있다. 포워딩 테이블 제어 프로그램 (301) 은 마찬가지로 CPU (30) 상에서 동작하는 런닝 관리 프로그램 (302) 이나 스패닝 트리 제어 프로그램 (303) 의 지시에 따라 네트워크 제어에 필요한 정보를, 테이블 기록 정보 (3012) 와, 테이블 기록 어드레스 (3011) 를 포워딩 테이블 (204) 에 대하여 출력함으로써, 네트워크 제어에 필요한 정보의 송신 및 수신의 제어를 행한다.
메인 메모리 (40) 는 도 23 에 나타낸 CPU (30) 상에서 실행되는 각 프로그램 및 도 23 에 기재된 메모리 복제 정보 (3013) 를 기억한다.
메모리 복제 정보 (3013) 는 태그 포워딩 테이블 메모리 (70131), 브로드캐스트 포워딩 테이블 메모리 (70132), MAC 포워딩 테이블 메모리 (70133), TAG 어드레스 관리 테이블 (70134) 이렇게 4개의 테이블을 가진다.
태그 포워딩 테이블 메모리 (70131) 는 도 15 에 기재된 태그 포워딩 테이블 메모리 (2041) 와 동일 내용의 테이블을 메인 메모리 (40) 상에 작성한 것이다.
브로드캐스트 테이블 메모리 (70132) 는 도 15 에 기재된 브로드캐스트 테이블 메모리 (2041) 와 동일 내용의 테이블을 메인 메모리 (40) 상에 작성한 것이다.
MAC 포워딩 테이블 메모리 (70133) 는 도 15 에 기재된 MAC 포워딩 테이블 메모리 (2043) 와 동일 내용의 테이블을 메인 메모리 (40) 상에 작성한 것이다.
도 11 은 도 10 에 기재된 프레임 해석기 (201) 의 구성을 상세하게 나타낸 블록도이다.
도 11 의 프레임 해석기 (201) 는 입력 프레임 (101) 의 프레임을 해석하여, 전송경로를 결정하기 위한 테이블 서치키 정보 (20131), 프레임 헤더 정보 (20141), 그리고 제어 프레임 (예를 들어 BPDU 프레임) 을 CPU (30) 에 송신하는 기능을 갖는다.
프레임 타입 판정기 (2011) 는 입력 프레임 (101) 의 프레임 종류, 입력 포트의 종류를 판정한다. 즉, 프레임의 종류가 IEEE 802.3 이더넷 (R) 프레임 (60), IEEE 802.3 VLAN Tagged 이더넷 (R) 프레임 (61), 포워딩 태그가 있는 이더넷 (R) 프레임, 런닝 프레임 (63) 중 어떤 종류인지를 판정한다. 입력 포트의 종류에 대해서는 도 23 의 기기 제어 프로그램 (305) 에서 설정되는 포트의 속성, 업링크 포트인지 다운링크 포트인지의 정보를 기준으로, 입력 포트 번호에서 입력 포트의 종별을 판정한다. 판정 정보는 서치키 결정기 (2013), 프레임 헤더 해석기 (2014) 에 송신한다. 또한, 입력 프레임 (101) 을, 제어 프레임 수신기 (2012) 및 프레임 헤더 해석기 (2014) 에 송신한다.
프레임 헤더 해석기 (2014) 는 입력 프레임 (101) 의 정보와, 프레임 타입 판정기 (111) 에서 송신되는 판정 정보로부터, 프레임 헤더 정보의 추출 및 수신선 MAC 어드레스, 태그의 종류를 판정한다.
수신선 MAC 어드레스에 대해서는 통상 MAC 어드레스, 네트워크 제어 프레임용 MAC 어드레스인지 런닝 프레임 식별용 MAC 어드레스인지를 판정한다. 태그의 종류에 대해서는 VLAN 태그 (606) 인지, 포워딩 태그 (해당 노드 앞, 타노드 앞) 인지, 브로드캐스트 태그인지 판정한다. 이들 판정 정보는 서치키 결정기 (2013) 에 송신한다. 또한, 프레임의 입력 포트 정보와 수신선 MAC 어드레스 (601), 송신원 MAC 어드레스 (602), VLAN 태그 (606), 태그 (620), 프레임에서 추출한 이더넷 (R) 속성 정보 (603) 를 프레임 헤더 정보 (20141), 페이로드 (604) 를 입력 프레임 페이로드 정보 (20111) 로서 출력한다.
서치키 결정기 (2013) 는 프레임 타입 판정기 (2011), 프레임 헤더 해석기 (2014) 에서 송신되는 프레임의 종류, 입력 포트의 종류, 수신선 MAC 어드레스의 종류, 태그의 종류의 정보로부터, 테이블 서치에 사용하는 키를 결정한다.
결정한 키 정보는 테이블 서치키 정보 (20131) 로서 출력한다. 서치키의 결정 방법은, MAC 수신선 어드레스가 네트워크 제어 프레임용인 경우, 또는 런닝 프레임 식별용 MAC 어드레스인 경우에는 CPU 앞의 전송 키가 결정되고, 그 경우 제어 프레임 수신기 (2012) 에 대하여 CPU 앞 전송 프레임인 것을 통지한다.
타노드 앞의 포워딩 태그 (수신선 클라이언트가 접속되어 있는 노드의 어드레스 등이 저장되어 있다) 가 있는 이더넷 (R) 프레임 (62) 의 경우에는 태그 포워딩 테이블 및 브로드캐스트 포워딩 테이블을 서치하기 위한 키 정보 (예를 들어, 태그 (620) 에 저장되어 있는 정보 등), 해당 노드 앞의 포워딩 태그가 있는 이더넷 (R) 프레임 (62), IEEE 802.3 이더넷 (R) 프레임 (60), IEEE 802.3 VLAN Tagged 이더넷 (R) 프레임 (61) 의 경우에는 MAC 포워딩 테이블 및 브로드캐스트 포워딩 테이블을 서치하기 위한 키 정보 (프레임 (60 과 62) 의 경우에는 수신선 MAC 어드레스 (601) 에 저장되어 있는 정보, 프레임 (61) 의 경우에는 수신선 MAC 어드레스 (601) 와 VLAN 태그 (606) 에 저장되어 있는 정보) 를 출력한다.
제어 프레임 수신기 (2012) 는 서치키 결정기로부터 CPU 앞 전송 프레임의 지시가 있는 경우에 프레임 타입 판정기 (2011) 에서 입력되는 입력 프레임 (101) 을 CPU 앞 전송 프레임 (20121) 으로서 출력한다.
도 12 는 도 10 에 기재된 런닝 프레임 송신 관리기 (202) 의 구성을 상세하게 나타낸 블록도이다.
도 12 의 런닝 프레임 송신 관리기 (202) 는 런닝 프레임의 송신 요구를 관 리하며, 동일 프레임에 대하여 CPU (30) 에 런닝 동작 요구를 빈번히 실시하지 않게 하여 CPU 의 처리 부하를 낮추는 기능을 실현하는 MAC SA 테이블 캐시 (2025) 를 구비하고 있다. 또한, 이 런닝 프레임 송신 관리기 (202) 의 동작에 의해, 런닝 동작이 필요한 프레임의 확인 및 CPU 에 러닝 프레임의 송신 요구를 행한다.
런닝 프레임 관리기 (2021) 는 프레임 해석기 (201) 로부터 프레임 헤더 정보 (20141) 를 수취하고 송신원 MAC 어드레스를 체크하여 런닝 프레임의 송신 요구를 행한다. 그 때의 동작은 하기와 같아진다.
프레임 헤더 정보의 MAC 송신원 어드레스를 확인한 후, MAC SA 테이블 캐시 (2025) 를 판독 입력하여, 동일한 MAC 송신원 어드레스가 엔트리되어 있지 않은지 확인한다. 확인 후, 엔트리되어 있지 않은 경우에는 송신 요구기 (2023) 에, 프레임 헤더 정보 (20141) 와 함께 런닝 프레임 송신 요구 (20231) 를 출력한다. 또한, 동시에 MAC 송신원 어드레스 정보를 MAC SA 테이블 캐시 (2025) 에 엔트리한다. 또한, 확인시에 동일한 MAC 수신선 어드레스가 엔트리되어 있던 경우에는 송신 요구를 출력하지 않는다.
그리고, MAC SA 테이블 캐시 (2025) 를 에이징 요구 접수기 (2022) 로부터의 요구에 의해 제로 클리어하는 기능이 있다.
도 13 은 도 12 에 기재된 MAC SA 테이블 캐시 (2025) 의 구성을 상세하게 나타낸 블록도이다.
MAC SA 테이블 캐시 (2025) 는 도 13 에 나타내는 바와 같이 프레임의 MAC 송신원 어드레스를 저장하는 기능이 있고, 수신 프레임의 MAC 송신원 어드레스 정 보를 유지한다. 이 MAC SA 테이블 캐시 (2025) 에는 신규 프레임이 수신되었을 때 그 프레임의 MAC 송신원 어드레스가 MAC SA 정보로서 저장된다. 2회째 수신할 때 동일 정보가 존재하고 있을 때에는 MAC 송신원 어드레스는 엔트리에 저장되지 않는다.
송신 요구기 (2023) 는 CPU (30) 에 런닝 프레임의 송신 요구를 행한다. 런닝 프레임 관리기 (2021) 로부터 런닝 프레임의 송신 요구가 있었을 때, CPU (30) 에 런닝 프레임의 송신 처리를 실행시키기 위해 런닝 프레임 송신 요구 (20231) 를 출력한다.
에이징 요구 접수기 (2022) 는 CPU (30) 로부터의 런닝 에이징 요구 (3021) 를 접수한다. 런닝 에이징 요구 (3021) 를 수신하면, 런닝 프레임 관리기 (2021) 에 MAC SA 테이블 캐시 (2025) 의 엔트리를 모두 클리어하는 처리 요구를 한다.
도 14 의 테이블 서치기 (203) 는 프레임의 전송선을 결정하는 기능을 하며, 테이블 관리기 (2031) 와 정보 비교기 (2032) 를 구비하여 구성된다.
테이블 관리기 (2031) 는 테이블 서치키 정보 (20131) 에 따라 전송선의 검색을 위한 포워딩 테이블 (204) 의 테이블 서치를 행한다.
프레임 헤더 정보 (20141) 는 테이블 서치기 (203) 로부터 프레임 헤더의 재기록을 행하는 프레임 재기록기 (205) 에 출력된다.
또한, 테이블 서치기 (203) 는 테이블 서치키 정보 (20131 ; 예를 들어 VLAN ID·태그 정보 (6202) 에 기재되어 있는 내용 등) 에 기초하여 태그 포워딩 테이블 메모리 (2041), MAC 포워딩 테이블 메모리 (2043), 브로드캐스트 포워딩 테이블 메모리 (2042) 에 대한 서치 지시를 입력한다. 복수의 서치키 정보가 입력된 경우에는, 태그 포워딩 테이블 > MAC 포워딩 테이블 > 브로드캐스트 포워딩 테이블의 우선순위로 각 테이블에 대한 서치를 행하는 지시를 테이블 판독 입력 어드레스 (20311) 로서 포워딩 테이블 (204) 에 출력한다.
각 테이블의 서치 결과에 관해서는 정보 비교기 (2032) 로부터 테이블 서치키 정보 (20131) 와 테이블 정보 (20451) 가 일치했을 때에는 히트 정보, 다를 때에는 미스히트 정보를 수취하여, 히트할 때까지 동일한 테이블 상의 다른 어드레스에 대한 서치 또는 다음 우선순위의 테이블에 대한 서치 지시를 포워딩 테이블 (204) 에 대하여 행한다. 또한, MAC 포워딩 테이블 참조시에 히트했을 때에는 엔트리 히트 정보 (20312) 를 출력하여, 테이블 메모리 판독 입력 제어 회로 (2046) 를 통해 도 19 의 에이징 관리 테이블 (2044) 에 대하여, 히트한 MAC 포워딩 테이블의 메모리 어드레스를 메모리 어드레스로 하고, 엔트리 종별이 MAC→Tag 일 때에는 MAC-Tag 엔트리 관리 정보, MAC→Port 일 때에는 MAC-Port 엔트리 관리 정보의 엔트리로 엔트리 히트 정보 (20312) 를 저장한다. 또한, 본 실시예에서는 MAC 포워딩 테이블과 에이징 관리 테이블의 어드레스 공간을 대응시키고 있기 때문에, 상기한 바와 같은 처리로 에이징 관리 테이블에 대한 기록이 실현 가능해진다.
또한, 테이블 서치키 정보 (20131) 와 포워딩 테이블 (204) 에서 얻은 테이블 정보 (20451) 를 비교하기 위해, 테이블 서치키 정보 (20131) 를 정보 비교기 (2032) 에 출력한다. 출력하는 테이블 서치키 정보 (20131) 는 태그 포워딩 테이블 메모리 (2041) 에 대한 서치를 행할 때에는 VLAN ID·태그 정보 (6202 ; 송신선 클라이언트가 접속되어 있는 노드의 노드 어드레스 등의 정보) 를, MAC 포워딩 테이블 메모리 (2043) 에 서치할 때에는 송신선 MAC 어드레스 (601) 와 VLAN 태그 (606) 를, 브로드캐스트 포워딩 테이블 메모리 (2042) 에 서치를 행할 때에는 VLAN ID·태그 정보 (6202) 와 VLAN ID (6064) 를 출력한다. 또한, 해당 노드 앞의 포워딩 태그가 있는 이더넷 (R) 프레임의 경우에만 정보 비교기 (2032) 에 태그 제어 정보 (20322) 로서 태그 삭제의 출력을 행하도록 지시한다.
정보 비교기 (2032) 는 테이블 관리기 (2031) 가 포워딩 테이블 (204) 에 서치를 행한 결과 (테이블 정보 (20451)) 와, 서치 대상이 되는 테이블 서치키 정보 (20131) 를 비교하여, 일치한 경우 테이블의 엔트리에 저장되어 있는 출력 포트 정보로부터 출력 포트를 결정한다. 상기 서술한 바와 같이, 테이블 관리기 (2031) 로부터는 서치하는 테이블에 따라 프레임의 입력 포트 정보 및 VLAN ID·태그 정보 (6202), 송신선 MAC 어드레스 (601), VLAN 태그 (606) 또는 VLAN ID (6064) 등의 정보 (테이블 서치키 정보) 를 수취하고, 한편 포워딩 테이블 (204) 로부터는 테이블 관리기 (2031) 가 포워딩 테이블 (204) 에 테이블 판독 입력 지시를 행한 결과를 테이블 정보 (20451) 로서 수취하여, 각 테이블의 종류에 따라 테이블 서치키 정보 (20131) 와 테이블 정보 (20451) 를 비교하고, 그것들이 일치하면 프레임 재기록기에 태그 정보 (20323) 및 태그 제어 정보 (20322) 를 출력하고, 다시 테이블의 엔트리에 저장되어 있는 출력 포트 정보를 출력 포트 정보 (20321) 로서 출력한다.
또한, 출력 포트 정보 (20321) 의 출력시에는 입력 포트 정보와 비교하여 동일한 포트 정보일 때에는 프레임의 루프를 방지하기 위해 출력 포트 정보를 출력하지 않고 프레임은 폐기한다. 아래에 각 테이블 참조시의 동작 내용을 나타낸다.
태그 포워딩 테이블 메모리 (2041) 에 대한 참조시에는 아래와 같이 동작한다. 태그 포워딩 테이블 메모리 (2041) 의 메모리 어드레스 (0x0000∼0x1000) 는 VLAN ID·태그 정보 (6202) 의 값과 대응시키고 있기 때문에, 즉 VLAN ID·태그정보 (6202) 가, 참조하는 메모리 어드레스로 되어 있기 때문에, 정보 비교를 행할 필요는 없다. 따라서 VLAN ID·태그 정보 (6202) 에 저장된 값이 나타내는 어드레스 (엔트리) 에 존재하는 태그 포워딩 테이블 메모리 (2041) 의 출력 포트 정보, 장해시 출력 포트 정보 (도 17 참조) 를 출력 포트 정보 (20321) 에 출력한다. 또한, 테이블 서치키 정보 (20131) 와 테이블 정보 (20451) 와 비교한 결과, 일치하지 않은 경우에는 테이블 관리기 (2031) 에 엔트리 미스히트의 정보를 출력한다.
MAC 포워딩 테이블 메모리 (2043) 에 대한 참조시에는 테이블 서치키 정보 (20131) 와, 도 16 의 MAC 포워딩 테이블 메모리 (2043) 의 테이블 엔트리 상의 MAC 수신선 어드레스, 송신선 1단째 TAG 정보를 비교하고, 일치한 경우에는 테이블 엔트리에 기재되어 있는 출력 포트 정보, 장해 출력 포트 정보는 출력 포트 정보 (20321) 에 출력, 태그 정보는 태그 정보 (20323), 태그 제어 정보는 태그 제어 정보 (20322) 로서 출력한다. 일치하지 않을 때에는 테이블 관리기 (2031) 에 엔 트리 미스히트의 정보를 출력한다.
브로드캐스트 포워딩 테이블 메모리 (2042) 에의 참조시는 이하와 같이 동작한다. 브로드캐스트 포워딩 테이블 메모리 (2042) 의 메모리 어드레스 (0x0000∼0x1000) 는 VLAN ID·태그 정보 (6202) 또는 VLAN ID (6064) 의 값과 대응되어 있기 때문에, 즉 테이블 서치 키 정보 (20131) 는 VLAN ID·태그 정보 (6202), 또는 VLAN ID (6064) 가 참조하는 메모리 어드레스로 되어 있기 때문에, 정보 비교를 행할 필요는 없다. 도 18 의 브로드캐스트 포워딩 테이블 메모리 (2042) 의 복수 출력 포트 정보는 복수 출력 포트 정보로서 등록되어 있지 않은 포트 번호가 입력 포트 정보와 일치하고 있지 않은지 확인 후, 일치한 경우에는 프레임은 폐기, 일치하고 있지 않은 경우에는 출력 포트 정보 (20321) 로서 출력한다. 또한, 참조 메모리 어드레스 이전에 엔트리가 없는 경우에는 테이블 관리기 (2031) 에 대하여, 엔트리 미스히트의 정보를 출력한다.
도 15 는 도 10 에 기재된 포워딩 테이블 (204) 의 구성을 상세히 나타낸 블록도이다.
도 15 의 포워딩 테이블 (204) 에는 프레임을 전송하기 위한 정보가 테이블 정보로서 저장된다.
테이블 메모리 판독 입력 제어 회로 (2046) 는 테이블 서치기 (203) 로부터, 판독 입력 대처로 하는 테이블 어드레스의 판독 입력을 행하고, 그 결과를 출력한다. 각 테이블에 대한 판독 입력 처리는 하기와 같이 동작한다.
(1) 도 17 의 태그 포워딩 테이블 메모리 (2041) 로의 판독 입력시는, 테이 블 판독 입력 어드레스 (20311) 로서, VLAN ID·태그 정보 (6202) 를 수취하고, 그 정보와 동일한 메모리 어드레스를 참조하여, 거기에 엔트리되어 있는, 출력 포트 정보, 장애시 출력 포트 정보를 메모리 정보 출력 회로 (2045) 로 출력한다.
(2) 도 16 의 MAC 포워딩 테이블 메모리 (2043) 로의 판독 입력시는, 테이블 판독 입력 어드레스 (20311) 를 수신한 후, 그 어드레스를 메모리 어드레스로 하고, 도 19 에 나타내는 에이징 관리 테이블 (2044) 의 참조를 행하고, MAC-Tag 엔트리 관리 정보, MAC-Port 엔트리 관리 정보를 참조한다. 그 후, 2 개의 엔트리가 쌍방 모두 엔트리 무효가 아니면, 동일한 메모리 어드레스를 사용하여, MAC 포워딩 테이블 메모리 (2043) 로 액세스하여, 테이블 정보를 판독 입력하고, 테이블 엔트리 정보를 메모리 정보 출력 회로 (2045) 로 출력한다. 또한, 2 개의 엔트리가 쌍방 모두 엔트리 무효인 경우에는, MAC 포워딩 테이블 메모리 (2043) 는 참조하지 않고, 엔트리가 없는 것을 엔트리 히트 정보 (20312) 로서 출력한다.
(3) 도 18 의 브로드캐스트 포워딩 테이블 메모리 (2042) 로의 판독 입력시는 테이블 판독 입력 어드레스 (20311) 로서, VLAN ID·태그 정보 (6202) 또는 VLAN ID (6064) 를 수취하고, 그 정보와 동일한 메모리 어드레스를 참조하여, 거기에 엔트리되어 있는 출력 포트 정보를 메모리 정보 출력 회로 (2045) 로 출력한다.
메모리 정보 출력 회로 (2045) 는 테이블 메모리 판독 입력 제어 회로 (2046) 가 판독 입력을 행한 테이블 엔트리 정보를 테이블 정보 (20451) 로서, 테이블 서치기 (203) 로 출력한다.
도 16 은 도 15 에 기재된 MAC 포워딩 테이블 메모리 (2043) 의 구성을 상세 히 나타낸 블록도이다.
MAC 포워딩 테이블 메모리 (2043) 는 도 16 의 테이블 구성으로 각 엔트리가 저장되고, IEEE802.3 이더넷 (R) 프레임, IEEE803.3 VLAN Tagged 이더넷 (R) 프레임의 전송선 정보를 저장하기 위해 사용된다. 메모리 어드레스 범위는 임의이고, 에이징 관리 테이블 (2044) 과 동일한 메모리 어드레스 범위를 갖는다. 본 블록 구성에서는 일례로서, 0x00000∼0x7FFFF 까지 가지며, 최대 8388706 까지 저장 가능하다. MAC 수신선 어드레스에는 프레임의 수신선 MAC 어드레스 (601), 수신선 1 단째 TAG 정보에는 프레임의 VLAN 태그 (606) 에 상당하는 것이 저장된다. 또한, 엔트리 종별하여, 태그 (620) 를 부여 처리가 발생하는 엔트리를 나타내는 MAC→Tag 와, 태그 처리가 발생하지 않는 MAC→Port 의 2 종류의 엔트리 종별이 관리된다. 출력 포트 정보에는 전송선의 포트 번호, 장애시 출력 포트 번호에는 장애 발생시의 출력 포트 번호, TAG 제어 정보에는 프레임으로의 태그 삽입 동작의 유무, TAG 정보에는 태그 삽입시에 삽입되는 태그 정보가 저장된다.
도 17 은 도 15 에 기재된 태그 포워딩 테이블 메모리 (2041) 의 구성을 나타낸 블록도이다. 이 태그 포워딩 테이블 메모리는 문헌 3 에 기재된 스패닝 트리 프로토콜을 사용한 방법으로 작성 가능하다.
태그 포워딩 테이블 메모리 (2041) 는 도 17 의 테이블 구성으로 각 엔트리가 저장되고, 포워딩 태그가 있는 프레임의 전송선 정보를 저장하기 위해 사용된다. 메모리 어드레스 범위는 OxO000∼0x1000 이고, 최대 4096 엔트리 저장된다. 이 메모리 어드레스는 VLAN (6202) 의 값에 대응하도록 관리하고 있다. 출력 포트 정보에는 프레임의 전송선 포트 번호, 장애시 출력 포트 정보는 출력 포트가 장애하고 있을 때에 전송하는 포트 정보가 저장된다.
도 18 은 도 15 에 기재된 브로드캐스트 테이블 메모리 (2042) 의 구성을 상세히 나타낸 블록도이다. 이 브로드캐스트 포워딩 테이블은 종래 기존의 스패닝 트리 프로토콜을 사용하여 작성 가능하다.
브로드캐스트 포워딩 테이블 메모리 (2042) 는 도 18 의 테이블 구성으로 각 엔트리가 저장되고, 브로드캐스트 태그가 있는 이더넷 (R) 프레임 및, IEEE802.3 이더넷 (R) 프레임, IEEE803.3 VLAN Tagged 이더넷 (R) 프레임의 브로드캐스트 전송선 정보를 저장하기 위해 사용된다. 메모리 어드레스 범위는 0xO000∼0x1000 이고, 최대 4096 엔트리 저장된다. 또한, 이 메모리 어드레스는 VLAN ID·태그 정보 (6202) 또는 VLAN ID (6064) 의 값에 대응하도록 관리하고 있다. 복수 출력 포트 정보에는 브로드캐스트 전송을 행해도 되는 복수의 포트 번호가 저장된다.
도 19 는 도 15 에 기재된 에이징 관리 테이블 (2044) 의 구성을 상세히 나타낸 블록도이다.
에이징 관리 테이블 (2044) 은 도 19 의 구성으로 각 엔트리가 저장되고, MAC 포워딩 테이블 메모리 (2043) 의 엔트리의 액세스 상황의 관리, 엔트리의 유무를 관리하기 위해 사용된다. 메모리 어드레스 범위는 임의이고, MAC 포워딩 테이블 메모리 (2043) 와 동일한 메모리 어드레스 범위를 갖는다. MAC-TAG 엔트리 관리 정보에는 MAC 포워딩 테이블 메모리의 엔트리 종별이 MAC→Tag 인 엔트리의 액세스 상황 및 엔트리 유무 정보가 저장되고, 노히트는 사용되고 있지 않은 엔 트리, 히트는 전송에 사용된 엔트리, 엔트리 무효는 엔트리가 무효인 것, 엔트리 보호는 엔트리 삭제할 수 없는 것을 나타낸다. 마찬가지로, MAC-Port 엔트리 관리 정보에는 MAC 포워딩 테이블 메모리의 엔트리 종별이, MAC→Port 인 엔트리의 액세스 상황 및 엔트리 유무 정보가 저장된다.
에이징 제어기 (2047) 는 에이징 관리 테이블 (2044) 의 엔트리에 대하여 에이징 동작을 행한다. 에이징은 하기와 같이 동작한다. CPU (30) 로부터 MAC/TAG 에이징 제어 (3022) 로서, MAC→Port, 또는 MAC-Tag 중 어느 쪽의 엔트리 종별에 에이징을 걸 것인가의 정보와 함께 에이징 요구를 접수한다. 요구를 접수하면, 에이징 관리 테이블 (2044) 에 액세스하고, 대상의 엔트리 종별의 정보를 모두 판독 입력하고, 엔트리 상, 히트로 저장되어 있는 것은 노히트로의 엔트리 내용의 변경, 노히트로 저장되어 있는 것은 엔트리 무효로의 엔트리 내용의 변경을 행함과 함께, 그 메모리 어드레스를 CPU (30) 에 통지한다.
테이블 메모리 기록 제어 회로 (2048) 는 각 테이블로의 엔트리의 기록 동작을 행한다. 테이블 기록 어드레스 (3011) 로부터, MAC 포워딩 테이블 메모리 (2043), 태그 포워딩 테이블 (2041), 브로드캐스트 테이블 메모리 (2042) 중 어느 하나의 메모리 어드레스가 입력되면, 그 메모리 어드레스에 대하여, 테이블 기록 정보 (3012) 를 테이블 엔트리로서 기록한다.
도 20 은 도 10 에 기재된 프레임 재기록기 (205) 의 구성을 상세히 나타낸 블록도이다.
도 20 의 프레임 재기록기 (205) 는 프레임의 헤더 내용을 재기록 동작을 행 한다.
프레임 헤더 버퍼 (2054) 는 프레임의 헤더 정보의 저장 및 재기록을 위한 버퍼로서 사용된다. 프레임 헤더 정보 (20141) 의 정보는 프레임 헤더 버퍼 (2054) 로 입력되고, 프레임 헤더에 대하여, 태그의 삽입 삭제가 태그 삽입기 (2052), 태그 삭제기 (2053) 에 의해 행하여진 후, 재기록된 프레임 헤더를 재기록 후의 프레임 헤더 정보 (20541) 로서 출력한다. 또한, 태그 삽입기 (2052), 태그 삭제기 (2053) 로부터의 조작이 없는 경우에는 프레임 헤더 정보 (141) 를 그대로, 재기록 후 프레임 헤더 정보 (20541) 로서 출력한다.
태그 제어기 (2051) 는 프레임의 헤더에 대하여 태그의 삽입 및 삭제의 제어를 행한다. 테이블 서치기 (203) 로부터 프레임의 헤더 재기록 처리가 필요한 프레임의 경우에는 태그의 조작 정보를 태그 제어 정보 (20322), 태그의 처리에 필요한 태그 정보를 태그 정보 (20323) 로서 수취한다. 그 태그 제어 정보 (20322) 가 태그 삽입 지시인 경우, 프레임 헤더에 태그 정보 (20323) 를 삽입하기위해, 태그 정보 (20323) 를 태그 삽입기 (2052) 에 출력한다. 또한, 태그 삭제 지시인 경우에는 프레임 헤더의 태그 정보를 삭제하기 위해, 태그 삭제 지시를 태그 삭제기 (2053) 로 출력한다.
태그 삽입기 (2052) 는 프레임의 헤더에 태그의 삽입을 행한다. 태그 제어기 (2051) 로부터, 태그 정보 (20323) 를 수취하면, 프레임 헤더 버퍼 (2054) 에 저장되어 있는 프레임 헤더 정보 (20141) 에 대하여, 태그의 삽입 동작을 행한다.
태그 삭제기 (2053) 는 프레임의 헤더에 태그의 삭제를 행한다. 태그 제 어기 (2051) 로부터 태그 삭제 지시를 수취하면, 프레임 헤더 버퍼 (2054) 에 저장되어 있는 프레임 헤더 정보 (20141) 에 대하여, 태그의 삭제 동작을 행한다.
도 21 은 도 10 에 기재된 프레임 합성기 (206) 의 구성을 상세히 나타낸 블록도이다.
도 21 의 프레임 합성기 (206) 는 재기록 후의 프레임 헤더와, 프레임 페이로드 정보의 합성을 행하여, 출력 가능한 프레임의 재구축을 행한다.
입력 프레임 헤더 정보 제어 버퍼 (2062) 에는 재기록 후의 프레임 헤더 정보가 저장된다. 재기록 후 프레임 헤더 정보 (20541) 를 수신하였을 때는 프레임 조립기 (2064) 로, 프레임 헤더 정보 인취 가능 상태를 통지한다.
입력 프레임 페이로드 정보 제어 버퍼 (2063) 에는 프레임의 페이로드 정보가 저장된다. 입력 프레임 페이로드 정보 (20111) 를 수신하였을 때는 프레임 조립기 (2064) 로 프레임 페이로드 정보 인취 가능 상태를 통지한다.
프레임 조립기 (2064) 는 프레임의 헤더 정보와 페이로드 정보를 조립한다. 입력 프레임 헤더 정보 제어 버퍼 (2062), 입력 프레임 페이로드 정보 제어 버퍼 (2063) 로부터 정보 인취 통지를 수취하면, 버퍼로부터 헤더 정보 및 페이로드 정보를 판독출력하고, 프레임 헤더와 페이로드 정보를 합성하여, 출력 프레임 정보 (20641) 로서 출력한다.
도 22 는 도 10 에 기재된 프레임 전송기 (207) 의 구성을 상세히 나타낸 블록도이다.
도 22 의 프레임 전송기 (207) 는 출력 포트 정보에 근거하여 프레임의 전송 을 행한다.
프레임 전송 지시기 (2072) 는 지정된 출력 포트처로 프레임의 전송을 행한다. 테이블 서치기 (203) 로부터 출력 포트 정보 (20321) 를 받으면, 출력 프레임 버퍼 (2073) 에 저장되어 있는 프레임을, 그 출력 포트 번호의 포트로 출력 프레임 (102) 으로서 출력하고, 그 때, 출력 포트 번호가 CPU 앞을 나타내고 있는 경우에는 CPU 앞 전송 (20121) 으로서 프레임을 출력한다.
또한, CPU 로부터의 프레임 송신 요구시에 사용되는 CPU 전송 프레임 제어기 (2071) 로부터, CPU 전송 프레임 정보 (3041) 및 CPU 전송 프레임 출력 포트 정보 (3042) 를 수신하면, 지정된 포트 번호로 CPU 전송 프레임 정보 (3041) 를 출력 프레임 (102) 으로서 출력한다.
출력 프레임 버퍼 (2073) 에는 프레임 합성기 (206) 에 의해 조립된 출력 프레임 정보 (20641) 가 저장되고, 버퍼내의 프레임은 프레임 전송 지시기 (2072) 에 의해 출력 프레임 (102) 로서 출력된다.
CPU 전송 프레임 제어기 (2071) 는 CPU (30) 로부터 전송하고자 하는 프레임 정보를 CPU 전송 프레임 정보 (3041), 전송하는 출력 포트 정보를 CPU 전송 프레임 출력 포트 정보 (3042) 로서 수신하여, 프레임 전송 지시기 (2072) 로 프레임 전송의 지시를 행한다.
도 23 은 도 10 에 나타내는 CPU (30) 내에서 소프트웨어에 의해 실현되는 처리의 구성을 나타내는 블록도이다.
네트워크 제어 프로그램 (304) 은 이하에 설명하는 3 개의 동작을 행한다.
(1) 제어 프레임 수신기 (2012) 로부터 송신되는 CPU 앞 전송 프레임을 수신하고, 수신한 프레임의 수신선 MAC 어드레스에 따라, 당해 프레임을 기기 제어 프로그램 (305), 런닝 관리 프로그램 (302) 또는 스패닝 트리 제어 프로그램 (303) 에 전송한다.
(2) (1) 과 동시에, 필요에 따라 CPU 전송 프레임 출력 포트 정보 (3042) 및 CPU 전송 프레임 정보 (3041) 를 사용하여, (1) 에 있어서 수신한 프레임을 재전송한다.
(3) 기기 제어 프로그램 (305), 런닝 관리 프로그램 (302) 또는 스패닝 트리 제어 프로그램 (303) 으로부터 송신이 요구된 프레임을 CPU 전송 프레임 출력 포트 정보 (3042) 및 CPU 전송 프레임 정보 (3041) 에 기록한다.
네트워크 제어 프로그램 (304) 에 있어서, CPU 앞 전송 프레임 (20121) 으로서 수신한 프레임의 수신선 MAC 어드레스가 00-00-4C-00-00-00 인 경우에는, 당해 프레임을 런닝 관리 프로그램 (302) 에 전송하는 동시에, CPU 전송 프레임 출력 포트 정보 (3042) 및 CPU 전송 프레임 정보 (3041) 를 사용하여, 당해 프레임을 브로드캐스트 전송한다.
네트워크 제어 프로그램 (304) 에 있어서, CPU 앞 전송 프레임 (20121) 으로서 수신한 프레임의 수신선 MAC 어드레스가 01-80-C2-00-00-00 인 경우에는, 당해 프레임을 스패닝 트리 제어 프로그램 (303) 에 전송한다.
네트워크 제어 프로그램 (304) 에 있어서, CPU 앞 전송 프레임 (20121) 으로서 수신한 프레임의 수신선 MAC 어드레스가 상기 이외의 어드레스였던 경우에는, 당해 프레임을 기기 제어 프로그램 (305) 에 전송한다.
스패닝 트리 제어 프로그램 (303) 은 이하에 예시하는 3 개의 동작을 행한다.
(1) 고속 스패닝 트리 프로토콜 (IEEE802.1W) 또는 스패닝 트리 프로토콜 (IEEE802.1D) 에 근거하여, 인접하는 노드와 네트워크 제어 프로그램 (304) 을 통하여 BPDU 프레임을 교환하고, 스패닝 트리 구축을 행한다. 또한, 트리 구축시에 필요한 설정은, 기기 제어 프로그램 (305) 에 의해 행하여진다.
(2) (1) 에 의해 구축한 스패닝 트리의 포트 정보 (Alternate Port, Root Port, Designated Port 등) 로부터, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 태그 포워딩 테이블 메모리 (2041) 및 브로드캐스트 포워딩 테이블 (2042), 또한, 이들 2 개의 메모리의 소프트웨어측에서의 복제인 메모리 복제 정보 (3013) 를 설정한다.
(3) BPDU 의 교환에 의해, 만일 루트 포트의 변경을 검지한 경우에는, 런닝 관리 프로그램 (302) 에 대하여, 루트 포트 변경 (이벤트 14) 을 통지한다.
기기 제어 프로그램 (305) 은 콘솔 I/O51, 또는 네트워크 제어 프로그램 (304) 을 경유하여 제공하는 TELNET, SSH 및 HTTP 등을 사용한 설정 인터페이스를 통하여 설정을 접수하고, 설정 정보를 런닝 관리 프로그램 (302), 스패닝 트리 제어 프로그램 (303), 및 포트 구성 정보 (3051) 를 통하여 프레임 타입 판정기 (2011) 에 통지한다.
포워딩 테이블 제어 프로그램 (301) 은 이하의 동작을 행한다.
(1) 스패닝 트리 제어 프로그램 (303) 으로부터의 지시에 의해, 테이블 기록 정보 (3012) 및 테이블 기록 어드레스 (3011) 를 사용하여, 태그 포워딩 메모리 (2041) 및 브로드캐스트 포워딩 테이블 메모리 (2042) 에 대하여 엔트리 기록 또는 엔트리 치환을 행한다.
(2) (1) 과 동시에, 메모리 복제 정보 (3013) 를 사용하여, 소프트웨어 테이블 (메인 메모리 (40) 상의 복제 정보인 태그 포워딩 테이블 메모리 (70131), 브로드캐스트 포워딩 테이블 메모리 (70132), MAC 포워딩 테이블 메모리 (70133), TAG 어드레스 관리 테이블 (70134) 에 대해서도 엔트리 기록 또는 엔트리 치환을 행한다.
(3) 런닝 관리 프로그램 (302) 으로부터의 지시에 의해, 테이블 기록 정보 (3012) 및 테이블 기록 어드레스 (3011) 를 사용하여, MAC 포워딩 테이블 메모리 (2043) 에 대하여 엔트리 기록 또는 엔트리 치환을 행한다.
(4) (3) 과 동시에, 메모리 복제 정보 (3013) 를 사용하여, 소프트웨어 테이블에 대해서도 엔트리 기록 또는 엔트리 치환을 행한다.
(5) 런닝 관리 프로그램 (302) 으로부터의 지시에 의해, 메모리 복제 정보 (3013) 를 사용하여, 소프트웨어 테이블에 대하여 엔트리 검색을 행한다.
(6) 네트워크 제어 프로그램 (304) 으로부터의 지시에 의해, 메모리 복제 정보 (3013) 를 사용하여, 소프트웨어 테이블에 대하여 엔트리 검색을 행한다.
런닝 관리 프로그램 (302) 은 런닝 프레임 송신 요구 (20231), 타이머 (306) 로부터의 에이징 트리거, 네트워크 제어 프로그램 (304) 으로부터의 런닝 프레임, 그리고 스패닝 트리 제어 프로그램 (303) 으로부터의 스패닝 트리 변경 통지를 수신하고, 이하에 나타내는 이벤트를 기동하여, MAC 포워딩 테이블 메모리 (2043) 및 그 복제 정보의 등록, 치환, 삭제를 행한다.
(1) 런닝 프레임 송신 요구 (20231) 가 런닝 관리 프로그램 (302) 에 도착하면, 이벤트 (01) 를 기동한다.
(2) 네트워크 제어 프로그램 (304) 으로부터 런닝 프레임이 런닝 관리 프로그램 (302) 에 도착하면, 이벤트 (03) 를 기동한다.
(3) 타이머 (306) 로부터의 포트 런닝 에이징 트리거가 런닝 관리 프로그램 (302) 에 도착하면, 이벤트 (12) 가 기동한다.
(4) 타이머 (306) 로부터의 태그 런닝 에이징 트리거가 런닝 관리 프로그램 (302) 에 도착하면, 이벤트 (13) 가 기동한다.
(5) 스패닝 트리 제어 프로그램 (303) 으로부터 런닝 관리 프로그램 (302) 에 루트 노드 변경 통지가 도착하면, 이벤트 (14) 를 기동한다.
(6) 기기 제어 프로그램 (305) 으로부터 초기화 요구가 도착하면, 이벤트 (00) 를 기동한다.
타이머 (306) 는 기기 제어 프로그램 (305) 이 설정한 시간마다, 포트 런닝 에이징 트리거 또는 태그 런닝 에이징 트리거를 생성하여, 런닝 관리 프로그램 (302) 에 통지한다.
도 24 는 도 23 에 나타내는 메모리 복제 정보 (3013) 에 포함되는, TAG 어드레스 관리 테이블 (70134) 의 구성을 나타내는 표이다.
TAG 어드레스 관리 테이블 (70134) 은 송신선 1 단째 TAG 정보 및 테이블 저장 어드레스의 2 개의 란으로 구성되어 있다.
송신선 1 단째 TAG 정보에는 TAG 어드레스 관리 테이블 (70134) 의 검색키가 되는 TAG 정보 (VLAN ID) 가 기재되어 있다. 여기서는, 이 TAG 정보에 포함되는 VLAN ID 는 모두 짝수로 하고 있다. 만일 홀수의 ID 를 등록하는 경우에는, 등록하고자 하는 ID 값으로부터 1 를 감산하여, 짝수 어드레스로 등록 및 검색을 행한다.
이와 같이 한 이유를 이하에 기재한다. 하나의 네트워크에 복수의 스패닝 트리가 존재하고, 하나의 노드가 복수 스패닝 트리의 루트 노드가 되는 경우가 있다. 이러한 경우에 있어서, 각 노드는 각 스패닝 트리에 대응하여 복수의 노드 ID 를 갖는다. 그러나, 런닝시에 있어서는 각 노드의 노드 ID 는 하나인 편이 좋다. 왜냐하면, 하나의 노드가 복수의 ID 를 갖고 있으면, 런닝시에 이들 복수의 ID 각각을 별도의 노드로 파악하여 런닝을 행할 가능성이 있기 때문이다.
이러한 문제를 방지하는 것을 목적으로 하여, 상기에서는 2 개의 스패닝 트리가 있는 경우를 상정하여, 짝수 어드레스를 각 노드의 대표 어드레스로 하고 있다.
따라서, 상기의 짝수 어드레스를 사용하는 방법 이외에, 어떠한 방법으로 하나의 대표 어드레스를 정할 수 있으면, 그 방법이어도 상관없다.
테이블 저장 어드레스에는 송신선 1 단째 TAG 정보에 기재되어 있는 TAG 가 포함되는 엔트리의, MAC 포워딩 테이블 메모리 (70133) (MAC 포워딩 테이블 메모리 (2043) 의 메인 메모리상에서의 복제 정보) 에 있어서의 어드레스가 기재된다. 이 란에 기재할 수 있는 어드레스의 수에 관해서는, 특별히 제한을 두지 않는다.
도 25 는 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의, 이벤트 (01) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (01) 는 런닝 프레임 송신 요구 (20231) 가 런닝 관리 프로그램 (302) 에 도착하면 기동된다. 이 이벤트는 MACDA 와 태그로부터 송신선 포트를 검색할 수 있도록, MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상에서의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 에 엔트리를 추가하기 위한 소프트웨어 처리이다.
단계 N0101 에 있어서, 이벤트 (01) 의 처리가 개시된다. 런닝 관리 프로그램으로부터는 프레임 해석기 (201) 에 의한 판정 결과 (태그의 유무 및 종별 등), 프레임이 입력된 포트, 송신원 MAC 어드레스, 태그 정보 등의 테이블 서치 키 정보가 통지된다. 단계 N0102 로 이행한다.
단계 N0102 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여 MAC 포워딩 테이블 메모리 (70133) 를 검색하여, 앞으로 등록하려는 정보가 이미 상기 테이블에 기재되어 있지 않은지 조사한다. 만일 검색이 히트한 경우에는 처리를 종료하고, 미스히트의 경우에는 단계 N0103 으로 이행한다.
단계 N0103 에 있어서, 단계 N0101 에서 통지된 프레임 해석기 (201) 의 판정 결과를 조사하여, 만일 런닝하려는 프레임이 업링크측으로부터 입력된 것인 경 우 (Ptype=0) 에는 단계 N0105 로 이행한다. 만일 다운링크로부터의 입력이면 (Ptype=1), 단계 N0104 로 이행한다.
단계 N0104 에 있어서, 이벤트 (11) 를 기동하여, 런닝 프레임을 다른 노드에 브로드캐스트한다. 이벤트 (11) 기동시에는, 단계 N0101 에서 통지된 송신원 MAC 어드레스와 태그 정보를 통지한다. 이 후, 단계 N0105 로 이행한다.
단계 N0105 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 MAC 포워딩 테이블 메모리 (70133) 에 엔트리를 추가한다. 이 때, MAC 송신선 어드레스에는 단계 N0101 에서 수신한 송신원 MAC 어드레스, 송신선 1 단째 TAG 정보에는 단계 NO101 에서 수신한 태그 정보, 출력 포트 정보에는 단계 N0101 에서 통지된 입력 포트를 설정한다. 이 후, 단계 N0106 으로 진행한다.
단계 N0106 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, MAC 포워딩 테이블 메모리 (2043) 에 엔트리를 추가한다. 이 때, MAC 송신선 어드레스에는 단계 NO101 에서 수신한 송신원 MAC 어드레스, 송신선 1 단째 TAG 정보에는 단계 NO101 에서 수신한 태그 정보, 출력 포트 정보에는 단계 N0101 에서 통지된 입력 포트를 설정한다. 이것으로 이벤트 (01) 의 처리를 종료한다.
도 26 은 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의 이벤트 (11) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (11) 는 이벤트 (01) 또는 이벤트 (05) 에 있어서, 런닝 프레임을 송신하는 경우에 기동된다. 이 이벤트는 MACDA 와 태그로부터, 부가해야 할 태그 를 검색할 수 있도록, MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상에서의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 에 엔트리를 추가하기 위한 소프트웨어 처리의 일환으로서의 런닝 프레임의 전송 요구 처리이다.
단계 N1101 에 있어서, 이벤트 (11) 의 처리가 개시된다. 기동시에는 송신원 MAC 어드레스 및 태그 정보가 통지된다. 단계 N1102 로 이행한다.
단계 N1102 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 브로드캐스트 포워딩 테이블 메모리 (70132) 를 검색하여, 런닝 프레임의 출력선 포트를 검색한다. 이 때, 브로드캐스트 포워딩 테이블 메모리 (70132) 의 메모리 어드레스 (0x0000∼0x1000) (엔트리) 는 VLAN ID·태그 정보 (6202) 에 저장된 값과 대응되어 있기 때문에, 즉 VLAN ID·태그 정보 (6202) 가 참조하는 메모리 어드레스로 되어 있기 때문에, 정보 비교를 행할 필요는 없다. 따라서, VLAN ID·태그 정보 (6202) 에 저장된 값이 나타내는 어드레스 (엔트리) 에 존재하는 브로드캐스트 포워딩 테이블 메모리 (2042) 의 복수 출력 포트 정보를 출력선 포트로서 출력한다.
만일 검색이 미스히트한 경우에는 처리를 종료하고, 이벤트 (11) 기동원의 이벤트 프로시저로 되돌아간다. 히트의 경우에는 단계 N1103 으로 이행한다.
단계 N1103 에 있어서, 네트워크 제어 프로그램 (304), CPU 전송 프레임 출력 포트 정보 (3042) 및 CPU 전송 프레임 정보 (3041) 를 사용하여, CPU 전송 프레임 제어기 (2071) 에 대하여, 단계 N1102 에서 검색된 포트에 대하여, 해당 노드 해당 노드 어드레스를 기재한 소스 태그, 및 단계 N1101 에서 전해진 VLAN 태그를 부가한 런닝 프레임의 송신을 요구한다. 이것으로 이벤트 (11) 의 처리를 종료하고, 이벤트 (11) 기동원의 이벤트 프로시저로 되돌아간다.
도 27 은 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의, 이벤트 (03) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (03) 는 네트워크 제어 프로그램 (304) 으로부터 런닝 프레임이 런닝 관리 프로그램 (302) 에 도착하였을 때에 기동된다. 이 이벤트는 MACDA 와 태그로부터 부가하는 태그를 검색할 수 있도록, MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상에서의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 에 엔트리를 추가하기 위한 소프트웨어 처리이다.
단계 N0301 에 있어서, 이벤트 (03) 의 처리가 개시된다. 기동시에는 프레임 해석기 (201) 에 의한 판정 결과 (태그의 유무 및 종별 등), 입력 포트, MAC 어드레스, 태그 (1) (태그 (620) 에 저장된 송신선 클라이언트가 접속되어 있는 노드의 노드 어드레스 등의 정보), 및 태그 (2) (VLAN 태그 (606) 에 저장된 정보) 등의 헤더 정보 (20121) 가 CPU 앞 전송 프레임으로서 프레임 해석기로부터 통지된다. 단계 N0302 로 이행한다 (프레임 (63) 과 같이 태그가 2 개 부가된 경우).
단계 N0302 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 태그 포워딩 테이블 메모리 (70131) 를 검색하여, 태그 1 에 대한 출력선 포트를 검색한다. 만일 검색이 미스히트한 경우에는 처리를 종료한다. 히트의 경우에는 단계 N0303 으로 이행한다.
단계 N0303 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 MAC 포워딩 테이블 메모리 (70133) 를 검색하고, 단계 N0301 에서 통지된 MAC 어드레스 및 태그 2 에 대한 부가 태그, 출력 포트, 예비 출력 포트를 검색한다. 만일 검색이 미스히트한 경우에는 단계 N0305 로 진행한다. 히트의 경우에는 단계 N0304 로 이행한다.
단계 N0304 에 있어서, 단계 N0302 에서 검색된 출력 포트 및 예비 출력 포트와, 단계 N0303 에서 검색된 출력 포트 및 예비 출력 포트, 또한, 단계 N0301 에서 통지된 태그 (1) 과, 단계 N0303 에서 검색된 부가 태그가 일치하고 있음을 확인한다. 완전한 일치가 보이는 경우에는 처리를 종료하고, 그 이외의 경우에는 단계 N0305 로 진행한다.
단계 N0305 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 MAC 포워딩 테이블 메모리 (70133) 에 엔트리를 추가한다. 이 때, MAC 송신선 어드레스에는 단계 N0301 에서 수신한 MAC 어드레스, 수신선 1 단째 TAG 정보에는 단계 N0301 에서 수신한 태그 2, 출력선 포트 및 예비 출력 포트는 단계 N0303 에서 검색한 포트, 부가하는 태그 (TAG 정보) 에는 단계 N0301 에서 통지된 태그 (1) (송신선 클라이언트가 접속되어 있는 노드의 노드 어드레스 등의 정보) 를 부가한다. 단계 N0306 으로 진행한다.
단계 N0306 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, MAC 포워딩 테이블 메모리 (2043) 에 엔트리를 추가한다. 이 때, MAC 송신선 어드 레스에는 단계 N0301 에서 수신한 MAC 어드레스, 수신선 1 단째 TAG 정보에는 단계 N0301 에서 수신한 태그 (2), 출력선 포트 및 예비 출력 포트는 단계 N0303 에서 검색한 포트, 부가하는 태그 (도 16 의 TAG 정보) 에는 단계 N0301 에서 통지된 태그 (1) (송신선 클라이언트가 접속되어 있는 노드의 노드 어드레스 등의 정보) 를 부가한다. 단계 N0307 또는 단계 N0308 로 진행한다.
단계 N0304 에 있어서, 엔트리 기재 내용과 검색 결과가 일치하지 않는 경우, 단계 0306 의 처리 후 단계 N0307 로 진행한다. 단계 N0307 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 TAG 어드레스 관리 테이블 (70134) 로부터 엔트리를 삭제한다. 이 때, 인덱스 태그 (도 24 의 송신선 1 단째 TAG 정보) 에는 단계 N0301 에서 수신한 태그 1, 메모리 어드레스에는 단계 N0303 에서 얻은 엔트리 어드레스 (도 16 의 메모리 어드레스) 를 지정한다. 단계 N0308 로 진행한다. 단계 N0308 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 TAG 어드레스 관리 테이블 (70134) 에 엔트리를 추가한다. 이 때, 인덱스 태그에는 단계 N0303 에서 검색한 부가 태그, 메모리 어드레스에는 단계 N0305 에서 얻은 엔트리 어드레스 (도 16 의 메모리 어드레스) 를 지정한다. 다만, 부가 태그의 값은 항상 짝수로 한다. 이것으로, 이벤트 (03) 의 처리를 종료한다.
도 28 은 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의 이벤트 (12) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (12) 는 타이머 (306) 로부터 타이머 이벤트가 발생됨으로써 기동한다. 이 이벤트는 MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상에서의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 에 기재된 엔트리 중, MACDA 와 태그로부터 송신선 포트를 검색하기 위한 엔트리에 대하여, 에이징 처리를 행하기 위한 소프트웨어 처리의 일환이다.
단계 N1201 에 있어서, 이벤트 (12) 의 처리가 개시된다. 기동시에는 오프셋 어드레스가 통지된다. 단계 N1202 로 이행한다.
단계 N1202 에 있어서, 런닝 에이징 요구 (3021) 및 MAC/TAG 에이징 요구 (3022) 에 의해, 하드웨어측의 MAC 포워딩 테이블 메모리 (2043) 및 MACSA 테이블 캐시 (2025) 에 대하여 에이징 요구를 행한다. 단계 N1203 으로 이행한다.
단계 N1203 에 있어서, 타이머 (306) 에 대하여, 기기 제어 프로그램 (305) 을 통하여 지정된 시간 후에 이벤트 (12) 의 발생을 예약한다. 이 때, 메모리 오프셋 어드레스도 등록한다. 이것으로, 이벤트 (12) 의 처리를 종료한다.
도 29 는 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의 이벤트 (05) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (05) 는 이벤트 (12) 에서 MAC/TAG 에이징 제어 (3022) 를 통하여 에이징 요구를 행한 후, MAC/TAG 에이징 제어 (3022) 로부터 에이징 완료 통지가 도착함으로써 기동한다. 이 이벤트는 MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상에서의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 에 기재된 엔트리 중, MACDA 와 태그로부터 송신선 포트를 검색하기 위한 엔트리에 대하 여, 에이징 처리를 행하기 위한 소프트웨어 처리의 일환이다.
단계 N0501 에 있어서, 이벤트 (05) 의 처리가 개시된다. 기동시에는 리절트 코드 (MAC→Port, 또는 MAC-Tag 중 어느 쪽 에이징을 걸었는가의 정보), 오프셋 어드레스 및 비트맵 (어느 엔트리를 삭제하였는가의 정보) 이 통지된다. 단계 N0502 로 이행한다.
단계 N0502 에 있어서, 단계 N0501 에서 통지된 오프셋 및 비트맵으로부터, 엔트리 어드레스 (삭제한 MAC 포워딩 테이블 메모리 (2043) 의 메모리 어드레스) 를 생성한다. 단계 N0503 으로 이행한다.
단계 N0503 에 있어서, 단계 N0502 에서 생성한 엔트리 어드레스의 엔트리를, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 MAC 포워딩 테이블 메모리 (70133) 로부터 삭제한다.
단계 N0502 및 단계 N0503 의 처리를, 단계 N0501 에서 삭제 처리 대상으로서 통지된 전체 어드레스 (오프셋과 비트맵으로 표시되는 삭제한 엔트리의 어드레스) 에 대하여 행한다. 전체 어드레스에 대한 처리가 완료되면, 단계 N0504 로 이행한다.
단계 N0504 에 있어서, MAC 포워딩 테이블 메모리 (70133) 내의 엔트리 종별이 MAC→Port 로 설정되어 있는 전체 엔트리에 대하여, 이벤트 (11) 를 기동하여 런닝 프레임을 송신한다. 이벤트 (11) 에 대해서는 MACDA 및 VLAN TAG 를 인수로서 전한다. 모든 엔트리에 대한 처리가 종료되면, 이벤트 (05) 도 종료된다.
도 30 은 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의 이벤트 (13) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (13) 는 타이머 (306) 로부터 타이머 이벤트가 발생됨으로써 기동한다. 이 이벤트는 MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상에서의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 에 기재된 엔트리 중, MACDA 와 태그로부터 부가하는 태그를 검색하기 위한 엔트리에 대하여, 에이징 처리를 행하기 위한 소프트웨어 처리의 일환이다.
단계 N1301 에 있어서, 이벤트 (13) 의 처리가 개시된다. 기동시에는 오프셋 어드레스 (삭제를 개시하는 스타트 어드레스) 가 통지된다. 단계 N1302 로 이행한다.
단계 N1302 에 있어서, MAC/TAG 에이징 요구 (3022) 에 의해, 하드웨어측의 MAC 포워딩 테이블 메모리 (2043) 에 대하여 에이징 요구를 행한다. 단계 N1303 으로 이행한다.
단계 N1303 에 있어서, 타이머 (306) 에 대하여, 기기 제어 프로그램 (305) 을 통하여 지정된 시간 후에 이벤트 (13) 의 발생을 예약한다. 이 때, 메모리 오프셋 어드레스도 등록한다. 이것으로, 이벤트 (13) 의 처리를 종료한다.
도 31 은 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의 이벤트 (06) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (06) 는 이벤트 (13) 에서 MAC/TAG 에이징 제어 (3022) 를 통하여 에이징 요구를 행한 후, MAC/TAG 에이징 제어 (3022) 로부터 에이징 완료 통지가 도착함으로써 기동한다. 이 이벤트는 MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상에서의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 에 기재된 엔트리 중, MACDA 와 태그로부터 부가하는 태그를 검색하기 위한 엔트리에 대하여, 에이징 처리를 하기 위한 소프트웨어 처리의 일환이다.
단계 N0601 에 있어서, 이벤트 (06) 의 처리가 개시된다. 기동시에는 리절트 코드, 오프셋 어드레스 및 비트맵이 통지된다. 단계 N0602 로 이행한다.
단계 N0602 에 있어서, 단계 N0601 에서 통지된 오프셋 및 비트맵으로부터 엔트리 어드레스를 생성한다. 단계 N0603 으로 이행한다.
단계 N0603 에 있어서, 단계 N0602 에서 생성한 엔트리 어드레스의 엔트리를 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 MAC 포워딩 테이블 메모리 (70133) 로부터 삭제한다. 단계 N0604 로 이행한다.
단계 N0604 에 있어서, 단계 N0603 에서 생성한 엔트리 어드레스의 엔트리를 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 TAG 어드레스 관리 테이블 (70134) 로부터 삭제한다.
단계 N0602, 단계 N0603 및 단계 N0603 의 처리를, 단계 N0601 으로부터 삭제 처리 대상으로서 통지된 전체 어드레스 (오프셋과 비트맵으로 표시되는 삭제한 엔트리의 어드레스) 에 대하여 행한다. 전체 어드레스에 대한 처리가 완료되면, 이벤트 (06) 를 종료한다.
도 32 는 도 23 에 나타내는 런닝 관리 프로그램 (302) 에 있어서의, 이벤트 (14) 의 동작을 상세히 설명한 플로우차트이다.
이벤트 (14) 는 스패닝 트리 제어 프로그램 (303) 에 의해, 스패닝 트리의 토폴로지의 변경이 검출되어, 루트 포트, 즉 프레임 출력 포트가 변경된 경우에 기동한다. 이 이벤트는 트리 토폴로지의 변화에 의해 변경이 필요하게 된, MAC 포워딩 테이블 메모리 (2043) 및 그 메인 메모리 (40) 상의 복제 정보인 MAC 포워딩 테이블 메모리 (70133) 상에 기재되어 있는 출력선 포트 및 예비 출력선 포트를 재기록하기 위한 소프트웨어 처리이다.
단계 N1401 에 있어서, 이벤트 (14) 의 처리가 개시된다. 기동시에는 토폴로지 변경 대상의 태그가 통지된다. 단계 N1402 로 이행한다.
단계 N1402 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 태그 포워딩 테이블 메모리 (70131) 를 검색하여, 단계 N1401 에서 통지된 변경 대상의 태그에 대한 출력선 포트를 검색한다. 만일 검색이 미스히트한 경우에는 처리를 종료한다. 히트의 경우에는 단계 N1403 으로 이행한다.
단계 N1403 에 있어서, TAG 어드레스 관리 테이블 (70134) 을 검색하여, MAC 포워딩 테이블 메모리 (70133) 상에 있어서, 단계 N1401 에서 통지된 변경 처리 대상 태그가 부가 태그로서 설정되어 있는 엔트리의 엔트리 어드레스를 검색한다. 만일 검색이 미스히트한 경우에는 처리를 종료하고, 검색이 히트한 경우에는 단계 N1404 로 이행한다.
단계 N1404 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 메모리 복제 정보 (3013) 로서 메인 메모리 (40) 상의 MAC 포워딩 테이블 메모리 (70133) 의 엔트리를 치환한다. 이 때, 출력선 포트 및 예비 출력 포트는 단계 N1402 에서 검색한 포트를 설정하고, 그 밖의 항목은 치환하지 않는다. 단계 N1405 로 진행한다.
단계 N1405 에 있어서, 포워딩 테이블 제어 프로그램 (301) 을 통하여, 하드웨어측의 MAC 포워딩 테이블 메모리 (2043) 의 엔트리를 치환한다. 이 때, 출력선 포트 및 예비 출력 포트는 단계 N1402 에서 검색한 포트를 설정하고, 그 밖의 항목은 치환하지 않는다.
단계 N1404 및 단계 N1405 의 조작을, 단계 N1403 에서 검색된 전체 어드레스 엔트리에 대하여 실행한다. 전체 엔트리의 치환이 종료되면, 이벤트 (14) 를 종료한다.
다음으로 도 33∼도 37 을 참조하여, IEEE802.1W 에 규정되어 있는 고속 스패닝 트리 프로토콜 또는 IEEE802.1D 에 규정되어 있는 스패닝 트리 프로토콜을 사용함으로써, 도 1 에 나타내는 물리 네트워크 구성예에 있어서, 루프가 발생하지 않도록 포트를 차단하여 논리 네트워크를 작성한 경우의, 스패닝 트리 토폴로지 구성예에 관하여 설명하다.
또한, 도 33∼도 37 의 각 도면에 있어서는 어느 하나의 링크가 접속되어 있는 2 개의 포트 중 어느 일방에서도 프레임의 송수신이 금지되어 있는 상태인 경우에는 링크를 가는 선으로 나타내고, 어느 하나의 링크가 접속되어 있는 2 개의 포트의 양방이 프레임의 송수신 모두 가능한 경우만 링크를 굵은 선으로 나타낸다.
또한, 이하의 설명에서는, 설명을 간략화하기 위해, 실제로는 가는 선의 링 크에도 프레임이 흐르는 경우도 있지만, 본 명세서에 있어서는, 가는 선의 링크에는 전혀 프레임이 흐르지 않는 것으로 설명한다. 이러한 설명을 행하더라도, 본 발명의 노드의 동작의 본질에는 영향을 주지 않는다.
도 33 은 도 1 에 나타내는 물리네트 워크상에서 고속 스패닝 트리 프로토콜 또는 스패닝 트리 프로토콜을 사용한 경우에 작성되는 논리 네트워크인 트리 (T0) 의 구성예를 도시하는 토폴로지도이다.
본 구성예에 있어서는, 트리 (T0) 는 노드 (G1) 를 루트 노드로 하고, 노드 (G3) 와 노드 (G2) 사이의 포트가 폐색되어, 도 33 에 나타내는 토폴로지로 되어 있다. 이 트리는 고속 스패닝 트리 프로토콜에 따라서, 태그를 부가하지 않는 BPDU 프레임을 교환함으로써 작성된다. 루트 노드는 고속 스패닝 트리 프로토콜에 따라서, 노드 (G1)∼노드 (G4) 중 어느 하나의 노드로 결정된다. 이 논리 네트워크는 태그가 부가되어 있지 않은 프레임의 전송을 행할 때에 이용된다.
도 34 는 도 1 에 나타내는 물리 네트워크 상에서 고속 스패닝 트리 프로토콜 또는 스패닝 트리 프로토콜을 사용한 경우에 작성되는 논리 네트워크인 트리 (T1) 의 구성예를 도시하는 토폴로지도이다.
본 구성예에 있어서는, 트리 (T1) 는 노드 (G1) 를 루트 노드로 하고, 노드 (G3) 와 노드 (G2) 사이의 포트가 폐색되어, 도 34 에 나타내는 토폴로지가 되어 있다. 이 트리는 고속 스패닝 트리 프로토콜에 따라서, 태그 (g1) 를 부가한 BPDU 프레임을 교환함으로써 작성된다. 트리 (T1) 에 있어서는 항상 노드 (G1) 가 루트 노드가 되도록 미리 설정해 둠으로써, 루트 노드는 노드 (G1) 로 결정된 다. 이 논리 네트워크는 노드 (G1) 가 수신선임을 의미하는 태그 (g1) 가 부가되어 있던 프레임의 전송을 행할 때에 이용된다. 즉, 확장 태그 (g1) 가 부가된 프레임은 트리 (T1) 를 경로로 하여 전송된다.
도 35 는 도 1 에 나타내는 물리 네트워크 상에서 고속 스패닝 트리 프로토콜 또는 스패닝 트리 프로토콜을 사용한 경우에 작성되는 논리 네트워크인 트리 (T2) 의 구성예를 도시하는 토폴로지도이다.
본 구성예에 있어서는 트리 (T2) 는 노드 (G2) 를 루트 노드로 하고, 노드 (G1) 와 노드 (G4) 사이의 포트가 폐색되어, 도 35 에 나타내는 토폴로지가 되어 있다. 이 트리는 고속 스패닝 트리 프로토콜에 따라서, 태그 (g2) 를 부가한 BPDU 프레임을 교환함으로써 작성된다. 트리 (T2) 에 있어서는 항상 노드 (G2) 가 루트 노드가 되도록 미리 설정해 둠으로써, 루트 노드는 노드 (G2) 로 결정된다. 이 논리 네트워크는 노드 (G2) 가 수신선임을 의미하는 태그 (g2) 가 부가된 프레임의 전송을 행할 때에 이용된다. 즉, 확장 태그 (g2) 가 부가된 프레임은 트리 (T2) 를 경로로 하여 전송된다.
도 36 은 도 1 에 나타내는 물리 네트워크 상에서 고속 스패닝 트리 프로토콜 또는 스패닝 트리 프로토콜을 사용한 경우에 작성되는 논리 네트워크인 트리 (T3) 의 구성예를 도시하는 토폴로지도이다.
본 구성예에 있어서는 트리 (T3) 는 노드 (G3) 를 루트 노드로 하고, 노드 (G2) 와 노드 (G4) 사이의 포트가 폐색되어, 도 36 에 나타내는 토폴로지가 되어 있다. 이 트리는 고속 스패닝 트리 프로토콜에 따라서, 태그 (g3) 를 부가한 BPDU 프레임을 교환함으로써 작성된다. 트리 (T3) 에 있어서는 항상 노드 (G3) 가 루트 노드가 되도록 미리 설정해 둠으로써, 루트 노드는 노드 (G3) 로 결정된다. 이 논리 네트워크는 노드 (G3) 가 수신선임을 의미하는 태그 (g3) 가 부가된 프레임의 전송을 행할 때에 이용된다. 즉, 확장 태그 (g3) 가 부가된 프레임은 트리 (T3) 를 경로로 하여 전송된다.
도 37 은 도 1 에 나타내는 물리 네트워크 상에서 고속 스패닝 트리 프로토콜 또는 스패닝 트리 프로토콜을 사용한 경우에 작성되는 논리 네트워크인 트리 (T4) 의 구성예를 도시하는 토폴로지도이다.
본 구성예에 있어서는 트리 (T4) 는 노드 (G4) 를 루트 노드로 하고, 노드 (G1) 와 노드 (G3) 사이의 포트가 폐색되어, 도 37 에 나타내는 토폴로지가 되어 있다. 이 트리는 고속 스패닝 트리 프로토콜에 따라서, 태그 (g4) 를 부가한 BPDU 프레임을 교환함으로써 작성된다. 트리 (T4) 에 있어서는 항상 노드 (G4) 가 루트 노드가 되도록 미리 설정해 둠으로써, 루트 노드는 노드 (G4) 로 결정된다. 이 논리 네트워크는 노드 (G4) 가 수신선임을 의미하는 태그 (g4) 가 부가된 프레임의 전송을 행할 때에 이용된다. 즉, 확장 태그 (g4) 가 부가된 프레임은 트리 (T4) 를 경로로 하여 전송된다.
다음으로, 도 38∼도 40 의 각 도면을 참조하여, 본 실시예에 있어서의 동작예 1∼3 에 관하여 설명한다.
이하의 시퀀스도에 있어서, 주신호 프레임의 시퀀스를 실선으로 나타내고, 런닝 (학습) 프레임의 시퀀스를 파선으로 나타낸다. 또한, 확장 태그가 있는 프레임의 시퀀스를 굵은 선으로 나타내고, 확장 태그가 부가되어 있지 않은 프레임의 시퀀스를 가는 선으로 나타낸다.
도 38 은 노드 (G1) 하위의 클라이언트 (C1) 가 노드 (G2) 하위의 클라이언트 (C2) 에 대하여 PING REQUEST 를 송신하고, 클라이언트 (C2) 가 클라이언트 (C1) 에 대하여 PING REPLY 를 응답할 때의 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타내는 시퀀스도이다. 이것을 동작예 1 로 한다.
시퀀스 (N111) 는 네트워크 동작 개시 직후 또는 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회 (前回) 의 통신이 종료하고 나서 충분히 긴 시간이 경과한 경우의 동작으로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드 (G1) 의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 노드 (G1∼G4) 의 각 노드에 있어서 런닝되어 있지 않은 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스이다. 여기서는, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C2) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여, 수신선 MAC 가 c2, 송신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이하의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC을 키로서, 부가하는 태그 및 출력 포트를 검색하는데, MAC 어드레스 (c2) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트하지 않는다. 이 때문에 노드 (G1) 는 상기 주신호 프레임을 트리 (T0) 를 따라 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하기도 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 노드 (G3) 및 노드 (G4) 의 양방으로 전송된다.
노드 (G1) 는 다운링크측으로부터 미런닝의 송신원 MAC (c1) 가 부가된 프레임이 도착하였기 때문에, MAC 어드레스 (c1) 가 다운링크측 포트에 접속되어 있는 것을 런닝하는 동시에, 확장 태그 어드레스로서, 소스 노드 (G1) 의 어드레스 (g1) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G3) 및 노드 (G4) 의 양방으로 전송된다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 MAC (c2) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 업링크 포트에 송신하면 됨을 런닝한다. 그리고, 수신선 MAC (c2) 를 키로서 출력 포트를 검색하는데, MAC 어드레스 (c2) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트하지 않는다. 이 때문에 노드 (G3) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 노드 (G3) 하위의 클라이언트 (C3) 로 전송된다.
노드 (G3) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있음을 런닝한다. 이 런닝 프레임 도착에 의한 런닝은, 앞서 설명한 주신호 프레임 도착에 의한 런닝보다 우선된다. 이로써, 이후 MAC 어드레스 (c1) 앞의 프레임을 다운링크측으로부터 수신하였을 때는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나 노드 (G3) 에 있어서 트리 (T1) 는 도중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G3) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C3) 는 노드 (G3) 에 의해 전송된 수신선 MAC (c2) 의 주신호 프레임을 수신하는데, 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하지 않기 때문에, 이 프레임을 파기한다.
노드 (G4) 는 노드 (G1) 로부터 송신된 수신선 MAC (c2) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 업링크 포트에 송신하면 된다는 것을 런닝한다. 그리고, 수신선 MAC (c2) 을 키로서 출력 포트를 검색하는데, MAC 어드레스 (c2) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트하지 않는다. 이 때문에 노드 (G4) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트로 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 트리 (T0) 를 따라 업링크 포트로부터 노드 (G2) 로 전송된다.
노드 (G4) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있음을 런닝한다. 이 런닝 프레임 도착에 의한 런닝은 앞서 설명한 주신호 프레임 도착에 의한 런닝보다 우선된다. 이로써, 이후 c1 앞의 프레임을 다운링크측으로부터 수신하였을 때는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G2) 로 전송된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 수신선 MAC (c2) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G4) 가 접속되어 있는 업링크 포트에 송신하면 됨을 런닝한다. 그리고, 수신선 MAC (c2) 를 키로서 출력 포트를 검색하는데, MAC 어드레스 (c2) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트하지 않는다. 이 때문에 노드 (G2) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 노드 (G2) 하의 클라이언트 (C2) 로 전송된다.
노드 (G2) 는 업링크측으로부터 노드 (G4) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있음을 런닝한다. 이 런닝 프레임 도착에 의한 런닝은 앞서 설명한 주신호 프레임 도착에 의한 런닝보다 우선된다. 이로써, 이후 c1 앞의 프레임을 다운링크측으로부터 수신하였을 때는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나 노드 (G2) 에 있어서 트리 (T1) 는 도중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G2) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하여, 노드 (G2) 앞으로 송신한다. 이 프레임을, 이하의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 을 키로서, 부가하는 태그 및 출력 포트를 검색하면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 의 프레임에 대하여, 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하면 됨을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 노드 (G4) 에 전 송한다.
이와 동시에, 노드 (G2) 는 다운링크측으로부터 미런닝의 송신원 MAC 어드레스 (c2) 가 부가된 프레임이 도착하였기 때문에, MAC 어드레스 (c2) 가 다운링크측 포트에 접속되어 있음을 런닝하는 동시에, 확장 태그 어드레스로서 소스 노드 (G2) 의 어드레스 (g2) 를 부가한 런닝 프레임을 트리 (T2) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G3) 및 노드 (G4) 의 양방으로 전송된다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로서 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G4) 는 업링크측으로부터 노드 (G2) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있음을 런닝한다. 이로써, 이후 c2 앞의 프레임을 다운링크측으로부터 수신하였을 때는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T2) 를 따라 업링크측에 브로드캐스트 송신한 다. 그러나 노드 (G4) 에 있어서 트리 (T2) 는 도중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G4) 로부터 이전의 노드로는 전송되지 않는다.
노드 (G3) 는 업링크측으로부터 노드 (G2) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있음을 런닝한다. 이로써, 이후 c2 앞의 프레임을 다운링크측으로부터 수신하였을 때는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T2) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G1) 에 전송된다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리하고, 수신선 MAC (c1) 을 키로서, 다운링크측의 출력 포트를 검색한다. 그러면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
노드 (G1) 는 업링크측으로부터 노드 (G3) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있음을 런닝한다. 이로써, 이후 c2 앞의 프레임을 다운링크측으로부터 수신하였을 때는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나 노드 (G1) 에 있어서 트리 (T2) 는 도중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G1) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는, 기본 소프트웨어내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해, 네트워크 동작 개시 직후 또는 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과한 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 노드 (G1∼G4) 의 각 노드에 있어서 런닝되어 있지 않은 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N112) 는 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 장시간 경과하지 않고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 노드 (G1∼G4) 의 각 노드에 있어서, 이미 런닝되어 있는 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스이다.
여기서는, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C2) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여, 수신선 MAC 가 c2, 송신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을, 이하의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 을 키로서, 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해, 수신선 MAC 어드레스 (c2) 의 프레임에 대하여, 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측으로 전송하면 됨을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 노드 (G3) 에 전송한다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g2) 를 키로서 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g2) 에 대한 출력 포트는 항상 스패닝 트리 (T2) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G3) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G2) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G2) 는 노드 (G3) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g2) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리하고, 수신선 MAC (c2) 를 키로서, 다운링크측의 출력 포트를 검색한다. 그러면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c2) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임을 클라이언트 (C2) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (G2) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 수신선 MAC 어드레스 (c1) 의 프레임에 대하여 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하고, 노드 (G4) 에 전송한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하는 일은 없다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후, 수신선 MAC (c1) 를 키로 하여 다운링크측의 출력 포트를 검색한다. 그러면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종 료되고 나서 장시간 경과하고 있지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 노드 (G1∼G4) 의 각 노드에 있어서, 이미 런닝되어 있는 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N113) 는 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 개시, 또는 전회의 MAC 런닝 에이징 개시로부터, 미리 기기 제어 프로그램을 통해 타이머로 설정된 MAC 런닝 에이징 시간이 경과했지만, 아직 미리 기기 제어 프로그램을 통해 타이머로 설정된 TAG 런닝 에이징 시간이 경과하고 있지 않은 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스이다.
이 경우에는, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C2) 의 MAC 어드레스 (c2) 는 이미 런닝되어 있지만 런닝 프레임을 재송신하도록 설정되어 있고, 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 는 시퀀스 (N112) 와 마찬가지로, 노드 (G1∼G4) 의 각 노드에 있어서 이미 런닝되어 있다.
여기에서는, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C2) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
먼저, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여 수신선 MAC 가 c2, 송신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c2) 의 프레임에 대하여 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하고, 노드 (G3) 에 전송한다.
노드 (G1) 는 다운링크측으로부터 런닝 프레임 재송신이 필요한 송신원 MAC 어드레스 (c1) 가 부가된 프레임이 도착했기 때문에, 확장 태그 어드레스로서 소스 노드 (G1) 의 어드레스 (g1) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g2) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g2) 에 대한 출력 포트는 항상 스패닝 트리 (T2) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G3) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G2) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하는 일은 없다.
노드 (G3) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C1) 에 관한 런닝 내용이 노드 (G3) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G3) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G3) 로부터 이전의 노드로는 전송되지 않는다.
노드 (G4) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C1) 에 관한 런닝 내용이 노드 (G3) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G2) 에 전송된다.
노드 (G2) 는 노드 (G3) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g2) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후, 수신선 MAC (c2) 를 키로 하여 다운링크측의 출력 포트를 검색한다. 그러면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c2) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임을 클라이언트 (C2) 가 접속되어 있는 다운링크 포트에 전송한다.
노드 (G2) 는 업링크측으로부터 노드 (G4) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C1) 에 관한 런닝 내용이 노드 (G3) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G2) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G2) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (G2) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 수신선 MAC 어드레스 (c1) 의 프레임에 대하여 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하고, 노드 (G4) 에 전송한다.
노드 (G2) 는 다운링크측으로부터 런닝 프레임 재송신이 필요한 송신원 MAC 어드레스 (c2) 가 부가된 프레임이 도착했기 때문에, 소스 태그 어드레스 (g2) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하는 일은 없다.
노드 (G4) 는 업링크측으로부터 노드 (G2) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 갖는 클라이언트 (C2) 가 확장 태그 어드레스 (g2) 를 갖는 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C2) 에 관한 런닝 내용이 노드 (G4) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T2) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G4) 에 있어서 트리 (T2) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G4) 로부터 이전의 노드로는 전송되지 않는다.
노드 (G3) 는 업링크측으로부터 노드 (G2) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 갖는 클라이언트 (C2) 가 확장 태그 어드레스 (g2) 를 갖는 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C2) 에 관한 런닝 내용이 노드 (G3) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T2) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G1) 에 전송된다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후, 수신선 MAC (c1) 를 키로 하여 다운링크측의 출력 포트를 검색한다. 그러면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
노드 (G1) 는 업링크측으로부터 노드 (G3) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 갖는 클라이언트 (C2) 가 확장 태그 어드레스 (g2) 를 갖는 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C2) 에 관한 런닝 내용이 노드 (G1) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G1) 에 있어서 트리 (T2) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G1) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 개시, 또는 전회의 MAC 런닝 에이징 개시로부터, 미리 기기 제어 프로그램을 통해 타이머로 설정된 MAC 런닝 에이징 시간이 경과했지만, 아직 미리 기기 제어 프로그램을 통해 타이머로 설정된 TAG 런닝 에이징 시간이 경과하고 있지 않은 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
이 런닝 프레임 재송신 동작은 비대칭 네트워크에 있어서, 각 중계 노드의 어드레스 런닝 내용이 에이징에 의해 지워지지 않도록 유지하기 위해 행한다. 이 동작에 의해 런닝 정보를 유지한 채, 이더넷 (R) 에 비대칭의 주신호 프레임을 송신하는 것이 가능해진다.
이상의 설명에서는 PING 에 대하여 설명했지만, 이 이외의 프레임 전송은 이상의 런닝을 행한 후이면 통상대로 행할 수 있다.
또한, 본 동작예에서의 노드 (G4) 는 그 장치 구성을 간략화한 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대하여 (1) 메모리 복제 정보 (3013) 를 가지지 않는 점, (2) MAC 포워딩 테이블 메모리 (2043) 를 가지지 않는 점, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 가지지 않는 점, 및 (4) 런닝 프레임을 송수신하지 않는 4 가지 점에서 다르다.
다음으로, 도 39 를 참조하여 본 실시예에서의 제 2 동작예에 대하여 기술한다.
도 39 는 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 PING REQUEST 를 송신하고, 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 PING REPLY 를 응답할 때의 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타내는 시퀀스도이다. 이것을 동작예 2 로 한다.
도 39 의 시퀀스에 있어서는 노드 (G1), 노드 (G2) 및 노드 (G4) 는 도 38 에서의 시퀀스의 노드와 동일한데, 노드 (G3) 는 기존의 일반적인 이더넷 (R) 스위치인 노드 (S3) 로 치환한다.
기존 노드 (S3) 는 노드 (G3) 에 대하여 (1) 태그 포워딩 테이블 메모리 (2041) 및 그 메모리 복제 정보 (3013) 내의 테이블인 태그 포워딩 테이블 메모리 (70131) 를 가지지 않는 점, (2) 특정한 수신선 MAC 어드레스에 대하여 확장 태그를 삽입하거나 삭제하지 않는 점, 및 (3) 런닝 프레임을 송수신하지 않는 3 가지 점에서 다르다.
시퀀스 (N121) 는 네트워크 동작 개시 직후 또는 클라이언트 (C1) 와 클라이언트 (C3) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과한 경우의 동작으로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 런닝되어 있지 않은 경우 에 있어서의 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 시퀀스이다. 여기에서는 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C3) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
먼저, 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 수신선 MAC 가 c3, 송신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하는데, MAC 어드레스 (c3) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (G1) 는 상기 주신호 프레임을 트리 (T0) 를 따라 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 노드 (S3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G1) 는 다운링크측으로부터 미런닝의 송신원 MAC (c1) 가 부가된 프레임이 도착했기 때문에, MAC 어드레스 (c1) 가 다운링크측 포트에 접속되어 있는 것을 런닝함과 동시에, 확장 태그 어드레스로서 노드 (G1) 의 어드레스 (g1) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (S3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 노드 (G1) 로부터 송신된 수신선 MAC (c3) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 업링크 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC (c3) 를 키로 하여 출력 포트를 검색하는데, MAC 어드레스 (c3) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (G4) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 트리 (T0) 를 따라 업링크 포트로부터 노드 (G2) 에 전송된다.
노드 (G4) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이 런닝 프레임 도착에 의한 런닝은 상기 기술한 주신호 프레임 도착에 의한 런닝보다도 우선된다. 이에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G2) 에 전송된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 수신선 MAC (c3) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G4) 가 접속되어 있는 업링크 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC (c3) 를 키로 하여 출력 포트를 검색하는데, MAC 어드레스 (c3) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (G2) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 클라이언트 (C2) 에 전송된다.
노드 (G2) 는 업링크측으로부터 노드 (G4) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이 런닝 프레임 도착에 의한 런닝은 상기 기술한 주신호 프레임 도착에 의한 런닝보다도 우선된다. 이에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G2) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G2) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC (c3) 의 주신호 프레임을 수신하는데, 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하지 않기 때문에, 이 프레임을 파기한다.
노드 (S3) 는 노드 (G1) 로부터 송신된 수신선 MAC (c3) 앞의 주신호 프레임 을 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC (c3) 를 키로 하여 출력 포트를 검색하는데, MAC 어드레스 (c3) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (S3) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 클라이언트 (C3) 에 전송된다.
노드 (S3) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 전송한다. 그러나, 노드 (S3) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (S3) 로부터 이전의 노드로는 전송되지 않는다.
또한, 노드 (S3) 는 런닝 프레임을 수신하고 네트워크 제어 프로그램 (304) 을 사용하여 상기 프레임을 전송할 수는 있지만, 수신한 프레임의 내용을 사용하여 런닝 관리 프로그램 (302) 에 의해 테이블 정보를 갱신할 수는 없다. 따라서, 런닝 프레임에 의해 MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것은 런닝할 수 없다.
클라이언트 (C3) 는 노드 (S3) 에 의해 전송된 수신선 MAC 어드레스 (c3) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C3) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c3) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (S3) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (S3) 는 클라이언트 (C3) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 노드 (G1) 에 전송한다.
노드 (G1) 는 노드 (S3) 에 의해 전송된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 노드 (S3) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 네트워크 동작 개시 직후 또는 클라이언트 (C1) 와 클라이언트 (C3) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과한 경우의 동작으로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 런닝되어 있지 않은 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N122) 는 클라이언트 (C1) 와 클라이언트 (C3) 사이의 전회의 통신이 종료되고 나서 장시간 경과하고 있지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1) 및 노드 (S3) 의 각 노드에 있어서 이미 런닝되어 있는 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 시퀀스이다.
여기에서는, 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C3) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
먼저, 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 수신선 MAC 가 c3, 송 신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 의 프레임에 대해서는 확장 포워딩 태그를 부가하지 않고, 노드 (S3) 측의 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않고, 그대로 노드 (S3) 가 접속되어 있는 업링크 포트로 전송한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 송신하면 되는 것을 재런닝한다.
노드 (S3) 는 노드 (G1) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 클라이언트 (C3) 가 접속되어 있는 측의 포트에 전송한다.
클라이언트 (C3) 는 노드 (S3) 에 의해 전송된 수신선 MAC 어드레스 (c3) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C3) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c3) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (S3) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (S3) 는 클라이언트 (C3) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 노드 (G1) 에 전송한다.
노드 (G1) 는 노드 (S3) 에 의해 전송된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 노드 (S3) 가 접속되어 있는 측의 업링크 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 클라이언트 (C1) 와 클라이언트 (C3) 사이의 전회의 통신이 종료되고 나서 장시간 경과하고 있지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1) 및 노드 (S3) 의 각 노드에 있어서 이미 런닝되어 있는 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N123) 는 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 개시, 또는 전회의 MAC 런닝 에이징 개시로부터, 미리 기기 제어 프로그램을 통해 타이머로 설정된 MAC 런닝 에이징 시간이 경과했지만, 아직 미리 기기 제어 프로그램을 통해 타이머로 설정된 TAG 런닝 에이징 시간이 경과하고 있지 않은 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 시퀀스이다.
이 경우에는, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C3) 의 MAC 어드레스 (c3) 는 이미 런닝되어 있지만 런닝 프레임을 재송신하도록 설정되어 있고, 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 는 시퀀스 (N122) 와 마찬가지로, 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 이미 런닝되어 있다.
여기에서는 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C3) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
먼저, 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 수신선 MAC 가 c3, 송신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 의 프레임에 대해서는 확장 포워딩 태그를 부가하지 않고, 노드 (S3) 측의 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않고, 그대로 노드 (S3) 가 접속되어 있는 업링크 포트로 전송한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 송신하면 되는 것을 재런닝한다.
노드 (G1) 는 다운링크측으로부터 런닝 프레임 재송신이 필요한 송신원 MAC 어드레스 (c1) 가 부가된 프레임이 도착했기 때문에, 확장 태그 어드레스로서 노드 (G1) 의 노드 어드레스 (g1) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (S3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하 면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C1) 에 관한 런닝 내용이 노드 (G3) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G2) 에 전송된다.
노드 (G2) 는 업링크측으로부터 노드 (G4) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이 재런닝에 의해, 에이징에 의해 클라이언트 (C1) 에 관한 런닝 내용이 노드 (G3) 로부터 지워지는 것을 방지한다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G2) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G2) 로부터 이전의 노드로는 전송되지 않는다.
노드 (S3) 는 노드 (G1) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 클라이언트 (C3) 가 접속되어 있는 측의 포트에 전송한 다.
노드 (S3) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 전송한다. 그러나, 노드 (S3) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (S3) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C3) 는 노드 (S3) 에 의해 전송된 수신선 MAC 어드레스 (c3) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C3) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c3) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (S3) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (S3) 는 클라이언트 (C3) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 노드 (G1) 에 전송한다.
노드 (G1) 는 노드 (S3) 에 의해 전송된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 노드 (S3) 가 접속되어 있는 측의 업링크 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 개시, 또는 전회의 MAC 런닝 에이징 개시로부터, 미리 기기 제어 프로그램을 통해 타이머로 설정된 MAC 런닝 에이징 시간이 경과했지만, 아직 미리 기기 제어 프로그램을 통해 타이머로 설정된 TAG 런닝 에이징 시간이 경과하고 있지 않은 경우에 있어서의 클라이언트 (C1) 와 클라이언트 (C3) 사이의 통신 시퀀스를 설명할 수 있었다.
또한, 본 동작예에서의 노드 (G4) 는 그 장치 구성을 간략화한 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대하여 (1) 메모리 복제 정보 (3013) 를 가지지 않는 점, (2) MAC 포워딩 테이블 메모리 (2043) 를 가지지 않는 점, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 가지지 않는 점, 및 (4) 런닝 프레임을 송수신하지 않는 4 가지 점에서 다르다.
다음으로, 도 40 을 참조하여 본 실시예에서의 제 3 동작예에 대하여 기술한다.
도 40 은 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 PING REQUEST 를 송신하고, 클라이언트 (C1) 가 클라이언트 (C3) 에 대하여 PING REPLY 를 응답할 때의 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타내는 시퀀스도이다. 이것을 동작예 3 으로 한다.
도 40 의 시퀀스에 있어서는 노드 (G1), 노드 (G2) 및 노드 (G4) 는 도 38 에 있어서의 시퀀스의 노드와 동일한데, 노드 (G3) 는 기존의 일반적인 이더넷 (R) 스위치인 노드 (S3) 로 치환한다.
기존 노드 (S3) 는 노드 (G3) 에 대하여 (1) 태그 포워딩 테이블 메모리 (2041) 및 그 메모리 복제 정보 (3013) 내의 테이블인 태그 포워딩 테이블 메모리 (70131) 를 가지지 않는 점, (2) 특정한 수신선 MAC 어드레스에 대하여 확장 태그를 삽입하거나 삭제하지 않는 점, 및 (3) 런닝 프레임을 송수신하지 않는 3 가지 점에서 다르다.
시퀀스 (N131) 는 네트워크 동작 개시 직후 또는 클라이언트 (C3) 와 클라이언트 (C1) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과한 경우의 동작으로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드 (G1) 의 어드레스 (g1), 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 런닝되어 있지 않 은 경우에 있어서의 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 시퀀스이다. 여기에서는 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C1) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
먼저, 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 수신선 MAC 가 c1, 송신원 MAC 가 c3 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (S3) 는 클라이언트 (C3) 로부터 송신된 수신선 MAC (c1) 앞의 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC (c1) 를 키로 하여 출력 포트를 검색하는데, MAC 어드레스 (c1) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (S3) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 노드 (G1) 에 전송된다.
노드 (G1) 는 상기 프레임을 업링크 포트로부터 수신한다. 수신선 MAC (c1) 를 키로 하여 부가하는 태그 및 출력 포트를 검색하는데, MAC 어드레스 (c1) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (G1) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 클라이언트 (C1) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 노드 (G1) 로부터 송신된 수신선 MAC (c1) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 노드 (G1) 가 접속되어 있는 업링크 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC (c1) 를 키로 하여 출력 포트를 검색하는데, MAC 어드레스 (c1) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (G4) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 트리 (T0) 를 따라 업링크 포트로부터 노드 (G2) 에 전송된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 수신선 MAC (c1) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 노드 (G4) 가 접속되어 있는 업링크 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC (c1) 를 키로 하여 출력 포트를 검색하는데, MAC 어드레스 (c1) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (G2) 는 상기 주신호 프레임을 트리 (T0) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 클라이언트 (C2) 에 전송된다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC (c1) 의 주신호 프레임을 수신하는데, 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하지 않기 때문에, 이 프레임을 파기한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C3) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C1) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c3), 송신원 MAC 어드레스 (c1) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (G1) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 의 프레임에 대해서는 확장 포워딩 태그를 부가하지 않고, 노드 (S3) 측의 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않고, 그대로 노드 (S3) 가 접속되어 있는 업링크 포트로 전송한다.
노드 (G1) 는 다운링크측으로부터 미런닝의 송신원 MAC (c1) 가 부가된 프레임이 도착했기 때문에, MAC 어드레스 (c1) 가 다운링크측 포트에 접속되어 있는 것을 런닝함과 동시에, 확장 태그 어드레스로서 노드 (G1) 의 노드 어드레스 (g1) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (S3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G2) 에 전송된다.
노드 (G2) 는 업링크측으로부터 노드 (G4) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G2) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G2) 로부터 이전의 노드로는 전송되지 않는다.
노드 (S3) 는 노드 (G1) 로부터 송신된 수신선 MAC (c3) 앞의 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 송신하면 되는 것을 런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 클라이언트 (C3) 에 전송한다.
노드 (S3) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 전송한다. 그러나, 노드 (S3) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (S3) 로부터 이전의 노드로는 전송되지 않는다.
또한, 노드 (S3) 는 런닝 프레임을 수신하고 네트워크 제어 프로그램 (304) 을 사용하여 상기 프레임을 전송할 수는 있지만, 수신한 프레임의 내용을 사용하여 런닝 관리 프로그램 (302) 에 의해 테이블 정보를 갱신할 수는 없다. 따라서, 런닝 프레임에 의해 MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것은 런닝할 수 없다.
클라이언트 (C3) 는 노드 (S3) 에 의해 전송된 수신선 MAC 어드레스 (c3) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 네트워크 동작 개시 직후 또는 클라이언트 (C3) 와 클라이언트 (C1) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과한 경우의 동작으로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 런닝되어 있지 않은 경우에 있어서의 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N132) 는 클라이언트 (C3) 와 클라이언트 (C1) 사이의 전회의 통신이 종료되고 나서 장시간 경과하고 있지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1) 및 노드 (S3) 의 각 노드에 있어서 이미 런닝되어 있는 경우에 있어서의 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 시퀀스이다.
여기에서는 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C1) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
먼저, 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 수신선 MAC 가 c1, 송신원 MAC 가 c3 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (S3) 는 클라이언트 (C3) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 노드 (G1) 에 전송한다.
노드 (G1) 는 노드 (S3) 에 의해 전송된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 노드 (S3) 가 접속되어 있는 측의 업링크 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C3) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C1) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c3), 송신원 MAC 어드레스 (c1) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (G1) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 의 프레임에 대해서는 확장 포워딩 태그를 부가하지 않고, 노드 (S3) 측의 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않고, 그대로 노드 (S3) 가 접속되어 있는 업링크 포트로 전송한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 송신하면 되는 것을 재런닝한다.
노드 (S3) 는 노드 (G1) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 클라이언트 (C3) 가 접속되어 있는 측의 포트에 전송한다.
클라이언트 (C3) 는 노드 (S3) 에 의해 전송된 수신선 MAC 어드레스 (c3) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 클라이언트 (C3) 와 클라이언트 (C1) 사이의 전회의 통신이 종료되고 나서 장시간 경과하고 있지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C3) 의 MAC 어드레스 (c3) 가 노드 (G1) 및 노드 (S3) 의 각 노드에 있어서 이미 런닝되어 있는 경우에 있어서의 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N133) 는 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 개시, 또는 전회의 MAC 런닝 에이징 개시로부터, 미리 기기 제어 프로그램을 통해 타이머로 설정된 MAC 런닝 에이징 시간이 경과했지만, 아직 미리 기기 제어 프로그램을 통해 타이머로 설정된 TAG 런닝 에이징 시간이 경과하고 있지 않은 경우에 있어서의 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 시퀀스이다.
이 경우에는 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C3) 의 MAC 어드레스 (c3) 는 이미 런닝되어 있지만 런닝 프레임을 재송신하도록 설정되어 있고, 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 는 시퀀스 (N122) 와 마찬가지로, 노드 (G1), 노드 (G2), 노드 (S3), 노드 (G4) 의 각 노드에 있어서 이미 런닝되어 있다.
여기에서는 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 ICMP ECHO REQUEST 프레임을 송신하고, 클라이언트 (C1) 가 ICMP ECHO REPLY 프레임을 응답하는 경우의 예를 나타낸다.
먼저, 클라이언트 (C3) 가 클라이언트 (C1) 에 대하여 수신선 MAC 가 c1, 송신원 MAC 가 c3 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (S3) 는 클라이언트 (C3) 로부터 송신된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 측의 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 노드 (G1) 에 전송한다.
노드 (G1) 는 노드 (S3) 에 의해 전송된 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c3) 앞의 프레임은 노드 (S3) 가 접속되어 있는 측의 업링크 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c1) 앞의 프레임은 클라이언트 (C1) 가 접속되어 있는 측의 다운링크 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C3) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C1) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c3), 송신원 MAC 어드레스 (c1) 의 ICMP ECHO REPLY 프레임을 작성하고, 노드 (G1) 앞으로 송신한다. 이 프레임을 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해 수신선 MAC 어드레스 (c3) 의 프레임에 대해서는 확장 포워딩 태그를 부가하지 않고, 노드 (S3) 측의 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 대하여 태그를 부가하거나 삭제하는 조작은 행하지 않고, 그대로 노드 (S3) 가 접속되어 있는 업링크 포트로 전송한다.
노드 (G1) 는 다운링크측으로부터 런닝 프레임 재송신이 필요한 송신원 MAC 어드레스 (c1) 가 부가된 프레임이 도착했기 때문에, 소스 태그 어드레스 (g1) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (S3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G2) 에 전송된다.
노드 (G2) 는 업링크측으로부터 노드 (G4) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 갖는 클라이언트 (C1) 가 확장 태그 어드레스 (g1) 를 갖는 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 재런닝한다. 이에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다. 또한, 동시에 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 송신한다. 그러나, 노드 (G2) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (G2) 로부터 이전의 노드로는 전송되지 않는다.
노드 (S3) 는 노드 (G1) 로부터 송신된 수신선 MAC (c3) 앞의 주신호 프레임을 수신한다. 이 때, 수신선 MAC 어드레스 (c1) 앞의 프레임은 노드 (G1) 가 접속되어 있는 포트에 송신하면 되는 것을 재런닝한다. 그리고, 수신선 MAC 를 키로 하여 출력 포트를 검색하면, 이전의 런닝 동작에 의해 수신선 MAC 어드레스 (c3) 앞의 프레임은 클라이언트 (C3) 가 접속되어 있는 포트에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (S3) 는 상기 프레임을 클라이언트 (C3) 에 전송한다.
노드 (S3) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측에 브로드캐스트 전송한다. 그러나, 노드 (S3) 에 있어서 트리 (T1) 는 도중에 끊겨 있기 때문에, 결과적으로 런닝 프레임은 노드 (S3) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C3) 는 노드 (S3) 에 의해 전송된 수신선 MAC 어드레스 (c3) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 개시, 또는 전회의 MAC 런닝 에이징 개시로부터, 미리 기기 제어 프로그램을 통해 타이머로 설정된 MAC 런닝 에이징 시간이 경과했지만, 아직 미리 기기 제어 프로그램을 통해 타이머로 설정된 TAG 런닝 에이징 시간이 경과하고 있지 않은 경우에 있어서의 클라이언트 (C3) 와 클라이언트 (C1) 사이의 통신 시퀀스를 설명할 수 있었다.
또한, 본 동작예에 있어서의 노드 (G4) 는 그 장치 구성을 간략화한 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대하여 (1) 메모리 복제 정보 (3013) 를 가지지 않는 점, (2) MAC 포워딩 테이블 메모리 (2043) 를 가지지 않는 점, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 가지지 않는 점, 및 (4) 런닝 프레임을 송수신하지 않는 4 가지 점에서 다르다.
다음으로, 본 실시예의 효과에 대하여 설명한다.
종래, 이더넷 (R) 에 의한 네트워크에 방향에 따라 플로우가 경유하는 노드가 다른 비대칭 플로우를 흘려보낸 경우, 런닝 프로세스가 기능하지 않고, 프레임은 수신선에 도착하지만, 불필요한 수신선에까지 전달되기 때문에, 네트워크의 혼잡을 야기하여 대역 이용 효율이 떨어진다는 문제가 있었다.
본 실시예에서는 주신호 프레임이 흐르는 경로와는 반대의 경로에 런닝 프레임을 송신함으로써, 비대칭 플로우를 흘려보낸 경우에도 런닝 프로세스를 기능시킬 수 있고, 네트워크의 혼잡을 해소하고, 대역 이용 효율을 높이는 것이 가능하다.
또한, 종래 수신선을 나타내는 태그를 사용한 프레임 전송을 행하는 경우에는 미리 각 노드에 수신선 MAC 어드레스에 따라 부가해야 할 확장 태그에 관한 정보 (수신선 클라이언트가 접속되어 있는 노드의 노드 어드레스 등) 를 설정해 두어야 했다.
본 실시예에서는 상기 런닝 프레임에 태그 정보를 포함시킴으로써, 각 노드에 있어서, 수신선 MAC 어드레스와 이에 따라 부가해야 할 확장 태그의 대응 관계를 설정할 수 있어 설정 작업을 자동화하는 것이 가능하다.
(제 2 실시예)
이하, 본 발명의 제 2 실시예에 대하여 도면을 참조하여 상세하게 설명한다.
본 발명의 제 2 실시예는 제 1 실시예에 있어서 런닝 프레임을 송신하는 대신에, 수신선 불명 유니캐스트 프레임, 브로드캐스트 프레임 또는 멀티캐스트 프레임에 송신원 노드의 어드레스를 저장한 확장 태그를 추가하고, 상기 확장 태그가 있는 프레임을 수신한 각 노드가 이 확장 태그를 사용하여 MAC 어드레스와 태그 어드레스의 관련성을 학습하는 점과, 에이징 완료시에 에이징에 의해 소거되지 않고 남은 엔트리에 대하여 런닝 프레임을 송신하지 않는 점이 다르다. 본 실시예에 있어서는 송신원 노드의 어드레스가 저장된 확장 태그 (이하, 소스 태그라고 함) 가 있는 브로드캐스트 프레임을 사용하여 MAC → 태그 런닝을 행하기 때문에, 런닝 프레임의 송신을 생략할 수 있다.
도 41 은 제 1 실시예에서의 도 1 의 네트워크 상으로 전송되는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 구성을 나타내는 블록도이다.
소스 태그가 있는 이더넷 (R) 프레임 (62A) 은 제 1 실시예에서의 포워딩 태그가 있는 이더넷 (R) 프레임 (62) 의 태그 (620) 의 우선도ㆍ태그 식별 정보 (6201) 에 소스 태그를 나타내는 비트가 부가되어 있다.
도 42 는 제 1 실시예에서의 도 10 에 기재된 테이블 서치기 (203) 의 구성을 상세하게 나타낸 블록도이다.
테이블 관리기 (2031A) 는 제 1 실시예에서의 도 14 에 기재된 테이블 관리기 (2031) 에 대해, 정보 비교기 (2032) 로부터 MAC 포워딩 테이블에 있어서 미스히트의 통지를 받았을 때의 동작, 및 도 41 에 기재된 수신선 MAC 어드레스 (601) 에 브로드캐스트 어드레스 또는 멀티캐스트 어드레스가 설정된 경우의 동작이 다르다.
제 1 실시예에 있어서의 테이블 관리기 (2031) 는 다운링크 포트로부터 프레임을 수신하고, 정보 비교기 (2032) 로부터 MAC 포워딩 테이블 (2043) 에 있어서 미스히트가 발생했다는 통지를 받았을 경우, 또는 수신선 MAC 어드레스에 브로드캐스트 어드레스 또는 멀티캐스트 어드레스가 설정되어 있는 경우에는, 입력된 VLAN 태그를 키로 하여 브로드캐스트 포워딩 테이블 (2042) 을 검색하고 있었다.
이에 대해, 본 실시예에 있어서의 테이블 관리기 (2031A) 는, 정보 비교기 (2032A) 로부터 MAC 포워딩 테이블 (2043) 에 있어서 미스히트가 발생한 경우 (부가해야 할 수신선 태그가 불명인 경우), 또는 수신선 MAC 어드레스에 브로드캐스트 어드레스 또는 멀티캐스트 어드레스가 설정되어 있었던 경우에는, 해당 노드 어드레스를 키로 하여 브로드캐스트 포워딩 테이블 (2042) 을 검색하여, 프레임 송출선 포트를 결정한다.
정보 비교기 (2032A) 는 제 1 실시예에 있어서의 도 14 에 기재된 정보 비교기 (2032) 에 대해, MAC 포워딩 테이블에 있어서 미스히트를 검출한 경우, 및 도 41 에 기재된 수신선 MAC 어드레스 (601) 에 브로드캐스트 어드레스 또는 멀티캐스트 어드레스가 설정된 경우의 동작이 다르다.
제 1 실시예에 있어서의 정보 비교기 (2032) 는 MAC 포워딩 테이블 (2043) 을 검색한 결과 미스히트를 검출한 경우, 또는 수신선 MAC 어드레스에 브로드캐스트 어드레스 또는 멀티캐스트 어드레스가 설정되어 있었던 경우에는, 테이블 관리기 (2031) 에 통지를 행하지만, 프레임 재기록기 (205) 에 대해서는, 특별히 재기록 지시를 행하지 않았다.
이에 대해, 본 실시예에 있어서의 정보 비교기 (2032A) 는 MAC 포워딩 테이블 (2043) 을 검색한 결과 미스히트를 검출한 경우, 또는 수신선 MAC 어드레스에 브로드캐스트 어드레스 또는 멀티캐스트 어드레스가 설정되어 있었던 경우에는, 테이블 관리기 (2031) 에 통지를 행하는 것 외에, 프레임 재기록기 (205) 에 대해 해당 노드 ID 가 저장된 소스 태그를 프레임에 추가 삽입하도록, 태그 정보 (20323) 및 태그 제어 정보 (20322) 에 따라 지시를 한다.
이상에 기재된 동작에 따라, 프레임 서치기 (203) 에 있어서, MAC 포워딩 테이블 (2043) 을 검색한 결과 미스히트를 검출한 경우, 또는 수신선 MAC 어드레스에 브로드캐스트 어드레스 또는 멀티캐스트 어드레스가 설정되어 있었던 경우에는, 입력 프레임에 소스 태그가 추가 삽입되고, 해당 노드를 루트 노드로 하는 트리의 경로를 따라 브로드캐스트 전송된다.
도 43 은 제 2 실시예에 있어서의 런닝 관리기 (202A) 의 구성을 상세하게 나타낸 블록도이다. 런닝 관리기 (202A) 는 제 1 실시예에 있어서의 도 12 에 기재된 런닝 프레임 송신 관리기 (202) 와 비교하여, 런닝 프레임 관리기 (2021) 가 런닝 프레임 관리기 (2021A) 로 되어 있는 점에서 다르다.
런닝 프레임 관리기 (2021A) 는 제 1 실시예에 있어서의 도 12 에 기재된 런닝 프레임 관리기 (2021) 에 대해, 프레임 헤더 정보로서, 송신선의 어드레스를 나타내는 확장 태그 (소스 태그) 가 있는 프레임을 수신한 경우의 동작이 다르다.
제 1 실시예에 있어서의 런닝 프레임 관리기 (2021) 는 프레임 헤더 정보 (20141) 를 수취하면, 프레임의 헤더 구조에 관계없이, 항상 송신선 MAC 어드레스를 체크하고 나서, 런닝 프레임의 송신 요구를 행하고 있었다. 즉, 프레임 헤더 정보의 MAC 송신선 어드레스와 동일한 MAC 송신선 어드레스가 MAC SA 테이블 캐시 (2025) 에 엔트리되어 있지 않은지를 확인하고, 확인 후, 엔트리되어 있지 않은 경우에는 송신 요구기 (2023) 에, 프레임 헤더 정보 (20141) 와 함께 런닝 프레임 송신 요구 (20231) 를 출력하고 있었다.
이에 대해, 본 실시예에 있어서의 런닝 프레임 관리기 (2021A) 는, 프레임 헤더 정보 (20141) 를 수취하면, 프레임의 헤더 구조를 조사하여, 송신선의 노드 어드레스를 나타내는 확장 태그 (소스 태그) 가 있는 프레임인 경우에는, MACSA 캐시 테이블 (2025) 을 검색하지 않고, 항상 제 1 실시예에 있어서의, MAC 송신선 어드레스가 MAC SA 캐시 테이블에 엔트리되어 있지 않은 경우와 마찬가지로, 프레임 헤더 정보 (20141) 와 함께 런닝 프레임 송신 요구 (20231) 를 출력하는 점에서 다르다.
또한, 런닝 프레임 관리기 (2021A) 는 프레임 헤더 정보 (20141) 를 수취하고, 프레임의 헤더 구조를 조사하여, 송신선의 노드 어드레스를 나타내는 확장 태그 (소스 태그) 가 있는 프레임이 아닌 경우에는, 런닝 프레임 관리기 (2021) 와 마찬가지로, 프레임 헤더 정보의 MAC 송신선 어드레스와 동일한 MAC 송신선 어드레스가 MAC SA 테이블 캐시 (2025) 에 엔트리되어 있지 않은지를 확인하고, 확인 후, 엔트리되어 있지 않은 경우에는, 송신 요구기 (2023) 에, 프레임 헤더 정보 (20141) 와 함께 런닝 프레임 송신 요구 (20231) 를 출력한다. 또한, 동시에, MAC 송신선 어드레스 정보를, MAC SA 테이블 캐시 (2025) 에 엔트리한다. 만일 확인시에 동일한 MAC 수신선 어드레스가 이미 엔트리되어 있는 경우에는, 송신 요구를 출력하지 않는다.
또한, 런닝 프레임 관리기 (2021A) 는 MAC SA 테이블 캐시 (2025) 를, 에이징 요구 접수기 (2022) 로부터의 요구에 따라 제로 클리어하는 기능을 갖는다. 이에 대해서는, 런닝 프레임 관리기 (2021) 와 동일한 동작이다.
도 44 는 제 1 실시예에 있어서의 도 23 에 나타내는 런닝 관리 프로그램 (302) 에서의 이벤트 (01) 의 동작을 상세하게 나타낸 플로우차트이다. 도 44 를 참조하면, 본 발명의 제 2 실시예는, 제 1 실시예에 있어서의 도 25 의 단계 N0103A 의 동작을 설정에 따라 변경하고, 런닝 프레임을 송신할지의 여부를 선택할 수 있는 것 외에, Ptype=0 으로 설정함으로써, MAC 포워드 테이블에 엔트리를 기록할 때, 항상 런닝 프레임 송신 대상외 엔트리로서 등록하는 점에서 다르다.
단계 N0101, N0102, N0104∼N0106 은 제 1 실시예에 있어서의 도 25 의 단계 N0101, N0102, N0104∼N0106 과 동일하다.
단계 N0103 에 있어서, 단계 N0101 에서 통지된 프레임 해석기 (201) 의 판정 결과를 조사하여, 만일 런닝하려고 하고 있는 프레임이 업링크측으로부터 입력된 것인 경우, 또는 다운링크로부터의 입력이라 하더라도, 런닝 프레임의 송신이 설정에 의해 정지되어 있는 경우에는, 단계 N0105 로 이행한다. 만일 다운링크로부터의 입력이며, 런닝 프레임을 송신 가능한 상태로 설정되어 있는 경우, Ptype=0 으로 하여 런닝 프레임을 한 번만 송신하고, 이후의 주기적인 자동 송신은 행하지 않도록 설정한 후에, 단계 N0104 로 이행한다.
다음으로, 도 45 를 참조하여, 본 실시예에 있어서의 제 1 동작예에 대하여 서술한다.
이후의 시퀀스도에 있어서, 확장 태그가 부가되어 있지 않은 주신호 프레임의 시퀀스를 가는 실선으로 나타낸다. 또한, 확장 태그 (수신선 클라이언트가 접속된 노드의 노드 어드레스가 부가된 포워딩 태그) 가 있는 주신호 프레임의 시퀀스를 굵은 실선으로 나타내며, 확장 태그 (소스 태그) 가 있는 주신호 프레임의 시퀀스를 굵은 파선으로 나타낸다. 또한, 확장 태그 (소스 태그) 가 있는 런닝 (학습) 의 시퀀스를 가는 파선으로 나타낸다.
도 45 는 제 1 실시예에 있어서의 도 1 에 나타내는 네트워크에 있어서, 클라이언트 (C1) 가 클라이언트 (C2) 에 대해 PING REQUEST 를 송신하고, 클라이언트 (C2) 가 클라이언트 (C1) 에 대해 PING REPLY 를 응답할 때의, 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타내는 시퀀스도이다. 런닝 프레임은 송신하지 않도록 설정되어 있는 것으로 한다.
시퀀스 (N211) 는 시퀀스 (N212) 에 있어서의 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대한 PING REQUEST 송신에 앞서 행해지는, 클라이언트 (C1) 에 의한 ARP (Address Resolution Protocol) REQUEST 의 송신과, 이에 대한 클라이언트 (C2) 에 의한 ARP REPLY 의 응답을 나타낸 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스이다.
시퀀스 (N211) 의 개시시에 있어서는, 네트워크 동작 개시 직후 또는 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과해 있으며, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가, 노드 (G1∼G4) 의 각 노드에 있어서 런닝되어 있지 않고, 또한, C1, C2, C3 의 각 노드에 있어서, ARP 캐시는 클리어되어 있으며, PING 에 앞서 ARP 해결이 필요한 상태인 것으로 한다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대해, 수신선 MAC 가 브로드캐스트 (수신선 MAC 어드레스가 ALL F), 송신선 MAC 가 c1 인 ARP REQUEST 프레임을 송신한다. 이 프레임을, 이후의 설명의 ARP 리퀘스트 프레임이라고 한다.
노드 (G1) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 가 브로드캐스트 어드레스이기 때문에, 노드 (G1) 는 상기 ARP REQUEST 프레임을, 소스 태그 (g1) 를 부가한 후에, 제 1 실시예에 있어서의 도 34 에 기재된 스스로가 루트 노드가 되는 트리 (T1) 를 따라 브로드캐스트한다. 이 결과, ARP REQUEST 프레임은 도 41 에 나타내는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 포맷으로 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G1) 는 다운링크측으로부터 미(未)런닝의 송신선 MAC (c1) 가 부가된 프레임이 도착했기 때문에, MAC 어드레스 (c1) 가 다운링크측 포트에 접속되어 있는 것을 런닝한다. 이 때, 설정에 의해 런닝 프레임의 송신은 정지되어 있기 때문에, 런닝 프레임은 송신하지 않는다.
노드 (G3) 는 노드 (G1) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, ARP REQUEST 프레임은 다운링크 포트로부터 소스 태그를 삭제하여 클라이언트 (C3) 에 전송된다.
이 때, 노드 (G3) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다.
클라이언트 (C3) 는 노드 (G3) 에 의해 전송된 ARP REQUEST 프레임을 수신하지만, 요구되고 있는 IP 어드레스가 자신의 IP 어드레스와 일치하지 않기 때문에, 이 프레임을 파기한다.
노드 (G4) 는 노드 (G1) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 상기 프레임은 트리 (T1) 를 따라 업링크 포트로부터 태그 조작 없이 노드 (G2) 에 전송된다.
이 때, 노드 (G4) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 소스 태그를 삭제하여 클라이언트 (C2) 에 전송된다.
이 때, 노드 (G2) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 ARP REQUEST 프레임을 수신하여, 요구되고 있는 IP 어드레스가 자신의 IP 어드레스와 일치하는 것을 확인한다. 그리고, 수신선 MAC 어드레스 (c1), 송신선 MAC 어드레스 (c2) 의 ARP REPLY 프레임을 생성하여 노드 (G2) 앞으로 송신한다. 이 프레임을, 이후의 설명의 ARP REPLY 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 의 프레임에 대해, 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 노드 (G4) 에 전송한다.
이 때, 노드 (G2) 는 다운링크측으로부터 미런닝의 송신선 MAC (c2) 가 부가된 프레임이 도착했기 때문에, MAC 어드레스 (c2) 가 다운링크측 포트에 접속되어 있는 것을 런닝한다. 이 때, 설정에 의해 런닝 프레임의 송신은 정지되어 있기 때문에, 런닝 프레임은 송신하지 않는다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 ARP REPLY 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측으로 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향해 전송한다. 이 때, 상기 프레임에 대해 일체 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 게다가 MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 ARP REPLY 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후에, 수신선 MAC (c1) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 이전의 러닝 동작에 의해 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 수신하고, ARP 모듈에 인도하여, 수신선 IP 어드레스에 대한 MAC 어드레스를 ARP 테이블에 기록한다.
이상에 의해, 시퀀스 (N212) 에 있어서의 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대한 PING REQUEST 송신에 앞서 행해지는, 클라이언트 (C1) 에 의한 ARP REQUEST 의 송신과, 이에 대한 클라이언트 (C2) 에 의한 ARP REPLY 의 응답을 나타낸 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N212) 는 시퀀스 (N211) 에 의한 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ARP REQUEST 및 ARP REPLY 의 교환이 완료되고 나서 장시간이 경과해 있지 않고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 이미 런닝되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 이미 런닝되어 있으며, 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 이미 런닝되어 있는 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ICMP ECHO REQUEST (PING REQUEST), ICMP ECHO REPLY (PING REPLY) 의 통신 시퀀스이다. 또한, 노드 (G1∼G3) 의 각 노드에 있어서는, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 는 미학습인 것으로 한다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대해, 수신선 MAC 가 c2, 송신선 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하지만, MAC 어드레스 (c2) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트하지 않는다. 이 때문에, 노드 (G1) 는 상기 주신호 프레임에 소스 태그 (g1) 를 부가한 후에, 제 1 실시예에 있어서의 도 34 에 기재된, 스스로가 루트 노드가 되는 트리 (T1) 를 따라 브로드캐스트한다. 이 결과, 주신호 프레임은 도 41 에 나타내는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 포맷으로 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 MAC (c2) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 MAC (c2) 를 키로 하여 출력 포트를 검색하지만, MAC 어드레스 (c2) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트하지 않는다. 이 때문에, 노드 (G3) 는 상기 주신호 프레임을 트리 (T1) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 소스 태그 (g1) 를 삭제하여 클라이언트 (C3) 에 전송된다.
클라이언트 (C3) 는 노드 (G3) 에 의해 전송된 수신선 MAC (c2) 의 주신호 프레임을 수신하지만, 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하지 않기 때문에, 이 프레임을 파기한다.
노드 (G4) 는 노드 (G1) 로부터 송신된 수신선 MAC (c2) 앞의 소스 태그 (g1) 가 있는 주신호 프레임을 업링크 포트로부터 수신한다. 노드 (G4) 는 상기 프레임에 소스 태그가 부가되어 있기 때문에, 수신선 MAC (c2) 를 키로 한 검색을 행하지 않고, 상기 주신호 프레임을 트리 (T1) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 태그의 추가ㆍ삭제를 행하지 않고, 트리 (T1) 를 따라 업링크 포트로부터 노드 (G2) 에 전송된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 수신선 MAC (c2) 앞의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 MAC (c2) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 이전의 러닝 동작에 의해, 수신선 MAC 어드레스 (c2) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임을 소스 태그 (g1) 를 분리한 후에, 클라이언트 (C2) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는, 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는, 수신선 MAC 어드레스 (c1), 송신선 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하여, 노드 (G2) 앞으로 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 시퀀스 (N211) 에 있어서의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 의 프레임에 대해, 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 노드 (G4) 에 전송한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패팅 트리 (T1) 의 루트 포트측으로 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향해 전송한다. 이 때, 상기 프레임에 대해 일체 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 게다가 MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프 레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후, 수신선 MAC (c1) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 시퀀스 (N211) 에 있어서의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는, 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되어, PING 코맨드의 결과가 표시된다.
이상에 의해, 시퀀스 (N211) 에 의한 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ARP REQUEST 및 ARP REPLY 의 교환이 완료되고 나서 장시간이 경과해 있지 않고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 이미 런닝되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 이미 런닝되어 있으며, 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 이미 런닝되어 있는 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ICMP ECHO REQUEST (PING REQUEST), ICMP ECHO REPLY (PING REPLY) 의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N213) 는 상기 시퀀스 (N211) 및 상기 시퀀스 (N212) 의 통신으로부터 장시간이 경과해 있지 않은, 즉 에이징 처리가 행해지기 전의 상태에 있어서, 클라이언트 (C2) 로부터 클라이언트 (C3) 에 대해 ARP REQUEST 를 행한 경우의 통신 시퀀스를 나타내고 있다.
우선, 클라이언트 (C2) 가 클라이언트 (C3) 에 대해, 수신선 MAC 가 브로드캐스트 (ALL F), 송신선 MAC 가 c2 인 ARP REQUEST 프레임을 송신한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 가 브로드캐스트 어드레스이기 때문에, 노드 (G2) 는 상기 ARP REQUEST 프레임을, 소스 태그 (g2) 를 부가한 후에, 제 1 실시예에 있어서의 도 35 에 기재된 스스로가 루트 노드가 되는 트리 (T2) 를 따라 브로드캐스트한다. 이 결과, 주신호 프레임은 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 노드 (G2) 로부터 송신된 소스 태그 (g2) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T2) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 그러나, 노드 (G4) 에 있어서 트리 (T2) 는 도중에 끊어져 있기 때문에, 결과적으로 상기 ARP REQUEST 프레임은 노드 (G4) 로부터 이전의 노드로는 전송되지 않는다.
이 때, 노드 (G4) 는 MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c2 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하게 된다.
노드 (G3) 는 노드 (G2) 로부터 송신된 소스 태그 (g2) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T2) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, ARP REQUEST 프레임은 업링크 포트로부터 태그의 조작 없이 노드 (G1) 로 전송됨과 함께, 다운링크 포트로부터 소스 태그를 삭제하여 클라이언트 (C3) 에도 전송된다.
이 때, 노드 (G3) 는 MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c2 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하게 된다.
클라이언트 (C3) 는 노드 (G3) 에 의해 전송된 ARP REQUEST 프레임을 수신하여, 요구되고 있는 IP 어드레스가 자신의 IP 어드레스와 일치하는 것을 확인한다. 그리고, 수신선 MAC 어드레스 (c2), 송신선 MAC 어드레스 (c3) 의 ARP REPLY 프레 임을 생성하여 노드 (G2) 앞으로 송신한다.
ARP REPLY 프레임은 노드 (G3) 에 있어서 수신선 태그 (g2) 가 부가되어, 트리 (T2) 를 경유하여 노드 (G2) 에 도달하고, 노드 (G2) 에 있어서 수신선 태그가 삭제된 후, 다운링크 포트로부터 클라이언트 (C2) 를 향해 전송된다.
노드 (G1) 는 노드 (G3) 로부터 송신된 소스 태그 (g2) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T2) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 소스 태그를 삭제하여 클라이언트 (C1) 에 전송된다.
이 때, 노드 (G1) 는 MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c2 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하게 된다.
클라이언트 (C1) 는 노드 (G2) 에 의해 전송된 ARP REQUEST 프레임을 수신하지만, 요구되고 있는 IP 어드레스가 자신의 IP 어드레스와 일치하지 않기 때문에, 처리를 완료한다.
이상에 의해, 상기 시퀀스 (N211) 및 상기 시퀀스 (N212) 의 통신으로부터 장시간이 경과해 있지 않은, 즉 에이징 처리가 행해지기 전의 상태에 있어서, 클라이언트 (C2) 로부터 클라이언트 (C3) 에 대해 ARP REQUEST 를 행한 경우의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N214) 는 상기 시퀀스 (N211∼N213) 의 통신으로부터 장시간이 경과해 있지 않은, 즉 에이징 처리가 행해지기 전의 상태에 있어서, 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대해 ICMP ECHO REQUEST (PING REQUEST) 프레임을 송신하여, 클라이언트 (C2) 가 ICMP ECHO REPLY (PING REPLY) 프레임을 응답하는 경우의 예를 나타내고 있다.
시퀀스 (N214) 에서는 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 이미 런닝되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 이미 런닝되어 있고, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 이미 런닝되어 있으며, 또한, 노드 (G1∼G3) 의 각 노드에 있어서, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 이미 런닝되어 있는 것으로 한다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대해, 수신선 MAC 가 c2, 송신선 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해, 수신선 MAC 어드레스 (c2) 의 프레임에 대해 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 노드 (G3) 에 전송한다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g2) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g2) 에 대한 출력 포트는 항상 스패닝 트리 (T2) 의 루트 포트측으로 설정되어 있기 때문에, 노드 (G3) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G2) 를 향해 전송한다. 이 때, 상기 프레임에 대해 일체 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 게다가 MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G2) 는 노드 (G3) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g2) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후에, 수신선 MAC (c2) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 이전의 러닝 동작에 의해, 수신선 MAC 어드레스 (c2) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임을 클라이언트 (C2) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신선 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하여 노드 (G2) 앞으로 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 수신선 MAC 어드레스 (c1) 의 프레임에 대해, 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 노드 (G4) 에 전송한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측으로 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향해 전송한다. 이 때, 상기 프레임에 대해 일체 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 게다가 MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드 레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후에, 수신선 MAC (c1) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 이전의 러닝 동작에 의해, 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되어, PING 코맨드의 결과가 표시된다.
이상에 의해, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 장시간이 경과해 있지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 게다가 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가, 노드 (G1∼G4) 의 각 노드에 있어서 이미 런닝되어 있는 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
또한, 본 동작예에 있어서의 노드 (G4) 는 그 장치 구성을 간략화한 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대해, (1) 메모리 복제 정보 (3013) 를 갖지 않는 점, (2) MAC 포워딩 테이블 메모리 (2043) 를 갖지 않는 점, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 갖지 않는 점, 및 (4) 런닝 프레임을 송수신하지 않는 4 가지 점에서 다르다.
다음으로, 도 46 을 참조하여, 본 실시예에 있어서의 제 2 동작예에 대하여 서술한다.
이후의 시퀀스도에 있어서, 확장 태그가 부가되어 있지 않은 주신호 프레임의 시퀀스를 가는 실선으로 나타낸다. 또한, 확장 태그 (포워딩 태그) 가 있는 주신호 프레임의 시퀀스를 굵은 실선으로 나타내고, 확장 태그 (소스 태그) 가 있는 주신호 프레임의 시퀀스를 굵은 파선으로 나타낸다. 또한, 확장 태그 (소스 태그) 가 있는 런닝의 시퀀스를 가는 파선으로 나타낸다.
도 46 은 클라이언트 (C1) 가 클라이언트 (C2) 에 대해 PING REQUEST 를 송신하고, 클라이언트 (C2) 가 클라이언트 (C1) 에 대해 PING REPLY 를 응답할 때의 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타내는 시퀀스도이다.
본 동작예는 도 45 에 나타낸 제 1 실시예와는 달리, 노드 (G1∼G4) 의 각 노드는 런닝 프레임을 송신하도록 설정되어 있는 것으로 한다. 즉, 제 1 실시예에 나타낸 소스 태그에 의한 런닝 외에, 제 1 실시예에 나타낸 런닝 프레임에 의한 런닝을 조합한 것이다.
시퀀스 (N221) 는 시퀀스 (N221) 에 있어서의 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대한 PING REQUEST 송신에 앞서 행해지는 클라이언트 (C1) 에 의한 ARP REQUEST 의 송신과, 이에 대한 클라이언트 (C2) 에 의한 ARP REPLY 의 응답을 나타낸 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스이다.
시퀀스 (N221) 의 개시시에 있어서는 네트워크 동작 개시 직후 또는 클라이 언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과해 있으며, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가, 노드 (G1∼G4) 의 각 노드에 있어서 런닝되어 있지 않고, 게다가 C1, C2, C3 의 각 노드에 있어서 ARP 캐시는 클리어되어 있으며, PING 에 앞서 ARP 해결이 필요한 상태인 것으로 한다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대해, 수신선 MAC 가 브로드캐스트 (ALL F), 송신선 MAC 가 c1 인 ARP REQUEST 프레임을 송신한다. 이 프레임을, 이후의 설명의 ARP 리퀘스트 프레임이라고 한다.
노드 (G1) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 가 브로드캐스트 어드레스이기 때문에, 노드 (G1) 는 상기 ARP REQUEST 프레임을, 소스 태그 (g1) 를 부가한 후에, 제 1 실시예에 있어서의 도 34 에 기재된 스스로가 루트 노드가 되는 트리 (T1) 를 따라 브로드캐스트한다. 이 결과, ARP REQUEST 프레임은 도 41 에 나타내는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 포맷으로 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G1) 는 다운링크측으로부터 미런닝의 송신선 MAC (c1) 가 부가된 프레임이 도착했기 때문에, MAC 어드레스 (c1) 가 다운링크측 포트에 접속되어 있는 것을 런닝함과 동시에, 확장 태그 어드레스로서 노드 (G1) 의 어드레스 (g1) 를 부가한 런닝 프레임을 트리 (T1) 를 따라 업링크측으로 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G3) 는 노드 (G1) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 Tl 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, ARP REQUEST 프레임은 다운링크 포트로부터 소스 태그를 삭제하여 클라이언트 (C3) 에 전송된다.
이 때, 노드 (G3) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다.
노드 (G3) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝하려고 하지만, 이미 소스 태그가 있는 ARP REQUEST 의 도착으로 인하여 이 런닝이 완료되어 있기 때문에, 새 런닝 동작을 행하지 않고, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측으로 브로드캐스트 송신한다. 그러나, 노드 (G3) 에 있어서 트리 (T1) 는 도중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G3) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C3) 는 노드 (G3) 에 의해 전송된 ARP REQUEST 프레임을 수신하지만, 요구되고 있는 IP 어드레스가 자신의 IP 어드레스와 일치하지 않기 때문에, 이 프레임을 파기한다.
노드 (G4) 는 노드 (G1) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 상기 프레임은 트리 (T1) 를 따라 업링크 포트로부터 태그 조작 없이 노드 (G2) 에 전송된다.
이 때, 노드 (G4) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다.
노드 (G4) 는 업링크측으로부터 노드 (G1) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝하려고 하지만, 이미 소스 태그가 있는 ARP REQUEST 의 도착으로 인하여 이 런닝이 완료되어 있기 때문에, 새 런닝 동작을 행하지 않고, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크 측으로 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G2) 에 전송된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측으로 송신하는 프레임에 대해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측으로 송신하는 프레임에 대해서는, 태그를 부가하거나 삭제하거나 하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터 소스 태그를 삭제하여 클라이언트 (C2) 에 전송된다.
이 때, 노드 (G2) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c1 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하게 된다.
노드 (G2) 는 업링크측으로부터 노드 (G4) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있다는 것을 런닝하려고 하지만, 이미 소스 태그가 있는 ARP REQUEST 의 도착으로 인하여 이 런닝이 완료되어 있기 때문에, 새 런닝 동작을 행하지 않고, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측으로 브로드캐스트 송신한다. 그러나, 노드 (G2) 에 있어서 트리 (T1) 는 도 중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G2) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 ARP REQUEST 프레임을 수신하여, 요구되고 있는 IP 어드레스가 자신의 IP 어드레스와 일치하는 것을 확인한다. 그리고, 수신선 MAC 어드레스 (c1), 송신선 MAC 어드레스 (c2) 의 ARP REPLY 프레임을 생성하여 노드 (G2) 앞으로 송신한다. 이 프레임을, 이후의 설명의 ARP REPLY 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 이전의 러닝 동작에 의해, 수신선 MAC 어드레스 (c1) 의 프레임에 대해, 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 노드 (G4) 에 전송한다.
이와 동시에, 노드 (G2) 는 다운링크측으로부터 미런닝의 송신선 MAC 어드레스 (c2) 가 부가된 프레임이 도착했기 때문에, MAC 어드레스 (c2) 가 다운링크측 포트에 접속되어 있는 것을 런닝함과 동시에, 소스 태그어드레스 (g2) 를 부가한 런닝 프레임을 트리 (T2) 를 따라 업링크측으로 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 ARP REPLY 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키 로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측으로 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향해 전송한다. 이 때, 상기 프레임에 대해 일체 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 게다가 MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G4) 는 업링크측으로부터 노드 (G2) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c2 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T2) 를 따라 업링크측으로 브로드캐스트 송신한다. 그러나, 노드 (G4) 에 있어서 트리 (T2) 는 도중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G4) 로부터 이전의 노드로는 전송되지 않는다.
노드 (G3) 는 업링크측으로부터 노드 (G2) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c2 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T2) 를 따라 업링크측으로 브로드캐스트 송신한다. 이 결과, 런닝 프레임은 노드 (G1) 에 전송된다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 ARP REPLY 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g1) 은 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후에, 수신선 MAC (c1) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 이전의 러닝 동작에 의해, 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
노드 (G1) 는 업링크측으로부터 노드 (G3) 가 송신한 런닝 프레임을 수신하면, MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있다는 것을 런닝한다. 이에 따라, 이후 c2 앞의 프레임을 다운링크측으로부터 수신했을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하게 된다. 또한, 동시에, 수신한 런닝 프레임을 트리 (T1) 를 따라 업링크측으로 브로드캐스트 송신한다. 그러나, 노드 (G1) 에 있어서 트리 (T2) 는 도중에 끊어져 있기 때문에, 결과적으로 런닝 프레임은 노드 (G1) 로부터 이전의 노드로는 전송되지 않는다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 수신하고, ARP 모듈에 인도하여, 수신선 IP 어드 레스에 대한 MAC 어드레스를 ARP 테이블에 기록한다.
이상에 의해, 시퀀스 (N222) 에 있어서의 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대한 PING REQUEST 송신에 앞서 행해지는, 클라이언트 (C1) 에 의한 ARP REQUEST 의 송신과, 이에 대한 클라이언트 (C2) 에 의한 ARP REPLY 의 응답을 나타낸 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N221) 에 있어서의 일련의 동작에 의해, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 런닝되고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 런닝되고, 게다가 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 런닝되며, 노드 (G1∼G3) 의 각 노드에 있어서는, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 런닝되었다. 또한, C1, C2 의 각 노드에 있어서, 클라이언트 (C1) 및 클라이언트 (C2) 에 대한 ARP (IP 어드레스와 MAC 어드레스의 대응 관계) 가 기억되었다.
시퀀스 (N222) 는 상기 시퀀스 (N221) 의 통신으로부터 장시간이 경과해 있지 않은, 즉 에이징 처리가 행해지기 전의 상태에 있어서, 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대해 ICMP ECHO REQUEST (PING REQUEST) 프레임을 송신하여, 클라이언트 (C2) 가 ICMP ECHO REPLY (PING REPLY) 프레임을 응답하는 경우의 예를 나타내고 있다.
시퀀스 (N222) 에서는 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 이미 런닝되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 이미 런닝되어 있고, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 이미 런닝되어 있으며, 또한, 노드 (G1∼G3) 의 각 노드에 있어서, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 이미 런닝되어 있는 것으로 한다.
우선, 클라이언트 (C1) 이 클라이언트 (C2) 에 대해, 수신선 MAC 가 c2, 송신선 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해, 수신선 MAC 어드레스 (c2) 의 프레임에 대해 확장 포워딩 태그 (g2) 를 부가하여 트리 (T2) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여 노드 (G3) 에 전송한다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g2) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g2) 에 대한 출력 포트는 항상 스패닝 트리 (T2) 의 루트 포트측으로 설정되어 있기 때문에, 노드 (G3) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G2) 를 향해 전송한다. 이 때, 상기 프레임에 대해 일체 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 게다가 MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G2) 는 노드 (G3) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g2) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후에, 수신선 MAC (c2) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 이전의 러닝 동작에 의해, 수신선 MAC 어드레스 (c2) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임을 클라이언트 (C2) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C2) 는 노드 (G2) 에 의해 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는, 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는, 수신선 MAC 어드레스 (c1), 송신선 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하여 노드 (G2) 앞으로 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여 부가하는 태그 및 출력 포트를 검색하면, 수신선 MAC 어드레스 (c1) 의 프레임에 대해, 확장 포워딩 태그 (g1) 를 부가하여 트리 (T1) 의 루트 포트측에 전송하면 되는 것을 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여 노드 (G4) 에 전송한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그러면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패팅 트리 (T1) 의 루트 포트측으로 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을 업링크 포트로부터 노드 (G1) 를 향해 전송한다. 이 때, 상기 프레임에 대해 일체 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한 MAC 어드레스를 재기록하거나 하는 일은 없다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타난 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 후에, 수신선 MAC (c1) 를 키로 하여 다운링크측 출력 포트를 검색한다. 그러면, 이전의 러닝 동작에 의해, 수신선 MAC 어드레스 (c1) 를 갖는 노드가 다운링크측의 어느 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는, 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되어, PING 코맨드의 결과가 표시된다.
이상에 의해, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 장시간이 경과해 있지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가, 노드 (G1∼G4) 의 각 노드에 있어서 이미 런닝되어 있는 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
또한, 본 동작예에 있어서의 노드 (G4) 는 그 장치 구성을 간략화한 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대해, (1) 메모리 복제 정보 (3013) 를 갖지 않는 점, (2) MAC 포워딩 테이블 메모리 (2043) 를 갖지 않는 점, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 갖지 않는 점, 및 (4) 런닝 프레임을 송수신하지 않는 4 가지 점에서 다르다.
다음으로, 본 실시예의 효과에 대하여 설명한다.
종래, 이더넷 (R) 에 의한 네트워크에, 방향에 따라 플로우를 경유하는 노드가 다른 비대칭 플로우를 흘려보낸 경우, 런닝 프로세스가 기능하지 않고, 프레임은 수신선에 도착하지만, 불필요한 수신선에까지 전달되어 버리기 때문에, 네트워크의 혼잡을 야기시켜, 대역 이용 효율이 떨어진다는 문제가 있었다.
본 실시예에서는 브로드캐스트 MAC 어드레스가 있는 프레임, 멀티캐스트 MAC 어드레스가 있는 프레임, 및 송신선 불명의 유니캐스트 MAC 어드레스가 있는 프레 임에 대해, 송신선을 나타내는 소스 태그를 삽입하고, 상기 프레임의 송신선 노드를 루트 노드로 하는 트리에 있어서, 상기 송신선이 수신선이 되는 프레임이 흐르는 경로와는 반대 경로에 상기 소스 태그가 있는 프레임을 송신함으로써, 비대칭 플로우를 흘려보낸 경우라 하더라도 런닝 프로세스를 기능하게 할 수 있고, 네트워크의 혼잡을 해소하여, 대역 이용 효율을 높이는 것이 가능하다.
또한, 종래, 수신선을 나타내는 태그를 사용한 프레임 전송을 행하는 경우에는, 미리 각 노드에 수신선 MAC 어드레스에 따라 부가해야 할 확장 태그 (포워딩 태그) 를 설정해 두지 않으면 안 되었다.
본 실시예에서는, 상기 소스 태그가 있는 프레임에 송신선 태그 정보를 포함시킴으로써, 각 노드에 수신선 MAC 어드레스에 따라 부가해야 할 확장 태그를 설정할 수 있어, 설정 작업을 자동화시키는 것이 가능하다.
(제 3 실시예)
이하, 본 발명의 제 3 실시예에 대하여 도면을 참조하여 상세하게 설명한다.
본 발명의 제 3 실시예는 제 2 실시예에서 런닝 프레임의 송신을 설정에 의해 정지시킨 상태에 있어서, 클라이언트의 MAC 어드레스와 상기 클라이언트가 속하는 노드 어드레스의 관련성이 이미 학습되어 있는 경우에, 테이블 서치기 (203) 가 히트 비트를 사용하여 수신선 태그를 삽입할지 소스 태그를 삽입할지를 결정하는 점이 다르다.
도 47 은 제 1 실시예에 있어서의 도 10 에 기재된 테이블 서치기 (203) 의 구성을 상세하게 나타낸 블록도이다.
제 2 실시예에 있어서의 도 42 에 기재된 테이블 관리기 (2031A) 는, 유니캐스트 프레임이 도착하여 MAC 포워딩 테이블을 서치하고, 수신선 클라이언트의 MAC 어드레스와 상기 클라이언트가 속하는 노드 어드레스의 관련성이 이미 학습되어 있으며, 정보 비교기 (2032) 로부터 히트 정보를 수신한 경우, 엔트리 히트 정보 (20312) 를 출력하고, 테이블 메모리 판독 입력 제어 회로 (2046) 를 통해, 도 19 의 에이징 관리 테이블 (2044) 에 대해, 히트한 참조 어드레스를 메모리 어드레스로 하여, MAC-Tag 엔트리 관리 정보의 엔트리에 엔트리 히트 정보 (20312) 를 저장하였다. 그리고, MAC 포워드 테이블의 서치에 의해 얻어진 수신선 태그를 부가하도록, 프레임 재기록기 (205) 에 대해 정보 비교기 (2032B) 를 통해 태그 정보 (20323) 및 태그 제어 정보 (20322) 를 생성하고, 입력 프레임에 수신선 노드를 나타내는 포워딩 태그를 삽입하였다. 이 동작에 의해 완성하는 프레임은 도 5 에 나타내는 포워딩 태그가 있는 이더넷 (R) 프레임 (62) 이 되었다.
이에 대해, 본 실시예에 있어서의 도 47 에 기재된 테이블 관리기 (2031B) 는, 유니캐스트 프레임이 도착하여 MAC 포워딩 테이블을 서치하고, 수신선 클라이언트의 MAC 어드레스와 상기 클라이언트가 속하는 노드 어드레스의 관련성이 이미 학습되어 있으며, 정보 비교기 (2032) 로부터 히트 정보를 수신한 경우, 테이블 메모리 판독 입력 제어 회로 (2046) 를 통해, 도 19 의 에이징 관리 테이블 (2044) 을 참조하여 히트 비트가 히트 상태인지 노히트 상태인지를 확인한다.
여기에서 히트 상태인 경우에는, 이후의 동작은 제 2 실시예에 있어서의 테이블 관리기 (2031A) 와 동일해져, MAC 포워드 테이블의 서치에 의해 얻어진 수신 선 태그를 부가하도록, 프레임 재기록기 (205) 에 대해 정보 비교기 (2032B) 를 통해 태그 정보 (20323) 및 태그 제어 정보 (20322) 를 생성하고, 입력 프레임에 수신선 노드를 나타내는 포워딩 태그를 삽입한다. 이 동작에 의해 완성되는 프레임은 도 5 에 나타내는 포워딩 태그가 있는 이더넷 (R) 프레임 (62) 이 된다.
한편, 노히트 상태인 경우에는, 이후의 동작은 제 2 실시예에 있어서의 테이블 관리기 (2031A) 와 달리, MAC 포워드 테이블의 서치에 의해 얻어진 수신선 태그를 무시하고, 해당 노드 ID 가 저장된 소스 태그를 프레임에 추가 삽입하도록, 프레임 재기록기 (205) 에 대해 정보 비교기 (2032B) 를 통해 태그 정보 (20323) 및 태그 제어 정보 (20322) 에 의해 지시를 하여, 입력 프레임에 해당 노드 ID 를 나타내는 소스 태그를 삽입한다. 이 동작에 의해 완성하는 프레임은 도 41 에 나타내는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 이 된다. 또한, 엔트리 히트 정보 (20312) 를 출력하고, 테이블 메모리 판독 입력 제어 회로 (2046) 를 통해, 도 19 의 에이징 관리 테이블 (2044) 에 대해, 히트한 참조 어드레스를 메모리 어드레스로 하여, MAC-Tag 엔트리 관리 정보의 엔트리로 엔트리 히트 정보 (20312) 를 저장시킨다.
이상에 기재된 동작에 의해, 프레임 서치기 (203) 에 있어서, 수신선 클라이언트의 MAC 어드레스와 상기 클라이언트가 속하는 노드 어드레스의 관련성이 새로 학습된 이후 처음으로 이 엔트리가 검색된 경우, 입력 프레임에 대해 포워딩 태그가 아니라 소스 태그가 추가 삽입되어, 해당 노드를 루트 노드로 하는 트리의 경로를 따라 브로드캐스트 전송된다. 이에 따라, 각 노드는 상기 프레임의 송신선 인 클라이언트의 MAC 어드레스와, 상기 클라이언트가 접속되어 있는 노드의 관련성을 학습할 수 있다.
다음으로 도 48 을 참조하여, 본 실시예에 있어서의 동작예에 관해서 서술한다.
이후의 시퀀스도에 있어서, 확장 태그가 부가되어 있지 않은 주신호 프레임의 시퀀스를 가는 실선으로 나타낸다. 또한, 확장 태그 (포워딩 태그) 가 있는 주신호 프레임의 시퀀스를 굵은 실선으로 나타내고, 확장 태그 (소스 태그) 가 있는 주신호 프레임의 시퀀스를 굵은 파선으로 나타낸다. 또한, 확장 태그 (소스 태그) 가 있는 런닝 (학습) 의 시퀀스를 가는 파선으로 나타낸다.
도 48 은 제 1 실시예에 있어서의 도 1 에 나타내는 네트워크에 있어서, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여 PING REQUEST 를 송신하고, 클라이언트 (C2) 가 클라이언트 (C1) 에 대하여 PING REPLY 를 응답할 때의, 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타내는 시퀀스도이다. 런닝 프레임은 송신하지 않도록 설정되어 있는 것으로 한다.
시퀀스 (N311) 는 시퀀스 (N312) 에 있어서의 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대한 PING REQUEST 송신에 앞서 행해지는, 클라이언트 (C1) 에 의한 ARP REQUEST 송신과, 이것에 대한 클라이언트 (C2) 에 의한 ARP REPLY 의 응답을 나타낸 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스이다.
시퀀스 (N311) 의 개시 시에 있어서는, 네트워크 동작 개시 직후 또는 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 충분히 긴 시간이 경과되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가, 노드 (G1∼G4) 의 각 노드에 있어서 런닝되어 있지 않고, 또한, C1, C2, C3 의 각 노드에 있어서, ARP 캐시는 클리어되어 있고, PING 에 앞서 ARP 해결이 필요한 상태인 것으로 한다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여, 수신선 MAC 가 브로드캐스트 (ALL F), 송신원 MAC 가 c1 의 ARP REQUEST 프레임을 송신한다. 이 프레임을, 이후의 설명의 ARP 리퀘스트 프레임이라고 한다.
노드 (G1) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 가 브로드캐스트 어드레스이기 때문에, 노드 (G1) 는 상기 ARP REQUEST 프레임을, 소스 태그 (g1) 를 부가한 뒤에, 제 1 실시예에 있어서의 도 34 에 기재된 자체가 루트 노드가 되는 트리 (T1) 를 따라 브로드캐스트한다. 이 결과, ARP REQUEST 프레임은 도 41 에 나타내는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 포맷으로 노드 (G3) 및 노드 (G4) 의 양방에 전송된다.
노드 (G1) 는 다운링크측으로부터 미런닝의 송신원 MAC (c1) 이 부가된 프레임이 도착하였기 때문에, MAC 어드레스 (c1) 가 다운링크측 포트에 접속되어 있는 것을 런닝한다. 이 때, 설정에 의해 런닝 프레임의 송신은 정지되어 있기 때문에, 런닝 프레임은 송신하지 않는다.
노드 (G3) 는 노드 (G1) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을, 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 그 결과, ARP REQUEST 프레임은 다운링크 포트로부터, 소스 태그를 삭제하여 클라이언트 (C3) 에 전송된다.
이 때 노드 (G3) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있음을 런닝한다. 이것에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신하였을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하게 된다.
클라이언트 (C3) 는 노드 (G3) 에 의해서 전송된 ARP REQUEST 프레임을 수신하지만, 요구되어 있는 IP 어드레스가 자신의 IP 어드레스와 일치하지 않기 때문에, 이 프레임을 파기한다.
노드 (G4) 는 노드 (G1) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을, 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 상기 프레임은 트리 (T1) 를 따라 업링크 포트로부터, 태그 조작없이 노드 (G2) 에 전송된다.
이 때 노드 (G4) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있음을 런닝한다. 이것에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신하였을 때에는, 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하게 된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 소스 태그 (g1) 가 있는 ARP REQUEST 프레임을, 업링크 포트로부터 수신한다. 그리고, 상기 ARP REQUEST 프레임을 트리 (T1) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터, 소스 태그를 삭제하여 클라이언트 (C2) 에 전송된다.
이 때 노드 (G2) 는 MAC 어드레스 (c1) 를 가진 클라이언트 (C1) 가, 확장 태그 어드레스 (g1) 를 가진 노드 (G1) 의 다운링크측에 접속되어 있음을 런닝한다. 이것에 의해, 이후 c1 앞의 프레임을 다운링크측으로부터 수신하였을 때에는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하게 된다.
클라이언트 (C2) 는 노드 (G2) 에 의해서 전송된 ARP REQUEST 프레임을 수신하여, 요구되고 있는 IP 어드레스가 자신의 IP 어드레스와 일치하는 것을 확인한다. 그리고, 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c2) 의 ARP REPLY 프레임을 생성하여, 노드 (G2) 앞에 송신한다. 이 프레임을, 이후의 설명의 ARP REPLY 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여, 부가하는 태그 및 출력 포트를 검색하면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 의 프레임에 대하여, 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하면 됨을 알 수 있다. 그러나, 히트 비트를 확인한 결과, 노히트 상태이기 때문에, 상기 ARP REPLY 프레임에 대하여 확장 포워딩 태그 (g1) 를 부가하지 않고, 소스 태그 (g2) 를 부가한 뒤에, 제 1 실시예에 있어서의 도 35 에 기재된 자체가 루트 노드가 되는 트리 (T2) 를 따라 브로드캐스트한다. 이 결과, 주신호 프레임은 도 41 에 나타내는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 포맷으로 노드 (G3) 및 노드 (G4) 의 양방에 전송된다. 이와 동시에, 수신선 (c1) 에 대한 히트 비트를 히트 상태로 설정한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 소스 태그 (g2) 가 있는 ARP REPLY 프레임을, 업링크 포트로부터 수신한다. 그리고, 상기 ARP REPLY 프레임을 트리 (T2) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 그러나 노드 (G4) 에 있어서 트리 (T2) 는 도중에 끊겨 있기 때문에, 결과적으로 상기 ARP REPLY 프레임은 노드 (G4) 로부터 이전의 노드로는 전송되지 않는다.
이 때 노드 (G4) 는 MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있음을 런닝한다. 이것에 의해, 이후 c2 앞의 프레임을 다운링크측으로부터 수신하였을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하게 된다.
노드 (G3) 는 노드 (G2) 로부터 송신된 소스 태그 (g2) 가 있는 ARP REPLY 프레임을, 업링크 포트로부터 수신한다. 그리고, 상기 ARP REPLY 프레임을 트리 (T2) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, ARP REPLY 프레임은 업링크 포트로부터 태그의 조작없이 노드 (G1) 에 전송됨과 함께, 다운링크 포트로부터, 소스 태그를 삭제하여 클라이언트 (C3) 에도 전송된다.
이 때 노드 (G3) 는 MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있음을 런닝한다. 이것에 의해, 이후 c2 앞의 프레임을 다운링크측으로부터 수신하였을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하게 된다.
클라이언트 (C3) 는 노드 (G3) 에 의해서 전송된 ARP REPLY 프레임을 수신하고자 하는데, 수신선 MAC 어드레스 (g1) 가 해당 노드 MAC 어드레스 (g3) 와 일치 하지 않기 때문에, 이 프레임을 폐기한다.
노드 (G1) 는 노드 (G3) 로부터 송신된 소스 태그 (g2) 가 있는 ARP REPLY 프레임을, 업링크 포트로부터 수신한다. 그리고, 상기 ARP REPLY 프레임을 트리 (T2) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터, 소스 태그를 삭제하여 클라이언트 (C1) 에 전송된다.
이 때 노드 (G1) 는 MAC 어드레스 (c2) 를 가진 클라이언트 (C2) 가, 확장 태그 어드레스 (g2) 를 가진 노드 (G2) 의 다운링크측에 접속되어 있음을 런닝한다. 이것에 의해, 이후 c2 앞의 프레임을 다운링크측으로부터 수신하였을 때에는, 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하게 된다.
클라이언트 (C1) 는 노드 (G1) 에 의해서 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 수신하여, ARP 모듈에 인도하여, 수신선 IP 어드레스에 대한 MAC 어드레스를 ARP 테이블에 기록한다.
이상에 의해, 시퀀스 (N312) 에 있어서의 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대한 PING REQUEST 송신에 앞서 행해지는, 클라이언트 (C1) 에 의한 ARP REQUEST 를 송신과, 이것에 대한 클라이언트 (C2) 에 의한 ARP REPLY 의 응답 을 나타낸 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N312) 는 시퀀스 (N311) 에 의한 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ARP REQUEST 및 ARP REPLY 의 교환이 완료되고 나서 장시간 경과되어 있지 않고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 이미 런닝되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 런닝되어 있는 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ICMP ECHO REQUEST (PING REQUEST), ICMP ECHO REPLY (PING REPLY) 의 통신 시퀀스이다.
또한, 노드 (G1) 에 있어서 MAC 어드레스 (c2) 에 대한 히트 비트는 노히트로 설정되어 있고, 노드 (G2) 에 있어서 MAC 어드레스 (c1) 에 대한 히트 비트는 히트로 설정되어 있다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여, 수신선 MAC 가 c2, 송신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여, 부가하는 태그 및 출력 포트를 검색하면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c2) 의 프레임에 대하여, 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하면 됨을 알 수 있다. 그러나, 히트 비트를 확인한 결과, 노히트 상태이었기 때문에, 상기 주신호 프레임에 대하여 확장 포워딩 태그 (g2) 를 부가하지 않고, 소스 태그 (g1) 를 부가한 뒤에, 제 1 실시예에 있어서의 도 34 에 기재된 자체가 루트 노드가 되는 트리 (T1) 를 따라 브로드캐스트한다. 이 결과, 주신호 프레임은 도 41 에 나타내는 소스 태그가 있는 이더넷 (R) 프레임 (62A) 의 포맷으로 노드 (G3) 및 노드 (G4) 의 양방에 전송된다. 이와 동시에, 수신선 (c2) 에 대한 히트 비트를 히트 상태로 설정한다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 MAC (c2) 앞의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 MAC (c2) 를 키로 하여 출력 포트를 검색하는데, MAC 어드레스 (c2) 에 관한 런닝이 완료되어 있지 않기 때문에, 검색 히트되지 않는다. 이 때문에 노드 (G3) 는 상기 주신호 프레임을 트리 (T1) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 다운링크 포트로부터, 소스 태그 (g1) 를 삭제하여 클라이언트 (C3) 에 전송된다.
클라이언트 (C3) 는 노드 (G3) 에 의해서 전송된 수신선 MAC (c2) 의 주신호 프레임을 수신하는데, 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하지 않기 때문에, 이 프레임을 파기한다.
노드 (G4) 는 노드 (G1) 로부터 송신된 수신선 MAC (c2) 앞의 소스 태그 (g1) 가 있는 주신호 프레임을, 업링크 포트로부터 수신한다. 노드 (G4) 는 상기 프레임에 소스 태그가 부가되어 있기 때문에, 수신선 MAC (c2) 를 키로 한 검색을 행하지 않고, 상기 주신호 프레임을 트리 (T1) 및, 다운링크측 포트에 브로드캐스트한다. 이 때, 다운링크측에 송신하는 프레임에 관해서는 상기 프레임에 부가되어 있던 소스 태그를 삭제한다. 업링크측에 송신하는 프레임에 관해서는, 태그를 부가하거나 삭제하는 조작은 행하지 않는다. 이 결과, 주신호 프레임은 태그의 추가ㆍ삭제를 행하지 않고, 트리 (T1) 를 따라 업링크 포트로부터 노드 (G2) 에 전송된다.
노드 (G2) 는 노드 (G4) 로부터 송신된 수신선 MAC (c2) 앞의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 MAC (c2) 를 키로 하여, 다운링크측의 출력 포트를 검색한다. 그렇게 하면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c2) 를 갖는 노드가 다운링크측의 어떤 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임을 소스 태그 (g1) 를 분리한 뒤에, 클라이언트 (C2) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C2) 는 노드 (G2) 에 의해서 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하여, 노드 (G2) 앞으로 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여, 부가하는 태그 및 출력 포트를 검색하면, 시퀀스 (N211) 에 있어서의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 의 프레임에 대하여, 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하면 됨을 알 수 있다. 또한, 히트 비트를 확인하면, 이미 히트한 상태이기 때문에, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 제 1 실시예에 있어서의 도 5 에 나타내는 포맷으로, 상기 주신호 프레임을 노드 (G4) 에 전송한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그렇게 하면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을, 업링크 포트로부터 노드 (G1) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하는 일은 없다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타내여진 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 뒤에, 수신선 MAC (c1) 를 키로 하여, 다운링크측의 출력 포트를 검색한다. 그렇게 하면, 시퀀스 (N211) 에 있어서의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 를 갖는 노드가, 다운링크측의 어떤 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해서 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되어, PING 코맨드의 결과가 표시된다.
이상에 의해, 시퀀스 (N311) 에 의한 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ARP REQUEST 및 ARP REPLY 의 교환이 완료되고 나서 장시간 경과되어 있지 않고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 이미 런닝되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 이미 런닝되어 있고, 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 런닝되어 있는 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 ICMP ECHO REQUEST (PING REQUEST), ICMP ECHO REPLY (PING REPLY) 의 통신 시퀀스를 설명할 수 있었다.
시퀀스 (N313) 는 상기 시퀀스 (N311∼3122) 의 통신으로부터 장시간 경과되어 있지 않은, 요컨대 에이징 처리가 행하여지기 전의 상태에 있어서, 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대하여 ICMP ECHO REQUEST (PING REQUEST) 프레임을 송신하여, 클라이언트 (C2) 가 ICMP ECHO REPLY (PING REPLY) 프레임을 응답하는 경우의 예를 도시하고 있다.
시퀀스 (N313) 에서는 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1) 가 노드 (G2∼G4) 의 각 노드에 있어서 이미 런닝되어 있고, 클라이언트 (C1) 의 MAC 어드레스 (c1) 에 대한 출력 포트가 노드 (G1) 에 있어서 이미 런닝되어 있고, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 출력 포트가 노드 (G4) 에 있어서 이미 런닝되어 있고, 또한, 노드 (G1∼G3) 의 각 노드에 있어서, 클라이언트 (C2) 의 MAC 어드레스 (c2) 에 대한 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가 이미 런닝되어 있는 것으로 한다.
또한, 노드 (G1) 에 있어서 MAC 어드레스 (c2) 에 대한 히트 비트는 히트로 설정되어 있고, 노드 (G2) 에 있어서 MAC 어드레스 (c1) 에 대한 히트 비트도 히트로 설정되어 있다.
우선, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여, 수신선 MAC 가 c2, 송신원 MAC 가 c1 인 ICMP ECHO REQUEST 프레임을 송신한다. 이 프레임을, 이 후의 설명의 주신호 프레임이라고 한다.
노드 (G1) 는 상기 주신호 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여, 부가하는 태그 및 출력 포트를 검색하면, 런닝에 의해, 수신선 MAC 어드레스 (c2) 의 프레임에 대하여, 확장 포워딩 태그 (g2) 를 부가하여, 트리 (T2) 의 루트 포트측에 전송하면 됨을 알 수 있다. 또한, 히트 비트를 확인하면, 이미 히트한 상태이기 때문에, 노드 (G1) 는 상기 프레임에 확장 포워딩 태그 (g2) 를 부가하여, 제 1 실시예에 있어서의 도 5 에 나타내는 포맷으로, 상기 주신호 프레임을 노드 (G3) 에 전송한다.
노드 (G3) 는 노드 (G1) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g2) 를 키로 하여 출력 포트를 검색한다. 그렇게 하면, 확장 포워딩 태그 (g2) 에 대한 출력 포트는 항상 스패닝 트리 (T2) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G3) 는 상기 수신 프레임을, 업링크 포트로부터 노드 (G2) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하는 일은 없다.
노드 (G2) 는 노드 (G3) 로부터 송신된 수신선 확장 태그 (g2) 의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타내여진 어드레스 (g2) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 뒤에, 수신선 MAC (c2) 를 키로 하여, 다운링크측의 출력 포트를 검색한다. 그렇게 하면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c2) 를 갖는 노드가, 다운링크측 의 어떤 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G2) 는 상기 프레임을 클라이언트 (C2) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C2) 는 노드 (G2) 에 의해서 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하여, 노드 (G2) 앞으로 송신한다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 수신선 MAC 를 키로 하여, 부가하는 태그 및 출력 포트를 검색하면, 수신선 MAC 어드레스 (c1) 의 프레임에 대하여, 확장 포워딩 태그 (g1) 를 부가하여, 트리 (T1) 의 루트 포트측에 전송하면 됨을 알 수 있다. 또한, 히트 비트를 확인하면, 이미 히트한 상태이기 때문에, 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하여, 제 1 실시예에 있어서의 도 5 에 나타내는 포맷으로, 상기 주신호 프레임을 노드 (G4) 에 전송한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그 (g1) 를 키로 하여 출력 포트를 검색한다. 그렇게 하면, 확장 포워딩 태그 (g1) 에 대한 출력 포트는 항상 스패닝 트리 (T1) 의 루트 포트측에 설정되어 있기 때문에, 노드 (G4) 는 상기 수신 프레임을, 업링크 포트로부터 노드 (G1) 를 향하여 전송한다. 이 때, 상기 프레임에 대하여 일체의 변경을 가하지 않는다. 따라서, 태그를 부가하거나 삭제하거나, 또한, MAC 어드레스를 재기록하는 일은 없다.
노드 (G1) 는 노드 (G4) 로부터 송신된 수신선 확장 태그 (g1) 의 주신호 프레임을, 업링크 포트로부터 수신한다. 그리고, 수신선 확장 태그에 나타내여진 어드레스 (g1) 는 자신의 어드레스이기 때문에, 이 확장 태그를 분리한 뒤에, 수신선 MAC (c1) 를 키로 하여, 다운링크측의 출력 포트를 검색한다. 그렇게 하면, 이전의 런닝 동작에 의해, 수신선 MAC 어드레스 (c1) 를 갖는 노드가, 다운링크측의 어떤 포트에 접속되어 있는지 알 수 있다. 따라서, 노드 (G1) 는 상기 프레임을 클라이언트 (C1) 가 접속되어 있는 다운링크 포트에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해서 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되어, PING 코맨드의 결과가 표시된다.
이상에 의해, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 전회의 통신이 종료되고 나서 장시간 경과되지 않은 경우로서, 클라이언트 (C1) 의 MAC 어드레스 (c1) 및 클라이언트 (C1) 가 속하는 노드의 어드레스 (g1), 또한, 클라이언트 (C2) 의 MAC 어드레스 (c2) 및 클라이언트 (C2) 가 속하는 노드의 어드레스 (g2) 가, 노드 (G1∼G4) 의 각 노드에 있어서, 이미 런닝되어 있는 경우에 있어서의, 클라이언트 (C1) 와 클라이언트 (C2) 사이의 통신 시퀀스를 설명할 수 있었다.
또한, 본 동작예에 있어서의 노드 (G4) 는 그 장치 구성을 간략화한 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대하여, (1) 메모리 복제 정보 (3013) 를 갖지 않은 것, (2) MAC 포워딩 테이블 메모리 (2043) 를 갖지 않은 것, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 갖지 않은 것, 및, (4) 런닝 프레임을 송수신하지 않는다는 점의 4 가지가 다르다.
다음으로, 본 실시예의 효과에 관해서 설명한다.
종래, 이더넷 (R) 에 의한 네트워크에, 방향를 따라 플로우가 경유하는 노드가 다른 비대칭 플로우를 흘려보낸 경우, 런닝 (런닝) 프로세스가 기능하지 않고, 프레임은 수신선에 닿지만, 불필요한 수신선에까지 전달되기 때문에, 네트워크의 혼잡을 야기하여, 대역 이용 효율이 떨어진다는 문제가 있었다.
본 실시예에서는 브로드캐스트 MAC 어드레스가 있는 프레임, 멀티 캐스트 MAC 어드레스가 있는 프레임, 및, 송신선 불명의 유니캐스트 MAC 어드레스가 있는 프레임 이외에, 태그 런닝 완료 후에 처음으로 흐르는 유니캐스트 프레임에 대하여, 송신원를 나타내는 소스 태그를 삽입하고, 상기 프레임의 송신원 노드를 루트 노드로 하는 트리에 있어서, 상기 송신원이 수신선이 되는 프레임이 흐르는 경로와는 반대의 경로에 상기 소스 태그가 있는 프레임을 송신함으로써, 비대칭 플로우를 흘려보낸 경우라도 런닝 프로세스를 기능시킬 수 있어, 네트워크의 혼잡을 해소하여, 대역 이용 효율을 높이는 것이 가능하다.
또한, 종래, 수신선을 나타내는 태그를 사용한 프레임 전송을 행하는 경우에는 미리 각 노드에 수신선 MAC 어드레스를 따라 부가해야 할 확장 태그 (포워딩 태그) 를 설정해 두어야만 했다.
본 실시예에서는 상기 소스 태그가 있는 프레임에 송신원 태그 정보를 포함시킴으로써, 각 노드에 수신선 MAC 어드레스를 따라 부가해야 할 확장 태그를 설정할 수 있어, 설정 작업을 자동화하는 것이 가능하다.
(제 4 실시예)
이하, 본 발명의 제 4 실시예에 관해서, 도면을 참조하여 상세히 설명한다.
본 발명의 제 4 실시예는 제 1∼제 3 실시예에서 나타낸 구성에 대하여, 입력 포트와 입력 VLAN (VMAN) 태그로부터 런닝없이 수신선 태그를 결정하기 위한 입력 포트 테이블 메모리를 추가하고 있는 점이 다르다.
도 49 는 제 4 실시예에 있어서의 테이블 서치기 (203C) 의 구성을, 상세히 나타낸 블록도이다.
제 4 실시예에 있어서의 테이블 서치기 (203C) 는 제 1 실시예에 있어서의 도 10 에 기재된 테이블 서치기 (203) 와 비교하여, 테이블 관리기 (2031) 가 테이블 관리기 (2031C) 로 변경되고, 정보 비교기 (2032) 가 정보 비교기 (2032C) 로 변경되어 있는 점에서 다르다.
테이블 관리기 (2031C) 는 테이블 서치키 정보 (20131) 로부터, 태그 포워딩 테이블 메모리 (2041), MAC 포워딩 테이블 메모리 (2043), 브로드캐스트 포워딩 테 이블 메모리 (2042), 입력 포트 테이블 메모리 (2049) 중 어느 하나로 서치 지시를 행한다.
테이블 관리기 (2031C) 에 입력하는 테이블 서치키 정보는 복수 지정하는 것도 가능하다. 복수 지정인 경우는 우선 입력 포트 테이블을 검색하고, 히트한 경우는 태그 포워딩 테이블을 검색한다. 혹시 입력 포트 테이블이 미스히트이었던 경우는 MAC 포워딩 테이블을 검색하고, 히트한 경우는 MAC 포워딩 테이블에서 지정된 포트에 프레임을 송신한다. 혹시 미스히트가 된 경우는 브로드캐스트 포워딩 테이블을 검색하여, 프레임 출력선 포트를 결정한다. 각 테이블에의 서치 지시는 테이블 판독 입력 어드레스 (20311) 로서 포워딩 테이블 (204) 에 출력한다.
제 1 실시예에 있어서의 도 14 에 기재된 테이블 관리기 (2031), 및, 제 2 실시예에 있어서의 도 42 에 기재된 테이블 관리기 (2031A), 및, 제 3 실시예에 있어서의 도 47 에 기재된 테이블 관리기 (2031B) 는 프레임이 도착하면, 태그 포워딩 테이블>MAC 포워딩 테이블>브로드캐스트 포워딩 테이블의 우선 순위로 각 테이블에의 서치를 행하고 있었다.
이에 대하여, 본 실시예에 있어서의 도 49 에 기재된 테이블 관리기 (2031C) 는 프레임이 도착하면, 입력 포트 테이블>태그 포워딩 테이블> MAC 포워딩 테이블>브로드캐스트 포워딩 테이블의 우선 순위로 각 테이블에의 서치를 행한다.
테이블 관리기 (2031C) 는 각 테이블의 서치 결과에 관해서, 정보 비교기 (2032) 로부터, 검색 헤더 정보와 테이블 엔트리 정보가 일치했을 때에는 히트 정 보, 다른 때에는 미스히트 정보를 수취하여, 히트할 때까지, 동일한 테이블 상의 다른 어드레스에의 서치 또는, 다음 우선 순위의 테이블에의 서치 지시를, 포워딩 테이블 (204) 에 대하여 행한다. 또한, MAC 포워딩 테이블 참조 시에 히트했을 때에는, 엔트리 히트 정보 (20312) 를 출력하고, 테이블 메모리 판독 입력 제어 회로 (2046) 를 통하여, 도 19 의 에이징 관리 테이블 (2044) 에 대하여, 히트한 참조 어드레스를 메모리 어드레스로 하여, 엔트리 종별이 MAC→Tag 일 때에는, MAC-Tag 엔트리 관리 정보, MAC→Port 일 때에는, MAC-Port 엔트리 관리 정보의 엔트리에 엔트리 히트 정보 (20312) 를 저장한다.
테이블 관리기 (2031C) 는 또한, 프레임 헤더 정보 (20141) 로부터, 테이블의 서치 대상이 되는 헤더 정보를 빼내어, 포워딩 테이블 (204) 로부터 얻은 테이블 정보와 비교하기 위해서, 정보 비교기 (2032) 로 출력한다. 출력하는 헤더 정보는 태그 포워딩 테이블 메모리 (2041) 에의 서치를 행할 때에는 VLAN ID 태그 정보 (6202), MAC 포워딩 테이블 메모리 (2043) 에 서치를 행할 때에는 송신선 MAC 어드레스 (601) 와 VLAN 태그 (606), 브로드캐스트 포워딩 테이블 메모리 (2042) 에 서치를 행할 때에는, VLAN ID 태그 정보 (6202) 와 VLAN ID (6064), 입력 포트 테이블 메모리 (2049) 에 서치를 행할 때에는 VLAN ID (6064) 및 입력 포트 정보를 출력한다. 또한, 해당 노드 앞의 포워딩 태그가 있는 이더넷 (R) 프레임의 경우에만, 정보 비교기 (2032) 에, 태그 제어 정보 (20322) 로서, 태그 삭제의 출력을 행하도록 지시를 행한다.
이하, 테이블 관리기 (2031C) 의 동작을 나타낸다.
(1) 테이블 관리기 (2031C) 는 다운링크측으로부터 제 1 실시예에 있어서의 도 2 에 나타내는 이더넷 (R) 프레임 (60) 의 포맷의 프레임이 입력된 경우, 입력 포트 및 입력 VLAN (여기서는 VLAN 값을 0000 을 설정한다) 를 키로 하여 입력 포트 테이블 (2049) 을 검색한다. 여기서, 혹시 검색이 히트하여, 부가해야 할 확장 포워딩 태그의 수신선 어드레스를 취득할 수 있었던 경우에는, 즉시 수신선 어드레스를 부가하고, 태그 포워딩 테이블을 서치하여 수신선 포트를 검색하고, 검색된 포트에 대하여 프레임을 출력한다. 따라서, 입력 포트 테이블 (2049) 에서 히트한 경우는, MAC 포워딩 테이블 (2043), 그리고 브로드캐스트 포워딩 테이블 (2042) 의 각 테이블의 서치는 행하여지지 않는다. 또한, 검색이 히트한 경우는 수신선 MAC 어드레스를 조사하여, 혹시 수신선 MAC 어드레스가 Universal Administrative MAC 어드레스 (01-80-c2-00-00-0x) 이면, 터널링 프레임 식별용 MAC 어드레스 (여기서는 00-00-4c-00-00-1x) 로 변환하도록, 프레임 헤더 정보 (20141) 를 사용하여 프레임 재기록기 (205) 에 명령한다. 여기서 x 는 1∼f 의 임의의 값이다. 혹시 검색이 히트되지 않은 경우는, 제 1∼제 3 실시예에 있어서의 테이블 관리기와 같이, MAC 포워딩 테이블 (2043), 그리고 필요하면 브로드캐스트 포워딩 테이블 (2042) 의 서치를 계속하여 행한다.
(2) 테이블 관리기 (2031C) 는 다운링크측으로부터 제 1 실시예에 있어서의 도 3 에 나타내는 VLAN Tagged 이더넷 (R) 프레임 (61) 의 포맷의 프레임이 입력된 경우, 입력 포트 및 입력 VLAN (또는 VMAN) 태그를 키로 하여 입력 포트 테이블 (2049) 을 검색한다. 여기서, 혹시 검색이 히트하여, 부가해야 할 확장 포워딩 태그의 수신선 어드레스를 취득할 수 있었던 경우는, 즉시 수신선 어드레스를 부가하고, 태그 포워딩 테이블을 서치하여 수신선 포트를 검색하고, 검색된 포트에 대하여 프레임을 출력한다. 따라서, 입력 포트 테이블 (2049) 에서 히트한 경우는, MAC 포워딩 테이블 (2043), 그리고 브로드캐스트 포워딩 테이블 (2042) 의 각 테이블의 서치는 행하여지지 않는다. 또한, 검색이 히트한 경우는 수신선 MAC 어드레스를 조사하여, 혹시 수신선 MAC 어드레스가 Universal Administrative MAC 어드레스 (01-80-c2-00-00-0x) 이면, 터널링 프레임 식별용 MAC 어드레스 (여기서는 00-00-4c-00-00-1x) 로 변환하도록, 프레임 헤더 정보 (20141) 를 사용하여 프레임 재기록기 (205) 에 명령한다. 여기서 x 는 1∼f 의 임의의 값이다. 혹시 검색이 히트되지 않은 경우는, 제 1∼제 3 실시예에 있어서의 테이블 관리기와 같이, MAC 포워딩 테이블 (2043), 그리고 필요하면 브로드캐스트 포워딩 테이블 (2042) 의 서치를 계속하여 행한다.
(3) 테이블 관리기 (2031C) 는 업링크측으로부터 해당 노드 앞 확장 포워딩 태그가 부가되어 있는데, VLAN (또는 VMAN) 태그가 부가되어 있지 않은 프레임이 입력된 경우, 입력된 VLAN (여기서는 0000 을 설정한다) 를 키로 하여 브로드캐스트 테이블 메모리 (2042) 를 검색한다. 그리고, 출력 포트 정보에 기재된 포트 중, 다운링크측의 포트에 대하여, 확장 포워딩 태그를 삭제하고, 제 1 실시예에 있어서의 도 2 에 나타내는 이더넷 (R) 프레임 (60) 의 포맷으로 한 뒤에, 프레임을 전송한다. 이 때 수신선 MAC 어드레스를 조사하여, 혹시 터널링 프레임 식별용 MAC 어드레스 (여기서는 00-00-4c-00-00-1x) 이면, Universal Administrative MAC 어드레스 (01-80-c2-00-00-0x) 로 변환하도록, 프레임 헤더 정보 (20141) 를 사용하여 프레임 재기록기 (205) 에 명령한다. 여기서 x 는 1∼f 의 임의의 값이다.
(4) 테이블 관리기 (2031C) 는 업링크측으로부터 해당 노드 앞 확장 포워딩 태그 이외에, VLAN (또는 VMAN) 태그가 부가된 프레임이 입력된 경우, 입력된 VLAN (또는 VMAN) 태그를 키로 하여 브로드캐스트 테이블 메모리 (2042) 를 검색한다. 그리고, 출력 포트 정보에 기재된 포트 중, 다운링크측의 포트에 대하여, 확장 포워딩 태그를 삭제하고, 제 1 실시예에 있어서의 도 3 에 나타내는 VLAN Tagged 이더넷 (R) 프레임 (61) 의 포맷으로 한 뒤에, 프레임을 전송한다. 이 때 수신선 MAC 어드레스를 조사하여, 혹시 터널링 프레임 식별용 MAC 어드레스 (여기서는 00-00-4c-00-00-1x) 이면, Universal Administrative MAC 어드레스 (01-80-c2-00-00-Ox) 로 변환하도록, 프레임 헤더 정보 (20141) 를 사용하여 프레임 재기록기 (205) 에 명령한다. 여기서 x 는 1∼f 의 임의의 값이다.
정보 비교기 (2032C) 는 테이블 관리기 (2031C) 가 포워딩 테이블 (204) 에 서치를 행한 결과와, 서치 대상이 되는 헤더 정보의 비교를 행하여, 출력 포트의 결정을 행한다. 상기 기술한 바와 같이, 테이블 관리기 (2031C) 로부터는, 각 테이블 서치를 따라, 프레임의 입력 포트 정보 그리고, VLAN IDㆍ태그 정보 (6202), 송신선 MAC 어드레스 (601), VLAN 태그 (606), VLAN ID (6064) 의 헤더 정보를 수취하고, 테이블 관리기 (2031C) 가 포워딩 테이블 (204) 에 테이블 판독 입력 지시를 행한 결과를 테이블 정보 (20451) 로서 수취하고, 각 테이블의 종류에 따라 정보 비교와 엔트리 정보의 출력 그리고, 출력 포트 정보 (20321) 의 출력을 행한다. 또한, 출력 포트 정보 (20321) 의 출력 시에는, 입력 포트 정보와 비교하여, 동일한 포트 정보이었던 때에는, 프레임의 루프를 방지하기 위해서 출력 포트 정보를 출력하지 않고, 프레임은 폐기한다. 하기 (1) 내지 (4) 에 각 테이블 참조 시에 있어서의 동작 내용을 나타낸다.
(1) 태그 포워딩 테이블 메모리 (2041) 에의 참조 시에는, 헤더 정보는, VLAN IDㆍ태그 정보 (6202) 가, 참조하는 메모리 어드레스로 되어 있기 때문에, 정보 비교를 행할 필요는 없다. 도 17 의 태그 포워딩 테이블 메모리 (2041) 의 출력 포트 정보, 장애 시 출력 포트 정보를 출력 포트 (20321) 에 출력한다. 또한, 엔트리가 없는 경우는, 테이블 관리기 (2031) 에 대하여, 엔트리 미스히트의 정보를 출력한다.
(2) MAC 포워딩 테이블 메모리 (2043) 에의 참조 시에는, 검색 헤더 정보와, 도 16 의 MAC 포워딩 테이블 메모리 (2043) 의 테이블 엔트리 상의 MAC 송신선 어드레스, 송신선 1 단째 TAG 정보를 비교하여, 일치한 경우는, 테이블 엔트리에 기재되어 있는 출력 포트 정보, 장애 출력 포트 정보는 출력 포트 정보 (20321) 에 출력, 태그 정보는 태그 정보 (20321), 태그 제어 정보는 태그 제어 정보 (20322) 로서 출력한다. 일치하지 않았을 때에는, 테이블 관리기 (2031) 에 대하여, 엔트리 미스히트의 정보를 출력한다.
(3) 브로드캐스트 포워딩 테이블 메모리 (2042) 에의 참조 시에는, 헤더 정보는, VLAN IDㆍ태그 정보 (6202), 또는 VLAN ID (6064) 가, 참조하는 메모리 어드 레스로 되어 있기 때문에, 정보 비교를 행할 필요는 없다. 도 18 의 브로드캐스트 포워딩 테이블 메모리 (2042) 의 복수 출력 포트 정보는, 복수 출력 포트 정보로서 등록되어 있지 않은 포트 번호가 입력 포트 정보와 일치하고 있지 않은지 확인 후, 일치하고 있는 경우는 프레임은 폐기, 일치하고 있지 않은 경우는, 출력 포트 정보 (20321) 로서 출력한다. 또한, 참조 메모리 어드레스처에 엔트리가 없는 경우는, 테이블 관리기 (2031) 에 대하여, 엔트리 미스히트의 정보를 출력한다.
(4) 입력 포트 테이블 메모리 (2049) 에의 참조 시에는 헤더 정보는 VLAN ID (6064), 및 입력 포트 정보가, 참조하는 메모리 어드레스로 되어 있기 때문에, 정보 비교를 행할 필요는 없다. 도 51 의 입력 포트 테이블 메모리 (2049) 의 포워딩 태그 정보가, 등록되어 있는지의 여부를 확인 후, 등록되어 있지 않은 경우는 프레임은 폐기, 등록되어 있던 경우는, 테이블 관리기 (2031C) 에 대하여 태그 포워딩 테이블 메모리 (2041) 의 검색을 요구하고, 또한, 포워딩 태그 정보를 태그 정보 (20321), 태그 추가 지령을 행하기 위한 태그 제어 정보를 태그 제어 정보 (20322) 로서 출력한다. 또한, 참조 메모리 어드레스처에 엔트리가 없는 경우는, 테이블 관리기 (2031C) 에 대하여, 엔트리 미스히트의 정보를 출력한다.
도 50 은 제 4 실시예에 있어서의 포워딩 테이블 (204C) 의 구성을, 상세히 나타낸 블록도이다.
제 4 실시예에 있어서의 포워딩 테이블 (204C) 은 제 1 실시예에 있어서의 포워딩 테이블 (204) 과 비교하여, 테이블 메모리 판독 입력 제어 회로 (2046) 가 테이블 메모리 판독 입력 제어 회로 (2046C) 로 변경되고, 테이블 메모리 기록 제어 회로 (2048) 가 테이블 메모리 기록 제어 회로 (2048C) 로 변경되고, 또한, 입력 포트 테이블 메모리 (2049) 가 추가되어 있는 점에서 다르다.
포워딩 테이블 (204C) 은 태그 포워딩 테이블 메모리 (2041), 브로드캐스트 테이블 메모리 (2042), MAC 포워드 테이블 메모리 (2043), 에이징 관리 테이블 (2044), 메모리 정보 출력 회로 (2045), 에이징 제어기 (2047) 에 관해서는, 제 1 실시예에 있어서의 포워딩 테이블 (204) 에 포함되는 것과 동일하다.
테이블 메모리 판독 입력 제어 회로 (2046C) 는 판독 입력 대상으로 하는 테이블 어드레스의 판독 입력을 행하여, 그 결과를 출력하는데, 제 1 실시예에 있어서의 테이블 메모리 판독 입력 제어 회로 (2046) 에서 예를 든 (1) 내지 (3) 의 동작 이외에, 이하의 동작을 추가하여 행한다.
(4) 도 51 의 입력 포트 테이블 메모리 (2049) 의 판독 입력 시에는, 테이블 판독 입력 어드레스로서, VLAN ID (6064) 및 입력 포트 정보를 수취하고, 그 정보와 동일한 메모리 어드레스를 참조하여, 거기에 엔트리되어 있는, 출력 포트 정보, 장애 시 출력 포트 정보를 메모리 정보 출력 회로 (2045) 에 출력한다. 또한, 엔트리 무효의 경우는, 엔트리가 없는 것을 엔트리 히트 정보 (20312) 로서 출력한다.
테이블 메모리 기록 제어 회로 (2048C) 는 각 테이블에의 엔트리의 기록 동작을 행한다. 테이블 기록 어드레스 (3011) 로부터, MAC 포워딩 테이블 메모리 (2043), 태그 포워딩 테이블 (2041), 브로드캐스트 테이블 메모리 (2042), 입력 포 트 테이블 메모리 (2049) 중 어느 하나의 메모리 어드레스가 입력되면, 그 메모리 어드레스에 대하여, 테이블 기록 정보 (3012) 를 테이블 엔트리로서 기록한다.
도 51 은 도 50 에 기재된 입력 포트 테이블 메모리 (2049) 의 구성을 상세히 나타낸 블록도이다.
입력 포트 테이블 메모리 (2049) 는 IEEE802.3 이더넷 (R) 프레임, IEEE 803.3 VLAN Tagged 이더넷 (R) 프레임에 부가하는 확장 수신선 포워딩 태그 정보를 저장하기 위해서 사용된다. 메모리 어드레스 범위는 16 포트 입력 관리의 경우 0x0000∼0xFFFF 의 16 비트로, 최대 65536 엔트리가 저장된다.
16 비트의 메모리 어드레스 범위 중, 상위 4 비트는 포트를 나타내고, 하위 12 비트는 VLAN ID 를 나타낸다. 따라서 테이블 액세스는 포트와 VLAN ID 를 조합한 메모리 어드레스를 지정하여 행한다. 또한, 상위 12 비트를 VALN 으로 하고, 하위 4 비트를 포트로 하는 것도 가능하다. 또한, 비트를 증감시킴으로써, 16 포트 이외의 포트수에도 대응 가능하다.
본 실시예에서는 입력 포트 테이블을 준비하여, 미리 설정한 입력 포트 및 입력 VLAN 태그 ID 의 조건에 합치하는 프레임에 대한 확장 포워딩 태그 정보를 설정 가능하게 함으로써, 런닝 프로세스가 기능하지 않은 경우라도, 태그를 사용한 전송에 의해, 불필요한 수신선에의 프레임 전송을 방지할 수 있고, 네트워크의 혼잡을 해소하여, 대역 이용 효율을 높이는 것이 가능하다.
종래 런닝을 사용하지 않은 경우는 미리 각 노드에 수신선 MAC 어드레스를 따라 부가해야 할 확장 태그 (포워딩 태그) 를 설정해 두어야만 했다. 본 실시 예에서는 설정해야할 항목이, 단말 단위의 어드레스인 VLAN 및, 복수의 단말이 이더넷 (R) 스위치를 통해 접속되는 입력 포트에 축퇴되기 때문에, 설정 작업을 대폭 간략화하는 것이 가능하다.
도 52 는 본 발명을 적용하는 물리 네트워크의 구성예를 도시하는 블록도이고, 제 1 실시예에 있어서의 도 1 에 대하여, 클라이언트 (C4), 이더넷 (R) 스위치 (W1) 및 이더넷 (R) 스위치 (W2) 를 추가한 것이다.
이더넷 (R) 스위치 (W1) 는 UnTag 포트와 Tagged 포트의 두 가지의 포트를 갖고, 이하의 동작을 행한다.
(1) Untag 포트로부터 입력된 도 2 에 나타내는 이더넷 (R) 프레임 (60) 의 포맷의 프레임에 대하여, 미리 설정된 ID 의 VLAN 태그를 추가 삽입하고, 도 3 에 나타내는 VLAN Tagged 이더넷 (R) 프레임 (61) 의 형식으로 변환하여, Tagged 포트로부터 출력한다.
(2) Tagged 포트로부터 도 3 에 나타내는 이더넷 (R) 프레임 (61) 의 포맷의 프레임이 입력되면, 설정 정보를 참조하여, 혹시 설정 정보와 일치한 경우는, 상기 입력 프레임으로부터 VLAN 태그를 삭제하고, 도 2 에 나타내는 이더넷 (R) 프레임 (60) 의 형식으로 변환하여, Untag 포트로부터 출력한다.
도 52 에 있어서는 이더넷 (R) 스위치 (W1) 의 Untag 포트에 클라이언트 (C4) 가 접속되고, Tagged 포트에 노드 (G1) 가 접속되어 있다. 또한, Tagged 포트로부터는 ID0001 의 VLAN 태그가 있는 프레임을 송수신하도록 설정되어 있다.
도 52 에 있어서의 이더넷 (R) 스위치 (W2) 는, 이더넷 (R) 스위치 (W1) 와 동일한 동작을 행하는 이더넷 (R) 스위치이다. 이더넷 (R) 스위치 (W2) 의 Untag 포트에 클라이언트 (C3) 가 접속되고, Tagged 포트에 노드 (G3) 가 접속되어 있다. 또한, Tagged 포트로부터는 ID0001 의 VLAN 태그가 있는 프레임을 송수신하도록 설정되어 있다.
도 52 를 참조하여, 본 실시예에 있어서의 제 1 동작예에 관해서 말한다.
제 1 동작예에서는 노드 (G1) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L1) 로부터 입력된 프레임에 대하여 수신선 태그 어드레스 (g2) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행하고, 노드 (G2) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L1) 로부터 입력된 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 이 다음에 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여 PING REQUEST 를 송신하고, 클라이언트 (C2) 가 클라이언트 (C1) 에 대하여 PING REPLY 를 응답할 때의, 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타낸다. 또한, ARP 는 이미 해결되어 있는 것으로 한다.
우선 프레임 송신에 앞서, 노드 (G1) 에 있어서, 포트 (D/L1) 로부터 입력된 모든 프레임에 대하여 수신선 태그 어드레스 (g2) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 포트 (D/L1) 로부터 입력된 모든 프레임에 대하여 수신선 태그 (g2) 를 삽입하도록 설정하기 위해서는, 포트 (D/L1) 로부터 입력되는 모든 VLAN 태그에 관해서, 포워딩 태그 (g2) 를 삽입하도록 설정해야만 한다. 따라서, 입력 포트 테이블 메모리 (2049) 의 포트 (D/L1), VLAN0000 로부터, 포트 (D/L1), VLAN4095 의 합계 4096 엔트리에 대하여, 확장 포워딩 태그 정보로서 g2 를 지정한다. 또한, 브로드캐스트 테이블 메모리 (2042) 에 대하여도, VLAN0000 내지 4095 의 합계 4096 엔트리에 대하여, 복수 출력 포트 정보에 D/L1 포트를 추가 기재한다.
다음으로 노드 (G2) 에 있어서, 포트 (D/L1) 로부터 입력된 모든 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 포트 (D/L1) 로부터 입력된 모든 프레임에 대하여 수신선 태그 (g1) 를 삽입하도록 설정하기 위해서는, 포트 (D/L1) 로부터 입력되는 모든 VLAN 태그에 관해서, 포워딩 태그 (g1) 를 삽입하도록 설정하지 않으면 안된다. 따라서, 입력 포트 테이블 메모리 (2049) 의 포트 (D/L1), VLAN0000 으로부터, 포트 (D/L1), VLAN4095 의 합계 4096 엔트리에 대하여, 확장 포워딩 태그 정보로서 g1 을 지정한다. 또한, 브로드캐스트 테이블 메모리 (2042) 에 대하여도, VLAN0000 내지 4095 의 합계 4096 엔트리에 대하여, 복수 출력 포트 정보에 D/L1 포트를 추가 기재한다.
상기 설정 하에, 클라이언트 (C1) 로부터 클라이언트 (C2) 에 대하여, PING REQUEST 를 송신한다. 이 프레임의 포맷은 도 2 에 나타내는 이더넷 (R) 프레임 (60) 이고, 수신선 MAC 어드레스는 c2, 송신원 MAC 어드레스는 c1 이 설정된다.
노드 (G1) 는 포트 (D/L1) 로부터 클라이언트 (C1) 로부터의 프레임을 수취한다. 상기 프레임의 입력 포트는 D/L1 이고, VLAN 은 태그가 없어서 VLAN=0000 으로 하여 입력 포트 테이블 메모리 (2049) 를 검색한다. 그렇게 하 면 확장 포워딩 정보로서 g2 가 설정되어 있기 때문에, 상기 프레임에 대하여 확장 포워딩 태그를 삽입하고, 태그 포워딩 테이블 메모리 (2043) 를 검색하여 출력 포트를 결정한다. 태그 어드레스 (g2) 의 트리인 트리 (T2) 는 도 35 에 나타내는 형상이기 때문에, 상기 프레임은 도 5 에 나타내는 포워딩 태그가 있는 이더넷 (R) 프레임 (62) 의 포맷으로, 노드 (G3) 에 전송된다.
노드 (G3) 는 노드 (G1) 로부터 송신된 상기 프레임을 업링크 포트로부터 수신하면, 태그 포워딩 테이블 메모리 (2043) 를 검색하여, 출력 포트를 결정한다. 태그 어드레스 (g2) 의 트리인 트리 (T2) 는 도 35 에 나타내는 형상이기 때문에, 상기 프레임은 노드 (G2) 에 전송된다.
노드 (G2) 는 업링크 포트로부터 노드 (G3) 로부터의 프레임을 수취한다. 이 프레임은 해당 노드 앞의 확장 포워딩 태그가 부가되어 있기 때문에, 우선은 브로드캐스트 테이블 메모리 (2042) 를 검색한다. 여기서 검색키는 상기 프레임에는 VLAN 태그가 부가되어 있지 않기 때문에, VLAN=0000 을 사용한다. 그리고 검색된 복수 출력 포트 정보 중, 다운링크측 포트로서 설정되어 있는 포트가 D/L1 만이기 때문에, 상기 프레임으로부터 확장 포워딩 태그를 삭제한 뒤에, D/L1 에 전송한다.
클라이언트 (C2) 는 노드 (G2) 에 의해서 전송된 수신선 MAC 어드레스 (c2) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c2) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C1) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C2) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c1), 송신원 MAC 어드레스 (c2) 의 ICMP ECHO REPLY 프레임을 작성하여, 노드 (G2) 앞으로 송신한다. 이 프레임의 포맷은 도 2 에 나타내는 이더넷 (R) 프레임 (60) 이다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
노드 (G2) 는 상기 프레임을 다운링크 포트로부터 수신한다. 그리고 입력 포트 (D/L1) 및 VLAN (0000) 를 키로 하여, 입력 포트 테이블 메모리 (2049) 를 검색하면, 확장 포워딩 태그 (g1) 를 부가하여, 도 34 에 나타내는 트리 (T1) 의 루트 포트측에 전송하면 됨을 알 수 있다. 따라서 노드 (G2) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하고, 제 1 실시예에 있어서의 도 5 에 나타내는 포워딩 태그가 있는 이더넷 (R) 프레임 (62) 의 포맷으로, 상기 주신호 프레임을 노드 (G4) 에 전송한다.
노드 (G4) 는 노드 (G2) 로부터 송신된 상기 프레임을 업링크 포트로부터 수신하면, 태그 포워드 테이블 메모리 (2043) 를 검색하여, 출력 포트를 결정한다. 태그 어드레스 (g1) 의 트리인 트리 (T1) 는 도 34 에 나타내는 형상이기 때문에, 상기 프레임은 노드 (G1) 에 전송된다.
노드 (G1) 는 업링크 포트로부터 노드 (G4) 로부터의 프레임을 수취한다. 이 프레임은 해당 노드 앞의 확장 포워딩 태그가 부가되어 있기 때문에, 우선은 브로드캐스트 테이블 메모리 (2042) 를 검색한다. 여기서 검색키는 상기 프레임에는 VLAN 태그가 부가되어 있지 않기 때문에, VLAN=0000 을 사용한다. 그리고 검색된 복수 출력 포트 정보 중, 다운링크측 포트로서 설정되어 있는 포트가 D/L1 만이기 때문에, 상기 프레임으로부터 확장 포워딩 태그를 삭제한 뒤에, D/L1 에 전송한다.
클라이언트 (C1) 는 노드 (G1) 에 의해서 전송된 수신선 MAC 어드레스 (c1) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c1) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되어, PING 코맨드의 결과가 표시된다.
이상에 의해, 노드 (G1) 에 있어서 포트 (D/L1) 로부터 입력된 프레임에 대하여 수신선 태그 어드레스 (g2) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행하고, 노드 (G2) 에 있어서 포트 (D/L1) 로부터 입력된 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한 경우에, 클라이언트 (C1) 가 클라이언트 (C2) 에 대하여 PING REQUEST 를 송신하여, 클라이언트 (C2) 가 클라이언트 (C1) 에 대하여 PING REPLY 를 응답할 때의, 각 노드 및 클라이언트 사이에서의 프레임의 교환을 설명할 수 있었다.
또한, 본 동작예에 있어서의 노드 (G4) 는 그 장치 구성을 간략화한, 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대하여, (1) 메모리 복제 정보 (3013) 를 갖지 않은 것, (2) MAC 포워딩 테이블 메모리 (2043) 를 갖지 않은 것, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 갖지 않은 것, 및, (4) 런닝 프레임을 송수신하지 않은 것의 4 점에서 다르다.
도 52 를 참조하여, 본 실시예에 있어서의 제 2 동작예에 관해서 서술한다.
제 2 동작예에서는 노드 (G1) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L2) 로부터 입력된 VLAN0001 의 프레임에 대하여 수신선 태그 어드레스 (g3) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행하고, 노드 (G3) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L1) 로부터 입력된 VLAN0001 의 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 이 다음에 클라이언트 (C4) 가 클라이언트 (C3) 에 대하여 PING REQUEST 를 송신하고, 클라이언트 (C3) 가 클라이언트 (C4) 에 대하여 PING REPLY 를 응답할 때의, 각 노드 및 클라이언트 사이에서의 프레임의 교환을 나타낸다. 또한, ARP 는 이미 해결되어 있는 것으로 한다.
우선 프레임 송신에 앞서, 노드 (G1) 에 있어서, 포트 (D/L2) 로부터 입력된 VLAN0001 의 프레임에 대하여 수신선 태그 어드레스 (g3) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 따라서, 입력 포트 테이블 메모리 (2049) 의 포트 (D/L2), VLAN0001 의 엔트리에 대하여, 확장 포워딩 태그 정보로서 g3 을 지정한다. 또한, 브로드캐스트 테이블 메모리 (2042) 에 대하여도, VLAN0001 의 엔트리에 대하여, 복수 출력 포트 정보에 D/L2 포트를 추가 기재한다.
다음으로 노드 (G3) 에 있어서, 포트 (D/L1) 로부터 입력된 VLAN0001 의 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 따라서, 입력 포트 테이블 메모리 (2049) 의 포트 (D/L1), VLAN0001 의 엔트리에 대하여, 확장 포워딩 태그 정보로서 g1 을 지정한다. 또 한, 브로드캐스트 테이블 메모리 (2042) 에 대하여도, VLAN0001 의 엔트리에 대하여, 복수 출력 포트 정보에 D/L1 포트를 추가 기재한다.
상기 설정 하, 클라이언트 (C4) 로부터 클라이언트 (C3) 에 대하여, PING REQUEST 를 송신한다. 이 프레임의 포맷은 도 2 에 나타내는 이더넷 (R) 프레임 (60) 이며, 수신선 MAC 어드레스는 c3, 송신원 MAC 어드레스는 c4 가 설정된다.
이더넷 (R) 스위치 (W1) 는 클라이언트 (C4) 로부터 상기 프레임을 수신하면, 입력 프레임에 대하여 ID0001 의 VLAN 태그를 삽입하고, 도 3 에 나타내는 VLAN Tagged 이더넷 (R) 프레임 (61) 의 포맷으로 하여, 노드 (G1) 에 전송한다.
노드 (G1) 는 포트 D/L2 에서 프레임을 수취한다. 그리고 입력 포트를 D/L2, VLAN-0000 으로 하여 입력 포트 테이블 메모리 (2049) 를 검색한다. 그러면 확장 포워딩 정보로서 g3 이 설정되어 있기 때문에, 상기 프레임에 대하여 확장 포워딩 태그 (g3) 를 삽입하고, 태그 포워드 테이블 메모리 (2043) 를 검색하여, 출력 포트를 결정한다. 태그 어드레스 (g3) 의 트리인 트리 (T3) 는 도 36 에 나타내는 형상이기 때문에, 상기 프레임은 도 53 에 나타내는 포워딩 태그ㆍVLAN 태그가 있는 이더넷 (R) 프레임 (62C) 의 포맷으로, 노드 (G3) 에 전송된다.
노드 (G3) 는 업링크 포트로부터 노드 (G1) 로부터의 프레임을 수취한다. 이 프레임은 해당 노드 앞의 확장 포워딩 태그가 부가되어 있기 때문에, 우선은 브로드캐스트 테이블 메모리 (2042) 를 검색한다. 여기서 검색키는 VLAN=0001 을 사용한다. 그리고 검색된 복수 출력 포트 정보 중, 다운링크측 포트로서 설정되어 있는 포트가 D/L1 만이기 때문에, 상기 프레임으로부터 확장 포워딩 태그를 삭제한 뒤에, D/L1 에 전송한다.
이더넷 (R) 스위치 (W2) 는 노드 (G3) 로부터 상기 프레임을 수신하면, 입력 프레임의 VLAN ID 를 확인한다. 이더넷 (R) 스위치 (W2) 에 있어서는 Tagged 포트에 있어서 VLAN0001 의 태그가 있는 프레임을 취급하도록 설정되어 있기 때문에, VLAN 태그를 삭제하고, 도 2 에 나타내는 이더넷 (R) 프레임 (60) 의 포맷으로 변환하여, Untag 포트에서 클라이언트 (C3) 에 전송한다.
클라이언트 (C3) 는 이더넷 (R) 스위치 (W2) 에 의해 수신한 수신선 MAC 어드레스 (c3) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c3) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다.
또한, 이 예에서는 클라이언트 (C4) 로부터 송신된 프레임은 ICMP ECHO REQUEST 로 하고 있기 때문에, 클라이언트 (C3) 의 기본 소프트웨어는 수신선 MAC 어드레스 (c4), 송신원 MAC 어드레스 (c3) 의 ICMP ECHO REPLY 프레임을 작성하여, 이더넷 (R) 스위치 (W2) 앞으로 송신한다. 이 프레임의 포맷은 도 2 에 나타내는 이더넷 (R) 프레임 (60) 이다. 이 프레임을, 이후의 설명의 주신호 프레임이라고 한다.
이더넷 (R) 스위치 (W2) 는 클라이언트 (C3) 로부터 상기 프레임을 수신하면, 입력 프레임에 대하여 ID0001 의 VLAN 태그를 삽입하고, 도 3 에 나타내는 VLAN Tagged 이더넷 (R) 프레임 (61) 의 포맷으로 하여, 노드 (G3) 에 전송한다.
노드 (G3) 는 상기 프레임을 다운링크 포트로부터 수신한다. 그리고 입 력 포트 (D/L1) 및 VLAN (0001) 를 키로 하여, 입력 포트 테이블 메모리 (2049) 를 검색하면, 확장 포워딩 태그 (g1) 를 부가하여, 도 34 에 나타내는 트리 (T1) 의 루트 포트측에 전송하면 됨을 알 수 있다. 따라서 노드 (G3) 는 상기 프레임에 확장 포워딩 태그 (g1) 를 부가하고, 도 53 에 나타내는 포워딩 태그ㆍVLAN 태그가 있는 이더넷 (R) 프레임 (62C) 의 포맷으로, 상기 주신호 프레임을 노드 (G1) 에 전송한다.
노드 (G1) 는 업링크 포트로부터 노드 (G3) 로부터의 프레임을 수취한다. 이 프레임은 해당 노드 앞의 확장 포워딩 태그가 부가되어 있기 때문에, 우선은 브로드캐스트 테이블 메모리 (2042) 를 검색한다. 여기서 검색키는 VLAN=0001 을 사용한다. 그리고 검색된 복수 출력 포트 정보 중, 다운링크측 포트로서 설정되어 있는 포트가 D/L2 만이기 때문에, 상기 프레임으로부터 확장 포워딩 태그를 삭제하고, 도 3 에 나타내는 VLAN Tagged 이더넷 (R) 프레임 (61) 의 포맷으로 변환한 뒤에, D/L2 에 전송한다.
이더넷 (R) 스위치 (W1) 는 노드 (G1) 로부터 상기 프레임을 수신하면, 입력 프레임의 VLAN ID 를 확인한다. 이더넷 (R) 스위치 (W1) 에 있어서는 Tagged 포트에 있어서 VLAN0001 의 태그가 있는 프레임을 취급하도록 설정되어 있기 때문에, VLAN 태그를 삭제하고, 도 2 에 나타내는 이더넷 (R) 프레임 (60) 의 포맷으로 변환하여, Untag 포트로부터 클라이언트 (C4) 에 전송한다.
클라이언트 (C4) 는 이더넷 (R) 스위치 (W4) 에 의해서 전송된 수신선 MAC 어드레스 (c4) 의 주신호 프레임을 수신한다. 수신선 MAC 어드레스가 자신의 MAC 어드레스 (c4) 와 일치하기 때문에, 이 프레임을 애플리케이션 그 밖의 프로그램에 인도한다. 이 예에 있어서는, 기본 소프트웨어 내의 PING 프로그램에 프레임이 인도되고, PING 코맨드의 결과가 표시된다.
이상에 의해, 노드 (G1) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L2) 로부터 입력된 VLAN0001 의 프레임에 대하여 수신선 태그 어드레스 (g3) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행하고, 노드 (G3) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L1) 로부터 입력된 VLAN0001 의 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한 경우에 있어서, 클라이언트 (C4) 가 클라이언트 (C3) 에 대하여 PING REQUEST 를 송신하고, 클라이언트 (C3) 가 클라이언트 (C4) 에 대하여 PING REPLY 를 응답할 때의, 각 노드 및 클라이언트 사이에서의 프레임의 교환을 설명할 수 있었다.
또한, 본 동작예에 있어서의 노드 (G4) 는 그 장치 구성을 간략화한 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대하여, (1) 메모리 복제 정보 (3013) 를 갖지 않는 점, (2) MAC 포워딩 테이블 메모리 (2043) 를 갖지 않는 점, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 갖지 않는 점, 및 (4) 런닝 프레임을 송수신하지 않는 4 가지 점에서 다르다.
도 52 를 참조하여, 본 실시예에 있어서의 제 3 동작예에 관해서 서술한다.
제 3 동작예에서는 노드 (G1) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L2) 로부터 입력된 VLAN (0001) 의 프레임에 대하여 수신선 태그 어드레스 (g3) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행하고, 노드 (G3) 의 입력 포트 테이블 메모리에 있어서, 포트 (D/L1) 로부터 입력된 VLAN (0001) 의 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 그 후에 이더넷 (R) 스위치 (W1) 가, IEEE 802. 1D 또는 IEEE 802. 1W 에 규정되는 스패닝 트리 프로토콜에 있어서, 트리 구축을 위해 사용되는 BPDU 프레임을 송신하고, 이 프레임이 이더넷 (R) 스위치 (W2) 에 전달되는 경우의 주고받음을 나타낸다.
또한, 본 실시예에 있어서의 BPDU 프레임은 도 3 에 나타내는 VLAN Tagged 이더넷 (R) 프레임 (61) 의 포맷이고, 수신선 MAC 어드레스로서 Universal Administrative MAC 어드레스의 일부인 01-80-C2-00-00-00 가 설정되어 있는 것으로 한다.
본 실시예에서는 BPDU 프레임의 전송을 예로, Universal Administrative MAC 어드레스를 가진 프레임이, 이더넷 (R) 스위치 (W1) 부터 이더넷 (R) 스위치 (W2) 사이, 또는 이더넷 (R) 스위치 (W2) 부터 이더넷 (R) 스위치 (Wl) 사이에서 교환 가능한 것을 나타낸다. 그러나 본 실시예는, BPDU 프레임에 한정하지 않고, 01-80-C2-00-00-0x (x 는 1∼f) 의 수신선 MAC 어드레스 (이하, BPDU 어드레스라고 한다) 를 가진, 모든 종류의 Universal Administrative MAC 어드레스에 대하여 적용 가능하다.
우선 프레임 송신에 앞서, 노드 (G1) 에 있어서, 포트 (D/L2) 로부터 입력된 VLAN (0001) 의 프레임에 대하여 수신선 태그 어드레스 (g3) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 따라서, 입력 포트 테이블 메모리 (2049) 의 포트 (D/L2), VLAN (0001) 의 엔트리에 대하여, 확장 포워딩 태그 정보로서 g3 을 지정한다. 또한, 브로드캐스트 테이블 메모리 (2042) 에 대해서도, VLAN (0001) 의 엔트리에 대하여, 복수 출력 포트 정보에 D/L2 포트를 추가 기재한다.
다음으로 노드 (G3) 에 있어서, 포트 (D/L1) 로부터 입력된 VLAN (0001) 의 프레임에 대하여 수신선 태그 어드레스 (g1) 의 확장 포워딩 태그를 추가 삽입하도록 설정을 행한다. 따라서, 입력 포트 테이블 메모리 (2049) 의 포트 (D/L1), VLAN (0001) 의 엔트리에 대하여, 확장 포워딩 태그 정보로서 g1 을 지정한다. 또한, 브로드캐스트 테이블 메모리 (2042) 에 대해서도, VLAN (0001) 의 엔트리에 대하여, 복수 출력 포트 정보에 D/L1 포트를 추가 기재한다.
상기 설정 하에, 이더넷 (R) 스위치 (W1) 의 Tagged 포트에 대하여 스패닝 트리를 설정한다. 그러면 이더넷 (R) 스위치 (W1) 의 Tagged 포트로부터, 도 3 에 나타내는 이더넷 (R) 프레임 (61) 의 포맷을 갖고, 수신선 MAC 어드레스가 BPDU 어드레스, 송신원 MAC 어드레스가 이더넷 (R) 스위치 (W1) 의 MAC 어드레스인 w1, VLAN 태그 내의 ID 가 0001 인, BPDU 제어 프레임이 송신된다.
노드 (G1) 는 포트 (D/L2) 로부터 프레임을 수취한다. 그리고 입력 포트를 D/L2, VLAN= 0000 으로 하여 입력 포트 테이블 메모리 (2049) 를 검색한다. 그러면 확장 포워딩 정보로서 g3 이 설정되어 있기 때문에, 상기 프레임에 대하여 확장 포워딩 태그 (g3) 를 삽입하고, 태그 포워드 테이블 메모리 (2043) 를 검색하여, 출력 포트를 결정한다. 태그 어드레스 (g3) 의 트리 인 트리 (T3) 는 도 36 에 나타내는 형상이기 때문에, 상기 프레임은 도 53 에 나타내는 포워딩 태그·VLAN 태그가 있는 이더넷 (R) 프레임 (62C) 의 포맷으로, 노드 (G3) 에 전송된다.
이 때 노드 (G1) 는 수신선 MAC 어드레스를 BPDU 어드레스로부터, 터널링 프레임 식별용 MAC 어드레스 (여기서는 00-00-4c-00-00-10) 로 변환한다. 이 변환을 하는 이유는, 중계 노드에 있어서, Universal Administrative MAC 로서의 프레임 처리가 행해지지 않도록 하기 위해서이다.
노드 (G3) 는 업링크 포트에서 노드 (G1) 로부터의 프레임을 수취한다. 이 프레임은 해당 노드 앞의 확장 포워딩 태그가 부가되어 있기 때문에, 먼저 브로드캐스트 테이블 메모리 (2042) 를 검색한다. 여기서 검색키는 VLAN= 0001 을 사용한다. 그리고 검색된 복수 출력 포트 정보 중, 다운링크측 포트로서 설정되어 있는 포트가 D/L1 뿐인 점에서, 상기 프레임으로부터 확장 포워딩 태그를 삭제한 후에, D/L1 에 전송한다.
이 때 노드 (G1) 는 수신선 MAC 어드레스를 터널링 프레임 식별용 MAC 어드레스 (여기서는 00-00-4c-00-00-10) 로부터 BPDU 어드레스로 변환한다. 이 변환을 행함으로써, 이후의 스위치는 상기 프레임을 통상의 BPDU 제어 프레임으로서 취급할 수 있다.
이더넷 (R) 스위치 (W2) 는 노드 (G3) 로부터 상기 프레임을 수신하면, 입력 프레임의 VLANID 를 확인한다. 이더넷 (R) 스위치 (W2) 에 있어서는, Tagged 포트에 있어서 VLAN (0001) 의 태그가 있는 프레임을 취급하도록 설정되어 있기 때문에, 다음에 MAC 어드레스를 참조한다. 그러면, 상기 수신 프레임이 BPDU 어드레스를 가진 것을 알 수 있기 때문에, 프레임을 이더넷 (R) 스위치 (W2) 내에서 동작하는 스패닝 트리 프로토콜에 전송한다.
이상으로부터 Universal Administrative MAC 어드레스를 가진 프레임이, 이더넷 (R) 스위치 (W1) 로부터 이더넷 (R) 스위치 (W2) 로 전송 가능한 것을 설명할 수 있었다. 본 실시예에서는 이 예와 역방향의 전송도 동일하게 행할 수 있어, 이더넷 (R) 스위치 (W1) 로부터 이더넷 (R) 스위치 (W2) 로도, Universal Administrative MAC 어드레스를 가진 프레임을 전송할 수 있다.
이것으로부터 본 실시예는 종래 기술에서는 불가능하였던, Universal Administrative MAC 어드레스의 투과 전송 (터널링) 을 실현할 수 있다고 할 수 있다.
또한, 본 동작예에 있어서의 노드 (G4) 는 그 장치 구성을 간략화한, 노드 (E4) 로 치환할 수 있다. 간략화판 노드 (E4) 는 노드 (G4) 에 대하여, (1) 메모리 복제 정보 (3013) 를 갖지 않는 점, (2) MAC 포워딩 테이블 메모리 (2043) 를 갖지 않는 점, (3) 런닝 관리 프로그램 (302) 및 타이머 (306) 를 갖지 않는 점, 및 (4) 런닝 프레임을 송수신하지 않는 4 가지 점에서 다르다.
다음으로 본 실시예의 효과에 관해서 설명한다.
종래, 수신선을 나타내는 태그를 사용한 프레임 전송을 행하는 경우는, 미리 각 노드에 수신선 MAC 어드레스에 따라 부가해야 할 확장 태그 (포워딩 태그) 를 설정하지 않으면 안되었다.
본 실시예에서는, 입력 포트 테이블을 준비하여, 미리 설정한 입력 포트 및 입력 VLAN 태그 ID 의 조건에 합치되는 프레임에 대한 확장 포워딩 태그 정보를 설 정 가능하게 함으로써, 설정해야 할 항목이, 단말 단위의 어드레스인 MAC 어드레스로부터, 복수대의 단말을 합한 네트워크를 나타내는 ID 인 VLAN 및, 복수의 단말이 이더넷 (R) 스위치를 통해 접속되는 입력 포트에 축퇴되기 때문에, 제 2 실시예나 제 3 실시예에서 나타낸 런닝을 사용하지 않은 경우에 있어서도, 설정 작업을 대폭 간략화하는 것이 가능하다.
이상 바람직한 실시예 및 동작예를 들어 본 발명을 설명하였는데, 본 발명은 반드시 상기 실시예 및 동작예에 한정되지 않고, 그 기술적 사상의 범위내에서 여러 가지로 변형하여 실시할 수 있다.
이상 설명한 바와 같이 본 발명에 의하면 이하와 같은 효과가 달성된다.
첫째, 네트워크의 혼잡을 해소하여, 대역 이용 효율을 높이는 것이 가능하다.
그 이유는 주신호 프레임이 흐르는 경로와는 반대 경로에 런닝 프레임을 송신함으로써, 비대칭 플로우를 흘려보낸 경우라도 런닝 프로세스를 기능시킬 수 있기 때문이다.
둘째, 부가해야 할 포워딩 태그의 설정을 자동화할 수 있다.
그 이유는 런닝 프레임에 태그 정보를 포함시키기 때문이다.

Claims (84)

  1. 복수의 노드를 접속한 네트워크 시스템으로서,
    상기 각 노드는 해당 노드 하위의 클라이언트로 향하는 주신호 프레임의 런닝 (learning) 에 사용하는 런닝 프레임을 해당 노드가 루트 노드가 되는 스패닝 트리 (spanning tree) 를 경로로 하여 송신하는 것을 특징으로 하고,
    상기 네트워크 시스템에 속하는 노드는, 송신원 MAC 어드레스 (Media Access Control Source Address; MAC SA) 테이블 캐시를 참조하여 런닝 프레임 송신 요구를 행할지의 여부를 결정하는 런닝 프레임 관리기, 및 상기 런닝 프레임 송신 요구를 행한 MAC SA 를 기억하는 MAC SA 테이블 캐시를 구비하는 것을 특징으로 하는 네트워크 시스템.
  2. 제 1 항에 있어서,
    상기 노드는 상기 런닝 프레임에 의해 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 하는 네트워크 시스템.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 노드는 MAC SA 테이블 캐시의 에이징을 행하는 에이징 요구 접수기, 및 CPU 에 대하여 런닝 프레임 송신 요구를 행하는 송신 요구기를 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  5. 제 4 항에 있어서,
    상기 노드는 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  6. 삭제
  7. 제 1 항에 있어서,
    상기 노드는 상기 노드 내의 기기들을 제어하기 위한 설정을 행하는 기기 제어 프로그램을 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  8. 제 1 항에 있어서,
    상기 노드는 입력 프레임을 판별하는 프레임 타입 판정기를 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  9. 제 1 항에 있어서,
    상기 네트워크 시스템에 속하는 노드는 에이징 대상 엔트리의 에이징을 행하는 에이징 제어기, 및 에이징 대상 엔트리를 기억하는 에이징 관리 테이블을 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  10. 제 1 항에 있어서,
    상기 노드는 수신선 MAC 어드레스 (Media Access Control Destination Address; MAC DA) 에 대한 출력 포트 및 태그 조작을 기억하는 MAC 포워딩 테이블 메모리를 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  11. 제 1 항에 있어서,
    상기 노드는 태그에 대한 브로드캐스트시의 출력선 포트를 기억하는 브로드캐스트 테이블 메모리를 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  12. 제 1 항에 있어서,
    상기 노드는 포워딩 태그에 대한 출력 포트를 기억하는 태그 포워딩 테이블 메모리를 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  13. 제 1 항에 있어서,
    상기 노드는 테이블, 에이징 회로, 테이블 판독 입력 회로, 및 테이블 기록 회로를 가진 포워딩 테이블을 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  14. 제 1 항에 있어서,
    상기 노드는 포워딩 태그에 대한 MAC 포워딩 테이블 메모리 상의 번지를 기억하는 TAG 어드레스 관리 테이블을 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  15. 삭제
  16. 복수의 노드를 접속한 네트워크의 노드로서,
    하위의 클라이언트로 향하는 주신호 프레임의 런닝에 사용하는 런닝 프레임을 상기 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    송신원 MAC 어드레스 (Media Access Control Source Address; MAC SA) 테이블 캐시를 참조하여, 런닝 프레임 송신 요구를 행할지의 여부를 결정하는 런닝 프레임 관리기, 및 상기 런닝 프레임 송신 요구를 행한 MAC SA 를 기억하는 MAC SA 테이블 캐시를 구비하는 것을 특징으로 하는 노드.
  17. 제 16 항에 있어서,
    상기 런닝 프레임에 의해 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 하는 노드.
  18. 삭제
  19. 제 16 항에 있어서,
    MAC SA 테이블 캐시의 에이징을 행하는 에이징 요구 접수기, 및 CPU 에 대하여 런닝 프레임 송신 요구를 행하는 송신 요구기를 더 구비하는 것을 특징으로 하는 노드.
  20. 제 19 항에 있어서,
    런닝 프레임 처리를 행하는 런닝 관리 프로그램을 더 구비하는 것을 특징으로 하는 노드.
  21. 삭제
  22. 제 16 항에 있어서,
    상기 노드 내의 기기들을 제어하기 위한 설정을 행하는 기기 제어 프로그램을 더 구비하는 것을 특징으로 하는 노드.
  23. 제 16 항에 있어서,
    입력 프레임을 판별하는 프레임 타입 판정기를 더 구비하는 것을 특징으로 하는 노드.
  24. 제 16 항에 있어서,
    에이징 대상 엔트리의 에이징을 행하는 에이징 제어기, 및
    에이징 대상 엔트리를 기억하는 에이징 관리 테이블을 더 구비하는 것을 특징으로 하는 노드.
  25. 제 16 항에 있어서,
    수신선 MAC 어드레스 (Media Access Control Destination Address; MAC DA) 에 대한 출력 포트 및 태그 조작을 기억하는 MAC 포워딩 테이블 메모리를 더 구비하는 것을 특징으로 하는 노드.
  26. 제 16 항에 있어서,
    태그에 대한 브로드캐스트시의 출력선 포트를 기억하는, 브로드캐스트 테이블 메모리를 더 구비하는 것을 특징으로 하는 노드.
  27. 제 16 항에 있어서,
    포워딩 태그에 대한 출력 포트를 기억하는, 태그 포워딩 테이블 메모리를 더 구비하는 것을 특징으로 하는 노드.
  28. 제 16 항에 있어서,
    테이블, 에이징 회로, 테이블 판독 입력 회로, 및 테이블 기록 회로를 가진 포워딩 테이블을 더 구비하는 것을 특징으로 하는 노드.
  29. 제 16 항에 있어서,
    포워딩 태그에 대한 MAC 포워딩 테이블 메모리 상의 번지를 기억하는, TAG 어드레스 관리 테이블을 더 구비하는 것을 특징으로 하는 노드.
  30. 삭제
  31. 복수의 노드를 접속한 네트워크의 런닝 방법으로서,
    상기 각 노드는 해당 노드 하위의 클라이언트로 향하는 주신호 프레임의 런닝에 사용하는 런닝 프레임을 해당 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    상기 네트워크에 속하는 노드는 송신원 MAC 어드레스 (Media Access Control Source Address; MAC SA) 테이블 캐시를 참조하여, 런닝 프레임 송신 요구를 행할지의 여부를 결정하고,
    상기 런닝 프레임 송신 요구를 행한 MAC SA 를 MAC SA 테이블 캐시에 기억시키는 것을 특징으로 하는 런닝 방법.
  32. 제 31 항에 있어서,
    상기 노드는 상기 런닝 프레임에 의해 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 하는 런닝 방법.
  33. 삭제
  34. 제 31 항에 있어서,
    상기 노드는 MAC SA 테이블 캐시의 에이징을 행하여, CPU 에 대하여 런닝 프레임 송신 요구를 행하는 것을 특징으로 하는 런닝 방법.
  35. 제 34 항에 있어서,
    상기 노드는 런닝 프레임 처리를 행하는 런닝 관리 프로그램을 구비하는 것을 특징으로 하는 런닝 방법.
  36. 삭제
  37. 제 31 항에 있어서,
    상기 노드는 상기 노드 내의 기기들을 제어하기 위한 설정을 행하는 기기 제어 프로그램을 구비하는 것을 특징으로 하는 런닝 방법.
  38. 제 31 항에 있어서,
    상기 노드는 입력 프레임을 판별하는 것을 특징으로 하는 런닝 방법.
  39. 제 31 항에 있어서,
    상기 네트워크에 속하는 노드는 에이징 대상 엔트리의 에이징을 행하여, 에이징 대상 엔트리를 에이징 관리 테이블로 기억시키는 것을 특징으로 하는 런닝 방법.
  40. 제 31 항에 있어서,
    상기 노드는 수신선 MAC 어드레스 (Media Access Control Destination Address; MAC DA) 에 대한 출력 포트 및 태그 조작을, MAC 포워딩 테이블 메모리에 기억시키는 것을 특징으로 하는 런닝 방법.
  41. 제 31 항에 있어서,
    상기 노드는 태그에 대한 브로드캐스트시의 출력선 포트를 브로드캐스트 테이블 메모리에 기억시키는 것을 특징으로 하는 런닝 방법.
  42. 제 31 항에 있어서,
    상기 노드는 포워딩 태그에 대한 출력 포트를 태그 포워딩 테이블 메모리에 기억시키는 것을 특징으로 하는 런닝 방법.
  43. 제 31 항에 있어서,
    상기 노드는 테이블, 에이징 회로, 테이블 판독 입력 회로, 및 테이블 기록 회로를 가진 포워딩 테이블을 구비하는 것을 특징으로 하는 런닝 방법.
  44. 제 31 항에 있어서,
    상기 노드는 포워딩 태그에 대한 MAC 포워딩 테이블 메모리 상의 번지를 TAG 어드레스 관리 테이블에 기억시키는 것을 특징으로 하는 런닝 방법.
  45. 삭제
  46. 복수의 노드를 접속한 네트워크 시스템으로서,
    상기 각 노드는 소스 태그를 부가한 런닝 프레임을 해당 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    상기 노드는 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 하는 네트워크 시스템.
  47. 제 46 항에 있어서,
    상기 노드는 상기 소스 태그가 있는 프레임에 의해 주신호에 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 하는 네트워크 시스템.
  48. 삭제
  49. 제 46 항 또는 제 47 항에 있어서,
    상기 네트워크 시스템에 속하는 노드는, 프레임이 입력된 포트를 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 네트워크 시스템.
  50. 제 46 항 또는 제 47 항에 있어서,
    상기 네트워크 시스템에 속하는 노드는 입력된 프레임에 부가되어 있는 VLAN 태그를 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 네트워크 시스템.
  51. 제 50 항에 있어서,
    상기 노드는 입력 포트와 상기 VLAN 태그의 쌍방을 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 네트워크 시스템.
  52. 제 49 항에 있어서,
    상기 노드는 입력된 MAC 어드레스를 별도의 MAC 어드레스로 변환하여 출력하는 것을 특징으로 하는 네트워크 시스템.
  53. 제 52 항에 있어서,
    상기 입력 MAC 어드레스는 Universal Administrative MAC 어드레스이고,
    상기 출력 MAC 어드레스는 터널링 프레임 식별용 MAC 어드레스인 것을 특징으로 하는 네트워크 시스템.
  54. 제 1 항에 있어서,
    상기 노드는 MAC 포워딩 테이블 메모리를 참조하여 부가하는 태그의 종별을 결정하는 테이블 관리기를 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  55. 제 1 항에 있어서,
    상기 노드는 입력 포트 및 입력 VLAN 을 참조하여 부가하는 태그의 종별을 결정하기 위한 입력 포트 테이블 메모리를 더 구비하는 것을 특징으로 하는 네트워크 시스템.
  56. 복수의 노드를 접속한 네트워크 시스템으로서,
    상기 노드 사이를 흐르는 프레임은 소스 태그를 구비하고,
    상기 각 노드는 소스 태그를 부가한 런닝 프레임을 해당 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    상기 각 노드는 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 하는 네트워크 시스템.
  57. 제 56 항에 있어서,
    상기 런닝 프레임은 터널링 프레임 식별용 MAC 어드레스를 구비하는 것을 특징으로 하는 네트워크 시스템.
  58. 복수의 노드를 접속한 네트워크의 노드로서,
    상기 노드는 소스 태그를 부가한 런닝 프레임을 상기 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    상기 노드는 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 하는 노드.
  59. 제 58 항에 있어서,
    상기 노드는 상기 소스 태그가 있는 프레임에 의해 주신호에 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 하는 노드.
  60. 삭제
  61. 제 58 항 또는 제 59 항에 있어서,
    상기 네트워크에 속하는 노드는, 프레임이 입력된 포트를 기준으로, 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 노드.
  62. 제 58 항 또는 제 59 항에 있어서,
    상기 네트워크에 속하는 노드는, 입력된 프레임에 부가되어 있는 VLAN 태그를 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 노드.
  63. 제 62 항에 있어서,
    상기 노드는 입력 포트와 상기 VLAN 태그의 쌍방을 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 노드.
  64. 제 61 항에 있어서,
    상기 노드는 입력된 MAC 어드레스를 별도의 MAC 어드레스로 변환하여 출력하는 것을 특징으로 하는 노드.
  65. 제 64 항에 있어서,
    상기 입력 MAC 어드레스는 Universal Administrative MAC 어드레스이고, 상기 출력 MAC 어드레스는, 터널링 프레임 식별용 MAC 어드레스인 것을 특징으로 하는 노드.
  66. 제 16 항에 있어서,
    상기 노드는 MAC 포워딩 테이블 메모리를 참조하여 부가하는 태그의 종별을 결정하는 테이블 관리기를 더 구비하는 것을 특징으로 하는 노드.
  67. 제 16 항에 있어서,
    상기 노드는 입력 포트 및 입력 VLAN 참조하여 부가하는 태그의 종별을 결정하기 위한 입력 포트 테이블 메모리를 더 구비하는 것을 특징으로 하는 노드.
  68. 복수의 노드를 접속한 네트워크의 노드로서,
    상기 노드 사이를 흐르는 프레임은 소스 태그를 구비하고,
    소스 태그를 부가한 런닝 프레임을 상기 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 하는 노드.
  69. 제 68 항에 있어서,
    상기 런닝 프레임은 터널링 프레임 식별용 MAC 어드레스를 구비하는 것을 특징으로 하는 노드.
  70. 복수의 노드를 접속한 네트워크의 런닝 방법으로서,
    상기 각 노드는 소스 태그를 부가한 런닝 프레임을 해당 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    상기 노드는 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 하는 런닝 방법.
  71. 제 70 항에 있어서,
    상기 노드는 상기 소스 태그가 있는 프레임에 의해 주신호에 부가해야 할 포워딩 태그를 런닝하는 것을 특징으로 하는 런닝 방법.
  72. 삭제
  73. 제 70 항 또는 제 71 항에 있어서,
    상기 네트워크에 속하는 노드는, 프레임이 입력된 포트를 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 런닝 방법.
  74. 제 70 항 또는 제 71 항에 있어서,
    상기 네트워크에 속하는 노드는, 입력된 프레임에 부가되어 있는 VLAN 태그를 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 런닝 방법.
  75. 제 74 항에 있어서,
    상기 노드는 입력 포트와 상기 VLAN 태그의 쌍방을 기준으로 부가해야 할 포워딩 태그를 결정하는 것을 특징으로 하는 런닝 방법.
  76. 제 73 항에 있어서,
    상기 노드는 입력된 MAC 어드레스를 별도의 MAC 어드레스로 변환하여 출력하는 것을 특징으로 하는 런닝 방법.
  77. 제 76 항에 있어서,
    상기 입력 MAC 어드레스는 Universal Administrative MAC 어드레스이고, 상기 출력 MAC 어드레스는 터널링 프레임 식별용 MAC 어드레스인 것을 특징으로 하는 런닝 방법.
  78. 제 31 항에 있어서,
    상기 노드는 MAC 포워딩 테이블 메모리를 참조하여 부가하는 태그의 종별을 결정하는 테이블 관리기를 구비하는 것을 특징으로 하는 런닝 방법.
  79. 제 31 항에 있어서,
    상기 노드는 입력 포트 및 입력 VLAN 을 참조하여 부가하는 태그의 종별을 결정하기 위한 입력 포트 테이블 메모리를 구비하는 것을 특징으로 하는 런닝 방법.
  80. 복수의 노드를 접속한 네트워크의 런닝 방법으로서,
    상기 노드 사이를 흐르는 프레임은 소스 태그를 구비하고,
    상기 각 노드는 소스 태그를 부가한 런닝 프레임을 해당 노드가 루트 노드가 되는 스패닝 트리를 경로로 하여 송신하는 것을 특징으로 하고,
    상기 각 노드는 에이징 관리 테이블을 참조하여 소스 태그 또는 포워딩 태그 중 어느 것을 부가할지를 결정하는 것을 특징으로 하는 런닝 방법.
  81. 제 80 항에 있어서,
    상기 런닝 프레임은 터널링 프레임 식별용 MAC 어드레스를 구비하는 것을 특징으로 하는 런닝 방법.
  82. 삭제
  83. 삭제
  84. 삭제
KR20057015444A 2003-02-19 2004-01-09 네트워크 시스템, 런닝 브리지 노드, 런닝 방법 및 그프로그램 KR101010554B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2003-00041727 2003-02-19
JP2003041727 2003-02-19

Publications (2)

Publication Number Publication Date
KR20050101347A KR20050101347A (ko) 2005-10-21
KR101010554B1 true KR101010554B1 (ko) 2011-01-24

Family

ID=32866421

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20057015444A KR101010554B1 (ko) 2003-02-19 2004-01-09 네트워크 시스템, 런닝 브리지 노드, 런닝 방법 및 그프로그램

Country Status (8)

Country Link
US (1) US20040225725A1 (ko)
EP (1) EP1601137A4 (ko)
JP (1) JP4182977B2 (ko)
KR (1) KR101010554B1 (ko)
CN (2) CN1802818A (ko)
CA (1) CA2437669A1 (ko)
TW (1) TW200423609A (ko)
WO (1) WO2004075482A1 (ko)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040243769A1 (en) * 2003-05-30 2004-12-02 Frame David W. Tree based memory structure
US20050141537A1 (en) * 2003-12-29 2005-06-30 Intel Corporation A Delaware Corporation Auto-learning of MAC addresses and lexicographic lookup of hardware database
WO2005065035A2 (en) * 2004-01-08 2005-07-21 Wisair Ltd. Distributed and centralized media access control device and method
US7502474B2 (en) * 2004-05-06 2009-03-10 Advanced Micro Devices, Inc. Network interface with security association data prefetch for high speed offloaded security processing
US7447225B2 (en) * 2004-07-23 2008-11-04 Cisco Technology, Inc. Multiple multicast forwarder prevention during NSF recovery of control failures in a router
US7624263B1 (en) * 2004-09-21 2009-11-24 Advanced Micro Devices, Inc. Security association table lookup architecture and method of operation
US7796614B1 (en) * 2004-11-30 2010-09-14 Symantec Corporation Systems and methods for message proxying
JP4821293B2 (ja) * 2004-12-09 2011-11-24 日本電気株式会社 加入者回線遠隔制御装置、加入者回線遠隔制御方法及び加入者回線遠隔制御プログラム
JP4199278B2 (ja) * 2005-03-01 2008-12-17 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. パケット中継システムおよびパケット中継装置
US7889681B2 (en) * 2005-03-03 2011-02-15 Cisco Technology, Inc. Methods and devices for improving the multiple spanning tree protocol
CN101171802B (zh) * 2005-03-04 2010-06-02 日本电气株式会社 网络节点,网络,产生在网络中传送信息的对应关系产生方法
US8565124B2 (en) * 2005-03-04 2013-10-22 Nec Corporation Node, network, correspondence relationship generation method and frame transfer program
US8194656B2 (en) * 2005-04-28 2012-06-05 Cisco Technology, Inc. Metro ethernet network with scaled broadcast and service instance domains
CN100488169C (zh) * 2005-11-11 2009-05-13 华为技术有限公司 一种桥接网络中的数据处理方法及一种桥接网络
US7894451B2 (en) * 2005-12-30 2011-02-22 Extreme Networks, Inc. Method of providing virtual router functionality
US7944853B2 (en) * 2006-01-06 2011-05-17 Belair Networks Inc. Virtual root bridge
WO2007094520A1 (ja) * 2006-02-16 2007-08-23 Nec Corporation ノード、ネットワークシステム、フレーム転送方法及びフレーム転送プログラム
JP4751817B2 (ja) * 2006-12-04 2011-08-17 富士通株式会社 パケット転送装置およびネットワークシステム
JP5100626B2 (ja) * 2008-12-12 2012-12-19 三菱電機株式会社 レイヤ2スイッチ
EP2395713A4 (en) * 2009-02-09 2014-12-31 Nec Corp COMMUNICATION SYSTEM, COMMUNICATION DEVICE, CONTROL DEVICE, CONTROL METHOD, AND PROGRAM
EP2667544B1 (en) * 2009-04-23 2016-10-26 Huawei Technologies Co., Ltd. Media access control bridging in a mesh network
US9294395B2 (en) 2009-04-23 2016-03-22 Futurewei Technologies, Inc. Media access control bridging in a mesh network
JP5407712B2 (ja) * 2009-09-30 2014-02-05 富士通株式会社 通信装置および通信制御方法
US9769016B2 (en) 2010-06-07 2017-09-19 Brocade Communications Systems, Inc. Advanced link tracking for virtual cluster switching
US9270486B2 (en) 2010-06-07 2016-02-23 Brocade Communications Systems, Inc. Name services for virtual cluster switching
US8867552B2 (en) 2010-05-03 2014-10-21 Brocade Communications Systems, Inc. Virtual cluster switching
US9716672B2 (en) 2010-05-28 2017-07-25 Brocade Communications Systems, Inc. Distributed configuration management for virtual cluster switching
US9628293B2 (en) 2010-06-08 2017-04-18 Brocade Communications Systems, Inc. Network layer multicasting in trill networks
US9806906B2 (en) 2010-06-08 2017-10-31 Brocade Communications Systems, Inc. Flooding packets on a per-virtual-network basis
US9807031B2 (en) 2010-07-16 2017-10-31 Brocade Communications Systems, Inc. System and method for network configuration
US9185018B2 (en) * 2010-10-22 2015-11-10 Brocade Communications Systems, Inc. Path diagnosis in communication networks
US8605732B2 (en) 2011-02-15 2013-12-10 Extreme Networks, Inc. Method of providing virtual router functionality
US9736085B2 (en) 2011-08-29 2017-08-15 Brocade Communications Systems, Inc. End-to end lossless Ethernet in Ethernet fabric
US9699117B2 (en) 2011-11-08 2017-07-04 Brocade Communications Systems, Inc. Integrated fibre channel support in an ethernet fabric switch
US9450870B2 (en) 2011-11-10 2016-09-20 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
US8995272B2 (en) 2012-01-26 2015-03-31 Brocade Communication Systems, Inc. Link aggregation in software-defined networks
US9742693B2 (en) 2012-02-27 2017-08-22 Brocade Communications Systems, Inc. Dynamic service insertion in a fabric switch
US9154416B2 (en) 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
US9374301B2 (en) 2012-05-18 2016-06-21 Brocade Communications Systems, Inc. Network feedback in software-defined networks
US10277464B2 (en) 2012-05-22 2019-04-30 Arris Enterprises Llc Client auto-configuration in a multi-switch link aggregation
US9401872B2 (en) 2012-11-16 2016-07-26 Brocade Communications Systems, Inc. Virtual link aggregations across multiple fabric switches
US9548926B2 (en) 2013-01-11 2017-01-17 Brocade Communications Systems, Inc. Multicast traffic load balancing over virtual link aggregation
US9413691B2 (en) 2013-01-11 2016-08-09 Brocade Communications Systems, Inc. MAC address synchronization in a fabric switch
US9350680B2 (en) 2013-01-11 2016-05-24 Brocade Communications Systems, Inc. Protection switching over a virtual link aggregation
US9565099B2 (en) 2013-03-01 2017-02-07 Brocade Communications Systems, Inc. Spanning tree in fabric switches
US9401818B2 (en) 2013-03-15 2016-07-26 Brocade Communications Systems, Inc. Scalable gateways for a fabric switch
US9699001B2 (en) 2013-06-10 2017-07-04 Brocade Communications Systems, Inc. Scalable and segregated network virtualization
US9806949B2 (en) 2013-09-06 2017-10-31 Brocade Communications Systems, Inc. Transparent interconnection of Ethernet fabric switches
US9912612B2 (en) 2013-10-28 2018-03-06 Brocade Communications Systems LLC Extended ethernet fabric switches
US9548873B2 (en) 2014-02-10 2017-01-17 Brocade Communications Systems, Inc. Virtual extensible LAN tunnel keepalives
US10581758B2 (en) 2014-03-19 2020-03-03 Avago Technologies International Sales Pte. Limited Distributed hot standby links for vLAG
US10476698B2 (en) 2014-03-20 2019-11-12 Avago Technologies International Sales Pte. Limited Redundent virtual link aggregation group
US10063473B2 (en) 2014-04-30 2018-08-28 Brocade Communications Systems LLC Method and system for facilitating switch virtualization in a network of interconnected switches
US9800471B2 (en) 2014-05-13 2017-10-24 Brocade Communications Systems, Inc. Network extension groups of global VLANs in a fabric switch
US10616108B2 (en) 2014-07-29 2020-04-07 Avago Technologies International Sales Pte. Limited Scalable MAC address virtualization
US9807007B2 (en) 2014-08-11 2017-10-31 Brocade Communications Systems, Inc. Progressive MAC address learning
US9699029B2 (en) 2014-10-10 2017-07-04 Brocade Communications Systems, Inc. Distributed configuration management in a switch group
US9626255B2 (en) 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Online restoration of a switch snapshot
US9628407B2 (en) 2014-12-31 2017-04-18 Brocade Communications Systems, Inc. Multiple software versions in a switch group
US9942097B2 (en) 2015-01-05 2018-04-10 Brocade Communications Systems LLC Power management in a network of interconnected switches
US10003552B2 (en) 2015-01-05 2018-06-19 Brocade Communications Systems, Llc. Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
US9807005B2 (en) 2015-03-17 2017-10-31 Brocade Communications Systems, Inc. Multi-fabric manager
US10038592B2 (en) 2015-03-17 2018-07-31 Brocade Communications Systems LLC Identifier assignment to a new switch in a switch group
US10579406B2 (en) 2015-04-08 2020-03-03 Avago Technologies International Sales Pte. Limited Dynamic orchestration of overlay tunnels
US10439929B2 (en) 2015-07-31 2019-10-08 Avago Technologies International Sales Pte. Limited Graceful recovery of a multicast-enabled switch
US10171303B2 (en) 2015-09-16 2019-01-01 Avago Technologies International Sales Pte. Limited IP-based interconnection of switches with a logical chassis
US9912614B2 (en) 2015-12-07 2018-03-06 Brocade Communications Systems LLC Interconnection of switches based on hierarchical overlay tunneling
US10237090B2 (en) 2016-10-28 2019-03-19 Avago Technologies International Sales Pte. Limited Rule-based network identifier mapping
CN106878176B (zh) * 2017-01-06 2019-12-06 新华三技术有限公司 一种报文转发方法及装置
US20180234407A1 (en) * 2017-02-14 2018-08-16 Quanta Computer Inc. Method for securely exchanging link discovery information
JP7492127B2 (ja) 2020-06-09 2024-05-29 富士通株式会社 通信装置及び通信方法
CN112737945B (zh) * 2020-12-30 2022-09-30 杭州迪普信息技术有限公司 服务器连接控制方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000286853A (ja) 1999-03-16 2000-10-13 Nortel Networks Ltd パケットをルーティングする方法および装置
US6480488B1 (en) * 1998-01-23 2002-11-12 Accton Technology Corporation Method and apparatus for sorting and transmitting data packets

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0624368B2 (ja) * 1988-11-19 1994-03-30 富士通株式会社 学習機能を持ったブリッジ方式
US5220562A (en) * 1989-05-12 1993-06-15 Hitachi, Ltd. Bridge apparatus and a communication system between networks using the bridge apparatus
US5999441A (en) * 1997-02-14 1999-12-07 Advanced Micro Devices, Inc. Random access memory having bit selectable mask for memory writes
US6049834A (en) * 1998-05-08 2000-04-11 Cisco Technology, Inc. Layer 3 switch unicast protocol
JP2000253015A (ja) * 1999-03-02 2000-09-14 Nippon Telegr & Teleph Corp <Ntt> パケット転送方法及び装置
US6515993B1 (en) * 1999-05-28 2003-02-04 Advanced Micro Devices, Inc. Method and apparatus for manipulating VLAN tags
US6639901B1 (en) * 2000-01-24 2003-10-28 3Com Corporation Apparatus for and method for supporting 802.1Q VLAN tagging with independent VLAN learning in LAN emulation networks
JP4168574B2 (ja) * 2000-06-02 2008-10-22 株式会社日立製作所 パケット転送装置、パケット転送制御方法、及びパケット転送装置の設定方法
US7002974B1 (en) * 2001-03-28 2006-02-21 Netrake Corporation Learning state machine for use in internet protocol networks
US6947419B2 (en) * 2001-06-12 2005-09-20 Acute Technology Corp. Apparatus for multicast forwarding in a virtual local area network environment
JP4236398B2 (ja) * 2001-08-15 2009-03-11 富士通株式会社 通信方法、通信システム及び通信接続プログラム
ATE488061T1 (de) * 2001-09-24 2010-11-15 Rumi Sheryar Gonda Verfahren zur unterstützung von ethernet-mac- schaltungen

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6480488B1 (en) * 1998-01-23 2002-11-12 Accton Technology Corporation Method and apparatus for sorting and transmitting data packets
JP2000286853A (ja) 1999-03-16 2000-10-13 Nortel Networks Ltd パケットをルーティングする方法および装置

Also Published As

Publication number Publication date
JP4182977B2 (ja) 2008-11-19
CA2437669A1 (en) 2004-08-19
CN101335705A (zh) 2008-12-31
WO2004075482A1 (ja) 2004-09-02
EP1601137A1 (en) 2005-11-30
TW200423609A (en) 2004-11-01
TWI302406B (ko) 2008-10-21
JPWO2004075482A1 (ja) 2006-08-10
US20040225725A1 (en) 2004-11-11
KR20050101347A (ko) 2005-10-21
CN1802818A (zh) 2006-07-12
EP1601137A4 (en) 2010-04-28

Similar Documents

Publication Publication Date Title
KR101010554B1 (ko) 네트워크 시스템, 런닝 브리지 노드, 런닝 방법 및 그프로그램
US8027348B2 (en) Frame transfer method and frame transfer device
US6633565B1 (en) Apparatus for and method of flow switching in a data communications network
JP4094658B2 (ja) フラッディング抑制方法
US7739405B2 (en) Multicast group management in infiniband
US7218632B1 (en) Packet processing engine architecture
US8000324B2 (en) Pipeline architecture of a network device
US6754211B1 (en) Method and apparatus for wire speed IP multicast forwarding
US7738385B2 (en) Mirroring of data in a network device
US7701936B2 (en) Obtaining path information related to a bridged network
US6556574B1 (en) Duplicate ignore delay timer for ARP like protocol messages using are protocol
US7489682B2 (en) Packet relay system
US20070097972A1 (en) Automatic VLAN ID discovery for ethernet ports
US20110075680A1 (en) Forwarding of Packets Based on a Filtered Forwarding Information Base
US8165038B2 (en) Network physical connection inference for IP tunnels
US10212069B2 (en) Forwarding of multicast packets in a network
JP2002508124A (ja) 多層スイッチング・ネットワーク要素中でパケット・フィールドを置換するための機構
US20090135833A1 (en) Ingress node and egress node with improved packet transfer rate on multi-protocol label switching (MPLS) network, and method of improving packet transfer rate in MPLS network system
US20030223358A1 (en) Protection switching at a network node
US20060153193A1 (en) Network routing control method and apparatus
US7145911B2 (en) Method and system for parallel hash transformation for an address input
US5905712A (en) Data communication network
KR100450942B1 (ko) 이더넷 스위치에서의 어드레스 서치 장치 및 방법
US20070076706A1 (en) Fast reroute in a multiprotocol label switching network
JP2003143178A (ja) デジタル伝送装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20131218

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141219

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151217

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee