KR100735408B1 - 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치 - Google Patents

이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치 Download PDF

Info

Publication number
KR100735408B1
KR100735408B1 KR1020040016299A KR20040016299A KR100735408B1 KR 100735408 B1 KR100735408 B1 KR 100735408B1 KR 1020040016299 A KR1020040016299 A KR 1020040016299A KR 20040016299 A KR20040016299 A KR 20040016299A KR 100735408 B1 KR100735408 B1 KR 100735408B1
Authority
KR
South Korea
Prior art keywords
service class
frame
traffic
transmission stop
data buffer
Prior art date
Application number
KR1020040016299A
Other languages
English (en)
Other versions
KR20040080367A (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 KR1020040016299A priority Critical patent/KR100735408B1/ko
Publication of KR20040080367A publication Critical patent/KR20040080367A/ko
Application granted granted Critical
Publication of KR100735408B1 publication Critical patent/KR100735408B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • 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/40Bus networks
    • H04L12/40143Bus networks involving priority mechanisms
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/266Stopping or restarting the source, e.g. X-on or X-off
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • H04L47/323Discarding or blocking control packets, e.g. ACK packets
    • 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/50Overload detection or protection within a single switching element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements

Abstract

본 발명은 서비스 클래스(Class of Service : CoS)를 고려한 이더넷 프레임의 효율적인 흐름 제어를 위한 이더넷(Ethernet) 기반의 네트워크에서 서비스 클래스별 트래픽의 스위칭 제어 방법 및 그 스위칭 장치에 관한 것으로서, 이는 적어도 하나의 소스 노드로부터 수신되는 이더넷 프레임을 적어도 하나의 목적지 노드로 전송하는 과정에서 상기 이더넷 프레임의 트래픽 흐름을 제어하는 스위칭 제어 방법에 있어서, 상기 소스 노드로부터 서비스 클래스별로 지정되는 소정 우선순위정보를 포함하는 상기 이더넷 프레임을 수신하는 과정과, 상기 수신된 이더넷 프레임을 상기 우선순위정보에 대응하는 서비스 클래스별로 구분된 데이터 버퍼에 해당 서비스 클래스에 따라 저장하는 과정과, 상기 데이터 버퍼에 저장된 현재 데이터 크기와 트래픽 혼잡 상태를 구별하는 소정 임계값을 비교하는 과정과, 상기 데이터 버퍼에 저장된 현재 데이터 크기가 상기 임계값 이상이면 상기 서비스 클래스 값을 포함하는 소정 전송중단 프레임을 생성하는 과정과, 상기 전송중단 프레임을 상기 이더넷 프레임이 전달된 입력 포트를 통해 상기 소스 노드로 전송하는 과정을 포함함을 특징으로 한다.
CoS, DSCP, 이더넷, 이더넷 프레임, 패킷, 스위칭, 트래픽, 혼잡

Description

이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의 스위칭 제어 방법 및 그 스위칭 장치{METHOD AND APPARATUS FOR CONTROLLING A TRAFFIC SWITCHING OPERATION BASED ON A SERVICE CLASS IN AN ETHERNET-BASED NETWORK}
도 1a는 일반적인 이더넷 스위치가 연결되는 이더넷의 개략적인 망 구성을 나타낸 도면
도 1b는 도 1a에 도시 된 일반적인 이더넷 스위치의 내부 구성을 나타낸 블록 구성도
도 2는 도 1b에 도시 된 공유 메모리의 구조를 간략히 나타낸 도면
도 3은 일반적인 포즈 프레임의 데이터 포맷 나타낸 도면
도 4는 본 발명의 실시예에 따른 이더넷 스위치의 내부 구성을 나타낸 블록 구성도
도 5는 도 4에 도시 된 공유 메모리의 구조를 나타낸 블록 구성도
도 6은 본 발명의 실시예에 따른 전송중단 프레임의 데이터 포맷을 나타낸 도면
도 7은 도 5에 도시 된 레지스터들의 초기 설정 절차를 설명하기 위한 플로우챠트
도 8은 본 발명의 실시예에 따라 서비스 클래스별 이더넷 프레임을 수신하는 경우 스위칭 제어 과정을 설명하기 위한 플로우챠트
도 9는 본 발명의 실시예에 따라 서비스 클래스별 이더넷 프레임을 목적지 노드로 송신하는 경우 스위칭 제어 과정을 설명하기 위한 플로우챠트
도 10은 본 발명의 실시예에 따른 전송중단 종료 과정을 설명하기 위한 플로우챠트
도 11은 본 발명의 실시예에 따른 트래픽 정상 상태에서 스위칭 제어 과정을 설명하기 위한 흐름도
도 12는 본 발명의 실시예에 따른 트래픽 혼잡 상태에서 전송 중단 실행 시 스위칭 제어 과정을 설명하기 위한 흐름도
본 발명은 네트워크 상의 트래픽 스위칭 방법 및 그 장치에 관한 것으로, 특히 서비스 클래스(Class of Service : CoS)를 고려한 이더넷 프레임의 효율적인 흐름 제어를 위한 이더넷(Ethernet) 기반의 네트워크에서 서비스 클래스별 트래픽의 스위칭 제어 방법 및 그 스위칭 장치에 관한 것이다.
일반적으로 통신 네트워크 상에서 스위칭 시스템은 복수의 소스 노드(Source Node)들로부터 수신되는 전송 데이터를 복수의 목적지 노드(Destination Node)들 중 원하는 적어도 하나의 노드로 전송하기 위한 네트워크 스위치를 포함한다.
상기와 같은 스위칭 시스템의 대표적인 예로는, IEEE(Institute of Electrical and Electronics Engineers) 802.3에서 규정하는 이더넷(Ethernet)을 들 수 있다. 상기 이더넷에서는 네트워크 스위치 중 잘 알려진 이더넷 스위치(Ethernet Switch)를 통해 2 계층(Layer 2)의 데이터 포맷인 이더넷 프레임(Ethernet Frame)의 흐름 제어(flow Control)가 이루어진다.
도 1a는 일반적인 이더넷 스위치가 연결되는 이더넷의 개략적인 망 구성을 나타낸 도면이다.
상기 도 1a에 도시된 바와 같이 이더넷 스위치(100)는 복수의 소스 노드(2001~200m : 200)와 목적지 노드(3001~300n : 300) 사이에 연결되어 이더넷 프레임의 헤더 정보에 포함된 MAC(Medium Access Control) 주소를 근거로 데이터의 전송 경로를 스위칭하게 된다. 그리고 일반적으로 이더넷 스위치(100)는 양 방향 전송을 수행하므로 상기 소스 노드(200)와 목적지 노드(300)의 위치는 도 1과 같이 고정되는 것은 아니나 설명의 편의상 좌측 방향에서 우측 방향으로의 데이터 전송을 가정하여 소스 노드(200)와 목적지 노드(300)의 위치를 도 1과 같이 표시하기로 한다.
따라서 상기 소스 노드(200)는 이더넷 스위치(100)로 이더넷 프레임을 송신하는 입력 노드로 구분되고, 상기 목적지 노드(300)는 이더넷 스위치(100)로부터 이더넷 프레임을 수신하는 출력 노드로 구분된다. 그리고 본 발명에서 상기 이더넷 스위치(100)를 통해 스위칭 되는 트래픽(traffic)의 종류는 크게 음성(voice) 트래픽과 데이터(data) 트래픽으로 가정한다.
도 1b는 도 1a에 도시 된 일반적인 이더넷 스위치(100)의 내부 구성을 나타낸 블록 구성도이다.
도 1b에서 상기 이더넷 스위치(100)는 각각 소스 및 목적지 노드(200, 300)와 이더넷을 통해 접속하기 위한 적어도 하나의 제1 및 제2 네트워크 인터페이스(Network Interface)(1101~110m : 110)(1601~160n : 160)과, 상기 제1 또는 제2 네트워크 인터페이스(110, 160)와 스위칭 메인 모듈(Switching Main Module)(130) 사이에 접속되어 이더넷 프레임을 헤더정보와 페이로드(Payload)로 분리하거나 분리된 헤더정보와 페이로드의 결합을 수행하는 적어도 하나의 제1 및 제2 인터페이스 제어기(120~120m : 120)(1501~150n : 150)와, 상기 헤더정보를 근거로 음성 및/또는 데이터 트래픽인 이더넷 프레임의 전송 경로를 스위칭 하기 위한 상기 스위칭 메인 모듈(130)과, 수신된 이더넷 프레임을 목적지 노드(300)로 송신하기까지 이더넷 프레임들의 분리된 헤더정보와 페이로드들을 일시 저장하기 위한 공유 메모리(Shared Memory)(140)를 포함하여 구성된다. 상기 제1 및 제2 인터페이스 제어기(120, 150)는 이더넷 프레임의 송수신을 위한 입력 및 출력 포트로 기능하고, 각각 데이터 입출력을 위한 공지된 입출력 로직(Ingress Logic, Egress Logic)이 구비된다.
상기 공유 메모리(140)는 모든 입력 및 출력 포트들에 의해 공유되고, 미리 설정된 입력 큐잉(Input Queuing) 및 출력 큐잉(Output Queuing) 방식에 따라 복수의 입력 큐(Input Queue) 및 출력 큐(Output Queue)를 구성하게 된다.
도 2는 도 1b에 도시 된 공유 메모리(140)의 구조를 간략히 나타낸 도면이다. 도 2에서 상기 공유 메모리(140)는 데이터를 저장하기 위한 데이터 버퍼(Buffer)(141)와 다수의 레지스터(Register)(REG#1~REG#4)(142)들로 구성된다. 상기 데이터 버퍼(141)는 예컨대, 이더넷 프레임의 각 프레임 단위로 데이터를 저장한다고 가정한다. 물론 상기 데이터의 저장 단위는 일반적인 패킷 단위나 메모리 크기인 비트(bit)나 바이트(Byte) 단위가 될 수 있다.
상기 레지스터(REG#1~REG#4)(142)는 데이터 버퍼(141)의 물리적인 메모리 크기인 α 값이 저장되는 제1 레지스터(REG#1)와, 목적지 노드(300)로의 네트워크 트래픽의 상태가 혼잡(Congestion) 상태(이하, "트래픽 혼잡 상태"라 칭함)가 인지를 판단하기 위한 소정 임계값인 β 값이 저장되는 제2 레지스터(REG#2)와, 현재 데이터 버퍼(141)에 저장된 데이터량의 크기가 저장되는 제3 레지스터(REG#3)와, 상기 트래픽 혼잡 상태로 판단된 경우 그 혼잡 상태에 대한 플래그(flag) 정보가 저장되는 제4 레지스터(REG#4)로 구성된다.
상기 이더넷 스위치(100)의 스위칭 메인 모듈(130)은 제3 레지스터(REG#3)의 값인 데이터 버퍼(141)의 현재 데이터량 크기가 제2 레지스트(REG#2)에 저장된 임계값 보다 큰 경우, 상기 트래픽 혼잡 상태가 발생할 것을 예상하여 소정 포즈 프레임(PAUSE frame)을 소스 노드(200)로 전송하여 트래픽 흐름의 제어 동작을 수행한다. 여기서, 상기 포즈란 IEEE 802.3에 정의된 전송 제어 기법의 하나로 상기 소 스 노드(200)는 상기 포즈 프레임을 수신하게 되면, 그 포즈 프레임에 지정된 소정 시간 동안 이더넷 스위치(100)로의 데이터 전송을 중단하게 된다. 즉 상기 포즈 프레임은 상기 이더넷 스위치(100)에서 데이터를 송신한 소스 노드로 전송되는 흐름 제어 프레임이다.
도 3은 일반적인 포즈 프레임의 데이터 포맷 나타낸 도면이다.
도 3에서 상기포즈 프레임의 소스 주소(Source Address)(P1) 필드에는 포즈 프레임을 보내는 노드의 주소 즉 이더넷 상에서 식별되는 이더넷 스위치(100) 자신의 주소가 기입되고, 목적지 주소(Destination Address)(P2) 필드에는 특정 노드를 나타내는 유니 캐스트(unicast) 주소 또는 포즈 프레임 멀티캐스트(Multicast)를 위해 주어진 멀티캐스트 주소(예를 들어 02-80-C2-00-00-0116)를 기입한다. 또한 도 3에서 길이/타입(Length/Type)(P3) 필드에는 포즈 프레임 타입과 길이를 나타내는 정보(예를 들어 88-0816)를 기입하고, 오피코드(OPCODE)(P4) 필드에는 포즈(pause)에 해당하는 정보(예를 들어 00-0116)를 기입한다. 상기 오피코드(P4)의 수행 동작을 나타내는 오퍼랜드 리스트(operand list)에는 해당 오피코드에 따른 적어도 하나의 오퍼랜드(operand)(P5)가 포함되며, 상기 오피코드(P4)에 상기 포즈가 지정된 경우 상기 오퍼랜드(P5)에는 상기 포즈 프레임을 수신하는 소스 노드(200)에서 포즈 상태가 유지되는 전송중단 시간정보(pause time)가 포함된다.
상기한 바와 같이 종래 기술에 따른 스위칭 제어 장치 및 방법에 의하면, 이더넷 스위치(100)는 소스 노드(200)로부터 데이터를 수신할 때 마다 현재 데이터 버퍼(141)에 저장된 데이터의 크기가 미리 설정된 임계값인 β보다 크면 트래픽 혼잡을 예상하여 포즈 프레임을 모든 소스 노드(200)들에게 전송하고, 포즈 프레임을 수신한 소스 노드(200)들은 지정된 시간 동안 트래픽의 전송을 중단하게 된다. 이 경우 소스 노드(200)들은 트래픽의 종류에 상관 없이 모든 트래픽 전송을 중단시킨다. 데이터 트래픽에 비해 음성 트래픽은 손실 및 지연에 매우 민감하여 가장 높은 우선 순위(Priority)를 가지기 때문에 이더넷 스위치(100)에서 포즈 프레임의 전송이 있더라도 음성 트래픽에 대해서는 계속적인 전송을 보장하는 것이 바람직하다. 그러나 종래 기술은 상술한 바와 같이 트래픽 종류에 상관 없이 임의 입력 포트와 연결된 소스 노드(200)로 포즈 프레임을 전송하게 되면, 소스 노드(200)는 해당 입력 포트로의 모든 트래픽에 대해 전송을 중단시킴으로써, 음성 트래픽의 신뢰성있는 전송을 보장하지 못하는 문제점이 있다.
따라서 본 발명의 목적은트래픽의 종류에 따른 서비스 클래스를 고려하여 전송 트래픽의 효율적인 흐름 제어를 수행하는 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의 스위칭 제어 방법 및 그 스위칭 장치를 제공하는 것이다.
본 발명의 다른 목적은 트래픽의 종류를 구분하고 차별적으로 포즈를 적용함으로써, 트래픽 혼잡으로 인해 포즈가 실행되는 상황에서도 음성 트래픽과 같이 지연에 민감한 트래픽 클래스에 대해서는 계속적인 전송 서비스를 유지하여 서비스 품질을 보장하는 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의 스위칭 제 어 방법 및 그 스위칭 장치를 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명에 따른 이더넷 기반의 네트워크에서 서비스클래스별 트래픽의 스위칭 제어 방법은 이더넷 프레임의 트래픽 흐름을 제어하는 스위칭 제어 방법에 있어서, 소스 노드로부터 서비스 클래스별로 지정되는 소정 우선순위정보를 포함하는 상기 이더넷 프레임을 수신하는 과정과, 상기 수신된 이더넷 프레임을 상기 우선순위정보에 대응하는 서비스 클래스별로 구분된 데이터 버퍼에 저장하는 과정과, 상기 데이터 버퍼에 저장된 현재 데이터 크기와 소정 임계값을 비교하는 과정과, 상기 데이터 버퍼에 저장된 현재 데이터 크기가 상기 임계값 이상이면 상기 서비스 클래스 값을 포함하는 전송중단 프레임을 생성하는 과정과, 상기 전송중단 프레임을 상기 소스 노드로 전송하는 과정을 포함하여 이루어짐을 특징으로 한다.
또한 상기 목적을 달성하기 위한 본 발명에 따른 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의 스위칭 제어 방법은 적어도 하나의 소스 노드로부터 수신되는 이더넷 프레임을 적어도 하나의 목적지 노드로 전송하는 과정에서 상기 이더넷 프레임의 트래픽 흐름을 제어하기 위한 스위칭 제어 방법에 있어서, 상기 이더넷 프레임의 페이로드가 저장된 서비스 클래스별 데이터 버퍼로부터 상기 목적지 노드로 전송할 이더넷 프레임의 페이로드를 해당 서비스 클래스에 따라 추출하는 과정과, 상기 데이터 버퍼에 저장된 현재 데이터 크기와 상기 데이터 버퍼의 소정 임계값을 비교하는 과정과, 상기 현재 데이터 크기가 상기 임계값 보다 작은 경우 해당 서비스 클래스와 상기 전송중단 상태의 종료를 알리는 정보를 포함하는 소 정 전송중단종료 프레임을 생성하는 과정과, 상기 전송중단종료 프레임을 상기 소스 노드로 전송하는 과정을 포함하여 이루어짐을 특징으로 한다.
또한 상기 목적을 달성하기 위한 본 발명에 따른 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의 스위칭 제어 방법은 적어도 하나의 소스 노드로부터 수신되는 이더넷 프레임을 적어도 하나의 목적지 노드로 전송하는 과정에서 상기 이더넷 프레임의 트래픽 흐름을 제어하기 위한 스위칭 제어 방법에 있어서, 상기 트래픽 흐름을 제어하는 소정 네트워크 장치가 내부 타이머를 구동하여 상기 전송중단 시간이 경과되었는지 판단하는 과정과, 상기 전송중단 시간이 경과된 경우 서비스 클래스별 데이터가 저장되는 데이터 버퍼의 현재 데이터 크기와 소정 임계값을 비교하는 과정과, 상기 데이터 버퍼에 저장된 현재 데이터 크기가 상기 임계값 이상인 경우 해당 서비스 클래스와 상기 전송중단 시간 정보를 포함하는 상기 전송중단 프레임을 다시 생성하는 과정과, 상기 전송중단 프레임을 해당 입력 포트를 통해 소스 노드로 전송하는 과정을 포함하여 이루어짐을 특징으로 한다.
또한 상기 목적을 달성하기 위한 본 발명에 따른 이더넷 기반의 네트워크에서 서비스클래스별 트래픽의 스위칭 제어 장치는 이더넷 프레임의 트래픽 흐름을 제어하는 스위칭 장치에 있어서, 소스 노드로부터 상기 이더넷 프레임을 수신하기 위한 적어도 하나의 입력 포트와, 목적지 노드로 상기 이더넷 프레임을 송신하기 위한 적어도 하나의 출력 포트와, 상기 입력 포트와 출력 포트에 공유되고 상기 입력 포트를 통해 수신된 이더넷 프레임을 구분하여 저장하는 다수의 서비스 클래스별 데이터 버퍼와 소정 기준 정보들이 상기 서비스 클래스별로 저장된 다수의 레지 스터가 구비된 공유 메모리와, 상기 기준 정보를 근거로 트래픽 혼잡 상태를 판단하여 적어도 하나의 상기 데이터 버퍼가 상기 트래픽 혼잡 상태로 되는 경우 해당 서비스 클래스의 트래픽 흐름을 중단시키는 전송중단 프레임을 생성하여 상기 소스 노드로 전송하는 스위칭 메인 모듈을 포함하여 구성됨을 특징으로 한다.
이하 본 발명의 바람직한 실시예의 상세한 설명이 첨부된 도면들을 참조하여 설명될 것이다. 도면들 중 참조번호들 및 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에 유의해야 한다. 하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
본 발명은 복수의 소스 노드(200)로부터 수신되는 이더넷 프레임을 해당 목적지 노드(300)로 전송하기 위한 스위칭 제어 방법 및 장치에 관한 것으로서, 본 발명에서는 트래픽의 종류를 서비스의 우선순위를 나타내는 서비스 클래스(CoS)로 구분하고, 상기 서비스 클래스별로 차별적인 포즈를 적용하기 위한 새로운 공유 메모리의 구조와 포즈 프레임의 데이터 포맷을 제안한다. 또한 본 발명에서 스위칭 메인 모듈은 상기 서비스 클래스를 고려하여 차별적인 포즈를 적용하기 위한 동작을 수행한다.
먼저 본 발명의 설명에 있어서, 본 명세서에서 사용되는 용어를 하기와 같이 정의하기로 한다. '트래픽 혼잡 상태'는 포즈(pause)가 실행중인 상태를 의미하고, '트래픽 정상 상태'는 포즈가 실행되지 않고 입력 스트림(stream)으로부터 출력 스트림까지의 트래픽 흐름이 정상적으로 진행되는 상태를 의미한다. 그리고 '전송중단 프레임'은 상술한 포즈 프레임과 동일한 의미로 사용한다.
그리고 '우선순위정보'는 이더넷 스위치로 수신되는 이더넷 프레임에 포함되는 정보로서 이더넷 프레임의 트래픽에서 서비스의 우선 순위를 나타내는 정보이다. 이더넷의 경우 이더넷 스위치가 수신한 이더넷 프레임들은 2 계층 MAC(Media Access Control) 헤더에 존재하는 802.1Q Priority 필드에 3 비트의 상기 우선순위정보가 입력되어 있다.
따라서 상기 우선순위정보는 최대 8 개의 서비스 클래스를 구분할 수 있다. 본 발명에서 이더넷 스위치는 상기 우선순위정보에 대응하게 수신된 이더넷 프레임을 분류(Classify)하고 미리 정의된 임의의 서비스 클래스(CoS 또는 DSCP : Differentiated Service Code Point)에 따라 수신된 이더넷 프레임을 구분하여 이더넷 스위치 내부의 공유 메모리에 매핑시키게 된다.
도 4는 본 발명의 실시예에 따른 이더넷 스위치(400)의 내부 구성을 나타낸 블록 구성도로서, 이는 소스 및 목적지 노드(200, 300)와 이더넷을 통해 접속하기 위한 제1 및 제2 네트워크 인터페이스(410, 460)와, 상기 제1 및 제2 네트워크 인터페이스(410, 460)에 접속되어 트래픽 전송을 위한 입출력 포트를 제공하고, 송수신되는 이더넷 프레임의 헤더정보와 페이로드에 대한 분리/결합을 수행하는 제1 및 제2 인터페이스 제어기(420, 450)를 구비하여 구성된다. 상기 제1 및 제2 네트워크 인터페이스(410, 460)와 제1 및 제2 인터페이스 제어기(420, 450)는 도 1b의 대응되는 구성과 동일한 기능을 수행한다.
도 4의 스위칭 메인 모듈(430)은 상기 제1 및 제2 인터페이스 제어기(420, 450) 사이에 접속되어 상기 헤더정보를 판독하여 다수의 소스 노드(200)와 목적지 노드(300) 사이에서 이더넷 프레임의 전송 경로를 스위칭하는 스위칭 로직(Switching Logic)(430a)과, 상기 헤더정보에 포함된 상기 우선순위정보를 이용하여 수신된 이더넷 프레임을 미리 지정된 서비스 클래스별로 공유 메모리(440)에 구분하여 저장하고, 트래픽의 혼잡 상태 여부를 판별하여 상기 서비스 클래스별로 트래픽의 흐름을 유지/중단시키도록 소정 전송중단 프레임을 생성하여 입력 포트를 통해 소스 노드(200)로 전송하는 메모리 관리부(430b)를 포함하여 구성된다.
상기 스위칭 로직(430a)은 상기 스위칭 동작을 위해 소스 노드(200)와 목적지 노드(300)에 대한 MAC 주소와 입출력 포트에 대한 맵핑(Mapping) 테이블(즉, Layer 2 테이블)을 구비하며, 가상 사설망(Virtual Local Area Network : VLAN)을 이용하는 경우 해당 VLAN에 속한 포트(Port) 정보가 기록된 VLAN 테이블을 구비한다. 상기 스위칭 로직(430a)으로는 ARU(Address Resolution Logic) 등을 이용할 수 있다.
상기 공유 메모리(440)는 상기 제1 및 제2 인터페이스 제어기(420, 450)를 통해 제공되는 모든 입출력 포트에 공유되고, 미리 설정된 입력 큐잉(Input Queuing) 및 출력 큐잉(Output Queuing) 방식에 따라 복수의 입력 큐(Input Queue) 및 출력 큐(Output Queue)를 구비하며, 이더넷 프레임의 프레임 단위로 데이터를 저장한다고 가정한다. 그리고 상기 데이터의 저장 단위는 일반적인 패킷이나 메모리 크기인 비트(bit)나 바이트(byte) 단위가 될 수 있다.
또한 본 발명에서 상기 공유 메모리(440)는 입력 포트의 개수의 대응되게 적어도 하나의 저장 영역으로 구분되고, 입력 포트별로 구분된 각 저장 영역은 상기 서비스 클래스별로 수신된 이더넷 프레임의 페이로드가 구분되게 저장되는 다수의 데이터 버퍼와, 본 발명에 따라 트래픽 혼잡 상태 판별 시 이용되는 소정 기준 정보들이 상기 서비스 클래스별로 저장된 다수의 레지스터를 포함하여 구성된다.
상기 기준 정보는 상기 서비스 클래스별로 각 데이터 버퍼의 물리적인 최대 저장 용량을 나타내는 버퍼 크기 정보와, 상기 서비스 클래스별로 트래픽 혼잡 상태 판별을 위한 각 데이터 버퍼의 임계 저장 용량을 나타내는 소정 임계값 정보와, 각 클래스별로 각 데이터 버퍼에 현재 저장된 데이터량을 나타내는 현재 데이터량 정보 및, 각 클래스별로 트래픽 혼잡 상태 여부를 설정하기 위한 상태 플래그(flag)를 포함한다.이하에서는 도 5 및 도 6을 참조하여 본 발명에 따른 서비스 클래스별 트래픽의 흐름 제어를 위한 공유 메모리(440)의 내부 구조와 스위칭 메인 모듈(430)을 통해 생성되는 상기 전송중단 프레임의 데이터 구조를 보다 상세하게 설명하기로 한다.
도 5는 본 발명의 실시예에 따른 이더넷 스위치(400)의 공유 메모리(440)의 구조를 나타낸 블록 구성도로서, 이는 설명의 편의상 하나의 입출력 포트에 할당된 공유 메모리(440)의 저장 영역을 도시한 것이며, 실제로 공유 메모리(440)는 다수의 입출력 포트에 공유되므로 도 5의 구조는 입출력 포트의 개수에 대응되게 구비 된다.
상기 도 5를 참조하면, 본 발명에 따른 공유 메모리(440)는 미리 지정된 각 서비스 클래스별(Class#1 ~ Class#N)로 구분하여 수신된 이더넷 프레임의 페이로드를 저장할 수 있는 다수의 데이터 버퍼(4411~441N : 441)와, 각 데이터 버퍼(441)의 물리적인 최대 저장 용량 크기 αi를 저장하는 제1 레지스터(REG#1i)와, 각 서비스 클래스별로 데이터 버퍼(441)의 임계 저장 용량을 나타내는 임계값 βi를 저장하는 제2 레지스터(REG#2i)와, 각 서비스 클래스별로 데이터 버퍼(441)의 현재 저장된 데이터량 정보를 저장하는 제3 레지스터(REG#3i), 각 서비스 클래스별 데이터 버퍼(441)의 트래픽 혼잡 상태를 나타내는 상태 플래그를 저장하는 제4 레지스터(REG#4i)를 포함하여 구성된다. 여기서 첨자 'i'는 각 서비스 클래스 번호(0~N)를 나타낸다. 따라서 본 발명에 따른 제1 레지스터 내지 제4 레지스터(REG#1i ~ REG#4i : 442)는 서비스 클래스별로 트래픽 혼잡 상태 여부를 판별하고, 그 상태를 확인할 수 있는 상기 기준 정보를 저장할 수 있는 구조를 갖는다.
한편 본 실시예에서 상기 임계값은 기본적으로 서비스 클래스별 데이터 버퍼(441)에 설정하도록 구성하였으나, 상기 임계값을 서비스 클래스는 물론 입력 포트별로 2 단에 걸쳐 설정하는 것도 가능하다. 이 경우 공유 메모리(440)의 데이터 버퍼(441)에 저장된 데이터량이 서비스 클래스 또는 입력 포트 중 어느 하나에 설정된 임계값을 초과하게 되면, 스위칭 메인 모듈(430)은 소스 노드(200)로 상기 전송중단 프레임을 전송하여 해당 서비스 클래스 또는 입력 포트로의 트래픽 흐름을 중단시키게 된다. 도 6은 본 발명의 실시예에 따른 상기 전송중단 프레임의 데이터 포맷을 나타낸 도면이다.
도 6에서 상기 전송중단 프레임은 도 3에서 설명한 포즈 프레임의 구조와 동일하게 소스 주소(Source Address)(P1), 목적지 주소(Destination Address)(P2), 길이/타입(Length/Type)(P3), 오피코드(OPCODE)(P4) 및 오퍼랜드(P5) 필드를 포함하고, 상기 우선순위정보로 이용되는 서비스 클래스(CoS/DSCP)(P6) 필드가 부가된다. 그리고 상기 오퍼랜드(P5)에는 상기 전송중단 프레임을 수신하는 소스 노드(200)에서 상기 우선순위정보로 지정된 서비스 클래스의 트래픽 전송 중단 상태가 유지되는 시간인 소정 전송중단 시간정보(pause time)가 포함된다.
그리고 본 발명에서 다수의 소스 노드(200)는 각각 이더넷 스위치(400)로부터 상기 전송중단 프레임을 수신하고, 상기 우선순위정보를 확인하여 해당 서비스 클래스의 트래픽 전송을 상기 전송중단 시간 동안 중지하도록 구성된다. 따라서 상기한 전송중단 프레임을 이용하면, 이더넷 스위치(400)는 특정 서비스 클래스에 해당하는 트래픽에 대해서만 차별적으로 전송 중단을 수행 할 수 있다. 예를 들어 이더넷 스위치(400)로 수신되는 트래픽의 종류가 음성과 데이터 트래픽인 경우, 데이터 트래픽에 해당하는 서비스 클래스값인 상기한 우선순위정보를 상기 전송중단 프레임에 포함시킴으로써, 데이터 트래픽은 전송을 잠시 중단하더라도 상대적으로 우선순위가 높은 음성 트래픽은 계속적인 전송 서비스가 제공되도록 한다. 이하 본 실시예에서는 설명의 편의상 상기 서비스 클래스를 음성 클래스와 데이터 클래스로 이루어진 두 개의 서비스 클래스로 구분하여 본 발명에 따른 스위칭 제어 방법을 설명하기로 한다. 상기 전송중단 프래임에 포함된 서비스 클래스가 데이터 클래스일 경우에, 데이터 트래픽을 전송하는 소스 노드(200)는 상기 전송중단 프레임을 수신한 후, 데이터의 전송을 중단한다. 반면 음성 트래픽을 전송하는 소스 노드(200)는 상기 전송중단 프레임에 자신의 서비스 클래스가 포함되어 있지 않기 때문에 계속해서 음성 트래픽을 전송하게 된다.
이하 상기한 구성에 적용되는 본 발명에 따른 이더넷 기반의 서비스 클래스별 트래픽의 스위칭 제어 방법을 도 7 내지 도 10을 이용하여 설명하기로 한다. 본 발명에 따른 방법은 도 7의 기준 정보 초기 설정 과정, 도 8의 소스 노드(200)로부터의 서비스 클래스별 트래픽 수신 과정, 도 9의 목적지 노드(300)로의 서비스 클래스별 트래픽 송신 과정, 도 10의 소스 노드(200)에서의 서비스 클래스별 트래픽 전송중단의 종료 과정으로 구분되며 이하 각 과정을 상세하게 설명하기로 한다. 아울러 본 발명에 따른 방법은 서비스 클래스별 트래픽의 스위칭이 가능한 이더넷 기반의 각종 네트워크 스위치에 적용가능하며, 설명의 편의상 도 4의 이더넷 스위치(400)에 적용되는 예를 설명하기로 한다.
도 7은 상기 도 5에 도시 된 제1 내지 제4 레지스터들(442)의 초기 설정 절차를 설명하기 위한 플로우챠트이다. 상기 도 7을 참조하면, 도 4의 이더넷 스위치(400)와 같은 네트워크 스위치는 초기 구동 시 스위칭 메인 모듈(430)을 통 해 701 과정에서 각 입출력 포트별로 구분된 공유 메모리(440)의 저장 영역에 따라 서비스 클래스별 데이터 버퍼(441)의 버퍼 크기인 αi를 제1 레지스터(REG#1i)에 저장하고, 703 과정에서 서비스 클래스별 트래픽 혼잡 상태를 고려한 각 데이터 버퍼(441)의 저장 용량 임계값인 βi를 제2 레지스터(REG#2i)에 저장하며, 705와 707 과정에서 각 데이터 버퍼(441)의 현재 저장된 데이터 용량과 트래픽 혼잡 상태를 나타내는 상태 플래그를 각각 '0'으로 설정하여 제3 및 제4 레지스터(REG#3i, REG#4i)에 저장한다.
본 실시예에서 버퍼 크기인 αi와 임계값인 βi는 미리 설정된 값을 이용하며, 상기 상태 플래그가 '0'인 경우 트래픽의 흐름이 정상적인 '트래픽 정상 상태'를 의미하고, 상태 플래그가 '1'인 경우 트래픽의 흐름이 혼잡한 '트래픽 혼잡 상태'를 의미한다. 그리고 상기 공유 메모리(440)의 각 입출력 포트별 또는 서비스 클래스별 데이터 버퍼(441)의 메모리 할당은 기본적으로 미리 설정된 고정 할당량을 사용하고, 이를 네트워크 상태나 트래픽의 종류에 따라 일정 주기 마다 또는 비주기적으로 서로 다르게 동적으로 할당하는 경우 상기 버퍼 크기인 αi와 임계값인 βi는 매 할당 시 마다 서로 다른 값으로 설정된다. 이하에서는 설명의 편의상 상기 메모리 할당은 고정 할당량을 사용하는 것으로 가정한다.
도 8은 본 발명의 실시예에 따라 서비스 클래스별 트래픽을 수신하는 경우의 스위칭 제어 과정을 설명하기 위한 플로우챠트이다.
상기 도 8을 참조하면, 801 과정 및 803 과정은 임의의 소스 노드(200)로부터 이더넷 프레임의 수신을 대기하는 과정이다. 여기서 수신되는 이더넷 프레임은 전술한 우선순위정보를 포함하고 있다. 803 과정에서 이더넷 프레임이 수신되면, 805 과정에서, 스위칭 메인 모듈(430)은 해당 소스 노드(200)에 대해 상기한 전송중단 프레임의 전송을 통한 트래픽의 전송중단(또는 PAUSE)이 실행 중인지를 판단하기 위해, 공유 메모리(440)의 제4 레지스터(REG#4i)에 설정된 상태 플래그를 확인한다.
이때 상태 플래그가 '0'으로 확인되어 전송중단이 실행 중이지 않으면, 즉 트래픽 정상 상태이면, 807 과정에서 스위칭 메인 모듈(430)은 수신된 이더넷 프레임의 페이로드를 상기 우선순위정보에 의해 분류하고, 809 과정에서 대응하는 서비스 클래스에 따라 해당 데이터 버퍼(441)에 저장하고 제3 레지스터(REG#3i)에 저장된 데이터 버퍼(441)의 현재 데이터량 정보를 1 단위(예컨대, 프레임 단위)로 증가시킨다. 이후 스위칭 메인 모듈(430)은 811 과정에서 제3 레지스터(REG#3i)의 현재 데이터량과 제2 레지스터(REG#2i)의 임계값을 비교한다.
여기서 제3 레지스터(REG#3i)의 현재 데이터량이 제2 레지스터(REG#2i)의 임계값 보다 작은 경우는 상기 801 과정으로 되돌아가 상기 과정을 반복 수행하고, 현재 데이터량이 임계값 이상인 경우에는 트래픽 혼잡이 발생할 것이라고 판단하여, 813 과정에서 제4 레지스터(REG#4i)의 상태 플래그를 트래픽 혼잡 상태를 나타내는 '1'로 설정하고, 815 과정에서 상기한 전송중단 프레임(PAUSE frame)을 생성한다.
한편 상기 전송중단 프레임에는 해당 소스 노드(200)에서 전송중단을 실행할 시간정보(non-zero pause time) 또는 전송중단의 시작시간 정보를 포함시킬 수 있다. 또한 상기 전송중단 프레임에 포함되는 우선순위정보에 임의의 정책에 따라 우선순위가 낮은 트래픽의 서비스 클래스를 포함시키거나 혼잡에 가장 크게 영향을 미친 서비스 클래스 값을 포함시켜, 전송중단 프레임을 수신한 해당 수신 노드(200)에서 해당 서비스 클래스의 트래픽에 대해서만 전송 중단을 수행할 수 있도록 한다.
이후 817 과정에서 스위칭 메인 모듈(430)은 상기 생성된 전송중단 프레임을 모든 입력 포트를 통해 연결된 소스 노드(200)들로 전송한다. 여기서 상기 전송중단 프레임은 해당 서비스 클래스에 해당하는 트래픽을 전송하는 소스 노드(200)(예를 들어 데이터 트래픽을 전송하는 노드)로 전송된다. 한편 상기 805 과정에서, 제4 레지스터(REG#4i)에 설정된 상태 플래그가 '1'로 확인되어 해당 서비스 클래스에 대응되는 트래픽의 전송 중단이 실행중인 상태이면, 스위칭 메인 모듈(430)은 819 과정에서 제1 레지스터(REG#1i)의 버퍼 크기 정보와 제3 레지스터(REG#3i)의 현재 데이터량을 비교한다.
그리고 상기 819 과정의 비교 결과, 스위칭 메인 모듈(430)은 전송중단 실행 이후에 수신된 패킷을 저장할 공간이 남아 있는 경우로 판정된 경우, 즉 제1 레지스터(REG#1i)의 버퍼 크기 정보와 제3 레지스터(REG#3i)의 현재 데이터량이 다른 경우에는 821 과정에 따라 전송 중단 실행 후 수신된 이더넷 프레임을 해당 서비스 클래스의 데이터 버퍼(441)에 저장하고 제3 레지스터(REG#3i)의 값을 한 단위(예컨대, 프레임 단위 ) 만큼 증가시킨다. 이후 스위칭 메인 모듈(430)은 상기 801 과정으로 되돌아가 상술한 과정을 반복 수행한다. 그리고 상기 819 과정에서 데이터 버퍼(441)의 여유 저장 공간이 없는 경우, 즉 제1 레지스터(REG#1i) 값과 제3 레지스터(REG#3i) 값이 같은 경우에는 스위칭 메인 모듈(430)은 823 과정에 따라 수신된 이더넷 프레임을 저장하지 않고 삭제하고, 상기 819 과정으로 되돌아가 상술한 과정을 반복 수행한다.
도 9는 본 발명의 실시예에 따라 서비스 클래스별 이더넷 프레임을 해당 목적지 노드(300)로 송신하는 경우의 스위칭 제어 과정을 설명하기 위한 플로우챠트이다.
이더넷 스위치(400)의 스위칭 메인 모듈(430)은 901 과정에서 각 데이터 버퍼(441)를 모니터링 하여 전송할 데이터가 있는지를 검사한다. 이후 903 과정에서 스위칭 메인 모듈(430)은 제1 및 제2 네트워크 인터페이스(410, 460)와, 제1 및 제2 인터페이스 제어기(420, 450)의 상태를 체크하여 이더넷 프레임의 전송을 위한 라인들과 출력 포트, 네트워크 인터페이스들 등이 정상 상태인지를 검사한다. 상기 903 과정의 검사 결과, 정상으로 확인된 경우 905 과정에서 스위칭 메인 모듈(430)는 해당 데이터 버퍼(441)로부터 해당 이더넷 프레임의 페이로드를 추출하고, 제2 인터페이스 제어기(450)를 통해 목적지 노드(300)로의 헤더정보를 붙여 해당 이더넷 프레임을 전송한다. 상술한 이더넷 프레임의 전송 과정이 종료되면, 스위칭 메인 모듈(430)은 본 발명에 따른 스위칭 제어를 위해 하기와 같은 과정을 수행한다.
907 과정에서 스위칭 메인 모듈(430)은 현재 저장된 데이터량인 제3 레지스터(REG#3i) 값을 '1' 감소 시키고, 909 과정에서 제3 레지스터(REG#3i) 값과 임계값인 제2 레지스터(REG#2i) 값을 비교하여 해당 서비스 클래스의 데이터 버퍼(441)의 트래픽 혼잡 상태가 완화되었는지를 판단한다. 이때 제3 레지스터(REG#3i)의 값이 제2 레지스터(REG#2i)의 값보다 작은 경우, 스위칭 메인 모듈(430)은 혼잡이 완화된 것으로 판단하여, 전송중단 종료를 알리는 전송중단 종료(UNPAUSE)과정을 수행한다. 즉 911 과정에서 스위칭 메인 모듈(430)은 상태 플래그인 제4 레지스터(REG#3i) 값을 트래픽 정상 상태를 나타내는 '0'으로 설정한 후, 913 과정과 같이 전술한 전송중단 시간정보(pause time) 값을 0으로 하는 소정 전송중단종료 프레임(UNPAUSE frame)을 생성한다. 여기서 스위칭 메인 모듈(430)은 해당 서비스 클래스의 우선순위정보를 상기 전송중단종료 프레임에 포함시킨다. 그리고 상기 전송중단종료 프레 임은 상기 전송중단 시간정보가 '0'으로 설정되는 것을 제외하고는 상기한 전송중단 프레임과 동일한 데이터 포맷을 갖는다.
즉 상기 전송중단종료 프레임에 포함된 서비스 클래스가 데이터 트래픽일 경우에, 해당 데이터를 전송하는 소스 노드(200)는 상기 전송중단종료 프레임을 수신한 후, 데이터의 전송을 중단한다. 반면 음성 트래픽을 전송하는 소스 노드(200)는 자신의 서비스 클래스가 포함되어 있지 않기 때문에 계속해서 음성 트래픽을 전송할 수 있다. 예를 들어 4개의 소스 노드 Node 0, Node 1, Node 2, Node 3가 존재하며, 상기 Node 0, Node1은 음성 트래픽을 전송하고, Node 2, Node 3은 데이터 트래픽을 전송한다고 가정하며, 전송중단 프래임을 전송해야 할 경우, 스위칭 메인 모듈(430)은 전송중단 프레임의 서비스 클래스(CoS)(P6) 필드에 Node 2, Node 3의 해당 서비스 클래스의 번호/기호를 우선순위정보로 삽입한다. 그리고 상기 우선순위정보를 수신한 4개의 소스 노드(200) 중 Node 2와 Node 3는 해당 서비스 클래스의 트래픽 전송을 중단해야 함을 인식하고 이더넷 스위치(400)로의 송신을 중단하게 된다.
915 과정에서 스위칭 메인 모듈(430)은 해당 서비스 클래스의 트래픽이 입력되는 입력 포트로 상기 전송중단종료 프레임을 전송하고, 상기 전송중단 시간을 0 으로 설정되고, 임의의 서비스 클래스 값을 갖는 전송중단종료 프레임은 그 입력 포트와 연결된 소스 노드(200)로 전송되어 전송 중단을 적용한 해당 트래픽에 대한 전송중단 종료를 수행한다. 그리고 상기 901 과정으로 되돌아가 상술한 동작을 반복 수행한다.
한편 본 실시예에서 전송중단 프레임을 수신한 소스 노드(200)는 전송중단 프레임에 명시된 전송중단 시간 동안 해당 클래스의 트래픽 전송을 중단하고 있다가 그 전송중단시간이 지나면 다시 전송을 재개한다. 그러나 소스 노드(200)로 도 9의 과정에 따라 전송중단 프레임을 전송한 후, 이더넷 스위치(400)가 내부 타이머(도시되지 않음)를 두고 계수된 전송중단 시간이 종료된 후, 전송중단 시간이 0인 전송중단종료 프레임을 소스 노드(300)로 전송하는 방식으로 전송중단 종료 과정을 수행 할 수 도 있다. 이 경우 전송중단종료 프레임은 도 9와 같이 현재 데이터량인 제3 레지스터(REG#3i) 값이 임계값인 제2 레지스터(REG#2i)의 값 보다 적어 데이터 버퍼(441)의 트래픽 혼잡 상태가 완화된 경우와 내부 타이머에 의해 계수된 시간이 전송중단 시간이 종료된 경우 소스 노드(200)로 전송될 수 있다. 다만 내부 타이머에 의해 계수된 시간이 종료된 경우라도 트래픽 혼잡 상태를 감안하여 상기 전송중단 프레임을 전송하도록 하는 것도 바람직 할 것이다.
도 10은 본 발명의 실시예에 따른 전송중단 종료 과정을 설명하기 위한 플로우챠트이다. 도 10의 과정에서 스위칭 메인 모듈(430)은 전송중단 프레임을 소스 노드(200)로 전송한 후, 그 전송중단 프레임에 명시된 소정 전송중단 시간을 내부 타이머(도시되지 않음)를 이용하여 계수하는 것으로 가정한다. 또한 상기 도 10에 도시 된 과정은 내부 타이머가 완료된 경우에도 실제로 레지스터 값을 비교하여 트래픽 혼잡상태가 완화 되었는지를 다시 판단하는 방법이다.
상기 도 10을 참조하면, 1001 과정과 1003 과정에서 이전에 전송중단 프레임을 전송한 스위칭 메인 모듈(430)은 내부 타이머의 종료 여부를 판단하고, 상기 타이머가 종료되면, 1005 과정에서 현재 데이터량인 제3 레지스터(REG#3i)와 임계값인 제2 레지스터(REG#2i)의 값을 비교한다. 상기 비교 결과, 제3 레지스터(REG#3i)의 값이 더 작아 혼잡상태가 완화 된 것으로 판단된 경우, 스위칭 메인 모듈(430)은 1107 과정 내지 1011 과정에 따라, 해당 서비스 클래스의 제4 레지스터(REG#4i)의 상태 플래그를 '0'으로 설정하고, 전송중단 시간이 0인 전송중단 프레임(UNPAUSE frame)을 입력 포트로 전송하는 서비스 클래스를 이용한 전송중단 종료 과정을 수행한다.
한편 상기 1005 과정에서 스위칭 메인 모듈(430)은 제3 레지스터(REG#3i)의 값이 제2 레지스터(REG#2i)의 값 보다 크거나 같아 혼잡 상태가 완화되지 않은 것으로 판단되면, 1013 과정과 1015 과정에서, 전송중단 시간을 0이 아닌 소정 값(non-zero)으로 하고 전송중단 시킬 서비스 클래스의 우선순위정보를 포함하는 전송중단 프레임(PAUSE frame)을 생성하여 입력 포트로 전송한다.
이하에서는 도 11 및 도 12를 참조하여 트래픽 정상 상태와 트래픽 혼잡 상태에서 이더넷 프레임의 스위칭 제어 과정을 설명하기로 한다. 도 11 및 도 12에서 입력 및 출력 포트는 각각 도 4의 제1 및 제2 인터페이스 제어기(420, 440)를 통해 제공되므로 동일한 참조번호를 붙이기로 한다.
먼저 도 11은 본 발명의 실시예에 따른 트래픽 정상 상태에서 스위칭 제어 과정을 설명하기 위한 흐름도이다.
상기 도 11을 참조하면, 1101 과정에서, 임의 소스 노드(200)로부터 이더넷 프레임이 수신되면, 수신된 이더넷 프레임은 1103 과정에서 입력 포트(420)를 통해 헤더정보와 페이로드로 분리되어 스위칭 메인 모듈(430)로 전달되고, 1105 과정에서 스위칭 메인 모듈(430)은 수신된 헤더정보의 우선순위정보에 따라 페이로드를 공유 메모리(440)의 데이터 버퍼(441)에 서비스 클래스별로 구분하여 저장한다. 이후 1107 과정에서 스위칭 메인 모듈(440)은 전술한 과정에 따라 트래픽 혼잡 상태를 판단하여 데이터 버퍼(441)의 현재 데이터량이 미리 정해진 임계값 보다 작으면 1107 과정과1109 과정에 따라 해당 목적지 노드(300)와 연결된 출력 포트(430)를 통해 목적지 노드(300)로 이더넷 프레임을 송신한다.
그리고 도 12는 본 발명의 실시예에 따른 트래픽 혼잡 상태에서 전송 중단 실행 시 스위칭 제어 과정을 설명하기 위한 흐름도이다.
상기 도 12를 참조하면, 먼저 1201, 1203 과정은 도 11의 1101, 1103 과정과 동일하게 수행된다. 이후 1105 과정에서 스위칭 메인 모듈(430)은 그 헤더정보의 우선순위정보에 따라 페이로드를 공유 메모리(440)의 데이터 버퍼(441)에 서비스 클래스별로 구분하고 저장하고, 해당 서비스 클래스의 데이터 버퍼(441)의 현재 데이터량이 미리 정해진 임계값 보다 크거나 같아 트래픽 혼잡이 예상되면, 0이 아 닌 전송중단 시간정보와 해당 서비스 클래스를 나타내는 우선순위정보가 포함된 전송중단 프레임을 생성한다.
여기서 전송중단 프레임에는 우선순위가 낮은 서비스클래스 값(예를 들어 데이터 트래픽)을 포함시킨다. 그리고 스위칭 메인 모듈(430)은 1207 과정에서 상기 전송중단 프레임을 해당 소스 노드(200)가 연결된 입력 포트(420)로 전송한다. 입력 포트(420)는 12091 과정에서 해당 소스 노드(200)로 상기 전송중단 프레임을 전송한다. 결과적으로 상기 전송중단 프레임을 수신한 노드들은 전송중단 프레임에 포함된 서비스 클래스 값에 해당하는 트래픽(예를 들어 데이터 트래픽)에 대해서 전송중단 시간 동안 전송을 중단한다. 따라서 본 발명에 의하면, 우선순위가 높은 트래픽(예를 들어 음성 트래픽)의 전송 서비스는 계속적으로 지원 가능하다. 그리고 스위칭 메인 모듈(430)은 데이터 버퍼(441)에 구분 저장된 페이로드를 읽어 들여 1211, 1213 과정에 따라 출력 포트(430)를 통해 해당 목적지 노드(300)로 이더넷 프레임을 송신한다. 상기와 같은 과정을 통해 스위치내의 트래픽 혼잡을 완화시키는 동시에 우선순위가 높은 트래픽에 대해서는 서비스 품질을 보장할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같이 본 발명은 트래픽 종류별로 차별적인 전송중단 기법을 트래픽 스위칭제어를 수행할 수 있는 이점이 있다.
본 발명과 같이 서비스 클래스에 따라 차별적으로 전송 중단을 적용함으로써, 결과적으로 음성 트래픽과 같이 트래픽 혼잡 상태에서도 신뢰성 있는 전송을 요구하는 트래픽에 대해서는 지속적인 서비스를 지원할 수 있다. 그리고 반대로 일반 데이터 트래픽과 같이 우선순위가 낮은 트래픽에 대해서는 전송중단을 실행함으로써, 혼잡을 완화시킬 수 있는 이점이 있다.

Claims (28)

  1. 이더넷 프레임의 트래픽 흐름을 제어하는 스위칭 제어 방법에 있어서,
    소스 노드로부터 트래픽 종류에 따른 서비스 클래스별로 지정되는 소정 우선순위정보를 포함하는 상기 이더넷 프레임을 수신하는 과정과,
    상기 수신된 이더넷 프레임을 상기 우선순위정보에 대응하는 서비스 클래스별로 구분된 데이터 버퍼에 저장하는 과정과,
    상기 데이터 버퍼에 저장된 현재 데이터 크기와 소정 임계값을 비교하는 과정과,
    상기 데이터 버퍼에 저장된 현재 데이터 크기가 상기 임계값 이상이면 상기 서비스 클래스 값을 포함하는 전송중단 프레임을 생성하는 과정과,
    상기 전송중단 프레임을 전체 소스 노드로 전송하는 과정과,
    상기 전송중단 프레임을 수신한 상기 소스 노드가 상기 서비스 클래스 값을 근거로 트래픽의 전송 중단 여부를 결정하는 과정을 포함하며,
    상기 데이터 버퍼는 상기 서비스 클래스별로 버퍼량이 다르게 할당되는 스위칭 제어 방법.
  2. 제 1 항에 있어서,
    상기 임계값은 트래픽 혼잡 상태를 판별하기 위한 상기 데이터 버퍼의 임계 저장 용량임을 특징으로 하는 스위칭 제어 방법.
  3. 제 1 항에 있어서,
    상기 임계값을 이용한 비교 결과 상기 데이터 버퍼의 상태가 상기 트래픽 혼잡 상태로 판정된 경우 상기 데이터 버퍼의 여유 공간을 검사하는 과정과,
    상기 검사 결과 여유 공간이 존재하는 경우 상기 수신된 이더넷 프레임을 상기 우선순위정보에 따라 상기 데이터 버퍼에 저장하는 과정을 더 포함함을 특징으로 하는 스위칭 제어 방법.
  4. 제 3 항에 있어서,
    상기 검사 결과 상기 데이터 버퍼의 여유 공간이 없는 경우 상기 수신된 이더넷 프레임을 삭제하는 과정을 더 포함함을 특징으로 하는 스위칭 제어 방법.
  5. 제 1 항에 있어서,
    상기 현재 데이터 크기가 상기 임계값 이상인 경우 상기 트래픽 혼잡 상태를 나타내는 소정 상태 플래그를 설정하는 과정을 더 포함함을 특징으로 하는 스위칭 제어 방법.
  6. 제 1 항에 있어서,
    상기 전송중단 프레임은 해당 서비스 클래스의 트래픽 전송을 중단하는 지속 시간이 지정된 소정 전송중단 시간정보를 더 포함함을 특징으로 하는 스위칭 제어 방법.
  7. 제 1 항에 있어서,
    상기 전송중단 프레임을 수신한 상기 소스 노드는 해당 서비스 클래스의 우선순위를 가지는 이더넷 프레임의 전송을 소정 시간 동안 중단함을 특징으로 하는 스위칭 제어 방법.
  8. 제 1 항에 있어서,
    상기 서비스 클래스 정보는 상기 전송중단 프레임과 상기 이더넷 프레임의 헤더정보에 각각 포함됨을 특징으로 하는 스위칭 제어 방법.
  9. 제 1 항에 있어서,
    상기 서비스 클래스의 우선순위는 음성 트래픽이 데이터 트래픽 보다 우선함을 특징으로 하는 스위칭 제어 방법.
  10. 삭제
  11. 삭제
  12. 적어도 하나의 소스 노드로부터 수신되는 이더넷 프레임을 적어도 하나의 목적지 노드로 전송하는 과정에서 상기 소스 노드로 전송중단 프레임을 전송한 후 상기 이더넷 프레임의 트래픽 흐름을 제어하기 위한 스위칭 제어 방법에 있어서,
    상기 이더넷 프레임의 페이로드가 저장된 트래픽 종류에 따른 서비스 클래스별 데이터 버퍼로부터 상기 목적지 노드로 전송할 이더넷 프레임의 페이로드를 해당 서비스 클래스에 따라 추출하는 과정과,
    상기 데이터 버퍼에 저장된 현재 데이터 크기와 상기 데이터 버퍼의 소정 임계값을 비교하는 과정과,
    상기 현재 데이터 크기가 상기 임계값 보다 작은 경우 해당 서비스 클래스와 상기 소스 노드에게 전송중단 상태의 종료를 알리는 정보를 포함하는 소정 전송중단종료 프레임을 생성하는 과정과,
    상기 전송중단종료 프레임을 전체 소스 노드로 전송하는 과정과,
    상기 전송중단종료 프레임을 수신한 상기 소스 노드가 해당 서비스 클래스에 속하는 트래픽의 전송중단 상태를 종료하는 과정을 포함하며,
    상기 데이터 버퍼는 상기 서비스 클래스별로 버퍼량이 다르게 할당되는 스위칭 제어 방법.
  13. 삭제
  14. 삭제
  15. 적어도 하나의 소스 노드로부터 수신되는 이더넷 프레임을 적어도 하나의 목적지 노드로 전송하는 과정에서 상기 소스 노드로 전송중단 프레임을 전송한 후 상기 이더넷 프레임의 트래픽 흐름을 제어하기 위한 스위칭 제어 방법에 있어서,
    상기 트래픽 흐름을 제어하는 소정 네트워크 장치가 내부 타이머를 구동하여 상기 전송중단 프레임에 의한 소정 전송중단 시간이 경과되었는지 판단하는 과정과,
    상기 전송중단 시간이 경과된 경우 트래픽 종류에 따른 서비스 클래스별 데이터가 저장되는 데이터 버퍼의 현재 데이터 크기와 소정 임계값을 비교하는 과정과,
    상기 데이터 버퍼에 저장된 현재 데이터 크기가 상기 임계값 이상인 경우 해당 서비스 클래스와 상기 전송중단 시간 정보를 포함하는 상기 전송중단 프레임을 다시 생성하는 과정과,
    상기 생성된 전송중단 프레임을 전체 입력 포트를 통해 상기 소스 노드로 다시 전송하는 과정과,
    상기 전송중단 프레임을 수신한 상기 소스 노드가 상기 서비스 클래스 값을 근거로 트래픽의 전송 중단 여부를 결정하는 과정을 포함하며,
    상기 데이터 버퍼는 상기 서비스 클래스별로 버퍼량이 다르게 할당되는 스위칭 제어 방법.
  16. 제 15 항에 있어서,
    상기 임계값은 트래픽 혼잡 상태를 판별하기 위한 상기 데이터 버퍼의 임계 저장 용량임을 특징으로 하는 스위칭 제어 방법.
  17. 제 15 항에 있어서,
    상기 전송중단 프레임이 다시 전송된 경우 상기 소스 노드는 상기 전송중단 시간 정보에 설정된 시간 동안 상기 이더넷 프레임의 전송을 재차 중단함을 특징으로 하는 스위칭 제어 방법.
  18. 제 15 항에 있어서,
    상기 현재 데이터 크기가 상기 임계값 보다 작은 경우 해당 서비스 클래스에 대한 전송중단 시간이 0으로 설정된 소정 전송중단종료 프레임을 생성하고 상기 전송중단종료 프레임을 상기 소스 노드와 연결된 입력 포트로 전송하는 과정을 더 포함함을 특징으로 하는 스위칭 제어 방법.
  19. 제 18 항에 있어서,
    상기 전송중단종료 프레임은 상기 전송중단 프레임과 동일한 데이터 포맷으로 생성됨을 특징으로 하는 스위칭 제어 방법.
  20. 이더넷 프레임의 트래픽 흐름을 제어하는 스위칭 장치에 있어서,
    소스 노드로부터 상기 이더넷 프레임을 수신하기 위한 적어도 하나의 입력 포트와,
    목적지 노드로 상기 이더넷 프레임을 송신하기 위한 적어도 하나의 출력 포트와,
    상기 입력 포트와 출력 포트에 공유되고 상기 입력 포트를 통해 수신된 이더넷 프레임을 구분하여 저장하는 트래픽 종류에 따른 다수의 서비스 클래스별 데이터 버퍼와 소정 기준 정보들이 상기 서비스 클래스별로 저장된 다수의 레지스터가 구비된 공유 메모리와,
    상기 기준 정보를 근거로 트래픽 혼잡 상태를 판단하여 상기 다수의 데이터 버퍼 중에서 적어도 하나가 상기 트래픽 혼잡 상태로 되는 경우 해당 서비스 클래스의 트래픽 흐름을 중단시키는 전송중단 프레임을 생성하여 전체 소스 노드로 전송하는 스위칭 메인 모듈을 포함하며,
    상기 전송중단 프레임을 수신한 상기 소스 노드가 상기 서비스 클래스 값을 근거로 트래픽의 전송 중단 여부를 결정하며, 상기 데이터 버퍼는 상기 서비스 클래스별로 버퍼량이 다르게 할당되는 스위칭 장치.
  21. 제 20 항에 있어서,
    상기 스위칭 메인 모듈은 상기 소스 노드와 상기 목적지 노드 사이에서 상기 이더넷 프레임의 전송 경로를 스위칭하는 스위칭 로직과,
    상기 입력 포트를 통해 수신된 이더넷 프레임을 상기 공유 메모리에 구분하여 저장하고 상기 전송중단 프레임을 생성하여 상기 소스 노드로 전송하는 메모리 관리부를 포함함을 특징으로 하는 스위칭 장치.
  22. 제 20 항에 있어서,
    상기 전송중단 프레임은 상기 트래픽의 전송 중단 상태가 지속되는 시간 정보가 지정된 소정 전송중단 시간정보를 더 포함함을 특징으로 하는 스위칭 장치.
  23. 제 20 항에 있어서,
    상기 스위칭 제어 모듈은 상기 기준 정보를 근거로 상기 데이터 버퍼에 대한 상기 트래픽 혼잡 상태가 정상 상태로 전환된 것으로 확인된 경우 해당 서비스 클래스에 대한 트래픽 흐름을 재개시키는 전송중단종료 프레임을 생성하여 상기 소스 노드와 연결된 상기 입력 포트로 전송함을 더 포함함을 특징으로 하는 스위칭 장치.
  24. 제 20 항에 있어서,
    상기 스위칭 메인 모듈은 전송 중단 시간이 종료되고 상기 데이터 버퍼에 저장된 현재 데이터 크기가 소정 임계값 보다 작은 경우 해당 서비스 클래스에 대한 전송중단종료 프레임을 생성하여 상기 소스 노드로 전송함을 더 포함함을 특징으로 하는 스위칭 장치.
  25. 제 20 항에 있어서,
    상기 스위칭 메인 모듈은 전송 중단 시간이 종료되고 상기 데이터 버퍼에 저장된 현재 데이터 크기가 소정 임계값 보다 크거나 같은 경우 해당 서비스 클래스에 대한 전송중단 프레임을 생성하여 상기 소스 노드로 전송함을 더 포함함을 특징으로 하는 스위칭 장치.
  26. 제 20 항에 있어서,
    상기 레지스터는 상기 데이터 버퍼의 물리적인 크기 정보를 저장하는 제1 레지스터와,
    상기 데이터 버퍼의 트래픽 혼잡 상태 판별을 위한 소정 임계값을 저장하는 제2 레지스터와,
    상기 데이터 버퍼에 저장된 현재 데이터 크기 정보를 저장하는 제3 레지스터와,
    상기 트래픽 혼잡 상태를 나타내는 소정 상태 플래그를 저장하는 제4 레지스터를 포함하며,
    상기 제1 내지 제4 레지스터에 저장된 각 정보는 상기 기준 정보로 이용됨을 포함함을 특징으로 하는 스위칭 장치.
  27. 제 20 항에 있어서,
    상기 기준 정보는 상기 데이터 버퍼의 물리적인 최대 저장 용량을 나타내는 버퍼 크기 정보와,
    상기 서비스 클래스별로 트래픽 혼잡 상태 판별을 위한 각 데이터 버퍼의 임계 저장 용량을 나타내는 소정 임계값 정보와,
    상기 서비스 클래스별로 각 데이터 버퍼에 현재 저장된 데이터량을 나타내는 현재 데이터량 정보와,
    상기 서비스 클래스별로 상기 트래픽 혼잡 상태 여부를 설정하기 위한 상태 플래그를 포함함을 특징으로 하는 스위칭 장치.
  28. 제 27 항에 있어서,
    상기 서비스 메인 모듈은 각 서비스 클래스별 데이터 버퍼에 대해 상기 현재 데이터량이 상기 임계값 이상인 것으로 판정된 경우 상기 트래픽 혼잡 상태로 판정하도록 구성됨을 특징으로 하는 스위칭 장치.
KR1020040016299A 2003-03-10 2004-03-10 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치 KR100735408B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040016299A KR100735408B1 (ko) 2003-03-10 2004-03-10 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020030014684 2003-03-10
KR20030014684 2003-03-10
KR1020040016299A KR100735408B1 (ko) 2003-03-10 2004-03-10 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치

Publications (2)

Publication Number Publication Date
KR20040080367A KR20040080367A (ko) 2004-09-18
KR100735408B1 true KR100735408B1 (ko) 2007-07-04

Family

ID=32960189

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040016299A KR100735408B1 (ko) 2003-03-10 2004-03-10 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치

Country Status (2)

Country Link
US (1) US20040179476A1 (ko)
KR (1) KR100735408B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019088609A1 (ko) * 2017-11-01 2019-05-09 가톨릭대학교 산학협력단 이벤트 신호 처리 방법 및 이의 디바이스
KR20190083494A (ko) * 2018-01-04 2019-07-12 가톨릭대학교 산학협력단 분산형 이벤트 신호 처리 방법 및 이의 디바이스

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7423967B2 (en) * 2002-05-09 2008-09-09 Broadcom Corporation Fairness scheme method and apparatus for pause capable and pause incapable ports
US7688736B1 (en) * 2003-05-05 2010-03-30 Marvell International Ltd Network switch with quality of service flow control
US7761589B1 (en) 2003-10-23 2010-07-20 Foundry Networks, Inc. Flow control for multi-hop networks
US7639608B1 (en) * 2003-10-23 2009-12-29 Foundry Networks, Inc. Priority aware MAC flow control
US7757033B1 (en) 2004-02-13 2010-07-13 Habanero Holdings, Inc. Data exchanges among SMP physical partitions and I/O interfaces enterprise servers
US7685281B1 (en) 2004-02-13 2010-03-23 Habanero Holdings, Inc. Programmatic instantiation, provisioning and management of fabric-backplane enterprise servers
US8868790B2 (en) 2004-02-13 2014-10-21 Oracle International Corporation Processor-memory module performance acceleration in fabric-backplane enterprise servers
US7843906B1 (en) 2004-02-13 2010-11-30 Habanero Holdings, Inc. Storage gateway initiator for fabric-backplane enterprise servers
US7873693B1 (en) 2004-02-13 2011-01-18 Habanero Holdings, Inc. Multi-chassis fabric-backplane enterprise servers
US7860097B1 (en) * 2004-02-13 2010-12-28 Habanero Holdings, Inc. Fabric-backplane enterprise servers with VNICs and VLANs
US7633955B1 (en) 2004-02-13 2009-12-15 Habanero Holdings, Inc. SCSI transport for fabric-backplane enterprise servers
KR100726332B1 (ko) * 2004-04-21 2007-06-11 인하대학교 산학협력단 무선 통신망에서 무선 차별화 서비스를 제공하기 위한패킷 스케줄링 방법 및 장치
US8713295B2 (en) 2004-07-12 2014-04-29 Oracle International Corporation Fabric-backplane enterprise servers with pluggable I/O sub-system
US7680053B1 (en) * 2004-10-29 2010-03-16 Marvell International Ltd. Inter-device flow control
KR100594008B1 (ko) * 2004-10-29 2006-06-30 삼성전자주식회사 동기식 이더넷 시스템에서의 시간 임계 정보 전송 방법
US7948880B2 (en) * 2004-10-29 2011-05-24 Broadcom Corporation Adaptive dynamic thresholding mechanism for link level flow control scheme
US7502319B2 (en) * 2004-12-10 2009-03-10 Electronics And Telecommunications Research Institute Ethernet packet transmission apparatus and method
US7814280B2 (en) * 2005-01-12 2010-10-12 Fulcrum Microsystems Inc. Shared-memory switch fabric architecture
KR100736036B1 (ko) 2005-06-16 2007-07-06 삼성전자주식회사 Av 스트림의 서비스 품질을 보장하는 장치 및 방법
KR100730613B1 (ko) * 2005-10-04 2007-06-21 삼성전자주식회사 홈네트워크 시스템을 제어하는 홈서버 및 그 제어방법
KR100701156B1 (ko) * 2005-12-08 2007-03-28 한국전자통신연구원 이더넷 라인 카드 및 그 곳에서 다양한 서비스 수용 방법
KR100800688B1 (ko) * 2005-12-26 2008-02-01 삼성전자주식회사 파장분할다중방식 수동형 광네트워크 시스템의 광송신기제어 장치 및 그 방법
CN100396009C (zh) * 2006-02-23 2008-06-18 华为技术有限公司 带宽控制方法、系统、接入控制设备、用户档案管理设备
US20080002586A1 (en) * 2006-06-30 2008-01-03 Ravi Sahita End-point based tamper resistant congestion management
US20080089351A1 (en) * 2006-10-13 2008-04-17 Chunfeng Hu Flow control in communication networks
JP4701152B2 (ja) * 2006-10-20 2011-06-15 富士通株式会社 データ中継装置、データ中継方法およびデータ中継プログラム
KR100987258B1 (ko) * 2007-02-09 2010-10-12 삼성전자주식회사 통신 시스템에서 데이터 흐름 제어 장치 및 방법
US7916718B2 (en) * 2007-04-19 2011-03-29 Fulcrum Microsystems, Inc. Flow and congestion control in switch architectures for multi-hop, memory efficient fabrics
US8681807B1 (en) * 2007-05-09 2014-03-25 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for switch port memory allocation
US8031633B2 (en) * 2007-08-13 2011-10-04 Honeywell International Inc. Virtual network architecture for space data processing
JP4389983B2 (ja) * 2007-08-28 2009-12-24 沖電気工業株式会社 相互接続装置、インタフェースボード及びトラフィック処理方法
CN101184048B (zh) * 2007-12-11 2010-12-08 华为技术有限公司 一种数据帧传输的合路控制方法和设备
US7936669B2 (en) * 2008-06-04 2011-05-03 Entropic Communications, Inc. Systems and methods for flow control and quality of service
US8218442B2 (en) * 2008-09-11 2012-07-10 Juniper Networks, Inc. Methods and apparatus for flow-controllable multi-staged queues
US8547941B2 (en) * 2009-04-16 2013-10-01 Qualcomm Incorporated Apparatus and method for improving WLAN spectrum efficiency and reducing interference by flow control
JP4703751B2 (ja) * 2009-09-09 2011-06-15 株式会社東芝 電子機器
JP5402484B2 (ja) * 2009-10-02 2014-01-29 富士通株式会社 通信装置および通信制御方法
US8819161B1 (en) 2010-01-18 2014-08-26 Marvell International Ltd. Auto-syntonization and time-of-day synchronization for master-slave physical layer devices
US8594100B2 (en) 2010-03-31 2013-11-26 International Business Machines Corporation Data frame forwarding using a distributed virtual bridge
US8619796B2 (en) 2010-04-22 2013-12-31 International Business Machines Corporation Forwarding data frames with a distributed fiber channel forwarder
US8644139B2 (en) * 2010-04-26 2014-02-04 International Business Machines Corporation Priority based flow control within a virtual distributed bridge environment
US8447909B2 (en) 2010-07-19 2013-05-21 International Business Machines Corporation Register access in distributed virtual bridge environment
US8873389B1 (en) * 2010-08-09 2014-10-28 Chelsio Communications, Inc. Method for flow control in a packet switched network
CN102404786B (zh) * 2010-09-14 2015-07-01 中国移动通信集团江苏有限公司 一种控制业务阻塞的方法及装置
US8687491B2 (en) * 2011-04-05 2014-04-01 Vss Monitoring, Inc. Systems, apparatus, and methods for managing an overflow of data packets received by a switch
JP5648743B2 (ja) * 2011-06-15 2015-01-07 富士通株式会社 データ通信方法およびデータ通信システム
US8861400B2 (en) 2012-01-18 2014-10-14 International Business Machines Corporation Requesting multicast membership information in a distributed switch in response to a miss event
US8891535B2 (en) 2012-01-18 2014-11-18 International Business Machines Corporation Managing a global forwarding table in a distributed switch
US8867360B2 (en) * 2012-03-22 2014-10-21 Avaya Inc. Method and apparatus for lossless behavior for multiple ports sharing a buffer pool
US9407560B2 (en) 2013-03-15 2016-08-02 International Business Machines Corporation Software defined network-based load balancing for physical and virtual networks
US9338055B2 (en) * 2013-03-15 2016-05-10 Cisco Technology, Inc. Virtual router upgrade via graceful restart
US9609086B2 (en) 2013-03-15 2017-03-28 International Business Machines Corporation Virtual machine mobility using OpenFlow
US9769074B2 (en) 2013-03-15 2017-09-19 International Business Machines Corporation Network per-flow rate limiting
US9596192B2 (en) 2013-03-15 2017-03-14 International Business Machines Corporation Reliable link layer for control links between network controllers and switches
US9444748B2 (en) 2013-03-15 2016-09-13 International Business Machines Corporation Scalable flow and congestion control with OpenFlow
US9030936B2 (en) * 2013-06-12 2015-05-12 Intel Corporation Flow control with reduced buffer usage for network devices
US9462032B2 (en) * 2013-07-24 2016-10-04 Google Inc. Streaming media content
US9154569B1 (en) * 2013-08-16 2015-10-06 Qlogic, Corporation Method and system for buffer management
US9722810B2 (en) * 2014-02-03 2017-08-01 International Business Machines Corporation Computer-based flow synchronization for efficient multicast forwarding for products and services
US9444754B1 (en) 2014-05-13 2016-09-13 Chelsio Communications, Inc. Method for congestion control in a network interface card
US10708189B1 (en) * 2016-12-09 2020-07-07 Barefoot Networks, Inc. Priority-based flow control
US10735331B1 (en) 2016-12-09 2020-08-04 Barefoot Networks, Inc. Buffer space availability for different packet classes
KR102164033B1 (ko) * 2016-12-19 2020-10-12 엘지전자 주식회사 네트워크 장치 및 네트워크 장치의 큐 관리 방법
JP6406365B2 (ja) * 2017-01-06 2018-10-17 住友電気工業株式会社 スイッチ装置、通信制御方法および通信制御プログラム
US10412018B1 (en) 2017-03-21 2019-09-10 Barefoot Networks, Inc. Hierarchical queue scheduler
US11349769B1 (en) * 2018-09-07 2022-05-31 Marvell Israel (M.I.S.L) Ltd. Method and network device for controlling the flow of data traffic
KR102105504B1 (ko) * 2018-11-23 2020-04-28 올래디오 주식회사 클라우드기반 무선랜 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000029008A (ko) * 1998-10-12 2000-05-25 윤종용 패킷 스위치 네트워크에서의 흐름 제어 방법
KR20020040471A (ko) * 2000-11-24 2002-05-30 구자홍 이더넷 시스템에서 멀티포트 브리지의 혼잡 제어 장치 및방법
KR20020048640A (ko) * 2000-12-18 2002-06-24 오길록 서비스 품질을 지원하는 아이피 패킷 포워딩 분산 처리장치 및 그 방법
KR20020051546A (ko) * 2000-12-22 2002-06-29 오길록 원격 인터넷 접속 장치에서의 데이터 흐름 제어방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098103A (en) * 1997-08-11 2000-08-01 Lsi Logic Corporation Automatic MAC control frame generating apparatus for LAN flow control
US6031821A (en) * 1997-08-19 2000-02-29 Advanced Micro Devices, Inc. Apparatus and method for generating a pause frame in a buffered distributor based on lengths of data packets distributed according to a round robin repeater arbitration
US6643260B1 (en) * 1998-12-18 2003-11-04 Cisco Technology, Inc. Method and apparatus for implementing a quality of service policy in a data communications network
US6788681B1 (en) * 1999-03-16 2004-09-07 Nortel Networks Limited Virtual private networks and methods for their operation
US6717912B1 (en) * 1999-05-28 2004-04-06 Network Equipment Technologies, Inc. Fair discard system
US6738386B1 (en) * 2000-05-11 2004-05-18 Agere Systems Inc. Controlled latency with dynamically limited queue depth based on history and latency estimation
US6754179B1 (en) * 2000-06-13 2004-06-22 Lsi Logic Corporation Real time control of pause frame transmissions for improved bandwidth utilization
US7061868B1 (en) * 2000-10-25 2006-06-13 Switchcore, Ab Method for flow control in a switch and a switch controlled thereby
US6957269B2 (en) * 2001-01-03 2005-10-18 Advanced Micro Devices, Inc. Method and apparatus for performing priority-based flow control
US20020176450A1 (en) * 2001-01-31 2002-11-28 Sycamore Networks, Inc. System and methods for selectively transmitting ethernet traffic over SONET/SDH optical network
JP3465703B2 (ja) * 2001-07-18 2003-11-10 日本電気株式会社 共通チャネルフロー制御方法
TWI244285B (en) * 2002-02-05 2005-11-21 Via Tech Inc Ethernet switch controller and its congestion control method
US20030185249A1 (en) * 2002-03-28 2003-10-02 Davies Elwyn B. Flow control and quality of service provision for frame relay protocols
WO2004023745A1 (en) * 2002-09-06 2004-03-18 Infineon Technologies Ag Method and system for controlling bandwidth allocation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000029008A (ko) * 1998-10-12 2000-05-25 윤종용 패킷 스위치 네트워크에서의 흐름 제어 방법
KR20020040471A (ko) * 2000-11-24 2002-05-30 구자홍 이더넷 시스템에서 멀티포트 브리지의 혼잡 제어 장치 및방법
KR20020048640A (ko) * 2000-12-18 2002-06-24 오길록 서비스 품질을 지원하는 아이피 패킷 포워딩 분산 처리장치 및 그 방법
KR20020051546A (ko) * 2000-12-22 2002-06-29 오길록 원격 인터넷 접속 장치에서의 데이터 흐름 제어방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019088609A1 (ko) * 2017-11-01 2019-05-09 가톨릭대학교 산학협력단 이벤트 신호 처리 방법 및 이의 디바이스
KR20190083494A (ko) * 2018-01-04 2019-07-12 가톨릭대학교 산학협력단 분산형 이벤트 신호 처리 방법 및 이의 디바이스
KR102027671B1 (ko) * 2018-01-04 2019-11-04 가톨릭대학교 산학협력단 분산형 이벤트 신호 처리 방법 및 이의 디바이스

Also Published As

Publication number Publication date
US20040179476A1 (en) 2004-09-16
KR20040080367A (ko) 2004-09-18

Similar Documents

Publication Publication Date Title
KR100735408B1 (ko) 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치
US6981054B1 (en) Flow control arrangement in a network switch based on priority traffic
US7903552B2 (en) Directional and priority based flow control mechanism between nodes
US7136351B2 (en) Switched ethernet networks
EP1142213B1 (en) Dynamic assignment of traffic classes to a priority queue in a packet forwarding device
US8619793B2 (en) Dynamic assignment of traffic classes to a priority queue in a packet forwarding device
KR100977651B1 (ko) 네트워크 혼잡 제어를 위한 방법 및 장치
US7423967B2 (en) Fairness scheme method and apparatus for pause capable and pause incapable ports
US7573821B2 (en) Data packet rate control
US7920573B2 (en) Data relay device, data relay method, and computer product
EP2048831A1 (en) Method and systems for QoS-aware flow control in communication networks, corresponding network and computer program product
US8018851B1 (en) Flow control for multiport PHY
JP2000050373A (ja) 可変速度ディジタル交換方式
US11552905B2 (en) Managing virtual output queues
GB2462060A (en) Emulated LAN (ELAN) including specifying ports of a service member set and flooding a packet to the permitted members of the set.
JPH11187052A (ja) データフレームを転送する方法およびデータフレームを送信するための装置
US20120163398A1 (en) Communication apparatus, relay apparatus, and network system
JP4276094B2 (ja) パケットの優先制御を行う通信装置及び優先制御方法
US11728893B1 (en) Method, system, and apparatus for packet transmission
CN114531399B (zh) 一种内存阻塞平衡方法、装置、电子设备和存储介质
Holmeide et al. VoIP drives realtime Ethernet
Li System architecture and hardware implementations for a reconfigurable MPLS router
KR101171463B1 (ko) 신호 전달 제어 장치 및 그의 제어 방법
JP2002354022A (ja) パケットスイッチネットワークにおけるQoS制御方式
JP4457889B2 (ja) パケット転送装置、及びパケット制御回路

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
E902 Notification of reason for refusal
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee