KR101341413B1 - Serial to ethernet gateway apparatus and method thereof - Google Patents

Serial to ethernet gateway apparatus and method thereof Download PDF

Info

Publication number
KR101341413B1
KR101341413B1 KR1020100034986A KR20100034986A KR101341413B1 KR 101341413 B1 KR101341413 B1 KR 101341413B1 KR 1020100034986 A KR1020100034986 A KR 1020100034986A KR 20100034986 A KR20100034986 A KR 20100034986A KR 101341413 B1 KR101341413 B1 KR 101341413B1
Authority
KR
South Korea
Prior art keywords
data packet
buffer
group
information
serial interface
Prior art date
Application number
KR1020100034986A
Other languages
Korean (ko)
Other versions
KR20110037819A (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 US12/898,787 priority Critical patent/US8537844B2/en
Publication of KR20110037819A publication Critical patent/KR20110037819A/en
Application granted granted Critical
Publication of KR101341413B1 publication Critical patent/KR101341413B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6245Modifications to standard FIFO or LIFO

Abstract

본 발명의 실시예에 따른 시리얼-이더넷 게이트웨이 장치는, 이더넷 인터페이스를 통해 수신한 데이터 패킷의 특성을 파악하여 데이터 패킷이 저장될 버퍼를 선택하고, 선택된 버퍼에 데이터 패킷을 저장하는 버퍼 관리부; 정해진 정책에 따라 버퍼로부터 데이터 패킷을 추출하는 패킷 스케줄러; 추출된 데이터 패킷의 목적지 주소를 파악하여 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 획득하는 패킷 분배부; 및 시리얼 인터페이스 정보를 기반으로 추출된 데이터 패킷을 해당 시리얼 인터페이스를 통해 타겟 장치로 전송하는 시리얼 통신부를 구비한다.A serial-Ethernet gateway device according to an embodiment of the present invention, the buffer management unit for identifying the characteristics of the data packet received through the Ethernet interface to select a buffer to store the data packet, and stores the data packet in the selected buffer; A packet scheduler for extracting a data packet from a buffer according to a predetermined policy; A packet distribution unit for identifying a destination address of the extracted data packet and acquiring serial interface information on at least one target device to which the extracted data packet is to be transmitted; And a serial communication unit configured to transmit the extracted data packet based on the serial interface information to the target device through the corresponding serial interface.

Description

시리얼-이더넷 게이트웨이 장치 및 그 방법{Serial to ethernet gateway apparatus and method thereof}Serial-Ethernet gateway apparatus and method

본 발명은 IP 멀티캐스팅을 위한 시리얼-이더넷 게이트웨이 장치 및 그 방법에 관한 것이다. 보다 상세하게는, 시리얼 인터페이스를 통해 IP 멀티캐스팅 데이터를 효과적으로 전송할 수 있도록 하는 게이트웨이 장치 및 그 방법에 관한 것이다.The present invention relates to a serial-Ethernet gateway device for IP multicasting and a method thereof. More particularly, the present invention relates to a gateway device and a method for effectively transmitting IP multicasting data through a serial interface.

본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호:09IS1230, 과제명:IT기반 선박용 토탈 솔루션 개발].The present invention is derived from the research conducted as part of the IT growth engine technology development project of the Ministry of Knowledge Economy [Task management number: 09IS1230, Task name: Development of IT-based total solution for ships].

선박 내의 항해 장치 및 센서들과 같은 많은 선박 장치들은 RS485와 같은 시리얼 인터페이스를 통해 NMEA 0183과 같은 ASCII 기반의 메시지 교환을 수행하는 통신 메커니즘을 통해 정보를 교환한다.Many ship devices, such as navigational devices and sensors on board, exchange information through a communication mechanism that performs ASCII-based message exchange, such as NMEA 0183, via a serial interface such as RS485.

하지만, 최근에 e-navigation과 같은 새로운 패러다임의 등장으로 인해, 선박 내의 장치들 간에 교환되는 정보량이 증대됨에 따라 저속의 시리얼 인터페이스(Serial interface) 대신 100Mbps 이상의 고속의 이더넷 인터페이스(Ethernet interface) 사용이 증대되고 있다.However, with the recent emergence of new paradigms such as e-navigation, the amount of information exchanged between devices in ships has increased, so the use of high-speed Ethernet interfaces of 100 Mbps or more instead of low-speed serial interfaces has increased. It is becoming.

따라서, 고속의 이더넷 인터페이스와 저속의 시리얼 인터페이스 간, 그리고 인터넷 기반 프로토콜과 NMEA 0183기반의 프로토콜 사이의 변환 역할을 수행하는 이더넷-시리얼 게이트웨이에 대한 중요성이 증대되고 있다.Therefore, the importance of an Ethernet-serial gateway that serves as a translation between a high speed Ethernet interface and a low speed serial interface, and between an Internet based protocol and a NMEA 0183 based protocol is increasing.

시리얼 인터페이스 기반의 선박 항해 장치에서는 기본적으로 하나의 선박 장치에서 필요한 정보를 획득하기 위하여 정보를 원하는 장치들이 정보를 제공하는 장치들과 일대일 연결을 통해 정보를 획득하게 된다.In a ship navigation apparatus based on a serial interface, in order to acquire necessary information from a single ship apparatus, devices that want information acquire the information through a one-to-one connection with devices providing the information.

이것은 하나의 장치에서 N개의 장치로 정보를 전달하기 위해서는 N개의 시리얼 인터페이스가 제공되어야 함을 의미한다. 다시 말해, 동일한 데이터를 N개의 시리얼 인터페이스에 복사해서 제공하여야만 했다.This means that N serial interfaces must be provided to transfer information from one device to N devices. In other words, the same data had to be copied and provided to the N serial interfaces.

하지만, 이러한 1:N 통신 방식은 이더넷 기반의 IP 네트워크에서는 IP 멀티캐스팅으로 쉽게 해결할 수 있다. 즉, 특정 정보를 원하는 장치들을 하나의 그룹으로 묶고, 동일한 그룹에 속한 장치들이 하나의 IP 멀티캐스팅 주소를 공유하게 되면, 단 한번의 전송으로 동일한 IP 멀티캐스팅 주소를 가지고 있는 장치들 간에 정보의 교환이 이루어진다.However, this 1: N communication method can be easily solved by IP multicasting in an Ethernet-based IP network. That is, when devices that want specific information are grouped into a group, and devices belonging to the same group share an IP multicasting address, information is exchanged between devices having the same IP multicasting address in a single transmission. This is done.

그러나, 일반적으로 선박 내에서의 네트워크에서는 모든 장치들이 동일한 서브 넷에 연결되어 있기 때문에, IP 멀티캐스팅을 수행하게 되면, 브로드캐스팅과 마찬가지로 동일한 네트워크에 있는 모든 장치들이 동일한 자료를 수신하게 된다.In general, however, since all devices are connected to the same subnet in a network in a ship, when IP multicasting is performed, all devices in the same network receive the same data as in broadcasting.

특히, 다수의 장치와 시리얼 인터페이스를 통해 연결된 시리얼-이더넷 게이트웨이 장치에서 특별한 필터링 메커니즘을 제공하지 않는다면, 모든 시리얼 인터페이스를 통해 모든 장치에게 자료를 전송하게 된다. 이것은 불필요한 장치에게 정보를 전송하는 것이기 때문에 오버헤드가 발생시키며, 이로 인해 전송 효율이 저하된다.In particular, unless a special filtering mechanism is provided by a serial-Ethernet gateway device connected through multiple devices and serial interfaces, data is transmitted to all devices through all serial interfaces. This incurs overhead because it transmits information to unnecessary devices, which reduces transmission efficiency.

한편, 항해 정보들 가운데에는 순차적으로 수신되어야 하는 정보도 있지만, 다수의 항해 정보들은 주기적으로 전송되는 정보이므로 항상 신뢰성 있고 순차적인 정보를 요구하지 않는다.On the other hand, some of the navigation information that must be received sequentially, but since the plurality of navigation information is transmitted periodically does not always require reliable and sequential information.

특히, 저속의 시리얼 인터페이스를 통해 정보를 전달하게 될 때, 고속의 이더넷 인터페이스를 통해 많은 양의 정보의 수신으로 인해 버퍼가 오버플로우가 발생할 때 중요하다. 이런 항해 정보의 경우에는 이전에 전송된 항해 정보보다는 최신의 정보가 안전하게 제공되어야만 한다. 하지만, 단순한 LIFO(Last-In-First-Out)방식의 큐잉 방식은 오래된 항해 정보가 최신의 항해 정보보다 후에 전송될 수 있기 때문에 적합하지 못하다.In particular, when transferring information through a low speed serial interface, it is important when the buffer overflows due to receiving a large amount of information through the high speed Ethernet interface. In the case of such navigational information, up-to-date information must be provided safely rather than previously transmitted navigational information. However, the simple last-in-first-out queuing method is not suitable because old navigation information may be transmitted later than the latest navigation information.

본 발명은 상기한 바와 같은 문제점을 해결하기 위해 제안된 것으로서,The present invention has been proposed to solve the above problems,

본 발명은 고속의 이더넷 인터페이스와 저속의 시리얼 인터페이스를 연결하는 게이트웨이 장치에서, 이더넷을 통하여 수신한 항해 정보를 시리얼 인터페이스를 통해 타겟 장치로 효과적으로 전송하기 위한 그룹 관리 및 버퍼 관리 방법을 제공하는 것을 목적으로 한다.An object of the present invention is to provide a group management and buffer management method for effectively transmitting navigation information received through Ethernet to a target device through a serial interface in a gateway device connecting a high speed Ethernet interface and a low speed serial interface. do.

본 발명의 실시예에 따른 게이트웨이 장치는, 이더넷 인터페이스를 통해 수신한 데이터 패킷의 특성을 파악하여 상기 데이터 패킷이 저장될 버퍼를 선택하고, 선택된 버퍼에 상기 데이터 패킷을 저장하는 버퍼 관리부; 정해진 정책에 따라 상기 버퍼로부터 데이터 패킷을 추출하는 패킷 스케줄러; 상기 추출된 데이터 패킷의 목적지 주소를 파악하여 상기 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 획득하는 패킷 분배부; 및 상기 시리얼 인터페이스 정보를 기반으로 상기 추출된 데이터 패킷을 해당 시리얼 인터페이스를 통해 상기 타겟 장치로 전송하는 시리얼 통신부를 구비한다.According to an embodiment of the present invention, a gateway device may include: a buffer manager configured to determine characteristics of a data packet received through an Ethernet interface, select a buffer to store the data packet, and store the data packet in the selected buffer; A packet scheduler for extracting a data packet from the buffer according to a predetermined policy; A packet distribution unit which obtains serial interface information on at least one target device to which the extracted data packet is to be transmitted by identifying a destination address of the extracted data packet; And a serial communication unit configured to transmit the extracted data packet to the target device through the serial interface based on the serial interface information.

특히, 상기 추출된 데이터 패킷의 목적지 주소에 대응되는 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보와, 상기 그룹에 포함된 각 타겟 장치에 대응되는 시리얼 인터페이스 정보를 관리하는 그룹 관리부를 더 구비하는 것을 특징으로 한다.In particular, the apparatus further includes a group manager configured to manage group information on a group consisting of a plurality of target devices corresponding to a destination address of the extracted data packet and serial interface information corresponding to each target device included in the group. It is characterized by.

또한, 상기 그룹 관리부는, 시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들로부터 수신되는 메시지를 스누핑하여 상기 그룹 정보를 설정하는 것을 특징으로 한다.The group manager may set the group information by snooping messages received from target devices connected through a serial interface.

또한, 상기 그룹 관리부는, 시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들의 특성에 따라 상기 그룹 정보를 설정하는 것을 특징으로 한다.The group manager may set the group information according to characteristics of target devices connected through a serial interface.

또한, 상기 버퍼 관리부는, 이더넷 인터페이스를 통해 수신한 데이터 패킷의 특성을 파악함에 있어서, 상기 데이터 패킷의 목적지 IP 주소, UDP 또는 TCP 포트번호를 이용하는 것을 특징으로 한다.The buffer manager may use a destination IP address, a UDP, or a TCP port number of the data packet when determining a characteristic of the data packet received through the Ethernet interface.

또한, 상기 시리얼 인터페이스는, NMEA 0183 기반의 시리얼 인터페이스인 것을 특징으로 한다.The serial interface may be a NMEA 0183 based serial interface.

또한, 상기 버퍼 관리부는, 상기 데이터 패킷의 특성에 따라 덮어쓰기가 가능한(over-writable) 버퍼 또는 덮어쓰기가 불가능한(non-over-writable) 버퍼에 상기 데이터 패킷을 저장하는 것을 특징으로 한다.The buffer manager may store the data packet in an over-writable buffer or a non-over-writable buffer according to the characteristics of the data packet.

또한, 상기 덮어쓰기가 불가능한 버퍼는 FIFO(first-in-first-out) 형태로 구현되는 것을 특징으로 한다.In addition, the non-overwrite buffer may be implemented in the form of first-in-first-out (FIFO).

또한, 상기 버퍼 관리부는, 상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 목적지 IP 주소, UDP 포트번호, TCP 포트번호, 및 송신단 주소 중 하나 이상을 이용하여 버퍼의 개수를 설정하고 유지하는 것을 특징으로 한다.The buffer manager may set and maintain the number of buffers using one or more of a destination IP address, a UDP port number, a TCP port number, and a sender address in storing the data packet in the overwriteable buffer. Characterized in that.

또한, 상기 버퍼 관리부는, 상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 저장 시간에 대한 정보를 포함시켜 저장하는 것을 특징으로 한다.In addition, the buffer management unit, in storing the data packet in the overwrite buffer, characterized in that for storing the information on the storage time.

또한, 상기 버퍼 관리부는, 상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 해당 버퍼에 이미 동일한 종류의 데이터 패킷이 존재하는 경우, 기존 데이터 패킷을 새로 수신한 데이터 패킷으로 대체하여 저장하는 것을 특징으로 한다.The buffer manager may be configured to replace the existing data packet with a newly received data packet when the same type of data packet already exists in the buffer. It is characterized by.

또한, 상기 패킷 스케줄러는, 상기 덮어쓰기가 가능한 버퍼로부터 데이터 패킷을 추출할 때, 함께 저장된 저장 시간에 대한 정보를 이용하여 가장 이전에 저장된 데이터 패킷을 우선적으로 추출하는 것을 특징으로 한다.
In addition, the packet scheduler, when extracting the data packet from the overwriteable buffer, it is characterized in that the first to extract the previously stored data packet using the information on the stored time stored together.

한편, 본 발명의 게이트웨이 장치에서의 통신 방법은, 이더넷 인터페이스를 통해 데이터 패킷을 수신하는 단계; 상기 수신한 데이터 패킷의 특성을 파악하여 상기 데이터 패킷이 저장될 버퍼를 선택하는 단계; 상기 선택된 버퍼에 상기 데이터 패킷을 저장하는 단계; 정해진 정책에 따라 상기 버퍼로부터 데이터 패킷을 추출하는 단계; 상기 추출된 데이터 패킷의 목적지 주소를 파악하여 상기 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 획득하는 단계; 및 상기 시리얼 인터페이스 정보를 기반으로 상기 추출된 데이터 패킷을 해당 시리얼 인터페이스를 통해 상기 타겟 장치로 전송하는 단계를 포함한다.On the other hand, the communication method in the gateway device of the present invention, the step of receiving a data packet through the Ethernet interface; Identifying a characteristic of the received data packet and selecting a buffer to store the data packet; Storing the data packet in the selected buffer; Extracting a data packet from the buffer according to a predetermined policy; Determining a destination address of the extracted data packet to obtain serial interface information for at least one target device to which the extracted data packet is to be transmitted; And transmitting the extracted data packet to the target device through the corresponding serial interface based on the serial interface information.

특히, 상기 추출된 데이터 패킷의 목적지 주소에 대응되는 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보와, 상기 그룹에 포함된 각 타겟 장치에 대응되는 시리얼 인터페이스 정보를 관리하는 단계를 더 포함하는 것을 특징으로 한다.In particular, the method further includes managing group information on a group consisting of a plurality of target devices corresponding to a destination address of the extracted data packet and serial interface information corresponding to each target device included in the group. It features.

또한, 상기 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보를 관리하는 단계는, 시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들로부터 수신되는 메시지를 스누핑하여 상기 그룹 정보를 설정하는 단계를 포함하는 것을 특징으로 한다.The managing of the group information on the group consisting of the plurality of target devices may include setting the group information by snooping a message received from the target devices connected through a serial interface. It is done.

또한, 상기 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보를 관리하는 단계는, 시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들의 특성에 따라 상기 그룹 정보를 설정하는 단계를 포함하는 것을 특징으로 한다.The managing of the group information on the group consisting of the plurality of target devices may include setting the group information according to the characteristics of the target devices connected through the serial interface.

또한, 상기 수신한 데이터 패킷의 특성을 파악하는 단계는, 상기 데이터 패킷의 목적지 IP 주소, UDP 또는 TCP 포트번호를 이용하는 것을 특징으로 한다.The determining of the characteristics of the received data packet may include using a destination IP address, UDP, or TCP port number of the data packet.

또한, 상기 데이터 패킷이 저장될 버퍼는, 덮어쓰기가 가능한(over-writable) 버퍼 또는 덮어쓰기가 불가능한(non-over-writable) 버퍼인 것을 특징으로 한다.In addition, the buffer in which the data packet is to be stored is an over-writable buffer or a non-over-writable buffer.

또한, 상기 덮어쓰기가 불가능한 버퍼는 FIFO(first-in-first-out) 형태로 구현되는 것을 특징으로 한다.In addition, the non-overwrite buffer may be implemented in the form of first-in-first-out (FIFO).

또한, 상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 저장 시간에 대한 정보를 포함시켜 저장하는 것을 특징으로 한다.In addition, when storing the data packet in the overwriteable buffer, the information on the storage time is included and stored.

본 발명에 의하면 다음과 같은 효과가 있다.The present invention has the following effects.

이더넷을 통하여 수신한 항해 정보를 시리얼 인터페이스를 통해 타겟 장치로 효과적으로 전송하기 위한 그룹 관리 및 버퍼 관리 방법을 제공해줌으로써, 간단하면서도 효과적인 선박 통신 시스템을 구현하는 것이 가능해진다.By providing a group management and buffer management method for effectively transmitting the navigation information received through the Ethernet to the target device through the serial interface, it is possible to implement a simple and effective ship communication system.

도 1은 본 발명의 실시예에 따른 시리얼-이더넷 게이트웨이 장치의 구성을 구체적으로 설명하기 위한 블럭도이다.
도 2는 본 발명에 따른 버퍼 관리부에서 덮어쓰기 가능한 버퍼를 관리하기 위한 기본적인 데이터 구조를 나타내고 있다.
도 3은 본 발명의 실시예에 따른 시리얼-이더넷 게이트웨이 장치에서의 데이터 처리 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 실시예에 따른 패킷 스케줄러에서 덮어쓰기 가능한 버퍼로부터 데이터 패킷을 추출하는 과정과 패킷 분배부에서 데이터 패킷을 처리하는 과정을 설명하기 위한 흐름도이다.
1 is a block diagram for explaining in detail the configuration of a serial-Ethernet gateway device according to an embodiment of the present invention.
2 shows a basic data structure for managing an overwriteable buffer in the buffer management unit according to the present invention.
3 is a flowchart illustrating a data processing method in a serial-Ethernet gateway device according to an embodiment of the present invention.
4 is a flowchart illustrating a process of extracting a data packet from an overwriteable buffer in the packet scheduler and a process of processing the data packet in the packet distributor according to an exemplary embodiment of the present invention.

본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
The present invention will now be described in detail with reference to the accompanying drawings. Hereinafter, a repeated description, a known function that may obscure the gist of the present invention, and a detailed description of the configuration will be omitted. Embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. Accordingly, the shapes and sizes of the elements in the drawings and the like can be exaggerated for clarity.

도 1은 본 발명의 실시예에 따른 시리얼-이더넷 게이트웨이 장치의 구성을 구체적으로 설명하기 위한 블럭도이다.1 is a block diagram for explaining in detail the configuration of a serial-Ethernet gateway device according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 시리얼-이더넷 게이트웨이 장치는 하나 이상의 이더넷 인터페이스와 하나 이상의 시리얼 인터페이스를 지원하고 있다. 이때, 게이트웨이 장치에서 고속의 이더넷 인터페이스를 통해 수신된 정보를 저속의 시리얼 인터페이스를 통해 송신하기 위해서는 버퍼링(buffering)이 필요하며 이로 인한 지연시간이 발생한다.Referring to FIG. 1, the serial-Ethernet gateway device of the present invention supports one or more Ethernet interfaces and one or more serial interfaces. In this case, in order to transmit the information received through the high speed Ethernet interface through the low speed serial interface, the gateway device requires buffering, which causes a delay time.

이를 처리하기 위해 본 발명의 게이트웨이 장치는, 이더넷 패킷 처리부(110), 버퍼 관리부(120), 버퍼(130), 패킷 스케줄러(140), 패킷 분배부(150), 그룹 관리부(160), 및 시리얼 통신부(170)를 구비한다.In order to process this, the gateway device of the present invention includes an Ethernet packet processor 110, a buffer manager 120, a buffer 130, a packet scheduler 140, a packet distributor 150, a group manager 160, and a serial device. The communication unit 170 is provided.

이더넷 패킷 처리부(110)는 이더넷 인터페이스(105)를 통해 데이터 패킷(IP 패킷)을 수신하고, 수신한 데이터 패킷을 정해진 프로토콜에 따라 처리하여 버퍼 관리부(120)에 전달한다.The Ethernet packet processor 110 receives a data packet (IP packet) through the Ethernet interface 105, processes the received data packet according to a predetermined protocol, and transmits the received data packet to the buffer manager 120.

버퍼 관리부(120)는 이더넷 인터페이스를 통해 수신한 데이터 패킷의 특성을 파악하여 데이터 패킷이 저장될 버퍼를 선택하고, 선택된 버퍼에 수신한 데이터 패킷을 저장한다.The buffer manager 120 determines the characteristics of the data packet received through the Ethernet interface, selects a buffer to store the data packet, and stores the received data packet in the selected buffer.

보다 상세하게는, 버퍼 관리부(120)는 이더넷 패킷 처리부(110)로부터 전달받은 데이터 패킷의 목적지 주소[예를 들면, 목적지 IP (멀티캐스팅) 주소], UDP 또는 TCP 포트번호를 이용하여 데이터 패킷의 특성을 파악하고, 그 특성에 따라 덮어쓰기가 가능한(over-writable) 버퍼(132) 또는 덮어쓰기가 불가능한(non-over-writable) 버퍼(134)에 데이터 패킷을 저장한다. 즉, 덮어쓰기가 가능한 데이터 패킷인 경우에는 덮어쓰기 가능한 버퍼(132)에 데이터 패킷을 저장하고, 덮어쓰기가 불가능한 데이터 패킷인 경우에는 덮어쓰기 불가능한 버퍼(134)에 데이터 패킷을 저장한다. 이때 버퍼 관리부(120)는 덮어쓰기 가능한 버퍼에 데이터 패킷을 저장할 때, 목적지 IP 주소, UDP 포트번호, 및 송신단 주소 등을 이용하여 덮어쓰기 가능한 버퍼(132)의 개수를 설정하고 유지한다.In more detail, the buffer manager 120 uses the destination address (eg, destination IP (multicasting) address), UDP, or TCP port number of the data packet received from the Ethernet packet processor 110 to determine the data packet. The characteristics are identified and data packets are stored in an over-writable buffer 132 or a non-over-writable buffer 134 according to the characteristics. In other words, the data packet is stored in the overwritable buffer 132 in the case of the overwriteable data packet, and the data packet is stored in the non overwriteable buffer 134 in the case of the nonoverwriteable data packet. In this case, the buffer manager 120 sets and maintains the number of overwriteable buffers 132 using a destination IP address, a UDP port number, and a sender address when storing the data packet in the overwriteable buffer.

버퍼(130)는 두 가지 클래스의 버퍼를 구비한다. 즉, 버퍼(130)는 덮어쓰기가 가능한 버퍼(132) 또는 덮어쓰기가 불가능한 버퍼(134)를 구비하고, 버퍼 관리자(120)의 제어 하에 데이터 패킷을 해당 버퍼에 저장한다.The buffer 130 has two classes of buffers. That is, the buffer 130 includes a buffer 132 that can be overwritten or a buffer 134 that cannot be overwritten, and stores the data packet in the buffer under the control of the buffer manager 120.

덮어쓰기가 가능한 버퍼(132)의 경우에는 크기가 N인 FIFO(First-In-First-Out) 형태의 버퍼로 구현된다.In the case of the overwriteable buffer 132, a buffer having a size of N-first-in-first-out (FIFO) is implemented.

그리고, 덮어쓰기가 불가능한 버퍼(134)의 경우에는 데이터 패킷의 종류에 관계없이 모든 덮어쓰기가 불가능한 데이터 패킷이 하나의 버퍼(134)를 공유한다. 따라서, 버퍼(134)에 데이터가 가득 차게 되면, 이후 버퍼(134)에 도착하는 데이터 패킷은 모두 손실된다.In the case of the non-overwrite buffer 134, all non-overwrite data packets share one buffer 134 regardless of the type of data packet. Therefore, when data is filled in the buffer 134, all data packets arriving at the buffer 134 are lost.

하지만, 덮어쓰기가 가능한 버퍼(132)의 경우에는 항상 크기가 1인 버퍼로 구현되며, 데이터 패킷의 종류(트래픽 클래스)별로 버퍼가 구분된다.However, the overwriteable buffer 132 is always implemented as a buffer having a size of 1, and the buffers are classified according to the type (traffic class) of the data packet.

즉, 덮어쓰기가 가능한 버퍼(132)를 사용하는 데이터 패킷의 종류(트래픽 클래스)가 M개라면, 덮어쓰기 가능한 버퍼의 크기는 M(1*M)개가 된다. 그리고, 덮어쓰기가 가능한 버퍼(132)는 데이터 패킷을 저장할 때 이미 동일한 종류의 데이터 패킷이 존재하는 경우에는 기존 데이터 패킷을 새로 수신한 데이터 패킷으로 대체하여 저장한다. 따라서, 덮어쓰기가 가능한 버퍼(132)의 경우 동일한 종류의 데이터 패킷이 입력되면 항상 이전 데이터가 손실된다.That is, if there are M types of data packets (traffic classes) using the overwritable buffer 132, the size of the overwritable buffer is M (1 * M). When the data packet of the same type already exists when the data packet is stored, the overwrite buffer 132 replaces the existing data packet with a newly received data packet and stores the data packet. Therefore, in the case of the overwriteable buffer 132, when the same type of data packet is input, previous data is always lost.

패킷 스케줄러(140)는 버퍼(130)에 있는 두 가지 클래스의 버퍼(132,134)에서 사전에 정해진 정책에 따라 데이터 패킷을 추출하여 패킷 분배부(150)에 전달한다.The packet scheduler 140 extracts the data packet from the two classes of buffers 132 and 134 in the buffer 130 according to a predetermined policy, and delivers the data packet to the packet distributor 150.

패킷 분배부(150)는 패킷 스케줄러(140)에 의해 추출된 데이터 패킷의 목적지 주소를 파악하여 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 그룹 관리부(160)로부터 획득한다. 그리고, 패킷 분배부(150)는 획득한 시리얼 인터페이스 정보를 이용해 필요한 수만큼 전송할 데이터 패킷을 복사하여 시리얼 통신부(170)에 전달한다.The packet distributor 150 obtains the destination address of the data packet extracted by the packet scheduler 140 and obtains serial interface information about the one or more target devices to which the extracted data packet is transmitted from the group manager 160. The packet distributor 150 copies the data packets to be transmitted as many as necessary using the obtained serial interface information and transmits the data packets to the serial communication unit 170.

즉, 패킷 분배부(150)는 데이터 패킷의 목적지 주소를 파악하여 복수 개의 타겟 장치들로 구성된 그룹(타겟 그룹)에 전송되어야 하는 패킷 인지 여부를 파악한다. 타겟 그룹에 전송되어야 하는 데이터 패킷인 경우, 패킷 분배부(150)는 그룹 관리부(160)으로부터 해당 타겟 그룹에 속해 있는 타겟 장치들에 대한 시리얼 인터페이스 정보를 획득한다. 그리고, 패킷 분배부(150)는 그룹 관리부(160)로부터 획득한 시리얼 인터페이스 정보 및 타겟 장치들로 전송해야할 데이터에 대한 리스트 정보를 시리얼 통신부(170)에 전달한다. 여기서, 타겟 장치는 선박 내에서 항해 정보를 수신하는 항해 장치와 같이 선박 내에 설치되어 있는 장치가 될 수 있으며, 타겟 장치는 본 발명의 게이트웨이 장치와 NMEA 0183 기반의 시리얼 인터페이스를 통해 통신한다.That is, the packet distributor 150 determines the destination address of the data packet to determine whether the packet is to be transmitted to a group (target group) composed of a plurality of target devices. In the case of a data packet to be transmitted to the target group, the packet distributor 150 obtains serial interface information about target devices belonging to the target group from the group manager 160. The packet distributor 150 transmits serial interface information obtained from the group manager 160 and list information about data to be transmitted to the target devices to the serial communication unit 170. Here, the target device may be a device installed in the ship, such as a navigation device for receiving navigation information in the ship, the target device communicates with the gateway device of the present invention through the NMEA 0183 based serial interface.

그룹 관리부(160)는 패킷 스케줄러(140)를 통해 추출된 데이터 패킷의 목적지 주소에 대응되는 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보와, 그 그룹에 속해있는 타겟 장치에 대응되는 각각의 시리얼 인터페이스 정보를 관리한다. 그리고, 패킷 분배부(150)의 요청에 따라 타겟 그룹의 그룹 정보 및 시리얼 인터페이스 정보를 패킷 분배부(150)에 제공한다.The group manager 160 includes group information on a group consisting of a plurality of target devices corresponding to a destination address of a data packet extracted through the packet scheduler 140, and each serial corresponding to a target device belonging to the group. Manage interface information. The packet distribution unit 150 provides the packet distribution unit 150 with group information and serial interface information of the target group according to the request of the packet distribution unit 150.

그룹 관리부(160)는 상기한 그룹 정보를 설정함에 있어서, 시리얼 인터페이스(180-1 내지 180-N)을 통해 접속되어 있는 타겟 장치들로부터 수신되는 메시지를 스누핑(snooping)하여 상기한 그룹 정보를 설정한다. 또한, 그룹 관리부(160)는 시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들의 특성에 따라 그룹 정보를 설정한다.In setting the group information, the group manager 160 snoops messages received from target devices connected through serial interfaces 180-1 to 180 -N to set the group information. do. In addition, the group manager 160 sets group information according to characteristics of target devices connected through a serial interface.

시리얼 통신부(170)는 패킷 분배부(150)로부터 데이터 패킷 및 시리얼 인터페이스 정보를 전달받아, 이를 기반으로 하나 이상의 시리얼 인터페이스(180-1 내지 180-N)를 통해 해당 타겟 장치(들)로 데이터 패킷을 전송한다.The serial communication unit 170 receives the data packet and the serial interface information from the packet distribution unit 150, and based on this, the data packet to the corresponding target device (s) through one or more serial interfaces 180-1 to 180 -N. Send it.

그리고, 시리얼 통신부(170)는 데이터 패킷 전송이 완료되면, 데이터 패킷 전송이 완료되었다는 메시지를 패킷 스케줄러(140)에게 전달한다. 이에, 패킷 스케줄러(140)는 버퍼(130)의 모든 데이터를 전송할 때까지, 정해진 정책에 따라 계속 데이터 패킷을 추출하여 패킷 분배부(150)에 전달한다.
When the data packet transmission is completed, the serial communication unit 170 transmits a message indicating that the data packet transmission is completed to the packet scheduler 140. Accordingly, the packet scheduler 140 continuously extracts the data packet according to a predetermined policy and delivers the data packet to the packet distribution unit 150 until all data of the buffer 130 is transmitted.

도 2는 본 발명에 따른 버퍼 관리부에서 덮어쓰기 가능한 버퍼를 관리하기 위한 기본적인 데이터 구조를 나타내고 있다.2 shows a basic data structure for managing an overwriteable buffer in the buffer management unit according to the present invention.

도 2를 참조하면, 덮어쓰기 가능한(over-writable) 버퍼 클래스에 저장되는 데이터의 경우, 데이터의 종류를 나타내기 위한 'type'(201), 데이터의 목적지에 대한 정보를 나타내기 위한 'Group ID'(203), 데이터가 게이트웨이 장치에 도착한 시간 또는 버퍼에 저장된 시간을 나타내는 'Timestamp'(205), 데이터의 크기를 나타내는'Length'(207), 그리고, 실제 정보를 포함하고 있는 'Data'(209)로 구성된다. 여기서 'Type'과 'Group ID'는 하나의 정보를 식별하기 위한 식별자로 사용된다. Referring to FIG. 2, in case of data stored in an over-writable buffer class, a 'type' 201 indicating a type of data and a 'Group ID' indicating information on a destination of the data '203,' Timestamp '205 representing the time the data arrived at the gateway device or the time stored in the buffer,' Length '207 representing the size of the data, and' Data 'containing the actual information ( 209). Here, 'Type' and 'Group ID' are used as identifiers for identifying one piece of information.

버퍼 관리부는 새로 수신한 데이터와 기존에 버퍼(덮어쓰기 가능한 버퍼)에 저장된 데이터를 비교한 후, 버퍼에 동일한 종류의 데이터가 존재한다면, 기존에 저장된 데이터를 새로 수신한 데이터로 대체하게 된다. 이때, 'Timestamp'는 갱신되지 않는다.The buffer manager compares newly received data with data previously stored in a buffer (overwrite buffer). If the same type of data exists in the buffer, the buffer manager replaces the previously stored data with newly received data. At this time, 'Timestamp' is not updated.

따라서, 'Timestamp'는 새로 수신한 데이터가 게이트웨이 장치에 도착한 시간 또는 버퍼에 저장된 시간이 아닌, 동일한 종류의 데이터가 게이트웨이 장치 도착한 시간 또는 버퍼에 저장된 시간을 나타내게 된다.
Accordingly, 'Timestamp' indicates the time when the same type of data arrived in the gateway device or the time stored in the buffer, not the time when the newly received data arrived in the gateway device or the time stored in the buffer.

도 3은 본 발명의 실시예에 따른 시리얼-이더넷 게이트웨이 장치에서의 데이터 처리 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a data processing method in a serial-Ethernet gateway device according to an embodiment of the present invention.

본 발명에 따른 게이트웨이 장치에서의 데이터 처리 방법은, 이더넷 인터페이스를 통해 데이터 패킷을 수신하는 단계, 수신한 데이터 패킷의 특성을 파악하여 데이터 패킷이 저장될 버퍼를 선택하는 단계; 선택된 버퍼에 데이터 패킷을 저장하는 단계, 정해진 정책에 따라 버퍼로부터 데이터 패킷을 추출하는 단계, 추출된 데이터 패킷의 목적지 주소를 파악하여 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 획득하는 단계, 및 시리얼 인터페이스 정보를 기반으로 추출된 데이터 패킷을 해당 시리얼 인터페이스를 통해 타겟 장치로 전송하는 단계를 포함한다.A data processing method in a gateway device according to the present invention includes: receiving a data packet through an Ethernet interface, identifying a characteristic of the received data packet and selecting a buffer in which the data packet is to be stored; Storing the data packet in the selected buffer, extracting the data packet from the buffer according to a predetermined policy, determining the destination address of the extracted data packet, and providing serial interface information about one or more target devices to which the extracted data packet is to be transmitted. And acquiring the extracted data packet based on the serial interface information to the target device through the corresponding serial interface.

이하, 도 3을 참조하여 보다 상세하게 설명하기로 한다.Hereinafter, a detailed description will be made with reference to FIG. 3.

먼저, 이더넷 패킷 처리부는 이더넷 인터페이스를 통해 데이터 패킷(IP 패킷)을 수신하고, 수신한 데이터 패킷을 정해진 프로토콜에 따라 처리하여 버퍼 관리부에 전달한다(S100).First, the Ethernet packet processor receives a data packet (IP packet) through an Ethernet interface, processes the received data packet according to a predetermined protocol, and transmits the received data packet to the buffer manager (S100).

다음으로, 버퍼 관리부는 이더넷 패킷 처리부로부터 전달받은 데이터 패킷의 목적지 주소[예를 들면, 목적지 IP (멀티캐스팅) 주소], UDP 또는 TCP 포트번호를 이용하여 데이터 패킷의 특성을 파악하고(S105), 그 특성에 따라 덮어쓰기가 가능한(over-writable) 버퍼 또는 덮어쓰기가 불가능한(non-over-writable) 버퍼에 데이터 패킷을 저장한다(S110,S115,S120).Next, the buffer manager determines the characteristics of the data packet by using a destination address (for example, a destination IP (multicasting) address), UDP, or TCP port number of the data packet received from the Ethernet packet processor (S105). According to the characteristic, the data packet is stored in an over-writable buffer or a non-over-writable buffer (S110, S115, and S120).

즉, 덮어쓰기가 가능한 데이터 패킷인 경우에는 덮어쓰기 가능한 버퍼에 데이터 패킷을 저장하고, 덮어쓰기가 불가능한 데이터 패킷인 경우에는 덮어쓰기 불가능한 버퍼에 데이터 패킷을 저장한다. 이때, 버퍼 관리부는 덮어쓰기 가능한 버퍼에 데이터 패킷을 저장할 때, 목적지 IP 주소, UDP 포트번호, 및 송신단 주소 등을 이용하여 덮어쓰기 가능한 버퍼의 개수를 설정하고 유지한다.That is, in the case of a data packet which can be overwritten, the data packet is stored in an overwriteable buffer. In the case of a data packet which cannot be overwritten, the data packet is stored in a non-overwriteable buffer. At this time, the buffer management unit sets and maintains the number of overwriteable buffers using the destination IP address, the UDP port number, and the sender address when storing the data packet in the overwriteable buffer.

다음으로, 패킷 스케줄러는 버퍼에 있는 두 가지 클래스의 버퍼에서 사전에 정해진 정책에 따라 데이터 패킷을 추출하여 패킷 분배부에 전달한다(S125).Next, the packet scheduler extracts the data packet from the two classes of buffers in the buffer and transmits the data packet to the packet distribution unit (S125).

이에, 패킷 분배부는 패킷 스케줄러에 의해 추출된 데이터 패킷의 목적지 주소를 파악하여 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 그룹 관리부로부터 획득한다(S130 내지 S145).Accordingly, the packet distribution unit obtains the destination address of the data packet extracted by the packet scheduler and obtains serial interface information on at least one target device to which the extracted data packet is transmitted from the group manager (S130 to S145).

그리고, 패킷 분배부는 획득한 시리얼 인터페이스 정보를 이용해 필요한 수만큼 전송할 데이터 패킷을 복사하여 시리얼 통신부에 전달한다.The packet distribution unit copies the data packets to be transmitted as many as necessary using the obtained serial interface information and transfers them to the serial communication unit.

즉, 패킷 분배부는 데이터 패킷의 목적지 주소를 파악하여 복수 개의 타겟 장치들로 구성된 그룹(타겟 그룹)에 전송되어야 하는 패킷 인지 여부를 파악한다. 타겟 그룹에 전송되어야 하는 데이터 패킷인 경우, 패킷 분배부는 그룹 관리부으로부터 해당 타겟 그룹에 속해 있는 타겟 장치들에 대한 시리얼 인터페이스 정보를 획득한다. 그리고, 패킷 분배부는 그룹 관리부로부터 획득한 시리얼 인터페이스 정보 및 타겟 장치들로 전송해야 할 데이터에 대한 리스트 정보를 시리얼 통신부에 전달한다.That is, the packet distribution unit detects the destination address of the data packet and determines whether the packet is to be transmitted to a group (target group) composed of a plurality of target devices. In the case of the data packet to be transmitted to the target group, the packet distribution unit obtains serial interface information about target devices belonging to the target group from the group manager. The packet distribution unit transmits serial interface information obtained from the group management unit and list information on data to be transmitted to the target devices to the serial communication unit.

다음으로, 시리얼 통신부는 패킷 분배부로부터 데이터 패킷 및 시리얼 인터페이스 정보를 전달받아, 이를 기반으로 하나 이상의 시리얼 인터페이스를 통해 해당 타겟 장치(들)로 데이터 패킷을 전송한다(S150).Next, the serial communication unit receives the data packet and the serial interface information from the packet distribution unit, and transmits the data packet to the corresponding target device (s) through one or more serial interfaces based on this (S150).

그리고, 시리얼 통신부는 데이터 패킷 전송이 완료되면, 데이터 패킷 전송이 완료되었다는 메시지를 패킷 스케줄러에게 전달한다. 이에, 패킷 스케줄러는 버퍼의 모든 데이터를 전송할 때까지, 정해진 정책에 따라 계속 데이터 패킷을 추출하여 패킷 분배부에 전달한다(S155).
When the data packet transmission is completed, the serial communication unit transmits a message to the packet scheduler that the data packet transmission is completed. Accordingly, the packet scheduler continuously extracts the data packet and delivers it to the packet distributor until all data in the buffer is transmitted (S155).

도 4는 본 발명의 실시예에 따른 패킷 스케줄러에서 덮어쓰기 가능한 버퍼로부터 데이터 패킷을 추출하는 과정과 패킷 분배부에서 데이터 패킷을 처리하는 과정을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a process of extracting a data packet from an overwriteable buffer in the packet scheduler and a process of processing the data packet in the packet distributor according to an exemplary embodiment of the present invention.

도 4를 참조하면, 패킷 스케줄러는 각 데이터의 종류(Group ID와 Type에 의해 구분)별 'Timestamp'를 비교하여 가장 오래된 'Timestamp'를 갖는 데이터 패킷을 덮어쓰기 가능한 버퍼로부터 선택 추출한다(S200). 전술한 바와 같이, 'Timestamp'는 새로 수신한 데이터가 게이트웨이 장치에 도착한 시간 또는 버퍼에 저장된 시간이 아닌, 동일한 종류의 데이터가 게이트웨이 장치 도착한 시간 또는 버퍼에 저장된 시간을 나타낸다.Referring to FIG. 4, the packet scheduler compares 'Timestamp' for each type of data (grouped by Group ID and Type), and selects and extracts a data packet having the oldest 'Timestamp' from an overwriteable buffer (S200). . As described above, 'Timestamp' indicates the time when the same type of data arrives in the gateway device or the time stored in the buffer, not the time when the newly received data arrives in the gateway device or the time stored in the buffer.

그리고, 패킷 분배부는 패킷 스케줄러에 의해 추출된 데이터 패킷의 목적지 주소를 파악하여 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치로 구성된 타겟 그룹에 대한 시리얼 인터페이스 정보를 그룹 관리부로부터 획득한다(S205) In addition, the packet distribution unit may determine a destination address of the data packet extracted by the packet scheduler and obtain serial interface information about the target group including one or more target devices to which the extracted data packet is transmitted from the group manager (S205).

그리고, 패킷 분배부는 타겟 그룹에 속한 모든 시리얼 인터페이스로 데이터 전송이 가능한지를 확인하여(S210), 모든 시리얼 인터페이스가 'READY'상태가 되면(S215) 데이터가 시리얼 통신부를 통해 타겟 그룹으로 전송되도록 처리한다(S220). 이때, 버퍼에 있는 다른 데이터가 동시에 자료 전송이 가능하다면, 패킷 분배부는 버퍼에 있는 다른 데이터가 동시에 전송되도록 처리할 수 있다.Then, the packet distribution unit checks whether data transmission is possible to all serial interfaces belonging to the target group (S210), and when all serial interfaces are in the 'READY' state (S215), the packet distribution unit processes the data to be transmitted to the target group through the serial communication unit. (S220). In this case, if other data in the buffer can transmit data at the same time, the packet distributor may process other data in the buffer to be transmitted at the same time.

한편, 시리얼 통신부는 시리얼 인터페이스를 통해 타겟 그룹으로의 데이터 전송이 완료되어, 해당 시리얼 인터페이스가 'BUSY'상태에서 'READY'상태가 되면, 이를 패킷 스케줄러에게 통보한다. 이에, 패킷 스케줄러는 버퍼를 검사하여 전송 가능한 데이터가 있는지 검사한 후, 데이터 전송을 다시 개시하게 된다.
Meanwhile, the serial communication unit notifies the packet scheduler when data transmission to the target group is completed through the serial interface and the corresponding serial interface becomes 'READY' from 'BUSY'. Accordingly, the packet scheduler checks the buffer and checks whether there is data that can be transmitted, and then starts data transmission again.

이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, an optimal embodiment has been disclosed in the drawings and specification. Although specific terms have been employed herein, they are used for purposes of illustration only and are not intended to limit the scope of the invention as defined in the claims or the claims. Therefore, those skilled in the art will appreciate that various modifications and equivalent embodiments are possible without departing from the scope of the present invention. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.

105:이더넷 인터페이스 110:이더넷 패킷 처리부
120:버퍼 관리부 130:버퍼
132:덮어쓰기 가능한 버퍼 134:덮어쓰기 불가능한 버퍼
140:패킷 스케줄러 150:패킷 분배부
160:그룹 관리부 170:시리얼 통신부
180-1~180-N:시리얼 인터페이스 201:Type
203:Timestamp 205:Group ID
207:Length 209:Data
105: Ethernet interface 110: Ethernet packet processing unit
120: buffer management unit 130: buffer
132: overwriteable buffer 134: non-overwriteable buffer
140: packet scheduler 150: packet distribution unit
160: group management unit 170: serial communication unit
180-1 to 180-N: Serial interface 201: Type
203: Timestamp 205: Group ID
207: Length 209: Data

Claims (20)

이더넷 인터페이스를 통해 수신한 데이터 패킷의 특성을 파악하여 상기 데이터 패킷이 저장될 버퍼를 선택하고, 선택된 버퍼에 상기 데이터 패킷을 저장하는 버퍼 관리부;
정해진 정책에 따라 상기 버퍼로부터 데이터 패킷을 추출하는 패킷 스케줄러;
상기 추출된 데이터 패킷의 목적지 주소를 파악하여 상기 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 획득하는 패킷 분배부;
상기 시리얼 인터페이스 정보를 기반으로 상기 추출된 데이터 패킷을 해당 시리얼 인터페이스를 통해 상기 타겟 장치로 전송하는 시리얼 통신부; 및
상기 추출된 데이터 패킷의 목적지 주소에 대응되는 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보와, 상기 그룹에 포함된 각 타겟 장치에 대응되는 시리얼 인터페이스 정보를 관리하는 그룹 관리부를 포함하는 것을 특징으로 하는, 게이트웨이 장치.
A buffer manager to identify characteristics of the data packet received through an Ethernet interface, select a buffer to store the data packet, and store the data packet in the selected buffer;
A packet scheduler for extracting a data packet from the buffer according to a predetermined policy;
A packet distribution unit which obtains serial interface information on at least one target device to which the extracted data packet is to be transmitted by identifying a destination address of the extracted data packet;
A serial communication unit which transmits the extracted data packet to the target device through a corresponding serial interface based on the serial interface information; And
And a group manager for managing group information on a group consisting of a plurality of target devices corresponding to a destination address of the extracted data packet, and serial interface information corresponding to each target device included in the group. Gateway device.
삭제delete 청구항 1에 있어서,
상기 그룹 관리부는,
시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들로부터 수신되는 메시지를 스누핑하여 상기 그룹 정보를 설정하는 것을 특징으로 하는, 게이트웨이 장치.
The method according to claim 1,
The group management unit,
And setting the group information by snooping a message received from target devices connected through a serial interface.
청구항 1에 있어서,
상기 그룹 관리부는,
시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들의 특성에 따라 상기 그룹 정보를 설정하는 것을 특징으로 하는, 게이트웨이 장치.
The method according to claim 1,
The group management unit,
And setting the group information according to the characteristics of target devices connected through a serial interface.
청구항 1에 있어서,
상기 버퍼 관리부는,
이더넷 인터페이스를 통해 수신한 데이터 패킷의 특성을 파악함에 있어서,
상기 데이터 패킷의 목적지 IP 주소, UDP 또는 TCP 포트번호를 이용하는 것을 특징으로 하는, 게이트웨이 장치.
The method according to claim 1,
The buffer management unit,
In characterizing the data packets received through the Ethernet interface,
And a destination IP address, UDP or TCP port number of the data packet.
청구항 1에 있어서,
상기 시리얼 인터페이스는,
NMEA 0183 기반의 시리얼 인터페이스인 것을 특징으로 하는, 게이트웨이 장치.
The method according to claim 1,
The serial interface,
Gateway device, characterized in that the NMEA 0183 based serial interface.
청구항 1에 있어서,
상기 버퍼 관리부는,
상기 데이터 패킷의 특성에 따라 덮어쓰기가 가능한(over-writable) 버퍼 또는 덮어쓰기가 불가능한(non-over-writable) 버퍼에 상기 데이터 패킷을 저장하는 것을 특징으로 하는, 게이트웨이 장치.
The method according to claim 1,
The buffer management unit,
And store the data packet in an over-writable buffer or a non-over-writable buffer according to the characteristics of the data packet.
청구항 7에 있어서,
상기 덮어쓰기가 불가능한 버퍼는 FIFO(first-in-first-out) 형태로 구현되는 것을 특징으로 하는, 게이트웨이 장치.
The method of claim 7,
The non-overwrite buffer is implemented in the form of first-in-first-out (FIFO).
청구항 7에 있어서,
상기 버퍼 관리부는,
상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 목적지 IP 주소, UDP 포트번호, TCP 포트번호, 및 송신단 주소 중 하나 이상을 이용하여 버퍼의 개수를 설정하고 유지하는 것을 특징으로 하는, 게이트웨이 장치.
The method of claim 7,
The buffer management unit,
In storing the data packet in the overwrite buffer, the number of buffers is set and maintained using at least one of a destination IP address, a UDP port number, a TCP port number, and a sender address. Device.
청구항 7에 있어서,
상기 버퍼 관리부는,
상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 저장 시간에 대한 정보를 포함시켜 저장하는 것을 특징으로 하는, 게이트웨이 장치.
The method of claim 7,
The buffer management unit,
In storing the data packet in the overwriteable buffer, the gateway device comprising information on a storage time and storing the data packet.
청구항 10에 있어서,
상기 버퍼 관리부는,
상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 해당 버퍼에 이미 동일한 종류의 데이터 패킷이 존재하는 경우, 기존 데이터 패킷을 새로 수신한 데이터 패킷으로 대체하여 저장하는 것을 특징으로 하는, 게이트웨이 장치.
The method of claim 10,
The buffer management unit,
In storing the data packet in the overwrite buffer, when the same type of data packet already exists in the buffer, the gateway device is characterized by replacing the existing data packet with a newly received data packet. .
청구항 10에 있어서,
상기 패킷 스케줄러는,
상기 덮어쓰기가 가능한 버퍼로부터 데이터 패킷을 추출할 때, 함께 저장된 저장 시간에 대한 정보를 이용하여 가장 이전에 저장된 데이터 패킷을 우선적으로 추출하는 것을 특징으로 하는, 게이트웨이 장치.
The method of claim 10,
The packet scheduler comprising:
And, when extracting the data packet from the overwriteable buffer, first extracting the previously stored data packet by using information on the stored time stored together.
이더넷 인터페이스를 통해 데이터 패킷을 수신하는 단계;
상기 수신한 데이터 패킷의 특성을 파악하여 상기 데이터 패킷이 저장될 버퍼를 선택하는 단계;
상기 선택된 버퍼에 상기 데이터 패킷을 저장하는 단계;
정해진 정책에 따라 상기 버퍼로부터 데이터 패킷을 추출하는 단계;
상기 추출된 데이터 패킷의 목적지 주소를 파악하여 상기 추출된 데이터 패킷이 전송될 하나 이상의 타겟 장치에 대한 시리얼 인터페이스 정보를 획득하는 단계;
상기 시리얼 인터페이스 정보를 기반으로 상기 추출된 데이터 패킷을 해당 시리얼 인터페이스를 통해 상기 타겟 장치로 전송하는 단계; 및
상기 추출된 데이터 패킷의 목적지 주소에 대응되는 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보와, 상기 그룹에 포함된 각 타겟 장치에 대응되는 시리얼 인터페이스 정보를 관리하는 단계를 포함하는 것을 특징으로 하는, 게이트웨이 장치에서의 데이터 처리 방법.
Receiving a data packet via an Ethernet interface;
Identifying a characteristic of the received data packet and selecting a buffer to store the data packet;
Storing the data packet in the selected buffer;
Extracting a data packet from the buffer according to a predetermined policy;
Determining a destination address of the extracted data packet to obtain serial interface information for at least one target device to which the extracted data packet is to be transmitted;
Transmitting the extracted data packet to the target device through a corresponding serial interface based on the serial interface information; And
And managing group information on a group consisting of a plurality of target devices corresponding to a destination address of the extracted data packet and serial interface information corresponding to each target device included in the group. , Data processing method in a gateway device.
삭제delete 청구항 13에 있어서,
상기 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보를 관리하는 단계는,
시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들로부터 수신되는 메시지를 스누핑하여 상기 그룹 정보를 설정하는 단계를 포함하는 것을 특징으로 하는, 게이트웨이 장치에서의 데이터 처리 방법.
The method according to claim 13,
Managing group information for a group consisting of the plurality of target devices,
And setting the group information by snooping a message received from target devices connected through a serial interface.
청구항 13에 있어서,
상기 복수 개의 타겟 장치들로 구성된 그룹에 대한 그룹 정보를 관리하는 단계는,
시리얼 인터페이스를 통해 접속되어 있는 타겟 장치들의 특성에 따라 상기 그룹 정보를 설정하는 단계를 포함하는 것을 특징으로 하는, 게이트웨이 장치에서의 데이터 처리 방법.
The method according to claim 13,
Managing group information for a group consisting of the plurality of target devices,
And setting the group information according to characteristics of target devices connected through a serial interface.
청구항 13에 있어서,
상기 수신한 데이터 패킷의 특성을 파악하는 단계는,
상기 데이터 패킷의 목적지 IP 주소, UDP 또는 TCP 포트번호를 이용하는 것을 특징으로 하는, 게이트웨이 장치에서의 데이터 처리 방법.
The method according to claim 13,
Identifying the characteristics of the received data packet,
And a destination IP address, UDP, or TCP port number of the data packet.
청구항 13에 있어서,
상기 데이터 패킷이 저장될 버퍼는,
덮어쓰기가 가능한(over-writable) 버퍼 또는 덮어쓰기가 불가능한(non-over-writable) 버퍼인 것을 특징으로 하는, 게이트웨이 장치에서의 데이터 처리 방법.
The method according to claim 13,
The buffer in which the data packet is to be stored is
A method of processing data at a gateway device, characterized in that it is an over-writable buffer or a non-over-writable buffer.
청구항 18에 있어서,
상기 덮어쓰기가 불가능한 버퍼는 FIFO(first-in-first-out) 형태로 구현되는 것을 특징으로 하는, 게이트웨이 장치에서의 데이터 처리 방법.
19. The method of claim 18,
The non-overwrite buffer is implemented in a first-in-first-out (FIFO) form.
청구항 18에 있어서,
상기 덮어쓰기가 가능한 버퍼에 상기 데이터 패킷을 저장함에 있어서, 저장 시간에 대한 정보를 포함시켜 저장하는 것을 특징으로 하는, 게이트웨이 장치에서의 데이터 처리 방법.
19. The method of claim 18,
And storing the data packet in the overwriteable buffer, including information on a storage time, and storing the data packet.
KR1020100034986A 2009-10-06 2010-04-15 Serial to ethernet gateway apparatus and method thereof KR101341413B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/898,787 US8537844B2 (en) 2009-10-06 2010-10-06 Ethernet to serial gateway apparatus and method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020090094716 2009-10-06
KR20090094716 2009-10-06

Publications (2)

Publication Number Publication Date
KR20110037819A KR20110037819A (en) 2011-04-13
KR101341413B1 true KR101341413B1 (en) 2013-12-13

Family

ID=44045238

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100034986A KR101341413B1 (en) 2009-10-06 2010-04-15 Serial to ethernet gateway apparatus and method thereof

Country Status (1)

Country Link
KR (1) KR101341413B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050076147A1 (en) * 2003-09-24 2005-04-07 Blake Michael E. NMEA 0183 sentence transporter over ethernet

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050076147A1 (en) * 2003-09-24 2005-04-07 Blake Michael E. NMEA 0183 sentence transporter over ethernet

Also Published As

Publication number Publication date
KR20110037819A (en) 2011-04-13

Similar Documents

Publication Publication Date Title
US7620054B2 (en) Network switching device and network switching method
US7961728B2 (en) Virtual switching using a provisional identifier to conceal a user identifier
US9817773B2 (en) System and method for preserving order of data processed by processing engines
US5787084A (en) Multicast data communications switching system and associated method
US6798776B1 (en) Method for traffic management, traffic prioritization, access control, and packet forwarding in a datagram computer network
CN102427426B (en) Method and device for simultaneously supporting AFDX (Avionics Full-duplex Switched Ethernet) and common Ethernet switching
CN102132535B (en) Method for transferring data packets in communication network and switching device
US6574194B1 (en) Architecture of data communications switching system and associated method
CN109587077B (en) Hybrid scheduling method for TTE network and TTE network terminal
US7876769B2 (en) Self-cleaning mechanism for error recovery
JPH07321823A (en) Device with multi-casting function
US6219352B1 (en) Queue management with support for multicasts in an asynchronous transfer mode (ATM) switch
JPH0612383A (en) Multiprocessor buffer system
JPH07321822A (en) Device with multi-casting function
US20150052316A1 (en) Centralized memory allocation with write pointer drift correction
US7760723B1 (en) Relaying a data stream from a data device to a network tunnel
CA2953612C (en) Providing an interface for an avionics data transfer system
KR101341413B1 (en) Serial to ethernet gateway apparatus and method thereof
CN106372013B (en) Long-distance inner access method, device and system
JP2000270023A (en) Lan repeater exchange
CN108650160A (en) A kind of bus bridge and its working method based on chain type port
US8537844B2 (en) Ethernet to serial gateway apparatus and method thereof
US8379676B1 (en) Injecting in-band control messages without impacting a data rate
JP4829940B2 (en) IP multicast communication monitoring method and system
CN116056042A (en) Train communication method, switching equipment and storage medium

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee