KR20010011359A - 이더넷 스위치의 미디어 억세스 제어방법 - Google Patents

이더넷 스위치의 미디어 억세스 제어방법 Download PDF

Info

Publication number
KR20010011359A
KR20010011359A KR1019990030678A KR19990030678A KR20010011359A KR 20010011359 A KR20010011359 A KR 20010011359A KR 1019990030678 A KR1019990030678 A KR 1019990030678A KR 19990030678 A KR19990030678 A KR 19990030678A KR 20010011359 A KR20010011359 A KR 20010011359A
Authority
KR
South Korea
Prior art keywords
packet
transmission
ethernet switch
data terminal
frame
Prior art date
Application number
KR1019990030678A
Other languages
English (en)
Other versions
KR100353644B1 (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 윤종용
Priority to KR1019990030678A priority Critical patent/KR100353644B1/ko
Publication of KR20010011359A publication Critical patent/KR20010011359A/ko
Application granted granted Critical
Publication of KR100353644B1 publication Critical patent/KR100353644B1/ko

Links

Classifications

    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • H04L5/16Half-duplex systems; Simplex/duplex switching; Transmission of break signals non-automatically inverting the direction of transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6445Admission control
    • H04L2012/6448Medium Access Control [MAC]

Landscapes

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

Abstract

본 발명은 이더넷 스위치에서 이루어지는 미디어 억세스 제어방법을 반이중모드인 경우에는 패킷 메모리의 한계 도달에 대응하는 휴지 요구 명령이 있는 경우 잼 신호 송출 여부를 결정하여 잼 신호를 데이터 단말장치로 전송한 후 고속 백오프 시간이 경과하는 시점에서 패킷 메모리에 저장된 패킷을 송신하는 과정으로 구현하며, 전이중모드인 경우에는 패킷 메모리의 한계 도달에 대응하는 리모트 휴지 프레임을 전송하여 데이터 단말장치들의 패킷 송신을 차단하도록 한 후 패킷 메모리에 저장된 패킷을 송신하는 중에 휴지 프레임이 수신되는 경우 미디어 억세스 제어 레지스터의 특정 비트 값과 리모트 휴지 프레임의 엑티브 여부를 검사하여 패킷 송신 계속 여부를 결정하는 과정으로 구현함으로서 프레임의 손실률을 줄이고, 네트워크의 처리량을 증대시키는 효과를 얻을 수 있다.

Description

이더넷 스위치의 미디어 억세스 제어방법 {METHOD FOR MEDIUM ACCESS CONTROLLING IN ETHERNET SWITCH}
본 발명은 이더넷 스위치(Ethernet Switch)에서 이루어지는 미디어 억세스 제어방법에 관한 것으로, 특히 송신 및 수신되는 패킷의 손실 및 혼잡을 해결하는 방법을 제공함에 있다.
통상적으로 근거리통신망(LAN; Local Area Network)의 한 모델에 해당하는 이더넷(Ethernet)에서 이루어지는 통신 방식은 이더넷 스위치들간 또는 이더넷 스위치와 데이터 단말장치(DTE; Data Terminal Equipment)간에 패킷의 송신(transmit)과 수신(Receive)의 형태로 이루어진다.
여기서, 상기 DTE는 데이터 스테이션의 기능 단위로서 데이터 송신장치 및 데이터 수신장치로서의 기능을 수행하며, 링크 프로토콜에 따라 실행되는 통신 제어 기능을 갖추고 있는 장치를 가리킨다.
한편, 일반적으로 통신 시스템에서는 시스템에 대한 전체 통신 구조를 가지게 되는데, 그 대표적인 구조가 국제표준화기구(ISO; International Organization for Standardization)에서 발표한 오 에스 아이(OSI; Open Systems Interconnection) 참조 모델이다.
따라서, 상기 이더넷 또한 물리계층, 데이터 연결계층, 통신망계층, 수송계층, 세션계층, 표현계층, 응용계층으로 구성된 OSI 참조 모델을 기본 구조로 사용하고 있다. 특히, 이더넷을 구성하는 OSI 참조모델의 각 계층 중 데이터 연결계층은 하부의 물리적인 접속을 통해 통신망계층에서 신뢰성 있는 데이터를 전송하며, 프레임화, 데이터 바이트, 프레임 동기 및 오류 검출 기능 등을 포함한다. 이때 상기 데이터 연결계층에서 사용되는 프로토콜은 LAN의 전송 매체와 관련된 특별한 매체 접속 제어(Medium Access Control, 이하 "MAC"라 칭함) 방법을 수행한다.
한편, 상기 이더넷은 패킷의 송신과 수신에 있어서 패킷의 손실률(loss rate)을 줄이고, 혼잡을 해결(congestion resolution)하는 방법들을 가지게 된다. 그 대표적인 예가 백프레셔(backpressure) 방식과 휴지 프레임 전송(PAUSE frame transmission) 방식을 들 수 있다. 상기 백프레셔(backpressure) 방식은 MAC가 반이중모드(Half_Duplex mode)일 때 사용되며, 상기 휴지 프레임 전송(PAUSE frame transmission) 방식은 상기 MAC가 전이중모드(Full_Duplex mode)일 때 사용된다.
먼저, MAC가 반이중모드(Half_Duplex mode)일 때 사용되는 백프레셔(backpressure) 방식에 대해 도 1을 참조하여 살펴보도록 한다. 우선, 상기 반이중모드(Half_Duplex mode)는 송신과 수신이 하나의 전송로를 통하여 일어나는 경우로 소정의 통신국 또는 이더넷 스위치가 송신하는 동안에는 수신측 통신국 또는 이더넷 스위치는 수신만이 가능한 모드임을 밝혀둔다.
다수의 포트(Port1 내지 Port8)를 가지는 이더넷 스위치(110)가 한 포트(Port8)를 통해 패킷을 수신하는 중에 패킷 메모리(112)가 한계(threshold)에 도달하게 되면 외부 중앙처리장치(CPU) 또는 스위치 내부의 이더넷 제어부(Ethernet Controller Unit, 이하 "ECU"라 칭함)가 더 이상의 패킷을 저장할 수 없다고 판단하게 된다.
이를 판단한 상기 CPU 또는 ECU는 해당 포트(Port8)에서 충돌(collision)이 발생하였다고 간주하게끔 잼 신호(jam signal)의 출력을 요구하게 되며, 상기 요구를 받은 송신부(Tx)는 잼 신호를 모든 포트(Port1 내지 Port8)를 통해 상대측으로 보내게 된다.
이때, 상기 잼 신호는 일반적으로 32비트(32bits)가 전부 1로 구성된 프레임을 사용하며, 상기 충돌은 동일한 경로 상에서 패킷을 송신하는 중에 수신이 발생하여 송신 패킷과 수신 패킷간에 서로 충돌이 일어난 경우를 의미한다.
한편, 패킷 메모리(112)가 한계에 도달하게 됨에 따라 충돌이 발생한 것으로 간주하게 되면 해당 이더넷 스위치(110)는 충돌이 발생하였을 경우와 동일한 동작을 행하게 된다.
참고적으로 반이중모드에서 패킷 송신 중 충돌이 발생하는 경우 이루어지는 동작에 대해 간략하게 설명하면, 해당 이더넷 스위치(110)는 충돌이 발생한 포트(Port8)에 대응하는 DTE(120)로 잼 신호를 보낸 후 표준(standard)으로 규정된 프레임간 유지시간(IFG; Inter Frame Gap Time)이 경과한 뒤 백-오프 타임(back-off time)을 대기한 후 패킷 송신을 다시 시도한다.
상기 IFG 시간은 반이중모드에서 특정 스위치 또는 DTE의 채널독점현상을 방지하기 위해 규정된 시간을 의미한다. 즉, 이더넷 스위치 또는 DTE가 패킷의 송신을 완료한 후 다음 패킷을 연속하여 송신하지 못하고, 상기 IFG 시간이 경과하여야만 다음 패킷을 송신할 수 있도록 하고 있다. 예를 들어 10메가 비피에스(10Mbps)의 속도를 가지는 이더넷의 경우에는 9.6마이크로 세크(9.6μs)의 IFG 시간이 필요하며, 100메가 비피에스(100Mbps)의 속도를 가지는 이더넷의 경우에는 0.96마이크로 세크(0.96μs)의 IFG 시간이 필요하다.
상기 백-오프 타임은 충돌이 발생하여 잼 신호가 송신된 후 채널은 IFG 시간 동안 아이들(Idle)하게 된다. 이러한 아이들한 기간의 시작부터 충돌에 개입된 DTE(120)의 송신부는 랜덤하게 결정되는 정수값(random integer)에 슬롯 타임(slot time)을 곱한 시간 동안 대기한 후 반송파 검출 다중 접근(CSMA; Carrier Sense Multiple Access)/충돌 검출(CD; Collision Detection) 방식의 재전송을 시도한다. 예를 들어, 슬롯 타임이 512비트 타임인 경우에 백-오프 타임은 "512bit time×random integer"가 된다. 상기 비트 타임(bit time)은 케이블 상에서 1비트가 송신되는 시간을 1비트 타임이라 한다. 1슬롯 타임은 CAMA/CD 동작시 프리엠블(preamble)의 첫 비트가 송신된 시간부터 충돌 사실이 감지되어 전송을 중지할 수 있는 충분한 시간을 말하는데 보통 512비트 타임을 한 슬롯 타임이라 한다. 예를 들어 100Mbps로 동작하는 이더넷의 경우 클럭은 25메가 헤르쯔(MHz)를 사용하게 되는데, 이때 512비트 타임은 약 512나노 세크(512ns)가 된다.
한편, 상기 잼 신호를 수신한 상대방 단말은 패킷을 송신하던 중에 충돌이 발생하였다고 판단하여 IFG 시간과 백-오프 타임 동안 아이들(idle) 상태로 있다가 상기 시간이 경과하면 다시 패킷의 송신을 시작한다.
상기 패킷 메모리(112)가 한계에 도달한 이더넷 스위치(110)는 백-오프 타임 동안 패킷 메모리(112)에 저장된 패킷을 송신하여 패킷 메모리(112)를 비움으로서 다음 패킷을 수신하기 위한 준비를 하게 된다.
하지만, 공교롭게도 지금 수신되어지는 포트를 통하여 송신을 행하여야 하는 최악의 경우가 발생할 수 있다. 이때에는 이더넷 스위치의 송신포트와 DET간의 백-오프가 계속 진행되다가 충돌이 지속적으로 일어나는 형상이 발생할 수 있다.
즉, 이더넷 스위치가 백프레셔를 수행하게 되면 특정 포트가 아닌 전 포트에 대해 일어나기 때문에 네트워크의 휴지 상태가 발생하게 된다. 반드시 이러한 경우가 아니더라도 신속하게 송신을 행하여 패킷 메모리를 비우지 않으면 오랜 시간 동안 네트워크가 마비되는 경우가 생기게 된다.
다음으로, MAC가 전이중모드(Full_Duplex mode)일 때 패킷의 손실률과 혼잡을 해결하기 위해 사용되는 휴지 프레임 전송(PAUSE frame transmission) 방식에 대해 도 2를 참조하여 살펴보도록 한다. 우선, 상기 전이중모드(Full_Duplex mode)는 스위치와 스위치간의 연결 또는 통신국과 통신국간의 송신 및 수신이 동시에 가능할 수 있도록 전송로를 분리하여 사용하는 방식이다. 그리고, 전이중모드에서 사용되는 퍼지 프레임은 CSMA/CD 방식에서 사용되는 MAC 제어 프레임의 하나로 표준안 "IEEE 802.3x"에 정의되어 있다.
상기 전이중모드에서 사용되는 휴지 프레임 전송방식은 두 가지 관점에서 구분할 수 있다. 즉, 이더넷 스위치의 패킷 메모리가 한계에 도달한 리모트 퍼지(Remote Pause)인 경우와, DTE의 패킷 메모리가 한계에 도달한 퍼지(Pause)인 경우가 바로 그것이다. 따라서 아래에서는 이를 구분하여 설명하도록 한다.
먼저, 리모트 퍼지의 경우를 살펴보면, 특정한 하나의 포트를 통해 수신을 행하고 있을 때 패킷 메모리(도시하지 않았으나 스위치(210)내부에 구비됨)가 한계에 도달하여 더 이상의 패킷을 받아들일 수 없다고 CPU(230)나 ECU(212)가 판단했을 경우 송신부(Tx)(218)로 퍼지 프레임(pause frame)을 보낼 것을 명령한다(b 또는 c,d). 상기 명령을 받은 송신부(Tx)(218)는 일정한 포맷을 가지는 패킷(퍼지 프레임; pause frame)을 모든 상대측 DTE(220)로 보내어 이더넷 스위치(210)가 패킷을 받아들일 수 있을 때까지 패킷의 송신을 잠시 중단해줄 것을 요구하게 된다.
그 후 이더넷 스위치(210)는 패킷 메모리를 빨리 비우기 위해 패킷 메모리에 저장된 패킷을 지속적으로 송신할 것이며, 상대방(220)이 보내오는 패킷과 퍼지 프레임은 전혀 받지를 못한다.
이러 상황에서 상대방(220)의 패킷 메모리도 한계에 도달하게 되는 경우 이를 대처하기 위해 이더넷 스위치(210)로 퍼지 프레임을 송신하여야 하나 이더넷 스위치(210)에서는 이를 무시하고 패킷 송신을 계속할 것이다. 이때 이더넷 스위치(210)에서 패킷을 보내고자 하는 상대방(220)이 메모리 한계에 도달한 단말일 경우에 송신되는 패킷은 송신되는 중에 드롭(drop)됨에 따라 패킷 손실률이 증대하게 된다.
이와는 반대인 퍼지의 경우 상대방(220)이 퍼지 프레임을 보내게 되면 이를 감지한 수신부(Rx)(216)는 상대방(220)이 패킷 전송 일시 중지를 요구하였음을 송신부(Rx)(218)로 알리게 된다(a). 상기 송신부(Rx)(218)가 이를 감지하여 패킷 송신을 잠시 중단한 사이에 상대방 DTE(220)는 송신을 속개하여 한계에 도달한 메모리를 비우도록 한다.
하지만, 이러한 상황에서는 이더넷 스위치(210)의 패킷 메모리 마저 한계에 도달하여 더 이상 패킷을 받을 수 없어 퍼지 프레임을 상대방(220)으로 보낸다고 하더라도 DTE(220)는 이를 무시하고 계속 리모트 퍼지인 상태를 유지하여 송신만을 행한다. 따라서, 이더넷 스위치(210)와 DTE(220)간의 적절한 상호 연동 관계가 없어 패킷의 손실률만 높아질 수밖에 없었다.
따라서 상기한 바와 같은 문제점을 해결하기 위한 본 발명의 목적은 이더넷 스위치의 미디어 억세스 제어를 위한 일방적인 플로우 제어방법이 아닌 상호 연동적인 플로우 제어방법을 제공함에 있다.
본 발명의 다른 목적은 반이중모드의 이더넷 스위치에서 메모리 한계에 도달해 잼 신호를 송신한 후 지연하는 백-오프 타임을 줄임으로서 패킷 손실률을 향상시키는 방법을 제공함에 있다.
본 발명의 또 다른 목적은 전이중모드의 이더넷 스위치에서 리모트 퍼지가 발생한 상태에서 수신되는 퍼지 프레임을 패킷 손실이 최소가 되도록 처리하는 방법을 제공함에 있다.
본 발명의 또 다른 목적은 전이중모드의 이더넷 스위치에서 수신되는 퍼지 프레임에 따른 퍼지가 발생한 상태에서 메모리가 한계치에 도달할 시 패킷 손실이 최소가 되도록 처리하는 방법을 제공함에 있다.
상기한 바와 같은 목적을 달성하기 위한 제1견지에 따른 본 발명은 각 포트에 연결된 데이터 단말장치로부터 패킷을 수신하여 패킷 메모리에 저장하고, 상기 패킷 메모리의 한계 도달에 대응하는 휴지 요구 명령이 있는 경우 잼 신호 송출 여부를 결정하여 상기 결정된 결과에 의해 잼 신호를 상기 각 포트에 연결된 데이터 단말장치로 전송하며, 프레임간 유지시간이 경과된 후 고속 백오프 시간을 지연한 후 상기 패킷 메모리에 저장된 패킷을 해당 포트를 거쳐 데이터 단말장치로 송신하는 과정으로 이더넷 스위치의 미디어 억세스 제어방법을 구현하였다.
상기한 바와 같은 목적을 달성하기 위한 제2견지에 따른 본 발명은 각 포트에 연결된 수신 전송로를 통해 데이터 단말장치로부터 패킷을 수신하여 패킷 메모리에 저장하는 중에 상기 패킷 메모리가 한계에 도달하면 리모트 휴지 프레임을 상기 각 포트에 연결된 송신 전송로로 전송하여 상기 데이터 단말장치들의 패킷 송신을 차단하도록 하며, 상기 패킷 메모리에 저장된 패킷을 해당 포트에 연결된 송신 전송로를 통해 송신하여 상기 패킷 메모리를 비우고, 상기 패킷 송신 중에 어느 한 데이터 단말장치로부터 전송된 휴지 프레임이 수신되는 경우 미디어 억세스 제어 레지스터의 특정 비트 값과 상기 리모트 휴지 프레임의 엑티브 여부를 검사하여 상기 검사 결과에 의해 상기 휴지 프레임을 전송한 데이터 단말장치로의 패킷 송신 계속 여부를 결정하는 과정으로 이더넷 스위치의 미디어 억세스 제어방법을 구현하였다.
도 1은 매체 접속 제어가 반이중모드일 때 사용되는 백프레셔방식에서의 신호 처리 흐름을 도시한 도면.
도 2는 매체 접속 제어가 전이중모드일 때 사용되는 휴지 프레임 전송방식에서의 신호 처리 흐름을 도시한 도면.
도 3은 본 발명을 적용하기 위한 이더넷 스위치와 데이터 단말장치의 프로토콜 구성을 도시한 도면.
도 4는 본 발명의 일 실시 예에 따른 반이중모드에서 이더넷 스위치의 미디어 억세스 제어를 위한 구성을 도시한 도면.
도 5는 도 4에 도시한 각 구성간에 전송되는 신호 처리 흐름을 도시하고 있는 도면.
도 6은 본 발명의 일 실시 예에 따른 반이중모드의 이더넷 스위치에서 미디어 억세스 제어를 수행하기 위한 제어 흐름을 도시한 도면.
도 7은 본 발명의 일 실시 예에 따른 전이중모드에서 이더넷 스위치의 미디어 억세스 제어를 위한 구성을 도시한 도면.
도 8과 도 9는 리모트 퍼지를 수행하기 위해 도 7에 도시한 각 구성간에 전송되는 신호 처리 흐름을 도시한 도면.
도 10은 도 8과 도 9에서 도시하고 있는 신호 처리 흐름에 따른 제어 흐름을 도시한 도면.
도 11은 퍼지를 수행하기 위해 도 7에 도시한 각 구성간에 전송되는 신호 처리 흐름을 도시한 도면.
도 12는 도 11에서 도시하고 있는 신호 처리 흐름에 따른 제어 흐름을 도시한 도면.
이하 본 발명의 일 실시 예를 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다.
우선, 본 발명을 적용하기 위한 이더넷 스위치와 데이터 단말장치의 프로토콜 구성은 도 3에서 도시하고 있는 바와 같다. 상기 도 3을 참조하면, 상기 이더넷 스위치와 데이터 단말장치는 상위계층, 데이터 링크 계층(MAC) 및 물리계층으로 구성된다. 다시 말하면, 상기 이더넷 스위치와 데이터 단말장치는 상위계층의 데이터를 전달받아 프레임으로 조합한 후 실제적인 데이터의 전달이 일어나는 물리계층으로 데이터를 전달해 주는 데이터 링크 계층, 즉 매체 접속 제어(Medium Access Control, 이하 "MAC"라 칭함) 계층으로 구성을 포함한다. 한편, 상기 MAC는 크게 송신 블록(Transmit Block)과 수신 블록(Receive Block)으로 구성되며, 후술할 구성들은 상기 MAC에 의해 이루어진다고 할 수 있다.
본 발명의 일 실시 예에 따른 반이중모드에서 이더넷 스위치의 미디어 억세스 제어를 위한 구성은 도 4에서 도시하고 있는 바와 같다.
상기 도 4를 참조하여 구성을 설명하면, 수신부(Rx부)(310)는 DTE(10)로부터 전송되는 프레임을 수신하여 도면상에 도시하고는 있지 않지만 내부 메모리에 수신한 프레임을 저장하는 기능을 수행한다. ECU(20)는 본 발명에 따른 전반적인 동작을 제어한다. 특히 본 발명의 일 실시 예에 따른 이더넷 스위치의 미디어 억세스 제어를 위해 상기 내부 메모리를 체크하여 상기 내부 메모리가 한계치에 도달하였음을 감지하면 이를 알리는 잼 신호(jam signal)의 발생을 요구하는 백프레셔 인에이블 신호(backpressure enable signal)를 발생한다. MREG(330)는 상기 백프레셔 인에이블 신호(backpressure enable signal)를 제공받아 인에이블 비트를 셋 시킨다. 송신부(Tx부)(320)는 내부 메모리로부터 송신할 프레임을 읽어 해당 DTE(10)로 전송하기 위한 일련의 동작을 수행한다. 한편, 상기 Tx부(320) 내부에 구비된 잼신호 발생부(322)는 상기 ECU(20)로부터 백프레셔 인에이블 신호(backpressure enable signal)가 공급될 시 상기 MREG(330)의 인에이블 셋 여부를 검사하여 잼 신호를 발생한다. 고속 백-오프 수행부(324)는 상기 잼 신호가 발생된 후 이루어지는 백-오프를 고속으로 수행한다.
도 5는 본 발명의 일 실시 예를 위해 상기 도 4에서 도시하고 있는 ECU(20), MREG(330), Tx부(320) 및 DTE(10)간에 전송되는 신호 처리 흐름을 도시하고 있으며, 도 6은 본 발명의 일 실시 예에 따른 반이중모드의 이더넷 스위치에서 미디어 억세스 제어를 수행하기 위해 Tx부(320)에서 처리되는 제어 흐름을 도시한 도면이다.
본 발명의 일 실시 예에 따른 전이중모드에서 이더넷 스위치의 미디어 억세스 제어를 위한 구성은 도 7에서 도시하고 있는 바와 같다.
상기 도 7을 참조하여 구성을 설명하면, 수신부(Rx부)(310)는 DTE(10)로부터 전송되는 프레임을 수신하여 도면상에 도시하고는 있지 않지만 내부 메모리에 수신한 프레임을 저장하는 기능을 수행한다. ECU(20)는 본 발명에 따른 전반적인 동작을 제어한다. 특히 본 발명의 일 실시 예에 따른 전이중모드에서 이더넷 스위치의 미디어 억세스 제어를 위해 상기 내부 메모리를 체크하여 상기 내부 메모리가 한계치에 도달하였음을 감지하면 이를 알리는 퍼지 프레임의 발생을 요구하는 퍼지 프레임 요구 명령을 발생한다. 또한, 상기 ECU(20)는 메모리의 한계치가 해소되면 퍼지 프레임 해지 명령을 발생한다. MREG(330)는 상기 퍼지 프레임 요구 명령에 의해 퍼지 결정 비트를 인에이블 시키거나 디스에이블 시킨다. 송신부(Tx부)(320)는 내부 메모리로부터 송신할 프레임을 읽어 해당 DTE(10)로 전송하기 위한 일련의 동작을 수행한다. 한편, 상기 Tx부(320)는 상기 퍼지 프레임 송신 요구 명령을 받아 상기 MREG(330)의 인에이블 셋 여부를 검사하여 퍼지 프레임을 전송하며, 리모트 퍼지 상태에서 상대측 DTE(10)로부터 퍼지 프레임을 수신하면 상기 MREG(330)에 셋되어 있는 값과 리모트 퍼지신호가 엑티브 상태인지를 체크하여 리모트 퍼지 상태의 해제 여부를 결정한다.
도 8은 리모트 퍼지에 따른 퍼지 결정 비트가 인에이블되어 있는 상태에서 상대측 DTE(10)로부터 퍼지 프레임이 수신되는 경우에 있어서의 신호 처리 흐름을 도시하고 있으며, 도 9는 리모트 퍼지에 따른 퍼지 결정 비트의 인에이블이 해제된 상태에서 상대측 DTE(10)로부터 퍼지 프레임이 수신되는 경우에 있어서의 신호 처리 흐름을 도시하고 있다. 한편, 상기한 도 8과 도 9의 신호 처리 흐름에 따라 송신부(320)에서 수행하는 제어 처리 흐름은 도 10에서 개시하고 있는 바와 같다.
한편, 도 11은 퍼지 프레임 수신에 따른 퍼지 결정 비트가 인에이블되어 있는 상태에서 메모리가 한계치에 도달하는 경우에 있어서의 신호 처리 흐름을 도시하고 있으며, 도 12는 상기 도 11의 상황에서 송신부(320)가 수행하는 제어 흐름을 도시한 도면이다.
이하 상기한 구성을 참조하여 본 발명의 바람직한 일 실시 예에 따른 동작을 상세히 설명하면 다음과 같다.
한편, 본 발명의 바람직한 일 실시 예에 따른 동작을 설명함에 있어 반이중방식에 따른 동작과 전이중방식에 따른 동작을 구분하여 설명할 것이며, 상기 전이중방식에 따른 동작을 설명함에 있어서도 두 가지 관점에서 구분할 수 있다. 즉, 이더넷 스위치의 패킷 메모리가 한계에 도달한 리모트 퍼지(Remote Pause)인 경우와, DTE의 패킷 메모리가 한계에 도달한 퍼지(Pause)인 경우가 바로 그것이다. 따라서 상기 전이중방식에 따른 동작을 설명함에 있어 이를 구분하여 설명하도록 한다.
첫 번째로 반이중방식에 따른 동작을 상세히 설명하도록 하며, 앞에서도 밝힌 바와 같이 상기 반이중방식으로 동작할 때의 흐름 제어는 백프레셔(Backpressure) 방식에 의해 이루어진다.
Tx부(320)는 도 6의 610단계에서 백프레셔 인에이블 신호(backpressure enable signal)가 ECU(20)로부터 수신되는 가를 감시한다. 상기 백프레셔 인에이블 신호(backpressure enable signal)는 더 이상 패킷을 수신할 수 없으므로 이를 DTE(10)로 알리기 위한 잼 신호(jam signal)의 전송을 요구하는 신호이다.
상기 ECU(20)로부터 백프레셔 인에이블 신호가 발생되는 경우를 살펴보면, DTE(10)로부터 송신된 패킷(도 4에 도시한 "??")은 Rx부(310)를 거쳐 도 4에는 도시하지 않았으나 패킷 메모리에 저장되게 된다. 상기 패킷 메모리는 수신되는 패킷을 저장함과 동시에 저장되는 패킷에 의해 메모리가 한계치에 도달하는 가를 감시하며, 상기 한계치에 도달함에 따라 더 이상의 패킷을 저장할 수 없을 경우가 발생하면 이를 ECU(20)에 알리게 된다. 상기 ECU(20)는 패킷 메모리가 한계치에 도달하였음을 감지하면 더 이상 패킷을 수신하지 못하도록 하기 위해 백프레셔 인에이블 신호를 발생하게 되는 것이다.(도 4에 도시한 "??")
상기한 동작에 의해 ECU(20)로부터 발생된 백프레셔 인에이블 신호는 도 5의 510단계에서 나타낸 바와 같이 MREG(330)의 인에이블 비트를 셋(set)시키기 위해 제공될 뿐 아니라 도 5의 512단계에서 상기 Tx부(320)로 제공된다. 상기 인에이블 비트에 기록된 신호는 상기 Tx부(320)가 상기 ECU(20)로부터 제공되는 백프레셔 인에이블 신호를 인정할 것인지를 판단하는 정보로서 사용된다.
상기 백프레션 인에이블 신호를 수신한 Tx부(320)는 도 6의 612단계에서 상기 MREG(330)의 인에이블 비트의 정보를 읽어(도 4에 도시한 "??") 상기 ECU(20)로부터 제공받은 백프레셔 인에이블 신호와 비교함으로서 이를 인정할 것인지를 검증한다.
상기 612단계에서 상기 ECU(20)로부터 제공받은 백프레셔 인에이블 신호가 검증이 되면 상기 Tx부(320)는 내부에 구비된 잼신호 발생부(322)를 통해 잼신호를 발생한다. 상기 발생된 잼신호는 도 6의 614단계(도 5의 516단계)에서 도 4에 도시한 "??"의 경로를 통해 DTE(10)로 전송된다. 상기 잼신호를 수신한 DTE(10)는 경로상에서 패킷간에 충돌이 발생한 것으로 감지하여 패킷 송신을 중지한 후 백-오프를 수행한다.
이에 반하여 상기 Tx부(320)는 상기 614단계에서 내부에 구비된 고속 백-오프 수행부(324)를 통해 고속 백-오프를 구동하게 되는데, 상기 고속 백-오프는 상기 DTE(10)에서 수행하는 정상적인 백-오프와는 시간적인 차이를 가진다. 즉, 상기 DTE(10)에서 수행되는 백-오프 시간은 앞에서도 개시한 바와 같이 정상적인 64바이트(byte)의 한 프레임이 전송되는데 필요한 512비트 타임에 전송 시도 횟수 중의 하나에 해당하는 랜덤(random)한 정수를 곱한 값에 의해 결정된다. 하지만, 상기 고속 백-오프 시간은 512비트 타임이 아닌 12비트 타임에 전송 시도 횟수 중의 하나에 해당하는 랜덤(random)한 정수를 곱한 값에 의해 결정된다.
따라서, 고속 백-오프로 동작하는 상기 Tx부(320)가 정상적인 백-오프를 수행하는 DTE(10)보다 백-오프를 먼저 종료하게 된다. 상기 Tx부(320)의 고속 백-오프 수행부(324)에서 수행되는 고속-백-오프의 종료는 도 6의 616단계에서 감지된다. 상기 고속 백-오프의 종료를 감지한 Tx부(320)는 도 6의 618단계로 진행하여 한계치에 도달한 패킷 메모리에 저장된 패킷을 독출하여 해당 DTE(10)로 전송한다.(도 5의 518단계)
즉, 본 발명에서는 상기 Tx부(320)에서 수행하는 백-오프 시간을 줄임으로서 패킷 메모리에 저장된 패킷의 처리를 신속하게 할 수 있어 패킷 전송 중지 상태를 보다 빨리 해결할 수 있다. 또한, 스위치와 상기 스위치의 각 포트에 연결된 DTE들로 구성된 네트워크에서 패킷 손실률과 네트워크 전반의 처리량을 개선할 수 있다.
두 번째로 전이중방식으로 동작하는 상태에서 이더넷 스위치의 패킷 메모리가 한계에 도달함에 따른 리모트 퍼지(Remote Pause)의 경우에 있어 동작을 상세히 설명하도록 한다.
TX부(320)는 도 10의 1010단계에서 퍼지 프레임의 송신을 요구하는 명령이 ECU(20)로부터 수신되는 가를 감시한다. 상기 퍼지 프레임 송신 요구 명령은 더 이상 패킷을 수신할 수 없으므로 이를 DTE(10)로 알리기 위한 퍼지 프레임의 전송을 요구하는 명령이다.
상기 ECU(20)로부터 퍼지 프레임 송신 요구 명령이 발생되는 경우를 살펴보면, DTE(10)로부터 송신된 패킷은 Rx부(310)를 거쳐 도면상에는 도시하고 있지 않지만 패킷 메모리에 저장되게 된다. 상기 패킷 메모리는 수신되는 패킷을 저장함과 동시에 저장되는 패킷에 의해 메모리가 한계치에 도달하는 가를 감시하며, 상기 한계치에 도달함에 따라 더 이상의 패킷을 저장할 수 없을 경우가 발생하면 이를 ECU(20)에 알리게 된다. 상기 ECU(20)는 패킷 메모리가 한계치에 도달하였음을 감지하면 더 이상 패킷을 수신하지 못하도록 하기 위해 퍼지 프레임 송신 요구를 발생하게 되는 것이다.(도 8의 810단계 및 도 9의 910단계)
상기 퍼지 프레임 송신 요구 명령을 수신한 TX부(320)는 1012단계에서 퍼지 프레임을 생성하여 DTE(10)로 전송한다. 이는 도 8의 812단계와 도 9의 912단계에서 도시하고 있다. 한편, 상기 퍼지 프레임 송신을 요구한 ECU(20)는 도 8의 814단계와 도 9의 914단계에서 프레임의 수신 여부를 결정하는 비트(ignore_pause bit)를 인에이블 시켜 더 이상 상기 DTE(10)로부터 전송되는 프레임을 수신하지 않는다.
한편, 상기 Tx부(320)는 도 10의 1014단계에서 메모리에 저장되어 있는 프레임을 DTE(10)로 일방적인 전송을 개시한다. 이는 한계치에 도달해 있는 메모리를 비우기 위한 동작으로 도 8의 816단계와 도 9의 916단계에서 개시하고 있다. 상기 프레임을 전송하는 중에 상기 Tx부(320)는 도 10의 1016단계에서 DTE(10)로부터 수신되는 퍼지 프레임이 있는 가를 감시한다.
이때, 상기 Tx부(320)는 프레임을 전송하는 중에 퍼지 프레임을 수신하게 되면 현재 설정된 ignore_pause bit를 체크한다. 이는 메모리가 한계치에서 벗어나 프레임의 수신이 가능한지를 체크하기 위한 과정이다. 만약, 상기 도 1014단계의 수행에 의해 메모리가 프레임을 수신?? 수 있는 정도의 영역을 확보하게 되었다면 상기 ignore_pause bit는 디스에이블되어 되어 있을 것이며, 그렇지 않고 계속 한계치 상태에 있다면 상기 ignore_pause bit는 인에이블되어 있을 것이다. 상기 ignore_pause bit를 인에이블 시키거나 디스에이블 시키는 것은 앞에서도 설명한 바와 같이 ECU(20)에 의해 이루어진다. 상기 ignore_pause bit를 디스에이블 시키는 동작은 도 9의 918단계에서 개시하고 있다.
상기 Tx부(320)는 상기 ignore_pause bit를 읽는 동작을 도 10의 1018단계에서 수행하며, 상기 1018단계에서 읽어 들인 ignore_pause bit에 의해 인에이블 여부를 판단하는 동작을 도 10의 1020단계에서 수행한다.
상기 1020단계에서 상기 ignore_pause bit가 인에이블되어 있다고 판단하면 상기 Tx부(320)는 1022단계로 진행하며 현재 리모트 퍼지신호가 지속적으로 엑티브 상태에 있는 가를 판단한다. 상기 1020단계와 1022단계에서 ignore_pause bit가 인에이블되어 있고 리모트 퍼지 액티브 상태가 유지되고 있으면 상기 Tx부(320)는 프레임의 수신할 수 있는 상태가 아니라고 판단하여 상기 1014단계로 진행하여 프레임의 송신을 계속 수행한다.(도 8의 824단계) 상기 Tx부(320)는 ignore_pause bit를 MREG(330)로 요구하게 되며, 상기 MREG(330)는 상기 요구에 의해 설정되어 있는 ignore_pause bit를 제공하게 된다. 이는 도 8의 820단계와 822단계에서 개시하고 있으며, 도 9에서는 922단계와 924단계에서 개시하고 있다. 상기 820단계와 822단계에서 수행되는 동작은 ignore_pause bit가 인에이블되어 있는 경우를 예로 하고 있으며, 상기 922단계와 924단계에서 수행되는 동작은 ignore_pause bit가 디스에이블되어 있는 경우를 예로 하고 있다.
하지만, 상기 1020단계에서 ignore_pause bit가 디스에이블되어 있다고 판단되거나 상기 1022단계에서 리모트 퍼지신호가 엑티브 상태가 아니라고 판단되는 경우에는 1024단계로 진행하여 퍼징 수행신호를 송신한다. 상기 퍼징 수행신호는 상기 1016단계에서 감지한 퍼지 프레임에 대응하여 송신하는 신호로서 상기 퍼지 프레임을 송신한 DTE(10)로 퍼지 기능을 수행하도록 허락하는 신호이다. 따라서, 상기 퍼징 수행신호는 해당 DTE(10)로 제공되어 해당 DTE(10)가 퍼지 기능에 의해 프레임 전송을 수행하게 된다.
즉, 상술한 바와 같이 본 발명에서는 리모트 퍼지에 따른 동작을 수행하는 중에 퍼지 프레임이 수신되는 경우 일방적으로 수신한 퍼지 프레임을 무시하지 않고, 메모리의 상태를 체크하여 상대측의 퍼지 요구를 선별하여 수용함으로서 네트워크에서의 패킷 손실률과 네트워크 전반의 처리량을 개선할 수 있다.
세 번째로 전이중방식으로 동작하는 상태에서 DTE의 패킷 메모리가 한계에 도달함에 따른 퍼지(Pause)의 경우에 있어 동작을 상세히 설명하도록 한다.
Tx부(320)는 도 12의 1210단계에서 패킷 송신을 수행하며, 상기 패킷 송신이 수행되는 중에 1212단계를 통해 퍼지 프레임의 수신을 감시한다.(도 11의 1110단계 내지 1112단계) 상기 퍼지 프레임은 상대측의 DTE(10)로부터 수신되며, 이는 더 이상 프레임을 수신할 수 없으므로 프레임의 송신 중지를 요구하는 프레임이다.
따라서, 상기 Tx부(320)는 퍼지 프레임을 수신하게 되면 상기 1214단계에서 수행하던 패킷 송신 동작을 중단한 후 퍼지상태로 진입하여 프레임의 수신만을 수행한다. 상기 퍼지상태로 진입하면 상기 Tx부(320)는 1216단계에서 자신의 메모리가 한계치에 도달함에 따른 퍼지 프레임 송신 요구가 ECU(20)로부터 발생되는 가를 감시한다. 상기 퍼지 프레임 송신 요구가 발생되면 상기 Tx부(320)는 1218단계로 진행하여 퍼지 결정 비트 ignore_pause bit를 MREG(330)로 요구하여 읽는다. 이는 도 11의 1118단계와 1120단계에서 도시하고 있다. 상기 1218단계에서 ignore_pause bit를 제공받은 tX부(320)는 1220단계로 진행하여 상기 ignore_pause bit가 인에이블되어 있는 지를 판단한다. 상기 ignore_pause bit가 인에이블되어 있다는 것은 앞에서도 개시한 바와 같이 퍼지상태로 전환하여야 함을 의미한다. 상기 1220단계에서 상기 ignore_pause bit가 인에이블되어 있다고 판단되는 경우 상기 Tx부(320)는 1224단계로 진행하여 퍼지 프레임을 DTE(10)로 송신한 후 1224단계에서 일방적인 패킷 프레임의 송신 동작을 수행한다. 하지만, 상기 1220단계에서 상기 ignore_pause bit가 디스에이블되어 있다고 판단되는 경우에는 상기 Tx부(320)는 1226단계로 진행하여 상대 DTE(10)로 인해 발생한 퍼지상태를 그대로 유지하게 된다.
상술한 바와 같이 본 발명은 반이중모드에서 송신측에서 수행하는 백-오프 시간을 줄임으로서 패킷 메모리에 저장된 패킷의 처리를 신속하게 할 수 있어 패킷 전송 중지 상태를 보다 빨리 해결할 수 있으며, 스위치와 스위치의 각 포트에 연결된 DTE들로 구성된 네트워크에서 패킷 손실률과 네트워크 전반의 처리량을 개선할 수 있다.
또한, 본 발명은 전이중모드에서는 리모트 퍼지에 따른 동작을 수행하는 중에 퍼지 프레임이 수신되는 경우 일방적으로 수신한 퍼지 프레임을 무시하지 않고, 메모리의 상태를 체크하여 상대측의 퍼지 요구를 선별하여 수용함으로서 네트워크에서의 패킷 손실률과 네트워크 전반의 처리량을 개선할 수 있다.

Claims (6)

  1. 반이중모드의 이더넷 스위치에서 미디어 억세스 제어를 수행하기 위해 방법에 있어서,
    각 포트에 연결된 데이터 단말장치로부터 패킷을 수신하여 패킷 메모리에 저장하는 수신과정과,
    상기 패킷 메모리의 한계 도달에 대응하는 휴지 요구 명령이 있는 경우 잼 신호 송출 여부를 결정하는 판단과정과,
    상기 판단과정의 결과에 의해 잼 신호를 상기 각 포트에 연결된 데이터 단말장치로 전송하는 전송과정과,
    프레임간 유지시간이 경과된 후 고속 백오프 시간을 카운트하는 지연과정과,
    상기 고속 백오프 시간의 카운트가 완료될 시 상기 패킷 메모리에 저장된 패킷을 해당 포트를 거쳐 데이터 단말장치로 송신하는 송신과정으로 이루어짐을 특징으로 하는 이더넷 스위치의 미디어 억세스 제어방법.
  2. 제1항에 있어서, 상기 판단과정은,
    외부 중앙처리장치로부터 제공되는 휴지 요구 명령과 상기 외부 중앙처리장치에 의해 미디어 억세스 제어 레지스터에 설정된 인에이블 비트 값을 비교하여 동일할 시 잼 신호 송출을 결정함을 특징으로 하는 이더넷 스위치의 미디어 억세스 제어방법.
  3. 제2항에 있어서,
    상기 고속 백오프 시간은 12 비트 타임에 전송 시도 횟수 중 일정치 않는 어느 한 정수를 곱한 시간임을 특징으로 하는 이더넷 스위치의 미디어 억세스 제어방법.
  4. 전이중모드의 이더넷 스위치에서 미디어 억세스 제어를 수행하기 위해 방법에 있어서,
    각 포트에 연결된 수신 전송로를 통해 데이터 단말장치로부터 패킷을 수신하여 패킷 메모리에 저장하는 제1과정과,
    상기 패킷 메모리가 한계에 도달하면 리모트 휴지 프레임을 상기 각 포트에 연결된 송신 전송로로 전송하여 상기 데이터 단말장치들의 패킷 송신을 차단하도록 하는 제2과정과,
    상기 리모트 휴지 프레임을 전송한 후 상기 패킷 메모리에 저장된 패킷을 해당 포트에 연결된 송신 전송로를 통해 송신하여 상기 패킷 메모리를 비우는 제3과정과,
    상기 패킷 송신 중에 어느 한 데이터 단말장치로부터 전송된 휴지 프레임이 수신되는 경우 미디어 억세스 제어 레지스터의 특정 비트 값과 상기 리모트 휴지 프레임의 엑티브 여부를 검사하는 제4과정과,
    상기 제4과정의 검사 결과에 의해 상기 휴지 프레임을 전송한 데이터 단말장치로의 패킷 송신 계속 여부를 결정하는 제5과정으로 이루어짐을 특징으로 하는 이더넷 스위치의 미디어 억세스 제어방법.
  5. 제4항에 있어서,
    상기 데이터 단말장치들의 패킷 송신을 차단은 상기 패킷 메모리가 패킷을 저장할 수 있을 때까지 유지함을 특징으로 하는 이더넷 스위치의 미디어 억세스 제어방법.
  6. 제5항에 있어서, 상기 제5과정은,
    상기 특정 비트 값이 셋되어 있고, 상기 리모트 휴지 프레임이 엑티브되어 있으면 상기 휴지 프레임을 무시하고, 상기 데이터 단말장치로의 패킷 송신 계속 수행함을 특징으로 하는 이더넷 스위치의 미디어 억세스 제어방법.
KR1019990030678A 1999-07-27 1999-07-27 이더넷 스위치의 미디어 억세스 제어방법 KR100353644B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990030678A KR100353644B1 (ko) 1999-07-27 1999-07-27 이더넷 스위치의 미디어 억세스 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990030678A KR100353644B1 (ko) 1999-07-27 1999-07-27 이더넷 스위치의 미디어 억세스 제어방법

Publications (2)

Publication Number Publication Date
KR20010011359A true KR20010011359A (ko) 2001-02-15
KR100353644B1 KR100353644B1 (ko) 2002-09-26

Family

ID=19605110

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990030678A KR100353644B1 (ko) 1999-07-27 1999-07-27 이더넷 스위치의 미디어 억세스 제어방법

Country Status (1)

Country Link
KR (1) KR100353644B1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742760A (en) * 1992-05-12 1998-04-21 Compaq Computer Corporation Network packet switch using shared memory for repeating and bridging packets at media rate
US5909564A (en) * 1997-03-27 1999-06-01 Pmc-Sierra Ltd. Multi-port ethernet frame switch

Also Published As

Publication number Publication date
KR100353644B1 (ko) 2002-09-26

Similar Documents

Publication Publication Date Title
US5404353A (en) Dynamic defer technique for traffic congestion control in a communication network bridge device
EP0529774B1 (en) Method and apparatus for traffic congestion control in a communication network bridge device
US5432775A (en) Auto negotiation system for a communications network
US6192422B1 (en) Repeater with flow control device transmitting congestion indication data from output port buffer to associated network node upon port input buffer crossing threshold level
US5905870A (en) Arrangement for initiating and maintaining flow control in shared-medium, full-duplex, and switched networks
US5568476A (en) Method and apparatus for avoiding packet loss on a CSMA/CD-type local area network using receive-sense-based jam signal
US6198722B1 (en) Flow control method for networks
EP0772326B1 (en) Full duplex flow control for ethernet networks
JP3671057B2 (ja) ネットワークアダプターにおけるパケットの自動再送信のための方法及び装置
US6014087A (en) Variable contention transmission media access based on idle waiting time
JPH07307977A (ja) 通信方法及び通信装置
EP0830768A1 (en) Enhancements to 802.3 media access control and associate signaling schemes for full duplex ethernet
JPH07193585A (ja) 通信アクセス制御方法および通信制御装置
US6928055B2 (en) Network interface unit
JP4022017B2 (ja) Lan中継装置
US8149703B2 (en) Powerline network bridging congestion control
KR100500515B1 (ko) 패킷 플로 제어 장치 및 방법
KR100353644B1 (ko) 이더넷 스위치의 미디어 억세스 제어방법
US20060013137A1 (en) Network interface unit
US20050141544A1 (en) Media access controller
WO1997011540A1 (en) Method and apparatus for controlling flow of incoming data packets by target node on an ethernet network
JP3755430B2 (ja) 送信装置
KR100436749B1 (ko) 8선 또는 4선식 이더넷 시스템을 2선으로 통신이가능하도록 하는 외장형 장치
JP2536656B2 (ja) 端末インタフェイス装置
KR20040103244A (ko) 반이중 통신방식 이더넷에서 백 프레셔를 이용한 흐름제어방법

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: 20080804

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee