KR100977988B1 - 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법 - Google Patents

이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법 Download PDF

Info

Publication number
KR100977988B1
KR100977988B1 KR1020080065512A KR20080065512A KR100977988B1 KR 100977988 B1 KR100977988 B1 KR 100977988B1 KR 1020080065512 A KR1020080065512 A KR 1020080065512A KR 20080065512 A KR20080065512 A KR 20080065512A KR 100977988 B1 KR100977988 B1 KR 100977988B1
Authority
KR
South Korea
Prior art keywords
time
real
communication
interval
processor
Prior art date
Application number
KR1020080065512A
Other languages
English (en)
Other versions
KR20100005471A (ko
Inventor
김병국
최상우
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020080065512A priority Critical patent/KR100977988B1/ko
Publication of KR20100005471A publication Critical patent/KR20100005471A/ko
Application granted granted Critical
Publication of KR100977988B1 publication Critical patent/KR100977988B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/50Circuit switching systems, i.e. systems in which the path is physically permanent during the communication
    • H04L12/52Circuit switching systems, i.e. systems in which the path is physically permanent during the communication using time division techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명에서 다중 프로세서 시스템의 성능을 극대화할 수 있는 이더넷 스위치의 통신 프레임 구조 및 이를 이용한 실시간 다중 프로세서 통신 방법을 개시한다.
본 발명에 따른 통신 프레임 구조는, 전체 통신 시간을 균등 분할 한 프레임 구간(FI : Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행하는 동기화 구간(SI : Synchronization Interval); 여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI); 및 상기 실시간 구간(RTI)가 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 비실시간 구간(NRTI : Non Real Time Interval)을 포함하여 구성된다. 따라서, 본 발명은 프레임 구간, 실시간 구간, 비실시간 구간 등과 아울러 시간 간격을 효율적으로 배치하고, 여유 시간 간격을 활용함으로써, 최소한의 프레임 구간을 사용할 수 있거나, 주어진 프레임 구간 내에서 많은 통신량을 소화할 수 있어서 다중 프로세서 시스템의 성능을 극대화할 수 있다.
Figure R1020080065512
이더넷, 스위치, 통신, 프레임, 동기, FI, RTI, NRTI, SI, 프로세서

Description

이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법{APPARATUS HAVING COMMUNICATION FRAME STRUCTURE FOR ETHERNET SWITCH AND REAL TIME MULTIPROCESSOR COMMUNICATION METHOD USING THEREOF}
본 발명은 이더넷 통신에 관한 것으로, 더욱 상세하게는 컴퓨터의 여러 프로세서를 사용하는 고성능의 다중 프로세서 병렬처리함에 있어, 요구되는 프로세서 간의 데이터 통신을 실시간(Real-time)으로 동시 수행할 수 있는 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법에 관한 것이다.
일반적으로, 컴퓨터의 프로세서 간의 통신 방식은 여러 방식이 제안되고 사용되어 왔으나, 현재 가장 널리 사용되고 있는 기술은 이더넷(Ethernet) 기술이다. 이더넷은 근거리 통신망(LAN: Local Area Network)을 위해 개발된 컴퓨터 네트워크 기술로서, 국제 표준화 기구(ISO)에서 제시한 OSI(Open Systems Interconnection) 모델에서 물리 계층의 신호와 배선, 데이터 링크 계층의 패킷(packet)과 프로토콜(protocol)의 형식을 정의하여, IEEE 802.3 규약으로 표준화된 컴퓨터 상호 간에 데이터를 주고 받을 수 있도록 하는 빠른 통신속도가 가능하면서도 경제적인 구현이 가능한 기술이다.
상기 이더넷 기술은 이더넷 네트워크에서 여러 대의 컴퓨터, 네트워크 장비들을 연결하는 장치인 이더넷 허브(Ethernet hub)와, 각 컴퓨터에서 주고 받는 데이터가 허브처럼 다른 모든 컴퓨터에 전송되는 것이 아니라, 데이터를 필요로 하는 수신 컴퓨터에만 전송하기 위한 이더넷 스위치(Ethernet switch)로 구분된다. 여기서, 상기 이더넷 스위치는 다중 프로세서 시스템에 적용되며, 도 1에 도시된 바와 같이
다중 프로세서 시스템의 일례로, 4대의 컴퓨터(또는 프로세서, 11, 12, 13, 14)가 4포트(port)의 이더넷 스위치(15)로 4개의 이더넷 연결선들을 사용하여 별(star) 모양으로 연결된 구조를 도시하였다. 4대 이하의 다중 프로세서도 동일한 4포트의 이더넷 스위치를 사용할 수 있다. 아울러8대 이하 또는 16대 이하의 컴퓨터도 마찬가지로 8 포트 또는 16 포트 등의 이더넷 스위치를 사용하여 별 모양의 구조로 연결이 가능하다.
도 2는 4대의 프로세서가 이더넷 스위치로 연결된 시스템에서의 통신 데이터의 흐름을 나타낸다. 프로세서 1 (또는 간략히 P1, 11)에서 전송된 통신 데이터는 이더넷 스위치(15) 내부의 입력 포트 1(IN1, 22)을 통과하여 스위치 패브릭(Switch fabric, 23)에 의하여 원하는 수신 프로세서에 해당하는 큐(queue), 예를 들어 수신 프로세서가 P3(18)일 경우 Q3(24)에 잠시 저장된 후 출력 포트(OUT3, 25)를 사용하여 수신 프로세서 P3(18)로 전송되어, P1으로부터 P3로의 데이터 통신이 가능하다. 그리고 이러한 데이터 통신과 동시에 P2로부터 P4로의 통신, P3로부터 P1까지의 통신, P4로부터 P2까지의 4가지의 통신이 동시에 수행하는 것이 이더넷 스위 치를 사용함으로써 가능해진다.
전술된 이더넷 기술을 이용한 공지의 다중 프로세서 간 통신 방법을 살펴 보면, 먼저 2000년 대한민국 특허 10-0273979 "이더넷 네트워크 상에서의 통신을 최적화하기 위한 장치 및 방법"에서는 서버와 복수개의 클라이언트 노드(Node)들 간의 링 구조의 네트워크에서, 데이터 전송을 제어할 수 있는 네크워크 통신 관리기를 제안하고, 시간 프레임을 특정한 시간 할당분으로 구분하여 이들을 각각의 클라이언트 노드에 할당할 수 있는 시간 할당 제어기를 제안하여, 데이터의 우선순위의 결정이 가능하도록 하여 통신을 최적화할 수 있는 방법을 제시하였다. 시간 프레임을 사용하여 통신을 보다 결정적(deterministic)으로 만들 수는 있으나, 링 구조의 네트워크에서는 통신의 지연이 적지 않고, 전체 통신량이 하나의 이더넷 통신량에 비하여 크지 않다는 제한이 따르는 단점이 있다.
한편, 2006년 대한민국 특허 10-0615663 "네트워크 스위치 포트 상에서 데이터 패킷(packet)의 타입을 실시간으로 식별하는 장치 및 방법"에서는 네트워크 스위치 내에서 다수의 최소항으로 구성된 템플릿들과 입력 데이터 패킷을 동시에 비교하는 패킷 분류기 모듈을 제안함으로써, 블럭킹(blocking)없이 층 3 스위칭(Layer 3 switching, 즉 IP layer switching)을 행할 수 있어서, 패킷에 따른 선택적 서비스를 가능하게 하여, 서비스 품질(QoS: Quality of Service)을 차별화 할 수 있는 방법을 제시하였으나, 요구시간 이내에 통신이 완료되어야 하는 실시간 통신에 적합하지는 않다.
또한, 2005년 미국특허 6909717 "Real Time Ethernet Protocol"에서는 Real- time Ethernet Protocol (RTEP)를 제안함으로써, RTEP 데이터가 TCP/IP 데이터와 함께 사용 가능하게 함으로써, 네트워크에서 실시간 데이터 통신이 증가된 속도와 향상된 성능을 가짐과 동시에, 메시지가 올바른 순서로 전달이 되고, 기타 여러 추가적인 기능이 가능한 프로토콜을 제안하였으나, 실시간 프로토콜에 국한되어 있으며, 다중 프로세서 등에 대한 고려가 되어 있지 않다.
또한, 2006년 미국특허 6999450 "Ehernet based TDM switch"에서는 이더넷 스위치 내부에서 TDM(Time Division Multiplexing) 데이터를 구성함으로써, 여러 데이터가 하나의 데이터로 결합되어 하나의 헤더(header)만 사용함으로써 보다 효율적인 데이터 전송이 가능하다는 장점이 있으나, 각 컴퓨터에서 TDM 호환의 특수한 이더넷 하드웨어가 필요하고, 아울러 TDM이 실시간을 보장하지는 않는다는 단점들이 있다.
또한, 2005년 Jan Kiszka 등의 "RTnet - A flexible hard real-time networking framework" 10th IEEE Conference on Emerging Technologies and Factory Automation, Catania, Italy, Sep. 2005에서는 RTnet (Real-Time Network)이 제안되었으며, 순수한 소프트웨어(software) 접근 방식으로써 실시간 통신이 가능한 버스 형태의 이더넷을 시분할 방식(TDMA: Time Division Multiple Access)으로 사용할 수 있는 방법이 제시되었다. 이는 도 3에 도시된 바와 같이, 기존의 RTnet에서의 프레임 구성을 나타내었다. 하나의 프레임 구간 주기 내에서 각 송신 프로세서가 시간 간격을 할당받아 송신을 수행한다.
여기서, 시간 축을 동일한 크기의 프레임 구간(31)들로 나누고, 하나의 프레임 구간(31) 내에 동기화 구간 - 동기 시간 간격(Sync, 32)과 2차 동기 시간 간격(Backup sync, 33)을 포함 - 이 존재하며, 그 후 여러 개의 시간 간격(34 - 38)의 시작 시간 및 시간의 크기를 지정할 수 있다. 첫 번째 시간 간격(34)에는 프로세서 1이 다른 프로세서들에게 송신을 수행하며, 두 번째 시간 간격(35)에는 프로세서 3이 송신을 수행한다. 세 번째 시간 간격(36)은 또 다시 프로세서 1 에게 송신을 허용할 수 있다.
네 번째 시간 간격(36)에서는 프로세서 4가 송신을 수행하고, 다섯 번째 시간 간격(38)에는 프로세서 2와 프로세서 3이 동시에 할당이 되어 있는데, 이런 경우 패킷 내에 우선권(priority) 를 지정할 수 있어서, 어느 프로세서로부터인지는 무관하게 우선권이 높은 패킷이 먼저 전송이 수행된다. 시간 간격 38 이후에는 다음 프레임 구간의 시작 동기(39) 전까지 쉬는 시간 간격이 존재할 수 있다. 이러한 방법을 사용함으로써 충돌이 없는 실시간 통신을 제공한다는 장점이 있다. 그러나 RTnet은 어디까지나 버스 구조의 연결 또는 이더넷 허브 기반의 연결에 적합한 방식으로, 어느 한 순간에는 하나의 송신 프로세서만이 가능하며 동시 전송은 불가능하므로, 전체 시스템의 통신 성능의 제약이 따르는 단점이 있다.
본 발명은 이와 같은 문제점을 해결하기 위해 창출된 것으로, 본 발명의 목적은 이더넷 스위치를 사용하여 다중 프로세서 간 시분할 동시 통신을 수행함으로써, 다중 프로세서 시스템의 성능을 극대화할 수 있는 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법을 제공함에 있다.
본 발명의 다른 목적은, 기존의 이더넷 인터페이스(Ethernet interface)를 그대로 사용하고, 또한 프로세서들의 연결을 위하여 상용의 이더넷 스위치(Ethernet switch)를 유지함으로써, 추가적인 하드웨어(Hardware) 비용이 불필요한 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법을 제공함에 있다.
본 발명의 또 다른 목적은, 이더넷 스위치에 전송하는 시간을 연속적인 프레임 구간(Frame interval)으로 나누고, 각 프레임 구간 내에 동기화 구간(Synchronozation interval), 실시간 구간(Real-time interval)과 비실시간 구간(Non-real-time interval)을 적절히 할당하고, 실시간 구간과 비실시간 구간 각각에 각 프로세서가 전송 가능한 통신 시간 간격(Time slot)들을 효율적으로 배치하여, 주어진 시간 내에 배달되어야 하는 실시간 데이터의 송수신과, 효율적 배달이 필요한 비실시간 데이터의 송수신이 모두 원활히 수행되도록 하며, 여유 시간 간격을 최대한 활용할 수 있는 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치를 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치는, 이더넷 스위치의 시분할 동시 통신 방식에 따른 통신 프레임 구조에 있어서, 전체 통신 시간을 균등 분할 한 프레임 구간(FI : Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행하는 동기화 구간(SI : Synchronization Interval); 여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI); 및 상기 실시간 구간(RTI)가 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 비실시간 구간(NRTI : Non Real Time Interval)을 포함하여 구성되는 것을 특징으로 한다.
상기 목적을 달성하기 위한 본 발명의 제2 관점에 따른 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법은, 이더넷 스위치의 통신 프레임을 이용한 다중 프로세서 간 실시간 통신 방법에 있어서, a) 전체 시간을 균등 분할 한 프레임 구간(FI : Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행하는 동기화 구간(SI : Synchronization Interval)을 설정하는 단계; b) 여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI)을 설정하는 단계; c) 상기 실시간 구간(RTI)가 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지 정되는 비실시간 구간(NRTI : Non Real Time Interval)을 설정하는 단계; 및 d) 최소 프레임 구간(MFI : Minimum Frame Interval)을 설정하는 단계로 이루어진 것을 특징으로 한다.
한편, 상기 목적을 달성하기 위한 본 발명의 제3 관점에 따른 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법은, 이더넷 스위치의 통신 프레임을 이용한 다중 프로세서 간 실시간 통신 방법에 있어서, a) 전체 시간을 균등 분할 한 프레임 구간(FI : Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행하는 동기화 구간(SI : Synchronization Interval)을 설정하는 단계; b) 여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI)을 설정하는 단계; c) 상기 실시간 구간(RTI)이 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 비실시간 구간(NRTI : Non Real Time Interval)을 설정하는 단계; 및 d) 통신 시간 간격(Time Slot)들을 확장 조정하는 단계로 이루어진 것을 특징으로 한다.
본 발명은 하드웨어 측면에서 각 프로세서에는 이더넷 인터페이스(Ethernet interface)로써 기존의 이더넷 포트(port)를 그대로 사용하고, 프로세서들의 연결을 위하여 상용의 이더넷 스위치(Ethernet switch)를 그대로 사용함으로써, 추가적 인 하드웨어(Hardware)비용이 들지 않는 장점이 있으며, 상기의 알고리즘을 활용함으로써 프레임 구간, 실시간 구간, 비실시간 구간 등과 아울러 시간 간격을 효율적으로 배치하고, 여유 시간 간격을 활용함으로써, 최소한의 프레임 구간을 사용할 수 있거나, 주어진 프레임 구간 내에서 많은 통신량을 소화할 수 있어서 다중 프로세서 시스템의 성능을 극대화할 수 있는 효과가 있다.
이하, 본 발명을 첨부된 예시도면에 의거 상세히 설명하면 다음과 같다.
도 4는 본 발명에 따른 이더넷의 시분할 동시 통신을 위한 기본 통신 프레임 구조를 도시하고 있다. 도시된 바와 같이, 시분할 동시 통신 방식에 따른 통신 프레임은, 전체 시간을 균등 분할 한 프레임 구간(FI-Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행하는 동기화 구간(SI-Synchronization Interval)과, 여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI)과, 상기 실시간 구간(RTI)가 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 비실시간 구간(NRTI-Non-Real-Time Interval)을 포함한다.
여기서, 상기 동기 구간(SI)은 동기화를 위한 패킷(packet)의 송수신 구간으로써, 송신 시간 간격 및 수신 시간 간격을 배치하며, 동기구간(SI) 내에 2차 동기 시간 간격이 추가로 지정될 수 있다.
이와 같이, 이더넷 스위치에 전송하는 시간을 연속적인 프레임 구간(Frame interval)으로 나누고, 각 프레임 구간 내에 동기 구간(Synchronization interval), 실시간 구간(Real-time interval)과 비실시간 구간 (Non-real-time interval)을 적절히 할당한 후, 실시간 구간과 비실시간 구간 각각에 각 프로세서가 전송 가능한 통신 시간 간격(Time slot)들을 효율적으로 배치함으로써, 주어진 시간 내에 배달되어야 하는 실시간 데이터와 효율적 배달이 필요한 비실시간 데이터의 송수신이 모두 원활히 수행되는 것이다.
도 5 및 도 6은 본 발명의 시분할 동시 통신 방식을 위한 기본 동작을 설명하는 것으로, 도 5에 도시된 바와 같이 4포트의 이더넷 스위치의 동시 통신을 살펴보면, 4 포트의 이더넷 스위치는 최대 4 가지의 동시 통신이 가능하며, 네 대의 프로세서(11-14)가 이더넷 스위치로 연결되었을 경우 모두 12개(화살표로 표시된 112-143)의 통신 채널(Channel)이 가능하다. 따라서, 이 중 4개의 채널을 동시에 선택하여 사용함이 가능한 것으로, 일 예로 통신 채널 112, 123, 134, 141의 동시 사용이 가능하여, 100 Mbps 이더넷 스위치의 경우 최대 400 Mbps의 전체 통신 속도를 얻을 수 있는 것이다.
그러면, 동시 통신을 위해 적용되는 프레임 구조의 동작을 도 6을 참조하여 설명하면, 먼저 주 프로세서(P1)가 동기화 패킷을 시간 간격(43)에 전송하면, 다른 프로세서들은 동시에 시간 간격(44)에서 동기화 패킷을 수신함으로써 동기화를 수행한다. 여기서, 상기 시간 간격(43,44)은 동기화를 위한 패킷(packet)의 송수신 구간으로써, 송신 시간 간격(43) 및 수신 시간 간격(44)이 동기 구간(SI)으로 배치 되는 것이다.
이 후, 실시간 구간 RTI(41)에서는 여러 프로세서로부터 동시 다발적인 송신이 수행되며, 여러 통신 시간 구간(Time slot)이 지정된다. 프로세서 1의 실시간 구간에서는 프로세서 2로 보내는 시간 간격(45), 프로세서 3으로 보내는 시간 간격(47), 프로세서 4로 보내는 시간 간격(49)들이 순차적, 연속적으로 할당된다. 그 후 실시간 구간(41)의 끝까지 쉬는 시간 간격이 존재할 수 있다. 여기서 각 시간 간격의 크기를 Cij 라 할 경우, 시간 간격 45와 동시에 프로세서 2는 프로세서 1로부터 데이터를 C21(ms) 동안 받는다(46). 시간 간격 47에서 프로세서 3은 프로세서 1로부터의 데이터를 C13(ms) 동안 수신한다(48).
그러나 송신 시간 간격 49에 프로세서 1이 프로세서 4에게 데이터를 보냈으나, 프로세서 4는 그 이전에 수신할 데이터의 수신이 아직 끝나지 않아서, 약간 지연된 수신 시간간격(50)에 이 데이터를 수신한다. 물론 프로세서 4의 C24 구간, C14 구간의 데이터는 혼합되어 교대로 수신되지만, 설명의 편의상 순차적으로 수신함으로 설명하였다. 그리고, 비실시간 구간 NRTI(42)은 실시간 구간 RTI(41)이 종료된 후 처리되는 구간으로, 동작 원리는 실시간 구간 RTI(41)과 동일한 알고리즘이 적용된다.
한편, 데이터의 수신이 종료되는 시점은 실시간 구간 RTI로 결정되어야 하며, 또한 데이터 전송 효율을 높이기 위해 실시간 구간 RTI와 비실시간 구간 NRTI 간의 쉬는 시간 간격과, 비실시간 구간의 시간 간격 Gij들이 모두 종료된 뒤에 다음 프레임 구간의 시작점까지 쉬는 시간 간격에 대한 활용이 필요하다. 따라서, 전술된 실시간 구간 RTI, 비실시간 구간 NRTI의 최소값 산출과 더불어, 각 쉬는 시간 간격을 이용한 통신시간 구간의 최적화를 수행해야 한다.
여기서, 전술된 프레임 구간 FI, 실시간 구간 RTI, 비실시간 구간 NRTI, 통신시간 구간에 대한 최적화 수행을 위해 도 7을 참조한다.
먼저, S710 단계에서, 프레임 구간 FI의 크기를 결정한다. 이를 위해, 각 프로세서의 한 주기 P마다의 실시간 통신량 Aij (bytes) 및 비실시간 통신량 Bij (bytes), 요구되는 최대 시간 지연(End-to-end delay) E (ms) 데이터를 필요로 하며, 이를 초기값으로 상정한다. 초기값이 설정된 후, 본 단계에서는 이더넷 스위치에 전송하는 시간을 연속적인 프레임 구간 FI로 나눈다. 그리고, 하나의 프레임 구간의 크기 FI(단위는 ms)는 다음과 같은 조건을 만족해야 한다.
즉 첫 번째로, 한 프레임 구간 FI는 요구되는 실시간 최대 시간 지연 E(ms)보다 작거나 같아야 한다. 이는 아래의 수학식 1로 표현된다.
FI ≤ E(ms)
이렇게 설정하면 응용 프로그램이 하나의 실시간 패킷을 전송하고자 할 때, 적어도 FI 시간 안에는 이 패킷이 보내진다. 두 번째 조건으로, 프레임 구간 FI는 한 프레임 구간 이내에 여러 개의 패킷이 전송될 수 있을 만큼 커야 하는데, 이를 수학식 2로 표현하면 다음과 같다.
FI >> (이더넷 패킷의 최대 크기 값)*8 /(1000*X)(ms)
상기 이더넷 패킷의 최대 크기 값은 1526 byte로 설정되나, 기술의 진보에 따라 가변 될 수 있으며 본 발명의 실시 예로 1526byte로 설정한다. 그리고 8은 byte 당 bit 수를 나타내며, X는 이더넷의 속도 (Mbps)를 나타내고, 1000은 시간의 단위를 ms로 맞추기 위한 값이다. 예컨대, 우변의 값은 100 Mbps의 경우 0.122 ms, 1 Gbps의 경우 0.0122 ms의 값을 가진다.
결국, 프레임 구간 FI는, 한 프레임 구간 내에 최대 크기의 패킷이 8개 이상 전송되어야 한다면, 100 Mbps 이더넷의 경우 1ms 이상 Ems 이내의 값으로 선정함이 바람직하며, 1 Gbps 이더넷의 경우 0.1ms 이상 Ems 이내의 값으로 선정함이 바람직하다.
한편, 전술된 과정을 통해 프레임 구간 FI가 설정되면, 프레임 구간 FI에 포함되는 동기 구간 SI의 크기를 산출해야 하는데, 이는 동기화 패킷과 2차 동기화 패킷을 송수신할 수 있는 시간으로 할당된다. 물론 동기 구간 SI의 크기는 이더넷 속도 X에 반비례한다.
이후, S720 단계로 진입하여 실시간 구간 RTI를 결정하는데, 이는 각 프레임 구간 FI 내에 실시간 구간 RTI를 적절히 할당하고, 실시간 구간에 각 프로세서가 전송 가능한 통신 시간 간격(Time slot)들을 효율적으로 배치하기 위함이다. 이를 위해, 먼저 S721 단계로 진입하여 실시간 구간 RTI의 초기값을 입력한다. 초기값은 1) 송수신 프로세서의 개수 : p (개); 2) 프레임 구간 : FI (ms); 3) 동기 구간 : SI (ms); 4) 이더넷 속도 : X (Mbps); 5) 이더넷 통신 주기 : P (ms); 6) 송신 프로세서 i에서 수신 프로세서 j로의 한 주기당 실시간 이더넷 전송량 : Aij (Bytes)를 포함한다.
초기값 설정이 완료되면, S722 단계에서 프로세서 간 실시간 통신시간을 산출한다. 이는 실시간 구간 RTI를 산출하기 위해 실시간 구간 RTI로 포함되는 하나의 요소로서, 송신 프로세서 i에서 수신 프로세서 j로 전송되어야 할 통신시간 Cij를 계산한다. 이는 아래의 수학식 3으로 표현된다.
Cij = (FI/P) * Aij * 8 / (1000 * X) (ms)
S723 단계로 진입하여, 프로세서 간 실시간 송신 완료 시간을 산출한다. 이는 각 송신 프로세서 i가 실시간 송신을 완료하는 시간 Rtfi를 계산하는 것으로 수학식 4와 같다.
Rtfi = SI + (Cij의 수신 프로세서 지수 j에 대한 합, j = 1, 2, ... ,p, j ≠ i )
그리고, 모든 송신 프로세서의 실시간 송신 완료 시간 Rtf를 계산하면, 수학식 5와 같다.
Rtf = (Rtfi 중 송신 프로세서 지수 i에 대한 최대값, i = 1, 2, ...,p )
그리고, S724 단계에서 최소 실시간 수신 요구 시간을 산출한다. 이는 각 수신 프로세서의 최소 실시간 요구 시간과, 최소 실시간 송수신 요구 시간을 산출하는 것으로, 먼저 각 수신 프로세서 j의 최소 실시간 수신 요구 시간 Qrj를 수학식 6과 같이 계산한다.
Qrj = SI + (Cij의 송신 프로세서 지수 i에 대한 합, i = 1, 2, ...,p, i ≠ j )
그리고, 모든 수신 프로세서의 최소 실시간 수신 요구 시간 Qr을 계산하면, 수학식 7과 같다.
Qr = (Qrj 중 수신 프로세서 지수 j에 대한 최대값, j = 1, 2, ...,p )
또한, 최소 실시간 송수신 요구 시간 Qtr은 수학식 8과 같이 표현된다.
Qtr = max(Rtf, Qr)
S725 단계로 진입하여, 실시간 통신 순서와 실시간 수신 완료 시간을 산출한다. 이를 위해, p 개의 프로세서 간의 실시간 통신 순서에 대한 모든 경우의 수 N을 구하고(1), 통신 순서 지수 n에 대하여 1부터 N까지 다음 과정을 반복한다(2).
먼저, (1)에 관련하여 모든 경우의 수 N은 프로세서가 2 개일 경우, 3 개일 경우, 4 개일 경우에 대한 각각의 경우의 수로 정의할 수 있다. 예컨대, 프로세서가 2 개일 경우는 경우의 수가 1 개이며, 프로세서가 3 개 즉, p가 3인 경우, 하나의 시간 간격에서 각각의 송신 프로세서에 해당하는 수신 프로세서들의 조합을 나타내는 벡터를 Dj 라 하면, 세 프로세서가 동시에 송수신할 수 있는 경우는 Dj = [2 3 1], [3 1 2]의 두 가지 경우만이 존재한다. 이 두 가지 송수신의 순서의 경우의 수는 2! = 2 가지가 되므로, 통신 순서의 경우의 수는 2 가지이다.
또한, 4개의 프로세서의 경우를 살펴보면, 이 경우 송수신 프로세서의 조합은 Dj = [2 1 4 3], [2, 3, 4, 1], [ 2, 4, 1, 3] , [3, 1, 4, 2], [3, 4, 1, 2], [3, 4, 2, 1], [4, 1, 2, 3], [4, 3, 1, 2], [4, 3, 2, 1]의 9가지이고, 송수신의 순서의 경우의 수는 {D1 D5 D9}의 순열 6 가지, {D1 D6 D8}의 순열 6 가지, {D2 D5 D7}의 순열 6 가지, 그리고 {D3 D4 D9}의 순열 6 가지로, 모두 24 가지의 통신 순서의 경우의 수를 갖는다.
그러면, 모든 경우의 수 N이 산출되면, 통신 순서 지수 n에 대하여 1부터 N까지 다음 과정을 반복한다. 첫 번째 과정으로, 하나의 통신 순서 지수 n에 대하여 실시간 통신 순서로써, 송신 프로세서 i의 k번째 실시간 시간 간격에서의 수신 프로세서 Rdik를 결정한다. 그리고, 두 번째로, Rdik의 각 k에 대한 수신 데이터의 시작시간을 확인하여 순서대로 정렬한다. 세 번째로, 통신순서 n에서의 각 수신 프로 세서 j가 실시간 수신을 완료하는 시간 Rrfjn을 계산한다. 이때 송수신의 인과성(causality)를 고려하여 해당 송신이 시작될 때까지 해당 수신이 보류된다. 네 번째로, 통신순서 n에서의 모든 수신 프로세서가 실시간 수신을 완료하는 시간 Rrfn을 모든 프로세서가 실시간 수신을 완료하는 시간, 즉 각 프로세서의 실시간 수신완료시간 Rrfjn들의 최대값으로 정한다.
상기 Rrfjn들의 최대값 Rrfn은 수학식 9와 같다.
Rrfn = (Rrfjn 중 수신 프로세서 지수 j에 대한 최대값, j = 1, 2, ...,p )
여기서, Rrfn이 상기한 Qtr과 같다면 이 값을 모든 수신 프로세서가 실시간 수신을 완료하는 최소 시간 Rrf로 설정하고, 통신순서지수 n에 대한 반복 과정을 탈출하여 이후 단계의 RTI 크기 결정 과정으로 진행한다.
그러나, 반복 과정의 탈출 없이 N 가지의 통신순서에 대하여 계산이 완료되었으면 모든 경우의 수신완료시간 Rrfn 중 최소값으로 Rrf를 결정한다. 이 최소에 해당하는 Rdik를 저장한다.
이와 같이 실시간 통신에 대한 순서가 정의되면, S726 단계에서 실시간 구간 RTI의 크기 값을 산출한다. 상기 실시간 구간 RTI의 크기는 수학식 10과 같이;
RTI = Rtf - SI
로 결정하며, 통신 순서는 최후에 저장된 통신 순서 Rdik를 따른다.
전술된 과정을 통해, 실시간 구간 RTI, 통신 순서 Rdik, 각 송신 프로세서가 실시간 송신을 완료하는 시간 Rtfi, 각 수신 프로세서가 실시간 수신을 완료하는 시간 Rrfj 등의 산출 결과를 제공받을 수 있다.
한편, 전술된 실시간 구간 결정 방법에 있어서, 실시간 구간 결정 알고리즘을 비실시간 구간보다 먼저 수행하므로, 실시간 통신은 비실시간 통신에 대하여 우선권(priority)이 있다고 할 수 있다. 또한, 입력 변수 중에서 프레임 구간 FI 이내에 프로세서 i에서 프로세서 j로 전송되어야 할 통신량 Aij에는 이더넷 헤더(Ethernet header)를 포함하여야 하며, 만일 여러 패킷이 동일시간 간격 내에서 전송되고자 한다면 여러 개의 헤더 크기의 합이 포함되어야 할 것이다.
그리고, 상기한 송신 완료 시간의 계산에서 각 프로세서는 시간 간격 지수 k로 표시되는 (p-1)개의 시간 간격을 할당받으며, 각 시간간격 k에 통신순서에 따라 적절한 송신 프로세서 i에서 수신 프로세서 j로의 실시간 통신 시간 간격 Cij가 배치된다. 각 시간 간격에 포함되는 실시간 통신량은 통신 순서에 관련이 있지만, 각 프로세서가 송신을 완료하는 시간 Rtf는 통신 순서에 무관하다.
한편, S730 단계로 진입하여 비실시간 구간 결정을 수행한다. 비실시간 구간 결정 방법은 전술된 실시간 구간 결정 방법과 유사하다. 도시된 바와 같이 S731 단계에서 NRTI 초기값을 설정한다. 이는 송수신 프로세서의 개수 : p (개), 프레임 구간 : FI(sec), 동기 구간 : SI(ms), 이더넷 속도 : X(Mbps), 이더넷 통신 주기 : P(ms), 각 송신 프로세서 i가 실시간 송신을 완료하는 시간 : Rtfi , 각 수신 프로세서 j가 실시간 수신을 완료하는 시간 : Rrfj, 송신 프로세서 i에서 수신 프로세서 j로의 비실시간 이더넷 전송량 : Bij (Bytes)을 포함한다.
NRTI의 초기값이 결정되면, S732 단계로 진입하여, 프로세서 간의 비실시간 통신 시간을 산출한다. 이는 송신 프로세서 i에서 수신 프로세서 j로 전송되어야 할 통신시간 Gij를 계산하는 것으로, 전술된 실시간 통신 시간 산출과 동일한 원리로 아래의 수학식 11과 같다.
Gij = (FI/P) * Bij * 8 / (1000 * X) (ms)
이후, S733 단계에서 프로세서 간 비실시간 송신 완료 시간을 산출한다. 이를 위해, 먼저, 각 송신 프로세서 i가 비실시간 송신을 시작하는 시간을 Rtfi로 정한다. 그리고, 각 송신 프로세서 i가 비실시간 송신을 완료하는 시간 Ntfi를 계산하는데, 수학식 12와 같다.
Ntfi = Rtfi + (Gij의 수신 프로세서 지수 j에 대한 합, j = 1, 2,...,p, j ≠ i )
그리고, 수학식 12를 토대로 모든 송신 프로세서의 비실시간 송신 완료 시간 Ntf 를 계산하며, 수학식 12과 같다.
Ntf = (Ntfi 중 송신 프로세서 지수 i에 대한 최대값, i = 1, 2,...,p )
한편, 상기 Gij 및 상기한 각 수신 프로세서 j가 실시간 수신을 완료하는 시간(Rrfj)를 토대로 수신 요구 시간을 산출하는데, S734 단계와 같이 각 수신 프로세서의 최소 비실시간 수신 요구 시간 Lrj 를 계산한다. 이는 수학식 14로 표현된다.
Lrj = Rrfj + (Gij의 송신 프로세서 지수 i에 대한 합, i = 1, 2,...,p, i ≠ j )
또한, 수학식 14에서 산출된 Lrj 값에 기초하여 모든 프로세서의 최소 비실시간 수신 요구 시간 Lr을 산출하며, 동일한 방법으로 송신 요구 시간 Lt를 수학식 15와 같이 산출한다.
Lr = (Lrj 중 수신 프로세서 지수 j에 대한 최대값, j = 1, 2,...,p )
Lt = (Ltj 중 수신 프로세서 지수 j에 대한 최대값, j = 1, 2,...,p )
그러면, 최소 비실시간 송수신 요구 시간 Ltr을 산출하면, 수학식 16과 같다.
Ltr = max(Lt, Lr)
상기한 수학식 16은 전술된 S733 단계 및 S734 단계에서 산출된 비실시간 송신 시간과 비실시간 수신 시간 중 최대값을 산출한다.
이와 같이, 비실시간에 대한 송수신 시간이 산출되면, S735 단계로 진입하여 비실시간에 대한 통신 순서 및 수신완료 시간을 산출한다. 이는 p 개의 프로세서 간의 통신 순서에 대한 모든 경우의 수 N을 구하고, 통신 순서 지수 n에 대하여 1부터 N까지 다음 과정을 반복한다. 여기서, 모든 경우의 수 N에 대한 산출은 '실시간 통신 순서'에서 기술한 방법과 동일하며 본 과정에서 구체적인 설명은 생략한다.
먼저, 첫 번째 과정으로, 하나의 통신 순서 지수 n에 대하여 비실시간 통신 순서로써, 송신 프로세서 i의 k번째 실시간 시간 간격에서의 수신 프로세서 Ndik를 결정한다. 그리고, 두 번째로, Ndik의 각 k에 대한 수신 데이터의 시작 시간을 확인하여 순서대로 정렬하며, 세 번째로, 통신순서 n에서의 각 수신 프로세서가 비실시간 수신을 완료하는 시간 Nrfjn을 계산한다. 이때 송수신의 인과성(causality)를 고려하여 해당 송신이 시작될 때까지 해당 수신이 보류된다.
네 번째 과정으로, 통신순서 n에서의 모든 수신 프로세서가 비실시간 수신을 완료하는 시간 Nrfn을 모든 프로세서가 비실시간 수신을 완료하는 시간으로, 각 프로세서의 비실시간 수신완료 시간 Nrfjn들의 최대값으로 정한다. 즉, 비실시간 수신 을 완료하는 시간 Nrfn은 수학식 17과 같다.
Nrfn = (Nrfjn 중 수신 프로세서 지수 j에 대한 최대값, j = 1, 2,...,p )
여기서, Nrfn가 Ltr과 같다면 모든 수신 프로세서가 비실시간 수신을 완료하는 최소 시간 Nrf로 설정하고, 통신순서지수 n에 대한 반복 loop을 탈출한다. 그러나, 탈출 없이 N 가지의 통신순서에 대하여 계산이 완료되었으면 모든 경우의 수신완료시간 Nrfn의 최소값으로 Nrf를 결정한다. 이 최소에 해당하는 Ndik를 저장하며, 통신 순서로 상정한다.
이후, S736 단계로 진입하여 NRTI의 크기 값을 산출하는데, 상기 과정을 통해 계산된 Nrf로부터 NRTI의 크기를 수학식 18과 같이 결정한다.
NRTI = Nrf - RTI - SI
또한, 통신 순서는 최후에 저장된 통신 순서 Ndik를 따른다.
이와 같이, 비실시간 구간 결정 과정을 통해 비실시간 구간 NRTI를 포함하여, 통신 순서 Ndik를 산출하는 것이다. 그러면, 동기구간 SI를 포함하여, 실시간 구간 RTI, 비실시간 구간 NRTI가 산출된 것으로, 마지막 과정으로 비실시간 구간의 여유 시간 간격을 최대한 활용하기 위한 최소 프레임 구간 결정 방법, 통신량 확장 방법을 설명한다. 여기서, 최소 프레임 구간 결정 방법 및 통신량 확장 방법 중 어 느 하나의 방법으로 선택되며, 도 8를 참조한다.
먼저, S810 단계에서 최소 프레임 구간을 결정한다. 이를 위해, S811 단계로 진입하여, 초기값을 설정한다. 초기값은 프레임 구간 : FI(ms)과, 동기 구간 : SI(ms)과, 실시간 구간 : RTI(ms)과, 비실시간 구간 : NRTI(ms)과, 각 송신 프로세서 i가 비실시간 송신을 완료하는 시간 : Ntfi과, 각 수신 프로세서 j가 비실시간 수신을 완료하는 시간 : Nrfj으로 설정한다.
초기값이 설정되면, S812 단계로 진입하여 시간 구간에 대한 조정 비율을 산출하는데, 시간 구간 조정비율(scale factor) Scale을 수학식 19와 같이 결정한다.
Scale = min( (FI - SI)/(Ntfi - SI), (FI - SI)/(Nrfi - SI) )
S813 단계는, 상기 수학식 19를 근거로 Scale 값의 결과를 판단하는 것으로, Scale 값이 1 보다 크거나 같을 경우, S814 단계로 진행하여 최소 프레임 구간(MFI)을 산출한다. 최소 프레임 구간(Minimum Frame Interval) MFI는 수학식 20과 같이 표현된다.
MFI = SI + RTI + NRTI
반면, 상기 S813 단계에서 판단한 결과 Scale 값이 1 보다 클 경우에는 S815 단계로 진입한다. 이는 정해진 프레임 구간 FI 이내에 요구되는 데이터의 송수신을 완료할 수 없는 것으로, 상기 S710 단계에서 결정된 프레임 구간(FI)이 너무 적게 설정된 것이다. 따라서, 상기 S710 단계로 피드백하여 프레임 구간(FI)를 재설정한다.
이와 같이, 본 과정에 다른 최소 프레임 구간 결정 방법은 상기 S710 단계에서 적절하게 결정된 프레임 구간보다 그 크기가 작은 프레임 구간 내에서, 모든 요구되는 실시간 및 비실시간 통신을 완료할 수 있게 되어, 짧은 주기의 통신이 가능하게 되는 것이다.
그러면, S820 단계의 통신량 확장 방법을 설명한다. 먼저, S821 단계로 진입하여 통신량 확장을 위한 초기값을 설정하는데, 초기값은 프레임 구간 : FI(ms)과, 동기 구간 : SI(ms)과, 각 송신 프로세서 i가 비실시간 송신을 완료하는 시간 : Ntfi과, 각 수신 프로세서 j가 비실시간 수신을 완료하는 시간 : Nrfj과, 송신 프로세서 i에서 수신 프로세서 j로의 실시간 통신 시간 간격 : Cij(Bytes)과, 송신 프로세서 i에서 수신 프로세서 j로의 비실시간 통신 시간 간격 : Gij(Bytes)을 포함한다.
초기값 설정이 완료되면, S822 단계에서, 시간 구간 조정비율(scale factor) Scale을 수학식 21과 같이 결정한다.
Scale = min( (FI - SI)/(Ntfi - SI), (FI - SI)/(Nrfi - SI) )
그리고, S823 단계에서 수학식 21에서 산출된 상기 Scale 값이 1 보다 크거나 같은지를 판단한다. 판단결과, 상기 Scale 값이 1 보다 크거나 같을 경우, S824 단계와 같이, 실시간 구간 및 비실시간 구간의 통신 시간 간격들을 수학식 22, 수학식 23과 같이 확장한다.
Cij'= Scale * Cij
Gij'= Scale * Gij
여기서, 통신량 확장을 위한 프레임 구간 FI의 비실시간 여유 시간 간격에 따라 시간 간격 조정비율이 결정되는 것으로, 이러한 조정을 결정하는 것이 조정비율 Scale이다. 비례로 늘이거나 줄이는 것은 통신순서, 인과성 등에 영향을 끼치지 않는다. 따라서, Scale > 1 일 경우 시간적인 여유가 있으므로 RTI와 NRTI 내부의 통신 시간 간격들이 Scale의 비율로 늘어날 것이고, 따라서 RTI와 NRTI의 크기가 이에 비례하여 커지게 된다.
반면, S823 단계에서 판단한 결과, 상기 Scale 값이 1 보다 작을 경우, S825 단계를 통해 통신불가로 판정하는데, 이는 정해진 프레임 구간 FI 이내에 요구되는 데이터의 송수신을 완료할 수 없음을 나타낸다. 즉, Scale < 1 일 경우 시간적인 여유가 없으므로 비례로 줄어들어야 하지만, 이 경우 실시간 구간의 데이터 송수신이 주어진 시간 이내에 완료되지 못하므로, 이 경우에는 비실시간 구간의 통신량 Bij 를 줄여서 전술된 비실시간 구간 결정 과정부터 다시 수행해야 한다.
전술한 바와 같이, FI 크기 값, RTI 크기 값, NRTI 크기 값 및 최소 프레임 구간 결정 또는 통신량 확장 방법을 통해 통신 시간 구간의 설정이 최적화되어 도 9와 같은 하나의 프레임 구간을 최대한 활용하는 시분할 동시 통신 방식이 완성된다. 즉, 실시간 통신은 요구시간 RTI 이내에 송수신되고, 비실시간 통신은 실시간 구간의 여유 시간 간격과 비실시간 구간 이내에 송수신된다. 그리고 Scale > 1 인 경우 실시간 구간 및 비실시간 구간은 Scale 만큼 보다 많은 데이터의 송수신이 가능하게 되며 비실시간 구간의 마지막 수신시간 간격은 NRTI 구간의 끝과 동일하게 되어 주어진 프레임 구간을 최대한 활용한 시분할 동시 통신이 가능하게 된다.
예컨대, 4 개의 프로세서에, X = 100 Mbps, E = 300 ms, SI = 10 ms 일 경우, 한 주기 P = 300 ms 이내에 전송될 실시간 통신량 및 비실시간 통신량이 도 10의 a와 같이 주어졌다고 한다면, 프레임 구간 FI 를 150 ms 로 잡으면, SI = 10 ms, 실시간 구간 RTI = 70 ms, 비실시간 구간 NRTI = 57 ms 로 결정되고, 실시간 통신 시간 간격의 순서 Rik 와 비실시간 통신 순서 Nik 는 도 10의 b가 되며, 최소 프레임 구간 137 ms으로 주어진 통신량을 소화할 수 있다.
또는 프레임 구간을 150 ms로 잡으면, 통신량 확장 알고리즘에 의하여 Scale 은 1.102이 되므로, 10.2%의 추가적인 실시간 및 비실시간 통신이 가능하다. 이러한 Scale을 사용하여 최적화 된 통신 순서가 도 6에 명시되어있다. 실시간 구간의 여유 시간 간격과 비실시간 구간의 여유 시간 간격이 최대한 활용된 것을 알 수 있다. 참고로, 위와 같은 문제에서 RTI와 NRTI를 중첩하지 않고 통신 순서를 다르게 잡으면 최악의 경우 SI = 10 ms, RTI = 82 ms, NRTI = 79 ms가 되어 FI = 171 ms가 소요되어야 할 것이다.
전술된 바와 같이, 본 발명에 따른 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법은, 추가적인 하드웨어 설비를 불허할 뿐만 아니라, 전송시간을 보장해야 하는 실시간 데이터 및 고효율의 비실시간 데이터의 통신이 가능하여 다중 프로세서 시스템의 성능을 극대화함에 따라, 병렬 처리 시스템 또는 대규모 제어 시스템 구축을 효율적으로 실현할 수 있어 산업적 이용 가치가 충분히 높을 것으로 판단된다.
도 1은 이더넷 스위치는 다중 프로세서 시스템을 나타낸 구성도이다.
도 2는 종래 이더넷 스위치는 다중 프로세서 시스템의 동작 흐름을 설명하기 위한 도면이다.
도 3은 도 2로 적용되는 RTnet에서의 프레임 구성을 나타낸 도면이다.
도 4는 본 발명에 따른 이더넷 스위치의 통신 프레임 구조를 나타낸 도면이다.
도 5는 본 발명에 따른 이더넷 스위치의 동시 통신을 설명하기 위한 도면이다.
도 6은 본 발명의 시분할 동시 통신 방식을 위한 기본 구조를 설명하기 위한 도면이다.
도 7 내지 도 8은 본 발명의 주요 동작을 설명하는 플로우챠트이다.
도 9는 본 발명의 결과에 따른 시분할 동시 통신 방식을 설명하는 도면이다.
도 10은 본 발명의 동작 실시 예를 설명하기 위해 사용된 조건 표이다.
<주요 도면에 대한 부호의 설명>
11 ~ 14 : 프로세서 112 ~ 143 : 시분할 통신 채널

Claims (29)

  1. 이더넷 스위치의 시분할 동시 통신 방식에 따른 통신 프레임 구조를 갖는 통신 장치에 있어서,
    전체 통신 시간을 균등 분할 한 프레임 구간(FI : Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행하는 동기화 구간(SI : Synchronization Interval);
    여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI); 및
    상기 실시간 구간(RTI)가 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 비실시간 구간(NRTI : Non Real Time Interval)을 포함하여 구성되며,
    상기 동기화 구간(SI)은 동기화를 위한 패킷(packet)의 송수신을 위한, 송신 시간 간격 및 수신 시간 간격을 배치하는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 동기화 구간(SI)은 2차 동기화를 위한 패킷(packet)의 송수신을 위한, 송신 시간 간격 및 수신 시간 간격이 추가로 지정되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치.
  4. 이더넷 스위치의 통신 프레임을 이용한 다중 프로세서 간 실시간 통신 방법에 있어서,
    a) 전체 시간을 균등 분할 한 프레임 구간(FI : Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행하는 동기화 구간(SI : Synchronization Interval)을 설정하는 단계;
    b) 여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI)을 설정하는 단계;
    c) 상기 실시간 구간(RTI)가 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 비실시간 구간(NRTI : Non Real Time Interval)을 설정하는 단계; 및
    d) 최소 프레임 구간(MFI : Minimum Frame Interval)을 설정하는 단계로 이루어진 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  5. 이더넷 스위치의 통신 프레임을 이용한 다중 프로세서 간 실시간 통신 방법에 있어서,
    a) 전체 시간을 균등 분할 한 프레임 구간(FI : Frame Interval)을 형성하며, 어느 하나의 프레임 구간(FI)은 동기화를 위한 패킷(packet)의 송수신을 수행 하는 동기화 구간(SI : Synchronization Interval)을 설정하는 단계;
    b) 여러 프로세서로부터 동시 다발적으로 실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 실시간 구간(RTI)을 설정하는 단계;
    c) 상기 실시간 구간(RTI)이 종료된 후 여러 프로세서로부터 동시 다발적으로 비실시간 송수신을 위해 통신 시간 구간(Time Slot)으로 지정되는 비실시간 구간(NRTI : Non Real Time Interval)을 설정하는 단계; 및
    d) 통신 시간 간격(Time Slot)들을 확장 조정하는 단계로 이루어진 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  6. 제 4 항 또는 제 5 항에 있어서,
    상기 a) 단계에서 상기 어느 하나의 프레임 구간의 크기 FI(단위는 ms)는 첫 번째로, 요구되는 실시간 최대 시간 지연 E(ms)보다 작거나 같아야 하며 두 번째로, 한 프레임 구간 이내에 여러 개의 패킷이 전송될 수 있을 만큼 커야하는 조건을 갖는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  7. 제 6 항에 있어서,
    상기 두 번째 조건에 따른 패킷 전송 량은 수학식 24;
    FI >> (이더넷 패킷의 최대 크기)*8 / (1000*X)(ms)
    <여기서 이더넷 패킷의 최대 크기는, 1526 byte이고, 8은 byte 당 bit 수를 나타내며, X는 이더넷의 속도 (Mbps)를 나타내고, 1000은 시간의 단위를 ms로 맞추기 위한 값>
    에 따라 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  8. 제 4 항 또는 제 5 항에 있어서,
    상기 b)단계는 b-1) 실시간 구간(RTI)에 대한 초기값 설정 단계;
    b-2) 프로세서 간 실시간 통신시간 산출 단계;
    b-3) 프로세서 간 실시간 송신 완료 시간 산출 단계;
    b-4) 최소 실시간 수신 요구 시간 산출 단계;
    b-5) 실시간 통신순서 및 실시간 수신 완료 시간 산출 단계; 및
    b-6) 실시간 시간 구간(RTI)의 크기 값을 산출하는 단계로 구성되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  9. 제 8 항에 있어서,
    상기 b-1)단계의 초기값은, 송수신 프로세서의 개수 : p (개), 프레임 구간 : FI (ms), 동기 구간 : SI (ms), 이더넷 속도 : X (Mbps), 이더넷 통신 주기 : P (ms), 송신 프로세서 i에서 수신 프로세서 j로의 한 주기당 실시간 이더넷 전송량 : Aij (Bytes)를 포함하는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  10. 제 8 항에 있어서,
    상기 b-2)단계는 수학식 25;
    Cij = (FI/P) * Aij * 8 / (1000 * X)(ms)
    <Aij : 송신 프로세서 i에서 수신 프로세서 j로의 한 주기당 실시간 이더넷 전송량(Bytes), X : 이더넷 속도(Mbps), FI : 프레임 구간(ms), P : 송수신 프로세서의 개수(개), Cij : 실시간 구간 RTI를 산출하기 위해 실시간 구간 RTI로 포함되는 하나의 요소로서, 송신 프로세서 i에서 수신 프로세서 j로 전송되어야 할 통신시간>
    에 의거 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  11. 제 8 항에 있어서,
    상기 b-3)단계는 가) 각 송신 프로세서 i가 실시간 송신을 완료하는 시간 Rtfi를 계산하는 단계; 및
    나) 모든 송신 프로세서의 실시간 송신 완료 시간 Rtf를 계산하는 단계로 구성되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다 중 프로세서 통신 방법.
  12. 제 11 항에 있어서,
    상기 가)단계는 수학식 26;
    Rtfi = SI + (상기 Cij의 수신 프로세서 지수 j에 대한 합, j = 1, 2,...,p, j ≠ i )
    <SI : 동기 구간>
    에 의거 산출되고,
    상기 나)단계는 수학식 27;
    Rtf = (Rtfi 중 송신 프로세서 지수 i에 대한 최대값, i = 1, 2,..,p )
    에 의거 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  13. 제 8 항에 있어서,
    상기 b-4)단계는 가) 각 수신 프로세서 j의 최소 실시간 수신 요구 시간 Qrj를 계산하는 단계;
    나) 모든 수신 프로세서의 최소 실시간 수신 요구 시간 Qr을 계산하는 단계; 및
    다) 최소 실시간 송수신 요구 시간 Qtr을 계산하는 단계로 구성되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  14. 제 13 항에 있어서,
    상기 가) 단계는 수학식 28;
    Qrj = SI + (상기 Cij의 수신 프로세서 지수 j에 대한 합, j = 1, 2,...,p, j ≠ i )
    <SI : 동기 구간>
    에 의거하여 산출되고,
    상기 나) 단계는 수학식 29;
    Qr = (상기 Qrj 중 송신 프로세서 지수 j에 대한 최대값, i = 1, 2,..,p )
    에 의거하여 산출되며,
    상기 다) 단계는 수학식 30;
    Qtr = max(Rtf, Qr)
    에 의거하여 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  15. 제 8 항에 있어서,
    상기 b-5) 단계는, 하나의 통신 순서 지수 n에 대하여 실시간 통신 순서로써, 송신 프로세서 i의 k번째 실시간 시간 간격에서의 수신 프로세서 Rdik를 결정하는 제1 과정;
    Rdik의 각 k에 대한 수신 데이터의 시작시간을 확인하여 순서대로 정렬하는 제2 과정;
    통신순서 n에서의 각 수신 프로세서 j가 실시간 수신을 완료하는 시간 Rrfjn을 계산하는 제3 과정; 및
    통신순서 n에서의 모든 수신 프로세서가 실시간 수신을 완료하는 시간 Rrfn을 모든 프로세서가 실시간 수신을 완료하는 시간(Rrfjn)의 최대값(Rrfn)으로 설정하는 제 4 과정으로 이루어지며, 상기 제1 과정 내지 제4 과정을 반복하되;
    상기 최대값(Rrfn)이 최소 실시간 송수신 요구 시간 Qtr과 같다면 이 값을 모든 수신 프로세서가 실시간 수신을 완료하는 최소 시간 Rrf로 설정하고, 통신순서지수 n에 대한 반복과정을 탈출하며, 상기 반복과정의 탈출 없이 N 가지의 통신순서에 대하여 계산이 완료되었으면 모든 경우의 수신완료시간 Rrfn 중 최소값으로 Rrf를 결정한 후, 최소에 해당하는 Rdik를 저장하고;
    상기 b-6) 단계는 수학식 31;
    RTI = Rtf - SI
    에 의거 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  16. 제 4 항 또는 제 5 항에 있어서,
    상기 c)단계는 c-1) 비실시간 구간(NRTI)에 대한 초기값 설정 단계;
    c-2) 프로세서 간 비실시간 통신시간 산출 단계;
    c-3) 프로세서 간 비실시간 송신 완료 시간 산출 단계;
    c-4) 최소 비실시간 수신 요구 시간 산출 단계;
    c-5) 비실시간 통신순서 및 비실시간 수신 완료 시간 산출 단계; 및
    c-6) 비실시간 시간 구간(NRTI)의 크기 값을 산출하는 단계로 구성되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  17. 제 16 항에 있어서,
    상기 c-1) 단계에서 상기 NRTI의 초기값은, 송수신 프로세서의 개수 : p (개), 프레임 구간 : FI(sec), 동기 구간 : SI(ms), 이더넷 속도 : X(Mbps), 이더넷 통신 주기 : P(ms), 각 송신 프로세서 i가 실시간 송신을 완료하는 시간 : Rtfi, 각 수신 프로세서 j가 실시간 수신을 완료하는 시간 : Rrfj, 송신 프로세서 i에서 수신 프로세서 j로의 비실시간 이더넷 전송량 : Bij (Bytes)을 포함하는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  18. 제 16 항에 있어서,
    상기 c-2) 단계는 송신 프로세서 i에서 수신 프로세서 j로 전송되어야 할 통신시간 Gij를 계산하는 것으로, 수학식 32;
    Gij = (FI/P) * Bij * 8 / (1000 * X) (ms)
    < P : 송수신 프로세서의 개수(개), FI : 프레임 구간(sec), X : 이더넷 속도(Mbps), Bij : 송신 프로세서 i에서 수신 프로세서 j로의 비실시간 이더넷 전송량>
    에 의해 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  19. 제 16 항에 있어서,
    상기 c-3) 단계는 가) 각 송신 프로세서 i가 비실시간 송신을 시작하는 시간을 Rtfi로 설정하는 단계;
    나) 각 송신 프로세서 i가 비실시간 송신을 완료하는 시간 Ntfi를 계산하는 단계;
    다) 모든 송신 프로세서의 비실시간 송신 완료 시간 Ntf를 계산하는 단계로 이루어진 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  20. 제 19 항에 있어서,
    상기 나) 단계는 수학식 33;
    Ntfi = Rtfi + (Gij의 수신 프로세서 지수 j에 대한 합, j = 1, 2,...,p, j ≠ i )
    <Gij : 송신 프로세서 i에서 수신 프로세서 j로 전송되어야 할 통신시간>
    에 의거 산출되며,
    상기 다) 단계는 수학식 34;
    Ntf = (Ntfi 중 송신 프로세서 지수 i에 대한 최대값, i = 1, 2,...,p )
    에 의거 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  21. 제 16 항에 있어서,
    상기 c-4) 단계는, 가) 각 수신 프로세서의 최소 비실시간 수신 요구 시간 Lrj 를 계산하는 단계;
    나) 모든 프로세서의 최소 비실시간 수신 요구 시간 Lr을 계산하는 단계;
    다) 모든 프로세서의 최소 비실시간 송신 요구 시간 Lt을 계산하는 단계; 및
    라) 최소 비실시간 송수신 요구 시간 Ltr을 계산하는 단계로 이루어진 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  22. 제 21 항에 있어서,
    상기 가) 단계는 수학식 35;
    Lrj = Rrfj + (Gij의 송신 프로세서 지수 i에 대한 합, i = 1, 2,...,p, i ≠ j )
    <Gij : 송신 프로세서 i에서 수신 프로세서 j로 전송되어야 할 통신시간, Rrfj : 수신 프로세서 j가 실시간 수신을 완료하는 시간>
    에 의거 산출되고;
    상기 나) 단계는 수학식 36;
    Lr = (Lrj 중 수신 프로세서 지수 j에 대한 최대값, j = 1, 2,...,p )
    에 의거 산출되며;
    상기 다) 단계는 수학식 37;
    Lt = (Ltj 중 수신 프로세서 지수 j에 대한 최대값, j = 1, 2,...,p )
    에 의거 산출되며;
    상기 라) 단계는 수학식 38;
    Ltr = max(Lt, Lr)
    에 의거 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  23. 제 16 항에 있어서,
    상기 c-5) 단계는 하나의 통신 순서 지수 n에 대하여 비실시간 통신 순서로써, 송신 프로세서 i의 k번째 실시간 시간 간격에서의 수신 프로세서 Ndik를 결정하는 제1 과정;
    상기 Ndik의 각 k에 대한 수신 데이터의 시작시간을 확인하여 순서대로 정렬하는 제 2 과정;
    통신순서 n에서의 각 수신 프로세서가 비실시간 수신을 완료하는 시간 Nrfjn을 계산하는 제3 과정; 및
    통신순서 n에서의 모든 수신 프로세서가 비실시간 수신을 완료하는 시간 Nrfn을 모든 프로세서가 비실시간 수신을 완료하는 시간으로, 각 프로세서의 비실시간 수신완료 시간 Nrfjn들의 최대값으로 설정하는 제4 과정을 반복하되;
    상기 Nrfn가 최소 비실시간 송수신 요구 시간 Ltr와 같다면 모든 수신 프로세서가 비실시간 수신을 완료하는 최소 시간 Nrf로 설정하고, 통신순서지수 n에 대한 반복 과정을 탈출하고;
    탈출 없이 N 가지의 통신순서에 대하여 계산이 완료되었으면 모든 경우의 수신완료시간 상기 Nrfn의 최소값으로 Nrf를 결정한 후, 최소에 해당하는 Ndik를 통신 순서로 상정하며;
    상기 c-6) 단계는 수학식 39;
    NRTI = Nrf - RTI - SI
    에 근거하여 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  24. 제 5 항에 있어서,
    상기 d) 단계는 d-1) 통신량 확장을 위한 초기값을 설정하는 단계;
    d-2) 시간구간 조정비율(Scale)을 산출하는 단계;
    d-3) 상기 d-2) 단계의 시간구간 조정비율 값이 '1' 보다 크거나 같을 경우, 실시간, 비실시간 시간간격을 확장하는 단계; 및
    d-4) 상기 d-2) 단계의 시간구간 조정비율 값이 '1' 보다 작을 경우, 비실시간 구간을 재결정하는 단계로 이루어진 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  25. 제 24 항에 있어서,
    상기 d-1) 단계의 초기값은 프레임 구간 : FI(ms)과, 동기 구간 : SI(ms)과, 각 송신 프로세서 i가 비실시간 송신을 완료하는 시간 : Ntfi과, 각 수신 프로세서 j가 비실시간 수신을 완료하는 시간 : Nrfj과, 송신 프로세서 i에서 수신 프로세서 j로의 실시간 통신 시간 간격 : Cij(Bytes)과, 송신 프로세서 i에서 수신 프로세서 j로의 비실시간 통신 시간 간격 : Gij(Bytes)을 포함하는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  26. 제 24 항 또는 제 25 항에 있어서,
    상기 d-2) 단계는 수학식 40;
    Scale = min( (FI - SI)/(Ntfi - SI), (FI - SI)/(Nrfi - SI) )
    에 따라 시간구간 조정비율이 결정되고;
    상기 d-3) 단계의 실시간 구간의 통신시간 간격 확장은 수학식 41;
    Cij'= Scale * Cij
    <Cij' : 실시간 구간의 통신 시간 간격, Scale : 시간 구간 조정비율(scale factor), Cij : 송신 프로세서 i에서 수신 프로세서 j로의 실시간 통신 시간 간격>
    에 따라 산출되며;
    상기 d-3) 단계의 비실시간 구간의 통신시간 간격 확장은 수학식 42;
    Gij'= Scale * Gij
    <Gij' : 비실시간 구간의 통신 시간 간격, Scale : 시간 구간 조정비율(scale factor), Gij : 송신 프로세서 i에서 수신 프로세서 j로의 비실시간 통신 시간 간격>
    에 따라 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  27. 제 4 항에 있어서,
    상기 d) 단계는 d-1) 최소 프레임 구간을 결정하기 위한 초기값을 설정하는 단계;
    d-2) 시간구간 조정비율(Scale)을 산출하는 단계;
    d-3) 상기 d-2) 단계의 시간구간 조정비율 값이 '1' 보다 크거나 같을 경우, 최소 프레임 구간(MFI : Minimum Frame Interval)을 산출하는 단계; 및
    d-4) 상기 d-2) 단계의 시간구간 조정비율 값이 '1' 보다 작을 경우, 상기 프레임 구간(FI)를 재설정하는 단계로 이루어진 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  28. 제 27 항에 있어서,
    상기 d-1) 단계의 초기값은 프레임 구간 : FI(ms)과, 동기 구간 : SI(ms)과, 실시간 구간 : RTI(ms)과, 비실시간 구간 : NRTI(ms)과, 각 송신 프로세서 i가 비실시간 송신을 완료하는 시간 : Ntfi과, 각 수신 프로세서 j가 비실시간 수신을 완료하는 시간 : Nrfj을 포함하는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
  29. 제 27 항 또는 제 28 항에 있어서,
    상기 d-2) 단계는 수학식 43;
    Scale = min( (FI - SI)/(Ntfi - SI), (FI - SI)/(Nrfi - SI) )
    에 따라 시간구간 조정비율이 결정되고;
    상기 d-3) 단계의 최소 프레임 구간(MFI) 설정은 수학식 44;
    MFI = SI + RTI + NRTI
    에 따라 산출되는 것을 특징으로 하는 이더넷 스위치의 통신 프레임 구조를 이용한 실시간 다중 프로세서 통신 방법.
KR1020080065512A 2008-07-07 2008-07-07 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법 KR100977988B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080065512A KR100977988B1 (ko) 2008-07-07 2008-07-07 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080065512A KR100977988B1 (ko) 2008-07-07 2008-07-07 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법

Publications (2)

Publication Number Publication Date
KR20100005471A KR20100005471A (ko) 2010-01-15
KR100977988B1 true KR100977988B1 (ko) 2010-08-26

Family

ID=41814851

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080065512A KR100977988B1 (ko) 2008-07-07 2008-07-07 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법

Country Status (1)

Country Link
KR (1) KR100977988B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101645260B1 (ko) * 2015-01-16 2016-08-04 한국로봇융합연구원 복수의 제어기간의 정밀한 시간 기록을 포함하는 데이터 동기화 시스템 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050108932A (ko) * 2004-05-14 2005-11-17 삼성전자주식회사 동기화 이더넷에서의 데이터 프레임 구성 방법 및 그에따른 데이터 처리 방법
KR20070005242A (ko) * 2005-07-05 2007-01-10 삼성전자주식회사 레지덴셜 이더넷에서 고속 이더넷을 수용하는 전송 사이클설정방법
KR20080055201A (ko) * 2006-12-14 2008-06-19 주식회사 케이티 동기식 이더넷에서 비실시간 트래픽 전송 제어 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050108932A (ko) * 2004-05-14 2005-11-17 삼성전자주식회사 동기화 이더넷에서의 데이터 프레임 구성 방법 및 그에따른 데이터 처리 방법
JP2005328545A (ja) 2004-05-14 2005-11-24 Samsung Electronics Co Ltd 同期化イーサネットでのデータフレーム構成方法、データ処理方法及びイーサネット装置
KR20070005242A (ko) * 2005-07-05 2007-01-10 삼성전자주식회사 레지덴셜 이더넷에서 고속 이더넷을 수용하는 전송 사이클설정방법
KR20080055201A (ko) * 2006-12-14 2008-06-19 주식회사 케이티 동기식 이더넷에서 비실시간 트래픽 전송 제어 방법

Also Published As

Publication number Publication date
KR20100005471A (ko) 2010-01-15

Similar Documents

Publication Publication Date Title
CN102726009B (zh) 一种数据流交换控制方法及相关设备
US4962498A (en) Multi-length packet format including check sequence(s)
US9036654B2 (en) Packet sharing data transmission system and relay to lower latency
CN108282415A (zh) 一种调度方法及设备
US9473599B2 (en) High payload data packet transmission system and relay to lower latency
US8964739B1 (en) Self-healing data transmission system and method to achieve deterministic and lower latency
US7496033B2 (en) Method for dynamically computing a switching schedule
CN114422448A (zh) 一种时间敏感网络流量整形方法
CN110870285A (zh) 在具有部分实时需求的数据网络中高性能数据传输的方法和执行该方法的装置
JPS62249545A (ja) 自動交換装置
CN109921972B (zh) 数据包传输和/或接收的方法
US8929216B2 (en) Packet scheduling method and apparatus based on fair bandwidth allocation
CN115714749A (zh) 端到端的数据确定方法、装置、系统及电子设备
CN101176318A (zh) 集成电路和集成电路上的网络中的判优方法
JP4546138B2 (ja) 通信ネットワークにおいてデータのバーストを送信用にスケジューリングする方法
KR100977988B1 (ko) 이더넷 스위치의 통신 프레임 구조를 갖는 통신 장치 및 이를 이용한 실시간 다중 프로세서 통신 방법
JP6152425B2 (ja) リアルタイムメッセージの送信方法およびリアルタイムメッセージを送信するためのコンピュータネットワーク
US11196584B2 (en) Network layer channel bonding
CN114401227A (zh) 一种数据转发方法及装置
CN106788863A (zh) 一种支持子网时间触发通信的航空电子wdm网络管理仿真系统
EP4239959A1 (en) Converged avionics data network
Zhu et al. A new scheduling scheme for resilient packet ring networks with single transit buffer
CN117834555A (zh) 一种面向分段路由的时隙化循环多队列调度方法
WO2024039922A1 (en) Network layer channel bonding with an external device
Ayed Analysis and optimiozation of heterogeneous avionics networks

Legal Events

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

Payment date: 20130730

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140724

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee