KR100197431B1 - Multi protocol realization method of atm virtual channel switch - Google Patents

Multi protocol realization method of atm virtual channel switch Download PDF

Info

Publication number
KR100197431B1
KR100197431B1 KR1019960027022A KR19960027022A KR100197431B1 KR 100197431 B1 KR100197431 B1 KR 100197431B1 KR 1019960027022 A KR1019960027022 A KR 1019960027022A KR 19960027022 A KR19960027022 A KR 19960027022A KR 100197431 B1 KR100197431 B1 KR 100197431B1
Authority
KR
South Korea
Prior art keywords
ipc
message
protocol
packet
virtual channel
Prior art date
Application number
KR1019960027022A
Other languages
Korean (ko)
Other versions
KR980013083A (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 KR1019960027022A priority Critical patent/KR100197431B1/en
Publication of KR980013083A publication Critical patent/KR980013083A/en
Application granted granted Critical
Publication of KR100197431B1 publication Critical patent/KR100197431B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks

Landscapes

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

Abstract

본 발명은 ATM 가상 채널 교환기에 있어서 메인 프로세서(Main Processor; MP)(OMP, CCCP) 간의 IPC 기능을 담당하는 APCA 보드를 이용해서 기존의 상위 레벨 운영 체제(CROS)와 혼환성을 유지하면서 3가지 형태의 메시지 송신/수신 기능을 펌웨어(Firmware)로 구현하도록 하기에 적합한 ATM 가상 채널 교환기의 다중 프로토콜 구현 방법에 관한 것으로, 본 발명에서는 기존의 운영 체제와의 호환성을 최대한 고려하기 위해 운영 체제의 수정없이 ATM 정합 IPC 보드의 펌웨어만을 수정하여 IPC와 ATM 시그널링 메시지 처리가 가능하도록 한 것이다.In the ATM virtual channel exchanger, the present invention uses three APCA boards for IPC functions between main processors (MPs) (OMP and CCCP) while maintaining compatibility with the existing high-level operating system (CROS). The present invention relates to a multi-protocol implementation method of an ATM virtual channel switch suitable for implementing a message transmission / reception function in firmware. In the present invention, an operating system is modified to fully consider compatibility with an existing operating system. Without this, only the firmware of ATM matching IPC board is modified to enable IPC and ATM signaling message processing.

Description

에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법Multiprotocol Implementation Method of ATM Virtual Channel Switch

제1도는 본 발명 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법에 따른 상위 운영 체제와 APCA 펌웨어 간에 주고받는 메시지 구조의 일 실시예를 나타낸 도면.1 is a diagram illustrating an embodiment of a message structure between an upper operating system and an APCA firmware according to a multi-protocol implementation method of an ATM virtual channel exchange of the present invention.

제2도는 제1도에 따른 시그널링 메시지 형태의 일 실시예를 나타낸 도면.2 shows an embodiment of the form of a signaling message according to FIG.

제3도는 본 발명 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법에 따른 시그널링 메시지 형태의 다른 실시예를 나타낸 도면.3 illustrates another embodiment of a signaling message according to a multi-protocol implementation method of an ATM virtual channel exchange of the present invention.

제4도는 본 발명 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법에 따른 구체적인 구분/전송 알고리즘의 일 실시예를 단계별로 나타낸 순서도.Figure 4 is a flow chart showing step by step an embodiment of a specific classification / transmission algorithm according to the multi-protocol implementation method of the ATM virtual channel exchange of the present invention.

제5도는 제4도에 따른 시그널링 메시지 처리 루틴의 일 실시예를 단계별로 나타낸 순서도.5 is a flowchart showing step by step an embodiment of a signaling message processing routine according to FIG.

제6도는 본 발명 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법에 따른 에이티엠 SAR 계층의 타입-5 CPCS-PDU를 나타낸 도면.6 is a diagram illustrating a type-5 CPCS-PDU of an ATM SAR layer according to a method for implementing multiple protocols of an ATM virtual channel exchange of the present invention.

제7도는 본 발명 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법에 따른 인터럽트 서비스 루틴을 통해 수신된 패킷을 처리하는 과정의 일 실시예를 단계별로 나타낸 순서도.FIG. 7 is a flowchart illustrating a step-by-step embodiment of a process of processing a packet received through an interrupt service routine according to a method of implementing a multi-protocol of an ATM virtual channel exchange.

본 발명은 에이티엠(Asynchronous Transfer Mode: 이하, ATM이라 칭함) 가상 채널(Virture Channel; VC) 교환기의 다중 프로토콜(Multi-protocol) 구현 방법에 관한 것으로서, 특히, ATM 가상 채널 교환기에 있어서 메인 프로세서(Main Processor; MP)(OMP, CCCP) 간의 IPC 기능을 담당하는 APCA 보드를 이용해서 기존의 상위 레벨 운영 체제(CROS)와 혼환성을 유지하면서 3가지 형태의 메시지 송신/수신 기능을 펌웨어(Firmware)로 구현하도록 하기에 적합한 ATM 가상 채널 교환기의 다중 프로토콜 구현 방법에 관한 것이다.The present invention relates to a method for implementing a multi-protocol of an Asynchronous Transfer Channel (VC) virtual channel (VC) switch, and more particularly, in a ATM virtual channel switch, The APCA board, which handles the IPC function between the main processor (MP) (OMP, CCCP), supports three types of message sending / receiving functions while maintaining compatibility with the existing high-level operating system (CROS). The present invention relates to a multi-protocol implementation method of an ATM virtual channel switch suitable for implementation.

이와 관련하여, 종래의 기술에 따른 전전자 교환기는 메인 프로세서 간 통신을 위하여 단일 형태의 IPC 메시지 만을 사용하였고, 매체는 HDLC(High Level Data Link Control) 형태의 시리얼 라인(Serial Line)을 사용하였으며, 통신 대상이 되는 모든 메인 프로세서들과 동일한 프로토콜 즉, 셀렉티브 리피트(Selective Repeat) 방식의 슬라이딩 윈도우(Sliding Window)를 통하여 유실된 메시지를 복구한다.In this regard, the electronic switch according to the prior art used only a single type of IPC message for communication between main processors, and the medium used a serial line in the form of a high level data link control (HDLC). The lost protocol is recovered through a sliding window of the same protocol as that of all main processors to be communicated, that is, a selective repeat method.

이에, 본 발명에서는 ATM 가상 채널 교환기의 메인 프로세서는 메인 프로세서 가 및 가입자 정합 장치(SIMC)와의 IPC 통신을 해야 하며, 아울러 기존 전전자 교환기에 적용되어 사용되던 IPC 형태와는 다른 ATM 시그널링 메시지(Signalling Message)도 함께 핸드링(Handling)해야 한다.Accordingly, in the present invention, the main processor of the ATM virtual channel exchanger must perform IPC communication with the main processor and the subscriber matching device (SIMC), and ATM signaling messages different from the IPC type used in the existing electronic switching system. Message) should also be handled together.

따라서, 본 발명의 목적은 기존의 운영 체제와의 호환성을 최대한 고려하기 위해 운영 체제의 수정없이 ATM 정합 IPC 보드의 펌웨어만을 수정하여 IPC와 ATM 시그널링 메시지 처리가 가능하도록 할 수 있는 ATM 가상 채널 교환기의 다중 프로토콜 구현 방법을 제공하는 데 있다.Accordingly, an object of the present invention is to provide an ATM virtual channel exchanger capable of processing IPC and ATM signaling messages by modifying only firmware of an ATM matched IPC board without modification of an operating system in order to fully consider compatibility with an existing operating system. The present invention provides a method for implementing multiple protocols.

이하, 이와 같은 목적을 달성하기 위한 본 발명의 실시예를 첨부된 도면 제1도 내지 제7도에 의하여 상세히 설명하면 다음과 같다.Hereinafter, embodiments of the present invention for achieving the above object will be described in detail with reference to FIGS. 1 to 7.

먼저, ATM 가상 채널 교환기의 메인 프로세서들 간에는 기존에 사용되던 실렉티브 리피트 방식의 슬라이딩 윈도우 프로토콜이 적용되어 에러 복구 기능이 적용된 IPC 형태의 메시지 교환이 이루어지며, 메인 프로세서와 가입자 정합 장치(SIMC) 간에는 프로토콜이 적용되지 않은 IPC 형태로 메시지 교환이 이루어져야 한다.First of all, the main repeater of the ATM virtual channel exchanger is an IPC-type message exchange with error recovery by applying the sliding window protocol of the selective repeat method, which is used previously, and between the main processor and the subscriber matching device (SIMC). Message exchange should take place in the form of IPC with no protocol applied.

또한, IPC와 별개로 ATM 시그널링 메시지에 대한 처리도 함께 이루어져야 한다.In addition, processing of ATM signaling messages must be performed separately from IPC.

이와 같은 3가지 형태의 메시지는 상위 운영 체제에서는 구분할 필요가 없으며, 단지 기존에 사용하던 것과 동일한 IPC로만 처리하면 된다.These three types of messages do not need to be distinguished by higher operating systems, they only need to be processed with the same IPC that was used.

제1도를 참조하면, 제1도는 본 발명 ATM 가상 채널 교환기의 다중 프로토콜 구현 방법에 따른 상위 운영 체제와 APCA 펌웨어간에 주고받는 메시지 구조의 일 실시예를 나타낸 도면으로서 기존 전전자 교환기에서 사용되던 형태와 동일하며, 단지 실제 메시지 부분의 최대 길이가 496바이트로 커진 차이점이 있다.Referring to FIG. 1, FIG. 1 is a diagram illustrating an embodiment of a message structure exchanged between an upper operating system and an APCA firmware according to a multi-protocol implementation method of an ATM virtual channel exchange according to the present invention. The only difference is that the maximum length of the actual message part is increased to 496 bytes.

다음, APCA는 이와 같은 동일 형태의 메시지를 상위 운영 체제로부터 받아 시그널 ID와 데스티네이션 어드레스(Destination Address)에 따라 3가지 메시지 형태로 구분하여 처리한다.Next, the APCA receives the same type of message from the upper operating system and processes the same message into three message types according to the signal ID and the destination address.

먼저, 시그널링 메시지는 특정 시그널 ID 만을 사용하는 초기 시그널(Initial Signal)이므로 상위 운영 체제로부터 전달받은 메시지의 시그널 ID를 비교해서 제2도와 같은 시그널링 메시지 형태로 구분해야 한다.First, since the signaling message is an initial signal using only a specific signal ID, the signal ID of the message received from the upper operating system should be compared and classified into a signaling message type as shown in FIG.

구체적인 구분/전송 알고리즘(Algorithm)은 제4도와 같다.A detailed division / transmission algorithm is shown in FIG.

먼저, 현재 처리해야 할 DPRAM의 송신 버퍼 포인터(Tx Buffer Pointer)를 이용해서 전송되어질 메시지를 내부 버퍼에 읽고(400) 이와 같은 메시지가 IPC용 메시지인지 시그널링 메시지인지를 구별해서(401) 시그널링 메시지의 경우 제5도와 같은 시그널링 메시지 처리 루틴으로 간다(402).First, by using the Tx Buffer Pointer of DPRAM to be processed currently, the message to be transmitted is read into the internal buffer (400), and whether such a message is an IPC or signaling message (401). Case goes to the signaling message processing routine as shown in FIG.

즉, SARA-S 제어 메모리(Control Memory)의 프리 큐(Free Queue)(사용가능한 디스크립터(Descriptor)의 넘버(Number)가 저장되는 큐)로부터 한 개의 디스크립터 넘버를 획득한다(500).That is, one descriptor number is obtained from the free queue of the SARA-S control memory (the queue in which the number of available descriptors is stored) (500).

여기서, 시그널링 메시지와 IPC 메시지를 처리하는데 있어서 가장 큰 차이점은 IPC 메시지인 경우, 가상 경로 식별자(VPI)/가상 채널 식별자(VCI)에 대한 정보를 IPC 헤더(Header)의 데스티네이션 어드레스와 소스 어드레스(Source Address)로부터 계산해내는 반면, 시그널링 메시지는 제3도와 같은 형태로 상위 어플리케이션(Application) 소프트웨어에 의해 직접 실제 메시지(Real Message) 내에 넣어져 전달되어지므로 IPC와 같이 가상 경로 식별자/가상 채널 식별자를 별도로 계산할 필요가 없이 상위에서 내려준 값을 이용하면 된다.Here, the biggest difference in processing the signaling message and the IPC message is that in case of the IPC message, information about the virtual path identifier (VPI) / virtual channel identifier (VCI) is transmitted to the destination address and source address (IPC header) of the IPC header. While the signaling message is calculated from the source address, the signaling message is delivered in the real message directly by the upper application software in the form of FIG. 3, so that the virtual path identifier / virtual channel identifier is separately added as in IPC. You don't need to calculate it, just use the value from the top.

따라서 실제 메시지 부분에서 얻어진 가상 경로 식별자/가상 채널 식별자 값을 디스크립터 넘버로부터 구해진 디스크립터에 써넣고(501,502), IPC 메시지와 달리 헤더 부분은 필요하지 않으므로 IPC 헤더 부분을 제외한 실제 메시지 부분을 제6도 I)와 같은 AAL-5 계층 형태의 메시지 포맷(Format)을 만들어 SARA-S의 패킷 메모리(Packet Memory)에 써넣는다.Therefore, the virtual path identifier / virtual channel identifier value obtained from the actual message portion is written into the descriptor obtained from the descriptor number (501,502). Unlike the IPC message, the header portion is not required, so the actual message portion except for the IPC header portion is shown in FIG. AAL-5 layer type message format is created and written in the packet memory of SARA-S.

이때, 실제 메시지의 길이와 CPCS-트레일러(Trailer)의 길이를 더해 48바이트(ATM 셀에서 헤더를 제외한 길이)의 배수가 되면 패킷의 길이는 메시지 길이 + CPCS_트레일러 길이이며, 만약 배수가 아니면(int(메시지 길이/48)*48) 식에 따라 패킷의 길이를 구하고 제6도 II)의 CPCS 트레일러 길이 부분에 계산된 값을 써넣는다(503,504).At this time, if the actual message length and the CPCS-trailer length are added up to a multiple of 48 bytes (the length of the header except the header of the ATM cell), the length of the packet is the message length + CPCS_trailer length. The length of the packet is obtained according to the equation int (message length / 48) * 48) and the calculated value is written in the CPCS trailer length portion of FIG. 6) (503, 504).

다음, SARA-S의 레디 큐(Ready Queue)에 디스크립터 넘버를 써넣음으로써 패킷은 셀 형태로 분할(Segmentation)되어 수신측 메인 프로세서로 전송되면 분할에 사용된 디스크립터 넘버는 트랜스미트 컴플리트 큐(Transmit Complete Queue)를 통해 리턴되어 다음 패킷의 전송에 사용되어질 수 있다(505).Next, by writing the descriptor number to the ready queue of SARA-S, the packet is segmented into a cell form and transmitted to the receiving main processor. The descriptor number used for the segmentation is the transmit complete queue. Queue may be returned to be used for the transmission of the next packet (505).

반면, 제4도와 같이 시그널 ID가 시그널링 메시지용이 아니면 데스티네이션 어드레스를 비교해서(403) 메인 프로세서의 어드레스이면 슬라이딩 프로토콜을 적용하기 위해 단계(404)로 가고, SIMC의 어드레스이면 단계(409)로 간다.On the other hand, as shown in FIG. 4, if the signal ID is not for the signaling message, the destination address is compared (403), and if the address of the main processor, the process goes to step 404 to apply the sliding protocol, and if the address of the SIMC goes to step 409. .

즉, 해당 메인 프로세서의 프로토콜 제어 블록(Window)를 찾아 통신 가능 상태를 검사해서 해당 메인 프로세서의 상태가 통신 불가(DEAD) 상태이면 해당 IPC는 버리고 다음 IPC를 처리한다(404, 405).That is, the protocol control block (Window) of the main processor is found to check the communication possible state, and if the state of the main processor is in the DEAD state, the corresponding IPC is discarded and the next IPC is processed (404, 405).

이에 반해, 통신 가능 상태(READY, WAIT, IDLE)이면 내부에 링크 리스트(Linked List) 구조로 되어 있는 프리 큐로부터 제2도와 같은 구조를 갖는 큐 노드(Queue Node)를 획득해서(Get_node), 프로토콜을 위한 오버헤드(Overhead)가 제외된 IPC 헤더 부분과 실제 메시지 부분을 큐 노드에 복사한다(406).On the other hand, in the communication enabled states (READY, WAIT, IDLE), a queue node having a structure similar to that of FIG. 2 is obtained from a free queue having a linked list structure (Get_node). Copy the IPC header portion and the actual message portion without the overhead for the queue to the queue node (406).

이와 같은 노드는 해당 메인 프로세서의 윈도우에 링크되어 슬라이딩 프로토콜 절차에 따라 슬라이드에 넣어져 차례로 전송이 일어나며, 유실된 메시지에 대해서는 재전송 요구 방법에 의해 복구 과정으로 들어간다(407,408).Such a node is linked to a window of the corresponding main processor, put into a slide according to a sliding protocol procedure, and then sequentially transmitted, and a lost message is entered into a recovery process by a retransmission request method (407 and 408).

이때, 슬라이딩 윈도우 프로토콜은 다소 복잡한 내용이나, 널리 알려진 일반적인 개념이므로 상세한 설명은 생략하기로 한다.In this case, the sliding window protocol is a rather complicated content, but since it is a well-known general concept, detailed description thereof will be omitted.

그리고 프로토콜 절차를 거친 IPC는 데스티네이션 어드레스로부터 가상 경로 식별자를 계산하고, 소스 어드레스로부터 가상 채널 식별자를 계산해서 시그널링 메시지 처리시와 동일하게 획득된 디스크립터에 써넣고, 실제 패킷 데이터인 제6도 I)와 같은 프로토콜이 적용된 IPC 형태의 AAL-5 계층 메시지 형태로 패킷 메모리에 넣어져 전송되어진다(409, 410, 411, 412).The IPC, which has undergone the protocol procedure, calculates the virtual path identifier from the destination address, calculates the virtual channel identifier from the source address, and writes it in the descriptor obtained in the same manner as in processing the signaling message. The protocol is applied to the packet memory in the form of an AAL-5 layer message in the form of IPC to which it is applied (409, 410, 411, 412).

만약, 단계(403)에서 데스티네이션 어드레스가 SIMC이면 슬라이딩 윈도우 프로토콜 처리 단계(408)가 생략되며, 단계(409 내지 412)를 거쳐 프로토콜 오버헤드 6 바이트가 제외된 제6도 III)와 같은 프로토콜이 적용되지 않은 IPC 형태로 전송된다.If the destination address is SIMC in step 403, the sliding window protocol processing step 408 is omitted, and steps 409 to 412 result in a protocol such as FIG. Sent in IPC format not applied.

이와 같은 방법으로 전송된 패킷들은 ATM 셀 형태로 ATM 스위치를 거쳐 데스티네이션 프로세서에 도달되고, 수신측의 SARA-R 칩에 의해 분할되었던 ATM 셀들을 모아 원래의 패킷 형태로 재구성하게 된다.Packets transmitted in this way are reached through the ATM switch in the form of ATM cells to the destination processor, and the ATM cells that have been divided by the SARA-R chip on the receiving side are collected and reconstructed into the original packet form.

이와 같이 재구성하게 되는 것을 리어셈블리(Reassembly)라 한다.This reconstruction is called reassembly.

리어셈블리가 완료된 패킷은 SARA-R의 패킷 메모리에 쌓이고, 이에 대한 정보는 제어 메모리의 디스크립터에 기록되어 패킷을 처리할 수 있는 정보를 상위 펌웨어에게 제공한다.The reassembled packet is accumulated in the packet memory of the SARA-R, and the information is recorded in the descriptor of the control memory to provide the upper firmware with information for processing the packet.

패킷의 정보가 기록되어 있는 디스크립터를 참조하기 위해서는 SARA-R에 의해 패킷 컴플리트 큐에 써넣어진 디스크립터 넘버를 읽어내야하며, 이를 위해 SARA-R은 디스크립터 넘버를 PCQ에 써넣음과 동시에 인터럽트(Interrupt)로서 펌웨어가 인지할 수 있도록 하고 있다.In order to refer to the descriptor in which the packet information is recorded, the descriptor number written to the packet complete queue by SARA-R must be read. For this purpose, SARA-R writes the descriptor number to PCQ and interrupts it. As such, the firmware can be recognized.

인터럽트 서비스 루틴(Interrupt Service Routine)을 통해 수신된 패킷을 처리하는 과정은 제7와 같다.Processing of the packet received through the interrupt service routine is the same as the seventh.

먼저, SARA-R로부터의 인터럽트를 감지하면(700) PCQ로부터 디스크립터 넘버를 읽어내어 값을 비교해서 0이면 에러(Error)이므로 더 이상 처리하지 않고 바로 복귀한다(701, 717).First, when an interrupt from SARA-R is detected (700), the descriptor number is read from the PCQ, the values are compared, and if it is 0, an error (Error) is returned. Therefore, the processor immediately returns without processing any more (701, 717).

위의 단계(701)에서 PCQ로부터 디스크립터 넘버를 읽어내어 값을 비교해서 0이 아니면 디스크립터 넘버를 사용해서 디스크립터를 찾고, 디스크립터에서 가상 채널 식별자 값을 읽어 IPC와 시그널링 메시지를 구분한다(702, 703).In step 701, the descriptor number is read from the PCQ, the value is compared, and if it is not 0, the descriptor is found using the descriptor number, and the virtual channel identifier value is read from the descriptor to distinguish between the IPC and the signaling message (702, 703). .

이를 위해 IPC와 시그널링 메시지가 사용해야 할 가상 채널 식별자의 범위를 미리 정해야 하며, 이와 같은 규칙에 따라 전송하는 측에서 가상 채널 식별자 값을 할당해야 한다.To this end, a range of virtual channel identifiers to be used by the IPC and signaling message must be defined in advance, and a virtual channel identifier value must be allocated at the transmitting side according to such a rule.

위의 단계(703)에서 시그널링 메시지의 가상 채널 식별자 값이면 디스크립터로부터 DMA 완료 번지를 참조해서 패킷의 끝에서부터 CPCS 트레일러의 오프셋(Offset) 값을 빼줌으로써 패킷의 길이를 읽어낸다(709, 710).If the virtual channel identifier value of the signaling message in step 703 above, the length of the packet is read (709, 710) by subtracting the offset value of the CPCS trailer from the end of the packet by referring to the DMA completion address from the descriptor.

이때, 시그널링 메시지를 상위 운영 체제에 전달해 주기 위해서는 전송때와 반대로 시그널링 메시지를 IPC 형태의 메시지로 변환하는 과정이 필요하다.In this case, in order to deliver the signaling message to the upper operating system, a process of converting the signaling message into an IPC type message is required as opposed to the transmission.

따라서 제2도와 같은 형태의 버퍼를 얻어서(711) 패킷의 시작 어드레스(Start Address)부터 패킷 길이 만큼의 데이터를 읽어 버퍼의 실제 메시지 영역에 복사하고(712) 이전에 디스크립터로부터 읽어낸 가상 채널 식별자 값과 가상 경로 식별자 값, 패킷 길이를 버퍼의 해당 엘러먼트(Element)에 써넣고(713) IPC 헤더 부분에서 데스티네이션 어드레스와 소스 어드레스는 자신의 ID를, 그리고 메시지 길이는 패킷 길이 + 8(가상 경로 식별자, 가상 채널 식별자, 루팅 태그(Routing Tag), 실제 길이(Real Length))을, 시그널 ID는 미리 지정된 초기 시그널 값을 써넣음으로써 완전한 IPC 형태를 구성하여 DPRAM 영역을 통해 상위 운영 체제에 전달한다(714, 715).Therefore, a buffer of the form shown in FIG. 2 is obtained (711), the data of the packet length starting from the start address of the packet is read and copied into the actual message area of the buffer (712), and the virtual channel identifier value previously read from the descriptor. And the virtual path identifier value and the packet length into the corresponding element of the buffer (713). In the IPC header, the destination address and source address are their IDs, and the message length is the packet length + 8 (virtual path). Identifier, Virtual Channel Identifier, Routing Tag, and Real Length), and the Signal ID forms a complete IPC form by writing a predetermined initial signal value to the upper operating system through the DPRAM area. (714, 715).

위의 단계(703)에서 가상 채널 식별자가 IPC용이면 패킷의 시작 어드레스로부터 IPC 헤더 부분을 바로 읽을 수 있다(704).If the virtual channel identifier is for IPC in step 703 above, the IPC header portion can be read directly from the start address of the packet (704).

따라서 수신된 IPC의 소스 어드레스가 메인 프로세서의 어드레스이면 슬라이딩 윈도우 프로토콜 처리 과정을 통해 에러 검출(Error Detection) 및 복구(Recovery)를 수행하고, 제3도와 같이 프로토콜 오버헤드(IPC 타입, 시퀀스 넘버, 피지백(Piggyback))가 제외된 제1도와 같은 형태로 상위 운영 체제에 전달한다(705, 707, 708).Therefore, if the source address of the received IPC is the address of the main processor, error detection and recovery are performed through a sliding window protocol process, and protocol overhead (IPC type, sequence number, and Fiji as shown in FIG. 3). Piggyback) is transmitted to the upper operating system in the form of FIG. 1 with the exclusion (steps 705, 707, and 708).

이때, 위의 단계(705)에서 수신 패킷이 SIMC로부터 수신된 것이면 프로토콜 처리 과정을 거치지 않고 바로 상위 운영 체제에 전달한다(706).In this case, if the received packet is received from the SIMC in step 705, the packet is delivered directly to the upper operating system without undergoing a protocol process (706).

이상에서 설명한 바와 같이 본 발명은 기존의 운영 체제와의 호환성을 최대한 고려하기 위해 운영 체제의 수정없이 ATM 정합 IPC 보드의 펌웨어만을 수정하여 IPC와 ATM 시그널링 메시지 처리가 가능하도록 할 수 있는 것이다.As described above, the present invention may allow IPC and ATM signaling message processing by modifying only the firmware of the ATM matching IPC board without modifying the operating system in order to fully consider compatibility with the existing operating system.

Claims (3)

현재 처리해야 할 DPRAM의 송신 버퍼 포인터를 이용해서 전송되어질 메시지를 내부 버퍼에 읽고 이와 같은 메시지가 IPC용 메시지인지 시그널링 메시지인지를 구별해서 시그널링 메시지의 경우 시그널링 메시지 처리 루틴을 수행하는 단계(400, 401, 402)와; 시그널 ID가 시그널링 메시지용이 아니면 데스티네이션 어드레스를 비교하는 단계(403)와; 상기 단계(403)에서 메인 프로세서의 어드레스이면 해당 메인 프로세서의 프로토콜 제어 블록을 찾아 통신 가능 상태를 검사해서 해당 메인 프로세서의 상태가 통신 불가 상태이면 해당 IPC는 버리고 다음 IPC를 처리하는 단계(404, 405)와; 상기 단계(405)에서 통신 가능 상태이면 내부에 링크 리스트 구조로 되어 있는 프리 큐로부터 큐 노드를 획득해서, 프로토콜을 위한 오버헤드가 제외된 IPC 헤더 부분과 실제 메시지 부분을 큐 노드에 복사하는 단계(406)와; 상기 단계(406)에 의한 노드는 해당 메인 프로세서의 윈도우에 링크되어 슬라이딩 프로토콜 절차에 따라 슬라이드에 넣어져 차례로 전송이 일어나며, 유실된 메시지에 대해서는 재전송 요구 방법에 의해 복구 과정으로 들어가는 단계(407,408)와; 그리고 프로토콜 절차를 거친 IPC는 데스티네이션 어드레스로부터 가상 경로 식별자를 계산하고, 소스 어드레스로부터 가상 채널 식별자를 계산해서 시그널링 메시지 처리시와 동일하게 획득된 디스크립터에 써넣고, 실제 패킷 데이터인 프로토콜이 적용된 IPC 형태의 AAL-5 계층 메시지 형태로 패킷 메모리에 넣어져 전송되어지는 단계(409, 410, 411, 412)와; 상기 단계(403)에서 데스티네이션 어드레스가 SIMC이면 상기 슬라이딩 윈도우 프로토콜 처리 단계(408)가 생략되며, 상기 단계(409 내지 412)를 거쳐 프로토콜 오버헤드 6 바이트가 제외된 프로토콜이 적용되지 않은 IPC 형태로 전송되는 단계를 포함하여 이루어지는 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법.Reading the message to be transmitted to the internal buffer by using the transmission buffer pointer of the DPRAM to be processed currently, and distinguishing whether such a message is an IPC or signaling message and performing a signaling message processing routine in the case of a signaling message (400, 401). , 402); Comparing the destination address if the signal ID is not for a signaling message (403); In step 403, if the address of the main processor is found, the protocol control block of the main processor is searched for and the communication status is checked. )Wow; Obtaining a queue node from a free queue having a link list structure therein when the communication is possible in step 405, and copying the IPC header portion and the actual message portion without the overhead for the protocol to the queue node ( 406); In step 406, the node is linked to a window of the corresponding main processor, put into a slide according to a sliding protocol procedure, and transmission is sequentially performed. The lost messages are entered into a recovery process by a retransmission request method (407 and 408); ; The IPC, which has undergone the protocol procedure, calculates the virtual path identifier from the destination address, calculates the virtual channel identifier from the source address, writes it in the descriptor obtained in the same manner as processing the signaling message, and applies the protocol, which is the actual packet data, to the IPC type. Steps 409, 410, 411, and 412 that are inserted into the packet memory in the form of an AAL-5 layer message of the message; If the destination address is SIMC in step 403, the sliding window protocol processing step 408 is omitted, and in steps 409 to 412, the protocol that excludes 6 bytes of the protocol overhead is not applied to the IPC form. A method of implementing a multi-protocol of an ATM virtual channel exchanger comprising the step of transmitting. 제1항에 있어서, 상기 단계(400, 401, 402)의 시그널링 메시지 처리 루틴은, SARA-S 제어 메모리의 프리 큐로부터 한 개의 디스크립터 넘버를 획득하는 단계(500)와; 실제 메시지 부분에서 얻어진 가상 경로 식별자/가상 채널 식별자 값을 디스크립터 넘버로부터 구해진 디스크립터에 써넣고(501,502), IPC 헤더 부분을 제외한 실제 메시지 부분을 AAL-5 계층 형태의 메시지 포맷을 만들어 SARA-S의 패킷 메모리에 써넣는 단계(503, 504)와; SARA-S의 레디 큐에 디스크립터 넘버를 써넣는 단계(50)를 포함하여 이루어지는 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법.The method of claim 1, wherein the signaling message processing routine of the step (400, 401, 402) comprises: (500) obtaining one descriptor number from a prequeue of a SARA-S control memory; The virtual path identifier / virtual channel identifier value obtained from the actual message portion is written into the descriptor obtained from the descriptor number (501,502), and the actual message portion excluding the IPC header portion is written in the AAL-5 layer message format to form a packet of SARA-S. Writing to memory (503, 504); A method of implementing a multi-protocol of an ATM virtual channel switch comprising the step (50) of writing a descriptor number to a ready queue of SARA-S. 인터럽트 서비스 루틴을 통해 수신된 패킷을 처리하는 과정은, SARA-R로부터의 인터럽트를 감지하면(700) PCQ로부터 디스크립터 넘버를 읽어내어 값을 비교해서 0이면 에러이므로 더 이상 처리하지 않고 바로 복귀하는 단계(701, 717)와; 상기 단계(701)에서 PCQ로부터 디스크립터 넘버를 읽어내어 값을 비교해서 0이 아니면 디스크립터 넘버를 사용해서 디스크립터를 찾고, 디스크립터에서 가상 채널 식별자 값을 읽어 IPC와 시그널링 메시지를 구분하는 단계(702, 703)와; 상기 단계(703)에서 시그널링 메시지의 가상 채널 식별자 값이면 디스크립터로부터 DMA 완료 번지를 참조해서 패킷의 끝에서부터 CPCS 트레일러의 오프셋 값을 빼줌으로써 패킷의 길이를 읽어내는 단계(709,710)와; 버퍼를 얻어서(711) 패킷의 시작 어드레스부터 패킷 길이 만큼의 데이터를 읽어 버퍼의 실제 메시지 영역에 복사하고(712) 이전에 디스크립터로부터 읽어낸 가상 채널 식별자 값과 가상 경로 식별자 값 및 패킷 길이를 버퍼의 해당 엘러먼트에 써넣고(713) IPC 헤더 부분에서 데스티네이션 어드레스와 소스 어드레스는 자신의 ID를, 그리고 메시지 길이는 패킷 길이 + 8을, 시그널 ID는 미리 지정된 초기 시그널 값을 써넣음으로써 완전한 IPC 형태를 구성하여 DPRAM 영역을 통해 상위 운영 체제에 전달하는 단계(714,715)와; 상기 단계(703)에서 가상 채널 식별자가 IPC용이면 패킷의 시작 어드레스로부터 IPC 헤더 부분을 바로 읽는 단계(704)와; 수신된 IPC의 소스 어드레스가 메인 프로세서의 어드레스이면 슬라이딩 윈도우 프로토콜 처리 과정을 통해 에러 검출 및 복구를 수행하고, 프로토콜 오버헤드가 제외된 형태로 상위 운영 체제에 전달하는 단계(705, 707, 708)와; 상기 단계(705)에서 수신 패킷이 SIMC로부터 수신된 것이면 프로토콜 처리 과정을 거치지 않고 바로 상위 운영 체제에 전달하는 단계(706)를 포함하여 이루어지는 에이티엠 가상 채널 교환기의 다중 프로토콜 구현 방법.In the process of processing the packet received through the interrupt service routine, if it detects the interrupt from SARA-R (700), it reads the descriptor number from the PCQ, compares the values, and returns 0 without any further processing because it is an error. 701, 717; In step 701, the descriptor number is read from the PCQ, the value is compared, and if it is not 0, the descriptor is found using the descriptor number, and the virtual channel identifier value is read from the descriptor to distinguish between the IPC and the signaling message (702, 703). Wow; Reading (709, 710) the length of the packet by subtracting the offset value of the CPCS trailer from the end of the packet with reference to the DMA completion address from the descriptor if the virtual channel identifier value of the signaling message in step (703); Obtain a buffer (711), read the packet length data from the start address of the packet, copy it to the actual message area of the buffer (712), and store the virtual channel identifier value, virtual path identifier value, and packet length previously read from the descriptor. Write it in the corresponding element (713) and in the IPC header, complete the IPC form by writing the destination address and source address as its ID, the message length as the packet length + 8, and the signal ID as the predefined initial signal value. Configuring 714 and 715 and delivering the upper operating system through the DPRAM area; Reading (704) the IPC header portion directly from the start address of the packet if the virtual channel identifier is for IPC in step (703); If the source address of the received IPC is the address of the main processor, error detection and recovery are performed through a sliding window protocol process, and steps 705, 707, and 708 are delivered to the upper operating system without the protocol overhead. ; And if the received packet is received from SIMC in step 705, forwarding the received packet directly to a higher operating system without going through a protocol process.
KR1019960027022A 1996-07-04 1996-07-04 Multi protocol realization method of atm virtual channel switch KR100197431B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960027022A KR100197431B1 (en) 1996-07-04 1996-07-04 Multi protocol realization method of atm virtual channel switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960027022A KR100197431B1 (en) 1996-07-04 1996-07-04 Multi protocol realization method of atm virtual channel switch

Publications (2)

Publication Number Publication Date
KR980013083A KR980013083A (en) 1998-04-30
KR100197431B1 true KR100197431B1 (en) 1999-06-15

Family

ID=19465472

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960027022A KR100197431B1 (en) 1996-07-04 1996-07-04 Multi protocol realization method of atm virtual channel switch

Country Status (1)

Country Link
KR (1) KR100197431B1 (en)

Also Published As

Publication number Publication date
KR980013083A (en) 1998-04-30

Similar Documents

Publication Publication Date Title
EP0479478B1 (en) Communications network arranged to transport connection oriented and connectionless messages
US6907040B2 (en) Router apparatus and frame transfer method
US5805808A (en) Real time parser for data packets in a communications network
KR100289676B1 (en) Communication control apparatus having a receiving section with an address filtering section and method for receiving a cell
JPH07107990B2 (en) ATM-based transmitter and communication system
US5483525A (en) Assignment method and apparatus of virtual path and virtual channel identifiers in an asynchronous transfer mode
US6499061B1 (en) Method and system for assigning labels to data flows over a packet switched network
US6711167B1 (en) ATM communication apparatus controlling method, ATM communication apparatus and recording medium therefor
JPH10126412A (en) Method and system for transmitting atm cell through atm link
US6944156B2 (en) Label request packet transmission method, packet transfer network and method thereof, and packet transfer device
US6788700B1 (en) Interfacing between a network interface and a bus
WO1995014269A1 (en) A high-performance host interface for networks carrying connectionless traffic
KR100197431B1 (en) Multi protocol realization method of atm virtual channel switch
US5999515A (en) Method and apparatus for shaping processing in which discard of ATM cell effectively performed
US6982958B2 (en) Method for transmitting loopback cells through a switching node of an asynchronous transfer mode (ATM) network
US6301259B1 (en) Switch and switching method
JPH07111507A (en) Data reception system and communication controller
EP0866634A2 (en) Broadcast packet transfer method in LAN emulation and an LSI device for same
US6804242B1 (en) Method and apparatus for the channelization of cell or packet traffic over standard PC buses
GB2309619A (en) Protocol coverter card for ATM/Token ring
JP2838674B2 (en) Confirmation frame transfer method in FC / ATM network converter
JPH098807A (en) Atm communication network system
KR100261887B1 (en) Data interface method using pci bus
KR0129179B1 (en) A circuit for decoding pdu in sscop sublayer
JP2930009B2 (en) First reservation protocol type ATM exchange method, ATM exchange and ATM subscriber device

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

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee