KR0151911B1 - Cell gap control apparatus and method for controlling through put band in atm network - Google Patents

Cell gap control apparatus and method for controlling through put band in atm network Download PDF

Info

Publication number
KR0151911B1
KR0151911B1 KR1019950048892A KR19950048892A KR0151911B1 KR 0151911 B1 KR0151911 B1 KR 0151911B1 KR 1019950048892 A KR1019950048892 A KR 1019950048892A KR 19950048892 A KR19950048892 A KR 19950048892A KR 0151911 B1 KR0151911 B1 KR 0151911B1
Authority
KR
South Korea
Prior art keywords
cell
value
output
output list
olh
Prior art date
Application number
KR1019950048892A
Other languages
Korean (ko)
Other versions
KR970056327A (en
Inventor
백기진
전병천
김영선
Original Assignee
양승택
한국전자통신연구원
이준
한국전기통신공사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 양승택, 한국전자통신연구원, 이준, 한국전기통신공사 filed Critical 양승택
Priority to KR1019950048892A priority Critical patent/KR0151911B1/en
Publication of KR970056327A publication Critical patent/KR970056327A/en
Application granted granted Critical
Publication of KR0151911B1 publication Critical patent/KR0151911B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/112Switch control, e.g. arbitration

Abstract

본 발명은 ATM 망에서 출력 대역 제어를 위한 셀 간격 제어 장치 및 그 방법에 관한 것으로서, 셀을 저장하는 셀 버퍼링 수단(10); 상기 셀 버퍼링 수단(10)의 사용중인 어드레스를 관리하는 어드레스 FIFO 수단(30); 상기 셀 버퍼링 수단(10)의 미사용 어드레스를 관리하는 유휴 어드레스 FIFO 수단(20); 각 채널의 셀 상태를 저장하는 셀 상태 표시 메모리 수단(41); 상기 셀 상태 표시 메모리 수단(41)의 값을 이용하여 셀의 전송 예정 시간을 계산하는 예정 전송 시간(NDT) 계산 수단(42); 셀의 스페이싱을 위해 도착한 셀의 전송 예정 시간을 등록하기 위한 스케쥴링 수단(46); 상기 스케쥴링 수단(46)의 동일한 엔트리에 등록되는 셀들을 관리하기 위한 출력 연결 리스트(OLL) 메모리 수단(45); 상기 스케쥴링 수단(46)에 등록된 것 중에서 전송 시간이 다 된 것들의 제일 앞의 가상 채널 인식자(VCI)를 저장하는 출력 리스트 시작(OLH) 메모리 수단(43); 및 상기 스케쥴링 수단(46)에 등록된 것 중에서 전송 시간이 다 된 것들의 제일 뒤의 가상 채널 인식자(VCI)를 저장하는 출력 리스트 끝(OLT) 메모리 수단(44)을 구비하여 셀 버퍼링을 위한 메모리 크기를 멀티 큐를 이용할 때보다 상당히 줄일 수 있고, 링크트 리스트 방법을 사용한 것보다 오류에 견고한 구조를 가지고 각 채널당 최대셀 전송률(PCR)을 기반으로 한 셀 스페이싱 알고리즘을 이용하여 정확한 최대셀 전송률을 보장할 수 있는 효과가 있다.The present invention relates to an apparatus and a method for controlling cell spacing for output band control in an ATM network, comprising: cell buffering means (10) for storing a cell; Address FIFO means (30) for managing an active address of said cell buffering means (10); Idle address FIFO means (20) for managing unused addresses of the cell buffering means (10); Cell state display memory means 41 for storing a cell state of each channel; Predetermined transmission time (NDT) calculating means (42) for calculating an estimated transmission time of a cell by using the value of said cell state display memory means (41); Scheduling means 46 for registering a scheduled transmission time of a cell that has arrived for spacing of the cell; Output linked list (OLL) memory means 45 for managing cells registered in the same entry of the scheduling means 46; An output list start (OLH) memory means (43) for storing the virtual channel identifier (VCI) in front of those registered in the scheduling means (46) at the end of the transmission time; And an output list end (OLT) memory means 44 for storing the virtual channel identifier (VCI) at the end of the transmission time which is registered in the scheduling means 46, for cell buffering. Accurate maximum cell rate using cell spacing algorithms based on maximum cell rate (PCR) per channel with a more robust to error than the linked list method There is an effect that can guarantee.

Description

에이티엠(ATM) 망에서 출력대역제어를 위한 셀 간격 제어 장치 및 그 방법Cell spacing control device and method for output band control in ATM network

제1도는 본 발명이 ATM 망에 적용되는 예시도.1 is an exemplary diagram in which the present invention is applied to an ATM network.

제2도는 본 발명의 일실시예에 따른 셀 간격 제어 장치의 구성도.2 is a block diagram of a cell gap control apparatus according to an embodiment of the present invention.

제3도는 본 발명의 일실시예에 따른 스케쥴 관리부의 구성도.3 is a block diagram of a schedule management unit according to an embodiment of the present invention.

제4도는 본 발명의 논리적 동작 설명도.4 is a diagram illustrating the logical operation of the present invention.

제5도는 본 발명의 사용된 스페이싱 흐름도.5 is a used spacing flowchart of the present invention.

제6도는 본 발명의 일실시예에 따른 전송 시간 스케쥴링 동작 설명도.6 is a diagram illustrating a transmission time scheduling operation according to an embodiment of the present invention.

제7도는 본 발명의 일실시예에 따른 출력 리스트 시작과 출력 리스트 끝 값의 갱신 절차도.7 is a flowchart illustrating an update of output list start and output list end values according to an embodiment of the present invention.

제8도는 본 발명의 일실시예에 따른 전체 흐름도.8 is an overall flowchart according to an embodiment of the present invention.

제9도는 본 발명의 일실시예에 따른 스케쥴링 처리 흐름도.9 is a flowchart of a scheduling process according to an embodiment of the present invention.

제10도는 본 발명의 일실시예에 따른 입력셀 처리 흐름도.10 is a flowchart illustrating input cell processing according to an embodiment of the present invention.

제11도는 본 발명의 일실시예에 따른 출력 리스트 시작과 출력 리스트 끝 값의 갱신 처리 흐름도.11 is a flowchart illustrating an update process of output list start and output list end values according to an embodiment of the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

10 : 셀 버퍼부 20 : 유휴 어드레서 FIFO10: cell buffer unit 20: idle address FIFO

30 : 어드레스 FIFO 40 : 스케쥴 관리부30: address FIFO 40: schedule management unit

본 발명은 ATM 망에서 출력 대역 제어를 위한 셀 간격 제어 장치 및 그 방법에 관한 것으로, 특히, ATM 망에서 CBR(Continuous Bit Rate) 트래픽이 셀 지연 변이(CDV:Cell Delay Variation)로 인하여 셀들의 전송 특성이 변하거나 스위치의 특정 출력 포트로 셀들이 집중되어 소스 트래픽의 특성이 변하여 정해진 대역을 넘어서 전송하거나 다른 채널에 영향을 주는 것을 방지하기 위한 셀 간격 제어 장치 및 그 방법에 관한 것이다.The present invention relates to an apparatus and method for controlling cell spacing for output band control in an ATM network. In particular, CBR (Continuous Bit Rate) traffic is transmitted in a ATM network due to cell delay variation (CDV). The present invention relates to a cell spacing control device and a method for preventing a change in characteristics or a concentration of cells to a specific output port of a switch to change characteristics of source traffic to transmit over a predetermined band or to affect other channels.

ATM 망에서는 연속된 셀들이 망으로 들어올 때 각 채널별로 셀들 사이에 일정한 간격을 두어 연결 설정시 협상된 최대셀 전송률(PCR:Peak Cell Rate)을 넘지 못하도록 연속된 셀들 사이에 스페이싱(spacing) 기능이 있어야 한다.In ATM networks, spacing is performed between successive cells so that they do not exceed the maximum negotiated peak cell rate (PCR) when establishing a connection by providing a constant interval between cells when each successive cell enters the network. Should be

ATM 망에서 새로운 연결 요청에 대한 수락 여부는 호 설정시에 사용자와 망간에 협상되는 트래픽 파라미터들을 기반으로 하여 결정된다. UPC(Usage Parameter Control)라고 알려진 감시 기능은 연결의 지속시간동안 사용자의 트래픽이 협상된 파라미터 값들을 잘 준수하는가를 감시하는 것으로써 ATM의 초기 단계에서 이 UPC 기능은 연결의 최대셀 전송률(PCR)을 기반으로 감시 제어가 이루어진다. 데이타 셀의 다중화와 OAM(Operation And Maintenance) 셀의 삽입으로 인한 셀 지연 변이(CDV)는 소스 트래픽의 특성을 변화시켜 셀들의 간격을 정상적인 간격보다 좁게 만들어 최대셀 전송률(PCR)을 증가시키고, 버스트니스(burstiness)를 일정값 이상으로 만든다. 이런 셀 지연 변이(CDV)의 영향으로 인하여 셀의 시간 지연뿐만 아니라 셀들간의 도착 간격에도 큰 영향을 받는 음성이나 비디오와 같은 CBR 트래픽에는 셀들의 시간 간격을 일정하게 유지시켜 주는 스페이싱 기능이 반드시 필요하다.Acceptance of a new connection request in an ATM network is determined based on traffic parameters negotiated between the user and the network at call establishment. Surveillance, known as usage parameter control (UPC), monitors the user's traffic for good compliance with the negotiated parameter values for the duration of the connection. In the early stages of ATM, this UPC function is the maximum cell rate (PCR) of the connection. Surveillance control is performed based on this. Cell Delay Variation (CDV) due to multiplexing of data cells and insertion of Operation And Maintenance (OAM) cells changes the characteristics of the source traffic, making the cells smaller than normal, increasing the maximum cell rate (PCR), and bursting. Make the burstiness above a certain value. Due to the effect of CDV, cell-space spacing is essential for CBR traffic such as voice and video, which is affected not only by cell delay but also by the arrival interval between cells. Do.

또한 스위치의 특성 출력 포트로 셀들이 집중적으로 모일 때 출력 충돌(output contention)이 발생하여 전송 시간이 지연되고 그에 따라 셀들의 간격이 변한다. 이러한 셀들의 간격을 적절하게 제어하기 위한 방법이 연속된 셀의 전송간 시간을 일정하게 유지시키는 스페이싱 방법이다. 그리고 ATM 망을 통해 근거리 통신망(LAN)과 같은 비연결형 통신을 지원하기 위해 사용되는 비연결형 서버에서도 출력대역을 적절하게 제어하기 위해 간격 제어 장치가 필요하다. 즉, ATM 망의 초기 단계에서 비연결형 서버는 다른 연결형 서버와 고정된 가상 연결(permanent virtual connection)로 되어 있기 때문에 서버에서 라우팅된 셀들이 특정 출력 포트로 집중되어 고정 대역을 넘어서 전송해야 할 경우에는 다른 채널에도 영향을 미쳐 성능의 저하를 초래하므로 출력 대역 제어를 위해 반드시 간격제어 기능이 있어야 한다. 또한, 비연결형 서비스 기능을 가진 ATM 교환 시스템에서 서버의 특정 출력 가상연결로 버스트한 데이타 트래픽이 집중될 때에 출력 대역 제어를 하지 않고 단순히 셀 헤더 변환만하여 재전송한다면 스위치의 가입자 정합 장치내에 있는 UPC 기능에 의해서 많은 셀 손실이 발생할 수 있다. 따라서 비연결형 서버에 출력대역을 제어하는 기능이 필요하다.In addition, output contention occurs when cells are concentrated in the switch's characteristic output port, which delays the transmission time and changes the cell spacing accordingly. A method for appropriately controlling the spacing of these cells is a spacing method for maintaining a constant time between transmissions of consecutive cells. In addition, even in a connectionless server used to support connectionless communication such as a local area network (LAN) through an ATM network, an interval control device is required to properly control an output band. In other words, in the early stages of ATM networks, a connectionless server is a permanent virtual connection with other connected servers, so when cells routed from a server need to be concentrated to a specific output port and transmitted over a fixed band, It also affects other channels, leading to performance degradation, so the interval control function must be provided for output band control. In addition, the UPC function in the subscriber matching device of the switch if the ATM switching system with the connectionless service function retransmits by simply transforming the cell header without output band control when the data traffic burst to the specific output virtual connection of the server is concentrated. Many cell losses can occur. Therefore, the ability to control the output band of the connectionless server is required.

셀 간격 제어 장치는 각 채널별로 연결설정시에 사용자와 망간에 협상된 최대셀전송률을 기반으로 하여 셀 간격을 제어하는 것으로 동일한 채널상에서는 셀의 순서가 보장되어야 한다. 셀 간격 제어 장치의 가장 간단한 구조는 각 채널별로 분리된 버퍼를 사용하는 것, 즉 멀티 큐(multi-queue)를 이용하는 것으로써 제어가 간단한 반면 채널별로 셀을 저장하기 위한 버퍼를 따로 두어야 하므로 버퍼의 크기가 너무 커지게 되는 단점이 있다.The cell spacing control device controls the cell spacing based on the maximum cell rate negotiated between the user and the network when establishing a connection for each channel. The cell order must be guaranteed on the same channel. The simplest structure of the cell gap control device is to use a separate buffer for each channel, that is, to use a multi-queue, so that the control is simple, but the buffer for storing cells for each channel must be set separately. The disadvantage is that the size becomes too large.

E. Wallmeier와 T. Worster이 제안한 SPACING POLICER(XIV International Switching Symposium, pp.22-25, October, 1992)는 셀 간격 제어 장치의 메모리 크기를 줄이기 위해서 실제 셀과 다음 셀이 있는 곳의 메모리 어드레스를 하나의 저장 단위로 묶어서 링크트 리스트(linked list) 방식을 사용했기 때문에 링크가 끊어지면 다음번 셀을 찾을 수 없다는 단점이 있으며 셀들간의 간격 제어를 위한 방식이 셀 간격 제어 장치에 셀이 입력되어 버퍼에 저장되는 순간에 그 셀의 다음 전송 시간을 결정하는 방식이 때문에 한 슬롯(slot) 동안에 서로 다른 여러 채널들이 동시에 동일한 출력 포트를 향하는 경우에 출력 충돌이 발생하여 한 셀만 그 시간에 전송되고 나머지 셀들은 다음 슬롯으로 지연된다. 이런 현상을 특정 채널에 대해서만 고려해 볼 때, 엄격하게 UPC에서 사용하는 최대셀 전송률(PCR)보다 더 높은 값, 즉 셀과 셀사이의 시간 간격이 셀간 최소 시간 간격(MIT:Minimum Interarrival Time)보다 작게 될 수 있으므로 최대셀 전송률로 감시하는 UPC 메카니즘에서 위반된 셀로 간주될 수 있다.SPACING POLICER (XIV International Switching Symposium, pp.22-25, October, 1992), proposed by E. Wallmeier and T. Worster, uses the memory address of the actual cell and the next cell to reduce the memory size of the cell gap controller. The disadvantage is that the next cell cannot be found when the link is broken because the linked list method is used by grouping it into one storage unit. Because of the way that the next transmission time of the cell is determined at the moment it is stored at, an output collision occurs when several different channels simultaneously point to the same output port during one slot, causing only one cell to be transmitted at that time and the remaining cells. Are delayed to the next slot. Considering this phenomenon only for certain channels, it is strictly higher than the maximum cell rate (PCR) used by UPC, that is, the time interval between cells is smaller than the minimum inter-interval time (MIT). As a result, it can be regarded as a cell violated by the UPC mechanism that monitors the maximum cell rate.

또한 H.J.Chao가 Design of Leaky Bucket Access Control Schemes in ATM Networks(ICC, pp.180-187,1991)라는 논문에서 제안한 스페이싱 기능을 가진 셀 감시 제어 장치는 셀의 전송 시간을 스케쥴 및 관리하기 위해 순서기(Sequencer)라는 장치를 제안했다. 이 순서기(Sequencer)는 셀간의 전송 시간을 최대셀 전송률(PCR)을 넘지 않도록 전송하며 또 각 채널간의 셀 전송 순서를 공평하게 하기 위해 셀의 전송 시간을 올림차순으로 일정하게 저장해서 저장된 시간이 되면 순서대로 전송하도록 구성되어 있다. 그러나 순서기(Sequencer)에서 셀의 전송순서를 맞추기 위해 이미 저장된 셀들 사이에 새로운 셀을 삽입하는 것은 실제 구현이 쉽지 않고, 또 각 채널간의 전송 순서와 셀간의 전송 시간을 제어하기 위해 사용되는 알고리즘도 복잡한 문제점이 있다.In addition, a cell supervisory control device with a spacing function proposed by HJ Chao in the paper Design of Leaky Bucket Access Control Schemes in ATM Networks (ICC, pp.180-187,1991) is used to schedule and manage the transmission time of a cell. We proposed a device called Sequencer. The sequencer transmits the transmission time between cells so as not to exceed the maximum cell rate (PCR), and in order to equalize the cell transmission order between channels, the transmission time of the cells is constantly stored in ascending order. It is configured to transmit in order. However, it is not easy to implement a new cell between cells already stored in order to match the transmission order of cells in the sequencer, and the algorithm used to control the transmission order between each channel and the transmission time between cells is also difficult. There is a complicated problem.

따라서, 상기와 같은 종래 기술의 문제점을 해결 하기 위하여 본 발명은 셀 버퍼링을 위한 메모리 크기를 멀티 큐를 이용할 때보다 상당히 줄일 수 있고, 링크트 리스트 방법을 사용한 것보다 오류에 견고한 구조를 가지며 각 채널당 최대셀 전송률(PCR)을 기반으로 한 셀 스페이싱 알고리즘을 이용하여 정확한 최대셀 전송률을 보장할 수 있는 셀 간격 제어 장치 및 그 방법을 제공하는 데 그 목적이 있다.Therefore, in order to solve the above problems of the prior art, the present invention can considerably reduce the memory size for cell buffering than when using the multi-queue, has a structure that is more robust to errors than the link list method, and has a structure It is an object of the present invention to provide an apparatus and method for controlling cell spacing that can guarantee an accurate maximum cell rate using a cell spacing algorithm based on a maximum cell rate (PCR).

상기 목적을 달성하기 위한 본 발명은 셀을 저장하는 셀 버퍼링 수단; 상기 셀 버퍼링 수단의 사용중인 어드레스를 관리하는 어드레스 FIFO 수단; 상기 셀 버퍼링 수단의 미사용 어드레스를 관리하는 유휴 어드레스 FIFO 수단; 각 채널의 셀 상태를 저장하는 셀 상태 표시 메모리 수단; 상기 셀 상태 표시 메모리 수단의 값을 이용하여 셀의 전송 예정시간을 계산하는 예정 전송 시간(NDT) 계산 수단; 셀의 스페이싱을 위해 도착한 셀의 전송 예정 시간을 등록하기 위한 스케쥴링 수단; 상기 스케쥴링 수단의 동일한 엔트리에 등록되는 셀들을 관리하기 위한 출력 연결 리스트(OLL) 메모리 수단; 상기 스케쥴링 수단이 등록된 것 중에서 전송 시간이 다 된 것들의 제일 앞의 가상 채널 인식자(VCI)를 저장하는 출력 리스트 시작(OLH) 메모리 수단; 및 상기 스케쥴링 수단에 등록된 것 중에서 전송 시간이 다 된 것들의 제일 뒤의 가상 채널 인식자(VCI)를 저장하는 출력 리스트 끝(OLT) 메모리 수단을 구비한 것을 특징으로 한다.The present invention for achieving the above object is a cell buffering means for storing a cell; Address FIFO means for managing an active address of the cell buffering means; Idle address FIFO means for managing unused addresses of the cell buffering means; Cell state display memory means for storing a cell state of each channel; Predetermined transmission time (NDT) calculating means for calculating an estimated transmission time of a cell by using the value of said cell state display memory means; Scheduling means for registering a scheduled transmission time of a cell that has arrived for spacing of the cell; Output linked list (OLL) memory means for managing cells registered in the same entry of the scheduling means; An output list start (OLH) memory means for storing a virtual channel identifier (VCI) at the forefront of those whose transmission time has expired, among which the scheduling means have been registered; And an output list end (OLT) memory means for storing a virtual channel identifier (VCI) at the end of those registered in the scheduling means at the end of the transmission time.

또한, 셀을 저장하는 셀 버퍼링 수단, 상기 셀 버퍼링 수단의 사용중인 어드레스를 관리하는 어드레스 FIFO 수단, 셀 버퍼링 수단의 미사용 어드레스를 관리하는 유휴 어드레스 FIFO 수단과 셀의 스페이싱(spacing)과 관련한 스케쥴을 관리하는 스케쥴 관리 수단으로 구성된 셀 간격 제어 장치에 적용되는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 방법에 있어서, 셀 전송을 위해 매 슬롯 마다 출력 리스트 시작(OLH) 값을 검사하여 출력 리스트 시작(OLH) 값이 '0'보다 큰지를 조사하는 제1단계; 상기 제1단계에서 출력 리스트 시작(OLH) 값이 '0'보다 크면, 출력 리스트 시작(OLH) 값이 가리키는 해당 어드레스 FIFO 수단의 값을 이용하여 셀 버퍼링 수단에 저장된 셀을 전송하고, 셀 상태 표시 메모리 수단의 최종 전송 시간(LDT) 값을 갱신한 후, 전송한 버퍼가 빈 상태인지 조사하는 제2단계; 상기 제2단계에서 전송한 버퍼의 상태가 빈 상태가 아니면 버퍼의 다음 셀에 대한 스케쥴링 처리 루틴을 수행하고, 전송한 버퍼가 빈 상태이면 셀 상태 표시 메모리 수단의 버퍼상태 표시(BEI) 비트를 '1'로 세트시키고, 셀 간격 제어 장치에 입력된 셀이 있는지를 조사하는 제3단계; 상기 제1단계에서 출력 리스트 시작(OLH) 값이 '0'보다 크지 않으면, 해당 슬롯에는 전송할 셀이 없음을 표시하고, 셀 간격 제어 장치로 입력된 셀이 있는지를 조사하는 제4단계; 및 상기 제3단계 또는 상기 제4단계에서 셀 간격 제어 장치로 입력된 셀이 있으면 입력셀 처리 루틴을 수행한 후, 출력 리스트 시작(OLH) 값과 출력 리스트 끝(OLT) 값을 갱신하는 루틴을 수행하고, 입력된 셀이 없으면 출력 리스트 시작(OLH) 값과 출력 리스트 끝(OLT) 값을 갱신하는 루틴을 수행하는 제5단계를 포함하는 것을 특징으로 한다.Further, a cell buffering means for storing a cell, an address FIFO means for managing an active address of the cell buffering means, an idle address FIFO means for managing an unused address of the cell buffering means, and a schedule related to spacing of a cell A cell spacing control method for output bandwidth control in an ATM network applied to a cell spacing controller configured as a schedule management means, the output list starting by checking an output list start (OLH) value for every slot for cell transmission (OLH) A first step of checking whether the value is greater than '0'; If the output list start (OLH) value is greater than '0' in the first step, the cell stored in the cell buffering means is transmitted using the value of the corresponding address FIFO means indicated by the output list start (OLH) value, and the cell status is displayed. A second step of checking whether the transmitted buffer is empty after updating the last transmission time (LDT) value of the memory means; If the state of the buffer transmitted in the second step is not empty, the scheduling processing routine for the next cell of the buffer is performed. If the buffer is empty, the buffer state indication (BEI) bit of the cell state display memory means is set to ' Setting to 1 'and checking whether there is a cell input to the cell gap controller; A fourth step of indicating that there is no cell to transmit in the corresponding slot if the output list start (OLH) value is not greater than '0' in the first step, and checking whether there is a cell input to the cell interval controller; And a routine for updating an output list start (OLH) value and an output list end (OLT) value after performing an input cell processing routine when there is a cell input to the cell spacing controller in the third or fourth step. And performing a routine of updating an output list start (OLH) value and an output list end (OLT) value if there is no input cell.

이하, 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;

제1도는 본 발명이 ATM망에 적용되는 예시도를 나타낸다.1 shows an exemplary diagram in which the present invention is applied to an ATM network.

도면에서 (A)는 출력 버퍼형 ATM 교환 시스템에 적용한 예로써 각 출력 포트마다 버퍼가 있으며 이 버퍼에서의 셀 간격 제어를 위해서 본 발명인 셀 간격 제어 장치가 적용된다.In the figure, (A) is an example applied to an output buffer type ATM switching system, each output port has a buffer, and the cell gap control apparatus of the present invention is applied to control the cell gap in the buffer.

그리고, (B)는 비연결형 서비스 기능을 가진 ATM 교환 시스템에 적용한 예로서, ATM 교환 시스템은 ATM 셀을 교환하는 기능을 가진 ATM 교환 기능과 비연결형 데이터를 처리하는 비연결형 서버로 구성된다. ATM 가입자로부터 보내진 비연결형 데이터는 ATM 교환 기능을 통해 비연결형 서버로 보내져서 서버에서 처리가 된 후 다시 ATM 교환 기능을 통해 다른 교환기나 가입자로 전송되기 위해서 서버의 출력쪽에 버퍼링 된다. 이때 서버의 출력 대역을 제어하기 위해 간격 제어 장치가 사용된다.And, (B) is applied to an ATM switching system having a connectionless service function, the ATM switching system is composed of an ATM switching function having a function for exchanging ATM cells and a connectionless server that processes the connectionless data. The connectionless data sent from the ATM subscriber is sent to the connectionless server through the ATM exchange function, which is then processed by the server and buffered at the server's output for transfer to another exchange or subscriber via the ATM exchange function. At this time, the interval control device is used to control the output band of the server.

(C)는 비연결형 데이터를 서비스하기 위해 ATM 망내에 비연결형 서버를 두었을 때의 출력 대역 제어를 위한 예시도이다. 초기 단계의 비연결형 서버와 서버 사이는 고정 가상 연결(PVC)을 사용하기 때문에 서버에서 라우팅 및 셀 헤더 변환을 거친 셀들이 고정 가상 연결(PVC)의 제한된 대역을 통해 전송되기 위해 서버에서 출력 대역 제어를 해야 한다.(C) is an exemplary diagram for output band control when a connectionless server is placed in an ATM network to service connectionless data. The initial connectionless connection between the server and the server uses a fixed virtual link (PVC), so the server controls the output band so that the cells that have been routed and converted to cell headers are transmitted over the limited band of the fixed virtual link (PVC). Should.

제2도는 본 발명의 일실시예에 따른 셀 간격 제어 장치의 구성도로서, 도면에서 10은 셀 버퍼부, 20은 유휴 어드레스 FIFO, 30은 어드레스 FIFO, 40은 스케쥴 관리부를 각각 나타낸다.FIG. 2 is a block diagram of an apparatus for controlling cell spacing according to an embodiment of the present invention, wherein 10 is a cell buffer unit, 20 is an idle address FIFO, 30 is an address FIFO, and 40 is a schedule manager.

본 발명인 셀 간격 제어 장치는 셀을 저장하는 셀 버퍼부(10), 상기 셀 버퍼부(10)의 사용중인 어드레스를 관리하는 어드레스 FIFO(30), 셀 버퍼부(10)의 미사용 어드레스를 관리하는 유휴 어드레스 FIFO(20)와 셀의 스페이싱(spacing)과 관련한 스케쥴 관리부(40)로 구성된다. 여기서 셀 버퍼부(10)는 공유형(shared) 버퍼를 사용하며, 어드레스 FIFO(30)는 각 채널별로 분리된 버퍼를 사용한다. 셀 간격 제어장치로 들어 온 셀은 셀 버퍼부(10)에 버퍼링되는데 셀 버퍼부(10)의 저장되는 장소는 유휴 어드레스 FIFO(20)에 있는 유휴 어드레스를 받아서 셀 버퍼부(10)에 저장하며 그 어드레스는 어드레스 FIFO(30)의 해당 채널에 저장된다. 그리고 각 셀의 출력 전송 예정 시간이 스케쥴 관리부(40)에 의해서 정해지며 그 예정된 시간이 되면 셀을 셀 간격 제어 장치에서 출력한다.An apparatus for controlling cell spacing according to the present invention includes a cell buffer unit 10 for storing a cell, an address FIFO 30 for managing an active address of the cell buffer unit 10, and an unused address for the cell buffer unit 10. It is composed of an idle address FIFO 20 and a schedule manager 40 associated with spacing of cells. Here, the cell buffer unit 10 uses a shared buffer, and the address FIFO 30 uses a separate buffer for each channel. The cell entering the cell spacing controller is buffered in the cell buffer unit 10. The place where the cell buffer unit 10 is stored receives the idle address in the idle address FIFO 20 and stores it in the cell buffer unit 10. The address is stored in the corresponding channel of the address FIFO 30. The scheduled transmission time of each cell is determined by the schedule manager 40, and when the predetermined time is reached, the cell is output from the cell interval controller.

제3도는 본 발명의 일실시예에 다른 스케쥴 관리부의 구성도이다.3 is a diagram illustrating a schedule management unit according to an embodiment of the present invention.

스케쥴 관리부(40)는 셀 간격 제어 장치에 들어 온 셀의 전송 예정 시간을 등록하기 위한 스케쥴러(Scheduler)(46)와 스케쥴러(46)의 동일한 엔트리(entry)에 등록되는 셀들을 관리하기 위한 출력 연결 리스트(OLL:Output Linked List) 메모리(45)와 스케쥴러(46)에 등록된 것 중에서 전송 시간이 다 된 것들의 제일 앞의 것과 제일 뒤의 것을 각각을 나타내는 출력 리스트 시작(OLH:Output List Head) 메모리(43)와 출력 리스트 끝(OLT:Output List Tail) 메모리(44), 그리고 각 채널의 셀 상태를 나타내는 셀 상태 표시 메모리(41)와 스케쥴러(46)에 등록하기 위해 셀의 전송 예정 시간을 계산하는 예정 전송 시간(NDT:Next Departure Time) 계산부(42)로 구성된다.The schedule manager 40 outputs a connection for managing cells registered in the same entry of the scheduler 46 and the scheduler 46 for registering the scheduled transmission time of the cell entered into the cell interval control apparatus. List (OLL: Output Linked List) The output list head (OLH: Output List Head), each of which is registered in the memory 45 and the scheduler 46, showing the first and the last of the transfer timed ones, respectively. The scheduled transmission time of the cell is registered in order to register the memory 43 and the output list tail (OLT) memory 44 and the cell state display memory 41 and the scheduler 46 indicating the cell state of each channel. And a next transmission time (NDT) calculation unit 42 for calculating.

그리고 스케쥴러(46)는 동일한 시간대에 2개 이상의 셀이 등록될 수 있으므로 등록된 것의 시작과 끝을 각각 나타내기 위해 스케쥴러 엔트리 시작(SEH:Scheduler Entry Head)(47)과 스케쥴러 엔트리 끝(SET:Scheduler Entry Tail)(48) 필드로 나누어져 있다. 셀상태 표시 메모리(41)는 예정 전송 시간을 계산하기 위해 사용되는 최종 전송 시간(LDT:Last Departure Time)(49) 필드와 셀간 최소 전송 시간(Minimum Interarrival Time)(50) 필드 그리고 셀이 셀 간격 제어 장치로 들어 왔을 대 해당 채널이 빈(empty) 상태인지 아닌지를 나타내 주는 버퍼 상태 표시(BEI:Buffer Empty Indication) 메모리(51)로 구성된다.Since the scheduler 46 may register two or more cells in the same time zone, the scheduler entry head (SEH) 47 and the scheduler entry end (SET: Scheduler) to indicate the start and end of the registered one, respectively. Entry Tail) 48 fields. The cell status indication memory 41 has a Last Departure Time (LDT) field, a Minimum Interarrival Time (50) field used to calculate a scheduled transmission time, and a cell interval between cells. When the controller enters the control device, a buffer status indication (BEI) memory 51 indicating whether or not the corresponding channel is empty is configured.

상기와 같이 구성된 본 발명의 동작을 살펴보면, 셀 버퍼부(10)는 셀 간격 제어 장치로 들어 온 셀을 실제 버퍼링하는 곳이며 어드레스 FIFO(30)는 셀 버퍼부(10)의 사용중인 어드레스를 관리하는 곳이며 유휴 어드레스 FIFO(20)는 셀 버퍼부(10)의 미사용 어드레스를 관리하는 곳이다. 그리고 스케쥴 관리부(40)의 셀의 스페이싱(spacing)을 위해 셀들의 전송 예정 시간을 계산하고 관리하는 기능을 수행한다. 여기서 셀 버퍼부(10)는 공유형 버퍼를 사용하며 어드레스 FIFO(30)는 각 채널별로 분리형 버퍼를 사용한다. 또한 모든 셀은 일단 셀 버퍼부(10)에 저장되었다가 전송되며 최소 1 슬롯(slot)의 지연이 발생한다. 셀 간격 제어 장치로 들어 온 셀은 유휴 어드레스 FIFO(20)에서 유휴한 어드레스를 받아 셀 버퍼부(10)의 인덱스로 사용하여 셀 버퍼부(10)에 저장된다. 그리고 셀의 가상 채널 인식자(VCI) 값에 따라 해당 채널의 어드레스 FIFO(30)로 그 어드레스를 저장한다. 그런 후 스케쥴 관리부(40)에서 그 셀의 예정 전송 시간을 계산하여 관리한다. 스케쥴 셀의 전송 시간이 되면 셀버퍼부(10)에서 그 셀을 내 보내며 그 셀 버퍼부(10)의 어드레스는 유휴 어드레스 FIFO(20)로 돌려보낸다. 그리고 해당 채널에 대기중인 셀이 있으면 스케쥴 관리부(40)에서 다음 셀의 예정 전송 시간을 스케쥴하여 관리한다.Referring to the operation of the present invention configured as described above, the cell buffer unit 10 is the actual buffer of the cell entered into the cell interval control device and the address FIFO 30 manages the address in use of the cell buffer unit 10 The idle address FIFO 20 manages unused addresses of the cell buffer unit 10. In addition, the schedule management unit 40 performs a function of calculating and managing a scheduled transmission time of cells for spacing of cells. Here, the cell buffer unit 10 uses a shared buffer and the address FIFO 30 uses a separate buffer for each channel. In addition, all cells are once stored in the cell buffer unit 10 and then transmitted, and a delay of at least one slot occurs. The cell entering the cell gap control device receives the idle address from the idle address FIFO 20 and stores the cell address in the cell buffer unit 10 using the cell address as an index of the cell buffer unit 10. The address is stored in the address FIFO 30 of the corresponding channel according to the virtual channel identifier (VCI) value of the cell. After that, the schedule manager 40 calculates and manages the scheduled transmission time of the cell. When the transmission time of the scheduled cell is reached, the cell buffer unit 10 sends the cell out and the address of the cell buffer unit 10 returns to the idle address FIFO 20. If there is a cell waiting for the channel, the schedule manager 40 schedules and manages the scheduled transmission time of the next cell.

스케쥴 관리부(10)의 스케쥴러(46)는 셀 간격 제어 장치에 들어온 셀의 전송 예정시간을 등록하기 위한 것인데 동일한 시간대에 2개이상의 셀이 등록될 수 있으므로 등록된 것의 시작과 끝을 각각 나타내기 위해 스케쥴러 엔트리 시작(SEH)(47)과 스케쥴러 엔트리 끝(SET)(48) 필드로 구성된다. 출력 연결 리스트(OLL)(45)는 스케쥴러(46)의 동일한 엔트리에 등록되는 여러 셀들을 관리하기 위한 것으로 내부의 동작은 링크트 리스트(linked list)로 동작하는 메모리이다. 출력 리스트 시작(OLH)(43)과 출력리스트 끝(OLT)(44) 메모리는 출력 연결 리스트 메모리(45)와 스케쥴러(46)에 등록된 것 중에서 전송 시간이 다 된 것들의 제일 앞의 것과 제일 뒤의 것을 각각 나타내는데 사용된다. 그리고 셀 상태 표시 메모리(41)는 각 채널의 전송된 셀의 상태를 나타내는데 사용되며 예정 전송 시간(NDT) 계산부(42)는 셀의 전송 예정 시간을 스케쥴러(46)에 등록하기 위해 계산하는데 사용된다. 스케쥴 관리부(40)의 내부 동작에 대한 설명의 편의상 본 발명의 간격 제어 장치에서 셀 스페이싱을 위하여 사용된 논리적인 동작과 스페이싱 알고리즘에 관한 설명을 먼저 하고자 한다.The scheduler 46 of the schedule management unit 10 is for registering a scheduled transmission time of a cell that has entered the cell interval control apparatus, and two or more cells may be registered in the same time zone to indicate the start and end of the registered one, respectively. It consists of the Start Scheduler Entry (SEH) 47 and End Scheduler Entry (SET) 48 fields. The output linked list (OLL) 45 is for managing several cells registered in the same entry of the scheduler 46. The internal operation is a memory that operates as a linked list. The output list start (OLH) 43 and the output list end (OLT) 44 memories are the ones registered at the output connection list memory 45 and the scheduler 46, the ones with the earliest ones having the transfer time. Used to represent each of the latter. The cell state display memory 41 is used to indicate the state of the transmitted cell of each channel, and the scheduled transmission time (NDT) calculation unit 42 is used to calculate the scheduled transmission time of the cell to register with the scheduler 46. do. For convenience of explanation of the internal operation of the schedule management unit 40, the logical operation and spacing algorithm used for the cell spacing in the interval control apparatus of the present invention will be described first.

제4도는 본 발명의 논리적인 동작을 나타낸 것으로서, 버퍼에 저장된 모든 셀의 전송 시간이 다 스케쥴되어 있는 것이 아니라 각 연결의 선두 셀 하나만 전송시간이 스케쥴된다. 이것은 셀이 도착하는 순간에 전송할 시간을 미리 정했을 때 여러 셀의 전송 시간이 동일한 슬롯에 일치하여 출력 충돌(output contention)이 일어나기 때문에 실제 전송 시간이 되었을 때 한 셀만 전송되고 나머지 셀들은 한 슬롯당 하나씩 전송되어 뒤로 지연이 일어나서 동일한 채널에 속하는 셀들의 시간 간격이 변할 수 있게 된다. 따라서 이런 경우에 셀간 시간 간격을 일정하게 유지시켜 주기 위하여 본 셀 간격 제어 장치는 셀을 전송한 후 다음 셀의 전송 시간을 결정하는 방법을 사용한다. 즉, 전송 셀간 시간 간격(interdepature time)을 일정하게 유지시켜주는 방법이다. 이렇게 하면 최소 시간 간격(MIT)을 반드시 유지하게 된다. 그리고 본 간격 제어 장치가 한 슬롯동안 처리하는 동작은 다음과 같다.4 illustrates a logical operation of the present invention, in which the transmission time of all cells stored in the buffer is not all scheduled, but only the head cell of each connection is scheduled. This is because when the cell arrives at the time of arrival, when the transmission time of several cells coincides with the same slot and output contention occurs, only one cell is transmitted when the actual transmission time is reached, and the other cells are one per slot. The delay is transmitted, resulting in a change in the time interval of cells belonging to the same channel. Therefore, in this case, in order to keep the inter-cell time interval constant, the present cell interval control apparatus uses a method of determining the transmission time of the next cell after transmitting the cell. That is, a method of maintaining a constant interdepature time between transmission cells. This ensures a minimum time interval (MIT). The operation of the interval control device for one slot is as follows.

입력된 모든 셀은 셀 버퍼부(10)에 저장되었다가 그 다음 슬롯부터 나갈 수 있다. 한 슬롯중 앞의 반 슬롯 동안은 셀을 전송하는 일을 하고, 뒤의 반 슬롯 동안은 새로 도착한 셀을 버퍼에 저장하는 일을 한다. 다음에 전송할 예정 전송 시간(NDT)을 스케쥴링하는 것은 앞의 셀을 전송한 직후에만 한다. 즉, 전송한 채널에 대기중인 셀이 있을 경우에만 다음 셀의 전송 시간을 스케쥴한다. 만약 대기중인 셀이 없다면 그 채널에 대한 다음의 예정 전송 시간을 스케쥴링하는 과정은 없다. 새로 도착한 셀의 해당 버퍼가 빈(empty) 상태일 때(BEI필드가 1로 세트되어 있을 때)는 셀의 저장과 그 셀의 예정 전송 시간을 스케쥴링 하는 과정이 함께 이루어진다.All input cells may be stored in the cell buffer unit 10 and exit from the next slot. During the first half slot of one slot, the cell is transmitted. During the next half slot, the newly arrived cell is stored in the buffer. The next scheduled transmission time (NDT) to be transmitted is only immediately after transmitting the previous cell. That is, the transmission time of the next cell is scheduled only when there is a cell waiting for the transmitted channel. If there is no cell waiting, there is no process for scheduling the next scheduled transmission time for that channel. When the buffer of the newly arrived cell is empty (when the BEI field is set to 1), the process of storing the cell and scheduling the scheduled transmission time of the cell is performed together.

제5도는 본 발명에 사용된 스페이싱 흐름도를 나타낸다.5 shows a spacing flowchart used in the present invention.

출력 대역 제어 방법으로 셀간 최소 시간(MIT)만큼 간격을 두는 방법을 사용한다. 따라서 출력 대역 제어에 필요한 파라미터는 셀간 최소 시간(MIT)과 지난번 셀의 전송 시간을 나타내는 최종 전송 시간(LDT:Last Departure Time) 그리고 현재시간(T) 값이다. 여기서 셀간 최소 시간(MIT)은 연결 설정시에 협상한 트래픽 파라미터인 최대셀 전송률(PCR)에서 정해지며 최종 전송 시간(LDT) 값은 셀이 전송될 때마다 새로 갱신되며 현재 시간(T) 값은 현재의 슬롯 시간을 나타낸 것으로 매 슬롯마다 1씩 증가하며 X는 스케쥴링에 사용할 전송 시간 간격(spacing time)을 나타낸 것이다. 제5도의 스페이싱 알고리즘은 가상 스케쥴링(Virtual Scheduling) 알고리즘을 사용한 것으로써 현재 시간(T) 값이 최종 전송 시간(LDT) 값과 셀간 최소 시간(MIT) 값의 합보다 크면(100) 전송 간격 시간(X)은 0이 되며(110) 작으면 최종 전송 시간(LDT) 값과 셀간 최소 시간(MIT) 값의 합에서 현재 시간(T)을 뺀 차를 전송 간격 시간(X)의 값으로 정한다(120).As the output band control method, the interval between cell minimum time (MIT) is used. Therefore, the parameters required for output band control are the minimum time between cells (MIT), the last transmission time (LDT: last time) indicating the transmission time of the last cell, and the current time (T). Here, the minimum inter-cell time (MIT) is determined from the maximum cell rate (PCR), a traffic parameter negotiated at the time of connection establishment, and the last transmission time (LDT) value is updated every time a cell is transmitted, and the current time (T) value is It shows the current slot time, which is increased by 1 for each slot, and X is the spacing time used for scheduling. The spacing algorithm of FIG. 5 uses a virtual scheduling algorithm, and if the current time (T) value is greater than the sum of the final transmission time (LDT) value and the inter-cell minimum time (MIT) value (100), the transmission interval time ( X is 0 (110), and if it is small, the difference of the sum of the final transmission time (LDT) value and the inter-cell minimum time (MIT) minus the current time (T) is determined as the transmission interval time (X) value (120). ).

다시 스케쥴 관리부(40)의 동작을 설명하면 매 슬롯 마다 먼저 전송 예정 시간이 다 된 셀이 있는지 체크하여 있으면 전송하고 셀상태 표시 메모리(41)의 최종 전송 시간(LDT) 필드(49)에 전송한 현재 시간(T)값을 새로 갱신한다. 그리고 셀을 전송한 채널에 대하여 대기중인 셀이 있으면 NDT 계산부(42)에서 제5도의 스페이싱 알고리즘을 적용하여 다음의 전송 간격 시간(X)을 구하고, 그것을 스케쥴러(46)의 인덱스(index)로 사용하여 예정 전송 시간에 해당하는 엔트리(entry)에 등록한다. 스케쥴러(46)의 동일한 엔트리에 여러 개가 스케쥴될 수 있으므로 제일 먼저 스케쥴된 것은 스케쥴러 엔트리 시작(SEH) 필드(47)에 저장하고, 그 다음 부터는 출력연결 리스트(OLL) 메모리(45)를 사용하여 저장하고, 제일 마지막에 스케쥴된 것은 스케쥴로 엔트리 끝(SET) 필드(48)에 저장한다. 다음에 전송할 셀에 대한 스케쥴링 과정이 끝나서 스케쥴러46)의 엔트리와 출력 연결 리스트(45)의 엔트리가 새로 갱신된 후에는 매 슬롯마다 셀 간격 제어 장치에서 전송할 셀들의 출력 리스트를 관리하기 위해서 출력 리스트 시작(OLH) 메모리(43)와 출력 리스트 끝(OLT) 메모리(44)의 값을 갱신한다.Referring to the operation of the schedule management unit 40 again, if there is a cell that has already reached the scheduled transmission time in every slot, it transmits and transmits it to the last transmission time (LDT) field 49 of the cell status display memory 41. Update the current time T value. If there is a cell waiting for the channel to which the cell has been transmitted, the next transmission interval time (X) is obtained by applying the spacing algorithm of FIG. 5 in the NDT calculation unit 42, and the index of the scheduler 46 is obtained. Register in the entry corresponding to the scheduled transfer time. Since multiple entries can be scheduled in the same entry in the scheduler 46, the first scheduled one is stored in the scheduler entry start (SEH) field 47, and then stored using the output link list (OLL) memory 45. And the last scheduled one is stored in the End of Entry (SET) field 48 as a schedule. After the scheduling process for the cell to be transmitted is completed and the entry of the scheduler 46) and the entry of the output connection list 45 are newly updated, the output list starts to manage the output list of cells to be transmitted by the cell interval control apparatus every slot. (OLH) The values of the memory 43 and the output list end (OLT) memory 44 are updated.

제6도는 제5도의 스페이싱 알고리즘을 써서 얻은 전송 간격 시간(X)을 사용해 스케쥴러(46)에 등록하는 방법을 나타낸 것이다.FIG. 6 shows a method of registering with the scheduler 46 using the transmission interval time X obtained using the spacing algorithm of FIG.

전송 시간 스케쥴링은 셀을 전송한 후 그 채널에 대기중인 셀이 있을 때 그리고 빈(emtpty) 상태의채널에 셀이 새로 도착할 때의 2 경우에만 발생한다. 제6도와 같이 현재 시간(T) 값에서 다음의 전송 간격 시간(X) 값을 인덱스로 사용하여 셀의 VCI 값을 스케쥴러(46)에 등록한다. 여기서 스케쥴러 엔트리 시작(SEH)과 스케쥴러 엔트리 끝(SET)은 전송 시간이 동일하여 스케쥴러(46)의 동일한 엔트리에 등록된 것들의 처음과 끝을 각각 나타내기 위한 것이며 출력 연결 리스트(OLL)(45)는 동일한 슬롯에 여러개(2개 이상)의 셀이 스케쥴될 때 스케쥴러 엔트리 시작(SEH) 필드(47)와 스케쥴러 엔트리 끝(SET) 필드 사이의 셀들을 관리하기 위한 것이다. 현재 시간(T)와 전송 간격 시간(X)를 스케쥴러(46)의 인덱스로 사용하여 해당 스케쥴러 엔트리 끝(SET)(48)의 값을 읽어서 만약 '0'이면 그 시간에는 아직 어떤 것도 스케쥴되어 있지 않은 것을 의미하여 스케쥴러 엔트리 시작(SEH)(47)과 스케쥴러 엔트리 끝(SET)(48)에 해당 VCI값을 저장한다. 스케쥴러 엔트리 끝(SET)(48)에 '0'이 아닌 어떤 값이 존재하면 그것은 그 시간에 이미 다른 셀이 등록되어 있으며 스케쥴러 엔트리 끝(SET)(48)의 값은 등록되어 있는 마지막 셀의 VCI 값을 의미하므로, 새로 스케쥴된 값을 스케쥴러 엔트리 끝(SET)(48)에 연결시킨다. 동일한 스케쥴러의 엔트리에 여러개의 셀이 스케쥴될 경우에 2번째 스케쥴링된 것은 스케쥴러 엔트리 시작(SEH)(47)의 값을 출력 연결 리스트(OLL)(45)의 인덱스로 사용하여 그 엔트리에 새로 스케쥴된 셀의 VCI를 저장하고, 스케쥴러 엔트리 끝(SET)(48)에도 새로 갱신하여 제일 나중에 등록된 셀을 가리키도록 한다. 그 다음 또 스케쥴링되면 스케쥴러 엔트리 끝(SET)(48)의 값을 인덱스로하여 출력 연결 리스트(OLL)(45)에 새로운 값을 연결시키고 스케쥴러 엔트리 끝(SET)(48)도 갱신한다. 제6도의 경우 VCI가 2인 셀이 제일 먼저 스케쥴의 스케쥴러 엔트리 시작(SEH)(47)에 등록되고, 그 다음에 VCI가 3번인 셀이 스케쥴되어 출력 연결 리스트(OLL)(45)에 저장되고 마지막으로 VCI가 N번인 셀이 스케쥴러 엔트리 끝(SET)(48)에 등록된 것을 보여주고 있다. 스케쥴러(46)는 최대(M+1)개의 슬롯에 대하여 나타낼 수 있도록 구성되어 있으므로 현재 시간(T)값은 (M+1)로 모듈(modulus)을 취한다. 즉, 현재 시간(T)의 값은 0에서 시작하여 1씩 증가하여 M에 도달하면 다시 0으로 돌아간다. 그리고 지나간 슬롯 시간에 대한 스케쥴러 엔트리 시작(SEH)(47)가 스케쥴러 엔트리 끝(SET)(48)의 값은 모두 0으로 세트한다.Transmission time scheduling occurs only in two cases when there is a cell waiting on a channel after transmitting the cell and when a cell arrives on an empty channel. As shown in FIG. 6, the VCI value of the cell is registered in the scheduler 46 by using the next transmission interval time X value as an index from the current time T value. Here, the scheduler entry start (SEH) and the scheduler entry end (SET) are for indicating the beginning and the end of those registered in the same entry of the scheduler 46 with the same transmission time, respectively. Is for managing cells between the Scheduler Entry Start (SEH) field 47 and the Scheduler Entry End (SET) field when multiple (more than two) cells are scheduled in the same slot. Using the current time (T) and the transmission interval time (X) as the index for the scheduler 46, the value of the scheduler entry end (SET) 48 is read and if it is '0' then nothing is scheduled at that time. In other words, the corresponding VCI value is stored in the scheduler entry start (SEH) 47 and the scheduler entry end (SET) 48. If any value other than '0' is present at the scheduler entry end (SET) 48, it is already registered at that time, and the value of the scheduler entry end (SET) 48 is the VCI of the last cell registered. As the value refers, the newly scheduled value is linked to the scheduler entry end (SET) 48. When multiple cells are scheduled for entries in the same scheduler, the second scheduled schedule is newly scheduled for that entry using the value of the scheduler entry start (SEH) 47 as an index into the output connection list (OLL) 45. The VCI of the cell is stored and updated at the end of the scheduler entry (SET) 48 to point to the last registered cell. Then, when scheduled again, the value of the scheduler entry end (SET) 48 is indexed to link the new value to the output connection list (OLL) 45 and the scheduler entry end (SET) 48 is also updated. In FIG. 6, the cell with VCI 2 is first registered at the scheduler entry start (SEH) 47 of the schedule, and then the cell with VCI 3 is scheduled and stored in the output connection list (OLL) 45. Finally, the cell with VCI number N is registered at the scheduler entry end (SET) 48. Since the scheduler 46 is configured to represent up to (M + 1) slots, the current time (T) value takes a module (modulus) as (M + 1). That is, the value of the current time T starts at 0, increases by 1, and returns to 0 when M is reached. The scheduler entry start (SEH) 47 for the past slot time sets all of the values of the scheduler entry end (SET) 48 to zero.

제7도는 출력 리스트 시작(OLH) 출력 리스트 끝(OLT) 값에 대한 갱신을 설명하고 있다.Figure 7 illustrates an update to the output list start (OLH) and the output list end (OLT) values.

스케쥴러(46)에 등록된 셀중에서 전송 예정 시간이 다 되어서 전송을 해야하는 셀들의 리스트를 출력 리스트(Output List)라 하며 이것은 한 슬롯에 한셀만 전송되기 때문에 여러 셀이 지연으로 인하여 출력 리스트에 있을 수 있다. 이런 출력 리스트중에서 제일 앞의 것을 나타내기 위한 것이 출력 리스트 시작(OLH) 메모리(43)이며 제일 뒤의 것을 나타내기 위한 것이 출력 리스트 끝(OLT) 메모리(44)이다.Among the cells registered in the scheduler 46, a list of cells to be transmitted when the scheduled time is reached is called an output list. Since only one cell is transmitted in one slot, multiple cells may be in the output list due to delay. have. Among the output lists, the first one is the output list start (OLH) memory 43 and the last one is the output list end (OLT) memory 44.

제7도의 (A)는 현재 슬롯 시간이 T-1로써 출력 리스트 시작(OLH) 메모리(43)와 출력 리스트 끝(OLT) 메모리(44)의 값이 모두 0인 것으로 현재 시간에는 셀 간격 제어 장치에서 전송할 셀이 없음을 나타내고 있다. 그리고 다음 슬롯 시간(T)에 3개의 셀(2번, 3번, N번 버퍼의 셀)이 전송을 위해서 스케쥴러에 등록되어 있음을 보여주고 있다. 즉, 출력 리스트 끝(OLT)(43) 값이 '0'이면 출력 리스트가 빈(empty) 상태이므로 다음 슬롯 시간에 전송할 셀을 출력 리스트에 갱신하기 위하여 스케쥴러(46)의 T시간에 해당하는 스케쥴러 엔트리 시작(SEH)(47)의 값을 출력 리스트 시작(OLH) 메모리(43)에 저장하고, 스케쥴러 엔트리 끝(SET)(48)값을 출력 리스트 끝(OLT) 메모리(44)에 저장한다.(A) of FIG. 7 shows that the current slot time is T-1, and the values of the output list start (OLH) memory 43 and the output list end (OLT) memory 44 are both zero. Indicates that there is no cell to transmit. In the next slot time T, three cells (cells 2, 3, and N buffers) are registered in the scheduler for transmission. That is, if the value of the end of the output list (OLT) 43 is '0', the scheduler corresponding to the T time of the scheduler 46 is updated to update the cell to be transmitted at the next slot time in the output list because the output list is empty. The value of the entry start (SEH) 47 is stored in the output list start (OLH) memory 43 and the scheduler entry end (SET) 48 value is stored in the output list end (OLT) memory 44.

제7도의 (B)는 현재 슬롯 시간이 T로써 출력 리스트 시작(OLH) 메모리(43)와 출력 리스트 끝(OLL) 메모리(44)가 새로 갱신된 것을 보여 주고 있으며 매 슬롯마다 출력 리스트 시작(OLH) 메모리(43)의 값을 출력 연결 리스트(OLL)(45)의 인덱스로 사용하여 그 엔트리에 있는 값을 출력 리스트 시작(OLH) 메모리(43)에 갱신하여 다음 슬롯에서 전송할 셀을 정한다. 그리고 매 슬롯마다 출력 리스트 끝(OLT) 메모리(44)의 값이 '0'이 아니면 그값을 출력 연결 리스트(OLL)(45)의 인덱스로 사용하여 그 엔트리에 다음 슬롯 시간에 해당하는 스케쥴러 엔트리 시작(SEH)(47) 값을 저장하고, 스케쥴러 엔트리 끝(SET)(48) 값을 출력 리스트 끝(OLT) 메모리(44)에 갱신한다.(B) of FIG. 7 shows that the output list start (OLH) memory 43 and the output list end (OLL) memory 44 are newly updated as the current slot time is T, and the output list start (OLH) is performed every slot. Using the value of the memory 43 as an index of the output linked list (OLL) 45, the value in the entry is updated in the output list start (OLH) memory 43 to determine the cell to be transmitted in the next slot. If the value of the output list end (OLT) memory 44 is not '0' for each slot, the value is used as an index of the output linked list (OLL) 45 to start the scheduler entry corresponding to the next slot time in the entry. The (SEH) 47 value is stored and the scheduler entry end (SET) 48 value is updated in the output list end (OLT) memory 44.

제8도는 본 발명의 일실시예에 따른 전체 흐름도를 나타낸다.8 shows an overall flowchart according to an embodiment of the present invention.

슬롯이 시작되면 셀 간격 제어 장치는 셀 전송을 위해 매 슬롯 마다 출력 리스트 시작(OLH) 값을 검사하여(200) 전송할 셀이 있는지 즉, 출력 리스트 시작(OLH) 값이 '0'보다 큰지를 조사한다(201).When the slot is started, the cell interval control device checks the output list start (OLH) value in every slot for cell transmission (200) to check whether there is a cell to be transmitted, that is, the output list start (OLH) value is greater than '0'. (201).

출력 리스트 시작(OLH) 값이 '0'보다 크면, 출력 리스트 시작(OLH)값이 가리키는 해당 어드레스 FIFO(30)의 값을 이용하여 셀 버퍼부(10)에 저장된 셀을 전송하고(202), 셀 상태 표시 메모리(41)의 최종 전송 시간(LDT)(49) 값을 갱신한 후(203), 전송한 버퍼가 빈 상태가 되었는지 조사한다(204). 전송한 버퍼의 상태가 빈 상태가 아니면 버퍼의 다음 셀에 대한 스케쥴링 처리 루틴을 수행하고(205), 전송한 버퍼가 빈 상태이면, 셀 상태 표시 메모리(41)의 버퍼 상태 표시(BEI) 비트를 '1'로 세트시키고(206), 셀 간격 제어 장치에 입력된 셀이 있는지를 조사한다(208). 또한, 출력 리스트 시작(OLH) 값이 '0'보다 크지 않으면(201), 해당 슬롯에는 전송할 셀이 없음을 표시하고(207), 셀 간격 제어 장치로 입력된 셀이 있는지를 조사한다(208). 셀 간격 제어 장치로 입력된 셀이 있으면 입력 셀 처리 루틴을 수행한 후(209), 출력 리스트 시작(OLH) 값과 출력 리스트 끝(OLT) 값을 갱신하는 루틴을 수행하고(210), 입력된 셀이 없으면 출력 리스트 시작(OLH) 값과 출력 리스트 끝(OLT) 값을 갱신하는 루틴을 수행하고(210), 종료한다.If the output list start (OLH) value is greater than '0', the cell stored in the cell buffer unit 10 is transmitted using the value of the corresponding address FIFO 30 indicated by the output list start (OLH) value (202). After updating the last transfer time (LDT) 49 value of the cell state display memory 41 (203), it is checked whether the transferred buffer is empty (204). If the status of the transmitted buffer is not empty, a scheduling processing routine for the next cell of the buffer is performed (205). If the transmitted buffer is empty, the buffer status indication (BEI) bit of the cell status display memory 41 is cleared. Set to '1' (206), and check whether there is a cell input to the cell spacing controller (208). In addition, if the output list start (OLH) value is not greater than '0' (201), it indicates that there is no cell to be transmitted in the corresponding slot (207), and checks whether there is a cell inputted by the cell gap controller (208). . If there is a cell input to the cell spacing controller, after performing an input cell processing routine (209), a routine for updating an output list start (OLH) value and an output list end (OLT) value is performed (210). If there is no cell, a routine for updating an output list start (OLH) value and an output list end (OLT) value is performed (210), and the process ends.

제9도는 본 발명의 일실시예에 따른 스케쥴링 처리 흐름도를 나타낸다.9 is a flowchart illustrating a scheduling process according to an embodiment of the present invention.

먼저, 스케쥴하고자 하는 셀에 대해 셀 상태 표시 메모리(41)에서 최종 전송 시간(LDT) 값과 셀간 최소 시간(MIT) 값을 이용하여 NDT 계산부(42)에서 셀 간격을 계산하여(211) 스케쥴러의 해당 스케쥴러 엔트리 끝(SET)의 값이 'zero'인지를 확인한다(212). 스케쥴러 엔트리 끝(SET)의 값이 'zero'이면 그 시간에는 아직 어떤 것도 스케쥴되어 있지 않은 것을 의미하므로 스케쥴하고자 하는 셀의 VCI 값을 스케쥴러 엔트리 시작(SEH)과 스케쥴러 엔트리 끝(SET)에 갱신하여 저장하고(213), 스케쥴러 엔트리 끝(SET)의 값이 'zero'이 아니면 그 시간에 이미 다른 셀이 등록되어 있으므로 현재 스케쥴러 엔트리 끝(SET)의 값을 출력 연결 리스트(OLL)의 인덱스로 사용하여 출력 연결 리스트(OLL)에 스케쥴하는 셀의 VCI 값을 저장하고(214), 저장한 VCI가 가리키는 출력 연결 리스트(OLL)에 'zero'를 저장하고(215), 스케쥴러 엔트리 끝(SET)에 저장한 VCI 값으로 갱신하고(216) 종료한다.First, a cell interval is calculated by the NDT calculation unit 42 using a final transfer time (LDT) value and an inter-cell minimum time (MIT) value in a cell state display memory 41 for a cell to be scheduled (211). It is checked whether the value of the scheduler entry end (SET) of the value is 'zero' (212). If the value of the scheduler entry end (SET) is 'zero', it means that nothing has been scheduled at that time. Therefore, the VCI value of the cell to be scheduled is updated at the scheduler entry start (SEH) and the scheduler entry end (SET). Save (213), and if the value of the scheduler entry end (SET) is not 'zero', another cell is already registered at that time, so the value of the current scheduler entry end (SET) is used as an index of the output connection list (OLL). Store the VCI value of the cell scheduled in the output connection list (OLL) (214), store the zero in the output connection list (OLL) indicated by the stored VCI (215), and at the end of the scheduler entry (SET) Update to the stored VCI value (216) and end.

제10도는 본 발명의 일실시예에 따른 입력셀 처리 흐름도를 나타낸다.10 is a flowchart illustrating an input cell process according to an embodiment of the present invention.

입력셀 처리 루틴은 입력된 셀을 셀 버퍼부(10)에 저장하고(217), 셀 상태 표시 메모리(41)의 해당 채널에 대한 버퍼 상태 표시(BEI) 비트를 검사하여(218) 버퍼 상태 표시(BEI) 비트가 '1'인지를 체크한다(219), 버퍼 상태 표시(BEI) 비트가 '1'이면 셀 버퍼부(10)가 빈 상태 이므로 스케쥴링 루틴을 수행하고(220), 버퍼 상태 표시(BEI) 비트가 '1'이 아니면 바로 입력 셀 처리 루틴을 종료한다.The input cell processing routine stores the input cell in the cell buffer unit 10 (217), examines the buffer status display (BEI) bit for the corresponding channel of the cell status display memory 41 (218), and displays the buffer status. (BEI) check whether the bit is '1' (219), if the buffer status display (BEI) bit is '1', since the cell buffer unit 10 is empty, a scheduling routine is performed (220), and the buffer status is displayed. If the (BEI) bit is not '1', the input cell processing routine ends immediately.

제11도는 본 발명의 일실시예에 따른 출력 리스트 시작(OLH)과 출력 리스트 끝(OLT) 값의 갱신 처리 흐름도를 나타낸다.11 is a flowchart illustrating an update process of output list start (OLH) and output list end (OLT) values according to an embodiment of the present invention.

먼저 출력 리스트 끝(OLT)의 값이 '0'보다 큰지를 판단하여(221) '0'보다 크지 않거나, '0'보다 크고 출력 리스트 끝(OLT)의 값과 출력 리스트 시작(OLH)의 값이 같으면(222) 출력 리스트가 빈 상태이므로 다음 슬롯에 해당하는 스케쥴러 엔트리 시작(SEH)의 값을 출력 리스트 시작(OLH)에 갱신하고 저장하고, 스케쥴러 엔트리 끝(SET)의 값을 출력 리스트 끝(OLT)에 갱신하여 저장한다(223).First, it is determined whether the value of the end of the output list (OLT) is greater than '0' (221) and is not greater than '0' or is greater than '0' and the value of the end of the output list (OLT) and the value of the beginning of the output list (OLH). If the output list is empty (222), the scheduler entry start (SEH) value corresponding to the next slot is updated and stored in the output list start (OLH), and the value of the scheduler entry end (SET) is stored in the output list end ( OLT) is updated and stored (223).

출력 리스트 끝(OLT)의 값과 출력 리스트 시작(OLH)의 값이 같지 않으면 출력 연결 리스트(OLL)의 다음 값을 출력 리스트 시작(OLH)에 갱신하고(224), 출력 리스트 끝(OLT) 값을 출력 연결 리스트(OLL)의 인덱스로 사용하여 그 엔트리에 다음 슬롯에 해당하는 스케쥴러 엔트리 시작(SEH)의 값을 갱신하고(225), 스케쥴러 엔트리 끝(SET)의 값을 출력 리스트 끝(OLT)에 갱신하여 저장한다(226).If the value at the end of the output list (OLT) and the value at the beginning of the output list (OLH) are not the same, the next value of the output linked list (OLL) is updated to the beginning of the output list (OLH) (224), and the end of the output list (OLT) value. Is used as an index of the output linked list (OLL) to update the value of the scheduler entry start (SEH) corresponding to the next slot in the entry (225), and the value of the scheduler entry end (SET) is set to the end of the output list (OLT). It is updated and stored in (226).

상기와 같이 구성되어 동작하는 본 발명은 스위치의 출력 버퍼에 추가하여 셀 전송 시간과 셀사이의 시간 간격에 민감한 CBR 트래픽의 서비스에 대하여 셀간의 시간을 최소 시간 간격(MIT)으로 제어할 수 있어 서비스 품질을 일정하게 유지할 수 있으며, 비연결형 서비스 기능을 갖는 교환 시스템의 비연결형 서버의 출력 포트에 추가하여 비연결형 셀에 대한 처리가 끝난 셀을 다시 교환기를 통해 목적지로 전송할 때 가입자 정합 장치에 수행되는 UPC 기능에 의해 손실이 일어나지 않게 하고, ATM 망내에 있는 비연결형 서버에서 다른 서버로 향하는 고정 가상 연결(PVC)에 대하여 간격 제어 기능을 추가하여 라우팅과 셀헤더 변환을 거친 셀들이 특정 출력 채널로 집중해도 채널당 간격 제어에 의해 대역을 균등히 분배하므로 서비스 품질을 일정하게 유지할 뿐만 아니라 채널간의 공평성을 이룰 수 있는 효과가 있다.The present invention configured and operated as described above can control the time between cells with a minimum time interval (MIT) for the service of CBR traffic sensitive to the cell transmission time and the time interval between cells in addition to the output buffer of the switch. Quality can be kept constant, and added to the output port of a connectionless server of a switching system with connectionless service capability, which is performed at the subscriber matching device when the processed cell for the connectionless cell is sent back to the destination through the exchange. It prevents loss by UPC function and adds interval control function for fixed virtual connection (PVC) from connectionless server in ATM network to other server to concentrate cells which have been routed and cell header converted to specific output channel. Even if the bandwidth is distributed evenly by the interval control per channel, the quality of service can be kept constant. Not only it has the effect that you can achieve fairness between channels.

Claims (7)

셀을 저장하는 셀 버퍼링 수단(10); 상기 셀 버퍼링 수단(10)의 사용중인 어드레스를 관리하는 어드레스 FIFO 수단(30); 상기 셀 버퍼링 수단(10)의 미사용 어드레스를 관리하는 유휴 어드레스 FIFO 수단(20); 각 채널의 상태를 저장하는 셀 상태 표시 메모리 수단(41); 상기 셀 상태 표시 메모리 수단(41)의 값을 이용하여 셀의 전송 예정 시간을 계산하는 예정 전송 시간(NDT) 계산 수단(42); 셀의 스페이싱을 위해 도착한 셀의 전송 예정 시간을 등록하기 위한 스케쥴링 수단(46); 상기 스케쥴링 수단(46)의 동일한 엔트리에 등록되는 셀들을 관리하기 위한 출력 연결 리스트(OLL) 메모리 수단(45); 상기 스케쥴링 수단(46)에 등록된 것 중에서 전송 시간이 다 된 것들의 제일 앞의 가상 채널 인식자(VCI)를 저장하는 출력 리스트 시작(OLH) 메모리 수단(43); 및 상기 스케쥴링 수단(46)에 등록된 것 중에서 전송 시간이 다 된 것들의 제일 뒤의 가상 채널 인식자(VCI)를 저장하는 출력 리스트 끝(OLT)메모리 수단(44)을 구비한 것을 특징으로 하는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 장치.Cell buffering means (10) for storing a cell; Address FIFO means (30) for managing an active address of said cell buffering means (10); Idle address FIFO means (20) for managing unused addresses of the cell buffering means (10); Cell state display memory means 41 for storing state of each channel; Predetermined transmission time (NDT) calculating means (42) for calculating an estimated transmission time of a cell by using the value of said cell state display memory means (41); Scheduling means 46 for registering a scheduled transmission time of a cell that has arrived for spacing of the cell; Output linked list (OLL) memory means 45 for managing cells registered in the same entry of the scheduling means 46; An output list start (OLH) memory means (43) for storing the virtual channel identifier (VCI) in front of those registered in the scheduling means (46) at the end of the transmission time; And an output list end (OLT) memory means 44 for storing a virtual channel identifier (VCI) at the end of those whose transmission time has expired among those registered in the scheduling means (46). Cell spacing controller for output band control in ATM networks. 제1항에 있어서, 상기 스케쥴링 수단(46)은, 동일한 시간대에 2개 이상의 셀이 등록될 때에 등록된 것의 시작을 나타내는 스케쥴러 엔트리 시작(SEH) 필드(47)와 등록된 것의 끝을 나타내는 스케쥴러 엔트리 끝(SEH) 필드로 구성된 것을 특징으로 하는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 장치.2. The scheduler entry according to claim 1, wherein said scheduling means (46) comprises a scheduler entry start (SEH) field 47 indicating the start of being registered when two or more cells are registered in the same time zone and a scheduler entry indicating the end of being registered. Cell spacing control device for output band control in ATM network, characterized in that the end (SEH) field. 제1항에 있어서, 상기 셀 상태 표시 메모리 수단(41)은, 예정 전송 시간을 계산하기 위해 사용되는 최종 시간 값을 저장하는 최종 전송 시간(LDT)필드(49)와 셀간 최소 전송 시간 값을 저장하는 셀간 최소 전송 시간(MIT) 필드(50), 그리고 셀이 셀 간격 제어 장치로 들어 왔을 때 해당 채널이 빈(empty) 상태인지 아닌지를 나타내주는 버퍼 상태 표시(BEI) 필드(51)로 구성된 것을 특징으로 하는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 장치.2. The cell status display memory means (41) according to claim 1, wherein said cell state display memory means (41) stores a last transmission time (LDT) field 49 for storing a final time value used for calculating a predetermined transmission time and a minimum transmission time value between cells. Inter-cell minimum transmission time (MIT) field 50 and a buffer status indication (BEI) field 51 indicating whether or not the channel is empty when the cell enters the cell spacing controller. An apparatus for controlling cell spacing for output band control in an ATM network. 셀을 저장하는 셀 버퍼링 수단(10), 상기 셀 버퍼링 수단(10)의 사용중인 어드레스를 관리하는 어드레스 FIFO 수단(30), 셀 버퍼링 수단(10)의 미사용 어드레스를 관리하는 유휴 어드레스 FIFO 수단(20)과 셀의 스페이싱(spacing)과 관련한 스케쥴을 관리하는 스케쥴 관리 수단(40)으로 구성된 셀 간격 제어 장치에 적용되는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 방법에 있어서, 셀 전송을 위해 매 슬롯마다 출력 리스트 시작(OLH) 값을 검사하여 출력 리스트 시작(OLH)값이 '0'보다 큰지를 조사하는 제1단계(200, 201); 상기 제1단계(200, 201)에서 출력 리스트 시작(OLH) 값이 '0'보다 크면, 출력 리스트 시작(OLH) 값이 가리키는 해당 어드레스 FIFO 수단(30)의 값을 이용하여 셀 버퍼링 수단(10)에 저장된 셀을 전송하고, 셀 상태 표시 메모리 수단(41)의 최종 전송 시간(LDT)(49) 값을 갱신한 후, 전송한 버퍼가 빈 상태인지 조사하는 제2단계(202 내지 204); 상기 제2단계(202 내지 204)에서 전송한 버퍼의 상태가 빈 상태가 아니면 버퍼의 다음 셀에 대한 스케쥴링 처리 루틴을 수행하고, 전송한 버퍼가 빈 상태이면 셀 상태 표시 메모리 수단(41)의 버퍼 상태 표시(BEI) 비트를 '1'로 세트시키고, 셀 간격 제어 장치에 입력된 셀이 있는지는 조사하는 제3단계(205, 206, 208); 상기 제1단계(200, 201)에서 출력 리스트 시작(OLH) 값이 '0'보다 크지 않으면, 해당 슬롯에는 전송할 셀이 없음을 표시하고, 셀 간격 제어 장치로 입력된 셀이 있는지를 조사하는 제4단계(207, 208); 및 상기 제3단계(205, 206, 208) 또는 상기 제4단계(207, 208)에서 셀 간격 제어 장치로 입력된 셀이 있으면 입력셀 처리 루틴을 수행한 후, 출력 리스트 시작(OLH)값과 출력 리스트 끝(OLT) 값을 갱신하는 루틴을 수행하고, 입력된 셀이 없으면 출력 리스트 시작(OLH) 값과 출력 리스트 끝(OLT) 값을 갱신하는 루틴을 수행하는 제5단계(209, 210)를 포함하는 것을 특징으로 하는 ATM 망에서 출력대역제어를 위한 셀 간격제어 방법.Cell buffering means 10 for storing a cell, address FIFO means 30 for managing an active address of the cell buffering means 10, and idle address FIFO means 20 for managing an unused address of the cell buffering means 10. A cell interval control method for output bandwidth control in an ATM network, which is applied to a cell interval control device comprising a schedule management means 40 for managing a schedule related to spacing of a cell), each slot for cell transmission. A first step (200, 201) of checking the output list start (OLH) value every time to check whether the output list start (OLH) value is greater than '0'; If the output list start (OLH) value is greater than '0' in the first steps (200, 201), the cell buffering means 10 using the value of the corresponding address FIFO means 30 indicated by the output list start (OLH) value. A second step (202 to 204) of transmitting a cell stored in the CDMA), updating the last transmission time (LDT) 49 value of the cell state display memory means 41, and then checking whether the transmitted buffer is empty; If the status of the buffer transmitted in the second step (202 to 204) is not empty, the scheduling processing routine for the next cell of the buffer is executed. If the transmitted buffer is empty, the buffer of the cell status display memory means 41 A third step (205, 206, 208) of setting a status indication (BEI) bit to '1' and checking if there is a cell input to the cell spacing controller; In the first step (200, 201), if the output list start (OLH) value is not greater than '0', it indicates that there is no cell to be transmitted in the corresponding slot, and checks whether there is a cell input to the cell spacing controller Four steps (207, 208); And if there is a cell input to the cell spacing controller in the third step (205, 206, 208) or the fourth step (207, 208), after performing an input cell processing routine, an output list start (OLH) value and A fifth step (209, 210) of performing an routine to update an output list end (OLT) value and performing an update of an output list start (OLH) value and an output list end (OLT) value if there is no input cell Cell spacing control method for output band control in an ATM network comprising a. 제4항에 있어서, 상기 제3단계(205, 206, 208)에서 스케쥴링 처리 루틴은, 스케쥴하고자 하는 셀에 대해 셀 상태 표시 메모리 수단(41)에서 최종 전송 시간(MIT) 값을 이용하여 NDT 계산 수단(42)에서 셀 간격을 계산하여 스케쥴러의 해당 스케쥴러 엔트리 끝(SET)의 값이 'zero'인지를 확인하는 제6단계(211, 212); 및 상기 제6단계(211, 212)에서 스케쥴러 엔트리 끝(SET)의 값이 'zero'이면 그 시간에는 아직 어떤 것도 스케쥴되어있지 않은 것을 의미하므로 스케쥴하고자 하는 셀의 VCI 값을 스케쥴러 엔트리 시작(SEH)과 스케쥴러 엔트리 끝(SET)에 갱신하여 저장하고, 스케쥴러 엔트리 끝(SET)의 값이 'zero'이 아니면 그 시간에 이미 다른 셀이 등록되어 있으므로 현재 스케쥴러 엔트리 끝(SET)의 값을 출력 연결 리스트(OLL)의 인덱스로 사용하여 출력 연결 리스트(OLL)에 스케쥴하는 셀의 VCI 값을 저장하고, 저장한 VCI가 가리키는 출력 연결 리스트(OLL)에 'zero'를 저장하고, 스케쥴러 엔트리 끝(SET)에 저장한 VCI 값으로 갱신하는 제7단계(213 내지 216)를 포함하는 것을 특징으로 하는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 방법.5. The scheduling process of claim 4, wherein the scheduling processing routine in the third step (205, 206, 208) calculates the NDT using the last transfer time (MIT) value in the cell state indicating memory means 41 for the cell to be scheduled. A sixth step (211, 212) of calculating the cell interval in the means (42) to see if the value of the corresponding scheduler entry end (SET) of the scheduler is 'zero'; And if the value of the scheduler entry end (SET) is 'zero' in the sixth step (211, 212), it means that nothing has been scheduled yet at that time, so that the scheduler entry starts with the VCI value of the cell to be scheduled. ) And save at the end of scheduler entry (SET), and if the value of scheduler end (SET) is not 'zero', another cell is already registered at that time. Save the VCI value of the cell that is scheduled in the output connection list (OLL) using the index of the list (OLL), save 'zero' in the output connection list (OLL) indicated by the stored VCI, and end the scheduler entry (SET). And a seventh step (213 to 216) of updating to the VCI value stored in the cell). 제4항에 있어서, 상기 제5단계(209, 210)에서 입력셀 처리 루틴은, 입력된 셀을 셀 버퍼링 수단(10)에 저장하고, 셀 상태 표시 메모리 수단(41)의 채널에 대한 버퍼 상태 표시(BEI) 비트를 검사하여 버퍼상태 표시(BEI) 비트가 '1'인지를 체크하는 제8단계(217 내지 219); 상기 제8단계(217 내지 219)에서 버퍼 상태 표시(BEI) 비트가 '1'이면 셀 버퍼링 수단(10)이 빈 상태 이므로 스케쥴링 처리 루틴을 수행하고, 버퍼 상태 표시(BEI) 비트가 '1'이 아니면 바로 입력 셀 처리 루틴을 종료하는 제9단계(220)를 포함하는 것을 특징으로 하는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 방법.5. The method of claim 4, wherein in the fifth step (209, 210), the input cell processing routine stores the input cells in the cell buffering means (10), and buffer status for the channel of the cell state display memory means (41). An eighth step (217 to 219) checking the indication (BEI) bit to check whether the buffer status indication (BEI) bit is '1'; In the eighth step (217 to 219), if the buffer status indication (BEI) bit is '1', the cell buffering means 10 is empty, so the scheduling processing routine is performed, and the buffer status indication (BEI) bit is '1'. Or a ninth step (220) of immediately ending the input cell processing routine. 제4항에 있어서, 상기 제5단계(209, 210)에서 출력 리스트 시작(OLH) 값과 출력 리스트 끝(OLT) 값을 갱신하는 루틴은, 출력 리스트 끝(OLT)의 값이 '0'보다 크고, 출력 리스트 끝(OLT)의 값과 출력 리스트 시작(OLH)의 값이 같은지 판단하는 제10단계(221, 222); 및 상기 제10단계(221, 222)에서는 '0'보다 크지 않거나, '0'보다 크지만 출력 리스트 끝(OLT)의 값과 출력 리스트 시작(OLH)의 값이 같으면 출력 리스트가 빈 상태이므로 다음 슬롯에 해당하는 스케쥴러 엔트리 시작(SEH)의 값을 출력 리스트 시작(OLH)에 갱신하여 저장하고, 스케쥴러 엔트리 끝(SET)의 값을 출력 리스트 끝(OLT)에 갱신하고 저장하고, 출력 리스트 끝(OLT)의 값과 출력 리스트 시작(OLH)의 값이 같지 않으면 출력 연결 리스트(OLL)의 다음 값을 출력 리스트 시작(OLH)에 갱신하고, 출력 리스트 끝(OLT) 값을 출력 연결 리스트(OLL)의 인덱스로 사용하여 그 엔트리에 다음 슬롯에 해당하는 스케쥴러 엔트리 시작(SEH)의 값을 갱신하고, 스케쥴러 엔트리 끝(SET)의 값을 출력 리스트 끝(OLT)에 갱신하여 저장하는 제11단계(223 내지 226)를 포함하는 것을 특징으로 하는 ATM 망에서 출력대역제어를 위한 셀 간격 제어 방법.The routine for updating an output list start (OLH) value and an output list end (OLT) value in the fifth step (209, 210), wherein the value of the output list end (OLT) is greater than '0'. A tenth step (221, 222) of determining whether a value of an output list end (OLT) and a value of an output list start (OLH) are the same; And in the tenth step (221, 222), if the value of the output list end (OLH) and the output list start (OLH) is not greater than '0' or greater than '0', the output list is empty. Updates and saves the scheduler entry start (SEH) value corresponding to the slot at the start of the output list (OLH), updates the scheduler entry end (SET) at the end of the output list (OLT), and saves it. OLT) value and output list start (OLH) value are not the same, the next value of output linked list (OLL) is updated to output list start (OLH), and the output list end (OLT) value is output linked list (OLL) An eleventh step (223) of updating the scheduler entry start (SEH) value corresponding to the next slot to the entry and updating and storing the value of the scheduler entry end (SET) at the end of the output list (OLT) using the index of the entry. To 226) Cell spacing control method for output band control in network.
KR1019950048892A 1995-12-12 1995-12-12 Cell gap control apparatus and method for controlling through put band in atm network KR0151911B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950048892A KR0151911B1 (en) 1995-12-12 1995-12-12 Cell gap control apparatus and method for controlling through put band in atm network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950048892A KR0151911B1 (en) 1995-12-12 1995-12-12 Cell gap control apparatus and method for controlling through put band in atm network

Publications (2)

Publication Number Publication Date
KR970056327A KR970056327A (en) 1997-07-31
KR0151911B1 true KR0151911B1 (en) 1998-11-02

Family

ID=19439375

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950048892A KR0151911B1 (en) 1995-12-12 1995-12-12 Cell gap control apparatus and method for controlling through put band in atm network

Country Status (1)

Country Link
KR (1) KR0151911B1 (en)

Also Published As

Publication number Publication date
KR970056327A (en) 1997-07-31

Similar Documents

Publication Publication Date Title
US5572523A (en) Method of controlling communication network incorporating virtual channels exchange nodes and virtual paths exchange nodes
US6526060B1 (en) Dynamic rate-based, weighted fair scheduler with explicit rate feedback option
EP0986221B1 (en) Port scheduler and method for scheduling service providing guarantees and hierarchical rate limiting with or without overbooking capability
US6438106B1 (en) Inter-class schedulers utilizing statistical priority guaranteed queuing and generic cell-rate algorithm priority guaranteed queuing
US5999534A (en) Method and apparatus for scheduling cells for use in a static priority scheduler
US6377583B1 (en) Rate shaping in per-flow output queued routing mechanisms for unspecified bit rate service
EP0817436B1 (en) Packet switched communication system
US6038217A (en) Rate shaping in per-flow output queued routing mechanisms for available bit rate (ABR) service in networks having segmented ABR control loops
US6442138B1 (en) Method and apparatus for controlling admission of connection requests
US5818815A (en) Method and an apparatus for shaping the output traffic in a fixed length cell switching network node
US6442164B1 (en) Method and system for allocating bandwidth and buffer resources to constant bit rate (CBR) traffic
EP0901301A2 (en) Dynamic rate control scheduler for ATM networks
US6452905B1 (en) Broadband switching system
US6587436B1 (en) Method and apparatus for allocation of available bandwidth
EP0973304A2 (en) Apparatus and method for bandwidth management
EP0817433B1 (en) Packet switched communication system and traffic shaping process
US5754529A (en) Method and circuit arrangement for forwarding message unit cells supplied from an ATM communication equipment
EP1439730A1 (en) Congestion control in an optical burst switched network
US5862127A (en) Method of controlling the peak cell rate spacing of multiplexed ATM traffic
WO2000067402A9 (en) Methods and apparatus for managing traffic in an atm network
US6560195B1 (en) Method and apparatus for leaky bucket based out-bound shaping in an ATM scheduler
EP0481447B1 (en) Method of controlling communication network incorporating virtual channels exchange nodes and virtual paths exchange nodes, and the said communication network
US6542509B1 (en) Virtual path level fairness
KR0151911B1 (en) Cell gap control apparatus and method for controlling through put band in atm network
JPH08125668A (en) Atm interface and shaping method

Legal Events

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

Payment date: 20040401

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee