KR100222743B1 - 비동기식 전송모드 네트워크에 대한 대역폭 관리시스템 및 방법 - Google Patents

비동기식 전송모드 네트워크에 대한 대역폭 관리시스템 및 방법 Download PDF

Info

Publication number
KR100222743B1
KR100222743B1 KR1019960705640A KR19960705640A KR100222743B1 KR 100222743 B1 KR100222743 B1 KR 100222743B1 KR 1019960705640 A KR1019960705640 A KR 1019960705640A KR 19960705640 A KR19960705640 A KR 19960705640A KR 100222743 B1 KR100222743 B1 KR 100222743B1
Authority
KR
South Korea
Prior art keywords
virtual connection
virtual
cell
queue
connections
Prior art date
Application number
KR1019960705640A
Other languages
English (en)
Other versions
KR970702642A (ko
Inventor
웨이 첸
Original Assignee
엔 마이클 그로브
텔코디아 테크놀로지스 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔 마이클 그로브, 텔코디아 테크놀로지스 인코포레이티드 filed Critical 엔 마이클 그로브
Publication of KR970702642A publication Critical patent/KR970702642A/ko
Application granted granted Critical
Publication of KR100222743B1 publication Critical patent/KR100222743B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L12/5602Bandwidth control in ATM Networks, e.g. leaky bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5651Priority, marking, classes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling

Landscapes

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

Abstract

대역폭 관리 시스템(120)은 통신 네트워크내에 복수의 가상 데이터접속을 관리한다. 상기 시스템은 데이터 셀을 수신하기 위한 입력부(122)를 포함하며, 상기 각 셀은 가상 접속중 특정한 것과 연관된다. 또한, 상기 시스템은 셀을 저장하기 위하여 입력부에 결합된 셀풀, 가상 접속을 배열하기 위한 제 1 및 제 2 대기행렬(126-128), 및 상기 셀 풀로부터 셀을 전송하기위한 출력부(137)를 포함한다. 제 1 대기행렬에서 가상 접속의 상대 위치는 특정 가상 접속에 연관된 예측된 데이터 비율과 특정 가상 접속이 제 1 대기행렬에 있는 시가의 양의 따라서 변화하는 적정 변수에 의해 결정된다. 제 2 대기행렬에서 가상 접속의 상대 위치는 각 가상 접속에 할당된 소정의 서비스 품질에 따라서 변화한다.

Description

[발명의 명칭]
비동기식 전송모드 네트워크에 대한 대역폭 관리 시스템 및 방법
[발명의 상세한 설명]
[발명의 분야]
본 발명은 비동기식 데이터 통신분야에 관한 것으로, 특히 비동기식 데이터 통신 네트워크를 통해 데이터 흐름비율을 관리하는 분야에 관한 것이다.
[종래 기술]
음성, 비디오, 이미지, 데이터, 및 멀티미디어 서비스를 지원할 수 있는 차세대 공증 중추 네트워크는 데이터를 전송하기 위하여 비동기식 전송모드(ATM)를 사용하는 광대역 통합 서비스 디지털 네트워크(ISDN)로서 계획되고 있다. ATM 기술의 파악된 이점은 아주 광범위한 소스 파라미터와 정보 손실에 대한 서비스 품질 요건으로 트래픽 소스를 비동기 방식으로 멀티플렉싱(다중화)함에 있어서의 유연성 및 간단성과, 동기식 전송모드에 가까운 것으로부터 현재 패킷 교환 네트워크에 있어서의 최선의 서비스에 이르기까지의 지연 성능을 포함한다. 그러므로 광대역 ISDN은 고성능 계산 및 통신의 새로운 요구를 지원하기 위한 유망한 네트워크 기술이다.
그러나, ATM-베이스 광대역 ISDN 네트워크의 실제 대규모 전개에 대한 주요 기술 장애는 고성능 워크스테이션 및 슈퍼컴퓨터와 같이, 애플리케이션 플랫폼을 종료하기 위한 멀티-노드, 멀티-캐리어 네트워크에 걸쳐 서비스의 예측가능한 종단간 등급(end-to-end grade)을 보장할 수 있는 실질적인 실시간 대역폭 관리의 부족이다.
ATM-베이스 광대역 ISDN에 있어서, 애플리케이션층으로부터의 정보는 ATM 적응층에서 고정 치수 ATM 셀로 처리되며, 상기 셀은 ATM층에서 멀티플렉싱/교환(스위칭)되고 이어서 물리층에 있는 페이로드 엔벨로프(payload envelopes)로 이송된다. 확고한 대역폭 관리 방침이 규정되어 실시되지 않으면, 네트워크의 어떤 부분에서 불충분한 네트워크 자원에 기인한 폭주에 의해 초래된 성능 저하는 최종 사용자(end-user)에게 상당한 성능 저하를 유발시키게 된다. 대역폭 관리와 광대역 ISDN의 트래픽 제어의 종합적인 목적은 일관되고 예측가능한 종단간 성능을 제공함과 동시에, 그 일부가 매우 버스트된 트래픽 흐름과 광범위한 성능 요건으로 최종 사용자에게 최적의 네트워크 자원 활용을 제공하는 것이다.
대역폭 관리와 광대역 ISDN의 트래픽 제어 문제는 트래픽 흐름 특성(그것의 대부분은 전송시에도 미지임)의 다이버시티, 접속 성능 요건, 증가된 교환에 기인하는 네트워크 엘리먼트에 있어서의 처리 지연과 종단간 전파지연의 임팩트, 및 전송속도와 같은 인자에 기인하여 복잡하게 된다. 전파지연과 연관된 고속의 ATM 네트워크는 루트에 있어서 대다수의 ATM 셀을 초래하는 반면, 중간 노드에서 (비교적) 큰 처리시간은 중간 노드 프로토콜처리에 대해 엄격한 제한을 주게된다. 이 인자들은 (일반적으로 저속 네트워크에 대해 지정된 X.25 데이터 통신 흐름 제어와 같은) 기존의 트래픽 제어 접근방식이 비효율적으로 되는 것을 초래한다. 그러므로, 광대역 ISDN에 대해서는, 새롭고, (미지의 변화하는 트래픽 특성에 대처하기 위하여) 확고하며, 비용이 저렴하며, (상당히 고속으로) 스케일가능한 트래픽 제어 전략이 필요하다.
광대역 ISDN의 실시간(일반적으로 수 ms 이하) 트래픽 제어요건들은 상기한 인자들에 기인한 기존의 네트워크의 요건들과는 아주 다르다. 기능에 따라서, 실시간 트래픽 제어는 액세스 제어, 흐름 제어, 반응 폭주 제어 및 에러 제어와 같은 잘 조화된 컴포넌트로 이루어 질 수 있다. 접속 허용 제어/대역폭 할당, 트래픽 공용, 및 대역폭 강화(enforcement)를 포함하는 액세스 제어는 사용자-네트워크 인터페이스에서 사용자 목적을 달성할 수 있다. 다른 제어들(흐름 제어, 반응 폭주 제어, 에러 제어)은 행선 버퍼 보호, 네트워크 내부 폭주 처리, 및 정보 보전성 보장을 각각 달성한다.
액세스 제어의 주요 목표는 사용자-네트워크 인터페이스에서 예측가능한 정보 처리능력(throughput), 접속 블로킹 확률, 셀 손실비, 및 셀 전송지연/셀 지연 변화 등과같은 목적들을 달성하기 위한 것이다. 광대역 ISDN에 있어서의 불확실하게 변화하는 트래픽 특성/파라미터 및 증가된 전송/교환 속도의 관점에서, 액세스 제어 메카니즘은 실행하는데 확고하고 빠르고 스케일가능(155 내지 622 Mbps, 또는 그 이상)하며 비용이 저렴해야 한다.
액세스 제어에는 접속 허용 제어, 대역폭 공용(sharing) 및 페이싱(pacing), 및 대역폭 강화의 세가지 특징이 있다. 접속 허용 제어는 현재 네트워크 상태를 기초로하여 접속 수용, 소정의 트래픽 특성 및 성능 요건(예를 들면 피크율, 셀 손실율)을 결정한다. 일반적으로, 결정이 행해질 필요가 있으며 네트워크 자원은 수초 이하로 할당된다. 일부 키 송출(issue)은 트래픽 기술자(desxriptor)가 어떻게 사용되어야 하는지(예를 들면, 피크 데이터율, 평균 데이터율, 우선 순위, 버스트 길이 등), 버스트된 접속의 대역폭을 얼마나 효과적으로 결정할 것인지, (소정의 트래픽 공용/대역폭 강화 메카니즘으로) 성능을 얼마나 예측할 것인지, 수용/거부 기준이 어떻게 사용되는지, 그리고 알고리즘이 얼마나 빠르게 실행될 수 있는지를 포함한다.
현재, 접속 허용 제어에 대한 다른 해법은 피크율 할당(실행하기에는 간단하나, 가변 비트율 서비스에 대해서는 비효과적임)으로부터 N-서비스 스페이스에서 "허용가능한 수용 영역"을 결정하는 좀 더 복잡한 알고리즘에 이르기까지 존재하고 있다. 일반적으로, 접속 허용 제어는 소포트웨어로 실행 될 수 있으며, 광대역 ISDN의 초기 스테이지 동안 간단하고 확고한 알고리즘으로 개시되고 알고리즘이 사용가능하게 될 때 좀 더 복잡한 (그리고 효과적인) 알고리즘 쪽으로 전개되는 것이 가능해진다.
액세스 제어 구성의 구별되는 특징은 가변 비트율 서비스에 대하여 통계적 멀티플렉싱을 제공하는 기능에 있다. 다수의 인자들은 (링크 용량에 관계되는) 가변 비트율 전송 피크율과 버스트 존속기간 분포 등을 포함하는 통계적인 멀티플렉싱 효율에 상당한 영향을 받는다. 트래픽 공용이나 (빠른 예약 프로토콜과 같은) 자원 할당 기술이 사용되지 않을 경우, 가변 비트율 접속의 순수 통계적 멀티플렉싱에 의해 네트워크 사용률이 낮아질(예를 들면 20-25%) 수 있다는 것이 연구되었다. 셀 도달 공정(즉, 트래픽 공용)의 적당한 변형에 의하여, 보다 높은 통계적 멀티플렉싱 효율이 달성될 수 있다. 페이싱 메카니즘에 의해 사용된 이러한 변형 기술에는 셀 지터 평활하(smoothing), 셀 피크율 감소, 메세지 버스트 길이 제한, 가변 비트율 가상 회선 접속(VC)의 서비스 스케줄링 등이 있다.
또한, 트래픽 공용은 비컴플라이언트 셀(non-compliant cell)이 관측되는 경우에 (셀 폐기(discarding) 또는 태깅(tagging)에 더하여) 셀 서비스를 재 스케줄링함으로써 네트워크 대역폭 강화 메카니즘과 결합하여 사용될 수도 있다. 지연없이 감지할 수 있으나 손실에 민감한 가변 비트율 서비스에 대하여, 이 옵션은 셀 손실율을 최소화하는데 사용된다. 그러나, 엄격한 지연요건(예를 들면, 인터랙티브 가변 비트율 비디오)을 갖는 셀에 대한 페이싱 기술의 적용성은 더많은 연구를 한다. 네트워크 동작의 관점으로부터, 소스 공용/페이싱은 시스템이 처리할 수 있는 데이터보다 더많은 데이터를 갖는 시스템의 전복을 방지하는 것이 바람직하다.
네트워크 대역폭 강화의 목적은 적당한 대역폭 제한을 갖는 컴플라이언스에 대한 접속 대역폭 사용을 모니터링하고, 이러한 제한의 관측된 위반에 대해 조치를 가하는 것이다. 강화 제어는 셀 방출 시간의 시간 스케일(즉, 155 Mb/s에 대해서는 약 2.7μs 또는 622 MB/s에 대해서는 약 0.7μs)로 작용한다. 대역폭 강화의 키 송출은 모니터링 알고리즘의 설계와, 비컴플라이언트 셀에 취해질 위반조치 동작을 포함한다. 다른 송출은 트래픽 파라미터값 불확정의 처리, 컴플라이언트 셀에 대한 잘못된 조치 동작의 백분율과 검출되지 않은 비컴플라이언트 셀의 백분율의 관점에서의 효율성, 및 소정의 위반에 대한 검출시간을 포함한다.
대역폭 강화 메카니즘은 네트워크-측정된 트래픽 파라미터값으로 동작하며, 상기 파라미터값은 접속 셀 피크율, 그것의 평균 셀 비율, 및 그것의 피크 버스트 길이를 포함할 수 있다. 현재, 예를 들면 단일 또는 이중 누설 버킷, 점핑, 또는 슬라이딩 윈도우를 사용하는 소수의 대역폭 강화 알고리즘이 제안되어 있다. 그러나, 피크/평균 비율과 버스트 길이를 사용하는 누설 버킷 알고리즘은 아직까지 다양한 가변 비트율 트래픽을 혼합하는데 아주 충분하지는 않다는 것이 연구되어 밝혀졌다. 또한, 누설 버킷 알고리즘은 접속 허용 제어레벨에서 성능 예측을 복잡하게 하는 경향이 있다는 것도 밝혀졌다. 더구나, 사용자에 의해 평균 셀 비율 및 버스트 길이의 정확한 추정은 실제로 아주 어렵다. 이것은 광대역 ISDN의 초기 전개를 초래하기 위하여 이 문제에 대한 대체 접근방법 연구의 필요성을 시사한다.
다수의 액세스 제어 접근방법이 제안되었으나, 벤더(vendor) 및 리써치 커뮤니티 사이에서 어떤 일치된 기준은 없다. 한가지 제안된 접근방법에서는 여러 가지 트래픽 클래스에 제공된 대역폭 풀(pool)을 기초로하여 접속을 수용하고 비컴플라이언트 셀의 직접 셀 폐기로 접속 대역폭 사용을 모니터링하기 위한 누설 버킷형 알고리즘을 사용한다. 다른 제안된 접근방법에서는 역시 가능한 추후 셀 폐기를 위한 비컴플라언트 셀의 태깅으로 대역폭 사용을 모니터링하는 누설 버킷형 알고리즘을 사용한다. 또 다르게 제안된 접근방법에서는 비율-베이스 시간 윈도우 접근방법을 사용한다.
누설 버킷 알고리즘은 어떤 트래픽 패턴 연구하에서 접근방법을 기초로한 시간 윈도우 베이스 접근방법보다 우수하다는 것이 연구 결과 밝혀졌다. 그러나, 동일한 연구 결과 상기 알고리즘의 치수 설정(예를 들면 카운터제한)에는 어려움이 있다는 것도 밝혀졌다. 또한, 누설 버킷 알고리즘의 성능은 비컴플라이언트 셀 검출 및 오류 경보(컴플라이언트 셀에 대한 대역폭 위반을 알리는 장기 확률)의 측면에서 최적의 성능에 비해 훨씬 뒤떨어딘다는 것이 판명되었다.
이것은 가변 비트율 서비스에 대한 평균 셀 비율에 가까운 강화 및 페이싱이 일반적으로 인식되었던 것보다 더 복잡하다는 것을 나타내는 것으로 간주될 수 있다. 예를 들면, 평균 비율에 가까운 가변 비트율 트래픽 스트림의 강화는 일반적으로 수용가능한 레벨(이를테면 10-7)로 오류 경보 비율을 유지하기 위하여 큰 버퍼 요건(그러므로 수용불가능한 응답시간)을 초래한다.
보다 중요하게는, (누설 버킷과 같은) 알고리즘을 모니터링하는 효율성은 많은 적용분야에서 알려지지 않았으며 접속이 이루어지는 시기에 정확히 추정하기가 어려운 소스 모델 동작에 따라 임계적으로 좌우된다. 다른 관측 베이스 구성은 데이터 트래픽에 대해서 좀 더 적합하지만, 그 성능 특성은 충분히 평가되지 않았다.
[발명의 요약]
본 발명에 따르면, 대역폭 관리 시스템은 통신 네트워크 내에서 복수의 가상 데이터 접속을 관리한다. 이 시스템은 데이터 셀을 수용하기 위한 입력부를 포함하며, 상기 각 셀은 가상 접속중 특정한 하나와 연관된다. 또한, 이 시스템은 상기 입력부에 연결되어 있으며 셀을 저장하기 위한 셀 풀, 가상 접속을 지시하기 위한 제 1 및 제 2 대기행렬, 및 상기 셀 풀로부터 셀을 전송하기 위한 출력부를 포함한다. 제 1 대기행렬에서 가상 접속의 상대위치는 특정 가상 접속과 연관된 예상 데이터 비율에 따라서 그리고 특정 가상접속이 제 1 대기행렬에 존재하는 시간의 양에 따라서 변화하는 적정 변수에 의해서 결정된다. 제 2 대기행렬에서 가상 접속의 상대 위치는 각각의 가상 접속에 할당된 소정의 서비스 품질에 따라서 변화한다. 상기 출력부는 제 2 대기행렬 앞에서 가상 접속에 상응하는 셀 풀로부터 셀을 전송한다.
동일한 값의 적정 변수들을 갖는 가상 접속은 소정의 서비스 품질에 따라 제 1 대기행렬에 배열될 수 있다. 상기 시스템은 서비스 품질에 대하여 4가지의 다른 값을 사용할 수 있다. 동일한 서비스 품질값을 갖는 가상 접속은 각각의 가상 접속에 대해 계산된 우선순위에 따라 제 2 대기행렬에 배열될 수 있다. 각 가상 접속에 대한 크레디트 변수는 각 가상 접속에 제공된 할당된 시간 슬롯을 나타낸다. 우선순위는 각 가상 접속의 하나이상의 예측된 데이터 비율, 하나이상의 크레디트 변수의 값, 및 전송을 대기하고 있는 백로그(backlogged)된 셀의 수에 따라서 변화할 수 있다. 데이터 비율, 크레디트 변수, 및 백로그 변수는 우선순위를 결정하기 전에 가중될 수 있다. 상기 시스템은 입력부에서 수신된 셀과 연관된 가상 접속이 제 2 대기행렬에 직접 위치설정되는 경우를 결정하기 위하여 버스트 비트 인디케이터를 사용할 수 있다.
대역폭 관리 시스템은 페이싱 유니트와 강화 유니트로 이루어 질수 있다. 페이싱 유니트는 데이터 소스 노드로부터 셀을 수신하며 통신 링크에 셀을 제공한다. 강화 유니트는 통신 링크로부터 데이터를 수신하고 데이터 싱크 노드로부터 데이터를 수신하고 데이터 싱크 노드에 데이터를 제공한다. 가상 접속은 초기에 합의된 트래픽 파라미터를 지정하고 초기 트래픽 파라미터에 의해 지정된 것을 초과하는 비율로 수신된 셀을 드로핑(dropping)함으로써 형성될 수 있다.
[도면의 간단한 설명]
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명한다.
제1도는 물리적으로 상호접속된 복수의 노드를 갖는 데이터 통신 네트워크를 도시한 도면.
제2도는 복수의 가상 접속에 의해 상호접속된 복수의 통신 노드를 도시한 도면.
제3도는 본 발명에 따른 대역폭 관리 유니트내에 다른 상태의 데이터를 도시한 데이터 흐름도.
제4도는 본 발명에 따른 대역폭 관리 유니트의 기능 블록도.
제5도는 본 발명에 따른 대역폭 관리 유니트의 동작을 도시한 상태도.
제6도는 가상 접속을 설정하는 과정을 설명하는 상태도.
제7도는 가상 접속에 대한 셀 허용을 설명하는 흐름도.
제8도는 가상 접속에 대란 적정 타이머의 값을 초기화하는 과정을 설명하는 흐름도.
제9도는 가상 접속에 대한 적정 타이머의 값을 재설정하는 과정을 설명하는 흐름도.
제10도는 가상 접속에 대한 크레디트 변수를 갱신하는 과정을 설명하는 흐름도.
제11도는 가상 접속에 대한 적정 타이머를 갱신하는 과정을 설명하는 흐름도.
제12도는 가상 접속에 대한 크레디트 변수 및 우선순위 변수의 값을 계산하는 과정을 설명하는 흐름도.
제13도는 가상 접속에 대한 우선순위 변수를 갱신하는 과정을 설명하는 흐름도.
제14도는 대역폭 관리 유니트의 하드웨어 실행을 설명하는 구성도.
[바람직한 실시예의 상세한 설명]
도면에 설명된 본 발명의 바람직한 실시예를 기술함에 있어서, 명료함을 위하여 특정 용어를 사용하였다. 그러나, 본 발명은 이렇게 선택된 특정 용어에 한정되는 것은 아니며, 각 특정 엘리먼트는 유사한 목적을 달성하기 위한 유사한 방법으로 동작하는 동등한 모든 기술적 엘리먼트를 포함한다는 것을 이해할 수 있을 것이다.
제1도에서, 통신 네트워크(30)는 물리적으로 상호접속되어 있는 복수의 통신 노드(32-50)를 포함한다. 상기 노드(32-50)의 각각은 통신 데이터를 전송 및 수신하기 위한 종래의 통신 장치를 나타낸다. 노드(32-50) 사이에 연결된 라인들은 노드(32-50) 사이에 데이터를 전송하기 위한 물리적 통신 링크를 나타낸다. 통신 링크는 광 파이버, 꼬인 쌍, 마이크로파 링크 등을 포함하는 통신 데이터 전송을 위한 복수의 종래의 매체중 어느 하나일 수 있다.
두 개의 노드는 서로 직접 접속될 수 있으며, 그것에 의해 직접 접속된 노드 사이의 통신이 용이하게 된다. 예를 들면, 노드(34)는 제1도에서 노드(35)에 직접 접속된 상태로 도시되어 있다. 따라서, 노드(34) 및 (35) 사이의 통신은 직접 물리적 통신 링크를 통하여 원활하게 된다.
종종, 단일 물리적 통신 링크를 통하여 직접 접속되어 있지 않은 두개의 노드사이에서 통신하는 것이 바람직하다. 예를 들면, 노드(34)로부터 제1도의 노드(49)로 데이터를 전송하는 것이 바람직하다. 이 경우, 통신은 노드(34)와 노드(49)사이의 중간 노드를 통과하는 메시지에 의해 원활하게 된다. 노드(34)로부터 (49)로 전송되는 데이터는 먼저 노드(34)로부터 노드(35)로 전송되고, 이어서 노드(35)로부터 노드(36)으로 전송되며, 이어서 노드(36)으로부터 노드(45)로 전송된 후, 최종적으로 노드(45)로부터 노드(49)로 전송된다.
상기 예에 있어서, 노드(34)와 노드(49) 사이의 "가상 접속"은 노드(34),(49) 사이의 통신을 원활하게 하고 통신에 대한 바람직한 서비스 품질을 설정하기 위해 형성된다. 가상 접속은 노드중 하나가 다른 노드로 전송되는 데이터를 가질 경우 두 개의 노드사이에 형성된다. 가상 접속은 모든 데이터가 전송된 후에 완료될 수 있다. 예를 들면, 노드(34)가 사용자 컴퓨터 단말을 나타내고 노드(49)가 메인프레임 컴퓨터를 나타낼 경우, 가상 접속은 사용자가 컴퓨터 시스템에 로그 온 할 때마다 노드(34)(단말)와 노드(49)(메인프레임) 사이에 형성될 수 있다. 이어서 가상 접속은 사용자가 시스템을 로그 오프하는 경우에 완료된다.
제2도를 참조하면, 구성도(60)에는 복수의 호스트(62-67), 한 쌍의 전용 ATM(비동기식 전송 모드) 멀티플렉서/스위치 (71, 72), 및 공중 ATM 멀티플렉서/스위치(74)가 도시되어 있다. 각각의 호스트(62-67)는 전화, 팩스기기, 컴퓨터 단말, 비디오 전자회의 단말 등과 같은 복수의 가능한 데이터 소스중 하나를 나타낸다. 호스트(62)는 호스트(62)와 전용 ATM 멀티플렉서/스위치(71) 사이에 설정된 가상 접속을 통하여 전용 ATM 멀티플렉서/스위치(71)로 데이터를 전송한다. 호스트(63)은 호스트(63)와 전용 ATM 멀티플렉서/스위치(71) 사이에 설정된 제 2 가상 접속을 통하여 전용 ATM 멀티플렉서/스위치(71)로 데이터를 전송한다. 가상 접속은 제2도에는 도시되어 있지않은 중간 네트워크 노드를 통하여 단일 직접 물리적 링크에 걸쳐 있거나 복수의 연속 물리적 접속에 걸쳐 있을 수 있다. 유사하게, 호스트(64,65)는 그들 사이의 별도의 가상 접속을 통하여 멀티플렉서/스위치(72)에 접속되어 있다. 멀티플렉서/스위치(71, 72) 및 호스트(66, 67)는 부가적인 가상 접속을 통하여 공중 ATM멀티플렉서/스위치(74)에 접속되어 있다. 공중 ATM 멀티플렉서/스위치(74)는 트렁크(trunk:중계석)(도시되지 않음)에 데이터를 제공한다.
구성도 (60)는 중간 장치(71, 72, 74)를 통하여 호스트(62-67)로부터 트렁크로의 일반적인 데이터 흐름을 도시한다. 구성도(60)에 도시된 가상 접속은 호스트(62-67)가 데이터 전송을 시작하는 시점에서 설정된다. 예를들면, 호스트(62)가 전화를 나타낼 경우, 호스트(62)와 전용 ATM멀티플렉서/스위치(71) 사이의 가상 접속은 사용자가 전화의 핸드세트를 픽업하여 다이얼을 돌리기 시작할 때 접속 허용 절차에 의해 형성될 수 있다. 가상 접속은 사용자가 전화를 끊을 때 완료된다.
트렁크, 스위치(71, 72) 또는 그들 사이의 링크들중 어느 하나의 데이터 처리 용량이 초과되는 것을 피하기 위하여, 호스트(62-67)로부터 스위치(71, 72, 74)로 흐르는 데이터 양을 제어하고 스위치(71, 72, 74)로부터 트렁크로 흐르는 데이터 양을 제어하는 것이 바람직하다. 따라서, 호스트(62-67)의 각 출력 포트에는 복수의 페이싱 유니트(82a-87a)가 각각 제공되어 있다. 페이싱 유니트(82a)는 호스트(62)의 출력 포트에 접속되어 있으며, 페이싱 유니트(83a)는 호스트(63)의 출력 포트에 접속되어 있다.
페이싱 유니트(82a-87a)는 연관된 접속에 전송되는 모든 데이터를 제한함으로써 호스트(62-67)로부터 전송된 데이터를 제어한다. 예를 들면, 페이싱 유니트(82a)는 호스트(62)로부터 전용 ATM 멀티플렉서/스위치(71)로 전송된 데이터를 제한한다. 데이터는 먼저 호스트(62)의 출력 포트를 통하여 호스트(62)로부터 페이싱 유니트(82A)로 전송된다. 이어서 페이싱 유니트(82a)는 통신 링크에 데이타를 제공한다.
페이싱 유니트(82a)는, 이후에 좀 더 상세하게 기술되는 바와 같이, 합의된 비율로 통신 링크상에 데이터를 제공한다. 또한 스위치(71, 72)는 그 출력 포트에 접속된 페이싱 유니트(91a, 92a)를 통하여 데이터를 전송한다는 것을 주지한다.
각 페이싱 유니트(82a-87a, 91a, 92a)에는 그것에 상응하는 강화 유니트(82b-87b, 91b,92b)가 연관되어 있다. 강화 유니트(82b-87b, 91b,92b)는 각 접속의 합의된 데이터 비율이 유지되는 것을 보장하기 위하여 통신 링크의 수신단에 제공되어 있다. 강화 유니트(82b-87b, 91b,92b)는 예를 들면 강화 유니트(82b)가 멀티플렉서/스위치(71)의 입력 포트에 접속되도록 상응하는 장치의 입력 포트에 접속된다. 페이싱 유니트가 합의된 데이터 비율보다 더 크게 데이터를 제공할 경우, 그에 상응하는 강화 유니트는 초과된 데이터를 버린다. 페이싱 유니트가 데이터 소스 노드에 제공되는 반면, 강화 유니트는 데이터 싱크(즉, 수신)노드에 제공된다.
가상 접속이 두 개의 노드사이에 형성될 경우, 데이터 소스 노드에 있는 페이싱 유니트와 데이터 싱크 노드에 있는 강화 유니트는 초기에 데이터 비율과 서비스 품질을 합의한다. 서비스 품질은 이후에 좀 더 상세하게 기술되는 바와 같이 데이터의 발생 및 수신 사이의 수용가능한 지연을 포함하는 다양한 특성에 관한 것이다. 요구된 데이터 비율 및 서비스 품질은 전송될 데이터 종류의 함수이다. 예를 들면, 실시간 음성 데이터는 실시간 비디오 데이터와는 다른 데이터 비율을 요구할 수 있으나, 상기 두 데이터는 비교적 높은 서비스 품질을 요구할 수 있다. 이와 반대로, E-메일 메시지는 아마 비교적 낮은 서비스 품질을 요구할 것이다.
가상 접속의 초기화 동안, 페이싱 유니트는 적당한 세트의 트래픽 파라미터(예를 들면, 데이터 비율, 버퍼 공간 등)를 요구라며 바람직한 서비스 품질도 요구한다. 가상 접속의 타단에 있는 상응하는 강화 유니트는 페이싱 유니트의 요구를 수용하거나 거부할 수 있다. 요구는 강화 유니트가 장착되어있는 노드가 요구된 서비스 품질을 충족시키기 위하여 요구된 데이터 양을 처리할 수 없는 경우에 거부된다. 요구를 거부하는 이유는 요구된 데이터 비율을 처리하기에는 데이터 싱크 노드의 용량과 통신 링크의 용량이 불충분하기 때문이다. 요구가 강화 유니트에 의해 거부되면, 가상 접속이 형성되지 않는다. 그러나, 요구가 수용되었다고 가정할 경우, 노드 사이의 가상 접속이 형성된다. 일단 형성되면, 페이싱 유니트는 초기에 합의된 트래픽 파라미터에 따라 데이터를 전송하도록 동작한다.
데이터는 패킷 또는 고정 치수 ATM 셀을 통하여 통신 링크 전반에 걸쳐 전달된다. 각 셀은 가상접속을 식별하는 헤더 정보(header information)와 이후에 상세하게 기술할 다른 적당한 정보와 함께 디지털 데이터의 하나 이상의 바이트를 포함한다. 제2도에 도시된 네트워크에 있어서, 노드를 사이의 모든 접속의 데이터 비율 제한은 필연적으로 트렁크에 제공되는 전체 데이터 양을 제한한다는 것을 주지한다. 따라서, 페이싱 유니트(82a-87a, 91a, 92a) 및 강화 유니트(82b-87b, 91b, 92b)는 트렁크, 궁긍적으로 네트워크에 너무 많은 데이터가 오버로드 되는 것을 방지하는데 사용될 수 있다.
페이싱 및 강화 유니트는 그들의 각 입력부에서 셀을 수신하고 각 출력부로부터 셀을 전송한다. 각각의 동작은 실제로 동일하다. 따라서, 후술되는 내용은 일반적으로 대역폭 관리 유니트로서 불리우는 두가지의 유니트 종류에 동일하게 적용가능하다.
제3도를 참조하면, 데이터 흐름도(100)는 대역폭 관리 유니트에 의해 처리된 가상 접속의 다른 상태를 설명한다. 단일 대역폭 관리 유니트는 상기 유니트가 단일 전송 링크에만 물리적으로 접속되었다 할지라도 다중 가상 접속을 처리할 수 있다. 대역폭 관리 유니트가 접속되어 있는 노드는 다양한 접속에 대한 셀을 전송 또는 수신하고 대역폭 관리 유니트는 특정 순서로 셀을 출력한다.
초기에, 셀은 연관된 데이터 소스 노드(페이싱 유니트용)의 출력 포트로부터 또는 통신 링크(강화 유니트용)로부터 대역폭 관리 유니트에 제공된다. 연관된 가상 접속(VC)은 스케줄링되지 않은 상태(102)에서 시작한다. 스케줄링되지 않은 상태(102)에서 VC에 상응하는 셀은 대역폭 관리 유니트에 의해 전송될 준비가 되어 있지 않은 것으로 간주된다.
VC는 적정가능하게 되고 전송할 준비가 되어있는 적어도 하나의 데이터 셀을 가짐으로써 스케줄링되지 않은 상태(102) 밖으로 전이된다. VC의 적정성은 이후에 좀 더 상세하게 기술되는 방법으로 대역폭 관리 유니트에 접속된 데이터 노드에 의해 외부에서 제어된다. 데이터 노드에 의해 직접 적정가능한 것으로 간주되는 VC는 스케줄링되지 않은 상태(102) 밖으로 전이될 것이다.
VC는 스케줄링되지 않은 상태(102)로부터 적정 상태(104)로 전이될 수 있다. 적정 상태(104)는 VC와 연관된 셀이 출력에 적정하게 되도록 대기하고 있는 것을 나타내지만, VC는 이후에 좀 더 상세하게 기술되는 충족될 특정 조건에 대하여 대기하고 있다.
조건이 충족되면, VC는 적정 상태(104)로부터 출발상태(106)로 전이될 수 있다. 출발상태(106)에서 VC는 대역폭 관리 유니트에 의해 출력될 준비가 되어 있는 VC와 연관된 적어도 하나의 셀을 갖는다. 출발상태에세 VC의 셀은 이후에 좀더 상세하게 기술되는 바와 같이 특정 순서로 대역폭관리 유니트에 의해 전송된다.
적정 상태(104)나 출발상태(106)에 있는 VC는 대역폭 관리 유니트에 접속된 데이터 노드가 VC를 적정하지 않은 것으로 간주하는 경우 또는 다른 조건이 충족되는 경우에 스케줄링되지 않은 상태(102)로 다시 전이될 수 있다. 더구나, 출발상태(106)에서 VC는 역시 이후에 좀더 상세하게 기술되는 어떤 조건하에서 적정 상태(104)로 다시 전이될 수 있다. 어떤 다른 조건하에서, 스케줄링되지 않은 상태(102)에서의 VC는 적정 상태(104)를 통과하지 않고 직접 출발상태(106)로 전이될 수 있다. 여러 가지 상태와 그것에 대한 조건들 사이의 전이는 이후에 돔 더 상세하게 기술될 것이다.
출발상태(106)와 연관된 대기행렬에서 VC의 순서는 가상 접속의 서비스 품질(QOS)의 함수이다. 가상 접속의 QOS는 가상 접속이 데이터 소스 노드에 의해 초기화되는 경우에 형성된다. 데이터에 대한 소스 노드는 QOS에 대한 4가지 가능값, 즉 고수준 QOS, 중간 수준 QOS, 저수준 QOS 및 최적 QOS중 하나를 요구할 수 있다. 고수준 QOS는 경계 지연지연을 요구하며 실질적으로 셀 손실이 없는 실시간 트래픽용이다. 중간 수준 QOS는 경계 지연을 요구하며 셀 손실이 약간 있는 실시간 트래픽용이다. 저수준 QOS는 제어가능한 셀 손실을 갖는 지연-허용 데이터 트래픽용이다. 최적 QOS는 고수준, 중간 수준, 및 저수준 QOS 셀에 의해 사용되지 않는 이용가능한 대역폭을 공유할 수 있는 아주 낮은 속도로 전송되는 데이터용이다. 대기행렬에서 셀의 순서는 가상 접속과 연관된 QOS와 이후에 상세하게 기술될 다른 파라미터들을 기초로한다. 본 발명이 QOS에 대하여 4개의 별도의 레벨로 설명되었지만, 본 발명은 다른 여러 가지 레벨로 실시될 수 있다는 것을 주지한다. 실시를 위해 선택된 레벨 수는 당해분야의 일반 기술자들에게 공지된 다양한 가능 인자들을 기초로한 것이다.
제4도를 참조하면, 구성도(120)는 대역폭 관리 유니트의 동작을 기능적으로 설명한다. 입력부(122)는 대역폭 관리 유니트에 접속된 데이터 노드(도시하지 않음)로부터 셀을 수용한다. 수신된 셀은 디멀티플렉서(124)로 공급된다. 디멀티플렉서(124)는 그것과 연관된 VC에 따라서 입력 셀을 분리하고 복수의 적당한 대기행렬(126-128)중 하나에 셀을 위치시킨다. 예를 들면, 가상 접속 VCi과 연관된 셀은 대기행렬(126)에 위치되고, 가상 접속 VCj과 연관된 셀은 대기행렬(127)에 위치되며, 가상 접속 VCk과 연관된 셀은 대기행렬(128)에 위치된다. 셀 허용 유니트(130)는 이후에 좀 더 상세하게 기술되는 방법으로 대기행렬(126-128)에 셀을 위치시키는 것을 제어한다.
각 가상 접속 VCi, VCj, 및 VCk에 대한 셀이 대역폭 관리 유니트 외부로 전송되는 경우를 제어하는 일 세트의 변수(131-133)는 각 가상 접속에 연관되어 있다. 또한, 셀이 대역폭 관리 유니트에 입력되는 경우, 셀 허용 유니트(130)는 셀이 허용될 수 있는지를 결정하기 위하여 변수(131-133)를 검사한다. 제4도에 도시된 바와 같이, 가상 접속 VCi는 그것과 연관된 변수 세트(131)를 가지며, 가상 접속 VCj는 그것과 연관된 변수 세트(132)를 가지며, 가상 접속 VCk는 그것과 연관된 변수세트(133)를 갖는다. 변수 세트(131-133)는 이후에 좀 더 상세하게 기술될 것이다.
변수 세트(131-133)는 대기행렬(126-128)증 하나의 헤드로부터의 셀이 대역폭 관리 유니트 외부로 전송되는 것을 제어하는 멀티플렉싱 제어부(135)로 입력으로서 제공된다. 멀티플렉서(136)는 각각의 대기행렬(126-128)에 접속되어 있으며, 멀티플렉싱 제어부(135)와 조합하여, 대역폭 관리 유니트 외부로의 전송을 위하여 대기행렬(126-128)중 하나로부터의 셀을 출력부(137)로 공급한다.
다음 표는 대역폭 관리 유니트의 각 가상 접속에 사용되는 파라미터를 나타냄으로써 후술되는 내용을 용이하게 한다.
제5도는 대역폭 관리 유니트의 동작을 설명하는 상태도(140)이다. 동작이 단일 VC에 관하여 설명되었지만, 대역폭 관리 유니트의 다른 VC의 동작은 동일하다.
여러 가지 원형, 코너가 둥근 사각형, 및 다이아몬드형 사이의 화살표들은 상태도에 대한 흐름을 설명한다. 그것과 연관된 주석(annotation)을 갖는 화살표에 대하여, 주석은 상태도(140)의 일부분으로부터 다른 부분으로의 전이를 초래하는 조건을 나타낸다. 그것과 연관된 주석을 갖지않는 화살표는 상태도(140)의 일부분으로부터 다른 부분으로의 무조건적 흐름을 나타낸다.
흐름은 VC가 초기화되는 초기화 단계(142)에서 시작한다. VC의 초기화는 페이싱 유니트가 연관된 강화 유니트(즉, 통신 링크의 타단에 있는 강화 유니트)로부터 서비스 품질(QOS) 및 특정 세트의 트래픽 파라미터를 요구하는 것을 포함한다. 즉, VC는 페이싱 유니트가 VC의 형성을 요구하고 VC에 대한 서비스 품질 및 트래픽 파라미터 세트를 지정하는 명령을 연관된 강화 유니트에 보낼 때에 초기화된다. 상기한 바와같이, 강화 유니트는 통신 링크 및 수신 노드상에 기존의 데이터를 로딩하는 것에 따라 요구를 수용하거나 거부한다. 결정은 강화 유니트에 부착된 노드에 대한 로딩을 기초로한다. 페이싱 유니트로부터 강화 유니트로의 요구가 거부되면, VC는 초기화되지 않으며 VC에 대하여 어더한 처리도 발생되지 않는다(즉, 데이터 전송되지 않음).
VC초기화 요구가 강화 유니트에 의해 인정되면, 초기화 단계(142)에 후속하여, VC는 스케줄링되지 않은 상태(144)로 들어간다. VC가 스케줄링되지 않은 상태(144)에 있는 동안, 변수 scd는 0으로 설정된다. VC는 VC용 데이터의 제 1 셀이 대역폭 관리 유니트에 의해 수신될 때 까지 스케줄링되지 않은 상태(144)에서 유지된다.
VC와 연관된 셀이 도달하면, 대역폭 관리 유니트는 스케줄링되지 않은 상태(144)로부터 셀 허용 단계(146)로 전이하며, 여기서 셀은 대역폭 관리 유니트에 의해 수용되거나 거부된다. 셀 허용 단계(146)는 이후에 상세하게 기술된다.
셀 허용 단계(146)의 다음 단계는 VC가 스케줄링되지 않은 상태(144)로부터 다른 상태로 전이하는 여부를 결정하는 테스트 단계(148)이다. 테시트 단계(148)에서 변수l와 e가 결정된다. 변수 l는 셀 수에 있어서 VC용 백로그를 나타낸다. 즉, l는 대역폭 관리 유니트에 의해 출력되지 않는 VC용 대역폭 관리 유니트에 의해 수신된 셀 수와 같다. 변수 e는 VC가 대역폭 관리 유니트에 의해 서비스되는 데이타 노드에 의해 인에이블되는지의 여부를 지시하는 변수이다. 즉, 대역폭 관리 유니트에 접속된 데이타 노드는 VC를 인에이블하거나 디스에이블할 수 있다. 인에블되지 않은 가상 접속을 위하여, 대역폭 관리 유니트는 입력된 셀을 수용하지만 셀을 출력하지는 않는다.
테스트 단계(148)에서, VC용 셀의 백로그가 적어도 하나이며(즉, 대역폭 관리 유니트에 지정된 VC와 연관된 적어도 하나의 셀) VC가 인에이블되는 경우를 결정한다. 이러한 조건중 하나 또는 모두가 충족되지 않을 경우, VC는 스케줄링되지 않은 상태(144)로 되돌아간다.
스케줄링되지 않은 상태(144)에 있는 동안, 대역폭 관리 유니트는 e가 설정되는 것을 요구하는 데이터 소스 노드로부터 신호를 수신하는 것이 가능하다는 것을 주지한다. 그 경우에, 제어는 스케줄링되지 않은 상태로부터 e가 설정되는 단계(150)로 전달된다. 단계(150)는 상기한 테스트 단계(148)로 되돌아간다. 그러므로, 대역폭 관리 유니트는 VC가 인에이블되기전에 하나이상의 VC용 셀을 수신하고, VC가 스케줄링되지 않은 상태(144)로부터 전이되도록 데이터 소스 노드로부터 인에이블 신호를 수신하는 것이 가능하다는 것을 주지한다.
스케줄링되지 않은 상태(144)에 있는 동안, 대역폭 관리 유니트가 VC의 종료를 요구하는 데이터 노드로부터 신호를 수신하는 것이 가능하다. 종료는 가상 접속을 통해 더 이상 데이터가 전송되지 않는 것을 포함하여 여러 가지 이유로 발생될 수 있다. 그 경우, 제어는 스케줄링되지 않은 상태(144)로부터 VC가 종료되는 단계(152)로 전달된다. VC가 종료되면, 대역폭 관리 유니트는 VC를 위한 더 이상의 처리가 없으며 VC를 통하여 전송을 위한 셀을 더 이상 수용하지 않는다.
스케줄링되지 않은 상태(144)에서, 대역폭 관리 유니트는 VC와 연관된 파라미터를 갱신하기 위하여 데이터 노드로부터 요구를 수신하는 것이 가능하다. 그 경우, 제어는 단계(144)로부터 VC와 연관된 피라미터가 변경되는 단계(154)로 전달된다. VC와 연관될 수 있는 파라미터는 본 명세서에 기술되어 있다. 그러나, 단계(154)에서 갱신될 수 있는 파라미터중 하나가 VC와 연관된 서비스 품질 qos인 것을 주지한다. 즉, 데이터 노드는 VC와 연관된 서비스 품질이 VC가 제 1 값을 갖는 qos로 초기화된 후에 제 2 값으로 변화되는 것을 요구할 수 있다. 갱신 단계(154)에 이어서, VC는 스케줄링되지 않은 상태(144)로 되돌아간다.
테스트 단계(158)에서 VC에 대한 백로그가 적어도 하나이고(즉, l는 1보다 크거나같다) VC가 인에이블되는 것이 결정되면, 제어는 단계(148)로 부터 scd가 1로 설정되는 단계(156)으로 전달된다. VC와 연관된 scd변수는 VC가 스케줄링되지 않은 상태에 있을 때 0과 같고 VC가 다른 상태들중 어떤 상태에 있을 때 1과 같다.
단계(156)에 연속되는 다음 단계는 VC, c1 및 c2와 연관된 크레디트 변수가 갱신되는 단계(158)이다. 크레디트 변수 c1 및 c2는 VC에 대하여 크레디트된 전송 채널 대역폭의 양을 나타낸다. 크래디트 변수는 이후에 좀 더 상세하게 기술될 것이다.
단계(158)의 다음 단계는 s의 값이 초기화되는 단계(160)이다. s의 값은 VC가 출발 대기행렬로 전이하기 전에 적정 대기행렬에서 소비되는 경과된 시간의 양을 나타낸다. 즉, 스케줄링되지 않은 상태로부터 빠져나온 후에, VC는 s에 의해 지시된 시간의 양이 경과될 때 까지 적정 대기행렬에 위치되며, 그후에 VC는 대역폭 관리 유니트에 의해 적정 대기행렬로부터 출력을 위한 출발 대기행렬로 이동된다. s의 초기값은 연관된 데이터 노드에 의해 결정되며 VC가 초기화될 때 특정된 초기 트래픽 파라미터에 따라서 변화한다.
단계(160)의 다음 단계는 크레디트의 추정된 값과 VCi와 연관된 우선순위의 추정된 값이 계산되는 단계(162)이다. 우선순위는 출발 대기행렬에서 VC를 명령하는데 사용된다. 우선 순위를 계산하는 것은 이후에 상세하게 기술할 것이다.
단계(162)의 다음 단계는 단계(160)에서 si가 0으로 설정되는 경우를 결정하는 테스트 단계(164)이다. 상기한 바와같이, VC는 초기 트래픽 파라미터 및 크레디트의 값에 따라 si를 초기화한다. 단계(160)에서 si가 0으로 설정되면, VCi는 출발 대기행렬상에 직접 위치된다. 반면, VCi는 단계(160)에 제공된 si의 초기 설정에 의해 나타난 시간의 양을 위한 적정 대기행렬에 놓여진다.
테스트 단계(164)에서 테스트 단계(164)로부터 si가 0과 같지않다고 결정되면, 제어는 si값이 s(t)에 의해 증가되는 단계(166)로 전달된다. 양 s(t)는 경과된 시스템 시간에 따라서 변화되며 대역폭 관리 유니트 소프트웨어가 실행되는 사이클마다 갱신된다. 즉, 양 s(t)는 실시간 시스템 클록의 값에 따라 변화한다. si가 시간의 양을 나타내기 위하여 단계(160)에서 설정되기 때문에, VCi는 적정 대기행렬에 남아있게 되고, 이어서 si에 s(t)의 현재값을 부가하면 s(t)가 VCi가 적정 대기행렬로부터 출발 대기행렬로 이동되는 경우와 동일하게 되는 값에 si값이 설정된다. 예를 들면, 대역폭 관리 유니트가 마이크로초마다 한 번 동작하고 s(t)가 사이클마다 한 번 증가되는 것을 가정한다. 또한, 특정 VC에 상응하는 셀이 허용되고 VC가 100 마이크로초로 적정 대기행렬로부터 출발 대기행렬로 이동되는 것을 가정한다. 따라서, si의 값은 단계(160)에서 100으로 설정된다. 단계(166)에서, s(t)의 현재 값은 적정 대기행렬로부터 출발 대기행렬로 이동하는 경우를 결정하기 위하여 실시간 클록에 대하여 테스트된 si값을 제공하기 위해 100에 부가된다.
또한, 단계(166)에서, VCi는 적정 대기행렬에 놓여있다. 상태도(140)를 위하여, 적정 대기행렬은 "A" 대기행렬이라 한다. 적정 대기행렬에서 VCi는 각 VC에 대한 s의 값과 각 VC에 대한 서비스 품질의 값에 의해 저장된다. 즉, s에 대한 최저값을 갖는 VC는 대기행렬의 첫번째이고, s에 대한 제 2 최저값을 갖는 VC는 대기행렬에서 두 번째이다. 동일한 s값을 갖는 VC에 대하여, 최고 QOS를 갖는 VC는 첫 번째이고, 제 2 최고 QOS를 갖는 VC는 두 번째이다. 두 개 이상의 VC가 s와 QOS 둘 다에 대하여 동일한 값을 가질 경우, VC는 제 1 외부 순서(out order)에서 최종 대기행렬에 저장된다. 적정 대기행렬에서 셀의 순서의 중요성은 이후에 상세히 기술될 것이다.
단계(166)에 이어서, VC는 단계(168)에서 적정 상태로 들어간다. scdi가 단계(168)에서 1로 설정된다는 것에 주지한다.
적정 상태(168)로부터, VCi가 단계(170)로 전이될 수 있으며, ei는 대역폭 관리 유니트에 부착된 노드에 의해 제공된 인에이블 또는 디스에이블 명령에 따라서 1이나 0으로 설정된다. 단계(170)에서 ei를 설정한 후에, VCi는 ei의 값에 대해 어떠한 테스트도 행하지 않고 적정 상태(168)로 되돌아간다. ei값은 처리(이하에 기술됨)에서 나중 포인트에서 테스트되며, 그때 VCi는 ei가 1과 같지 않을 경우 스케줄링되지 않은 상태로 복귀된다. 대역폭 관리 유니트는 VCi를 갱신하기 위한 요구를 수신할 수 있으며, 그 경우 제어는 적정 상태(168)로부터 VCi파라미터가 갱신되는 단계(172)로 전달된다. 단계(172)에 이어서, 대역폭 관리 유니트는 스케줄링되지 않은 상태(168)로 되돌아간다.
대역폭 관리 유니트는 적정 상태(168)에 있는 동안 VCi에 대한 s를 갱신하기 위한 명령을 수신할 수 있다. 이러한 경우, VCi는 si의 값이 갱신되는 단계(174)로 전이된다. 단계(174)의 다음 단계는 si의 갱신이 수용될 경우를 결정하는 테스트 단계(176)이다. 만약 그렇지 않을 경우에는, 제어는 단계(176)로부터 적정 상태(168)로 다시 전달된다. 반면, 시스템은 단계(176)로부터 우선순위 변수 Pi가 갱신되는 단계(180)로 전이한다. 단계(180)에 이어서, VCi는 적정 상태(168)로 되돌아간다.
VCi가 적정상태에 있고 VCi에 대한 셀이 도달할 때 마다, 제어는 VCi에 대한 우선순위 Pi가 갱신되는 단계(181)로 전달된다. Pi를 계산 및 갱신하는 것은 이후에 상세하게 기술될 것이다.
대역폭 관리 유니트가 동작되는 사이클마다, 대기행렬의 선두에 있는 제 1 N VC는 s(t)≥si인 것을 결정하기 위하여 테스트된다. N은 8과 같은 소정의 상수값이다. s(t)값이 si값보다 크거나 같을 경우, 시스템은 적정 상태(168)로부터 VCi가 적정 대기행렬(즉, "A" 대기행렬)로부터 제거되는 단계(182)로 전이한다. 단계(182)의 다음 단계는 VCi에 대한 백로그가 적어도 1(즉, li≥1)이고 VCi가 인에이블되는 경우를 결정하는 테스트 단계(184)이다. VCi는 대역폭 관리 유니트가 ei를 단계(170)에서 0으로 설정하기 위하여 신호를 수신할 경우 적정상태에 있는 동안에 디스에이블되는 것에 주지한다.
테스트 단계(184)에서 백로그가 적어도 하나의 셀을 포함하지 않거나 VCi가 디스에이블되는 것이 결정될 경우, 제어는 테스트 단계(184)로부터 scdi가 0으로 설정되는 단계(186)로 전달된다. 단계(186)에 이어서, VCi는 스케줄링되지 않은 상태로 되돌아가고, 단계(146, 150)의 설명과 관련하여 상기한 바와 같이, 셀 허용 또는 ei를 1로 설정하기 위한 신호를 위하여 대기한다. 단계(184)에서 셀의 백로그가 적어도 1이고 VCi가 인에이블되는 것이 결정되면, 제어는 단계(184)로부터 VCi가 상태도에서 "B"로 지정된 출발 대기행렬에 놓이는 단계(190)로 전달된다. 또한, 단계(190)은 단계(164)에서 si가 0인 것을 결정할 경우 상기 단계(164)로 되돌아간다는 것에 주지한다.
출발 대기행렬에서 VC는 VC에 대한 서비스 품질(QOS)의 순서로 제일 먼저 분류된다. 즉, 높게 요구된 서비스 품질을 갖는 VC는 낮게 요구된 서비스 품질을 갖는 VC의 앞에 있다. 동일한 서비스 품질을 갖는 대기행렬에서의 VC는 우선순위 Pi의 순서로 분류된다. 동일한 서비스 품질 및 동일한 우선순위값을 갖는 VC는 제 1 외부 베이스에서 첫 번째로 분류된다. 단계(190)에 이어서, VCi는 출발 상태(192)로 들어간다.
출발 상태(192)에 있는 동안에, VCi는 ei를 설정하기 위한 신호를 수신하고 VCi의 파라미터를 갱신할 수 있다. ei설정은 단계(194)에서 실행되며 VCi용 파라미터를 갱신하는 것은 단계(196)에서 실행된다. 단계(194, 196)는 적정 상태(168)와 관련하여 상기한 단계(170, 172)와 유사하다. 단계(194) 또는 (196)에 이어서, VCi는 출발 상태(192)로 되돌아간다.
VCi는 출발 대기행렬에서 모든 VC의 최고 우선순위 및 최고 QOS를 가질 경우 출발 대기행렬의 선두에 이르게 된다. 그 경우, VCi는 출발 상태(192)로부터 VCi가 출발 대기행렬로부터 제거되는 단계(198)로 전이한다. 단계(198)의 다음 단계는 VCi에 상응하는 라인 셀(즉, 가장 오래된 셀)의 선두가 대역폭 관리 시스템에 의해 출력되는 단계(200)이다. 또한 단계(200)에서, 백로그 li의 값은 1씩 감소되며 크레디트 변수 ci1, ci2도 감소된다. 단계(200)의 다음 단계는 크레디트 변수 ci1, ci2가 갱신되는 단계(202)이다. 크레디트 변수의 갱신은 이후 상세하게 기술될 것이다. 단계(202)의 다음 단계는 si값이 재설정되는 단계(204)이다. si값의 재설정은 이후에 상세하게 기술될 것이다. 단계(204)의 다음 단계는 변수 ci1, ci2 및 Pi가 이후에 상세하게 기술되는 방법으로 계산되는 단계(206)이다.
단계(206)의 다음 단계는 si값이 심사되는 단계(208)이다. si값이 0이 아니면, 제어는 테스트 단계(208)로부터 s(t)값이 si에 부가되고 VCi가 적정 대기행렬에 부가되는 단계(166)로 전이한다.
단계(208)에서 si값이 0으로 결정되면, 제어는 단계(208)로부터 VCi에 대한 백로그 변수 li와 적정 변수 ei가 심사되는 테스트 단계(184)로 전달된다. VCi의 백로그가 적어도 1이고 VCi가 적정가능하면, 제어는 단계(184)로 부터 VCi가 출발 대기행렬에 놓이게 되는 단계(190)로 전달된다. 반면, VCi용 셀의 백로그 수가 적어도 1이 아니거나 VCi가 적정하지 않을 경우, 제어는 단계(184)로부터 scdi값이 0으로 설정되는 단계(186)로 전달된다. 단계(186)에 이어서, VCi는 스케줄링되지 않은 상태(144)로 들어간다. 단계(184)로 전이하기에 앞서, 먼저 최종 시간에 셀 허용 절차가 진행되기 때문에 셀이 도달될 경우를 결정하기 위하여 셀 허용 검사를 실행할 수 있다.
제6도는 VCi를 설정하기 위한 제5도의 단계(142)를 상세하게 설명한 흐름도(220)이다. 제 1 단계(222)에서, r1및 r2가 설정된다. 변수 r1및 r2는 데이터 전송비율을 나타낸다. 변수 r1은 가상 데이터 접속을위한 평균 데이터 전송비율을 나타낸다. 변수 r2는 데이터 접속을 위한 버스트 전송비율을 나타낸다. 버스트 전송비율은 요구한 노드에 의해 가상 접속 VCi을 통해 데이터를 전송하도록 고려된 최대 대역폭이다. 시스템은 이후 상세하게 기술되는 방법으로 평균비율 및 버스트 비율 모두 사용한다.
단계(222)의 다음 단계는 가중치 wi1-wi5가 설정되는 단계(223)이다. 가중치는 이후에 상세하게 기술되는 방법으로 우선순위 Pi의 계산에 사용된다.
단계(223)의 다음 단계는 서비스 품질 qosi가 설정되는 단계(224)이다. 서비스 품질은 노드를 대역폭 관리 유니트로 전송함으로써 제공되며 가상 접속 VCi에 전송되는 데이터의 성질에 좌우된다. qosi에 대한 다른 가능 한 값은 상기되었다.
단계(224)의 다음 단계는 ci1, ci2가 0으로 설정되고 ci_m1및 ci_m2가 설정되는 단계(225)이다. 변수 ci1, ci2는 VCi에 할당되는 대역폭 크레디트를 나타낸다. 크레디트 변수 ci1은 비율변수 ri1에 상응하며 크레디트 변수 ci2은 비율변수 ri2에 상응한다. 변수 ci_m1은 변수 ci1이 도달되는 최대값이다. 변수 ci_m2는 변수 ci2가 도달되는 최소값이다.
크레디트 변수는 대역폭 관리 유니트의 동작 동안에 VCi에 할당된 셀 슬롯의 수를 나타낸다. 크레디트 변수는 시간의 양이 연관된 비율 변수에 상응하여 패스될 때마다 증가된다. 예를 들면, ri1이 초당 100셀에 상응하는 비율과 같을 경우, 크레디트 변수 ci1은 100분의 1초마다 1씩 증가한다. 크레디트 메카니즘은 각 VCi에 의해 사용된 대역폭의 양을 제어한다. ri1 및 ri2가 다르기 때문에, 크레디트 변수 ci1, ci2는 다른 비율로 증가될 수 있다. 크레디트 변수를 갱신하는 것은 이후 좀 더 상세하게 기술될 것이다.
단계(225)의 다음 단계는 si_m1및 si_m2가 설정되는 단계(226)이다. 변수 si_m1및 si_m2는 si가 도달되는 최대값을 나타낸다. 단계(226)의 다음 단계는 VCi에 대한 셀의 백로그 li가 0으로 설정되고 li에 관련된 변수 li_m, lim_l및 lim_h가 VCi가 초기화된 경우에 제공된 트래픽 파라미터에 따라 변화하는 소정의 상수값으로 전부 설정되는 단계(227)이다. 단계(227)에서, 변수 admi, ni, 및 nim이 설정된다.
단계(227)의 다음 단계는 VCi가 인에이블되는 것을 결정하는 변수 ei가 1로 설정되어 VCi가 초기에 인에이블되는 단계(228)이다. 단계(228)의 다음 단계는 변수 scdi가 0으로 설정되어 VCi가 초기에 스케줄링되지 않은 상태에 있는 것을 나타내는 단계(229)이다.
단계(229)의 다음 단계는 변수 tm이 0으로 설정되는 단계(230)이다. 변수 tm은 크레디트 변수 ci1, ci2가 가장 최근에 갱신된 시스템 시간 클록의 값을 나타낸다.
단계(230)의 다음 단계는 우선순위 변수 Pi가 0으로 설정되는 단계(231)이다. 단계(231)의 다음 단계는 버스트비트 인디케이터 bi가 초기에 0으로 설정되는 단계(232)이다.
제7도를 참조하면, 구성도(240)는 제5도의 셀 허용 단계(146)를 상세하게 설명한다. 구성도(240)에 도시된 셀 허용 절차는 "블록 모드" 허용으로 간주된다. 블록 모드 허용은 VC에 셀 손실을 집중시키기 위하여 단일 VC에 대한 구성 셀의 블록을 잠재적으로 드로핑하는 것을 수반한다. 즉, 셀이 전체 대기행렬을 갖는 VC에 대하여 도달될 때 마다, 블록 모드 허용 알고리즘은 상기 셀을 드로핑하고 제 1 드로핑된 셀에 후속하는 소정의 셀을 드로핑할 수 있다. 드로핑된 셀 수는 VC가 제일 먼저 형성된 경우에 제공된 초기 트래픽 파라미터중 하나이다.
셀의 수용을 위한 처리는 현재 상태(241)에서 시작하여 VCi에 대한 새로운 셀이 데이터 노드에 의해 대연폭 관리 유니트에 제공될 경우에 테스트 단계(242)로 전송된다. ni가 테스트 단계(242)에서 0과 같으면, 제어는 다른 테스트 단계(243)로 전달된다. 테스트 단계(243)에서 VCi에 대한 백로그 셀의 수 li가 셀의 최대 허용가능한 백로그 li_m보다 작지 않은 것이 결정되면, 제어는 CLP가 0일 경우를 결정하기 위하여 단계(243)로부터 단계(244)로 전달된다. CLP는 셀의 셀 손실 우선순위를 나타내는 변수이다. 셀이 0값의 CLP를 가지면, 이것은 셀이 비교적 적은 손실 허용오차(tolerant)를 갖는 것(즉, 셀은 가능하다면 폐기되서는 안된다)을 나타낸다. 0가 아닌 다른 값을 갖는 CLP를 갖는 셀은 비교적 높은 셀 허용오차이다(즉, 필요하다면 폐기할 수있다).
CLP가 단계(244)에서 0이 아닐 경우, 제어는 새롭게 도달된 셀이 폐기되는 단계(245)로 전달된다. 단계(245)에 이어서, 제어는 현재 상태(241)로 다시 전달된다. 단계(243)에서 백로그된 셀 li이 백로그된 셀 li의 최대 허용가능한 수보다 작은 것이 결정되면, 제어는 단계(243)로부터 CLP의 값이 0인 경우를 테스트하기 위한 단계(246)로 전달된다.
CLP가 단계(246)에서 0일 경우, 제어는 단계(246)로부터 새로운 셀이 VCi에 대한 셀의 대기행렬의 종단에서 셀 버퍼에 부가되는 단계(247)로 전달된다. 단계(247)의 다음 단계는 VCi에 대한 백로그 셀을 나타내는 변수가 증가되는 단계(248)이다. 단계(248)에 이어서, 제어는 VCi의 현재 상태(241)로 다시 전달된다.
단계(246)에서 셀에 대한 CLP가 0과 같지 않다는 것이 결정되면, 제어는 단계(246)로부터 admi가 테스트되는 단계(250)로 전달된다. 변수 admi은 lim, lim_l및 lim_h이 사용되는 것을 나타내기 위하여 사용된다. 테스트 단계(250)에서 abmi이 1인 것이 결정되면, 제어는 단계(250)로부터 VCi에 대한 백로그 셀 수 li가 VCi에 대한 제 1 백로그 셀 제한 lim_h보다 작은 경우를 결정하기 위한 테스트 단계(251)로 전달된다. 그렇게 될 경우, 제어는 새로운 셀이 VCi에 대한 대기행렬에 부가되는 단계(252)로 전달된다. 단계(251)의 다음 단계는 백로드된 셀 수를 나타내는 변수 li가 증가되는 단계(253)이다. 단계(253)에서, 제어는 현재 상태(241)로 다시 전달된다.
단계(250)에서 abmi이 1이 아닌 것이 결정되면, 제어는 단계(250)로부터 VCi에 대한 백로그된 셀 수가 VCi에 대한 백로그셀 수에 대한 제 2 제한 lim_1과 비교되는 단계(255)이다. 단계(255)에서 li이 lim_1보다 작지 않다고 결정되면, 제어는 단계(255)로부터 새롭게 도달된 셀이 폐기되는 단계(256)로 전달된다. 단계(256)에 이어서, 제어는 현재 상태(241)로 다시 전달된다.
테스트 단계(255)에서 VCi에 대한 백로그 셀 수 li가 제한 변수 lim_1보다 작은 것이 결정되면, 제어는 단계(255)로부터 admi이 1로 설정되는 단계(258)로 전달된다. 단계(258)의 다음 단계는 새로운 셀이 VCi에 대한 셀의 대기행렬에 부가되는 단계(252)이다. 단계(252)에 이어서, VCi에 대한 백로그 셀 수를 나타내는 변수 li가 단계(253)에서 증가된다. 단계(253)에 이어서, 제어는 현재 상태(241)로 다시 전달된다.
테스트 단계(251)에서 VCi에 대한 백로그 수가 제한 변수 lim_1보다 작지 않은 것이 결정되면, 제어는 단계(251)로부터 admi이 0으로 설정되는 단계(260)로 전달된다. 단계(260)의 다음 단계는 새롭게 도달된 셀이 폐기되는 단계(245)이다. 단계(245)에 이어서, 제어는 현재 상태(241)로 다시 전달된다.
테스트 단계(242)에서 ni가 0이 아닌 것이 결정되거나, 또는 CLP가 단계(244)에서 0이 아닐 경우, 제어는 새롭게 도달된 셀이 폐기되는 단계(262)로 전달된다. 단계(262)의 다음 단계는 ni가 증가되는 단계(263)이다. 단계(263)의 다음 단계는 ni가 ni에 대한 제한 변수 nm과 비교되는 단계(264)이다. 단계(264)에서 ni이 nm보다 작거나 같으면, 제어는 단계(264)로부터 현재 상태(241)로 전달된다. 반면, 제오는 ni가 0으로 설정되는 단계(265)로 전달된다.
제8도를 참조하면, 흐름도(280)는 si값이 초기화되는 제5도의 단계(160)를 설명한다. 흐름은 VCi가 스케줄링되지 않은 상태(282)에 있을 경우에 시작한다. 제 1 테스트 단계(284)에서, ci1 및 ci2의 값이 심사된다. 변수 ci1 및 c22는 VCi에 대한 크레디트를 나타낸다. 크레디트 변수 ci1 및 c22의 값이 1보다 크거나 같으면, 제어는 테스트 단계(284)로부터 si값이 0으로 설정되는 단계(286)로 전달된다. 단계(286)에 이어서, VCi는 다음 상태(288)로 들어간다. si가 단계(286)에서 0으로 설정되면, 다음 상태(288)는 제5도에 도시된 바와 같이 출발상태(192)이다. 이것은 제5도의 테스트 단계(164)에서 si의 값이 0일 경우를 보기위하여 검사되기 때문에 일어난다. 그렇게 되면, VCi는 스케줄링되지 않은 상태(144)로부터 제5도에 도시한 바와같이 출발상태(192)로 직접 진행된다.
테스트 단계(284)에서 ci1이나 ci2가 1보다 작은 것이 결정되면, 제어는 단계(284)로부터 si가 si_m1으로 설정되는 단계(290)로 전달된다. 변수 si_m1는 비율 ri1으로 전송된 셀에 대한 셀 전송사이의 시간의 양을 나타내는 변수이다. 단계(290)의 다음 단계는 △c가 계산되는 단계(292)이다. 변수 △c는 si에 상응하는 시간의 양이 패스된 후에 ci2에 부가되는 부가적이 크레디트의 양을 나타낸다. △c의 값은 si에 ri2를 곱함으로써 계산된다.
단계(292)의 다음 단계는 크레디트 변수 ci2의 값과 △c의 값의 합이 1보다 작은 경우를 결정하는 테스트 단계(294)이다. 변수 ci2는 이 단계에서 갱신되지 않는다. ci2과 △c의 합이 1보다 작지 않으면, 제어는 단계(294)로부터 다음 상태(288)로 전달된다. 이 경우, 다음 상태는 si가 제5도의 단계(164)에서 0이 아니기 때문에 제5도에 도시된 적정 상태(168)일 것이다.
ci2과 △c의 합이 단계(294)에서 1보다 작은 경우, 제어는 단계(294)로부터 si의 값이 si_m2로 설정되는 단계(296)로 전달된다. 변수 si_m2는 비율 ri2로 전송된 셀에 대해 셀 전송 사이의 시간의 양을 나타낸다. 단계(296)에 이어서, 제어는 다음 상태(288)로 전달된다.
제9도를 참조하면, 흐름도(300)는 제5도에 도시한 재설정 si값 단계(204)를 설명한다. 제 1 테스트 단계(302)에서, VCi에 대한 버스트 비트 변수 bi가 테스트된다. 버스트 비트 변수 bi는 VCi가 버스트 모드에서 전송되는 것을 나타낸다. 버스트 모드는 가상 접속의 셀이 기능한한 서로 밀접하게 전송되는 가상 접속에 사용된다. 즉, 데이터 노드는 가능한 한 서로 밀접하게 전송되는 데이터 트래픽용 버스트 모드에 대한 가상 접속을 설정한다. 예를 들면, e-메일 메시지가 낮은 우선순위를 가질 수 있다 할지라도, e-메일 메시지의 제 1 셀이 전송되는 경우 전체 e-메일 메시지를 전송하는 것이 유리할 수도 있다.
VCi에 대한 버스트 비트 변수 bi가 단계(302)에서 설정되는 것이 결정될 경우, 제어는 테스트 단계(302)로부터 VCi에 대한 크레디트 변수 ci1 및 ci2와 백로그 변수 li가 테스트되는 테스트 단계(304)로 전달된다. 크레디트 변수 및 백로그 변수가 단계(304)에서 1보다 크거나 같으면, 제어는 단계(304)로부터 si이 0으로 설정되는 단계(306)로 전달된다. 단계(306)에 이어서, VCi는 다음 상태(308)로 들어간다. si가 단계(306)에서 0으로 설정된다면, VCi에 대한 다음 상태는 제5도에 도시한 출발상태(192)일 것이다.
버스트 비트 변수 bi는 단계(302)에서 설정되고 VCi는 충분한 대역폭 크레디트를 갖지 않으며 백로그 li가 단계(304)에서 0인 경우, 제어는 단계(304)로부터 si가 si_m1과 동일하게 설정되는 단계(310)로 전달된다. 단계(310)는 단계(302)에서 버스트 비트 변수 bi가 1과 같지 않은 것이(즉, VCi가 버스트 모드에서 전송되지 않음)가 결정될 경우에 도달된다.
단계(310)의 다음 단계는 △c가 제8도의 단계(292)와 관련하여 설명되는 것과 유사한 방법으로 계산되는 단계(312)이다. 단계(312)의 다음 단계는 크레디트 변수 ci2와 △c의 합이 1보다 작은 경우를 결정하는 단계(314)이다. 그렇지 않을 경우, 제어는 단계(314)로부터 다음 상태(308)로 전달된다. 테스트 단계(314)는 si에 상응하는 시간의 양이 패스된 후에(즉, si카운터가 타임 아웃된 후에) 크레디트 변수 ci2가 1보다 큰 경우를 결정한다.그렇지 않을 경우, ci2와 △c의 합은 si가 타임 아웃될 때 1보다 작으며, 제어는 단계(314)로부터 si가 si_m2와 동일하게 설정되는 단계(316)로 전달된다. 단계(316)에 이어서, VCi는 다음 상태(308)로 들어간다.
제10도를 참조하면, 흐름도(320)는 VCi에 대한 크레디트 변수 ci1 및 ci2를 갱신하기 위한 단계를 설명한다. ci1 및 ci2를 갱신하는 것은 제5도에 도시한 단계(202)와 단계(158)에서 일어난다. 크레디트 변수는 현재 시스템 시간에 따라 설정되지만, 제5도의 단계(202)에 대하여, 사용된 시간은 단계(202)에 선행하는 단계에서 셀을 전송하는데 걸리는 시간의 양을 고려하기 위하여 다음 셀 시간 슬롯의 시작이라는 것에 주지한다.
처리 ci에 대한 값이 계산되는 단계(324)가 후속되는 현재 단계(322)에서 시작한다. 단계(324)에서, ci1은 현재 시스템 시간 ri1과 크레디트 변수 ci1 및 ci2가 최종 갱신된 시간 ti_n사이의 차와 ri1의 곱과 동일한 양만큼 증가된다. 단계(324)의 다음 단계는 ci1이 ci1m보다 큰 경우를 결정하기 위한 테스트 단계(326)이다. 변수 ci1m은 크레디트 변수 ci1이 동일하게 되고 VCi가 초기화되는 시간에 설정되는 최대값이다. 텍스트 단계(326)에서 ci1이 ci1m보다 크면, 제어는 단계(326)로부터 ci1이 ci1m과 동일하게 설정되는 단계(328)로 전달된다. 단계(326),(328)은 ci1을 ci1 이나 ci1m중 최대값으로 효과적으로 설정한다.
ci1이 ci1m보다 크지 않을 경우 단계(326) 또는 (328)의 다음 단계는 ci2에 대한 값이 단계(324)에서 ci1의 계산과 유사한 방법으로 계산되는 단계이다. 단계(330)의 다음 단계는 ci1이 ci1과 ci1m의 최대값과 동일하게 설정되는 단계(326),(328)와 유사한 방법으로 ci2나 ci1m중 최대값에 ci2를 설정하는 단계(332)(334)이다.
ci2가 ci2m보다 크지 않은 경우 단계(334) 또는 (332)의 다음 단계는 tm이 현재 시스템 시간 t와 동일하게 설정되는 단계(336)이다. 변수 tm은 크레디트 변수 ci1과 ci2가 최종 갱신될 때의 시스템 시간 t를 나타낸다. 단계(336)의 다음 단계는 VCi가 다음 적당한 상태로 들어가는 단계(338)이다.
제11도를 참조하면, 흐름도(340)는 si가 △s만큼 갱신되는 제5도의 단계(174)를 설명한다. 제5도의 단계(174)는 대역폭 관리 유니트의 연관된 데이터 노드가 VCi에 대한 si값이 변화됨으로써 VCi를 통한 데이터 전송의 지연을 변화시키는 것을 요구한다.
처리는 적정 상태(342)의 VCi에서 시작한다. 데이터 소스 노드가 si를 갱신하기 위한 명령을 제공하면, 제어는 단계(342)로부터 데이터 노드에 의해 제공된 △s의 값이 0인 경우를 결정하는 테스트 단계(344)로 전달된다. 그렇게 되면, 제어는 단계(344)로부터 적정 상태(342)로 다시 전달되며 어떠한 처리도 발생되지 않는다. 반면, △s가 0과 같지 않으면, 제어는 테스트 단계(344)로부터 VCi가 적정 대기행렬에 위치되는 단계(346)로 전달된다. 제5도에 도시된 바와같이, si가 갱신되는 단계(174)는 VCi가 적정 상태에 있을 때 일어난다는 것에 주지한다.
단계(346)의 다음 단계는 △s가 0보다 크거나 또는 0보다 작은 경우를 결정하는 테스트 단계(348)이다. △s가 0보다 크면, 제어는 단계(348)로 부터 △s가 si에 부가되는 단계(350)로 전달된다. 단계(350)의 다음 단계는 VCi가 si의 새로운 값에 따라서 적정 대기행렬에 재위치설정되는 단계(352)이다. 제5도와 관련하여 상기한 바와같이, 적정 대기행렬에서 VCi의 위치는 si및 qosi의 함수이다.
테스트 단계(348)에서 △s가 0보다 작은 것이 결정되면, 제어는 단계(348)로부터 크레디트 변수 ci1 및 ci2가 심사되는 단계(354)로 전달된다. 단계(354)에서 ci1 또는 ci2가 0보다 작은 것이 결정되면, 제어는 단계(354)로부터 적정 상태(342)로 다시 전달되며 si의 갱신이 실행되니 않는다. 단계(348),(354)는 크레디트변수들둥 하나가 1보다 작을 경우에 si의 값이 감소되지 않는 것을 나타낸다.
단계(354)에서 크레디트 변수 ci1 및 ci2가 1보다 크거나 같은 것이 결정되면, 제어는 단계(354)로부터 si의 값이 △s만큼 증가되는 단계(356)로 전달된다. 단계(356)에 이르기 위하여, △s는 단계(356)에서 si의 값이 실제로 감소되도록 0보다 작아야 한다는 것을 주지한다.
단계(356)의 다음 단계는 si의 값이 s(t)와 비교되는 단계(358)이다. si의 값이 si를 s(t)보다 작게하는 양만큼 단계(356)에서 감소되었을 경우, 제어는 si가 s(t)와 동일하게 설정되는 단계(360)로 전달한다. 단계(358),(360)는 si값을 si나 s(t)중 큰 것에 설정한다.
si가 s(t)보다 크거나 같을 경우 단계(360) 또는 단계(358)에 이어서, 제어는 VCi가 적정 대기행렬에 재위치설정되는 단계(362)로 전달된다. 상기한 바와 같이, 적정 대기행렬에서 VCi의 위치는 si와 qosi의 값이 함수이다. 단계(362)에 이어서, VCi는 적정 스테이지(342)로 되돌아간다.
제12도를 참조하면, 흐름도(370)는,및 Pi의 값이 계산되는 제5도의 계산 단계(162),(206)를 설명한다. 처리는의 값이 계산되는 단계(374)가 후속되는 현재 상태(372)에서 시작한다.의 값은 크레디트 변수 si가 타임 아웃될 때 가지는 값과 동일하다. 즉,은 VCi가 적정 대기행렬로부터 제거될 때의 크레디트 변수 ci1의 예상값과 동일하다. 이후에 상세하게 기술되는 바와 같이, Pi는 크레디트 변수 ci1 및 ci2의 함수이며, ci1 및 ci2의 예상값을 계산하는 것은 VCi가 적정 대기행렬로부터 제거되어 출발 대기행렬에 놓이게 될 때 Pi의 값을 예상하는데 유용하다.
우선순위 변수 Pi의 값은 다음 방정식을 사용하여 결정된다:
Pi= wi1*ci1 + wi2*ci2 + wi3*ri1 + wi4*ri2 + wi5*li
Pi는 크레디트 변수, 비율변수, 및 대기행렬에서 백로그된 셀 수의 함수이다. VCi의 초기화를 요구하는 노드는 VC에 대한 가중치 wi1-wi5를 지정한다. 따라서, 요구하는 노드가 적용에 좌우되어 다르게 항목들을 가중할 수 있다. 예를 들면, 데이터가 비교적 버스트할 경우, wi2 및 wi4(버스트 데이터비율에 상응하는 항목에 대한 가중치)는 wi1 및 wi3(평균 데이터 비율에 상응하는 항목에 대한 가중치)보다 크게 설정된다. 유사하게, 데이터에 대한 백로그를 최소화하는 것이 바람직할 경우, wi5(백로그된 셀 수에 상응하는 가중치)는 비교적 크게 설정될 수 있다. 일부 적용에 대해서는 가중치의 일부를 0으로 할당하는 것이 바람직할 수도 있다.
단계(374)에서,의 값은 크레디트 변수 ci1의 현재값과 ri1 및 si의 곱을 더함으로써 계산된다. 크레디트 변수가 각 반복을 위해 갱신되고 VCi는 적정 대기행렬에 있을 경우, ci1은 si가 0으로 될 때와 동일하게 된다는 것에 주지한다. ci1이 단계(374)에서 갱신되지 않는다는 것에 주지한다.
단계(374)의 다음 단계는이 ci1_m과 비교되는 테스트 단계(376)이다.이 ci1_m보다 크면, 제어는 테스트 단계(376)로부터의 값이 ci1_m의 값과 동일하게 설정되는 단계(378)로 전달된다. 단계(376),(378)는의 값을과 ci1_m의 최대값에 설정한다. 단계(376),(378)에 대하여, ci1이 갱신되지 않는 다는 것에 주지한다.
이 ci1_m보다 크지 않은 경우 단계(378) 또는 단계(376)의 다음 단계는을 설정하는 것과 유사한 방법으로의 값을 설정하는 단계(380-382)이다.
가 ci1_m보다 크지 않을 경우 단계(382) 또는 단계(381)의 다음 계는 가중치 wi1, wi2, wi3, wi4, 및 wi5 가 페치(fetch)되는 단계(384)이다. 상기한 바와 같이, 가중치는 우선순위 Pi를 계산하는데 사용된다.
단계(384)의 다음 단계는 VCi에 대한 우선순위 Pi가 흐름도(370)에 도시된 방법으로 계산되는 단계(386)이다. 가중치는 VCi가 초기화되는 시기에 지정되고, Pi의 계산에 사용된 각 항목의 중요성은 가중치의 값을 설정함으로써 강조될 수도 있고 강조되지 않을 수도 있다. 하나이상의 가중치의 값들은 0으로 설정될 수 있으며, 그것에 의해 항목은 우선순위의 계산에 사용되지 않는다. Pi는 VCi가 적정 상태에 있는 동안 각 VCi셀 허용후에 P=Pi+wi5로 갱신된다는 것에 주지한다. 이것은 VC가 출발 대기행렬("B" 대기행렬)로 전달될 때 하나의 시간 슬롯내에 모든 VC에 대한 우선순위를 계산하는데 요구되는 계산량을 감소시키는 Pi의 구분적인 계산을 고려한다.
제13도를 참조하면, 흐름도(390)는 우선순위 변수 Pi가 갱신되는 제5도의 단계(180)를 상세하게 설명한다. Pi는 단계(174)에서 갱신되는 si의 값에 응답해서만 갱신된다. 반면, Pi의 값은 VCi가 적정 상태에 있는 동안에 상수로 남아있는다. 즉, Pi가 ci1, ci2, ri1, ri2 및 li의 함수이고, ci1 과 ci2가 si의 함수이기 때문에, Pi는 si가 제5도에 도시된 단계(174)에서 변화하는 경우에만 변화한다.
흐름은 si가 액세스되는 단계(394)가 후속되는 현재 상태(392)에서 시작한다. 단계(394)의 다음 단계는이 제12도에서 설명한 것과 유사한 방법으로 계산되는 단계(396-398)이다. 그러나, 단계(396)에서, tm은 현재 처리단계에서 s(t)가 이미 제5도에 도시된 단계(166)에서 si에 부가되고,이 si가 타임 아웃될 때 예측되기 때문에, si로부터 감하여진다.
단계(398)의 다음 단계는의 계산과 유사한 방법으로 계산되는 단계(400-402)이다.가 ci2_m보다 크지 않을 경우 단계(402) 또는 단계(401)의 다음 단계는 가중치가 폐치되고 Pi가 제12도와 관련하여 설명된 것과 유사한 방법으로 계산되는 단계(404), (405)이다.
제14도를 참조하면, 구성도(420)는 대역폭 관리 유니트에 대한 하나의 하드웨어 실시를 상세하게 설명한다. 입력(422)은 대역폭 관리 유니트를 데이터 셀의 소스에 접속시킨다. 입력(422)은 메모리를 사용하여 실시되는 셀 풀(424)에 접속된다. 셀 풀(424)은 대역폭 관리 유니트로부터 출발하기 위해 대기하는 모든 셀을 저장한다. 여기에 기술된 실시예에서, 셀 풀(424)의 크기는 시스템이 VC당 최대 허용가능한 백로그를 곱하여 수용할 수 있는 VC의 수와 같다. 예를 들면, 30 셀의 최대 백로그 길이를 갖는 4,096 VC를 처리하기 위해 지정된 대역폭 관리 유니트에 대하여, 셀 풀의 크기는 4096×30 셀이다.
셀 풀 매니저(426)는 제5도 내지 13도의 상태도와 관련하여 상기한 방법으로 대역폭 관리 유니트(420)내에서 셀을 처리한다.
파라미터 버퍼(428)는 각 VC의 연관된 모든 변수를 처리하며 메모리를 사용하여 실행된다. 파라미터 버퍼(428)의 크기는 대역폭 관리 유니트(420)에 의해 처리된 VC의 최대수를 곱한 VC당 변수의 수이다.
파라미터 갱신 유니트(430)는 파라미터 버퍼(428)에 접속되며, 제5도 내지 13도의 상태도와 관련하여 상기한 방법으로 각 VC에 대한 변수를 갱신한다.
셀 클록(432)은 상기한 바와 같이 VC가 적정 대기행렬로부터 출발대기행렬로 전이하는 경우를 결정하는데 사용되는 s(t)의 값을 계산한다. 또한, 셀 클록(432)은 시스템 시간 t을 제공한다.
적정 대기행렬(431)은 메모리를 사용하여 셀행되며, 적정 대기행렬에 있는 VC를 저장한다. 제5도 내지 13도의 상태도와 관련하여 상기한 바와 같이, 적정 대기행렬에 있는 VC는 각 VC에 대한 qos 및 s의 값의 순서로 분류된다.
비교기(434)는 각 VC에 대한 s의 값과 적정 셀 클록(432)으로부터의 s(t)의 값을 비교하며, VC가 적정 상태로부터 출발 상태로 전이되는 경우를 결정한다. 제5도 내지 13도의 상태도와 관련하여 상기한 바와 같이, VCi는 si≥s(t)일 때 적정 상태로부터 출발상태로 전이한다.
출발 대기행렬은 메모리를 사용하여 실행되며 대역폭 관리 유니트(420)로부터 출발을 대기하고 있는 VC를 저장한다. 제5도 내지 13도의 상태도와 관련하여 상기한 바와 같이, 출발 대기행렬(436)은 각 VC에 대한 서비스 품질(qos) 순서로 분류되는 VC와 각 VC에 대하여 계산된 우선순위를 포함한다. 선택 순서가 유니트(433)는 각 VC에 대하여 제5도 내지 13도에 도시되고 상기된 알고리즘에 따라서 각 VC를 위치시키기 위해 두 개의 대기행렬(431),(436)중 하나를 선택한다.
우선순위 계산 유니트(438)는 각 반복동안에 각 VC에 대한 우선순위를 계산한다. 제5도 내지 13도의 상태와 관련하여 상기한 바와 같이, VC가 적정 대기행렬로 들어가면, 우선순위는 각 셀 도달이 허용된 후에 가중치 w5의 곱과 우선순위 변수의 값을 단순히 가산함으로써 갱신될 수 있다는 것을 주지한다.
제14도에 도시된 장치(420)는 종래의 VLSI 구조를 사용하는 간단한 방법으로 실행될 수 있다. 셀 풀(424), 적정 대기행렬(436), 및 파라미터 버퍼(428)는 메모리로서 실행될 수 있다. 셀 풀 매니저(426), 파라미터 갱신 유니트(430), 선택 순서기 (433), 우선순위 계산 유니트(438) 및 비교기(434)는 제5도 내지 13도와 관련하여 상기한 기능을 실행하기 위하여 VLSI 논리를 사용하여 실행될 수 있다. 즉, 당해업자들은 상태도 및 현재 주문 VLSI 설계 기술을 사용함으로써 대역폭 관리 유니트(420)를 실행할 수 있다. 또한, 여기에 포함된 설명을 기초로하여, 당해업자들은 아주 빠른 프로세서의 소프트웨어로서 또는 종래의 하드웨어 및 소프트웨어의 결합으로서 완전히 포함하는, 여러 가지 다른 방법으로 대역폭 관리 유니트(420)를 실행할 수 있다.
본 발명이 실시예에 관하여 도시되고 기술되었지만, 본 발명의 정신 및 범주에서 벗어나지 않고 여러 가지 변화, 생략 및 부가가 이루어 질 수 있다는 것은 당해업자에게 이해될 수 있을 것이다.

Claims (35)

  1. 통신 네트워크내에 복수의 가상접속을 관리하기 위한 대역폭 관리 시스템에 있어서, 가상 접속중 특정한 것과 각각 연관된 데이타 셀을 수신하기 위한 입력부와; 상기 셀을 저장하기 위하여 상기 입력부에 결합되어 있는 셀 풀과; 가상 접속중 특정한 것을 포함하는 제 1 대기행렬을 포함하는데, 상기 제 1 대기행렬에서 가상 접속의 상대 위치는 특정 가상 접속과 연관된 예측된 데이터 비율에 따라서 그리고 특정 가상 접속이 상기 제 1 대기행렬에 있는 시간의 양에 따라서 변화하는 적정값에 의해 결정되며; 가상 접속중 다른 특정한 것을 포함하며 상기 제 1 대기행렬에 결합된 제 2 대기행렬을 포함하는데, 상기 제 2 대기행렬에서 가상 접속의 상대 위치는 각 가상 접속에 할당된 소정의 서비스 품질에 따라서 변화하며; 상기 제 2 대기행렬의 앞에서 가상 접속에 상응하는 상기 셀 풀로부터 셀을 전송하기 위하여 상기 셀 풀 및 상기 제 2 대기행렬에 결합된 출력부를 포함하는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서, 동일한 적정값을 갖는 접속은 상기 소정의 서비스 품질에 따라서 상기 제 1 대기행렬에 배열되는 것을 특징으로 하는 시스템.
  3. 제1항에 있어서, 동일한 서비스 품질을 갖는 접속은 상기 가상 접속에 할당된 우선순위에 따라서 상기 제 2 대기행렬에 배열되느 것을 특징으로 하는 시스템.
  4. 제3항에 있어서, 상기 우선순위는 상기 각 가상 접속의 하나이상의 예측된 데이터 비율에 따라서 변화하는 것을 특징으로 하는 시스템.
  5. 제3항에 있어서, 상기 우선순위는 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수에 따라서 변화하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 시스템.
  6. 제3항에 있어서, 상기 우선순위는 전송을 대기하고 있는 각 가상 접속을 위한 셀의 백로그에 따라서 변화하는 것을 특징으로 하는 시스템.
  7. 제3항에 있어서, 상기 우선순위는 상기 각 가상 접속의 하나이상의 예측된 데이터 비율과, 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수와, 전송을 대기하고 있는 상기 각 가상 접속을 위한 셀의 백로그에 따라서 변화하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 시스템.
  8. 제7항에 있어서, 상기 데이터 비율, 크레디트 변수, 및 백로그는 상기 우선순위를 결정하기 전에 가중되는 것을 특징으로 하는 시스템.
  9. 제1항에 있어서, 상기 시스템은 페이싱 유니트와 강화 유니트중 하나이며, 상기 페이싱 유니트는 데이터 소스 노드로부터 셀을 수신하여 상기 셀을 통신 링크에 제공하며, 상기 강화 유니트는 통신 링크로부터 데이터를 수신하여 상기 데이터를 데이터 싱크 노드에 제공하는 것을 특징으로 하는 시스템.
  10. 제1항에 있어서, 초기 트래픽 파라미터를 지정함으로써 가상 접속을 형성하기 위한 수단; 및 상기 초기 트래픽 파라미터에 의해 지정된 것을 초과하는 비율로 수신되는 셀을 드로핑하기 위한 수단을 더 포함하는 것을 특징으로 하는 시스템.
  11. 제1항에 있어서, 상기 소정의 서비스 품질은 4개의 가능한 값을 갖는 것을 특징으로 하는 시스템.
  12. 제11항에 있어서, 동일한 서비스 품질값을 갖는 가상 접속은 상기 각 가상 접속에 할당된 우선순위에 다라서 상기 제 2 대기행렬에 배열되는 것을 특징으로 하는 시스템.
  13. 제12항에 있어서, 상기 우선순위는 상기 각 가상 접속의 하나이상의 예측된 데이터 비율과, 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수와, 전송을 대기하고 잇는 상기 각 가상 접속을 위한 셀의 백로그에 따라서 변화하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 시스템.
  14. 제13항에 있어서, 상기 데이터 비율, 크레디트 변수 , 및 백로그는 상기 우선순위를 결정하기 전에 가중되는 것을 특징으로 하는 시스템.
  15. 제1항에 있어서, 상기 입력부에 의해 수신된 셀과 연관된 가상 접속이 상기 제 2 대기행렬에 직접 위치되는지의 여부를 나타내기 위한 버스트 비트 인디케이터를 더 포함하는 것을 특징으로 하는 시스템.
  16. 제15항에 있어서, 동일한 서비스 품질값을 갖는 접속은 상기 각 가상 접속에 할당된 우선순위에 따라서 상기 제 2 대기행렬에 배열되는 것을 특징으로 하는 시스템.
  17. 제16항에 있어서, 상기 우선순위는 상기 각 가상 접속의 하나이상의 예측된 데이터 비율과, 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수와, 전송을 대기하고 있는 상기 각 가상 접속을 위한 셀의 벡로그에 따라서 변화하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 시스템.
  18. 제17항에 있어서, 상기 데이터 비율, 크레디트 변수, 및 백로그는 상기 우선순위를 결정하기전에 가중되는 것을 특징으로 하는 시스템.
  19. 통신 네트워크내에 복수의 가상 데이터 접속을 관리하기 위한 방법에 있어서, 가상 접속중 특정한 것과 각각 연관된 데이터 셀을 수신하는 단계와; 수신된 셀을 셀 풀에 저장하는 단계와; 가상 접속중 특정한 것을 포함하는 제 1 대기행렬을 제공하는 단계를 포함하는데, 상기 제 1 대기행렬에서 가상 접속의 상대 위치는 특정 가상 접속과 연관된 예측된 데이터 비율에 따라서 그리고 특정 가상 접속이 상기 제 1 대기행렬에 있는 시간의 양에 따라서 변화하는 적정값에 의해 결정되며; 가상 접속중 다른 특정한 것을 포함하며 상기 제 1 대기행렬에 결합된 제 2 대기행렬을 제공하는 단계를 포함하는데, 상기 제 2 대기행렬에서 가상 접속의 상대 위치는 각 가상 접속에 할당된 소정의 서비스 품질에 따라서 변화하며; 상기 제 2 대기행렬의 앞에서 가상 접속에 상응하는 상기 셀 풀로부터 셀을 전송하는 단계를 포함하는 것을 특징으로 하는 방법.
  20. 제19항에 있어서, 소정의 서비스 품질에 따라서 제 1 대기행렬에 동일한 적정값을 갖는 가상 접속을 배열하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  21. 제19항에 있어서, 상기 각 가상 접속에 할당된 우선순위에 따라서 제 2 대기행렬에서 동일한 서비스 품질값을 갖는 가상 접속을 배열하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  22. 제21항에 있어서, 상기 각 가상 접속의 하나이상의 예측된 데이터 비율에 따라서 우선 순위를 변화시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  23. 제21항에 있어서, 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수에 따라서 우선순위를 변화시키는 단계를 더 포함하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 방법.
  24. 제21항에 있어서, 전송을 대기하고 있는, 상기 가상 접속을 위한 셀의 백로그에 따라서 우선순위를 변화시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  25. 제21항에 있어서, 상기 각 가상 접속의 하나이상의 데이터 비율과, 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수와, 전송을 대기하고 있는 상기 각 가상 접속을 위한 셀의 백로그에 따라서 우선순위를 변화시키는 단계를 더 포함하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 방법.
  26. 제25항에 있어서, 상기 데이터 비율, 크레디트 변수, 및 백로그에 할당된 가중치에 따라서 우선순위를 변화시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  27. 제19항에 있어서, 초기 트래픽 파라미터를 지정함으로써 가상 접속을 형성하는 단계; 및 상기 초기 트래픽 파라미터에 의해 지정된 것을 초과하는 비율로 수신되는 셀을 드로핑하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  28. 제19항에 있어서, 소정의 서비스 품질에 4개의 가능한 값중 하나를 할당하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  29. 제28항에 있어서, 상기 각 가상 접속에 할당된 우선순위에 따라서 상기 제 2 대기행렬에 동일한 서비스 품질값을 갖는 접속을 배열하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  30. 제29항에 있어서, 상기 각 가상 접속의 하나이상의 데이터 비율과, 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수와, 전송을 대기하고 있는 상기 각 가상 접속을 위한 셀의 백로그에 따라서 우선순위를 변화시키는 단계를 더 포함하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 방법.
  31. 제30항에 있어서, 상기 데이터 비율, 크레디트 변수, 및 백로그에 할당된 가중치에 따라서 우선순위를 변화시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  32. 제19항에 있어서, 설정될 가상 접속에 대한 버스트 비트 인디케이터에 응답하여 제 2 대기행렬에 직접 허용된 셀과 연관된 가상 접속을 위치설정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  33. 제32항에 있어서, 상기 각 가상 접속에 할당된 우선순위에 따라서 상기 제 2 대기행렬에 동일한 서비스 품질값을 갖는 가상 접속을 배열하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  34. 제33항에 있어서, 상기 각 가상 접속의 하나이상의 데이터 비율과, 상기 각 가상 접속에 할당된 하나이상의 크레디트 변수와, 전송을 대기하고 있는 상기 각 가상 접속을 위한 셀의 백로그에 따라서 우선순위를 변화시키는 단계를 더 포함하며, 상기 크레디트 변수는 상기 각 가상 접속에 제공되는 할당된 시간 슬롯을 나타내는 것을 특징으로 하는 방법.
  35. 제34항에 있어서, 상기 데이터 비율, 크레디트 변수, 및 백로그에 할당된 가중치에 따라서 우선순위를 변화시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
KR1019960705640A 1995-02-03 1996-01-23 비동기식 전송모드 네트워크에 대한 대역폭 관리시스템 및 방법 KR100222743B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US08/383,400 US5533009A (en) 1995-02-03 1995-02-03 Bandwidth management and access control for an ATM network
US08/383,400 1995-02-03
US8/383,400 1995-02-03
PCT/US1996/001208 WO1996024212A1 (en) 1995-02-03 1996-01-23 Bandwidth management and access control for an atm network

Publications (2)

Publication Number Publication Date
KR970702642A KR970702642A (ko) 1997-05-13
KR100222743B1 true KR100222743B1 (ko) 1999-10-01

Family

ID=23512968

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960705640A KR100222743B1 (ko) 1995-02-03 1996-01-23 비동기식 전송모드 네트워크에 대한 대역폭 관리시스템 및 방법

Country Status (8)

Country Link
US (1) US5533009A (ko)
EP (1) EP0754383B1 (ko)
JP (1) JP3088464B2 (ko)
KR (1) KR100222743B1 (ko)
CA (1) CA2186449C (ko)
MY (1) MY112027A (ko)
TW (1) TW344920B (ko)
WO (1) WO1996024212A1 (ko)

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995003657A1 (fr) * 1993-07-21 1995-02-02 Fujitsu Limited Central mta
US5446726A (en) * 1993-10-20 1995-08-29 Lsi Logic Corporation Error detection and correction apparatus for an asynchronous transfer mode (ATM) network device
JPH0823332A (ja) * 1994-07-05 1996-01-23 Mitsubishi Electric Corp リング型atmノードのアクセス制御装置
EP0702472A1 (en) * 1994-09-19 1996-03-20 International Business Machines Corporation A method and an apparatus for shaping the output traffic in a fixed length cell switching network node
JPH08139737A (ja) * 1994-11-14 1996-05-31 Nec Corp 輻輳制御方式
EP0717532A1 (en) * 1994-12-13 1996-06-19 International Business Machines Corporation Dynamic fair queuing to support best effort traffic in an ATM network
US5713043A (en) * 1995-01-04 1998-01-27 International Business Machines Corporation Method and system in a data processing system for efficient determination of quality of service parameters
DE19507570C2 (de) * 1995-03-03 1997-08-21 Siemens Ag Verfahren und Schaltungsanordnung zum Weiterleiten von über eine ATM-Kommunikationseinrichtung übertragenen Nachrichtenzellen an eine Abnehmerleitung
WO1996027966A1 (en) * 1995-03-08 1996-09-12 Oxford Brookes University Broadband switching system
CA2216171A1 (en) * 1995-03-24 1996-10-03 Ppt Vision, Inc. High speed digital video serial link
US5586121A (en) * 1995-04-21 1996-12-17 Hybrid Networks, Inc. Asymmetric hybrid access system and method
AU6502096A (en) * 1995-07-19 1997-02-18 Ascom Nexion Inc. Minimum guaranteed cell rate method and apparatus
JPH11511303A (ja) * 1995-07-19 1999-09-28 フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド リンクバッファを共用する方法及び装置
JPH11510005A (ja) * 1995-07-19 1999-08-31 フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド セルベースド通信網における網サービスパラメータの制御方法及びシステム
US6141346A (en) 1995-07-19 2000-10-31 Fujitsu Network Communications, Inc. Point-to-multipoint transmission using subqueues
JPH11512583A (ja) 1995-09-14 1999-10-26 フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド 広域atm網内のバッファ割付用送信側制御式フロー制御
US6445708B1 (en) * 1995-10-03 2002-09-03 Ahead Communications Systems, Inc. ATM switch with VC priority buffers
US5751708A (en) * 1995-10-25 1998-05-12 Lucent Technologies Inc. Access method for broadband and narrowband networks
US6292466B1 (en) * 1995-12-13 2001-09-18 International Business Machines Corporation Connection admission control in high-speed packet switched networks
US6130878A (en) * 1995-12-27 2000-10-10 Compaq Computer Corporation Method and apparatus for rate-based scheduling using a relative error approach
US5781531A (en) * 1995-12-27 1998-07-14 Digital Equipment Corporation Method and apparatus for hierarchical relative error scheduling
US5751709A (en) * 1995-12-28 1998-05-12 Lucent Technologies Inc. Adaptive time slot scheduling apparatus and method for end-points in an ATM network
JP2000517488A (ja) 1996-01-16 2000-12-26 フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド Atm網用の信頼性と柔軟性のあるマルチキャスト機構
US5982749A (en) * 1996-03-07 1999-11-09 Lsi Logic Corporation ATM communication system interconnect/termination unit
US5920561A (en) * 1996-03-07 1999-07-06 Lsi Logic Corporation ATM communication system interconnect/termination unit
US6373846B1 (en) 1996-03-07 2002-04-16 Lsi Logic Corporation Single chip networking device with enhanced memory access co-processor
US5841772A (en) * 1996-03-07 1998-11-24 Lsi Logic Corporation ATM communication system interconnect/termination unit
US6535512B1 (en) * 1996-03-07 2003-03-18 Lsi Logic Corporation ATM communication system interconnect/termination unit
US5848068A (en) * 1996-03-07 1998-12-08 Lsi Logic Corporation ATM communication system interconnect/termination unit
EP0798897A3 (en) 1996-03-26 1999-07-14 Digital Equipment Corporation Method and apparatus for relative error scheduling using discrete rates and proportional rate scaling
FR2746992B1 (fr) * 1996-03-27 1998-09-04 Quinquis Jean Paul Reseau local d'acces a des mobiles
GB9606708D0 (en) * 1996-03-29 1996-06-05 Plessey Telecomm Bandwidth bidding
DK174882B1 (da) * 1996-04-12 2004-01-19 Tellabs Denmark As Fremgangsmåde og netværkselement til overførsel af datapakker i et teletransmissionsnetværk
US6058114A (en) * 1996-05-20 2000-05-02 Cisco Systems, Inc. Unified network cell scheduler and flow controller
US5668738A (en) * 1996-05-31 1997-09-16 Intel Corporation Dynamic idle aggregation in digital signal transmission
FR2750283B1 (fr) * 1996-06-20 1998-07-31 Quinquis Jean Paul Reseau local d'acces a des mobiles equipe de moyens pour gerer les ressources dans ledit reseau
US5748905A (en) 1996-08-30 1998-05-05 Fujitsu Network Communications, Inc. Frame classification using classification keys
JP2882384B2 (ja) * 1996-09-27 1999-04-12 日本電気株式会社 トラヒックシェーピング装置
EP0935863B1 (de) 1996-10-31 2002-05-02 Infineon Technologies AG Verfahren zur weiterleitung mit 100% leitungsauslastung von asynchron übertragenen nachrichtenzellen
US6335927B1 (en) * 1996-11-18 2002-01-01 Mci Communications Corporation System and method for providing requested quality of service in a hybrid network
WO1998025378A1 (en) 1996-12-06 1998-06-11 Fujitsu Network Communications, Inc. Method for flow controlling atm traffic
JP2964968B2 (ja) * 1996-12-06 1999-10-18 日本電気株式会社 シェーピング処理装置およびシェーピング処理方法
CH690887A5 (de) * 1996-12-13 2001-02-15 Alcatel Sa Former für einen Strom von Datenpaketen
US5850398A (en) * 1996-12-30 1998-12-15 Hyundai Electronics America Method of scheduling data cell transmission in an ATM network
US6188436B1 (en) 1997-01-31 2001-02-13 Hughes Electronics Corporation Video broadcast system with video data shifting
US6005620A (en) * 1997-01-31 1999-12-21 Hughes Electronics Corporation Statistical multiplexer for live and pre-compressed video
US6091455A (en) * 1997-01-31 2000-07-18 Hughes Electronics Corporation Statistical multiplexer for recording video
US6097435A (en) * 1997-01-31 2000-08-01 Hughes Electronics Corporation Video system with selectable bit rate reduction
US6084910A (en) * 1997-01-31 2000-07-04 Hughes Electronics Corporation Statistical multiplexer for video signals
US6078958A (en) * 1997-01-31 2000-06-20 Hughes Electronics Corporation System for allocating available bandwidth of a concentrated media output
US6026075A (en) * 1997-02-25 2000-02-15 International Business Machines Corporation Flow control mechanism
US5844890A (en) * 1997-03-25 1998-12-01 International Business Machines Corporation Communications cell scheduler and scheduling method for providing proportional use of network bandwith
US5864540A (en) * 1997-04-04 1999-01-26 At&T Corp/Csi Zeinet(A Cabletron Co.) Method for integrated traffic shaping in a packet-switched network
EP0906710B1 (en) * 1997-04-10 2004-08-18 International Business Machines Corporation Method and means for determining the used bandwidth on a connection
JP2865139B2 (ja) * 1997-04-18 1999-03-08 日本電気株式会社 Atmセルバッファ回路及びatm交換機における優先順位任意割付方法
US6041059A (en) * 1997-04-25 2000-03-21 Mmc Networks, Inc. Time-wheel ATM cell scheduling
US6014367A (en) * 1997-04-25 2000-01-11 Mmc Networks, Inc Method for weighted fair queuing for ATM cell scheduling
EP0886403B1 (en) * 1997-06-20 2005-04-27 Alcatel Method and arrangement for prioritised data transmission of packets
GB2327317B (en) 1997-07-11 2002-02-13 Ericsson Telefon Ab L M Access control and resourse reservation in a communications network
US6147998A (en) * 1997-08-26 2000-11-14 Visual Networks Technologies, Inc. Method and apparatus for performing in-service quality of service testing
US6310886B1 (en) * 1997-08-28 2001-10-30 Tivo, Inc. Method and apparatus implementing a multimedia digital network
US6198724B1 (en) 1997-10-02 2001-03-06 Vertex Networks, Inc. ATM cell scheduling method and apparatus
US5999963A (en) * 1997-11-07 1999-12-07 Lucent Technologies, Inc. Move-to-rear list scheduling
US6256308B1 (en) * 1998-01-20 2001-07-03 Telefonaktiebolaget Lm Ericsson Multi-service circuit for telecommunications
US6181684B1 (en) * 1998-02-02 2001-01-30 Motorola, Inc. Air interface statistical multiplexing in communication systems
US6438102B1 (en) 1998-06-03 2002-08-20 Cisco Technology, Inc. Method and apparatus for providing asynchronous memory functions for bi-directional traffic in a switch platform
US6463485B1 (en) 1998-06-03 2002-10-08 Cisco Technology, Inc. System for providing cell bus management in a switch platform including a write port cell count in each of a plurality of unidirectional FIFO for indicating which FIFO be able to accept more cell
US6483850B1 (en) 1998-06-03 2002-11-19 Cisco Technology, Inc. Method and apparatus for routing cells having different formats among service modules of a switch platform
US6967961B1 (en) * 1998-06-03 2005-11-22 Cisco Technology, Inc. Method and apparatus for providing programmable memory functions for bi-directional traffic in a switch platform
US6041048A (en) * 1998-06-12 2000-03-21 Motorola, Inc. Method for providing information packets from a packet switching network to a base site and corresponding communication system
US6446122B1 (en) * 1998-06-24 2002-09-03 Cisco Technology, Inc. Method and apparatus for communicating quality of service information among computer communication devices
US6298071B1 (en) * 1998-09-03 2001-10-02 Diva Systems Corporation Method and apparatus for processing variable bit rate information in an information distribution system
US6498782B1 (en) 1999-02-03 2002-12-24 International Business Machines Corporation Communications methods and gigabit ethernet communications adapter providing quality of service and receiver connection speed differentiation
US6765911B1 (en) 1999-02-03 2004-07-20 International Business Machines Corporation Communications adapter for implementing communications in a network and providing multiple modes of communications
US6477168B1 (en) * 1999-02-03 2002-11-05 International Business Machines Corporation Cell/frame scheduling method and communications cell/frame scheduler
JP2001127762A (ja) * 1999-10-25 2001-05-11 Matsushita Electric Ind Co Ltd 通信制御方法および装置
US6820128B1 (en) * 1999-11-04 2004-11-16 Nortel Networks Limited Method and apparatus of processing packets having varying priorities by adjusting their drop functions according to a predefined fairness relationship
US6625122B1 (en) 1999-11-24 2003-09-23 Applied Micro Circuits Corporation Selection of data for network transmission
US7315901B1 (en) * 2000-04-13 2008-01-01 International Business Machines Corporation Method and system for network processor scheduling outputs using disconnect/reconnect flow queues
US7142558B1 (en) * 2000-04-17 2006-11-28 Cisco Technology, Inc. Dynamic queuing control for variable throughput communication channels
AU2001271633A1 (en) * 2000-06-29 2002-01-14 Object Reservoir, Inc. System and method for defining and displaying a reservoir model
US6658512B1 (en) * 2000-09-28 2003-12-02 Intel Corporation Admission control method for data communications over peripheral buses
GB2375927B (en) * 2001-05-26 2004-09-29 Cambridge Broadband Ltd Method and apparatus for communications bandwidth allocation
WO2002103952A2 (en) * 2001-06-14 2002-12-27 Cariden Technologies Incorporated Methods and systems to generate and implement a changeover sequence to reconfigure a connection-oriented network
KR100429795B1 (ko) * 2001-07-21 2004-05-04 삼성전자주식회사 시리얼 버스의 대역폭 관리 방법 및 장치
US7280476B2 (en) * 2002-06-04 2007-10-09 Lucent Technologies Inc. Traffic control at a network node
US7949871B2 (en) * 2002-10-25 2011-05-24 Randle William M Method for creating virtual service connections to provide a secure network
US7477603B1 (en) * 2003-07-08 2009-01-13 Cisco Technology, Inc. Sharing line bandwidth among virtual circuits in an ATM device
US7443857B1 (en) * 2003-07-09 2008-10-28 Cisco Technology Inc. Connection routing based on link utilization
ES2245590B1 (es) * 2004-03-31 2007-03-16 Sgc Telecom - Sgps, S.A. Sistema de comunicaciones por radiofrecuencia con utilizacion de dos bandas de frecuencia.
US7539176B1 (en) * 2004-04-02 2009-05-26 Cisco Technology Inc. System and method for providing link, node and PG policy based routing in PNNI based ATM networks
US20090067419A1 (en) * 2005-03-04 2009-03-12 Hewlett-Packard Development Company, L.P. Transmission control apparatus and method
CN100452892C (zh) * 2005-07-11 2009-01-14 华为技术有限公司 对会话进行放音的方法
US20080165685A1 (en) * 2007-01-09 2008-07-10 Walter Weiss Methods, systems, and computer program products for managing network bandwidth capacity
US10135917B2 (en) 2017-04-20 2018-11-20 At&T Intellectual Property I, L.P. Systems and methods for allocating customers to network elements
CN109582719B (zh) * 2018-10-19 2021-08-24 国电南瑞科技股份有限公司 一种智能变电站scd文件自动链接虚端子的方法和系统
JP2021170289A (ja) * 2020-04-17 2021-10-28 富士通株式会社 情報処理システム、情報処理装置およびプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2880271B2 (ja) * 1990-08-17 1999-04-05 株式会社日立製作所 帯域制御方法および回路
FR2660818B1 (fr) * 1990-04-06 1992-06-19 France Telecom Relais-commutateur de trames pour reseau numerique asynchrone.
GB9019340D0 (en) * 1990-09-05 1990-10-17 Plessey Telecomm An asynchronous transfer mode switching arrangement providing broadcast transmission
DK0483397T3 (da) * 1990-10-29 1996-04-09 Siemens Ag Fremgangsmåde til overvågning af en bitrate fra mindst en virtuel forbindelse
US5278828A (en) * 1992-06-04 1994-01-11 Bell Communications Research, Inc. Method and system for managing queued cells
US5313579A (en) * 1992-06-04 1994-05-17 Bell Communications Research, Inc. B-ISDN sequencer chip device
US5390184A (en) * 1993-09-30 1995-02-14 Northern Telecom Limited Flexible scheduling mechanism for ATM switches

Also Published As

Publication number Publication date
EP0754383A1 (en) 1997-01-22
US5533009A (en) 1996-07-02
CA2186449A1 (en) 1996-08-08
EP0754383A4 (en) 2000-09-27
MY112027A (en) 2001-03-31
CA2186449C (en) 2000-06-20
JP3088464B2 (ja) 2000-09-18
JPH09505720A (ja) 1997-06-03
TW344920B (en) 1998-11-11
WO1996024212A1 (en) 1996-08-08
KR970702642A (ko) 1997-05-13
EP0754383B1 (en) 2011-05-25

Similar Documents

Publication Publication Date Title
KR100222743B1 (ko) 비동기식 전송모드 네트워크에 대한 대역폭 관리시스템 및 방법
US4769810A (en) Packet switching system arranged for congestion control through bandwidth management
US6765873B1 (en) Connections bandwidth right sizing based on network resources occupancy monitoring
US5408465A (en) Flexible scheme for admission control of multimedia streams on integrated networks
US4769811A (en) Packet switching system arranged for congestion control
US5831971A (en) Method for leaky bucket traffic shaping using fair queueing collision arbitration
KR100431191B1 (ko) 크레딧 기반 라운드 로빈을 이용한 패킷 스케쥴링장치 및방법
US6396843B1 (en) Method and apparatus for guaranteeing data transfer rates and delays in data packet networks using logarithmic calendar queues
JP3338000B2 (ja) Atmスイッチングノードにおける実時間トラフィック監視及び制御方法
Hsu et al. Dynamic bandwidth allocation for ATM switches
US6504824B1 (en) Apparatus and method for managing rate band
US6560195B1 (en) Method and apparatus for leaky bucket based out-bound shaping in an ATM scheduler
Vickers et al. Congestion control and resource management in diverse ATM environments
US6956849B1 (en) Bandwidth management and connection admission control in a network
Hansson et al. Guaranteeing real-time traffic through an ATM network
Ho et al. Cooperating leaky bucket for average rate enforcement of VBR video traffic in ATM networks
Drury ATM traffic management and the impact of ATM switch design
Katevenis et al. Multi-queue management and scheduling for improved QoS in communication networks
US6735214B1 (en) Method and system for a hierarchical traffic shaper
Song et al. A new queue discipline for various delay and jitter requirements in real-time packet-switched networks
Razouqi et al. Performance analysis of fuzzy thresholding-based buffer management for a large-scale cell-switching network
JPH06104917A (ja) 輻輳制御方法および呼受付制御方法
Valeroso et al. Adaptive resource scheduling strategies and performance analysis of broadband networks
KR960003782B1 (ko) 광대역 종합 정보 통신망 가입자 액세스장치의 서비스 품질 등급에 따른 스케듈링 제어장치 및 방법
Mateescu On Allocation Schemes for the Interconnection of LANs and Multimedia Sources over Broadband Networks

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee